From owner-dynarec@synthcom.com Fri Feb 25 01:11:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA40879 for dynarec-outgoing; Fri, 25 Feb 2000 01:11:25 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 25 Feb 2000 01:11:24 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: Testy test Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Feb 25 13:31:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA43043 for dynarec-outgoing; Fri, 25 Feb 2000 13:31:08 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 25 Feb 2000 13:31:07 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: Dynarec discussion from mul8 In-Reply-To: <38B652E6.12DA3C71@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > DX=DE > > EBP=Base of 64K Z80 CPU space > > ESI=General purpose > > EDI=# Of T-States left to execute before exiting > It seems a lot my thoughts. Have I told you that I really like your dialect of English? Even though is has quite a few flaws, I completely understand what you're saying! > > > > 830d95b3: 83ef0a sub edi,byte +0xa (10 T-States) > > > > 830d95b6: 0f8835000000 js near 0x830d95f1 > Yes I understand this. You make an instruction by intruction timming control. And it's architected so that later on I can take it out, or group it by blocks. That's handled by the source layer, and the target just generates the epilogue code as it is instructed. > > > > 830d95c6: 9e sahf > > > > 830d95c7: ffe6 jmp esi > Have you tried to do block chainning? I think in this block the flags > are not needed ;) I think you mean "depth traversal", but yes, that is the next step. It still doesn't solve the problem where it's jumping in to the middle of a recompiled block, though. As soon as the recompiler is 100% working, when the recompiler encounters an address that hasn't been recompiled, it'll call itself with that address. > > the Sega Genesis sound CPU. IF you don't believe me, go in to any of the > > freeware emulators, muck up the timing tables on the base instruction set > > and watch the effect it has. It varies from nothing to catastrophic > > failure. > I'm not implemented an emulator yet I'm learning, and it's hard to > find good documentation about how a emulator works. Yes I have heared > about the accurary required for sound and some graphics, but I don't > know how much accuracy it's needed. At least with Galaga, Dig Dug, 1942, and Bosconian, those games require it to be 100% accurate, otherwise you wind up with little problems throughout the game. > Accuracy will come in to ways: > making a good count of the cycles spended and making the test of > number of cycles most often possible. I thinked that the one > important was the first one, and the second one could admit be little > more lazy (testing each 10, 20, 30 cycles, ouch ... , I have seen that > the Z80 is a slow machine that uses a lot of cycles per instruction, > perhaps I was thinking for a kind of RISC CPU's, sorry). Provided that nothing jumps in to a sequence of instructions and it's "Safe" to do that sort of optmiization, yes, that'd be a great solution, and in fact I'll probably have some sort of hint or "range" you can pass to the recompiler to indicate what are is and isn't safe to muck with timing-wise. The nice thing about my recompiler is that it's a linked list of instructions, and there's a tag associated with it that inicates it's timing code, with a generic way to alter it in to groups. > One comment, I think Sega Genesis Z80 wouldn't be the best processor > to be recompiled, I think that works runnig code from a little RAM > that is writed by the M68000, this is like self-modifying code (I'm > not sure about this ;) It's not self modifying code. The 68K puts instructions in shared RAM space of the Z80 but it doesn't actually write code for the Z80 to execute. > > The code is already running in about 40 different instructions and it's > > dead parallel in operation to my assembly core (which is *EXTREMELY* well > > debugged since I validated it against an ISA board with a Z80 on it). > Something about that. My project director ask me a lot of time about > testing. I tell him in the hard way ;) How do you (others emulator > programmers) do testing while developing a CPU core? You use your data books, watch lots and lots of traces of code executing, and pray you've got it right. ;-) When something isn't working and you don't know why, you go back over every instruction that's being executed and validate it against your references. > I will just move to your new list, so if you want you can answer me > there. One thing, it's your list but I would suggest than perhaps > could be a list not only for dynamic recompilation but to others > advanced emulation related topics. Not a bad idea. But I like the name. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Feb 28 01:08:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA54670 for dynarec-outgoing; Mon, 28 Feb 2000 01:08:44 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38BA3782.1B6833DD@est.fib.upc.es> Date: Mon, 28 Feb 2000 09:53:22 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Bradley wrote: > Have I told you that I really like your dialect of English? Even though is > has quite a few flaws, I completely understand what you're saying! > Really? Thanks. > > > > > 830d95c6: 9e sahf > > > > > 830d95c7: ffe6 jmp esi > > > Have you tried to do block chainning? I think in this block the flags > > are not needed ;) > > I think you mean "depth traversal", but yes, that is the next step. It > still doesn't solve the problem where it's jumping in to the middle of a > recompiled block, though. > I don't know what you call "depth traversal", where have you find this term?. I call "block chaining" when a translated block simply transfers control to the next (or nexts if it has more than one exit point) without searches for the next block in any structure (in fact returns to the main loop). It's the name I have found in many documents. But I think you are using another approach. In each translated block (perhaps only direct jumps) you access a memory word to see if next block is translated and if it's you do a jump to it, true? I think now this is a kind of what I call "block chaining", but I thought in a direct jump writed on code first. I think that you could handle self-modifying code with this. Block chaining (as I thought it before) has great problem with self-modifying code, how to manage all blocks that directly jumps to an erased block. > > > You use your data books, watch lots and lots of traces of code executing, > and pray you've got it right. ;-) When something isn't working and you > don't know why, you go back over every instruction that's being executed > and validate it against your references. > Just what I thought. But my director wants some kind of methodology :) > > > I will just move to your new list, so if you want you can answer me > > there. One thing, it's your list but I would suggest than perhaps > > could be a list not only for dynamic recompilation but to others > > advanced emulation related topics. > > Not a bad idea. But I like the name. ;-) > Oh, it's a good name, yes. Victor Moya P.S. There isn't a --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Feb 28 01:15:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA54693 for dynarec-outgoing; Mon, 28 Feb 2000 01:15:53 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38BA3948.300A090E@est.fib.upc.es> Date: Mon, 28 Feb 2000 10:00:56 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Something I missed before. I want thank that you posted an example about your Z80 recompiler and you helped me understand it. I find some mistakes I was making with dynamic recompilation. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Feb 28 01:38:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA54735 for dynarec-outgoing; Mon, 28 Feb 2000 01:38:53 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 28 Feb 2000 01:38:52 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 In-Reply-To: <38BA3782.1B6833DD@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Have I told you that I really like your dialect of English? Even though is > > has quite a few flaws, I completely understand what you're saying! > Really? Thanks. Hope we didn't miscommunicate - This is a compliment! > > I think you mean "depth traversal", but yes, that is the next step. It > > still doesn't solve the problem where it's jumping in to the middle of a > > recompiled block, though. > I don't know what you call "depth traversal", where have you find this > term?. Program flow depth traversal. Meaning taking code and going to all possible call points, effectively making a calltree. It's an old compiler term. > I call "block chaining" when a translated block simply > transfers control to the next (or nexts if it has more than one exit > point) without searches for the next block in any structure (in fact > returns to the main loop). The problem with the terminology here is that it doesn't represent what's going on. "Block chaining" to me instantly means a bunch of blocks chained together, but that's not really what's going on. "Block chaining" is a made up term that isn't really a good term - much the same way "driver" is not a good description (in emulation) for what a platform extension is. When talking about recompiling blocks, we should be talking about doing depth traversal, which means you keep calling yourself with any branch points. You're going down the depth of the call tree during recompilation. FWIW, This is a very, very common term used in disassemblers that attempt to create labels by analysis of the calltrees. > It's the name I have found in many > documents. But I think you are using another approach. In each > translated block (perhaps only direct jumps) you access a memory word > to see if next block is translated and if it's you do a jump to it, > true? Yes - for now. But in the future when the recompiler is completely finished, any terminal that I encounter that hasn't been compiled, the recompiler will call itself with that address, and the recompiled address will already be recompiled. Then the recompiler won't create any code to check to see if it's recompiled, it'll just jump directly to the block itself. > I think now this is a kind of what I call "block chaining", but > I thought in a direct jump writed on code first. I think that you > could handle self-modifying code with this. Block chaining (as I > thought it before) has great problem with self-modifying code, how to > manage all blocks that directly jumps to an erased block. Self modifying code isn't all that common anyway. Well, maybe not in the arcade video game world, but I would guess that home computers used quite a bit more of it. It's really not that big a concern. > > and pray you've got it right. ;-) When something isn't working and you > > don't know why, you go back over every instruction that's being executed > > and validate it against your references. > Just what I thought. But my director wants some kind of methodology :) Well, the above looks like a methodology, doesn't it? ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Feb 28 01:39:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA54744 for dynarec-outgoing; Mon, 28 Feb 2000 01:39:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 28 Feb 2000 01:39:30 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 In-Reply-To: <38BA3948.300A090E@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Something I missed before. I want thank that you posted an example > about your Z80 recompiler and you helped me understand it. I find > some mistakes I was making with dynamic recompilation. No prob. Once I get my recompiler to a stopping point (where it actually runs something), I'll post it to listmember for them to download and check out - a recompiler WIP. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Feb 28 03:08:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA55097 for dynarec-outgoing; Mon, 28 Feb 2000 03:08:38 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38BA5397.DE62567D@est.fib.upc.es> Date: Mon, 28 Feb 2000 11:53:11 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Bradley wrote: > > > Have I told you that I really like your dialect of English? Even though is > > > has quite a few flaws, I completely understand what you're saying! > > Really? Thanks. > > Hope we didn't miscommunicate - This is a compliment! > > I would want to say I thank you that you think my english is good. But it seems it isn't so good :) > > Program flow depth traversal. Meaning taking code and going to all > possible call points, effectively making a calltree. It's an old compiler > term. > Ok, I get a book about compiler theory (in English) and I find it. I know what it's depth traversal, but the Spanish translation it's something different, this was the problem. > > > I call "block chaining" when a translated block simply > > transfers control to the next (or nexts if it has more than one exit > > point) without searches for the next block in any structure (in fact > > returns to the main loop). > > The problem with the terminology here is that it doesn't represent what's > going on. "Block chaining" to me instantly means a bunch of blocks chained > together, but that's not really what's going on. "Block chaining" is a > made up term that isn't really a good term - much the same way "driver" is > not a good description (in emulation) for what a platform extension is. > I think we have an understanding problem here :) The term 'chaining' is used in documents as Shade and Embra instruction-set simulators, which use dynamic compilation. And I think it's a good term (or perhaps my english is worst than I thought). Chaining means that translated blocks are linked together by a direct jump instruction. In Shade, Embra (and others) when a translated block ends his execution it does, ever, a jump to the main loop (called dispatch loop also). Then the main loop is the one which has to get the actual PC address, find the next translated block (or translate it) and do a jump at the begining of the translated block code. This is slow so an alternative they implement is 'chaining'. Take a look at Embra document to a better understanding (I think it's in Mul8 Vault, in dynarec.zip, if not try http://alabi.fib.upc.es/~e6706591/dynarec.zip it's a document named sigmetrics96-embra.ps). > > When talking about recompiling blocks, we should be talking about doing > depth traversal, which means you keep calling yourself with any branch > points. You're going down the depth of the call tree during recompilation. > Yes, if you do in another way, you couldn't begin to execute code. But I don't know what is going on to 'chaining'. > > FWIW, This is a very, very common term used in disassemblers that attempt > to create labels by analysis of the calltrees. > Yes I know, it was I didn't know the english term. > > > > > and pray you've got it right. ;-) When something isn't working and you > > > don't know why, you go back over every instruction that's being executed > > > and validate it against your references. > > Just what I thought. But my director wants some kind of methodology :) > > Well, the above looks like a methodology, doesn't it? ;-) > I think so, my director is the one who thinks different ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Feb 28 05:50:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA55555 for dynarec-outgoing; Mon, 28 Feb 2000 05:50:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 Date: Mon, 28 Feb 2000 14:37:31 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Ok, I get a book about compiler theory (in English) and I find it. I know what >it's depth traversal, but the Spanish translation it's something different, this >was the problem. Actually I had the same problem. My English compiler book doesn't have the term, at least not in the register, and the German translation of the Dragon book I have is rather bad... Nowadays I almost always buy English technical literature but I bought the Dragon book before. >I think we have an understanding problem here :) The term 'chaining' is used in >documents as Shade and Embra instruction-set simulators, which use dynamic >compilation. And I think it's a good term (or perhaps my english is worst than I >thought). Chaining means that translated blocks are linked together by a direct >jump instruction. In Shade, Embra (and others) when a translated block ends his >execution it does, ever, a jump to the main loop (called dispatch loop also). Then >the main loop is the one which has to get the actual PC address, find the next >translated block (or translate it) and do a jump at the begining of the translated >block code. This is slow so an alternative they implement is 'chaining'. I had the same discussion with Neil because he likes to stick to the traditional terms and I read about that method in Shade and Embra first, so I took over their vocab. >Take a >look at Embra document to a better understanding (I think it's in Mul8 Vault, in >dynarec.zip, if not try http://alabi.fib.upc.es/~e6706591/dynarec.zip it's a >document named sigmetrics96-embra.ps). I think that the Shade document does a much better job explaining certain techniques, but I also have both listed on my dynarec page: http://www.cybervillage.co.uk/acorn/emulation/dynrcomp.htm >> Well, the above looks like a methodology, doesn't it? ;-) >I think so, my director is the one who thinks different ;) I think that's always the problem... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Feb 28 21:32:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id VAA58462 for dynarec-outgoing; Mon, 28 Feb 2000 21:32:53 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 28 Feb 2000 21:32:51 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 In-Reply-To: <38BA5397.DE62567D@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > Really? Thanks. > > Hope we didn't miscommunicate - This is a compliment! > I would want to say I thank you that you think my english is good. > But it seems it isn't so good :) It's "pretty good" though it isn't perfect, the dialect I find to be quite cool! > > Program flow depth traversal. Meaning taking code and going to all > > possible call points, effectively making a calltree. It's an old compiler > > term. > Ok, I get a book about compiler theory (in English) and I find it. I > know what it's depth traversal, but the Spanish translation it's > something different, this was the problem. Give "Compilers - Principles, techniques and tools" by Aho, Sethi and Uhlman. Or more affectionately known - "The Dragon Book". > I think we have an understanding problem here :) The term 'chaining' > is used in documents as Shade and Embra instruction-set simulators, > which use dynamic compilation. And I think it's a good term (or > perhaps my english is worst than I thought). Chaining means that > translated blocks are linked together by a direct jump instruction. Yeah, but what it is focusing on is the high level theory rather than on what the recompiler is actually doing. It implies they're linked together end to end, which isn't the case. I think it's just a bad term, so I don't use it. ;-) "Depth Traversal Recompilation" Describes exactly what the recompiler is doing. It's taking all possible branches and calling itself with those branched-to addresses. > In Shade, Embra (and others) when a translated block ends his > execution it does, ever, a jump to the main loop (called dispatch loop > also). Now a dispatch loop is a good name. That describes its operation. But it should generate code to be able to figure out where to jump to next, no? If it doesn't, then I think we've got a "primitive" facet of existing recompilation "technology". > Then the main loop is the one which has to get the actual PC > address, find the next translated block (or translate it) and do a > jump at the begining of the translated block code. This is slow so an > alternative they implement is 'chaining'. Again, which I find to be a bad term, because it's not accurate. It implies they're linked together. They aren't. Atomically, they are blocks of code that can jump all over the place. > Take a look at Embra > document to a better understanding (I think it's in Mul8 Vault, in > dynarec.zip, if not try http://alabi.fib.upc.es/~e6706591/dynarec.zip > it's a document named sigmetrics96-embra.ps). I'd actually rather not until I get mine done. I have a bunch of ideas that are working most excellently for me and I'd like to see what I come up with on my own. > > depth traversal, which means you keep calling yourself with any branch > > points. You're going down the depth of the call tree during recompilation. > Yes, if you do in another way, you couldn't begin to execute code. I'm not sure what you mean by this, but you can use this approach to remove having to have a dispatch loop. First, let's get some terms straight: Terminal - Any instruction that unconditionally modifies the PC (ret, call, jmp, etc...) Nonterminal - Any instruction that can't or doesn't modify the PC directly Conditional terminal - Any instruction that could conditionally affect the PC Those are the three classes of instructions I've come up with. Let's consider our recompiler's "recompile block" function: Recompile(UINT32 u32PC) { while (NULL == RecompileMap[u32PC]) { if (data[u32PC] is a terminal or conditional terminal) { Recompile(u32PC); } EmitCover(); // Conditional terminals can be fixed up because by // the time the code gets here, it's already generated } // This will emit a code snippet for this entire block, also filling // in the RecompileMap array of pointers to recompiled code. EmitTargetCodeForBlock(); } Hopefully this will shed some light on what I'm thinking. This approach will traverse the code for every possible known branch. Of course, things like "ret" and "jp (hl)" we couldn't possibly recompile ahead of time so we'd be forced to look them up when they were encountered. Let's take an example of this code snippet: begin: mov hl, 4300h mov de, 1500h mov ix, 1350h call MoveIt dec bc jnz begin ret MoveIt: mov a, (hl) mov (de), a dec ix jnz MoveIt ret The recompiler would enter at begin and recompile: mov hl, 4300h mov de, 1500h mov ix, 1350h And before emitting the "call MoveIt", it would call itself with the program counter of the address "Move It". So now the recompiler recompiles: MoveIt: mov a, (hl) mov (de), a dec ix And in this case it recompiles the jnz because it's an address that's currently in the block being recompiled: jnz MoveIt ret When we hit this hard terminal, the recompiler has emitted and entire sequence of target opcodes to cover this instruction sequence. And now it returns back to the original launching place - the "call" instruction and finishes up: call MoveIt dec bc It already knows the "Begin" label since it's in the block being recompiled, so it just jumps to the address it knows already if the condition is met. jnz Begin So anything that you don't know, you recompile it, and the entire recompiled code sequence winds up unwinding and recompiling itself. Slick, huh? -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Feb 29 01:49:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA59064 for dynarec-outgoing; Tue, 29 Feb 2000 01:49:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38BB9282.2A1B47A6@est.fib.upc.es> Date: Tue, 29 Feb 2000 10:33:54 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > It's "pretty good" though it isn't perfect, the dialect I find to be quite > cool! > I think it's only an spanished english ;) > > Give "Compilers - Principles, techniques and tools" by Aho, Sethi and > Uhlman. Or more affectionately known - "The Dragon Book". > This is the one I got. It's The Book :) > Yeah, but what it is focusing on is the high level theory rather than on > what the recompiler is actually doing. It implies they're linked together > end to end, which isn't the case. I think it's just a bad term, so I don't > use it. ;-) "Depth Traversal Recompilation" Describes exactly what the > recompiler is doing. It's taking all possible branches and calling itself > with those branched-to addresses. > Yes I think I'm focusing in a theory level, too. And you are working in a more special application, a 8 bit CPU emulator. I take a look to the code you sent and I think now you have an array for each memory address of the Z80 with a pointer to translated instruction in this address. 64 Kb of addressing space, 4 bytes pointers, so you use 256Kb of memory, and it's simple, fast and with 64 Mb of memory we are working now it's the best choice. I'm in true? As I was thinking in theory I was thinking in 16 and 32 bits CPU's with large address space with makes this kind of optimization too expensive (may be imposible). In this case you have to use hash tables and do block addressing. You are in fact doing instruction addressing and instruction by instruction translation!(although in fact you do it block by block). It's the best choice for Z80 (and others 8-bit processors) but with larger processors not. > > I'd actually rather not until I get mine done. I have a bunch of ideas > that are working most excellently for me and I'd like to see what I come > up with on my own. > > It's a good decision. > > I'm not sure what you mean by this, but you can use this approach to > remove having to have a dispatch loop. First, let's get some terms > straight: > > Terminal - Any instruction that unconditionally modifies the > PC (ret, call, jmp, etc...) > Nonterminal - Any instruction that can't or doesn't modify the PC > directly > Conditional terminal - Any instruction that could conditionally affect the > PC > > Those are the three classes of instructions I've come up with. Let's > consider our recompiler's "recompile block" function: > > Recompile(UINT32 u32PC) > { > while (NULL == RecompileMap[u32PC]) > { > if (data[u32PC] is a terminal or conditional terminal) > { > Recompile(u32PC); > } > > EmitCover(); // Conditional terminals can be fixed up because by > // the time the code gets here, it's already generated > } > > // This will emit a code snippet for this entire block, also filling > // in the RecompileMap array of pointers to recompiled code. > > EmitTargetCodeForBlock(); > } > Yes, it's simple, fast and easy. But almost it's Z80 (8-bit CPU) specific, you are doing in fact a instruction by instruction translation. Try to do it with M68000 ;) In a larger CPUs I think you could make more than a translation (different blocks) for a same instruction (or instructions), this is the case for backward jumps. > > Hopefully this will shed some light on what I'm thinking. This approach > will traverse the code for every possible known branch. Of course, things > like "ret" and "jp (hl)" we couldn't possibly recompile ahead of time so > we'd be forced to look them up when they were encountered. > > Let's take an example of this code snippet: > > begin: > mov hl, 4300h > mov de, 1500h > mov ix, 1350h > call MoveIt > dec bc > jnz begin > ret > > MoveIt: > mov a, (hl) > mov (de), a > dec ix > jnz MoveIt > ret > > The recompiler would enter at begin and recompile: > > mov hl, 4300h > mov de, 1500h > mov ix, 1350h > > And before emitting the "call MoveIt", it would call itself with the > program counter of the address "Move It". So now the recompiler > recompiles: > Yes. In any dynamic recompiler you have to translate what you have to execute now before execute it ;) Your translation follow translation the flow of execution. > > MoveIt: > mov a, (hl) > mov (de), a > dec ix > > And in this case it recompiles the jnz because it's an address that's > currently in the block being recompiled: > > jnz MoveIt > ret > Supose you jump to an instruction after MoveIt: MoveIt: mov a, (hl) MoveHere: mov (de), a dec ix jnz MoveHere ret When you find 'jnz MoveHere' you know where is the translated code for 'MoveHere' but in a more generic recompiler you don't. Then you have two alternatives: end your block and begin a new block (and you have to translation of the same code) that it's easy, or you can see you are jumping to the same block and translate a intrablock jump. But you can't do this last if you jump from a block to the middle of an already translated block. > > When we hit this hard terminal, the recompiler has emitted and entire > sequence of target opcodes to cover this instruction sequence. And now it > returns back to the original launching place - the "call" instruction and > finishes up: > > call MoveIt > dec bc > > It already knows the "Begin" label since it's in the block being > recompiled, so it just jumps to the address it knows already if the > condition is met. > > jnz Begin > > So anything that you don't know, you recompile it, and the entire > recompiled code sequence winds up unwinding and recompiling itself. Slick, > huh? > Yes, I think It's this is the best way to do recompilation but only for Z80 (and other 8-bit CPUs, I'm repeating myself ...). Without a memory map for each translated instruction (as you have) it's imposible (or I think so) to do what you are doing. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Feb 29 01:54:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA59077 for dynarec-outgoing; Tue, 29 Feb 2000 01:54:37 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38BB9397.8F8F9192@est.fib.upc.es> Date: Tue, 29 Feb 2000 10:38:31 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > Actually I had the same problem. My English compiler book doesn't have > the term, at least not in the register, and the German translation of > the Dragon book I have is rather bad... > Nowadays I almost always buy English technical literature but I bought > the Dragon book before. > The not english people ever has the same problem ;) > > I had the same discussion with Neil because he likes to stick to the > traditional terms and I read about that method in Shade and Embra > first, so I took over their vocab. Neil is doing a dynamic recompilation implementation. I'm working in a theory of recompilation :) It's my fault. > > I think that the Shade document does a much better job explaining > certain techniques, but I also have both listed on my dynarec page: > http://www.cybervillage.co.uk/acorn/emulation/dynrcomp.htm > But Embra uses more optimized techniques, emulates MMU, and I read it later so impressed me more. But Shade is the start, Embra is like an extension to Shade. Wonderful page, is the only emulation related dynamic recompilation page I've found and has the better links ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Feb 29 02:07:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA59214 for dynarec-outgoing; Tue, 29 Feb 2000 02:07:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 29 Feb 2000 02:07:13 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 In-Reply-To: <38BB9282.2A1B47A6@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > use it. ;-) "Depth Traversal Recompilation" Describes exactly what the > > recompiler is doing. It's taking all possible branches and calling itself > > with those branched-to addresses. > Yes I think I'm focusing in a theory level, too. And you are working > in a more special application, a 8 bit CPU emulator. I take a look to > the code you sent and I think now you have an array for each memory > address of the Z80 with a pointer to translated instruction in this > address. That's correct. Quite the quick lookup! > working now it's the best choice. I'm in true? As I was thinking in > theory I was thinking in 16 and 32 bits CPU's with large address space > with makes this kind of optimization too expensive (may be imposible). It makes it irrelevant, actually. Here's how you do it in that case. Keep a linked list or hashed list of clumped addresses that have been translated. So for each block, you have the equivalent of what I have for every address in the Z80. Now, when new code executes and it can't find the address, it recompiles. If it *DOES* find the address in the list (that is now compiled), it fixes itself up with a hard jump to the new address. Then you only keep blocks of data for ROMmed and executed areas, and with the 68K for example, they can be half the address space since nothing executes on an odd boundary. > Yes, it's simple, fast and easy. But almost it's Z80 (8-bit CPU) > specific, you are doing in fact a instruction by instruction > translation. Try to do it with M68000 ;) Not a problem. I don't see why it would be 8 bit specific. The 68K has a finite set of instructions and the same theories apply nicely. > In a larger CPUs I think > you could make more than a translation (different blocks) for a same > instruction (or instructions), this is the case for backward jumps. Backward jumps are easy if they're within the sequence because if you keep a linked list of instructions that have been emitted for a given block, you can just point back to the block you're in (which is what my core does right now) > > And before emitting the "call MoveIt", it would call itself with the > > program counter of the address "Move It". So now the recompiler > > recompiles: > Yes. In any dynamic recompiler you have to translate what you have to > execute now before execute it ;) Your translation follow translation > the flow of execution. Not exclusively true! Once I get everything implemented, I'll move a call instruction to a conditional terminal so that the block will go all the way through to the RET instruction and not stop at the call. Now go back and look at it again with that in mind. ;-) A lot of what I'm talking about here is future implementation. Don't take me to task on what I have now. ;-) It'll get there! > > And in this case it recompiles the jnz because it's an address that's > > currently in the block being recompiled: > > jnz MoveIt > > ret > Supose you jump to an instruction after MoveIt: > > MoveIt: > mov a, (hl) > MoveHere: > mov (de), a > dec ix > jnz MoveHere > ret > When you find 'jnz MoveHere' you know where is the translated code for > 'MoveHere' but in a more generic recompiler you don't. Why not? If we recompiled the MoveHere->Ret instruction first, and now we've recompiled at MoveIt, at the end of MoveIt it would jump to MoveHere. Problem solved. > Then you have two alternatives: end your block and begin a new block > (and you have to translation of the same code) that it's easy, or you > can see you are jumping to the same block and translate a intrablock > jump. But you can't do this last if you jump from a block to the > middle of an already translated block. Why not? If you know where the address is, it's easy to poke in a quick jump instruction to jump to it. > > So anything that you don't know, you recompile it, and the entire > > recompiled code sequence winds up unwinding and recompiling itself. Slick, > > huh? > > > Yes, I think It's this is the best way to do recompilation but only > for Z80 (and other 8-bit CPUs, I'm repeating myself ...). Without a > memory map for each translated instruction (as you have) it's > imposible (or I think so) to do what you are doing. You can still have that on a 68K or any other big CPU. You just have to fragment the list a bit more. Let's not pigeonhole the idea or call it "8 bit only". These are workable theories and just need minor tweaks. I *STARTED* with these theories of operation on a 68K and a 34010, both of which are of a much, much larger memory map. Trust me. I've thought this through. The other alternative is going to that sucky "middleware" recompiler idea that seems to be so popular. There are far better ways to do it! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Feb 29 02:40:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA59323 for dynarec-outgoing; Tue, 29 Feb 2000 02:40:39 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38BB9E97.8E022118@est.fib.upc.es> Date: Tue, 29 Feb 2000 11:25:28 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Bradley wrote: > > > Yes, it's simple, fast and easy. But almost it's Z80 (8-bit CPU) > > specific, you are doing in fact a instruction by instruction > > translation. Try to do it with M68000 ;) > > Not a problem. I don't see why it would be 8 bit specific. The 68K has a > finite set of instructions and the same theories apply nicely. > It's not a problem of instructions, it's a problem of memory. If you have 24,32 or 64 bits addresses do you map all this memory (4Mb, 4Gb, whatever)?. Only if you are sure you only use a small portion of memory addresses you could have a per-instruction table. > > Yes. In any dynamic recompiler you have to translate what you have to > > execute now before execute it ;) Your translation follow translation > > the flow of execution. > > Not exclusively true! Once I get everything implemented, I'll move a call > instruction to a conditional terminal so that the block will go all the > way through to the RET instruction and not stop at the call. Now go back > and look at it again with that in mind. ;-) > > Uh ... Procedure inlining? Perhaps could be useful, more code but faster ... > > > Then you have two alternatives: end your block and begin a new block > > (and you have to translation of the same code) that it's easy, or you > > can see you are jumping to the same block and translate a intrablock > > jump. But you can't do this last if you jump from a block to the > > middle of an already translated block. > > Why not? If you know where the address is, it's easy to poke in a quick > jump instruction to jump to it. But you don't know the address for each address instruction in my model of dynamic recompiler. > > > Yes, I think It's this is the best way to do recompilation but only > > for Z80 (and other 8-bit CPUs, I'm repeating myself ...). Without a > > memory map for each translated instruction (as you have) it's > > imposible (or I think so) to do what you are doing. > > You can still have that on a 68K or any other big CPU. You just have to > fragment the list a bit more. > > Let's not pigeonhole the idea or call it "8 bit only". These are workable > theories and just need minor tweaks. I *STARTED* with these theories of > operation on a 68K and a 34010, both of which are of a much, much larger > memory map. > > Trust me. I've thought this through. > > The other alternative is going to that sucky "middleware" recompiler idea > that seems to be so popular. There are far better ways to do it! > I don't know what you means with a 'middleware' recompiler. But take a look at big CPUs. Perhaps on a 68K for an emulated Mega Drive (or Genesis) the real address space is small, the greatest rom is perhaps 4MBytes, so you can have a hash table (or a table of addresses lists). This would be 4MB * 4 = 16 MBytes of memory if you map directly all addresses ,oh...., I forget 68K don't accesses odd addresses, so is 8MBytes, it doesn't matter ;). If you use a smallest hash table with dynamic lists of addresses (and think you have to manage this lists, so would be slower) could be perhaps a 256K table each list will have around 32 addresses when full but many times they will be empty. I now think this is posible. But if you are trying to emulate a Pentium (or Alpha or a multiRisc machine) with a larger memory space with a lot of code executing at time (I have W98 with 64 Mb and with loading anything I 32Mb are already used!, in a Alpha server or another machine this could be worst) you can't and in fact you wan't to know where each instruction is translated. Well. Take in care I'm talking about theory :). I actually believe that you have found perhaps a good solution for our emulation world and I thank you show me it. I have to think a little more about it. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Feb 29 02:57:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA59347 for dynarec-outgoing; Tue, 29 Feb 2000 02:57:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 29 Feb 2000 02:57:34 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 In-Reply-To: <38BB9E97.8E022118@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Not a problem. I don't see why it would be 8 bit specific. The 68K has a > > finite set of instructions and the same theories apply nicely. > It's not a problem of instructions, it's a problem of memory. If you > have 24,32 or 64 bits addresses do you map all this memory (4Mb, 4Gb, > whatever)?. No. But so far I'm not concerning myself with oodles of infinite memory, such as the 16 gigabyte memory mapped region of a Pentium. Only machines that are fairly fixed. > Only if you are sure you only use a small portion of > memory addresses you could have a per-instruction table. Right. And with any 68K or any other CPU (and I speak of emulation of video games/computers), there's a finite area that's used. For example, Marble Madness has 128K of code ROM. All you need to keep around is (128K/2)*4=256KBytes - one contiguous block that can be based anywhere. > > Not exclusively true! Once I get everything implemented, I'll move a call > > instruction to a conditional terminal so that the block will go all the > > way through to the RET instruction and not stop at the call. Now go back > > and look at it again with that in mind. ;-) > Uh ... Procedure inlining? Perhaps could be useful, more code but > faster ... And that's the whole idea, right? ;-) > > > can see you are jumping to the same block and translate a intrablock > > > jump. But you can't do this last if you jump from a block to the > > > middle of an already translated block. > > Why not? If you know where the address is, it's easy to poke in a quick > > jump instruction to jump to it. > But you don't know the address for each address instruction in my > model of dynamic recompiler. I don't in mine, either, but eventually the system figures it out by the depth traversal recompiling and it winds up unwinding itself. Perhaps you should actually see some of my source code before we go down this path. You and I have differing views on how things should be done. Frankly, I hate the existing methodologies. They're primitive, and so far everything I've read has been a copy of one another. The ideas I have will (hopefully) cause everyone to rethink recompilation. I just need to finish my core first. ;-) > > Let's not pigeonhole the idea or call it "8 bit only". These are workable > > theories and just need minor tweaks. I *STARTED* with these theories of > > operation on a 68K and a 34010, both of which are of a much, much larger > > memory map. > I don't know what you means with a 'middleware' recompiler. But take > a look at big CPUs. Perhaps on a 68K for an emulated Mega Drive (or > Genesis) the real address space is small, the greatest rom is perhaps > 4MBytes, so you can have a hash table (or a table of addresses lists). > This would be 4MB * 4 = 16 MBytes of memory if you map directly all > addresses ,oh...., I forget 68K don't accesses odd addresses, so is > 8MBytes, it doesn't matter ;). And that's precisely my point. But it's solving 99.99% of what I want it to solve (emulation) and that's good enough. I certainly don't want to make 99.99% of the emulated code suffer because of the 0.01% that needs sparse memory mapping. I don't give a flying rip about emulating a Pentium or any other system that utilizes so much memory I'd be better off just buying the device. Recompilation of a finite, fixed system is what I'm after - not the general "solve everything" case. We'll be here for eons to get that last .01%. > If you use a smallest hash table with > dynamic lists of addresses (and think you have to manage this lists, > so would be slower) could be perhaps a 256K table each list will have > around 32 addresses when full but many times they will be empty. I > now think this is posible. Glad you now think so! > But if you are trying to emulate a Pentium > (or Alpha or a multiRisc machine) with a larger memory space with a > lot of code executing at time (I have W98 with 64 Mb and with loading > anything I 32Mb are already used!, in a Alpha server or another > machine this could be worst) you can't and in fact you wan't to know > where each instruction is translated. Nope. But if I wanted to run a machine like that I'd just go buy the machine. Perhaps I won't think the same in 15 years when it's old junk and 4 megabytes of RAM is standard on every desktop machine. ;-) > Well. Take in care I'm talking about theory :). I gotcha 100%. It might not seem like I enjoy our conversations, but I do! I just don't want my ideas dismissed and snubbed like they've been before. I cannot count the number of times people have told me "Well, it doesn't solve *EVERY* case so therefore it's an invalid method and it shouldn't be done!". I don't care if it doesn't solve every case. If it solves 99.9% of it, I'm quite happy! Different systems require different approaches. The whole point of recompilation is to make it blindingly fast, and solving things for all general cases will wind up doing more harm than good. > I actually believe > that you have found perhaps a good solution for our emulation world > and I thank you show me it. I have to think a little more about it. You're good people, Victor. I would appreciate you continuing to challenge me. Once I get Space Invaders running on my Z80 recompiler core, I'll release it for initial perusal. Right now things are in such a state of flux that I'd spend more time trying to describe what's going on with the code and where I'm going than how it's operating. I also want some time to play with it - to optimize it and get the kinks out. It at least runs and does block moves now. I've now just got to devote more time to it to get it completed. That's tough with contract work and me taking over my boss's position for a week at work. ;-| -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Feb 29 03:04:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA59371 for dynarec-outgoing; Tue, 29 Feb 2000 03:04:01 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38BBA3E6.1A7ADC0F@est.fib.upc.es> Date: Tue, 29 Feb 2000 11:48:06 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 References: <38BB9E97.8E022118@est.fib.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com I'm replying myself :) I missed something to say. Perhaps although in fact you can have the address for each translated instruction you don't need, don't want to have it. Other question, if you make some optimization (i don't know now what kind of optimization) and some instructions in translation are missing, if you reorder the code, if ... I don't know :), where do you jump?. Why do you have to have a instruction by instruction translation? If you only need a block by block translation, you can save memory (a lot of memory) and you don't have to worry about where is each instruction. This is fun. In only a few mails I have learned more than reading a lot of documents ;) Another known problem: Theory Heaven against Implementation Earth ;) In fact I like more implementation, but I'm making a project for university which is theorical and all documentation (university level documentation) is theorical. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Feb 29 05:17:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA59587 for dynarec-outgoing; Tue, 29 Feb 2000 05:17:35 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 Date: Tue, 29 Feb 2000 14:03:47 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >The not english people ever has the same problem ;) You name it! >Neil is doing a dynamic recompilation implementation. I'm working in a theory >of recompilation :) It's my fault. I was only interested in the theory first, so I know most documents around. Then I started a very simple dynarec for MIPS (because you don't have to deal with condition flags then), but I stalled the project due to some faults in my approach. Now I'm seeking for new inspiration, and although I don't agree totally with Neil's method I have to admit that it's much more systematic than most other approaches I know. >But Embra uses more optimized techniques, emulates MMU, and I read it later so >impressed me more. But Shade is the start, Embra is like an extension to >Shade. I think Embra doesn't explain that much of it's techniques to be really useful, as is the same with Ardi's whitepaper. Shade gives a lot of hints on problems during recompilation and is therefore much more interesting in my opinion. I haven't read the technical info and the patent of Crusoe yet but it might be possible that you find some good material there. >Wonderful page, is the only emulation related dynamic recompilation >page I've found and has the better links ;) I was so fed up with the fact that there was so few information that I started a link collection by myself. I still do at least monthly searches for "dynamic recompilation" and "binary translation" with various search engines, but it seeme that there isn't more useful information around :-( Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Feb 29 14:24:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA61143 for dynarec-outgoing; Tue, 29 Feb 2000 14:24:52 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 29 Feb 2000 14:24:51 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 In-Reply-To: <38BBA3E6.1A7ADC0F@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > I missed something to say. Perhaps although in fact you can have the > address for each translated instruction you don't need, don't want to > have it. Other question, if you make some optimization (i don't know > now what kind of optimization) and some instructions in translation > are missing, if you reorder the code, if ... I don't know :), where do > you jump?. Why do you have to have a instruction by instruction > translation? If you only need a block by block translation, you can > save memory (a lot of memory) and you don't have to worry about where > is each instruction. Okay, this is one of those times I don't quite understand what you're saying, but I'm guessing that a quick explanation of how things work will clear the air. Typically, people (when writing recompiler) assemble covers for each instruction. Term definition: A "cover" is a series of instructions that "covers" a given source instruction. So, a cover for "ld a, (4300h)" would be: mov al, [ebp+4300h] sub edi, 10h js endOfTime That sequence is a "cover" for it. And I'm sure you'll find that term in the Dragon book. In any case, my recompiler works with an opcode structure. That means that the "mov", the "sub" and "js" instructions are recompiled into a structure that looks similar to this: struct sHostOp { UINT8 u8OpcodeData[12]; // The actual Opcode itself UINT32 u32PCEmul; // Z80 address that it covers (if // applicable) UINT8 u8OpcodeLen; // Length (in bytes) of our opcode UINT8 u8OpcodeClass; // 0=Regular, 1=Timing, UINT8 u8OpcodeType; // 0=Regular, 1=Jump to physical addr, // 2=Jump to other sHostOp structure UINT32 u32JumpToAddr; // Our "jump to" address if applicable struct sHostOp *psNextLink; // Next instruction in list struct sHostOp *psPriorLink; // Prior instruction in list }; When I recompile a block, I create a linked list of structures for each target opcode. This linked list only exists for the time that the recompilation is taking place. Now, as you can see above, if the code is jumping to an address that's in the block that's being recompiled, I can remove instructions from the middle of the list, add them, rearrange them, and the "jump to" address still remains valid. I do all my optimization and rearrangement with the opcode lists like this. This gives me the ultimate flexibility. When it's time to emit actual x86 code: * Run through all links from top to bottom to figure out how big of a memory block to allocate. Allocate the memory block. * Emit the code from the sHostOp structures into the memory locations. At the same time, if we hit a jump instruction, do the necessary fixups, whether it's relative or physical, or to another sHostOp structure. * Update the global 64K pointer list with all emitted entry points for each opcode. * Burn the entire sHostOp linked list tree So all I'm left over with is the actual executable for that block. Sure, it'll take a bit longer to allocate those few structures for the first time things get compiled, but it's not slow enough to be noticeable. Hell, if we wanted to get creative we could put a memory subsystem underneath it that allocates them out of a fixed pool to speed it up, but I'm sure it's not necessary. The sHostOp also gives me hints as to whether or not I can rearrange instructions or if they need to remain static. Pentium resequencing can gain quite good speed increases. > This is fun. In only a few mails I have learned more than reading a > lot of documents ;) Another known problem: Theory Heaven against > Implementation Earth ;) In fact I like more implementation, but I'm > making a project for university which is theorical and all > documentation (university level documentation) is theorical. I've fought many a "university level document" with implementations that completely clobber their theories. Sometmies you've just got to get your hands dirty! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Feb 29 14:29:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA61176 for dynarec-outgoing; Tue, 29 Feb 2000 14:29:35 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 29 Feb 2000 14:29:34 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Neil is doing a dynamic recompilation implementation. I'm working in > >of recompilation :) It's my fault. > I was only interested in the theory first, so I know most documents > around. Then I started a very simple dynarec for MIPS (because you > don't have to deal with condition flags then), but I stalled the > project due to some faults in my approach. I'll be writing a recompiler targeting the R4000. I'm into handhelds quite a bit (Casio E-105) which has about as much power as a 486/33. I could use the speed boost. > Now I'm seeking for new inspiration, and although I don't agree totally > with Neil's method I have to admit that it's much more systematic than > most other approaches I know. We probably should discuss those disagreements to see if it's a stylistic thing or just me not giving everyone the complete picture. I have a zillion ideas in my head and have it all sorted out. The problem is that it's coming through in bits and pieces during conversations which makes it hard to track. Even moreso if they're new approaches. ;-) > I haven't read the technical info and the patent of Crusoe yet but it > might be possible that you find some good material there. Their operation is "lots of registers, lots of registers, and VLIW". That's the brute force approach. ;-) The fact is the Crusoe chip is all the same concepts the Pentium has been using since 1992 - just built for a broader set of applications. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Feb 29 19:36:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id TAA62217 for dynarec-outgoing; Tue, 29 Feb 2000 19:36:52 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 Date: Wed, 01 Mar 2000 04:21:01 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I'll be writing a recompiler targeting the R4000. I'm into handhelds quite >a bit (Casio E-105) which has about as much power as a 486/33. I could use >the speed boost. Hmm, I thought that a R4000 would be faster, but that surely depends on the clocking speed. Actually I think MIPS is nice to recompile, but it will be lots of dirty work to get a Z80 flags emulation running on it. BTW, just in case you're searching for a good MIPS book, this should be one of the best: Dominic Sweetman: See MIPS Run, MKP 1999 >We probably should discuss those disagreements to see if it's a stylistic >thing or just me not giving everyone the complete picture. I have a >zillion ideas in my head and have it all sorted out. The problem is that >it's coming through in bits and pieces during conversations which makes it >hard to track. Even moreso if they're new approaches. ;-) I think the problem I have is that I started with translation from RISC to RISC in mind. This should yield the biggest speed increase, since a one-to-one instruction-mapping can be done in many cases. I know that you have the same effect for many Z80 instructions on x86, but it's something different to recompile a Z80 with 4MHz or a R3000 with 30MHz. Due to my focus on RISC I came up with different models than you: 1. To have a direct mapping table for each address of the emulated system works great for 8-bit CPUs which have a maximum address space of 64K or maybe 128K with bank switching. For processors with 24-bit or 32-bit addresses this approach is beginning to be complicated, although it could be handled if you do a similar trick as MIPS which stores the whole page table in virtual memory and therefore only needs space for the existing parts of the table. The "traditional" approach is to only permit jumps to the beginning of a block and store these addresses in a hash table, or do the dirty UltraHLE trick by encoding the address of the generated code in an illegal instruction in the first position of the translated block. This means of course that a jump into a block that part of the block is reompiled twice... 2. Your approach of selective register caching (meaning the implementor decides which simulated register values are held in hardware registers) works wonders for 8-bit processors with relatively few registers and in this case is much faster than dynamic register allocation. You might be even right that the 68000 uses a small part of it's registers very often, but I have my doubts that this will work this optimal for a MIPS with 31+2 registers. But also this is difference is due to our approaches. You have the ability to leave the block after any instruction when it's time for an interrupt, which is necessary for most 8-bit systems and doesn't work very well with register allocation. As I already mentioned some time earlier you'd need special register saves for each instruction in the peer blocks since you'd have to decide which registers are cached for every instruction. Depth traversal operation would be even more complicated an memory hungry since you'd have to remember the currently cached registers for each instruction and compare the memorized structures of the jumping and the target instruction to know which registers have to be swapped. I didn't think of inter-block exits or jumps in the first place so I wasn't aware of that problem. I wanted to have an optimal translation for each block no matter what registers it is using. Even on MIPS a single block will rarely use more than a handful of registers, but it doesn't always have to use the same registers in every block, so the obvious solution would be to allocate hardware registers for every simulated register per block to reduce memory transfers to a minimum. 3. You focus on an exact simulaton of each instruction, where I would combine some sinstructions for speed. Let's take some MIPS examples: lui Rd, hi16 ori Rd, Rd, lo16 Could be combined to: movl Rd, hi16| lo16 Many branch instructions can be optimised: slt Rd, Rt, Rs beq Rd, Zero, offset is basically: ble Rs, Rt, offset Also a MIPS multiplication consists of at least two instructions and would lead to some unnecessary memory transfers since you wouldn't normally cache HI and LO in hardware registers, would you? Short resume: Your methods of static register caching and per address mapping work great for 8-bit processors. It's easy and fast for systems with few registers and memory. But I still have my some doubts that it will be optmial for larger CPUs. My approach is bad for timing sensitive systems and wastes memory and time due to the possiblity of recompiling block parts several times, but it should have less memory accesses per block. It would be great to find some kind of compromise between these two. I know that it's easy to turn off the timing code in your generation, but there is still the problem with per block register allocation and large address spaces. Where we both agree though is: - dynamic recompilation has to be done with dynamic code generation and not pre-assembled instruction templates - decoder and generator have to be separate modules which communicate via information structures, since this leads to cleaner and better retargetable code, not to mention the improved optimisation possibilities. >Their operation is "lots of registers, lots of registers, and VLIW". >That's the brute force approach. ;-) The fact is the Crusoe chip is all >the same concepts the Pentium has been using since 1992 - just built for a >broader set of applications. Too true! I was somewhat dissapointed by Crusoe as a processor. All I know is that it has 128-bit VLIWs and 64 registers, but I never found out the register width or what instructions Crusoe has. So the only interesting part is the Code Morphing software, which surely does about the same as Pentium in hardware, but the theory of it might be interesting for Victor, and profs are often impressed when they see that some techniques are actually used in commercial products ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 1 11:33:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA64898 for dynarec-outgoing; Wed, 1 Mar 2000 11:33:45 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 1 Mar 2000 11:33:44 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >I'll be writing a recompiler targeting the R4000. I'm into handhelds > >a bit (Casio E-105) which has about as much power as a 486/33. I could > >the speed boost. > Hmm, I thought that a R4000 would be faster, but that surely depends on > the clocking speed. Actually I think MIPS is nice to recompile, but it > will be lots of dirty work to get a Z80 flags emulation running on it. It has such a small cache that its performance isn't as good as it should be. But then again it's a handheld - What do we need all that power for? . ;-) > >it's coming through in bits and pieces during conversations which > >hard to track. Even moreso if they're new approaches. ;-) > I think the problem I have is that I started with translation from RISC > to RISC in mind. This should yield the biggest speed increase, since a > one-to-one instruction-mapping can be done in many cases. Not necessarily. But then again, the same thing could be said for the x86 sans all the registers. There are lots of 1:1 mappings for the Z80 to the x86, but regardless, you're going to have to do manual flag calculation. > you have the same effect for many Z80 instructions on x86, but it's > something different to recompile a Z80 with 4MHz or a R3000 with 30MHz. Not really. All the same rules still apply. The problem with the x86 is the lack of registers, which presents some swapping register problems. However, I still see no reason it couldn't run a 34010 at 50MHZ just fine. Of course, it also depends upon whether or not you're recompiling C code (or assembly). You can make several assumptions if it's C (like not jumping in to the middle of blocks). > Due to my focus on RISC I came up with different models than you: Remember, I focused on the 34010 and the 68K first, which are very RISC-like. They all still apply. You just have to tweak how you do it based on the CPU and the target software you're recompiling. > 1. To have a direct mapping table for each address of the emulated > system works great for 8-bit CPUs which have a maximum address space of > 64K or maybe 128K with bank switching. Of course. It also works great for 16, 24, or 32 bit CPUs if only a small region of the address space is used. > For processors with 24-bit or 32-bit addresses this approach is > beginning to be complicated, although it could be handled if you do a > similar trick as MIPS which stores the whole page table in virtual > memory and therefore only needs space for the existing parts of the > table. You can still use the same approach with pointer indirection if you know where your memory map is. If it's all over the map, then the mapped approach is memory hungry and probably not the right way to go. However, if your code is ROMmed and it's located from 00000000h-00050000h, creating such a table is easy to do and works just as well. The virtual page table thing is a nice idea, but it basically requires you to be the operating system. Oh... if that was the case... ;-) > The "traditional" approach is to only permit jumps to the beginning of > a block and store these addresses in a hash table, That makes the assumption that the code doesn't double back on itself to oddball locations (C code doesn't do this). For the 68K and 34010 code I've looked at it seems like it'd work quite well. But a hash table lookup is still far slower than a linear index. If you've got the memory, obviously the pointer lookup approach is much, much faster, and after all, that's what we're going for - speed - right? ;-) > UltraHLE trick by encoding the address of the generated code in an > illegal instruction in the first position of the translated block. This > means of course that a jump into a block that part of the block is > reompiled twice... I like the idea of putting in a trap. Seems like it'd work quite nicely! I'll stew on this one... > 2. Your approach of selective register caching (meaning the implementor > decides which simulated register values are held in hardware registers) > works wonders for 8-bit processors with relatively few registers and in > this case is much faster than dynamic register allocation. > You might be even right that the 68000 uses a small part of it's > registers very often, but I have my doubts that this will work this > optimal for a MIPS with 31+2 registers. I can say for a fact that it'll work nicely on the 68K and the 34010 from the code I've seen. Of course, I'm not going *FROM* MIPS to something, I'm going from something *TO* MIPS which makes the problem nonexistent. ;-) But even in the case where MIPS is recompiled to x86, there are going to be registers that are used more often than others. That's just the way compilers work. And if it uses so many registers that it can't keep them all in native x86 registers, then register caching allocation won't do you any good. > But also this is difference is due to our approaches. You have the > ability to leave the block after any instruction when it's time for an > interrupt, which is necessary for most 8-bit systems and doesn't work > very well with register allocation. Timing is damned important with *ANY* CPU! RISC/8 bit has *NOTHING* to do with it. If you don't believe me, get even a cycle off on the 34010 when it's issuing redraws and it causes sprites to be drawn in the wrong place. Or on the 68K, screw up a couple of cycles and watch the sprites start flickering, disappearing, or watch the game code crash. I guess I come from a realm where I've run into so many timing problems to know that timing is indeed a sensitive animal. You guys are theorists. ;-) Trust me - I know exactly what I'm talking about! > As I already mentioned some time > earlier you'd need special register saves for each instruction in the > peer blocks since you'd have to decide which registers are cached for > every instruction. Either that, or you'd have to recompile the block for each type of "register set usage". Yeuck. That'd probably fragment the hell out of your cache. > I didn't think of inter-block exits or jumps in the first place so I > wasn't aware of that problem. They certainly do exist. They're more common in assembly code where there are no inner/outer rules (I.E. C compiled code). A good hybrid approach would be to pass hints to the recompiler to let it know what areas it can coalesce and what areas it can't. But anything is slower than an indexed lookup and it most likely would hinder performance. > doesn't always have to use the same registers in every block, so the > obvious solution would be to allocate hardware registers for every > simulated register per block to reduce memory transfers to a minimum. If you have them available, sure. > 3. You focus on an exact simulaton of each instruction, where I would > combine some sinstructions for speed. Let's take some MIPS examples: You're reading too much into what's implemented. *I'M NOT FINISHED!* Promise me that you'll keep in mind that none of my optimizations can occur until I get the whole thing up and working. After that, there are MANY other grouping optimizations I intend on doing which cover everything you're talking about below. In fact, it'll be done not only on the Z80 side of things, but also on the x86 side as well. After things are running, *THEN* I can start showing some other optimization techniques! > Many branch instructions can be optimised: > slt Rd, Rt, Rs > beq Rd, Zero, offset > is basically: > ble Rs, Rt, offset And again, once my recompiler is completed, these kinds of optimizatios will occur. Don't sell me so short so soon! ;-) > Short resume: > Your methods of static register caching and per address mapping work > great for 8-bit processors. It's easy and fast for systems with few > registers and memory. But I still have my some doubts that it will be > optmial for larger CPUs. Haven't studied much actual assembly code for these CPUs, have you? ;-) You should take a good look at it. You'll find some amazing patterns! On the 68000, A0/A1 and D0/D1 are used about 90% of the time. On the 34010, A0-A3 are used constantly, and become decreasingly used as it continues. Those are the two RISC examples I work with most. I've poured over lots of code and analyzed a ton of games. Putting in a general purpose register cashing algorithm will buy you nothing - in fact, it'll hinder it. To recompile properly, you have to know what you're recompiling and alter your algorithm to match. I never once stated that my approaches are the end all solution. But what I'm saying is that an end-all solution will not yield the most optimal results. Rather than going for a general pupose one-size-fits-all solution, a better approach is to specialize what target you're recompiling and alter your algorithm to fit it. After all, our ultimate goal here is the fastest achievable speed. > My approach is bad for timing sensitive systems and wastes memory and > time due to the possiblity of recompiling block parts several times, > but it should have less memory accesses per block. But at the same time, now that you're using a lot more memory, you're also using a lot more cache, whereas the repeated memory accesses are going to be in cache since they're used often enough to stay there. And timing sensitive systems are 90% of the video games out there. Some of them are *DEATHLY* critical (Sega Genesis, anyone?), otherwise you wind up flashing/missing sprites or internal overflows because of scanline counters relying on CPU speed measurements. > It would be great to find some kind of compromise between these two. I > know that it's easy to turn off the timing code in your generation, but > there is still the problem with per block register allocation and large > address spaces. The per block register allocation scheme I argue is a wash because of cache coherency, and large address spaces are still possible. If I know that ROM exists from 0x10000-0x4ffff then I can allocate a 0x40000 element array for it. It can be located anywhere it wants to be, and it's only for recompiled code. But don't say "large address spaces" - say "sparse address spaces". My approach handles large address spaces if only a small fraction of it is used. However, if it's a system with a very large memory map, my approach won't work unless you have gobs and gobs of memory laying around. But at the same time, we need to be altering our approaches depending upon our target. Generalized approaches are always going to be less optimal. > >Their operation is "lots of registers, lots of registers, and VLIW". > >That's the brute force approach. ;-) The fact is the Crusoe chip is > >the same concepts the Pentium has been using since 1992 - just built > >broader set of applications. > Too true! I was somewhat dissapointed by Crusoe as a processor. All I Yeah, me too. I thought it was truly something revolutionary. Intel does it in 1992 and has been doing it for 8 years and it's "So what". Get a little marketing hype behind it with Linus Trivolas and now it's "super cool". I hate the general public. So to summarize, we don't have a "disagreement". We have a different set of goals. You cannot successfully argue that your generalized approach will be faster or better than mine for fairly limited address usage, and I cannot argue that my specialized approach will work well for large address usage. And also clearly, my ideas aren't "RISC" or 8-bit, so please let's drop using those terms. Across any CPU, there are registers used more often than others. All of my ideas are scalable to any CPU regardless of how many registers it has - provided that a reasonably small amount of code space is all that's used. My approaches won't work for large scale things like a home computer emulation with 16 megabytes of RAM. But it will work for every single video game, regardless of CPU, that I've encountered to date. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 1 13:45:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA65428 for dynarec-outgoing; Wed, 1 Mar 2000 13:45:45 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 Date: Wed, 01 Mar 2000 22:09:29 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com [R4000] >It has such a small cache that its performance isn't as good as it should >be. Yeah, caches were always a problem with MIPS, especially the software cache handling, but I like the ISA. >But then again it's a handheld - What do we need all that >power for? . ;-) For WinCE to run smoothly? ;-) >Not really. All the same rules still apply. The problem with the x86 is >the lack of registers, which presents some swapping register problems. Indeed. >However, I still see no reason it couldn't run a 34010 at 50MHZ just fine. I'm not sure if I know right now what kind of CPU the 34010 is. Could you tell me the architecture please? >Of course, it also depends upon whether or not you're recompiling C code >(or assembly). You can make several assumptions if it's C (like not >jumping in to the middle of blocks). Probably. Just like you I wanted to work with extended basic blocks, which are terminated only by an unconditional jump, and handle intra- block branches directly. >Remember, I focused on the 34010 and the 68K first, which are very >RISC-like. They all still apply. You just have to tweak how you do it >based on the CPU and the target software you're recompiling. I think this is out core problem: You want to tweak the recompiler till it generates optimal code and I'm seeking for a more general approach. >Of course. It also works great for 16, 24, or 32 bit CPUs if only a small >region of the address space is used. The problem is that some processors use a rather weird memory mapping, which makes this method relatively complicated even if only a very small part of the space is used. >You can still use the same approach with pointer indirection if you know >where your memory map is. If it's all over the map, then the mapped >approach is memory hungry and probably not the right way to go. However, >if your code is ROMmed and it's located from 00000000h-00050000h, creating >such a table is easy to do and works just as well. I think we should try to find some real systems as examples to discuss this matter. But I have to admit that I'm not an expert for memory mapping issues anyway. >The virtual page table thing is a nice idea, but it basically requires you >to be the operating system. Oh... if that was the case... ;-) I wanna be the scheduler then I can tell others what they have to do ;- ) It was more or less a joke that I mentioned the virtual table, because I think that the MIPS page table handling is ingenious. >That makes the assumption that the code doesn't double back on itself to >oddball locations (C code doesn't do this). For the 68K and 34010 code >I've looked at it seems like it'd work quite well. But a hash table lookup >is still far slower than a linear index. That's for shure! >If you've got the memory, >obviously the pointer lookup approach is much, much faster, and after all, >that's what we're going for - speed - right? ;-) Agreed - as long as you don't have to map too much memory. >I like the idea of putting in a trap. Seems like it'd work quite nicely! >I'll stew on this one... Actually on guy mentioned that in a discussion about self-modifying code as a method to see if the block was modified, but I think it works far better to see if the block has been recompiled and the location of the generated code by simply looking at the first instruction of the block. It works fine for MIPS since you have enough space to encode a target address and the illegal opcode in a 32-bit word, but you'll have problems to use it for the smaller Z80 instructions. When the generated code has to be swapped for some reason you have to restore the original instruction of course. And when another block runs right into that illegal instruction you have to check which was the original one or simply jump to the already recompiled block. >I can say for a fact that it'll work nicely on the 68K and the 34010 from >the code I've seen. Of course, I'm not going *FROM* MIPS to something, I'm >going from something *TO* MIPS which makes the problem nonexistent. ;- ) But only until you someday decide you have to recompile from MIPS code... >But even in the case where MIPS is recompiled to x86, there are going to >be registers that are used more often than others. That's just the way >compilers work. Hard to decide which registers should be taken though. >And if it uses so many registers that it can't keep them >all in native x86 registers, then register caching allocation won't do you >any good. That's one of the problems the x86 has. I'm not sure if your code is already that flexible - so please correct me - but what about making the communication between the two layers flexible enough for the generator to decide if it uses static or dynamic register caching? Because the problem of to few registers mainly belongs to the x86 which is just one (although much used) of the currently utilized architectures. >I guess I come from a realm where I've run into so many timing problems to >know that timing is indeed a sensitive animal. You guys are theorists. ;-) >Trust me - I know exactly what I'm talking about! Too true, after all I'm as much theorist as Victor, so please don't mind when I'm thinking about certain topics which would be perfectly clear if I worked it through in reality. >Either that, or you'd have to recompile the block for each type of >"register set usage". Yeuck. That'd probably fragment the hell out of your >cache. I'm not sure how this should help anyway, since you can exit and reenter at any possible point. >They certainly do exist. They're more common in assembly code where there >are no inner/outer rules (I.E. C compiled code). A good hybrid approach >would be to pass hints to the recompiler to let it know what areas it can >coalesce and what areas it can't. Maybe a special handling of short blocks without conditional branches could be done. >But anything is slower than an indexed >lookup and it most likely would hinder performance. I'm sure I still have too many other performance leaks in my theory... >You're reading too much into what's implemented. *I'M NOT FINISHED!* I never claimed that. >Promise me that you'll keep in mind that none of my optimizations can >occur until I get the whole thing up and working. After that, there are >MANY other grouping optimizations I intend on doing which cover everything >you're talking about below. In fact, it'll be done not only on the Z80 >side of things, but also on the x86 side as well. I wonder how you want to optimise to instructions in a single one when your pointer table gives you the possibility to jump to any instruction. Since you cannot know which of the translated instructions could become a jump target in the future there isn't much possibility for such optimisation. Or do you have an elegant solution for this matter? >After things are running, *THEN* I can start showing some other >optimization techniques! That'll be interesting! >Haven't studied much actual assembly code for these CPUs, have you? ;- ) >You should take a good look at it. You'll find some amazing patterns! Oops, got me! After all I'm a bookworm and "eat" lots of ISAs at the moment, but I haven't examined that much code yet. >On the 68000, A0/A1 and D0/D1 are used about 90% of the time. As I told you some time ago these registers were much used by TOS and ST programming experts recommended not to use these in applications. It then depends on the application of course if the OS might even have more processor time. Due to TOS wanting all arguments passed on the stack the SP was also very heavily used. >On the >34010, A0-A3 are used constantly, and become decreasingly used as it >continues. Those are the two RISC examples I work with most. I don't know the 34010 but it's a bit strange to call the 68000 a RISC ;-) >I've poured >over lots of code and analyzed a ton of games. Putting in a general >purpose register cashing algorithm will buy you nothing - in fact, it'll >hinder it. To recompile properly, you have to know what you're recompiling >and alter your algorithm to match. So you'd be using a different register mapping for some game drivers? >I never once stated that my approaches are the end all solution. But what >I'm saying is that an end-all solution will not yield the most optimal >results. Rather than going for a general pupose one-size-fits-all >solution, a better approach is to specialize what target you're >recompiling and alter your algorithm to fit it. After all, our ultimate >goal here is the fastest achievable speed. That's true, but sometimes I wonder how your Z80tox86 could be retargetted to eg. ARM without the ARM to be programmed like a x86. But that will clear up as soon as you start your generator for MIPS. >But at the same time, now that you're using a lot more memory, you're also >using a lot more cache, whereas the repeated memory accesses are going to >be in cache since they're used often enough to stay there. But I'm using the I-cache instead of the D-cache, and the caches have to be (partly) flushed after each newly generated block. On a Pentium this is totally handled by the hardware but on a StrongARM you have to synchronize your Harvard caches manually. >And timing sensitive systems are 90% of the video games out there. Some of >them are *DEATHLY* critical (Sega Genesis, anyone?), otherwise you wind up >flashing/missing sprites or internal overflows because of scanline >counters relying on CPU speed measurements. I have to admit that you already convinced me some time ago that timing code is essential. [Crusoe] >Yeah, me too. I thought it was truly something revolutionary. Intel does >it in 1992 and has been doing it for 8 years and it's "So what". Get a >little marketing hype behind it with Linus Trivolas and now it's "super >cool". I hate the general public. I thought his name is "Torvalds" ;-) It's a bit strange, when Crusoe came out the German magazin "Der Spiegel" wrote an article about it, but they didn't tell much about the processor. Most of the article was about Linus and his presentation of the processor in a Quake 3 deathmatch :-( >So to summarize, we don't have a "disagreement". We have a different set >of goals. You cannot successfully argue that your generalized approach >will be faster or better than mine for fairly limited address usage, and I >cannot argue that my specialized approach will work well for large address >usage. True. I hope I didn't offend you by playing around with some ideas, it certainly wasn't meant that way. I just compared our theories (or rather my theory and your solution) to find out the pros and cons and if it were possible to combine the best features in one approach. >And also clearly, my ideas aren't "RISC" or 8-bit, so please let's drop >using those terms. Across any CPU, there are registers used more often >than others. All of my ideas are scalable to any CPU regardless of >how many registers it has - provided that a reasonably small amount of >code space is all that's used. My approaches won't work for large scale >things like a home computer emulation with 16 megabytes of RAM. But it >will work for every single video game, regardless of CPU, that I've >encountered to date. Yeah, the problem is that I'm mainly a computer guy. I guess some of my misunderstandings will clear up as soon as you have other translators to take a look at. I know you want to finish your Z80tox86 first and it's good that way, or you will end up mixing ISAs as I start to do ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 1 15:41:07 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA68782 for dynarec-outgoing; Wed, 1 Mar 2000 15:41:07 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 1 Mar 2000 15:41:06 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >It has such a small cache that its performance isn't as good as it > >be. > Yeah, caches were always a problem with MIPS, especially the software > cache handling, but I like the ISA. ISA? Please explain... > >But then again it's a handheld - What do we need all that > >power for? . ;-) > For WinCE to run smoothly? ;-) Seen 3.0? ;-) I've been working with it for a while. Much, much snappier. I've done some emulation work under it as well for my E-105. > >However, I still see no reason it couldn't run a 34010 at 50MHZ just > fine. > I'm not sure if I know right now what kind of CPU the 34010 is. Could > you tell me the architecture please? Aha! The 34010 is a Texas Instruments 32 bit RISC-like CPU (I'm saying RISC-like because the term RISC is so nebulous nowadays - RISC in the context of having instructions that are fairly symmetric). It is a CPU designed for graphics processing. For example, it (or a variant of it) was used on the Viper 550 and I believe the Matrox G200 video cards. It has 32 32 bit registers, 1 is devoted to the stack. Interestingly enough, all addresses are *BITS*, not bytes! So you have to do a shift right by 3 to get the actual byte address. It has a built in blitter instruction that can do block moves, xors, ORs, pixel translation, and even has a *LINEDRAW* instruction! It's designed for graphics, and it's used in games like Smash TV, Trog, Mortal Kombat (Barf!), NBA Jam, Terminator, and a few other of the early 90's Williams games. > >Remember, I focused on the 34010 and the 68K first, which are very > >RISC-like. They all still apply. You just have to tweak how you do it > >based on the CPU and the target software you're recompiling. > I think this is out core problem: You want to tweak the recompiler till > it generates optimal code and I'm seeking for a more general approach. No, no..... tweak the *APPROACH*, not the recompiler! My point is instead of creating 1 geenral approach, create 3 more specific approaches. > >Of course. It also works great for 16, 24, or 32 bit CPUs if only a > >region of the address space is used. > The problem is that some processors use a rather weird memory mapping, > which makes this method relatively complicated even if only a very > small part of the space is used. Really? Can you give me an example? > >approach is memory hungry and probably not the right way to go. > >if your code is ROMmed and it's located from 00000000h-00050000h, > >such a table is easy to do and works just as well. > I think we should try to find some real systems as examples to discuss > this matter. But I have to admit that I'm not an expert for memory > mapping issues anyway. Here's an example: Marble Madness - 00000000-0001ffff - Program ROM 00040000-0004ffff - Scratch RAM 00050000-000503ff - Sprite RAM 00050400-000507ff - Color RAM 00300000-03003fff - Slapstic (proteciton chip) 98000000-98ffffff - Controller I/O, etc... (this is all from memory, so things might not be in the proper place but you still get the idea). I know from the way the code works that it only executes code out of ROM, so the only recompilation we need to do is in that first 128K region. > It was more or less a joke that I mentioned the virtual table, because > I think that the MIPS page table handling is ingenious. That same approach would work nicely on the Pentium's MMU, too. > When the generated code has to be swapped for some reason you have to > restore the original instruction of course. And when another block runs > right into that illegal instruction you have to check which was the > original one or simply jump to the already recompiled block. Not to mention the ROM failure messages one gets when the ROM has been modified. ;-) > >I can say for a fact that it'll work nicely on the 68K and the 34010 > >the code I've seen. Of course, I'm not going *FROM* MIPS to something, > >going from something *TO* MIPS which makes the problem nonexistent. ;- > But only until you someday decide you have to recompile from MIPS > code... Aha! But then I'll change my approach... > >But even in the case where MIPS is recompiled to x86, there are going > >be registers that are used more often than others. That's just the way > >compilers work. > Hard to decide which registers should be taken though. Examine the code it's recompiling. In other words, know your target. ;-) > >And if it uses so many registers that it can't keep them > >all in native x86 registers, then register caching allocation won't do > >any good. > That's one of the problems the x86 has. > I'm not sure if your code is already that flexible - so please correct > me - but what about making the communication between the two layers > flexible enough for the generator to decide if it uses static or > dynamic register caching? I think we're getting to the crux of the matter... the source layer has *NO SAY* in how the target layer generates code. It is *ENTIRELY* the target layer's decision as to where things go and how they're utilized. In fact, I can create a module that uses your approachs and one that uses mine, and both of them would use the same source layer. The target layer gives the ultimate flexibility. You can do anything you want in the target layer. The source layer just passes hints. It doesn't do any register allocation at all! > >Either that, or you'd have to recompile the block for each type of > >"register set usage". Yeuck. That'd probably fragment the hell out of > >cache. > I'm not sure how this should help anyway, since you can exit and > reenter at any possible point. I don't think the dynamic allocation of register and entry/exit at any point approach would work. I can't see a way to make it work. > >They certainly do exist. They're more common in assembly code where > >are no inner/outer rules (I.E. C compiled code). A good hybrid > >would be to pass hints to the recompiler to let it know what areas it > >coalesce and what areas it can't. > Maybe a special handling of short blocks without conditional branches > could be done. Yes, exactly. Or just a "hint list" of regions that say "You can safely group this entire region together. It's not timing sensitive". > I wonder how you want to optimise to instructions in a single one when > your pointer table gives you the possibility to jump to any > instruction. Oh, another point that I think we're missing. There's the source level optimization that groups instructions together *FIRST*, and then there's the target level optimization that optimizes the target opcodes. > Since you cannot know which of the translated instructions > could become a jump target in the future there isn't much possibility > for such optimisation. Or do you have an elegant solution for this > matter? Yes, it's a matter of keeping a "combined list" so that code will get recompiled in the case where it gets jumped to later on. When the recopmiler encounters a group of instructions that have been recompiled but have been optimized out, it recompiles that block in another area until it hits an address that hasn't been recompiled. You wind up creating a small bit of duplicated code, but it wouldn't be enough to worry about. > >Haven't studied much actual assembly code for these CPUs, have you? ;- > >You should take a good look at it. You'll find some amazing patterns! > Oops, got me! After all I'm a bookworm and "eat" lots of ISAs at the > moment, but I haven't examined that much code yet. You should. It will give you a few new perspectives. It did for me! > >On the 68000, A0/A1 and D0/D1 are used about 90% of the time. > As I told you some time ago these registers were much used by TOS and > ST programming experts recommended not to use these in applications. It > then depends on the application of course if the OS might even have > more processor time. Of course, but in the case of the x86, pick 4, any 4, registers that are most commonly used. > >34010, A0-A3 are used constantly, and become decreasingly used as it > >continues. Those are the two RISC examples I work with most. > I don't know the 34010 but it's a bit strange to call the 68000 a RISC > ;-) Hm... I don't think so. What does it have, 28 instructions, and they're all symmetics? Smells RISC like to me... > >hinder it. To recompile properly, you have to know what you're > >and alter your algorithm to match. > So you'd be using a different register mapping for some game drivers? Absolutely - yes. That's the way you tweak it for the target code being executed. > That's true, but sometimes I wonder how your Z80tox86 could be > retargetted to eg. ARM without the ARM to be programmed like a x86. But > that will clear up as soon as you start your generator for MIPS. It's easy. There's no x86-centric code in the srcz80.c module. It knows nothing of the target processor. It only passes in hints to the target layer - which does all the work. > >But at the same time, now that you're using a lot more memory, you're > >using a lot more cache, whereas the repeated memory accesses are going > >be in cache since they're used often enough to stay there. > But I'm using the I-cache instead of the D-cache, and the caches have > to be (partly) flushed after each newly generated block. On a Pentium > this is totally handled by the hardware but on a StrongARM you have to > synchronize your Harvard caches manually. I doubt that the ARM's caches combined are bigger than the Pentiums. And here we're talking about decommiting registers to memory and back again whenb we've run out of registers, so it'll most definitely be in data cache. But if you have several recompilations of the same block of code for different register usage, the breadth of the use of the cache will be in the instruction cache, and will probably be huge. > >And timing sensitive systems are 90% of the video games out there. > >them are *DEATHLY* critical (Sega Genesis, anyone?), otherwise you > >flashing/missing sprites or internal overflows because of scanline > >counters relying on CPU speed measurements. > I have to admit that you already convinced me some time ago that timing > code is essential. In most games it is, yes. I could send you a version of Retrocade with my interrupts off by 5 T-States. ;-) > >Yeah, me too. I thought it was truly something revolutionary. Intel > >it in 1992 and has been doing it for 8 years and it's "So what". Get a > >little marketing hype behind it with Linus Trivolas and now it's > >cool". I hate the general public. > I thought his name is "Torvalds" ;-) Whatever. ;-) > It's a bit strange, when Crusoe came out the German magazin "Der > Spiegel" wrote an article about it, but they didn't tell much about the > processor. Most of the article was about Linus and his presentation of > the processor in a Quake 3 deathmatch :-( Hype, hype, hype, and more hype. People lambast Microsoft and everyone else for it, yet it's OK for > >So to summarize, we don't have a "disagreement". We have a different > >of goals. You cannot successfully argue that your generalized approach > >will be faster or better than mine for fairly limited address usage, > >cannot argue that my specialized approach will work well for large > True. I hope I didn't offend you by playing around with some ideas, it > certainly wasn't meant that way. I just compared our theories (or > rather my theory and your solution) to find out the pros and cons and > if it were possible to combine the best features in one approach. No offense taken. The one thing to keep in mind is that "pro" and "con" are relative when knowing what you're recompiling. ;-) That's my basic point. A generalized approach will not solve everything optimally, so it calls for splitting things up a bit and taking slightly different approaches depending upon what you're recompiling. > >things like a home computer emulation with 16 megabytes of RAM. But it > >will work for every single video game, regardless of CPU, that I've > >encountered to date. > Yeah, the problem is that I'm mainly a computer guy. I guess some of my > misunderstandings will clear up as soon as you have other translators > to take a look at. I know you want to finish your Z80tox86 first and > it's good that way, or you will end up mixing ISAs as I start to do ;-) You solve the big model stuff, I'll solve the small model stuff, and together we'll kick some major ass. How's that sound? ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 2 00:55:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA72526 for dynarec-outgoing; Thu, 2 Mar 2000 00:55:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 Date: Thu, 02 Mar 2000 09:39:31 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >ISA? Please explain... Instruction Set Architecture. Now I'm also using lot's of these TLAs (three letter acronyms)... >> For WinCE to run smoothly? ;-) >Seen 3.0? ;-) I've been working with it for a while. Much, much snappier. Haven't worked on WinCE yet. I only saw an article about CE devices in a magazin, but I didn't read it really because it wasn't that informative. For one device they mentioned that it was the fastest in the test and also wrote down the clock speed, but do you think they found it worth mentioning if it has a MIPS or SuperH processor?? >I've done some emulation work under it as well for my E-105. Does it have a blue screen of death as well? ;-) >The 34010 is a Texas Instruments 32 bit RISC-like CPU (I'm saying >RISC-like because the term RISC is so nebulous nowadays - RISC in the >context of having instructions that are fairly symmetric). Yeah, one problem is that inflational use of the term RISC as made, and most don't know that it's only about architecture and not implementation. So it doesn't matter if the Pentium is using RISC features inside if you don't see it in the instruction set... >It is a CPU >designed for graphics processing. For example, it (or a variant of it) was >used on the Viper 550 and I believe the Matrox G200 video cards. Ah, so it's more like a DSP. >It has 32 32 bit registers, 1 is devoted to the stack. Interestingly >enough, all addresses are *BITS*, not bytes! So you have to do a shift >right by 3 to get the actual byte address. Sounds really like a DSP. Infineon's TriCore also has some instructions with bit addressing but not all. >It has a built in blitter instruction that can do block moves, xors, ORs, >pixel translation, and even has a *LINEDRAW* instruction! Wow! That must be a bitch to emulate! >No, no..... tweak the *APPROACH*, not the recompiler! My point is instead >of creating 1 general approach, create 3 more specific approaches. Sorry, I misunderstood you in that point... >> The problem is that some processors use a rather weird memory mapping, >> which makes this method relatively complicated even if only a very >> small part of the space is used. >Really? Can you give me an example? I'll try to find one. The MIPS memory map is somewhat weird, but I'll have to look it up again... >Here's an example: >Marble Madness - 00000000-0001ffff - Program ROM > 00040000-0004ffff - Scratch RAM > 00050000-000503ff - Sprite RAM > 00050400-000507ff - Color RAM > 00300000-03003fff - Slapstic (proteciton chip) > 98000000-98ffffff - Controller I/O, etc... >(this is all from memory, so things might not be in the proper place but >you still get the idea). So you only recompile the program ROM and have some special memory handlers for the controller I/O rigth? >> It was more or less a joke that I mentioned the virtual table, because >> I think that the MIPS page table handling is ingenious. >That same approach would work nicely on the Pentium's MMU, too. I guess the Pentium has a special table walking hardware. The cool thing about the MIPS is that the MMU is so primitive that it simply throws a miss exception when it doesn't find the address translation in the TLB. Everything else is done by the operating system, and it's still fast. The problem about a single page table is that it takes a lot of memory by itself, which is why many CPUs have a multi-level access. MIPS also holds the whole page table in virtual memory so it only needs memory for the parts that are really used ;-) >Not to mention the ROM failure messages one gets when the ROM has been >modified. ;-) Hehe, how can progammers be this unfair to test if the ROM is really unmodified? ;-) >> But only until you someday decide you have to recompile from MIPS >> code... >Aha! But then I'll change my approach... I forgot how flexible you are in contrast to other dynarec authors! >I think we're getting to the crux of the matter... the source layer has >*NO SAY* in how the target layer generates code. It is *ENTIRELY* the >target layer's decision as to where things go and how they're utilized. In >fact, I can create a module that uses your approachs and one that uses >mine, and both of them would use the same source layer. Should have taken a deeper look at the code before asking such questions, heh? >The target layer gives the ultimate flexibility. You can do anything you >want in the target layer. The source layer just passes hints. It doesn't >do any register allocation at all! That's absolutely how it should be! ;-) I knew I'd like your approach as soon as I heard some of it's features. >I don't think the dynamic allocation of register and entry/exit at any >point approach would work. I can't see a way to make it work. I'm not talking about runtime but generation time dynamic allocation, but even then it's complicated enough to match the cached registers of two instructions from different blocks... >> Maybe a special handling of short blocks without conditional branches >> could be done. >Yes, exactly. Or just a "hint list" of regions that say "You can safely >group this entire region together. It's not timing sensitive". Good, now we have the same idea again ;-) >> Since you cannot know which of the translated instructions >> could become a jump target in the future there isn't much possibility >> for such optimisation. Or do you have an elegant solution for this >> matter? >Yes, it's a matter of keeping a "combined list" so that code will get >recompiled in the case where it gets jumped to later on. When the >recompiler encounters a group of instructions that have been recompiled >but have been optimized out, it recompiles that block in another area >until it hits an address that hasn't been recompiled. You wind up creating >a small bit of duplicated code, but it wouldn't be enough to worry about. Do you want mark the optimised addresses in the pointer table to keep track of it? >> Oops, got me! After all I'm a bookworm and "eat" lots of ISAs at the >> moment, but I haven't examined that much code yet. >You should. It will give you a few new perspectives. It did for me! I bet so! >Hm... I don't think so. What does it have, 28 instructions, and they're >all symmetics? Smells RISC like to me... Hm basically RISC in the traditional sense means: - many general purpose registers - few instructions which are simple enough to be executed in one cycle with pipelining - few addressing modes - one instruction length I'm sure I forgot something... >It's easy. There's no x86-centric code in the srcz80.c module. It knows >nothing of the target processor. It only passes in hints to the >target layer - which does all the work. Yes, we have to keep it clean! >I doubt that the ARM's caches combined are bigger than the Pentiums. It's even smaller (and no L2 cache at all :-[), but it has a far higher associativity. >And >here we're talking about decommiting registers to memory and back again >when we've run out of registers, so it'll most definitely be in data >cache. But if you have several recompilations of the same block of code >for different register usage, the breadth of the use of the cache will be >in the instruction cache, and will probably be huge. I'll rethink that matter but I guess you're right. >In most games it is, yes. I could send you a version of Retrocade with my >interrupts off by 5 T-States. ;-) Hehe, that awful? ;-) >> I thought his name is "Torvalds" ;-) >Whatever. ;-) Finnish names can be a bit awkward... >Hype, hype, hype, and more hype. People lambast Microsoft and everyone >else for it, yet it's OK for For whom? >No offense taken. Good. I just wanted to give some constructive criticism. For other approaches it might have been deconstructive ;-) >The one thing to keep in mind is that "pro" and "con" >are relative when knowing what you're recompiling. ;-) That's my basic >point. A generalized approach will not solve everything optimally, so it >calls for splitting things up a bit and taking slightly different >approaches depending upon what you're recompiling. I'll have to work less on theories to realise that by myself. Until then I'll just have to believe you. >You solve the big model stuff, Well, I think of it, but nothing solved yet... >I'll solve the small model stuff, and >together we'll kick some major ass. How's that sound? ;-) Sounds great! ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 2 01:21:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA72576 for dynarec-outgoing; Thu, 2 Mar 2000 01:21:44 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38BE2F0C.712F4DE0@est.fib.upc.es> Date: Thu, 02 Mar 2000 10:06:20 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 References: Content-Type: multipart/mixed; boundary="------------CA2F443968AB8D4506F7DAD1" Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com This is a multi-part message in MIME format. --------------CA2F443968AB8D4506F7DAD1 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Quite a interesting discussion :) Today I have no time to read all messages, perhaps tomorrow I will do some comments. I wrote yesterday a kind of document that shows how bad I have understood your emulation approach ;). More interesting perhaps, will be the algorithm for self-modifying code, advantatges/disadvantatges are too small and need more work. I think this mails I still haven't readed (only a fast look) would be useful. Victor Moya P.S: I send it in an attachment because when I copy it to the mail it's looking ugly. --------------CA2F443968AB8D4506F7DAD1 Content-Type: text/plain; charset=iso-8859-1; name="Neil_Z80_recompiler.txt" Content-Transfer-Encoding: 8bit Content-Disposition: inline; filename="Neil_Z80_recompiler.txt" A New Emulation Implementation Light (NEIL) for a Z80 dynamic recompilator. (Sorry for the joke ;) OK, I'm going to make a summary about how I think it works your new Z80 recompiler core. First, use of registers: AH => F AL => A BX => HL CX => DC DX => DE EDI => Number of cycles resting to execute EBP => pointer the Z80 memory ESI => free for use * High word of AX, BX, CX, DX is CLEAR (0). All other Z80 registers: the secondary register block (A', F',...), stack pointer (SP), program counter (PC), index registers (IX, IY) and all others registers (I, R, IMx, ...) are in memory variables. Memory is managed with memory maps. It works exactly as MZ80 core. A memory map for reading, another for writing. An I/O map for reading and writing. Format: a list of memory (or IO) regions {{start-address, end-address, pointer to function},{-1,-1,-1}} The code is supposed to be accessed directly (not with memory maps, only using an offset). An array for all 64KB Z80 memory space of pointers. Each instruction (identified by an address) translated has a pointer here to its translated code. I call it TransMap (Translation Map). A Translation Cache or Translation Buffer (TC) where is stored the translated code. Interface functions for the emulator: (correct names are in MZ80 core, I will search for them later) * BuildCpu(), or something like that, creates the structures needed for emulation of the CPU. * Reset(), makes a reset of CPU state. * FlushTranslationCache(), perhaps will be needed to empty all (or some) translations. * Functions to manage interruptions. * Functions to get, modify CPU state. * Exec(), executes a number of CPU cycles. Function Exec(T: number of cycles to execute) { RestingTime = T; (mov edi, T) while (RestingTime > 0) { if (TransMap[PC]!=NULL) jump(TransMap[PC]); else translate(PC); } } Some definitions: Terminal - Any instruction that unconditionally modifies the PC (ret, call, jmp, etc...) Nonterminal - Any instruction that can't or doesn't modify the PC directly Conditional terminal - Any instruction that could conditionally affect the PC translate(PC: beginning address for start compilation) { PR = PC; while(Z80mem[PR]!=Terminal) { pTrInstr = translate_Instruction(PR,TC); TransMap[PR] = pTrInstr; PR++; } pTrInstr = translate_terminal(PR,TC); TransMap[PR] = pTrInstr; end_block(TC); } Translate instruction from a starting address (PC) until you read a terminal instruction. Then you end block and return to main loop. This could be an approach (the one I think is more easy to understand). The one implemented by Neil is a recursive call that is a bit more difficult to understand (I think): Recompile(UINT32 u32PC) { while (NULL == RecompileMap[u32PC]) { if (data[u32PC] is a terminal or cond. terminal) { Recompile(u32PC); } EmitCover(); // Conditional terminals can be fixed up because by // the time the code gets here, it's already generated } // This will emit a code snippet for this entire block, also // filling in the RecompileMap array of pointers to recompiled // code. EmitTargetCodeForBlock(); } Well. This one means you translate instructions until you reach a terminal (or conditional terminal). The function calls itself to translate code pointed from terminal instruction and so on. I think I don't understand well when you end going down and when you end the block (perhaps when you find jmp, or ret instructions). The translation for a non-terminal instruction looks like this: (translate memory access) translate instruction |---- cycle count and test | . | . | . (more instructions translated) | . | . | ----> exit to main loop (PC = instruction PC) The translation for a terminal instruction looks like this: . . . . (translate memory access) (translate instruction) |---- cycle count and test ||--- get and test if destination address is translated || jump to translated destination address || . || . || . ||--> exit to main loop (PC = destination address) ----> exit to main loop (PC = term. instruction address) I think that translation of each instruction could be made using a translation function for each instruction (pointer to the function is provided by an opcode table like in an interpreter). Many of the instructions are only a copy to the TC of a 'static' x86 instruction (register to register instruction). Other instructions have to do some 'assembling'. Memory access is analyzed at translation time, if it's absolute addressing (or if you trace the address) it's implemented as a direct access to the Z80 memory or a call to a function handler. This is done looking at memory mapping for the address memory region. Indirect addressing means you have to inline a test for memory mapping (as is done in the interpreter). Advantages: * easy translation for jumps, call, block linking * very accurate timing * can support self-modifying code (see below) * easy, simple and fast Disadvantages: * too many jumps (you have to pray for P-II branch prediction work well) * uses a lot of memory * it's more difficult to implement a less accurate timing (jumps in the middle of blocks) * instructions are translated one by one. It's difficult to do intrablock optimization (for example M68000 emulation needs a good register allocation algorithm) How to improve the model: * emulation of larger memory spaces => more memory used, using like hash table structures * making a block based translation => you can think in 'extended' instruction kind approach. Problem would be jumps in the middle of blocks. A solution perhaps could be detranslating the block (marking in TransMap as not translated). This will enable do intrablock optimizations. * handle self-modifying code * less accurate timing (block based timing, see block based translation) * try to optimize number of jumps * use perhaps a return stack structure to track returns of functions and do faster 'ret' instructions. Use speculative indirect jumps. (More to think about this) Simple algorithm for self-modifying code: You have to modify a bit the array of translated addresses (TransMap). Now 0 means not translated, -1 (0xffffffff) means middle bytes of a translated instruction (instruction more than 1 byte long), other would be the translated address. You have to suppose the code will never jump in the middle of a translated instruction. You will want to have a memory map for self-modifying code test (perhaps the same memory map than for writing). Function that writes a byte in a region with self-modifying test enabled: write_self_mod_code(byte, address) { addr' = address; switch(TransMap[addr']) { case 0: // a not translated address memory_write(byte,address); break; case –1: // address in the middle of a translated instruction // search the instruction starting address for(;TransMap[addr']==-1;addr--); default: // you have the starting address for the modified // instruction. Write a jump to the main loop. // Set all modified bytes as not translated (nbm). nbm = write_jump_to_main_loop(addr') for(i=0;i a 'patch' jump to main loop is needed only in first modified instruction, so next addresses only have to set code state to not translated. --------------CA2F443968AB8D4506F7DAD1-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 2 01:42:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA72625 for dynarec-outgoing; Thu, 2 Mar 2000 01:42:50 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 2 Mar 2000 01:42:49 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >ISA? Please explain... > Instruction Set Architecture. > Now I'm also using lot's of these TLAs (three letter acronyms)... Ah, well it's your AR to assume I haven't RTFM'd, and make sure your POR will be to spell things out, otherwise it'll be a BFD! > For one device they mentioned that it was the fastest in > the test and also wrote down the clock speed, but do you think they > found it worth mentioning if it has a MIPS or SuperH processor?? It's an R4000 in the 105. ;-) That's all I care about! > >I've done some emulation work under it as well for my E-105. > Does it have a blue screen of death as well? ;-) Nope... it's quite solid, actually. I've had apps crash, but it has never taken down the system. Then again, Windows CE is a *COMPLETE REWRITE* from the ground up to run on palm sized PCs. It hasn't a line of Windows 95/98/NT/3.1 code in it. > Yeah, one problem is that inflational use of the term RISC as made, and > most don't know that it's only about architecture and not > implementation. So it doesn't matter if the Pentium is using RISC > features inside if you don't see it in the instruction set... It's multiple RISC processors emulating a CISC CPU. ;-) > >It is a CPU > >designed for graphics processing. For example, it (or a variant of it) > >used on the Viper 550 and I believe the Matrox G200 video cards. > Ah, so it's more like a DSP. It is a DSP. We affectionately call it "Big assed blitter chip". > >It has a built in blitter instruction that can do block moves, xors, > >pixel translation, and even has a *LINEDRAW* instruction! > Wow! That must be a bitch to emulate! No, it's easy! Linedraws are fairly braindead since they are spelled out how they work. > >No, no..... tweak the *APPROACH*, not the recompiler! My point is > >of creating 1 general approach, create 3 more specific approaches. > Sorry, I misunderstood you in that point... Glad we're clear on it now! ;-) > >Marble Madness - 00000000-0001ffff - Program ROM > > 00040000-0004ffff - Scratch RAM > > 00050000-000503ff - Sprite RAM > > 00050400-000507ff - Color RAM > > 00300000-03003fff - Slapstic (proteciton chip) > > 98000000-98ffffff - Controller I/O, etc... > So you only recompile the program ROM and have some special memory > handlers for the controller I/O rigth? Bingo. There's nothing to recompile in sprite RAM or controller I/O regions. Those are just memory handlers. You only recompile the program ROM - that's it! > >> It was more or less a joke that I mentioned the virtual table, > >> I think that the MIPS page table handling is ingenious. > >That same approach would work nicely on the Pentium's MMU, too. > I guess the Pentium has a special table walking hardware. Yes, and it's quite extensive. > thing about the MIPS is that the MMU is so primitive that it simply > throws a miss exception when it doesn't find the address translation in > the TLB. That's what the Pentium does, but it has a bunch of other options as well. > Everything else is done by the operating system, and it's > still fast. The problem about a single page table is that it takes a > lot of memory by itself, which is why many CPUs have a multi-level > access. MIPS also holds the whole page table in virtual memory so it > only needs memory for the parts that are really used ;-) In the Pentium, it's called a descriptor table, and you can have a zillion of them if you want. Just change the selector! > >Not to mention the ROM failure messages one gets when the ROM has been > >modified. ;-) > Hehe, how can progammers be this unfair to test if the ROM is really > unmodified? ;-) Yeah. What bastards. ;-) > >> But only until you someday decide you have to recompile from MIPS > >Aha! But then I'll change my approach... > I forgot how flexible you are in contrast to other dynarec authors! I can't bend over and touch my toes, so I guess I'm not *THAT* flexible. But I am a man who believes in designing the tool for the job rather than trying to bend the job around the tool. > >*NO SAY* in how the target layer generates code. It is *ENTIRELY* the > >target layer's decision as to where things go and how they're > >fact, I can create a module that uses your approachs and one that uses > >mine, and both of them would use the same source layer. > Should have taken a deeper look at the code before asking such > questions, heh? Yes! ;-) > >The target layer gives the ultimate flexibility. You can do anything > >want in the target layer. The source layer just passes hints. It > >do any register allocation at all! > That's absolutely how it should be! ;-) I know! ;-) > I knew I'd like your approach as soon as I heard some of it's features. Study the source code. > >I don't think the dynamic allocation of register and entry/exit at any > >point approach would work. I can't see a way to make it work. > I'm not talking about runtime but generation time dynamic allocation, > but even then it's complicated enough to match the cached registers of > two instructions from different blocks... Yes, and you'd have to create multiple of each. That'd be a buttload of memory. > >but have been optimized out, it recompiles that block in another area > >until it hits an address that hasn't been recompiled. You wind up > >a small bit of duplicated code, but it wouldn't be enough to worry > Do you want mark the optimised addresses in the pointer table to keep > track of it? Haven't thought that far ahead yet... I'll get back to you on it. > >Hm... I don't think so. What does it have, 28 instructions, and > >all symmetics? Smells RISC like to me... > Hm basically RISC in the traditional sense means: > - many general purpose registers > - few instructions which are simple enough to be executed in one cycle > with pipelining > - few addressing modes > - one instruction length Symmetric instruction set Well, the 68K is damned close in all areas (with the exception of the single cycle thing), but I don't believe that the single cycle rule has ever really applied. All the early RISC CPUs took longer than 1 cycle to execute (though they did take less than their CISC counterparts). > >when we've run out of registers, so it'll most definitely be in data > >cache. But if you have several recompilations of the same block of > >for different register usage, the breadth of the use of the cache will > >in the instruction cache, and will probably be huge. > I'll rethink that matter but I guess you're right. I've done a fairly extensive study on caches on the Pentium. I've had some nasty performance hits because I unroll things too much. Sparse execution is a time killer. > >In most games it is, yes. I could send you a version of Retrocade with > >interrupts off by 5 T-States. ;-) > Hehe, that awful? ;-) Yeah. It causes (in Galaga for example), bees to spin endlessly, aliens to fly through shots, stages to get stuck, etc... > >Hype, hype, hype, and more hype. People lambast Microsoft and everyone > >else for it, yet it's OK for > For whom? Sorry - it's OK for the Linux crew to do it. Hypocritical! > >calls for splitting things up a bit and taking slightly different > >approaches depending upon what you're recompiling. > I'll have to work less on theories to realise that by myself. Until > then I'll just have to believe you. Or convince yourself of it. ;-) ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 2 01:43:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA72634 for dynarec-outgoing; Thu, 2 Mar 2000 01:43:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 2 Mar 2000 01:43:23 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 In-Reply-To: <38BE2F0C.712F4DE0@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > I wrote yesterday a kind of document that shows how bad I have understood your > emulation approach ;). More interesting perhaps, will be the algorithm for > self-modifying code, advantatges/disadvantatges are too small and need more > work. I think this mails I still haven't readed (only a fast look) would be > useful. You're documenting things FOR me! Cool! ;-) I'll have a look... -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 2 01:55:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA72678 for dynarec-outgoing; Thu, 2 Mar 2000 01:55:43 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 2 Mar 2000 01:55:42 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: Victor's recomp comments Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Note that I do intend on doing a writeup of how my recompiler works... My comments preceded by **: A New Emulation Implementation Light (NEIL) for a Z80 dynamic recompilator. (Sorry for the joke ;) ** Oh man... ;-) OK, I'm going to make a summary about how I think it works your new Z80 recompiler core. First, use of registers: AH => F AL => A BX => HL CX => DC DX => DE EDI => Number of cycles resting to execute EBP => pointer the Z80 memory ESI => free for use * High word of AX, BX, CX, DX is CLEAR (0). ** Should be "High word of EAX, EBX, ECX, EDX is clear" All other Z80 registers: the secondary register block (A', F',...), stack pointer (SP), program counter (PC), index registers (IX, IY) and all others registers (I, R, IMx, ...) are in memory variables. ** Correct. Memory is managed with memory maps. It works exactly as MZ80 core. A memory map for reading, another for writing. An I/O map for reading and writing. Format: ** Correct. You might also want to add that if it's not listed in the handler, it by default is RAM. An array for all 64KB Z80 memory space of pointers. Each instruction (identified by an address) translated has a pointer here to its translated code. I call it TransMap (Translation Map). ** Good name. I like! A Translation Cache or Translation Buffer (TC) where is stored the translated code. Interface functions for the emulator: (correct names are in MZ80 core, I will search for them later) * BuildCpu(), or something like that, creates the structures needed for emulation of the CPU. * Reset(), makes a reset of CPU state. * FlushTranslationCache(), perhaps will be needed to empty all (or some) translations. * Functions to manage interruptions. * Functions to get, modify CPU state. * Exec(), executes a number of CPU cycles. ** Kinda. I should probably send you the sources to my recompiler before you go too much farther on this... Function Exec(T: number of cycles to execute) { RestingTime = T; (mov edi, T) while (RestingTime > 0) { if (TransMap[PC]!=NULL) jump(TransMap[PC]); else translate(PC); } } ** Bingo! Some definitions: Terminal - Any instruction that unconditionally modifies the PC (ret, call, jmp, etc...) Nonterminal - Any instruction that can't or doesn't modify the PC directly Conditional terminal - Any instruction that could conditionally affect the PC ** Correct translate(PC: beginning address for start compilation) { PR = PC; while(Z80mem[PR]!=Terminal) { pTrInstr = translate_Instruction(PR,TC); TransMap[PR] = pTrInstr; PR++; } pTrInstr = translate_terminal(PR,TC); TransMap[PR] = pTrInstr; end_block(TC); } ** Sorta. But instead it winds up creating a block list to recompile and calls the target layer in one big shot to recompile it. Translate instruction from a starting address (PC) until you read a terminal instruction. Then you end block and return to main loop. ** End the block, emit the actual code, deallocate the opcode structures and return to the main loop. This could be an approach (the one I think is more easy to understand). The one implemented by Neil is a recursive call that is a bit more difficult to understand (I think): Recompile(UINT32 u32PC) { while (NULL == RecompileMap[u32PC]) { if (data[u32PC] is a terminal or cond. terminal) { Recompile(u32PC); } EmitCover(); // Conditional terminals can be fixed up because by // the time the code gets here, it's already generated } // This will emit a code snippet for this entire block, also // filling in the RecompileMap array of pointers to recompiled // code. EmitTargetCodeForBlock(); } ** Yes. This is stage 2 of recompiler development... Well. This one means you translate instructions until you reach a terminal (or conditional terminal). The function calls itself to translate code pointed from terminal instruction and so on. I think I don't understand well when you end going down and when you end the block (perhaps when you find jmp, or ret instructions). ** If you find a "ret" instruction of any type or you find a sequence that runs into a priorly recompiled block. The translation for a non-terminal instruction looks like this: (translate memory access) translate instruction ** These two above are really the same thing |---- cycle count and test | . | . | . (more instructions translated) | . | . | ----> exit to main loop (PC = instruction PC) The translation for a terminal instruction looks like this: I think that translation of each instruction could be made using a translation function for each instruction (pointer to the function is provided by an opcode table like in an interpreter). Many of the instructions are only a copy to the TC of a 'static' x86 instruction (register to register instruction). ** I'm getting lost, here. Perhaps it's a lack of sleep... I think you're saying it works exactly like it really works, but I'm not sure... Other instructions have to do some 'assembling'. Memory access is analyzed at translation time, if it's absolute addressing (or if you trace the address) it's implemented as a direct access to the Z80 memory or a call to a function handler. This is done looking at memory mapping for the address memory region. Indirect addressing means you have to inline a test for memory mapping (as is done in the interpreter). ** Precisely Advantages: * easy translation for jumps, call, block linking * very accurate timing * can support self-modifying code (see below) * easy, simple and fast Disadvantages: * too many jumps (you have to pray for P-II branch prediction work well) ** If you want exact timing, you do a sub/js, but that won't be a big deal. The Pentium will eat it for lunch. If you don't need exact timing, you'll only have a timing jump at the point of a terminal/conditional terminal. So I'm not sure why this is a big deal. * uses a lot of memory ** It does? * it's more difficult to implement a less accurate timing (jumps in the middle of blocks) ** No... not so. * instructions are translated one by one. It's difficult to do intrablock optimization (for example M68000 emulation needs a good register allocation algorithm) ** Not true. The weight of this process lies exclusively on the target layer. The source layer hands the target layer a complete list of thigns to recompile, and it can make its own pre-decisions. How to improve the model: * emulation of larger memory spaces => more memory used, using like hash table structures * making a block based translation => you can think in 'extended' instruction kind approach. Problem would be jumps in the middle of blocks. A solution perhaps could be detranslating the block (marking in TransMap as not translated). This will enable do intrablock optimizations. * handle self-modifying code * less accurate timing (block based timing, see block based translation) ** As I mentioned, this is already an option. * try to optimize number of jumps ** This falls out of doing timing groupings. * use perhaps a return stack structure to track returns of functions and do faster 'ret' instructions. Use speculative indirect jumps. (More to think about this) ** I thought about this, but you must retain your own stack as well as your emulated stack. Lots of programs push junk on it and return. Simple algorithm for self-modifying code: You have to modify a bit the array of translated addresses (TransMap). Now 0 means not translated, -1 (0xffffffff) means middle bytes of a translated instruction (instruction more than 1 byte long), other would be the translated address. You have to suppose the code will never jump in the middle of a translated instruction. ** Perhaps using the top two bits would be better. You still have to have the jump-to address. Problems: * dead code (old translations), non recoverable memory usage * redivided blocks, generates one-instruction blocks * retranslations (sequential writes) * more memory is needed ** These are all great ideas. I'll have to stew on them when I'm more awake, but they look great. Time for sleep........ -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 2 02:53:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA72947 for dynarec-outgoing; Thu, 2 Mar 2000 02:53:35 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38BE4486.F1E63EF1@est.fib.upc.es> Date: Thu, 02 Mar 2000 11:37:58 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > You're documenting things FOR me! Cool! ;-) > I'm documenting all emulation techniques I put on my hands ;) I'm thinking to start a complet emulation documentation project (perhaps now is only a one-person project, but if some one wants help me ...) and try to compile all information it's needed for emulate a machine (this includes CPU emulation techniques: interpreting, dinamic recompiling, your recompiler ;), perhaps static recompiling [but about this I think there aren't emulators :(]; graphics and sound emulation: the differents graphics methods and how to implement them; sound, others ...; perhaps make a repository about the different machines architectures [as MAME but in doc]). I think is too big for a person, perhaps too big for emulation world in fact :) If you want I could make an *official* documentation of your emulator. Just say me what do you want. I will read your comments and I will answer tomorrow. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 2 10:44:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA74070 for dynarec-outgoing; Thu, 2 Mar 2000 10:44:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 Date: Thu, 02 Mar 2000 18:31:26 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Victor, I'm glad that you're still with us, since discussions between more than two people can be more interesting. >Quite a interesting discussion :) Indeed. Even if it sometimes seems as if Neil and I have totally different opinions, we still share the same basic ideas and only do some brainstorming about the details. >Today I have no time to read all messages, perhaps tomorrow I will do some >comments. Your contributions are welcome. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 2 10:44:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA74078 for dynarec-outgoing; Thu, 2 Mar 2000 10:44:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 Date: Thu, 02 Mar 2000 19:19:51 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Ah, well it's your AR to assume I haven't RTFM'd, and make sure your POR >will be to spell things out, otherwise it'll be a BFD! I don't understand every bit but I agree ;-) >It's an R4000 in the 105. ;-) That's all I care about! SuperH isn't that bad either, actually highly influenced by MIPS. >Nope... it's quite solid, actually. I've had apps crash, but it has never >taken down the system. Then again, Windows CE is a *COMPLETE REWRITE* from >the ground up to run on palm sized PCs. It hasn't a line of Windows >95/98/NT/3.1 code in it. Wow, stable Microsoft software! Wait - isn't that an oxymoron? ;-) >It is a DSP. We affectionately call it "Big assed blitter chip". Sounds "fat assed" to me ;-) >Bingo. There's nothing to recompile in sprite RAM or controller I/O >regions. Those are just memory handlers. You only recompile the program >ROM - that's it! BTW, what is the scratch RAM for, apart from scores? >> Hehe, how can progammers be this unfair to test if the ROM is really >> unmodified? ;-) >Yeah. What bastards. ;-) They must have assumed that some geeks want to emulate the system someday... >I can't bend over and touch my toes, so I guess I'm not *THAT* flexible. Hehe, I meant flexible in mind and with a flexible approach ;-) >Study the source code. As you wish, my master ;-) >> Do you want mark the optimised addresses in the pointer table to keep >> track of it? >Haven't thought that far ahead yet... I'll get back to you on it. Ok, we can discuss various solutions when you get there. >Symmetric instruction set I think that's not part of the original RISC definition, but it'll fit as well. >Well, the 68K is damned close in all areas (with the exception of the >single cycle thing), but I don't believe that the single cycle rule has >ever really applied. It also has a variable instruction length. >All the early RISC CPUs took longer than 1 cycle to >execute (though they did take less than their CISC counterparts). I think MIPS I was quite close, with only jumps, memory accesses, and mul/div needing more than one cycle - with a pipeline of course, otherwise you'll have at least 3 cycles. BTW, most RISC processors drop some of these features: - TriCore has address and data registers like 68K - TriCore and M32R have two different instruction lengths which can be mixed, unlike ARM/Thumb or MIPS/MIPS16 - SuperH has about as much addressing modes as the 68K - PowerPC has so many instructions that someone said it should be called "Reduced Instruction Set Complexity" instead. >I've done a fairly extensive study on caches on the Pentium. I've had some >nasty performance hits because I unroll things too much. Sparse execution >is a time killer. Hmm, the StrongARM has 2 separate caches with 512 cache lines (16K, 32- way associative) with 32 bytes each. In the best case the whole MIPS register file (without special registers) will fit into 4 cache lines, not bad. If many of the statically uncached registers are used many cache accesses are needed, which slows down the emulation speed and also needs more code. Eg. with a direct cover instruction but no cached register a whole cache line would be needed for one translated instruction (2 loads + 1 cover + 1 store)*32 bit = 32 bytes. This is sub-optimal because there is a load delay between the second load and the cover instruction. Also when the result of this operation is used in the next instruction you get another delay because the store isn't ready yet. With register allocation you get a few loads in the beginning of the block, maybe a few swaps in the middle, and a batch of stores in the end. When the block has to be left right in the middle you'll have to save the currently cached registers (about 6, which will be additional 24 bytes to the peer block of each instruction). Since the peer blocks are only executed once at the exit they won't be cached for long anyway. Also note that StrongARM caches use a pseudo random replacement (because it's easier than LRU) so you might have to load the registers from memory even if you use it all the time, and it will be memory indeed since the StrongARM has no L2 cache. Sometimes the PA8500 doesn't seem that bad: 512K L1-I-cache + 1MB L1-D- cache! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 2 11:39:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA74223 for dynarec-outgoing; Thu, 2 Mar 2000 11:39:46 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Thu, 02 Mar 2000 20:24:31 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > An array for all 64KB Z80 memory space of pointers. Each >instruction (identified by an address) translated has a pointer here >to its translated code. I call it TransMap (Translation Map). >** Good name. I like! Actually most approaches use the term "translation lookaside buffer" because the address translation it does is similar to that of a MMUs TLB. But I agree with Neil that for his approach the name TransMap is more precise. > I think that translation of each instruction could be made using a >translation function for each instruction (pointer to the function is >provided by an opcode table like in an interpreter). Many of the >instructions are only a copy to the TC of a 'static' x86 instruction >(register to register instruction). >** I'm getting lost, here. Perhaps it's a lack of sleep... I think you're >saying it works exactly like it really works, but I'm not sure... You're right Neil, you already do it that way. There is a code emitter function for each instruction and pointers to these functions are collected in an array sorted by opcode number. > * too many jumps (you have to pray for P-II branch prediction > work well) That's what I thought at first, but it doesn't really matter. The Pentium uses dynamic branch prediction with a branch target buffer, but I guess on the first run it still has to rely on static rules. These rules are normally: 1) backward branches are assumed taken (to speed up loops) 2) forward branches are assumed not taken. For Neils code this means that every jump to the peer blocks at the end is assumed not taken and the CPU runs right through the code till you get a timer underflow. Then you get a slight crash due to the jump, but you'll have to jump back to the exit block code just two instructions later anyway, so it doesn't make much difference. Since several instructions are executed before you have to leave the block this method works much better than it looks. Actually I think that static branch prediction would be even better in this case... > * uses a lot of memory Take a look at template solutions like NEStra and you'll see that Neil's dynamic code generator produces relatively few code per translated instruction. The memory handlers take up quite some memory but having one per register speeds up memory accesses and you only need these once. > * it's more difficult to implement a less accurate timing > (jumps in the middle of blocks) >** No... not so. I think Victor is right. Since you'd only decrease your counter every few instructions with inacurate timing, you could be loosing some cycles when a jump to the middle of a block is performed. > * instructions are translated one by one. It's difficult to do > intrablock optimization (for example M68000 emulation needs a > good register allocation algorithm) >** Not true. The weight of this process lies exclusively on the target >layer. The source layer hands the target layer a complete list of thigns >to recompile, and it can make its own pre-decisions. Optimisation is even easier because all instructions of a block are stored decoded in a linear structure. When optimisation *is* done this hinders jumps to any memory location, since the instruction residing there might have been combined with the preceding one. > * emulation of larger memory spaces => more memory used, using > like hash table structures That's one of our favourite discussion subject it seems ;-) > * making a block based translation => you can think in > 'extended' instruction kind approach. The approach is already block based, as the source layer decodes the whole block first and then passes the collected information to the translation layer. Only the translation layer isn't optimised yet. > Problem would be jumps > in the middle of blocks. Intra-block jumps are no problem at all since you have all the information you need during translation time. > A solution perhaps could be > detranslating the block (marking in TransMap as not > translated). This will enable do intrablock optimizations. Jumps to the middle of other blocks can be a problem when you want to use block optimisations, right. > * handle self-modifying code For most machines Neil deals with at the moment this is easy: if the code is in the ROM area it cannot be self-modifying. For more RAM based machines you'll have to mark address in the TransMap that are written to. > * less accurate timing (block based timing, see block based > translation) That's how I started my theory, but Neil's timing sensitive code is very nice indeed. > * try to optimize number of jumps I'm not sure if this is really necessary (the 'sub' needs more processor time than the following 'js'), but this is already reduced when less timing code is used. >Problems: > * dead code (old translations), non recoverable memory usage Could be done by keeping track of allocated blocks in a linked list. > * redivided blocks, generates one-instruction blocks This should happen very rarely I guess. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 3 02:24:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA76977 for dynarec-outgoing; Fri, 3 Mar 2000 02:24:45 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38BF66C1.5ACB735A@est.fib.upc.es> Date: Fri, 03 Mar 2000 08:16:17 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, What an insteresting discussion this lasts days. Not you thing so? I think my 'disadvantatges' were too weaks, sorry, I would have to work on them a little harder. But I spent most of time in the self-modifying algorithm. And It's hard to find problems to your approach. Your discussion with Michael ressembles a lot the one we are getting, but I think with a better english :). It seems Michael and I are starting from the same theory approach. In fact I'm feeling a little 'green' with a people with the experience of both of you. I'm really just started to learn about dynamic recompilation, only this two last months I have been really working on it. I have an advice for you Michael, I think Neil has beaten us, I'm thinking in surrender ;) About 68000, do you really think is a RISC CPU? A RISC CPU, as it's teached in my university, has to have a lot of registers (it has them), a small set of addressing modes (68000 has a lot, more than a x86 one!), fixed instruction lenght (68000 don't), and 'simple' instruction (watch some ugly data move instruction 68000 has ;). Really, I talk about 68000 as a RISC too, when my teachers aren't near, but it's because compared with x86 has a lot of registers, but in others aspects it's more CISC than x86. Talking about CISC machines, what about a VAX, perhaps there are someone so crazy to emulate it ;) (I don't know much about this machine, but we had one in university until two years ago, and some teachers saied it had instruction for polynomies calculation!). In any case, with this MMU/SIMMD instruction nowadays it's no sense to talk about CISC or RISC I think. Is it true there are games go verify his ROM for modifications? Why do the programmers do that? Because for verify a bad ROM, a bad leaked ROM, or perhaps the knew we would want to emulate this games some time later and they put it to bother us a little more ;) Ok, lets going on real work. First I want to talk a little about 'optimization' in dynamic recompilation. What optimization do we need? And why do optimize? 1) optimize the native core. I think this in many cases is a no sense. If we are talking about emulation world (arcade machines and consoles) the programs are made in to main language: assembler, which will be hard to optimize (in that times they really work on optimization) or in C and I don't think that a little optimizer in a recompiler could beat a static C compiler. So we don't want to do this kind of optimizations. 2) reduce our translation overhead This is the one we are really interested. A first translation could be very slow. So we want to try to make some optimizations. This optimizations could be: try to have a better register usage (this make a lot of sense in RISC to CISC translations), only evaluate flags when really needed, improve memory access, use a less accurate timming and perhaps some others minor 'intrablock' optimizations. I didn't see your two layers approach: a source level for decoding and a target level emit code. This change a lot many things. The target level makes your approach very flexible. You are using an intermediate representation, which are not used in Shade like docs (they think this will be to slow to implement). I don't know if this is faster or not than don't use it, if it's better or not .... In any case makes your recompiler a lot of more flexible. I have to think about this. I think that we have to try to do now, it isn't to try to beat your approach but to extend it. This are some extensions I think could be done: 1) sparse(larger) memory spaces: this only will happen in computers so I think if we trap the system call that loads the programs (and we will want to do this for flushing the old translation code too) and take a look at the executable we could know what it's code and what data (I think this will be aplicable to many exec. formats in large computers). And if we can't do that we have to think that code is less than data, and in some OS there are many code that it isn't used all time (or never used). We could try to dynamically expand translation memory map to this regions we have used code. 2) support a 'block-based translation' (this means in target level, not in source level). I think this will be a lot of easy and we could do intra-block optimizations. If you readed about the self-modifying algorithm you have the answer. A memory address can be in three states: not translated, translated(beginning of an instruction/block) and translated (in the middle of an instruction/block). This info would be in the translation map or in another map which hold only the state (the same, but only a byte in lenght). We will do as there would be a kind of super-instructions, formed by a sequence of native instructions. When you detect intra-block translated address you have to as in the self-modifying algorithm, mark all block as not translated and start a new translation from the jumping address. I think there are many I don't understand very well about your emulator. Perhaps when code will be released to us ... Too long mail, I think :), but I'm been working on this all this evening. I hope would be useful. I will try to fix the doc I sent yesterday this weekend. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 3 05:25:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA77343 for dynarec-outgoing; Fri, 3 Mar 2000 05:25:54 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Fri, 03 Mar 2000 14:04:22 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I think my 'disadvantatges' were too weaks, sorry, I would have to work on them a >little harder. But I spent most of time in the self-modifying algorithm. And It's >hard to find problems to your approach. Yes, Neil's approach is very water proof ;-) That's why it's so interesting to discuss about it because I have to find the small leaks (if there are any) and don't have to criticise some big holes! >Your discussion with Michael ressembles a lot the one we are getting, but I think >with a better english :). My English is far from perfect, and as long as we can understand what you mean it keeps the talk going. Actually I think your English is better than that of some American guys writing in slang where I don't understand 50% of the words. And if Neil and I had to perform the discussion in Spanish you would simply die laughing ;-) >It seems Michael and I are starting from the same theory approach. That's what I noticed too. Take a machine with meany registers and do an optimised block translation with register allocation. >In fact I'm feeling a little 'green' with a people with the experience >of both of you. I'm really just started to learn about dynamic recompilation, only >this two last months I have been really working on it. If you're 'green' than I must be 'yellow' since you already know many things I didn't learn that long ago and you have some ideas I haven't thought of yet. But you took the right decision to take part in this discussion, I think you'll learn much more about dynamic recompilation. Neil has a very cool approach and I only see the tip of the iceberg and even I know some tricks you won't find in any document. >I have an advice for you Michael, I think Neil has beaten us, I'm thinking in >surrender ;) I was never fighting Neil, so I don't have to surrender. I'll just join the successful party ;-) >About 68000, do you really think is a RISC CPU? Nope, it isn't, but Neil means that it's more RISC-like than other CPUs, which might be due to the fact that it's one of the best designs I know. >A RISC CPU, as it's teached in my >university, has to have a lot of registers (it has them), That should be lots of general purpose registers, but a relatively new RISC CPU called TriCore has address and data registers like the 68000. >a small set of addressing >modes (68000 has a lot, more than a x86 one!), There are many RISCs with just one memory addressing mode (MIPS, Alpha) but there is also SuperH, which has about as many addressing modes as the 68K! >fixed instruction lenght (68000 don't), ARM introduced an additional instruction set called Thumb, which has only 16-bit instructions while ARM still has 32-bit. You can change between the two modes with a special branch instruction. TriCore (Infineon) and M32R (Mitsubishi) have gone further. These are able to really *mix* 32-bit and 16-bit instructions! >and 'simple' instruction (watch some ugly data move instruction 68000 has >;). Some RISCs like ARM, M-Core, PowerPC have loads/stores for multiple registers, and ARMs LDM/STM really work like the 68K MOVEM instruction. >Really, I talk about 68000 as a RISC too, when my teachers aren't near, but >it's because compared with x86 has a lot of registers, but in others aspects it's >more CISC than x86. Right. The differences begin to melt. I think the trues RISC is the first MIPS generation. Now MIPS got so many further instructions that it became rather complex. >Talking about CISC machines, what about a VAX, perhaps there >are someone so crazy to emulate it ;) (I don't know much about this machine, but we >had one in university until two years ago, and some teachers saied it had >instruction for polynomies calculation!). Well, you could use form three registers up to three memory locations in a instruction, so the instruction length is very variable. >In any case, with this MMU/SIMMD instruction nowadays it's no sense to talk about >CISC or RISC I think. I guess you mean MMX and SIMD. Actually Intel used similar instructions in their first RISC the i860, but nobody was interested. When the finally included it in the Pentium they did so many commercials that the customer had to realise it. >Is it true there are games go verify his ROM for modifications? Why do the >programmers do that? Because for verify a bad ROM, a bad leaked ROM, or perhaps >the knew we would want to emulate this games some time later and they put it to >bother us a little more ;) Yes, that's true indeed. But you have to ask Neil for the reasons. >First I want to talk a little about 'optimization' in dynamic recompilation. What >optimization do we need? And why do optimize? The first question isn't that easy to aswer, but the second is: pure speed! One more question is: When is optimisation reasonable or would it even slow down the translation process that much for the optimised code being no benefit? > 1) optimize the native core. > I think this in many cases is a no sense. If we are talking about >emulation world (arcade machines and consoles) the programs are made in to main >language: assembler, which will be hard to optimize (in that times they really work >on optimization) or in C and I don't think that a little optimizer in a recompiler >could beat a static C compiler. So we don't want to do this kind of >optimizations. First of all, not every assembler programmer or compiler has to produce good code... And then you have the differences between the two machines. Eg. MIPS has some very primitive instructions which can be combined, but if you don't do it the translated code gets very large because these instructions don't exist and you have to simulate these. A small example: slt R1, R2, R3 # R1 = (R2 < R3) ? 1 : 0; bne R1, zero, offset # if (R1 != 0) PC += offset; Could be translated to ARM instruction per instruction as: cmp R2, R3 movlt R1, #1 movge R1, #0 cmp R1, #0 bne offset This is one compare too much. We can do better by remembering the result from the first 'instruction', meaning we set the status flags: cmp R2, R3 movlts R1, #1 movges R1, #0 bne offset If we knew that we don't need the result generated by 'slt' in R1 then we could even generate: cmp R2, R3 blt offset I guess you get the picture. Although this is a very extreme example in the translation from MIPS to ARM you'll be able to find several other cases for other processors. > 2) reduce our translation overhead > This is the one we are really interested. A first translation >could be very slow. So we want to try to make some optimizations. This >optimizations could be: try to have a better register usage (this make a lot of >sense in RISC to CISC translations), only evaluate flags when really needed, >improve memory access, use a less accurate timming and perhaps some others minor >'intrablock' optimizations. Have you read the document about the emulator Generator? At least it sounds like it. > I didn't see your two layers approach: a source level for decoding and a target >level emit code. This change a lot many things. The target level makes your >approach very flexible. You are using an intermediate representation, which are not >used in Shade like docs (they think this will be to slow to implement). I don't >know if this is faster or not than don't use it, if it's better or not .... In any >case makes your recompiler a lot of more flexible. I have to think about this. It uses a bit more memory but I don't think that it's much slower. I guess what the mean in Shade is a register transfer language as used in compilers. This will be slower since you'll have to build a tree from the analysed code just to flatten it again during generation, which is simply stupid. Neil uses a similar idea that I had: Analyse all instructions in a block and store the decode information in a sequential structure. With this structure passed the generator has a far better survey of the code in the block, is able to see all intra block jump targets, and can do better optimisation. Our ideas are different in the way that Neil uses the decoded source level instructions and I wanted to use some virtual processor instead to have a better abstraction and only have to write one generator for each host machine. Unfortunately it seems that it's rather impossible to design a virtual processor that keeps all the features from the source level while still providing good optimisation at the target level :-( > 1) sparse(larger) memory spaces: this only will happen in computers so I think >if we trap the system call that loads the programs (and we will want to do this for >flushing the old translation code too) and take a look at the executable we could >know what it's code and what data (I think this will be aplicable to many exec. >formats in large computers). And if we can't do that we have to think that code is >less than data, and in some OS there are many code that it isn't used all time (or >never used). We could try to dynamically expand translation memory map to this >regions we have used code. I'm not sure if this will work, but I'll think about it. > 2) support a 'block-based translation' (this means in target level, not in >source level). I think this will be a lot of easy and we could do intra-block >optimizations. If you readed about the self-modifying algorithm you have the >answer. A memory address can be in three states: not translated, >translated(beginning of an instruction/block) and translated (in the middle of an >instruction/block). This info would be in the translation map or in another map >which hold only the state (the same, but only a byte in lenght). We will do as >there would be a kind of super-instructions, formed by a sequence of native >instructions. When you detect intra-block translated address you have to as in the >self-modifying algorithm, mark all block as not translated and start a new >translation from the jumping address. I'd use different states: not translated, per-instruction translation, and optimised translation. Even with intra-block optimisation there will be enough instructions that can still function as a jump target so we just have to mark those which cannot be jumped at since they are optimised and the result would be non-deterministic. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 3 05:25:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA77351 for dynarec-outgoing; Fri, 3 Mar 2000 05:25:56 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 Date: Thu, 02 Mar 2000 19:19:51 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Ah, well it's your AR to assume I haven't RTFM'd, and make sure your POR >will be to spell things out, otherwise it'll be a BFD! I don't understand every bit but I agree ;-) >It's an R4000 in the 105. ;-) That's all I care about! SuperH isn't that bad either, actually highly influenced by MIPS. >Nope... it's quite solid, actually. I've had apps crash, but it has never >taken down the system. Then again, Windows CE is a *COMPLETE REWRITE* from >the ground up to run on palm sized PCs. It hasn't a line of Windows >95/98/NT/3.1 code in it. Wow, stable Microsoft software! Wait - isn't that an oxymoron? ;-) >It is a DSP. We affectionately call it "Big assed blitter chip". Sounds "fat assed" to me ;-) >Bingo. There's nothing to recompile in sprite RAM or controller I/O >regions. Those are just memory handlers. You only recompile the program >ROM - that's it! BTW, what is the scratch RAM for, apart from scores? >> Hehe, how can progammers be this unfair to test if the ROM is really >> unmodified? ;-) >Yeah. What bastards. ;-) They must have assumed that some geeks want to emulate the system someday... >I can't bend over and touch my toes, so I guess I'm not *THAT* flexible. Hehe, I meant flexible in mind and with a flexible approach ;-) >Study the source code. As you wish, my master ;-) >> Do you want mark the optimised addresses in the pointer table to keep >> track of it? >Haven't thought that far ahead yet... I'll get back to you on it. Ok, we can discuss various solutions when you get there. >Symmetric instruction set I think that's not part of the original RISC definition, but it'll fit as well. >Well, the 68K is damned close in all areas (with the exception of the >single cycle thing), but I don't believe that the single cycle rule has >ever really applied. It also has a variable instruction length. >All the early RISC CPUs took longer than 1 cycle to >execute (though they did take less than their CISC counterparts). I think MIPS I was quite close, with only jumps, memory accesses, and mul/div needing more than one cycle - with a pipeline of course, otherwise you'll have at least 3 cycles. BTW, most RISC processors drop some of these features: - TriCore has address and data registers like 68K - TriCore and M32R have two different instruction lengths which can be mixed, unlike ARM/Thumb or MIPS/MIPS16 - SuperH has about as much addressing modes as the 68K - PowerPC has so many instructions that someone said it should be called "Reduced Instruction Set Complexity" instead. >I've done a fairly extensive study on caches on the Pentium. I've had some >nasty performance hits because I unroll things too much. Sparse execution >is a time killer. Hmm, the StrongARM has 2 separate caches with 512 cache lines (16K, 32- way associative) with 32 bytes each. In the best case the whole MIPS register file (without special registers) will fit into 4 cache lines, not bad. If many of the statically uncached registers are used many cache accesses are needed, which slows down the emulation speed and also needs more code. Eg. with a direct cover instruction but no cached register a whole cache line would be needed for one translated instruction (2 loads + 1 cover + 1 store)*32 bit = 32 bytes. This is sub-optimal because there is a load delay between the second load and the cover instruction. Also when the result of this operation is used in the next instruction you get another delay because the store isn't ready yet. With register allocation you get a few loads in the beginning of the block, maybe a few swaps in the middle, and a batch of stores in the end. When the block has to be left right in the middle you'll have to save the currently cached registers (about 6, which will be additional 24 bytes to the peer block of each instruction). Since the peer blocks are only executed once at the exit they won't be cached for long anyway. Also note that StrongARM caches use a pseudo random replacement (because it's easier than LRU) so you might have to load the registers from memory even if you use it all the time, and it will be memory indeed since the StrongARM has no L2 cache. Sometimes the PA8500 doesn't seem that bad: 512K L1-I-cache + 1MB L1-D- cache! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 3 05:26:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA77359 for dynarec-outgoing; Fri, 3 Mar 2000 05:26:01 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Thu, 02 Mar 2000 20:24:31 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > An array for all 64KB Z80 memory space of pointers. Each >instruction (identified by an address) translated has a pointer here >to its translated code. I call it TransMap (Translation Map). >** Good name. I like! Actually most approaches use the term "translation lookaside buffer" because the address translation it does is similar to that of a MMUs TLB. But I agree with Neil that for his approach the name TransMap is more precise. > I think that translation of each instruction could be made using a >translation function for each instruction (pointer to the function is >provided by an opcode table like in an interpreter). Many of the >instructions are only a copy to the TC of a 'static' x86 instruction >(register to register instruction). >** I'm getting lost, here. Perhaps it's a lack of sleep... I think you're >saying it works exactly like it really works, but I'm not sure... You're right Neil, you already do it that way. There is a code emitter function for each instruction and pointers to these functions are collected in an array sorted by opcode number. > * too many jumps (you have to pray for P-II branch prediction > work well) That's what I thought at first, but it doesn't really matter. The Pentium uses dynamic branch prediction with a branch target buffer, but I guess on the first run it still has to rely on static rules. These rules are normally: 1) backward branches are assumed taken (to speed up loops) 2) forward branches are assumed not taken. For Neils code this means that every jump to the peer blocks at the end is assumed not taken and the CPU runs right through the code till you get a timer underflow. Then you get a slight crash due to the jump, but you'll have to jump back to the exit block code just two instructions later anyway, so it doesn't make much difference. Since several instructions are executed before you have to leave the block this method works much better than it looks. Actually I think that static branch prediction would be even better in this case... > * uses a lot of memory Take a look at template solutions like NEStra and you'll see that Neil's dynamic code generator produces relatively few code per translated instruction. The memory handlers take up quite some memory but having one per register speeds up memory accesses and you only need these once. > * it's more difficult to implement a less accurate timing > (jumps in the middle of blocks) >** No... not so. I think Victor is right. Since you'd only decrease your counter every few instructions with inacurate timing, you could be loosing some cycles when a jump to the middle of a block is performed. > * instructions are translated one by one. It's difficult to do > intrablock optimization (for example M68000 emulation needs a > good register allocation algorithm) >** Not true. The weight of this process lies exclusively on the target >layer. The source layer hands the target layer a complete list of thigns >to recompile, and it can make its own pre-decisions. Optimisation is even easier because all instructions of a block are stored decoded in a linear structure. When optimisation *is* done this hinders jumps to any memory location, since the instruction residing there might have been combined with the preceding one. > * emulation of larger memory spaces => more memory used, using > like hash table structures That's one of our favourite discussion subject it seems ;-) > * making a block based translation => you can think in > 'extended' instruction kind approach. The approach is already block based, as the source layer decodes the whole block first and then passes the collected information to the translation layer. Only the translation layer isn't optimised yet. > Problem would be jumps > in the middle of blocks. Intra-block jumps are no problem at all since you have all the information you need during translation time. > A solution perhaps could be > detranslating the block (marking in TransMap as not > translated). This will enable do intrablock optimizations. Jumps to the middle of other blocks can be a problem when you want to use block optimisations, right. > * handle self-modifying code For most machines Neil deals with at the moment this is easy: if the code is in the ROM area it cannot be self-modifying. For more RAM based machines you'll have to mark address in the TransMap that are written to. > * less accurate timing (block based timing, see block based > translation) That's how I started my theory, but Neil's timing sensitive code is very nice indeed. > * try to optimize number of jumps I'm not sure if this is really necessary (the 'sub' needs more processor time than the following 'js'), but this is already reduced when less timing code is used. >Problems: > * dead code (old translations), non recoverable memory usage Could be done by keeping track of allocated blocks in a linked list. > * redivided blocks, generates one-instruction blocks This should happen very rarely I guess. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 3 05:26:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA77366 for dynarec-outgoing; Fri, 3 Mar 2000 05:26:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Mail Problems Date: Fri, 03 Mar 2000 12:18:19 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, it seems that two of the mails didn't get through to the list. Since I had problems with the SMTP host before I sent these, I'll resent them now. Please excuse me if it should be only a delay and you receive the two messages twice. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 3 06:42:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA77584 for dynarec-outgoing; Fri, 3 Mar 2000 06:42:13 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Slight correction Date: Fri, 03 Mar 2000 15:27:34 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com I realised that it's simpler to write cmp R2, R3 movlt R1, #1 movge R1, #0 blt offset instead of cmp R2, R3 movlts R1, #1 movges R1, #0 bne offset And this is still not the correct translation for the MIPS code since MIPS has branch delay slots and the instruction following the branch is executed before the branch is taken. But I don't think that this harms the example that much... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 4 12:42:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA85437 for dynarec-outgoing; Sat, 4 Mar 2000 12:42:04 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 4 Mar 2000 12:42:02 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <38BF66C1.5ACB735A@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > What an insteresting discussion this lasts days. Not you thing so? I certainly think so, but I was so slammed with work that I didn't have a chance to respond. This is the first time! > I think my 'disadvantatges' were too weaks, sorry, I would have to > work on them a little harder. But I spent most of time in the > self-modifying algorithm. And It's hard to find problems to your > approach. ;-) It's certainly not a one size fits all solution, and we need to make sure that no one's single idea becomes it. The approach we need to take should change depending upon our target. > Your discussion with Michael ressembles a lot the one we are getting, > but I think with a better english :). It seems Michael and I are > starting from the same theory approach. In fact I'm feeling a little > 'green' with a people with the experience of both of you. I'm really > just started to learn about dynamic recompilation, only this two last > months I have been really working on it. I started "thinking" about it in about July of last year and have worked with another individual who actually got a 34010 recompiler working. His approach was the "assemble the blocks" approach, which he and I squared off on. We also had some philisophical discussions in the approach that we didn't agree with, too, so we didn't wind up working together. I started the z80tox86 recompiler in November, put it aside for a couple of months, and picked it up again. > I have an advice for you Michael, I think Neil has beaten us, I'm > thinking in surrender ;) No, no, no... there's no surrender here! The only thing you should do is weigh the pros & cons of all of our ideas and fit them to the type of code that's being executed. > instruction for polynomies calculation!). In any case, with this > MMU/SIMMD instruction nowadays it's no sense to talk about CISC or > RISC I think. Is it true there are games go verify his ROM for > modifications? Just about all of them do that. They'll either let you continue to run or else will > Why do the programmers do that? Because these are embedded systems with ROMs that go bad, and this is a sure fire way to identify it something screwed up. > bad ROM, a bad leaked ROM, or perhaps the knew we would want to > emulate this games some time later and they put it to bother us a > little more ;) But if we do our emulation right, it'll work great! ;-) > First I want to talk a little about 'optimization' in dynamic > recompilation. What optimization do we need? And why do optimize? Because we want it to run as fast as possible. That is the whole reason for dynamic recompilation! > 1) optimize the native core. > I think this in many cases is a no sense. If we are > talking about emulation world (arcade machines and consoles) the > programs are made in to main language: assembler, which will be hard > to optimize (in that times they really work on optimization) or in C > and I don't think that a little optimizer in a recompiler could beat a > static C compiler. So we don't want to do this kind of optimizations. I think the answer to this is "it depends". For example, a game like Galaga uses three Z80s. There isn't 3 Z80s worth of work in the game. If you look at a lot of the code, there's opportunity for improvement on the source code, so we shouldn't rule it out. You do, however, wind up running in to sequences of code that are "groupable": 5B6: LD A,(HL) 5B7: RRCA 5B8: RRCA 5B9: RRCA 5BA: RRCA 5BB: INC HL 5BC: LD (HL),A That can be reduced to: ror [ebp+ebx], 4 inc ebx mov al, [ebp+ebx] Instead of: mov al, [ebp+ebx] ror al, 1 ror al, 1 ror al, 1 ror al, 1 inc ebx mov [ebp+ebx], al You'll find many other examples like this in "real" code, too. > 2) reduce our translation overhead > This is the one we are really interested. A first > translation could be very slow. So we want to try to make some > optimizations. This optimizations could be: try to have a better > register usage (this make a lot of sense in RISC to CISC > translations), only evaluate flags when really needed, improve memory > access, use a less accurate timming and perhaps some others minor > 'intrablock' optimizations. I'm not sure what is meant by reducing the translation overhead. Right now the blocks get recompiled so quickly that it doesn't even create a pause in the execution that I can tell. But yes, register usage can do a 1:1 mapping on high register CPUs. But I don't see the "register swapping" approach as being viable in any circumstances. > I didn't see your two layers approach: a source level for decoding > and a target level emit code. This change a lot many things. The > target level makes your approach very flexible. You are using an > intermediate representation, which are not used in Shade like docs > (they think this will be to slow to implement). Actually, I'm not using an intermediate representation. I think that'll be too slow, and certainly less optimal. In this case, you have a source layer that deals with all the z80 specific stuff. In the target layer, that knows specifically about the z80 and emits code for it. So you have a free form way of emitting code. > I don't know if this > is faster or not than don't use it, if it's better or not .... In any > case makes your recompiler a lot of more flexible. I have to think > about this. Yes, it's more flexible. The only drawback is that you have to basically rewrite a lot of the target layer each time you do it, but things like the opcode emitter are used across all target layers. > I think that we have to try to do now, it isn't to try to beat your > approach but to extend it. This are some extensions I think could be > done: No, you should still try to beat the approach! > it isn't used all time (or never used). We could try to dynamically > expand translation memory map to this regions we have used code. The approach we'll use for dynamically recompiling computer systems and whatnot will be very different from my approaches so far. > 2) support a 'block-based translation' (this means in target > level, not in source level). I think this will be a lot of easy and > we could do intra-block optimizations. If you readed about the > self-modifying algorithm you have the answer. A memory address can be > in three states: not translated, translated(beginning of an > instruction/block) and translated (in the middle of an > instruction/block). That would require some sort of "status" byte rather than a recompiled address.. Or, you could give it a magic # of sorts. > I think there are many I don't understand very well about your > emulator. Perhaps when code will be released to us ... Have a look at it in its current state. Keep this private! http://www.synthcom.com/~neil/dynarec.zip That's the whole chalupa for what I have right now. Have a look, and we can have a basis of chatting about it. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 4 13:31:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA85638 for dynarec-outgoing; Sat, 4 Mar 2000 13:31:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 4 Mar 2000 13:31:04 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > And if Neil and I had to perform the discussion in Spanish you would > simply die laughing ;-) Yeah. I don't think Babelfish would do too good of a job on technical translations to Spansih from English. ;-) > >I have an advice for you Michael, I think Neil has beaten us, I'm > thinking in > >surrender ;) > I was never fighting Neil, so I don't have to surrender. I'll just join > the successful party ;-) Yeah! Everyone gets trashed! ;-) > I guess you mean MMX and SIMD. Actually Intel used similar instructions > in their first RISC the i860, but nobody was interested. Actually, that's not true. Just about every HP printer (and lots of others) use i860 and i960 CPUs. The reason (and I happen to know this because I was told this by the head of the CPU division at Intel personally) for the i860 not getting penetration was that they didn't want to confuse the marketplace nor compete against their flagship product (at the time, the 386). > >Is it true there are games go verify his ROM for modifications? Why > >programmers do that? Because for verify a bad ROM, a bad leaked ROM, > >the knew we would want to emulate this games some time later and they > >bother us a little more ;) > Yes, that's true indeed. But you have to ask Neil for the reasons. In short, spotting bad ROM images in self test modes is the reason. > One more question is: When is optimisation reasonable or would it even > slow down the translation process that much for the optimised code > being no benefit? I don't think the recompilation is really that big of a deal. Even with 128K of code to recompile, that doesn't take very long. > First of all, not every assembler programmer or compiler has to produce > good code... Yes, and what you'll find is more often than not, they produce *CRAPPY* code and the hardware must be more complex to offset it. > It uses a bit more memory but I don't think that it's much slower. But it only uses more memory in bursts. The recompilation process on a per-block basis has a lot of memory getting allocated andfreed. Oh - I guess you're referring to the 256K jump table. ;-) > Neil uses a similar idea that I had: Analyse all instructions in a > block and store the decode information in a sequential structure. With > this structure passed the generator has a far better survey of the code > in the block, is able to see all intra block jump targets, and can do > better optimisation. More to the point, the source layer passes in flag "hints" on if a given block should even bother generating flag information. > Our ideas are different in the way that Neil uses the decoded source > level instructions and I wanted to use some virtual processor instead > to have a better abstraction and only have to write one generator for > each host machine. Unfortunately it seems that it's rather impossible > to design a virtual processor that keeps all the features from the > source level while still providing good optimisation at the target > level :-( Bingo. It does make the translation process easier and all one would have to do to support a new source CPU would be to create a source layer for it, but the drawbacks are that it's too generalized. > I'd use different states: not translated, per-instruction translation, > and optimised translation. Even with intra-block optimisation there > will be enough instructions that can still function as a jump target so > we just have to mark those which cannot be jumped at since they are > optimised and the result would be non-deterministic. Now we'll have to have another 64K array to figure out which addresses have been translated. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 6 00:39:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA91190 for dynarec-outgoing; Mon, 6 Mar 2000 00:39:15 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C36AFC.8DCFF829@est.fib.upc.es> Date: Mon, 06 Mar 2000 09:23:25 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > No, no, no... there's no surrender here! The only thing you should do is > weigh the pros & cons of all of our ideas and fit them to the type of code > that's being executed. > It was a kind of joke :) > I'm not sure what is meant by reducing the translation overhead. Right now > the blocks get recompiled so quickly that it doesn't even create a pause > in the execution that I can tell. > > > I mean overhead in the translated code, non optimized translated code. I'm not talking about recompilation overhead. > Have a look at it in its current state. Keep this private! > > http://www.synthcom.com/~neil/dynarec.zip > > That's the whole chalupa for what I have right now. Have a look, and we > can have a basis of chatting about it. > It seems it doesn't work, perhaps is my university server that is crashing all time ... Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 6 00:41:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA91210 for dynarec-outgoing; Mon, 6 Mar 2000 00:41:20 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 6 Mar 2000 00:41:19 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <38C36AFC.8DCFF829@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Have a look at it in its current state. Keep this private! > > > > http://www.synthcom.com/~neil/dynarec.zip > > > > That's the whole chalupa for what I have right now. Have a look, and we > > can have a basis of chatting about it. > It seems it doesn't work, perhaps is my university server that is crashing all time Try it again. I forgot to move the file into position. ;-( -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 6 01:04:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA91256 for dynarec-outgoing; Mon, 6 Mar 2000 01:04:35 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C370ED.47520F90@est.fib.upc.es> Date: Mon, 06 Mar 2000 09:48:45 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > > The first question isn't that easy to aswer, but the second is: pure > speed! > One more question is: When is optimisation reasonable or would it even > slow down the translation process that much for the optimised code > being no benefit? > I think optimisations is useful for code which is executed many times: loops and procedures. Another question cuold be perhaps if a program in an emulated machine will be running hours or days or will be running only a few minutes. In first case you can spend some more time doing optimizations. I think the only thing we can do to know what level of optimization we can do is to do some code and try it. > First of all, not every assembler programmer or compiler has to produce > good code... I think in arcade and consoles the coding is a little better done than in nowadays computers, perhaps not ... And I think the code must be really bad for a translator to optimize it. > > And then you have the differences between the two machines. Eg. MIPS > has some very primitive instructions which can be combined, but if you > don't do it the translated code gets very large because these > instructions don't exist and you have to simulate these. A small > example: Oh ..., I missed this. > > Have you read the document about the emulator Generator? At least it > sounds like it. > No. > Our ideas are different in the way that Neil uses the decoded source > level instructions and I wanted to use some virtual processor instead > to have a better abstraction and only have to write one generator for > each host machine. Unfortunately it seems that it's rather impossible > to design a virtual processor that keeps all the features from the > source level while still providing good optimisation at the target > level :-( What do you mean with a virtual processor? A three layers approach: decoding, translation to the virtual processor and translation to the target processor. Or perhaps the Ardi's approach, using a virtuals opcodes for non native translation and use a kind of threaded interpreter for execute them. I think using the three layer approach can improve retargetability but will be slower. And the first time you build the recompiler you will have to do more coding. If you aren't going to do the recompiler for more than a target machine will be too work for nothing. And I think the work needed for build a port to another target processor could be almost the same than in a two layer approach. In my university are working in a similar approach (but in static translation) and now seems they are getting too work. > > I'm not sure if this will work, but I'll think about it. > Some implementation could be something like this: build a two levels indirection. We can have a map for pages of memory, a kind of PageMap. Each item in PageMap will be a NULL pointer if there isn't translated code in this page or a pointer to a TransMap for the page. The testing for translated code will be first look at PageMap for the address of the page TransMap and then look at the TransMap. Perhaps some of this can be done in recompilation time and only look at the page TransMap and use PageMap in recompile time. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 6 05:56:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA92185 for dynarec-outgoing; Mon, 6 Mar 2000 05:56:29 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Mon, 06 Mar 2000 13:53:30 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> What an insteresting discussion this lasts days. Not you thing so? >I certainly think so, but I was so slammed with work that I didn't have a >chance to respond. This is the first time! And I've been to the party of another student (what he called a "children's bithday" - just don't ask) and I was still to dizzy to answer emails yesterday... >;-) It's certainly not a one size fits all solution, and we need to make >sure that no one's single idea becomes it. The approach we need to take >should change depending upon our target. I had my problems with your taking this path but now that I got used to it I don't see much to criticise anymore. There are just a few details we could try to find the best solution for. I really don't know why some other guys think your approach is bad. Victor might have a slight language barrier (very accaptable though), but these guys must have the barrier in thier brains! >I started "thinking" about it in about July of last year and have worked >with another individual who actually got a 34010 recompiler working. I guess I started some time earlier, but surely not on such a professional basis. >His >approach was the "assemble the blocks" approach, which he and I squared >off on. I bet so. >We also had some philisophical discussions in the approach that we >didn't agree with, too, so we didn't wind up working together. I can assure you this was the right decision! >I think the answer to this is "it depends". For example, a game like >Galaga uses three Z80s. There isn't 3 Z80s worth of work in the game. If >you look at a lot of the code, there's opportunity for improvement on the >source code, so we shouldn't rule it out. You do, however, wind up running >in to sequences of code that are "groupable": [snip] >You'll find many other examples like this in "real" code, too. Your example is even more extreme than my one. >Yes, it's more flexible. The only drawback is that you have to basically >rewrite a lot of the target layer each time you do it, but things like the >opcode emitter are used across all target layers. And the source layer is reused as well of course ;-) >No, you should still try to beat the approach! Even if it's not easy... >Have a look at it in its current state. Keep this private! >http://www.synthcom.com/~neil/dynarec.zip Thanks, I'll be quiet as a fish about it! >That's the whole chalupa for what I have right now. Have a look, and we >can have a basis of chatting about it. Might take some time till Victor and I will have digged through it... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 6 05:56:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA92193 for dynarec-outgoing; Mon, 6 Mar 2000 05:56:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Mon, 06 Mar 2000 14:09:02 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yeah. I don't think Babelfish would do too good of a job on technical >translations to Spansih from English. ;-) At least until we get the real one from the Hitchhiker's Guide To The Galaxy ;-) >Actually, that's not true. Just about every HP printer (and lots of >others) use i860 and i960 CPUs. True, my Minolta PagePro 8 uses an i960 as well. >The reason (and I happen to know this >because I was told this by the head of the CPU division at Intel >personally) for the i860 not getting penetration was that they didn't want >to confuse the marketplace nor compete against their flagship product (at >the time, the 386). How nice would computers be if we didn't have to deal with all the laymen? >I don't think the recompilation is really that big of a deal. Even with >128K of code to recompile, that doesn't take very long. What I meant is: if you'd be using all the compiler optimisation tricks apart from simple peephole optimisation it could be a bit slow. But for most compiler techniques you'd have to build a tree first and since you won't do this there is no real problem. >But it only uses more memory in bursts. The recompilation process on a >per-block basis has a lot of memory getting allocated andfreed. Oh - I >guess you're referring to the 256K jump table. ;-) No I meant the opcode structure between the two layers but that is only allocated for a short time and shouldn't be that large anyway. [virtual intermediate processor = VIP] >Bingo. It does make the translation process easier and all one would have >to do to support a new source CPU would be to create a source layer for >it, but the drawbacks are that it's too generalized. Yeah, and even when I only intended to cover RISC processors I'd need several hundred VIP instructions to produce optimal results, meaning when a processor is recompiled to itself the code shouldn't be much worse. Writing a translator for such a monster VIP won't be much fun and no one will be willing to do it, which makes the whole approach senseless :-( >Now we'll have to have another 64K array to figure out which addresses >have been translated. ;-) I have 256MB RAM, so what? ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 6 05:56:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA92200 for dynarec-outgoing; Mon, 6 Mar 2000 05:56:34 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Mon, 06 Mar 2000 14:40:52 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I think optimisations is useful for code which is executed many times: loops >and procedures. Another question cuold be perhaps if a program in an emulated >machine will be running hours or days or will be running only a few minutes. >In first case you can spend some more time doing optimizations. I think the >only thing we can do to know what level of optimization we can do is to do some >code and try it. For Sun invented the HotSpot technology for Java, which basically interprets first and after some time starts to recompile the most often used blocks. I think also Transmeta's Code Morphing software can optimise revisited blocks even more. The problem of the first approach is that you need two engines, and in the second case profiling information has to be gathered. >I think in arcade and consoles the coding is a little better done than in >nowadays computers, perhaps not ... And I think the code must be really bad >for a translator to optimize it. This has to be answered by Neil again since I've seen to less code... >> Have you read the document about the emulator Generator? At least it >> sounds like it. >No. It's a Genesis emulator written as a university project with a nice documentation: http://www.squish.net/generator/ >What do you mean with a virtual processor? A three layers approach: decoding, >translation to the virtual processor and translation to the target processor. >Or perhaps the Ardi's approach, using a virtuals opcodes for non native >translation and use a kind of threaded interpreter for execute them. I think >using the three layer approach can improve retargetability but will be slower. I was thinking of something similar like P-code or JVM but without the stack approach. I'd be interested what kinf of VP the Tao Group is using for Taos/Elate (http://www.tao.co.uk/), but they don't have public information on it. You're right that it will be a bit slower, but the real problem is how to pack all the features of all possible source processors into the same VIP. Even if you only deal with RISC architectures you'll end up with a real monster no one wants to retarget. >And the first time you build the recompiler you will have to do more coding. >If you aren't going to do the recompiler for more than a target machine will be >too work for nothing. And I think the work needed for build a port to another >target processor could be almost the same than in a two layer approach. In my >university are working in a similar approach (but in static translation) and >now seems they are getting too work. Indeed. I more or less canceled the idea. It still would be nice to have such a VIP but I don't think that it's possible to define a good one. >Some implementation could be something like this: build a two levels >indirection. We can have a map for pages of memory, a kind of PageMap. Each >item in PageMap will be a NULL pointer if there isn't translated code in this >page or a pointer to a TransMap for the page. The testing for translated code >will be first look at PageMap for the address of the page TransMap and then >look at the TransMap. Perhaps some of this can be done in recompilation time >and only look at the page TransMap and use PageMap in recompile time. Since we have to deal with different sized blocks instead of relatively even sized pages I'm not sure how this should work. Also it'll slow down the lookup a bit. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 8 00:13:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA01101 for dynarec-outgoing; Wed, 8 Mar 2000 00:13:11 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C607D8.1B464405@est.fib.upc.es> Date: Wed, 08 Mar 2000 08:57:12 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > For Sun invented the HotSpot technology for Java, which basically > interprets first and after some time starts to recompile the most often > used blocks. I think also Transmeta's Code Morphing software can > optimise revisited blocks even more. > The problem of the first approach is that you need two engines, and in > the second case profiling information has to be gathered. Yes, these are useful techniques for dynamic compiling and for emulate large computers but I don't think would be useful for emulate arcade machines or consoles (perhaps someday with more powerful machines as DreamCast or PlayStation 2 to be emulated could be useful). The procs and programs emulated on arcade machines are too small and a powerful recompiler would make it work slower rather than faster. But for Java and computers emulation I think they could be very useful. > It's a Genesis emulator written as a university project with a nice > documentation: > http://www.squish.net/generator/ I will read it :) Thank you. > > I was thinking of something similar like P-code or JVM but without the > stack approach. I'd be interested what kinf of VP the Tao Group is > using for Taos/Elate (http://www.tao.co.uk/), but they don't have > public information on it. > You're right that it will be a bit slower, but the real problem is how > to pack all the features of all possible source processors into the > same VIP. Even if you only deal with RISC architectures you'll end up > with a real monster no one wants to retarget. About this I don't know nothing, I have never tried to think about it :( I will work (as a student collaborator, I don't know how is this called in english ...) from next week in a static translation project in my university that uses a virtual machine, perhaps I could learn more about the complexity of this subject. > > Indeed. I more or less canceled the idea. It still would be nice to > have such a VIP but I don't think that it's possible to define a good > one. Perhaps could be useful in a kind of MAME project for dynamic recompilation of a large number of CPUs. The same VIP could be used for all the source and target CPUs and help the system to be easy to port. But it would be a very large project for only one person :) > Since we have to deal with different sized blocks instead of relatively > even sized pages I'm not sure how this should work. Also it'll slow > down the lookup a bit. I think it's better I explain a bit more my thoughts, and use an example. I think this could be named something like 'dynamic transmapping' ;) It's an algorithm for handle large sparse memory spaces trying to have the same per instruction translation addressing mode as the one used by Neil. You have to take into account that the size of code will be smaller (very smaller) than the size of data so only a little percentage of the memory is used for code. And almost always the code is stored in a small set of blocks, so a piece of code is near to others pieces of code. Although the different blocks of code will be sparsed over all memory space the code is very grouped so you can deal with it in groups. And more, in this large machines we are talking about the memory is handled by pages, so many times we have separated pages for code and data. I will use as example an 1 MB memory space (ok, it's not a great memory space, but it's only an example). In the Neil's approach we will have a 4 MB TransMap. In my approach we will have a small table of pages (this will be fixed length consecutive pieces of memory as the usual definition, they can be or not the real pages from the emulated machine), it could be named PageMap. We will divide our memory space in a number of this pages.. If we have 4 KB pages we will have 1 MB/4 KB = 256 (100h) pages. Each entry of PageMap is a 32-bits pointer, so PageMap would be 256*4 = 1 KB sized (the size of the memory space and page size will change to fit our goal). Then for each page that has translated or referenced code we will have a TransMapPage (or something like this). The TransMapPage will be a 4KB*4 bytes (a pointer) = 16 KB table with the pointers to the translated code of each instruction in this page of memory. We only will have TransMapPages for these pages that have code on it. For example, PC can be 8156h and we will want to know if this instruction is already translated or not. We calculate the page: 8156h/1000h(4KB) = 8, so this instruction is on page 8. Then we go to PageMap and look for the 8th page. If this entry has a null pointer there is no translated code for this page so we create a new TransMapPage (an empty TransMap, all entries set to null), we update the PageMap structure writing in entry 8 the address of the new TransMapPage and begin the translation. When the translation is finished we put in entry 156h (offset in page 8 for 8156h) of this TransMapPage the address for the translated code of the instruction in 8156h. If the 8 entry of PageMap was a not null pointer then it's a pointer to a TransMapPage, so we go to this TransMapPage and look for entry 156h. If there is a null pointer we translate the instruction as in the previous case, if not we have the pointer for the translated code for the instruction on 8156h. All this is made on translation time and on dispatch loop time. What happens in translated code? Ok we have a jump instruction like this: jump 56156h. In the translation function we get the jump address and calculate the page for this address, it's 56h. We look at PageMap for entry 56h, if it's a not null pointer we will write this code to the translation: mov esi, [PageMap[56h]+156h] and esi,esi jnz not_translated_address. So in translation we don't access to PageMap but the TransMapPage for the jump address page (PageMap[56h] is a constant). If PageMap entry for 56h it's a null pointer we will create a new TransMapPage for page 56h, we will update PageMap and we will write the same translated code. Conclusions: it's faster than a TLB and uses less memory than Neil's original TransMap idea. We only use memory for a small (very smaller than a TransMap structure) PageMap structure and for pieces of TransMap for the pages that have code. While recompiling and on dispatch loop will be a bit slower but nothing you can take in account. The memory used dynamically adjustes to the size of the code. It works well with a per block translations because it's faster than a TLB but you have TransMapPages with a lot of entries not used, this won't harms us ;) There are others problems we will have to manage as do some garbage recollection (translated code that it isn't used), programs loads and exits (load new code and erase old code). These items will make my idea a bit more complex, but, although I haven't thought about them, I think they are easy to manage and you have to do almost the same (or perhaps more) job with a TLB. I hope this time I have explained a bit better. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 8 02:48:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA01619 for dynarec-outgoing; Wed, 8 Mar 2000 02:48:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003081035.LAA15195@pons.ac.upc.es> Subject: DYNAREC: Probe To: dynarec@synthcom.com Date: Wed, 8 Mar 2000 11:35:00 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 8 06:28:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA02168 for dynarec-outgoing; Wed, 8 Mar 2000 06:28:57 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Wed, 08 Mar 2000 15:12:40 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com [virtual intermediate processor] >About this I don't know nothing, I have never tried to think about it :( I >will work (as a student collaborator, I don't know how is this called in >english ...) from next week in a static translation project in my university >that uses a virtual machine, perhaps I could learn more about the complexity of >this subject. I'd be interested what kind of virtual machine they are using. >Perhaps could be useful in a kind of MAME project for dynamic recompilation of >a large number of CPUs. The same VIP could be used for all the source and >target CPUs and help the system to be easy to port. That was the main idea. >But it would be a very large project for only one person :) You can bet on it. But also the more people work on it the less simple or clean the approach will be. >I think this could be named something like 'dynamic transmapping' ;) How about paged or indirect transmapping? ;-) >It's an algorithm for handle large sparse memory spaces trying to have the same >per instruction translation addressing mode as the one used by Neil. I guess then Neil will love it ;-) >You have to take into account that the size of code will be smaller (very >smaller) than the size of data so only a little percentage of the memory is >used for code. And almost always the code is stored in a small set of blocks, >so a piece of code is near to others pieces of code. Although the different >blocks of code will be sparsed over all memory space the code is very grouped >so you can deal with it in groups. And more, in this large machines we are >talking about the memory is handled by pages, so many times we have separated >pages for code and data. You're right of course. I wonder why I didn't think of that last time... >I will use as example an 1 MB memory space (ok, it's not a great memory space, >but it's only an example). In the Neil's approach we will have a 4 MB >TransMap. In my approach we will have a small table of pages (this will be >fixed length consecutive pieces of memory as the usual definition, they can be >or not the real pages from the emulated machine), it could be named PageMap. >We will divide our memory space in a number of this pages.. If we have 4 KB >pages we will have 1 MB/4 KB = 256 (100h) pages. Each entry of PageMap is a >32-bits pointer, so PageMap would be 256*4 = 1 KB sized (the size of the memory >space and page size will change to fit our goal). Then for each page that has >translated or referenced code we will have a TransMapPage (or something like >this). The TransMapPage will be a 4KB*4 bytes (a pointer) = 16 KB table with >the pointers to the translated code of each instruction in this page of >memory. We only will have TransMapPages for these pages that have code on it. That's more or less similar to the standard two-level page translation most MMUs use. >For example, PC can be 8156h and we will want to know if this instruction is >already translated or not. We calculate the page: 8156h/1000h(4KB) = 8, so >this instruction is on page 8. Using a logical shift right would be much faster of course, but that doesn't change your idea. >Then we go to PageMap and look for the 8th >page. If this entry has a null pointer there is no translated code for this >page so we create a new TransMapPage (an empty TransMap, all entries set to >null), we update the PageMap structure writing in entry 8 the address of the >new TransMapPage and begin the translation. When the translation is finished >we put in entry 156h (offset in page 8 for 8156h) of this TransMapPage the >address for the translated code of the instruction in 8156h. If the 8 entry of >PageMap was a not null pointer then it's a pointer to a TransMapPage, so we go >to this TransMapPage and look for entry 156h. If there is a null pointer we >translate the instruction as in the previous case, if not we have the pointer >for the translated code for the instruction on 8156h. All this is made on >translation time and on dispatch loop time. Should be quite fast. >What happens in translated code? >Ok we have a jump instruction like this: > jump 56156h. >In the translation function we get the jump address and calculate the page for >this address, it's 56h. We look at PageMap for entry 56h, if it's a not null >pointer we will write this code to the translation: > mov esi, [PageMap[56h]+156h] > and esi,esi > jnz not_translated_address. >So in translation we don't access to PageMap but the TransMapPage for the jump >address page (PageMap[56h] is a constant). I think it has to be "jz" because the entry is invalid if it is zero, right? >If PageMap entry for 56h it's a null pointer we will create a new TransMapPage >for page 56h, we will update PageMap and we will write the same translated >code. There might be some rare cases of inter-page jumps where you might have /want to create code for it as well. But you're always free to jump back to the dispatcher of course. >Conclusions: it's faster than a TLB If the hash is done right then it won't be that slow, but it's hard to find a good hash function and your method is better suited for the task at hand. >and uses less memory than Neil's original TransMap idea. I don't know Neil good enough but I guess he'll really like it ;-) >We only use memory for a small (very smaller than a TransMap >structure) PageMap structure and for pieces of TransMap for the pages that have >code. While recompiling and on dispatch loop will be a bit slower but nothing >you can take in account. The memory used dynamically adjustes to the size of >the code. It works well with a per block translations because it's faster than >a TLB but you have TransMapPages with a lot of entries not used, this won't >harms us ;) Sounds nice. For systems with low memory Neil's direct TransMap can be used and for larger systems the indirect TransMap, which isn't that different. Congratulations, I think you found a solution which should please us three! Right Neil? >There are others problems we will have to manage as do some garbage >recollection (translated code that it isn't used), programs loads and exits >(load new code and erase old code). These items will make my idea a bit more >complex, but, although I haven't thought about them, I think they are easy to >manage and you have to do almost the same (or perhaps more) job with a TLB. I think this cannot be added to the existing structures, no matter if we are using a TransMap or aTLB. There has to be some other way... Does anyone know how the Java mark-and-sweep GC works? Wait! We're talking about pages right? An OS should replace whole pages, so we might be able to notice this via the PageMap or a parallel structure. Then we have to find out the address of the related allocated memory location and we're ready to free it. >I hope this time I have explained a bit better. Much better indeed. I think I should have understood it the last time but my head wasn't that clear then I guess. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 01:08:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA05778 for dynarec-outgoing; Thu, 9 Mar 2000 01:08:43 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 9 Mar 2000 01:08:41 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 In-Reply-To: <38BE4486.F1E63EF1@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Okay, I'm back. Finally got over the big hump that I should've gotten over 2 weeks ago. Sorry to be as scarce as intercourse in a convent... > > You're documenting things FOR me! Cool! ;-) > I'm documenting all emulation techniques I put on my hands ;) I'm That's probably a good idea. Think of it this way: The techniques and approaches can have advantages/disadvantages listed next to them, and any dynarec author can approach their particular needs with some informed direction. > and try to compile all information it's needed for emulate a machine > (this includes CPU emulation techniques: interpreting, dinamic > recompiling, your recompiler ;), perhaps static recompiling [but about > this I think there aren't emulators :(]; graphics and sound emulation: > the differents graphics methods and how to implement them; sound, > others ...; perhaps make a repository about the different machines Don't get me started. I have lots of ideas in this regard. The biggest is why people actually *POLL* for device input and stop every once in awhile and push sound out the port. Device input is all interrupt driven (except for joysticks under DOS which can be polled via a timer tick) and should/can just twiddle bits directly in the memory space (and variables). Every OS under the sun has the capability to call the application back when it needs more data. Doing it this way guarantees that you won't run in to skipping/popping problems. MAME Gets hung up doing this occasionally. The big disadvantage to "stopping every once in a while" is that you have to design your execution path so that it "breaks out" of what it's doing for a while. The less you have to break out from doing, the faster the service is going to be. Zillions more ideas where that came from... -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 01:13:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA05795 for dynarec-outgoing; Thu, 9 Mar 2000 01:13:15 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 9 Mar 2000 01:13:14 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <38C370ED.47520F90@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > One more question is: When is optimisation reasonable or would it even > > slow down the translation process that much for the optimised code > > being no benefit? > in an emulated machine will be running hours or days or will be > running only a few minutes. In first case you can spend some more time > doing optimizations. I think the only thing we can do to know what > level of optimization we can do is to do some code and try it. That's exactly it. Study some source material first. That's partially how I came up with a few of the ideas/structures that I did, and it was what lead me to find that I couldn't just treat blocks atomically automatically. > > First of all, not every assembler programmer or compiler has to produce > > good code... > I think in arcade and consoles the coding is a little better done than in > nowadays computers, perhaps not ... And I think the code must be really bad > for a translator to optimize it. Even compiled code doesn't have to be all that good. In most cases it's not. You'd be surprised. Compilers don't and will never approach good assembly. The delta is less with RISC machines but is much, much larger with x86 boxen. But I've seen some really, really stupid code on all CPUs. It doesn't discriminate. ;-) > translation and use a kind of threaded interpreter for execute them. > I think using the three layer approach can improve retargetability but > will be slower. The other advantage is being able to generate recompilers faster for other source CPUs. > almost the same than in a two layer approach. In my university are > working in a similar approach (but in static translation) and now > seems they are getting too work. Have them take their approach to the x86 where registers are scarce and watch the performance dwindle. ;-) > > I'm not sure if this will work, but I'll think about it. > Some implementation could be something like this: build a two levels > indirection. We can have a map for pages of memory, a kind of > PageMap. Each item in PageMap will be a NULL pointer if there isn't > translated code in this page or a pointer to a TransMap for the page. Sounds like what I'm doing. ;-) > The testing for translated code will be first look at PageMap for the > address of the page TransMap and then look at the TransMap. Perhaps > some of this can be done in recompilation time and only look at the > page TransMap and use PageMap in recompile time. There is one advantage. You don't have to create a comparative jump sequence if you already know where the recompiled address is. You just jump to it! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 01:20:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA05820 for dynarec-outgoing; Thu, 9 Mar 2000 01:20:26 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 9 Mar 2000 01:20:25 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >I certainly think so, but I was so slammed with work that I didn't > >chance to respond. This is the first time! > And I've been to the party of another student (what he called a > "children's bithday" - just don't ask) and I was still to dizzy to > answer emails yesterday... I have that problem on the weekends - consistently. ;-) > I had my problems with your taking this path but now that I got used to > it I don't see much to criticise anymore. There are just a few details > we could try to find the best solution for. Precisely. There are still some rough edges and some areas that I haven't explored, but that's mainly because I don't care about them. ;-) > I really don't know why some other guys think your approach is bad. > Victor might have a slight language barrier (very accaptable though), > but these guys must have the barrier in thier brains! They don't think it's bad. They just think the existing methodologies are "better". Being "generic" has its advantages, but the whole point of recompilation is to make it go as fast as it can. Anything short of that is a waste of time. An extremely optimized emulator core should be able to come fairly close to a recompiler, and falling short of the most optimal emulator core you can make - you'd be better off just doing an emulator and optimizing that. > >I started "thinking" about it in about July of last year and have > >with another individual who actually got a 34010 recompiler working. > I guess I started some time earlier, but surely not on such a > professional basis. Heh. Well, there was no professional aspect about this for me. ;-) I just found the topic fascinating... > >approach was the "assemble the blocks" approach, which he and I > >off on. > I bet so. A bummer, too. The problem is there was a bit of the larger picture he wasn't seeing. I'm also not the type of person who wants to just remigrate or repurpose my code to adjust to a new architecture, which is one of the things that he was doing. I say throw it out and start anew. I've dealt with so much code that has been repurposed that it's not funny. Everyone's scared of the word "rewrite". Management and everyone else would rather pour in 5 weeks repurposing and debugging something that would take 2 weeks to rewrite from ground up. > >You'll find many other examples like this in "real" code, too. > Your example is even more extreme than my one. There is more where that came from. > >Yes, it's more flexible. The only drawback is that you have to > >rewrite a lot of the target layer each time you do it, but things like > >opcode emitter are used across all target layers. > And the source layer is reused as well of course ;-) Bingo. You still get the advent of flag mapping hints being passed to the lower layers in addition to the disassembly and, most importantly, the same user interface to client code. > >Have a look at it in its current state. Keep this private! > >http://www.synthcom.com/~neil/dynarec.zip > Thanks, I'll be quiet as a fish about it! Hey - NO ONE Commented on this yet. Wassup with that?!??!? > >That's the whole chalupa for what I have right now. Have a look, and > >can have a basis of chatting about it. > Might take some time till Victor and I will have digged through it... Okay. You've had 3 days. Where's your 50 page report? ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 01:21:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA05831 for dynarec-outgoing; Thu, 9 Mar 2000 01:21:46 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C76952.EB609384@est.fib.upc.es> Date: Thu, 09 Mar 2000 10:05:23 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > [virtual intermediate processor] > >About this I don't know nothing, I have never tried to think about it > :( I > >will work (as a student collaborator, I don't know how is this called > in > >english ...) from next week in a static translation project in my > university > >that uses a virtual machine, perhaps I could learn more about the > complexity of > >this subject. > > I'd be interested what kind of virtual machine they are using. > I will ask if is free information and I will put somewhere the poscript document (it's in english). I have just take a look at it and is a really big VM more suited for big machines: includes 32K registers, integer, float and vector registers and all usual operations. The opcode is 128 bits and the word size is 64. Too big for emulation I think :( > > >Perhaps could be useful in a kind of MAME project for dynamic > recompilation of > >a large number of CPUs. The same VIP could be used for all the source > and > >target CPUs and help the system to be easy to port. > > That was the main idea. > > >But it would be a very large project for only one person :) > > You can bet on it. But also the more people work on it the less simple > or clean the approach will be. > > >I think this could be named something like 'dynamic transmapping' ;) > > How about paged or indirect transmapping? ;-) > It's a good name ;) > > >For example, PC can be 8156h and we will want to know if this > instruction is > >already translated or not. We calculate the page: 8156h/1000h(4KB) = > 8, so > >this instruction is on page 8. > > Using a logical shift right would be much faster of course, but that > doesn't change your idea. > You are right, it's only and example :) > > >What happens in translated code? > >Ok we have a jump instruction like this: > > jump 56156h. > >In the translation function we get the jump address and calculate the > page for > >this address, it's 56h. We look at PageMap for entry 56h, if it's a > not null > >pointer we will write this code to the translation: > > mov esi, [PageMap[56h]+156h] > > and esi,esi > > jnz not_translated_address. > >So in translation we don't access to PageMap but the TransMapPage for > the jump > >address page (PageMap[56h] is a constant). > > I think it has to be "jz" because the entry is invalid if it is zero, > right? > Oh, ... I think you are right, but the idea is the same. > > >If PageMap entry for 56h it's a null pointer we will create a new > TransMapPage > >for page 56h, we will update PageMap and we will write the same > translated > >code. > > There might be some rare cases of inter-page jumps where you might have > /want to create code for it as well. But you're always free to jump > back to the dispatcher of course. > But if you don't destroy the TransMapPages you don't need to do this or I think so. > > >There are others problems we will have to manage as do some garbage > >recollection (translated code that it isn't used), programs loads and > exits > >(load new code and erase old code). These items will make my idea a > bit more > >complex, but, although I haven't thought about them, I think they are > easy to > >manage and you have to do almost the same (or perhaps more) job with a > TLB. > > I think this cannot be added to the existing structures, no matter if > we are using a TransMap or aTLB. There has to be some other way... Does > anyone know how the Java mark-and-sweep GC works? I don't it's something interestiong? > > Wait! We're talking about pages right? An OS should replace whole > pages, so we might be able to notice this via the PageMap or a parallel > structure. Then we have to find out the address of the related > allocated memory location and we're ready to free it. > This is my idea, track system calls and traps to know when code is loaded and erased. > > >I hope this time I have explained a bit better. > > Much better indeed. I think I should have understood it the last time > but my head wasn't that clear then I guess. I think I did a too fast explanation I should have done some example :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 01:27:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA05845 for dynarec-outgoing; Thu, 9 Mar 2000 01:27:17 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 9 Mar 2000 01:27:16 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Yeah. I don't think Babelfish would do too good of a job on technical > >translations to Spansih from English. ;-) > At least until we get the real one from the Hitchhiker's Guide To The > Galaxy ;-) It will give you "Spinglish". ;-) > >to confuse the marketplace nor compete against their flagship product > >the time, the 386). > How nice would computers be if we didn't have to deal with all the > laymen? I really, really wish I was born into an age where money wasn't an object and wasn't people's motivating factor. I run into greedy, snitty people every day that just bug the hell out of me. Whatever happened to everyone working together for a common goal - even with a bit of competition for recognition, but everyone gets to benefit from it. The concept of "theft" would be eliminated. It's communism, really. Not Marxist communism, but I'd love to get up in the morning, make good stuff, talk high level concepts with people, implement and let the world enjoy the fruits of my labor without having the possibility of getting "ripped off". > >I don't think the recompilation is really that big of a deal. Even > >128K of code to recompile, that doesn't take very long. > What I meant is: if you'd be using all the compiler optimisation tricks > apart from simple peephole optimisation it could be a bit slow. How so? > But for > most compiler techniques you'd have to build a tree first and since you > won't do this there is no real problem. Right. The operated-on blocks of code would be structurized and you could optimize them a block at a time. > >But it only uses more memory in bursts. The recompilation process on a > >per-block basis has a lot of memory getting allocated andfreed. Oh - I > >guess you're referring to the 256K jump table. ;-) > No I meant the opcode structure between the two layers but that is only > allocated for a short time and shouldn't be that large anyway. Between the two layers? Hm... Well, it's more like the crap that's emitted from the target layer, so if anything it's stuck to the side of the target layer. ;-) > Yeah, and even when I only intended to cover RISC processors I'd need > several hundred VIP instructions to produce optimal results, meaning > when a processor is recompiled to itself the code shouldn't be much > worse. Writing a translator for such a monster VIP won't be much fun > and no one will be willing to do it, which makes the whole approach > senseless :-( And I think that approach would have a low probability of being successful in the realm of performance. > >Now we'll have to have another 64K array to figure out which addresses > >have been translated. ;-) > I have 256MB RAM, so what? ;-) Yeah, but we don't want to exclude smaller machines or cause massive amounts of swap, which I'd rather not do. If only everyone adapted the "if you don't need it, don't use it" approach to programming, we'd have much, much smaller apps and things would be far snappier. Now even boneheaded programmers can write fast code even if it's shit. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 01:30:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA05860 for dynarec-outgoing; Thu, 9 Mar 2000 01:30:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 9 Mar 2000 01:30:15 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >only thing we can do to know what level of optimization we can do is > >code and try it. > For Sun invented the HotSpot technology for Java, which basically > interprets first and after some time starts to recompile the most often > used blocks. Java... bleh... excuse me while I vomit on the cat... > I think also Transmeta's Code Morphing software can > optimise revisited blocks even more. You should read up the tech articles on it. The code morphing isn't all that revolutionary or new, and isn't as advanced as we would all hope it to be. ;-( > >I think in arcade and consoles the coding is a little better done than > >nowadays computers, perhaps not ... And I think the code must be > >for a translator to optimize it. > This has to be answered by Neil again since I've seen to less code... It's a sometimes yes, sometimes no situation. Even on modern consoles (I.E. Genesis) there's still some crap code. > I was thinking of something similar like P-code or JVM but without the > stack approach. I'd be interested what kinf of VP the Tao Group is > using for Taos/Elate (http://www.tao.co.uk/), but they don't have > public information on it. I think also that passing in hints will give the recompiler quite a bit of freedom to make quite a few more intelligent decisions. We just have to spend a lot of time analyzing code. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 01:42:22 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA05905 for dynarec-outgoing; Thu, 9 Mar 2000 01:42:22 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 9 Mar 2000 01:42:18 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <38C607D8.1B464405@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > You have to take into account that the size of code will be smaller (very > smaller) than the size of data so only a little percentage of the memory is > used for code. And almost always the code is stored in a small set of blocks, > so a piece of code is near to others pieces of code. Although the different > blocks of code will be sparsed over all memory space the code is very grouped > so you can deal with it in groups. And more, in this large machines we are > talking about the memory is handled by pages, so many times we have separated > pages for code and data. Right. This is the idea that I was trying to get across in my mentioning of sparse memory maps. > I will use as example an 1 MB memory space (ok, it's not a great memory space, > but it's only an example). In the Neil's approach we will have a 4 MB > TransMap. In my approach we will have a small table of pages (this will be > fixed length consecutive pieces of memory as the usual definition, they can be > or not the real pages from the emulated machine), it could be named PageMap. > We will divide our memory space in a number of this pages.. If we have 4 KB > pages we will have 1 MB/4 KB = 256 (100h) pages. Each entry of PageMap is a > 32-bits pointer, so PageMap would be 256*4 = 1 KB sized (the size of the memory Why not just assume a huge bit of virtual memory for the device? If it's a 68000, the most you'd use is 2^24, or 16777216*4=64 Megabytes for a transmap (or 32MB if you just do odd addresses). Execution won't occur in all 16 Megabytes of memory space and it will be paged in when used/executed. Kinda wasteful, but I think in the long run it'd be worth it because of the performance paybacks. Of course, lower end machines wouldn't be able to cope, but when we're emulating something with this sparse of a memory space a slow machine isn't up to the task anyway. > 8 for 8156h) of this TransMapPage the address for the translated code > of the instruction in 8156h. If the 8 entry of PageMap was a not null > pointer then it's a pointer to a TransMapPage, so we go to this > TransMapPage and look for entry 156h. If there is a null pointer we > translate the instruction as in the previous case, if not we have the > pointer for the translated code for the instruction on 8156h. Effectively a double page mapping... Hm... not a bad idea. Effectively, this would be a bit of instruction recompiled "cache" ,right? > In the translation function we get the jump address and calculate the > page for this address, it's 56h. We look at PageMap for entry 56h, if > it's a not null pointer we will write this code to the translation: Cute. Let me stew on this one. > mov esi, [PageMap[56h]+156h] Well, you can't quite do that, but: mov esi, PageMap[56h] mov esi, [esi+156h] It'd be cool if you could! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 01:58:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA06005 for dynarec-outgoing; Thu, 9 Mar 2000 01:58:57 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C7711A.5C97887C@eurocopter.de> Date: Thu, 09 Mar 2000 10:38:34 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > It will give you "Spinglish". ;-) I spik Eeeenglish very gooood, I leeearn it from a boooook. For anyone who hasn't seen "Fawlty Towers", don't think the above sentence was being cruel. It was a British comedy series from the '70s which was hilariously funny - with John Cleese (of Monty Python fame). > I really, really wish I was born into an age where money wasn't an object > and wasn't people's motivating factor. I run into greedy, snitty people > every day that just bug the hell out of me. Whatever happened to everyone > working together for a common goal - even with a bit of competition for > recognition, but everyone gets to benefit from it. The concept of "theft" > would be eliminated. > > It's communism, really. Not Marxist communism, but I'd love to get up in > the morning, make good stuff, talk high level concepts with people, > implement and let the world enjoy the fruits of my labor without having > the possibility of getting "ripped off". Amen to that. I completely agree. While I don't think that Marxist communism could ever work, there are some definite advantages to communism. That's one of them. > > What I meant is: if you'd be using all the compiler optimisation tricks > > apart from simple peephole optimisation it could be a bit slow. > > How so? I think he means that you're checking for bad code and converting it into good code. Bad code being code which takes 5 instructions to achieve the same as one or two instructions could do. But that's just a guess. :) > > I have 256MB RAM, so what? ;-) > > Yeah, but we don't want to exclude smaller machines or cause massive > amounts of swap, which I'd rather not do. I agree. You shouldn't program to the people with the best computers, you should program for the worst. Why? Well, generally speaking, doing this makes things run faster for ALL the computers - all the way up to the fastest computers. > If only everyone adapted the "if you don't need it, don't use it" approach > to programming, we'd have much, much smaller apps and things would be far > snappier. Now even boneheaded programmers can write fast code even if it's > shit. Agreed. It's a bit of a bummer really... I'm an old school demo coder. I agree with this philosophy. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 02:23:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA06269 for dynarec-outgoing; Thu, 9 Mar 2000 02:23:17 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C777B5.A8271624@est.fib.upc.es> Date: Thu, 09 Mar 2000 11:06:45 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Bradley wrote: > > > I will use as example an 1 MB memory space (ok, it's not a great memory space, > > but it's only an example). In the Neil's approach we will have a 4 MB > > TransMap. In my approach we will have a small table of pages (this will be > > fixed length consecutive pieces of memory as the usual definition, they can be > > or not the real pages from the emulated machine), it could be named PageMap. > > We will divide our memory space in a number of this pages.. If we have 4 KB > > pages we will have 1 MB/4 KB = 256 (100h) pages. Each entry of PageMap is a > > 32-bits pointer, so PageMap would be 256*4 = 1 KB sized (the size of the memory > > Why not just assume a huge bit of virtual memory for the device? If it's a > 68000, the most you'd use is 2^24, or 16777216*4=64 Megabytes for a > transmap (or 32MB if you just do odd addresses). Execution won't occur in > all 16 Megabytes of memory space and it will be paged in when > used/executed. Kinda wasteful, but I think in the long run it'd be worth > it because of the performance paybacks. Of course, lower end machines > wouldn't be able to cope, but when we're emulating something with this > sparse of a memory space a slow machine isn't up to the task anyway. > It was only an example. > > > 8 for 8156h) of this TransMapPage the address for the translated code > > of the instruction in 8156h. If the 8 entry of PageMap was a not null > > pointer then it's a pointer to a TransMapPage, so we go to this > > TransMapPage and look for entry 156h. If there is a null pointer we > > translate the instruction as in the previous case, if not we have the > > pointer for the translated code for the instruction on 8156h. > > Effectively a double page mapping... Hm... not a bad idea. Effectively, > this would be a bit of instruction recompiled "cache" ,right? > Something like this. > > > In the translation function we get the jump address and calculate the > > page for this address, it's 56h. We look at PageMap for entry 56h, if > > it's a not null pointer we will write this code to the translation: > > Cute. Let me stew on this one. > > > mov esi, [PageMap[56h]+156h] > > Well, you can't quite do that, but: > > mov esi, PageMap[56h] > mov esi, [esi+156h] > > It'd be cool if you could! > No I think you can do 'mov esi,[PageMap[56h]+156h]' if you know that when is created a TransMapPage it isn't erased later (or if it's erased then all code that jumps to this page is erased too). PageMap[56] it's get in translation time, I think the confusion is in how I have called it. Perhaps: while translation tmp = PageMap[56]; emit (mov esi,[%d],tmp+156h); in translation code mov esi,[effective_address_for_this_translated_instruction] I think this could be done a lot of times I you don't have to worry if a translated page is erased. If a translated page could be erased and created later then your code would be the one you should use. I hope this time I have explained better. Victor Moya P.S.: You write pretty fast ;) How many mails have you wrote last hour? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 02:29:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA06290 for dynarec-outgoing; Thu, 9 Mar 2000 02:29:42 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C77934.15BA190@est.fib.upc.es> Date: Thu, 09 Mar 2000 11:13:08 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: <38C7711A.5C97887C@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Griffiths wrote: Welcome to a new member :) I'm happy to see you here. > > > I really, really wish I was born into an age where money wasn't an object > > and wasn't people's motivating factor. I run into greedy, snitty people > > every day that just bug the hell out of me. Whatever happened to everyone > > working together for a common goal - even with a bit of competition for > > recognition, but everyone gets to benefit from it. The concept of "theft" > > would be eliminated. > > > > It's communism, really. Not Marxist communism, but I'd love to get up in > > the morning, make good stuff, talk high level concepts with people, > > implement and let the world enjoy the fruits of my labor without having > > the possibility of getting "ripped off". > > Amen to that. I completely agree. While I don't think that Marxist > communism could ever work, there are some definite advantages to communism. > That's one of them. I agree too. This is a dream, but if noone dreams a little nothing change never. > > > > I have 256MB RAM, so what? ;-) > > > > Yeah, but we don't want to exclude smaller machines or cause massive > > amounts of swap, which I'd rather not do. > > I agree. You shouldn't program to the people with the best computers, you > should program for the worst. Why? Well, generally speaking, doing this > makes things run faster for ALL the computers - all the way up to the > fastest computers. > This would be really interesting if the PC game programmers did it. > > > If only everyone adapted the "if you don't need it, don't use it" approach > > to programming, we'd have much, much smaller apps and things would be far > > snappier. Now even boneheaded programmers can write fast code even if it's > > shit. > > Agreed. It's a bit of a bummer really... > > I'm an old school demo coder. I agree with this philosophy. :) A bit more assembler (or optimized C code) and less Java/Visual Basic/Object coding could that a game (as FF8 that works well in a 1MB, 25 Mhz machine and needs a Pentium II with 64 MB to work) will work a reasonable machine not in a monster machine. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 02:36:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA06322 for dynarec-outgoing; Thu, 9 Mar 2000 02:36:06 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C77ACB.73133ABB@est.fib.upc.es> Date: Thu, 09 Mar 2000 11:19:55 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > >Have a look at it in its current state. Keep this private! > > >http://www.synthcom.com/~neil/dynarec.zip > > Thanks, I'll be quiet as a fish about it! > > Hey - NO ONE Commented on this yet. Wassup with that?!??!? > > > >That's the whole chalupa for what I have right now. Have a look, and > > >can have a basis of chatting about it. > > Might take some time till Victor and I will have digged through it... > > Okay. You've had 3 days. Where's your 50 page report? ;-) > Oh, I missed it on my home ... but it was a 100 page report (do you time to read it or you want a summary) ;) Really, wait a bit more (I think until this weekend), I look it tuesday but this week I'm starting a new job I have less free time. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 02:43:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA06335 for dynarec-outgoing; Thu, 9 Mar 2000 02:43:20 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C77C3B.6D2551E5@est.fib.upc.es> Date: Thu, 09 Mar 2000 11:26:03 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Bradley wrote: > Okay, I'm back. Finally got over the big hump that I should've gotten over > 2 weeks ago. Sorry to be as scarce as intercourse in a convent... > > > > You're documenting things FOR me! Cool! ;-) > > > I'm documenting all emulation techniques I put on my hands ;) I'm > > That's probably a good idea. Think of it this way: The techniques and > approaches can have advantages/disadvantages listed next to them, and any > dynarec author can approach their particular needs with some informed > direction. > This would be really interesting if a number of the dynarec (or emulator) authors do it or help others to do it. > > > and try to compile all information it's needed for emulate a machine > > (this includes CPU emulation techniques: interpreting, dinamic > > recompiling, your recompiler ;), perhaps static recompiling [but about > > this I think there aren't emulators :(]; graphics and sound emulation: > > the differents graphics methods and how to implement them; sound, > > others ...; perhaps make a repository about the different machines > > Don't get me started. I have lots of ideas in this regard. The biggest is > why people actually *POLL* for device input and stop every once in awhile > and push sound out the port. Device input is all interrupt driven (except > for joysticks under DOS which can be polled via a timer tick) and > should/can just twiddle bits directly in the memory space (and variables). > Every OS under the sun has the capability to call the application back > when it needs more data. Doing it this way guarantees that you won't run > in to skipping/popping problems. MAME Gets hung up doing this > occasionally. > > The big disadvantage to "stopping every once in a while" is that you have > to design your execution path so that it "breaks out" of what it's doing > for a while. The less you have to break out from doing, the faster the > service is going to be. > Do you mean a kind of event handled emulator? (I think I'm using the wrong words ....). Use interruptions to handle I/O in the emulator and do it in the main loop? > > Zillions more ideas where that came from... > Really? I love discuss about new ideas ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 02:56:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA06364 for dynarec-outgoing; Thu, 9 Mar 2000 02:56:55 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C77F95.107B11C8@est.fib.upc.es> Date: Thu, 09 Mar 2000 11:40:21 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > [virtual intermediate processor] > >About this I don't know nothing, I have never tried to think about it > :( I > >will work (as a student collaborator, I don't know how is this called > in > >english ...) from next week in a static translation project in my > university > >that uses a virtual machine, perhaps I could learn more about the > complexity of > >this subject. > > I'd be interested what kind of virtual machine they are using. > Try download this Dixie Architecture Reference Manual: Version 1.0 ftp://ftp.ac.upc.es/pub/reports/DAC/1998/UPC-DAC-1998-55.ps.Z You can search others reports in www.ac.upc.es but I think will be hard. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 12:29:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA07983 for dynarec-outgoing; Thu, 9 Mar 2000 12:29:46 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 Date: Thu, 09 Mar 2000 20:17:25 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Okay, I'm back. Finally got over the big hump that I should've gotten over >2 weeks ago. Sorry to be as scarce as intercourse in a convent... Uh, it seems so. I was a bit shocked when I got 16 new mails today ;-) >Don't get me started. I have lots of ideas in this regard. The biggest is >why people actually *POLL* for device input and stop every once in awhile >and push sound out the port. Device input is all interrupt driven (except >for joysticks under DOS which can be polled via a timer tick) and >should/can just twiddle bits directly in the memory space (and variables). >Every OS under the sun has the capability to call the application back >when it needs more data. Doing it this way guarantees that you won't run >in to skipping/popping problems. MAME Gets hung up doing this >occasionally. Well, MAME is a monster and seems to have much procedure call overhead as well. >The big disadvantage to "stopping every once in a while" is that you have >to design your execution path so that it "breaks out" of what it's doing >for a while. The less you have to break out from doing, the faster the >service is going to be. Sounds just like the optimal solution. >Zillions more ideas where that came from... How many zeros is this? ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 12:29:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA08004 for dynarec-outgoing; Thu, 9 Mar 2000 12:29:47 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Thu, 09 Mar 2000 20:26:14 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Even compiled code doesn't have to be all that good. In most cases it's >not. You'd be surprised. Compilers don't and will never approach good >assembly. The delta is less with RISC machines but is much, much larger >with x86 boxen. Even RISC compilers can produce crap code, eg. I never found a compiler that could exploit the feature of ARM being able to execute every instruction conditionally. >Have them take their approach to the x86 where registers are scarce and >watch the performance dwindle. ;-) Oh, don't be this cruel! ;-) [indirect TransMap] >Sounds like what I'm doing. ;-) Yeah, that's why Victors solution is so great. Actually it's so obvious that I wonder why we didn't think about it before. >There is one advantage. You don't have to create a comparative jump >sequence if you already know where the recompiled address is. You just >jump to it! Well, that's one thing I know from your code ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 12:29:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA08005 for dynarec-outgoing; Thu, 9 Mar 2000 12:29:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Thu, 09 Mar 2000 20:38:06 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> And I've been to the party of another student (what he called a >> "children's bithday" - just don't ask) and I was still to dizzy to >> answer emails yesterday... >I have that problem on the weekends - consistently. ;-) Oh, I couldn't do that every weekend! The beers and 2 cuba libre were ok but the tequila was too much... >Precisely. There are still some rough edges and some areas that I haven't >explored, but that's mainly because I don't care about them. ;-) Now you have some helpers who can discuss about the dusty corners while you do the real work ;-) >They don't think it's bad. They just think the existing methodologies are >"better". Being "generic" has its advantages, but the whole point of >recompilation is to make it go as fast as it can. Anything short of that >is a waste of time. An extremely optimized emulator core should be able to >come fairly close to a recompiler, and falling short of the most optimal >emulator core you can make - you'd be better off just doing an emulator >and optimizing that. Indeed. I had my first discussions about dynarecs with someone who did one for his PCEngine emulator, but didn't release it because his interpreter was faster! >Heh. Well, there was no professional aspect about this for me. ;-) I just >found the topic fascinating... Me too, but I started on the theory level and developed my own ideas later. >A bummer, too. The problem is there was a bit of the larger picture he >wasn't seeing. Sure. How can you see the large picture when just use every instruction as some kind of copy makro? >I'm also not the type of person who wants to just remigrate or repurpose >my code to adjust to a new architecture, which is one of the things that >he was doing. I say throw it out and start anew. I've dealt with so much >code that has been repurposed that it's not funny. Everyone's scared of >the word "rewrite". Management and everyone else would rather pour in 5 >weeks repurposing and debugging something that would take 2 weeks to >rewrite from ground up. Tell my about it. I work on a program that was ported from DOS (Clipper) to Windows (SQL) and many things could have been much better when the database structure had been revised first... >Hey - NO ONE Commented on this yet. Wassup with that?!??!? You said we should keep it private! ;-) Honestly, I'm sorry that I didn't have enough time to take a deeper look at it, so I didn't find out much more than I already know... >Okay. You've had 3 days. Where's your 50 page report? ;-) Still in my head ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 12:29:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA08008 for dynarec-outgoing; Thu, 9 Mar 2000 12:29:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Thu, 09 Mar 2000 20:13:12 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I will ask if is free information and I will put somewhere the poscript >document (it's in english). I have just take a look at it and is a really big >VM more suited for big machines: includes 32K registers, integer, float and >vector registers and all usual operations. The opcode is 128 bits and the word >size is 64. Too big for emulation I think :( Sounds a bit like IA-64 ;-) >Try download this >Dixie Architecture Reference Manual: Version 1.0 >ftp://ftp.ac.upc.es/pub/reports/DAC/1998/UPC-DAC-1998-55.ps.Z Thanks, already did it. >> I think it has to be "jz" because the entry is invalid if it is zero, >> right? >Oh, ... I think you are right, but the idea is the same. Sure, but my knowledge of x86 assembler still isn't that good so I wanted to ask... >> There might be some rare cases of inter-page jumps where you might have >> /want to create code for it as well. But you're always free to jump >> back to the dispatcher of course. >But if you don't destroy the TransMapPages you don't need to do this or I think >so. What I meant is the case like in Neil's code where he already includes a direct jump even when the block isn't generated yet. You have the same with intra-page jumps, but it might occur on inter-page jumps too. Either you'll have to check the PageMap in these cases as well or return to the dispatcher. >> I think this cannot be added to the existing structures, no matter if >> we are using a TransMap or aTLB. There has to be some other way... Does >> anyone know how the Java mark-and-sweep GC works? >I don't it's something interestiong? I'm not sure what you mean, but I was just wondering if the garbage collection mechanism of Java could be of use for us. But given the fact how many useful things I found in a JVM yet I don't think so. I guess we can come up with a better solution for our needs anyway. >This is my idea, track system calls and traps to know when code is loaded and >erased. That will be hard though. First of all you need to find out which system call does this and it hopefully works for dynamic libs as well. And this doesn't work with dynamically generated code, but who does this anyway? ;-) >I think I did a too fast explanation I should have done some example :) Examples are always good. I hope you'll use some in your work. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 12:29:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA08013 for dynarec-outgoing; Thu, 9 Mar 2000 12:29:49 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Thu, 09 Mar 2000 21:09:47 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Right. This is the idea that I was trying to get across in my mentioning >of sparse memory maps. Ah, I thought memory maps were more machine specific while a paged TransMap as Victor describes it should work for almost any system. Oops, generalization again... >Why not just assume a huge bit of virtual memory for the device? If it's a >68000, the most you'd use is 2^24, or 16777216*4=64 Megabytes for a >transmap (or 32MB if you just do odd addresses). Execution won't occur in >all 16 Megabytes of memory space and it will be paged in when >used/executed. Kinda wasteful, but I think in the long run it'd be worth >it because of the performance paybacks. Of course, lower end machines >wouldn't be able to cope, but when we're emulating something with this >sparse of a memory space a slow machine isn't up to the task anyway. The great thing is that even when the whole memory would be used you only need the same space for all the TransMaps and - in this example - 16K for the PageMap (when using 4K pages, which is "industry standard"). Since only about 25% of the memory will be code you only will need about 8M+16K and the space for the recompiled code of course. The advantage is that the needed memory only grows gradually and in comparison with a TLB you don't have to cover collisions, which you'll surely have in a hash table with this much data. >> mov esi, [PageMap[56h]+156h] >Well, you can't quite do that, but: I think what Victor means is that PageMap[56h] is a compile time constant so you can simply use the result of the addition for generation. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 12:29:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA08017 for dynarec-outgoing; Thu, 9 Mar 2000 12:29:50 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Thu, 09 Mar 2000 20:48:13 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Java... bleh... excuse me while I vomit on the cat... Stinky even getting sinkier? Poor cat! ;-) >You should read up the tech articles on it. The code morphing isn't all >that revolutionary or new, and isn't as advanced as we would all hope it >to be. ;-( Yeah, I don't believe the PR talks anyway... >I think also that passing in hints will give the recompiler quite a bit of >freedom to make quite a few more intelligent decisions. We just have to >spend a lot of time analyzing code. Indeed, but first you have to get it running, then optimisations can start ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 12:29:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA08025 for dynarec-outgoing; Thu, 9 Mar 2000 12:29:51 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Thu, 09 Mar 2000 20:45:22 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >It will give you "Spinglish". ;-) Might sound nice... >It's communism, really. Not Marxist communism, but I'd love to get up in >the morning, make good stuff, talk high level concepts with people, >implement and let the world enjoy the fruits of my labor without having >the possibility of getting "ripped off". Could be nice since you have a "profit" for all the people. But history showed that it doesn't work in reality... >> I have 256MB RAM, so what? ;-) >Yeah, but we don't want to exclude smaller machines or cause massive >amounts of swap, which I'd rather not do. I know, it was just a joke. I'm also a bit pissed off that you need whole CDs for PC programmes which are small enough to fit onto a single floppy on other systems. >If only everyone adapted the "if you don't need it, don't use it" approach >to programming, we'd have much, much smaller apps and things would be far >snappier. Now even boneheaded programmers can write fast code even if it's >shit. But often enough the shit isn't even fast... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 12:29:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA08029 for dynarec-outgoing; Thu, 9 Mar 2000 12:29:51 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Thu, 09 Mar 2000 21:13:58 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> I agree. You shouldn't program to the people with the best computers, you >> should program for the worst. Why? Well, generally speaking, doing this >> makes things run faster for ALL the computers - all the way up to the >> fastest computers. >This would be really interesting if the PC game programmers did it. You're dreaming again ;-) >A bit more assembler (or optimized C code) and less Java/Visual Basic/ Object >coding could that a game (as FF8 that works well in a 1MB, 25 Mhz machine and >needs a Pentium II with 64 MB to work) will work a reasonable machine not in a >monster machine. Hm, if you mean FF8 on the Playstation the specs are: 2MB RAM, 1MB VRAM, and a R3000A with 33MHz, but that doesn't make much difference... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 12:29:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA08039 for dynarec-outgoing; Thu, 9 Mar 2000 12:29:58 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Thu, 09 Mar 2000 20:54:28 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Uh, either Neil changed his last name or we really have someone new on this list... Welcome aboard Neil! >I spik Eeeenglish very gooood, I leeearn it from a boooook. Ser ar' efen better exampls of Dshermen English ;-) >For anyone who hasn't seen "Fawlty Towers", don't think the above sentence >was being cruel. It was a British comedy series from the '70s which was >hilariously funny - with John Cleese (of Monty Python fame). I saw it once or twice but I bet it lost much in the German dubbing... >I think he means that you're checking for bad code and converting it into >good code. Bad code being code which takes 5 instructions to achieve the >same as one or two instructions could do. >But that's just a guess. :) You describe exactly peephole optimisation, which is no problem in dynamic recompilation. What I meant is that global optimisation or something similar, which traditionally operates on tree structures isn't that useful for dynarecs. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 23:42:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA10219 for dynarec-outgoing; Thu, 9 Mar 2000 23:42:18 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C8A390.25F825D2@est.fib.upc.es> Date: Fri, 10 Mar 2000 08:26:08 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > >> mov esi, [PageMap[56h]+156h] > >Well, you can't quite do that, but: > > I think what Victor means is that PageMap[56h] is a compile time > constant so you can simply use the result of the addition for > generation. > You are right. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 23:44:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA10239 for dynarec-outgoing; Thu, 9 Mar 2000 23:44:28 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C8A339.A2BE51A7@eurocopter.de> Date: Fri, 10 Mar 2000 08:24:41 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >This would be really interesting if the PC game programmers did it. > > You're dreaming again ;-) Yeah, the approach of "Well, if it's too slow now, we'll release it in a few months" philosophy is always good. ;) > Hm, if you mean FF8 on the Playstation the specs are: 2MB RAM, 1MB > VRAM, and a R3000A with 33MHz, but that doesn't make much difference... AFAIK there is no seperate VRAM - it's shared. So in fact, Neil is right. Unless I'm wrong (which I doubt), in which case so is he. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 23:52:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA10267 for dynarec-outgoing; Thu, 9 Mar 2000 23:52:38 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C8A550.69678D4F@eurocopter.de> Date: Fri, 10 Mar 2000 08:33:36 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Uh, either Neil changed his last name or we really have someone new on > this list... > Welcome aboard Neil! Thanks! It's yet another mailing list to clog up my inbox and take time away from actually doing work. But hey, I'm not going to complain about THAT! :) > >I spik Eeeenglish very gooood, I leeearn it from a boooook. > > Ser ar' efen better exampls of Dshermen English ;-) Ja, I vill mek you spik in my langvage! ;) In actual fact, not that you can tell from my e-mail address, I am actually British. I'm just working over here - and you'll know exactly the term - as a praktikant. So I'm a student who actually gets paid, but then I also have to do work as well. Nothing for nothing in this life. :o > >For anyone who hasn't seen "Fawlty Towers", don't think the above > sentence > >was being cruel. It was a British comedy series from the '70s which > was > >hilariously funny - with John Cleese (of Monty Python fame). > > I saw it once or twice but I bet it lost much in the German dubbing... I don't know, there was a fair bit of visual comedy in it too... > >I think he means that you're checking for bad code and converting it > into > >good code. Bad code being code which takes 5 instructions to achieve > the > >same as one or two instructions could do. > >But that's just a guess. :) > > You describe exactly peephole optimisation, which is no problem in > dynamic recompilation. Of course. Although you'd have to optimise quickly - you don't want to take too long in optimising or else there's no point... > What I meant is that global optimisation or something similar, which > traditionally operates on tree structures isn't that useful for > dynarecs. But could be quite useful in dynamic compilation. But that isn't for this group, so I won't go there. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 9 23:57:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA10283 for dynarec-outgoing; Thu, 9 Mar 2000 23:57:02 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C8A705.B1842499@est.fib.upc.es> Date: Fri, 10 Mar 2000 08:40:55 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > > What I meant is the case like in Neil's code where he already includes > a direct jump even when the block isn't generated yet. You have the > same with intra-page jumps, but it might occur on inter-page jumps too. > Either you'll have to check the PageMap in these cases as well or > return to the dispatcher. > No. Every time you find a reference (a jump) to an address the TransMap for this page is created, so even if the block hasn't been generated yet you can do the same test than for translated blocks. > > >> I think this cannot be added to the existing structures, no matter > if > >> we are using a TransMap or aTLB. There has to be some other way... > Does > >> anyone know how the Java mark-and-sweep GC works? > >I don't it's something interestiong? > > I'm not sure what you mean, but I was just wondering if the garbage > collection mechanism of Java could be of use for us. But given the fact > how many useful things I found in a JVM yet I don't think so. I guess > we can come up with a better solution for our needs anyway. > I don't know how Java really works so I can't help you. > > >This is my idea, track system calls and traps to know when code is > loaded and > >erased. > > That will be hard though. First of all you need to find out which > system call does this and it hopefully works for dynamic libs as well. > And this doesn't work with dynamically generated code, but who does > this anyway? ;-) > Further study about this someday ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 00:08:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA10315 for dynarec-outgoing; Fri, 10 Mar 2000 00:08:53 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C8A9D0.B9B2C839@est.fib.upc.es> Date: Fri, 10 Mar 2000 08:52:48 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: <38C8A550.69678D4F@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Griffiths wrote: > > > > You describe exactly peephole optimisation, which is no problem in > > dynamic recompilation. > > Of course. Although you'd have to optimise quickly - you don't want to take > too long in optimising or else there's no point... > As Neil (Bradley) says this is related to what kind of emulator you are doing. Sometimes will be useful do more optimizations and sometimes less. > > > What I meant is that global optimisation or something similar, which > > traditionally operates on tree structures isn't that useful for > > dynarecs. > > But could be quite useful in dynamic compilation. But that isn't for this > group, so I won't go there. :) > Are you talking about that old emulation techniques discussion? I think this group is for anything related to dynamic or static compilation or recompilation. Althought his name and main purpose of talk about dynarec anything about emulation is welcome here ;) (Neil could say if I'm right or not, he is the boss) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 00:19:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA10348 for dynarec-outgoing; Fri, 10 Mar 2000 00:19:51 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C8AB1C.1E21296@eurocopter.de> Date: Fri, 10 Mar 2000 08:58:20 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: <38C8A705.B1842499@est.fib.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > I'm not sure what you mean, but I was just wondering if the garbage > > collection mechanism of Java could be of use for us. But given the fact > > how many useful things I found in a JVM yet I don't think so. I guess > > we can come up with a better solution for our needs anyway. > > I don't know how Java really works so I can't help you. But I did some research on the internal workings of Java and it's JVM last year - and garbage collection is slow. Hopefully you won't have to do that! If you do, it'll be very slow. At least... it will be if you do it in the same way. The thing about JVM is it's JIT - or dynamic compilation. I'm not entirely sure why garbage collection was included at all - except for when a process in the JVM ends... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 00:27:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA10373 for dynarec-outgoing; Fri, 10 Mar 2000 00:27:42 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C8AD88.A2240F26@eurocopter.de> Date: Fri, 10 Mar 2000 09:08:40 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: <38C8A550.69678D4F@eurocopter.de> <38C8A9D0.B9B2C839@est.fib.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Of course. Although you'd have to optimise quickly - you don't want to take > > too long in optimising or else there's no point... > > As Neil (Bradley) says this is related to what kind of emulator you are doing. > Sometimes will be useful do more optimizations and sometimes less. Of course. But I haven't yet tried to emulate anything that would require amazing optimisations. I don't know, if one day I decide to emulate the Dreamcast, maybe... :)) > > But could be quite useful in dynamic compilation. But that isn't for this > > group, so I won't go there. :) > > Are you talking about that old emulation techniques discussion? I think this > group is for anything related to dynamic or static compilation or > recompilation. Althought his name and main purpose of talk about dynarec > anything about emulation is welcome here ;) (Neil could say if I'm right or > not, he is the boss) I'm currently looking into the benefits and disadvantages to various types of compilation. Dynamic compilation should be the fastest of any dynamic-style translation (so faster than recompilation - and hopefully faster than interpretation!). The downside is that it doesn't handle self-modifying code - that's what recompilation is for. But dynamic compilation should be great for arcade emulation - I don't know of an arcade game that uses self-modifying code. They may well exist, I've just not come across one. Anyway, it's something I'm researching at the moment. I will be doing some implementation at some point soon as well... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 00:37:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA10395 for dynarec-outgoing; Fri, 10 Mar 2000 00:37:04 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003100824.JAA00999@pons.ac.upc.es> Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <38C8AD88.A2240F26@eurocopter.de> from Neil Griffiths at "Mar 10, 2000 09:08:40 am" To: dynarec@synthcom.com Date: Fri, 10 Mar 2000 09:24:21 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Of course. But I haven't yet tried to emulate anything that would require > amazing optimisations. I don't know, if one day I decide to emulate the > Dreamcast, maybe... :)) > I think this will happen more soon than you think :) > I'm currently looking into the benefits and disadvantages to various types > of compilation. Dynamic compilation should be the fastest of any > dynamic-style translation (so faster than recompilation - and hopefully > faster than interpretation!). The downside is that it doesn't handle > self-modifying code - that's what recompilation is for. But dynamic > compilation should be great for arcade emulation - I don't know of an > arcade game that uses self-modifying code. They may well exist, I've just > not come across one. In fact what we are talking about here is about dynamic compilation. I think dynamic recompilation is the same as dynamic compilation with an algorithm for detect self-modifying code and modify the translation. And there isn't so many self-modifying code in the machines that are being emulated nowadays. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 04:51:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA11028 for dynarec-outgoing; Fri, 10 Mar 2000 04:51:33 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Fri, 10 Mar 2000 13:08:39 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Thanks! It's yet another mailing list to clog up my inbox and take time >away from actually doing work. But hey, I'm not going to complain about >THAT! :) I think the worst mail I ever subscribed to was SWRPG, I got about a hundred mails per day... >In actual fact, not that you can tell from my e-mail address, I am actually >British. It was the first time that I forgot to take a look at the email address... >I'm just working over here - and you'll know exactly the term - as >a praktikant. So I'm a student who actually gets paid, but then I also have >to do work as well. Nothing for nothing in this life. :o I work as a "Werkstudent", so the only difference between us too is that you have to work more and get less money for it ;-) Otherwise there isn't that much difference and we both have to do the dirty work... >Of course. Although you'd have to optimise quickly - you don't want to take >too long in optimising or else there's no point... Indeed. There is no benefit from optimised code when you spend ages optimising it only to notice that the code is executed just once. >But could be quite useful in dynamic compilation. But that isn't for this >group, so I won't go there. :) Why not? We just do some brainstorming about various techniques. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 04:51:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA11035 for dynarec-outgoing; Fri, 10 Mar 2000 04:51:34 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Fri, 10 Mar 2000 13:15:49 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No. Every time you find a reference (a jump) to an address the TransMap for >this page is created, so even if the block hasn't been generated yet you can do >the same test than for translated blocks. Ah, ok then you're right that you only have to test the TransMap entry. Haven't thought about that yet, but since you'll need to translate that block in the future anyway there is no reason why the TransMap page shouldn't be created earlier. >I don't know how Java really works so I can't help you. At first I was very fond of the Java idea, but now I find more and more design flaws. And about 90% of it's use today is for scroll text on the web, which is more nuisance than real use. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 04:51:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA11044 for dynarec-outgoing; Fri, 10 Mar 2000 04:51:43 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Fri, 10 Mar 2000 13:26:56 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yeah, the approach of "Well, if it's too slow now, we'll release it in a >few months" philosophy is always good. ;) I think they call it "really soon now" (RSN) and mean a few months. This is one of the cases where I think that I must have a different understanding of the semantics of these words than native speakers... >AFAIK there is no seperate VRAM - it's shared. So in fact, Neil is right. >Unless I'm wrong (which I doubt), in which case so is he. :) First of all it was Victor who mentioned FF8... And as far as I know RAM and VRAM are really separate in the PS. It even has a separate sound buffer! N64 has a combined memory of 4MB (plus 0.5MB parity). >But I did some research on the internal workings of Java and it's JVM last >year - and garbage collection is slow. Hopefully you won't have to do that! >If you do, it'll be very slow. At least... it will be if you do it in the >same way. That's what I thought. As far as I know it will also do GC when the application is idle, which is hard to determine for an emulator. I guess the best solution would be really to take Victor's paged TransMap approach and try to track down when the OS replaces the pages. >The thing about JVM is it's JIT - or dynamic compilation. I'm not entirely >sure why garbage collection was included at all - except for when a process >in the JVM ends... First of all I think it's kind of a joke that Sun tells us the JVM was designed with dynamic compilation in mind, because otherwise they would have introduced a bytecode to mark the beginning of a baisc block. This makes the compilers slow because they have to trace the jumps first. In my opinion JIT has to be pronounced as "shit" anyway... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 05:37:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA11161 for dynarec-outgoing; Fri, 10 Mar 2000 05:37:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C8F5DC.A1064E1B@eurocopter.de> Date: Fri, 10 Mar 2000 14:17:16 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >In actual fact, not that you can tell from my e-mail address, I am > actually > >British. > > It was the first time that I forgot to take a look at the email > address... I don't actually look, usually, unless I'm not sure... > >I'm just working over here - and you'll know exactly the term - as > >a praktikant. So I'm a student who actually gets paid, but then I also > have > >to do work as well. Nothing for nothing in this life. :o > > I work as a "Werkstudent", so the only difference between us too is > that you have to work more and get less money for it ;-) > Otherwise there isn't that much difference and we both have to do the > dirty work... Heh, hell yeah. I don't know about the money, though - apparently my pay is really high for a student. Do you get over 3000DM/month - because if not, you aren't being paid more than me. :) And if you are, then I'm going to cry. ;) And as for dirty work, I don't believe you get any dirtier than programming in... *shudder* ADA. Which is what I have to program in. Ada 83, in fact. Which takes all the good points of OOP and removes them. Then replaces them with lots of bad points. Like... well, you don't write a class from which you can create lots of objects. You write an object. You can only create one instance of a package (equiv. to class) which is why I say you write an object. It's... yuk. :-/ > >Of course. Although you'd have to optimise quickly - you don't want to > >take too long in optimising or else there's no point... > > Indeed. There is no benefit from optimised code when you spend ages > optimising it only to notice that the code is executed just once. Especially. For this purpose, I've been thinking that I would create a struct for my pointers - or page tables. One variable to tell me where the recompiled code is - and another variable to tell me how many times I've gone through that loop - the higher it is, the more I'll optimise it. I suppose it might be a good idea to add another variable that tells me how many times I've recompiled that block of code. If it's quite high then there's no point optimising as it's quite likely it will be recompiled again. Just a couple of ideas. No idea how good they'd be in practice... > >But could be quite useful in dynamic compilation. But that isn't for > this > >group, so I won't go there. :) > > Why not? We just do some brainstorming about various techniques. Well seeing as dynamic compilation is the same as dynamic recompilation - except you don't ever recompile the code (which is why you can't use self-modifying code) - it would make sense to optimise more. You're not going to recompile anything, so the optimisations - although time consuming the first time around - would be more useful. This is, of course, IMHO. :) By the way, would you agree with these lists of techniques - and can you think of any more to add? - Interpretation - Static compilation - Static recompilation - Dynamic compilation - Dynamic recompilation I've been thinking that in terms of speed, the best ones would be (from best to worst): - Static compilation - Dynamic compilation - Static recompilation - Dynamic recompilation - Interpretation Now, the thing about that is that this is theoretical. It's possible to write an interpreter that's faster than dynamic recompilation - and possibly faster than dynamic compilation too. However... it would be a difficult job to achieve - and it would probably only be fast on a couple of programs and not generally (which is why I placed it at the bottom). They can all move. A dynamic recompiler may well be faster than static recompilation. I was intending to write a text file about all the different methods, but I've a feeling that time is against me. But hey - who knows? :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 05:43:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA11177 for dynarec-outgoing; Fri, 10 Mar 2000 05:43:33 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Fri, 10 Mar 2000 14:28:40 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I'm currently looking into the benefits and disadvantages to various types >of compilation. Dynamic compilation should be the fastest of any >dynamic-style translation (so faster than recompilation - and hopefully >faster than interpretation!). The downside is that it doesn't handle >self-modifying code - that's what recompilation is for. But dynamic >compilation should be great for arcade emulation - I don't know of an >arcade game that uses self-modifying code. They may well exist, I've just >not come across one. >Anyway, it's something I'm researching at the moment. I will be doing some >implementation at some point soon as well... OK, now we are onto terms... BTW, this is something you could do in your work as well, Victor: specify terms. I have to admit that the following is my interpretation of terms I met many who had a different picture: First, I think the term "recompilation" is wrong. It reminds me of a reassembler, which isn't that much different from a disassembler, and we certainly don't do any decompilation here. Even "compilation" is the wrong term since this is related with high-level languages and we are surely at the lowest possible level. A more precise term would be "binary translation", because that's what we do: translate one binary code into another binary code. Then we have the difference between "dynamic" and "static": IMHO dynamic binary translation means that the program is translated during runtime. You could also talk of just-in-time, on-the-fly, on- demand, whatsoever bintrans. Static bintrans on the other hand means that the code is translated prior to runtime, which doesn't neccessarily mean that an executable file has to be produced. But that's up to discussion since most people think it's only static when they can see the executable. So what you're talking about is static binary translation, as you want to translate the whole code in a ROM before you run the game, at least that's what I understood. There is even another way to characterize different approaches, which is the way how the code generation works: Either you generate instruction per instruction with code emitters - this is what Neil does, and which could be called dynamic code generation. Or you have pre-assembled code seqences for each emulated instruction which are just copied and patched to work with the right values, which sounds like static code generation to me. So we could have the following table: Approach BinTrans CodeGen ------------------------- Neil dynamic dynamic NEStra dynamic static FX!32 static dynamic Corn? static static BTW, I'm not sure about Corn, but they claim to use static recompilation and most N64 emulators seem to use static code generation. I guess now we have enough material to discuss about ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 06:09:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA11259 for dynarec-outgoing; Fri, 10 Mar 2000 06:09:11 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C8FD04.F2C831F9@eurocopter.de> Date: Fri, 10 Mar 2000 14:47:48 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Anyway, it's something I'm researching at the moment. I will be doing > > some implementation at some point soon as well... > > OK, now we are onto terms... > BTW, this is something you could do in your work as well, Victor: > specify terms. > I have to admit that the following is my interpretation of terms I met > many who had a different picture: > > First, I think the term "recompilation" is wrong. It reminds me of a > reassembler, which isn't that much different from a disassembler, and > we certainly don't do any decompilation here. Even "compilation" is the > wrong term since this is related with high-level languages and we are > surely at the lowest possible level. > A more precise term would be "binary translation", because that's what > we do: translate one binary code into another binary code. That's fair enough. But what do you call dynamic compilation? That also performs binary translation - but it just does it once. And, for that matter, so do static compilation and recompilation. They translate binary code from one CPU to another. > Then we have the difference between "dynamic" and "static": > IMHO dynamic binary translation means that the program is translated > during runtime. You could also talk of just-in-time, on-the-fly, on- > demand, whatsoever bintrans. > Static bintrans on the other hand means that the code is translated > prior to runtime, which doesn't neccessarily mean that an executable > file has to be produced. But that's up to discussion since most people > think it's only static when they can see the executable. I'd agree with this - except that static recompilation is a little different. You see, the static part comes from compiling the code at startup. But the recompilation parts happen at run-time. At least... that's certainly my understanding of it. > So what you're talking about is static binary translation, as you want > to translate the whole code in a ROM before you run the game, at least > that's what I understood. What I call static compilation - yes. > There is even another way to characterize different approaches, which > is the way how the code generation works: > Either you generate instruction per instruction with code emitters - > this is what Neil does, and which could be called dynamic code > generation. > Or you have pre-assembled code seqences for each emulated instruction > which are just copied and patched to work with the right values, which > sounds like static code generation to me. You could use both methods in real time or in static. > So we could have the following table: > > Approach BinTrans CodeGen > ------------------------- > Neil dynamic dynamic > NEStra dynamic static > FX!32 static dynamic > Corn? static static > > BTW, I'm not sure about Corn, but they claim to use static > recompilation and most N64 emulators seem to use static code > generation. I wasn't sure either and have been discussing the same thing. Conclusion? It's static compilation (and NOT recompilation). Why? Because it runs so few games. :) > I guess now we have enough material to discuss about ;-) I hope so. See? I join a group and automatically launch what could be a huuuuge discussion! :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 06:12:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA11273 for dynarec-outgoing; Fri, 10 Mar 2000 06:12:18 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Fri, 10 Mar 2000 14:57:31 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I don't actually look, usually, unless I'm not sure... Sometimes it's quite interesting. One day I got a mail by someone from IBM, but he didn't contacted me anymore when I told him that all he wanted to do (a recompiling MIPS simulator) had already been done in Embra... >Heh, hell yeah. I don't know about the money, though - apparently my pay is >really high for a student. Do you get over 3000DM/month - because if not, >you aren't being paid more than me. :) Hey, not bad for a Praktikant! Actually I get less money because I don't work that much. >And as for dirty work, I don't believe you get any dirtier than programming >in... *shudder* ADA. Which is what I have to program in. Ada 83, in fact. >Which takes all the good points of OOP and removes them. Then replaces them >with lots of bad points. Like... well, you don't write a class from which >you can create lots of objects. You write an object. You can only create >one instance of a package (equiv. to class) which is why I say you write an >object. >It's... yuk. :-/ I don't know much about Ada, but I'm not a fan of it as well. Ada compilers must be monsters because they have to check so much. And there still have to be done many checks during execution so the programs are likely to be monsters as well. >Especially. For this purpose, I've been thinking that I would create a >struct for my pointers - or page tables. One variable to tell me where the >recompiled code is - and another variable to tell me how many times I've >gone through that loop - the higher it is, the more I'll optimise it. I >suppose it might be a good idea to add another variable that tells me how >many times I've recompiled that block of code. If it's quite high then >there's no point optimising as it's quite likely it will be recompiled >again. What you describe is normally referred to as "profiling". Sun does that in HotSpot and the x86-to-Alpha-translator FX!32 does it as well. But they do it while interpreting the code, then the JVM starts the JIT compiler and FX!32 runs the binary translator after runtime. I'm not sure if someone has done it with a pure dynarec yet, but it should be possible. >Well seeing as dynamic compilation is the same as dynamic recompilation - >except you don't ever recompile the code (which is why you can't use >self-modifying code) - it would make sense to optimise more. You're not >going to recompile anything, so the optimisations - although time consuming >the first time around - would be more useful. This is, of course, IMHO. :) Ah, this is your interpretation of dynamic compilation and recompilation. I think the more common one is that recompilation is already the first translation, no matter if you're able to handle self- modifying code. >By the way, would you agree with these lists of techniques - and can you >think of any more to add? >- Interpretation >- Static compilation >- Static recompilation >- Dynamic compilation >- Dynamic recompilation I think I'll have to add another feature to my characterization: copes with self-modifying code. But to your question: there is another approach called "decode caching". You don't translate the code, but store pointers to the interpretive routines while analysing the block. Possible optimisations would be to precalculate literals and use direct memory references to the simulated registers instead of the register numbers. When a cached block is encountered you simply go through the decode information and use the stored address as a function pointer with the register addresses and literals as arguments. It should be slightly faster than interpretation and more portable than recompilation since you can use high-level language for the routines. Otherwise it's much slower than a well done recompiler. >I've been thinking that in terms of speed, the best ones would be (from >best to worst): >- Static compilation >- Dynamic compilation >- Static recompilation >- Dynamic recompilation >- Interpretation >Now, the thing about that is that this is theoretical. It's possible to >write an interpreter that's faster than dynamic recompilation - and >possibly faster than dynamic compilation too. However... it would be a >difficult job to achieve - and it would probably only be fast on a couple >of programs and not generally (which is why I placed it at the bottom). >They can all move. A dynamic recompiler may well be faster than static >recompilation. I'm not sure if it's possible at all to build such a hirarchy since it largely depends on the involved machines, techniques and tricks used, and of course how well it is programmed. >I was intending to write a text file about all the different methods, but >I've a feeling that time is against me. But hey - who knows? :o That would be interesting indeed! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 06:36:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA11345 for dynarec-outgoing; Fri, 10 Mar 2000 06:36:13 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C9038C.95BDAC87@eurocopter.de> Date: Fri, 10 Mar 2000 15:15:40 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Heh, hell yeah. I don't know about the money, though - apparently my > >pay is really high for a student. Do you get over 3000DM/month - > >because if not, you aren't being paid more than me. :) > > Hey, not bad for a Praktikant! Actually I get less money because I > don't work that much. I've been told that it's really good for a praktikant - but I don't know what's normal. Whatever, I don't see all of that. They take about 600DM off me - that's 200 pounds - or 300 dollars - all just for tax! However cheap Germany may be, the tax is very high... > I don't know much about Ada, but I'm not a fan of it as well. Ada > compilers must be monsters because they have to check so much. And > there still have to be done many checks during execution so the > programs are likely to be monsters as well. I work for a military company, so using Ada is a good idea (especially when what I'm checking could make the difference between people living and dying)... But as a language, I hate it. > What you describe is normally referred to as "profiling". Sun does that > in HotSpot and the x86-to-Alpha-translator FX!32 does it as well. But > they do it while interpreting the code, then the JVM starts the JIT > compiler and FX!32 runs the binary translator after runtime. > I'm not sure if someone has done it with a pure dynarec yet, but it > should be possible. Ooh, and there's me thinking I've come up with a new technique. :) > Ah, this is your interpretation of dynamic compilation and > recompilation. I think the more common one is that recompilation is > already the first translation, no matter if you're able to handle self- > modifying code. It makes more sense to think in my terms. Compilation is static by nature - if you want to change something, you have to go to the start and recompile the whole thing. Recompilation can change different parts without affecting the rest. Having a definitive definition would be good - that's why it might be a good idea to write a text file. Then everyone uses my terms. :)) > >By the way, would you agree with these lists of techniques - and can > you > >think of any more to add? > >- Interpretation > >- Static compilation > >- Static recompilation > >- Dynamic compilation > >- Dynamic recompilation > > I think I'll have to add another feature to my characterization: copes > with self-modifying code. Anything that recompiles can (or should be able to!) cope with self-modifying code. > But to your question: there is another approach called "decode > caching". You don't translate the code, but store pointers to the > interpretive routines while analysing the block. Possible optimisations > would be to precalculate literals and use direct memory references to > the simulated registers instead of the register numbers. > When a cached block is encountered you simply go through the decode > information and use the stored address as a function pointer with the > register addresses and literals as arguments. > It should be slightly faster than interpretation and more portable than > recompilation since you can use high-level language for the routines. > Otherwise it's much slower than a well done recompiler. I haven't heard of this technique before, but it sounds interesting... > I'm not sure if it's possible at all to build such a hirarchy since it > largely depends on the involved machines, techniques and tricks used, > and of course how well it is programmed. Of course. You can only talk about theoretical. In theory, my table should be correct. In practice it may not be. > >I was intending to write a text file about all the different methods, > but > >I've a feeling that time is against me. But hey - who knows? :o > > That would be interesting indeed! If only because people can use my terms. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 06:56:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA11411 for dynarec-outgoing; Fri, 10 Mar 2000 06:56:08 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Fri, 10 Mar 2000 15:41:14 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >That's fair enough. But what do you call dynamic compilation? That also >performs binary translation - but it just does it once. And, for that >matter, so do static compilation and recompilation. They translate binary >code from one CPU to another. I think dynamic compilation is as problematic as dynamic recompilation since it doesn't involve compilation, and therefore is more or less consusing. I'm not sure if we can describe the whole approach by a two word term. Eg. the language Prolog normally uses a left-to-right depth-first resolution. If it would operate differently programs would show different behaviour and you'd have to make that clear. Maybe Neil B comes up with a good term, he seems to know lot's of nice terms like "depth traversal" ;-) BTW, do you two Neils have any nicknames? Otherwise I'd have to use Neil B and Neil G, which looks like I was talking about the "Spice Boys" ;-) >I'd agree with this - except that static recompilation is a little >different. You see, the static part comes from compiling the code at >startup. But the recompilation parts happen at run-time. At least... that's >certainly my understanding of it. I have to admit that this indeed is a possible interpretation of recompilation, but not the common one, which shows that the term is too ambigious to be useful. The only reason why I talk of dynamic recompilation is that this is the term which is normally used. And it's easier to write dynarec and dynbintrans ;-) >What I call static compilation - yes. That means the code is translated once and is never recompiled. Hey, you're right, since "to recompile" also means that you compile a program again it's really confusing! >I wasn't sure either and have been discussing the same thing. Conclusion? >It's static compilation (and NOT recompilation). Why? Because it runs so >few games. :) Let's say it's a hack ;-) But it runs Mario64 rather nice now and UltraHLE is a hack as well... >I hope so. See? I join a group and automatically launch what could be a >huuuuge discussion! :)) That's the positive thing about this list, we're realtive few people with decend knowledge and therefore can have really productive discussions. OK, let's see how many different features a binary translator can have: * on-demand vs. at-once translation Well, there are tiny little stages between these two, because the translated blocks can vary in size denpending if you interpret on unconditional or all jumps as block terminator. Also FX!32 - though static - does only translate those "translation units" for which it has profiling information. * code generation vs. instruction templates * self-modifying code aware vs. one-time translation * memory cached code vs. file stored code Now we only have to combine these features and have to find a nice term for each combination ;-) Now for something completely different... Just for interest: In which part of Germany do you work? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 07:14:00 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA11465 for dynarec-outgoing; Fri, 10 Mar 2000 07:14:00 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Fri, 10 Mar 2000 15:59:24 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I've been told that it's really good for a praktikant - but I don't know >what's normal. I think it's quite good. I got about the same when I worked full-time as a Werkstudent. >Whatever, I don't see all of that. They take about 600DM off >me - that's 200 pounds - or 300 dollars - all just for tax! However cheap >Germany may be, the tax is very high... Yeah, tell me about it... >I work for a military company, Let me guess: It has something to do with helicopters? >so using Ada is a good idea (especially when >what I'm checking could make the difference between people living and >dying)... Sometimes there is need for a safe language, true. >But as a language, I hate it. I haven't programmed in Ada so I cannot say I hate it but I know that it is sometimes a bit strange. >Ooh, and there's me thinking I've come up with a new technique. :) Yeah, there is always someone who is faster. But shouldn't keep you from trying to do it better than they have ;-) >It makes more sense to think in my terms. Compilation is static by nature - >if you want to change something, you have to go to the start and recompile >the whole thing. Recompilation can change different parts without affecting >the rest. This almost means that dynamic compilation is an oxymoron ;-) But there are indeed some compilers which work with dynamic compilation. There are the approaches by Dawson Engler DCG (Dynamic Code Generation) and VCODE, and I think there are also the Self compilers, although I didn't find much information on these. I'll have to check if Impact belongs to the same group. >Having a definitive definition would be good - that's why it might be a >good idea to write a text file. Then everyone uses my terms. :)) It would be nice to have standard terms, but I doubt that many people would care about these :-( >Anything that recompiles can (or should be able to!) cope with >self-modifying code. With your interpretation of recompilation, of course. [decode caching] >I haven't heard of this technique before, but it sounds interesting... Neither did I, till one guy I know told me about it. He works for ARM and wrote a document about it as they might be using this method in their official ARMulator. But he couldn't tell me much more about it since of a NDA... >Of course. You can only talk about theoretical. In theory, my table should >be correct. In practice it may not be. Agreed. >If only because people can use my terms. ;) I hope you'll include also some useful information ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 07:21:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA11482 for dynarec-outgoing; Fri, 10 Mar 2000 07:21:34 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C90E90.D7773921@eurocopter.de> Date: Fri, 10 Mar 2000 16:02:40 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I think dynamic compilation is as problematic as dynamic recompilation > since it doesn't involve compilation, and therefore is more or less > consusing. Er... yes, it does. It definitely involves compiling. As it compiles from one CPU to another. I do agree that the terms are confusing however... > I'm not sure if we can describe the whole approach by a two word term. > Eg. the language Prolog normally uses a left-to-right depth-first > resolution. If it would operate differently programs would show > different behaviour and you'd have to make that clear. > Maybe Neil B comes up with a good term, he seems to know lot's of nice > terms like "depth traversal" ;-) He just grabs a dictionary and picks out two words that sound cool. ;) > BTW, do you two Neils have any nicknames? Otherwise I'd have to use > Neil B and Neil G, which looks like I was talking about the "Spice > Boys" ;-) Damn! You've found out our plan! ;p I would guess that NB and NG would be a start. It's less to type as well. :) Lots of Neil's in the emu world. Neil Bradley, Neill (okay, not spelt the same!) Corlett and... me! :o > >I'd agree with this - except that static recompilation is a little > >different. You see, the static part comes from compiling the code at > >startup. But the recompilation parts happen at run-time. At least... > that's > >certainly my understanding of it. > > I have to admit that this indeed is a possible interpretation of > recompilation, but not the common one, which shows that the term is too > ambigious to be useful. > The only reason why I talk of dynamic recompilation is that this is the > term which is normally used. And it's easier to write dynarec and > dynbintrans ;-) Well, we'll have to come up with some new words then. We could confuse the matter and use acronyms that already exist like SMTP: Simple Method of Transferring Programs (from one CPU to another). :)) We do need to define the methods. I was here thinking my definition was the more commonly accepted one. :o > >What I call static compilation - yes. > > That means the code is translated once and is never recompiled. > Hey, you're right, since "to recompile" also means that you compile a > program again it's really confusing! That's right. That's why I thought my definitions were correct! > >I wasn't sure either and have been discussing the same thing. > Conclusion? > >It's static compilation (and NOT recompilation). Why? Because it runs > so > >few games. :) > > Let's say it's a hack ;-) > But it runs Mario64 rather nice now and UltraHLE is a hack as well... I haven't tried it, actually - N64 emulation isn't my thing. I prefer arcade games. But I will give it a try - just to see how well they've managed it! :) > >I hope so. See? I join a group and automatically launch what could be > a > >huuuuge discussion! :)) > > That's the positive thing about this list, we're realtive few people > with decend knowledge and therefore can have really productive > discussions. Decent knowledge. Heh, that's what YOU think. Wait a while and then you'll see that I know nothing! ;) > OK, let's see how many different features a binary translator can have: > > * on-demand vs. at-once translation > Well, there are tiny little stages between these two, because the > translated blocks can vary in size denpending if you interpret on > unconditional or all jumps as block terminator. Also FX!32 - though > static - does only translate those "translation units" for which it has > profiling information. What *is* FX!32 anyway? I don't think I've heard of it before - or is it something not yet released? > * code generation vs. instruction templates > > * self-modifying code aware vs. one-time translation > > * memory cached code vs. file stored code > > Now we only have to combine these features and have to find a nice term > for each combination ;-) We could be plain nasty and call each "Method #1", "Method #2" and so on... :)) > Now for something completely different... > Just for interest: In which part of Germany do you work? Muenchen. Or, for non Germans - Munich. I'm working for Eurocopter - a military company which writes the software for automation of helicopters and their intrinsic machinery. I'm working specifically on the networking part of the Tiger helicopter - the Tiger being Europe's answer to the Apache. How about yourself? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 09:09:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA11810 for dynarec-outgoing; Fri, 10 Mar 2000 09:09:14 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Fri, 10 Mar 2000 17:53:16 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Er... yes, it does. It definitely involves compiling. As it compiles from >one CPU to another. I do agree that the terms are confusing however... But then it sounds is if you decompile a program to a high-level language to recompile it on the second platform... >He just grabs a dictionary and picks out two words that sound cool. ;) He claims that "depth traversal" is from some compiler book. But I believe taht some bands produce their lyrics that way ;-) >Damn! You've found out our plan! ;p Hehe, well with Neil you'd actually have a real musician at least ;-) >I would guess that NB and NG would be a start. I hope we don't have to use these acronyms for other topics ;-) >Lots of Neil's in the emu world. Neil Bradley, Neill (okay, not spelt the >same!) Corlett and... me! :o I think there are even more Davids but that name is generally more common than Neil I guess. >Well, we'll have to come up with some new words then. We could confuse the >matter and use acronyms that already exist like SMTP: Simple Method of >Transferring Programs (from one CPU to another). :)) Or BOOT: Binary Object-code On-demand Translator ;-) >We do need to define the methods. I was here thinking my definition was the >more commonly accepted one. :o I might be wrong but I got the picture that dynamic recompilation doesn't have to involve regeneration of code in case of a self- modifying program. Also with dynamic compilation it's more likely that you mean a compiler which compiles programs in such a way that some routines are generated during runtime because these might run much faster when you know some of the parameters and can work with more constants. But this has nothing to do with binary translation. >That's right. That's why I thought my definitions were correct! I think I noticed once that you call a binary translator a recompiler and also recompile high-level programs, but I already had a clear picture about the topic and only said that the term isn't perfect. I didn't think that this wrong term could also lead to a (partly) wrong understanding of the method. But you're perfectly right that it's possible to interpret it that way. The only problem is that most others have a different interpretation. I wonder who came up with the term dynamic recompilation anyway. The older commercial or university projects use the term binary translation. Maybe it's due to the so often quoted Ardi whitepaper about Executor, which is more confusing than helpful. >I haven't tried it, actually - N64 emulation isn't my thing. I prefer >arcade games. But I will give it a try - just to see how well they've >managed it! :) With my Voodoo Banshee I get no graphics glitches, but I have some with UltraHLE and Nemu64. And the sound might not be perfect, but it works. The only problem is that there won't be much apart from Mario64 that works. >Decent knowledge. Heh, that's what YOU think. Wait a while and then you'll >see that I know nothing! ;) Don't we all? ;-) Actually Victor and I are mainly theoreticians with the only difference that he started about 2 months ago and I'm insterested in the topic for over one and a half years now. Neil didn't care much about the theories and started on his own, so he wasn't less spoiled by some of the common but necessarily helpful ideas. If you're interested, I collected a page about almost any information on this topic on the web. I don't think anymore that everything is that useful, especially the source codes, but I might want to take a look: http://www.cybervillage.co.uk/acorn/emulation/dynrcomp.htm >What *is* FX!32 anyway? I don't think I've heard of it before - or is it >something not yet released? It's a commercial tool originally developed by Digital Equipment (RIP), which should help to have more software for WinNT on the Alpha platform. When it encounters a new x86 NT application the program is interpreted and profiling information gathered. After you've left the application the binary translator uses the profiling info to produce optimised Alpha code and stores it in a database. When you start the program again those parts you visited before should run much faster because FX!32 just loads the translation units (a bit larger than basic blocks to be able to perform global optimisation) from the database. You can find a link to the FX!32 whitepaper on the above page as well. >We could be plain nasty and call each "Method #1", "Method #2" and so on... >:)) Or we build a multi-dimensional feature matrix and then refer to the approaches as A3betaII ;-) >Muenchen. Or, for non Germans - Munich. I've been to Muenchen once but I didn't see much of the city because I mainly went there to see the Alan Parsons gig in the Philharmonie. >I'm working for Eurocopter - a >military company which writes the software for automation of helicopters >and their intrinsic machinery. I'm working specifically on the networking >part of the Tiger helicopter - the Tiger being Europe's answer to the >Apache. Well, I guessed that from the name ;-) I haven't heard of the Tiger but I know the Apache of course. >How about yourself? I live in Erlangen, which is near to Nuernberg, or Nuremberg in the American spelling. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 09:43:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA11945 for dynarec-outgoing; Fri, 10 Mar 2000 09:43:49 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38C92FED.DDB63229@eurocopter.de> Date: Fri, 10 Mar 2000 18:25:01 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments References: Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Er... yes, it does. It definitely involves compiling. As it compiles > from > >one CPU to another. I do agree that the terms are confusing however... > > But then it sounds is if you decompile a program to a high-level > language to recompile it on the second platform... Hmm. I see what you're saying, but I guess it's a distinction between how we see things. I see compiling as converting from something that is unexecutable to become something executable. > >He just grabs a dictionary and picks out two words that sound cool. ;) > > He claims that "depth traversal" is from some compiler book. But I > believe taht some bands produce their lyrics that way ;-) What, by using a compiler book? ;) > >Damn! You've found out our plan! ;p > > Hehe, well with Neil you'd actually have a real musician at least ;-) True. And I'm a musician as well. I've even been asked to join a countries orchestra and everything. :) I didn't accept, though. Not enough time! :o > >I would guess that NB and NG would be a start. > > I hope we don't have to use these acronyms for other topics ;-) I don't know... We could refer to NBs method of recompilation as the "NB method" and my method(s) as the "NG method". It has a nice ring to it... ;) > >Lots of Neil's in the emu world. Neil Bradley, Neill (okay, not spelt > the > >same!) Corlett and... me! :o > > I think there are even more Davids but that name is generally more > common than Neil I guess. Are there? I guess I hadn't noticed. I'm thinking... yes, I think you're right. :) > >Well, we'll have to come up with some new words then. We could confuse > the > >matter and use acronyms that already exist like SMTP: Simple Method of > >Transferring Programs (from one CPU to another). :)) > > Or BOOT: Binary Object-code On-demand Translator ;-) I could try more, but I'm going home in a bit because my brain is dead. I reckon that a couple more of those would just about destroy my brain for the rest of today. :) > >We do need to define the methods. I was here thinking my definition > was the > >more commonly accepted one. :o > > I might be wrong but I got the picture that dynamic recompilation > doesn't have to involve regeneration of code in case of a self- > modifying program. I was definitely under the impression that recompilation was mainly for the use of anything that uses self-modification. You can also use it on things that don't self-modify - but you can use dynamic compilation on that too (which should be faster as you don't need to check to see if code has been modified). > Also with dynamic compilation it's more likely that you mean a compiler > which compiles programs in such a way that some routines are generated > during runtime because these might run much faster when you know some > of the parameters and can work with more constants. But this has > nothing to do with binary translation. No, that's to do with optimisation. > >That's right. That's why I thought my definitions were correct! > > I think I noticed once that you call a binary translator a recompiler > and also recompile high-level programs, but I already had a clear > picture about the topic and only said that the term isn't perfect. I > didn't think that this wrong term could also lead to a (partly) wrong > understanding of the method. But you're perfectly right that it's > possible to interpret it that way. The only problem is that most others > have a different interpretation. > I wonder who came up with the term dynamic recompilation anyway. The > older commercial or university projects use the term binary > translation. Maybe it's due to the so often quoted Ardi whitepaper > about Executor, which is more confusing than helpful. I'm not sure. I'm sure I've seen the term used before ARDI's Executor - but I can't remember where! :o > >I haven't tried it, actually - N64 emulation isn't my thing. I prefer > >arcade games. But I will give it a try - just to see how well they've > >managed it! :) > > With my Voodoo Banshee I get no graphics glitches, but I have some with > UltraHLE and Nemu64. And the sound might not be perfect, but it works. > The only problem is that there won't be much apart from Mario64 that > works. The only decent game I've seen for the N64 is Zelda64 (ignoring Mario64). I wouldn't really use one because the resolution annoys me too much - 192x256! And then they bi-linear filter it, so you effectively halve that resolution. If a PC game was brought out like that, it wouldn't sell. So because I don't like the console, I don't generally look at the emulators. Technically they're brilliant - but I'd prefer to look at the specs in this particular case. :) > >Decent knowledge. Heh, that's what YOU think. Wait a while and then > >you'll see that I know nothing! ;) > > Don't we all? ;-) > Actually Victor and I are mainly theoreticians with the only difference > that he started about 2 months ago and I'm insterested in the topic for > over one and a half years now. > Neil didn't care much about the theories and started on his own, so he > wasn't less spoiled by some of the common but necessarily helpful > ideas. I'm mainly into the theory - but I am starting to put something into practice soon. Possibly a dynamically compiling 68000 CPU core. I've got all the access to info about that processor that I need here (68000 series is a standard military CPU) so it's fine by me. And for arcade games, it seems the best solution. Who knows? :) > If you're interested, I collected a page about almost any information > on this topic on the web. I don't think anymore that everything is that > useful, especially the source codes, but I might want to take a look: > http://www.cybervillage.co.uk/acorn/emulation/dynrcomp.htm Could be useful - thanks! I can't check it at the moment (at work I have 1hr of Internet access a day - between 12 and 1pm), but I can check it when I get home. :) > >What *is* FX!32 anyway? I don't think I've heard of it before - or is > >it something not yet released? > > It's a commercial tool originally developed by Digital Equipment (RIP), > which should help to have more software for WinNT on the Alpha > platform. When it encounters a new x86 NT application the program is > interpreted and profiling information gathered. After you've left the > application the binary translator uses the profiling info to produce > optimised Alpha code and stores it in a database. When you start the > program again those parts you visited before should run much faster > because FX!32 just loads the translation units (a bit larger than basic > blocks to be able to perform global optimisation) from the database. > You can find a link to the FX!32 whitepaper on the above page as well. Ah, I know it now! I didn't know how it operated, though. It does sound very interesting. I definitely like to learn new techniques. It's just that I get tired of learning and I like to put things into practice. :) > >We could be plain nasty and call each "Method #1", "Method #2" and so > on... > >:)) > > Or we build a multi-dimensional feature matrix and then refer to the > approaches as A3betaII ;-) So long as we don't have people inside the Matrix called "Morpheus" or "Neo", we'll be sorted. :)) > >Muenchen. Or, for non Germans - Munich. > > I've been to Muenchen once but I didn't see much of the city because I > mainly went there to see the Alan Parsons gig in the Philharmonie. Ah, right! I know where that is... I think. I've only been here about 8-9 weeks now. Not long at all. And I spoke no German when I came out here either. I now speak... well, a fair bit. I can go shopping - or out - at least. Which is a good thing. Mind you, saying "Eine Maß bier" is always good. Apart from the fact that 1 litre of strong beer is quite a lot. :) > >I'm working for Eurocopter - a military company which writes the > >software for automation of helicopters and their intrinsic machinery. > >I'm working specifically on the networking part of the Tiger > >helicopter - the Tiger being Europe's answer to the Apache. > > Well, I guessed that from the name ;-) You guessed that I worked on the networking part of the Tiger just from the name? My god! ;) > I haven't heard of the Tiger but I know the Apache of course. The Tiger was used in the Gulf War - when it was fully machine operated. The project is finished in 2003, so not long to go. I finish in September anyway... > >How about yourself? > > I live in Erlangen, which is near to Nuernberg, or Nuremberg in the > American spelling. I know Nuernberg, I was there about 6 weeks ago. And it snowed. A lot. And then I came back to Munich - where there was even more snow! Nürnberg is not so far away. A couple of us went there with a Wochenende ticket because they're so cheap. :) Quite nice place. Especially the Pizza Hut. One of nicest pizzas I've had in ages. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 10 11:48:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA12479 for dynarec-outgoing; Fri, 10 Mar 2000 11:48:57 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Fri, 10 Mar 2000 20:33:08 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id LAA12476 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Hmm. I see what you're saying, but I guess it's a distinction between how >we see things. I see compiling as converting from something that is >unexecutable to become something executable. I guess now we need a dictionary to look up what compilation origianlly means, but I think doesn't help much. >What, by using a compiler book? ;) That could lead to better lyrics ;-) No, I mean picking a few words from a dictionary and the chorus line is ready... >True. And I'm a musician as well. I've even been asked to join a countries >orchestra and everything. :) Really? What kind of instrument(s) do you play? >I didn't accept, though. Not enough time! :o "Time", I think I've heard that word a while ago... >I don't know... We could refer to NBs method of recompilation as the "NB >method" and my method(s) as the "NG method". It has a nice ring to it... ;) Let's see what Neil B has to say about it ;-) >> Or BOOT: Binary Object-code On-demand Translator ;-) >I could try more, but I'm going home in a bit because my brain is dead. I >reckon that a couple more of those would just about destroy my brain for >the rest of today. :) In my case that wouldn't matter much ;-) >I was definitely under the impression that recompilation was mainly for the >use of anything that uses self-modification. You can also use it on things >that don't self-modify - but you can use dynamic compilation on that too >(which should be faster as you don't need to check to see if code has been >modified). Actually many dynarecs still don't test for changed code. >The only decent game I've seen for the N64 is Zelda64 (ignoring Mario64). I >wouldn't really use one because the resolution annoys me too much - >192x256! And then they bi-linear filter it, so you effectively halve that >resolution. If a PC game was brought out like that, it wouldn't sell. That's the nice thing with emulation, you don't have to run it in the original resolution ;-) >So because I don't like the console, I don't generally look at the >emulators. Technically they're brilliant - but I'd prefer to look at the >specs in this particular case. :) I'm not the console freak as well. I'm more interested in old computers. It's great to find out how an outdated operating system works. I'm mainly interested in console emulation because the emulation is very challenging and you can see all the dirty tricks at work. >I'm mainly into the theory - but I am starting to put something into >practice soon. Possibly a dynamically compiling 68000 CPU core. I've got >all the access to info about that processor that I need here (68000 series >is a standard military CPU) so it's fine by me. I didn't know that they prefer one of my favourite processors ;-) >And for arcade games, it >seems the best solution. Who knows? :) Do you already know which one you want to emulate? >Could be useful - thanks! I can't check it at the moment (at work I have >1hr of Internet access a day - between 12 and 1pm), but I can check it when >I get home. :) Uh, that's bad. I guess they want you to work instead... Well, at least email seems to work all of the time ;-) >> Or we build a multi-dimensional feature matrix and then refer to the >> approaches as A3betaII ;-) >So long as we don't have people inside the Matrix called "Morpheus" or >"Neo", we'll be sorted. :)) We just program or agents to be better than in the film ;-) >Ah, right! I know where that is... I think. I think it's somewhere near the Isar, but that's true for a lot of places in München... >I've only been here about 8-9 >weeks now. Not long at all. And I spoke no German when I came out here >either. I now speak... well, a fair bit. Not bad for such a short time, and German surely isn't that easy. >I can go shopping - or out - at >least. Which is a good thing. Mind you, saying "Eine Maß bier" is always >good. Apart from the fact that 1 litre of strong beer is quite a lot. :) Yeah, I know. But in Bavaria this is one of the essencial sentences ;-) BTW, NB thinks that their micro breweries have the best beer. Maybe you can convince him that the German beer is the best ;-) Another question, which part in Britain are you from? >You guessed that I worked on the networking part of the Tiger just from the >name? My god! ;) I'm great, am I? ;-) No, I guessed that it must be something with helicopters. >The Tiger was used in the Gulf War - when it was fully machine operated. >The project is finished in 2003, so not long to go. I finish in September >anyway... By then you'll be able to order "Zwo Maß Bier" ;-) >I know Nuernberg, I was there about 6 weeks ago. And it snowed. A lot. And >then I came back to Munich - where there was even more snow! Yeah, normally we have snow before and after Christmas but not on Christmas, so it was a big surprise this year that we even had snow then. >Nürnberg is >not so far away. A couple of us went there with a Wochenende ticket because >they're so cheap. :) Maybe, I don't go by train that often. >Quite nice place. Especially the Pizza Hut. One of nicest pizzas I've had >in ages. :) Well, if you are in Nuernberg you shouldn't eat a pizza at Pizza Hut but the great "Nuernberger Bratwuerste"! And Bamberg is even nicer. There they have a very good beer: Schlenkerla smoke beer. Note for the others in the list: I'm sorry that we got a bit off topic... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 08:46:00 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA17982 for dynarec-outgoing; Sat, 11 Mar 2000 08:46:00 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <001001bf8b76$6ea3e5e0$80ed06d5@computer> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Victor's recomp comments Date: Sat, 11 Mar 2000 17:21:56 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, >>What, by using a compiler book? ;) > >That could lead to better lyrics ;-) In the case of certain bands, for sure. Especially these all-male groups. :)) >>True. And I'm a musician as well. I've even been asked to join a >>countries orchestra and everything. :) > >Really? What kind of instrument(s) do you play? The violin is my instrument, but I can just about play any stringed instrument. I'm not very good at things like the guitar, though... >>I don't know... We could refer to NBs method of recompilation as the >>"NB method" and my method(s) as the "NG method". It has a nice ring to >>it... ;) > >Let's see what Neil B has to say about it ;-) Okay. Neil, what do you have to say? ;) >>I could try more, but I'm going home in a bit because my brain is >>dead. I reckon that a couple more of those would just about destroy my brain >>for the rest of today. :) > >In my case that wouldn't matter much ;-) It wouldn't make much difference in my case either. :) >>I was definitely under the impression that recompilation was mainly >>for the use of anything that uses self-modification. You can also use it on >> things that don't self-modify - but you can use dynamic compilation on that >>too (which should be faster as you don't need to check to see if code has >>been modified). > >Actually many dynarecs still don't test for changed code. If that's the case, then they're not dynarecs. You've GOT to change the code else you aren't REcompiling. >>The only decent game I've seen for the N64 is Zelda64 (ignoring >>Mario64). I wouldn't really use one because the resolution annoys me too much - >>192x256! And then they bi-linear filter it, so you effectively halve >>that resolution. If a PC game was brought out like that, it wouldn't sell. > >That's the nice thing with emulation, you don't have to run it in the >original resolution ;-) That's true. And in the majority of cases - you CAN'T run it in the original resolution. :) >I'm mainly interested in console emulation because the emulation is >very challenging and you can see all the dirty tricks at work. It's arcade games that interest me - for the same reason. :) >I didn't know that they prefer one of my favourite processors ;-) It's a safe CPU, so the military like it. :) >>And for arcade games, it seems the best solution. Who knows? :) > >Do you already know which one you want to emulate? Probably emulate the System16 games. Apparently the source for System16 sucks ass, which is why no-one has bothered to update it. I'm just going to rewrite it (see, Neil? I follow your philosophy also! ;) )... >>I've only been here about 8-9 weeks now. Not long at all. And I spoke no German >>when I came out here either. I now speak... well, a fair bit. > >Not bad for such a short time, and German surely isn't that easy. No, it isn't. But I already speak 3 languages, so it's another one under my belt. The difficult thing about German is that you can refer to any noun (or object) in 3 ways - masculine, feminine or neutral. French has two ways and I've figured out most of those. English has one - neutral. The same for Welsh (my other language). But Germans - you don't half come up with some strange ideas. ;) >Yeah, I know. But in Bavaria this is one of the essencial sentences ;-) I know! :o >BTW, NB thinks that their micro breweries have the best beer. Maybe you >can convince him that the German beer is the best ;-) Neil, German beer is quite possibly the best in the world. Why do I say this? Their entire YEAR is based around beer festivals. Yes, they like beer over here. And I've had some of the nicest beer ever while I've been over here. The Augustiner brews some REALLY nice beer. Besides, what decent beer is brewed in America? The only famous one is Budweiser - which I don't mind, but isn't particularly brilliant... >Another question, which part in Britain are you from? Chester. I imagine you've heard of it, it's a big tourist attraction. :) >No, I guessed that it must be something with helicopters. Of course. I'd have figured the same from an @eurocopter.de e-mail address. :) >By then you'll be able to order "Zwo Maß Bier" ;-) And by then I might be able to drink them. Maybe. I think I'd be going to the toilet a lot, though. :)) >>Nürnberg is not so far away. A couple of us went there with a Wochenende ticket >>because they're so cheap. :) > >Maybe, I don't go by train that often. I don't have a car over here, so it's my main form of transport... >>Quite nice place. Especially the Pizza Hut. One of nicest pizzas I've >>had in ages. :) > >Well, if you are in Nuernberg you shouldn't eat a pizza at Pizza Hut >but the great "Nuernberger Bratwuerste"! I've never heard of it! :o >And Bamberg is even nicer. There they have a very good beer: >Schlenkerla smoke beer. I'll try and visit it sometime. I've already been up to north Germany (I went to Magdeburg to visit a longtime friend) and I intend to visit a lot of Germany (and Europe!) while I'm over here... >Note for the others in the list: I'm sorry that we got a bit off >topic... So am I. What am I saying? No I'm not! ;) At least about 3/4 of it is on-topic. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 12:46:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA18625 for dynarec-outgoing; Sat, 11 Mar 2000 12:46:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 12:46:46 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <38C7711A.5C97887C@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > What I meant is: if you'd be using all the compiler optimisation tricks > > > apart from simple peephole optimisation it could be a bit slow. > > How so? > I think he means that you're checking for bad code and converting it into > good code. Bad code being code which takes 5 instructions to achieve the > same as one or two instructions could do. I still don't think it would be slow. Peephole optimization would simply be a pattern matching algorithm of sorts, and it's only run at recompilation time. > I agree. You shouldn't program to the people with the best computers, you > should program for the worst. Why? Well, generally speaking, doing this > makes things run faster for ALL the computers - all the way up to the > fastest computers. Bingo. If everyone did that, we wouldn't need anything faster than Pentium 200s to do much of anything. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 13:27:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA18795 for dynarec-outgoing; Sat, 11 Mar 2000 13:27:20 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 13:27:19 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <38C777B5.A8271624@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > It'd be cool if you could! > No I think you can do 'mov esi,[PageMap[56h]+156h]' if you know that > when is created a TransMapPage it isn't erased later (or if it's > erased then all code that jumps to this page is erased too). > PageMap[56] it's get in translation time, I think the confusion is in > how I have called it. Perhaps: Oh, I get ya. It's a "compled time 'pageMap[56]'" that gets turned in to a constant during recompilation time. > P.S.: You write pretty fast ;) How many mails have you wrote last hour? 8 or 9 big whoppers to the list. Too many. I'm now officially backed up on email again... -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 13:29:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA18806 for dynarec-outgoing; Sat, 11 Mar 2000 13:29:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 13:29:04 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <38C77934.15BA190@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > I agree. You shouldn't program to the people with the best computers, you > > should program for the worst. Why? Well, generally speaking, doing this > > makes things run faster for ALL the computers - all the way up to the > > fastest computers. > This would be really interesting if the PC game programmers did it. You keep saying "PC Game programmers". *ANY* Programmer who writes games for any modern machines does this. > > Agreed. It's a bit of a bummer really... > > I'm an old school demo coder. I agree with this philosophy. :) > A bit more assembler (or optimized C code) and less Java/Visual > Basic/Object coding could that a game (as FF8 that works well in a > 1MB, 25 Mhz machine and needs a Pentium II with 64 MB to work) will > work a reasonable machine not in a monster machine. What chaps my ass is the number of people who program in C++ and have absolutely no idea why, but they think it's object oriented just because it's C++, and don't understand that Object Oriented Programming is a design methodology - not a language. You can do OOP in *ANY* language. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 13:31:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA18822 for dynarec-outgoing; Sat, 11 Mar 2000 13:31:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 13:31:35 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 In-Reply-To: <38C77C3B.6D2551E5@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > The big disadvantage to "stopping every once in a while" is that you have > > to design your execution path so that it "breaks out" of what it's doing > > for a while. The less you have to break out from doing, the faster the > > service is going to be. > Do you mean a kind of event handled emulator? (I think I'm using the > wrong words ....). Separate thread. For audio, the hardware can call you back when it needs more data. For controllers, they're all interrupt driven (with the exception of the joystick which can be simluated). Under any modern OS you get callbacks when they're moved/hit, etc... > Use interruptions to handle I/O in the emulator and > do it in the main loop? No need to do it in any loop. Any OS you're running under can handle such a task. Under DOS they're inside the interrupt handler. Under Windows, it's message pumps and threads. It seems so obvious to me, yet I'm floored by others who still insist, in this day and age, on POLLING devices that are interrupt driven. Polling is for sissys. > > Zillions more ideas where that came from... > Really? I love discuss about new ideas ;) Yeah, me too, but I don't have that much time. ;( -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 13:38:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA18840 for dynarec-outgoing; Sat, 11 Mar 2000 13:38:34 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 13:38:33 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Oh, ... I think you are right, but the idea is the same. > Sure, but my knowledge of x86 assembler still isn't that good so I > wanted to ask... One minor nit: Assembly - Nmemonics representing machine opcodes Assembler - The program that assembles the assembly and emits a file Please make a note of it. ;-) > >> /want to create code for it as well. But you're always free to jump > >> back to the dispatcher of course. > >But if you don't destroy the TransMapPages you don't need to do this > >so. > What I meant is the case like in Neil's code where he already includes > a direct jump even when the block isn't generated yet. Or you can call the recompiler with the address of the block that isn't generated yet and it'll be able to recompile the code and always know the address to jump to (I.E. depth traversal). > You have the > same with intra-page jumps, but it might occur on inter-page jumps too. Another nit - no hyphens are needed here. ;-) > I'm not sure what you mean, but I was just wondering if the garbage > collection mechanism of Java could be of use for us. But given the fact > how many useful things I found in a JVM yet I don't think so. I guess > we can come up with a better solution for our needs anyway. Nothing in Java is useful to us. Or anyone else for that matter. ;-) > >This is my idea, track system calls and traps to know when code is > loaded and > >erased. > That will be hard though. First of all you need to find out which > system call does this and it hopefully works for dynamic libs as well. > And this doesn't work with dynamically generated code, but who does > this anyway? ;-) I've only found a few minor examples of this. I know of one arcade game that does, but it's relatively minor. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 14:41:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA18974 for dynarec-outgoing; Sat, 11 Mar 2000 14:41:13 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 14:41:12 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <38C8F5DC.A1064E1B@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > By the way, would you agree with these lists of techniques - and can you > think of any more to add? > > - Interpretation > - Static compilation > - Static recompilation > - Dynamic compilation > - Dynamic recompilation We should probably define what they all mean first... -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 14:45:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA18994 for dynarec-outgoing; Sat, 11 Mar 2000 14:45:39 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 14:45:38 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > First, I think the term "recompilation" is wrong. It reminds me of a > reassembler, which isn't that much different from a disassembler, and > we certainly don't do any decompilation here. Compilation means aggregating groups of instructions/operations into smaller groups of operations. We are optimizing the code somewhat, and this makes compilation a correct term for what we're doing. Perhaps "Dynamic translation" is a better term. > A more precise term would be "binary translation", because that's what > we do: translate one binary code into another binary code. There's more to it than that, though. It's not just simple translation. The argument can be made that we're translating C code into assembly as well, and therefore it's a translation rather than a compilation. > So what you're talking about is static binary translation, as you want > to translate the whole code in a ROM before you run the game, at least > that's what I understood. Interestingly enough, in theory my approach (with a self-referrential recompile) can do exactly this. Of course it may not be able to in the case of indirect jumps, but it should be possible. > Either you generate instruction per instruction with code emitters - > this is what Neil does, and which could be called dynamic code > generation. But also remember that my code emitters adapt to the conditions. So it really is dynamic. > Or you have pre-assembled code seqences for each emulated instruction > which are just copied and patched to work with the right values, which > sounds like static code generation to me. Static code generation is just a one time translation, and from there you don't need the original anymore (in theory). -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 14:48:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA19014 for dynarec-outgoing; Sat, 11 Mar 2000 14:48:21 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 14:48:20 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <38C8FD04.F2C831F9@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > prior to runtime, which doesn't neccessarily mean that an executable > > file has to be produced. But that's up to discussion since most people > > think it's only static when they can see the executable. > I'd agree with this - except that static recompilation is a little > different. You see, the static part comes from compiling the code at > startup. But the recompilation parts happen at run-time. At least... that's > certainly my understanding of it. Let's say you have a dynamic recompiler that translates code and puts in code snippets for handling addresses it hasn't recompiled yet. Then you modify the code to call itself with any address it doesn't know/understand so those snippets of code are no longer needed, so by the time a depth traversal is done, everything has been recompiled. Whether or not you recompile all up front or at run time has very little effect on the code being generated (with the exception of the code snippets to handle the unknown addresses). -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 14:52:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA19032 for dynarec-outgoing; Sat, 11 Mar 2000 14:52:02 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 14:52:01 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <38C9038C.95BDAC87@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > I think I'll have to add another feature to my characterization: copes > > with self-modifying code. > Anything that recompiles can (or should be able to!) cope with > self-modifying code. Not necessarily true. Let's say there's a chunk of RAM at 4000h that has been recompiled. You now have a recompiled chunk. You'd need to have some way of knowing if a recompiled region got "dirty" so that you'd chuck your old recompiled block and know to recompile it. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 14:54:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA19047 for dynarec-outgoing; Sat, 11 Mar 2000 14:54:20 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 14:54:19 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > BTW, do you two Neils have any nicknames? Otherwise I'd have to use > Neil B and Neil G, which looks like I was talking about the "Spice > Boys" ;-) Neil is my nickname. Christopher is my first name, but there are too damn many Chris's in the world. So I go by Neil. NB Is cool with me! > That means the code is translated once and is never recompiled. > Hey, you're right, since "to recompile" also means that you compile a > program again it's really confusing! Kinda like refried beans! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 15:02:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA19076 for dynarec-outgoing; Sat, 11 Mar 2000 15:02:32 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 15:02:31 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >What, by using a compiler book? ;) > That could lead to better lyrics ;-) > No, I mean picking a few words from a dictionary and the chorus line is > ready... Words just detract from the music anyway. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 15:07:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA19104 for dynarec-outgoing; Sat, 11 Mar 2000 15:07:50 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Sat, 11 Mar 2000 23:23:36 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >One minor nit: >Assembly - Nmemonics representing machine opcodes >Assembler - The program that assembles the assembly and emits a file >Please make a note of it. ;-) Oops, sorry. In German it's "Assembler Programmierung" instead of "assembly programming"... BTW, the word is "mnemonics" ;-) >> You have the >> same with intra-page jumps, but it might occur on inter-page jumps too. >Another nit - no hyphens are needed here. ;-) So is it an error, or is it at least acceptable? I think it makes much clearer which words form a compound. >Nothing in Java is useful to us. Or anyone else for that matter. ;-) Yeah, that's what I think too. >> And this doesn't work with dynamically generated code, but who does >> this anyway? ;-) >I've only found a few minor examples of this. I know of one arcade game >that does, but it's relatively minor. Well, it should have been a joke since *we* generate dynamic code ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 15:07:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA19111 for dynarec-outgoing; Sat, 11 Mar 2000 15:07:51 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Sat, 11 Mar 2000 23:50:52 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id PAA19108 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >In the case of certain bands, for sure. Especially these all-male groups. >:)) It depends. For German lyrics Herbert Grönemeyer is quite good and Sting has good lyrics as well. But I hear much jazz where you don't have much lyrics anyway... >The violin is my instrument, but I can just about play any stringed >instrument. I'm not very good at things like the guitar, though... The violin is a nice instrument if it's played right, otherwise it's a torture instrument ;-) >Okay. Neil, what do you have to say? ;) It seems he hasn't read this message yet... >If that's the case, then they're not dynarecs. You've GOT to change the code >else you aren't REcompiling. Just as I said, the term is surely used in the wrong way... >Probably emulate the System16 games. Apparently the source for System16 >sucks ass, which is why no-one has bothered to update it. I'm just going to >rewrite it (see, Neil? I follow your philosophy also! ;) )... I heard of System 16, but I cannot remember right now which games it ran... >No, it isn't. But I already speak 3 languages, so it's another one under my >belt. The difficult thing about German is that you can refer to any noun (or >object) in 3 ways - masculine, feminine or neutral. I think you have the same problem with some other Germanic or even Roman languages, but in German you really have some weird examples, like the difference between "das Schild" (the sign) and "der Schild" (the shield). One English native speaker told me that what disturbed him most is the fact that we use all 3 genders for cutlery: der Löffel, die Gabel, das Messer! >French has two ways and >I've figured out most of those. English has one - neutral. I don't know Old English but I guess you'll find more genders there as well. >The same for Welsh (my other language). Wow, there are not many people who can claim that they know Welsh! How did you learn that one? The only older language apart from Latin I ever learnt is Middle High German, but that often enough sounds just like the Bavarian dialect ;-) You only have to learn some bits of Grammar, some words that aren't used anymore, and - probably the most difficult - that some words didn't have the same meaning as today. If you know these things and some Bavarian dialect then you can understand large part of the Nibelungenlied. >But Germans - you don't half come up with some strange ideas. ;) Don't we always do this? ;-) >Chester. I imagine you've heard of it, it's a big tourist attraction. :) The name sounds familiar, but I'd have to check a map to see where it lies... But I know that all towns with "chester" in the name were originally founded by Romans ("castra"). >>By then you'll be able to order "Zwo Maß Bier" ;-) >And by then I might be able to drink them. Maybe. I think I'd be going to >the toilet a lot, though. :)) Hehe, you have to exercise more ;-) BTW, in Erlangen we have the oldes beer fest in the world, much older than the Oktoberfest. It's called Bergkirchweih (although it's only on a hill) and we natives simply say "Berch". >I don't have a car over here, so it's my main form of transport... Sure, and all the strange Germans drive on the wrong side! ;-) >>Well, if you are in Nuernberg you shouldn't eat a pizza at Pizza Hut >>but the great "Nuernberger Bratwuerste"! >I've never heard of it! :o Really? You have to try it! >I'll try and visit it sometime. I've already been up to north Germany (I >went to Magdeburg to visit a longtime friend) and I intend to visit a lot of >Germany (and Europe!) while I'm over here... Italy is nice and has very good food. I'd just die for a good pizza or pasta! >So am I. What am I saying? No I'm not! ;) >At least about 3/4 of it is on-topic. :) Now we are 90% off topic... I guess if we want to continue these discussions we should do it via normal email or the others might get upset. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 15:10:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA19136 for dynarec-outgoing; Sat, 11 Mar 2000 15:10:47 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 15:10:45 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <001001bf8b76$6ea3e5e0$80ed06d5@computer> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > belt. The difficult thing about German is that you can refer to any noun (or > object) in 3 ways - masculine, feminine or neutral. French has two ways and > I've figured out most of those. English has one - neutral. The same for > Welsh (my other language). But Germans - you don't half come up with some > strange ideas. ;) I actually don't understand the whole masculine/feminine thing (unless it pertains to actual sexes). Why attach a masculine/feminine label to *ANYTHING* (other than animals/people) at all? > Besides, what decent beer is brewed in America? The only famous one is > Budweiser - which I don't mind, but isn't particularly brilliant... Anything you've ever heard of is shit beer. Microbreweries don't often export. Let me say this - Our microbrew (read that, *LOCAL* breweries) section in the grocery store dwarfs that commercial crap. We have over *200* in the area alone! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 15:15:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA19153 for dynarec-outgoing; Sat, 11 Mar 2000 15:15:18 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 15:15:17 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Assembly - Nmemonics representing machine opcodes > >Assembler - The program that assembles the assembly and emits a file > >Please make a note of it. ;-) > Oops, sorry. In German it's "Assembler Programmierung" instead of > "assembly programming"... > BTW, the word is "mnemonics" ;-) I figured I spelled (not 'spelt') it wrong. > >> You have the > >> same with intra-page jumps, but it might occur on inter-page jumps > >Another nit - no hyphens are needed here. ;-) > So is it an error, or is it at least acceptable? I think it makes much > clearer which words form a compound. In an English class, it'd be marked as an error. Hyphens are not supposed to be used in *ANY* situation that a prefix is used (inter, pre, post, co, etc... are all prefixes). In fact, I don't think it's even allowed outside of breaking up words at the margins. It's also considered arrogant and snobby. So in direct answer to your question, it's wrong. Either separate the words or combine them. As an example, Interstate isn't stated as Inter-state. Also, coordinate is coordinate, not co-ordinate. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 15:20:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA19180 for dynarec-outgoing; Sat, 11 Mar 2000 15:20:27 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 15:20:26 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by synthcom.com id PAA19177 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >In the case of certain bands, for sure. Especially these all-male > groups. > >:)) > It depends. For German lyrics Herbert Grönemeyer is quite good and > Sting has good lyrics as well. > But I hear much jazz where you don't have much lyrics anyway... This has always puzzled me. Why do people put so much focus on lyrics? They'll ignore the aspects of musicianship because the "Lyrics are good". > The only older language apart from Latin I ever learnt is Middle High "learned". ;-) Past tense of learn. ;-) God, I love language discussions! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 16:44:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA19439 for dynarec-outgoing; Sat, 11 Mar 2000 16:44:32 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <00a901bf8bb9$404900c0$91ba06d5@computer> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Victor's recomp comments Date: Sun, 12 Mar 2000 01:18:10 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > So in direct answer to your question, it's wrong. Either separate the > words or combine them. As an example, Interstate isn't stated as > Inter-state. Also, coordinate is coordinate, not co-ordinate. Unless, of course, you're talking about co-ordinating a meeting and not a point (X, Y). :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 16:44:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA19441 for dynarec-outgoing; Sat, 11 Mar 2000 16:44:32 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <00a701bf8bb9$3e8557c0$91ba06d5@computer> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Victor's recomp comments Date: Sun, 12 Mar 2000 01:02:08 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I actually don't understand the whole masculine/feminine thing (unless it > pertains to actual sexes). Why attach a masculine/feminine label to > *ANYTHING* (other than animals/people) at all? I don't know. I've a feeling it's to confuse the English speaking people. ;) > > Besides, what decent beer is brewed in America? The only famous one is > > Budweiser - which I don't mind, but isn't particularly brilliant... > > Anything you've ever heard of is shit beer. Microbreweries don't often > export. Ah, that'd explain it. :) > Let me say this - Our microbrew (read that, *LOCAL* breweries) section in > the grocery store dwarfs that commercial crap. We have over *200* in the > area alone! Germany still beats you. Just about every type of Pils you've ever heard of comes from around here. And there's plenty more - as you could find at the Oktoberfest (famous Beer festival). It still amuses me how much the Germans like their beer. It's almost... inhuman! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 16:44:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA19452 for dynarec-outgoing; Sat, 11 Mar 2000 16:44:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <00aa01bf8bb9$41126b40$91ba06d5@computer> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Victor's recomp comments Date: Sun, 12 Mar 2000 01:21:03 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, >Why do people put so much focus on lyrics? They'll ignore the aspects of >musicianship because the "Lyrics are good". I actually find quite the opposite. Otherwise I can't explain why "boy bands" are so popular. It surely isn't for the lyrics. Or the music, either! I know what you're saying, I just don't find this all the time. I usually find the opposite where people listen to crap (read: majority of club music) music that doesn't have too many lyrics at all... >"learned". ;-) Past tense of learn. ;-) God, I love language discussions! Spell "Colour". ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 17:02:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id RAA19512 for dynarec-outgoing; Sat, 11 Mar 2000 17:02:29 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 17:02:28 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <00a901bf8bb9$404900c0$91ba06d5@computer> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > words or combine them. As an example, Interstate isn't stated as > > Inter-state. Also, coordinate is coordinate, not co-ordinate. > Unless, of course, you're talking about co-ordinating a meeting and not a > point (X, Y). :) Nope. Same word, different meaning. (like Record and Record) There's no hyphen. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 17:03:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id RAA19521 for dynarec-outgoing; Sat, 11 Mar 2000 17:03:14 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 17:03:13 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <00a701bf8bb9$3e8557c0$91ba06d5@computer> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Let me say this - Our microbrew (read that, *LOCAL* breweries) section in > > the grocery store dwarfs that commercial crap. We have over *200* in the > > area alone! > Germany still beats you. Just about every type of Pils you've ever heard of > comes from around here. And there's plenty more - as you could find at the > Oktoberfest (famous Beer festival). Let me be more specific. There are over 200 microbreweries in Portland alone. In Seattle and San Fransisco it's much, MUCH larger. Let's just say we have the same enthusiasm for beer as the Germans do, if not more! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 17:08:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id RAA19534 for dynarec-outgoing; Sat, 11 Mar 2000 17:08:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 11 Mar 2000 17:08:23 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <00aa01bf8bb9$41126b40$91ba06d5@computer> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Why do people put so much focus on lyrics? They'll ignore the aspects of > >musicianship because the "Lyrics are good". > I actually find quite the opposite. Otherwise I can't explain why "boy > bands" are so popular. It surely isn't for the lyrics. Or the music, either! The "boy bands" are popular because they're "cute". They're assembled by "businessmen" who find 5 good looking dudes, because the girls will all go out and buy their albums, they'll sing about love and other thick crap like that, backed by studio musicians and lots and lots of money. Besides, that's all the record companies are feeding us. If we're not exposed to anything else, what do you expect? Someone's gotta like it, but even my 19 year old niece says that Top 40 is crap. Interestingly enough, did you know what happened when AMP (essentially MTV Europe which is ZILLIONS of times better than the MTV crap we have in the states) was going to be scheduled at 7PM (instead of the usual 2AM)? Several record companies threatened MTV with a massive lawsuit pulling their rights to air videos and use their music. They're very, very worried about the European music scene (which is far better than the garbage we have to tolerate) because the record companies can't control it. It'll be a great day when Sony/CBS go out of business because they can't compete with the independent label. And only then can we get some decent music played again. FWIW, I tend to listen to nothing but European tracks anyway. I can't stand what I've had to put up with here on the radio for the past 9 years. > I know what you're saying, I just don't find this all the time. I usually > find the opposite where people listen to crap (read: majority of club music) > music that doesn't have too many lyrics at all... There's a lot of music out there that's technically very good, but musically very poor. I'd much prefer this to "good lyrics". > >"learned". ;-) Past tense of learn. ;-) God, I love language discussions! > Spell "Colour". ;) Color. The u is completely useless! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 20:39:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id UAA20107 for dynarec-outgoing; Sat, 11 Mar 2000 20:39:25 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Sun, 12 Mar 2000 04:13:33 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Neil is my nickname. Christopher is my first name, but there are too damn >many Chris's in the world. So I go by Neil. Interesting, I didn't know that... >NB Is cool with me! OK, then I'll use NB and NG in the future when I want to make clear which of you two I mean. >Kinda like refried beans! But they're less spicy, at least that's what happens with my refried chilli... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 20:39:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id UAA20117 for dynarec-outgoing; Sat, 11 Mar 2000 20:39:28 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Language Date: Sun, 12 Mar 2000 05:12:45 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I actually don't understand the whole masculine/feminine thing (unless it >pertains to actual sexes). Why attach a masculine/feminine label to >*ANYTHING* (other than animals/people) at all? I think there's also a long answer to your question, but the short one is: history! It's hard to explain why the people came up with it, maybe anthropomorphism, who knows? You actually still have it in some parts of English, although not visable through the article. Eg. in English poetry the moon is always female and the sun always male, which is the exact parallel to Spanish "la luna" and "le sol" - please correct me Victor if I should be wrong. Funnily in German it's the other way round: "der Mond" (masculine) and "die Sonne" (feminine). And English is weird in this case as well: I always wonder why you talk about ships, cars, whatsoever as "she"? In German it's "das Schiff" and "das Auto" (neuter) because these are things. You could also ask why there are 7 cases in Russian, but you couldn't explain it. This is a case of "this is what we have and we have to work with it". It's all due to linguistic evolution which is hard to explain as well, but which is still at work, as I can notice fewer use of imperative and subjunctive in German for example. We only can estimate some of the language evolutions but not enough to reconstruct some kind of protolanguage so we are absolutely unable to tell how and why specific parts of a language were formed. >In an English class, it'd be marked as an error. Hyphens are not supposed >to be used in *ANY* situation that a prefix is used (inter, pre, post, co, >etc... are all prefixes). In fact, I don't think it's even allowed outside >of breaking up words at the margins. It's also considered arrogant and >snobby. Hmm, I think I have to study some English grammar again... >"learned". ;-) Past tense of learn. ;-) God, I love language discussions! Have you ever heard of "A Comprehensive Grammar of the English Language" - normally only referred as CGEL? There "learn" is listed as an irregular verb (class 1A if you're interested) and "learned" is marked as a regular *variant* of "learnt". Hmm, I just found out that the German equivalent "lernen" is a weak verb in Middle High German. I wonder if this means that "learnt" is just an analogy to another verb, and therefore a 'fake'? Where is someone if a decent knowledge of Gothic if you need one? ;-) I don't think that NG's knowledge of Welsh will be of much help here since Welsh should have Celtic rather than Germanic roots, right? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 20:39:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id UAA20127 for dynarec-outgoing; Sat, 11 Mar 2000 20:39:30 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Sun, 12 Mar 2000 05:24:18 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Compilation means aggregating groups of instructions/operations into >smaller groups of operations. We are optimizing the code somewhat, and >this makes compilation a correct term for what we're doing. You're probably right, but it still sounds as if a high-level (hyphen or not?) language was involved, which can be a bit confusing. >Perhaps "Dynamic translation" is a better term. Better than dynamic recompilation anyway, although dynatrans doesn't sound as good as dynarec ;-) >There's more to it than that, though. It's not just simple translation. >The argument can be made that we're translating C code into assembly as >well, and therefore it's a translation rather than a compilation. The joke is that the (rarely used) German term for compiler is "Uebersetzer", which simply means translator! >Interestingly enough, in theory my approach (with a self-referrential >recompile) can do exactly this. Of course it may not be able to in the >case of indirect jumps, but it should be possible. Even a static recompiler has the same problem with indirect jumps, which is why you still need a good runtime system. >But also remember that my code emitters adapt to the conditions. So it >really is dynamic. Of course, this is how it should be! >Static code generation is just a one time translation, and from there you >don't need the original anymore (in theory). That's the problem with static recompilation. I think the traditional use of the term is for generation target executables from source executables. But static could also mean that it's everything which isn't dynamic, and then a one time translation of the whole program would be static although no executable is generated, just because it surely cannot be called dynamic. Well, you could call it dynamic, but then dynamic means that the translation is done over and over again but not on demand, which IMO is the normal use of dynamic recompilation. I think either interpretation has a gap between the two terms. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 20:39:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id UAA20131 for dynarec-outgoing; Sat, 11 Mar 2000 20:39:38 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Music Date: Sun, 12 Mar 2000 04:25:13 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Words just detract from the music anyway. ;-) For many songs this is true. But there are some good examples for songs which couldn't work without the lyrics... But I have to admit there is nothing as relaxing to play a good instrumental and just concentrate on the music. >This has always puzzled me. >Why do people put so much focus on lyrics? They'll ignore the aspects of >musicianship because the "Lyrics are good". This is certainly not true for me. First of all I wouldn't say that over 90% of todays music have good lyrics anyway, and I heard to much music where I couldn't understand the lyrics. When I buy a new jazz album I don't listen to it before I buy it, but I rather select a special album because I'm interested in the performance of one or more musicians on that album. Especially for jazz it's good to know some names because a few good musicians can let even the worst song sound exceptional. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 21:46:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id VAA20350 for dynarec-outgoing; Sat, 11 Mar 2000 21:46:56 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Sun, 12 Mar 2000 06:17:33 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >There are over 200 microbreweries in Portland alone. In Seattle and San >Fransisco it's much, MUCH larger. Let's just say we have the same >enthusiasm for beer as the Germans do, if not more! I think Erlangen once had about 40 breweries (and it was much smaller back then) because there were ideal cellars in one hill, which is the reason for us having the oldest beer festival in the world. But when the refrigerator was invented those cellars weren't needed anymore and most breweries closed. For a very long time we only had one but now we have two breweries. Bamberg has very many breweries and they have very special beer. Eg. two make so called "smoke beer", which isn't very common. And around Bamberg about every village has it's own brewery, and those villages are often so small (only one street and a dozen houses) that we simply call them "Kaff". Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 11 21:46:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id VAA20358 for dynarec-outgoing; Sat, 11 Mar 2000 21:46:58 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Sun, 12 Mar 2000 06:30:32 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >The "boy bands" are popular because they're "cute". They're assembled by >"businessmen" who find 5 good looking dudes, because the girls will all go >out and buy their albums, they'll sing about love and other thick crap >like that, backed by studio musicians and lots and lots of money. Musicians? I guess they have just one keyboard and all they do for a new song is to press the standard beat button and key a few accords... From how it sounds I guess most don't use musicians with real instruments anymore but everything comes from the computer. Nothing against computer music, but why do they always have to immitate real instruments in such a bad way? The funny thing is that more and more drummers seem to adapt the computer rhythms and even that crap hi-hats sound - yuk! >They're very, very worried about the European music scene (which is far >better than the garbage we have to tolerate) because the record companies >can't control it. It'll be a great day when Sony/CBS go out of business >because they can't compete with the independent label. And only then can >we get some decent music played again. That's strange because every time when I turn on the radio (and I only do this in the car) I'm crowded with American rap (is this really music or just noise with stupid texts?) or some rock where all songs sound similar... >FWIW, I tend to listen to nothing but European tracks anyway. I can't >stand what I've had to put up with here on the radio for the past 9 years. I only listen to very few German records (NG if you know enough German you should listen to Willy Astor - from Munich - very funny), from America only jazz and a few soundtracks (I'm a great John Williams fan), and the rest is from the UK. >There's a lot of music out there that's technically very good, but >musically very poor. I'd much prefer this to "good lyrics". BTW, have you ever heard some Weather Report tracks, eg. Birdland? >Color. The u is completely useless! ;-) I think I already had this example: spell "doubt" and "subtle"! Greetings from William the Conquerer ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 01:44:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA20757 for dynarec-outgoing; Sun, 12 Mar 2000 01:44:55 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 12 Mar 2000 01:44:54 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Language In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >I actually don't understand the whole masculine/feminine thing (unless > >pertains to actual sexes). Why attach a masculine/feminine label to > >*ANYTHING* (other than animals/people) at all? > I think there's also a long answer to your question, but the short one > is: history! > It's hard to explain why the people came up with it, maybe > anthropomorphism, who knows? You actually still have it in some parts > of English, although not visable through the article. I can't even extrapolate a reason why, though. Sometimes I can see a connection, but in this case I'm just dumbfounded. There's no rhyme or reason to it. > Eg. in English poetry the moon is always female and the sun always > male, which is the exact parallel to Spanish "la luna" and "le sol" - It is? I didn't know that. The only "she" that I'm aware of is captains referring to their ships as "she", because it takes the place of the real thing. I've not heard the sun/moon thing you mentioned. > And English is weird in this case as well: I always wonder why you talk > about ships, cars, whatsoever as "she"? In German it's "das Schiff" and > "das Auto" (neuter) because these are things. For cars there's two reasons: One, because men most often treat their cars better than their women, and two, because when the car gets bitchy, it gets bitchy like a woman! > You could also ask why there are 7 cases in Russian, but you couldn't > explain it. Cases in terms of...? You mean 7 "sexes"? Or do you mean literally the word "Case"? > We only can estimate some of the language evolutions but not enough to > reconstruct some kind of protolanguage so we are absolutely unable to > tell how and why specific parts of a language were formed. Oddly, I can read English from the 800s and understand it. It's more Viking English than anything else. Lots of extra senseless words. > >etc... are all prefixes). In fact, I don't think it's even allowed > >of breaking up words at the margins. It's also considered arrogant and > Hmm, I think I have to study some English grammar again... I think a better word would be "patronizing". Instead of spelling out a word or a name, like Sahahlee, it's posted as Sa-hah-lee (name of a golf course). It's like "look dumb shit, this is how you say it.". Coordinate, reanimate, etc... are all words that are just using standard English prefixes. Disassemble is all one word - you wouldn't say dis-assemble, would you? There are many prefixes/suffixes that are used throughout the language. The English language (mostly US English which has just as many other problems with it) is one of my most studied areas. It chaps my ass to hear people say "myself" instead of "me". As in, "This is a picture of Bob, Dave, and myself." Completely, grammatically wrong. "Myself" should *NEVER* be used in the place of "me". There are zillions (my other favorite word) of examples of this. > >"learned". ;-) Past tense of learn. ;-) God, I love language > discussions! > Have you ever heard of "A Comprehensive Grammar of the English > Language" - normally only referred as CGEL? There "learn" is listed as > an irregular verb (class 1A if you're interested) and "learned" is > marked as a regular *variant* of "learnt". Heard of - haven't seen. Most of my study is Troyka's "Guide to the English Language" and it has been shelved for years now. FWIW, "Learnt" isn't in my dictionary at all. Same deal with "burnt". -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 01:45:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA20769 for dynarec-outgoing; Sun, 12 Mar 2000 01:45:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 12 Mar 2000 01:45:35 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Perhaps "Dynamic translation" is a better term. > Better than dynamic recompilation anyway, although dynatrans doesn't > sound as good as dynarec ;-) How about "dynamic reassmbly"? -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 01:48:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA20785 for dynarec-outgoing; Sun, 12 Mar 2000 01:48:27 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 12 Mar 2000 01:48:26 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Music In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Words just detract from the music anyway. ;-) > For many songs this is true. But there are some good examples for songs > which couldn't work without the lyrics... Then they aren't good songs. Music without lyrics is still music. Lyrics without music is just poetry or a bunch of words. > But I have to admit there is nothing as relaxing to play a good > instrumental and just concentrate on the music. Words should be secondary. Without the music, the words wouldn't be music. > When I buy a new jazz album I don't listen to it before I buy it, but I > rather select a special album because I'm interested in the performance > of one or more musicians on that album. Especially for jazz it's good > to know some names because a few good musicians can let even the worst > song sound exceptional. Yup. It's amazing when a band gets together and everyone knows exactly where their place is in the group. Yes is an extremely good example of this. If you listen to "Talk" or their latest album (sans Trevor Rabin unfortunately), everyone is placed *EXACTLY* where they should be. And musically it's stunning. I've learned to completely shut off lyrics. I hear the voice as an instrument - not as words or a thought. As long as it complements the music, I have no problem with it at all! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 01:57:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA20800 for dynarec-outgoing; Sun, 12 Mar 2000 01:57:13 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 12 Mar 2000 01:57:12 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >The "boy bands" are popular because they're "cute". They're assembled > >"businessmen" who find 5 good looking dudes, because the girls will > >out and buy their albums, they'll sing about love and other thick crap > >like that, backed by studio musicians and lots and lots of money. > Musicians? I guess they have just one keyboard and all they do for a > new song is to press the standard beat button and key a few accords... They're studio musician/producer backed. It's assembly line crap. > From how it sounds I guess most don't use musicians with real > instruments anymore but everything comes from the computer. Computers/synths are real instruments, too. Or do you mean acoustic? I'll warn you - Don't go down the "computers/synths aren't real instruments" path with me. ;-) Everyone said that about the piano and the electric guitar, too, but we seem to accept them as they are today with no problems. I really don't know what everyone's fear is of synthesizers. Ignorance is all I can gather. If anything, well done synth music is far more intellectually stimulating than any orchestra could produce. And of course, there's a lot of crappy synth music out there. I'll wholeheartedly agree with that. But there are just as many bad guitar bands as well. > Nothing > against computer music, but why do they always have to immitate real > instruments in such a bad way? *SMILE*. You wouldn't know when you've heard a synth vs. the real thing. You only know when you hear a bad one. ;-) It's all in the application. If jimmy joe bob hits patch R-7 on his Kurzweil 2500 and plays it like a violin, he thinks it's kewl and puts it on his record. So instead of massaging it into a sound that fits the music, he uses the built in crap. I've heard piano samples that are so good that it fools concert level pianists. Something can be extremely well done, but most often people are too lazy to go do it right. I for one use the synth as its own instrument. I played enough acoustic instruments and they're too limiting. With a synth I can do damn near anything and create sounds that are so strange and bizarre that it opens up new avenues. > The funny thing is that more and more drummers seem to adapt the > computer rhythms and even that crap hi-hats sound - yuk! It depends. A Roland TR-909, made about 19 years ago, is used by almost every dance track out there. And for a bass sound and keeping things moving in a dance environment, there is no substitute. But I'd never use a 909 in something more acoustic. Too cheesy sounding. You've just got to know when to apply it. > That's strange because every time when I turn on the radio (and I only > do this in the car) I'm crowded with American rap (is this really music > or just noise with stupid texts?) or some rock where all songs sound > similar... Yeah. We hear that here as well. It's garbage. I guess I've got to be an angry black guy who grew up in the ghetto to understand rap. Same deal with all the copyrock bands. > >There's a lot of music out there that's technically very good, but > >musically very poor. I'd much prefer this to "good lyrics". > BTW, have you ever heard some Weather Report tracks, eg. Birdland? Nope. > >Color. The u is completely useless! ;-) > I think I already had this example: spell "doubt" and "subtle"! > Greetings from William the Conquerer ;-) Yeah. Useless there, too. "Dout" and "suttle" are much, much better spellings. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 04:48:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA21217 for dynarec-outgoing; Sun, 12 Mar 2000 04:48:29 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <006501bf8c1e$5e7819e0$30be06d5@computer> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Victor's recomp comments Date: Sun, 12 Mar 2000 12:45:25 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Unless, of course, you're talking about co-ordinating a meeting and not a > > point (X, Y). :) > > Nope. Same word, different meaning. (like Record and Record) There's no > hyphen. There's a distinction made in the dictionary I have (Rogers, 1997). Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 04:48:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA21218 for dynarec-outgoing; Sun, 12 Mar 2000 04:48:30 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <006701bf8c1e$603d4980$30be06d5@computer> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Victor's recomp comments Date: Sun, 12 Mar 2000 12:53:19 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > I actually find quite the opposite. Otherwise I can't explain why "boy > > bands" are so popular. It surely isn't for the lyrics. Or the music, either! > > The "boy bands" are popular because they're "cute". They're assembled by > "businessmen" who find 5 good looking dudes, because the girls will all go > out and buy their albums, they'll sing about love and other thick crap > like that, backed by studio musicians and lots and lots of money. Of course. I was just trying to give girls more credit, but I can't. :-/ > Besides, that's all the record companies are feeding us. If we're not > exposed to anything else, what do you expect? Someone's gotta like it, but > even my 19 year old niece says that Top 40 is crap. And I don't like it either. :) > They're very, very worried about the European music scene (which is far > better than the garbage we have to tolerate) because the record companies > can't control it. It'll be a great day when Sony/CBS go out of business > because they can't compete with the independent label. And only then can > we get some decent music played again. AFAIK, the popular types of music in the US at the moment are Country, Rock and Rap. That's about it. If I'm right, I completely understand why you don't like the music over there. Some may be quite good, it's just the rest of it... :-/ > FWIW, I tend to listen to nothing but European tracks anyway. I can't > stand what I've had to put up with here on the radio for the past 9 years. Really? Like who? > > Spell "Colour". ;) > > Color. The u is completely useless! ;-) There is a difference to the way a British person and an American person pronounces the word too. You actually say it as Col-Or and we say it as Col-Er. The "ou" sound comes from French. That may be why we have different spellings. But we've got it right! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 04:48:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA21239 for dynarec-outgoing; Sun, 12 Mar 2000 04:48:33 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <006601bf8c1e$5f7b8020$30be06d5@computer> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Victor's recomp comments Date: Sun, 12 Mar 2000 12:48:24 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Germany still beats you. Just about every type of Pils you've ever heard of > > comes from around here. And there's plenty more - as you could find at the > > Oktoberfest (famous Beer festival). > > Let me be more specific. > > There are over 200 microbreweries in Portland alone. In Seattle and San > Fransisco it's much, MUCH larger. Let's just say we have the same > enthusiasm for beer as the Germans do, if not more! I'll have to try some at some point, then! :) You've just got to arrange your year around drinking different types of beer. Once you've done that, then you share the same enthusiasm with the Germans for beer. Before I came over here, I didn't realise just how much they like beer. It's amazing! And I'm not a big beer drinker at home - I'll drink it, but most isn't particularly nice - but here it's really nice. Whereas normally I'd have drank Cider, I now don't mind. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 04:48:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA21244 for dynarec-outgoing; Sun, 12 Mar 2000 04:48:35 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <006a01bf8c1e$62906140$30be06d5@computer> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Off Topic: Language Date: Sun, 12 Mar 2000 13:09:21 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Oddly, I can read English from the 800s and understand it. It's more > Viking English than anything else. Lots of extra senseless words. Very Norse - and also very Germanic, too! > The English language (mostly US English which has just as many other > problems with it) is one of my most studied areas. It chaps my ass to hear > people say "myself" instead of "me". As in, "This is a picture of Bob, > Dave, and myself." Completely, grammatically wrong. "Myself" should > *NEVER* be used in the place of "me". Agreed. > There are zillions (my other favorite word) of examples of this. Exactly how many zeros are in 1 zillion? :) > FWIW, "Learnt" isn't in my dictionary at all. Same deal with "burnt". But it's in mine! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 04:48:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA21245 for dynarec-outgoing; Sun, 12 Mar 2000 04:48:35 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <006901bf8c1e$61c6f6c0$30be06d5@computer> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Victor's recomp comments Date: Sun, 12 Mar 2000 13:06:55 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >The "boy bands" are popular because they're "cute". They're assembled > > by "businessmen" who find 5 good looking dudes, because the girls will > > all go out and buy their albums, they'll sing about love and other thick crap > >like that, backed by studio musicians and lots and lots of money. > > Musicians? I guess they have just one keyboard and all they do for a > new song is to press the standard beat button and key a few accords... > From how it sounds I guess most don't use musicians with real > instruments anymore but everything comes from the computer. Nothing > against computer music, but why do they always have to immitate real > instruments in such a bad way? In actual fact, I don't know of a boy band that can play instruments. Which makes it ironic that they're a boy "band" because the word "band" implies that there are instruments involved - the word "group" should be used for a group of singers. If they can even sing and their voices aren't computer "enhanced" so that they actually hit the right notes... Ala some of the "Spice Girls" for instance. > That's strange because every time when I turn on the radio (and I only > do this in the car) I'm crowded with American rap (is this really music > or just noise with stupid texts?) or some rock where all songs sound > similar... We get a lot of either American or Canadian music. Some of it is quite good, I won't deny that. But most isn't. At least in Britain we have quite a lot of variety and quite a few good bands. We still have crap music, it's just not to the same high ratio. In Britain, though, we don't get much European music - other than in the club scene where the biggest people are from Germany. > I only listen to very few German records (NG if you know enough German > you should listen to Willy Astor - from Munich - very funny), from > America only jazz and a few soundtracks (I'm a great John Williams > fan), and the rest is from the UK. I'll try and get something of Willy Astor. Willy, eh? A very... English, yet French, name. William being French and Willy being the English term for it. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 04:48:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA21249 for dynarec-outgoing; Sun, 12 Mar 2000 04:48:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <006b01bf8c1e$634902e0$30be06d5@computer> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Victor's recomp comments Date: Sun, 12 Mar 2000 13:10:29 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Better than dynamic recompilation anyway, although dynatrans doesn't > > sound as good as dynarec ;-) > > How about "dynamic reassmbly"? I like that term. Especially because when you shorten it, it becomes "dynasm" which sounds so much better than "dynarec". Yes, let's use that term from now on. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 04:48:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA21262 for dynarec-outgoing; Sun, 12 Mar 2000 04:48:37 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <006c01bf8c1e$64540a40$30be06d5@computer> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Victor's recomp comments Date: Sun, 12 Mar 2000 13:16:33 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I'll warn you - Don't go down the "computers/synths aren't real > instruments" path with me. ;-) Everyone said that about the piano and the > electric guitar, too, but we seem to accept them as they are today with no > problems. I really don't know what everyone's fear is of synthesizers. > Ignorance is all I can gather. After all, anything that can create several different tones could be called instrumental. Even a *voice* is an instrument! > *SMILE*. You wouldn't know when you've heard a synth vs. the real thing. > You only know when you hear a bad one. ;-) I bet I would when a violin is involved. I've heard some really nice synths - like the flagship Yamaha one. It still can't produce a realistic violin sound. At least: I can tell the difference. > I've heard piano samples that are so good that it fools concert level > pianists. Something can be extremely well done, but most often people are > too lazy to go do it right. I agree, there are some really good piano samples that you just can't tell the difference. But there are some instruments that can't be reproduced too well at the moment. The trumpet is another example - I can usually tell the difference too! > I for one use the synth as its own instrument. I played enough acoustic > instruments and they're too limiting. With a synth I can do damn near > anything and create sounds that are so strange and bizarre that it opens > up new avenues. Neil, I can't get ahold of any of your albums. Know where I can get one? I think it could be interesting to listen to. > But I'd never use a 909 in something more acoustic. Too cheesy sounding. > You've just got to know when to apply it. That's the difference between a musician and a wannabe. :) > Yeah. We hear that here as well. It's garbage. I guess I've got to be an > angry black guy who grew up in the ghetto to understand rap. Same deal > with all the copyrock bands. Agreed. Crap. Well, some modern rock is okay, but if I'm going for rock, I prefer it from the 60's-70's and early 80's periods. > > >Color. The u is completely useless! ;-) > > I think I already had this example: spell "doubt" and "subtle"! > > Greetings from William the Conquerer ;-) > > Yeah. Useless there, too. "Dout" and "suttle" are much, much better > spellings. Do you use those? Because if you do, I've *never* heard of that before! :o You're right - technically they are better spellings. But they look so terrible to me at the moment! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 04:48:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA21227 for dynarec-outgoing; Sun, 12 Mar 2000 04:48:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <006801bf8c1e$60fd8c40$30be06d5@computer> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Off Topic: Language Date: Sun, 12 Mar 2000 13:00:49 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > anthropomorphism, who knows? You actually still have it in some parts > of English, although not visable through the article. > Eg. in English poetry the moon is always female and the sun always > male, which is the exact parallel to Spanish "la luna" and "le sol" - > please correct me Victor if I should be wrong. It is? I've never heard that before. We always say "The moon" and "The Sun". I don't think I've ever seen it talked around as a sex. Oh... maybe in really old texts, when I think about it... > And English is weird in this case as well: I always wonder why you talk > about ships, cars, whatsoever as "she"? In German it's "das Schiff" and > "das Auto" (neuter) because these are things. In the case of ships, that's because ships always used to have the name of a woman. So the men on the boat thought about the ship as being feminine. And I'm accepting NB's explanation for the car. :) > Have you ever heard of "A Comprehensive Grammar of the English > Language" - normally only referred as CGEL? There "learn" is listed as > an irregular verb (class 1A if you're interested) and "learned" is > marked as a regular *variant* of "learnt". I was being told by my German friends just how much they hate irregular verbs. Because I've grown up using them, I see no problem. In fact, if you even told me to give you an example of a regular and irregular verb, I don't think I could! > Where is someone if a decent knowledge of Gothic if you need one? ;-) Hiding. It's sunny outside. ;)) > I don't think that NG's knowledge of Welsh will be of much help here > since Welsh should have Celtic rather than Germanic roots, right? Yep. In fact, Welsh is the oldest known language in Europe - it was used even before Latin. Welsh is certainly Celtic, but it has changed along the times to add new words. But the worst thing for me is in German where you have words with a "ll" in - like "Gestellt". In Welsh, "ll" is actually a letter of the alphabet and has it's own distinct sound - something like "kl" or the "cl" in "clan". I just have to remember to pronounce it the English way - which is much closer to the German term. English also has words with a "ll", but they're usually at the end of a word, so I don't have that problem. Besides, English is my first language, so I don't have that problem. Full stop. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 15:33:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA22641 for dynarec-outgoing; Sun, 12 Mar 2000 15:33:43 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 12 Mar 2000 15:33:42 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <006701bf8c1e$603d4980$30be06d5@computer> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > FWIW, I tend to listen to nothing but European tracks anyway. I can't > > stand what I've had to put up with here on the radio for the past 9 years. > Really? Like who? What I can't stand or what I like? > > > Spell "Colour". ;) > > Color. The u is completely useless! ;-) > There is a difference to the way a British person and an American person > pronounces the word too. You actually say it as Col-Or and we say it as > Col-Er. The "ou" sound comes from French. That may be why we have different > spellings. It's pronounced col-er. But how you get an "er" out of "our" is beyond me. But then again, British English has a far worse problem of taking words from other languages, not altering their spelling and changing the way they're pronounced. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 15:38:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA22658 for dynarec-outgoing; Sun, 12 Mar 2000 15:38:51 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 12 Mar 2000 15:38:51 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: <006c01bf8c1e$64540a40$30be06d5@computer> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > electric guitar, too, but we seem to accept them as they are today with no > > problems. I really don't know what everyone's fear is of synthesizers. > > Ignorance is all I can gather. > After all, anything that can create several different tones could be called > instrumental. Even a *voice* is an instrument! Absolutely! Even things that can create only one tone are instruments. But my point is that what the voice says should have no bearing on the musicality. > > *SMILE*. You wouldn't know when you've heard a synth vs. the real thing. > > You only know when you hear a bad one. ;-) > I bet I would when a violin is involved. I've heard some really nice > synths - like the flagship Yamaha one. It still can't produce a realistic > violin sound. At least: I can tell the difference. You can tell a difference in that instance. Violins are infinitely expressive instruments and it's tough to mimic things like that. But done correctly, you can't tell a difference. It's not often done correctly. It's certainly not the technology that's the problem. It's the effort/quality of work put into it by the programmer in the first place. But more to the point, I don't see why anyone would want to. Synths are instruments in and of themselves. > the difference. But there are some instruments that can't be reproduced too > well at the moment. The trumpet is another example - I can usually tell the > difference too! No, they can be reproduced quite well. It's just rare that they're actually done well. > > instruments and they're too limiting. With a synth I can do damn near > > anything and create sounds that are so strange and bizarre that it opens > > up new avenues. > Neil, I can't get ahold of any of your albums. Know where I can get one? I > think it could be interesting to listen to. > > But I'd never use a 909 in something more acoustic. Too cheesy sounding. > > You've just got to know when to apply it. > That's the difference between a musician and a wannabe. :) Or a "DJ". I have a saying: DJ's are to music as security guards are to law enforcement. Totally true. ;-) > > angry black guy who grew up in the ghetto to understand rap. Same deal > > with all the copyrock bands. > Agreed. Crap. Well, some modern rock is okay, but if I'm going for rock, I > prefer it from the 60's-70's and early 80's periods. Yeah. Modern rock is quite scarce in terms of quality. > > > Greetings from William the Conquerer ;-) > > Yeah. Useless there, too. "Dout" and "suttle" are much, much better > > spellings. > Do you use those? Because if you do, I've *never* heard of that before! :o No, no, no no.... I'm just saying they'd be better spellings than what we've got currently. > You're right - technically they are better spellings. But they look so > terrible to me at the moment! :o Yeah. I read "Dout" as Data Out, and a "suttle" as "scuttle". ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 19:44:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id TAA23276 for dynarec-outgoing; Sun, 12 Mar 2000 19:44:54 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Language Date: Sun, 12 Mar 2000 14:30:22 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I can't even extrapolate a reason why, though. Sometimes I can see a >connection, but in this case I'm just dumbfounded. There's no rhyme or >reason to it. In many cases the grammatical gender corresponds with the sex of the 'object' referred to, but it's a bit confusing when it doesn't. >It is? I didn't know that. I'm not sure when I noticed that, but it's a known fact that the moon in English poetry is always female. I'm not sure if this is due to the Germanic roots of English or more an influence of French. >The only "she" that I'm aware of is captains >referring to their ships as "she", because it takes the place of the real >thing. According to my information even countries are referred to as "she"... >For cars there's two reasons: One, because men most often treat their cars >better than their women, and two, because when the car gets bitchy, it >gets bitchy like a woman! Nice explanation ;-) >Cases in terms of...? You mean 7 "sexes"? Or do you mean literally the >word "Case"? Nope, the term for grammatical sex is gender. What I mean is: nominative, accusative, dative, genitive. This is what we have, and in Latin there are also vocative and ablative. I don't know Russian, but I know that they have 7 cases. You have to be careful with the term case though, since Fillmore invented that case grammar which is about the roles of words in a sentence, like agentive, objective, or instrumental. I guess he didn't know that other languages already have the term for something different, or he simply didn't care. To distinguish the two terms the latter is often called "deep case" nowadays. >Oddly, I can read English from the 800s and understand it. It's more >Viking English than anything else. Lots of extra senseless words. Then you must be pretty good at linguistics! I might be able to understand some Middle English and I really learned Middle High German, but I certainly couldn't understand Old English or Old German with a good dictionary and some knowledge about the grammar. You have to be aware of the fact that you might think you know what a word means but many meanings have changed over the period of a few hundred years. I think the main problem with these old languages isn't that you have many unknown words, but that you have many words which just look like those we use today but they can have a totally different meaning. Since you don't want to look up every word you have to develop some intuition when a word could mean something different than you think at the first glance. Some words have narrow meaning today, eg. Middle High German "hochgezit" looks like todays "Hochzeit" (wedding) but it refers to any celebration. Shakespeare still uses "marry" as a synonym to "lucky", but today you almost only have it in "merry christmas". Or "gast" (today still spelled that way) did not only mean "guest" but also foreigner or even enemy! "bispel" doesn't have the same meaning as "Beispiel" (example) but means "tale". An often error fo beginner is to translate "frouwe" with "Frau" (woman) and "wip" with "Weib" (toady a flame word for women), because the men always had to find better words for the other sex and the old got less worthy. Therfore "wip" simply meant "woman" and "frouwe" has more the meaning of lady. Sometimes it's hard to understand what the author meant because they had different concepts. Eg. the whole class was very confused when the text said that "a knight was placed behind himself". The explanation is rather simple. At that time people saw the knight and his horse as one unit, so the knight just got kicked from the horse. But you have to know such things to understand certain texts. Sorry, for the rather long history lesson, but I think you get the picture that it's not that easy to understand older texts as it might seem. >I think a better word would be "patronizing". Instead of spelling out a >word or a name, like Sahahlee, it's posted as Sa-hah-lee (name of a golf >course). It's like "look dumb shit, this is how you say it.". Coordinate, >reanimate, etc... are all words that are just using standard English >prefixes. Disassemble is all one word - you wouldn't say dis-assemble, >would you? There are many prefixes/suffixes that are used throughout the >language. I'll check that with "Practical English Usage", but I think you're right about the prefixes. >There are zillions (my other favorite word) of examples of this. I told you at least a zillion times that you shall not exagerate ;-) >Heard of - haven't seen. Most of my study is Troyka's "Guide to the >English Language" and it has been shelved for years now. I think I heard of that before. The problem about most American linguistics is that these are largely influenced by Noam Chomsky, whose Government and Binding or X-Bar theories might work more or less good for English but are useless for languages like German. >FWIW, "Learnt" isn't in my dictionary at all. Same deal with "burnt". What about dreamt, smelt or slept? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 19:45:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id TAA23288 for dynarec-outgoing; Sun, 12 Mar 2000 19:45:12 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Music Date: Sun, 12 Mar 2000 15:19:54 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Then they aren't good songs. Music without lyrics is still music. Lyrics >without music is just poetry or a bunch of words. Just take the song "Angel Eyes" from the soundtrack of "Leaving Las Vegas", where the voice acts like an instrument and there's only the addition of very minimallistic bass and piano. If you drop the vocals there isn't much left. Or take Al Yankovic, where only the lyrics count since the music is stolen anyway. >Words should be secondary. Without the music, the words wouldn't be music. Absolutely true for operas. Wagner just sounds great without words, although I don't like operas. >Yup. It's amazing when a band gets together and everyone knows exactly >where their place is in the group. Sometimes it's almost a mystery, eg. when you have Jeff Beal (trumpet/ fluegelhorn) and Steve Tavaglione (saxophone) playing together you think they must have some kind of mental connection! >I've learned to completely shut off lyrics. I hear the voice as an >instrument - not as words or a thought. As long as it complements the >music, I have no problem with it at all! Hey, you could even listen to German music then ;-) [boy groups] >They're studio musician/producer backed. It's assembly line crap. Really? To me it sounds as if there are no musicians at all. >Computers/synths are real instruments, too. Or do you mean acoustic? First of all with so much crap computer music around I indeed prefer more and more acoustic music. Synths are instruments as well of course, bet less and less people use it that way. They just press one button to get one of the installed beats (no one seems to notice that all those songs have the same beat) and the rest of the song is made by copy-and -paste at a computer. >I'll warn you - Don't go down the "computers/synths aren't real >instruments" path with me. ;-) Don't get me wrong, I like good computer music. I recently bought the soundtrack of Beverly Hills Cop, just because I always liked the song Axel F! Some works of Vangelis are simply great and I absolutle adore John Carpenter's cool intro to Escape from New York. I think the difference between the good and the bad computer music is that the good one uses the computers to create unique sound and they still have a groove, which the bad totally lacks! >If anything, well done synth music is far more intellectually stimulating >than any orchestra could produce. Both have their unique purpose. I've heard so many worse synth adaptations of Bolero or the Star Wars theme that I really count it. But a good arranger knows when the limit of even a whole symphony orchestra is reached and synths have to be introduced. >And of course, there's a lot of crappy >synth music out there. I'll wholeheartedly agree with that. But there are >just as many bad guitar bands as well. I guess you mean that there are too many bad guitar bands! ;-) >*SMILE*. You wouldn't know when you've heard a synth vs. the real thing. >You only know when you hear a bad one. ;-) It depends on the quality of the samples that are used. As I told you two of my friends make synth music as well, and on a few songs they used samples from a CD with Peter Erskine. Not only he is a good drummer but on that CD he plays a Yamaha Maple Custom and a brass snare, it simply sounds cool. But most seem to use the crap built in percussion... What I never heard so far is a computer saxophone where you couldn't tell that it's not the real thing! >It's all in the application. If jimmy joe bob hits patch R-7 on his >Kurzweil 2500 and plays it like a violin, he thinks it's kewl and puts it >on his record. So instead of massaging it into a sound that fits the >music, he uses the built in crap. Well, about the same I said above ;-) >I've heard piano samples that are so good that it fools concert level >pianists. Yeah, my friend has a Technics synth with absolutely great piano and organ sounds. >Something can be extremely well done, but most often people are >too lazy to go do it right. Probably. >I for one use the synth as its own instrument. I played enough acoustic >instruments and they're too limiting. With a synth I can do damn near >anything and create sounds that are so strange and bizarre that it opens >up new avenues. Sure, but everthing can be programmed so you don't need that much technical skill anymore, which leads to more and more laymen producing crap music and there seem to be enough stupids who buy it :-( >It depends. A Roland TR-909, made about 19 years ago, is used by almost >every dance track out there. And for a bass sound and keeping things >moving in a dance environment, there is no substitute. I think Phil Collins used it on his first solo album... We could almost bet if the Yamaha Recording Custom drums weren't even used more often... >But I'd never use a 909 in something more acoustic. Too cheesy sounding. >You've just got to know when to apply it. Indeed, you have to know when it's the right time to use a certain instrument and not simply say "OK, we have it so let's just use it"... >Yeah. We hear that here as well. It's garbage. I guess I've got to be an >angry black guy who grew up in the ghetto to understand rap. Yeah, the music is simplistic, the vocals are primitive, and I even don't understand the words... >Same deal with all the copyrock bands. Sometimes we have some programmes on TV where they play all the dusty "great rock songs". The you notice that there a two or three really good songs and the rest all sound like the same song! [Wheater Report] >Nope. The group was founded by Joe Zawinul (keyboarder from Vienna) and Wayne Shorter (sax). Both played for Miles Davis and Joe convinced Miles to use electrical instruments with jazz and therefore could be called the inventor of fusion. Weather Report have a very extraordinary sound, you might find it interesting. If you want to try it you probably should listen to the live album "8:30". Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 19:45:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id TAA23300 for dynarec-outgoing; Sun, 12 Mar 2000 19:45:41 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Sun, 12 Mar 2000 16:12:41 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> How about "dynamic reassmbly"? >I like that term. Especially because when you shorten it, it becomes >"dynasm" which sounds so much better than "dynarec". Yes, let's use that >term from now on. :) Yeah, why not? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 19:45:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id TAA23312 for dynarec-outgoing; Sun, 12 Mar 2000 19:45:44 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Language Date: Sun, 12 Mar 2000 16:30:32 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >It is? I've never heard that before. We always say "The moon" and "The Sun". >I don't think I've ever seen it talked around as a sex. Oh... maybe in >really old texts, when I think about it... I think it's still used today but I have to admit that I don't know much modern English poetry. >I was being told by my German friends just how much they hate irregular >verbs. Because I've grown up using them, I see no problem. Just wait till you learn more German and you'll see that we don't have less irregular verbs. Your friends are just as used to these as you are to the English ones! >In fact, if you >even told me to give you an example of a regular and irregular verb, I don't >think I could! Eg. think, thought, thought, instead of think, thinked, thinked. Or in German: gang, ging, gegangen - which is go, went, gone in English. >Yep. In fact, Welsh is the oldest known language in Europe - it was used >even before Latin. Welsh is certainly Celtic, but it has changed along the >times to add new words. But the worst thing for me is in German where you >have words with a "ll" in - like "Gestellt". In Welsh, "ll" is actually a >letter of the alphabet and has it's own distinct sound - something like "kl" >or the "cl" in "clan". So "Lloyd" would be pronounced as /kloyd/? >I just have to remember to pronounce it the English >way - which is much closer to the German term. English also has words with a >"ll", but they're usually at the end of a word, so I don't have that >problem. The consonants are the same, although we have to additonal ones which also exist in Scots, eg. in their pronunciation of "loch" and "night". >> Oddly, I can read English from the 800s and understand it. It's more >> Viking English than anything else. Lots of extra senseless words. >Very Norse - and also very Germanic, too! That's doubled because Old Norse is a Germanic language too ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 19:59:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id TAA23350 for dynarec-outgoing; Sun, 12 Mar 2000 19:59:45 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 12 Mar 2000 19:59:44 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Language In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >I can't even extrapolate a reason why, though. Sometimes I can see a > >connection, but in this case I'm just dumbfounded. There's no rhyme or > In many cases the grammatical gender corresponds with the sex of the > 'object' referred to, but it's a bit confusing when it doesn't. So a banana would be male, and a gas nozzle female? ;-) > >The only "she" that I'm aware of is captains > >referring to their ships as "she", because it takes the place of the > >thing. > According to my information even countries are referred to as "she"... You've got me there, but you're right. I have no idea why. > >Oddly, I can read English from the 800s and understand it. It's more > >Viking English than anything else. Lots of extra senseless words. > Then you must be pretty good at linguistics! I might be able to > understand some Middle English and I really learned Middle High German, > but I certainly couldn't understand Old English or Old German with a > good dictionary and some knowledge about the grammar. I didn't find it all that odd. It seemed wordy and "Fancy" for lack of better terms to describe it, but it wasn't that far off what we speak/use today. > You have to be aware of the fact that you might think you know what a > word means but many meanings have changed over the period of a few > hundred years. Oh yeah. I couldn't understand all of it because it had some slang from that era. > >FWIW, "Learnt" isn't in my dictionary at all. Same deal with "burnt". > What about dreamt, smelt or slept? "dreamt" isn't (dreamed is the word used), "smelt" isn't either (smelled), and slept is, oddly (sleeped just sounds weird). A good way to look at it, "ed" on the end of a lot of latin words puts it in the past tense. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 20:11:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id UAA23412 for dynarec-outgoing; Sun, 12 Mar 2000 20:11:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 12 Mar 2000 20:11:30 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Music In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Then they aren't good songs. Music without lyrics is still music. > >without music is just poetry or a bunch of words. > Just take the song "Angel Eyes" from the soundtrack of "Leaving Las > Vegas", where the voice acts like an instrument and there's only the > addition of very minimallistic bass and piano. If you drop the vocals > there isn't much left. I didn't say drop the vocals. I said drop the lyrics. ;-) There's a *HUGE* difference. > Or take Al Yankovic, where only the lyrics count since the music is > stolen anyway. Emulated, but not stolen. He's a man of musical genius. Being able to play the notes of another song is one thing, but being able to emulate the subtle (hehehehe) nuances of other bands is entirely something else. > Absolutely true for operas. Wagner just sounds great without words, > although I don't like operas. Me either. Screaming in a foreign language is somehow supposed to be sophisticated? Most operas are just annoying. > >Yup. It's amazing when a band gets together and everyone knows exactly > >where their place is in the group. > Sometimes it's almost a mystery, eg. when you have Jeff Beal (trumpet/ > fluegelhorn) and Steve Tavaglione (saxophone) playing together you > think they must have some kind of mental connection! Those two instruments are near the bottom of my list anyway. ;-) > >I've learned to completely shut off lyrics. I hear the voice as an > >instrument - not as words or a thought. As long as it complements the > >music, I have no problem with it at all! > Hey, you could even listen to German music then ;-) I wouldn't understand any of it. German, when spoken, to me sounds really amusing. I don't know why, either! > >They're studio musician/producer backed. It's assembly line crap. > Really? To me it sounds as if there are no musicians at all. Hey, I'm using the term very loosely. ;-) > >Computers/synths are real instruments, too. Or do you mean acoustic? > First of all with so much crap computer music around I indeed prefer > more and more acoustic music. There is more and more acoustic crap here - moreso than I want to hear. There's only so much a drum/bass/guitar/vocalist can do before it becomes stale. It was stale when it started (grunge). > Synths are instruments as well of course, > bet less and less people use it that way. You must be getting only a fraction of what's going on. I think I'd have to hear what you're subjected to before being able to understand your point of view. > They just press one button to > get one of the installed beats (no one seems to notice that all those > songs have the same beat) and the rest of the song is made by copy-and > -paste at a computer. I hate to tell you this, but synths don't work that way. Well, they do if you buy one at K-Mart or some other $50 POS. They don't come with preprogrammed rhythms. > Don't get me wrong, I like good computer music. I recently bought the > soundtrack of Beverly Hills Cop, just because I always liked the song > Axel F! That's not good synth music. IT's cheesy, top 40ized crap. Harold Faltermeyer was not known as a "good musician" or synth expert of any sort. > I think the difference between the good and the bad computer music is > that the good one uses the computers to create unique sound and they > still have a groove, which the bad totally lacks! Agreed. But it's all in the application. > But a good arranger knows when the limit of even a whole symphony > orchestra is reached and synths have to be introduced. Some things call for a symphony. But in a lot of cases, at least throughout movies, filler music is almost all synths. > >And of course, there's a lot of crappy > >synth music out there. I'll wholeheartedly agree with that. But there > >just as many bad guitar bands as well. > I guess you mean that there are too many bad guitar bands! ;-) Yes. > >*SMILE*. You wouldn't know when you've heard a synth vs. the real > >You only know when you hear a bad one. ;-) > It depends on the quality of the samples that are used. As I told you > two of my friends make synth music as well, and on a few songs they So then the point being is that the medium is not the problem, but the implementation. > What I never heard so far is a computer saxophone where you couldn't > tell that it's not the real thing! If it was something that wasn't the real thing and you couldn't detect it, how would you know? ;-) > >I've heard piano samples that are so good that it fools concert level > >pianists. > Yeah, my friend has a Technics synth with absolutely great piano and > organ sounds. Really? I've found the Technics boards to be kinda pasty. The Roland series are phoenomenal, however. > >Something can be extremely well done, but most often people are > >too lazy to go do it right. > Probably. Definitely. > Sure, but everthing can be programmed so you don't need that much > technical skill anymore, Wrong. You still have to know musical construction. Beats by themselves don't do anything unless you have a tune to go with it. You still have to write the tune. > >It depends. A Roland TR-909, made about 19 years ago, is used by > >every dance track out there. And for a bass sound and keeping things > >moving in a dance environment, there is no substitute. > I think Phil Collins used it on his first solo album... Yes, on "No Jacket Required". It was the absolute worst percussion I had ever heard on an album. He literally programmed in two measures and repeated them for the whole song. Go back and listen to it if you don't believe me. ;-) > >Yeah. We hear that here as well. It's garbage. I guess I've got to be > >angry black guy who grew up in the ghetto to understand rap. > Yeah, the music is simplistic, the vocals are primitive, and I even > don't understand the words... I never heard the terms "pop a cap" or "smoke a blunt" before I heard some rap. ;-) > >Same deal with all the copyrock bands. > Sometimes we have some programmes on TV where they play all the dusty > "great rock songs". The you notice that there a two or three really > good songs and the rest all sound like the same song! You mean like everything in the 50's? ') -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 20:14:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id UAA23432 for dynarec-outgoing; Sun, 12 Mar 2000 20:14:01 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Music Date: Mon, 13 Mar 2000 04:58:55 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Absolutely! Even things that can create only one tone are instruments. But >my point is that what the voice says should have no bearing on the >musicality. I have to admit that the text shouldn't affect the musicality much, but sometimes it's nice to have lyrics because it's easier to sing along than to play along... >You can tell a difference in that instance. Violins are infinitely >expressive instruments and it's tough to mimic things like that. But done >correctly, you can't tell a difference. It's not often done correctly. >It's certainly not the technology that's the problem. It's the >effort/quality of work put into it by the programmer in the first place. Even with a relatively primitive instrument like drums you can hear a difference, not by the sound itself but through timing and perfectness. Most drummers have a very typical timing and even the best drummers don't hit the same part of the drum head every time, so you get very subtle variants which *could* be immitated with a computer but it would be so much work that it's easier to let a drummer play it. Unfortunately many producers nowadays just use s simple beat that can be handled with the computer without too much effort. I guess you know the joke what the difference between a drumming machine and a drummer is: you only have to teach the machine once what it has to play. But on the other hand a good drummer can play certain patterns in a few seconds when you'd need hours to porgram these. What I noticed is that many people are now unable to recognise that it's a real drum and isn't programmed. When I was on a party recently one song caught my interest because it was one of the few songs without a machine rhythm or a simple rock beat. The others thought it had to be a drum computer as it sounded too complicated to be playable for their ears. I took a look at the booklet and found out that three drummers played on the recording, one whose name I forgot, Jeff Porcaro, who is already dead but is known as a very good drummer, and John Robinson, who is *the* LA studio drummer. So I was right that the drums weren't programmed. >But more to the point, I don't see why anyone would want to. Synths are >instruments in and of themselves. Indeed, that's why I don't understand why so many try to imitate acoustic instruments... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 20:58:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id UAA23604 for dynarec-outgoing; Sun, 12 Mar 2000 20:58:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Language Date: Mon, 13 Mar 2000 05:14:38 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >So a banana would be male, and a gas nozzle female? ;-) If I have the right translation of "gas nozzle" then it's actually the other way round ;-) A girl is neuter of course ;-) >I didn't find it all that odd. It seemed wordy and "Fancy" for lack of >better terms to describe it, but it wasn't that far off what we speak/ use >today. BTW, are you sure it was really Old English? It might have been Middle English (eg. Chaucer's Canterbury Tales), which isn't that worse, but real Old English doesn't look like English to me. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 20:58:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id UAA23611 for dynarec-outgoing; Sun, 12 Mar 2000 20:58:49 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Music Date: Mon, 13 Mar 2000 05:43:48 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I didn't say drop the vocals. I said drop the lyrics. ;-) There's a * HUGE* >difference. But vocals without words is a bit strange, unless it's Bobby McFerrin or Al Jarreau of course... >Emulated, but not stolen. He's a man of musical genius. Being able to play >the notes of another song is one thing, but being able to emulate the >subtle (hehehehe) nuances of other bands is entirely something else. OK, stolen was the wrong term. But you have to admit that Yankovic without words would be senseless. Eg. there is a song called "One More Minute" which sounds so trashy that I didn't like it, but since I really listened to the lyrics it's one of my favourites ;-) >Me either. Screaming in a foreign language is somehow supposed to be >sophisticated? Most operas are just annoying. The best thing is when the hero gets a spear through the chest and sings "I'm dying, I'm dying" for half an hour ;-) But especially some parts of Wagner's "Ring der Nibelungen" is absolutely great! The good thing is that I have a album called "The Ring without Words" ;-) >Those two instruments are near the bottom of my list anyway. ;-) What do you mean? You don't like these or you want to "emulate" them? >I wouldn't understand any of it. German, when spoken, to me sounds really >amusing. I don't know why, either! I thought you weren't listening to the lyrics ;-) >There is more and more acoustic crap here - moreso than I want to hear. >There's only so much a drum/bass/guitar/vocalist can do before it becomes >stale. It was stale when it started (grunge). I'm mainly talking about jazz where you still have sax, trumpet, trumbone, piano, organ, vibes, percussion, the list is really endless... >You must be getting only a fraction of what's going on. I think I'd have >to hear what you're subjected to before being able to understand your >point of view. What I mean that there are only very few musicians who use a synth as an intstrument on it's own and exploit it's doubtless great features, but rather imitate other instruments in such a bad way that it's just stupid and sounds like canned food tastes. >I hate to tell you this, but synths don't work that way. Well, they do if >you buy one at K-Mart or some other $50 POS. They don't come with >preprogrammed rhythms. Then there must be some kind of MIDI libs because there are mainly a hand full of beats used currently. >That's not good synth music. IT's cheesy, top 40ized crap. Harold >Faltermeyer was not known as a "good musician" or synth expert of any >sort. I just enjoy that song, I didn't say that he is overall good. >Some things call for a symphony. But in a lot of cases, at least >throughout movies, filler music is almost all synths. You don't know much John Williams soundtracks, do you? Just watch Star Wars, Indiana Jones, Jaws, ET, etc and listen closely to the soundtrack, you'll be surprised! I have several hours of Star Wars soundtracks but I think there is still some material in the movies I don't have on CD. >So then the point being is that the medium is not the problem, but the >implementation. I think so. >If it was something that wasn't the real thing and you couldn't detect it, >how would you know? ;-) Now you're mean ;-) Well, I'm so interested in good saxes that I normally check who is playing and I never found out that it was a computer sax so far. >Really? I've found the Technics boards to be kinda pasty. It's not a board, it's just a box without any keys. But he also has a Yamaha and a Korg. >The Roland series are phoenomenal, however. Sure, Roland is great but should be also expensive. >Wrong. You still have to know musical construction. Beats by themselves >don't do anything unless you have a tune to go with it. You still have to >write the tune. That's why there is so much crap music! >Yes, on "No Jacket Required". It was the absolute worst percussion I had >ever heard on an album. He literally programmed in two measures and >repeated them for the whole song. Go back and listen to it if you don't >believe me. ;-) I haven't listened to my Phil Collins albums for a long time, but I'll check it. Where he isn't that bad is with Brand X where he only plays the drums. But I also don't like the sound of his drums that much anymore. His new Gretsch kit sounds a bit weird. >I never heard the terms "pop a cap" or "smoke a blunt" before I heard some >rap. ;-) I don't even try to understand the texts ;-) >You mean like everything in the 50's? ') Don't ask me, sound all like the same to me. There are only a few rock songs which are really cool, eg. "Rock Around the Clock". I really wonder how I could listen to that much rock and pop a few years ago and at the same time claim that I'll never listen to jazz... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 22:30:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id WAA23833 for dynarec-outgoing; Sun, 12 Mar 2000 22:30:33 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 12 Mar 2000 22:30:32 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Music In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Absolutely! Even things that can create only one tone are instruments. > >my point is that what the voice says should have no bearing on the > I have to admit that the text shouldn't affect the musicality much, but And it shouldn't be the main focus, which was my original point. > sometimes it's nice to have lyrics because it's easier to sing along > than to play along... What's weird to me is that I flatly do not hear words when I hear a song. It's just another sound to me. That means if you feed me music that is done in a language I don't speak, I can still sing it back. > >It's certainly not the technology that's the problem. It's the > >effort/quality of work put into it by the programmer in the first > place. > Even with a relatively primitive instrument like drums you can hear a > difference, not by the sound itself but through timing and perfectness. Again, it's all in how it's assembled. Most drum machines are just triggers of drum sounds without any expressive abilities. But there are drum machines that do physical modeling and simulate all apsects of the nuances of drums (FWIW, I was a drummer for about 7 years). Ther are some amazing "Oh my god, that's a drum machine?" recordings that exist. The problem is that the only time you know it's bad is when it is bad. When it's good you won't notice! > Most drummers have a very typical timing and even the best drummers > don't hit the same part of the drum head every time, so you get very > subtle variants which *could* be immitated with a computer but it would > be so much work that it's easier to let a drummer play it. Oh that's not true. You have to get the right drum machine, though. If you've ever had to deal with micing a drum set you'd think differently as well. Hell, even Neil Peart (best drummer in existence) uses drum machines and acoustic drums. > Unfortunately many producers nowadays just use s simple beat that can > be handled with the computer without too much effort. No, they say "Go make a 'song' that will sell these pasty boys". And that's all the producers are capable of. And they in turn say "Gee, I have these old crappy drum tracks laying around. I'll just cut & paste them into this 'new' track." That's why I called it assembly line music. > I guess you know the joke what the difference between a drumming > machine and a drummer is: you only have to teach the machine once what > it has to play. But on the other hand a good drummer can play certain > patterns in a few seconds when you'd need hours to porgram these. It's not hard to program. Like anything, once you've figured out how to work with it, it's easy to continue. > What I noticed is that many people are now unable to recognise that > it's a real drum and isn't programmed. That doesn't surprise me. Most couldn't tell a cheesy drum machines from a real drum set anyway. > a drum computer as it sounded too complicated to be playable for their > ears. I took a look at the booklet and found out that three drummers > played on the recording, one whose name I forgot, Jeff Porcaro, who is Dead? The drummer from Toto? > >But more to the point, I don't see why anyone would want to. Synths > >instruments in and of themselves. > Indeed, that's why I don't understand why so many try to imitate > acoustic instruments... I don't think that's their goal. With this statement you assume that's their goal. You have to assume that they're "just trying to get something done" without actually thinking about overall construction. I cannot for one second believe any top 40 or popular musician with no talent would really say "Let's try to make this sound like real, acoustic drums.". -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 22:31:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id WAA23845 for dynarec-outgoing; Sun, 12 Mar 2000 22:31:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 12 Mar 2000 22:31:09 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Language In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >So a banana would be male, and a gas nozzle female? ;-) > If I have the right translation of "gas nozzle" then it's actually the > other way round ;-) Um... well, it's the thing that you stick the gas nozzle into. Gascap? I dunno what its proper name is.; -) > >I didn't find it all that odd. It seemed wordy and "Fancy" for lack of > >better terms to describe it, but it wasn't that far off what we speak/ > >today. > BTW, are you sure it was really Old English? It might have been Middle > English (eg. Chaucer's Canterbury Tales), which isn't that worse, but > real Old English doesn't look like English to me. It was from the mid-800's. Would that be considered old or middle? -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 22:41:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id WAA23879 for dynarec-outgoing; Sun, 12 Mar 2000 22:41:59 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 12 Mar 2000 22:41:58 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Music In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >I didn't say drop the vocals. I said drop the lyrics. ;-) There's a * > >difference. > But vocals without words is a bit strange, unless it's Bobby McFerrin > or Al Jarreau of course... Not true. Heard choir arrangements without any words? > OK, stolen was the wrong term. But you have to admit that Yankovic > without words would be senseless. Eg. there is a song called "One More That's because it's comedy set to musical parody. > Minute" which sounds so trashy that I didn't like it, but since I > really listened to the lyrics it's one of my favourites ;-) And he's about the only guy that I actually listen to the lyrics. When I heard him say "I've been milkin' & plowin' so long that even Ezekiel thinks that my mind is gone." I completely lost it. Talking about a guy who knows his biblical history! > >Those two instruments are near the bottom of my list anyway. ;-) > What do you mean? You don't like these or you want to "emulate" them? Either. ;-) Actually, what I don't like about the saxaphone is that people often blat it. Tastefully done sax is fine, but most just blow so hard into it (David Sanborn I cannot fucking *STAND*!) that it ruins any amount of appreciation for it. > >I wouldn't understand any of it. German, when spoken, to me sounds > >amusing. I don't know why, either! > I thought you weren't listening to the lyrics ;-) Well, I can't since I don't understand them, but the sound of the words are an absolute riot. ;-) > >There is more and more acoustic crap here - moreso than I want to > >There's only so much a drum/bass/guitar/vocalist can do before it > >stale. It was stale when it started (grunge). > I'm mainly talking about jazz where you still have sax, trumpet, > trumbone, piano, organ, vibes, percussion, the list is really > endless... Oh. Well, you know what they say about jazz: Play a song wrong once and it's a mistake. Play it wrong twice and it's jazz. ;-) > >You must be getting only a fraction of what's going on. I think I'd > >to hear what you're subjected to before being able to understand your > >point of view. > What I mean that there are only very few musicians who use a synth as > an intstrument on it's own and exploit it's doubtless great features, No, there are quite a few who do, but they most often go unheard. > but rather imitate other instruments in such a bad way that it's just > stupid and sounds like canned food tastes. It's like using a stupid/lame prop in a movie. Easy to spot. But sometimes that stupid/lame prop is exactly what the music calls for. > >I hate to tell you this, but synths don't work that way. Well, they do > >you buy one at K-Mart or some other $50 POS. They don't come with > >preprogrammed rhythms. > Then there must be some kind of MIDI libs because there are mainly a > hand full of beats used currently. There are a couple of common drum loops used (the 'Paid in full' loop was horribly overused), but if you're talking about a standard 4 on the floor techno beat, that's just a bass drum on every quarter note. It's not like they're sharing that. That would be like saying "Well, all the programs out there are just sharing the same main() construct in the programs." > >That's not good synth music. IT's cheesy, top 40ized crap. Harold > >Faltermeyer was not known as a "good musician" or synth expert of any > I just enjoy that song, I didn't say that he is overall good. Hm... to quote you, "Don't get me wrong, I like good computer music. I recently bought the soundtrack of Beverly Hills Cop, just because I always liked the song Axel F!" I somehow got the impression that you thought it was good computer music. ;-) > >Some things call for a symphony. But in a lot of cases, at least > >throughout movies, filler music is almost all synths. > You don't know much John Williams soundtracks, do you? I know tons about John Williams soundtracks, actually. > Just watch Star > Wars, Indiana Jones, Jaws, ET, etc and listen closely to the > soundtrack, you'll be surprised! I have several hours of Star Wars > soundtracks but I think there is still some material in the movies I > don't have on CD. Yep, and all those movies were made before synthesizers were heavily used in theater. All you've got to do now is listen to the soundtrack to Star Wars: Episode 1. Almost all of it is synth work. From John Williams himself. > >If it was something that wasn't the real thing and you couldn't detect > >how would you know? ;-) > Now you're mean ;-) > Well, I'm so interested in good saxes that I normally check who is > playing and I never found out that it was a computer sax so far. That's like saying, "I've never met a vegetarian who had their head screwed on straight." The only ones you notice are the ones that stick out. > >I never heard the terms "pop a cap" or "smoke a blunt" before I heard > some > >rap. ;-) > I don't even try to understand the texts ;-) "pop a cap" I guess is slang for shooting a bullet, and "smoke a blunt" means to smoke a "blunt", or a marijuana filled cigar. I had never heard the term "dissin'", either (means disrespecting). -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 12 23:03:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA23927 for dynarec-outgoing; Sun, 12 Mar 2000 23:03:04 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 12 Mar 2000 23:03:03 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: My tunes Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com For those who are interested in a sample of one of my tracks: ftp://mp3:gimmegoa@archive.synthcom.com/mp3s/Unsorted/passion.mp3 Note that MP3 ruins the high end and smears some of the detail, but check it out if you're interested. FWIW, The drums are the weakest aspect, but the rest is really solid. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 00:01:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24093 for dynarec-outgoing; Mon, 13 Mar 2000 00:01:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003130748.IAA19311@pons.ac.upc.es> Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: from Michael Koenig at "Mar 10, 2000 01:15:49 pm" To: dynarec@synthcom.com Date: Mon, 13 Mar 2000 08:48:35 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Damn It. Too many mails ;) This what happens when you don't have a modem ... Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 00:37:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24190 for dynarec-outgoing; Mon, 13 Mar 2000 00:37:03 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003130824.JAA25525@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec discussion from mul8 In-Reply-To: from Neil Bradley at "Mar 11, 2000 01:31:35 pm" To: dynarec@synthcom.com Date: Mon, 13 Mar 2000 09:24:20 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > The big disadvantage to "stopping every once in a while" is that you have > > > to design your execution path so that it "breaks out" of what it's doing > > > for a while. The less you have to break out from doing, the faster the > > > service is going to be. > > > Do you mean a kind of event handled emulator? (I think I'm using the > > wrong words ....). > > Separate thread. For audio, the hardware can call you back when it needs > more data. For controllers, they're all interrupt driven (with the > exception of the joystick which can be simluated). Under any modern OS you > get callbacks when they're moved/hit, etc... > This could be a good idea. I thought many times why threads are not used in emulation (win9x or Unix emulators, in DOS this cant't be done). Emulation seems a good task for use threaded programming. Do you know if someone has used this approach for emulation? Use a thread for each emulation process could be really good and elegant (one for CPU another for graphics, sound and so on). I don't know if this would really work or not. > > Use interruptions to handle I/O in the emulator and > > do it in the main loop? > > No need to do it in any loop. Any OS you're running under can handle such > a task. Under DOS they're inside the interrupt handler. Under Windows, > it's message pumps and threads. It seems so obvious to me, yet I'm floored > by others who still insist, in this day and age, on POLLING devices that > are interrupt driven. Sorry I make a mistake I wanted to say don't use a main loop (I miss the not, too fast writing ;) I think I agree with you, if you are running in a OS like Windows you must use what it offers to you. Using interrupts in DOS could be interesting too. Many things to think about this. > > Polling is for sissys. > > > > Zillions more ideas where that came from... > > Really? I love discuss about new ideas ;) > > Yeah, me too, but I don't have that much time. ;( > I think nobody has that much time :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 00:55:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24250 for dynarec-outgoing; Mon, 13 Mar 2000 00:55:38 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003130841.JAA28041@pons.ac.upc.es> Subject: Re: DYNAREC: Off Topic: Language In-Reply-To: from Michael Koenig at "Mar 12, 2000 05:12:45 am" To: dynarec@synthcom.com Date: Mon, 13 Mar 2000 09:41:58 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >I actually don't understand the whole masculine/feminine thing (unless > it > >pertains to actual sexes). Why attach a masculine/feminine label to > >*ANYTHING* (other than animals/people) at all? > > I think there's also a long answer to your question, but the short one > is: history! > It's hard to explain why the people came up with it, maybe > anthropomorphism, who knows? You actually still have it in some parts > of English, although not visable through the article. > Eg. in English poetry the moon is always female and the sun always > male, which is the exact parallel to Spanish "la luna" and "le sol" - > please correct me Victor if I should be wrong. Funnily in German it's It's pretty similar: 'la luna' femenine, 'el sol' masculine. Perhaps I will ask someone about why in latin languages exists masculine/femenine for objectes (why a table 'mesa' in spanish is femenine ...). I don't remember anything about this from my student children days. There are some cases where a same word can be used in femenine and masculine, for exemple sea, in spanish 'mar': the normal way is to say 'el mar' but also is used 'la mar' in poetry. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 00:56:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24259 for dynarec-outgoing; Mon, 13 Mar 2000 00:56:26 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003130843.JAA18836@pons.ac.upc.es> Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: from Michael Koenig at "Mar 12, 2000 05:24:18 am" To: dynarec@synthcom.com Date: Mon, 13 Mar 2000 09:43:38 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Compilation means aggregating groups of instructions/operations into > >smaller groups of operations. We are optimizing the code somewhat, and > >this makes compilation a correct term for what we're doing. > > You're probably right, but it still sounds as if a high-level (hyphen > or not?) language was involved, which can be a bit confusing. > > >Perhaps "Dynamic translation" is a better term. > > Better than dynamic recompilation anyway, although dynatrans doesn't > sound as good as dynarec ;-) If someone have readed the partial document I post to mul8 he will know my opinion about this. I'm with the dynamic translation team :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 01:01:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24286 for dynarec-outgoing; Mon, 13 Mar 2000 01:01:17 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003130846.JAA09400@pons.ac.upc.es> Subject: Re: DYNAREC: Victor's recomp comments In-Reply-To: from Michael Koenig at "Mar 12, 2000 05:24:18 am" To: dynarec@synthcom.com Date: Mon, 13 Mar 2000 09:46:56 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > >Interestingly enough, in theory my approach (with a self-referrential > >recompile) can do exactly this. Of course it may not be able to in the > >case of indirect jumps, but it should be possible. > > Even a static recompiler has the same problem with indirect jumps, > which is why you still need a good runtime system. In Dixie (where I'm working) we use many passes in static translation. We build a translation, we execute it, it fails somewhere because of not translated address, this is stored in a file and passed to the translator and another translation is builded. So on until all code used is translated. Not really aplicable to emulation I think. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 01:17:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24333 for dynarec-outgoing; Mon, 13 Mar 2000 01:17:02 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003130904.KAA27438@pons.ac.upc.es> Subject: Re: DYNAREC: My tunes In-Reply-To: from Neil Bradley at "Mar 12, 2000 11:03:03 pm" To: dynarec@synthcom.com Date: Mon, 13 Mar 2000 10:04:04 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com This seems a general purpose mail list now :) Luckyly we are only a three persons and not a hundred :) If anyone is interested I like all the music than sound well (for my ;). Actually a listen more heavy metal (most mellodic heavy like Hellowen or Blind Guardian, but also IronMaiden and Mannowar) but it's because I listen my brother's tapes :). I also listen a lot manga/anime (japannese cartoons) and japan videogames music. I'm a manga maniac (I think is otaku), a new kind of illness ;) And if you talk about languages I know a middle way french-spanish language too, catalonian, it's the language of the country (region) I life and I think is a really beatiful language for literature. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 01:40:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24379 for dynarec-outgoing; Mon, 13 Mar 2000 01:40:44 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 13 Mar 2000 01:40:43 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec discussion from mul8 In-Reply-To: <200003130824.JAA25525@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > more data. For controllers, they're all interrupt driven (with the > > exception of the joystick which can be simluated). Under any modern OS you > > get callbacks when they're moved/hit, etc... > This could be a good idea. I thought many times why threads are not > used in emulation (win9x or Unix emulators, in DOS this cant't be > done). Emulation seems a good task for use threaded programming. Do > you know if someone has used this approach for emulation? Use a > thread for each emulation process could be really good and elegant > (one for CPU another for graphics, sound and so on). I don't know if > this would really work or not. I'm sure it could be done, however in most cases where there are multiple processors involved, they have to be synchronized, so you may as well single thread it. Under DOS and Windows 95/98, there's no point in making CPU execution separate threads because no other CPUs will handle it anyway. As an example, in the game Major Havoc when the main CPU speaks to the sound CPU, the sound CPU has to acknowledge the host CPU in 200 clocks, otherwise it gets reset by the main processor. Really annoying. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 06:23:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25167 for dynarec-outgoing; Mon, 13 Mar 2000 06:23:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Mon, 13 Mar 2000 13:54:02 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >For those who are interested in a sample of one of my tracks: >ftp://mp3:gimmegoa@archive.synthcom.com/mp3s/Unsorted/passion.mp3 >Note that MP3 ruins the high end and smears some of the detail, but check >it out if you're interested. >FWIW, The drums are the weakest aspect, but the rest is really solid. Thanks, I'm currently listening to it ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 06:23:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25166 for dynarec-outgoing; Mon, 13 Mar 2000 06:23:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Language Date: Mon, 13 Mar 2000 13:52:52 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Um... well, it's the thing that you stick the gas nozzle into. Gascap? I >dunno what its proper name is.; -) Hmm, then it's somethigh different than I thought but it's still masculine because the term is "der Einfuellstutzen". >It was from the mid-800's. Would that be considered old or middle? That's Old English for sure! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 06:23:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25174 for dynarec-outgoing; Mon, 13 Mar 2000 06:23:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Music Date: Mon, 13 Mar 2000 15:05:03 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Not true. Heard choir arrangements without any words? Ok, agreed. >Either. ;-) Actually, what I don't like about the saxaphone is that people >often blat it. Tastefully done sax is fine, but most just blow so hard >into it (David Sanborn I cannot fucking *STAND*!) that it ruins any amount >of appreciation for it. David Sanborn is quite good actually but I think the newer stuff is too commercial. He sounds cool on the John McLaughlin album "The Promise" (with yet another great drummer: Dennis Chambers). I think Eric Marienthal is very good, but my personal favourite is Steve Tavaglione. That man is a god, no matter if he plays tenor, soprano, or EWI. Try his album "Silent Singing" if you don't believe me. >Well, I can't since I don't understand them, but the sound of the words >are an absolute riot. ;-) That harsh? >Oh. Well, you know what they say about jazz: >Play a song wrong once and it's a mistake. Play it wrong twice and it's >jazz. ;-) Hehe ;-) Well, I'm not the friend of highly improvised jazz, but it's a bit boring to play a song always the same way. >There are a couple of common drum loops used (the 'Paid in full' loop was >horribly overused), but if you're talking about a standard 4 on the floor >techno beat, that's just a bass drum on every quarter note. It's not like >they're sharing that. I don't mean techno, but rather the dancefloor type where you only have very few beats and that typical overlengthened half-open hi-hats. >That would be like saying "Well, all the programs out there are just >sharing the same main() construct in the programs." Isn't that true? ;-) >I somehow got the impression that you thought it was good computer music. >;-) I mean that song isn't bad, but Harold Faltermeyer isn't necessarily that good. >I know tons about John Williams soundtracks, actually. Reall? I'm still looking for the Superman soundtrack... >Yep, and all those movies were made before synthesizers were heavily used >in theater. He used synths realtively early, just think of Close Encounters. >All you've got to do now is listen to the soundtrack to Star >Wars: Episode 1. Almost all of it is synth work. From John Williams >himself. I think the only synth used in Episode 1 is a howling sound in one of the battle tracks, but otherwise it's all the London Symphony Orchestra. >"pop a cap" I guess is slang for shooting a bullet, and "smoke a blunt" >means to smoke a "blunt", or a marijuana filled cigar. I had never heard >the term "dissin'", either (means disrespecting). Certainly not my kind of language. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 06:23:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25180 for dynarec-outgoing; Mon, 13 Mar 2000 06:23:28 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Music Date: Mon, 13 Mar 2000 14:43:17 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com [lyrics] >And it shouldn't be the main focus, which was my original point. Yeah, the music is what impresses me first. Only later I notice if the text is good or crap. >What's weird to me is that I flatly do not hear words when I hear a song. >It's just another sound to me. That means if you feed me music that is >done in a language I don't speak, I can still sing it back. You have to try that with Arabic music ;-) >Again, it's all in how it's assembled. Most drum machines are just >triggers of drum sounds without any expressive abilities. But there are >drum machines that do physical modeling and simulate all apsects of the >nuances of drums (FWIW, I was a drummer for about 7 years). I read that the Roland V-drums should be quite good, but I haven't heard these yet. >There are some amazing "Oh my god, that's a drum machine?" recordings that >exist. The problem is that the only time you know it's bad is when it is >bad. When it's good you won't notice! Do you know any examples? >Oh that's not true. You have to get the right drum machine, though. If >you've ever had to deal with mixing a drum set you'd think differently as >well. Well, most drum recordings are crap anyway. When I set up my kit I thought I was unable to get it right because I got the snare sound every time I hit one of the tom-toms or the bass drum. In good recordings you notice that this is the case for all set ups but most just filter that away. >Hell, even Neil Peart (best drummer in existence) uses drum machines >and acoustic drums. That name does sound familiar but I'm not sure if I know any of his work. But it seems you've never heard Vinnie Colaiuta or Dave Weckl. A relatively unkown but great drummer is Gary Chaffee. On the Mick Goodrick album Biorhythms he plays on a song simply called Groove Test, and that's how it sounds ;-) BTW, Stuart Elliott does drum programming and sometimes plays Simmons E -drums, you just have to know when to use what. >No, they say "Go make a 'song' that will sell these pasty boys". And >that's all the producers are capable of. And they in turn say "Gee, I have >these old crappy drum tracks laying around. I'll just cut & paste them >into this 'new' track." That's why I called it assembly line music. Yeah, as long as you have some cute guys hopping around the chicks will buy it... >It's not hard to program. Like anything, once you've figured out how to >work with it, it's easy to continue. You have to listen to some Vinnie Colaiuta tracks. This is where you think he must have at least four arms and three legs and two brains to coordinate it all... Such things will be very tricky to programm. >That doesn't surprise me. Most couldn't tell a cheesy drum machines from >a real drum set anyway. Yeah, and some drums are recorded that bad that the drummer could beat trash cans and you wouldn't hear a difference. My father has the first Wilson Philips albums where I thought: the drummer is not bad but the drums sound like plastic. I was shocked to find out that the drummer is John Robinson, who plays a Pearl Masters and a brass snare! The recording is just crap! >Dead? The drummer from Toto? Up to my knowledge, yes. >I don't think that's their goal. With this statement you assume that's >their goal. You have to assume that they're "just trying to get something >done" without actually thinking about overall construction. I cannot for >one second believe any top 40 or popular musician with no talent would >really say "Let's try to make this sound like real, acoustic drums.". I didn't mean that the want to have it sound like acoustic drums, but they still have something that can be identified as snare, bass drum, and hi-hats, which totally gets onto my nerves. Either it should sound like a real drum kit or they shouldn't try to imitate a kit. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 06:53:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25301 for dynarec-outgoing; Mon, 13 Mar 2000 06:53:14 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Off Topic: Language Date: Mon, 13 Mar 2000 15:28:34 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >It's pretty similar: 'la luna' femenine, 'el sol' masculine. Oops, I wrote "le sol". There you see how good your English is compared to my Spanish! >Perhaps I will ask >someone about why in latin languages exists masculine/femenine for objectes (why >a table 'mesa' in spanish is femenine ...). That surely comes from Latin "mensa", which is feminine too. >There are some cases where a same word can >be used in femenine and masculine, for exemple sea, in spanish 'mar': the normal >way is to say 'el mar' but also is used 'la mar' in poetry. In German we have some words in several genders while every means something different. Poetry is a special case of course. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 06:53:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25312 for dynarec-outgoing; Mon, 13 Mar 2000 06:53:17 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Date: Mon, 13 Mar 2000 15:31:30 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >In Dixie (where I'm working) we use many passes in static translation. We build >a translation, we execute it, it fails somewhere because of not translated >address, this is stored in a file and passed to the translator and another >translation is builded. Yeah, that's know as the fallback method. Some static translator don't retranslate but interpret in such a case tough. >So on until all code used is translated. Not really >aplicable to emulation I think. Certainly too slow! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 06:53:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25313 for dynarec-outgoing; Mon, 13 Mar 2000 06:53:17 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Mon, 13 Mar 2000 15:34:42 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >This seems a general purpose mail list now :) I think NB never defined which topics are allowed ;-) >Luckyly we are only a three persons and not a hundred :) Too true. We'd get covered with messages otherwise! >And if you talk about languages I know a middle way french-spanish language too, >catalonian, it's the language of the country (region) I life and I think is a >really beatiful language for literature. Wow! Only four guys on the list and two know very rare language like Welsh or Catalonian! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 08:57:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA25771 for dynarec-outgoing; Mon, 13 Mar 2000 08:57:51 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CD0FC9.6821E1FB@eurocopter.de> Date: Mon, 13 Mar 2000 16:56:57 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Really? Like who? > > What I can't stand or what I like? I meant who you like, but you can tell us who you don't like too. It's just that the former list is likely to be shorter. :) > > There is a difference to the way a British person and an American person > > pronounces the word too. You actually say it as Col-Or and we say it as > > Col-Er. The "ou" sound comes from French. That may be why we have different > > spellings. > > It's pronounced col-er. But how you get an "er" out of "our" is beyond me. > But then again, British English has a far worse problem of taking words > from other languages, not altering their spelling and changing the way > they're pronounced. ;-) But we don't say "Col-er" though. I've changed my mind. It's more like "Col-ur". :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 13 08:58:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA25780 for dynarec-outgoing; Mon, 13 Mar 2000 08:58:35 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CD0FB7.EA938400@eurocopter.de> Date: Mon, 13 Mar 2000 16:56:39 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Victor's recomp comments Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > After all, anything that can create several different tones could be called > > instrumental. Even a *voice* is an instrument! > > Absolutely! Even things that can create only one tone are instruments. But > my point is that what the voice says should have no bearing on the > musicality. I'd agree with this most of the time, but I hate the music by the various boy bands mainly because of the words - so I can't say I'm 100% with this. :) > > I bet I would when a violin is involved. I've heard some really nice > > synths - like the flagship Yamaha one. It still can't produce a realistic > > violin sound. At least: I can tell the difference. > > You can tell a difference in that instance. Violins are infinitely > expressive instruments and it's tough to mimic things like that. But done > correctly, you can't tell a difference. It's not often done correctly. > It's certainly not the technology that's the problem. It's the > effort/quality of work put into it by the programmer in the first place. Of course. There's no reason why it CAN'T be done properly - it's just difficult to do. > But more to the point, I don't see why anyone would want to. Synths are > instruments in and of themselves. Okay, but then we can't talk about sampling anymore. Unless you mean that you should use a synth AND a violin. > > the difference. But there are some instruments that can't be reproduced too > > well at the moment. The trumpet is another example - I can usually tell the > > difference too! > > No, they can be reproduced quite well. It's just rare that they're > actually done well. I've heard one good example of a trumpet on a Roland, but I can't tell you what the model number was... > > That's the difference between a musician and a wannabe. :) > > Or a "DJ". I have a saying: > > DJ's are to music as security guards are to law enforcement. > > Totally true. ;-) I like that saying. I might just liberate that. :) > > Agreed. Crap. Well, some modern rock is okay, but if I'm going for rock, I > > prefer it from the 60's-70's and early 80's periods. > > Yeah. Modern rock is quite scarce in terms of quality. Agreed. Some of the bands I do like who can do this are "Manic Street Preachers" and "Stereophonics". Don't know if you've heard of them or not. > > Do you use those? Because if you do, I've *never* heard of that before! :o > > No, no, no no.... I'm just saying they'd be better spellings than what > we've got currently. Ah, good. I thought I was going mad there. :)) > > You're right - technically they are better spellings. But they look so > > terrible to me at the moment! :o > > Yeah. I read "Dout" as Data Out, and a "suttle" as "scuttle". ;-) I don't know what I read them as, they just didn't make sense. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 14 08:22:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA30460 for dynarec-outgoing; Tue, 14 Mar 2000 08:22:51 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003141609.RAA12651@pons.ac.upc.es> Subject: DYNAREC: New mul8 list In-Reply-To: <38CD0FC9.6821E1FB@eurocopter.de> from Neil Griffiths at "Mar 13, 2000 04:56:57 pm" To: dynarec@synthcom.com Date: Tue, 14 Mar 2000 17:09:42 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Is the new mul8 list working? I haven't recieved any mail. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 14 08:41:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA30515 for dynarec-outgoing; Tue, 14 Mar 2000 08:41:45 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CE6725.6F0AB1E2@eurocopter.de> Date: Tue, 14 Mar 2000 17:21:57 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New mul8 list References: <200003141609.RAA12651@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Is the new mul8 list working? I haven't recieved any mail. I haven't either - and I've tried sending some! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 14 08:48:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA30532 for dynarec-outgoing; Tue, 14 Mar 2000 08:48:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003141633.RAA02650@pons.ac.upc.es> Subject: Re: DYNAREC: New mul8 list In-Reply-To: <38CE6725.6F0AB1E2@eurocopter.de> from Neil Griffiths at "Mar 14, 2000 05:21:57 pm" To: dynarec@synthcom.com Date: Tue, 14 Mar 2000 17:33:54 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > Is the new mul8 list working? I haven't recieved any mail. > > I haven't either - and I've tried sending some! :o > > I'm too, and I haven't received it yet :( NB, what is happening :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 14 09:13:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA30635 for dynarec-outgoing; Tue, 14 Mar 2000 09:13:30 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 14 Mar 2000 09:13:29 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: New mul8 list In-Reply-To: <38CE6725.6F0AB1E2@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Is the new mul8 list working? I haven't recieved any mail. > I haven't either - and I've tried sending some! :o Sorry - I had a split line with a hard carriage return in it instead of a wrapped one in the configuration file. It works now! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 14 09:27:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA30693 for dynarec-outgoing; Tue, 14 Mar 2000 09:27:51 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CE722C.A8FA7B70@eurocopter.de> Date: Tue, 14 Mar 2000 18:09:00 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New mul8 list References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi. > > > Is the new mul8 list working? I haven't recieved any mail. > > I haven't either - and I've tried sending some! :o > > Sorry - I had a split line with a hard carriage return in it instead of a > wrapped one in the configuration file. It works now! Okay, cool. Thanks! BTW, I've just been listening to your "pasion.mp3" track. It's very nice. In particular, I found the last minute or so particularly good - not sure why, it just appeals more to me. The music reminds me of Jarre, but that could just be me. Whatever, that's certainly a compliment - I like Jean Michelle Jarre. :) It would sound better when not in MP3 format - but then I'm not listening with my HiFi but with a pair of crappy Phillips headphones, so I can't really tell. BTW, the 5.1 compression used on DVDs can be used on regular sound files to give a very nice compression ratio, but keep the majority of the quality. Especially so because it doesn't have the 12 or 16KHz cutoff that MP3 usually has - it goes up to either 20 or 24KHz. And can anyone tell me what "FWIW" means? I've seen NB use it on numberous times, but I'm not sure what it means! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 14 10:07:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA30830 for dynarec-outgoing; Tue, 14 Mar 2000 10:07:46 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 14 Mar 2000 10:07:45 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: New mul8 list In-Reply-To: <38CE722C.A8FA7B70@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > BTW, I've just been listening to your "pasion.mp3" track. It's very nice. > In particular, I found the last minute or so particularly good - not sure > why, it just appeals more to me. The music reminds me of Jarre, but that > could just be me. Whatever, that's certainly a compliment - I like Jean > Michelle Jarre. :) Eeeew... nice sound effects, but lousy musicality... But yeah, I like some of his work too - Zoolook. > It would sound better when not in MP3 format - but then I'm not listening > with my HiFi but with a pair of crappy Phillips headphones, so I can't Yeah. It's encoded at 160kbps and it really trashes the high end and dynamics. You can also download the .WAV of it if you want 60+MB to download. ;-) It's in the same folder. > really tell. BTW, the 5.1 compression used on DVDs can be used on regular > sound files to give a very nice compression ratio, but keep the majority of > the quality. Especially so because it doesn't have the 12 or 16KHz cutoff > that MP3 usually has - it goes up to either 20 or 24KHz. It's still lossy, though. > And can anyone tell me what "FWIW" means? I've seen NB use it on numberous > times, but I'm not sure what it means! For What It's Worth. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 14 10:39:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA30953 for dynarec-outgoing; Tue, 14 Mar 2000 10:39:35 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Tue, 14 Mar 2000 19:23:03 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com I thought you might have some feedback... I have to admit that this isn't the style of music I listen to very often so it's possible that I don't appreciate the right features. It certainly is a real synth song, which exploits some typical synth effects. Especially the echo and pitch are nice. It's also cool to have the 'bass' play parts of the tune and not only use it for rhythm purposes. Just as NG I think the last minute (and 15 seconds) is the best part because new sounds and a new tune are introduced, and the ending is quite nice - I just hate the fade outs most do when they don't come up with a good ending. Although encoded with 160kbps instead of the standard 128kbps I get the impression that MP3 might have 'flattened' the song a bit... Certainly not a bad song, and after listening to it several times I had the one tune (the one NG also seems to enjoy) in my head for hours, so it must have made a bigger impression on me than I first though... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 14 10:58:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA31076 for dynarec-outgoing; Tue, 14 Mar 2000 10:58:57 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 14 Mar 2000 10:58:56 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > I thought you might have some feedback... > I have to admit that this isn't the style of music I listen to very > often so it's possible that I don't appreciate the right features. That's fairly common. If you don't listen to synth music it's tough to really "get it" fully. I've had people listen to this track a million times and I can still point out things that they hadn't heard before. BTW, Did you hear a voice (as in a human voice) in the track anywhere? There's one there, and it's mine... > Just as NG I think the last minute (and 15 seconds) is the best part > because new sounds and a new tune are introduced, and the ending is > quite nice - I just hate the fade outs most do when they don't come up > with a good ending. Yep - me too. I personally like the tail end of it myself. What's funny is so many people tell me that synth music is emotionless crap. Well, there's tons of emotion in Passion! > Although encoded with 160kbps instead of the standard 128kbps I get the > impression that MP3 might have 'flattened' the song a bit... It did. > Certainly not a bad song, and after listening to it several times I had > the one tune (the one NG also seems to enjoy) in my head for hours, so > it must have made a bigger impression on me than I first though... And that's the entire goal. Creating something that sticks in your head that doesn't get tiring after repeated listenings. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 14 11:21:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA31262 for dynarec-outgoing; Tue, 14 Mar 2000 11:21:29 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Tue, 14 Mar 2000 20:06:27 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >That's fairly common. If you don't listen to synth music it's tough to >really "get it" fully. I've had people listen to this track a million >times and I can still point out things that they hadn't heard before. I just wanted to warn that I'm not an expert might not reach the intended result. >BTW, Did you hear a voice (as in a human voice) in the track anywhere? Nope... >There's one there, and it's mine... Now that you mention it... I think it's in the background and comes through in a few places, eg. after 27 seconds, right? >Yep - me too. I personally like the tail end of it myself. Yeah it's really not bad. >What's funny is >so many people tell me that synth music is emotionless crap. Well, there's >tons of emotion in Passion! There is threat, peace, joy, ... >And that's the entire goal. Creating something that sticks in your head >that doesn't get tiring after repeated listenings. My first impression was that there are some lengths with too less change, but it's similar with jazz. If there is a jazz song I like on first hearing then it's likely that I find it boring soon. For the others I have to found a small part of the song that I really like (in your song the part after 3:30) to have a starting point. When I listen to a song over and over again I'll either find out that it's more better than I thought at first or it will just turn out to be boring. Your song seems to belong to the group where my liking increases with repeated listening. That's why I stated my opinion this late, because I know that I need some time with certain songs... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 14 18:42:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id SAA32983 for dynarec-outgoing; Tue, 14 Mar 2000 18:42:26 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: C to ASM question Date: Wed, 15 Mar 2000 03:27:14 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, this isn't directly a dynarec related question, but I think some of you should know enough assembly to help me. To learn more about x86 assembly I just wanted to see what kind of code the BeOS port of the GCC produces for a simple function. And the function I tested is very simple indeed: int inc(int i) { return i++; } The output without optimisation is a bit long, but seems to be correct: .file "inc.c" gcc2_compiled.: .text .align 4 .globl inc .type inc,@function inc: pushl %ebp movl %esp,%ebp movl 8(%ebp),%eax incl 8(%ebp) movl %eax,%eax jmp .L1 .p2align 4,,7 .L1: movl %ebp,%esp popl %ebp ret .Lfe1: .size inc,.Lfe1-inc .ident "GCC: (GNU) 2.9-beos-980929" But with the option -O1 GCC seems to "overoptimise": .file "inc.c" gcc2_compiled.: .text .align 4 .globl inc .type inc,@function inc: pushl %ebp movl %esp,%ebp movl 8(%ebp),%eax movl %ebp,%esp popl %ebp ret .Lfe1: .size inc,.Lfe1-inc .ident "GCC: (GNU) 2.9-beos-980929" Either I'm totally nuts or the code only copies the argument to the accumulator and does nothing with it! Is this a compiler error or am I just too stupid today? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 14 19:30:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id TAA33130 for dynarec-outgoing; Tue, 14 Mar 2000 19:30:04 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 14 Mar 2000 19:30:03 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > To learn more about x86 assembly I just wanted to see what kind of code > the BeOS port of the GCC produces for a simple function. Yeuck. First and foremost, remember that GCC generates *HORRIBLE* x86 code. It might do fine for RISC based architectures Secondly, don't get used to AT&T verbose, backwards-assed syntax. It makes things a bitch to read. For example: movl %esp, %ebp The "l" on the mov instruction isn't necessary because esp and ebp by their very definition are long. And secondly, it should be "mov ebp, esp", as in ebp=esp, not the other way around. Gas is universally laughed as as an assembler. Use NASM instead. It doesn't used screwed up, verbose syntax. Lastly, GCC generates code using stack calling conventions, which by its very nature is slower than register calls. Okay, off my soapbox now. Let's get to your example: And the > function I tested is very simple indeed: > > int inc(int i) > { > return i++; > } Technically, I shouldn't actually return I being incremented because it's a post ++. That's what the code does: > pushl %ebp > movl %esp,%ebp > movl 8(%ebp),%eax ; eax=[ebp+8] > incl 8(%ebp) ; Increments the value on the stack > movl %eax,%eax ; Braindead > jmp .L1 > .p2align 4,,7 > .L1: > movl %ebp,%esp > popl %ebp ; Return value in eax. It's correct. > But with the option -O1 GCC seems to "overoptimise": > pushl %ebp > movl %esp,%ebp > movl 8(%ebp),%eax > movl %ebp,%esp > popl %ebp > ret Nope. It's right. The increment happens after the return happens. Since it's incrementing a stack variable that is only valid during the procedure, it gets eliminated. This is actually correct. Here's what Watcom produces: Module: C:\TEMP\TEST.C Group: 'DGROUP' CONST,CONST2,_DATA,_BSS Segment: _TEXT BYTE USE32 0000001 bytes 0000 c3 inc_ ret No disassembly errors ------------------------------------------------------------ Perhaps you meant to: int inc(int i) { return ++i; } If so, here's what Watcom produces: Module: C:\TEMP\TEST.C Group: 'DGROUP' CONST,CONST2,_DATA,_BSS Segment: _TEXT BYTE USE32 00000002 bytes 0000 40 inc_ inc eax 0001 c3 ret No disassembly errors ------------------------------------------------------------ This is default optimization in Watcom. Even though this version of the compiler is now 5 years old, it still blows the doors off GCC and any other compiler for the x86 platform. I've done case studies of the others if you're interested. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 00:06:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA33926 for dynarec-outgoing; Wed, 15 Mar 2000 00:06:32 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CF4090.CCD19BCF@est.fib.upc.es> Date: Wed, 15 Mar 2000 08:49:37 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Bradley wrote: > Secondly, don't get used to AT&T verbose, backwards-assed syntax. It makes > things a bitch to read. For example: > > movl %esp, %ebp > > The "l" on the mov instruction isn't necessary because esp and ebp by > their very definition are long. And secondly, it should be "mov ebp, esp", > as in ebp=esp, not the other way around. > > Really uggly :) In AT&T destination and target register are swapped. The first time I saw this kind of assembly I get a terrible headache. > > Lastly, GCC generates code using stack calling conventions, which by its > very nature is slower than register calls. > > Okay, off my soapbox now. Let's get to your example: > > And the > > function I tested is very simple indeed: > > > > int inc(int i) > > { > > return i++; > > } > > Technically, I shouldn't actually return I being incremented because it's > a post ++. That's what the code does: > Ops, I didn't see this ... Michel has found a really weird example. OK. I have thought something. You say you have 'zillions' (10^10000000000.....0 ;) new ideas. I don't have so many ideas ;) but perhaps I will think some. Why not do a 'week subject' and discuss about it? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 00:14:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA33946 for dynarec-outgoing; Wed, 15 Mar 2000 00:14:52 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 15 Mar 2000 00:14:51 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Now that you mention it... > I think it's in the background and comes through in a few places, eg. > after 27 seconds, right? Nope. That's a synth - purely. The voice hits (which are very quick), are at 01:04. It is then "stacatto'd" and panned back and forth. You heart it again in the same form at 4:12. It's not the voice that's most prominent - it's panned left and right. But it's there. The prominent crying voice you hear at 4:12 is a bizarre synthesizer called an Oberheim Matrix 12. Here's a set of pictures of my recording studio: http://www.synthcom.com/~neil/studio1.jpg http://www.synthcom.com/~neil/studio2.jpg http://www.synthcom.com/~neil/studio3.jpg http://www.synthcom.com/~neil/studio4.jpg The Matrix 12 is the bottom synthesizer in the "studio2.jpg" picture above. > >Yep - me too. I personally like the tail end of it myself. > Yeah it's really not bad. Hm.... I'm not sure how to take this. ;-) When somone says "really not bad" it usually means "it doesn't totally suck". ;-) > >What's funny is > >so many people tell me that synth music is emotionless crap. Well, > >tons of emotion in Passion! > There is threat, peace, joy, ... Frustration, anxiety, and hopefulness. > >And that's the entire goal. Creating something that sticks in your > >that doesn't get tiring after repeated listenings. > My first impression was that there are some lengths with too less > change, but it's similar with jazz. If there is a jazz song I like on As long as it doesn't go on too long... > others I have to found a small part of the song that I really like (in > your song the part after 3:30) to have a starting point. When I listen Yeah, everyone seems to like that part of it, too. It's weird how I came up with it, too. The actual original "tune" was the sequence from 3:38 to 3:45. I was fiddling around with the OB-8 (board above the Matrix 12) one night really, really late and I had it going through an effects processor with fairly heavy chorusing and delay. > Your song seems to belong to the group where my liking increases with > repeated listening. That's why I stated my opinion this late, because I > know that I need some time with certain songs... Hope so. ;-) I've put up another one for your listening (hopefully) pleasure... Quite a bit more synthpoppy, but still sonically interesting. I have some other really bizarre stuff, too if you're interested. Here's two more tracks if you get bored: ftp://mp3:gimmegoa@archive.synthcom.com/mp3s/Unsorted/artinmo.mp3 ftp://mp3:gimmegoa@archive.synthcom.com/mp3s/Unsorted/transist.mp3 The former is synthpoppy and has an un-faded ending. It originally was to have words. The second is a bit more Jarreish. Enjoy! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 00:16:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA33966 for dynarec-outgoing; Wed, 15 Mar 2000 00:16:32 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CF4271.F50AACAB@eurocopter.de> Date: Wed, 15 Mar 2000 08:57:37 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New mul8 list References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Eeeew... nice sound effects, but lousy musicality... But yeah, I like some > of his work too - Zoolook. I disagree with "lousy musicality". Although some of his earlier stuff was, his modern stuff isn't. I can MP3 up one of his modern tracks of his new album (Metamorphoses, released last month) if you don't believe me. ;) > > It would sound better when not in MP3 format - but then I'm not listening > > with my HiFi but with a pair of crappy Phillips headphones, so I can't > > Yeah. It's encoded at 160kbps and it really trashes the high end and > dynamics. You can also download the .WAV of it if you want 60+MB to > download. ;-) It's in the same folder. I didn't use an FTP program to get it - I'm behind a proxy/firewall. Yuk, no regular FTP. I've got to use *shudder* Netscape! Aaarggghh! > > really tell. BTW, the 5.1 compression used on DVDs can be used on regular > > sound files to give a very nice compression ratio, but keep the majority of > > the quality. Especially so because it doesn't have the 12 or 16KHz cutoff > > that MP3 usually has - it goes up to either 20 or 24KHz. > > It's still lossy, though. Of course. But the difference is that you can't tell anymore. Some of my friends are really heavily into HiFi. We went around to one guys house who has some really nice kit (all Meridian). The speakers, in particular, were DSP5000s. They're selling for 1750 pounds per SPEAKER in the UK. So 3500 for both. As you can imagine, pretty damn nice speakers. All digital transfer etc. Anyway, we tried out many types of lossy compressions to see which sounded the best. It was the one I mentioned before, without doubt. You couldn't tell the difference on some recordings - and the ones that you could were barely noticable. Seriously, it's good enough that you can compress the file and uncompress it later to do editing work on. Although lossy, you just aren't going to notice the difference. And if you do, you've got some seriously good kit there. > > And can anyone tell me what "FWIW" means? I've seen NB use it on numberous > > times, but I'm not sure what it means! > > For What It's Worth. Ah, thank you! I figured something like that, but I never knew exactly what it was. For me, it was JAMA - Jusy Another Meaningless Acronym. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 00:23:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA33979 for dynarec-outgoing; Wed, 15 Mar 2000 00:23:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 15 Mar 2000 00:23:15 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: New mul8 list In-Reply-To: <38CF4271.F50AACAB@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Eeeew... nice sound effects, but lousy musicality... But yeah, I like some > > of his work too - Zoolook. > I disagree with "lousy musicality". Although some of his earlier stuff was, > his modern stuff isn't. I can MP3 up one of his modern tracks of his new > album (Metamorphoses, released last month) if you don't believe me. ;) Anything up to the early 90's was weak musically. Upload an MP3 of his latest stuff. > > > really tell. BTW, the 5.1 compression used on DVDs can be used on regular > > > sound files to give a very nice compression ratio, but keep the majority of > > > the quality. Especially so because it doesn't have the 12 or 16KHz cutoff > > > that MP3 usually has - it goes up to either 20 or 24KHz. > > It's still lossy, though. > Of course. But the difference is that you can't tell anymore. Uh, do you mean MP3s or the 5.1 channels on DVD? It's obviously less important with DVDs and movies in general, but you absolutely, positively *CAN* tell a difference. Most notably muted high end, grainy hi hats, squished dynamic range, and attack times on things get smeared. Of course, techno and highly detailed music are affected the most (my music, for example). If you don't believe me, download the MP3 of my tunes and the wave files. There's a *HUGE* amount of detail lost at 160Kbps. If you can't hear it, I'm sorry, but you're deaf. > Some of my > friends are really heavily into HiFi. We went around to one guys house who > has some really nice kit (all Meridian). The speakers, in particular, were > DSP5000s. They're selling for 1750 pounds per SPEAKER in the UK. So 3500 > for both. As you can imagine, pretty damn nice speakers. All digital Well, I have a pair of Kef series 107/2's that cost $7500/US. Does that count? ;-) I'm driving it with a Denon AVR-5600 receiver and a Denon DCD-2500. > compress the file and uncompress it later to do editing work on. Although > lossy, you just aren't going to notice the difference. And if you do, > you've got some seriously good kit there. The difference is instantly noticeable. Remember that I've got over a decade's worth of studio production experience and I'm trained to listen to imperfections, which jump out at me - not because I'm looking for them, but because I've trained myself to hear these flaws in the studio. I'm sure that if I pointed out the differences you'd NEVER be able to not hear them. If you A/B the wav file and the MP3 file, you'll notice a nasty amount of difference. Really, though, the MP3 file format is popular only because of bandwidth limitations of most people's downloads. In 5 years, MP3 won't need to exist for most of the world. Wav files (or uncompressed) are better quality and the need for compressing things will be diminished. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 00:24:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA33988 for dynarec-outgoing; Wed, 15 Mar 2000 00:24:09 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CF441F.5DD2C94D@eurocopter.de> Date: Wed, 15 Mar 2000 09:04:47 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > That's fairly common. If you don't listen to synth music it's tough to > really "get it" fully. I've had people listen to this track a million > times and I can still point out things that they hadn't heard before. I listen to synth music quite a bit, scarily enough. Isn't my favourite form of music, but I find it very relaxing. > BTW, Did you hear a voice (as in a human voice) in the track anywhere? > There's one there, and it's mine... Nope. And I've listened through it again and I *still* can't hear it. Even though Mike said around 27 seconds, I can't hear it. As I said, I've got these really crappy Phillips headphones. :o Never mind, I've got to get myself a new amp now - and when I do, I'll probably get myself a pair of Sennheissers - either the 590 or 600. Very, very nice headphones! > > Just as NG I think the last minute (and 15 seconds) is the best part > > because new sounds and a new tune are introduced, and the ending is > > quite nice - I just hate the fade outs most do when they don't come up > > with a good ending. > > Yep - me too. I personally like the tail end of it myself. What's funny is > so many people tell me that synth music is emotionless crap. Well, there's > tons of emotion in Passion! Agreed. No, I don't believe it's emotionless crap. I guess you have to listen a bit more. Thing is, with other instruments, you can stress emotion with the instrument - by strumming or hitting (etc) the relevant parts as hard or soft as you like. However, you can't do that with a synth. Any emotion has GOT to be a part of the music - so you just have to listen a bit more to actually hear it. > > Although encoded with 160kbps instead of the standard 128kbps I get the > > impression that MP3 might have 'flattened' the song a bit... > > It did. Always does. That's why I don't like MP3 that much. Mind you, the Xing encoder also has a 20KHz cutoff which makes them sound better - but it suffers in other places because it isn't the best encoder for MP3. I generally don't compress music that I don't need to. I have all my music on CD! > > Certainly not a bad song, and after listening to it several times I had > > the one tune (the one NG also seems to enjoy) in my head for hours, so > > it must have made a bigger impression on me than I first though... > > And that's the entire goal. Creating something that sticks in your head > that doesn't get tiring after repeated listenings. I think that's the goal of any piece of music, ultimately. That - and to tell a story. I can rate music on how good the story in it is. If there's no story, I don't like the song. If there's a good story, I like the song. Sounds strange, but that is the best way to describe the way I deal with it. Also, it explains my distaste for club music, the bunch of sh*te that it is. As a general rule, anyway. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 00:28:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA34009 for dynarec-outgoing; Wed, 15 Mar 2000 00:28:06 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CF4512.9D6CE7CE@eurocopter.de> Date: Wed, 15 Mar 2000 09:08:50 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > function I tested is very simple indeed: > > > > int inc(int i) > > { > > return i++; > > } > > Technically, I shouldn't actually return I being incremented because it's > a post ++. That's what the code does: Surely it should return it incremented? Why? Well, it's a post operation incrementor. There are no operations, so the ++ gets run. And then it returns it. Return isn't an operation! If it said something like: return i + i++; then I think you may have a point. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 00:29:07 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA34018 for dynarec-outgoing; Wed, 15 Mar 2000 00:29:07 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 15 Mar 2000 00:29:06 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: <38CF441F.5DD2C94D@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > listen a bit more. Thing is, with other instruments, you can stress emotion > with the instrument - by strumming or hitting (etc) the relevant parts as > hard or soft as you like. However, you can't do that with a synth. Yes you can. You just have to have the right synth and operator to do it. > Any > emotion has GOT to be a part of the music - so you just have to listen a > bit more to actually hear it. It actually just depends upon the "performance". whether or not it's sequenced, you can do all kinds of things to put the right feel into it. Sometimes it's with an expressive voice. The key is putting it in in the first place, which is a step a lot of synth musicians skip. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 00:35:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA34065 for dynarec-outgoing; Wed, 15 Mar 2000 00:35:37 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 15 Mar 2000 00:35:36 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question In-Reply-To: <38CF4512.9D6CE7CE@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Technically, I shouldn't actually return I being incremented because it's > > a post ++. That's what the code does: > Surely it should return it incremented? Why? Well, it's a post operation > incrementor. There are no operations, so the ++ gets run. And then it > returns it. Return isn't an operation! No, but the statement is an expression: return i++; Says "return the value of i, then increment i". If you said: if (i++) It would evaluate the "if" before incrementing i. It would not be part of the equation. "if" And "return" are both operations. Expression compilation doesn't care how it's applied. It evaluates the expression before any operation is done. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 00:38:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA34082 for dynarec-outgoing; Wed, 15 Mar 2000 00:38:47 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CF46DC.DA34EFAA@eurocopter.de> Date: Wed, 15 Mar 2000 09:16:28 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > The voice hits (which are very quick), are at 01:04. It is then > "stacatto'd" and panned back and forth. You heart it again in the same > form at 4:12. It's not the voice that's most prominent - it's panned left > and right. But it's there. Damn crappy headphones! I can't hear it! :o > Hm.... I'm not sure how to take this. ;-) When somone says "really not > bad" it usually means "it doesn't totally suck". ;-) But he's right. It's really not bad. ;) > > >What's funny is > > >so many people tell me that synth music is emotionless crap. Well, > > >tons of emotion in Passion! > > There is threat, peace, joy, ... > > Frustration, anxiety, and hopefulness. Frustration is towards the start of the song and hopefulness at the end? Well, that's my interpretation, anyway! > > My first impression was that there are some lengths with too less > > change, but it's similar with jazz. If there is a jazz song I like on > > As long as it doesn't go on too long... That's my opinion of Jazz. It's okay, so long as it doesn't go on too long. About 5 seconds should do it. ;) > Yeah, everyone seems to like that part of it, too. It's weird how I came > up with it, too. > > The actual original "tune" was the sequence from 3:38 to 3:45. I was > fiddling around with the OB-8 (board above the Matrix 12) one night > really, really late and I had it going through an effects processor with > fairly heavy chorusing and delay. Ah right! My friend likes synths (he was the one who introduced me to Jarre) and likes messing around with different things. He prefers analog stuff to digital, though. > I've put up another one for your listening (hopefully) pleasure... Quite a > bit more synthpoppy, but still sonically interesting. I have some other > really bizarre stuff, too if you're interested. I'll get them at midday today (my 1 hour of Internet time a day). And then I'll let you know what I think. Bet you're really excited now, aren't you? ;) > The former is synthpoppy and has an un-faded ending. It originally was to > have words. The second is a bit more Jarreish. Enjoy! I'll try! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 00:43:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA34099 for dynarec-outgoing; Wed, 15 Mar 2000 00:43:50 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 15 Mar 2000 00:43:49 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: <38CF46DC.DA34EFAA@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > The voice hits (which are very quick), are at 01:04. It is then > > "stacatto'd" and panned back and forth. You heart it again in the same > > form at 4:12. It's not the voice that's most prominent - it's panned left > > and right. But it's there. > Damn crappy headphones! I can't hear it! :o Damn crappy ears! Throw 'em out! ;-) > > Hm.... I'm not sure how to take this. ;-) When somone says "really not > > bad" it usually means "it doesn't totally suck". ;-) > But he's right. It's really not bad. ;) So does that mean you like it or not? > > Frustration, anxiety, and hopefulness. > Frustration is towards the start of the song and hopefulness at the end? > Well, that's my interpretation, anyway! Close... a bit of hopeful feeling followed by a letdown, hopeful, letdown, rock bottom, severe anxiety followed by renewed hopefulness. How's that? ;-) > > The actual original "tune" was the sequence from 3:38 to 3:45. I was > > fiddling around with the OB-8 (board above the Matrix 12) one night > > really, really late and I had it going through an effects processor with > > fairly heavy chorusing and delay. > Ah right! My friend likes synths (he was the one who introduced me to > Jarre) and likes messing around with different things. He prefers analog > stuff to digital, though. The OB-8 and Matrix 12 are analog synths. ;-) Most of my boards are. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 00:50:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA34185 for dynarec-outgoing; Wed, 15 Mar 2000 00:50:57 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CF4968.B4535D77@eurocopter.de> Date: Wed, 15 Mar 2000 09:27:20 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New mul8 list References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > I disagree with "lousy musicality". Although some of his earlier stuff was, > > his modern stuff isn't. I can MP3 up one of his modern tracks of his new > > album (Metamorphoses, released last month) if you don't believe me. ;) > > Anything up to the early 90's was weak musically. Upload an MP3 of his > latest stuff. Sure thing, but it'll have to be tomorrow now - I'll do it tonight when I get home from work. > > > It's still lossy, though. > > Of course. But the difference is that you can't tell anymore. > > Uh, do you mean MP3s or the 5.1 channels on DVD? It's obviously less > important with DVDs and movies in general, but you absolutely, positively > *CAN* tell a difference. Only on really high-end stuff. > Most notably muted high end, grainy hi hats, squished dynamic range, and > attack times on things get smeared. Of course, techno and highly detailed > music are affected the most (my music, for example). If you don't believe > me, download the MP3 of my tunes and the wave files. There's a *HUGE* > amount of detail lost at 160Kbps. > > If you can't hear it, I'm sorry, but you're deaf. Of course I can hear it! Even me, with these crappy headphones, can hear the difference with MP3 and the original. But I'm talking about the sound compression sort of used on DVDs. You see... you can compress a stereo file with it and not a 5 channel file. I agree that you can tell the difference when doing surround. But because there is more bitrate available when compressing a stereo file, you can't tell the difference - or you can, but you REALLY have to listen - HARD. I can't remember the name of the compressor now because I'm not really into sound compression. But I'll e-mail another one of my friends who uses it fairly regularly and I'll find out where you can download it from. Then you can try it out for yourself and see what I mean. You'll always (I think!) be able to tell the difference between a lossy compression and something with no loss. But at least they're getting to the point where it's really difficult - and not immediately obvious, like it is with MP3. Of course, it's only people who WANT the detail like yourself - or me - who notice. Heh, it's can only be people like me who spend a day trying out different algorithms to see which is the best! :)) > Well, I have a pair of Kef series 107/2's that cost $7500/US. Does that > count? ;-) I'm driving it with a Denon AVR-5600 receiver and a Denon > DCD-2500. Nice setup. You've obviously saved up there! I've only got a Cambridge Audio A2 amp driving JPW ML-310s. Mind you, they're in the UK at the moment - so I'll be buying a new HiFi over here! > The difference is instantly noticeable. Remember that I've got over a > decade's worth of studio production experience and I'm trained to listen > to imperfections, which jump out at me - not because I'm looking for them, > but because I've trained myself to hear these flaws in the studio. I've also been trained. Well, maybe not to the same finesse as you, but I certainly believe I'm good enough. Hell, if I can hear 5Hz difference between tones easily, then I believe I can do something similar here... > I'm sure that if I pointed out the differences you'd NEVER be able to not > hear them. If you A/B the wav file and the MP3 file, you'll notice a nasty > amount of difference. Absolutely. But I wasn't talking about MP3! > Really, though, the MP3 file format is popular only because of bandwidth > limitations of most people's downloads. In 5 years, MP3 won't need to > exist for most of the world. Wav files (or uncompressed) are better > quality and the need for compressing things will be diminished. We'll also see what the MPEG-2 sounds like. It's meant to sound really nice (and detailed), but I haven't had a chance to check that out yet... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 00:52:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA34200 for dynarec-outgoing; Wed, 15 Mar 2000 00:52:11 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CF4AE4.2E464AE1@eurocopter.de> Date: Wed, 15 Mar 2000 09:33:40 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > listen a bit more. Thing is, with other instruments, you can stress emotion > > with the instrument - by strumming or hitting (etc) the relevant parts as > > hard or soft as you like. However, you can't do that with a synth. > > Yes you can. You just have to have the right synth and operator to do it. So you can hit (hard) a note and hold it for 2 seconds or just press it and hold it for 2 seconds and you can tell the difference between them? On a piano, for instance, you can tell whether it was hit or just pressed. But unless the synth has analog so you can tell how far down you've pressed a key, you can't do this. You can use other methods, I won't deny. I was just saying that the normal way of detecting emotion cannot be done with a synth. Not unless there's some amazing synths I haven't heard of before... :o > > Any > > emotion has GOT to be a part of the music - so you just have to listen a > > bit more to actually hear it. > > It actually just depends upon the "performance". whether or not it's > sequenced, you can do all kinds of things to put the right feel into it. > Sometimes it's with an expressive voice. The key is putting it in in the > first place, which is a step a lot of synth musicians skip. Agreed. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 00:56:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA34221 for dynarec-outgoing; Wed, 15 Mar 2000 00:56:22 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CF4BB3.95729532@eurocopter.de> Date: Wed, 15 Mar 2000 09:37:07 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > No, but the statement is an expression: > > return i++; > > Says "return the value of i, then increment i". If you said: > > if (i++) > > It would evaluate the "if" before incrementing i. It would not be part of > the equation. "if" And "return" are both operations. Expression > compilation doesn't care how it's applied. It evaluates the expression > before any operation is done. Not by my understanding of how C compilers operate, but I could be wrong. I was quite under the impression that operations were dealt with before expressions - or before functions. The ++ operator just waits until all other operations have occurred and then does it. And then the functions and statements get executed. Certainly what I understood from Compiler Technology... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 01:01:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA34262 for dynarec-outgoing; Wed, 15 Mar 2000 01:01:50 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 15 Mar 2000 01:01:49 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: <38CF4AE4.2E464AE1@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > with the instrument - by strumming or hitting (etc) the relevant parts as > > > hard or soft as you like. However, you can't do that with a synth. > > Yes you can. You just have to have the right synth and operator to do it. > So you can hit (hard) a note and hold it for 2 seconds or just press it and > hold it for 2 seconds and you can tell the difference between them? It depends upon the voice and the synth, but absolutely, yes. Synths have several methods of expression on the keyboard/panels: * Aftertouch (pushing harder on the key after it has been pressed) * Velocity sensitive (you know what this is) * Velocity release * Ribbon controller (slidable controller at the base of the keys that run the length of the synth) * Pitch bend (alters pitch or other aspect of the sound) * Mod wheel (modulation of an aspect of the sound) * LFO Trigger (low frequency oscillator triggers an aspect of the sound) Any synth worth its weight or worth bothering with have the first 3 and the mod wheel/pitch bend. Even basic synths have this. More advanced ones have ribbon controllers and LFO triggers. If a given patch is set up to have the aftertouch modify the oscillator frequency, pressing harder will raise (or lower) it. You can also have it change the filter point, increase resonance, etc... The synthesizer is a configurable instrument and you can make it modify just about any aspect of the sound being generated. > You can use other methods, I won't deny. I was just saying that the normal > way of detecting emotion cannot be done with a synth. Not unless there's > some amazing synths I haven't heard of before... :o You just don't know enough about synths. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 01:02:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA34273 for dynarec-outgoing; Wed, 15 Mar 2000 01:02:49 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CF4D73.BC1E157@eurocopter.de> Date: Wed, 15 Mar 2000 09:44:35 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Damn crappy headphones! I can't hear it! :o > > Damn crappy ears! Throw 'em out! ;-) But then I'd have nothing to listen to at work - and I think they'd get annoyed if I use the internal speaker... :)) > > But he's right. It's really not bad. ;) > > So does that mean you like it or not? I like it, actually. I'm quite looking forward to the others! I've heard a lot of crap synth music, but I wouldn't place this amongst it. Certainly not! > > Frustration is towards the start of the song and hopefulness at the end? > > Well, that's my interpretation, anyway! > > Close... a bit of hopeful feeling followed by a letdown, hopeful, letdown, > rock bottom, severe anxiety followed by renewed hopefulness. How's that? > ;-) I like my description - it's shorter to type. :) > > Ah right! My friend likes synths (he was the one who introduced me to > > Jarre) and likes messing around with different things. He prefers analog > > stuff to digital, though. > > The OB-8 and Matrix 12 are analog synths. ;-) Most of my boards are. I know, actually. It just shows - I *do* listen to him sometimes. He just goes on about how much he hates digital stuff and analog stuff is better. Whether he's right or not (which I think he is, although digital has its place), I just wish he'd shut up about it! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 01:08:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA34291 for dynarec-outgoing; Wed, 15 Mar 2000 01:08:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 15 Mar 2000 01:08:09 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: <38CF4D73.BC1E157@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > The OB-8 and Matrix 12 are analog synths. ;-) Most of my boards are. > I know, actually. It just shows - I *do* listen to him sometimes. He just > goes on about how much he hates digital stuff and analog stuff is better. > Whether he's right or not (which I think he is, although digital has its > place), I just wish he'd shut up about it! :) Well, the root word of "analog" is "anal". ;-) He's an analog Nazi. I used to think this way about 6 years ago, but I've got many digital synths, too. I even have an analog modeling synth (Roland JP-8000) that does an incredible job of modeling analog synths. It's a cross between the Jupiter 8 and Jupiter 6. When I first tried it out, I thought it sucked. the second time, I thought it was promising. The third time I bought it. The attractiveness of an analog synth is the filters and bizarre ways things can be interconnected which can't always be done with digital synths (though any modern synth is really, really configurable). Each synth has its own charm, where digital ones tend to be a bit sterile. Though, synths released in the last few years don't suffer from being sterile. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 01:09:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA34300 for dynarec-outgoing; Wed, 15 Mar 2000 01:09:47 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CF4EB0.A76062A3@eurocopter.de> Date: Wed, 15 Mar 2000 09:49:52 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question References: <38CF4BB3.95729532@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Not by my understanding of how C compilers operate, but I could be wrong. I > was quite under the impression that operations were dealt with before > expressions - or before functions. The ++ operator just waits until all > other operations have occurred and then does it. And then the functions and > statements get executed. I just want to change what I said about functions. A function is an operation, so the i++ gets incremented after any functions. Just before someone else says it. ;) Things you remember, eh? :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 01:13:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA34316 for dynarec-outgoing; Wed, 15 Mar 2000 01:13:35 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 15 Mar 2000 01:13:34 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question In-Reply-To: <38CF4EB0.A76062A3@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Not by my understanding of how C compilers operate, but I could be wrong. I > > was quite under the impression that operations were dealt with before > > expressions - or before functions. The ++ operator just waits until all > > other operations have occurred and then does it. And then the functions and > > statements get executed. > I just want to change what I said about functions. A function is an > operation, so the i++ gets incremented after any functions. Just before > someone else says it. ;) But in the case of an evaluation operation (this includes assignments and that's what a return really is), the post increments will occur *AFTER* the operation occurs. This is how every compiler I've used acts (all claiming to be ANSI, and even though GCC sucks at optimization, it's fairly ANSI anal). -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 03:00:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA34678 for dynarec-outgoing; Wed, 15 Mar 2000 03:00:45 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CF686D.1002A4D2@eurocopter.de> Date: Wed, 15 Mar 2000 11:39:41 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > But in the case of an evaluation operation (this includes assignments and > that's what a return really is), the post increments will occur *AFTER* > the operation occurs. This is how every compiler I've used acts (all > claiming to be ANSI, and even though GCC sucks at optimization, it's > fairly ANSI anal). Hmm. I'm now thinking that you're right. It depends on how other compilers act. Do they act the same or differently? According to the Watcom ASM, it appears they act the same. Maybe "return" is a special case? I don't know, I haven't (by choice) read the ANSI standard for it. :) BTW, what do you think the best optimiser is? Watcom is bad at FPU optimisations, but good at everything else. Codewarrior is meant to be good, but I've never used it. VC6 is now pretty good. But best is meant to be the Intel compiler. Is that what you've found? I'd be interested in hearing about your findings. I've got Watcom 10.5, but I never found Watcom 11. Ah well. I've got VC6 now and I'm pretty happy with it. I've gotten used to the IDE now, anyway! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 05:32:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA34974 for dynarec-outgoing; Wed, 15 Mar 2000 05:32:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CF8C2F.866AA75B@eurocopter.de> Date: Wed, 15 Mar 2000 14:12:15 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > So you can hit (hard) a note and hold it for 2 seconds or just press it and > > hold it for 2 seconds and you can tell the difference between them? > > It depends upon the voice and the synth, but absolutely, yes. Yes? Oh... :o > * Aftertouch (pushing harder on the key after it has been pressed) > * Velocity sensitive (you know what this is) Of course. Ah, I didn't know this was possible. In that case, I retract what I said. :) > * Ribbon controller (slidable controller at the base of the keys that run > the length of the synth) > * Pitch bend (alters pitch or other aspect of the sound) > * Mod wheel (modulation of an aspect of the sound) > * LFO Trigger (low frequency oscillator triggers an aspect of the sound) But these are different. I have of course seen many with the mod wheels, but I don't know about any of the others in the list. > If a given patch is set up to have the aftertouch modify the oscillator > frequency, pressing harder will raise (or lower) it. You can also have it > change the filter point, increase resonance, etc... The synthesizer is a > configurable instrument and you can make it modify just about any aspect > of the sound being generated. Okay, I didn't know that. > > You can use other methods, I won't deny. I was just saying that the normal > > way of detecting emotion cannot be done with a synth. Not unless there's > > some amazing synths I haven't heard of before... :o > > You just don't know enough about synths. ;-) Obviously not! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 05:51:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA35000 for dynarec-outgoing; Wed, 15 Mar 2000 05:51:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CF90D7.E5D45510@eurocopter.de> Date: Wed, 15 Mar 2000 14:32:07 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Well, the root word of "analog" is "anal". ;-) Heh. :) > The attractiveness of an analog synth is the filters and bizarre ways > things can be interconnected which can't always be done with digital > synths (though any modern synth is really, really configurable). Each > synth has its own charm, where digital ones tend to be a bit sterile. > Though, synths released in the last few years don't suffer from being > sterile. Which is a good thing. Anyway, that compression thing I was on about. It's called "Sound Forge SoftEncode" and it's not free. :o But I'm sure you could find it on AltaVista - if that sort of thing is your bag. ;) The format is AC-3 and it's superb at 192kbps. My friend also says that AAC will beat even AC-3 quite comfortably, but the encoders that can do this aren't in the public domain as of yet. Try encoding something through AC-3 and comparing it to the original - but you've GOT to play it through the same DAC. I agree that AC-3 in 5.1 mode isn't great, but just try it in stereo mode! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 06:25:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA35071 for dynarec-outgoing; Wed, 15 Mar 2000 06:25:43 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question Date: Wed, 15 Mar 2000 14:25:57 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >First and foremost, remember that GCC generates *HORRIBLE* x86 code. It >might do fine for RISC based architectures It's the compiler distributed with x86 BeOS and I'm not sure if there is another one. PPC BeOS uses the Metrowerks compiler I think. For ARM it doesn't produce very good code as well, since it doesn't know how to handle the predicated instructions. >Secondly, don't get used to AT&T verbose, backwards-assed syntax. It makes >things a bitch to read. For example: > movl %esp, %ebp Yeah, it's a bit confusing to have the x86 assembly the other way round, but I didn't have much problems with it as 68K works that way. >The "l" on the mov instruction isn't necessary because esp and ebp by >their very definition are long. There is some redundancy, maybe needed by the assembler. >And secondly, it should be "mov ebp, esp", >as in ebp=esp, not the other way around. It also uses the Unix style register names with the percentage sign in the beginning. >Gas is universally laughed as as an assembler. Use NASM instead. It >doesn't used screwed up, verbose syntax. I indeed have NASM for BeOS, but I only wanted to see what code the compiler produces. >Lastly, GCC generates code using stack calling conventions, which by its >very nature is slower than register calls. I noticed that the argument is referenced on the procedure frame, which surprised me as you told me some time ago that the first four arguments would be passed in the registers. >Technically, I shouldn't actually return I being incremented because it's >a post ++. Oops, I guess it was too early in the morning... I wonder why I don't get a warning that the result of the operation is tossed away, as it is unless the variable would be static. >>That's what the code does: >> pushl %ebp >> movl %esp,%ebp >> movl 8(%ebp),%eax ; eax=[ebp+8] >> incl 8(%ebp) ; Increments the value on the stack This should be "inc eax"... >> movl %eax,%eax ; Braindead Nice NOP ;-) >> But with the option -O1 GCC seems to "overoptimise": >> pushl %ebp >> movl %esp,%ebp >> movl 8(%ebp),%eax >> movl %ebp,%esp >> popl %ebp >> ret >Nope. It's right. The increment happens after the return happens. Since >it's incrementing a stack variable that is only valid during the >procedure, it gets eliminated. This is actually correct. Yeah, you are right but the compiler should still produce a warning, even -Wall doesn't help. >Here's what Watcom produces: > 0000 c3 inc_ ret Bye bye ;-) >Perhaps you meant to: >int inc(int i) >{ > return ++i; >} Yeah, that's what I meant. I use the preincrement so seldom that I forget to use it when I should do... >If so, here's what Watcom produces: > 0000 40 inc_ inc eax > 0001 c3 ret That's what I would have expected. >This is default optimization in Watcom. Even though this version of the >compiler is now 5 years old, it still blows the doors off GCC and any >other compiler for the x86 platform. I heard lots of good things about the Watcom compiler. >I've done case studies of the others if you're interested. I noticed that most emulator programmers either use Watcom or DJGPP. But since the letter is a modified GCC I guess it's code quality isn't that good. How about the Borland compiler? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 06:26:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA35082 for dynarec-outgoing; Wed, 15 Mar 2000 06:26:11 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question Date: Wed, 15 Mar 2000 14:32:20 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Ops, I didn't see this ... Michel has found a really weird example. Michel is a character created by the Swedish author Astrid Lindgren. He's a boy who plays lots of tricks. Only my mother sometimes calls that way, but normally I'm called Michael, Michi by some German friends, and Mike by some English friends. No one uses my second name... But I guess it was only a typo... >OK. I have thought something. You say you have 'zillions' (10^ 10000000000.....0 >;) new ideas. I don't have so many ideas ;) but perhaps I will think some. Why >not do a 'week subject' and discuss about it? Nice idea. So what shall be the topic for next week? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 06:26:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA35091 for dynarec-outgoing; Wed, 15 Mar 2000 06:26:26 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: New mul8 list Date: Wed, 15 Mar 2000 14:34:38 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I didn't use an FTP program to get it - I'm behind a proxy/firewall. Yuk, >no regular FTP. I've got to use *shudder* Netscape! Aaarggghh! Tools like Gozilla or wget should also work through a proxy/firewall when configured correctly. I use both and it works. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 06:26:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA35102 for dynarec-outgoing; Wed, 15 Mar 2000 06:26:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Wed, 15 Mar 2000 14:36:34 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Never mind, I've got to get myself a new amp now - and when I do, I'll >probably get myself a pair of Sennheissers - either the 590 or 600. Very, >very nice headphones! I have Sennheisser HD540 connected to my NAD 314 - yes, I have English hi-fi equipment. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 06:26:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA35114 for dynarec-outgoing; Wed, 15 Mar 2000 06:26:34 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Wed, 15 Mar 2000 14:50:28 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >The voice hits (which are very quick), are at 01:04. It is then >"stacatto'd" and panned back and forth. You heart it again in the same >form at 4:12. It's not the voice that's most prominent - it's panned left >and right. But it's there. I wouldn't identfy that as a voice... >> >Yep - me too. I personally like the tail end of it myself. >> Yeah it's really not bad. >Hm.... I'm not sure how to take this. ;-) When somone says "really not >bad" it usually means "it doesn't totally suck". ;-) Hmm, I think that's another difference between Britsh and American English. From what I know "not bad" is some kind of understatement and means very good. It certainly doesn't have the meaning of the German "nicht schlecht", which would be the literal translation. It seems that it doesn't have this ideomatic character in American English as well. Thus, if I say "really not bad" it has about the same meaning as "close to perfect". I hope NG corrects me if I should be wrong... [jazz] >As long as it doesn't go on too long... In jazz you often have much more variation than noticed on first hearing. >Yeah, everyone seems to like that part of it, too. It's weird how I came >up with it, too. I wish it would last a bit longer ;-) >Here's two more tracks if you get bored: >ftp://mp3:gimmegoa@archive.synthcom.com/mp3s/Unsorted/artinmo.mp3 >ftp://mp3:gimmegoa@archive.synthcom.com/mp3s/Unsorted/transist.mp3 >The former is synthpoppy and has an un-faded ending. It originally was to >have words. The second is a bit more Jarreish. Enjoy! I'll download these later today, since German telephone fees are rather expensive between 9 AM and 6 PM :-( Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 06:26:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA35132 for dynarec-outgoing; Wed, 15 Mar 2000 06:26:45 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Wed, 15 Mar 2000 14:58:32 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >That's my opinion of Jazz. It's okay, so long as it doesn't go on too long. >About 5 seconds should do it. ;) Ignorants! Actually I thought the same a few years ago, but now most music just sounds like primitive crap when compared to jazz. I know that a song doesn't have to be complicated to be good and I know some ingenious primitve songs but those are rare. BTW, I don't have much of the old jazz stuff (bebop, dixie, swing,...) but more modern stuff (often with synths and other electric instruments) also mixed with fusion and funk. IMHO jazz has more styles than rock, so it's very likely that you don't know what I mean when I say "jazz"... >I'll try! :) To quote Yoda: "There is no try!" ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 06:27:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA35141 for dynarec-outgoing; Wed, 15 Mar 2000 06:27:01 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Wed, 15 Mar 2000 15:08:53 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Well, the root word of "analog" is "anal". ;-) Hehe. And the root of digital is really the finger... >He's an analog Nazi. I guess you have to explain to me your understanding of the word "Nazi", since I won't use it in that context. I'm glad when I don't have to use it anyway, as in Germany this only refers to a group of people who think they are super humans and justify their atrocities that way... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 06:54:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA35260 for dynarec-outgoing; Wed, 15 Mar 2000 06:54:01 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CF9F94.951E3123@eurocopter.de> Date: Wed, 15 Mar 2000 15:35:00 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New mul8 list References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >I didn't use an FTP program to get it - I'm behind a proxy/firewall. > Yuk, > >no regular FTP. I've got to use *shudder* Netscape! Aaarggghh! > > Tools like Gozilla or wget should also work through a proxy/firewall > when configured correctly. I use both and it works. I'm betting you're not using Solaris, though. :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 06:56:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA35283 for dynarec-outgoing; Wed, 15 Mar 2000 06:56:28 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CF9FEB.99874EEB@eurocopter.de> Date: Wed, 15 Mar 2000 15:36:27 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Never mind, I've got to get myself a new amp now - and when I do, I'll > >probably get myself a pair of Sennheissers - either the 590 or 600. > Very, > >very nice headphones! > > I have Sennheisser HD540 connected to my NAD 314 - yes, I have English > hi-fi equipment. Well done! ;) I'm not keen on the 540s. Pretty nice sound, but they hurt my ears a bit. That's why I like the 565s and above - but especially the 580, 590 and 600 models. Thing is, you pay the price for the quality and comfort... :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 07:02:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA35350 for dynarec-outgoing; Wed, 15 Mar 2000 07:02:35 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CFA10D.65819873@eurocopter.de> Date: Wed, 15 Mar 2000 15:41:17 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Hmm, I think that's another difference between Britsh and American > English. From what I know "not bad" is some kind of understatement and > means very good. It certainly doesn't have the meaning of the German > "nicht schlecht", which would be the literal translation. It seems that > it doesn't have this ideomatic character in American English as well. > Thus, if I say "really not bad" it has about the same meaning as "close > to perfect". > I hope NG corrects me if I should be wrong... Hmm. Well, "not bad" depends on how you say it. It means that it isn't bad, but isn't necessarily good - or it can mean it's good, but you don't want to say that. So when you say it's "really not bad" I'd read that as meaning "it's not bad, but it's not brilliant either. Fairly good, though". That's the only problem with English, meanings can change depending on how you say them. That's the one thing against e-mail. That's why I use so many smilies - it's the only way people know whether I mean something or not! :o > I wish it would last a bit longer ;-) You could loop that bit. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 07:05:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA35364 for dynarec-outgoing; Wed, 15 Mar 2000 07:05:08 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CFA1A4.1C548CED@eurocopter.de> Date: Wed, 15 Mar 2000 15:43:48 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >That's my opinion of Jazz. It's okay, so long as it doesn't go on too > long. > >About 5 seconds should do it. ;) > > Ignorants! No, I just have musical taste. ;) I don't mind Jazz. I just... don't like it too much either. There are some types of music I can't stand. Jazz isn't one of them - but Techno is. > BTW, I don't have much of the old jazz stuff (bebop, dixie, swing,...) > but more modern stuff (often with synths and other electric > instruments) also mixed with fusion and funk. IMHO jazz has more styles > than rock, so it's very likely that you don't know what I mean when I > say "jazz"... Jazz has loads of styles - it depends on which musician gets different notes wrong. ;) > >I'll try! :) > > To quote Yoda: "There is no try!" ;-) Ever tried lighting a match on a bar of soap? The one thing that puzzles me about Yoda is that he's meant to be hundreds of years old - yet he STILL can't speak properly! What's going on there? :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 07:08:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA35386 for dynarec-outgoing; Wed, 15 Mar 2000 07:08:41 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CFA282.44F4E4ED@eurocopter.de> Date: Wed, 15 Mar 2000 15:47:30 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >He's an analog Nazi. > > I guess you have to explain to me your understanding of the word > "Nazi", since I won't use it in that context. I'm glad when I don't > have to use it anyway, as in Germany this only refers to a group of > people who think they are super humans and justify their atrocities > that way... In NB's terms, he means that it's a person who stands for one thing and one try out a different way or method of doing something - so in this case, he means that the guy only wants to try analog and not digital devices... There are Nazi's (in your terms) everywhere. In Britain, they're called the BFL/EFL meaning British/English Front Line. Nearly all of them are white shaved head twats. I *hate* racism with a passion. The worst thing is that I got approached by a Nazi only 5 or 6 weeks ago at a U-Bahn (underground station) - I've got blonde hair and blue eyes - it's the only reason I can see that he approached me. He wanted to join me in his army to "kill the Islamic people who are killing all the Germans". Stupid, stupid, stupid... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 07:20:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA35437 for dynarec-outgoing; Wed, 15 Mar 2000 07:20:06 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: New mul8 list Date: Wed, 15 Mar 2000 15:56:58 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I'm betting you're not using Solaris, though. :-/ Nope, Win98 and BeOS (and WinNT at work), but wget should be available for every Unix system. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 07:20:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA35438 for dynarec-outgoing; Wed, 15 Mar 2000 07:20:06 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Wed, 15 Mar 2000 16:03:54 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Well done! ;) Yeah, I like the simplicity and robustness of NAD. My Technics CD player (which I still have) has much more functions than my NAD514, but I used only very few of these. I think the only thing I really miss is the peak search, but even that didn't always find the highest peak of a song. >I'm not keen on the 540s. Pretty nice sound, but they hurt my ears a bit. >That's why I like the 565s and above - but especially the 580, 590 and 600 >models. Thing is, you pay the price for the quality and comfort... :-/ Sure. It was a birthday present, so I won't complain, but I might buy a better one someday... BTW, did you know that Sennheisser cables include kevlar (the material which is also used in bullet proof vests)? >That's the only problem with English, meanings can change depending on how >you say them. That's the one thing against e-mail. That's why I use so many >smilies - it's the only way people know whether I mean something or not! :o I guess every language has that problem, and I tend to use some irony from time to time, which might not be understood without smilies... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 07:36:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA35503 for dynarec-outgoing; Wed, 15 Mar 2000 07:36:55 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Wed, 15 Mar 2000 16:17:34 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No, I just have musical taste. ;) Even the wrong taste is a taste ;-) Actually there is no objective way to discuss about tastes anyway... >I don't mind Jazz. I just... don't like it too much either. There are some >types of music I can't stand. Jazz isn't one of them - but Techno is. Yeah, I don't like techno, rap, dancefloor, and heavy metal, but there might be some exceptions. >Jazz has loads of styles - it depends on which musician gets different >notes wrong. ;) Hehe, then you have great jazz potential with your violin ;-) >Ever tried lighting a match on a bar of soap? Nope. I know it doesn't work so I won't do it ;-) >The one thing that puzzles me about Yoda is that he's meant to be hundreds >of years old - yet he STILL can't speak properly! What's going on there? >:)) Well, there are many people who emigrated to the US and still have problems with the language (either grammar or pronunciation or both), because they are too old to really learn a new language, just take Henry Kissinger as an example. For Yoda it might be that he spoke his own language for 500 years and then had to learn Basic (the common Star Wars language) and wasn't able to adapt it correctly in his last 400 years. What strikes me more is that all peoples in Star Trek seem to speak English... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 07:37:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA35512 for dynarec-outgoing; Wed, 15 Mar 2000 07:37:06 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Wed, 15 Mar 2000 16:21:34 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >In NB's terms, he means that it's a person who stands for one thing and one >try out a different way or method of doing something - so in this case, he >means that the guy only wants to try analog and not digital devices... So Nazi stands for "single minded"? But I think on the Retrocade page Neil described himself as a "performance Nazi"... >There are Nazi's (in your terms) everywhere. In Britain, they're called the >BFL/EFL meaning British/English Front Line. Nearly all of them are white >shaved head twats. I *hate* racism with a passion. Tell me about it, I have to live with the knowledge that Germany created these guys! BTW, those guys you describe are called "Skinheads" in Germany and they are not necessarily Nazis, although most are. >The worst thing is that I got approached by a Nazi only 5 or 6 weeks ago at >a U-Bahn (underground station) - I've got blonde hair and blue eyes - it's >the only reason I can see that he approached me. He wanted to join me in >his army to "kill the Islamic people who are killing all the Germans". >Stupid, stupid, stupid... And these braindeads often even claim that no Jews were killed in the KZs! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 07:46:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA35544 for dynarec-outgoing; Wed, 15 Mar 2000 07:46:20 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CFABB4.1E9F60AD@eurocopter.de> Date: Wed, 15 Mar 2000 16:26:44 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New mul8 list References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >I'm betting you're not using Solaris, though. :-/ > > Nope, Win98 and BeOS (and WinNT at work), but wget should be available > for every Unix system. I'll have to look for it then. Mind you, I still have the 1hr day Internet problem! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 07:46:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA35553 for dynarec-outgoing; Wed, 15 Mar 2000 07:46:30 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CFAB86.BA2D03F3@eurocopter.de> Date: Wed, 15 Mar 2000 16:25:58 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Yeah, I like the simplicity and robustness of NAD. My Technics CD > player (which I still have) has much more functions than my NAD514, but > I used only very few of these. > I think the only thing I really miss is the peak search, but even that > didn't always find the highest peak of a song. My CD Player at home is a Marantz CD-48. Very nice player. Not the best in the world, but the best in its class. To be fair, so are my speakers. It's just that the class isn't too great! :) I have a peak search as well, though I never had any problems. But then, I didn't use it too much! :o > >I'm not keen on the 540s. Pretty nice sound, but they hurt my ears a > bit. > >That's why I like the 565s and above - but especially the 580, 590 and > 600 > >models. Thing is, you pay the price for the quality and comfort... :-/ > > Sure. It was a birthday present, so I won't complain, but I might buy a > better one someday... Very nice birthday present. They're nice headphones - they're just not for me. :) > BTW, did you know that Sennheisser cables include kevlar (the material > which is also used in bullet proof vests)? I didn't know that, but I'd guess it's for strength and flexibility. Maybe. :) > >That's the only problem with English, meanings can change depending on > how > >you say them. That's the one thing against e-mail. That's why I use so > many > >smilies - it's the only way people know whether I mean something or > not! :o > > I guess every language has that problem, and I tend to use some irony > from time to time, which might not be understood without smilies... I guess so, too - but I think the English speaking people use more sarcasm than other countries (I know that the French find the idea of sarcasm and irony quite difficult!) - but I think the Germans are probably the same in this respect. I know that the humour level is pretty similar between Britain and Germany. It's just that you have cable, so you get more inane (poor) drivel (erm... things) than we do! Mind you, cable is getting bigger in Britain, so maybe we have the same! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 08:02:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA35594 for dynarec-outgoing; Wed, 15 Mar 2000 08:02:07 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CFAE7F.4F09170A@eurocopter.de> Date: Wed, 15 Mar 2000 16:38:39 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >No, I just have musical taste. ;) > > Even the wrong taste is a taste ;-) But an evil and bitter one. ;) > Actually there is no objective way to discuss about tastes anyway... I can discuss a song objectively, whether I like it or not. You can't do that for a whole musical style anyway. I mean, I don't like Techno. But there are a couple of songs that I don't mind listening to. > >I don't mind Jazz. I just... don't like it too much either. There are > some > >types of music I can't stand. Jazz isn't one of them - but Techno is. > > Yeah, I don't like techno, rap, dancefloor, and heavy metal, but there > might be some exceptions. I like just about all music styles. I don't like Techno too much and I don't see rap as being music at all. Not sure what you mean by "dancefloor" but I do like Heavy Metal - but the old style and not the current American trash. > >Jazz has loads of styles - it depends on which musician gets different > >notes wrong. ;) > > Hehe, then you have great jazz potential with your violin ;-) Yes, but I've learned how to play it while not playing wrong notes. ;) > >Ever tried lighting a match on a bar of soap? > > Nope. I know it doesn't work so I won't do it ;-) But it could be special soap... ;) > >The one thing that puzzles me about Yoda is that he's meant to be > hundreds > >of years old - yet he STILL can't speak properly! What's going on > there? > >:)) > > Well, there are many people who emigrated to the US and still have > problems with the language (either grammar or pronunciation or both), > because they are too old to really learn a new language, just take > Henry Kissinger as an example. > For Yoda it might be that he spoke his own language for 500 years and > then had to learn Basic (the common Star Wars language) and wasn't able > to adapt it correctly in his last 400 years. Yes, maybe. I'm scared now! I meant that as a joke and didn't expect an answer! ;) > What strikes me more is that all peoples in Star Trek seem to speak > English... I actually know the answer to this one! Haha! Even away teams have a translator that... well, translates. In the original Star Trek it used to be a box they'd have to carry. In ST:TNG and later, they'd improved the technology so that it was an implant. In DS9, there was one episode where the translator didn't know how to translate a language and so they couldn't communicate - but the translator was intelligent and worked it out slowly. Do you know the worrying thing? I know all of this - and I'm not a trekkie! My god! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 08:04:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA35611 for dynarec-outgoing; Wed, 15 Mar 2000 08:04:50 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: New mul8 list Date: Wed, 15 Mar 2000 16:39:48 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I'll have to look for it then. Mind you, I still have the 1hr day Internet >problem! :o Wget should be able to resume when the server supports it. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 08:04:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA35618 for dynarec-outgoing; Wed, 15 Mar 2000 08:04:51 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Wed, 15 Mar 2000 16:49:30 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >My CD Player at home is a Marantz CD-48. Very nice player. Not the best in >the world, but the best in its class. Marantz amplifiers are said to be quite good. >To be fair, so are my speakers. It's >just that the class isn't too great! :) My speakers (Dynaudio) are quite cheap but they have a great sound for all styles of music and when compared to much more expensive T&A speakers only the basses were better. >I have a peak search as well, though I never had any problems. But then, I >didn't use it too much! :o Yeah, I'd only use it when I copy songs to cassette, but I'm glad that I bought the cheaper cassette deck (NAD613 instead of 614) because I don't use it that often. >I didn't know that, but I'd guess it's for strength and flexibility. Maybe. >:) Yeah, the cable should be stronger, but I don't want to test it ;-) >I guess so, too - but I think the English speaking people use more sarcasm >than other countries (I know that the French find the idea of sarcasm and >irony quite difficult!) - but I think the Germans are probably the same in >this respect. I know that the humour level is pretty similar between >Britain and Germany. Certain forms of British black humour are hard for me to understand, but I have several British pen (or key?) pals and didn't find any great problems one either side. >It's just that you have cable, so you get more inane >(poor) drivel (erm... things) than we do! Mind you, cable is getting bigger >in Britain, so maybe we have the same! We don't have cable, we have satellite, but I know what you mean... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 08:14:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA35642 for dynarec-outgoing; Wed, 15 Mar 2000 08:14:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CFB1CF.DFF04509@eurocopter.de> Date: Wed, 15 Mar 2000 16:52:47 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > So Nazi stands for "single minded"? I suppose so, yes. > But I think on the Retrocade page Neil described himself as a > "performance Nazi"... So he's single minded on performance, then... > > I *hate* racism with a passion. > > Tell me about it, I have to live with the knowledge that Germany > created these guys! Hmm. I think Poland created those guys. It all comes down to Hitler, really - and he was Polish. Or... was he Austrian? If so, then Austia created those guys. I can't remember my history! :-/ > BTW, those guys you describe are called "Skinheads" in Germany and they > are not necessarily Nazis, although most are. They're called skinheads by us too, but I wasn't sure if you'd understand. Yes, not all are Nazis. But most are. > And these braindeads often even claim that no Jews were killed in the > KZs! WTF?! It makes me sick, it really does. Thing was, he was telling me how once the Islamic people had killed all the Germans, they'd start on the French and the British and how I should join him now to protect my country. It was all I could do not to kill him myself... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 08:32:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA35708 for dynarec-outgoing; Wed, 15 Mar 2000 08:32:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CFB627.8EBCF0FB@eurocopter.de> Date: Wed, 15 Mar 2000 17:11:19 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Marantz amplifiers are said to be quite good. Yes, but they're not the rated amps to go for. NAD make some good amps. So do Kenwood - and especially Arcam (another British company!). > >To be fair, so are my speakers. It's > >just that the class isn't too great! :) > > My speakers (Dynaudio) are quite cheap but they have a great sound for > all styles of music and when compared to much more expensive T&A > speakers only the basses were better. Same here. JPW ML-310s. Nothing is better in their class - they handle all types of music. > Yeah, I'd only use it when I copy songs to cassette, but I'm glad that > I bought the cheaper cassette deck (NAD613 instead of 614) because I > don't use it that often. I never use cassettes. Never. Not in ages... > >I didn't know that, but I'd guess it's for strength and flexibility. > Maybe. > >:) > > Yeah, the cable should be stronger, but I don't want to test it ;-) Oh, go on. You're no fun. ;) > >I guess so, too - but I think the English speaking people use more > sarcasm > >than other countries (I know that the French find the idea of sarcasm > and > >irony quite difficult!) - but I think the Germans are probably the > same in > >this respect. I know that the humour level is pretty similar between > >Britain and Germany. > > Certain forms of British black humour are hard for me to understand, > but I have several British pen (or key?) pals and didn't find any great > problems one either side. Well, if you can watch Monty Python and get the humour, you share the same humour. Guaranteed. There's not a lot more British than that. Although it's strange humour too... > >It's just that you have cable, so you get more inane > >(poor) drivel (erm... things) than we do! Mind you, cable is getting > bigger > >in Britain, so maybe we have the same! > > We don't have cable, we have satellite, but I know what you mean... Oh yes you do - I've got it in my apartment! ;p Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 08:33:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA35718 for dynarec-outgoing; Wed, 15 Mar 2000 08:33:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Wed, 15 Mar 2000 17:18:25 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >But an evil and bitter one. ;) "Ich bin der Geist, der stets verneint! Und das mit Recht; denn alles, was entsteht, Ist wert, dass es zugrunde geht; Drum besser waer's, dass nichts entstuende. So ist denn alles, was ihr Suende, Zerstoerung, kurz, das Boese nennt, Meineigentliches Element." Sorry, I had to quote a part of what is probably the best piece of German literature. You can guess what it is, or ask your German friends. >I can discuss a song objectively, whether I like it or not. You can't do >that for a whole musical style anyway. I mean, I don't like Techno. But >there are a couple of songs that I don't mind listening to. I guess it's the same for me. Two of my friends once did a song where most of the sounds where originally produced by dolphins (it was a work for the dolphin house in Nuremberg). That song's quite good, but they did one song I even enjoy more. I hope they release it on CD someday... >I like just about all music styles. I don't like Techno too much and I >don't see rap as being music at all. Yeah, I somtimes wonder too how they can claim rap to be music... >Not sure what you mean by "dancefloor" Dancfloor is a superclass of hip-hop styles. >but I do like Heavy Metal - but the old style and not the current American >trash. I don't know the heavy metal scene... >Yes, but I've learned how to play it while not playing wrong notes. ;) Of course, I only said you'd have potential ;-) >But it could be special soap... ;) Made out of white phosphorus? That's cheating! >Yes, maybe. I'm scared now! I meant that as a joke and didn't expect an >answer! ;) Hehe, you have to be careful with whom you speak about Star Wars. I'm a Star Wars freak! I've read close to 40 books and I have about everything of the Star Wars soundtracks: the original CD releases, the 4 CD anthology, the Skywalker Sound recording, and the 2nd Ed releases... >I actually know the answer to this one! Haha! Even away teams have a >translator that... well, translates. In the original Star Trek it used to >be a box they'd have to carry. In ST:TNG and later, they'd improved the >technology so that it was an implant. That explains why they can understand the others, but it doesn't explain why they are understood by the others. I think I saw one episode where there was explaind that at least Humans, Klingons, Vulcans, and Romulans derived from one race... >In DS9, there was one episode where the translator didn't know how to >translate a language and so they couldn't communicate - but the translator >was intelligent and worked it out slowly. I guess it was as good technically explained as how the warp drive or the transporter works... >Do you know the worrying thing? I know all of this - and I'm not a trekkie! >My god! :o I watch it from time to time because I like SF, but I'm certainly not a trekkie. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 08:51:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA35780 for dynarec-outgoing; Wed, 15 Mar 2000 08:51:59 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Wed, 15 Mar 2000 17:36:43 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >NAD make some good amps. I like mine. >So do Kenwood - and especially Arcam (another British company!). Never heard of Arcam... >I never use cassettes. Never. Not in ages... Neither would I, but it's a good way to exchange music and even my niece can handle these, she's five. >Oh, go on. You're no fun. ;) No, I won't do that! ;-) >Well, if you can watch Monty Python and get the humour, you share the same >humour. Guaranteed. There's not a lot more British than that. Although it's >strange humour too... Yeah, I bet so. Some time ago I had problems, but I need some time to understand a certain English dialect. They don't show these undubbed that often :-( "What you gonna do, bleed on me?" - "OK, it's a draw!" ;-) >Oh yes you do - I've got it in my apartment! ;p I didn't mean we don't have that in Germany. I meant we don't have it at home. >So he's single minded on performance, then... Ah, now I understand... The problem is that Nazi has only one meaning for me, and quite a very negative one! >Hmm. I think Poland created those guys. It all comes down to Hitler, really >- and he was Polish. Or... was he Austrian? If so, then Austia created >those guys. I can't remember my history! :-/ Hitler was from Austria. He attacked Poland first and when the English did their appeasement politics he thought he could go on like that... >> And these braindeads often even claim that no Jews were killed in the >> KZs! >WTF?! It makes me sick, it really does. It doesn't make me sick. I just want to open their heads to see if there is anything else than void. >Thing was, he was telling me how once the Islamic people had killed all the >Germans, they'd start on the French and the British and how I should join >him now to protect my country. Pure braindead! >It was all I could do not to kill him myself... I know what you mean! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 09:38:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA35905 for dynarec-outgoing; Wed, 15 Mar 2000 09:38:26 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38CFC63C.2EC71CC6@eurocopter.de> Date: Wed, 15 Mar 2000 18:19:56 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >NAD make some good amps. > > I like mine. They can be a little "bright" so it's good to have speakers which are a little relaxed - it smooths the sound to a good effect. If you've got some high-reponse speakers, the quality isn't good because the "brightness" is brought out that shouldn't be there. > >So do Kenwood - and especially Arcam (another British company!). > > Never heard of Arcam... They make the Alpha series. Very nice series indeed. > >I never use cassettes. Never. Not in ages... > > Neither would I, but it's a good way to exchange music and even my > niece can handle these, she's five. Yes, but my 5 year old cousin can handle CDs too. And use a PlayStation. :) No, I see your point. But I don't use them. And it's a good thing too, because I've got no way of playing them at the moment! :)) > >Oh, go on. You're no fun. ;) > > No, I won't do that! ;-) Go on, go abseiling or something. Or tie them to the bumper of one car, and then to the bumper of another car and watch! It'll be fun! ;)) > > Although it's strange humour too... > > Yeah, I bet so. Some time ago I had problems, but I need some time to > understand a certain English dialect. They don't show these undubbed > that often :-( No? Bad for you, good for me. When are they shown? :) > "What you gonna do, bleed on me?" - "OK, it's a draw!" ;-) "Look, you idiot, I've chopped your arm off!" - "'Tis a scratch!" > >Oh yes you do - I've got it in my apartment! ;p > > I didn't mean we don't have that in Germany. I meant we don't have it > at home. Sorry, my fault. > >So he's single minded on performance, then... > > Ah, now I understand... The problem is that Nazi has only one meaning > for me, and quite a very negative one! Well, I suppose that now it has got another meaning. ;) Either way, being any sort of Nazi can be a negative. > >Hmm. I think Poland created those guys. It all comes down to Hitler, > really > >- and he was Polish. Or... was he Austrian? If so, then Austia created > >those guys. I can't remember my history! :-/ > > Hitler was from Austria. He attacked Poland first and when the English > did their appeasement politics he thought he could go on like that... That's right. I couldn't remember - well, not quite. I could remember, but I wasn't sure. So, it's Austria's fault! And the thing is... they're heading that way again. Will they not learn? :-/ > >WTF?! It makes me sick, it really does. > > It doesn't make me sick. I just want to open their heads to see if > there is anything else than void. I think it's a "void* vacant = NULL;" contained inside. That - and sawdust. And lots of air. > >Thing was, he was telling me how once the Islamic people had killed > all the > >Germans, they'd start on the French and the British and how I should > join > >him now to protect my country. > > Pure braindead! Certainly. > >It was all I could do not to kill him myself... > > I know what you mean! Of course, the other 7 people that were with him also persuaded me not to hit him. I can hold my own, but not against 8 people! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 10:13:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA36081 for dynarec-outgoing; Wed, 15 Mar 2000 10:13:57 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Wed, 15 Mar 2000 05:03:52 -0800 (PST) To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Wed, 15 Mar 2000, Michael Koenig wrote: Just a lurker making some comments. > >The "l" on the mov instruction isn't necessary because esp and ebp by > >their very definition are long. > > There is some redundancy, maybe needed by the assembler. GAS is really, really, REALLY bad at guessing when it comes to opcode sizes. The current theory is that it uses the opcode name, hashes it and the register names, and adds the current phase of the moon to figure it out. In other words, don't let GAS guess. =) > >Technically, I shouldn't actually return I being incremented because > it's > >a post ++. > > Oops, I guess it was too early in the morning... > I wonder why I don't get a warning that the result of the operation is > tossed away, as it is unless the variable would be static. Simple, this is C. C assumes the programmer knows what they are doing =) Would you expect a warning for the code x == y; ? > >Nope. It's right. The increment happens after the return happens. > Since > >it's incrementing a stack variable that is only valid during the > >procedure, it gets eliminated. This is actually correct. > > Yeah, you are right but the compiler should still produce a warning, > even -Wall doesn't help. Nah, it is not an error or abuse of any kind. It is a perfectly well formed statement, that just happens to throw away the results. It is quite similar to a straight i++; line. > I noticed that most emulator programmers either use Watcom or DJGPP. > But since the letter is a modified GCC I guess it's code quality isn't > that good. > How about the Borland compiler? Dunno about Borland, but GCC's code generator is quite odd. At times I've had to spell out the CSE myself to get it to do what was right... > Bye, > M.I.K.e > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@synthcom.com. Please direct other > ** questions, comments, or problems to neil@synthcom.com. John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Flatline Studios http://www.flatlinestudios.com Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 10:30:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA36173 for dynarec-outgoing; Wed, 15 Mar 2000 10:30:37 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Wed, 15 Mar 2000 19:12:25 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >They can be a little "bright" so it's good to have speakers which are a >little relaxed - it smooths the sound to a good effect. If you've got some >high-reponse speakers, the quality isn't good because the "brightness" is >brought out that shouldn't be there. It seems that I have the right speakers then. >Yes, but my 5 year old cousin can handle CDs too. And use a PlayStation. :) I bet my niece could too, we just don't want her to. >Go on, go abseiling or something. Or tie them to the bumper of one car, and >then to the bumper of another car and watch! It'll be fun! ;)) And you want a video of the performance of course... >No? Bad for you, good for me. When are they shown? :) I don't think you really want to watch Monty Python with German dubbing... But I have to admit that it's a good way to learn some language when you know either the original or the dubbed version by heart. It would even work if there won't be so many translation errors... The dubbing of Star Wars: Episode 1 really got on my nerves, as there were lot's of translation errors ("Are you braindead?" was translated as "Hast Du einen Knall?"), the Trade Federation guys spoke with a French accent, and the voices of almost all speakers where more or less emotionless :-( >Sorry, my fault. Mine too. I wasn't precise enough... So how's German TV compared to Britain? BTW, one of the best programmes is the Space Night on the Bavarian channel! >Well, I suppose that now it has got another meaning. ;) I still wouldn't use it... >Either way, being any sort of Nazi can be a negative. True. >That's right. I couldn't remember - well, not quite. I could remember, but >I wasn't sure. So, it's Austria's fault! And the thing is... they're >heading that way again. Will they not learn? :-/ Well, he came from Austria but he became that mighty in Germany... >I think it's a "void* vacant = NULL;" contained inside. That - and sawdust. >And lots of air. Sure, otherwise the head would just implode. >Of course, the other 7 people that were with him also persuaded me not to >hit him. I can hold my own, but not against 8 people! :o That's the problem with these guys, they always come in groups. BTW, there is a good song about such people by Herbert Groenemeyer on his Chaos album called "Die Haerte". This is an example where the lyrics are very important! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 10:42:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA36247 for dynarec-outgoing; Wed, 15 Mar 2000 10:42:52 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question Date: Wed, 15 Mar 2000 19:22:06 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Just a lurker making some comments. For how long have you been lurking? Well, seems we have someone new on the list. Just in case you haven't noticed yet: dynarecs are not our only topic, even if the name of the list implies that. So far we also have music and language as subjects, I hope you don't mind. >GAS is really, really, REALLY bad at guessing when it comes to opcode >sizes. The current theory is that it uses the opcode name, hashes it and >the register names, and adds the current phase of the moon to figure it >out. In other words, don't let GAS guess. =) I have NASM for BeOS, but I cannot simply replace GAS with it, or I'd have to adjust GCC to produce different assembly :-( >Simple, this is C. C assumes the programmer knows what they are doing =) >Would you expect a warning for the code >x == y; >? At least a warning would be nice... >Nah, it is not an error or abuse of any kind. It is a perfectly well >formed statement, that just happens to throw away the results. It is quite >similar to a straight i++; line. I'm not saying that it's an error, but with -Wall a warning would be good. Also the "i++;" line would produce a result. >Dunno about Borland, but GCC's code generator is quite odd. At times I've >had to spell out the CSE myself to get it to do what was right... What does CSE stand for? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 12:19:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA36737 for dynarec-outgoing; Wed, 15 Mar 2000 12:19:56 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Wed, 15 Mar 2000 07:09:47 -0800 (PST) To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Wed, 15 Mar 2000, Michael Koenig wrote: > >Just a lurker making some comments. > > For how long have you been lurking? > Well, seems we have someone new on the list. Just in case you haven't > noticed yet: dynarecs are not our only topic, even if the name of the > list implies that. So far we also have music and language as subjects, > I hope you don't mind. Heh, not at all, been here since the first post, just been too busy to sift through them all. It isn't SWRPG yet though... > I have NASM for BeOS, but I cannot simply replace GAS with it, or I'd > have to adjust GCC to produce different assembly :-( Yes =/ Nyef and Neill Corlett really dislike some of nasm's design goals... the thing about always using the largest size unless told otherwise really annoys them for some reason. > At least a warning would be nice... Heh, this isn't pascal =) > I'm not saying that it's an error, but with -Wall a warning would be > good. Also the "i++;" line would produce a result. Generally the thing is that side effects are ignored when dealing with warnings. return i++; definitely does something, even if the side effect itself does not. Actually, x==y; might generate a warning in newer compilers, as lint has basically been reinstituded into the front end... > >Dunno about Borland, but GCC's code generator is quite odd. At times > I've > >had to spell out the CSE myself to get it to do what was right... > > What does CSE stand for? Common subexpression elimination. Good CSE would result in the same code for 1) acc = decoderlut[*p4 >> 4]; 2) c = *p4 >> 4; acc = decoderlut[c]; 3) c = *p4; acc = decoderlut[c >> 4]; However, with my version of GCC, only 3 is handled in an intelligent fasion... > Bye, > M.I.K.e > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@synthcom.com. Please direct other > ** questions, comments, or problems to neil@synthcom.com. > John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Flatline Studios http://www.flatlinestudios.com Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 13:03:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA36946 for dynarec-outgoing; Wed, 15 Mar 2000 13:03:19 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 15 Mar 2000 13:03:17 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > I have NASM for BeOS, but I cannot simply replace GAS with it, or I'd > > have to adjust GCC to produce different assembly :-( > Yes =/ Nyef and Neill Corlett really dislike some of nasm's design > goals... the thing about always using the largest size unless told > otherwise really annoys them for some reason. They have good reason to be annoyed. There are several shortcuts - "smart" decisions - the assembler can make and doesn't. For example: pushf Generates a 32 bit instruction. "pushf" by its very definition is a 16 bit instruction. The 32 bit equivalent is "pushfd". But NASM treats pushfd and pushf the same. You have to say: ord16 pushf To get the 16 bit version. This isn't obvious when you're working on code until it crashes horribly and you spend hours figuring out that the assembler did something stupid/wrong since it's assumed that the assembler is making good decisions. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 13:12:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA37015 for dynarec-outgoing; Wed, 15 Mar 2000 13:12:47 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 15 Mar 2000 13:12:46 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >First and foremost, remember that GCC generates *HORRIBLE* x86 code. > >might do fine for RISC based architectures > It's the compiler distributed with x86 BeOS and I'm not sure if there > is another one. PPC BeOS uses the Metrowerks compiler I think. Belugh. Metrowerks. I *HATE* that compiler. My hatred for it goes back a ways.. > >Secondly, don't get used to AT&T verbose, backwards-assed syntax. It > >things a bitch to read. For example: > > movl %esp, %ebp > Yeah, it's a bit confusing to have the x86 assembly the other way > round, but I didn't have much problems with it as 68K works that way. And to everyone who thinks it should be source->dest, then I give them the following argument: a = 5; We should be doing: 5 = a; In C. Right? ;-) > >The "l" on the mov instruction isn't necessary because esp and ebp by > >their very definition are long. > There is some redundancy, maybe needed by the assembler. Shouldn't be. If either argument is 32 bit, it's IMPLIED. > >Lastly, GCC generates code using stack calling conventions, which by > its > >very nature is slower than register calls. > I noticed that the argument is referenced on the procedure frame, which > surprised me as you told me some time ago that the first four arguments > would be passed in the registers. No, what I said was there are two calling convetinos - register calling conventions and stack calling conventions. For register calling conventions the above is true. GCC Is too braindead and simple to be able to do register calling conventions decently. > >Technically, I shouldn't actually return I being incremented because > >a post ++. > Oops, I guess it was too early in the morning... > I wonder why I don't get a warning that the result of the operation is > tossed away, as it is unless the variable would be static. Warnings are arbitrary. They are left up to the compiler implementor. Generally warnings aren't put in if there's no way to shut that specific one off. > >>That's what the code does: > >> pushl %ebp > >> movl %esp,%ebp > >> movl 8(%ebp),%eax ; eax=[ebp+8] > >> incl 8(%ebp) ; Increments the value on the stack > This should be "inc eax"... No, it should be what it is. You're doing i++. i Is defined on the stack, and the returned value will be *BEFORE* the increment. It's the proper operation. > >> movl %eax,%eax ; Braindead > Nice NOP ;-) You'd think it'd be smarter than this. > >Nope. It's right. The increment happens after the return happens. > >it's incrementing a stack variable that is only valid during the > >procedure, it gets eliminated. This is actually correct. > Yeah, you are right but the compiler should still produce a warning, > even -Wall doesn't help. Subjective. There's no rule for warnings in ANSI. > >Here's what Watcom produces: > > 0000 c3 inc_ ret > Bye bye ;-) And if you crank up the optimization to max, it removes the call entirely. > >I've done case studies of the others if you're interested. > I noticed that most emulator programmers either use Watcom or DJGPP. > But since the letter is a modified GCC I guess it's code quality isn't > that good. Right. People use DJGPP because it's free. It generates crap code, but its warnings and error checking are really well done. Watcom generates great code, but its warnings are terrible. > How about the Borland compiler? Not worth bothering with. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 14:40:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA37546 for dynarec-outgoing; Wed, 15 Mar 2000 14:40:44 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question Date: Wed, 15 Mar 2000 23:15:48 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Belugh. Metrowerks. I *HATE* that compiler. My hatred for it goes back a >ways.. Any good compilers apart from Watcom? I think ARM use a modified Norcroft, and although it produces better code than GCC it still isn't perfect. I wonder if they'll come up with a decent compiler for Itanium since they'll have the same problem with lots of predicated instructions there. >And to everyone who thinks it should be source->dest, For "move #5, d0" it's quite logical, because you can read it from left to right as "move immediate 5 to register d0", unless you are an Arab of course... >then I give them the following argument: > a = 5; >We should be doing: > 5 = a; >In C. Right? ;-) You don't have "assign #5, a" in assembly... for move see the example above... I agree that in 3 address code the order "Op Rd, Rs1, Rs2" is better than "Op Rs1, Rs2, Rd", because you can think of it as "Rd = Rs1 Op R2". Actually in Itanium assembly you write "Op Rd = Rs1, Rs2". But for 2 address code it mainly matters what you learned first, just like the endianness. I started with 68K and source->dest and big endian is quite normal for me. Someone who started on Intel is likely to prefer dest<-source and little endian... >Shouldn't be. If either argument is 32 bit, it's IMPLIED. Agreed, some assemblers and compilers are just stupid... >No, what I said was there are two calling convetinos - register calling >conventions and stack calling conventions. For register calling >conventions the above is true. GCC Is too braindead and simple to be able >to do register calling conventions decently. Especially in such a primitive function you notice how much better register calling would be... >> >> movl 8(%ebp),%eax ; eax=[ebp+8] >> >> incl 8(%ebp) ; Increments the value on the stack >> This should be "inc eax"... >No, it should be what it is. You're doing i++. i Is defined on the stack, >and the returned value will be *BEFORE* the increment. Erm, I meant it should have been "inc eax" if I had programmed correctly... If you want something to laugh about, here is the code GCC produces for "return ++i;" without optimisation forced: incl 8(%ebp) movl 8(%ebp),%edx movl %edx,%eax >> >> movl %eax,%eax ; Braindead >> Nice NOP ;-) >You'd think it'd be smarter than this. >From my experience with GCC on RISC OS it seems that without any optimisation it always uses the standard procedure frame, eg. all registers are saved and restored no matter how many are used in the procedure. It seems that the GCC for x86 behaves similar... >> >Here's what Watcom produces: >> > 0000 c3 inc_ ret >> Bye bye ;-) >And if you crank up the optimization to max, it removes the call entirely. But only if the definition and the call are in the same file... >Right. People use DJGPP because it's free. It generates crap code, but its >warnings and error checking are really well done. Watcom generates great >code, but its warnings are terrible. You can't have everything... How about LCC? >> How about the Borland compiler? >Not worth bothering with. At least it is free now... I won't even ask what you think of the Microsoft compilers ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 14:40:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA37556 for dynarec-outgoing; Wed, 15 Mar 2000 14:40:45 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Wed, 15 Mar 2000 23:21:17 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com OK, here are some reactions: Artinmo is quite nice, I liked it on the first run. I hope this doesn't mean that it'll be boring soon, but I cannot say it this early. I noticed though that you must have put much more work into Passion! I didn't like the beginning of Transist that much (cannot say why), but then it's quite cool and I really like the timing change in the end! The ending is better than that of Artinmo as it's less sudden. More opinions when I will have spent more time listening... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 17:25:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id RAA38256 for dynarec-outgoing; Wed, 15 Mar 2000 17:25:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D03321.B52A07DC@zaz.com.br> Date: Wed, 15 Mar 2000 22:04:33 -0300 From: Willian Padovani Germano X-Mailer: Mozilla 4.61 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: DYNAREC: Out of the shadows References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Greetings :), Michael Koenig wrote in ( for John Allensworth --- tarquin@austin.rr.com ): > > >Just a lurker making some comments. > > For how long have you been lurking? > Well, seems we have someone new on the list. Just in case you haven't > noticed yet: dynarecs are not our only topic, even if the name of the > list implies that. So far we also have music and language as subjects, > I hope you don't mind. Well, better introduce myself, too. I've been reading since day one, too -- I'm also on the mul8 list. My name is Willian and I'm from Brazil. About the so-called off topic msgs, in fact I like them, too. This small list doesn't need to adopt too restricting policies like most others. So far, everything posted interested me, so keep on :). Ah, I can add a little to the "gender of substantives" discussion. We speak Portuguese in Brazil. Personally, I consider ours has improved a little on the original from Portugal, but we can still communicate with very few problems. Portuguese treats substantives as "being": male: sun, journal, computer, day, ... female: moon, Earth, forest, mountain, internet ( because net is female ), night, ... English has "the", we use "o" for male and "a" for female: a internet == the internet. That's where this gender differentiation happens -- it's not that we think a computer is male or the moon is a girl, it's all in the definite/indefinite article we use ( "o" or "a"/["um" or "uma" == a, an] ). By the way, someone mentioned banana, we say "a banana"==the banana, not "o banana" -- though foreigners learning the language generally make this king of mistake for years. Many words make the distinction easy for us: if the word ends in "a", it's female, "o" being male: a casa ( the house ), a montanha ( the mountain ), o carro ( the car ). Exceptions though are plentiful: o dia ( the day ). Now the point: why ? I fully understand why some of you think it is weird. I agree it is unnecessary, really. But you where wondering where it came from. I didn't notice anyone mentioning religion and mysticism. This practice is older than writing. Just remember how stars, animals, plants, storms, etc. were "assigned" to gods and goddesses. Languages evolving from these civilizations naturally incorporated and extended -- or got rid of -- that. Of course there's a lot more to this, but if you are looking for its origin... About having one programming topic every week -- I enjoy the idea. Willian, wgermano@zaz.com.br --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 23:50:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA39461 for dynarec-outgoing; Wed, 15 Mar 2000 23:50:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D08DAD.B3145FEE@eurocopter.de> Date: Thu, 16 Mar 2000 08:30:53 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: <38D03321.B52A07DC@zaz.com.br> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > About the so-called off topic msgs, in fact I like them, too. This small > list doesn't need to adopt too restricting policies like most others. So > far, everything posted interested me, so keep on :). This is a good thing. Because I doubt any of us would stop. ;) > Many words make the > distinction easy for us: if the word ends in "a", it's female, "o" being > male: a casa ( the house ), a montanha ( the mountain ), o carro ( the > car ). Exceptions though are plentiful: o dia ( the day ). It's like Spanish in that regard, then - where you can tell the sex of a word by the last letter. That's right, Victor, isn't it? > I didn't notice anyone mentioning religion and mysticism. This practice > is older than writing. Just remember how stars, animals, plants, storms, > etc. were "assigned" to gods and goddesses. Languages evolving from > these civilizations naturally incorporated and extended -- or got rid of > -- that. Of course there's a lot more to this, but if you are looking > for its origin... You have a point, yes. What does that say about the English, though? :o > About having one programming topic every week -- I enjoy the idea. But for this week, I suggest our topic(s) be: Languages (spoken) Music C compilers Best assemblers Heh. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 23:55:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA39486 for dynarec-outgoing; Wed, 15 Mar 2000 23:55:28 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D08E71.D0661FCF@eurocopter.de> Date: Thu, 16 Mar 2000 08:34:09 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Yes =/ Nyef and Neill Corlett really dislike some of nasm's design > goals... the thing about always using the largest size unless told > otherwise really annoys them for some reason. It annoys me, too. It's happened a few times to me. Grr! > > At least a warning would be nice... > > Heh, this isn't pascal =) Is it BASIC? ;) > Common subexpression elimination. Good CSE would result in the same code > for > > 1) acc = decoderlut[*p4 >> 4]; > > 2) c = *p4 >> 4; acc = decoderlut[c]; > > 3) c = *p4; acc = decoderlut[c >> 4]; > > However, with my version of GCC, only 3 is handled in an intelligent > fasion... Why?! In a good optimiser, the code should be the same for 1 and 3. 2 may be different, but there's no reason why an optimiser wouldn't also produce the same code. Hmm. Strange! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 15 23:56:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA39503 for dynarec-outgoing; Wed, 15 Mar 2000 23:56:55 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D08F6D.D4D0C83E@eurocopter.de> Date: Thu, 16 Mar 2000 08:38:21 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Any good compilers apart from Watcom? One of the Ada ones? ;) *Bleurgh* I hate Ada. And I have to use it every weekday for next 6-7 months. Aargh! > Someone who started on Intel is likely to prefer dest<-source and little endian... I started with the Z80, does that count? :) > >Right. People use DJGPP because it's free. It generates crap code, but > its > >warnings and error checking are really well done. Watcom generates > great > >code, but its warnings are terrible. > > You can't have everything... > How about LCC? AFAIK only produces files for Win32. > >> How about the Borland compiler? > >Not worth bothering with. > > At least it is free now... Yes. Hmm. And Corel own Borland (or Inprise or whatever) now. And Corel own a Linux distro. It doesn't take a huge brain to see why the Borland compiler is free - and what's going to happen next. > I won't even ask what you think of the Microsoft compilers ;-) Produces pretty good code, actually. Well, VC6 is certainly the best so far. Whether it's as good as Watcom, I really couldn't say - but I'd bet not. I'm sure NB will let us know. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 00:41:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA39637 for dynarec-outgoing; Thu, 16 Mar 2000 00:41:44 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows Date: Thu, 16 Mar 2000 09:26:17 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >This is a good thing. Because I doubt any of us would stop. ;) Hehe, at least not as long as it's fun ;-) >It's like Spanish in that regard, then - where you can tell the sex of a >word by the last letter. That's right, Victor, isn't it? I don't know Spanish, but it sounds very likely. >You have a point, yes. What does that say about the English, though? :o That you have even more difficulties to find it's origin because English is a mixture of Celtic, Germanic, Latin, Norse, and French... >But for this week, I suggest our topic(s) be: >Languages (spoken) >Music >C compilers >Best assemblers >Heh. :)) How could you tell? ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 00:41:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA39645 for dynarec-outgoing; Thu, 16 Mar 2000 00:41:45 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question Date: Thu, 16 Mar 2000 09:11:32 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >One of the Ada ones? ;) >*Bleurgh* I hate Ada. And I have to use it every weekday for next 6-7 >months. Aargh! I don't think I would disagree with you in that case... >> Someone who started on Intel is likely to prefer dest<-source and little endian... >I started with the Z80, does that count? :) Sure, the designer of the Z80, Federico Faggin, originally worked for Intel and was one of the three most important figures in the 8080 desgin. >> How about LCC? >AFAIK only produces files for Win32. LCC was designed to be retargetable (hand optimised parser, but generated code generator - hmm, I guess this answers my question) and LCC-Win32 is just one port. >Produces pretty good code, actually. Well, VC6 is certainly the best so >far. Really? Maybe I already have to much prejudices against Microsoft... >Whether it's as good as Watcom, I really couldn't say - but I'd bet >not. I'm sure NB will let us know. :) I bet so ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 00:41:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA39652 for dynarec-outgoing; Thu, 16 Mar 2000 00:41:46 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows Date: Thu, 16 Mar 2000 09:22:05 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Greetings :), Another lurker in the dark... I wonder how many more are there ;-) >Well, better introduce myself, too. I've been reading since day one, too >-- I'm also on the mul8 list. My name is Willian and I'm from Brazil. Now we are really multicultural! >About the so-called off topic msgs, in fact I like them, too. This small >list doesn't need to adopt too restricting policies like most others. So >far, everything posted interested me, so keep on :). With such a mixture of people on the list it would be a crime if we didn't discuss cultural topics as well, and language and music surely belong to these topics. >Ah, I can add a little to the "gender of substantives" discussion. We >speak Portuguese in Brazil. Personally, I consider ours has improved a >little on the original from Portugal, but we can still communicate with >very few problems. Portuguese treats substantives as "being": >male: sun, journal, computer, day, ... >female: moon, Earth, forest, mountain, internet ( because net is female >), night, ... So Portuguese has two genders like French. >English has "the", we use "o" for male and "a" for female: a internet =>the internet. That's where this gender differentiation happens -- it's >not that we think a computer is male or the moon is a girl, it's all in >the definite/indefinite article we use ( "o" or "a"/["um" or "uma" == a, >an] ). By the way, someone mentioned banana, we say "a banana"==the >banana, not "o banana" -- though foreigners learning the language >generally make this king of mistake for years. Many words make the >distinction easy for us: if the word ends in "a", it's female, "o" being >male: a casa ( the house ), a montanha ( the mountain ), o carro ( the >car ). Exceptions though are plentiful: o dia ( the day ). In Germany we have a proverb: Exceptions support the rule ;-) >Now the point: why ? I fully understand why some of you think it is >weird. I agree it is unnecessary, really. But you where wondering where >it came from. Well, the rule to take the ending letter to decide on the gender surely comes from Latin, but I don't know where they got it from. My knowledge about the history of Roman languages is somehow nonexistent. >I didn't notice anyone mentioning religion and mysticism. This practice >is older than writing. Just remember how stars, animals, plants, storms, >etc. were "assigned" to gods and goddesses. Languages evolving from >these civilizations naturally incorporated and extended -- or got rid of >-- that. Of course there's a lot more to this, but if you are looking >for its origin... So many linguists are hunting for an answer so we are relatively unlikely to find it... >Willian, wgermano@zaz.com.br BTW, is your last name arbitrary or is there a reason that it sounds like "German"? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 00:56:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA39763 for dynarec-outgoing; Thu, 16 Mar 2000 00:56:32 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 16 Mar 2000 00:56:31 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >not do a 'week subject' and discuss about it? > Nice idea. So what shall be the topic for next week? How about input controller methodologies for emulation? -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 00:57:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA39775 for dynarec-outgoing; Thu, 16 Mar 2000 00:57:08 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 16 Mar 2000 00:57:07 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Never mind, I've got to get myself a new amp now - and when I do, I'll > >probably get myself a pair of Sennheissers - either the 590 or 600. > >very nice headphones! > I have Sennheisser HD540 connected to my NAD 314 - yes, I have English > hi-fi equipment. You have HD540's connected to your nads? That's weird, dude! ;-) Actually, I listen to everything on my HD540 MkII headphones. And the 314 is a great piece, too. Splendid choice of audio equipment! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 00:58:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA39784 for dynarec-outgoing; Thu, 16 Mar 2000 00:58:28 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 16 Mar 2000 00:58:27 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >"stacatto'd" and panned back and forth. You heart it again in the same > >form at 4:12. It's not the voice that's most prominent - it's panned > >and right. But it's there. > I wouldn't identfy that as a voice... It's my voice going "ooooooooooooooooooh". > >> >Yep - me too. I personally like the tail end of it myself. > >> Yeah it's really not bad. > >Hm.... I'm not sure how to take this. ;-) When somone says "really not > >bad" it usually means "it doesn't totally suck". ;-) > Hmm, I think that's another difference between Britsh and American > English. From what I know "not bad" is some kind of understatement and > means very good. In written text it doesn't have the same impact. I can also say the same thing to someone meaning that "well, it doesn't suck but it isn't good, either" ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:00:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39800 for dynarec-outgoing; Thu, 16 Mar 2000 01:00:22 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 16 Mar 2000 01:00:21 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >He's an analog Nazi. > I guess you have to explain to me your understanding of the word > "Nazi", since I won't use it in that context. I'm glad when I don't > have to use it anyway, as in Germany this only refers to a group of > people who think they are super humans and justify their atrocities > that way... Um... yeah, that's about right. ;-) Mac users are Mac Nazis. Those who berate other people for using other computers, and act like they are superior to everyone. Nazi means "Militant, aggressive, and single minded" to me. Hope this helps. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:03:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39812 for dynarec-outgoing; Thu, 16 Mar 2000 01:03:01 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 16 Mar 2000 01:03:00 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: <38CFA1A4.1C548CED@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > I don't mind Jazz. I just... don't like it too much either. There are some > types of music I can't stand. Jazz isn't one of them - but Techno is. I've got a bit of techno that I'm sure you'd like. But 90% of techno sucks, so it's hard to find the good stuff. > > than rock, so it's very likely that you don't know what I mean when I > > say "jazz"... > Jazz has loads of styles - it depends on which musician gets different > notes wrong. ;) Yeah. Play a note wrong once and it's a mistake. Play it wrong twice and it's jazz. ;-) > > >I'll try! :) > > To quote Yoda: "There is no try!" ;-) > Ever tried lighting a match on a bar of soap? No. Ever tried lighting your bong by using your fingernail against a match? ;-) > The one thing that puzzles me about Yoda is that he's meant to be hundreds > of years old - yet he STILL can't speak properly! What's going on there? He had British teachers. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:05:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39829 for dynarec-outgoing; Thu, 16 Mar 2000 01:05:52 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 16 Mar 2000 01:05:51 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: <38CFA282.44F4E4ED@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > There are Nazi's (in your terms) everywhere. In Britain, they're called the > BFL/EFL meaning British/English Front Line. Nearly all of them are white > shaved head twats. I *hate* racism with a passion. If they're going to be bigots, at least discriminate based on intelligence level rather than race. Being racist because of someone's skin/hair/eye color is lame. Being bigoted toward stupid people I find perfectly acceptable! ;-) > a U-Bahn (underground station) - I've got blonde hair and blue eyes - it's > the only reason I can see that he approached me. He wanted to join me in > his army to "kill the Islamic people who are killing all the Germans". Don't these dumbasses have anything better to do with their time? Like a job or molesting sheep? Yes, they are the stupidest, most idiotic people you'll ever meet. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:08:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39838 for dynarec-outgoing; Thu, 16 Mar 2000 01:08:34 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 16 Mar 2000 01:08:32 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: <38CFAB86.BA2D03F3@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > I guess every language has that problem, and I tend to use some irony > > from time to time, which might not be understood without smilies... > I guess so, too - but I think the English speaking people use more sarcasm > than other countries (I know that the French find the idea of sarcasm and > irony quite difficult!) - That's because the French don't have a sense of humor. So far the only thing I can figure that the French has given us is semi-soft cheese, women with hairy armpits, poor hygine, and bad hair! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:14:00 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39851 for dynarec-outgoing; Thu, 16 Mar 2000 01:14:00 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 16 Mar 2000 01:13:58 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: <38CFB1CF.DFF04509@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > And these braindeads often even claim that no Jews were killed in the > > KZs! > WTF?! > It makes me sick, it really does. Yeah. I'm sure you've heard these, too: * The Earth is flat * We never really landed on the moon * Computers don't really exist * There are 6 families that run the world > Thing was, he was telling me how once the Islamic people had killed all the > Germans, they'd start on the French and the British and how I should join > him now to protect my country. It was all I could do not to kill him > myself... Well, if they started in on the French then that wouldn't be so bad. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:20:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39888 for dynarec-outgoing; Thu, 16 Mar 2000 01:20:40 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D0A2C3.335F8EDC@eurocopter.de> Date: Thu, 16 Mar 2000 10:00:51 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > So Portuguese has two genders like French. I can learn Portuguese easier then. :) > In Germany we have a proverb: Exceptions support the rule ;-) Scary: we have the same! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:22:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39901 for dynarec-outgoing; Thu, 16 Mar 2000 01:22:04 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D0A361.9C88700A@eurocopter.de> Date: Thu, 16 Mar 2000 10:03:29 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > >not do a 'week subject' and discuss about it? > > Nice idea. So what shall be the topic for next week? > > How about input controller methodologies for emulation? Sounds good to me! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:22:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39910 for dynarec-outgoing; Thu, 16 Mar 2000 01:22:13 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D0A345.581BE208@eurocopter.de> Date: Thu, 16 Mar 2000 10:03:01 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >One of the Ada ones? ;) > >*Bleurgh* I hate Ada. And I have to use it every weekday for next 6-7 > >months. Aargh! > > I don't think I would disagree with you in that case... Ever used it? I'd advise you not to. :) > >I started with the Z80, does that count? :) > > Sure, the designer of the Z80, Federico Faggin, originally worked for > Intel and was one of the three most important figures in the 8080 > desgin. Of course. Yes, I knew this - though I didn't know the guys name. I thought that it was two guys from Intel, though, who formed Zilog? > >> How about LCC? > >AFAIK only produces files for Win32. > > LCC was designed to be retargetable (hand optimised parser, but > generated code generator - hmm, I guess this answers my question) and > LCC-Win32 is just one port. I haven't seen LCC-DOS yet, though. > >Produces pretty good code, actually. Well, VC6 is certainly the best > >so far. > > Really? Maybe I already have to much prejudices against Microsoft... I dislike Microsoft's business practises, but I don't mind their products. When they work, that is. I certainly don't hate MS just for the fun of it, though. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:25:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39923 for dynarec-outgoing; Thu, 16 Mar 2000 01:25:30 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D0A3E8.7ABA29B1@eurocopter.de> Date: Thu, 16 Mar 2000 10:05:44 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > I don't mind Jazz. I just... don't like it too much either. There are some > > types of music I can't stand. Jazz isn't one of them - but Techno is. > > I've got a bit of techno that I'm sure you'd like. But 90% of techno > sucks, so it's hard to find the good stuff. You probably have, I do like all types of music. But I'd say that it's more 95% of techno that sucks - I find very little which I can actually rate. > > Jazz has loads of styles - it depends on which musician gets different > > notes wrong. ;) > > Yeah. Play a note wrong once and it's a mistake. Play it wrong twice and > it's jazz. ;-) And with Jazz, it doesn't have to be the same mistake either. ;) > > > >I'll try! :) > > > To quote Yoda: "There is no try!" ;-) > > Ever tried lighting a match on a bar of soap? > > No. Ever tried lighting your bong by using your fingernail against a > match? ;-) I can't say I have, no. Lighters are a wonderful thing. ;) > > The one thing that puzzles me about Yoda is that he's meant to be hundreds > > of years old - yet he STILL can't speak properly! What's going on there? > > He had British teachers. ;-) We invented the language - and then you nicked it and got it wrong! Haha! ;p Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:25:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39932 for dynarec-outgoing; Thu, 16 Mar 2000 01:25:37 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Wed, 15 Mar 2000 20:15:28 -0800 (PST) To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question In-Reply-To: <38D08E71.D0661FCF@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Thu, 16 Mar 2000, Neil Griffiths wrote: > Hi, > > > Yes =/ Nyef and Neill Corlett really dislike some of nasm's design > > goals... the thing about always using the largest size unless told > > otherwise really annoys them for some reason. > > It annoys me, too. It's happened a few times to me. Grr! I can see how it could be a somewhat annoying "feature", but the idea of Do Exactly What I Tell You To can be a nice thing in an assembler... > > Heh, this isn't pascal =) > > Is it BASIC? ;) hmm, anyone happen to remember if HyperTalk would cough up a warning? =P > Why?! > > In a good optimiser, the code should be the same for 1 and 3. 2 may be > different, but there's no reason why an optimiser wouldn't also produce the > same code. Hmm. Strange! Heh, I will try to remember to run the tests again tomorrow and provide some specific examples. Having to tweak the code like this to get a better object file felt almost stanky... though some of the other tricks I've pulled are arguably even dirtier... > Neil. > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@synthcom.com. Please direct other > ** questions, comments, or problems to neil@synthcom.com. > John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Flatline Studios http://www.flatlinestudios.com Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:26:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39941 for dynarec-outgoing; Thu, 16 Mar 2000 01:26:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 16 Mar 2000 01:26:14 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Belugh. Metrowerks. I *HATE* that compiler. My hatred for it goes back > >ways.. > Any good compilers apart from Watcom? Watcom produces the best code. Phar lap's is decent and Microsoft's MSVC 6 does a pretty good job, too. Not quite as good as Watcom, though. > >And to everyone who thinks it should be source->dest, > For "move #5, d0" it's quite logical, because you can read it from left > to right as "move immediate 5 to register d0", No... You say "D0=5;" Not "5=D0". > >then I give them the following argument: > > a = 5; > >We should be doing: > > 5 = a; > >In C. Right? ;-) > You don't have "assign #5, a" in assembly... for move see the example > above... Yeah. It's still ass backwards. > I agree that in 3 address code the order "Op Rd, Rs1, Rs2" is better > than "Op Rs1, Rs2, Rd", because you can think of it as "Rd = Rs1 Op > R2". Okay, then why not be consistent and make the destination on the left at all times? It's an algebraic assignment. > like the endianness. I started with 68K and source->dest and big endian > is quite normal for me. Someone who started on Intel is likely to > prefer dest<-source and little endian... No, no, no.... Consider that Moto, MOSTEK, Intel, and DEC all had little endian CPUs. I couldn't give a rats ass about little/big endian. I'm comfortable with either and have no preference. However, algebraic notation makes more sense than ass backwards assignments like a lot of RISC CPUs do. "Oh gee, we're different. Let's do everything *BACKWARD* from the way the entire fucking world did it." > >conventions and stack calling conventions. For register calling > >conventions the above is true. GCC Is too braindead and simple to be > >to do register calling conventions decently. > Especially in such a primitive function you notice how much better > register calling would be... Yes. Optimizing for the x86 is tough, so they said "Good enough!" and stopped working on it. > > >> >> movl 8(%ebp),%eax ; eax=[ebp+8] > >> >> incl 8(%ebp) ; Increments the value on the stack > >> This should be "inc eax"... > >No, it should be what it is. You're doing i++. i Is defined on the > stack, > >and the returned value will be *BEFORE* the increment. > Erm, I meant it should have been "inc eax" if I had programmed > correctly... Oh. Gotcha. > >> How about the Borland compiler? > >Not worth bothering with. > At least it is free now... Free still isn't worth much if it's not worth a damn. ;-) > I won't even ask what you think of the Microsoft compilers ;-) Decent. 5 Being average, 10 being Watcom, they're a 7-8. At least the x86 compiler with MSVC. The bSquare compilers they have for the CE devices are lame. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:27:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39951 for dynarec-outgoing; Thu, 16 Mar 2000 01:27:58 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D0A4A2.61F1BE44@eurocopter.de> Date: Thu, 16 Mar 2000 10:08:50 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > I guess so, too - but I think the English speaking people use more sarcasm > > than other countries (I know that the French find the idea of sarcasm and > > irony quite difficult!) - > > That's because the French don't have a sense of humor. So far the only > thing I can figure that the French has given us is semi-soft cheese, women > with hairy armpits, poor hygine, and bad hair! There's a couple more things they've given us: - Problems (well, they cause problems for other EU countries, especially Britain!) - A good laugh. Many good laughs, in fact! - Garlic - Onions - A good laugh (so many, I had to list it twice). :) And the funny thing is that I share my apartment with two French guys! :)) Still, apart from that, the apartment is quite nice... :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:28:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39960 for dynarec-outgoing; Thu, 16 Mar 2000 01:28:06 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 16 Mar 2000 01:28:05 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Artinmo is quite nice, I liked it on the first run. I hope this doesn't > mean that it'll be boring soon, but I cannot say it this early. I > noticed though that you must have put much more work into Passion! Passion was the last track I wrote - almost 4 years ago. ;-( > I didn't like the beginning of Transist that much (cannot say why), but > then it's quite cool and I really like the timing change in the end! > The ending is better than that of Artinmo as it's less sudden. Artinmo was supposed to fade, and you got to hear a version that has no fading. I like Transistified a lot. One of my faves! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:34:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39980 for dynarec-outgoing; Thu, 16 Mar 2000 01:34:08 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D0A58D.5BE1CB8C@eurocopter.de> Date: Thu, 16 Mar 2000 10:12:45 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > There are Nazi's (in your terms) everywhere. In Britain, they're called the > > BFL/EFL meaning British/English Front Line. Nearly all of them are white > > shaved head twats. I *hate* racism with a passion. > > If they're going to be bigots, at least discriminate based on intelligence > level rather than race. Being racist because of someone's skin/hair/eye > color is lame. Being bigoted toward stupid people I find perfectly > acceptable! ;-) I'd prefer to be bigoted on a per-person method. I'd rather meet someone and then deciding if I'm going to hate them or not. Judging someone by the level of Melanin in their skin is just... stupid. And pathetic. > > a U-Bahn (underground station) - I've got blonde hair and blue eyes - it's > > the only reason I can see that he approached me. He wanted to join me in > > his army to "kill the Islamic people who are killing all the Germans". > > Don't these dumbasses have anything better to do with their time? Like a > job or molesting sheep? Yes, they are the stupidest, most idiotic people > you'll ever meet. Indeed they are. Especially seeing as a few of my friends are coloured. It was only luck that one of them wasn't there - they would more than likely have started on him... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:36:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39992 for dynarec-outgoing; Thu, 16 Mar 2000 01:36:14 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D0A5FD.BA5DEA4B@eurocopter.de> Date: Thu, 16 Mar 2000 10:14:37 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > It makes me sick, it really does. > > Yeah. I'm sure you've heard these, too: > > * The Earth is flat Heard this one. > * We never really landed on the moon And this. > * Computers don't really exist Haven't heard this one - but I have conclusive proof that they do - look, I'm using one at the moment! > * There are 6 families that run the world Haven't heard this one either! :o > > Thing was, he was telling me how once the Islamic people had killed all the > > Germans, they'd start on the French and the British and how I should join > > him now to protect my country. It was all I could do not to kill him > > myself... > > Well, if they started in on the French then that wouldn't be so bad. ;-) True... There's another thing the French have given us: - Boring films - Ugly people :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:37:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA40001 for dynarec-outgoing; Thu, 16 Mar 2000 01:37:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 16 Mar 2000 01:37:30 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: <38D0A4A2.61F1BE44@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > That's because the French don't have a sense of humor. So far the only > > thing I can figure that the French has given us is semi-soft cheese, women > > with hairy armpits, poor hygine, and bad hair! > There's a couple more things they've given us: > - Problems (well, they cause problems for other EU countries, especially > Britain!) > - A good laugh. Many good laughs, in fact! > - Garlic > - Onions > - A good laugh (so many, I had to list it twice). :) Why stop there? - Venereal diseases - Heavy smoking - Crappy bitter wine - Heavy smoking - Arrogance We have a French guy at work and he's an asshole. Parks his car angled so no one will touch his precious POS. That's enough to get you on my shit list. ;-) It's like 200 years ago France was the culturul capitol of the world and they haven't forgotten it. > And the funny thing is that I share my apartment with two French guys! :)) Ah! Are they traditional shower once a month whether they need to or not type French guys? -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:38:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA40011 for dynarec-outgoing; Thu, 16 Mar 2000 01:38:32 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 16 Mar 2000 01:38:31 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: <38D0A5FD.BA5DEA4B@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > There's another thing the French have given us: Hey, this French slamming thing is kinda fun! It's like shooting fish in a barrel. > - Boring films Oh god, yes. And they think they're really, really good! We refer to them as "foreign". > - Ugly people Oh yeah. Fugly is a better term. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:40:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA40025 for dynarec-outgoing; Thu, 16 Mar 2000 01:40:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 16 Mar 2000 01:40:30 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes In-Reply-To: <38D0A58D.5BE1CB8C@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Don't these dumbasses have anything better to do with their time? Like a > > job or molesting sheep? Yes, they are the stupidest, most idiotic people > > you'll ever meet. > Indeed they are. Especially seeing as a few of my friends are coloured. It > was only luck that one of them wasn't there - they would more than likely > have started on him... I had a skinhead start talking to me about how black people were stupid and shouldn't be allowed to do things, etc... I paused, looked right at him and said "I find it irionic that you're telling me this..." he paused, thought about it for a few seconds and he said, "Oh yeah! Very ironic!" The guy didn't even understand that he was being a dumb-shit hypocrite! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:48:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA40046 for dynarec-outgoing; Thu, 16 Mar 2000 01:48:40 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: VICTOR MOYA DEL BARRIO Message-Id: <200003160930.KAA04486@alabi.fib.upc.es> Subject: Re: DYNAREC: C to ASM question In-Reply-To: from Michael Koenig at "Mar 15, 0 02:32:20 pm" To: dynarec@synthcom.com Date: Thu, 16 Mar 2000 10:30:16 +0100 (MET) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Ops, I didn't see this ... Michel has found a really weird example. > > Michel is a character created by the Swedish author Astrid Lindgren. > He's a boy who plays lots of tricks. > Only my mother sometimes calls that way, but normally I'm called > Michael, Michi by some German friends, and Mike by some English > friends. No one uses my second name... > But I guess it was only a typo... > > Sorry, sorry, sorry ... In Spanish is 'Miguel' :) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 01:59:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA40075 for dynarec-outgoing; Thu, 16 Mar 2000 01:59:37 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: VICTOR MOYA DEL BARRIO Message-Id: <200003160939.KAA04791@alabi.fib.upc.es> Subject: Re: DYNAREC: My tunes In-Reply-To: <38CFAE7F.4F09170A@eurocopter.de> from Neil Griffiths at "Mar 15, 0 04:38:39 pm" To: dynarec@synthcom.com Date: Thu, 16 Mar 2000 10:39:56 +0100 (MET) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > I can discuss a song objectively, whether I like it or not. You can't do > that for a whole musical style anyway. I mean, I don't like Techno. But > there are a couple of songs that I don't mind listening to. > > The same happens to me. There some kinds of music I really hate, but usually it depends upon the theme if it likes me or not. The instrument I like most is spanish guitar and electric guitar, but only if they are played in the propper matter. I'm not an expert in music. >I like just about all music styles. I don't like Techno too much and I > don't see rap as being music at all. Not sure what you mean by "dancefloor" > but I do like Heavy Metal - but the old style and not the current American > trash. > What you call old style, Led Zeppelin, Def Leppard(or something like this). I like most IronMaiden, and what is called german Heavy Metal (now seems is also called Italian Heavy Metal with new bands from Italia). Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 02:02:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA40204 for dynarec-outgoing; Thu, 16 Mar 2000 02:02:25 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 16 Mar 2000 02:02:22 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: Funny stuff Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com http://www.lumine.net/engrish/ Weird English mistranslations by the Japanese. I think it's funny as hell. Mistranslations I find amusing in ANY culture... -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 02:04:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA40215 for dynarec-outgoing; Thu, 16 Mar 2000 02:04:58 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D0AD36.AEF9414E@eurocopter.de> Date: Thu, 16 Mar 2000 10:45:26 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Why stop there? You have a point. - Mad cow disease (I mean French women, BTW) - Crap politicians - French people in general - A common country for everyone to hate > We have a French guy at work and he's an asshole. Parks his car angled so > no one will touch his precious POS. That's enough to get you on my shit > list. ;-) What? Yes, I'd be the same! That takes the piss! :o > It's like 200 years ago France was the culturul capitol of the world and > they haven't forgotten it. It's one of the few things that they can remember. > > And the funny thing is that I share my apartment with two French guys! :)) > > Ah! Are they traditional shower once a month whether they need to or not > type French guys? One is a "shower-once-a-week" guy. And he laughs at me for showering every day. Er... I'd prefer to be clean, if it's all the same to you. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 06:31:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA40796 for dynarec-outgoing; Thu, 16 Mar 2000 06:31:54 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003161411.PAA30713@pons.ac.upc.es> Subject: Re: DYNAREC: Out of the shadows In-Reply-To: <38D0A2C3.335F8EDC@eurocopter.de> from Neil Griffiths at "Mar 16, 2000 10:00:51 am" To: dynarec@synthcom.com Date: Thu, 16 Mar 2000 15:11:52 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > So Portuguese has two genders like French. > > I can learn Portuguese easier then. :) Portuguese and Spanish are a lot of related. We can understand each other most of time without learning the particular cases of each language. > > > In Germany we have a proverb: Exceptions support the rule ;-) > > Scary: we have the same! It might be an international proverb. In Spanish is: 'la execpcion confirma la regla' direct bad translation is something like this: exceptions confirms the rule. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 06:32:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA40805 for dynarec-outgoing; Thu, 16 Mar 2000 06:32:18 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003161418.PAA01383@pons.ac.upc.es> Subject: Re: DYNAREC: Out of the shadows In-Reply-To: <38D08DAD.B3145FEE@eurocopter.de> from Neil Griffiths at "Mar 16, 2000 08:30:53 am" To: dynarec@synthcom.com Date: Thu, 16 Mar 2000 15:18:48 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > It's like Spanish in that regard, then - where you can tell the sex of a > word by the last letter. That's right, Victor, isn't it? > Yes. Portuguese and Spanish are very similar, in fact Portugal and Spain were the same 'country' by the end of middle age. Later they were separated, I don't know why, problems between kings or something like this ... By what I know a lot of people from Portugal knows Spanish, but not many Spanish talk Portuguese :(. There is a region in Spain were a version of Portuguse is talked too as the main language. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 06:32:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA40814 for dynarec-outgoing; Thu, 16 Mar 2000 06:32:54 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003161419.PAA07025@pons.ac.upc.es> Subject: Re: DYNAREC: C to ASM question In-Reply-To: from Neil Bradley at "Mar 16, 2000 00:56:31 am" To: dynarec@synthcom.com Date: Thu, 16 Mar 2000 15:19:39 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > >not do a 'week subject' and discuss about it? > > Nice idea. So what shall be the topic for next week? > > How about input controller methodologies for emulation? > For me is Ok. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 06:59:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA40871 for dynarec-outgoing; Thu, 16 Mar 2000 06:59:47 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D0F248.68A52DB8@eurocopter.de> Date: Thu, 16 Mar 2000 15:40:08 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: <200003161411.PAA30713@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > I can learn Portuguese easier then. :) > > Portuguese and Spanish are a lot of related. We can understand each other most > of time without learning the particular cases of each language. With the countries being so close (and Portugal being pretty small) I'd have thought so. Doesn't have to be the case, though. > > Scary: we have the same! > > It might be an international proverb. In Spanish is: 'la execpcion confirma la > regla' direct bad translation is something like this: exceptions confirms the rule. Ooh, I can understand that. Something like: The exception confirms the regulation. I could be wrong, but I hope not. :) I also prefer your badly translated version! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 07:18:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA40944 for dynarec-outgoing; Thu, 16 Mar 2000 07:18:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003161505.QAA30023@pons.ac.upc.es> Subject: Re: DYNAREC: Out of the shadows In-Reply-To: <38D0F248.68A52DB8@eurocopter.de> from Neil Griffiths at "Mar 16, 2000 03:40:08 pm" To: dynarec@synthcom.com Date: Thu, 16 Mar 2000 16:05:03 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > I can learn Portuguese easier then. :) > > > > Portuguese and Spanish are a lot of related. We can understand each other most > > of time without learning the particular cases of each language. > > With the countries being so close (and Portugal being pretty small) I'd > have thought so. Doesn't have to be the case, though. > Yes it's something like this, but in fact Portuguese and Spanish start from the same language -latin- and and they were divided in two diffent languages in a later age than perhaps french or italian, and people were a lot of related each other. > > > Scary: we have the same! > > > > It might be an international proverb. In Spanish is: 'la execpcion confirma la > > regla' direct bad translation is something like this: exceptions confirms the rule. > > Ooh, I can understand that. Something like: > > The exception confirms the regulation. > > I could be wrong, but I hope not. :) > > I also prefer your badly translated version! :) > I suppose is something similar :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 07:48:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA41045 for dynarec-outgoing; Thu, 16 Mar 2000 07:48:09 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D0FD9A.78D618E9@eurocopter.de> Date: Thu, 16 Mar 2000 16:28:26 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: <200003161505.QAA30023@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Yes it's something like this, but in fact Portuguese and Spanish start from the same language > -latin- and and they were divided in two diffent languages in a later age than perhaps > french or italian, and people were a lot of related each other. Ah, right. It's strange how different Wales is to England. So close to each other, yet the difference in language is astonishing. Mind you, that's because Welsh is one of the few European languages not to have its roots set in Latin. > > I also prefer your badly translated version! :) > > > I suppose is something similar :) Ooh! My poor Spanish translated something! I'm soooo good! ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 08:07:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA41092 for dynarec-outgoing; Thu, 16 Mar 2000 08:07:19 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003161553.QAA30451@pons.ac.upc.es> Subject: Re: DYNAREC: Out of the shadows In-Reply-To: <38D0FD9A.78D618E9@eurocopter.de> from Neil Griffiths at "Mar 16, 2000 04:28:26 pm" To: dynarec@synthcom.com Date: Thu, 16 Mar 2000 16:53:38 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > Yes it's something like this, but in fact Portuguese and Spanish start from the same language > > -latin- and and they were divided in two diffent languages in a later age than perhaps > > french or italian, and people were a lot of related each other. > > Ah, right. It's strange how different Wales is to England. So close to each > other, yet the difference in language is astonishing. Mind you, that's > because Welsh is one of the few European languages not to have its roots > set in Latin. > In Spain there is still another language not derived from latin, I don't know how is called in English, perhaps vasconian, 'vasco' or 'euskera' is called here. It's a really old language from celtic roots (I think but I'm not sure) talked by people before Empire of Rome. But I don't know this language and it's a really hard language. I'm from the norht-east of Spain and this language is spoken in a region in north(central) of Spain and the south of France. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 08:25:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA41173 for dynarec-outgoing; Thu, 16 Mar 2000 08:25:45 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question Date: Thu, 16 Mar 2000 16:54:54 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> Nice idea. So what shall be the topic for next week? >How about input controller methodologies for emulation? I know very close to nothing about the topic but it will be nice to learn from your discussions. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 08:25:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA41189 for dynarec-outgoing; Thu, 16 Mar 2000 08:25:49 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Thu, 16 Mar 2000 16:58:22 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Um... yeah, that's about right. ;-) Mac users are Mac Nazis. Those who >berate other people for using other computers, and act like they are >superior to everyone. This is a use of the word Nazi I can understand ;-) >Nazi means "Militant, aggressive, and single minded" to me. Hope this >helps. ;-) Now stored in my organic dictionary - till it gets swapped out... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 08:25:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA41190 for dynarec-outgoing; Thu, 16 Mar 2000 08:25:49 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows Date: Thu, 16 Mar 2000 17:03:46 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> In Germany we have a proverb: Exceptions support the rule ;-) >Scary: we have the same! I noticed that several proverbs in English and German just sound like literal translations, but there are also many exceptions, which doesn't harm the rule of course ;-) >It might be an international proverb. In Spanish is: 'la execpcion confirma la >regla' direct bad translation is something like this: exceptions confirms the rule. The untranslated German proverb is: "Ausnahmen bestaetigen die Regel." Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 08:25:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA41193 for dynarec-outgoing; Thu, 16 Mar 2000 08:25:50 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question Date: Thu, 16 Mar 2000 17:02:32 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Sorry, sorry, sorry ... It doesn't matter! >In Spanish is 'Miguel' :) And in Russian Michal. It's a really multicultural name. Maybe I should stick to my second name: Ingo... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 08:25:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA41191 for dynarec-outgoing; Thu, 16 Mar 2000 08:25:49 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Thu, 16 Mar 2000 16:56:30 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Actually, I listen to everything on my HD540 MkII headphones. And the 314 >is a great piece, too. Splendid choice of audio equipment! Thanks. I prefer functional stuff that really works, and not those function overloaded crap that never does what you want. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 08:40:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA41233 for dynarec-outgoing; Thu, 16 Mar 2000 08:40:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003161627.RAA06274@pons.ac.upc.es> Subject: Re: DYNAREC: C to ASM question In-Reply-To: from Michael Koenig at "Mar 16, 2000 05:02:32 pm" To: dynarec@synthcom.com Date: Thu, 16 Mar 2000 17:27:11 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Sorry, sorry, sorry ... > > It doesn't matter! > > >In Spanish is 'Miguel' :) > > And in Russian Michal. It's a really multicultural name. Maybe I should > stick to my second name: Ingo... > In fact is a jewish name (ummm ... I don't know how is called in english 'hebreo' the ancient languages of jew people). It's a name from the Bible, this explains because is so international. I think it was an arcangel or something like this. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 12:02:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA41992 for dynarec-outgoing; Thu, 16 Mar 2000 12:02:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Updates Date: Thu, 16 Mar 2000 17:43:52 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Two absolutely unrelated updates: For NG: LCC generates code for Alpha, Sparc, MIPS, and Intel. http://www.cs.princeton.edu/software/lcc/ For NB: Since you were rather surprised: Jeff Porcaro died on 5 August 1992. http://www.toto99.com/jeff/jeff.htm Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 12:02:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA41993 for dynarec-outgoing; Thu, 16 Mar 2000 12:02:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question Date: Thu, 16 Mar 2000 17:46:18 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >In fact is a jewish name (ummm ... I don't know how is called in english 'hebreo' >the ancient languages of jew people). The language is called Hebrew. >It's a name from the Bible, this explains >because is so international. I think it was an arcangel or something like this. I think that's correct. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 12:54:22 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA42186 for dynarec-outgoing; Thu, 16 Mar 2000 12:54:22 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Thu, 16 Mar 2000 21:33:37 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >There's another thing the French have given us: >- Boring films You don't seem to know films by Jacques Tati... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 13:05:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA42247 for dynarec-outgoing; Thu, 16 Mar 2000 13:05:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Jazz Funk Date: Thu, 16 Mar 2000 21:46:18 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com I'm currently putting a MP3 file to my home archive that you can find out by yourself what I believe to be good jazz (in this case jazz funk). The song is called "Early AM Attitude" and is a live performance of: Dave Grusin: Acoustic piano and synthesizers Lee Ritenour: Guitar Tim Landers: Bass Vinnie Colaiuta: Drums Barnaby Finch: Synthesizers The file available from (sorry, no FTP): http://www.linguistik.uni-erlangen.de/~mlkoenig/samples/earlyam.mp3 Enjoy it! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 13:23:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA42339 for dynarec-outgoing; Thu, 16 Mar 2000 13:23:06 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D14BD6.9962A710@zaz.com.br> Date: Thu, 16 Mar 2000 18:02:14 -0300 From: Willian Padovani Germano X-Mailer: Mozilla 4.61 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi again :) > Another lurker in the dark... I wonder how many more are there ;-) Lurkers, step ahead before someone with access to the list of members of this group finds you :). > With such a mixture of people on the list it would be a crime if we > didn't discuss cultural topics as well, and language and music surely > belong to these topics. Hopefully we are all free here from that awful sin: considering the model ( in this case, separating knowledge in "well defined" topics ) to be the real thing. But as said in Brazil: 'toda regra tem excessão' == every rule has exception[s]. > >Willian, wgermano@zaz.com.br > > BTW, is your last name arbitrary or is there a reason that it sounds > like "German"? It is a latinization of "german". It means the (male) german. In history ( in Portuguese ) germano is the name by which many so-called barbarian civilizations, who defeated the western romans and started the middle-age, are grouped. Germans, in English. For much more info about this: http://www.britannica.com/bcom/eb/article/4/0,5716,108594+3,00.html Their names give curious hints: there were the alemmani ( germans are called "alemães" in Portuguese: Germany is "Alemanha" ), franks, goths, ostrogoths, visigoths, saxons, etc. Not that hard to guess the respective regions some of them conquered... Willian --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 13:23:12 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA42354 for dynarec-outgoing; Thu, 16 Mar 2000 13:23:12 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D14BDD.30F9CEBD@zaz.com.br> Date: Thu, 16 Mar 2000 18:02:21 -0300 From: Willian Padovani Germano X-Mailer: Mozilla 4.61 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: <38D03321.B52A07DC@zaz.com.br> <38D08DAD.B3145FEE@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi :) Neil Griffiths wrote [about mysticism and religion being roots for gender in substantives]: > You have a point, yes. What does that say about the English, though? :o Different root, surely. Now we fall into a little philosophy behind languages. For example, maybe you've heard that native chinese speakers may have a natural ability with numbers. I don't mean a cultural thing, like receiving prejudices with the language. It's something gained from "formatting" a young brain with chinese language. Each really different language may stimulate differently, of course. That's a nice thing about people with more than one native language -- that might be broadening their thinking mechanics early on. Developing a little more on the god/goddess aspect: Once, in many cultures, people were basically hunters and collectors. Women were the center, home. Men, the providers and protectors, activelly going out and fighting for their needs. Their gods were helping warriors, gods of hunting. And later, of war. Women would take care of children, feeding, early planting, healing, relief: goddess of cure, moon ( no fighting at night usually ), forest, etc. These cultures generally developed agriculture, settled down ( no need to move when the food was exausted in one place ) and changed their myths accordingly. Going out and killing was not the answer anymore, men became dependant even more on the gods. Would there be rain enough, would natural conditions be nice to them ? Nature gives birth to life, so do women: earth deities were usually female. Men possess, kills the enemy, etc. so violence was a male thing: god of thunder, of storms, war, etc. And way frequently the man, the chief, the king ruled, so the main god was male. Willian --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 13:42:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA42454 for dynarec-outgoing; Thu, 16 Mar 2000 13:42:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <008e01bf8f8d$643dddc0$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: My tunes Date: Thu, 16 Mar 2000 22:16:45 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >There's another thing the French have given us: > >- Boring films > > You don't seem to know films by Jacques Tati... I was joking. You've got to think of people like Luc Besson (sp?) - the guy in charge of films like the Fifth Element. But in general, it's true. Remember what we were saying about exceptions? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 13:42:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA42461 for dynarec-outgoing; Thu, 16 Mar 2000 13:42:11 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <008d01bf8f8d$5d19dd00$0a909090@okay> From: "Neil Griffiths" To: References: <200003161627.RAA06274@pons.ac.upc.es> Subject: Re: DYNAREC: C to ASM question Date: Thu, 16 Mar 2000 22:15:17 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > And in Russian Michal. It's a really multicultural name. Maybe I should > > stick to my second name: Ingo... > > In fact is a jewish name (ummm ... I don't know how is called in english 'hebreo' > the ancient languages of jew people). It's a name from the Bible, this explains > because is so international. I think it was an arcangel or something like this. It's "Hebrew" and yes - it is. Michael was an archangel - and was, AFAIK, the right hand man of God. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 16:39:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA43115 for dynarec-outgoing; Thu, 16 Mar 2000 16:39:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Thu, 16 Mar 2000 11:29:17 -0800 (PST) To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Dumped the tests out again, prepare yourself for some blasts of ugly at&t asm. gcc --version is pgcc-2.91.57 Options are -O3 -ffast-math -S Declarations unsigned long c; unsigned long a; unsigned char *p; Construct 1: c = *p; a = lut[c >> 4]; a <<= 1; results in: movzbl (%edi), %eax movl 28(%ebp), %ebx shrl $4, %eax movl lut(,%eax,4), %ecx movzbl (%ebx), %eax addl %ecx, %ecx movl 24(%ebp), %ebx p is stored in EDI and EBX c is stored in EAX a is stored in ECX First pointer is loaded into EDI for some reason, code then loads the next one into EBX. Shifts EAX right 4, indexes into the lut, reads the next byte, shifts ECX left one, and starts at loading the next pointer into EBX. First guess is that it moved things around to avoid an address stall. Construct 2: a = lut[*p >> 4]; a <<= 1; results in: movb (%edi), %al movl 28(%ebp), %ebx shrb $4, %al andl $255, %eax movl lut(,%eax,4), %ecx movb (%ebx), %al addl %ecx, %ecx shrb $4, %al movl 24... Some real stupidities here. Uses a byte move to load AL, shifts, masks, then indexes into the lut. Same thing with EDI and EBX as before. Construct 3 c = *p4 >> 4; a = lut[c]; a <<= 1; Seems I was too sleepy the first time, and Construct 3 produces identical code to Construct 2. Redeclaring c as an unsigned char results in code equivalent to Constructs 2 and 3. The code samples are from part of the stanknes graphics decode. I have 5 packed bitplanes passed in as unsigned char *p0, *p1, *p2, *p3, and *p4. I need these converted to padded 5-bit chunky format to throw at the color table. In other words, Gotta turn 000000000.... 111111111.... 222222222.... 333333333.... 444444444.... into 43210 43210 43210 43210 43210 .... Current algorithm I use steps through the planes a byte at a time. It takes the upper 4 bits, and uses them as an index into a decode table. unsigned long decoderlut[16]; decoderlut[0xA] == 0x00010001; Plane 4's decoded value gets copied straight into an unsigned long accumulator. Acc gets leftshifted one, all further planes OR the decoded value in before the shift. Result is 4 chunky 5 bit pixels, one per byte of the accumulator. Each byte is shoved through the color lookup to get a value to dump to the framebuffer. Process is repeated using the lower 4 bits of each byte. Right now this function sucks up 53% of my runtime =P John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Flatline Studios http://www.flatlinestudios.com Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 16 23:20:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA44115 for dynarec-outgoing; Thu, 16 Mar 2000 23:20:15 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-Id: <200003170703.IAA00948@wsasd315.asml.nl> Date: Fri, 17 Mar 2000 08:03:19 +0100 (MET) From: Paul Franke Subject: Re: DYNAREC: Out of the shadows To: dynarec@synthcom.com MIME-Version: 1.0 Content-Type: TEXT/plain; charset=us-ascii Content-MD5: wrYvgYGrXTb3UT9uqi8aug== X-Mailer: dtmail 1.2.1 CDE Version 1.2.1 SunOS 5.6 sun4u sparc Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, I was another lurker in the dark... My intrest in game-emulators brought me to this group. I'm born an raised in the Netherlands, which is a not so large country near Germany. I want to say something more about how a language may shape the brain. When you're younger than approximatly 2 year every human has the ability to learn and recognize virtually every language, however after this age you'll lose the ability recognize certain speech combinations. A good example of this is the inability of Chinese people (I can better say, people who are at a young age only exposed to Chinese speech) to use and recognize the "r". Also another interesting issue is dyslection, which is an inability to read automatically i.e. by using word recognition instead of reading letter by letter, is resticted to certain alphabets. In China dyslection is very rare to absent. A probable explanation for this is the brain areas which are used while reading Chinese are different then those which are being used while reading a laguage which uses the Latin alfabet. Paul _____________________________________________________________________ Paul Franke ASML BV phone: (+31) (0)40-2305074 / 0623379159 De Run 6665 email work: paul.franke@asml.nl 5504 DT Veldhoven, email home: pfranke@wxs.nl The Netherlands --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 00:06:07 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA44209 for dynarec-outgoing; Fri, 17 Mar 2000 00:06:07 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D1E2CC.158DC6D1@eurocopter.de> Date: Fri, 17 Mar 2000 08:46:20 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: <38D14BD6.9962A710@zaz.com.br> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Lurkers, step ahead before someone with access to the list of members of > this group finds you :). We'll hunt you down and... find you. :) > > With such a mixture of people on the list it would be a crime if we > > didn't discuss cultural topics as well, and language and music surely > > belong to these topics. > > Hopefully we are all free here from that awful sin: considering the > model ( in this case, separating knowledge in "well defined" topics ) to > be the real thing. But as said in Brazil: 'toda regra tem excessão' == > every rule has exception[s]. Yes, when we have an excellent opportunity to discuss things like this, why squander (waste) it? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 00:08:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA44226 for dynarec-outgoing; Fri, 17 Mar 2000 00:08:32 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D1E35E.B928EB6B@eurocopter.de> Date: Fri, 17 Mar 2000 08:48:46 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: <38D03321.B52A07DC@zaz.com.br> <38D08DAD.B3145FEE@eurocopter.de> <38D14BDD.30F9CEBD@zaz.com.br> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > You have a point, yes. What does that say about the English, though? :o > > Different root, surely. Now we fall into a little philosophy behind > languages. For example, maybe you've heard that native chinese speakers > may have a natural ability with numbers. I don't mean a cultural thing, > like receiving prejudices with the language. It's something gained from > "formatting" a young brain with chinese language. Yes, certainly. I have heard that about Chinese. I'll agree with your explanation too. But maybe we'll find out it's all that rice they eat. ;) > Each really different language may stimulate differently, of course. > That's a nice thing about people with more than one native language -- > that might be broadening their thinking mechanics early on. I'm going to smile and grin at that one. :) > These cultures generally developed agriculture, settled down ( no need > to move when the food was exausted in one place ) and changed their > myths accordingly. Going out and killing was not the answer anymore, men > became dependant even more on the gods. Would there be rain enough, > would natural conditions be nice to them ? Nature gives birth to life, > so do women: earth deities were usually female. Men possess, kills the > enemy, etc. so violence was a male thing: god of thunder, of storms, > war, etc. And way frequently the man, the chief, the king ruled, so the > main god was male. Yep, I agree with this. I was just teasing you about the English bit. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 00:12:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA44243 for dynarec-outgoing; Fri, 17 Mar 2000 00:12:02 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D1E467.32D6D1AC@eurocopter.de> Date: Fri, 17 Mar 2000 08:53:11 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: <200003170703.IAA00948@wsasd315.asml.nl> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I'm born an raised in the Netherlands, which is a not > so large country near Germany. Yep, not so far. I've got a couple of friends not so far from there (the Nederlands). > I want to say something more about how a language may shape the > brain. When you're younger than approximatly 2 year every human > has the ability to learn and recognize virtually every language, > however after this age you'll lose the ability recognize certain > speech combinations. A good example of this is the inability of > Chinese people (I can better say, people who are at a young > age only exposed to Chinese speech) to use and recognize the "r". Yes - that's why I think it's a good thing that when a mother and father can speak different languages that it's a good thing to try and teach your child. > Also another interesting issue is dyslection, which is an > inability to read automatically i.e. by using word recognition > instead of reading letter by letter, is resticted to certain alphabets. > In China dyslection is very rare to absent. A probable explanation for > this is the brain areas which are used while reading Chinese are > different then those which are being used > while reading a laguage which uses the Latin alfabet. The word you're looking for is "dyslexia". Personally, I think it's cruel to give dyslexic people a term that they can't even read! :o No, that was cruel. Sorry. :) I think the reason that Chinese don't suffer with this is more due to the fact of how they write words. In fact, each symbol doesn't actually have a word - it's more a meaning. Because of the fact that there aren't really letters (there are, I suppose, when you split up a chinese word into its various components), this may explain why. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 00:32:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA44291 for dynarec-outgoing; Fri, 17 Mar 2000 00:32:55 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Fri, 17 Mar 2000 09:01:36 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I was joking. You've got to think of people like Luc Besson (sp?) - the guy >in charge of films like the Fifth Element. But in general, it's true. >Remember what we were saying about exceptions? ;) Ah, yes. I was in really bad shape yesterday (and it isn't that much better today). When my grandmother and my mother came back from Salzburg I thought they didn't bring me anything. I was obviously wrong. I would call an infection where you have problems with both ends of the body something... I went to bed at 4 AM since I wanted to make sure I didn't have to run to the toilet in the night. And I couldn't lie anymore at 8 AM... Back to films... I wonder if there are many German films that are really good. Some impressive ones were "Das Boot" about the German submarine U96, "Nur ueber meine Leiche" (a black comedy where a casanova style guy gets a last chance), and "23" which is about the German hacker Karl Koch who stole US military information for the KGB. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 00:32:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA44300 for dynarec-outgoing; Fri, 17 Mar 2000 00:32:56 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows Date: Fri, 17 Mar 2000 09:08:42 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I was another lurker in the dark... How many are left? >My intrest in game-emulators brought me to this group. Not much about this topic at the moment... >I'm born an raised in the Netherlands, which is a not >so large country near Germany. I've never been to the Netherlands so far, but I know where it lies. To me your language always sounds a bit like a mixture of German and English. >I want to say something more about how a language may shape the >brain. When you're younger than approximatly 2 year every human >has the ability to learn and recognize virtually every language, >however after this age you'll lose the ability recognize certain >speech combinations. A good example of this is the inability of >Chinese people (I can better say, people who are at a young >age only exposed to Chinese speech) to use and recognize the "r". I'm a bit surprised that you don't mention the Sapir-Whorf-theory or the "language acquisition device" by Chomsky... >Also another interesting issue is dyslection, which is an >inability to read automatically i.e. by using word recognition >instead of reading letter by letter, is resticted to certain alphabets. >In China dyslection is very rare to absent. A probable explanation for >this is the brain areas which are used while reading Chinese are >different then those which are being used >while reading a laguage which uses the Latin alfabet. That might be just due to the fact that in the Chinese writing system every sign stands for a syllable, just as in Korea's Hangul. The difficulty then is to know what kind of sound belongs to a special sign, but you don't have to combine several letters to form a syllable. Do we have an Asian lurker on the list by any chance? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 00:32:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA44310 for dynarec-outgoing; Fri, 17 Mar 2000 00:32:58 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows Date: Fri, 17 Mar 2000 09:16:45 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id AAA44304 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >It is a latinization of "german". It means the (male) german. In history >( in Portuguese ) germano is the name by which many so-called barbarian >civilizations, who defeated the western romans and started the >middle-age, are grouped. Germans, in English. For much more info about >this: What I meant is if it's just pure chance that you have the name or if you had German ancestors. >Their names give curious hints: there were the alemmani ( germans are >called "alemães" in Portuguese: Germany is "Alemanha" ) Sounds a bit like the French terms... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 00:32:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA44311 for dynarec-outgoing; Fri, 17 Mar 2000 00:32:58 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows Date: Fri, 17 Mar 2000 09:14:37 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yes it's something like this, but in fact Portuguese and Spanish start from the same language > -latin- and and they were divided in two diffent languages in a later age than perhaps > french or italian, and people were a lot of related each other. >From my knowledge the strangest language in Europe is Hungarian because it doesn't belong to *any* of the known language familiies, although it's surounded by many languages that do. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 00:46:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA44349 for dynarec-outgoing; Fri, 17 Mar 2000 00:46:19 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows Date: Fri, 17 Mar 2000 09:27:53 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >The word you're looking for is "dyslexia". Personally, I think it's cruel >to give dyslexic people a term that they can't even read! :o Hehe. >I think the reason that Chinese don't suffer with this is more due to the >fact of how they write words. In fact, each symbol doesn't actually have a >word - it's more a meaning. Because of the fact that there aren't really >letters (there are, I suppose, when you split up a chinese word into its >various components), this may explain why. Nope, it's one syllable per sign, where one syllable also can be a complete word just as the other languages. And a sign doesn't have to have a meaning because there are also gramatical signs (similar to your inflection). Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 01:14:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA44436 for dynarec-outgoing; Fri, 17 Mar 2000 01:14:40 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Thu, 16 Mar 2000 20:04:29 -0800 (PST) To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows In-Reply-To: <200003170703.IAA00948@wsasd315.asml.nl> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Might as well make a semi-formal introduction. Right now I'm a (somewhat dissatisfied) student at UCI, who originally hails from Texas. I code for linux almost exclusively, as windows is painful and somewhat crash prone. As a result my opinions on tools and such might seem a little biased =) As for emulation, I'm the author of Stanknes. I needed something to keep me coding, so I decided to write a nes emulator for linux that didn't suck =P Right now I'm on the mul8 and nesdev lists, usually lurking unless something particularly interesting pops up. Saw dynarec show up on the list again, and followed the info. I've heard it said that dynarec for the 6502 is severe overkill, but what works well for one processor can usually be adapted to another... AFAIK, noone else approaches graphics or mapper implementation quite the way I do, though I have Neil Bradley's fine non-bankswitched 6502 running just fine for NES stuff... unmodified... In terms of non-emulator stuff, I know a small bit of Spanish and Latin, make bad attempts at playing the electric guitar, and listen to abusively loud music. Pretty much every other interest is either computer or computer game related. Programming wise, the topics I can at least follow a discussion of include some compiler theory, parsing, memory management, garbage collection, file systems, low level graphics, OpenGL, general 3D math, digital filters, language design, network coding, general sound synthesis, BSP trees, texture mapping, a bit of in-depth x86 optimization, 6502, the NES PPU, low level x86 coding, compression, simple encryption, physics, cpu cores, various 2D graphics ops, fractals, threads, some things dealing with java, dynamic loading, and a few other miscellaneous topics. General opinion on music, if it was made after 1992, it has a good chance of sucking. Oh well, enough feeding my ego, back to putting sound back into stanknes... John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Flatline Studios http://www.flatlinestudios.com Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 05:58:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA45210 for dynarec-outgoing; Fri, 17 Mar 2000 05:58:32 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question Date: Fri, 17 Mar 2000 11:39:00 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: In-Reply-To: X-Mailer: Forte Agent 1.6/32.525 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Thu, 16 Mar 2000 11:29:17 -0800 (PST), tarquin@austin.rr.com wrote: >The code samples are from part of the stanknes graphics decode. I have 5 >packed bitplanes passed in as unsigned char *p0, *p1, *p2, *p3, and *p4. I >need these converted to padded 5-bit chunky format to throw at the color >table. > >In other words, Gotta turn > >000000000.... >111111111.... >222222222.... >333333333.... >444444444.... > >into > >43210 43210 43210 43210 43210 .... > >Current algorithm I use steps through the planes a byte at a time. It >takes the upper 4 bits, and uses them as an index into a decode table. > >unsigned long decoderlut[16]; > >decoderlut[0xA] == 0x00010001; > >Plane 4's decoded value gets copied straight into an unsigned >long accumulator. Acc gets leftshifted one, all further planes OR the >decoded value in before the shift. Result is 4 chunky 5 bit pixels, one >per byte of the accumulator. Each byte is shoved through the color lookup >to get a value to dump to the framebuffer. Process is repeated using the >lower 4 bits of each byte. > >Right now this function sucks up 53% of my runtime =P PMFJI... Have you considered using 2 larger decode tables? Here's my suggested code (assuming I have understood the problem you have presented correctly): Declarations unsigned long c; unsigned long a; unsigned long b; unsigned char *p0; unsigned char *p1; unsigned char *p2; unsigned char *p3; unsigned char *p4; Construct: c = *p4++; a = lut1[c]; b = lut2[c]; c = *p3++; a <<= 1; b <<= 1; a |= lut1[c]; b |= lut2[c]; c = *p2++; a <<= 1; b <<= 1; a |= lut1[c]; b |= lut2[c]; c = *p1++; a <<= 1; b <<= 1; a |= lut1[c]; b |= lut2[c]; c = *p0++; a <<= 1; b <<= 1; a |= lut1[c]; b |= lut2[c]; This has the advantage of eliminating the initial shift (two tables, one for each nibble) and eliminating half of the memory reads and address preparation (because we are generating both values simultaneously). Even a brain dead compiler can't screw this up. Your thoughts? -- /-----------------------------------------------------------------\ | Jack Follansbee - Senior Software Engineer - ATI Research Inc. | |-------------------------------------------------------------------| | The point is not to program, but to program in such a way | | that you can walk away from a task and say to yourself | | "That is how the program should be done". | \-----------------------------------------------------------------/ --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 07:37:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA45448 for dynarec-outgoing; Fri, 17 Mar 2000 07:37:51 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Fri, 17 Mar 2000 16:19:10 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Passion was the last track I wrote - almost 4 years ago. ;-( Uh, that's quite some time. I hope your synths don't catch as much dust as my drum kit does... >Artinmo was supposed to fade, and you got to hear a version that has no >fading. Ah, ok. >I like Transistified a lot. One of my faves! Yeah, it's quite good. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 07:52:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA45490 for dynarec-outgoing; Fri, 17 Mar 2000 07:52:09 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D24FE6.303B8F8B@eurocopter.de> Date: Fri, 17 Mar 2000 16:31:50 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Passion was the last track I wrote - almost 4 years ago. ;-( > > Uh, that's quite some time. I hope your synths don't catch as much dust > as my drum kit does... Or my violin! :o > >I like Transistified a lot. One of my faves! > > Yeah, it's quite good. Which reminds me, I should give you my input. No matter, I'll do that tonight when I get home. I have listened, but I'll give you my full views later. For now... it's back to the wonderful (sic) world of Ada. :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 08:02:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA45536 for dynarec-outgoing; Fri, 17 Mar 2000 08:02:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D25218.ECB977D5@zaz.com.br> Date: Fri, 17 Mar 2000 12:41:12 -0300 From: Willian Padovani Germano X-Mailer: Mozilla 4.61 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, Michael Koenig wrote: > What I meant is if it's just pure chance that you have the name or if > you had German ancestors. Oh, yes, surely. A german man, about 3 or 4 generations ago. Add to that many portugueses, many italians ( my middle name is Padovani ) and even african ( my father's grandmother ). That's tipically Brazil, mixtures from everywhere. Specially Europe, of course. That gives us easy access to many different cultures ( for one willing to, of course ). By the way, music: anyone here ever heard of Hermeto Pascoal? Brazil has had many fantastic musicians, but this composer is alone in his class. Anyone interested, a net search should bring info and mp3s. Willian --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 08:04:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA45557 for dynarec-outgoing; Fri, 17 Mar 2000 08:04:41 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D252A3.F045989D@zaz.com.br> Date: Fri, 17 Mar 2000 12:43:31 -0300 From: Willian Padovani Germano X-Mailer: Mozilla 4.61 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: <200003170703.IAA00948@wsasd315.asml.nl> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi :) Paul Franke wrote: > I want to say something more about how a language may shape the > brain. When you're younger than approximatly 2 year every human > has the ability to learn and recognize virtually every language, > however after this age you'll lose the ability recognize certain > speech combinations. A good example of this is the inability of > Chinese people (I can better say, people who are at a young > age only exposed to Chinese speech) to use and recognize the "r". That happens to colors, too. Some cultures don't recognize more than one "kind of white" for example. Willian --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 08:41:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA45671 for dynarec-outgoing; Fri, 17 Mar 2000 08:41:41 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D25C14.22A69683@eurocopter.de> Date: Fri, 17 Mar 2000 17:23:48 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: <38D25218.ECB977D5@zaz.com.br> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > By the way, music: anyone here ever heard of Hermeto Pascoal? Brazil has > had many fantastic musicians, but this composer is alone in his class. > Anyone interested, a net search should bring info and mp3s. Possibly. Not sure, but isn't Santana Brazilian? I could well be wrong, but I heard that he was. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 08:51:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA45695 for dynarec-outgoing; Fri, 17 Mar 2000 08:51:01 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows Date: Fri, 17 Mar 2000 11:38:52 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: <38D25218.ECB977D5@zaz.com.br> <38D25C14.22A69683@eurocopter.de> In-Reply-To: <38D25C14.22A69683@eurocopter.de> X-Mailer: Forte Agent 1.6/32.525 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Fri, 17 Mar 2000 17:23:48 +0100, Neil Griffiths wrote: >Hi, > >> By the way, music: anyone here ever heard of Hermeto Pascoal? Brazil has >> had many fantastic musicians, but this composer is alone in his class. >> Anyone interested, a net search should bring info and mp3s. > >Possibly. Not sure, but isn't Santana Brazilian? I could well be wrong, but >I heard that he was. :) He's Mexican. Sorry, :) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 08:58:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA45724 for dynarec-outgoing; Fri, 17 Mar 2000 08:58:03 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D25F9A.D082031A@eurocopter.de> Date: Fri, 17 Mar 2000 17:38:50 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: <38D25218.ECB977D5@zaz.com.br> <38D25C14.22A69683@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Possibly. Not sure, but isn't Santana Brazilian? I could well be wrong, but > >I heard that he was. :) > > He's Mexican. Sorry, :) Well, now I know. I wasn't sure. :) In that case, apart from some drummers, I don't know any famous musicians from Brazil. Well, none that jump straight to mind... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 09:16:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA45802 for dynarec-outgoing; Fri, 17 Mar 2000 09:16:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows Date: Fri, 17 Mar 2000 18:00:15 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >That happens to colors, too. Some cultures don't recognize more than one >"kind of white" for example. Well, this sounds a bit like Sapir-Whorf again. I haven't heard of this example, but one of the standard examples has to do with colours. I don't find it right now, but I think it was something about colour adjectives for grey and blue(?) in Welsh. Any idea what I'm talking about, NG? In my opinion these examples have the problem that every human has a slightly different way to perceive colours, which makes such distinctions quite difficult. You might find yourself discussion the name of a specific colour with a speaker of the same native language as if you learned a totally different language. Also it is a fact that women seem to distinct far more colours than men! The other big example that there are dozens of words for snow in Inuit (language of the Eskimos) turned out to be a total myth. The Eskimos have at least 2, maybe 4, words for snow, everything else was exageration by linguists. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 09:25:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA45911 for dynarec-outgoing; Fri, 17 Mar 2000 09:25:44 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows Date: Fri, 17 Mar 2000 18:04:30 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Oh, yes, surely. A german man, about 3 or 4 generations ago. Add to that >many portugueses, many italians ( my middle name is Padovani ) and even >african ( my father's grandmother ). That's tipically Brazil, mixtures >from everywhere. Specially Europe, of course. That gives us easy access >to many different cultures ( for one willing to, of course ). Cool. Must have a nice impact on Brazilian food ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 10:12:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA46168 for dynarec-outgoing; Fri, 17 Mar 2000 10:12:04 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D27145.81B30B7@eurocopter.de> Date: Fri, 17 Mar 2000 18:54:13 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Oh, yes, surely. A german man, about 3 or 4 generations ago. Add to > that > >many portugueses, many italians ( my middle name is Padovani ) and > even > >african ( my father's grandmother ). That's tipically Brazil, mixtures > >from everywhere. Specially Europe, of course. That gives us easy > access > >to many different cultures ( for one willing to, of course ). > > Cool. Must have a nice impact on Brazilian food ;-) What, the German part? Well, they'll get sausages. :) Seriously, I can't find any German restaurants that serve German food. And no, I don't want saur kreut (sp?). Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 10:12:07 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA46176 for dynarec-outgoing; Fri, 17 Mar 2000 10:12:06 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D2710B.51C8C7ED@eurocopter.de> Date: Fri, 17 Mar 2000 18:53:15 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Well, this sounds a bit like Sapir-Whorf again. I haven't heard of this > example, but one of the standard examples has to do with colours. I > don't find it right now, but I think it was something about colour > adjectives for grey and blue(?) in Welsh. > Any idea what I'm talking about, NG? Not really, but then I'm used to them. They're sort of objects, though - when we talk about them, that is. > In my opinion these examples have the problem that every human has a > slightly different way to perceive colours, which makes such > distinctions quite difficult. You might find yourself discussion the > name of a specific colour with a speaker of the same native language as > if you learned a totally different language. Also it is a fact that > women seem to distinct far more colours than men! True. But that's because they shop more and come up with some new colours like "Azure" - "Oh, if only it came in Lilac or Azure". Erm... It's pink! ;) > The other big example that there are dozens of words for snow in Inuit > (language of the Eskimos) turned out to be a total myth. The Eskimos > have at least 2, maybe 4, words for snow, everything else was > exageration by linguists. White snow, whiter snow and yellow snow... ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 10:22:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA46212 for dynarec-outgoing; Fri, 17 Mar 2000 10:22:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows Date: Fri, 17 Mar 2000 19:06:53 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >What, the German part? Well, they'll get sausages. :) Nope, I meant the whole combination of all cultures. >Seriously, I can't find any German restaurants that serve German food. Can be difficult sometimes. >And no, I don't want saur kreut (sp?). It's "Sauerkraut". You should know that because Germans are somtimes referred to as "krauts" by the British, and sauerkraut is one of the words that English took over in exactly the same spelling, apart from leberwurst, kindergarten, or waldsterben... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 11:41:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA46604 for dynarec-outgoing; Fri, 17 Mar 2000 11:41:09 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Fri, 17 Mar 2000 06:30:58 -0800 (PST) To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Fri, 17 Mar 2000, Jack wrote: > On Thu, 16 Mar 2000 11:29:17 -0800 (PST), tarquin@austin.rr.com wrote: > > PMFJI... > > Have you considered using 2 larger decode tables? Here's my suggested > code (assuming I have understood the problem you have presented > correctly): About 15 minutes after I posted that I moved up to one larger table, with two dwords per index. Throwing a |= decoderlut2[c][0]; b |= decoderlut2[c][1]; in seems to have helped a bit, need to try a few different organizations of it. decoderlut2[0|1][c] might be a little bit better... > This has the advantage of eliminating the initial shift (two tables, > one for each nibble) and eliminating half of the memory reads and > address preparation (because we are generating both values > simultaneously). Even a brain dead compiler can't screw this up. looking at the output I get with the single large table, it can =P This will definitely get pounded on some more later, but I recently broke my sound core =) > Your thoughts? > > -- > /-----------------------------------------------------------------\ > | Jack Follansbee - Senior Software Engineer - ATI Research Inc. | > |-------------------------------------------------------------------| > | The point is not to program, but to program in such a way | > | that you can walk away from a task and say to yourself | > | "That is how the program should be done". | > \-----------------------------------------------------------------/ John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Flatline Studios http://www.flatlinestudios.com Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 12:10:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA46756 for dynarec-outgoing; Fri, 17 Mar 2000 12:10:11 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D28C2B.6A478858@zaz.com.br> Date: Fri, 17 Mar 2000 16:48:59 -0300 From: Willian Padovani Germano X-Mailer: Mozilla 4.61 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Out of the shadows References: <38D25218.ECB977D5@zaz.com.br> <38D25C14.22A69683@eurocopter.de> <38D25F9A.D082031A@eurocopter.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi :) Neil Griffiths wrote: > In that case, apart from some drummers, I don't know any famous musicians > from Brazil. Well, none that jump straight to mind... > > Neil. Let me see. Different musicians are known in different places... In the US, probably: Tom Jobim -- a composer and pianist who liked to sing, worked with Sinatra in a couple records. He was one of the creators of Bossa Nova, a mix of american jazz and our roots ). He wrote "Girl from Ipanema", some of you probably heard it. There are some musicians that follow this line ( none as good as him surely ) and work in the States. Milton Nascimento -- great, unique singer. One of my favorites. Hermeto Pascoal, a genius composer, plays anything ( here included things not considered musical instruments ). He looks like an old wiseman or magician. In Europe, there are some violonists, specially Baden Powell, with solid careers. Remember Talking Heads' singer, David Byrne ? He got interested in brazilian music and made famous Tom Zé, a very original singer/lyricist. Heard he is considered a genius in France, for example. Before that, Paul Simon, from Simon & Garfunkel, recorded with a percussion group called Olodum. Percussion is of course very important in Brazil, has evolved to many different styles. Well, getting louder, the most famous bands are Sepultura, the band their former vocalist formed ( Soul Fly ) and Angra, a melodic heavy metal + classical music band. Talking about classics, one of the best new world composers, 19th century, was Carlos Gomes. Later, Heitor Villa-Lobos. Sorry, gotta go right now, anyone interested may request more info... Back home on Sunday. Willian --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 12:25:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA46850 for dynarec-outgoing; Fri, 17 Mar 2000 12:25:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question Date: Fri, 17 Mar 2000 15:13:26 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: In-Reply-To: X-Mailer: Forte Agent 1.6/32.525 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Fri, 17 Mar 2000 06:30:58 -0800 (PST), tarquin@austin.rr.com wrote: >On Fri, 17 Mar 2000, Jack wrote: > >> On Thu, 16 Mar 2000 11:29:17 -0800 (PST), tarquin@austin.rr.com wrote: >> >> This has the advantage of eliminating the initial shift (two tables, >> one for each nibble) and eliminating half of the memory reads and >> address preparation (because we are generating both values >> simultaneously). Even a brain dead compiler can't screw this up. > >looking at the output I get with the single large table, it can =P I'd like to see what assembly this produces. Could you? :) -- Jack ---- The road to truth and enlightenment is long... be sure to bring a snack and something to drink - Seen on a bumper sticker --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 17 16:22:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA47801 for dynarec-outgoing; Fri, 17 Mar 2000 16:22:15 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Fri, 17 Mar 2000 11:11:49 -0800 (PST) To: dynarec@synthcom.com Subject: Re: DYNAREC: C to ASM question In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Fri, 17 Mar 2000, Jack wrote: This is gonna be a LONG one, skip past it if you really don't like looking at AT&T asm =P > >looking at the output I get with the single large table, it can =P > > I'd like to see what assembly this produces. Could you? :) First, the C I'm working from: extern unsigned char *framebuffer; unsigned long pallut[33]; void T24_Decode_5bit(unsigned char line, unsigned char shitf, unsigned char *p0, unsigned char *p1, unsigned char *p2, unsigned char *p3, unsigned char *p4) { unsigned long acc; unsigned long acc2; unsigned char i = 32; unsigned long c; unsigned long *buf = (unsigned long *)framebuffer + (line << 3) + (line << 8) + 8 - shift; unsigned char *sb; if (shift) i++; do { c = *p4; acc = decoderlut2[c][0]; acc2 = decoderlut2[c][1]; acc <<= 1; acc2 <<= 1; c = *p3; acc = decoderlut2[c][0]; acc2 = decoderlut2[c][1]; acc <<= 1; acc2 <<= 1; c = *p2; acc = decoderlut2[c][0]; acc2 = decoderlut2[c][1]; acc <<= 1; acc2 <<= 1; c = *p1; acc = decoderlut2[c][0]; acc2 = decoderlut2[c][1]; acc <<= 1; acc2 <<= 1; c = *p0; acc = decoderlut2[c][0]; acc2 = decoderlut2[c][1]; sb = (unsigned char *)&acc; *buf++ = pallut[*sb++]; *buf++ = pallut[*sb++]; *buf++ = pallut[*sb++]; *buf++ = pallut[*sb++]; sb = (unsigned char *)&acc2; *buf++ = pallut[*sb++]; *buf++ = pallut[*sb++]; *buf++ = pallut[*sb++]; *buf++ = pallut[*sb++]; *p4++; *p3++; *p2++; *p1++; *p0++; i--; } while (i); } now for the really long ugly part, GCC's output. gcc -O3 -ffast-math -o t24.S -S t24.c nothing new here, standard stack frame. T24_Decode_5bit: pushl %ebp movl %esp,%ebp subl $20,%esp beginning of some stupidity... the second pointer here seems like it could be eliminated pushl %edi movl $decoderlut2+4,%edi this huge block just deals with the calculation of buf, and adjusts the loop counter according to shift. pushl %esi pushl %ebx movzbl 8(%ebp),%eax movb 12(%ebp),%cl sall $5,%eax testb %cl,%cl setne %bl movl %eax,%esi addb $32,%bl addl framebuffer,%esi sall $5,%eax movb %bl,-9(%ebp) addl %eax,%esi leal -4(%ebp),%ebx movzbl %cl,%eax leal -32(,%eax,4),%eax leal -8(%ebp),%ebx subl %eax,%esi movl %ebx,-16(%ebp) .p2align 4,,7 Here's the main loop. edi points to the second dword of the lut 32(%ebp) - p4 28(%ebp) - p3 24(%ebp) - p2 20(%ebp) - p1 16(%ebp) - p0 .L35: It's gone nuts here, reads a byte to eax, new addr to ebx, shifts eax to index into the table, reads another byte into ecx, uses eax to grab the first dword into edx movl 32(%ebp),%ebx movzbl (%ebx),%eax movl 28(%ebp),%ebx sall $3,%eax movzbl (%ebx),%ecx movl decoderlut2(%eax),%edx shifts ecx, new addr, uses eax and edi to grab the second dword into eax, shifts eax and edx with adds, ors two more bytes from the table via ecx and edi. sall $3,%ecx movl 24(%ebp),%ebx movl (%eax,%edi),%eax addl %edx,%edx addl %eax,%eax orl decoderlut2(%ecx),%edx orl (%ecx,%edi),%eax >From here through the end of the decodes it is wash rinse repeat ofloads a new byte into ecx, shifts edx, shifts ecx, new addr, shifts eax, ors two bytes, indexing with ecx and edi movzbl (%ebx),%ecx addl %edx,%edx sall $3,%ecx movl 20(%ebp),%ebx addl %eax,%eax orl decoderlut2(%ecx),%edx orl (%ecx,%edi),%eax Repeat movzbl (%ebx),%ecx addl %edx,%edx sall $3,%ecx movl 16(%ebp),%ebx addl %eax,%eax orl decoderlut2(%ecx),%edx orl (%ecx,%edi),%eax Repeat movzbl (%ebx),%ecx addl %edx,%edx sall $3,%ecx addl %eax,%eax orl decoderlut2(%ecx),%edx orl (%ecx,%edi),%eax Saves edx and eax back to the stack, loads the first byte of the saved eax into eax, indexes a dword out of the pallut, stores to esi, loads ebx and edx with a stack value. Why it uses two mem reading calls as opposed to one earlier mem read and a register->register move I have no idea. movl %edx,-4(%ebp) movl %eax,-8(%ebp) movzbl -4(%ebp),%eax movl pallut(,%eax,4),%eax movl %eax,(%esi) movl -20(%ebp),%ebx movl -20(%ebp),%edx increments esi, incs edx twice. uses ebx to get byte two of the saved value, throws it at pallut, stores to buf. incl %edx addl $4,%esi incl %edx movzbl 1(%ebx),%eax movl pallut(,%eax,4),%eax movl %eax,(%esi) grabs a byte using edx, incs esi, throws the byte through pallut, stores to esi, grabs a byte using edx, incs esi, throws through pallut, stroes to esi movzbl (%edx),%eax addl $4,%esi movl pallut(,%eax,4),%eax movl %eax,(%esi) movzbl 1(%edx),%eax addl $4,%esi movl pallut(,%eax,4),%eax movl %eax,(%esi) Repeats the above with the second dword movzbl -8(%ebp),%eax addl $4,%esi movl pallut(,%eax,4),%eax movl %eax,(%esi) movl -16(%ebp),%ebx movl -16(%ebp),%edx incl %edx addl $4,%esi incl %edx movzbl 1(%ebx),%eax movl pallut(,%eax,4),%eax movl %eax,(%esi) movzbl (%edx),%eax addl $4,%esi movl pallut(,%eax,4),%eax movl %eax,(%esi) movzbl 1(%edx),%eax addl $4,%esi movl pallut(,%eax,4),%eax movl %eax,(%esi) addl $4,%esi incs all the pointers, decs the loop counter, exits incl 32(%ebp) incl 28(%ebp) incl 24(%ebp) incl 20(%ebp) incl 16(%ebp) decb -9(%ebp) jne .L35 leal -32(%ebp),%esp popl %ebx popl %esi popl %edi movl %ebp,%esp popl %ebp ret This message is way too long as it is, some of the things gcc's pulling don't seem quite optimal. Then again, the x86 is a pain in the ass to optimize for. The IA64 set shows promise, but we'll see. AFAIK, the main problem is that GCC was designed on systems with adequate register sets, and sensible calling conventions. The x86 calling convention hasn't really changed since the 8086. It most definitely didn't have the room to do much in the way of general register calling conventions. Optimizing for this chip isn't quite the same as optimizing for something with 32 or more registers for both integer and fp... I believe Intel's compiler is quite nice when it comes to good code generation, but it's a little pricey... > -- > Jack > ---- > The road to truth and enlightenment is long... > be sure to bring a snack and something to drink > > - Seen on a bumper sticker > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@synthcom.com. Please direct other > ** questions, comments, or problems to neil@synthcom.com. > John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Flatline Studios http://www.flatlinestudios.com Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 19 16:40:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA00910 for dynarec-outgoing; Sun, 19 Mar 2000 16:40:06 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D25418.59F517CA@ncl.ac.uk> Date: Fri, 17 Mar 2000 15:49:44 +0000 From: Tom Organization: None whatsoever X-Mailer: Mozilla 4.7 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Bradley wrote: > > > > I guess every language has that problem, and I tend to use some irony > > > from time to time, which might not be understood without smilies... > > I guess so, too - but I think the English speaking people use more sarcasm > > than other countries (I know that the French find the idea of sarcasm and > > irony quite difficult!) - > > That's because the French don't have a sense of humor. So far the only > thing I can figure that the French has given us is semi-soft cheese, women > with hairy armpits, poor hygine, and bad hair! And Prolog. -- --Tom this space filled with | this space not filled with this space filled this intentionally | with this intentionally unintentionally --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 19 17:17:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id RAA01172 for dynarec-outgoing; Sun, 19 Mar 2000 17:17:46 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Mon, 20 Mar 2000 02:15:48 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >And Prolog. (Almost) every programming language is good for a certain purpose, so is Prolog. Eg. DCGs are very nice for rapid prototyping of small grammars ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 20 01:06:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA02770 for dynarec-outgoing; Mon, 20 Mar 2000 01:06:46 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D5E96B.586FD518@eurocopter.de> Date: Mon, 20 Mar 2000 10:03:39 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >And Prolog. > > (Almost) every programming language is good for a certain purpose, so > is Prolog. Only purpose I can think of is to ruin peoples minds as they can't figure out why a certain predicate doesn't work! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 20 01:10:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA02782 for dynarec-outgoing; Mon, 20 Mar 2000 01:10:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D5E9B9.DBA0F695@eurocopter.de> Date: Mon, 20 Mar 2000 10:04:57 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: DYNAREC: Input controllers References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, Guess I'll post the first message about this weeks topic - input controllers. How do we do them, how do we implement them (same thing?) and how do we make them better? There. Isn't it nice to be on-topic for a change? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 20 01:49:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA02904 for dynarec-outgoing; Mon, 20 Mar 2000 01:49:06 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 20 Mar 2000 01:49:05 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Input controllers In-Reply-To: <38D5E9B9.DBA0F695@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Guess I'll post the first message about this weeks topic - input > controllers. How do we do them, how do we implement them (same thing?) and > how do we make them better? > There. Isn't it nice to be on-topic for a change? ;) Ah - here we go. ;-) I'll share with you how I think controllers ought to be done (and how they're done in Retrocade). First and foremost, polling sucks. Having to look to see if something is pressed or is being moved is outdated, old, and should be abolished to all depths of hell forever. There is no need in today's world for polling - especially those that have an interrupt or callback driven capability (everything except joysticks which can be made to poll in an interrupted fashion under DOS) I classify controllers into 3 categories: * Binary - Any controller with a make/break contact. Joystick, fire button, etc... * Analog - Any controller with a variable range of positions. This would be an analog joystick, flight yoke, foot pedal, etc... * Ballistics - Any controller, such as a trackball, mouse, or anything that works off of differences or rate of change. The input control code of Retrocade is divide up into x parts (from top down): Hardware layer - Responds to any callbacks, events, or interrupts from any input device. This includes the mouse, keyboard, joystick, or any other controller. All OSs have the ability to generate interrupts or messages when a controller is changed in some way. The only exception to the rule is under DOS, joysticks must be polled. We can get around this problem by polling the joystick inside the 18.2 tick/sec standard timer. This layer fills out a controller structure (whether it's a Keyboard, Mouse, Joystick, Microsoft Sidewinder, Gamepad Pro, etc...) as to what has changed and passes it on to the generic controller specific layer. It might be that a specific key has been pressed, a joystick position move, or a ballistics/distance change with a mouse. Anything beyond the hardware layer is platform independent. Generic controller specific layer - This takes a generic input structure and deals with it in an appropriate fashion. This layer will convert the specific into the generic (I.E. mouse movement becomes a ballistic), checks to see if any changes have been made (in case the hardware layer is braindead and doesn't check to see if the state is already set that way), and scales (if necessary) the range of the physical device to the logical device. For example, if the mouse has a ballistics range of -32 to +32 and the game we're playing only has a -7/+7, we'd overflow too quickly. So it scales it down (or up) depending upon the game being played. Same thing with the joystick. If the game is expecting -256 to 0, and the hardware layer hands it a range of 63 to -63, it reverses and rescales the input range to the game's requirement being played. The keyboard routine requires that the hardware layer hand a platform independent key pressing translation. It also handles shifts, ctrls, and alted keys. Game control layer - This routine takes the genericized input control change and compares the input control type with what is currently assigned to what controller. In Asteroids, there's a left/right/hyperspace/fire and thrust button list - all listed as BINARY devices. You can map any physical binary device to any logical binary device (in the game), or multiple physical binary devices to the same logical binary device (I.E. "fire"). If it finds an assignment from the incoming controller to the game specific controller, it then calls down to the emulated control layer. You cannot, however, assign a binary device to an analog control device. You'll have to create something inside the emulated game itself to handle it. Emulated control layer - This layer is actually 3 separate routines - One to handle binary device, one for ballistics, and one for analog control. Which one is called depends upon the incoming controller type. This routine will scan the list of controllers the game has (fire, hyperspace, etc...) and figure out what needs to be done. It can be one of two things: * Modify an "emulated" memory location - somewhere in the emulated memory map space. This allows you to place a controller "make" and "break" (for binary controllers) at a specific emulated address. You get to define what's a "make" and what's a "break" inside the platform extension itself. * Modify a physical memory location, such as a variable in the same manner as listed above. This allows funky processing to be done on the controller input itself (if necessary). The nice thing about this approach is that things just happen out of band. You have no idea that anything changed. And it only changes when you actually do something with a controller. The emulated code will already be polling for some of these addresses, and the interrupt or controller thread will take care of changing the memory location appropriately. And you have the flexibility of remapping controllers - sometimes multiple controllers to a single function! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 20 05:01:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA03421 for dynarec-outgoing; Mon, 20 Mar 2000 05:01:15 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D62055.3396E460@eurocopter.de> Date: Mon, 20 Mar 2000 13:57:57 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Input controllers References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > There. Isn't it nice to be on-topic for a change? ;) > > Ah - here we go. ;-) No-one else is speaking. I don't think they want to talk about on-topic subjects. ;) > Hardware layer - Responds to any callbacks, events, or interrupts from any > input device. This includes the mouse, keyboard, joystick, or any other > controller. All OSs have the ability to generate interrupts or messages > when a controller is changed in some way. The only exception to the rule > is under DOS, joysticks must be polled. We can get around this problem by > polling the joystick inside the 18.2 tick/sec standard timer. This layer > fills out a controller structure (whether it's a Keyboard, Mouse, > Joystick, Microsoft Sidewinder, Gamepad Pro, etc...) as to what has > changed and passes it on to the generic controller specific layer. It > might be that a specific key has been pressed, a joystick position move, > or a ballistics/distance change with a mouse. Anything beyond the hardware > layer is platform independent. How do you poll the joystick using Interrupts when you're in P-Mode? Do you keep having to drop back into real-mode - which sounds extrememly slow to me(!)? > The nice thing about this approach is that things just happen out of band. > You have no idea that anything changed. And it only changes when you > actually do something with a controller. The emulated code will already be > polling for some of these addresses, and the interrupt or controller > thread will take care of changing the memory location appropriately. And > you have the flexibility of remapping controllers - sometimes multiple > controllers to a single function! Sounds a nice approach. :) I take it that you mean either "Game" or "Arcade hardware system" by platform extension? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 20 06:15:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA03563 for dynarec-outgoing; Mon, 20 Mar 2000 06:15:30 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes Date: Mon, 20 Mar 2000 14:11:22 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Only purpose I can think of is to ruin peoples minds as they can't figure >out why a certain predicate doesn't work! :o Every got the error message "missing closing bracket" during the execution of Scheme program with over 1000 lines? Well, this surely drives you mad! ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 20 06:15:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA03567 for dynarec-outgoing; Mon, 20 Mar 2000 06:15:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Input controllers Date: Mon, 20 Mar 2000 14:12:09 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >There. Isn't it nice to be on-topic for a change? ;) Yeah, and you still were able to remember the topic ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 20 06:47:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA03652 for dynarec-outgoing; Mon, 20 Mar 2000 06:47:20 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D637D4.E891E88A@eurocopter.de> Date: Mon, 20 Mar 2000 15:38:12 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Input controllers References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >There. Isn't it nice to be on-topic for a change? ;) > > Yeah, and you still were able to remember the topic ;-) ;p Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 20 06:47:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA03661 for dynarec-outgoing; Mon, 20 Mar 2000 06:47:38 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D637F6.E8239F4B@eurocopter.de> Date: Mon, 20 Mar 2000 15:38:46 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: My tunes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Every got the error message "missing closing bracket" during the > execution of Scheme program with over 1000 lines? Well, this surely > drives you mad! ;-) Had to write AI chess game in Prolog last year for Uni. Erm... aaarrgggghhh! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 20 06:52:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA03675 for dynarec-outgoing; Mon, 20 Mar 2000 06:52:13 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Mon, 20 Mar 2000 01:59:02 -0800 (PST) To: dynarec@synthcom.com Subject: Re: DYNAREC: Input controllers In-Reply-To: <38D5E9B9.DBA0F695@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Mon, 20 Mar 2000, Neil Griffiths wrote: > Hi, > > Guess I'll post the first message about this weeks topic - input > controllers. How do we do them, how do we implement them (same thing?) and > how do we make them better? Well, in the current version of stanknes things run something like this: At vblank: kick the IO backend, it runs through the event loop, updates the button states. Short, simple, and horribly unportable =P > Neil. John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Flatline Studios http://www.flatlinestudios.com Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 20 22:48:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id WAA07515 for dynarec-outgoing; Mon, 20 Mar 2000 22:48:41 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 20 Mar 2000 22:48:40 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Input controllers In-Reply-To: <38D62055.3396E460@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > No-one else is speaking. I don't think they want to talk about on-topic > subjects. ;) Yes. How dare we talk about things that are on topic! > > might be that a specific key has been pressed, a joystick position move, > > or a ballistics/distance change with a mouse. Anything beyond the hardware > > layer is platform independent. > How do you poll the joystick using Interrupts when you're in P-Mode? Do you > keep having to drop back into real-mode - which sounds extrememly slow to > me(!)? Nope. It's only for joystick control, and the way you read a joystick is by "out"ing to a port and spinning on an "in" of that port until the bit becomes a 1 again. How long it takes you depends upon how quickly the capacitor is discharging. I do that in the ISR. Only takes a few microseconds. > > polling for some of these addresses, and the interrupt or controller > > thread will take care of changing the memory location appropriately. And > > you have the flexibility of remapping controllers - sometimes multiple > > controllers to a single function! > I take it that you mean either "Game" or "Arcade hardware system" by > platform extension? "Platform extension" Is what everyone calls a game "driver". I think it's a horrible name since it's not a driver at all. If anything, it uses drivers! -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 20 23:28:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA07642 for dynarec-outgoing; Mon, 20 Mar 2000 23:28:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D72398.7B06CED5@eurocopter.de> Date: Tue, 21 Mar 2000 08:24:08 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Input controllers References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > No-one else is speaking. I don't think they want to talk about on-topic > > subjects. ;) > > Yes. How dare we talk about things that are on topic! Exactly! It's disgusting! ;) > > How do you poll the joystick using Interrupts when you're in P-Mode? Do you > > keep having to drop back into real-mode - which sounds extrememly slow to > > me(!)? > > Nope. It's only for joystick control, and the way you read a joystick is > by "out"ing to a port and spinning on an "in" of that port until the bit > becomes a 1 again. How long it takes you depends upon how quickly the > capacitor is discharging. I do that in the ISR. Only takes a few > microseconds. I meant the 18.2 timer. I was under the impression that it was an interrupt. How does that work when you're in PMode? I've used that timer before (keyboard timer, isn't it?) - but only in real mode. The only place I've ever programmed support for joysticks was when I used DirectInput. So that was pretty easy. :) > > I take it that you mean either "Game" or "Arcade hardware system" by > > platform extension? > > "Platform extension" Is what everyone calls a game "driver". I think it's > a horrible name since it's not a driver at all. If anything, it uses > drivers! That's true. Ah, right. Now I know. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 20 23:33:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA07667 for dynarec-outgoing; Mon, 20 Mar 2000 23:33:11 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 20 Mar 2000 23:33:09 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Input controllers In-Reply-To: <38D72398.7B06CED5@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > becomes a 1 again. How long it takes you depends upon how quickly the > > capacitor is discharging. I do that in the ISR. Only takes a few > > microseconds. > I meant the 18.2 timer. I was under the impression that it was an > interrupt. How does that work when you're in PMode? I've used that timer > before (keyboard timer, isn't it?) - but only in real mode. The interrupt still happens and you go stay in protected mode. When you chain to the old handler, it'll drop to real mode to handle the interrupt and jump back into protected mode when finished. But all you have to do is chain the interrupt. It's just a couple of calls. > The only place I've ever programmed support for joysticks was when I used > DirectInput. So that was pretty easy. :) Yup. DirectInput generecizes things nicely. -->Neil ------------------------------------------------------------------------------- Neil Bradley Seti@Home Hall of Shame on a 80386DX16, Intel 80387 Synthcom Systems, Inc. 32MB RAM, Win 95 Status: 48.425% complete ICQ # 29402898 CPU Time: 1721 Hours 14 minutes 53.4 sec --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 20 23:52:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA07719 for dynarec-outgoing; Mon, 20 Mar 2000 23:52:59 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D729B9.3380EA7D@eurocopter.de> Date: Tue, 21 Mar 2000 08:50:17 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Input controllers References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > The interrupt still happens and you go stay in protected mode. When you > chain to the old handler, it'll drop to real mode to handle the interrupt > and jump back into protected mode when finished. > > But all you have to do is chain the interrupt. It's just a couple of > calls. That's what I thought. That's what I meant earlier when I said about dropping back into real-mode. :) > > The only place I've ever programmed support for joysticks was when I used > > DirectInput. So that was pretty easy. :) > > Yup. DirectInput generecizes things nicely. It does. If only the *rest* of DirectX was so easy to handle! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 20 23:53:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA07728 for dynarec-outgoing; Mon, 20 Mar 2000 23:53:18 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D72958.2E4FADA3@eurocopter.de> Date: Tue, 21 Mar 2000 08:48:40 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: DYNAREC: OT: Compilation and recompilation Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, Whereas in other lists, "OT" would mean "Off Topic", this time it means "On Topic". ;) Anyway, I would like to get everyone to discuss so we can, for once and for all, come up with some definitive meanings to the following methods: - Static Compilation - Static Recompilation - Dynamic Compilation - Dynamic Recompilation Now, I will give you MY understanding of the following terms: ----- Static compilation: Static compilation is where you take the code from one CPU and convert it into code which is executable on your CPU. However, this is done *before* you start executing any of the converted/translated code. Static compilation should give a slow startup time (because it does all the translation before the emulation begins) but a faster execution side. Advantages: Speed Disadvantages: Because of the way it works, Static compilation is going to run very few ROMs without the author having to go into the ROM(s) and perform all the mapping work etc. Cannot handle self-modifying code. ----- Static recompilation: Static recompilation is the same as static compilation in that it does lots of work before the emulation starts, but will check for self-modifying code during the execution and will do more translation if required. Will have a slow startup time and can be slow during emulation too. Advantages: Fast. Handles self-modifying code. Disadvantages: Will still need the author to go into the ROMs to check for mapping (unless the recompilation part does this). ----- Dynamic compilation: Also known as JIT, dynamic compilation is performed during execution. It will translate code in blocks from one CPU to another and then execute that code. It gives a fast startup time, but a slower execution time that static. Advantages: Fairly fast. Doesn't require former knowledge of the ROMs before it can run. Disadvantages: Doesn't handle self-modifying code. ----- Dynamic recompilation: This uses the same method as dynamic compilation, but it can check for any modification in the code and compile that too. In this way, it can handle self-modifying code. It gives a fast startup time, but a slower execution time than dynamic compilation. Advantages: Fairly fast. Doesn't require former knowledge of the ROMs before it can run. Handles self-modifying code. Disadvantages: Not the fastest method. ----- Obviously, the speed thing is dependant on several factors. But in terms of techniques, that's how the speed should work. Dynamic compilation should be great for arcade machines where it should be rare for you to find self-modifying code. Dynamic recompilation should be great for computers or anywhere where you may find self-modifying code. I don't particularly like the static methods - I'd rather be able to give my CPU core some code to translate and let it deal with it - I don't want to go into the code to give my CPU core some more information before it can translate it. Comments? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 00:45:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA07903 for dynarec-outgoing; Tue, 21 Mar 2000 00:45:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D7366E.6648E91E@est.fib.upc.es> Date: Tue, 21 Mar 2000 09:44:30 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Input controllers References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Bradley wrote: > First and foremost, polling sucks. Having to look to see if something is > pressed or is being moved is outdated, old, and should be abolished to all > depths of hell forever. There is no need in today's world for polling - > especially those that have an interrupt or callback driven capability > (everything except joysticks which can be made to poll in an interrupted > fashion under DOS) There is someone really doing polling? This seems to me incredible. I have debugged many old PC games (last 80's and early 90's, so they are DOS games) and they all use interrupt handled controllers (mainly keyboard). I can't really figure to be polling to a mouse. If I think about it (I'm not still an expert about general emulation) I can see that many arcade machines and consoles uses polling for get controller input. The only interrupt they have seems to be vertical/horizontal blank interrupt (mapped on NMI). I don't know what happens with later machines like MegaDrive, SuperNes or PlayStation, do they use still polling for read from controllers?. Perhaps people is doing polling in his emulators because they see polling being used on machines they emulate. But in PC (and in Unix machines, whatever they were) polling for get controller input has no sense, they have an interrupt (or signal, callback, event ...) to handle it. I know that if one of my teachers see this on a Computer Structure class the guy who does this can be considered suspended (D-) :). If they program in C what they use getch? :o > > I classify controllers into 3 categories: > > * Binary - Any controller with a make/break contact. Joystick, fire > button, etc... > > * Analog - Any controller with a variable range of positions. This would > be an analog joystick, flight yoke, foot pedal, etc... > > * Ballistics - Any controller, such as a trackball, mouse, or anything > that works off of differences or rate of change. These seem OK. > > The input control code of Retrocade is divide up into x parts (from top > down): You are a really structured man, don't you ;). The word you like most seems to be 'layer'. Have you worked with ISO's OSI? I think this is OK don't misunderstand me, but perhaps not all layers have to be really implemented if you want speed. > > Hardware layer - Responds to any callbacks, events, or interrupts from any > input device. This includes the mouse, keyboard, joystick, or any other > controller. All OSs have the ability to generate interrupts or messages > when a controller is changed in some way. The only exception to the rule > is under DOS, joysticks must be polled. We can get around this problem by > polling the joystick inside the 18.2 tick/sec standard timer. This layer > fills out a controller structure (whether it's a Keyboard, Mouse, > Joystick, Microsoft Sidewinder, Gamepad Pro, etc...) as to what has > changed and passes it on to the generic controller specific layer. It > might be that a specific key has been pressed, a joystick position move, > or a ballistics/distance change with a mouse. Anything beyond the hardware > layer is platform independent. So if I have understood you, you have a data structure for store data readed for each type of controller (perhaps a C union). This structure is filled in the hardware layer and passed to the next layer. > > Generic controller specific layer - This takes a generic input structure > and deals with it in an appropriate fashion. This layer will convert the > specific into the generic (I.E. mouse movement becomes a ballistic), > checks to see if any changes have been made (in case the hardware layer is > braindead and doesn't check to see if the state is already set that way), > and scales (if necessary) the range of the physical device to the logical > device. For example, if the mouse has a ballistics range of -32 to +32 and > the game we're playing only has a -7/+7, we'd overflow too quickly. So it > scales it down (or up) depending upon the game being played. Same thing > with the joystick. If the game is expecting -256 to 0, and the hardware > layer hands it a range of 63 to -63, it reverses and rescales the input > range to the game's requirement being played. The keyboard routine > requires that the hardware layer hand a platform independent key pressing > translation. It also handles shifts, ctrls, and alted keys. Perhaps is my english but I don't understand this of 'a generic controller specific layer', is specific or generic for the controller? Do you make a conversion of the input to a generic representation or to a game specific representation? > > Game control layer - This routine takes the genericized input control > change and compares the input control type with what is currently assigned > to what controller. In Asteroids, there's a left/right/hyperspace/fire and > thrust button list - all listed as BINARY devices. You can map any > physical binary device to any logical binary device (in the game), or > multiple physical binary devices to the same logical binary device (I.E. > "fire"). If it finds an assignment from the incoming controller to the > game specific controller, it then calls down to the emulated control > layer. You cannot, however, assign a binary device to an analog control > device. You'll have to create something inside the emulated game itself to > handle it. I think in this layer you do the map from the host controller to the emulated controller. > > Emulated control layer - This layer is actually 3 separate routines - One > to handle binary device, one for ballistics, and one for analog control. > Which one is called depends upon the incoming controller type. This > routine will scan the list of controllers the game has (fire, hyperspace, > etc...) and figure out what needs to be done. It can be one of two things: > > * Modify an "emulated" memory location - somewhere in the emulated memory > map space. This allows you to place a controller "make" and "break" (for > binary controllers) at a specific emulated address. You get to define > what's a "make" and what's a "break" inside the platform extension itself. > > * Modify a physical memory location, such as a variable in the same manner > as listed above. This allows funky processing to be done on the controller > input itself (if necessary). > These is the more obvious part. You have to store somewhere the state of the emulated controller for the emulator code. You have to modify the memory location or IO port from the emulated core or/and modify an specific variable for this emulated controller. > > The nice thing about this approach is that things just happen out of band. > You have no idea that anything changed. And it only changes when you > actually do something with a controller. The emulated code will already be > polling for some of these addresses, and the interrupt or controller > thread will take care of changing the memory location appropriately. And > you have the flexibility of remapping controllers - sometimes multiple > controllers to a single function! The layer approach gives you flexibility and portability but I think most times something more direct can be faster and easier to implement. What makes this really good is that you aren't doing polling, your emulator core don't have to worry about controllers so controllers are handled separately. It seems really good, but if would be better if I understand it better ... More time to think about it so. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 01:09:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA07942 for dynarec-outgoing; Tue, 21 Mar 2000 01:09:26 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Mon, 20 Mar 2000 20:16:19 -0800 (PST) To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38D72958.2E4FADA3@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Tue, 21 Mar 2000, Neil Griffiths wrote: > - Static Compilation > - Static Recompilation > - Dynamic Compilation > - Dynamic Recompilation Your definitions are pretty much identical to mine... > Neil. John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Flatline Studios http://www.flatlinestudios.com Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 02:21:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA08358 for dynarec-outgoing; Tue, 21 Mar 2000 02:21:47 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D74C8B.EE19E2B2@eurocopter.de> Date: Tue, 21 Mar 2000 11:18:51 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Your definitions are pretty much identical to mine... Cool. Well, that's 2-0. Two of us agreeing and no-one disagreeing. Mind you, no-one else but you has replied! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 06:04:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA08796 for dynarec-outgoing; Tue, 21 Mar 2000 06:04:56 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003211408.PAA00684@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38D72958.2E4FADA3@eurocopter.de> from Neil Griffiths at "Mar 21, 2000 08:48:40 am" To: dynarec@synthcom.com Date: Tue, 21 Mar 2000 15:08:13 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > Whereas in other lists, "OT" would mean "Off Topic", this time it means "On > Topic". ;) > > Anyway, I would like to get everyone to discuss so we can, for once and for > all, come up with some definitive meanings to the following methods: > > - Static Compilation > - Static Recompilation > - Dynamic Compilation > - Dynamic Recompilation > > Now, I will give you MY understanding of the following terms: > > ----- > > Static compilation: > > Static compilation is where you take the code from one CPU and convert it > into code which is executable on your CPU. However, this is done *before* > you start executing any of the converted/translated code. Static > compilation should give a slow startup time (because it does all the > translation before the emulation begins) but a faster execution side. What you mean only one compilation (store the result in an executable or kind of file) or a new compilation each time you run a ROM? > > Advantages: Speed > Disadvantages: Because of the way it works, Static compilation is going to > run very few ROMs without the author having to go into the ROM(s) and > perform all the mapping work etc. Cannot handle self-modifying code. > I think disadvantages are: you have to compile (and perhaps store too) each ROM you want to execute and that it is really hard to make static compilation and I'm working with this now in my job so believe me, one main problem are indirect jumps. About indirect jumps: in my work we run the translator in a loop: translate, execute, find unresolved jumps and so on, but in emulation this is imposible because many code are not to be executed until the player has made something. It isn't good to quit the emulator while the user is playing and start a new compilation. > ----- > > Static recompilation: > > Static recompilation is the same as static compilation in that it does lots > of work before the emulation starts, but will check for self-modifying code > during the execution and will do more translation if required. Will have a > slow startup time and can be slow during emulation too. > A derivated form would be to make some work before emulation and then work as a dinamic compiler. For example you can translate in one shot all code until an indirect jump is found or a input is needed. You can also try to gather some informations as register usage for later static register assignament or to find basic blocks. > Advantages: Fast. Handles self-modifying code. > Disadvantages: Will still need the author to go into the ROMs to check for > mapping (unless the recompilation part does this). > Please, can you explain me a bit this about ROM mapping, I don't see what's the problem. > ----- > > Dynamic compilation: > > Also known as JIT, dynamic compilation is performed during execution. It > will translate code in blocks from one CPU to another and then execute that > code. It gives a fast startup time, but a slower execution time that > static. > Please don't use this Java terminology the JIT or Java Hot Spot are something different they mix an interpreter with a dynamic compiler and a profiling system. I think not so slow while executing you are going to use the same code all time so you make, usually, only a translation in the 'beginning' of the run. > Advantages: Fairly fast. Doesn't require former knowledge of the ROMs > before it can run. > Disadvantages: Doesn't handle self-modifying code. I agree. > > ----- > > Dynamic recompilation: > > This uses the same method as dynamic compilation, but it can check for any > modification in the code and compile that too. In this way, it can handle > self-modifying code. It gives a fast startup time, but a slower execution > time than dynamic compilation. > > Advantages: Fairly fast. Doesn't require former knowledge of the ROMs > before it can run. Handles self-modifying code. > Disadvantages: Not the fastest method. > I think dynamic recompilation and dynamic compilation are really the same technique. I would talk about dynamic compilation with test for self-modifying code or dinamic generated code. The difference in speed is that you have to check (an this will be the really time spending part) for code modifications and you have to retranslate. Handle self-modifying code can only be useful if the emulated machine don't use very often self-modifying code or is used only in a known moment or place (at startup, in some portion-small- from memory). If you have to test every time you write if you are writing code perhaps it's better to use an interpreter. > ----- > > Obviously, the speed thing is dependant on several factors. But in terms of > techniques, that's how the speed should work. > > Dynamic compilation should be great for arcade machines where it should be > rare for you to find self-modifying code. Dynamic recompilation should be > great for computers or anywhere where you may find self-modifying code. I > don't particularly like the static methods - I'd rather be able to give my > CPU core some code to translate and let it deal with it - I don't want to > go into the code to give my CPU core some more information before it can > translate it. > About static methods, the static recompilation approach I talk about (do some preparing work) I think could be really useful. Static compilation I think is useless for use with consoles, perhaps if you build a static compiler for one arcade machine and then you releases the executable ..., but this would be more illegal than usual emulation so it's better to don't think about this. > Comments? Yes I like most the 'translation' term than 'compilation' but doesn't matter ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 07:09:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA08953 for dynarec-outgoing; Tue, 21 Mar 2000 07:09:55 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D78FB5.84E742F8@eurocopter.de> Date: Tue, 21 Mar 2000 16:05:25 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <200003211408.PAA00684@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Static compilation is where you take the code from one CPU and convert it > > into code which is executable on your CPU. However, this is done *before* > > you start executing any of the converted/translated code. Static > > compilation should give a slow startup time (because it does all the > > translation before the emulation begins) but a faster execution side. > > What you mean only one compilation (store the result in an executable or kind of file) > or a new compilation each time you run a ROM? I wouldn't store it in an executable or file (although you could!), I'd store it in memory. So that way - yes, a new compilation would be required each time I run a ROM. > > Advantages: Speed > > Disadvantages: Because of the way it works, Static compilation is going to > > run very few ROMs without the author having to go into the ROM(s) and > > perform all the mapping work etc. Cannot handle self-modifying code. > > > I think disadvantages are: you have to compile (and perhaps store too) each ROM you want to > execute and that it is really hard to make static compilation Once compiled, the ROMs with code inside can be discarded. This problem happens with all types of compilation - or translation as you prefer to call it. ;) > and I'm working with this now in my job > so believe me, one main problem are indirect jumps. Yes, I know. That's what I mean by mapping work etc. :) > About indirect jumps: in my work we > run the translator in a loop: translate, execute, find unresolved jumps and so on, but in > emulation this is imposible because many code are not to be executed until the player has > made something. It isn't good to quit the emulator while the user is playing and start a > new compilation. Exactly - which is why static compilation is only good if the compiler/translator already knows what will need to be done. That's why compatibility is poor with static compilation. > A derivated form would be to make some work before emulation and then work as a dinamic > compiler. For example you can translate in one shot all code until an indirect jump is > found or a input is needed. You can also try to gather some informations as register > usage for later static register assignament or to find basic blocks. Yes, of course. > > Advantages: Fast. Handles self-modifying code. > > Disadvantages: Will still need the author to go into the ROMs to check for > > mapping (unless the recompilation part does this). > > Please, can you explain me a bit this about ROM mapping, I don't see what's the problem. It's more memory handling, really. Nothing to do with the NES (don't get confused!). It's also to do with indirect jumps (how do you handle something like "jmp z0"?). Just stuff which you'd need to know previously when using static compilation. AFAIK there is no term for it, so I created "mapping". Maybe not correct, but it sounds technical. :) If you go through the code and know that z0 would contain "&BB18" then you can include that in the compiler/recompiler. > > Dynamic compilation: > > > > Also known as JIT, dynamic compilation is performed during execution. It > > will translate code in blocks from one CPU to another and then execute that > > code. It gives a fast startup time, but a slower execution time that > > static. > > > Please don't use this Java terminology the JIT or Java Hot Spot are something different > they mix an interpreter with a dynamic compiler and a profiling system. There are several JIT compilers and most of them use dynamic compilation. They don't profile or interepret. Maybe the older stuff does - or maybe HotSpot does (I don't know!), but - whether you like it or not - the latest technologies walk hand-in-hand. > I think not so slow while executing you are going to use the same code all time so you > make, usually, only a translation in the 'beginning' of the run. I didn't say it would be slow - just slower than static compilation. In terms of speed, I imagine them to be 1) Static compilation 2) Dynamic compilation 3) Static recompilation 4) Dynamic recompilation 5) Interpretation > I think dynamic recompilation and dynamic compilation are really the same technique. > I would talk about dynamic compilation with test for self-modifying code or dinamic > generated code. The difference in speed is that you have to check (an this will be > the really time spending part) for code modifications and you have to retranslate. Yes. But that's what I said (they're the same except that you check for code which has changed). :) > Handle self-modifying code can only be useful if the emulated machine don't use very > often self-modifying code or is used only in a known moment or place (at startup, in > some portion-small- from memory). If you have to test every time you write if you > are writing code perhaps it's better to use an interpreter. Depends how good your recompiler/translator is. :) > About static methods, the static recompilation approach I talk about (do some preparing > work) I think could be really useful. Static compilation I think is useless for use > with consoles, perhaps if you build a static compiler for one arcade machine and then you > releases the executable ..., but this would be more illegal than usual emulation so it's > better to don't think about this. I don't know that it would be more illegal. It could even be more legal - because you've translated it, it's not their code anymore - even though it does the same (think of all those Pacman and Tetris clones). That's just a guess, mind. :) However, you've still got to emulate things like sound, graphics and input, so creating a new executable could be quite difficult. But not impossible. > > Comments? > > Yes I like most the 'translation' term than 'compilation' but doesn't matter ;) I noticed, but then it makes it more difficult when I give the list of differences as: static translation static translation dynamic translation dynamic translation ;) I assume that you would replace recompilation with translation. You can't replace both - that would make things even more confusing than they are now! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 07:58:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA09060 for dynarec-outgoing; Tue, 21 Mar 2000 07:58:43 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003211601.RAA00785@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38D78FB5.84E742F8@eurocopter.de> from Neil Griffiths at "Mar 21, 2000 04:05:25 pm" To: dynarec@synthcom.com Date: Tue, 21 Mar 2000 17:01:56 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Please, can you explain me a bit this about ROM mapping, I don't see what's the problem. > > It's more memory handling, really. Nothing to do with the NES (don't get > confused!). It's also to do with indirect jumps (how do you handle > something like "jmp z0"?). Just stuff which you'd need to know previously > when using static compilation. AFAIK there is no term for it, so I created > "mapping". Maybe not correct, but it sounds technical. :) > > If you go through the code and know that z0 would contain "&BB18" then you > can include that in the compiler/recompiler. > Ahh... it was this. Your term confused me so better we find another :), mapping is already used for describe the memory map of a machine (what is ROM, what is RAM, what IO). Perhaps calling it something like 'memory indirection problem' or 'unresolved jumps problem'. > > Yes I like most the 'translation' term than 'compilation' but doesn't matter ;) > > I noticed, but then it makes it more difficult when I give the list of > differences as: > > static translation > static translation > dynamic translation > dynamic translation > > ;) > > I assume that you would replace recompilation with translation. You can't > replace both - that would make things even more confusing than they are > now! :) > Yes, but it's your classification whose is confusing :) Perhaps would be something like that: static translation (static compilation) dynamic translation (dynamic compilation) dynamic translation with static prework (static recompilation) dynamic translation with self-modifying code handling (dynamic recompilation) In fact I'm beginning to think that talk about compilation/recompilation is something confusing and artificial. You have to agree with me that 'static recompilation' (the term, not the idea) born in your discussion some weeks ago in mul8 when trying to summarize terminology about so called 'dynamic recompilation'. I think there are only three main ways of building an emulator: an interpreter, static compilation/translation and dynamic compilation/translation. All others are combinations or modifications or add-ons of this three basic techniques. It's only an my opinion, perhaps I'm wrong :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 08:19:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA09119 for dynarec-outgoing; Tue, 21 Mar 2000 08:19:34 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D7A0AA.998633A2@eurocopter.de> Date: Tue, 21 Mar 2000 17:17:46 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <200003211601.RAA00785@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > If you go through the code and know that z0 would contain "&BB18" then you > > can include that in the compiler/recompiler. > > > Ahh... it was this. Your term confused me so better we find another :), mapping is already > used for describe the memory map of a machine (what is ROM, what is RAM, what IO). Perhaps > calling it something like 'memory indirection problem' or 'unresolved jumps problem'. But you're still mapping to memory... but yes, we'd best find another. "Memory And Register Problems" sounds good, especially because that becomes "MARP" which amuses me. Sorry. :) > > I assume that you would replace recompilation with translation. You can't > > replace both - that would make things even more confusing than they are > > now! :) > > Yes, but it's your classification whose is confusing :) You think so? ;p > Perhaps would be something like that: > > static translation (static compilation) > dynamic translation (dynamic compilation) > dynamic translation with static prework (static recompilation) > dynamic translation with self-modifying code handling (dynamic recompilation) That sounds okay to me. It's just long to type! > In fact I'm beginning to think that talk about compilation/recompilation is something > confusing and artificial. You have to agree with me that 'static recompilation' (the term, > not the idea) born in your discussion some weeks ago in mul8 when trying to summarize > terminology about so called 'dynamic recompilation'. Yes, I agree. Mind you, I'm now set in my way of thinking now after that discussion (it was moved off-list). I think that I'm now actually correct in my terms - a lot of research was done! :o > I think there are only three main ways of building an emulator: an interpreter, static > compilation/translation and dynamic compilation/translation. All others are combinations or > modifications or add-ons of this three basic techniques. What about extra hardware to help the emulation? ;) > It's only an my opinion, perhaps I'm wrong :) In software-only solutions, I think you're probably correct. Unless someone is doing something radically different that we haven't thought of yet. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 08:36:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA09187 for dynarec-outgoing; Tue, 21 Mar 2000 08:36:27 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003211639.RAA24242@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38D7A0AA.998633A2@eurocopter.de> from Neil Griffiths at "Mar 21, 2000 05:17:46 pm" To: dynarec@synthcom.com Date: Tue, 21 Mar 2000 17:39:42 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Ahh... it was this. Your term confused me so better we find another :), mapping is already > > used for describe the memory map of a machine (what is ROM, what is RAM, what IO). Perhaps > > calling it something like 'memory indirection problem' or 'unresolved jumps problem'. > > But you're still mapping to memory... but yes, we'd best find another. > "Memory And Register Problems" sounds good, especially because that becomes > "MARP" which amuses me. Sorry. :) > Means something MARP? > > > I assume that you would replace recompilation with translation. You can't > > > replace both - that would make things even more confusing than they are > > > now! :) > > > > Yes, but it's your classification whose is confusing :) > > You think so? ;p > OK, not so confusing, only a little confusing ;) > > Perhaps would be something like that: > > > > static translation (static compilation) > > dynamic translation (dynamic compilation) > > dynamic translation with static prework (static recompilation) > > dynamic translation with self-modifying code handling (dynamic recompilation) > > That sounds okay to me. It's just long to type! > Umm, perhaps could be shorted as SS,DT,DTS,DTSMC ;) > > In fact I'm beginning to think that talk about compilation/recompilation is something > > confusing and artificial. You have to agree with me that 'static recompilation' (the term, > > not the idea) born in your discussion some weeks ago in mul8 when trying to summarize > > terminology about so called 'dynamic recompilation'. > > Yes, I agree. Mind you, I'm now set in my way of thinking now after that > discussion (it was moved off-list). I think that I'm now actually correct > in my terms - a lot of research was done! :o > For me is OK, perhaps other people thoughts would be interesting. What you say exlurkers and lurkers ;) (Oh..., I don't know what is the translation for lurker, perhaps I'm offending someone ...) > > I think there are only three main ways of building an emulator: an interpreter, static > > compilation/translation and dynamic compilation/translation. All others are combinations or > > modifications or add-ons of this three basic techniques. > > What about extra hardware to help the emulation? ;) Interesting but I think not so practical being emulators in the grey area (but something is changing now with Bleem and VGS -by the way a really good emulator, only a bit slow and with problems with non-american games). Another way will be recompile (true compilation) of the original sources of games, but this we'll be really hard, anyone wants to stole the sources from companys? ;) > > > It's only an my opinion, perhaps I'm wrong :) > > In software-only solutions, I think you're probably correct. Unless someone > is doing something radically different that we haven't thought of yet. :) > Umm ..., perhaps NB, he always have really impresive new ideas :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 11:38:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA10076 for dynarec-outgoing; Tue, 21 Mar 2000 11:38:44 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Tue, 21 Mar 2000 20:09:42 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Static compilation: >Advantages: Speed You get pure speed during runtime but with some exceptional large code you'd have a long pause between the launch and the actual start of the program. >Disadvantages: Because of the way it works, Static compilation is going to >run very few ROMs without the author having to go into the ROM(s) and >perform all the mapping work etc. Cannot handle self-modifying code. In some severe cases you need a so-called "fallback" (this is an official term!) mechanism which interprets some parts of the code which cannot be translated. >Static recompilation: >Static recompilation is the same as static compilation in that it does lots >of work before the emulation starts, but will check for self-modifying code >during the execution and will do more translation if required. Will have a >slow startup time and can be slow during emulation too. >Advantages: Fast. Handles self-modifying code. >Disadvantages: Will still need the author to go into the ROMs to check for >mapping (unless the recompilation part does this). In don't think that static recompilation makes much sense since the big advatage of static code is lost then. One other possibility (but nothing to do with self-modifying code) would be to have a static compiler which also generates dynamic code. What I mean is that you mainly have a static compiler which is capable of generating meta-code if necessary. So when you hit a portion of code that cannot be compiled without runtime context you produce code which generates the code during runtime with the information of the runtime context. This method can also be used to optimise certain routines as they might be much more optimal when a few runtime constants are known. This would be static compilation with dynamic code generation. >Dynamic compilation: >Advantages: Fairly fast. Doesn't require former knowledge of the ROMs >before it can run. >Disadvantages: Doesn't handle self-modifying code. >Dynamic recompilation: >Advantages: Fairly fast. Doesn't require former knowledge of the ROMs >before it can run. Handles self-modifying code. >Disadvantages: Not the fastest method. Well, these two are absolutely identical apart from the self-modifying code issue that you can think of the recompiler as an extended compiler or the compiler being a simplified recompiler. >Dynamic compilation should be great for arcade machines where it should be >rare for you to find self-modifying code. Dynamic recompilation should be >great for computers or anywhere where you may find self-modifying code. You could also speed up the recompiler for arcade machines in that ROM code doesn't have to be tested for modifications and you'd still be able to cope with modified code in the RAM. >I >don't particularly like the static methods - I'd rather be able to give my >CPU core some code to translate and let it deal with it - I don't want to >go into the code to give my CPU core some more information before it can >translate it. I think the static method is far too complicated and error prone to be of much use. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 11:38:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA10085 for dynarec-outgoing; Tue, 21 Mar 2000 11:38:57 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Tue, 21 Mar 2000 20:19:25 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Please don't use this Java terminology the JIT or Java Hot Spot are something different >they mix an interpreter with a dynamic compiler and a profiling system. JIT is short for just-in-time and it would be just the same to talk of on-the-fly or on-demand translation. BTW, Java doesn't use the interpreter when the JIT compiler is activated, only Sun's HotSpot technology combines both. >About static methods, the static recompilation approach I talk about (do some preparing >work) I think could be really useful. Static compilation I think is useless for use >with consoles, perhaps if you build a static compiler for one arcade machine and then you >releases the executable ..., but this would be more illegal than usual emulation so it's >better to don't think about this. Well, that "one executable" issue is somewhat bad (apart from legal problems) because you also had to include the whole ROM since you cannot be totally sure what code and data is. Even if you knew that you'd have to have the data at the same locations and only could zero out the code and store the ROM compressed. But you still need a relatively large runtime system (maybe even a fallback interpreter) and although that might be ok for one ROM it's much redundancy as soon as you have several ROMs that ran on the same system. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 11:39:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA10093 for dynarec-outgoing; Tue, 21 Mar 2000 11:39:13 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Tue, 21 Mar 2000 20:30:29 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> so believe me, one main problem are indirect jumps. >Yes, I know. That's what I mean by mapping work etc. :) Ah, I thought you meant RAM/ROM and data/code mappings... >It's more memory handling, really. Nothing to do with the NES (don't get >confused!). It's also to do with indirect jumps (how do you handle >something like "jmp z0"?). Just stuff which you'd need to know previously >when using static compilation. AFAIK there is no term for it, so I created >"mapping". Maybe not correct, but it sounds technical. :) Maybe we have to find new terms to reduce misunderstandings, but that also includes "dynamic recompilation" ;-) >If you go through the code and know that z0 would contain "&BB18" then you >can include that in the compiler/recompiler. Or you let your generated code generate dynamic code for that case during runtime. >There are several JIT compilers and most of them use dynamic compilation. >They don't profile or interepret. Maybe the older stuff does - or maybe >HotSpot does (I don't know!), but - whether you like it or not - the latest >technologies walk hand-in-hand. HotSpot uses the interpreter in the beginning to gather some profiling information to compile only the "hot spots". >I don't know that it would be more illegal. It would because you had to distribute the ROM with the emulator! >It could even be more legal - >because you've translated it, it's not their code anymore - even though it >does the same (think of all those Pacman and Tetris clones). That's just a >guess, mind. :) You don't use the code but you still use the data, which is copyrighted as well. You couldn't even do a new Sonic game without getting legal problems with Sega even when you're not using their original data! >However, you've still got to emulate things like sound, graphics and input, >so creating a new executable could be quite difficult. But not impossible. Yeah, that's what I meant when I said that you need to include a fairly large runtime for each ROM, which you only have once in an emulator. You might have the runtime system in a dynamic library but you'd still need much interface code in the compiled ROM. >static translation >static translation >dynamic translation >dynamic translation Shouldn't that be: static translation static retranslation dynamic translation dynamic retranslation ??? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 11:39:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA10102 for dynarec-outgoing; Tue, 21 Mar 2000 11:39:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Tue, 21 Mar 2000 20:34:32 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> I think there are only three main ways of building an emulator: an interpreter, static >> compilation/translation and dynamic compilation/translation. All others are combinations or >> modifications or add-ons of this three basic techniques. >What about extra hardware to help the emulation? ;) Indeed. I have a PC card with an AMD processor for my Acorn, so the software only has to emulate graphics, sound, peripherals, interrupts, etc but not the CPU! >In software-only solutions, I think you're probably correct. Unless someone >is doing something radically different that we haven't thought of yet. :) I think I already mentioned decode caching... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 14:10:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA10864 for dynarec-outgoing; Tue, 21 Mar 2000 14:10:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <000201bf9381$7ac5a260$0a909090@okay> From: "Neil Griffiths" To: References: <200003211639.RAA24242@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Tue, 21 Mar 2000 22:51:29 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > "Memory And Register Problems" sounds good, especially because that becomes > > "MARP" which amuses me. Sorry. :) > > Means something MARP? I don't think so. It does now, anyway. :) > > > Yes, but it's your classification whose is confusing :) > > > > You think so? ;p > > OK, not so confusing, only a little confusing ;) That was my plan all along, to confuse people. ;) > > That sounds okay to me. It's just long to type! > > > Umm, perhaps could be shorted as SS,DT,DTS,DTSMC ;) Those sound like sexually transmitted diseases. :)) Okay, I'm beginning to think I'm warped and twisted... > > Yes, I agree. Mind you, I'm now set in my way of thinking now after that > > discussion (it was moved off-list). I think that I'm now actually correct > > in my terms - a lot of research was done! :o > > > For me is OK, perhaps other people thoughts would be interesting. I'd send you what I recieved, but OE is such a nice program, it decided to corrupt my INBOX.DBX file and so now I've lost all of my mails from my Inbox. I'm very impressed by that. :-/ > What you say exlurkers and lurkers ;) (Oh..., I don't know what is the translation for > lurker, perhaps I'm offending someone ...) A lurker is someone who hides in the shadows (so someone who is hiding is lurking). So unless someones name is "Mr. Lurk" then I don't think you'll offend anyone. Let's hope so, anyway! :) > > What about extra hardware to help the emulation? ;) > > Interesting but I think not so practical being emulators in the grey area (but something is > changing now with Bleem and VGS -by the way a really good emulator, only a bit slow and with > problems with non-american games). Another way will be recompile (true compilation) of the > original sources of games, but this we'll be really hard, anyone wants to stole the > sources from companys? ;) In fact, we've had extra hardware to help emulation for years, it's not just interesting. As Mike mentioned, there are PC Cards available for Acorn machines - there are 68K cards for PC owners - all sorts of things. :) And if you provide me with a black suit and mask and some equpment (including rope), I'll get you the source from the companies. ;)) > > In software-only solutions, I think you're probably correct. Unless someone > > is doing something radically different that we haven't thought of yet. :) > > Umm ..., perhaps NB, he always have really impresive new ideas :) Is *that* what he tells you? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 14:10:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA10874 for dynarec-outgoing; Tue, 21 Mar 2000 14:10:25 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <000401bf9381$7c7a0920$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Tue, 21 Mar 2000 22:55:42 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Static compilation: > >Advantages: Speed > > You get pure speed during runtime but with some exceptional large code > you'd have a long pause between the launch and the actual start of the > program. That's what I thought originally, but then I saw Corn. Does this *really* use static compilation? If it does, it's really fast! > In don't think that static recompilation makes much sense since the big > advatage of static code is lost then. Agreed. Static recompilation takes the worst of both worlds. > >Advantages: Fairly fast. Doesn't require former knowledge of the ROMs > >before it can run. Handles self-modifying code. > >Disadvantages: Not the fastest method. > > Well, these two are absolutely identical apart from the self-modifying > code issue that you can think of the recompiler as an extended compiler > or the compiler being a simplified recompiler. Yes, but if you're only going to compile once, you can optimise better. Maybe. > >Dynamic compilation should be great for arcade machines where it > should be > >rare for you to find self-modifying code. Dynamic recompilation should > be > >great for computers or anywhere where you may find self-modifying > code. > > You could also speed up the recompiler for arcade machines in that ROM > code doesn't have to be tested for modifications and you'd still be > able to cope with modified code in the RAM. Yes, that would be fine. > I think the static method is far too complicated and error prone to be > of much use. Agreed. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 14:10:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA10881 for dynarec-outgoing; Tue, 21 Mar 2000 14:10:26 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <000301bf9381$7bc16780$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Tue, 21 Mar 2000 22:53:22 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Please don't use this Java terminology the JIT or Java Hot Spot are > something different > >they mix an interpreter with a dynamic compiler and a profiling > system. > > JIT is short for just-in-time and it would be just the same to talk of > on-the-fly or on-demand translation. BTW, Java doesn't use the > interpreter when the JIT compiler is activated, only Sun's HotSpot > technology combines both. Yep. As I've probably mentioned before, I did quite a bit of research on Java last year. I'm still not entirely sure why I did it, but there you go. You can't explain everything. One of those things, I guess. :) > >About static methods, the static recompilation approach I talk about > (do some preparing > >work) I think could be really useful. Static compilation I think is > useless for use > >with consoles, perhaps if you build a static compiler for one arcade > machine and then you > >releases the executable ..., but this would be more illegal than usual > emulation so it's > >better to don't think about this. > > Well, that "one executable" issue is somewhat bad (apart from legal > problems) because you also had to include the whole ROM since you > cannot be totally sure what code and data is. Even if you knew that > you'd have to have the data at the same locations and only could zero > out the code and store the ROM compressed. But you still need a > relatively large runtime system (maybe even a fallback interpreter) and > although that might be ok for one ROM it's much redundancy as soon as > you have several ROMs that ran on the same system. If you compile into an executable, if you take the sounds and graphics too, you can link them into the executable too - getting rid of the need for the ROMs. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 14:10:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA10889 for dynarec-outgoing; Tue, 21 Mar 2000 14:10:29 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <000501bf9381$7d543c80$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Tue, 21 Mar 2000 22:57:53 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Yes, I know. That's what I mean by mapping work etc. :) > > Ah, I thought you meant RAM/ROM and data/code mappings... Apparently so did Victor. My fault. :) > Maybe we have to find new terms to reduce misunderstandings, but that > also includes "dynamic recompilation" ;-) How about "That technique that people talk about everywhere without knowing what it actually is"? :) > >There are several JIT compilers and most of them use dynamic > compilation. > >They don't profile or interepret. Maybe the older stuff does - or > maybe > >HotSpot does (I don't know!), but - whether you like it or not - the > latest > >technologies walk hand-in-hand. > > HotSpot uses the interpreter in the beginning to gather some profiling > information to compile only the "hot spots". Wasn't sure. Never read up on HotSpot. > >I don't know that it would be more illegal. > > It would because you had to distribute the ROM with the emulator! Not at all (see previous e-mail). > You don't use the code but you still use the data, which is copyrighted > as well. You couldn't even do a new Sonic game without getting legal > problems with Sega even when you're not using their original data! But that's because they've copyrighted that character. > >static translation > >static translation > >dynamic translation > >dynamic translation > > Shouldn't that be: > > static translation > static retranslation > dynamic translation > dynamic retranslation No, I was teasing Victor when I wrote it. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 15:02:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA11208 for dynarec-outgoing; Tue, 21 Mar 2000 15:02:37 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Tue, 21 Mar 2000 23:57:05 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Apparently so did Victor. My fault. :) Tua culpa! >How about "That technique that people talk about everywhere without knowing >what it actually is"? :) Then could as well use the following name: "Dymble (the technique formerly known as dynamic recompilation)" ;-) >No, I was teasing Victor when I wrote it. :) You bastard! ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 15:02:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA11218 for dynarec-outgoing; Tue, 21 Mar 2000 15:02:38 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 00:03:38 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >That's what I thought originally, but then I saw Corn. Does this * really* >use static compilation? If it does, it's really fast! Yeah, I couldn't believe it as well. But since it now uses dynamic recompilation because the static one wasn't compatible enough, I guess it really used static recompilation. >Agreed. Static recompilation takes the worst of both worlds. Eloquently put ;-) >Yes, but if you're only going to compile once, you can optimise better. >Maybe. Mayhaps ;-) >> You could also speed up the recompiler for arcade machines in that ROM >> code doesn't have to be tested for modifications and you'd still be >> able to cope with modified code in the RAM. >Yes, that would be fine. If you know where the ROM is then you should exploit the information by not checking it for code changes of course, which should speed up arcade emulation even if you use dynamic recompilation. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 15:02:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA11222 for dynarec-outgoing; Tue, 21 Mar 2000 15:02:39 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 00:00:14 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >If you compile into an executable, if you take the sounds and graphics too, >you can link them into the executable too - getting rid of the need for the >ROMs. But the question is if the linked ROM is more legal... I know of at least one case where it made a difference. Although it's illegal to distribute the BBC Micro ROMs the official emulator 65Host, which had the ROMs linked, was freeware and you just need a small tool to rip the ROMs from it ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 23:26:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA13174 for dynarec-outgoing; Tue, 21 Mar 2000 23:26:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D8759D.D94F8C41@est.fib.upc.es> Date: Wed, 22 Mar 2000 08:26:21 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > In don't think that static recompilation makes much sense since the big > advatage of static code is lost then. One other possibility (but > nothing to do with self-modifying code) would be to have a static > compiler which also generates dynamic code. What I mean is that you > mainly have a static compiler which is capable of generating meta-code > if necessary. So when you hit a portion of code that cannot be compiled > without runtime context you produce code which generates the code > during runtime with the information of the runtime context. This method > can also be used to optimise certain routines as they might be much > more optimal when a few runtime constants are known. > This would be static compilation with dynamic code generation. > Ufff...., dynamic code generation (a dynamic dynamic compiler may be) would be something really hard to implement ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 23:31:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA13194 for dynarec-outgoing; Tue, 21 Mar 2000 23:31:04 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D8769F.64496D5A@est.fib.upc.es> Date: Wed, 22 Mar 2000 08:30:39 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > >> so believe me, one main problem are indirect jumps. > >Yes, I know. That's what I mean by mapping work etc. :) > > Ah, I thought you meant RAM/ROM and data/code mappings... > NG you are confusing us ;) > > >It's more memory handling, really. Nothing to do with the NES (don't > get > >confused!). It's also to do with indirect jumps (how do you handle > >something like "jmp z0"?). Just stuff which you'd need to know > previously > >when using static compilation. AFAIK there is no term for it, so I > created > >"mapping". Maybe not correct, but it sounds technical. :) > > Maybe we have to find new terms to reduce misunderstandings, but that > also includes "dynamic recompilation" ;-) > Yes this will be something interesting. I think build some 'standard' terms is necessary or will be hard to explain what is 'dynamic recompilation' to other people, too misunderstandings. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 23:34:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA13217 for dynarec-outgoing; Tue, 21 Mar 2000 23:34:01 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D87752.1A7A572F@est.fib.upc.es> Date: Wed, 22 Mar 2000 08:33:38 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Indeed. I have a PC card with an AMD processor for my Acorn, so the > software only has to emulate graphics, sound, peripherals, interrupts, > etc but not the CPU! > Oh, I don't know much about others computers others than PCs :( > > >In software-only solutions, I think you're probably correct. Unless > someone > >is doing something radically different that we haven't thought of yet. > :) > > I think I already mentioned decode caching... > Try to explain a little what is decode caching. I think I know it as a threaded interpreter but I'm not sure if it's the same technique. This would be to have a map of the memory which each entry is a pointer to a routine that handles the emulated instruction in this memory address. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 23:37:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA13229 for dynarec-outgoing; Tue, 21 Mar 2000 23:37:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D8781C.A49653F4@est.fib.upc.es> Date: Wed, 22 Mar 2000 08:37:00 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <000501bf9381$7d543c80$0a909090@okay> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > How about "That technique that people talk about everywhere without knowing > what it actually is"? :) > Ohh, it's a good idea :)) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 23:37:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA13238 for dynarec-outgoing; Tue, 21 Mar 2000 23:37:55 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D8777A.FB0B8BAA@eurocopter.de> Date: Wed, 22 Mar 2000 08:34:18 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Apparently so did Victor. My fault. :) > > Tua culpa! Et al. :) > >How about "That technique that people talk about everywhere without > knowing > >what it actually is"? :) > > Then could as well use the following name: > "Dymble (the technique formerly known as dynamic recompilation)" > ;-) I'd like to refer to it as "Splish". Makes no sense, but it's a great sounding word. :) > >No, I was teasing Victor when I wrote it. :) > > You bastard! ;-) What? I didn't kill Kenny! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 23:39:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA13255 for dynarec-outgoing; Tue, 21 Mar 2000 23:39:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D8781A.BBC3A214@eurocopter.de> Date: Wed, 22 Mar 2000 08:36:58 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >That's what I thought originally, but then I saw Corn. Does this * > really* > >use static compilation? If it does, it's really fast! > > Yeah, I couldn't believe it as well. But since it now uses dynamic > recompilation because the static one wasn't compatible enough, I guess > it really used static recompilation. The compatibility went up?! I didn't notice that! :o > >Agreed. Static recompilation takes the worst of both worlds. > > Eloquently put ;-) Why, thank you! ;) > >Yes, but if you're only going to compile once, you can optimise > better. > >Maybe. > > Mayhaps ;-) Mind you, in a dynamic recompiler you can keep count of how many times a certain routine has been run and optimise as necessary. Someone did say that this technique had a name, but I don't know what it is. Therefore, I will now name this technique "Splosh". Can you tell that I didn't get much sleep last night? :)) > >Yes, that would be fine. > > If you know where the ROM is then you should exploit the information by > not checking it for code changes of course, which should speed up > arcade emulation even if you use dynamic recompilation. Yes, this is true. Something that I don't think has been attempted yet. Well done! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 23:41:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA13267 for dynarec-outgoing; Tue, 21 Mar 2000 23:41:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D8789D.1472F18@eurocopter.de> Date: Wed, 22 Mar 2000 08:39:09 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <38D8759D.D94F8C41@est.fib.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Ufff...., dynamic code generation (a dynamic dynamic compiler may be) would be > something really hard to implement ;) Agreed. And I don't think it would be worth it - but that's because I don't like the static technique. I don't really see the need for it at the moment... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 23:42:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA13280 for dynarec-outgoing; Tue, 21 Mar 2000 23:42:50 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D8790F.3427040D@eurocopter.de> Date: Wed, 22 Mar 2000 08:41:03 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <38D8769F.64496D5A@est.fib.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Ah, I thought you meant RAM/ROM and data/code mappings... > > NG you are confusing us ;) Haha! My plan worked in all its glory! ;)) > > Maybe we have to find new terms to reduce misunderstandings, but that > > also includes "dynamic recompilation" ;-) > > Yes this will be something interesting. I think build some 'standard' terms is > necessary or will be hard to explain what is 'dynamic recompilation' to other > people, too misunderstandings. Okay, I'll write a short document up this weekend explaining the terminology. Hopefully it'll be definitive. :) Alternatively, I could just confuse everybody. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 23:47:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA13300 for dynarec-outgoing; Tue, 21 Mar 2000 23:47:25 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D8797B.8BC4EE21@eurocopter.de> Date: Wed, 22 Mar 2000 08:42:51 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <38D87752.1A7A572F@est.fib.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Indeed. I have a PC card with an AMD processor for my Acorn, so the > > software only has to emulate graphics, sound, peripherals, interrupts, > > etc but not the CPU! > > Oh, I don't know much about others computers others than PCs :( You have no excuse! ;) Actually, there's an emulator called Gem* (can't remember the rest, but it's probably Gemulator) which is either an Atari ST or Amiga emulator which uses hardware. That's for the PC. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 23:48:00 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA13309 for dynarec-outgoing; Tue, 21 Mar 2000 23:48:00 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D879F4.424FE0AD@eurocopter.de> Date: Wed, 22 Mar 2000 08:44:52 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <000501bf9381$7d543c80$0a909090@okay> <38D8781C.A49653F4@est.fib.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > How about "That technique that people talk about everywhere without knowing > > what it actually is"? :) > > Ohh, it's a good idea :)) Thanks. ;) I mean, how can anyone forget the acronym "TTTPTAEWKWIAI". You just can't forget that, and think how easy it is to pronounce! Hmm. That acronym looks remarkably similar to German, actually... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 21 23:56:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA13324 for dynarec-outgoing; Tue, 21 Mar 2000 23:56:28 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D87C8E.C50824EF@est.fib.upc.es> Date: Wed, 22 Mar 2000 08:55:58 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <000501bf9381$7d543c80$0a909090@okay> <38D8781C.A49653F4@est.fib.upc.es> <38D879F4.424FE0AD@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Griffiths wrote: > Hi, > > > > How about "That technique that people talk about everywhere without knowing > > > what it actually is"? :) > > > > Ohh, it's a good idea :)) > > Thanks. ;) > > I mean, how can anyone forget the acronym "TTTPTAEWKWIAI". You just can't > forget that, and think how easy it is to pronounce! > It's really easy to pronounce! ;) > > Hmm. That acronym looks remarkably similar to German, actually... ;) > Perhaps has too vowels to be german ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 00:19:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA13387 for dynarec-outgoing; Wed, 22 Mar 2000 00:19:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D88132.F6FD334@eurocopter.de> Date: Wed, 22 Mar 2000 09:15:46 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <000501bf9381$7d543c80$0a909090@okay> <38D8781C.A49653F4@est.fib.upc.es> <38D879F4.424FE0AD@eurocopter.de> <38D87C8E.C50824EF@est.fib.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Thanks. ;) > > > > I mean, how can anyone forget the acronym "TTTPTAEWKWIAI". You just can't > > forget that, and think how easy it is to pronounce! > > It's really easy to pronounce! ;) Yeah! ;) > > Hmm. That acronym looks remarkably similar to German, actually... ;) > > Perhaps has too vowels to be german ;) Yeah. And it doesn't finish with a hard sound either. No spit was involved to pronounce the word. :)) BTW, that's last time I tell someone I speak French. On the Mul8 mailing list a guy was asking some questions. I could see he was from Vietnam - and knowing that Vietnam used to be French, told him that if he spoke it, he was welcome to ask me some questions. I mean, it was from an English document, so if all else failed, I could guess. But no, I've just got a whole letter from him - and he *definitely* has better French than me! :)) Never mind, it's just taking me longer than it would normally to translate it! AAARGH! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 00:31:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA13425 for dynarec-outgoing; Wed, 22 Mar 2000 00:31:43 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D884C3.F170B357@est.fib.upc.es> Date: Wed, 22 Mar 2000 09:30:59 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <000501bf9381$7d543c80$0a909090@okay> <38D8781C.A49653F4@est.fib.upc.es> <38D879F4.424FE0AD@eurocopter.de> <38D87C8E.C50824EF@est.fib.upc.es> <38D88132.F6FD334@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Griffiths wrote: > BTW, that's last time I tell someone I speak French. On the Mul8 mailing > list a guy was asking some questions. I could see he was from Vietnam - and > knowing that Vietnam used to be French, told him that if he spoke it, he > was welcome to ask me some questions. I mean, it was from an English > document, so if all else failed, I could guess. But no, I've just got a > whole letter from him - and he *definitely* has better French than me! :)) > > Never mind, it's just taking me longer than it would normally to translate > it! > > AAARGH! :) > This seems as I would have said I speak japanese, I only know a few words :) I think I can understand some french because resembles a little spanish and catalonian but I can't write it. BTW this fucking Netscape has resorted all my messages in dynarec folder by sender name, before they we're by sending time and now is a nightmare to find messages ... Do you know if I can arrange this? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 00:33:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA13434 for dynarec-outgoing; Wed, 22 Mar 2000 00:33:03 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D8850E.F703F38D@est.fib.upc.es> Date: Wed, 22 Mar 2000 09:32:14 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <000501bf9381$7d543c80$0a909090@okay> <38D8781C.A49653F4@est.fib.upc.es> <38D879F4.424FE0AD@eurocopter.de> <38D87C8E.C50824EF@est.fib.upc.es> <38D88132.F6FD334@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Forget last message I have found what was happening ... :o Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 01:36:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA13552 for dynarec-outgoing; Wed, 22 Mar 2000 01:36:35 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003220939.KAA32762@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38D8790F.3427040D@eurocopter.de> from Neil Griffiths at "Mar 22, 2000 08:41:03 am" To: dynarec@synthcom.com Date: Wed, 22 Mar 2000 10:39:03 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > Ah, I thought you meant RAM/ROM and data/code mappings... > > > > NG you are confusing us ;) > > Haha! My plan worked in all its glory! ;)) > How evil are you ;)) > > > Maybe we have to find new terms to reduce misunderstandings, but that > > > also includes "dynamic recompilation" ;-) > > > > Yes this will be something interesting. I think build some 'standard' terms is > > necessary or will be hard to explain what is 'dynamic recompilation' to other > > people, too misunderstandings. > > Okay, I'll write a short document up this weekend explaining the > terminology. Hopefully it'll be definitive. :) > > Alternatively, I could just confuse everybody. :)) > You will write a document using your terminology? I still like more my own terminology althought I agree with you I used too large names, perhaps if a better names are found ... I have thought in do a votation (is this the right word?) between dynarec members or perhaps too between mul8 members about what terminology is better. If we want finally to get a standard is better people could agree with it and then perhaps they would use it. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 01:55:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA13594 for dynarec-outgoing; Wed, 22 Mar 2000 01:55:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D89769.E091CBC0@eurocopter.de> Date: Wed, 22 Mar 2000 10:50:33 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <200003220939.KAA32762@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Haha! My plan worked in all its glory! ;)) > > > How evil are you ;)) I will rule the world! Ahahahahaaaaa! Oh, erm... *ahem* ;) > > Okay, I'll write a short document up this weekend explaining the > > terminology. Hopefully it'll be definitive. :) > > > > Alternatively, I could just confuse everybody. :)) > > You will write a document using your terminology? I still like more my own > terminology althought I agree with you I used too large names, perhaps if > a better names are found ... I have thought in do a votation (is this the > right word?) between dynarec members or perhaps too between mul8 members about > what terminology is better. If we want finally to get a standard is better > people could agree with it and then perhaps they would use it. Before we can change any terminology we've got to make sure that everyone knows what it *currently* is! So if you have a definition for dynamic recompilation, then people need to know what dynamic recompilation actually is. Your definition, whether it is more correct (that's really bad grammar!), cannot do much when people don't actually know what it is. Tell you what, we'll have a vote (vote is the singular AND the verb!) about what terms we like best. Then I'll mention them in my document. We can have a revolution! An emu revolution! Heh, doesn't that sound like a song? Hey, Neil, you've got some words for the next song you compose. ;) Anyway, so long as we agree on the methodology, the terms don't matter. So we need to decide on the terms for the correct methodology and live with them. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 02:27:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA13814 for dynarec-outgoing; Wed, 22 Mar 2000 02:27:19 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003221027.LAA04105@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38D89769.E091CBC0@eurocopter.de> from Neil Griffiths at "Mar 22, 2000 10:50:33 am" To: dynarec@synthcom.com Date: Wed, 22 Mar 2000 11:27:13 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > Haha! My plan worked in all its glory! ;)) > > > > > How evil are you ;)) > > I will rule the world! Ahahahahaaaaa! > > Oh, erm... *ahem* ;) > Ok, if you will rule the world please let me rule a lost hidden small island somewhere where I can live in peace writing emulators ;) > > > Okay, I'll write a short document up this weekend explaining the > > > terminology. Hopefully it'll be definitive. :) > > > > > > Alternatively, I could just confuse everybody. :)) > > > > You will write a document using your terminology? I still like more my own > > terminology althought I agree with you I used too large names, perhaps if > > a better names are found ... I have thought in do a votation (is this the > > right word?) between dynarec members or perhaps too between mul8 members about > > what terminology is better. If we want finally to get a standard is better > > people could agree with it and then perhaps they would use it. > > Before we can change any terminology we've got to make sure that everyone > knows what it *currently* is! So if you have a definition for dynamic > recompilation, then people need to know what dynamic recompilation actually > is. Your definition, whether it is more correct (that's really bad > grammar!), cannot do much when people don't actually know what it is. > My definitions are in fact the same as yours, it's the terminology what I don't like. Your way of call methodologies have created something so ugly as 'static recompilation' is, with has no use as you define it. Talk about static translation (or compilation if you like more this word) and dynamic translation has a lot of sense. These are in my thoughts the main techniques. All other techniques related to 'translation' or 'compilation' are extensions, combinations and modifications to these two. When you make a translation from a source code to a target code you can do it statically or dynamically there isn't other ways. Then you can have algorithms to deal with problems as self-modifying code or unresolved jump address or whatever that are extensions to this techniques. You can also combine it but this isn't a new tech, it's the old ones combined. A better classification would be to have two (thee with interpreter and perhaps some more if we count hardware emulation and this decode caching tech I don't how it works) main techniques and then a subtree of techniques derived from these root techniques. > Tell you what, we'll have a vote (vote is the singular AND the verb!) about > what terms we like best. Then I'll mention them in my document. We can have > a revolution! An emu revolution! Heh, doesn't that sound like a song? Hey, > Neil, you've got some words for the next song you compose. ;) > We will change emulation world!!! ;) > Anyway, so long as we agree on the methodology, the terms don't matter. So > we need to decide on the terms for the correct methodology and live with > them. :) > I agree with you but It's fun talk about terminology too :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 03:09:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA13895 for dynarec-outgoing; Wed, 22 Mar 2000 03:09:45 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003221112.MAA19697@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation0x10038ed8 (getscore+0x124) 7c671814 a r3,r7,r3 In-Reply-To: <200003221027.LAA04105@pons.ac.upc.es> from Victor Moya del Barrio at "Mar 22, 2000 11:27:13 am" To: dynarec@synthcom.com Date: Wed, 22 Mar 2000 12:12:42 +0100 (MET) CC: cont@ac.upc.es X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 03:28:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA13940 for dynarec-outgoing; Wed, 22 Mar 2000 03:28:46 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003221131.MAA07416@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <200003221027.LAA04105@pons.ac.upc.es> from Victor Moya del Barrio at "Mar 22, 2000 11:27:13 am" To: dynarec@synthcom.com Date: Wed, 22 Mar 2000 12:31:34 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Sorry for this last message. I hope noone gets hurt. I pressed middle mouse button in my X-Terminal when I was over mail window ... Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 04:32:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA14058 for dynarec-outgoing; Wed, 22 Mar 2000 04:32:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 12:50:51 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >NG you are confusing us ;) Why don't you do a few new lyrics for the song "Land of Confusion"? ;-) >Yes this will be something interesting. I think build some 'standard' terms is >necessary or >will be hard to explain what is 'dynamic recompilation' to other people, too >misunderstandings. Indeed! The only problem is that the term dynarec is well established even though most people don't really know what it means! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 04:32:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA14063 for dynarec-outgoing; Wed, 22 Mar 2000 04:32:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 13:04:23 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Okay, I'll write a short document up this weekend explaining the >terminology. Hopefully it'll be definitive. :) >Alternatively, I could just confuse everybody. :)) I guess it will be the latter case ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 04:32:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA14075 for dynarec-outgoing; Wed, 22 Mar 2000 04:32:25 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 12:56:27 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Oh, I don't know much about others computers others than PCs :( Shame on you! Well, at least you're interested in emulation ;-) My interest in computers began with the C64 but I never could have one which might be the main reason for my interest in emulators! Then I worked with the Atari ST for several years, switched to an Acorn RiscPC (I guess you know it, NG) and after some years I added a PC. >Try to explain a little what is decode caching. I think I know it as a >threaded interpreter but I'm not sure if it's the same technique. This would >be to have a map of the memory which each entry is a pointer to a routine that >handles the emulated >instruction in this memory address. Yeah, that's about it. But you also store the "arguments" (addresses, registers) which can be predecoded as well, eg. address to the register instead of the register number or a byteswapped literal. Otherwise you're right that the address of the routine is stored and just has to be called via a function pointer. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 04:32:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA14076 for dynarec-outgoing; Wed, 22 Mar 2000 04:32:25 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 12:48:44 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Ufff...., dynamic code generation (a dynamic dynamic compiler may be) would be >something >really hard to implement ;) Sure, but sounds like something for your Daisy project ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 04:32:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA14092 for dynarec-outgoing; Wed, 22 Mar 2000 04:32:26 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 12:59:03 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> Tua culpa! >Et al. :) You know even Latin?! I have to admit that I don't know if mine is correct... >I'd like to refer to it as "Splish". Makes no sense, but it's a great >sounding word. :) Yeah, but only for static trans, the dynamic one had to be called Dish. >> You bastard! ;-) >What? I didn't kill Kenny! ;) Quite a weird episode! Kenny isn't dead yet?? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 04:32:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA14091 for dynarec-outgoing; Wed, 22 Mar 2000 04:32:26 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 13:05:08 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Actually, there's an emulator called Gem* (can't remember the rest, but >it's probably Gemulator) which is either an Atari ST or Amiga emulator >which uses hardware. That's for the PC. Yeah, it's called Gemulator, but I think it's for ST and Mac... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 04:32:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA14106 for dynarec-outgoing; Wed, 22 Mar 2000 04:32:27 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 13:09:43 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I mean, how can anyone forget the acronym "TTTPTAEWKWIAI". You just can't >forget that, and think how easy it is to pronounce! You could post a Wave that we know how you pronounce it ;-) >Hmm. That acronym looks remarkably similar to German, actually... ;) Well, the new spelling rules lead to three consonants in a row sometimes but never at the beginning of a word. Five consonants in a row is impossible even in German. TAE is Korean BTW, and WIAI could be Korean or Japanese... But the main reason why it cannot be German: it's too short! ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 04:32:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA14110 for dynarec-outgoing; Wed, 22 Mar 2000 04:32:27 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 13:14:37 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yeah. And it doesn't finish with a hard sound either. No spit was involved >to pronounce the word. :)) Don't you like wet language? ;-) BTW, I hope you know the German "Auslautverhaertung" (I guess this is what you mean). This means that "Kind" is spoken as [kint] but "Kinder" as [kinda]. In Middle High German it actually was written as "kint", but a modern principle called "Stammschreibung" changed that. >BTW, that's last time I tell someone I speak French. On the Mul8 mailing >list a guy was asking some questions. I could see he was from Vietnam - and >knowing that Vietnam used to be French, told him that if he spoke it, he >was welcome to ask me some questions. I mean, it was from an English >document, so if all else failed, I could guess. But no, I've just got a >whole letter from him - and he *definitely* has better French than me! :)) >Never mind, it's just taking me longer than it would normally to translate >it! >AAARGH! :) Your fault again ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 04:32:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA14118 for dynarec-outgoing; Wed, 22 Mar 2000 04:32:30 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 13:03:15 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com [Corn] >The compatibility went up?! I didn't notice that! :o Up and down ;-) I don't have enough ROMs to test it, but it's said to run more games than just Mario, but it doesn't run *any* 2D software anymore... >Mind you, in a dynamic recompiler you can keep count of how many times a >certain routine has been run and optimise as necessary. Someone did say >that this technique had a name, but I don't know what it is. Therefore, I >will now name this technique "Splosh". Splish, Splash, Splosh - sounds a bit wet, doesn't it? ;-) >Can you tell that I didn't get much sleep last night? :)) Noooo! How could we even dare to assume that? >> If you know where the ROM is then you should exploit the information by >> not checking it for code changes of course, which should speed up >> arcade emulation even if you use dynamic recompilation. >Yes, this is true. Something that I don't think has been attempted yet. >Well done! ;) Are you sure it wasn't done yet? I mean it's just obvious! I bet that NB had the same idea. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 05:53:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA14330 for dynarec-outgoing; Wed, 22 Mar 2000 05:53:15 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 14:15:53 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >You will write a document using your terminology? I still like more my own >terminology althought I agree with you I used too large names, perhaps if >a better names are found ... I have thought in do a votation (is this the >right word?) I think you mean an opinion poll... >between dynarec members or perhaps too between mul8 members about >what terminology is better. If we want finally to get a standard is better >people could agree with it and then perhaps they would use it. Uh, lots of laymen voting for terminology they don't understand? The results might be interesting but probably to very useful... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 05:53:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA14337 for dynarec-outgoing; Wed, 22 Mar 2000 05:53:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 14:45:26 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I will rule the world! Ahahahahaaaaa! Good, then I don't have to work anymore... >Before we can change any terminology we've got to make sure that everyone >knows what it *currently* is! So if you have a definition for dynamic >recompilation, then people need to know what dynamic recompilation actually >is. Indeed! >Your definition, whether it is more correct (that's really bad >grammar!), cannot do much when people don't actually know what it is. Hehe, I think you're already influenced by German grammar ;-) >Tell you what, we'll have a vote (vote is the singular AND the verb!) about >what terms we like best. Then I'll mention them in my document. We can have >a revolution! An emu revolution! A man runs through the streets of Paris shouting "Menstruation! Menstruation!". Someone asks him, "Don't you mean 'revolution'?" He replies: "It doesn't matter, as long as I see blood!" ;-) >Anyway, so long as we agree on the methodology, the terms don't matter. So >we need to decide on the terms for the correct methodology and live with >them. :) Yeah, and even we have some misunderstandings... Let's do it again - my classification: * Dynamic vs. static translation, where static means prior to runtime and dynamic that translation is done on demand. The differences aren't that big as it seems, because you could do a translation prior to runtime but don't translate the whole thing. On the other hand when you decide that you want to translate more than just one block in dynamic translation (no limit is specified by the term) you could end up with the whole translation for small examples, which would then be static recompilation. I think the distiction isn't really that easy! * Generation in memory or to file - this might also be called volatile against non-volatile. Well, dynarecs normally generate the code in memory but FX!32 stores transation units in a database. Also static translation normally refers to a process where a new executable is produced, but in NG's terminology it can also be directed to memory. IMHO the generation of a new executable is only useful if you have clean code with no hardware references apart from the CPU where only system calls have to mapped. * Dynamic code generation vs. preassembled code templates. Either you can really generate code with code emitters or you have a file which looks a bit like an assembly optimised interpreter but which is a template library from which you copy code snippets into the generated block and set a few parameters. Obviously I agree with NB and think that the latter approach is just crap but it's used relatively often nevertheless so we have to cover it. * The last point is NG distiction between compilation and recompilation, which mainly means that either self-modifying code is being detected or the compiler doesn care. With this classification NB's method could be called: volatile code-emitting dynamic translation without self-modifying code detection (yet) This surely is a bit long (though more precise than just to say "dynarec"), so if anyone has a good idea what term is shorter but similar precise... BTW, I even forgot one classification: * TLB vs. TransMap... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 07:03:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA14491 for dynarec-outgoing; Wed, 22 Mar 2000 07:03:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D8DE81.DEB857ED@eurocopter.de> Date: Wed, 22 Mar 2000 15:53:53 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Oh, I don't know much about others computers others than PCs :( > > Shame on you! Well, at least you're interested in emulation ;-) Yes, it's one way to get to know computers other than PCs. Intimately. You could end up doing what I'm doing and emulating something you've never really used before. :) > My interest in computers began with the C64 but I never could have one > which might be the main reason for my interest in emulators! Then I > worked with the Atari ST for several years, switched to an Acorn RiscPC > (I guess you know it, NG) and after some years I added a PC. I know the Acorn RiscPC very well. My school was invited to go to a demonstration when they released the first RiscPC and they sent me (because I knew more than anybody!) instead - I went with 2 friends. Quite interesting, but I think the highlight of that day was when a man said to the PR guy "So, what does RISC stand for anyway?" and the guy didn't know. The bigger highlight was when no-one else in the room knew either, apart from me. So I told them. Which probably made them hate me because I was about 15 or 16 at the time. :)) I think I've still got one of those Acorn RiscPC drinks mats somewhere at home. Or I could have thrown it away. :) I remember being very impressed with the whole thing, but then I was young and impressionable. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 07:04:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA14502 for dynarec-outgoing; Wed, 22 Mar 2000 07:04:40 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D8DFBE.DADDA27E@eurocopter.de> Date: Wed, 22 Mar 2000 15:59:10 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >> Tua culpa! > >Et al. :) > > You know even Latin?! Some, yes. English makes heavy use of Latin. :) > I have to admit that I don't know if mine is correct... AFAIK it wasn't. I think you meant "Tia culpa!" because I know that phrase. > >I'd like to refer to it as "Splish". Makes no sense, but it's a great > >sounding word. :) > > Yeah, but only for static trans, the dynamic one had to be called Dish. I was going to call it flish... ;) > >> You bastard! ;-) > >What? I didn't kill Kenny! ;) > > Quite a weird episode! Kenny isn't dead yet?? I'll just ask him. "Are you dead?" "Mmmm! Mmm mmm MMMMMM!" I'm taking that as a no. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 07:12:12 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA14541 for dynarec-outgoing; Wed, 22 Mar 2000 07:12:12 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D8E20E.94D2D012@eurocopter.de> Date: Wed, 22 Mar 2000 16:09:02 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >I mean, how can anyone forget the acronym "TTTPTAEWKWIAI". You just > >can't forget that, and think how easy it is to pronounce! > > You could post a Wave that we know how you pronounce it ;-) You could always drop something heavy on your foot and learn how to pronounce it all by yourself. ;) > >Hmm. That acronym looks remarkably similar to German, actually... ;) > > Well, the new spelling rules lead to three consonants in a row > sometimes but never at the beginning of a word. Five consonants in a > row is impossible even in German. No, surely not! ;)) > TAE is Korean BTW, and WIAI could be Korean or Japanese... > But the main reason why it cannot be German: it's too short! ;-) Yes, that's true. Okay. Maybe it's Dutch or something... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 07:12:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA14549 for dynarec-outgoing; Wed, 22 Mar 2000 07:12:14 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D8E1AA.A85E49E2@eurocopter.de> Date: Wed, 22 Mar 2000 16:07:22 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Therefore, I will now name this technique "Splosh". > > Splish, Splash, Splosh - sounds a bit wet, doesn't it? ;-) Well, water affects electricity. That has nothing to do with it, it was just something to say. :) > >Can you tell that I didn't get much sleep last night? :)) > > Noooo! How could we even dare to assume that? I really must learn to go to bed BEFORE 3am when I have to be up at 7. I've noticed that when I start programming, I lose track of time. And - eventually - sleep. And when you work 10 hour days, that's a bad thing! > >Yes, this is true. Something that I don't think has been attempted > >yet. Well done! ;) > > Are you sure it wasn't done yet? I mean it's just obvious! I bet that > NB had the same idea. If it has been done, it hasn't been documented. At least, not that I've read... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 07:19:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA14578 for dynarec-outgoing; Wed, 22 Mar 2000 07:19:30 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D8E40F.C2E0836@eurocopter.de> Date: Wed, 22 Mar 2000 16:17:35 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I think you mean an opinion poll... Yes, that's probably a better word for it. > >between dynarec members or perhaps too between mul8 members about > >what terminology is better. If we want finally to get a standard is > better > >people could agree with it and then perhaps they would use it. > > Uh, lots of laymen voting for terminology they don't understand? The > results might be interesting but probably to very useful... Yes, I'd suggest not doing it on mul8. At least here we *pretend* to know what we're talking about. Over there they don't pretend - they really don't. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 07:24:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA14602 for dynarec-outgoing; Wed, 22 Mar 2000 07:24:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 16:22:53 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yes, it's one way to get to know computers other than PCs. Intimately. You >could end up doing what I'm doing and emulating something you've never >really used before. :) Yeah, what I love most is to figure out how an operating system works that I never used before ;-) >I know the Acorn RiscPC very well. My school was invited to go to a >demonstration when they released the first RiscPC and they sent me (because >I knew more than anybody!) instead - I went with 2 friends. Quite >interesting, but I think the highlight of that day was when a man said to >the PR guy "So, what does RISC stand for anyway?" and the guy didn't know. >The bigger highlight was when no-one else in the room knew either, apart >from me. So I told them. Which probably made them hate me because I was >about 15 or 16 at the time. :)) Hehe. Then it surely wasn't Steve Furber! The ARM was mainly developed by two people: Steve Furber (implementation), who is now a professor at Manchester university, and Sophie Wilson (architecture). And the ARM was really the first commercial RISC processor in the world! >I think I've still got one of those Acorn RiscPC drinks mats somewhere at >home. Or I could have thrown it away. :) I still have my Clan Acorn member card... nostalgia! >I remember being very impressed with the whole thing, but then I was young >and impressionable. ;) The RPC is still impressing. Sometimes it's great to see how fast software can be on such outdated technology. You have to see the Iron Dignity demo to believe what's all possible without 3D hardware! The joke is that some guys now even use TechWriter to open Word documents which cannot be opened by Word anymore and when you save these in Word format from TechWriter they work again. Not to mention that TechWriter is much more stable than Word and fits onto a single floppy disk if you don't include the dictionary! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 07:24:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA14609 for dynarec-outgoing; Wed, 22 Mar 2000 07:24:25 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 16:25:23 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Some, yes. English makes heavy use of Latin. :) I know. >AFAIK it wasn't. I think you meant "Tia culpa!" because I know that phrase. Don't ask me. The last time I translated Latin (Carmina Burana) I used a Latin dictionary very heavily! >I was going to call it flish... ;) Sounds a bit like fish... >I'll just ask him. "Are you dead?" "Mmmm! Mmm mmm MMMMMM!" >I'm taking that as a no. ;) How can you tell? It might have been his death screams ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 07:40:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA14663 for dynarec-outgoing; Wed, 22 Mar 2000 07:40:28 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 16:37:20 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> I think you mean an opinion poll... >Yes, that's probably a better word for it. Hey, and I even didn't have to look it up in the dictionary! >Yes, I'd suggest not doing it on mul8. At least here we *pretend* to know >what we're talking about. Only speak for yourself ;-) >Over there they don't pretend - they really don't. ;) Or they pretend not to know ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 07:40:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA14671 for dynarec-outgoing; Wed, 22 Mar 2000 07:40:29 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 16:38:35 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> Five consonants in a >> row is impossible even in German. >No, surely not! ;)) Example? >Yes, that's true. Okay. Maybe it's Dutch or something... :) What about Finnish? ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 07:40:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA14678 for dynarec-outgoing; Wed, 22 Mar 2000 07:40:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 16:41:30 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Well, water affects electricity. >That has nothing to do with it, it was just something to say. :) It seems so. >I really must learn to go to bed BEFORE 3am when I have to be up at 7. I've >noticed that when I start programming, I lose track of time. And - >eventually - sleep. And when you work 10 hour days, that's a bad thing! Maybe you just need an alarm clock ;-) >If it has been done, it hasn't been documented. At least, not that I've >read... That's the problem with dynarecs. Either you notice how bad they are in the open sources or they don't even tell you what tricks they've used - maybe to spare us a good laugh because they've done it bad as well... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 08:03:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA14788 for dynarec-outgoing; Wed, 22 Mar 2000 08:03:40 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D8EDDE.A38971B@eurocopter.de> Date: Wed, 22 Mar 2000 16:59:26 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >I will rule the world! Ahahahahaaaaa! > > Good, then I don't have to work anymore... Ooh, I don't know about that... ;) > >Your definition, whether it is more correct (that's really bad > >grammar!), cannot do much when people don't actually know what it is. > > Hehe, I think you're already influenced by German grammar ;-) I'm getting worried! > >Tell you what, we'll have a vote (vote is the singular AND the verb!) > about > >what terms we like best. Then I'll mention them in my document. We can > have > >a revolution! An emu revolution! > > A man runs through the streets of Paris shouting "Menstruation! > Menstruation!". > Someone asks him, "Don't you mean 'revolution'?" > He replies: "It doesn't matter, as long as I see blood!" > ;-) You're one sick person, you know? ;) > >Anyway, so long as we agree on the methodology, the terms don't > matter. So > >we need to decide on the terms for the correct methodology and live > with > >them. :) > > Yeah, and even we have some misunderstandings... I think we're okay now. It just requires clarification... > I think the distiction isn't really that easy! Static: performed before emulation Dynamic: performed during emulation Not difficult. :) > Well, dynarecs normally generate the code in memory but FX!32 stores > transation units in a database. Also static translation normally refers > to a process where a new executable is produced, but in NG's > terminology it can also be directed to memory. Of course. This can be seen in other emus - like the old Corn thing. > * The last point is NG distiction between compilation and > recompilation, which mainly means that either self-modifying code is > being detected or the compiler doesn care. Which is the only way to make sense of it all, IMO. > With this classification NB's method could be called: > volatile code-emitting dynamic translation without self-modifying code > detection (yet) > > This surely is a bit long (though more precise than just to say > "dynarec"), so if anyone has a good idea what term is shorter but > similar precise... Dynamic binary retranslation? > BTW, I even forgot one classification: > * TLB vs. TransMap... Not sure of this one, though... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 08:39:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA14877 for dynarec-outgoing; Wed, 22 Mar 2000 08:39:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 17:40:39 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> Good, then I don't have to work anymore... >Ooh, I don't know about that... ;) Oh shit! And this man wants to rule the world... >> Hehe, I think you're already influenced by German grammar ;-) >I'm getting worried! We will assimilate you ;-) >You're one sick person, you know? ;) Hey, you brought up the revolution topic! Well, I guess we both are sick then... >Static: performed before emulation >Dynamic: performed during emulation >Not difficult. :) As I said: when the dynarec happens to translate the whole program prior to runtime you wouldn't be able to distinguish it from a static one! BTW, what is the difference between AI and a defunct computer? There is none! In both cases you get results you wouldn't expect. ;-) >Of course. This can be seen in other emus - like the old Corn thing. Yeah, that's why made a split between the two features static and file generation, which were one feature in my original theory. >> * The last point is NG distiction between compilation and >> recompilation, which mainly means that either self-modifying code is >> being detected or the compiler doesn care. >Which is the only way to make sense of it all, IMO. Since most say "dynarec" even if it doesn't care about self-modifying code I think this is one thing we really need to discuss about. Before you mentioned dynamic compilation on the list this would have been something different for me: a compiler that generates code for dynamic code generation during runtime. >Dynamic binary retranslation? I think it's bad to give the small prefix too much meaning. You've even used it wrong because NB's dynarec isn't a retranslator yet. OK, let's do some language history: In Middle High German there was a prefix to negate the verb ("en" or "ne"), but it could also be used as a postfix on the word preceding the verb. It seems that more and more people misunderstood sentences because later multiple negation was used. In many cases the combination "ne wiht" was used, which means "not a small thing". Later it was shortened to "nicht" and the negation prefix was totally dropped. IMO it's not good to pack the information if a translator checks for self-modifying code or not in just two letters which are so easy to overlook. This will surely lead to even more misunderstandings. >> BTW, I even forgot one classification: >> * TLB vs. TransMap... >Not sure of this one, though... It might be that you missed the discussion between Neil, Victor, and me. You know that translated blocks are stored in allocated parts of the memory which are often called the "translation cache". But you still need a method to find out if a block is already translated and if so where the generated code lies. Most implementations I know use a hash table which is often referred to as "translation lookaside buffer" (TLB) because it does a similar address translation as performed in a MMU. NB uses a different approach. He has a large array where he stores the relating target code address for each address in the source memory. Victor invented the term TransMap for this structure ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 09:51:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA15243 for dynarec-outgoing; Wed, 22 Mar 2000 09:51:33 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D907A0.EF761393@eurocopter.de> Date: Wed, 22 Mar 2000 18:49:20 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Some, yes. English makes heavy use of Latin. :) > > I know. It just happens that I may use a lot of Latin - and not know it. :) > >AFAIK it wasn't. I think you meant "Tia culpa!" because I know that > phrase. > > Don't ask me. The last time I translated Latin (Carmina Burana) I used > a Latin dictionary very heavily! I don't blame you! > >I was going to call it flish... ;) > > Sounds a bit like fish... Exactly. Sounds a bit fishy to me. :) > >I'll just ask him. "Are you dead?" "Mmmm! Mmm mmm MMMMMM!" > >I'm taking that as a no. ;) > > How can you tell? It might have been his death screams ;-) He's still ali... no, sorry. He's dead now. ;) neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 09:51:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA15251 for dynarec-outgoing; Wed, 22 Mar 2000 09:51:37 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D90768.5AD4B221@eurocopter.de> Date: Wed, 22 Mar 2000 18:48:24 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Yeah, what I love most is to figure out how an operating system works > that I never used before ;-) Or, in my particular case, an entire machine! :) > Hehe. Then it surely wasn't Steve Furber! The ARM was mainly developed > by two people: Steve Furber (implementation), who is now a professor at > Manchester university, and Sophie Wilson (architecture). And the ARM > was really the first commercial RISC processor in the world! Well, unless Sophie is now on hormone treatments, it wasn't her. Definitely a guy. But the guy didn't know the machine too well, he was definitely a PR guy. > >I think I've still got one of those Acorn RiscPC drinks mats somewhere > at > >home. Or I could have thrown it away. :) > > I still have my Clan Acorn member card... nostalgia! Heh. :) > >I remember being very impressed with the whole thing, but then I was > young > >and impressionable. ;) > > The RPC is still impressing. Sometimes it's great to see how fast > software can be on such outdated technology. You have to see the Iron > Dignity demo to believe what's all possible without 3D hardware! > The joke is that some guys now even use TechWriter to open Word > documents which cannot be opened by Word anymore and when you save > these in Word format from TechWriter they work again. Not to mention > that TechWriter is much more stable than Word and fits onto a single > floppy disk if you don't include the dictionary! The techniques used are impressive, but the hardware is not so much - these days. I guess it was for those days. Heh, they had a 486 DX2/66 PC card - I remember being impressed by that because that was top of the range at the time... I know what's possible without 3D hardware - did you ever see demos on the 8-bits or 16-bits? All that's better now is the resolution (graphics and sound)... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 09:53:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA15266 for dynarec-outgoing; Wed, 22 Mar 2000 09:53:30 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D907FA.1F1612CF@eurocopter.de> Date: Wed, 22 Mar 2000 18:50:50 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Yes, that's probably a better word for it. > > Hey, and I even didn't have to look it up in the dictionary! Well done! ;p > >Yes, I'd suggest not doing it on mul8. At least here we *pretend* to > >know what we're talking about. > > Only speak for yourself ;-) ;p > >Over there they don't pretend - they really don't. ;) > > Or they pretend not to know ;-) Another possibility. But when you get people asking "Where can I get a C compiler, I have Visual C++" then you do have to wonder. Yes, everybody starts somewhere, but I don't believe that you should even *consider* writing an emulator if you don't know that... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 09:55:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA15287 for dynarec-outgoing; Wed, 22 Mar 2000 09:55:11 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D90865.14755DDB@eurocopter.de> Date: Wed, 22 Mar 2000 18:52:37 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >I really must learn to go to bed BEFORE 3am when I have to be up at 7. > I've > >noticed that when I start programming, I lose track of time. And - > >eventually - sleep. And when you work 10 hour days, that's a bad > thing! > > Maybe you just need an alarm clock ;-) Two. If I change the one I've got, chances are that I'll forget to put it back to 7am and I'll oversleep. :)) > >If it has been done, it hasn't been documented. At least, not that > >I've read... > > That's the problem with dynarecs. Either you notice how bad they are in > the open sources or they don't even tell you what tricks they've used - > maybe to spare us a good laugh because they've done it bad as well... Maybe so. Hmm. Never really looked. I'd rather do it myself from scratch rather than try and understand someone elses code... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 09:57:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA15313 for dynarec-outgoing; Wed, 22 Mar 2000 09:57:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D9092B.917DA598@eurocopter.de> Date: Wed, 22 Mar 2000 18:55:55 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Ooh, I don't know about that... ;) > > Oh shit! And this man wants to rule the world... No, I don't want to. I just said that I would... ;) > >> Hehe, I think you're already influenced by German grammar ;-) > >I'm getting worried! > > We will assimilate you ;-) It... appear so, yes. :o > >You're one sick person, you know? ;) > > Hey, you brought up the revolution topic! > Well, I guess we both are sick then... But I was talking about emulation! Trust you to bring up menstruation... ;) > >Static: performed before emulation > >Dynamic: performed during emulation > >Not difficult. :) > > As I said: when the dynarec happens to translate the whole program > prior to runtime you wouldn't be able to distinguish it from a static > one! But it isn't dynamic then. Dynamic needs to be able to adapt - that's the whole point of the word "Dynamic"! > BTW, what is the difference between AI and a defunct computer? > There is none! In both cases you get results you wouldn't expect. ;-) I was worried it was going to be another sick joke there... ;) > >Which is the only way to make sense of it all, IMO. > > Since most say "dynarec" even if it doesn't care about self-modifying > code I think this is one thing we really need to discuss about. Before > you mentioned dynamic compilation on the list this would have been > something different for me: a compiler that generates code for dynamic > code generation during runtime. That's true - which shows why the need exists for a definitive statement. > >Dynamic binary retranslation? > > I think it's bad to give the small prefix too much meaning. You've even > used it wrong because NB's dynarec isn't a retranslator yet. His fault, not mine! ;) > >Not sure of this one, though... > > NB uses a different approach. He has a large array where he stores the > relating target code address for each address in the source memory. > Victor invented the term TransMap for this structure ;-) Did see it, but the conversation is all at home... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 10:30:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA15476 for dynarec-outgoing; Wed, 22 Mar 2000 10:30:19 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 19:31:27 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Well, unless Sophie is now on hormone treatments, it wasn't her. Hmm, that person used to be mentioned as Roger Wilson and later as Sophie Wilson, so I think you already mentioned the answer... >Definitely >a guy. But the guy didn't know the machine too well, he was definitely a PR >guy. Yeah, tell me about PR guys! We (or more precise, I had all the work) had to change the version number of one of our programs one day before CeBIT and reinstall it on all presentation computers because those damn PR guys mixed our two programs GEDOK 3.0 and VISIT 4.0 and told the press that GEDOK 4.0 and VISIT 4.0 were to be shown! The best thing is that they didn't even admit they made the error but said that we (the development group) had given them the wrong information! >The techniques used are impressive, but the hardware is not so much - these >days. I guess it was for those days. Heh, they had a 486 DX2/66 PC card - I >remember being impressed by that because that was top of the range at the >time... The first PC card I had was a 486SX-33, but I had it upgraded to an AMD 5x86/160 some time ago. >I know what's possible without 3D hardware - did you ever see demos on the >8-bits or 16-bits? All that's better now is the resolution (graphics and >sound)... Iron Dignity has really cool effects: shading, dynamic shadows, water reflections, lighting, and very cool lense flares. >He's still ali... no, sorry. He's dead now. ;) They killed Kenny! Those ... Wait, who is they??? >Another possibility. But when you get people asking "Where can I get a C >compiler, I have Visual C++" then you do have to wonder. Yes, everybody >starts somewhere, but I don't believe that you should even *consider* >writing an emulator if you don't know that... Yeah, if they cannot program it's bad to start with programming an emulator... >> Maybe you just need an alarm clock ;-) >Two. If I change the one I've got, chances are that I'll forget to put it >back to 7am and I'll oversleep. :)) My problem is that I'm able to switch off that thing while I'm half asleep and it can happen that I just turn round and take another nap. >Maybe so. Hmm. Never really looked. I'd rather do it myself from scratch >rather than try and understand someone elses code... In some cases it's not only the name you share with Neil ;-) >No, I don't want to. I just said that I would... ;) Hey, you're a PocketBG! >> We will assimilate you ;-) >It... appear so, yes. :o I'll tell you a secret: it's all due to the German beer! ;-) >But I was talking about emulation! Trust you to bring up menstruation... ;) Uh, won't say anything without a lawyer! >But it isn't dynamic then. Dynamic needs to be able to adapt - that's the >whole point of the word "Dynamic"! When you have a program that has just one large block then it would be exactly the same effect if you used a dynamic or static translator! >I was worried it was going to be another sick joke there... ;) If you don't like translated German jokes (worked better than I thought) then tell us some British ones! >That's true - which shows why the need exists for a definitive statement. Just what I say all of the time... >> I think it's bad to give the small prefix too much meaning. You've even >> used it wrong because NB's dynarec isn't a retranslator yet. >His fault, not mine! ;) Hey, Neil do you read this? He said it's your fault! >Did see it, but the conversation is all at home... :) Well I hope you now know what I meant... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 10:43:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA15541 for dynarec-outgoing; Wed, 22 Mar 2000 10:43:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Compiler Optimisation Date: Wed, 22 Mar 2000 19:44:19 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Today Jens Kilian mentioned another GCC option to me which I forgot about because it shows no effect on ARM code. But for x86 the option "-fomit-frame-pointer" (thank God that it's an 'f') works wonders. My 'inc' function is reduced to: inc: movl 4(%esp),%eax incl %eax ret Still not as good as Watcom, but much better than without the option: inc: pushl %ebp movl %esp,%ebp movl 8(%ebp),%eax incl %eax movl %ebp,%esp popl %ebp ret Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 22 23:28:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA18878 for dynarec-outgoing; Wed, 22 Mar 2000 23:28:57 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-Id: <200003230728.IAA21544@wsasd315.asml.nl> Date: Thu, 23 Mar 2000 08:28:21 +0100 (MET) From: Paul Franke Subject: Re: DYNAREC: OT: Compilation and recompilation To: dynarec@synthcom.com MIME-Version: 1.0 Content-Type: TEXT/plain; charset=us-ascii Content-MD5: P3DOw+KvB2cZwVZdiPe+Dg== X-Mailer: dtmail 1.2.1 CDE Version 1.2.1 SunOS 5.6 sun4u sparc Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f > To: dynarec@synthcom.com > Subject: Re: DYNAREC: OT: Compilation and recompilation > Date: Wed, 22 Mar 2000 16:38:35 CET > From: "Michael Koenig" > MIME-Version: 1.0 > > >> Five consonants in a > >> row is impossible even in German. > >No, surely not! ;)) > > Example? > > >Yes, that's true. Okay. Maybe it's Dutch or something... :) In Dutch there is the "famous" two syllable word "angstschreeuw", which means a cry of fear. The syllable boundary is between angst-schreeuw. > > What about Finnish? ;-) > > Bye, > M.I.K.e > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@synthcom.com. Please direct other > ** questions, comments, or problems to neil@synthcom.com. _____________________________________________________________________ Paul Franke ASML BV phone: (+31) (0)40-2305074 / 0623379159 De Run 6665 email work: paul.franke@asml.nl 5504 DT Veldhoven, paul.franke@nl.origin-it.com The Netherlands email home: pfranke@wxs.nl --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 00:10:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA18994 for dynarec-outgoing; Thu, 23 Mar 2000 00:10:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 08:53:12 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> >Yes, that's true. Okay. Maybe it's Dutch or something... :) >In Dutch there is the "famous" two syllable word "angstschreeuw", >which means a cry of fear. The German equivalent would be "Angstschrei", but these are still only 4 consonats in a row: "ng" is one, "st" are two, and "sch" is one. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 01:14:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA19199 for dynarec-outgoing; Thu, 23 Mar 2000 01:14:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D9E00C.5D52A7E@est.fib.upc.es> Date: Thu, 23 Mar 2000 10:12:44 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <000501bf9381$7d543c80$0a909090@okay> <38D8781C.A49653F4@est.fib.upc.es> <38D879F4.424FE0AD@eurocopter.de> <38D87C8E.C50824EF@est.fib.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Ok, it's time I make some definitions too :) But I think there is nothing new to be saied :( In my thoughts these are the main techniques for emulation: 1. Static translation 2. Dinamic translation 3. Interpreting 4. Decode caching/threaded interpreter (Note: about this I'm not really sure) 5. Hardware emulation Static Translation (statrans) =================== Builds a translation of the emulated ROM/program at startup then the translation is executed. It is slow on startup and very fast while executing. But it's difficult to implement. Main problems would be unresolved jump addresses (indirect jumps) and self-modyfing code. Other problems are that it isn't a very flexible technique, perhaps would work for a ROM or a few ROMs but difficult to work for all ROMs. Also you have to build a translation (and this needs a lot of time) each time you want to play/use the ROM Decode and translation is made before execution. All kinds of optimizations can be made. It works as an assembler/compiler that gets a bit/opcode stream as input. It uses all the same techniques from compiler theory. Extensions: a) something MIKE calls dynamic code generation. Build code that dynamically detects the non-translated addresses and builds a translation. Really difficult to implement. b) a mixed interpreter that begins to work when this new addresses are found or to handle self modyfing code. This perhaps would be a good solution, but then in fact what you are running most of the time is the interpreter, so you lost the speed you want when using this technic. c) store the translation in a file or perhaps do a translator that generates automatically executable files. Difficult, the executable would be bigger than original ROM or would also need the ROM. Dinamic Translation (dinatrans or dintrans) ============================= Build the translation at execution time. When you need to execute some new code it's translated. The translated code is stored somewhere and used later when this code is called. It's a only a bit slower than a static translator (if the dinatrans is well implemented). You spend some time while executing in build the translation but usually the translation is only made once and then reused. It's a lot of flexible and admits a lot of extensions. Problems: self-modyfing code. Translation is made in what I call 'translation units', this 'units' can have a lot of sizes: from an alone instruction to a full routine, usually is a something resembling a 'basic block'. Decode and translation are made at execution time but (usually) only once. Only a few optimizations are implemented (usually). The techniques used resemble to compiler techniques but are simpler and bit different. Extensions: a) static startup, a big starting translation could be made before you begin execution. Later you handle the new jump addresses found. More or less work could be made at this startup stage, only some code pre-analysis or a full translation of all reachable code. It's a mixture between an static translator and a dynamic translation. I think could be useful if a lot of code is translated at startup, could speed the beginning of the execution spending some time at load stage. b) an algorithm for handling self-modifyng code. Perhaps not so difficult to implement but if there is a lot of self-modyfing code it would be slow and would be better use an interpreter. The main work would be made the test for modifyied code, the emulator could spend to many time at this. c) a mixed interpreter, this will handle self-modifying code when detected or perhaps will be used for code in RAM. A good solution but you have to implement to cores. d) profiling, perhaps mixed with an interpreter too. It would work as Java Hot Spot, interpreting, get information and translated code used very often. This will help to find what pieces of code would be better to optimize. e) perhaps could be interesting store the translated code in a file too, but this have never been used. Interpreting (interpreter) ================= Well, everybody knows what this is, right? :) Each instruction is decoded and then the proper function is called. It's slower because you have to decode the same instruction each time you execute it. A lot of code for each instruction is repeated each time you execute it. No optimizations can be made. Extensions: I don't know none. Threaded interpreting/Decode caching ========================== Perhaps in this I'm wrong. I think this technic works as an interpreter but the instruction is only decode once. You have a map of memory with a pointer for each instruction to the a function that executes this instruction. It's faster than interpreting. Perhaps some optimizations can me made, as instruction collapsing or flag evaluation supresion. Extensions: None. Perhaps this is an extension from interpreting. Hardware emulation ============== You have some hardware device that help you to emulate a system. Usually is a board with the processor you are emulating and some more chips for help. I don't know much about this. I have heared about 'microcode translation' and chips that translated java bytecode to another processor. But it's hard to implement, hard to find and expensive. But it would be really fast. I think this is all. :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 01:33:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA19239 for dynarec-outgoing; Thu, 23 Mar 2000 01:33:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38D9E48F.EA0B1160@est.fib.upc.es> Date: Thu, 23 Mar 2000 10:31:59 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > Let's do it again - my classification: > > * Dynamic vs. static translation, where static means prior to runtime > and dynamic that translation is done on demand. > The differences aren't that big as it seems, because you could do a > translation prior to runtime but don't translate the whole thing. > On the other hand when you decide that you want to translate more than > just one block in dynamic translation (no limit is specified by the > term) you could end up with the whole translation for small examples, > which would then be static recompilation. > I think the distiction isn't really that easy! > It's really difficult to do a complet translation prior to runtime, and I know what I'm saying I'm working with it :) You have to run find a new address not translated and then retranslate again all. And it's very slow. The diference between static and dynamic in fact is how you work: first translate all and then execute or be in a translate-execute loop. And also in my thoughts static means you have a big distinction between translation phase and execution phase, in dinamic there isn't two phases, all time you are translating and executing (ok, until you don't have code to translate). > > * Generation in memory or to file - this might also be called volatile > against non-volatile. > Well, dynarecs normally generate the code in memory but FX!32 stores > transation units in a database. Also static translation normally refers > to a process where a new executable is produced, but in NG's > terminology it can also be directed to memory. > IMHO the generation of a new executable is only useful if you have > clean code with no hardware references apart from the CPU where only > system calls have to mapped. > Store the result in a file is not suited for emulation, you don't want to have files for all ROMs you have ever runned. > > * Dynamic code generation vs. preassembled code templates. > With code templates you can't do optimizations or only a very few optimizations so it isn't, i thought, so fast than dynamic code generation. I think this could be something similar to threaded interpreting but without having to call/jump to a function. > > * The last point is NG distiction between compilation and > recompilation, which mainly means that either self-modifying code is > being detected or the compiler doesn care. > Yes the last problem we ever have :) > > With this classification NB's method could be called: > volatile code-emitting dynamic translation without self-modifying code > detection (yet) > Very complet, pretty large ;) But it's correct, if you want to define something you have to say what it is. If we would have created a small name for this tech, and everybody knows what the name means, we could use this name. > > BTW, I even forgot one classification: > * TLB vs. TransMap... Oh, you forget this also ... Perhaps another would be with profiling or without profiling (gathering information to know where, what and how optimize in translated code). And just another with a mixed interpreter or without an interpreter (for self-modyfing code and others things). Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 03:52:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA19742 for dynarec-outgoing; Thu, 23 Mar 2000 03:52:01 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <000301bf944c$e50ca620$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Wed, 22 Mar 2000 23:08:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Well, unless Sophie is now on hormone treatments, it wasn't her. > > Hmm, that person used to be mentioned as Roger Wilson and later as > Sophie Wilson, so I think you already mentioned the answer... Erm... Scary! > Yeah, tell me about PR guys! We (or more precise, I had all the work) > had to change the version number of one of our programs one day before > CeBIT and reinstall it on all presentation computers because those damn > PR guys mixed our two programs GEDOK 3.0 and VISIT 4.0 and told the > press that GEDOK 4.0 and VISIT 4.0 were to be shown! > The best thing is that they didn't even admit they made the error but > said that we (the development group) had given them the wrong > information! Hmm. I've said it before and I'll say it again: I hate PR people. If you need to lie to sell a product, you shouldn't sell the product. And a PR guy is never wrong (as you've just mentioned). Hmm... > The first PC card I had was a 486SX-33, but I had it upgraded to an AMD > 5x86/160 some time ago. But you've got a straight PC as well, haven't you? > >I know what's possible without 3D hardware - did you ever see demos on > >the 8-bits or 16-bits? All that's better now is the resolution (graphics > >and sound)... > > Iron Dignity has really cool effects: shading, dynamic shadows, water > reflections, lighting, and very cool lense flares. Impressive. Seen the game "Unreal"? The software renderer in that is also damned impressive. It basically emulates a full 3D-card - and does a pretty good job of it as well... > >He's still ali... no, sorry. He's dead now. ;) > > They killed Kenny! Those ... Wait, who is they??? They... them... You know... them... ;) > >Another possibility. But when you get people asking "Where can I get a > >C compiler, I have Visual C++" then you do have to wonder. Yes, > >everybody starts somewhere, but I don't believe that you should even *consider* > >writing an emulator if you don't know that... > > Yeah, if they cannot program it's bad to start with programming an > emulator... Indeed. And if you can program and still have some sanity left, it's bad to start programming an emulator. Sanity goes out the window: "WHY DOESN'T THIS WORK! WHY?!"... Not that I've been there... :))) > >Two. If I change the one I've got, chances are that I'll forget to put > >it back to 7am and I'll oversleep. :)) > > My problem is that I'm able to switch off that thing while I'm half > asleep and it can happen that I just turn round and take another nap. Same problem. I have a light next to my bed which I turn on before I turn the alarm off. I then find it difficult to go back to sleep... > >Maybe so. Hmm. Never really looked. I'd rather do it myself from > >scratch rather than try and understand someone elses code... > > In some cases it's not only the name you share with Neil ;-) It's in the name, definitely. Who knows, they may do it a better way than myself. But then, I may do it better than them. There's only one way to find out. :) > >No, I don't want to. I just said that I would... ;) > > Hey, you're a PocketBG! Until I find out what a PocketBG is, I deny that. ;) > >> We will assimilate you ;-) > >It... appear so, yes. :o > > I'll tell you a secret: it's all due to the German beer! ;-) Damn, damn, and thrice damn! Damn you for you and your strong beer festival (stark beer at 12 percent proof served in a mass - or 1 litre glass)... > >But it isn't dynamic then. Dynamic needs to be able to adapt - that's > >the whole point of the word "Dynamic"! > > When you have a program that has just one large block then it would be > exactly the same effect if you used a dynamic or static translator! Yes. But then I've never seen a program with one large block that never jumps or has any compares at all... > >I was worried it was going to be another sick joke there... ;) > > If you don't like translated German jokes (worked better than I > thought) then tell us some British ones! I don't mind them. Besides, you'd never get them. Or I'd offend someone. ;) A joke... a joke... Wait, I know one: French people. ;) > >That's true - which shows why the need exists for a definitive > >statement. > > Just what I say all of the time... Good. Then I'll provide everyone with one this weekend. :) > >His fault, not mine! ;) > > Hey, Neil do you read this? He said it's your fault! Yeah! ;) No, you can't call it a retranslator if it doesn't... retranslate. :) > >Did see it, but the conversation is all at home... :) > > Well I hope you now know what I meant... I do now, yes. I'll mention it - just to confuse many more people. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 05:07:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA19944 for dynarec-outgoing; Thu, 23 Mar 2000 05:07:58 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DA15E0.41A3388@eurocopter.de> Date: Thu, 23 Mar 2000 14:02:24 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >In Dutch there is the "famous" two syllable word "angstschreeuw", > >which means a cry of fear. > > The German equivalent would be "Angstschrei", but these are still only > 4 consonats in a row: "ng" is one, "st" are two, and "sch" is one. I need to learn more about German. In English, a constonant is any letter which isn't a vowel (i.e. a, e, i, o and u). Why is "ng" only one constonant? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 05:18:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA19964 for dynarec-outgoing; Thu, 23 Mar 2000 05:18:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DA1896.4DB43082@eurocopter.de> Date: Thu, 23 Mar 2000 14:13:58 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <38D9E48F.EA0B1160@est.fib.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > It's really difficult to do a complet translation prior to runtime, and I know > what I'm saying I'm working with it :) I agree. There are nearly always going to be things that make it impossible. For instance, say they've implemented a jump table. How do you know where it will jump to (for a bad example)? > Store the result in a file is not suited for emulation, you don't want to have > files for all ROMs you have ever runned. Agreed. > > * Dynamic code generation vs. preassembled code templates. > > With code templates you can't do optimizations or only a very few optimizations > so it isn't, i thought, so fast than dynamic code generation. I think this > could be something similar to threaded interpreting but without having to > call/jump to a function. All you can do is optimise the templates themselves, but that doesn't help out all that much... > > * The last point is NG distiction between compilation and > > recompilation, which mainly means that either self-modifying code is > > being detected or the compiler doesn care. > > Yes the last problem we ever have :) True, but I'm right. ;) The prefix "re" means something is done more than once (or, in a better way, is done again). So, "compilation" and "recompilation". You see? :) > > With this classification NB's method could be called: > > volatile code-emitting dynamic translation without self-modifying code > > detection (yet) > > Very complet, pretty large ;) > But it's correct, if you want to define something you have to say what it is. > If we would have created a small name for this tech, and everybody knows what > the name means, we could use this name. VCE and VCES? VCE: Volatile Code Emitter VCES: Volatile Code Emitter with Self-modifying ability Of course, it also sounds like "faeces", so it's got to be rememberable. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 05:22:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA19976 for dynarec-outgoing; Thu, 23 Mar 2000 05:22:49 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DA19DF.BB8B6219@eurocopter.de> Date: Thu, 23 Mar 2000 14:19:27 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > If you don't like translated German jokes (worked better than I > thought) then tell us some British ones! I can just about remember one British joke which shouldn't offend anyone. And if it does... well, nyaah! ;) After God had created Adam and Eve he left them alone. Anyway, eventually they had figured out how to have sex and after they'd finished, Adam went for a walk. God met up with him and asked him how it went. Adam told him it was good and Eve had enjoyed it too. Then God asked Adam where Eve was. Adam told him that she was down in the river washing herself. God moaned to himself "Oh no! Now all the fish will smell like that!" There, classic British (pub) humour. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 10:21:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA21006 for dynarec-outgoing; Thu, 23 Mar 2000 10:21:03 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 18:56:41 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id KAA21003 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Hmm. I've said it before and I'll say it again: I hate PR people. If you >need to lie to sell a product, you shouldn't sell the product. And a PR guy >is never wrong (as you've just mentioned). Hmm... Yeah, another topic where we share the same opinion... >But you've got a straight PC as well, haven't you? Yeah, a Deschutes-350 with 256MB RAM. But I worked on the PC card for some time, and even did my whole internet stuff on Win95 although it was pretty slow. >Impressive. Seen the game "Unreal"? Of course! >The software renderer in that is also >damned impressive. It basically emulates a full 3D-card - and does a pretty >good job of it as well... I have a Banshee, so Unreal runs perfectly on my PC, but I saw it once on a crappy ATI card and Unreal's software mode was certainly better than that of Half-Life. >They... them... You know... them... ;) Ah, *them*! Why didn't you say that in the beginning? >Same problem. I have a light next to my bed which I turn on before I turn >the alarm off. I then find it difficult to go back to sleep... I have problems to sleep in the evening but in the morning I'm so tired that I might even sleep under Boing landing lights! >It's in the name, definitely. Who knows, they may do it a better way than >myself. But then, I may do it better than them. There's only one way to find >out. :) Yeah, and remember, there is no try! ;-) >Until I find out what a PocketBG is, I deny that. ;) A "Pocket Bill Gates" - I thought it would be a nice analogy to PocketGB ;-) >Damn, damn, and thrice damn! Damn you for you and your strong beer festival >(stark beer at 12 percent proof served in a mass - or 1 litre glass)... That's strong stuff indeed... >Yes. But then I've never seen a program with one large block that never >jumps or has any compares at all... I didn't say that you have no jumps at all. Even NB only counts unconditional jumps as block terminators, which means that you theoretically could have thousands of conditional branches in the block! >I don't mind them. Besides, you'd never get them. Or I'd offend someone. ;) >A joke... a joke... Wait, I know one: French people. ;) Aw, that's a bad one... How about: What do a mobile and a suppository share? Both are for arseholes! ;-) >> >That's true - which shows why the need exists for a definitive >> >statement. >Good. Then I'll provide everyone with one this weekend. :) Great! >No, you can't call it a retranslator if it doesn't... retranslate. :) Indeed, so it was your fault ;-) >I do now, yes. I'll mention it - just to confuse many more people. :) Yeah, do that. >> The German equivalent would be "Angstschrei", but these are still only >> 4 consonants in a row: "ng" is one, "st" are two, and "sch" is one. >I need to learn more about German. I bet so! >In English, a constonant is any letter which isn't a vowel (i.e. a, e, i, o and u). You forgot about the semi-vowels "w" and "y". And in German we have the mutants (Umlaute) ä, ö, ü. >Why is "ng" only one consonant? Maybe I should note that I'm talking about phonemes (sounds) and not letters, since the classification of vowels and consonants only belongs to sounds. You also have that "ng" sound English, since the IPA sign (looks a bit like a combination of "n" and the lower part of "g") isn't part of the ASCII set I'll use "N" for that sound. Another sign I'll need is that for "sh" (German "sch"), where the official sign looks like an integral sign, so I'll use "S" for that one. One example where you have the letters "n+g" but only one sound is "king", pronounced [kiN]. Another example where "n+g" are two consonants is "English", pronounced [iNgliS]. The German word "Angstschrei" is pronounced [aNstSrai]. Oops, seems I counted wrong and the word really contains 5 consonats in a row, shame on me! I hope you enjoyed the phonetics excourse ;-) >After God had created Adam and Eve he left them alone. Anyway, eventually >they had figured out how to have sex and after they'd finished, Adam went >for a walk. God met up with him and asked him how it went. Adam told him it >was good and Eve had enjoyed it too. Then God asked Adam where Eve was. >Adam told him that she was down in the river washing herself. God moaned to >himself "Oh no! Now all the fish will smell like that!" Not bad ;-) But it's also as sick as mine ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 10:21:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA21014 for dynarec-outgoing; Thu, 23 Mar 2000 10:21:04 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 19:15:18 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >It's really difficult to do a complet translation prior to runtime, and I know >what I'm saying I'm working with it :) BTW, I stumbled across an IBM project called DAISY while searching for "dynamic compilation". Is this the same tool you work with? >Store the result in a file is not suited for emulation, you don't want to have >files for all ROMs you have ever runned. Well, FX!32 does that for every Intel binary excuted on an Alpha-NT system! But I agree with you that it's not the approach we should take. Nevertheless we have to mention it if only for completeness. >With code templates you can't do optimizations or only a very few optimizations >so it isn't, i thought, so fast than dynamic code generation. Indeed. And it's so ridgid that you run into problems when you want to change or optimise the code. >I think this >could be something similar to threaded interpreting but without having to >call/jump to a function. I haven't thought of that one yet, but basically you are right. >> With this classification NB's method could be called: >> volatile code-emitting dynamic translation without self-modifying code >> detection (yet) >Very complet, pretty large ;) >But it's correct, if you want to define something you have to say what it is. It's certainly not a term to use when you ask someone, "Hey, do you already know Neil's great ENTER TERM HERE?" But if you want to make clear how it works without leaving out important parts or having to tell the whole story this is the only way to go. >If we would have created a small name for this tech, and everybody knows what >the name means, we could use this name. Maybe you can come up with a nifty term? >> BTW, I even forgot one classification: >> * TLB vs. TransMap... >Oh, you forget this also ... Hehe, you invented the term and forgot about it ;-) >Perhaps another would be with profiling or without profiling (gathering >information to know where, what and how optimize in translated code). >And just another with a mixed interpreter or without an interpreter (for >self-modyfing code and others things). The second one is a prerequisite for the first one. HotSpot and FX!32 perform profiling, but both do it during the interpretation phase. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 10:33:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA21086 for dynarec-outgoing; Thu, 23 Mar 2000 10:33:37 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 13:37:34 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: In-Reply-To: X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Thu, 23 Mar 2000 18:56:41 CET, "Michael Koenig" wrote: >on a crappy ATI card Hey now! I take exception to that. :) ATI makes some pretty good hardware. -- ------------------------------------------------------------------------------ |Jack Follansbee | Disclaimer: Unless otherwise explicitly stated, | |Senior Software Engineer | these opinions are mine alone and do not | |ATI Research Inc. | represent the opinions of ATI, it's stockholders | |http://www.atitech.ca | or management, blah, blah, blah. | ------------------------------------------------------------------------------ --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 11:44:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA21346 for dynarec-outgoing; Thu, 23 Mar 2000 11:44:49 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 20:45:36 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >>on a crappy ATI card >Hey now! I take exception to that. :) It seems that it just needs flames to get the lurkers out of the shadows ;-) >ATI makes some pretty good hardware. Well, I got the picture that all "complete PCs" have a ATI card because they are so cheap. I don't know about the newer 32MB Xpert cards, but the old RagePros seemed like crap to me, at least for 3D performance. They seem to be pretty good for 2D stuff, but then they shouldn't call them 3D cards... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 12:29:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA21531 for dynarec-outgoing; Thu, 23 Mar 2000 12:29:02 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <000101bf9505$7f8bb2a0$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 21:09:58 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, >>Hmm. I've said it before and I'll say it again: I hate PR people. If >>you >>need to lie to sell a product, you shouldn't sell the product. And a >>PR guy >>is never wrong (as you've just mentioned). Hmm... > >Yeah, another topic where we share the same opinion... Good. Because I'd blast you to pieces if you disagreed with me on this one - too many bad experiences with PR people. :) >>But you've got a straight PC as well, haven't you? > >Yeah, a Deschutes-350 with 256MB RAM. But I worked on the PC card for >some time, and even did my whole internet stuff on Win95 although it >was pretty slow. Not bad, not bad. >>Impressive. Seen the game "Unreal"? > >Of course! Good. Nice graphics, poor game. :) >>The software renderer in that is also >>damned impressive. It basically emulates a full 3D-card - and does a >>pretty good job of it as well... > >I have a Banshee, so Unreal runs perfectly on my PC, but I saw it once >on a crappy ATI card and Unreal's software mode was certainly better >than that of Half-Life. 3Dfx card. Runs perfectly. Banshee. Hmm. Hmm. ;) No, I just like having unblurred graphics, nice dithering (if I even use 16-bit!) and not having a card for which owners are now thought to be dumb (from all the "my card is better than yours" times). >>They... them... You know... them... ;) > >Ah, *them*! Why didn't you say that in the beginning? B...b...but I did! ;) >>Same problem. I have a light next to my bed which I turn on before I >>turn the alarm off. I then find it difficult to go back to sleep... > >I have problems to sleep in the evening but in the morning I'm so tired >that I might even sleep under Boing landing lights! Same here, but I find money is a good incentive to get out of bed. But emulation is a good incentive not to GO to bed, so I tend to burn the candle at both ends and hope the wax doesn't drip on me... >>Until I find out what a PocketBG is, I deny that. ;) > >A "Pocket Bill Gates" - I thought it would be a nice analogy to >PocketGB ;-) Bill Gates in your pocket? That's got to be a nightmare. I mean... imagine trying to walk! ;)) >>Damn, damn, and thrice damn! Damn you for you and your strong beer >>festival (stark beer at 12 percent proof served in a mass - or 1 litre >>glass)... > >That's strong stuff indeed... Yes indeed. And it appears that I can easily outdrink everyone here (all the other praktikants)- which is a bad thing because now they'll all try to outdrink me. Damn! >>Yes. But then I've never seen a program with one large block that >>never jumps or has any compares at all... > >I didn't say that you have no jumps at all. Even NB only counts >unconditional jumps as block terminators, which means that you >theoretically could have thousands of conditional branches in the >block! No, AFAIK, NB looks for any conditional or unconditional jump as a block terminator. Only one guy can verify this, though. Neil, Neil, wherefore art though, Neil? Deny thy father and refuse thy nam... anyway. :) >Aw, that's a bad one... >How about: What do a mobile and a suppository share? >Both are for arseholes! ;-) And you call MY joke bad! ;) >>No, you can't call it a retranslator if it doesn't... retranslate. :) > >Indeed, so it was your fault ;-) No, I was the one who said it isn't a retranslator. Stop trying to confuse me! ;) >>In English, a constonant is any letter which isn't a vowel (i.e. a, e, >>i, o and u). > >You forgot about the semi-vowels "w" and "y". And in German we have the >mutants (Umlaute) ä, ö, ü. In English or in German? German I hope or else I'm lacking something. Something which is rather scary about English and that many people don't actually know is that the letter "h" is a semi-vowel. So, gramatically, it is wrong to say something like "a horse" - you should say "an horse". Really, I'm not joking! However, this doesn't get taught to us, only if you take a specialised degree in English. I think it sounds better if we forget about it being a semi-vowel, to be honest... >Maybe I should note that I'm talking about phonemes (sounds) and not >letters, since the classification of vowels and consonants only belongs >to sounds. Hmm. The classification of vowels and constonants belong to the alphabet and not sounds. Phonems belong to phonetics - the science of sound. >The German word "Angstschrei" is pronounced [aNstSrai]. Oops, seems I >counted wrong and the word really contains 5 consonats in a row, shame >on me! Tut! Don't they teach you how to count in Germany? ;) They taught it wrong anyway. You shouldn't say "5 and 50", you should say "55"! ;) >Not bad ;-) Thanks. It's trying to remember them that's difficult. ;) >But it's also as sick as mine ;-) Yes, I know. But it's trying to find a joke that won't offend. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 12:35:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA21564 for dynarec-outgoing; Thu, 23 Mar 2000 12:35:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <001001bf9506$612dd800$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 21:28:30 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >>on a crappy ATI card > >Hey now! I take exception to that. :) > > It seems that it just needs flames to get the lurkers out of the > shadows ;-) It seems to be true. Let's test this theory: Your country sucks! If you agree or disagree, let us know. ;) > >ATI makes some pretty good hardware. > > Well, I got the picture that all "complete PCs" have a ATI card because > they are so cheap. Yes. It's either ATi, S3 or SiS. And I've just GOT to create a joke support page for the SiS cards. Great cards in terms of features - they're just slower than an ATi Rage II. And that says something. :)) > I don't know about the newer 32MB Xpert cards, but the old RagePros > seemed like crap to me, at least for 3D performance. They seem to be > pretty good for 2D stuff, but then they shouldn't call them 3D cards... If they can do 3D then can call them that. But if it doesn't work too well, then... :-/ I mean, look at the S3 ViRGE series of cards. Great 2D and they had 3D. The 3D just sucked some serious ass. Then ATi released the RageIIs. They also sucked ass. It was fun for a while. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 12:38:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA21576 for dynarec-outgoing; Thu, 23 Mar 2000 12:38:34 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 23 Mar 2000 12:38:33 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <000101bf9505$7f8bb2a0$0a909090@okay> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >>need to lie to sell a product, you shouldn't sell the product. And a > >>is never wrong (as you've just mentioned). Hmm... > >Yeah, another topic where we share the same opinion... > Good. Because I'd blast you to pieces if you disagreed with me on this one - > too many bad experiences with PR people. :) I think what you mean is a PR spin doctor rather than a public relations person in general. I've seen the other side of it - where engineers who should not be dealing with people wind up queering a deal. PR People do serve a purpose. PR Spin doctors are an entirely different matter. > 3Dfx card. Runs perfectly. Banshee. Hmm. Hmm. ;) Bleugh. TNT2 way better. ;-) > No, I just like having unblurred graphics, nice dithering (if I even use > 16-bit!) and not having a card for which owners are now thought to be dumb > (from all the "my card is better than yours" times). Hehehehe. Oh yeah! > >I have problems to sleep in the evening but in the morning I'm so tired > >that I might even sleep under Boing landing lights! > Same here, but I find money is a good incentive to get out of bed. But > emulation is a good incentive not to GO to bed, so I tend to burn the candle > at both ends and hope the wax doesn't drip on me... Money doesn't motivate me anymore because I have enough of it that I can be an ass. ;-) Turns out it works well for me, so I don't complain too much. > Bill Gates in your pocket? That's got to be a nightmare. I mean... imagine > trying to walk! ;)) Or what he'd do to your schlong. You'd have a Windows icon when you were flaccid, and a full blown startup screen when you were erect! ;-) > >I didn't say that you have no jumps at all. Even NB only counts > >unconditional jumps as block terminators, which means that you > >theoretically could have thousands of conditional branches in the > >block! > No, AFAIK, NB looks for any conditional or unconditional jump as a block > terminator. Only one guy can verify this, though. Neil, Neil, wherefore art > though, Neil? Deny thy father and refuse thy nam... anyway. :) Only look for unconditional jump as a block terminator. Keeps the code from being too fragmented. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 12:48:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA21638 for dynarec-outgoing; Thu, 23 Mar 2000 12:48:08 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 15:52:00 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: <001001bf9506$612dd800$0a909090@okay> In-Reply-To: <001001bf9506$612dd800$0a909090@okay> X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Thu, 23 Mar 2000 21:28:30 +0100, "Neil Griffiths" wrote: >Hi, > > >> >>on a crappy ATI card >> >Hey now! I take exception to that. :) >> >> It seems that it just needs flames to get the lurkers out of the >> shadows ;-) > >It seems to be true. Let's test this theory: > >Your country sucks! I don't own a country, so it can't suck. ;-) >If you agree or disagree, let us know. ;) > >> >ATI makes some pretty good hardware. >> >> Well, I got the picture that all "complete PCs" have a ATI card because >> they are so cheap. For the longest time this has typically been a Rage II. Very few integrated systems used a Pro. Still. It's been three years since the Pro came out and we still ship beaucoup Rage IIs. Go figure. >Yes. It's either ATi, S3 or SiS. And I've just GOT to create a joke support >page for the SiS cards. Great cards in terms of features - they're just >slower than an ATi Rage II. And that says something. :)) > >> I don't know about the newer 32MB Xpert cards, but the old RagePros >> seemed like crap to me, at least for 3D performance. They seem to be >> pretty good for 2D stuff, but then they shouldn't call them 3D cards... > >If they can do 3D then can call them that. But if it doesn't work too well, >then... :-/ > >I mean, look at the S3 ViRGE series of cards. Great 2D and they had 3D. The >3D just sucked some serious ass. Then ATi released the RageIIs. They also >sucked ass. It was fun for a while. :) I'll give you that - the Rage II sucked. The Pro, despite accusations to the contrary, doesn't really suck, it's just not *quite* powerful enough to pull off OGL without a hitch. D3D is pretty good on the Pro. And the 128 does kick some major bootay. You'll definitely want to CYA when the new chip ships. More than that I cannot say. :) -- Jack ---- The road to truth and enlightenment is long... be sure to bring a snack and something to drink - Seen on a bumper sticker --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 13:24:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA21815 for dynarec-outgoing; Thu, 23 Mar 2000 13:24:09 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <000f01bf9506$605b45c0$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 21:25:16 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >on a crappy ATI card > > Hey now! I take exception to that. :) > ATI makes some pretty good hardware. I agree. It's just that they release it several months too late... :-/ For instance, ATi were the only people with motion compensation in their cards for years. But they were always behind when 3D came along... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 13:42:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA21929 for dynarec-outgoing; Thu, 23 Mar 2000 13:42:32 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 22:35:15 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >>Yeah, a Deschutes-350 with 256MB RAM. >Not bad, not bad. The RAM is absolutely enough, but the CPU is beginning to be slow... >>>Impressive. Seen the game "Unreal"? >Good. Nice graphics, poor game. :) Yeah, I never finished it. Jedi Knight is the other way round, the graphics aren't that good but the gameplay is cool. >3Dfx card. Runs perfectly. Banshee. Hmm. Hmm. ;) Didn't you get enough sleep again? Or have you turned into a parrot? ;- ) >No, I just like having unblurred graphics, nice dithering (if I even use >16-bit!) and not having a card for which owners are now thought to be dumb >(from all the "my card is better than yours" times). Well, it was the best card when I bought it and I had no need for a better one yet. >B...b...but I did! ;) You really seem to have a language problem. >Same here, but I find money is a good incentive to get out of bed. Not for me... Money isn't everything! But without money anything is nothing... >But emulation is a good incentive not to GO to bed, Too true... >so I tend to burn the candle >at both ends and hope the wax doesn't drip on me... Now you've lost me... >Bill Gates in your pocket? That's got to be a nightmare. I mean... imagine >trying to walk! ;)) Erm, I meant that you would be a small Bill Gates (a PocketBG) when you want to rule the world. But I don't even want to imagine it have Bill Gates in my pocket - maybe under my shoes, but not in my pocket! >Yes indeed. And it appears that I can easily outdrink everyone here (all the >other praktikants)- which is a bad thing because now they'll all try to >outdrink me. Damn! Hehe, poor Neil ;-) >No, AFAIK, NB looks for any conditional or unconditional jump as a block >terminator. Only one guy can verify this, though. Neil, Neil, wherefore art >though, Neil? Deny thy father and refuse thy nam... anyway. :) Take a look at the code and you'll know I'm right. >And you call MY joke bad! ;) Hehe. Didn't you like that one? >No, I was the one who said it isn't a retranslator. Stop trying to confuse >me! ;) Shall I remind you that you are the one who confuses all the others? Maybe you confused yourself this time? ;-) >In English or in German? German I hope or else I'm lacking something. German has mutants, and English has the semi-vowels [w] and [j]. >Something which is rather scary about English and that many people don't >actually know is that the letter "h" is a semi-vowel. So, gramatically, it >is wrong to say something like "a horse" - you should say "an horse". >Really, I'm not joking! However, this doesn't get taught to us, only if you >take a specialised degree in English. I think it sounds better if we forget >about it being a semi-vowel, to be honest... I didn't hear that before, but it sounds quite right with that example, "an horse" is much more fluently than "a horse". >Hmm. The classification of vowels and constonants belong to the alphabet and >not sounds. Phonems belong to phonetics - the science of sound. Wrong, our alphabet is totally arbitrary, but the Sanscrit 'alphabet' is ordered by vowels and consonants. The difference between vowels and consonants is articulatory and acoustic, which is why these two terms belong to phonetics: * vowel - no interference with the air flow - no acoustic noise, harmonic waves * semi-vowel - no interference with air flow - cannot be the core of a syllable * consonant - air flow is hindered - acoustic noise >Tut! Don't they teach you how to count in Germany? ;) Count? What's that? Can I eat that? >They taught it wrong anyway. You shouldn't say "5 and 50", you should say >"55"! ;) I agree with you on that one! >Yes, I know. But it's trying to find a joke that won't offend. :)) Well, we have no girls on the list... Hopefully no female lurkers... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 13:42:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA21936 for dynarec-outgoing; Thu, 23 Mar 2000 13:42:33 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 22:42:15 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I think what you mean is a PR spin doctor rather than a public relations >person in general. Well, I the case where I had to change the version number of a program just one day before the CeBIT was an error by our PR guys! >I've seen the other side of it - where engineers who >should not be dealing with people wind up queering a deal. PR People do >serve a purpose. PR Spin doctors are an entirely different matter. BTW, what do you mean by PR spin doctor? >Bleugh. TNT2 way better. ;-) But wasn't available at that time I bought my PC. >Or what he'd do to your schlong. Although I didn't hear the word before I know what it means... BTW, is it a Jiddish word? Sounds like it. >You'd have a Windows icon when you were >flaccid, and a full blown startup screen when you were erect! ;-) Hehe. And you'd have to push the Start button to pee ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 13:55:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA22027 for dynarec-outgoing; Thu, 23 Mar 2000 13:55:47 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <000301bf9511$a48622a0$0a909090@okay> From: "Neil Griffiths" To: References: <001001bf9506$612dd800$0a909090@okay> Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 22:13:20 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Your country sucks! > > I don't own a country, so it can't suck. ;-) Damn! My plan failed... ;) > >> Well, I got the picture that all "complete PCs" have a ATI card because > >> they are so cheap. > > For the longest time this has typically been a Rage II. Very few > integrated systems used a Pro. Still. It's been three years since the > Pro came out and we still ship beaucoup Rage IIs. Go figure. ATi is a company that likes money. I think I've found your explanation. ;) > >I mean, look at the S3 ViRGE series of cards. Great 2D and they had 3D. The > >3D just sucked some serious ass. Then ATi released the RageIIs. They also > >sucked ass. It was fun for a while. :) > > I'll give you that - the Rage II sucked. The Pro, despite accusations > to the contrary, doesn't really suck, it's just not *quite* powerful > enough to pull off OGL without a hitch. D3D is pretty good on the Pro. > And the 128 does kick some major bootay. You'll definitely want to CYA > when the new chip ships. More than that I cannot say. :) The 128 MAXX should certainly kick arse. I don't know, not seen it, but it should certainly have some fillrate there. Not sure what you mean by CYA yet. But maybe you can tell me? :) The ATi Pro wasn't so bad - I just found HL unplayable in it. I remember putting my old ViRGE /DX next to an ATi RageIIc and testing. The ViRGE /DX won, that's how bad it was! The Pro was better, but at that time I had a Savage3D and I wouldn't go backwards in performance... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 13:55:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA22034 for dynarec-outgoing; Thu, 23 Mar 2000 13:55:54 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <000201bf9511$a3612aa0$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 22:08:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I think what you mean is a PR spin doctor rather than a public relations > person in general. I've seen the other side of it - where engineers who > should not be dealing with people wind up queering a deal. PR People do > serve a purpose. PR Spin doctors are an entirely different matter. PR people do serve a purpose. To lie about products in order to sell it. I've never once see a PR company tell the truth. Never. > > 3Dfx card. Runs perfectly. Banshee. Hmm. Hmm. ;) > > Bleugh. TNT2 way better. ;-) Let's be fair. Most things are. ;) The one thing that the V2 had going for it was its twin TMU engines. So what do 3Dfx do? Remove one. Oh dear... Okay, they added 2D - but they made the 3D crap! > > No, I just like having unblurred graphics, nice dithering (if I even use > > 16-bit!) and not having a card for which owners are now thought to be dumb > > (from all the "my card is better than yours" times). > > Hehehehe. Oh yeah! I like playing my games at full speed with all options on. I've only recently got that, mind. Still, I beat your Q3 and UT performance. ;p But then... you get better support than I do from S3. :-/ > > Same here, but I find money is a good incentive to get out of bed. But > > emulation is a good incentive not to GO to bed, so I tend to burn the candle > > at both ends and hope the wax doesn't drip on me... > > Money doesn't motivate me anymore because I have enough of it that I can > be an ass. ;-) Turns out it works well for me, so I don't complain too > much. Well, I'm a poor student who's just starting on the old money making. I need all the motivation I can get. :) > > Bill Gates in your pocket? That's got to be a nightmare. I mean... imagine > > trying to walk! ;)) > > Or what he'd do to your schlong. You'd have a Windows icon when you were > flaccid, and a full blown startup screen when you were erect! ;-) It'd certainly bring new meaning to "Blue Screen Of Death", that's for sure! ;)) > > No, AFAIK, NB looks for any conditional or unconditional jump as a block > > terminator. Only one guy can verify this, though. Neil, Neil, wherefore art > > though, Neil? Deny thy father and refuse thy nam... anyway. :) > > Only look for unconditional jump as a block terminator. Keeps the code > from being too fragmented. Okay, I'm wrong. What happens if you reach a "jz a" instruction? Even though that's not possible... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 14:00:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA22083 for dynarec-outgoing; Thu, 23 Mar 2000 14:00:14 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 17:04:05 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: <001001bf9506$612dd800$0a909090@okay> <000301bf9511$a48622a0$0a909090@okay> In-Reply-To: <000301bf9511$a48622a0$0a909090@okay> X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Thu, 23 Mar 2000 22:13:20 +0100, "Neil Griffiths" wrote: >> And the 128 does kick some major bootay. You'll definitely want to CYA >> when the new chip ships. More than that I cannot say. :) > >The 128 MAXX should certainly kick arse. I don't know, not seen it, but it >should certainly have some fillrate there. Not sure what you mean by CYA >yet. But maybe you can tell me? :) Cover yer ass (arse?) - so it doesn't get kicked. :) -- Jack ---- The road to truth and enlightenment is long... be sure to bring a snack and something to drink - Seen on a bumper sticker --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 14:10:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA22149 for dynarec-outgoing; Thu, 23 Mar 2000 14:10:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <001501bf9513$b628aee0$0a909090@okay> From: "Neil Griffiths" To: References: <001001bf9506$612dd800$0a909090@okay> <000301bf9511$a48622a0$0a909090@okay> Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 23:03:21 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >The 128 MAXX should certainly kick arse. I don't know, not seen it, but it > >should certainly have some fillrate there. Not sure what you mean by CYA > >yet. But maybe you can tell me? :) > > Cover yer ass (arse?) - so it doesn't get kicked. :) Oh. :) And yes, ass=arse. But arse is British. Ass means donkey to us. But hey, you think that "fanny" means "butt". Not to us. If you went up to a girl and said that she had a nice fanny, she would kill you. Opposite side of the body, you see... :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 14:21:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA22200 for dynarec-outgoing; Thu, 23 Mar 2000 14:21:33 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 17:25:26 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: <8d6ldssgaeu0i7ohmf2gate5edvt2qrv3k@4ax.com> References: <001001bf9506$612dd800$0a909090@okay> <000301bf9511$a48622a0$0a909090@okay> <001501bf9513$b628aee0$0a909090@okay> In-Reply-To: <001501bf9513$b628aee0$0a909090@okay> X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Thu, 23 Mar 2000 23:03:21 +0100, "Neil Griffiths" wrote: >But hey, you >think that "fanny" means "butt". Not to us. If you went up to a girl and >said that she had a nice fanny, she would kill you. Opposite side of the >body, you see... :)) So I take it there aren't too many chicks named Fanny over there? -- Jack ---- The road to truth and enlightenment is long... be sure to bring a snack and something to drink - Seen on a bumper sticker --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 14:24:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA22236 for dynarec-outgoing; Thu, 23 Mar 2000 14:24:34 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Thu, 23 Mar 2000 23:25:03 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> >The 128 MAXX should certainly kick arse. I don't know, not seen it, but >it >> >should certainly have some fillrate there. Not sure what you mean by CYA >> >yet. But maybe you can tell me? :) >> Cover yer ass (arse?) - so it doesn't get kicked. :) >Oh. :) >And yes, ass=arse. But arse is British. Ass means donkey to us. But hey, you >think that "fanny" means "butt". Not to us. If you went up to a girl and >said that she had a nice fanny, she would kill you. Opposite side of the >body, you see... :)) Hmm, this has started as a dynarec list. Then we added music, language and compilers. Now we've reached graphics cards and anatomy... and I still learn new words... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 23:29:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA24385 for dynarec-outgoing; Thu, 23 Mar 2000 23:29:04 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003240732.IAA18273@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: from Michael Koenig at "Mar 23, 2000 07:15:18 pm" To: dynarec@synthcom.com Date: Fri, 24 Mar 2000 08:32:03 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >It's really difficult to do a complet translation prior to runtime, > and I know > >what I'm saying I'm working with it :) > > BTW, I stumbled across an IBM project called DAISY while searching for > "dynamic compilation". Is this the same tool you work with? > No, it's something called Dixie. I think I give you an address with the documentation ... But really doesn't matter, it's as slow as hell. > >Perhaps another would be with profiling or without profiling > (gathering > >information to know where, what and how optimize in translated code). > >And just another with a mixed interpreter or without an interpreter > (for > >self-modyfing code and others things). > > The second one is a prerequisite for the first one. HotSpot and FX!32 > perform profiling, but both do it during the interpretation phase. > Are you sure? Shade perfoms profiling and it don't have an interpreter ;) But perform profiling in translated code would be something more difficult than in an interpreter and then you would have to retranslate. But I think it's possible to do this. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 23:50:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA24455 for dynarec-outgoing; Thu, 23 Mar 2000 23:50:42 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB19DA.5C917DEB@eurocopter.de> Date: Fri, 24 Mar 2000 08:31:38 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Not bad, not bad. > > The RAM is absolutely enough, but the CPU is beginning to be slow... Oh. Well, I bought a Celeron 300A last year in January. Overclocked it to 450MHz and it still works fine. That was absolutely the best deal I have ever got on a piece of computer hardware! > >>>Impressive. Seen the game "Unreal"? > >Good. Nice graphics, poor game. :) > > Yeah, I never finished it. Jedi Knight is the other way round, the > graphics aren't that good but the gameplay is cool. Yes, I agree. I played Jedi Knight right to the end and then started on MOTS. The new game "Obi-Wan" (or whatever it's called) should hopefully be much cooler with better gameplay and better graphics. We'll see... > >3Dfx card. Runs perfectly. Banshee. Hmm. Hmm. ;) > >No, I just like having unblurred graphics, nice dithering (if I even > >use 16-bit!) and not having a card for which owners are now thought > >to be dumb (from all the "my card is better than yours" times). > > Well, it was the best card when I bought it and I had no need for a > better one yet. It was never the best card - ever - and so long as you're still happy with it, that's good. You obviously don't use it for 3D graphics too heavily because we're talking speeds that are only slightly better than an original Voodoo... > >B...b...but I did! ;) > > You really seem to have a language problem. Yes, my German. ;p > >Same here, but I find money is a good incentive to get out of bed. > > Not for me... > Money isn't everything! True. But it helps. :) > But without money anything is nothing... Don't understand that one, though. :) > >But emulation is a good incentive not to GO to bed, > > Too true... And when you're writing stuff too... > >so I tend to burn the candle > >at both ends and hope the wax doesn't drip on me... > > Now you've lost me... It's a saying. It means that you get up early and stay up late - burning the candle at both ends. > >Bill Gates in your pocket? That's got to be a nightmare. I mean... > imagine > >trying to walk! ;)) > > Erm, I meant that you would be a small Bill Gates (a PocketBG) when you > want to rule the world. But I don't even want to imagine it have Bill > Gates in my pocket - maybe under my shoes, but not in my pocket! I know what you meant, I'm just not going to admit it. Oh, damn, I already did... ;) > >Yes indeed. And it appears that I can easily outdrink everyone here > (all the > >other praktikants)- which is a bad thing because now they'll all try > to > >outdrink me. Damn! > > Hehe, poor Neil ;-) I'll just kill them with Vodka shots or something. :)) And then I can go back to REAL drinks. :) > >No, AFAIK, NB looks for any conditional or unconditional jump as a > block > >terminator. Only one guy can verify this, though. Neil, Neil, > wherefore art > >though, Neil? Deny thy father and refuse thy nam... anyway. :) > > Take a look at the code and you'll know I'm right. I couldn't when I wrote that, I was at work. I think. :) > >And you call MY joke bad! ;) > > Hehe. Didn't you like that one? I think I'd heard it before. > >No, I was the one who said it isn't a retranslator. Stop trying to > confuse > >me! ;) > > Shall I remind you that you are the one who confuses all the others? > Maybe you confused yourself this time? ;-) Hey, it's not my fault that I confuse everyone else! It's not my fault I'm sooooo much more intelligent than you! ;))) Actually, that's so funny it almost hurts. :)) > >In English or in German? German I hope or else I'm lacking something. > > German has mutants, and English has the semi-vowels [w] and [j]. No idea what you mean about the semi-vowels [w] and [j] - I've never heard this... > I didn't hear that before, but it sounds quite right with that example, > "an horse" is much more fluently than "a horse". Not to me, though, but that's probably because I'm not used to it. > >Hmm. The classification of vowels and constonants belong to the > alphabet and > >not sounds. Phonems belong to phonetics - the science of sound. > > Wrong, our alphabet is totally arbitrary, but the Sanscrit 'alphabet' > is ordered by vowels and consonants. > The difference between vowels and consonants is articulatory and > acoustic, which is why these two terms belong to phonetics: > * vowel > - no interference with the air flow > - no acoustic noise, harmonic waves > * semi-vowel > - no interference with air flow > - cannot be the core of a syllable > * consonant > - air flow is hindered > - acoustic noise Okay, but what about [c], [h], [q], [r], [s], [y] ? > >Tut! Don't they teach you how to count in Germany? ;) > > Count? What's that? Can I eat that? Maybe. I've heard that it involves taking a long walk off a short pier (erm... you probably won't know this word... Maybe clifftop as a replacement?). :) > >They taught it wrong anyway. You shouldn't say "5 and 50", you should > >say "55"! ;) > > I agree with you on that one! It's strange. All Germans seem to agree with me on this one. But no-one changes it! > >Yes, I know. But it's trying to find a joke that won't offend. :)) > > Well, we have no girls on the list... > Hopefully no female lurkers... Well, if there are, between us I believe we could have offended them. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 23:51:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA24464 for dynarec-outgoing; Thu, 23 Mar 2000 23:51:44 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB1B77.AA68BAD2@eurocopter.de> Date: Fri, 24 Mar 2000 08:38:31 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <001001bf9506$612dd800$0a909090@okay> <000301bf9511$a48622a0$0a909090@okay> <001501bf9513$b628aee0$0a909090@okay> <8d6ldssgaeu0i7ohmf2gate5edvt2qrv3k@4ax.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >But hey, you > >think that "fanny" means "butt". Not to us. If you went up to a girl and > >said that she had a nice fanny, she would kill you. Opposite side of the > >body, you see... :)) > > So I take it there aren't too many chicks named Fanny over there? You'd be right to think that. 100 years ago, maybe. Now, I don't know of a single girl named "Fanny" - and I think I know the reason for that too. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 23 23:52:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA24473 for dynarec-outgoing; Thu, 23 Mar 2000 23:52:09 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB1B35.EF2BFA3@eurocopter.de> Date: Fri, 24 Mar 2000 08:37:25 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >And yes, ass=arse. But arse is British. Ass means donkey to us. But > >hey, you think that "fanny" means "butt". Not to us. If you went up to > >a girl and said that she had a nice fanny, she would kill you. Opposite > >side of the body, you see... :)) > > Hmm, this has started as a dynarec list. > Then we added music, language and compilers. > Now we've reached graphics cards and anatomy... and I still learn new > words... Yes, I like this list too. ;) But hey, at least you get to learn all those words that you always wanted to when you learnt a foreign language. I remember when I was learning French how we'd exchange different words (swearing and other stuff) because it was all different. :) So, yes, I can swear in every language I know. :) Well, I don't know who brought up graphics cards (it could well have been me), but it was a bad thing to bring up. I follow the video card market and I have done for years. It's an interest of mine as I like 3D and want to end up in a job working with several 3D engines. As far as anatomy goes, sorry. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 00:08:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24511 for dynarec-outgoing; Fri, 24 Mar 2000 00:08:58 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003240811.JAA20169@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38DB19DA.5C917DEB@eurocopter.de> from Neil Griffiths at "Mar 24, 2000 08:31:38 am" To: dynarec@synthcom.com Date: Fri, 24 Mar 2000 09:11:51 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > >Not bad, not bad. > > > > The RAM is absolutely enough, but the CPU is beginning to be slow... > > Oh. Well, I bought a Celeron 300A last year in January. Overclocked it to > 450MHz and it still works fine. That was absolutely the best deal I have > ever got on a piece of computer hardware! > I have a 333 Mhz Pentium II overclocked to 350 Mhz (I only put bus speed to 100Mhz), 128 MB of RAM and an ugly i740 (i is for Intel) card that works sometimes and sometimes not. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 00:19:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24538 for dynarec-outgoing; Fri, 24 Mar 2000 00:19:18 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB23FB.1E29DE75@eurocopter.de> Date: Fri, 24 Mar 2000 09:14:51 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <200003240811.JAA20169@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Oh. Well, I bought a Celeron 300A last year in January. Overclocked it to > > 450MHz and it still works fine. That was absolutely the best deal I have > > ever got on a piece of computer hardware! > > I have a 333 Mhz Pentium II overclocked to 350 Mhz (I only put bus speed to > 100Mhz), 128 MB of RAM and an ugly i740 (i is for Intel) card that works > sometimes and sometimes not. Now the i740 was a really good card. However, Intel released it a little too late - the i740 was the fastest card around for 2 months and then the Savage4, TNT2 and Voodoo3 (2000/3000/3500) came out. Whatever, it was a new idea (store the framebuffer and everything else in memory and textures in main memory using AGP) which worked really well. Good fillrate and good graphics. Don't know about 2D speed though... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 00:26:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24553 for dynarec-outgoing; Fri, 24 Mar 2000 00:26:18 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 24 Mar 2000 00:26:17 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38D9E48F.EA0B1160@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > term) you could end up with the whole translation for small examples, > > which would then be static recompilation. > > I think the distiction isn't really that easy! > It's really difficult to do a complet translation prior to runtime, and I know > what I'm saying I'm working with it :) Not true, actually. If you know ahead of time and can precharge the dynamic recompiler (hehe) with information about all the branches and points of entry, you can recompile the entire thing ahead of time. And that's sorta dynamic/static recompilation. > > With this classification NB's method could be called: > > volatile code-emitting dynamic translation without self-modifying code > > detection (yet) VCEDTWSMCD! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 00:27:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24563 for dynarec-outgoing; Fri, 24 Mar 2000 00:27:33 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 24 Mar 2000 00:27:32 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38DA19DF.BB8B6219@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > they had figured out how to have sex and after they'd finished, Adam went > for a walk. God met up with him and asked him how it went. Adam told him it > was good and Eve had enjoyed it too. Then God asked Adam where Eve was. > Adam told him that she was down in the river washing herself. God moaned to > himself "Oh no! Now all the fish will smell like that!" LEave it to the Brits to get the punch line wrong. ;-) It's supposed to go: "Oh no! Now how am I going to get that smell out of the fish?!?!?!" Makes God a bit more manic depressive! -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 00:30:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24583 for dynarec-outgoing; Fri, 24 Mar 2000 00:30:33 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003240833.JAA14207@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38DB23FB.1E29DE75@eurocopter.de> from Neil Griffiths at "Mar 24, 2000 09:14:51 am" To: dynarec@synthcom.com Date: Fri, 24 Mar 2000 09:33:20 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > Oh. Well, I bought a Celeron 300A last year in January. Overclocked it to > > > 450MHz and it still works fine. That was absolutely the best deal I have > > > ever got on a piece of computer hardware! > > > > I have a 333 Mhz Pentium II overclocked to 350 Mhz (I only put bus speed to > > 100Mhz), 128 MB of RAM and an ugly i740 (i is for Intel) card that works > > sometimes and sometimes not. > > Now the i740 was a really good card. However, Intel released it a little > too late - the i740 was the fastest card around for 2 months and then the > Savage4, TNT2 and Voodoo3 (2000/3000/3500) came out. > > Whatever, it was a new idea (store the framebuffer and everything else in > memory and textures in main memory using AGP) which worked really well. > Good fillrate and good graphics. Don't know about 2D speed though... Ok, in Direct3D works well, not as fast as a TNT or a Vodoo2 but works, but it had a poor OpenGl support in the first drivers versions and now works but not as well as I would like. For exemple I played Unreal in softmode (impressive softmode !!) because OpenGl version didn't work. Another problem was I had only 64 MB of memory (I bought some more last month) and I had to use 32MB for AGP memory so games usually did memory swapping. But It doesn't matter, it was the best choice (price/quality) when I bought my computer :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 00:31:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24603 for dynarec-outgoing; Fri, 24 Mar 2000 00:31:41 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 24 Mar 2000 00:31:40 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <001501bf9513$b628aee0$0a909090@okay> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > >The 128 MAXX should certainly kick arse. I don't know, not seen it, but > > >should certainly have some fillrate there. Not sure what you mean by CYA > > >yet. But maybe you can tell me? :) > > Cover yer ass (arse?) - so it doesn't get kicked. :) > And yes, ass=arse. But arse is British. Ass means donkey to us. But hey, you > think that "fanny" means "butt". Not to us. If you went up to a girl and > said that she had a nice fanny, she would kill you. Opposite side of the > body, you see... :)) You dumb Brits! ;-) If you already have a name for a donkey, why do you use ass? ;-) Actually, my heritage is British... parents are from Kent... -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 00:35:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24620 for dynarec-outgoing; Fri, 24 Mar 2000 00:35:14 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003240838.JAA30993@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: from Neil Bradley at "Mar 24, 2000 00:26:17 am" To: dynarec@synthcom.com Date: Fri, 24 Mar 2000 09:38:00 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > term) you could end up with the whole translation for small examples, > > > which would then be static recompilation. > > > I think the distiction isn't really that easy! > > It's really difficult to do a complet translation prior to runtime, and I know > > what I'm saying I'm working with it :) > > Not true, actually. If you know ahead of time and can precharge the > dynamic recompiler (hehe) with information about all the branches and > points of entry, you can recompile the entire thing ahead of time. And > that's sorta dynamic/static recompilation. > But how do you get this information about all this branches. You have to execute all code or perhaps do a really slow analysis of code and sometimes there are pieces of code hard to reach. > > > With this classification NB's method could be called: > > > volatile code-emitting dynamic translation without self-modifying code > > > detection (yet) > > VCEDTWSMCD! ;-) > Traduccion dinamica con generacion de codigo, volatil y sin deteccion de codigo automodificable (todavia). TDGCVDCA in spanish or TraDiGeCoVoDeCoAu ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 00:36:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24629 for dynarec-outgoing; Fri, 24 Mar 2000 00:36:34 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 24 Mar 2000 00:36:33 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >I think what you mean is a PR spin doctor rather than a public > >person in general. > Well, I the case where I had to change the version number of a program > just one day before the CeBIT was an error by our PR guys! I mean useless, make everything sound wonderful and lie about everything spin doctors. Ones who will make a house burning down sound like a good thing. > >I've seen the other side of it - where engineers who > >should not be dealing with people wind up queering a deal. PR People > >serve a purpose. PR Spin doctors are an entirely different matter. > BTW, what do you mean by PR spin doctor? Know what a spin doctor is? Someone who takes a really bad situation or piss poor position (I.E. Apple computer corporation is FAMOUS for stretching the truth in this manner) and twisting around the presentation to make it sound much better than it really is. > >Bleugh. TNT2 way better. ;-) > But wasn't available at that time I bought my PC. I guess you're not like me. If I see a new piece of hardware that I want/like, I chuck the old stuff quick! > >Or what he'd do to your schlong. > Although I didn't hear the word before I know what it means... > BTW, is it a Jiddish word? Sounds like it. Dunno. I think Schlonga means Snake, doesn't it? In German? > >You'd have a Windows icon when you were > >flaccid, and a full blown startup screen when you were erect! ;-) > Hehe. And you'd have to push the Start button to pee ;-) And ctrl-alt-delete when you wanted to take a dump! -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 00:39:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24639 for dynarec-outgoing; Fri, 24 Mar 2000 00:39:21 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 24 Mar 2000 00:39:20 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <200003240838.JAA30993@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Not true, actually. If you know ahead of time and can precharge the > > dynamic recompiler (hehe) with information about all the branches and > > points of entry, you can recompile the entire thing ahead of time. And > > that's sorta dynamic/static recompilation. > But how do you get this information about all this branches. You have to > execute all code or perhaps do a really slow analysis of code and sometimes > there are pieces of code hard to reach. Easy, you precharge the recompiler up front! That requires a bit of examination of the code, but it's probably very little work to do. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 00:46:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24665 for dynarec-outgoing; Fri, 24 Mar 2000 00:46:26 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003240849.JAA01766@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: from Neil Bradley at "Mar 24, 2000 00:39:20 am" To: dynarec@synthcom.com Date: Fri, 24 Mar 2000 09:49:22 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > Not true, actually. If you know ahead of time and can precharge the > > > dynamic recompiler (hehe) with information about all the branches and > > > points of entry, you can recompile the entire thing ahead of time. And > > > that's sorta dynamic/static recompilation. > > > But how do you get this information about all this branches. You have to > > execute all code or perhaps do a really slow analysis of code and sometimes > > there are pieces of code hard to reach. > > Easy, you precharge the recompiler up front! That requires a bit of > examination of the code, but it's probably very little work to do. > I think I'm not understanding you ... :( Perhaps if you explain a bit more. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 00:49:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24679 for dynarec-outgoing; Fri, 24 Mar 2000 00:49:49 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 24 Mar 2000 00:49:48 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <200003240849.JAA01766@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Easy, you precharge the recompiler up front! That requires a bit of > > examination of the code, but it's probably very little work to do. > I think I'm not understanding you ... :( Perhaps if you explain a bit > more. You say "Dude, righteous dude of recompilerdom... here's a list of addresses or "entry points" that you should attempt to recompile before trying to execute anything." The recompiler would start recompiling at those entry points until it runs through and recompiles the entire call tree. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 01:02:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24756 for dynarec-outgoing; Fri, 24 Mar 2000 01:02:19 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB2E5B.EDF9DF4E@eurocopter.de> Date: Fri, 24 Mar 2000 09:59:07 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Leave it to the Brits to get the punch line wrong. ;-) It's supposed to > go: > > "Oh no! Now how am I going to get that smell out of the fish?!?!?!" > > Makes God a bit more manic depressive! Yeah, but that was from memory. That's not bad for a joke you haven't heard in ages. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 01:07:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24768 for dynarec-outgoing; Fri, 24 Mar 2000 01:07:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB2EF6.78AD1D25@eurocopter.de> Date: Fri, 24 Mar 2000 10:01:42 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > You dumb Brits! ;-) If you already have a name for a donkey, why do you > use ass? ;-) I don't, but it's there. Hey, at least Britain has a higher national IQ than America! ;) > Actually, my heritage is British... parents are from Kent... Really? Hey, that's dahn sahth, init (down south, init)? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 01:10:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24786 for dynarec-outgoing; Fri, 24 Mar 2000 01:10:54 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 24 Mar 2000 01:10:52 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38DB2EF6.78AD1D25@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > You dumb Brits! ;-) If you already have a name for a donkey, why do you > > use ass? ;-) > I don't, but it's there. Hey, at least Britain has a higher national IQ > than America! ;) You just don't have the entire southeastern US throwing the curve. ;-) Is there such a thing as a redneck Brit? I.E. Someone who shags his sister or any other relative and has a collective IQ of .00004 squared? -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 01:11:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24795 for dynarec-outgoing; Fri, 24 Mar 2000 01:11:38 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB3010.38F39B5@eurocopter.de> Date: Fri, 24 Mar 2000 10:06:24 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <200003240833.JAA14207@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Whatever, it was a new idea (store the framebuffer and everything else in > > memory and textures in main memory using AGP) which worked really well. > > Good fillrate and good graphics. Don't know about 2D speed though... > > Ok, in Direct3D works well, not as fast as a TNT or a Vodoo2 but works, but it > had a poor OpenGl support in the first drivers versions and now works but not as > well as I would like. For exemple I played Unreal in softmode (impressive > softmode !!) because OpenGl version didn't work. An i740 should be able to beat a TNT and Voodoo2. As I said, it was the fastest card around for a short period of time. Anyway, why would you play Unreal using OpenGL? The support Epic has for OpenGL sucks majorly. You can have the best ICD (OpenGL Installable Client Driver) in the world but anything Epic produces would run like crap. You should have played it in D3D. :) But yes, their software renderer is very, very impressive. > Another problem was I had only 64 MB of memory (I bought some more last month) > and I had to use 32MB for AGP memory so games usually did memory swapping. > But It doesn't matter, it was the best choice (price/quality) when I bought my > computer :) Even now the i740 is good. Though I've had 128MB RAM since before last year now. And I'll upgrade to 256 or 512MB RAM soon - memory prices are really cheap at the moment. The only thing stopping me from getting 512MB is the fact that the BX chipset will only cache the first 256MB RAM - so it will slow down quite drastically if I use more than 256MB. :-/ Still, I'll probably go either Athlon or P3 in a few months, so... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 01:12:07 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24804 for dynarec-outgoing; Fri, 24 Mar 2000 01:12:07 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB30BF.C5078C2B@eurocopter.de> Date: Fri, 24 Mar 2000 10:09:19 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > >Bleugh. TNT2 way better. ;-) > > But wasn't available at that time I bought my PC. > > I guess you're not like me. If I see a new piece of hardware that I > want/like, I chuck the old stuff quick! I can't always afford to do that. If I'm going to make a purchase, I do some analysis first and go for the best product for me. > > >You'd have a Windows icon when you were > > >flaccid, and a full blown startup screen when you were erect! ;-) > > Hehe. And you'd have to push the Start button to pee ;-) > > And ctrl-alt-delete when you wanted to take a dump! Maybe that's why some men are impotent. Their BIOS is configured to boot off the floppy drive but there's no floppy disk. Viagra is a fix for that which configures itself to boot off the HD where Windows is stored... :)) How the HELL did we get onto this topic? ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 01:26:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24842 for dynarec-outgoing; Fri, 24 Mar 2000 01:26:41 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB3350.6A4801C2@eurocopter.de> Date: Fri, 24 Mar 2000 10:20:16 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > I don't, but it's there. Hey, at least Britain has a higher national IQ > > than America! ;) > > You just don't have the entire southeastern US throwing the curve. ;-) True. Or the nothern bit. Or the middle bit either. ;) > Is > there such a thing as a redneck Brit? I.E. Someone who shags his sister or > any other relative and has a collective IQ of .00004 squared? No, but that's quite funny. The Irish have a reputation for being thick and there are lots of jokes about Irish people. The Welsh have a reputation for shagging sheep (you may have heard them called "sheep shaggers" - I think the Australians say the same about people from New Zealand). Hmm, maybe if someones parents are Irish and Welsh, maybe... ;) Just think, though. If we did it across Europe, we'd also have a lower IQ score. We've got France to consider. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 01:26:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24851 for dynarec-outgoing; Fri, 24 Mar 2000 01:26:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 24 Mar 2000 01:26:47 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38DB30BF.C5078C2B@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > >flaccid, and a full blown startup screen when you were erect! ;-) > > > Hehe. And you'd have to push the Start button to pee ;-) > > And ctrl-alt-delete when you wanted to take a dump! > Maybe that's why some men are impotent. Their BIOS is configured to boot > off the floppy drive but there's no floppy disk. Viagra is a fix for that > which configures itself to boot off the HD where Windows is stored... And God forbid what happens when your head hits a sector error.. > :)) > How the HELL did we get onto this topic? ;)) It started with Pocket Bill Gates. The cure for a permanent erection! I know whipping out a CE device with BG's picture on it would cure even the most ranging wood. BTW, Would you be interested in me posting when I'm intoxicated? I'll pick a topic and start talking about it. We started doing this as a ritual a few years ago when a friend of mine got really stoned and accidentally sent a really, REALLY strange message to a bunch of us. I was laughing at the message so hard that I couldn't breathe! If you're interested I'd be happy to post to you in an altered state. Here's the original article. For your amusement. Oddly, I got almost all of it 100% sober. Be forewarned, it's really, really strange. What the hell - shall we get REALLY off topic?: ---------------- Rambling rambling rambling rambling rambling. I did what you did tonight, and I'm having the most fun writing this message. I'm sitting here typing away smf lookinh sy yhr dyugg on yhr dvtrrn. Iy'd smsxinh and it feels so wonderful. I'm going to put my mind on autopilot and let you know about where it's going: Man, the kitchen in my house is a stoner's nightmare. Too many fucking cabinets! Where'd those damn Ritz crackers go! AAAAAUUGGGGGHHH!!!! Then there's the number of light switches. 7 Of 'em in the kitchen alone. I'm constantly turning on the back porch light when I'm trying to turn on the kitchen's light, and the garbage disposal instead of the overhead lights. They put the garbage disposal switch way over on the other side of the sink. Duh! Is it there so your kid can sit on the countertop and annoy the hell out of you from a distance? Remember how I was talking about that it'd be cool to market a product that is targeted at stoners but would sound like wholesome, legitimate slogans? I thought of one: "We bake the cookies, you bake the rest!". Most people would think "the rest" would mean "love" or something equally stupid. But the stoners would know about baking themselves in addition to the cookies. Think if they could get baked at the same time! I guess you're smart enough to figure it out without me going on for 400 lines about it. And now I'd like to talk to you about gum. Imagine a gum that tastes like Michelins, Pierelli's, Goodyears, and had the same consistency? And also had the same steel belts running through them? You could have on TV taste tests where people say, "Well, I prefer the Goodyear gum better because it sticks to your teeth more!" The Pierelli gum would be softer and would wear down much faster. Man, imagine if all tires in the world were made out of gum. It wouldn't be like normal, clean, factory fresh gum. It would have rocks & hairs in it, and a bunch of dirt because it had been on the roads. And how would it taste? A bit of 10/40 mixed in with that Bubblicious would sure be wonderful! Man, I don't even like gum. Let's stop talking about it. Eating a Ritz cracker is like eating a big cunk of a manhole cover. IT's got those little holes on the outside and the air comes through it and it's really cool. And when I put cheese on it, it's mud. Clean, cool, tastes-like-cheese, mud. I'm eating flying saucers right now. Ah, they taste good. I really wish I was at Roswell, NM right now to check out those aliens that landed. Do you think aliens get baked? Get baked and do something really crazy like phaser a planet or two, or give some poor sap an anal probe, or give them some things like the Achy-Breaky Heart, or ? Sort of an intergalactic cow-tipping? A frat initiation? A gang? Do you thinkt there are space gangs? Space pimps? Space Ho's? Space pirates? Space cadets? Space cases? Gun cases? Makes ya think, don't it? I had a dream this morning. There was a large government agency that was complaining to me that it was tough for them (in their airplanes) to land on the 405. They asked me what they should do about it. I replied, "Maybe you should get rid of the cars.". They all looked at eachother and said "Great idea!" They must've been managers. I burped. Burping feels so good. It's like your mouth is saying, "Hey, I want to be able to fart, too!", and a burp is what it was given. I burped really hard in my cat's face a long time ago. I had the most raunchy Mexican food breath you could possibly get and I came home. Drank tons of Cokes - basically pigged out. I was sitting on the couch and my cat came along. He started sniffing the air (in front of my face), and I turned to him, burped really hard, blew it in his face, and the cat started sneezing and coughing. Then he looked at me like I did something wrong. ;-) Time for bed. I'm Ritz'd out! -------------- -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 01:30:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24863 for dynarec-outgoing; Fri, 24 Mar 2000 01:30:52 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 24 Mar 2000 01:30:51 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38DB3350.6A4801C2@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > I don't, but it's there. Hey, at least Britain has a higher national IQ > > > than America! ;) > > You just don't have the entire southeastern US throwing the curve. ;-) > True. Or the nothern bit. Or the middle bit either. ;) Well, I'm from the Western US so I take no offense. ;-) I've found that stupidity is fairly equally distributed across all countries. They're just louder in the US. ;-) > > there such a thing as a redneck Brit? I.E. Someone who shags his sister or > > any other relative and has a collective IQ of .00004 squared? > No, but that's quite funny. The Irish have a reputation for being thick and > there are lots of jokes about Irish people. The Welsh have a reputation for Here's a good joke that an Irish person would know the answer to: Q: Why do you always shag a sheep next to the edge of a cliff? A: So it'll push back against you to keep from going over! > shagging sheep (you may have heard them called "sheep shaggers" - I think > the Australians say the same about people from New Zealand). Except the Australians *ARE* sheep shaggers and they're proud of it! > Just think, though. If we did it across Europe, we'd also have a lower IQ > score. We've got France to consider. ;) Lesse... An Irish, A redneck, an Australian, and a Frenchman cross - man, that would be an alcoholic inbred idiot who liked to shag sheep and wouldn't shave their amrpits or use deodorant. I just don't have the brain power to answer those big long assed messages. This stupid stuff is just too much fun for me. As you can probalby tell by tonights useless posts, I've had a fairly rough week... -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 01:42:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24918 for dynarec-outgoing; Fri, 24 Mar 2000 01:42:43 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003240945.KAA05445@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: from Neil Bradley at "Mar 24, 2000 00:49:48 am" To: dynarec@synthcom.com Date: Fri, 24 Mar 2000 10:45:08 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > Easy, you precharge the recompiler up front! That requires a bit of > > > examination of the code, but it's probably very little work to do. > > > I think I'm not understanding you ... :( Perhaps if you explain a bit > > more. > > You say "Dude, righteous dude of recompilerdom... here's a list of > addresses or "entry points" that you should attempt to recompile before > trying to execute anything." The recompiler would start recompiling at > those entry points until it runs through and recompiles the entire call > tree. > Oh ... I think I'm a little sleep this morning because I can't understand you, it doesn't matter I will take a look to this later. By the way, what about next week topic? I have thought in talking about how emulators use memory cache. I'm thinking in emulators like StarScream (M68000) which have very large tables for decoding and a great number of called functions. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 01:58:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24971 for dynarec-outgoing; Fri, 24 Mar 2000 01:58:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB3B8C.3CEF104B@eurocopter.de> Date: Fri, 24 Mar 2000 10:55:24 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Maybe that's why some men are impotent. Their BIOS is configured to boot > > off the floppy drive but there's no floppy disk. Viagra is a fix for that > > which configures itself to boot off the HD where Windows is stored... > > And God forbid what happens when your head hits a sector error.. It also brings a whole new meaning to "anti-virus software", doesn't it? ;)) > > :)) > > How the HELL did we get onto this topic? ;)) > > It started with Pocket Bill Gates. The cure for a permanent erection! I > know whipping out a CE device with BG's picture on it would cure even the > most ranging wood. That's true, probably. Not something I want to try, mind. ;) > BTW, Would you be interested in me posting when I'm intoxicated? I'll pick > a topic and start talking about it. We started doing this as a ritual a > few years ago when a friend of mine got really stoned and accidentally > sent a really, REALLY strange message to a bunch of us. I was laughing at > the message so hard that I couldn't breathe! If you're interested I'd be > happy to post to you in an altered state. Here's the original article. > For your amusement. Oddly, I got almost all of it 100% sober. Be > forewarned, it's really, really strange. You're right, it's strange. But it's as funny as hell! I guess you've got to know people when they're stoned and you're not to really appreciate this message. :) Anyway, as for you, why not? Could be funny. Yes, definitely. :) Why the hell, though, when stoned, do you feel hungry - no matter how much you've had? It's the same when you've drunk a lot too... :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 01:58:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24980 for dynarec-outgoing; Fri, 24 Mar 2000 01:58:47 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003241001.LAA23666@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38DB3010.38F39B5@eurocopter.de> from Neil Griffiths at "Mar 24, 2000 10:06:24 am" To: dynarec@synthcom.com Date: Fri, 24 Mar 2000 11:01:33 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > Whatever, it was a new idea (store the framebuffer and everything else in > > > memory and textures in main memory using AGP) which worked really well. > > > Good fillrate and good graphics. Don't know about 2D speed though... > > > > Ok, in Direct3D works well, not as fast as a TNT or a Vodoo2 but works, but it > > had a poor OpenGl support in the first drivers versions and now works but not as > > well as I would like. For exemple I played Unreal in softmode (impressive > > softmode !!) because OpenGl version didn't work. > > An i740 should be able to beat a TNT and Voodoo2. As I said, it was the > fastest card around for a short period of time. > Are you sure? How have you figured this? Reading Intel publicity? I think this is hard to believe, but I haven't seen a TNT or Vodoo2 running so I don't know. > Anyway, why would you play Unreal using OpenGL? The support Epic has for > OpenGL sucks majorly. You can have the best ICD (OpenGL Installable Client > Driver) in the world but anything Epic produces would run like crap. You > should have played it in D3D. :) > But when I played Unreal the D3D renderer didn't exist, and later was so buggy it ever crashed. I don't know how works now, I played Unreal about a year ago. > But yes, their software renderer is very, very impressive. > Indeed. The better soft renderer I never seen :) > > Another problem was I had only 64 MB of memory (I bought some more last month) > > and I had to use 32MB for AGP memory so games usually did memory swapping. > > But It doesn't matter, it was the best choice (price/quality) when I bought my > > computer :) > > Even now the i740 is good. Though I've had 128MB RAM since before last year > now. And I'll upgrade to 256 or 512MB RAM soon - memory prices are really > cheap at the moment. The only thing stopping me from getting 512MB is the > fact that the BX chipset will only cache the first 256MB RAM - so it will > slow down quite drastically if I use more than 256MB. :-/ > Oh i740 still works but some games (like GP500 - I don't like it my brother uses it) are a bit slow sometimes, and UltraHLE and Impact (and now FF8 with VGS when calling a GUARDIAN FORCE) are a bit slow, in fact in what hellish machine can run Toshinden 2 or Rival Schools, in a 800 Mhz and 512 MB with a TNT GFORCE? > Still, I'll probably go either Athlon or P3 in a few months, so... :) > I don't have so much money :(. Perhaps I will overclock it to 500 MHz :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 02:02:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA25107 for dynarec-outgoing; Fri, 24 Mar 2000 02:02:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB3C64.584CC2B9@eurocopter.de> Date: Fri, 24 Mar 2000 10:59:00 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > > You just don't have the entire southeastern US throwing the curve. ;-) > > True. Or the nothern bit. Or the middle bit either. ;) > > Well, I'm from the Western US so I take no offense. ;-) I've found that > stupidity is fairly equally distributed across all countries. They're just > louder in the US. ;-) Yes, that's true. :) Actually, I left out West US on purpose. The only intelligent Americans I've ever spoken to for any length of time were from there. I didn't know you were from there, though! :) > > No, but that's quite funny. The Irish have a reputation for being thick and > > there are lots of jokes about Irish people. The Welsh have a reputation for > > Here's a good joke that an Irish person would know the answer to: > > Q: Why do you always shag a sheep next to the edge of a cliff? > A: So it'll push back against you to keep from going over! A Welsh person would, allegedly. Never heard that one before. That's funny. :) > > shagging sheep (you may have heard them called "sheep shaggers" - I think > > the Australians say the same about people from New Zealand). > > Except the Australians *ARE* sheep shaggers and they're proud of it! Yes, I know - and that it makes it so much more ironic. But they don't see the irony themselves... :)) > > Just think, though. If we did it across Europe, we'd also have a lower IQ > > score. We've got France to consider. ;) > > Lesse... An Irish, A redneck, an Australian, and a Frenchman cross - man, > that would be an alcoholic inbred idiot who liked to shag sheep and > wouldn't shave their amrpits or use deodorant. I think there should be a world treaty just to stop this from happening. Oh, damn, it already has. Australians. ;)) > I just don't have the brain power to answer those big long assed messages. > This stupid stuff is just too much fun for me. As you can probalby tell by > tonights useless posts, I've had a fairly rough week... I understand that. Besides, these funny posts are really funny. That's why I'm replying. :) Besides, it's Friday and I've worked over 40 hours so far this week. I'm the same! :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 02:06:22 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA25124 for dynarec-outgoing; Fri, 24 Mar 2000 02:06:22 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB3CF6.13DC6410@eurocopter.de> Date: Fri, 24 Mar 2000 11:01:26 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <200003240945.KAA05445@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > You say "Dude, righteous dude of recompilerdom... here's a list of > > addresses or "entry points" that you should attempt to recompile before > > trying to execute anything." The recompiler would start recompiling at > > those entry points until it runs through and recompiles the entire call > > tree. > > > Oh ... I think I'm a little sleep this morning because I can't understand you, > it doesn't matter I will take a look to this later. He means that if you perform analysis yourself on the code you will recompile, you can look for pieces of code that should be compiled BEFORE you start the execution (and compilation) stage. Like I talked about for static compilation (when I said 'mapping' and everyone got confused!). > By the way, what about next week topic? > I have thought in talking about how emulators use memory cache. I'm thinking in > emulators like StarScream (M68000) which have very large tables for decoding and > a great number of called functions. That or how can we speed up CPU cores? Is memory cache a good technique? What others are there? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 02:12:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA25191 for dynarec-outgoing; Fri, 24 Mar 2000 02:12:20 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB3EC9.34708CA2@eurocopter.de> Date: Fri, 24 Mar 2000 11:09:13 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <200003241001.LAA23666@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > An i740 should be able to beat a TNT and Voodoo2. As I said, it was the > > fastest card around for a short period of time. > > > Are you sure? How have you figured this? Reading Intel publicity? I think > this is hard to believe, but I haven't seen a TNT or Vodoo2 running so I don't > know. I figured it out in a number of ways, but the best one was benchmarks. I've benchmarked an i740 and seen it for myself. It's very impressive. Although a V2 would beat it in multitexturing when I think about it... > > But yes, their software renderer is very, very impressive. > > > Indeed. The better soft renderer I never seen :) "Ever" seen. And yes, it certainly is. :) > > Even now the i740 is good. Though I've had 128MB RAM since before last year > > now. And I'll upgrade to 256 or 512MB RAM soon - memory prices are really > > cheap at the moment. The only thing stopping me from getting 512MB is the > > fact that the BX chipset will only cache the first 256MB RAM - so it will > > slow down quite drastically if I use more than 256MB. :-/ > > > Oh i740 still works but some games (like GP500 - I don't like it my brother uses > it) are a bit slow sometimes, and UltraHLE and Impact (and now FF8 with VGS when > calling a GUARDIAN FORCE) are a bit slow, in fact in what hellish machine can run > Toshinden 2 or Rival Schools, in a 800 Mhz and 512 MB with a TNT GFORCE? I've got the fillrate with my S2K, but I don't know whether my 450/128MB is good enough... Mind you, I'm not so interested in the games emulated by Impact. I'm more interested by the technology behind it... > > Still, I'll probably go either Athlon or P3 in a few months, so... :) > > I don't have so much money :(. Perhaps I will overclock it to 500 MHz :) I don't have that money now. But I will have. I'll get it before I leave Germany and live with it for the year or so that I'm in Uni... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 02:14:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA25200 for dynarec-outgoing; Fri, 24 Mar 2000 02:14:47 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003241017.LAA32709@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38DB3CF6.13DC6410@eurocopter.de> from Neil Griffiths at "Mar 24, 2000 11:01:26 am" To: dynarec@synthcom.com Date: Fri, 24 Mar 2000 11:17:26 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > By the way, what about next week topic? > > I have thought in talking about how emulators use memory cache. I'm thinking in > > emulators like StarScream (M68000) which have very large tables for decoding and > > a great number of called functions. > > That or how can we speed up CPU cores? Is memory cache a good technique? > What others are there? > Ok, today I'm grogui, it's better I go home ... I'm meaning to say a cache memory. How in hell a 512KB cache can manage MB's of code randomly used. Now I'm confusing everyone :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 02:20:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA25219 for dynarec-outgoing; Fri, 24 Mar 2000 02:20:43 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 24 Mar 2000 02:20:42 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38DB3B8C.3CEF104B@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > happy to post to you in an altered state. Here's the original article. > > For your amusement. Oddly, I got almost all of it 100% sober. Be > > forewarned, it's really, really strange. > You're right, it's strange. But it's as funny as hell! I guess you've got > to know people when they're stoned and you're not to really appreciate this > message. :) It's one of those famous "Hey! Let's tape record ourselves and play it back later!" episodes. Ever done that? It's either really funny or really, REALLY stupid! > Anyway, as for you, why not? Could be funny. Yes, definitely. :) Okay - give me a list of topics to talk about while intoxicated and I'll post about it tomorrow night (or the night after depending upon which night I'll be out of it). Make it any topic at all... Even computers and something on topic for this list, too! > Why the hell, though, when stoned, do you feel hungry - no matter how much > you've had? It's the same when you've drunk a lot too... :o I think the stoned/eating thing is more habitual. You get used to eating a single Haagen Daaz (sp?) and before you know it the whole fucking box is gone. It's even more fun when you do the association game. You eat something and close your eyes and imagine what it is, or the first thing that pops into your mind. For example: Chocolate pudding - Cold, wet, slug Triscuit - Bales of hay Watermellon - Fruit flavored kitchen sponges Fritos - Salty rocks Soup - Warm dishwater Tootsie roll - Lipstick I hope that I'm not just rambling and that people are being amused by this... -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 02:26:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA25235 for dynarec-outgoing; Fri, 24 Mar 2000 02:26:18 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003241028.LAA27419@pons.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38DB3EC9.34708CA2@eurocopter.de> from Neil Griffiths at "Mar 24, 2000 11:09:13 am" To: dynarec@synthcom.com Date: Fri, 24 Mar 2000 11:28:21 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > I figured it out in a number of ways, but the best one was benchmarks. I've > benchmarked an i740 and seen it for myself. It's very impressive. Although > a V2 would beat it in multitexturing when I think about it... > Ok, then you know what you are talking about. > > Indeed. The better soft renderer I never seen :) > > "Ever" seen. And yes, it certainly is. :) > Oh, sorry :) Bad english fast writing. > I've got the fillrate with my S2K, but I don't know whether my 450/128MB is > good enough... Mind you, I'm not so interested in the games emulated by > Impact. I'm more interested by the technology behind it... > I'm not so interested in this kind of games, I was only testing it and I saw how slow works. And I'm really interested in knowing how they have emulated such machines. I don't know what kind of machines are, 32 bits procs and 3D hardware I think but not sure. Perhaps someone could try to ask them about the technology, perhaps they are interested in a dynarec list where people talk about all topics but dynamic recompilation. By the way the only games I really like are RPGs, I love old console RPGs. > > > Still, I'll probably go either Athlon or P3 in a few months, so... :) > > > > I don't have so much money :(. Perhaps I will overclock it to 500 MHz :) > > I don't have that money now. But I will have. I'll get it before I leave > Germany and live with it for the year or so that I'm in Uni... > I will have money soon too. I have started to work in my Uni this month. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 02:47:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA25288 for dynarec-outgoing; Fri, 24 Mar 2000 02:47:26 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB46E3.59E641FA@eurocopter.de> Date: Fri, 24 Mar 2000 11:43:47 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <200003241017.LAA32709@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > That or how can we speed up CPU cores? Is memory cache a good technique? > > What others are there? > > Ok, today I'm grogui, it's better I go home ... :) You were right, though. You can say a memory cache or cache memory. It means the same when you get down to it. > I'm meaning to say a cache memory. How in hell a 512KB cache can manage MB's > of code randomly used. Now I'm confusing everyone :) You have to know whether something you've just run is in the cache. If it is, you run it from the cache. Useful for loops... That's highly simplified and the implementation would be quite difficult... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 02:51:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA25300 for dynarec-outgoing; Fri, 24 Mar 2000 02:51:39 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB4774.E172809F@eurocopter.de> Date: Fri, 24 Mar 2000 11:46:12 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > It's one of those famous "Hey! Let's tape record ourselves and play it > back later!" episodes. Ever done that? It's either really funny or really, > REALLY stupid! Once, when drunk, and you realise that what you said wasn't as clearly pronounced as you thought it was... :) > > Anyway, as for you, why not? Could be funny. Yes, definitely. :) > > Okay - give me a list of topics to talk about while intoxicated and I'll > post about it tomorrow night (or the night after depending upon which > night I'll be out of it). Make it any topic at all... Even computers and > something on topic for this list, too! Ooh, I don't know. Maybe I can think of some later. It may be better for you to just write about whatever you're thinking about though... :) > > Why the hell, though, when stoned, do you feel hungry - no matter how much > > you've had? It's the same when you've drunk a lot too... :o > > I think the stoned/eating thing is more habitual. You get used to eating a > single Haagen Daaz (sp?) and before you know it the whole fucking box is > gone. It's even more fun when you do the association game. You eat > something and close your eyes and imagine what it is, or the first thing > that pops into your mind. For example: > > Triscuit - Bales of hay Don't know this > Fritos - Salty rocks Or this. > Tootsie roll - Lipstick Or this. And I don't know what a twinkie is either, so I'm not a proper programmer - allegedly. :) > I hope that I'm not just rambling and that people are being amused by > this... Well, at least two people are amused. You and me. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 02:52:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA25309 for dynarec-outgoing; Fri, 24 Mar 2000 02:52:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB480B.1ADDCF09@eurocopter.de> Date: Fri, 24 Mar 2000 11:48:43 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <200003241028.LAA27419@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > I figured it out in a number of ways, but the best one was benchmarks. I've > > benchmarked an i740 and seen it for myself. It's very impressive. Although > > a V2 would beat it in multitexturing when I think about it... > > > Ok, then you know what you are talking about. I hope so. It's an interest of mine. I generally make people agree with me no matter how biased they are. You can do that when you know what you're talking about - which is why I do my research when it comes to 3D and 3D cards. :) > Oh, sorry :) Bad english fast writing. Easy mistake to make. :) > I'm not so interested in this kind of games, I was only testing it and I saw how > slow works. And I'm really interested in knowing how they have emulated such > machines. I don't know what kind of machines are, 32 bits procs and 3D hardware > I think but not sure. Perhaps someone could try to ask them about the > technology, perhaps they are interested in a dynarec list where people talk > about all topics but dynamic recompilation. I had heard that the machine was similar to PSX hardware. If so then the speed is terrible. If it isn't, then the speed is acceptable... > By the way the only games I really like are RPGs, I love old console RPGs. I like all types of games including these RPGs. But my heart is with platform games I think. My all-time favourite game is Bubble Bobble. :) > > I don't have that money now. But I will have. I'll get it before I leave > > Germany and live with it for the year or so that I'm in Uni... > > I will have money soon too. I have started to work in my Uni this month. Good! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 03:04:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA25345 for dynarec-outgoing; Fri, 24 Mar 2000 03:04:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB4AD7.71905D86@eurocopter.de> Date: Fri, 24 Mar 2000 12:00:39 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Okay - give me a list of topics to talk about while intoxicated and I'll > post about it tomorrow night (or the night after depending upon which > night I'll be out of it). Make it any topic at all... Even computers and > something on topic for this list, too! I've got some topic for you! - What do you think of the emu scene recently? - Who is the best and worse person/group in the scene I'll think of some more later, but I think those are pretty wide and could give interesting answers. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 03:31:00 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA25406 for dynarec-outgoing; Fri, 24 Mar 2000 03:31:00 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB51AB.C2A575EB@est.fib.upc.es> Date: Fri, 24 Mar 2000 12:29:47 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <200003241028.LAA27419@pons.ac.upc.es> <38DB480B.1ADDCF09@eurocopter.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Griffiths wrote: > > I had heard that the machine was similar to PSX hardware. If so then the > speed is terrible. If it isn't, then the speed is acceptable... > Perhaps some research should be done on this topic. > > > By the way the only games I really like are RPGs, I love old console RPGs. > > I like all types of games including these RPGs. But my heart is with > platform games I think. My all-time favourite game is Bubble Bobble. :) > Bubble Bobble is a really nice game :) I like it too. I usually don´t like plataform games but there are someones that are really fun as Bubble Bobble. Lately I have been playing a bit Metal Slug, what a game! ;). But the best games for me are Japanese RPGs and the best game company is SquareSoft. But I don´t know much Japanese so I can´t really play them :( By the way what's your favorite game company. I vote for Konami and SquareSoft, but this last has very few games others than RPGs. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 03:41:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA25432 for dynarec-outgoing; Fri, 24 Mar 2000 03:41:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB537B.B9129374@est.fib.upc.es> Date: Fri, 24 Mar 2000 12:37:31 +0100 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <200003241028.LAA27419@pons.ac.upc.es> <38DB480B.1ADDCF09@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Griffiths wrote: > > I hope so. It's an interest of mine. I generally make people agree with me > no matter how biased they are. You can do that when you know what you're > talking about - which is why I do my research when it comes to 3D and 3D > cards. :) > So you share a lot of things with NB: the same name, you like to make your owns implementations and you make people agree with you ! ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 04:56:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA25521 for dynarec-outgoing; Fri, 24 Mar 2000 04:56:27 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB6578.8DD4D438@eurocopter.de> Date: Fri, 24 Mar 2000 13:54:16 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <200003241028.LAA27419@pons.ac.upc.es> <38DB480B.1ADDCF09@eurocopter.de> <38DB537B.B9129374@est.fib.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > So you share a lot of things with NB: the same name, you like to make your owns > implementations and you make people agree with you ! ;) It does seem that way, doesn't it? Ah well. I just do things in the way that seems most obvious and correct to me. It may not always be the best way, but hey - you'll never learn if you don't try. Which is a philosophy I follow - it explains why I prefer to do things from scratch. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 04:56:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA25531 for dynarec-outgoing; Fri, 24 Mar 2000 04:56:41 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB64ED.E3832ECF@eurocopter.de> Date: Fri, 24 Mar 2000 13:51:57 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <200003241028.LAA27419@pons.ac.upc.es> <38DB480B.1ADDCF09@eurocopter.de> <38DB51AB.C2A575EB@est.fib.upc.es> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > I had heard that the machine was similar to PSX hardware. If so then the > > speed is terrible. If it isn't, then the speed is acceptable... > > Perhaps some research should be done on this topic. On the machine? Certainly. On the authors? I think they want to remain anonymous, so we can't ask them anything! > > I like all types of games including these RPGs. But my heart is with > > platform games I think. My all-time favourite game is Bubble Bobble. :) > > > > Bubble Bobble is a really nice game :) I like it too. I usually don´t like plataform > games but there are someones that are really fun as Bubble Bobble. Lately I have been > playing a bit Metal Slug, what a game! ;). But the best games for me are Japanese > RPGs and the best game company is SquareSoft. But I don´t know much Japanese so I > can´t really play them :( By the way what's your favorite game company. I vote for > Konami and SquareSoft, but this last has very few games others than RPGs. Erm... I can't remember their name! My god... anyway, they wrote all those cutsey games like Bubble Bobble, Rainbow Islands and so on... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 06:13:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25678 for dynarec-outgoing; Fri, 24 Mar 2000 06:13:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Fri, 24 Mar 2000 15:03:37 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Know what a spin doctor is? Someone who takes a really bad situation or >piss poor position (I.E. Apple computer corporation is FAMOUS for >stretching the truth in this manner) and twisting around the presentation >to make it sound much better than it really is. Ah, it's someone who spins the situation round. >Dunno. I think Schlonga means Snake, doesn't it? In German? The German word for snake is "Schlange" ;-) But in that case the term would be "Schlaengel" AFAIK... >And ctrl-alt-delete when you wanted to take a dump! Yeah, and it's always so difficult to hit these keys on your back ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 06:13:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25685 for dynarec-outgoing; Fri, 24 Mar 2000 06:13:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Fri, 24 Mar 2000 15:04:40 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Traduccion dinamica con generacion de codigo, volatil y sin deteccion de codigo >automodificable (todavia). TDGCVDCA in spanish or TraDiGeCoVoDeCoAu ;) Wow, the Spanish translation just sounds cool! Hey, what about using Spanish terms instead of English ones? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 06:13:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25694 for dynarec-outgoing; Fri, 24 Mar 2000 06:13:08 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Fri, 24 Mar 2000 14:57:32 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No, it's something called Dixie. I think I give you an address with the >documentation ... But really doesn't matter, it's as slow as hell. Oops, you're right. I downloaded the document you mentioned some time ago and even took a brief look at it, but somehow I got things mixed up. When do those hardware geeks invent the flash ROM brain upgrade??? >Are you sure? Shade perfoms profiling and it don't have an interpreter ;) Uh, either I really have a memory leak or I just missed that point when I read the Shade document... >But >perform profiling in translated code would be something more difficult than in >an interpreter and then you would have to retranslate. But I think it's possible >to do this. I guess you're right in both cases. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 06:13:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25701 for dynarec-outgoing; Fri, 24 Mar 2000 06:13:09 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Fri, 24 Mar 2000 14:54:06 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id GAA25695 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Oh. Well, I bought a Celeron 300A last year in January. Overclocked it to >450MHz and it still works fine. That was absolutely the best deal I have >ever got on a piece of computer hardware! One of my friends overclocked his Celeron and got lots of crashes due to this. >Yes, I agree. I played Jedi Knight right to the end and then started on >MOTS. I was interested in Jedi Knight from the beginning but I didn't have a PC to paly it at that time, so I bought both games in a cheap bundle not too long ago. >The new game "Obi-Wan" (or whatever it's called) should hopefully be >much cooler with better gameplay and better graphics. We'll see... I hope so! Apart from Force Commander this is one of the games I'm longing for! Yes, I *am* a Star Wars maniac. >It was never the best card - ever - and so long as you're still happy with >it, that's good. You obviously don't use it for 3D graphics too heavily >because we're talking speeds that are only slightly better than an original >Voodoo... I have many games running fluently at 1024x768, a resolution you cannot reach with Voodoo 2. >> You really seem to have a language problem. >Yes, my German. ;p Dem will ich nicht widersprechen, so lange ich Dein Deutsch noch nicht genossen habe ;-) >It's a saying. It means that you get up early and stay up late - burning >the candle at both ends. Aha. >I'll just kill them with Vodka shots or something. :)) I thought you Welsh guys would have whiskey or so? Well, actually the translation of whiskey means about the same as vodka... BTW, there is a nice example how bad machine translation is. An English proverb (don't know the literal saying, but you should be able to reconstruct it) was translated to Russion and back again. The result was: "The whiskey is strong but the flesh is rotten." ;-) >And then I can go back to REAL drinks. :) What is real for you? >I couldn't when I wrote that, I was at work. I think. :) Cogito ergo sum? >> >And you call MY joke bad! ;) >> Hehe. Didn't you like that one? >I think I'd heard it before. Strange, because it's a joke I invented some time ago... >Hey, it's not my fault that I confuse everyone else! It's not my fault I'm >sooooo much more intelligent than you! ;))) The maniacs never realise how nuts they are ;-) >No idea what you mean about the semi-vowels [w] and [j] - I've never heard >this... [j] as in [jelou], "yellow" [w] as in [wiski], "whiskey" But you will use "a whiskey" instead of "an whiskey", which is another reason for it being only a semi-vowel. >Okay, but what about [c], [h], [q], [r], [s], [y] ? I'm not sure why [c] is but I guess you mean the phoneme [k]: That's a velar plosive. Meaning the back of your tongue touches the soft palate to hinder the air flow and is then released suddenly to produce an exploding sound. [h] is a glottal fricative, so the vocal cords produce friction. [q] I don't know that phoneme and it's no English phoneme. If you mean the letter "q", that can be either [kj] when you pronouce the letter "Q", but most of the time it will be [kw] as in queen, quick, ... [r] is a post-alveolar (somewhere between your upper teeth and the hard palate) approximant according to one of my books. I think I would have called it a fricative. BTW, there are several other ways to pronounce "r". One is [R] where the friction is produced by the uvula. The sign for the other one looks like an "R" turned upside down, and is the "r" spoken in some parts of the US where the tongue bends back. [s] is easy: the tip of your tongue touches the region behind your upper teeth to produce friction which is an alveolar fricative. [y] is not a phoneme of English but actually the sign for one of German's long mutants as in "über". If you meant the letter "y" as in "you" this is pronounced as [ju:]. Believe me, I learnt English and German phonetics... >Maybe. I've heard that it involves taking a long walk off a short pier >(erm... you probably won't know this word... Maybe clifftop as a >replacement?). :) This time even understood your first sentence... >It's strange. All Germans seem to agree with me on this one. But no- one >changes it! Standard question of my niece: Why? >Well, if there are, between us I believe we could have offended them. :) I thought you didn't want to offend anyone ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 06:13:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25715 for dynarec-outgoing; Fri, 24 Mar 2000 06:13:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Fri, 24 Mar 2000 15:06:17 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Maybe that's why some men are impotent. Their BIOS is configured to boot >off the floppy drive but there's no floppy disk. Viagra is a fix for that >which configures itself to boot off the HD where Windows is stored... Hehe... >How the HELL did we get onto this topic? ;)) It started when I called you a PocketBG ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 06:13:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25716 for dynarec-outgoing; Fri, 24 Mar 2000 06:13:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Fri, 24 Mar 2000 15:00:39 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> > With this classification NB's method could be called: >> > volatile code-emitting dynamic translation without self-modifying code >> > detection (yet) >VCEDTWSMCD! ;-) Heh, NB seems to like it ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 06:13:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25719 for dynarec-outgoing; Fri, 24 Mar 2000 06:13:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Fri, 24 Mar 2000 15:07:20 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >By the way, what about next week topic? >I have thought in talking about how emulators use memory cache. I'm thinking in >emulators like StarScream (M68000) which have very large tables for decoding and >a great number of called functions. Nice idea. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 06:13:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25730 for dynarec-outgoing; Fri, 24 Mar 2000 06:13:11 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Fri, 24 Mar 2000 15:09:18 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Ok, today I'm grogui, it's better I go home ... We have the same word in German, but I don't know how it is spelled... >I'm meaning to say a cache memory. How in hell a 512KB cache can manage MB's >of code randomly used. Now I'm confusing everyone :) Especially when it's direct-mapped crap... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 06:13:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25738 for dynarec-outgoing; Fri, 24 Mar 2000 06:13:15 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Fri, 24 Mar 2000 15:11:05 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >By the way the only games I really like are RPGs, I love old console RPGs. I perfer the really old RPGs with dice and pencil... But I was alwasy a fan of LucasArts adventures! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 06:13:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25747 for dynarec-outgoing; Fri, 24 Mar 2000 06:13:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Fri, 24 Mar 2000 15:12:23 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I like all types of games including these RPGs. But my heart is with >platform games I think. My all-time favourite game is Bubble Bobble. :) I loved to play that on the C64 with one of my friends: "Hurry up!" ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 06:34:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25804 for dynarec-outgoing; Fri, 24 Mar 2000 06:34:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB7C9B.B4781079@eurocopter.de> Date: Fri, 24 Mar 2000 15:32:59 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > One of my friends overclocked his Celeron and got lots of crashes due > to this. Haha! I got one of the good ones. In fact, it's from the batch that are meant to go to 512 stably. Not tried, am not going to try either. > >Yes, I agree. I played Jedi Knight right to the end and then started > on > >MOTS. > > I was interested in Jedi Knight from the beginning but I didn't have a > PC to paly it at that time, so I bought both games in a cheap bundle > not too long ago. Yes, I've seen them in places like "Saturn". I bought the full price. Arse! > I hope so! Apart from Force Commander this is one of the games I'm > longing for! > Yes, I *am* a Star Wars maniac. I'm not a maniac, but I do like SW a lot. > I have many games running fluently at 1024x768, a resolution you cannot > reach with Voodoo 2. Not a single one, at least. Or you can with the Diamond Monster drivers - but you take a hit in speed... > >> You really seem to have a language problem. > >Yes, my German. ;p > > Dem will ich nicht widersprechen, so lange ich Dein Deutsch noch nicht > genossen habe ;-) Fine, you do that then. And speak in strange English I will, hmmm. ;) > >I'll just kill them with Vodka shots or something. :)) > > I thought you Welsh guys would have whiskey or so? Well, actually the > translation of whiskey means about the same as vodka... Whiskey is more Scottish and Irish than Welsh. We've got... bugger! What have we got? Well, the Welsh have got food with lots of alchohol involved. I don't know a single Welsh meal that doesn't involve a lot of alchohol. :) > BTW, there is a nice example how bad machine translation is. An English > proverb (don't know the literal saying, but you should be able to > reconstruct it) was translated to Russion and back again. The result > was: > "The whiskey is strong but the flesh is rotten." ;-) No, I don't know this one! > >And then I can go back to REAL drinks. :) > > What is real for you? I don't know. Non-spirit based. Cider (Apfelwein?) and Beer etc... > >I couldn't when I wrote that, I was at work. I think. :) > > Cogito ergo sum? The difference between you and me is that you've studied Latin. ;) > >> Hehe. Didn't you like that one? > >I think I'd heard it before. > > Strange, because it's a joke I invented some time ago... Really? Then either someone spread it - or someone else invented it too! :) > >Hey, it's not my fault that I confuse everyone else! It's not my fault > I'm > >sooooo much more intelligent than you! ;))) > > The maniacs never realise how nuts they are ;-) The difference between genius and madness is that one person has letters after their name. ;) > But you will use "a whiskey" instead of "an whiskey", which is another > reason for it being only a semi-vowel. Oh, okay. > >Okay, but what about [c], [h], [q], [r], [s], [y] ? > > I'm not sure why [c] is but I guess you mean the phoneme [k]: > That's a velar plosive. Meaning the back of your tongue touches the > soft palate to hinder the air flow and is then released suddenly to > produce an exploding sound. > > [h] is a glottal fricative, so the vocal cords produce friction. Whatever, it's still a semi-vowel. People taking Degrees in English learn this! > Believe me, I learnt English and German phonetics... I believe you, I believe you... ;) > >Maybe. I've heard that it involves taking a long walk off a short pier > >(erm... you probably won't know this word... Maybe clifftop as a > >replacement?). :) > > This time even understood your first sentence... Oh, good. I wasn't sure that you would. Good. :) > >It's strange. All Germans seem to agree with me on this one. But no- > one > >changes it! > > Standard question of my niece: Why? 1234. That number. The way in which other languages makes sense - you read the number from left to right (or, in fact, you have to count the amount of numbers and THEN read from left to right). With German, you read from left to right until the last two number where you swap. > >Well, if there are, between us I believe we could have offended them. > :) > > I thought you didn't want to offend anyone ;-) I don't. But I'd rather offend one person than an entire country. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 06:37:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25831 for dynarec-outgoing; Fri, 24 Mar 2000 06:37:52 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB7D46.429CFC9B@eurocopter.de> Date: Fri, 24 Mar 2000 15:35:50 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I loved to play that on the C64 with one of my friends: "Hurry up!" ;-) "Get the umbrella!" "EXTEND! GET THE EXTEND!!" ;) It was exactly the same for me with one of my friends - still on the C64! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 06:37:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25839 for dynarec-outgoing; Fri, 24 Mar 2000 06:37:56 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DB7D09.5A559513@eurocopter.de> Date: Fri, 24 Mar 2000 15:34:49 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Ok, today I'm grogui, it's better I go home ... > > We have the same word in German, but I don't know how it is spelled... We too have the same word. It's spelt "groggy" and is a strange feeling of either being tired or drunk. Or ill. Or any combination of those three. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 07:11:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA25939 for dynarec-outgoing; Fri, 24 Mar 2000 07:11:26 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Fri, 24 Mar 2000 16:08:01 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Haha! I got one of the good ones. In fact, it's from the batch that are >meant to go to 512 stably. Not tried, am not going to try either. Lucky you. >Yes, I've seen them in places like "Saturn". I bought the full price. Arse! Sometimes it's worth to wait... But for games like Half-Life you have to buy it immeditely in Germany, because after one or two weeks the original game is forbidden and replaced by a German version where you shoot robots... They even changed Command & Conquer, it sounds like squishing cans when you drive over soldiers... How cheap to have a cyborg for only 100 bucks! >> Dem will ich nicht widersprechen, so lange ich Dein Deutsch noch nicht >> genossen habe ;-) >Fine, you do that then. Did you understand anything? >And speak in strange English I will, hmmm. ;) If 900 years you are old, the same way will you speak... >Whiskey is more Scottish and Irish than Welsh. We've got... bugger! What >have we got? Well, the Welsh have got food with lots of alchohol involved. >I don't know a single Welsh meal that doesn't involve a lot of alchohol. :) Liquid food ;-) BTW, did you know that Bavarians call beer "liquid bread"? >> Cogito ergo sum? >The difference between you and me is that you've studied Latin. ;) Studied is the wrong word! I had it at school and I hated it! BTW, the sentence above means: "I think, therefore I am." >Really? Then either someone spread it - or someone else invented it too! :) The joke was so obvious that it will be the latter case. >The difference between genius and madness is that one person has letters >after their name. ;) Hehe. >I believe you, I believe you... ;) No more phonetics lessons? ;-) >1234. That number. The way in which other languages makes sense - you read >the number from left to right (or, in fact, you have to count the amount of >numbers and THEN read from left to right). With German, you read from left >to right until the last two number where you swap. Well, you have to be... different ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 07:11:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA25946 for dynarec-outgoing; Fri, 24 Mar 2000 07:11:28 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Fri, 24 Mar 2000 16:12:15 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >We too have the same word. It's spelt "groggy" and is a strange feeling of >either being tired or drunk. Or ill. Or any combination of those three. :) For us it's like a synonym for "exhausted" or we say "fix und foxy" (originally this was "fix und fertig" and was adjusted to the name of an old comic). >"Get the umbrella!" >"EXTEND! GET THE EXTEND!!" Yeah, collect the letters ;-) >It was exactly the same for me with one of my friends - still on the C64! Ah, the good lod days when we used to sit in front of the same computer (not separated by a network) and there was alot of comunication because the games simple needed hours to load ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 09:29:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA26312 for dynarec-outgoing; Fri, 24 Mar 2000 09:29:59 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DBA5AC.746DEFD5@eurocopter.de> Date: Fri, 24 Mar 2000 18:28:12 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Haha! I got one of the good ones. In fact, it's from the batch that > are > >meant to go to 512 stably. Not tried, am not going to try either. > > Lucky you. Well, I did wait until my friend bought one before buying. :) > >Yes, I've seen them in places like "Saturn". I bought the full price. > Arse! > > Sometimes it's worth to wait... > But for games like Half-Life you have to buy it immeditely in Germany, > because after one or two weeks the original game is forbidden and > replaced by a German version where you shoot robots... I'd heard about that, yes. :o > They even changed Command & Conquer, it sounds like squishing cans when > you drive over soldiers... How cheap to have a cyborg for only 100 > bucks! Really? Heh. Didn't know about C&C though... :)) > >> Dem will ich nicht widersprechen, so lange ich Dein Deutsch noch > nicht > >> genossen habe ;-) > >Fine, you do that then. > > Did you understand anything? I think so. I could be wrong. Something like "Then I will not speak (clearly?), so that my german you don't have exactly". Doesn't make sense, really... :)) > >And speak in strange English I will, hmmm. ;) > > If 900 years you are old, the same way will you speak... Hmm, yes, hmm... :) > >I don't know a single Welsh meal that doesn't involve a lot of > >alchohol. :) > > Liquid food ;-) > BTW, did you know that Bavarians call beer "liquid bread"? I didn't until you told me, no. Heh. :) > Studied is the wrong word! I had it at school and I hated it! I hated most things at school that were non-computer related. So I like Science, Maths and IT and didn't like much else. > BTW, the sentence above means: "I think, therefore I am." Ah. Why latin, though? I'd have thought it better in Greek! :) > >The difference between genius and madness is that one person has > >letters after their name. ;) > > Hehe. And the scary thing is... it's true! :o > >I believe you, I believe you... ;) > > No more phonetics lessons? ;-) No! I give up! Please! ;) > >1234. That number. The way in which other languages makes sense - you > read > >the number from left to right (or, in fact, you have to count the > amount of > >numbers and THEN read from left to right). With German, you read from > left > >to right until the last two number where you swap. > > Well, you have to be... different ;-) You do if you're German, anyway. Or French. Hell, if you're anybody else, you're different. Hmm... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 09:33:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA26336 for dynarec-outgoing; Fri, 24 Mar 2000 09:33:54 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DBA64F.E3685835@eurocopter.de> Date: Fri, 24 Mar 2000 18:30:55 +0100 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > For us it's like a synonym for "exhausted" or we say "fix und foxy" > (originally this was "fix und fertig" and was adjusted to the name of > an old comic). Yes, it sort of has the same meaning. At least, you could use it and I'd understand... > >"Get the umbrella!" > >"EXTEND! GET THE EXTEND!!" > > Yeah, collect the letters ;-) That's the one. :) > >It was exactly the same for me with one of my friends - still on the > C64! > > Ah, the good lod days when we used to sit in front of the same computer > (not separated by a network) and there was alot of comunication because > the games simple needed hours to load ;-) Yep. That's what emulation doesn't emulate - the waiting times! We want the... oh... do we? :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 24 10:45:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA26577 for dynarec-outgoing; Fri, 24 Mar 2000 10:45:49 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation Date: Fri, 24 Mar 2000 19:44:50 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com [Half-Life] >I'd heard about that, yes. :o It's weird, isn't it? >> >> Dem will ich nicht widersprechen, so lange ich Dein Deutsch noch >> nicht >> >> genossen habe ;-) >I think so. I could be wrong. Something like "Then I will not speak >(clearly?), so that my german you don't have exactly". Doesn't make sense, >really... :)) "I don't want to contradict as long as I haven't experienced your German." >Ah. Why latin, though? I'd have thought it better in Greek! :) OK, tell us the Greek quote then ;-) >No! I give up! Please! ;) You surrender? This fast? >You do if you're German, anyway. Or French. Hell, if you're anybody else, >you're different. Hmm... :) Now you are beginning to be philosophically... >Yep. That's what emulation doesn't emulate - the waiting times! We want >the... oh... do we? :) Just start VICE on a slow computer and enable truedrive emulation ;-) But the compatability of all PSX emulators sux: the CD-ROM drive is way too fast! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 25 05:47:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA31883 for dynarec-outgoing; Sat, 25 Mar 2000 05:47:59 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Emu Fakes Date: Sat, 25 Mar 2000 14:47:47 CET From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, I think another interesting topic could be how to identify emulator fakes. I mean all Amiga emulators before UAE were more or less fakes but still many people thought them to be real. The other extreme is bleem. When it was first announced almost everyone (including me) thought that it must be a fake. It might have been due to the weird name, the strange first webpage they had, and some PR talk about the emulator. I still don't think that a b/w mode for FMVs is that much faster than colour... But still it was real, even if not perfect. The newest example is someone who claims to have done 80% of a Dreamcast emulator and to even have some commercial games running. I mean, just remember how long N64 emulation needed to get a few games running, then you'll know that this cannot be true. Also the specs the "author" mentions are too low. A P2-266 is way too slow to emulate a SH-4, which has four times the FP performance! But the biggest joke is how he claims to be able to read the 1GB GD- ROMs. According to him the DC reads CDs in *reverse* and he claims to have written a CD-ROM driver which operates the same way. Even if the DC should work this way I'm really not sure if it would be possible to do such tricks with a normal CD-ROM drive! Your opinions? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 25 14:38:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA33080 for dynarec-outgoing; Sat, 25 Mar 2000 14:38:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 25 Mar 2000 14:38:23 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > The other extreme is bleem. When it was first announced almost everyone > (including me) thought that it must be a fake. It might have been due > to the weird name, the strange first webpage they had, and some PR talk > about the emulator. I still don't think that a b/w mode for FMVs is > that much faster than colour... > But still it was real, even if not perfect. People called Retrocade a fake, too. There's two sides of it - those who spend all their time denouncing the existence of an emulator they'd rather see NOT exist and the opposite end of people claiming to have something everyone want for fame and glory but don't have a thing. > Also the specs the "author" mentions are too low. A P2-266 is way too > slow to emulate a SH-4, which has four times the FP performance! Uh... the SH-4 has 4 times the P2-266? I highly doubt that. > ROMs. According to him the DC reads CDs in *reverse* and he claims to > have written a CD-ROM driver which operates the same way. Even if the > DC should work this way I'm really not sure if it would be possible to > do such tricks with a normal CD-ROM drive! He's totally full of shit. The 1GB CDROMs aren't readable with conventional drives - they don't even use the same optical pickup! As far as spinning the drive backwards, CDROM drives have a "start" and "stop" - no directional junk. On a slightly differnet topic, I'm trying to figure out where to devote my time. I've had a few free days that I've done nothing more than sit and stare at the screen and look at web pages, without any work being done. So if any of you could give me some words of encouragement toward completing the recompiler, that would surely be appreciated. I just feel like it'll go unappreciated. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 25 14:57:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA33154 for dynarec-outgoing; Sat, 25 Mar 2000 14:57:54 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <006b01bf96ad$4808ad20$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Emu Fakes Date: Sat, 25 Mar 2000 23:54:52 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > People called Retrocade a fake, too. There's two sides of it - those who > spend all their time denouncing the existence of an emulator they'd rather > see NOT exist and the opposite end of people claiming to have something > everyone want for fame and glory but don't have a thing. Of course. We've always played "Spot the fake", it's just that sometimes it's really easy (like in this case) and sometimes not. All you need to have is a little common sense - or a brain. Bleem could have been real - a P166 *is* powerful enough to emulate what is essentially a 386-33MHz machine. Things like Dreamcast emulators aren't possible at the moment, not least because of the special format CD-ROMs that it uses. > > Also the specs the "author" mentions are too low. A P2-266 is way too > > slow to emulate a SH-4, which has four times the FP performance! > > Uh... the SH-4 has 4 times the P2-266? I highly doubt that. The specs are about double the FPU, I believe. A 450MHz CPU is still faster. I'm not sure about the relative speeds of the PS2 CPU, though... > > ROMs. According to him the DC reads CDs in *reverse* and he claims to > > have written a CD-ROM driver which operates the same way. Even if the > > DC should work this way I'm really not sure if it would be possible to > > do such tricks with a normal CD-ROM drive! > > He's totally full of shit. The 1GB CDROMs aren't readable with > conventional drives - they don't even use the same optical pickup! As far > as spinning the drive backwards, CDROM drives have a "start" and "stop" - > no directional junk. Yes, agreed. This is a completely obvious fake. I suppose it's possible to fake the drive spinning backwards (you read one byte, wait for the CD to spin around again and read the previous byte ad infinitum), but I think it would be quite hard to do. But, as Neil said, different optical pickup. If it requires a different laser frequency to read, there's not a whole lot you can do. > On a slightly differnet topic, I'm trying to figure out where to devote my > time. I've had a few free days that I've done nothing more than sit and > stare at the screen and look at web pages, without any work being done. You really should give up on your porn habits, you know... ;) > So if any of you could give me some words of encouragement toward > completing the recompiler, that would surely be appreciated. I just feel > like it'll go unappreciated. Really, I'd really like to see this. I'm about to start writing (or co-writing, in fact) a dynamic compiler for a 68k CPU. It could be useful to see the techniques that you come up with. By the same token, if I can invent anything useful, then I'm willing to share that with you. Whether it becomes freely available to the public, I don't know, but I suppose it could be nice for people to look at. Whatever, it's certainly not up to just me to decide. But yes, I'd really like to see this a lot. That or a new version of Retrocade that supports things like Bubble Bobble. ;) Whatever, sounds like you need a break. It sounds like you're always busy! I mean... look at all the stuff you've done! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 25 19:49:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id TAA33747 for dynarec-outgoing; Sat, 25 Mar 2000 19:49:27 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Sun, 26 Mar 2000 05:34:14 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >People called Retrocade a fake, too. I must have missed that... >Uh... the SH-4 has 4 times the P2-266? I highly doubt that. Well, the integer performance isn't that high for the 200MHz SH-4 (only about 360 MIPS) but the peak FP performance is quite cool when the 128- bit vector FP operations are used: 1.4 GFLOPS! >He's totally full of shit. The 1GB CDROMs aren't readable with >conventional drives - they don't even use the same optical pickup! I only knew that the format is by Yamaha and totally different to the Philips/Sony stuff. >As far >as spinning the drive backwards, CDROM drives have a "start" and "stop" - >no directional junk. That's what I thought too, but I don't know much about CD-ROM drives after all. >On a slightly differnet topic, I'm trying to figure out where to devote my >time. I've had a few free days that I've done nothing more than sit and >stare at the screen and look at web pages, without any work being done. Sounds a bit like me... >So if any of you could give me some words of encouragement toward >completing the recompiler, that would surely be appreciated. I just feel >like it'll go unappreciated. I'm sorry if you get that feeling! Your work is much appreciated, especially since you are the only one of us who does some serious work on dynarec matters. Compared to you I did almost nothing so far. Having taken a look at the dynarec of 1964 just a few days ago I can say that I'm just so fed up with these quick and dirty hacks that I really love to see your dynarec in a more complete shape. I just got the opinion that you are pretty busy at the moment and didn't want to hurry you, but I'm still longing for the when it'll finally run ;-) If you need more encouragement then tell me ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Mar 25 19:49:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id TAA33754 for dynarec-outgoing; Sat, 25 Mar 2000 19:49:28 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Sun, 26 Mar 2000 05:49:20 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Of course. We've always played "Spot the fake", it's just that sometimes >it's really easy (like in this case) and sometimes not. All you need to have >is a little common sense - or a brain. But sometimes you lack the knowledge about the machine to decide if it's possible or not and in some cases the programmers tweak the emulator till it runs something, just take UltraHLE. >Bleem could have been real - a P166 >*is* powerful enough to emulate what is essentially a 386-33MHz machine. Erm, first of all this depends on the software. Any office product running on my old Atari ST is likely to outperform similar software on a 386. And secondly, a 386 isn't normally equipped with SPU, MDEC, GTE, and GPU which most people forget about the PSX. >Things like Dreamcast emulators aren't possible at the moment, not least >because of the special format CD-ROMs that it uses. Indeed. >The specs are about double the FPU, I believe. A 450MHz CPU is still faster. Wait for SH-5: 700 MIPS and 2.8 GFLOPS with just 1000mW! And it can perform 4 MACs per cycle! >I'm not sure about the relative speeds of the PS2 CPU, though... The integer performance of the EmotionEngine is crap but it has 10 (in words ten) parallel FPUs! >Yes, agreed. This is a completely obvious fake. But that guy doesn't seem to notice that nobody doesn't fall in for it. >I suppose it's possible to fake the drive spinning backwards (you read one >byte, wait for the CD to spin around again and read the previous byte ad >infinitum), but I think it would be quite hard to do. I thought about that too but it will be very slow. >But, as Neil said, >different optical pickup. If it requires a different laser frequency to >read, there's not a whole lot you can do. Well, you could rip the drive from a DC try to fit it into a PC and write a driver for it, but then you could also play the games directly on the DC ;-) >You really should give up on your porn habits, you know... ;) How do you know what he is watching? ;-) >Really, I'd really like to see this. I'm about to start writing (or >co-writing, in fact) a dynamic compiler for a 68k CPU. It could be useful to >see the techniques that you come up with. By the same token, if I can invent >anything useful, then I'm willing to share that with you. Whether it becomes >freely available to the public, I don't know, but I suppose it could be nice >for people to look at. Whatever, it's certainly not up to just me to decide. Sounds interesting, keep us informed! >But yes, I'd really like to see this a lot. That or a new version of >Retrocade that supports things like Bubble Bobble. ;) Hurry up Neil, hurry up! ;-) >Whatever, sounds like you need a break. It sounds like you're always busy! I >mean... look at all the stuff you've done! Yeah, if you should need a break just take it. It's your spare time and you should decide what you want to do with it! But if you want to continue your project then tell us how we can support you! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 26 22:32:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id WAA37268 for dynarec-outgoing; Sun, 26 Mar 2000 22:32:32 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DEFF9F.14D45424@eurocopter.de> Date: Mon, 27 Mar 2000 08:28:47 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Uh... the SH-4 has 4 times the P2-266? I highly doubt that. > > Well, the integer performance isn't that high for the 200MHz SH-4 (only > about 360 MIPS) but the peak FP performance is quite cool when the 128- > bit vector FP operations are used: 1.4 GFLOPS! Pretty impressive. But that's theoretical figures. I'd like know exactly how much it actually DOES get to. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 26 22:40:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id WAA37289 for dynarec-outgoing; Sun, 26 Mar 2000 22:40:56 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DF0188.AC97EF33@eurocopter.de> Date: Mon, 27 Mar 2000 08:36:56 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > But sometimes you lack the knowledge about the machine to decide if > it's possible or not and in some cases the programmers tweak the > emulator till it runs something, just take UltraHLE. That's a case in point. In real terms it should be very difficult to emulate a N64 on a PII-450. However, they haven't gone for proper emulation (other than the CPU), they're using a new technique - HLE. And because of the way it was announced, THIS emulator wasn't seen as being a fake... :) > >Bleem could have been real - a P166 > >*is* powerful enough to emulate what is essentially a 386-33MHz > machine. > > Erm, first of all this depends on the software. Any office product > running on my old Atari ST is likely to outperform similar software on > a 386. That's because they optimised for your ST. > And secondly, a 386 isn't normally equipped with SPU, MDEC, GTE, and > GPU which most people forget about the PSX. Maybe, but the difficult part in this case is the CPU. It's not so hard to emulate something when something in your system does a very similar job - which is the case with the PC and emulating the PSX. > Wait for SH-5: > 700 MIPS and 2.8 GFLOPS with just 1000mW! And it can perform 4 MACs per > cycle! Impressive, but we'll see what Intel and AMD have to offer at that time. > >I'm not sure about the relative speeds of the PS2 CPU, though... > > The integer performance of the EmotionEngine is crap but it has 10 (in > words ten) parallel FPUs! Now all they need to do is to optimise (or have a good C optimiser) that actually uses those 10 FPUs... > >I suppose it's possible to fake the drive spinning backwards (you read > one > >byte, wait for the CD to spin around again and read the previous byte > ad > >infinitum), but I think it would be quite hard to do. > > I thought about that too but it will be very slow. Not just that, but very hard to sync as well... > >But, as Neil said, > >different optical pickup. If it requires a different laser frequency > to > >read, there's not a whole lot you can do. > > Well, you could rip the drive from a DC try to fit it into a PC and > write a driver for it, but then you could also play the games directly > on the DC ;-) Yes, exactly. :) > >You really should give up on your porn habits, you know... ;) > > How do you know what he is watching? ;-) I installed my copy of "Microsoft(tm) Porn Habit Watcher" on his computer via a special backdoor in the mailing list. ;) > Sounds interesting, keep us informed! And we'll compare it to StarScream. With a bit of luck, it may even beat it in speed. ;) > >But yes, I'd really like to see this a lot. That or a new version of > >Retrocade that supports things like Bubble Bobble. ;) > > Hurry up Neil, hurry up! ;-) Extend! Extend! Ex... ooh. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 26 23:02:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA37363 for dynarec-outgoing; Sun, 26 Mar 2000 23:02:37 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: VICTOR MOYA DEL BARRIO Message-Id: <200003270700.JAA26001@alabi.fib.upc.es> Subject: Re: DYNAREC: Emu Fakes In-Reply-To: from Michael Koenig at "Mar 26, 0 05:49:20 am" To: dynarec@synthcom.com Date: Mon, 27 Mar 2000 09:00:05 +0200 (MET DST) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Really, I'd really like to see this. I'm about to start writing (or > >co-writing, in fact) a dynamic compiler for a 68k CPU. It could be > useful to > >see the techniques that you come up with. By the same token, if I can > invent > >anything useful, then I'm willing to share that with you. Whether it > becomes > >freely available to the public, I don't know, but I suppose it could > be nice > >for people to look at. Whatever, it's certainly not up to just me to > decide. > > Sounds interesting, keep us informed! > Yes, it would be interesting. I have to do the same for my project but I have no time actually. BTW, what happened this weekend? The university server was down ... Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 26 23:02:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA37371 for dynarec-outgoing; Sun, 26 Mar 2000 23:02:44 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003270628.IAA01274@florensa.ac.upc.es> Subject: Re: DYNAREC: OT: Compilation and recompilation In-Reply-To: <38DB64ED.E3832ECF@eurocopter.de> from Neil Griffiths at "Mar 24, 2000 01:51:57 pm" To: dynarec@synthcom.com Date: Mon, 27 Mar 2000 08:28:18 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-MIME-Autoconverted: from 8bit to quoted-printable by florensa.ac.upc.es id IAA01274 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id XAA37368 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > I had heard that the machine was similar to PSX hardware. If so then the > > > speed is terrible. If it isn't, then the speed is acceptable... > > > > Perhaps some research should be done on this topic. > > On the machine? Certainly. On the authors? I think they want to remain > anonymous, so we can't ask them anything! > Oh well, then only on the machine. > > > I like all types of games including these RPGs. But my heart is with > > > platform games I think. My all-time favourite game is Bubble Bobble. :) > > > > > > > Bubble Bobble is a really nice game :) I like it too. I usually don´t like plataform > > games but there are someones that are really fun as Bubble Bobble. Lately I have been > > playing a bit Metal Slug, what a game! ;). But the best games for me are Japanese > > RPGs and the best game company is SquareSoft. But I don´t know much Japanese so I > > can´t really play them :( By the way what's your favorite game company. I vote for > > Konami and SquareSoft, but this last has very few games others than RPGs. > > Erm... I can't remember their name! My god... anyway, they wrote all those > cutsey games like Bubble Bobble, Rainbow Islands and so on... > Do you mean Taito? It's also a great company but I don't know what games they are actually doing. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 26 23:28:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA37404 for dynarec-outgoing; Sun, 26 Mar 2000 23:28:38 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DF0CD7.50B0BFDF@eurocopter.de> Date: Mon, 27 Mar 2000 09:25:11 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: <200003270700.JAA26001@alabi.fib.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Sounds interesting, keep us informed! > > > Yes, it would be interesting. I have to do the same for my project but I have no time actually. I don't have the time except at weekends, but then I have plenty - unless I decide to go travelling. This weekend I accomplished hardly anything, but that'll be due to the fact that I found out a member of my family could die soon unless he's lucky. It's hardly great news - which is why I don't feel like doing the SI tutorial today. > BTW, what happened this weekend? The university server was down ... You've replied to one, so you may have missed 4 other messages. Talking about emu fakes, in fact... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Mar 26 23:45:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA37430 for dynarec-outgoing; Sun, 26 Mar 2000 23:45:29 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003270747.JAA02481@florensa.ac.upc.es> Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38DF0188.AC97EF33@eurocopter.de> from Neil Griffiths at "Mar 27, 2000 08:36:56 am" To: dynarec@synthcom.com Date: Mon, 27 Mar 2000 09:47:40 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > That's a case in point. In real terms it should be very difficult to > emulate a N64 on a PII-450. However, they haven't gone for proper emulation > (other than the CPU), they're using a new technique - HLE. And because of > the way it was announced, THIS emulator wasn't seen as being a fake... :) > What do HLE means? > > Wait for SH-5: > > 700 MIPS and 2.8 GFLOPS with just 1000mW! And it can perform 4 MACs per > > cycle! > > Impressive, but we'll see what Intel and AMD have to offer at that time. Do you know new IA-64? I readed something this weekend. > > > >I'm not sure about the relative speeds of the PS2 CPU, though... > > > > The integer performance of the EmotionEngine is crap but it has 10 (in > > words ten) parallel FPUs! > > Now all they need to do is to optimise (or have a good C optimiser) that > actually uses those 10 FPUs... > They must use it for 3D graphics. When PCs come with the new and powerful GPUs perhaps could be emulated. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 00:02:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA37508 for dynarec-outgoing; Mon, 27 Mar 2000 00:02:38 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DF1485.CCA06EB2@eurocopter.de> Date: Mon, 27 Mar 2000 09:57:57 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: <200003270747.JAA02481@florensa.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > What do HLE means? High Level Emulation. It means that instead of emulating something at hardware level, you take input and give the output you'd expect to find. It means that it'll work - it just won't be particularly compatible. That's why so many patches are needed for UltraHLE - or for Nemu64 now... > > Impressive, but we'll see what Intel and AMD have to offer at that time. > Do you know new IA-64? I readed something this weekend. Indeed I do. It looks interesting. I'm also wondering whether we'll get to the point where we can't keep backwards compatibility with the x86 instruction set. I like it, but there are limitations (there are NOT enough registers!) to keeping it. If we can do something good with dynarec on this group, maybe in the future it could be worth looking at a PC emulator - like Bochs, but faster. > > Now all they need to do is to optimise (or have a good C optimiser) that > > actually uses those 10 FPUs... > > > They must use it for 3D graphics. When PCs come with the new and powerful GPUs > perhaps could be emulated. We already have powerful GPUs, it's just that they never use them to 100% because they're too limited by fillrate. You mean even MORE powerful GPUs? Yes, you're right. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 00:13:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA37533 for dynarec-outgoing; Mon, 27 Mar 2000 00:13:35 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003270815.KAA03225@florensa.ac.upc.es> Subject: Re: DYNAREC: Emu Fakes In-Reply-To: from Neil Bradley at "Mar 25, 2000 02:38:23 pm" To: dynarec@synthcom.com Date: Mon, 27 Mar 2000 10:15:25 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > On a slightly differnet topic, I'm trying to figure out where to devote my > time. I've had a few free days that I've done nothing more than sit and > stare at the screen and look at web pages, without any work being done. > > So if any of you could give me some words of encouragement toward > completing the recompiler, that would surely be appreciated. I just feel > like it'll go unappreciated. > You're recompiler is the best I have seen (oh well I haven't seen so many ;). But being serious, I'm very interested on see how your recompiler is when finished. I take a look at it and the general structure seems complet but you still need to do all the opcodes, the real hard work :) So people (oh well, myself) is interested in your see your recompiler completed. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 00:21:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA37550 for dynarec-outgoing; Mon, 27 Mar 2000 00:21:45 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003270823.KAA03478@florensa.ac.upc.es> Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38DF1485.CCA06EB2@eurocopter.de> from Neil Griffiths at "Mar 27, 2000 09:57:57 am" To: dynarec@synthcom.com Date: Mon, 27 Mar 2000 10:23:38 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > Impressive, but we'll see what Intel and AMD have to offer at that time. > > Do you know new IA-64? I readed something this weekend. > > Indeed I do. It looks interesting. I'm also wondering whether we'll get to > the point where we can't keep backwards compatibility with the x86 > instruction set. I like it, but there are limitations (there are NOT enough > registers!) to keeping it. If we can do something good with dynarec on this > group, maybe in the future it could be worth looking at a PC emulator - > like Bochs, but faster. > What I don't know still is how IA-64 keeps backwards compatibility with IA-32, perhaps I have missed it but I haven't seen anything in Intel documentation. They just say it's compatible, but I haven't see how. A PC emulator! So I can now emulate my first computer! What a dream! :)) As I saied later I started with a PC in computer world so it's the system I like most, like other people likes MSX or Spectrum. Emulate a PC (x86) is something really interesting, but the problem will be what emulation level perfom: an 8086 or a Pentium-II, a Pentium-II would be really hard to emulate it's bigger, I think, that all other CPUs actually emulated. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 00:39:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA37602 for dynarec-outgoing; Mon, 27 Mar 2000 00:39:40 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DF1D1B.29AE15F@eurocopter.de> Date: Mon, 27 Mar 2000 10:34:35 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: <200003270823.KAA03478@florensa.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > What I don't know still is how IA-64 keeps backwards compatibility with IA-32, > perhaps I have missed it but I haven't seen anything in Intel documentation. > They just say it's compatible, but I haven't see how. I'm not sure either... > A PC emulator! So I can now emulate my first computer! What a dream! :)) > As I saied later I started with a PC in computer world so it's the system I like > most, like other people likes MSX or Spectrum. With me it's the CPC, but in fact I don't emulate this too often. Perhaps I will someday. Arcade emulation just holds more interest to me, in fact. > Emulate a PC (x86) is something really interesting, but the problem will be what > emulation level perfom: an 8086 or a Pentium-II, a Pentium-II would be really > hard to emulate it's bigger, I think, that all other CPUs actually emulated. What would be interesting is emulating both 3DNow! and SIMD in the one CPU core. That could be funny. :) Forget the CPU - the graphics hardware would be more difficult to emulate. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 00:51:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA37625 for dynarec-outgoing; Mon, 27 Mar 2000 00:51:19 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003270853.KAA04022@florensa.ac.upc.es> Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38DF1D1B.29AE15F@eurocopter.de> from Neil Griffiths at "Mar 27, 2000 10:34:35 am" To: dynarec@synthcom.com Date: Mon, 27 Mar 2000 10:53:14 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > With me it's the CPC, but in fact I don't emulate this too often. Perhaps I > will someday. Arcade emulation just holds more interest to me, in fact. > Oh, I think I'm more interested in console emulation like MegaDrive or Snes. I hope someday I will have the time to do a MegaCD emulator. > > Emulate a PC (x86) is something really interesting, but the problem will be what > > emulation level perfom: an 8086 or a Pentium-II, a Pentium-II would be really > > hard to emulate it's bigger, I think, that all other CPUs actually emulated. > > What would be interesting is emulating both 3DNow! and SIMD in the one CPU > core. That could be funny. :) > Oh, the same work made twice. You will have to use some kind of flags to use one or other. > Forget the CPU - the graphics hardware would be more difficult to emulate. > :) Do you mean the actual graphic hardware or the old one? The old one is hard because there isn't a real standard (think in this old SVGA cards) and the actual graphics because they aren't so standard (unless you use APIs) and they are pretty complex cards. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 01:23:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA37698 for dynarec-outgoing; Mon, 27 Mar 2000 01:23:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DF27AD.327F6B38@eurocopter.de> Date: Mon, 27 Mar 2000 11:19:41 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: <200003270853.KAA04022@florensa.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Oh, I think I'm more interested in console emulation like MegaDrive or Snes. I > hope someday I will have the time to do a MegaCD emulator. I'm interested in *all* emulation, except the modern day stuff. I don't own a PSX or N64 and so emulating them doesn't interest me. But I have either owned or played with most old computers and consoles so I'm more interested by them. Emulating the MegaCD is not something I'd attempt. There were only about 5 games (okay, more like 20) for it! :o > > What would be interesting is emulating both 3DNow! and SIMD in the one CPU > > core. That could be funny. :) > > > Oh, the same work made twice. You will have to use some kind of flags to use > one or other. If you emulate the instruction set, no. But you WOULD need to invent some way of making the emulated CPU returning the correct CPUID. An option, maybe? > Do you mean the actual graphic hardware or the old one? The old one is hard > because there isn't a real standard (think in this old SVGA cards) and the > actual graphics because they aren't so standard (unless you use APIs) and they > are pretty complex cards. Yes, this is my point. And that's why it would be difficult. You'd have to choose one card to emulate and hope that it was the most compatible... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 01:39:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA37739 for dynarec-outgoing; Mon, 27 Mar 2000 01:39:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003270941.LAA04688@florensa.ac.upc.es> Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38DF27AD.327F6B38@eurocopter.de> from Neil Griffiths at "Mar 27, 2000 11:19:41 am" To: dynarec@synthcom.com Date: Mon, 27 Mar 2000 11:41:39 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Emulating the MegaCD is not something I'd attempt. There were only about 5 > games (okay, more like 20) for it! :o > But has a very interesting ones for me:) > > > What would be interesting is emulating both 3DNow! and SIMD in the one CPU > > > core. That could be funny. :) > > > > > Oh, the same work made twice. You will have to use some kind of flags to use > > one or other. > > If you emulate the instruction set, no. But you WOULD need to invent some > way of making the emulated CPU returning the correct CPUID. An option, > maybe? > I don't think this will be a problem, you will be emulating an AMD or emulating an INTEL. When you start the emulator you decide which CPU are you using. You only have to load properly the CPUID register and emulate the properly instruction set. > > Do you mean the actual graphic hardware or the old one? The old one is hard > > because there isn't a real standard (think in this old SVGA cards) and the > > actual graphics because they aren't so standard (unless you use APIs) and they > > are pretty complex cards. > > Yes, this is my point. And that's why it would be difficult. You'd have to > choose one card to emulate and hope that it was the most compatible... > Or hope it's the most supported by hardware. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 01:49:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA37766 for dynarec-outgoing; Mon, 27 Mar 2000 01:49:55 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 27 Mar 2000 01:49:54 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <006b01bf96ad$4808ad20$0a909090@okay> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > it's really easy (like in this case) and sometimes not. All you need to have > is a little common sense - or a brain. Bleem could have been real - a P166 > *is* powerful enough to emulate what is essentially a 386-33MHz machine. It's more like a 486/33 with a 3dfx board. But it's amazing to see how a 486/33like machine is knocking an N64 into the ground consistently... > > time. I've had a few free days that I've done nothing more than sit and > > stare at the screen and look at web pages, without any work being done. > You really should give up on your porn habits, you know... ;) God... I guess I'll have to start a porn habit first! > > So if any of you could give me some words of encouragement toward > > completing the recompiler, that would surely be appreciated. I just feel > > like it'll go unappreciated. > Really, I'd really like to see this. I'm about to start writing (or > co-writing, in fact) a dynamic compiler for a 68k CPU. It could be useful to You and I should probably work together on this one. I already have a lot of the pieces of the puzzle. > Whatever, sounds like you need a break. It sounds like you're always busy! I > mean... look at all the stuff you've done! What I'd really like to do is hit the reset button on *EVERYTHING* I'm doing. I'm half way through contracting work and that's taking up all my time, and I barely have enough to keep afloat. But I did look at the recompiler tonight a bit. I stopped at the conditional jump instructions because there are three possible jump code scenarios: * Jump to an address you already know (just create a jump instruction to that address) * Jump to an address that is in the currently recompiled block (which you WILL know the address when the block is finished) * Jump to an address that you have no idea what it is Option #1 and #3 are covered. #2 Isn't, which is really just a variant of option 1. My brain is fried for tonight. More as I know it! -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 02:09:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA37944 for dynarec-outgoing; Mon, 27 Mar 2000 02:09:15 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DF3213.D640C089@eurocopter.de> Date: Mon, 27 Mar 2000 12:04:03 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > It's more like a 486/33 with a 3dfx board. But it's amazing to see how a > 486/33like machine is knocking an N64 into the ground consistently... Okay, I'll grant you 486/33. But not a 3Dfx board. God, the thing in the PSX isn't even as powerful as a ViRGE. It can't Z-buffer, it has no perspective correction and it sucks in general. :) > > You really should give up on your porn habits, you know... ;) > > God... I guess I'll have to start a porn habit first! A programmer without one? What a novelty! ;) In fact, this is something I live quite happily without. Whether that's due more to my disinterest or the fact that I have to pay for the phone bill, I'm not quite sure... :) > > Really, I'd really like to see this. I'm about to start writing (or > > co-writing, in fact) a dynamic compiler for a 68k CPU. It could be useful to > > You and I should probably work together on this one. I already have a lot > of the pieces of the puzzle. Really? I'd be very interested in this. I'll check with the other guy and if he has no problems then we can maybe make a start on it in a few weeks (we're currently designing the framework for the emulator at the moment, doing the graphics routines etc)? > > Whatever, sounds like you need a break. It sounds like you're always busy! I > > mean... look at all the stuff you've done! > > What I'd really like to do is hit the reset button on *EVERYTHING* I'm > doing. I'm half way through contracting work and that's taking up all my > time, and I barely have enough to keep afloat. Ah, yuk. I've done a little contract work before (only 2 months or so). Pay is good, but the workload is high. I feel your pain! > But I did look at the recompiler tonight a bit. I stopped at the > conditional jump instructions because there are three possible jump code > scenarios: > > * Jump to an address you already know (just create a jump instruction to > that address) > > * Jump to an address that is in the currently recompiled block (which you > WILL know the address when the block is finished) > > * Jump to an address that you have no idea what it is > > Option #1 and #3 are covered. #2 Isn't, which is really just a variant of > option 1. My brain is fried for tonight. More as I know it! #2 will be a little more difficult to cover, I'd have thought. Ah well... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 05:14:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA38335 for dynarec-outgoing; Mon, 27 Mar 2000 05:14:29 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Mon, 27 Mar 2000 14:32:29 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> Wait for SH-5: >> 700 MIPS and 2.8 GFLOPS with just 1000mW! And it can perform 4 MACs per >> cycle! >Impressive, but we'll see what Intel and AMD have to offer at that time. Well, they not only doubled the clock speed, but added a 32-bit instruction format (called SHmedia) to the 16-bit instruction format (now called SHcompact), which made it possible to extend the register set from only 16 to 64 registers (the GPRs now with 64-bit) and also to add SIMD instructions. This surely makes the SH-5 one of the most powerful embedded processors I know. >> The integer performance of the EmotionEngine is crap but it has 10 (in >> words ten) parallel FPUs! >Now all they need to do is to optimise (or have a good C optimiser) that >actually uses those 10 FPUs... Yeah, can be quite hard. >> Sounds interesting, keep us informed! >And we'll compare it to StarScream. With a bit of luck, it may even beat it >in speed. ;) Well, if you didn't beat it than the whole project would be senseless... >Extend! Extend! Ex... ooh. :) Too late! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 05:14:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA38344 for dynarec-outgoing; Mon, 27 Mar 2000 05:14:42 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Mon, 27 Mar 2000 14:35:09 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >BTW, what happened this weekend? The university server was down ... Do you mean on this list or in general? Well, eg. we had the Oscar night, or in my case the Oscar morning from 2 AM to 7:30 AM... BTW, Spain got the Oscar for the best foreign film. More details here: http://www.oscar.com/oscarnight.html Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 05:14:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA38354 for dynarec-outgoing; Mon, 27 Mar 2000 05:14:44 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Mon, 27 Mar 2000 14:36:34 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I don't have the time except at weekends, but then I have plenty - unless I >decide to go travelling. This weekend I accomplished hardly anything, but >that'll be due to the fact that I found out a member of my family could die >soon unless he's lucky. That's bad news indeed. I'm sorry for you! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 05:14:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA38362 for dynarec-outgoing; Mon, 27 Mar 2000 05:14:50 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Mon, 27 Mar 2000 14:50:09 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >What do HLE means? High Level Emulation: you spare some hardware emulation by trapping system calls and emulating these directly. In the case of UltraHLE the calls to Nintendo's game library are trapped. >Do you know new IA-64? I readed something this weekend. A real monster: * 128 general purpose registers with 64 bit * 128 FP registers with 82 bit * 64 predicate registers with 1 bit used in the following way: pT, pF = compare(a < b) /* if */ if (pT) c = c + 1 /* then */ if (pF) c = c * d /* else */ This means most compare instructions set two of the predicate registers, the first to the result of the compare and the second one to the complementary value. Since almost all instructions include an encoded predication register very many instructions can be executed conditionally. Since predication register 0 is always one (1) instructions having this register encoded are always executed. * 8 branch registers for branch target calculation * a bunch of special application registers (used for kernel comunication eg.), actually up to 128 but only some are used at the moment. * 128-bit VLIW (very long instruction word) with 3 41-bit instruction slots and 5-bit template information. * Have I already mentioned that it's a monster? >They must use it for 3D graphics. When PCs come with the new and powerful GPUs >perhaps could be emulated. I think it has the GraphicsSynthesizer for 3D graphics... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 05:15:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA38377 for dynarec-outgoing; Mon, 27 Mar 2000 05:15:03 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Mon, 27 Mar 2000 15:01:18 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >What I don't know still is how IA-64 keeps backwards compatibility with IA-32, >perhaps I have missed it but I haven't seen anything in Intel documentation. >They just say it's compatible, but I haven't see how. The processor has two hardware modes: IA-32 and IA-64. An idea, which was probably inventend by ARM (now also used by MIPS and SuperH) to switch between their ARM and Thumb instruction sets is utilized by Itanium. Special jump instructions are used to jump between blocks of different modes, x86 therefore got a new the new instruction "jmpe" (jump and exchange?) and the IA-64 equivalent is "bra.ia". Interrupts are only handled by IA-64 which is why the operating system must support x86 programs to be really able to run these. In IA-32 mode some of the GPRs and FPRs (8 to 31) are used to emulate the x86 register, for EFLAG the application register 24 is reserved. That's what I could extract from Intel's "IA-64 Application Developer's Architecture Guide, Rev. 1.0". Hope that helps ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 05:15:22 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA38386 for dynarec-outgoing; Mon, 27 Mar 2000 05:15:22 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Mon, 27 Mar 2000 15:04:41 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> What would be interesting is emulating both 3DNow! and SIMD in the one CPU >> core. That could be funny. :) >Oh, the same work made twice. You will have to use some kind of flags to use >one or other. Not exactly, MMX is integer based and 3DNow! is FP based. The FP SIMD extension made for the P3 is called ISSE (Internet Streaming SIMD Extension). I wonder what the Internet has to do with it? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 05:36:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA38450 for dynarec-outgoing; Mon, 27 Mar 2000 05:36:38 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DF6294.EAA06EDB@eurocopter.de> Date: Mon, 27 Mar 2000 15:31:00 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Not exactly, MMX is integer based and 3DNow! is FP based. The FP SIMD > extension made for the P3 is called ISSE (Internet Streaming SIMD > Extension). I wonder what the Internet has to do with it? That's why I didn't mention MMX - just 3DNow! and SIMD which are both instruction sets that work with FP operations. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 05:39:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA38459 for dynarec-outgoing; Mon, 27 Mar 2000 05:39:14 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DF636E.75C6A2CA@eurocopter.de> Date: Mon, 27 Mar 2000 15:34:38 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > That's bad news indeed. I'm sorry for you! Thanks. You've got to love Doctors, though. My uncle has been ill for about one and a half years now. They've now identified his illness as a disease which needs to be identified as early as possible. If they're too late, he could die. If they're almost too late, it will more than likely turn into cancer. Whatever, he'll be on medicine for the rest of his life now. But I'm not a medical student, I don't know what the situtation is with this illness. In a way, I'm feeling sorry more for his children than him. Anyway, I didn't feel like doing the SI tutorial because of that. Still, can't be helped. Have to wait and see... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 06:24:12 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA38518 for dynarec-outgoing; Mon, 27 Mar 2000 06:24:12 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Mon, 27 Mar 2000 16:10:46 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >That's why I didn't mention MMX - just 3DNow! and SIMD which are both >instruction sets that work with FP operations. I got the opinion that some firms use SIMD for integer and the term vector for FP operations, although in theory both terms are synonymous. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 06:45:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA38569 for dynarec-outgoing; Mon, 27 Mar 2000 06:45:08 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DF72F5.FED5F33E@eurocopter.de> Date: Mon, 27 Mar 2000 16:40:53 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >That's why I didn't mention MMX - just 3DNow! and SIMD which are both > >instruction sets that work with FP operations. > > I got the opinion that some firms use SIMD for integer and the term > vector for FP operations, although in theory both terms are synonymous. I have the impression that a lot of SIMD instructions are the same as 3DNow! instructions. I haven't looked - I don't have a processor that does either. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 07:37:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA38703 for dynarec-outgoing; Mon, 27 Mar 2000 07:37:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Mon, 27 Mar 2000 17:30:10 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I have the impression that a lot of SIMD instructions are the same as >3DNow! instructions. I haven't looked - I don't have a processor that does >either. :) I don't know much about 3DNow! but AMD had to include MMX compatabilty and there are surely some standard operations you can do so they might just have chosen these for their own 3DNow! as well. The implementational difference between 3DNow! and MMX is that AMD uses the same registers for FP, MMX, and 3DNow! and Intel has separate register sets for FP, MMX, and ISSE. On the outside MMX and FP registers seem to be identical because that way you don't have to change the operating system to save these registers on a task switch. The consequence is that ISSE is almost useless when you don't have an OS which supports saving of these registers as well. There might be a further difference between SIMD and vector FP operations. SIMD normally works is saturation mode, ie. if you normally would get a carry the result is the highest possible value instead. I'm not sure if this makes much sense for FP operations... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 07:53:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA38736 for dynarec-outgoing; Mon, 27 Mar 2000 07:53:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DF82F2.EDB5D51E@eurocopter.de> Date: Mon, 27 Mar 2000 17:49:06 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >I have the impression that a lot of SIMD instructions are the same as > >3DNow! instructions. I haven't looked - I don't have a processor that > does > >either. :) > > I don't know much about 3DNow! but AMD had to include MMX compatabilty > and there are surely some standard operations you can do so they might > just have chosen these for their own 3DNow! as well. AMD have had MMX since the K6. That one I know - because I had one. :) > The implementational difference between 3DNow! and MMX is that AMD uses > the same registers for FP, MMX, and 3DNow! and Intel has separate > register sets for FP, MMX, and ISSE. On the outside MMX and FP > registers seem to be identical because that way you don't have to > change the operating system to save these registers on a task switch. > The consequence is that ISSE is almost useless when you don't have an > OS which supports saving of these registers as well. I'm not entirely sure what the OS has to do with it... Oh, I've just re-read what you wrote and now I see. Yes, okay, I'll give you that. :) > There might be a further difference between SIMD and vector FP > operations. SIMD normally works is saturation mode, ie. if you normally > would get a carry the result is the highest possible value instead. I'm > not sure if this makes much sense for FP operations... That could get confusing if you didn't know that. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 08:23:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA38811 for dynarec-outgoing; Mon, 27 Mar 2000 08:23:20 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Mon, 27 Mar 2000 18:23:39 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >AMD have had MMX since the K6. That one I know - because I had one. :) My AMD is too old to have MMX... >I'm not entirely sure what the OS has to do with it... Oh, I've just >re-read what you wrote and now I see. Yes, okay, I'll give you that. :) I don't know if there already as an OS that saves the ISSE registers, maybe Win2000 but certainly not Win98. >That could get confusing if you didn't know that. :) Most processors provide a mode switch for saturation or wrap-around, but for most multi-media data saturation is more suitable since you don't want white to turn into black when you add 1 ;-) But as I said I'm really not sure if saturation can also be used for FP data. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 08:44:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA38901 for dynarec-outgoing; Mon, 27 Mar 2000 08:44:38 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DF8F3D.1645C5C7@eurocopter.de> Date: Mon, 27 Mar 2000 18:41:33 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >AMD have had MMX since the K6. That one I know - because I had one. :) > > My AMD is too old to have MMX... So it's a K5 or lower then? > >I'm not entirely sure what the OS has to do with it... Oh, I've just > >re-read what you wrote and now I see. Yes, okay, I'll give you that. > :) > > I don't know if there already as an OS that saves the ISSE registers, > maybe Win2000 but certainly not Win98. Linux, maybe? I'm pretty sure it supports IA-32 so far... > >That could get confusing if you didn't know that. :) > > Most processors provide a mode switch for saturation or wrap-around, > but for most multi-media data saturation is more suitable since you > don't want white to turn into black when you add 1 ;-) Hey, it's a feature, not a bug! ;) > But as I said I'm really not sure if saturation can also be used for FP > data. I'd hope not. Else lots of programs could get confused. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 08:47:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA38934 for dynarec-outgoing; Mon, 27 Mar 2000 08:47:56 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38DF8FAE.92BF3E06@eurocopter.de> Date: Mon, 27 Mar 2000 18:43:26 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: OT: Compilation and recompilation References: <200003270628.IAA01274@florensa.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > On the machine? Certainly. On the authors? I think they want to remain > > anonymous, so we can't ask them anything! > > > Oh well, then only on the machine. I'm pretty sure it's the PSEmu guys, though. I'd be surprised if it wasn't. But I don't actually care if it is or isn't, to be honest. :) > > Erm... I can't remember their name! My god... anyway, they wrote all those > > cutsey games like Bubble Bobble, Rainbow Islands and so on... > > > Do you mean Taito? It's also a great company but I don't know what games they are actually doing. I do mean Taito, yes. And they're probably doing Puzzle Bobble 2000 right now... :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 09:23:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA39097 for dynarec-outgoing; Mon, 27 Mar 2000 09:23:08 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 27 Mar 2000 09:23:07 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > The implementational difference between 3DNow! and MMX is that AMD uses > the same registers for FP, MMX, and 3DNow! and Intel has separate > register sets for FP, MMX, and ISSE. On the outside MMX and FP No, no.. FP/MMX Use the same (FP) registers. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 09:29:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA39136 for dynarec-outgoing; Mon, 27 Mar 2000 09:29:19 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 27 Mar 2000 09:29:18 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38DF3213.D640C089@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > In fact, this is something I live quite happily without. Whether that's due > more to my disinterest or the fact that I have to pay for the phone bill, > I'm not quite sure... :) Hey, I'm all for porn! It's just a matter of time, that's all! > > You and I should probably work together on this one. I already have a lot > > of the pieces of the puzzle. > Really? I'd be very interested in this. I'll check with the other guy and > if he has no problems then we can maybe make a start on it in a few weeks > (we're currently designing the framework for the emulator at the moment, > doing the graphics routines etc)? I had planned on doing my own 68K core, too, but my thinking is that we can create a 68K core that would "plug in" directly to this recompiler "architecture" I'm working on. > > But I did look at the recompiler tonight a bit. I stopped at the > > conditional jump instructions because there are three possible jump code > > scenarios: > > > > * Jump to an address you already know (just create a jump instruction to > > that address) > > > > * Jump to an address that is in the currently recompiled block (which you > > WILL know the address when the block is finished) > > > > * Jump to an address that you have no idea what it is > > > > Option #1 and #3 are covered. #2 Isn't, which is really just a variant of > > option 1. My brain is fried for tonight. More as I know it! > #2 will be a little more difficult to cover, I'd have thought. Ah well... Actually, #2 is already handled by the emitter. I just point it to an sOp structure rather than an actual address or virtual address and it takes care of the rest. Last night I just couldn't remember how to do it! -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 09:53:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA39220 for dynarec-outgoing; Mon, 27 Mar 2000 09:53:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Mon, 27 Mar 2000 19:44:09 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No, no.. FP/MMX Use the same (FP) registers. According to my information in the implementation these two are different: 8 FP registers with 80-bit and 8 MMX registers with 64-bit. But for the architecture they are handled just like FP registers to save and restore these with FSAVE and FRSTOR. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 09:53:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA39229 for dynarec-outgoing; Mon, 27 Mar 2000 09:53:25 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Mon, 27 Mar 2000 19:46:40 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >So it's a K5 or lower then? AMD 5x86. >Linux, maybe? I'm pretty sure it supports IA-32 so far... I don't know much about Linux kernels... >Hey, it's a feature, not a bug! ;) That's precise enough! ;-) >I'd hope not. Else lots of programs could get confused. :)) Are you talking about AI programs? ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 09:53:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA39235 for dynarec-outgoing; Mon, 27 Mar 2000 09:53:25 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Mon, 27 Mar 2000 19:53:40 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I had planned on doing my own 68K core, too, but my thinking is that we >can create a 68K core that would "plug in" directly to this recompiler >"architecture" I'm working on. According to which systems should be supported some changes like a paged TransMap would be necessary, but it certainly would be a much better starting point than trying to find another method and just end up with yet another hacked approach. >Actually, #2 is already handled by the emitter. I just point it to an sOp >structure rather than an actual address or virtual address and it takes >care of the rest. Last night I just couldn't remember how to do it! Since I also should know that you have such an entry in your opcode structure you're not alone in not remembering it... BTW, I hope you could convince you that your work is really appreciated! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 10:00:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA39270 for dynarec-outgoing; Mon, 27 Mar 2000 10:00:47 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 27 Mar 2000 10:00:46 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >No, no.. FP/MMX Use the same (FP) registers. > According to my information in the implementation these two are > different: 8 FP registers with 80-bit and 8 MMX registers with 64-bit. > But for the architecture they are handled just like FP registers to > save and restore these with FSAVE and FRSTOR. Well, no, actually. That was the big push when they were released. You couldn't do FP when you were doing MMX and vice versa. When I talked to the guys in IAL, they were concerned that existing operating systems wouldn't save an alternate set of registers off when switching contexts, so the easiest thing to do to retain compatability was to use the general FP regs. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 10:18:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA39353 for dynarec-outgoing; Mon, 27 Mar 2000 10:18:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Mon, 27 Mar 2000 20:18:46 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Well, no, actually. That was the big push when they were released. You >couldn't do FP when you were doing MMX and vice versa. It seems that the info in my book is too old. I'll have a look at the official papers by Intel then. But I also heard that FP and MMX instructions couldn't be used at the same time so it's likely that you're right. >When I talked to >the guys in IAL, they were concerned that existing operating systems >wouldn't save an alternate set of registers off when switching contexts, Now they have exactly that problem with the ISSE registers... >so the easiest thing to do to retain compatability was to use the general >FP regs. That's what MIPS does with MDMX and probably also most other procesors. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 10:31:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA39407 for dynarec-outgoing; Mon, 27 Mar 2000 10:31:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 27 Mar 2000 10:31:35 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Well, no, actually. That was the big push when they were released. You > >couldn't do FP when you were doing MMX and vice versa. > It seems that the info in my book is too old. I'll have a look at the > official papers by Intel then. But I also heard that FP and MMX > instructions couldn't be used at the same time so it's likely that > you're right. Correct. Oh, if only they were separate! According to the Intel Architecture Software Developer's Manual (10-2): "The MMX state consists of eight 64 bit registers (MM0-MM7). These registers are aliased to the 64 bit mantissas (bits 0-63) of floating point registers R0 through R7. Note that the MMX registers are mapped to the physical locations of the floating point registers (R0 through R7), not to the relative locations of the registers in the floating point register stack (ST0 through ST7). As a result, the MMX register mapping is fixed and is not affected by value in top of stack field in the floating point status word. When a value is written into an MMX register using an MMX instruction, the value also appears in the corresponding floating point register in bits 0 through 63. Likewise, when a floating point value written into a floating point register by a floating point instruction, the mantissa of the value also appears in the corresponding MMX register." -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 11:46:00 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA39721 for dynarec-outgoing; Mon, 27 Mar 2000 11:46:00 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Mon, 27 Mar 2000 06:52:38 -0800 (PST) To: dynarec@synthcom.com Subject: DYNAREC: PC emulation In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Just in case anyone is wondering about this, I figured I'd dump everything I learned when I tried =) First you have the CPU. You need to decide which one you are going to emulate, 8086/8088, 286, or 386+. If you are going with the 8086/8088, you will need to be cycle accurate, and limit the speed to that of the early PC's due to teh fact that people still timed code. This may also be true with the 286. The 8086/8088 have an interesting design, they are made up of 2 main units, the Execution Unit (EU), and Bus Interface Unit (BIU). The BIU takes 4 clocks to read an atom of data (8 bits on the 8088, 16 bits on the 8086). It has an internal queue (8 bytes if I remember correctly) to hold instructions. If there are 2 free spots or more, it will read until it is full (8086, 8088 fills if 1 or mroe is full). If, at the beginning of a 4-clock bus cycle, the EU has an outstanding request for memory access, the BIU operates on that. The EU gets all instruction bytes from the queue. I believe the 8086 book gives the execution times in EU cycles, and you have to add 4 for each memory transaction. For the 286, it has it's own little protected mode that I have no information on whatsoever. The 386+'s are beasts. Emulating every last protection check can be a real pain in the ass. If you are going the extreme route, you also need to emulate the effects of both the cache, and possibly the somewhat complex behavior of the PPro and up... (out of order execution, register renaming, etc) However nasty that may sound, it pales in comparison to the rest. First, you need a bios image. Acquiring this can be harder than it sounds, as the 386+ chips start executing at FFFFFFF0. The first far JMP will change this down to FFFF0. What that means is that there could be bios code not accessible in most circumstances. I made an attempt to trace this stuff once. The code was worse than Super Mario Brothers when it came to spaghetti jumps. Hardware is another issue. Off the top of my head, here is the list of basic devices you have to emulate at the low end: RTC, 2 8259 PICs, DMA controller, graphics card, 8250/16450/16550 serial port, Parallel port, keyboard (with onboard 8048), IDE controller, floppy controller, and possibly a sound card. Information on these can be somewhat difficult to acquire, at least at the level of detail needed for perfect emulation. On the upside, for most things post 286 era, you do not need to be cycle perfect, unless you're dealing with some particular tightly coded demos that pull insane shit with the VGA. The graphics cards are large projects on their own. The VGA was capable of some fairly complex operations in 4-bit and 8-bit planar modes. The vast slew of SVGA cards also comes to mind, some with fairly complicated coprocessors/accelerator chips. Documentation for most of these is not too hard to come by though, the "Programmers Guide to the EGA/VGA, and SVGA chipsets" (not exact title, it's 1500 miles away right now...) provides more information than one would think possible. For a bare bones emulation, the RTC, PIC, DMA, and floppy controller are needed. If you are going for PC/XT emulation, remember that they used a different HD interface than the current one. Information on these is somewhat limited outside of a library with books at the right age. Then again, your goals may differ. When I tried, I was going for something basic that would let me test OS code without rebooting (I grew rather fond of dosemu letting me debug the bootloader...) Hence, I needed a 386+ implementation that supported all the Pmode trappings... So, if you really consider doing one, that's what you're up against =) I have considered doing a CPU only implementation of the IA-64 just for the hell of it, but then, what would it be good for? =P John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Flatline Studios http://www.flatlinestudios.com Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 13:41:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA40226 for dynarec-outgoing; Mon, 27 Mar 2000 13:41:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <004701bf9834$d8eb8be0$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Emu Fakes Date: Mon, 27 Mar 2000 23:37:06 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > In fact, this is something I live quite happily without. Whether that's due > > more to my disinterest or the fact that I have to pay for the phone bill, > > I'm not quite sure... :) > > Hey, I'm all for porn! It's just a matter of time, that's all! I'm on a modem and I have to pay for phone calls. I'm not. :) > > > You and I should probably work together on this one. I already have a lot > > > of the pieces of the puzzle. > > Really? I'd be very interested in this. I'll check with the other guy and > > if he has no problems then we can maybe make a start on it in a few weeks > > (we're currently designing the framework for the emulator at the moment, > > doing the graphics routines etc)? > > I had planned on doing my own 68K core, too, but my thinking is that we > can create a 68K core that would "plug in" directly to this recompiler > "architecture" I'm working on. Sounds a cool idea. I'm very interested. Yes indeed. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 14:46:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA40515 for dynarec-outgoing; Mon, 27 Mar 2000 14:46:32 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Tue, 28 Mar 2000 00:45:38 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Correct. Oh, if only they were separate! According to the Intel >Architecture Software Developer's Manual (10-2): >"The MMX state consists of eight 64 bit registers (MM0-MM7). These >registers are aliased to the 64 bit mantissas (bits 0-63) of floating >point registers R0 through R7. Note that the MMX registers are mapped to >the physical locations of the floating point registers (R0 through R7), >not to the relative locations of the registers in the floating point >register stack (ST0 through ST7). As a result, the MMX register mapping is >fixed and is not affected by value in top of stack field in the floating >point status word. >When a value is written into an MMX register using an MMX instruction, the >value also appears in the corresponding floating point register in bits 0 >through 63. Likewise, when a floating point value written into a floating >point register by a floating point instruction, the mantissa of the value >also appears in the corresponding MMX register." Why did they implement two different physical locations when the act as the same anyway? Well, maybe it was easier to realize the MMX istructions on 64-bit registers than on the FP registers, but it's still a bit weird... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 15:02:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA40562 for dynarec-outgoing; Mon, 27 Mar 2000 15:02:04 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Mon, 27 Mar 2000 18:04:59 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: <9upvdss3vsvvdgp8e02u76ccflnp4066qq@4ax.com> References: In-Reply-To: X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Tue, 28 Mar 2000 00:45:38 CEST, "Michael Koenig" wrote: >>Correct. Oh, if only they were separate! According to the Intel >>Architecture Software Developer's Manual (10-2): >>"The MMX state consists of eight 64 bit registers (MM0-MM7). These >>registers are aliased to the 64 bit mantissas (bits 0-63) of floating >>point registers R0 through R7. Note that the MMX registers are mapped >to >>the physical locations of the floating point registers (R0 through >R7), >>not to the relative locations of the registers in the floating point >>register stack (ST0 through ST7). As a result, the MMX register >mapping is >>fixed and is not affected by value in top of stack field in the >floating >>point status word. >>When a value is written into an MMX register using an MMX instruction, >the >>value also appears in the corresponding floating point register in >bits 0 >>through 63. Likewise, when a floating point value written into a >floating >>point register by a floating point instruction, the mantissa of the >value >>also appears in the corresponding MMX register." > >Why did they implement two different physical locations when the act as >the same anyway? Well, maybe it was easier to realize the MMX >istructions on 64-bit registers than on the FP registers, but it's >still a bit weird... The key is that they use the same physical locations in the CPU, addressed through two different access methods - FP and MMX ops. By doing this, multitasking operating systems that already maintained the FP register context would by default also maintain the MMX register context - since they are, in actuality, the same registers. In other words, MMX could be implemented without requiring any changes to existing multitasking operating systems (like Windows, Linux, and Beos). -- Jack ---- The road to truth and enlightenment is long... be sure to bring a snack and something to drink - Seen on a bumper sticker --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 15:11:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA40627 for dynarec-outgoing; Mon, 27 Mar 2000 15:11:51 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 27 Mar 2000 15:11:49 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > value > >also appears in the corresponding MMX register." > Why did they implement two different physical locations when the act as > the same anyway? They didn't. They're aliased to the same registers! The reasons for doing so are as follows: * No need to change any existing operating system context switching routines for multiple apps using MMX/FP * When you're doing MMX style of instructions, FP really isn't that useful (and vice versa). -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 23:53:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA42517 for dynarec-outgoing; Mon, 27 Mar 2000 23:53:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E06452.8E80B14C@est.fib.upc.es> Date: Tue, 28 Mar 2000 09:50:42 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > >BTW, what happened this weekend? The university server was down ... > > Do you mean on this list or in general? > > Well, eg. we had the Oscar night, or in my case the Oscar morning from > 2 AM to 7:30 AM... > BTW, Spain got the Oscar for the best foreign film. > More details here: > http://www.oscar.com/oscarnight.html > Don´t remember this another time :) Months listening that Almodovar (the director) will win the Oscar, all weekend TV, radio talking about it ... And finally yesterday it was the main subject too ... It´s OK a Spanish film win the Oscar, but I think there was too much publicity here. And I don´t like the director ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Mar 27 23:59:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA42547 for dynarec-outgoing; Mon, 27 Mar 2000 23:59:29 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E065EA.C8B7C589@est.fib.upc.es> Date: Tue, 28 Mar 2000 09:57:30 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > >What do HLE means? > > High Level Emulation: you spare some hardware emulation by trapping > system calls and emulating these directly. In the case of UltraHLE the > calls to Nintendo's game library are trapped. > It´s something like trap system calls in an OS as DOS to not emulate direct disk access. > > >Do you know new IA-64? I readed something this weekend. > * Have I already mentioned that it's a monster? > Yes :) I have readed a bit of what you say. I have all documentation from Intel (all I found) and I have to take a more careful look. The first impression is that it´s really something big and new. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 00:05:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA42568 for dynarec-outgoing; Tue, 28 Mar 2000 00:05:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E066E1.3A7AFA11@est.fib.upc.es> Date: Tue, 28 Mar 2000 10:01:37 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > >What I don't know still is how IA-64 keeps backwards compatibility > with IA-32, > >perhaps I have missed it but I haven't seen anything in Intel > documentation. > >They just say it's compatible, but I haven't see how. > > The processor has two hardware modes: IA-32 and IA-64. An idea, which > was probably inventend by ARM (now also used by MIPS and SuperH) to > switch between their ARM and Thumb instruction sets is utilized by > Itanium. But what they have then, two decode engines in the same chip? Something I have thought: what would be faster use a hardware decoder for IA-32 or use 'Code Morphin' (in fact emulation) how is used in TransMeta. Perhaps a dynarec for IA-32 would generate faster code. > Special jump instructions are used to jump between blocks of > different modes, x86 therefore got a new the new instruction "jmpe" > (jump and exchange?) and the IA-64 equivalent is "bra.ia". Interrupts > are only handled by IA-64 which is why the operating system must > support x86 programs to be really able to run these. So you can change the mode each time you want. > > In IA-32 mode some of the GPRs and FPRs (8 to 31) are used to emulate > the x86 register, for EFLAG the application register 24 is reserved. > That's what I could extract from Intel's "IA-64 Application Developer's > Architecture Guide, Rev. 1.0". Hope that helps ;-) > I will take a large look up at it. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 00:22:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA42609 for dynarec-outgoing; Tue, 28 Mar 2000 00:22:13 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E06B31.A755E3DC@est.fib.upc.es> Date: Tue, 28 Mar 2000 10:20:01 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: <004701bf9834$d8eb8be0$0a909090@okay> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Griffiths wrote: > > > > You and I should probably work together on this one. I already have a > lot > > > > of the pieces of the puzzle. > > > Really? I'd be very interested in this. I'll check with the other guy > and > > > if he has no problems then we can maybe make a start on it in a few > weeks > > > (we're currently designing the framework for the emulator at the moment, > > > doing the graphics routines etc)? > > > > I had planned on doing my own 68K core, too, but my thinking is that we > > can create a 68K core that would "plug in" directly to this recompiler > > "architecture" I'm working on. > > Sounds a cool idea. I'm very interested. Yes indeed. :) > In my university project I planned to do a simple MegaDrive emulator with a recompiler M68000 (now is really stoped :( ), but if I don´t change my mind and implement a GameBoy one :) I thought to use the NB approach to the M68000 recompiler core (I think it fits better with a MegaDrive). I have to do it on my own (someday ...) but I could help in something in your M68000 core if you want (In fact when I started a Z80 core -never finished- it was hard after seen Neil´s core to do something different in the general ideas, perhaps I don´t have my own ideas ... :o, so something similar could happen with the M68000 core) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 00:30:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA42636 for dynarec-outgoing; Tue, 28 Mar 2000 00:30:55 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E06D1C.9959209B@est.fib.upc.es> Date: Tue, 28 Mar 2000 10:28:12 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: PC emulation References: Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com tarquin@austin.rr.com wrote: > Just in case anyone is wondering about this, I figured I'd dump everything > I learned when I tried =) > Really interesting your information :) I know a bit also about PC, ok well it´s the only system I really know well ;) And I figured a lot of things you say. I readed someday about 386+ priviliged instructions and I ever believed it will be really hard to do an emulator for this. And you have to emulate direct disk access (by In/Out) or to trap BIOS or OS calls if you want to emulate DOS (and perhaps WinX too). An XT and perhaps a 286 AT could be done with less or more work, perhaps would be the same as doing an Amiga emulator or something like that (and this is already difficult). But a 386+ would be a real nightmare for implement, a lot of work will be needed. Perhaps would be the most ambitous emulater even made ;) > > I have considered doing a CPU only implementation of the IA-64 just for > the hell of it, but then, what would it be good for? =P > You can´t stand without try the new IA-64, don´t you? ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 01:39:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA42768 for dynarec-outgoing; Tue, 28 Mar 2000 01:39:44 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E07B11.CA559CB5@eurocopter.de> Date: Tue, 28 Mar 2000 11:27:45 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: <004701bf9834$d8eb8be0$0a909090@okay> <38E06B31.A755E3DC@est.fib.upc.es> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Sounds a cool idea. I'm very interested. Yes indeed. :) > > In my university project I planned to do a simple MegaDrive emulator with a > recompiler M68000 (now is really stoped :( ), but if I don´t change my mind and > implement a GameBoy one :) I thought to use the NB approach to the M68000 > recompiler core (I think it fits better with a MegaDrive). I have to do it on > my own (someday ...) but I could help in something in your M68000 core if you > want (In fact when I started a Z80 core -never finished- it was hard after seen > Neil´s core to do something different in the general ideas, perhaps I don´t have > my own ideas ... :o, so something similar could happen with the M68000 core) Up to NB, though I don't mind. Anyway, looks like NB is busy at the moment. I'll be working on my own emulator core in the meantime (I can leave the CPU out for the moment) doing all the graphics routines and things. Heck, I'm busy too - so by the time I've done this, NB will probably have finished his contract! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 01:43:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA42781 for dynarec-outgoing; Tue, 28 Mar 2000 01:43:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E07C83.17B8B54C@est.fib.upc.es> Date: Tue, 28 Mar 2000 11:33:55 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: DYNAREC: Memory Cache References: <38E06D1C.9959209B@est.fib.upc.es> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com I said to talk about memory cache in emulation. I don´t really know much about it but I will talk a bit. Nowadays we have really big caches so it isn´t perhaps a problem but I can talk about it. The problem comes from the expansion in code and data that suposes an interpreter. An interpreter from a 16 bit CPU as M68000 (as the StarScream core is) uses big tables for decoding purpose and a lot of differents functions to perform the emulation of the M68K instruction set. This becomes in a big expansion in the code really executed in emulated. You can see that a native loop executed in an interpreter executes a lot of more code than in the native system. In the last case you only have to store in cache (ok, this systems don´t have cache though ...) the loop code and the data you are using. But in an interpreter you have to store the loop code itself, the data used by the loop and then the functions that execute the instructions for all instructions in the loop and the decode table entries for this instructions. So the size of the cached data becomes really big. This won´t really happen on an 8-bit CPU because the real size of the core fits full in actual caches: for example for Z80 you need only four (or five) decode tables of 1KB size each and only about a hundred or less of different functions for execute instructions, each function 100 bytes in size, so in 256KB or 512KB caches all CPU core fits (and usually all emulator data too!). But with an assembler full optimized M68K core you will use a 64K entries table each entry of 4 bytes. So you need 256KB only for the decode table. And you have hundreds (perhaps a thousand) different functions if you really want to full use the decode table. So you have a lot of more code for being cached. So this hardly will fit in a normal cache. You don´t need all time all the decode table nor the functions so cache already works but you will get some cache misses. The problem comes from do a full 16-bit opcode decode, you can use arrays of partial decodes (4 bits to 4 bits decodes for example) but you will still need a lot of tables, but perhaps less code. And you can decode in the instrucntion function. You need less memory and there are less cache misses but this two cases supose slowest code, too. So perhaps will be interesting study what it´s more important a fast decode and fast functions or to have less cache misses. These were my ideas. Now I think that this isn´t a problem, our caches are now really big and fast but I come to this ideas long time ago when I have an old 486. Other issues with cache will be how the hardware emulation functions handle the data they use. I´m thinking in graphics and sound emulation. If there is a lot of movement of data you need to think about cache when you build the graphics and sound system. But I´m no really an expert in graphics nor sound emulation :( BTW do you know documents/links or whatever to learn about this topics? Something more. When building a dynarec emulator there are some architectures that have separate instruction and data caches (not happens in x86) and they need an instruction that flushes the cache when code is modified. Something to take into account when building a dynarec. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 01:47:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA42797 for dynarec-outgoing; Tue, 28 Mar 2000 01:47:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E07EB7.4AD5A850@eurocopter.de> Date: Tue, 28 Mar 2000 11:43:19 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: PC emulation References: <38E06D1C.9959209B@est.fib.upc.es> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Perhaps would be the most ambitous emulater even made ;) Ooh, I don't know. I could emulate it really easily on my PII. ;) > > I have considered doing a CPU only implementation of the IA-64 just for > > the hell of it, but then, what would it be good for? =P > > You can´t stand without try the new IA-64, don´t you? ;) If Intel want to send me one for free, I know that I wouldn't complain. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 03:15:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA43212 for dynarec-outgoing; Tue, 28 Mar 2000 03:15:14 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Tue, 28 Mar 2000 13:07:21 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id DAA43209 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Don´t remember this another time :) >Months listening that Almodovar (the director) will win the Oscar, all weekend >TV, radio talking about it ... >And finally yesterday it was the main subject too ... >It´s OK a Spanish film win the Oscar, but I think there was too much publicity >here. And I don´t like the director ;) I have to admit that I haven't seen many films by Pedro Almadovar so far... I only thought it was worth mentioning it to you, but if you already knew it... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 03:15:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA43223 for dynarec-outgoing; Tue, 28 Mar 2000 03:15:25 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Tue, 28 Mar 2000 13:13:58 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id DAA43220 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yes :) I have readed a bit of what you say. I have all documentation from >Intel (all I found) and I have to take a more careful look. The first >impression is that it´s really something big and new. I wouldn't call it new. They took lots of features that are already known, but they made it big, big, big... >But what they have then, two decode engines in the same chip? They have to. But I only have the architecture description and not the implementation whitepaper. >Something I have thought: what would be faster use a hardware decoder for IA-32 >or use 'Code Morphin' (in fact emulation) how is used in TransMeta. Perhaps a >dynarec for IA-32 would generate faster code. Well, since a Pentium already translates the x86 to RISC-like internal instructions I guess they'll do something similar in Itanium... >So you can change the mode each time you want. Yes, but you won't have that many IA-32 applacations calling IA-64 code blocks I bet. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 03:15:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA43230 for dynarec-outgoing; Tue, 28 Mar 2000 03:15:26 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: PC emulation Date: Tue, 28 Mar 2000 13:14:16 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >If Intel want to send me one for free, I know that I wouldn't complain. :) Neither would I ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 04:06:22 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA43325 for dynarec-outgoing; Tue, 28 Mar 2000 04:06:21 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Memory Cache Date: Tue, 28 Mar 2000 14:06:08 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Ok, I don't have that much time right now, so I will be brief: * My Atari Mega STE 4 has a standard 68K but clocked with 16MHz and equipped with a cache, although I don't know how large it is. * The newer (Pentium++) Intel and AMD processors also have split L1 caches, but for compatability reasons they had to make these "transparent", ie. self-modifying code is handled by the hardware. * It's a bit too easy to take just the size of the cache, you also have to consider its organization: - How large is a cache line? - How many lines are there? - Are the entries direct mapped, fully associative, or set associative? - How are cache lines replaced? - How are the cache lines indexed and tagged? I think that's about it. Prepare for more comprehensive coverage of these questions later today... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 04:07:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA43334 for dynarec-outgoing; Tue, 28 Mar 2000 04:07:17 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E09F7E.219AD795@eurocopter.de> Date: Tue, 28 Mar 2000 14:03:10 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: PC emulation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >If Intel want to send me one for free, I know that I wouldn't > complain. :) > > Neither would I ;-) So, NB, hold any influence at Intel? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 04:08:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA43343 for dynarec-outgoing; Tue, 28 Mar 2000 04:08:11 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E09F62.D15B8ACC@eurocopter.de> Date: Tue, 28 Mar 2000 14:02:42 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Well, since a Pentium already translates the x86 to RISC-like internal > instructions I guess they'll do something similar in Itanium... It's not just RISC-like - it is RISC. They break CISC instructions into RISC through their convertor (I *do* know the name for it, but I can't remember!) which is built into the pipelines and execute the RISC instructions. It's because of this that I wonder how long it'll be before they want to lose x86 instruction compatibility. From their point of view, it may well be worth doing a x86 emulator and running that instead. > Yes, but you won't have that many IA-32 applacations calling IA-64 code > blocks I bet. Or many IA-32 applications at all! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 04:42:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA43421 for dynarec-outgoing; Tue, 28 Mar 2000 04:42:42 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003281244.OAA08758@pons.ac.upc.es> Subject: Re: DYNAREC: PC emulation In-Reply-To: from Michael Koenig at "Mar 28, 2000 01:14:16 pm" To: dynarec@synthcom.com Date: Tue, 28 Mar 2000 14:44:14 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >If Intel want to send me one for free, I know that I wouldn't > complain. :) > > Neither would I ;-) > I want one too ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 04:45:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA43434 for dynarec-outgoing; Tue, 28 Mar 2000 04:45:28 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Tue, 28 Mar 2000 14:42:24 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >It's not just RISC-like - it is RISC. They break CISC instructions into >RISC through their convertor (I *do* know the name for it, but I can't >remember!) which is built into the pipelines and execute the RISC >instructions. The main reason why I call it RISC-like is that RISC is an architectural and not an implementational term! You cannot call something RISC just because it uses some techniques that were developed for RISC architectures if you don't sense anything of it at the architectural level, and that wasn't changed in any way since the 386. Yes, they introduced some new instructions but the overall architecture is the same. >It's because of this that I wonder how long it'll be before they want to >lose x86 instruction compatibility. From their point of view, it may well >be worth doing a x86 emulator and running that instead. I said that long ago and I bet Intel thought of it as well, but they don't want to loose any customers... If the customers understood more of processor architectures then the IA-32 would have been abandoned years ago. >> Yes, but you won't have that many IA-32 applacations calling IA-64 code >> blocks I bet. >Or many IA-32 applications at all! :) Sure, the most important applications will be ported to IA-64 but there will be still some that won't be ported or that just take a bit longer to be ported. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 04:46:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA43442 for dynarec-outgoing; Tue, 28 Mar 2000 04:46:53 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003281247.OAA11839@pons.ac.upc.es> Subject: Re: DYNAREC: Emu Fakes In-Reply-To: from Michael Koenig at "Mar 28, 2000 01:07:21 pm" To: dynarec@synthcom.com Date: Tue, 28 Mar 2000 14:47:47 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > I only thought it was worth mentioning it to you, but if you already > knew it... You have to trust me, there isn't a single person in Spain who doesn't knows it ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 05:02:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA43474 for dynarec-outgoing; Tue, 28 Mar 2000 05:02:17 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E0ABC2.F375E203@eurocopter.de> Date: Tue, 28 Mar 2000 14:55:30 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > The main reason why I call it RISC-like is that RISC is an > architectural and not an implementational term! You cannot call > something RISC just because it uses some techniques that were developed > for RISC architectures if you don't sense anything of it at the > architectural level, and that wasn't changed in any way since the 386. > Yes, they introduced some new instructions but the overall architecture > is the same. No. In fact it *IS* a RISC CPU with a CISC translator. If your internal working is RISC then it doesn't matter how you interface with the CPU, does it? I like the term they invented for it at the time: CRISP. :) > I said that long ago and I bet Intel thought of it as well, but they > don't want to loose any customers... If the customers understood more > of processor architectures then the IA-32 would have been abandoned > years ago. We think alike, because I've been saying that since Pentium times. Possibly 486 times too, but definitely from the P5 times... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 08:30:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA44022 for dynarec-outgoing; Tue, 28 Mar 2000 08:30:18 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <20000328162808.18427.qmail@hotmail.com> X-Originating-IP: [212.229.0.107] From: "D C" To: References: <38E09F62.D15B8ACC@eurocopter.de> Subject: Re: DYNAREC: Emu Fakes Date: Tue, 28 Mar 2000 17:22:03 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Well, since a Pentium already translates the x86 to RISC-like internal > > instructions I guess they'll do something similar in Itanium... > > It's not just RISC-like - it is RISC. They break CISC instructions into > RISC through their convertor (I *do* know the name for it, but I can't > remember!) which is built into the pipelines and execute the RISC > instructions. > > It's because of this that I wonder how long it'll be before they want to > lose x86 instruction compatibility. From their point of view, it may well > be worth doing a x86 emulator and running that instead. > Its just an idea but if Intel ever decided to ditch the x86 instruction set wouldn't the backwards compatability with all older software get thrown out of the window. But if they did the result would probably be something like protected mode wherer the core of the CPU could be switched on the fly from reading instrucutions as x86 and converting them to direct to RISC instructions. The coder could then decided what instruction set to use and the procressor would also run all that old code i.e. Buggy Windows. Just a thought. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 08:45:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA44077 for dynarec-outgoing; Tue, 28 Mar 2000 08:45:44 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E0E05F.4C888259@eurocopter.de> Date: Tue, 28 Mar 2000 18:39:59 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: <38E09F62.D15B8ACC@eurocopter.de> <20000328162808.18427.qmail@hotmail.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > It's because of this that I wonder how long it'll be before they want to > > lose x86 instruction compatibility. From their point of view, it may well > > be worth doing a x86 emulator and running that instead. > > > Its just an idea but if Intel ever decided to ditch the x86 instruction set wouldn't the backwards > compatability with all older software get thrown out of the window. Yes, along with their main reason for such a high market share. However, that's why I suggested the need for a x86 emulator. The technology is there (Transmeta, anyone?) and can be perfected. > But if they did the result > would probably be something like protected mode wherer the core of the CPU could be switched on the > fly from reading instrucutions as x86 and converting them to direct to RISC instructions. The coder > could then decided what instruction set to use and the procressor would also run all that old code > i.e. Buggy Windows. If they got rid of x86 instructions, this wouldn't be possible. Or do you mean having like a seperate part of the CPU just for translating x86 into RISC? Maybe, though I think the emulation would be a cheaper idea - and would also scale with the speed of the CPU... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 09:31:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA44195 for dynarec-outgoing; Tue, 28 Mar 2000 09:31:42 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Tue, 28 Mar 2000 19:23:39 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No. In fact it *IS* a RISC CPU with a CISC translator. If your internal >working is RISC then it doesn't matter how you interface with the CPU, does >it? It does matter because that's purely implementational and you still only see the aged IA-32 on the outside! This is as if you'd say that a Pentium has a large register set, which is totally true if you take a look at the implementation since it has a large register file for register renaming, but nevertheless you're unable to use these directly. Another example is Transmeta's Crusoe. It's a VLIW processor but so far I found no information about it's instruction set and I only know how many registers it has (64) but not how large these are. So from the architectural view it's just another x86 clone... >I like the term they invented for it at the time: CRISP. :) Pure PR talk! They noticed that RISC processors sell good and that some customers heard that RISC is said to be superior and then every firm used to sell RISC products no matter if it really was RISC in the original sense! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 09:31:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA44199 for dynarec-outgoing; Tue, 28 Mar 2000 09:31:42 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Tue, 28 Mar 2000 19:26:20 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >You have to trust me, there isn't a single person in Spain who doesn't knows it ;) Erm, I might have estimated that... I saw a show yesterday, what they called the "highlights" of Oscar, and I was shocked that they left out many categories including most technical ones which led to Matrix not being mentioned at all and that film got 4 Oscars... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 09:31:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA44207 for dynarec-outgoing; Tue, 28 Mar 2000 09:31:58 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Tue, 28 Mar 2000 19:28:08 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Its just an idea but if Intel ever decided to ditch the x86 instruction set wouldn't the backwards >compatability with all older software get thrown out of the window. But if they did the result >would probably be something like protected mode wherer the core of the CPU could be switched on the >fly from reading instrucutions as x86 and converting them to direct to RISC instructions. The coder >could then decided what instruction set to use and the procressor would also run all that old code >i.e. Buggy Windows. >Just a thought. Take a look at Itanium (IA-64) and you'll see that they did exactly that! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 09:32:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA44214 for dynarec-outgoing; Tue, 28 Mar 2000 09:32:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: PC emulation Date: Tue, 28 Mar 2000 19:29:06 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com BTW, isn't Bochs open source now? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 10:11:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA44362 for dynarec-outgoing; Tue, 28 Mar 2000 10:11:13 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Free BeOS 5 Date: Tue, 28 Mar 2000 19:39:45 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com A bit off topic... Free BeOS 5 is now available: http://free.be.com/ Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 10:19:22 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA44407 for dynarec-outgoing; Tue, 28 Mar 2000 10:19:22 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 28 Mar 2000 10:19:21 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38E09F62.D15B8ACC@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Well, since a Pentium already translates the x86 to RISC-like internal > > instructions I guess they'll do something similar in Itanium... > It's not just RISC-like - it is RISC. They break CISC instructions into > RISC through their convertor (I *do* know the name for it, but I can't > remember!) which is built into the pipelines and execute the RISC > instructions. Superscalar stage 3 RISC CPU. > It's because of this that I wonder how long it'll be before they want to > lose x86 instruction compatibility. From their point of view, it may well > be worth doing a x86 emulator and running that instead. Probably won't for a long, long time. That would be business suicide. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 10:21:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA44421 for dynarec-outgoing; Tue, 28 Mar 2000 10:21:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 28 Mar 2000 10:21:04 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >RISC through their convertor (I *do* know the name for it, but I can't > >remember!) which is built into the pipelines and execute the RISC > >instructions. > The main reason why I call it RISC-like is that RISC is an > architectural and not an implementational term! You cannot call > something RISC just because it uses some techniques that were developed > for RISC architectures if you don't sense anything of it at the > architectural level, and that wasn't changed in any way since the 386. > Yes, they introduced some new instructions but the overall architecture > is the same. Don't know much about the Pentium's internals, do you? ;-) Indeed, it's a *RADICAL* change from the 486. About the only thing they kept was the lookup tables for doing basic math, but the CPU is a complete redesign of the 486 and not laid out anything like anything pre-Pentium. > >> Yes, but you won't have that many IA-32 applacations calling IA-64 > >> blocks I bet. > >Or many IA-32 applications at all! :) > Sure, the most important applications will be ported to IA-64 but there > will be still some that won't be ported or that just take a bit longer > to be ported. Or you run it on a Wilamette. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 10:25:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA44450 for dynarec-outgoing; Tue, 28 Mar 2000 10:25:26 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 28 Mar 2000 10:25:25 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >working is RISC then it doesn't matter how you interface with the CPU, > >it? > It does matter because that's purely implementational and you still > only see the aged IA-32 on the outside! This is as if you'd say that a > Pentium has a large register set, which is totally true if you take a > look at the implementation since it has a large register file for > register renaming, but nevertheless you're unable to use these > directly. Internally it does have a large register set and dozens of execution units. It's a hardware emulator for the Pentium. ;-) > Another example is Transmeta's Crusoe. It's a VLIW processor but so far > I found no information about it's instruction set and I only know how > many registers it has (64) but not how large these are. So from the > architectural view it's just another x86 clone... So if a MIPS-4 emulates a Z80, then it's just a Z80 clone, right? ;-) > >I like the term they invented for it at the time: CRISP. :) > Pure PR talk! They noticed that RISC processors sell good and that some > customers heard that RISC is said to be superior and then every firm > used to sell RISC products no matter if it really was RISC in the > original sense! That's awful presumptuous of you - attaching speculation on something that you had zero involvement in. ;-| Until you mentioned it above, I had never heard of "CRISP", and I work for the company - 2 years of which in the CPU division! So much for PR talk. But at the micro op level, it's a 4 on the floor RISC machine with many execution units and an architecture that's both straightforward and complex. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 13:10:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA45305 for dynarec-outgoing; Tue, 28 Mar 2000 13:10:49 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <000301bf98f9$a9d747c0$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Emu Fakes Date: Tue, 28 Mar 2000 21:51:15 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Another example is Transmeta's Crusoe. It's a VLIW processor but so far > > I found no information about it's instruction set and I only know how > > many registers it has (64) but not how large these are. So from the > > architectural view it's just another x86 clone... > > So if a MIPS-4 emulates a Z80, then it's just a Z80 clone, right? ;-) I'm glad you agree with my point. :) > > >I like the term they invented for it at the time: CRISP. :) > > Pure PR talk! They noticed that RISC processors sell good and that some > > customers heard that RISC is said to be superior and then every firm > > used to sell RISC products no matter if it really was RISC in the > > original sense! > > That's awful presumptuous of you - attaching speculation on something that > you had zero involvement in. ;-| Until you mentioned it above, I had never > heard of "CRISP", and I work for the company - 2 years of which in the CPU > division! So much for PR talk. I'm sorry about that. When you create a new acronym for computers and give it a food name, I'm not going to forget it. Sorry. :) If I remember correctly, it stands for "Complex Reduced Instruction Set Processor"... > But at the micro op level, it's a 4 on the floor RISC machine with many > execution units and an architecture that's both straightforward and > complex. Sounds just like any other RISC processor. But then... that's because it is! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 13:10:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA45313 for dynarec-outgoing; Tue, 28 Mar 2000 13:10:53 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <000201bf98f9$a623b5a0$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Emu Fakes Date: Tue, 28 Mar 2000 21:47:32 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > It does matter because that's purely implementational and you still > only see the aged IA-32 on the outside! Okay, we're becoming more theological. :) Imagine this: You are now running a C64 emulator. You now only see the 6510 CPU on the outside. It's not a 6510, it's just acting like one. Imagine this: You have a RISC CPU. You have a CISC->RISC convertor. Is your CPU RISC or CISC? It's only acting like a CISC processor... > Another example is Transmeta's Crusoe. It's a VLIW processor but so far > I found no information about it's instruction set and I only know how > many registers it has (64) but not how large these are. So from the > architectural view it's just another x86 clone... And if I make it run 68k code, it's a 68k clone? > >I like the term they invented for it at the time: CRISP. :) > > Pure PR talk! They noticed that RISC processors sell good and that some > customers heard that RISC is said to be superior and then every firm > used to sell RISC products no matter if it really was RISC in the > original sense! a) That doesn't change the fact that I like the term "CRISP". It amuses me somewhat. It's great for overclockers. "Your CPU's a bit CRISPy, isn't it?"... :) b) So, what *IS* RISC in the original sense? What makes the P5 and above series a non-RISC CPU? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 13:35:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA45389 for dynarec-outgoing; Tue, 28 Mar 2000 13:35:50 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Memory Cache Date: Tue, 28 Mar 2000 23:34:49 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Ok, now something more about caches... First of all a cache isn't just a pool of 256k memory or so which is fast and can cache often used memory locations. To really work it needs an organisation. First of all a cache is divided in entries where each consists of a tag to identify the entry and a cache line which holds several bytes of data. To see if a certain address is already cached the address is normally split in three parts: * The upper part (similar to the page number) is used as the tag. * The middle part is used as an index to the cache. * The lowest part addresses the desired byte in the cache line. In the most primitive but also fastest cache, a direct mapping one, the cache controller simply takes the middle part of the address and performs a "index modulo number of cache lines" operation. That way we find out which cache line could yield the data. Now the tag of the address (upper part) and the tag in the cache entry are compared to check if it holds the correct data. If it does, good. If it doesn't hold the right data then the data and some additional bytes to fill the whole cache line of that entry are loaded from the main memory. The advantage of the direct mapped cache is that it's simple and fast but if you happen to repeatedly access data with the same index on different pages then you always have to replace the same cache line even when the other entries of the cache should be unused. BTW, you don't have to use the physical address as the cache index. Most processors with virtual memory use the virtual address instead because you don't have to wait till the MMU found the right page translation to know if the cache holds the right data. Some processors have a hybrid approach, eg. SPARC is virtually indexed and physically tagged. This means the virtual address is used to calculate the cache index and when it has found the cache line the MMU should have the physical address ready to to compare it to the tag. The advantage of virtually indexed caches should be clear, speed. The disadvantage is that you could have address aliases, ie. if you have shared memory two different virtual addresses refer to the same physical address. In that case the cache either has to be kept up to date all the time, but since that's rather complicated the normal method is to leave shared memory uncached. The other extreme of cache organisation is a fully assiciative cache. In that case you have no index at all and the tag of the address, which is now the whole address apart from the lower part needed to address the byte in the cache line, is compared to *all* tags in the cache to find the correct cache line. This is normally implemented by storing the cache tag in CAM (content addressable memory) and the cache line in RAM as usual. The advantage of such a cache is that you only have to replace cache entries if the cache is totally full. The disadvantages are that it's slower to compare all the tags than just one, CAMs need more power than RAM, and if you have to replace a cache entry you need an algorithm to do that, either LRU or a pseudo random algorithm are used. Ok, these were the two extreme forms but there are lots of possible steps in between. These are called n-way set associative caches. In this case the index of the address is used to select a certain set from the cache and then compare the "n" entries in that set to the tag of the address. In reality you have separate caches RAMs where the tag at the same index is compared in parallel. Due to this caches beyond 4-way set associativity are rather complicated and seldom used. The advantage is a better speed than the fully associative cache and a better use of cache space and less accidentally replaced cache lines than in a direct mapped cache. The disadvantage is that you also need a cache entry replacement algorithm, but it only has to operate on the entries on one set and not on the entire cache. The ARM610 has an extraordinary cache, which is 64-way set associative with 256 cache lines. It doesn't have 64 parallel RAMs, but 4 parallel CAMs with 64 tags each. The idea was to save power because only one CAM has to be active and according to statistics the 64-way is as good as a fully associative cache. The Pentium III has first level data and instruction caches with 16k each and both are 4-way set associative. The L2 cache is unified, direct mapped and has either 256k or 512k. The two first level caches of the Athlon are 64k each but are only 2- way set associative. The purest cache monster I know is HP's PA8500. It has first level (L1!) caches of 512k 4-way set associative for instructions and 1MB for data! I have to admit that I need a bit more facts on the Pentium caches (number of entries, size of cache line, virtually or physically indexed) for a real discussion about that topic, but I thought we some might need more information about cache operation first. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 13:35:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA45393 for dynarec-outgoing; Tue, 28 Mar 2000 13:35:57 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Tue, 28 Mar 2000 22:44:32 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Don't know much about the Pentium's internals, do you? ;-) Indeed, it's a >*RADICAL* change from the 486. About the only thing they kept was the >lookup tables for doing basic math, but the CPU is a complete redesign of >the 486 and not laid out anything like anything pre-Pentium. "Internals" is absolutely the right word, because it's on an implementional level. I was talking about instruction set architectures (ISAs) which covers not much more than the registers and instructions visable to the programmer. That's what I've written in the past few mails but no-one seems to get the point. There are two levels (or layers, since you like that term): the ISA and the implementation. The term RISC belongs to the ISA and not to the implementation. >Or you run it on a Wilamette. I guess Merced will only for high-end servers anyway. >Internally it does have a large register set and dozens of execution >units. It's a hardware emulator for the Pentium. ;-) And again it's just internal, ie. an implementation issue, the programmer doesn't see that, so the ISA hasn't changed much since the 386 apart from a few additional instructions and MMX and ISSE. [Crusoe = x86?] >So if a MIPS-4 emulates a Z80, then it's just a Z80 clone, right? ;-) Nope, because you can program the MIPS directly. I'm not sure if this is possible at all with Crusoe but you certainly will have difficulties without any information about it's *real* ISA! >That's awful presumptuous of you - attaching speculation on something that >you had zero involvement in. ;-| Until you mentioned it above, I had never >heard of "CRISP", and I work for the company - 2 years of which in the CPU >division! So much for PR talk. I have to admit that I haven't heard the term CRISP before too. What I meant with PR talk is that at a certain time everyone claimed to have RISC products when they didn't really know what RISC is about! >But at the micro op level, it's a 4 on the floor RISC machine with many >execution units and an architecture that's both straightforward and >complex. And again, RISC is an architecture term. It's nice when they use techniques originally developed for RISC architectures to speed up their processors, but as long as it's implemented deep inside and doesn't show up at the surface you cannot call it a RISC processor! That's all I wanted to express. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 13:46:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA45445 for dynarec-outgoing; Tue, 28 Mar 2000 13:46:42 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 28 Mar 2000 13:46:42 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >*RADICAL* change from the 486. About the only thing they kept was the > >lookup tables for doing basic math, but the CPU is a complete redesign > >the 486 and not laid out anything like anything pre-Pentium. > "Internals" is absolutely the right word, because it's on an > implementional level. I was talking about instruction set architectures > (ISAs) which covers not much more than the registers and instructions > visable to the programmer. "Instruction set architecture" is really an oxymoron, as "instruction set" and "architecture" have no bearing on one another. > That's what I've written in the past few mails but no-one seems to get > the point. There are two levels (or layers, since you like that term): > the ISA and the implementation. The term RISC belongs to the ISA and > not to the implementation. Uh... no, you've got that wrong. RISC Can apply to execution of any instruction set, which internally the Pentium is. Saying it's RISC CPU emulating a CISC instruction set is the correct way to be stated. But at heart it is a RISC CPU. Sorry - even masters of their fields would disagree with you on this one. > [Crusoe = x86?] > >So if a MIPS-4 emulates a Z80, then it's just a Z80 clone, right? ;-) > Nope, because you can program the MIPS directly. I'm not sure if this > is possible at all with Crusoe but you certainly will have difficulties > without any information about it's *real* ISA! Okay, so if I reprogram a Crusoe to become a Z80 at the micro op level, it's no longer a RISC CPU? That's splitting hairs to an extreme. > I have to admit that I haven't heard the term CRISP before too. What I > meant with PR talk is that at a certain time everyone claimed to have > RISC products when they didn't really know what RISC is about! Oh come on. Ever heard of the i860 and i960 (circa 1984)? Intel knows something about it. Sheesh. And that was long before the Pentium. So what do you call the Power PC architecture (since it's not a CPU)? It has so many CISC like instructions that it shouldn't be called RISC. > >But at the micro op level, it's a 4 on the floor RISC machine with > >execution units and an architecture that's both straightforward and > >complex. > And again, RISC is an architecture term. It's nice when they use > techniques originally developed for RISC architectures to speed up > their processors, but as long as it's implemented deep inside and > doesn't show up at the surface you cannot call it a RISC processor! You're going to stumble across a lot of people who will disagree with you on this point. The term "RISC" has been so smeared in the last 10 years that it's almost a politically correct meaningless term. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 13:47:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA45454 for dynarec-outgoing; Tue, 28 Mar 2000 13:47:32 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Tue, 28 Mar 2000 23:45:24 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Okay, we're becoming more theological. :) Really? I'm not very religious! ;-) >Imagine this: You are now running a C64 emulator. You now only see the 6510 >CPU on the outside. It's not a 6510, it's just acting like one. >Imagine this: You have a RISC CPU. You have a CISC->RISC convertor. Is your >CPU RISC or CISC? It's only acting like a CISC processor... In both cases you'd still be able to run software that uses the real ISA, but on a Pentium you are not able to access these RISC instructions nor all those registers it's hiding inside!!! That's the difference between ISA and implementation. >And if I make it run 68k code, it's a 68k clone? If you can write a code morpher for it, sure. The gag is that as soon as the code morpher runs you won't be able to execute other code than that what the code morpher is abe to translate so the real architecture of the processor is disguised. But I doubt that you'd be able to write a code morpher for Crusoe if you don't know what registers or instructions you have available... >b) So, what *IS* RISC in the original sense? What makes the P5 and above >series a non-RISC CPU? The instruction set architecture, meaning the registers and instructions you can use to program that thing! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 14:13:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA45585 for dynarec-outgoing; Tue, 28 Mar 2000 14:13:47 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Wed, 29 Mar 2000 00:13:51 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >"Instruction set architecture" is really an oxymoron, as "instruction set" >and "architecture" have no bearing on one another. It's "instruction set" + "architecture", where architecture means the registers which you can access as a systems programmer. I think you mix up the terms architecture and implementation. >Uh... no, you've got that wrong. RISC Can apply to execution of any >instruction set, which internally the Pentium is. Saying it's RISC CPU >emulating a CISC instruction set is the correct way to be stated. But at >heart it is a RISC CPU. Sorry - even masters of their fields would >disagree with you on this one. Ok, are you able to use all those fancy registers and RISC instructions inside the Pentium? No, so it's not a RISC processor for me! >Okay, so if I reprogram a Crusoe to become a Z80 at the micro op level, >it's no longer a RISC CPU? That's splitting hairs to an extreme. Just as I answered to NG: If you have a code morpher for Z80 code then Crusoe will only be able to execute Z80 code and nothing else so you won't be able to distinguish it from a very fast Z80 if your code morpher works correctly. Remember the code morpher is activated before the BIOS is executed so it's quite similar to some older computers where you could change the microcode. >Oh come on. Ever heard of the i860 and i960 (circa 1984)? Intel knows >something about it. Sheesh. And that was long before the Pentium. I know, and these are truely RISC: 32 GRPs, 32-bit instructions, few addressing modes, relatively simple instructions. I meant that the term RISC was used for Pentium, ColdFire and some other products that don't deserve it. >So what do you call the Power PC architecture (since it's not a CPU)? It >has so many CISC like instructions that it shouldn't be called RISC. The Power architecture is a very extreme example and most see it as a hybrid between RISC and CISC. I surely wouldn't call intructions like "load string" or the 4 branch instructions which yield a few hundred extended forms as RISC. Even the author of the book I have ("Optimizing PowerPC Code") recognized the problem and wrote that in the case of the PowerPC the term RISC cannot be understood as "Reduced Instruction Set Computer" but "Reduced Instruction Set Complexity"! >You're going to stumble across a lot of people who will disagree with you >on this point. The term "RISC" has been so smeared in the last 10 years >that it's almost a politically correct meaningless term. Yeah, but only because it was misused when firms observed that they were able to catch customers with that term. My understanding of the term RISC mainly grounds on the work of David Patterson and John Hennessy, and Patterson *invented* that term! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 14:22:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA45649 for dynarec-outgoing; Tue, 28 Mar 2000 14:22:14 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 28 Mar 2000 14:22:13 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >and "architecture" have no bearing on one another. > It's "instruction set" + "architecture", where architecture means the > registers which you can access as a systems programmer. Depends. Architecture means "design of processor" or "organization of processor hardware". > I think you mix up the terms architecture and implementation. No, they're completely separate terms. > >emulating a CISC instruction set is the correct way to be stated. But > >heart it is a RISC CPU. Sorry - even masters of their fields would > >disagree with you on this one. > Ok, are you able to use all those fancy registers and RISC instructions > inside the Pentium? No, so it's not a RISC processor for me! Key words: *FOR YOU*. I wouldn't call a Pentium a RISC CPU. That'd be misleading. But the Pentium is a RISC CPU at the basic level, emulating a CISC instruction set. > >Okay, so if I reprogram a Crusoe to become a Z80 at the micro op > >it's no longer a RISC CPU? That's splitting hairs to an extreme. > Just as I answered to NG: If you have a code morpher for Z80 code then > Crusoe will only be able to execute Z80 code and nothing else so you > won't be able to distinguish it from a very fast Z80 if your code > morpher works correctly. You can reprogram the Crusoe to emulate any CPU type and not know the difference. It's still a RISC CPU. > I meant that the term RISC was used for Pentium, ColdFire and some > other products that don't deserve it. I think we're saying the same thing. Calling a Pentium an outright RISC CPU is misleading and not quite the whole story. But it's not totally CISC, either. > Even the author of the book I have ("Optimizing PowerPC Code") > recognized the problem and wrote that in the case of the PowerPC the > term RISC cannot be understood as "Reduced Instruction Set Computer" > but "Reduced Instruction Set Complexity"! And that throws on more fuel to the fire. The 386 eliminated a lot of register specific instructions that the 286/8086/8088 had to deal with. It reduced the instruction set complexity quite a bit. But it 'aint RISC! ;-) > Yeah, but only because it was misused when firms observed that they > were able to catch customers with that term. Just like "Security" and "Linux" - other meaningless buzzwords. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 14:38:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA45737 for dynarec-outgoing; Tue, 28 Mar 2000 14:38:47 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 28 Mar 2000 14:38:46 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Memory Cache In-Reply-To: <38E07C83.17B8B54C@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by synthcom.com id OAA45734 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Nowadays we have really big caches so it isn´t perhaps a problem but I > can talk about it. The problem comes from the expansion in code and > data that suposes an interpreter. An interpreter from a 16 bit CPU as > M68000 (as the StarScream core is) uses big tables for decoding > purpose and a lot of differents functions to perform the emulation of > the M68K instruction set. This becomes in a big expansion in the code > really executed in emulated. You can see that a native loop executed Just remember that only about 10-15% of the instructions are used at any given time. The emulation of instructions and their jump-to addresses only tag a fraction of the overall core size. And also remember that a lot of the opcodes map to the same piece of code. > entries for this instructions. So the size of the cached data becomes > really big. Only if the emulated code has a sparse instruction utilization. > of 4 bytes. So you need 256KB only for the decode table. And you > have hundreds (perhaps a thousand) different functions if you really > want to full use the decode table. So you have a lot of more code for Again, just because it's there, doesn't mean it'll actually wind up in the CPU's cache. Only if it's EXECUTED, and if you have a ton of different instructions that are executed, well, then you're screwed anyway and the cache won't do you any good. > works but you will get some cache misses. The problem comes from do a > full 16-bit opcode decode, you can use arrays of partial decodes (4 > bits to 4 bits decodes for example) but you will still need a lot of > tables, but perhaps less code. And you can decode in the instrucntion You'll spend more time processing the smaller tables than just utilizing a single indirect lookup. You wind up slowing it down. Been there - done that. > These were my ideas. Now I think that this isn´t a problem, our > caches are now really big and fast but I come to this ideas long time > ago when I have an old 486. Then the instructions to parse the smaller lists would be MUCH more of a speed impact. > Something more. When building a dynarec emulator there are some > architectures that have separate instruction and data caches (not > happens in x86) and they need an instruction that flushes the cache > when code is modified. Something to take into account when building a > dynarec. Only if the code is modified at run time. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 14:56:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA45822 for dynarec-outgoing; Tue, 28 Mar 2000 14:56:56 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Wed, 29 Mar 2000 00:56:49 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Depends. Architecture means "design of processor" or "organization of >processor hardware". Then I seem to be used to the first interpretation. >Key words: *FOR YOU*. I wouldn't call a Pentium a RISC CPU. That'd be >misleading. But the Pentium is a RISC CPU at the basic level, emulating a >CISC instruction set. Ok, so we could agreen on the fact that the Pentium has a RISC core which doesn't shine through though and therefore the whole package is not a RISC processor. >You can reprogram the Crusoe to emulate any CPU type and not know the >difference. If you can get enough information about Crusoe's real architecture, which I was unable to get so far. Transmeta doesn't seem to be interested in someone knowing what's under the code morpher, they only want to sell a x86 compatible processor so it's a basically a x86 clone for me. Just as you mentioned in one of our discussions some time ago, what the Crusoe does with it's code morpher isn't that different from what the Pentium does in hardware. >It's still a RISC CPU. Actually it's a VLIW architecture ;-) Well, I think it uses RISC atoms but I only know a very small part of the instruction set from those small code morphing examples. >I think we're saying the same thing. Calling a Pentium an outright RISC >CPU is misleading and not quite the whole story. But it's not totally >CISC, either. Yeah, we've reached an agreement here. >And that throws on more fuel to the fire. The 386 eliminated a lot of >register specific instructions that the 286/8086/8088 had to deal with. It >reduced the instruction set complexity quite a bit. But it 'aint RISC! ;-) Well, the registers are still far from being real GPRs and the instruction length has much variation and it still has many string instructions or the count prefix, so it surely isn't RISC. But there are also RISC processors with some CISC features. To see what I mean you could take a look at my document about the ARM in comparison to other architectures (RISC and CISC) which is still WIP: http://www.linguistik.uni-erlangen.de/~mlkoenig/ArchARM.html >Just like "Security" and "Linux" - other meaningless buzzwords. ;-) Too true! I guess in the future we'll have to refer to certain Linux systems by the name of the distributor because they will be totally incompatible to other "Linux" systems. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 15:01:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA45846 for dynarec-outgoing; Tue, 28 Mar 2000 15:01:15 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 28 Mar 2000 15:01:15 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Key words: *FOR YOU*. I wouldn't call a Pentium a RISC CPU. That'd be > >misleading. But the Pentium is a RISC CPU at the basic level, > >CISC instruction set. > Ok, so we could agreen on the fact that the Pentium has a RISC core > which doesn't shine through though and therefore the whole package is > not a RISC processor. No, but it's not exclusively a CISC, either. If someone asks me if the Pentium is a RISC or CISC CPU, my response is always "RISC Microarchitecture, CISC instruction set". > Just as you mentioned in one of our discussions some time ago, what the > Crusoe does with it's code morpher isn't that different from what the > Pentium does in hardware. Even the Pentium's microarchitecture is partially programmable. > Well, the registers are still far from being real GPRs and the > instruction length has much variation and it still has many string > instructions or the count prefix, so it surely isn't RISC. I wouldn't say far... but it still has a few instructions that are register specific. > >Just like "Security" and "Linux" - other meaningless buzzwords. ;-) > Too true! I guess in the future we'll have to refer to certain Linux > systems by the name of the distributor because they will be totally > incompatible to other "Linux" systems. That's one of the reasons I have a distaste for Linux. Hype, Hype and 50000 different versions of it that are kinda 4.4BSD and kinda System 5, and kinda its own thing. At least FreeBSD and other *BSDs are full-on 4.4 or even try to adhere to industry standards. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 15:08:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA45887 for dynarec-outgoing; Tue, 28 Mar 2000 15:08:28 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Memory Cache Date: Wed, 29 Mar 2000 01:08:13 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> of 4 bytes. So you need 256KB only for the decode table. And you >> have hundreds (perhaps a thousand) different functions if you really >> want to full use the decode table. So you have a lot of more code for >Again, just because it's there, doesn't mean it'll actually wind up in the >CPU's cache. Only if it's EXECUTED, and if you have a ton of different >instructions that are executed, well, then you're screwed anyway and the >cache won't do you any good. Yes, only the parts of the decode table you've recently used will be in the cache. >> Something more. When building a dynarec emulator there are some >> architectures that have separate instruction and data caches (not >> happens in x86) and they need an instruction that flushes the cache >> when code is modified. Something to take into account when building a >> dynarec. >Only if the code is modified at run time. The only has to be done after a new block has just been generated and even then you don't have to flush the whole caches. When self-modifying code isn't handled by hardware (as done by Intel and AMD) then the OS normally has a system call with which you can invalidate all cache entries of a specified memory location. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 15:20:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA45948 for dynarec-outgoing; Tue, 28 Mar 2000 15:20:33 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Wed, 29 Mar 2000 01:20:25 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No, but it's not exclusively a CISC, either. If someone asks me if the >Pentium is a RISC or CISC CPU, my response is always "RISC >Microarchitecture, CISC instruction set". That's a statement I can accept ;-) >Even the Pentium's microarchitecture is partially programmable. Really? That's interesting. Do you know any details? >I wouldn't say far... but it still has a few instructions that are >register specific. Then it would be better not to tell you that Thumb and MIPS16 have PUSH /POP instructions with a hard-wired stack pointer... >That's one of the reasons I have a distaste for Linux. Hype, Hype and >50000 different versions of it that are kinda 4.4BSD and kinda System 5, >and kinda its own thing. Indeed, I especially don't understand the hype because it certainly isn't the answer to all questions. In a magazine they had a comparison of OSs where they wrote that Linux supports more hardware than BeOS, which is perferctly right since the Linux community is quite big and there are several good programmers who write new drivers and BeOS only has a few dozen employees who write new drivers. But on the other hand my sound card works with BeOS but not with Linux, and every time when I ask someone they just answer "I haven't even tried to get it working"! So much for the great hardware support... >At least FreeBSD and other *BSDs are full-on 4.4 >or even try to adhere to industry standards. IMO Unix is a monster OS and not very suitable for the simple single user, but as a server it surely is more stable than NT. I knew I took a look at it but I forgot what system the Synthcom server runs on. Was it Linux or FreeBSD? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 20:35:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id UAA46989 for dynarec-outgoing; Tue, 28 Mar 2000 20:35:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 28 Mar 2000 20:35:09 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >No, but it's not exclusively a CISC, either. If someone asks me if the > >Pentium is a RISC or CISC CPU, my response is always "RISC > >Microarchitecture, CISC instruction set". > That's a statement I can accept ;-) I figured we were saying the same thing. > >Even the Pentium's microarchitecture is partially programmable. > Really? That's interesting. Do you know any details? Yes, but it's Intel secret and I'd have to kill you. > >I wouldn't say far... but it still has a few instructions that are > >register specific. > Then it would be better not to tell you that Thumb and MIPS16 have PUSH > /POP instructions with a hard-wired stack pointer... But I think everything runs that way. The 68K, PPC, Sparc, and 34010 all seem to do that. > >That's one of the reasons I have a distaste for Linux. Hype, Hype and > >50000 different versions of it that are kinda 4.4BSD and kinda System > >and kinda its own thing. > Indeed, I especially don't understand the hype because it certainly > isn't the answer to all questions. It's barely an answer at all, in my opinion. > In a magazine they had a comparison of OSs where they wrote that Linux > supports more hardware than BeOS, which is perferctly right since the > Linux community is quite big and there are several good programmers who > write new drivers and BeOS only has a few dozen employees who write new > drivers. What BeOS does support it supports very well. What Linux supports it's so-so across the board. > But on the other hand my sound card works with BeOS but not > with Linux, and every time when I ask someone they just answer "I > haven't even tried to get it working"! So much for the great hardware > support... Yeah. The other problem is Linux is full of a bunch of UNIX newbies that think it's neEt and KewL to use. > >At least FreeBSD and other *BSDs are full-on 4.4 > >or even try to adhere to industry standards. > IMO Unix is a monster OS and not very suitable for the simple single > user, but as a server it surely is more stable than NT. I've had them be equally stable even under heavy load. FreeBSD surely performs better, though - more bang for processor buck. > I knew I took a look at it but I forgot what system the Synthcom server > runs on. Was it Linux or FreeBSD? FreeBSD. Of course. ;-) I've been running FreeBSD on it since 386bsd days and it's the only OS that has *NEVER* crashed on me. I went away for 3 weeks one time and Synthcom was still up when I got back. My longest uptime is around 8 months and I also have a friend who has had his up for over 4 years (UPS Backed). It's one of those things where you're not wanting to bring the machine down for the bummer of having your uptime reset. ;-( -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Mar 28 22:44:07 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id WAA47314 for dynarec-outgoing; Tue, 28 Mar 2000 22:44:07 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E1A465.86B96C40@eurocopter.de> Date: Wed, 29 Mar 2000 08:36:21 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > >No, but it's not exclusively a CISC, either. If someone asks me if the > > >Pentium is a RISC or CISC CPU, my response is always "RISC > > >Microarchitecture, CISC instruction set". > > That's a statement I can accept ;-) > > I figured we were saying the same thing. I'm glad Mike came around to my way of thinking. Welcome to the dark side of the force. ;) In actual fact, the correct term for this architecture is "Hybrid". So, in fact, the P5 is a hybrid processor. > > >Even the Pentium's microarchitecture is partially programmable. > > Really? That's interesting. Do you know any details? > > Yes, but it's Intel secret and I'd have to kill you. That seems fair. If you tell him on the list, we'll all ignore that message, you can kill him and no-one else would know. ;) > > >I wouldn't say far... but it still has a few instructions that are > > >register specific. > > Then it would be better not to tell you that Thumb and MIPS16 have PUSH > > /POP instructions with a hard-wired stack pointer... > > But I think everything runs that way. The 68K, PPC, Sparc, and 34010 all > seem to do that. I like people against the x86 chipset. "But you haven't got a hardware stack!" they cry. "Yes, but then I can increase the size of my stack whenever I want to" is my reply. A hardware stack is nice and fast, but Intel could never go for one now. Unless it's a rather large one. So many programs use the stack and quite a few have a large stack that it could be quite difficult... > > Indeed, I especially don't understand the hype because it certainly > > isn't the answer to all questions. > > It's barely an answer at all, in my opinion. Agreed. I use Linux occasionally when I want to know how to do something in Solaris - I have to use it here at work. Haven't got BSD, else I'd use that. Whatever, there's no point me swapping to either BSD or Solaris because of the new hardware I always seem to have - it only gets supported about 2 years after I've had it. And by that time, I've got something else which also isn't supported... :-/ I could, of course, support it myself. But I'm not going to. :) > > In a magazine they had a comparison of OSs where they wrote that Linux > > supports more hardware than BeOS, which is perferctly right since the > > Linux community is quite big and there are several good programmers who > > write new drivers and BeOS only has a few dozen employees who write new > > drivers. > > What BeOS does support it supports very well. What Linux supports it's > so-so across the board. While BeOS may not have the support that Linux does, it does have more up-to-date drivers. Which is more than can be said for Linux. After all, BeOS is a multimedia OS - that's what it's aimed at. People need to have modern hardware for that... > > But on the other hand my sound card works with BeOS but not > > with Linux, and every time when I ask someone they just answer "I > > haven't even tried to get it working"! So much for the great hardware > > support... > > Yeah. The other problem is Linux is full of a bunch of UNIX newbies that > think it's neEt and KewL to use. W04H, L1nuX 15 l33t d00d. 1 4m s0 k3wl 1t HuRt5. Christ, that's difficult to do. :) > > >At least FreeBSD and other *BSDs are full-on 4.4 > > >or even try to adhere to industry standards. > > IMO Unix is a monster OS and not very suitable for the simple single > > user, but as a server it surely is more stable than NT. > > I've had them be equally stable even under heavy load. FreeBSD surely > performs better, though - more bang for processor buck. I've never used it - never had a copy. Could be interesting for a play, though I'm not going to use it as my main OS. > > I knew I took a look at it but I forgot what system the Synthcom server > > runs on. Was it Linux or FreeBSD? > > FreeBSD. Of course. ;-) I've been running FreeBSD on it since 386bsd days > and it's the only OS that has *NEVER* crashed on me. I went away for 3 > weeks one time and Synthcom was still up when I got back. My longest > uptime is around 8 months and I also have a friend who has had his up for > over 4 years (UPS Backed). It's one of those things where you're not > wanting to bring the machine down for the bummer of having your uptime > reset. ;-( Heh: "Do you want this in your kernel or as an object?" "Object, please" "Tough, it's going in your kernel. You have to restart. Hahaha!" Oh, erm... And what is it about Windows '9X while I think about it. That question "Do you want to restart Windows?" really bugs me. NO! I do *NOT* want to restart Windows! And then, to make it worse, you click "Yes" and it does restart Windows. But only after restarting your machine. AAARRGGHHH! It doesn't need to reset the machine! That's my main problem with Windows '9X. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 00:15:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA47526 for dynarec-outgoing; Wed, 29 Mar 2000 00:15:15 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E1B9B7.54DE279E@eurocopter.de> Date: Wed, 29 Mar 2000 10:07:19 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Depends. Architecture means "design of processor" or "organization of > >processor hardware". > > Then I seem to be used to the first interpretation. So it's RISC then. The design of the processor is RISC, it just has a translator in there for good measure. > >Key words: *FOR YOU*. I wouldn't call a Pentium a RISC CPU. That'd be > >misleading. But the Pentium is a RISC CPU at the basic level, > emulating a > >CISC instruction set. > > Ok, so we could agreen on the fact that the Pentium has a RISC core > which doesn't shine through though and therefore the whole package is > not a RISC processor. No, it's a hybrid processor. But you've changed your tune now - you're now conceding that it does use RISC. You wouldn't say that before! ;) > >You can reprogram the Crusoe to emulate any CPU type and not know the > >difference. > > If you can get enough information about Crusoe's real architecture, > which I was unable to get so far. Transmeta doesn't seem to be > interested in someone knowing what's under the code morpher, they only > want to sell a x86 compatible processor so it's a basically a x86 clone > for me. Whether it's a x86 clone to you or not, that doesn't mean that technically it's an x86 clone. > >It's still a RISC CPU. > > Actually it's a VLIW architecture ;-) Maybe, but how are you going to define what RISC is now? It means "Reduced Instruction Set Computing" (though I prefer "Chip") and so any processor with a reduced instruction set must be RISC. ;) And how do you define what has a reduced instruction set? Can I remove one instruction from a processor and claim that it's RISC? ;) > >I think we're saying the same thing. Calling a Pentium an outright > > RISC CPU is misleading and not quite the whole story. But it's not totally > >CISC, either. > > Yeah, we've reached an agreement here. Good. The Neils win the argument! ;)) > But there are also RISC processors with some CISC features. To see what > I mean you could take a look at my document about the ARM in comparison > to other architectures (RISC and CISC) which is still WIP: > http://www.linguistik.uni-erlangen.de/~mlkoenig/ArchARM.html I did a short (3 months) research project on RISC and CISC which is when I discovered about the P5 being a hybrid. I didn't know that before - Intel didn't make a big thing of it. In fact, I told several computing friends and they wouldn't believe me until I showed them my research. I wonder how many people know this? I don't think it's too many, to be honest. > >Just like "Security" and "Linux" - other meaningless buzzwords. ;-) > > Too true! I guess in the future we'll have to refer to certain Linux > systems by the name of the distributor because they will be totally > incompatible to other "Linux" systems. So long as they retain the same kernel, most things should remain. But if programs become dependent upon parts of a certain distribution, then they'll become incompatible. We'll see. Whatever, I don't like Linux too much at the moment. The error messages are a load of crap - as is the documentation. It's getting better, but it's not brilliant. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 01:23:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA47613 for dynarec-outgoing; Wed, 29 Mar 2000 01:23:15 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003290914.LAA01447@pons.ac.upc.es> Subject: Re: DYNAREC: Memory Cache In-Reply-To: from Michael Koenig at "Mar 28, 2000 11:34:49 pm" To: dynarec@synthcom.com Date: Wed, 29 Mar 2000 11:14:42 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Ok, now something more about caches... > > First of all a cache isn't just a pool of 256k memory or so which is > fast and can cache often used memory locations. To really work it needs > an organisation. > I know this :) > I have to admit that I need a bit more facts on the Pentium caches > (number of entries, size of cache line, virtually or physically > indexed) for a real discussion about that topic, but I thought we some > might need more information about cache operation first. > But unless we want a very complet discussion about cache usage we didn't need to considerer all about cache operation. And then will be better to do some tests with a software as Tune(Intel) or other that it uses Pentium probe registers. Then we could see how is really working the emulator. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 01:32:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA47632 for dynarec-outgoing; Wed, 29 Mar 2000 01:32:28 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003290930.LAA02355@pons.ac.upc.es> Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38E1B9B7.54DE279E@eurocopter.de> from Neil Griffiths at "Mar 29, 2000 10:07:19 am" To: dynarec@synthcom.com Date: Wed, 29 Mar 2000 11:30:37 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > >Depends. Architecture means "design of processor" or "organization of > > >processor hardware". > > > > Then I seem to be used to the first interpretation. > > So it's RISC then. The design of the processor is RISC, it just has a > translator in there for good measure. > > I think this RISC/CISC discussion is like the dynamic recompilation/dynamic translation or whatever discussion. You talk about the same: how really works the different CPUs. But you are using different names for it, and you are discussing about which is the better name. I think is more important to know how works something than how someone (or someother) calls it. Pentium an P-II are internally RISC CPUs but their instruction set are CISC, this is all for me. You can name them RISC or CISC but this don't change what they are. And I think RISC and CISC are now outdated terms. They have some sense when they were created and where they were created (last 80s and in an university-theorical level) but nowadays and in real architectures they are mixed. You can't say a CPU with vectorial instruction (as SIMD and MMX) is RISC if you use the real definition of RISC, but in fact they have a lot of things from RISC too. Ummm, this are my thoughts. I hope I don't ofense someone. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 02:23:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA47922 for dynarec-outgoing; Wed, 29 Mar 2000 02:23:57 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 29 Mar 2000 02:23:55 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: Graphics theories Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Here's a 2D graphics methodology with built in optimizing and dirty regioning, making it braindead simple for the programmer to deal with flat 2D hardware in a 2D hardware-assist style mode. It's not complete, but it should give an idea of what I'm thinking. It'll also make the document better based upon your questions and feedback. Let me know what you think: ------------------------ This document describes an approach to doing multilayered graphics on a flat 2D system, including dirty buffering. With any video game or other graphics intensive program using multiple layers of graphics (such as a backdrop graphic, a sprite, and a tile), the author is faced with the challenge of figuring out how to combine them on a single 2 dimensional surface for quick play. A common method is to draw all surfaces on separate surfaces and then combine them to a single surface, which is blitted to the final destination. This has several disadvantages: * Each surface must be erased and redrawn every frame * Memory consumption is greatly increased by the separate surfaces * Combining them onto a common surface takes considerable CPU time * More system cache is used, harming overall app performance The approach I'm proposing gives several advantages: * Everything is drawn to a common surface * Priorities are handled by virtue of the definition of the various layers * Handles viewport management so that scrolling regions and views can take advantage of the dirty buffering * The game logic itself isn't required to know what is in need of being redrawn * Only affected regions are redrawn * Only affected regions are blitted to the final destination surface * Takes up far less memory than surface combining * Makes adding in new types of graphics layer handlers easy, orthogonal, and immediately take advantage of the dirty buffering. THE BASIC CONCEPT ----------------- Let's first start with some terminology: Backbuffer - An in-memory (usually system memory and not video card) buffer that comprises the entirety of all surfaces, displayed or not. Viewport - The displayed region of a backbuffer. Backbuffers can be much larger than the viewport actually shows. Tile - Any "chunk" of graphics - rectangular or square in shape that is based on a character, such as any alphanumeric graphics, that is used on a grid (32X32 matrix) and is bound to fixed positions. Sprite - Any "chunk" of graphics - rectangular or square in shape that is based on a picture that can have transparent aspects to it and can be placed at arbitrary positions throughout the screen. Backdrop - A large graphic that shows through any tile or sprite layer when no other layers are in front of it. Overlay - Large graphic that has transparencies or translucent properties that will obscure layers behind it. Dirty tile - A system that keeps track of all tiles that are touched by other objects (sprites, backdrops, etc...) that must be redrawn the next frame so they show up again. (Overdraw) Border - A region of pixels around a backbuffer. For example: +---------------+ | 2 | | +---------+ | | | | | |2 | 1 | 2| |2 | 1 | 2| | | | | | +---------+ | | 2 | +---------------+ So 1 would be the actual backbuffer surface and 2 would be the border. This is done so that when a sprite that's 32x32 is drawn in the lower right extreme of the backbuffer, the graphics routines don't need to clip the image to fit. The border is really a scratch region where overdraw of sprites and other goodies can occur. Active surface - Region 1 above. Anything *NOT* comprising the overdraw border - the active section of the backbuffer that is either displayed by the viewport or possibly displayable by the viewport. Dirty buffering - A system that keeps track of deltas between a prior frame and the current frame and blits ONLY the changes to the display device (a significant time savings). ------------------------- This approach also assumes that the overdraw area is a constant pixel width on both the X and Y axis. The overdraw area should be as large in pixels as the largest axis of any sprite that would be drawn to the active surface. This is so the sprite/tile/whatever can be drawn at any place on the active surface and the overdraw won't go beyond the memory region allocated and seriously corrupt things, or wrap around and clobber data on the opposite side of the backbuffer. Now that that's all said and done, here is an example backbuffer for a game that uses a 224x288 playfield area with a static viewport, with a 16 pixel border. This assumes that the pixel border is the same width all the way around the backbuffer viewport: +---------------+ | 2 | | +---------+ | | | | | |2 | 1 | 2| |2 | 1 | 2| | | | | | +---------+ | | 2 | +---------------+ 1=Active surface 2=Overdraw border And a definition for the graphical layers: struct sLayerDefinition sLayers[] = { {LAYER_TILE, 0, sTileDefs}, {LAYER_SPRITE, 0, sSpriteDefs}, {LAYER_EOL} }; First column is the type of layer it is, the second is the instance of the layer itself (I.E. are we doing tile layer 0 or 1?) and the third is a layer specific pointer that gives specific definition to aspects of that layer. For example, the sTileDefs might contain an offset mapping that will swizzle offsets in memory to X/Y coordinates on the backbuffer, or where the tiles will appear on the backbuffer (what X/Y coordinates). When the sprite layer draws a sprite, it makes a call up to the prior layer saying "dirty region x1/y1 - x2/y2" for the area of the sprite. The tile layer in turn "dirties" the tiles that it touches so they will be redrawn next frame. Remember, sprites are redrawn every frame. Using this approach, we can layer many layers, and each layer will figure out if it needs to pass dirty region information up to the prior layer. Each layer is responsible for being able to dirty itself (hehehehehe). It's a start. Comments? -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 02:41:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA47950 for dynarec-outgoing; Wed, 29 Mar 2000 02:41:32 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Wed, 29 Mar 2000 12:41:09 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I'm glad Mike came around to my way of thinking. Welcome to the dark side >of the force. ;) "You are only a Master of evil, Neil!" ;-) >In actual fact, the correct term for this architecture is "Hybrid". So, in >fact, the P5 is a hybrid processor. Let's say it's a hybrid design and the PPC has a hybrid instruction set. >That seems fair. If you tell him on the list, we'll all ignore that >message, you can kill him and no-one else would know. ;) Hey, what is this? Treachery against me? >While BeOS may not have the support that Linux does, it does have more >up-to-date drivers. Which is more than can be said for Linux. After all, >BeOS is a multimedia OS - that's what it's aimed at. People need to have >modern hardware for that... Yeah, I was surprised that BeOS 5 already has G400 drivers. But people are only mocking that it doesn't have GeForce drivers yet. Does Linux have these? No. BTW, BeOS 5 Pro will be the first OS with MP3 codecs, ie. you don't need a special MP3 player and you can load and save MP3 in any application that uses the media translators correctly. And it's also nice to have a CD burn application preinstalled. >"Do you want this in your kernel or as an object?" >"Object, please" >"Tough, it's going in your kernel. You have to restart. Hahaha!" Imagine this: I tried Quake 2 on BeOS and thought some hardware acceleration would be nice. So I copied the experimental library to a special directory, started Quake 2 one second later and it worked! This is how it should be. And when you change network settings the network services are simply restarted. About the only thing where you need to restart is when you change the application server, ie. the main graphics driver. These are the advantages of a microkernel OS. >And what is it about Windows '9X while I think about it. That question "Do >you want to restart Windows?" really bugs me. NO! I do *NOT* want to >restart Windows! And then, to make it worse, you click "Yes" and it does >restart Windows. But only after restarting your machine. AAARRGGHHH! It >doesn't need to reset the machine! >That's my main problem with Windows '9X. :) I think the main problem is the formulation: "Do you *want* to restart Windows now?" No, I surely don't *want* to do this but in most cases I have to. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 02:41:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA47957 for dynarec-outgoing; Wed, 29 Mar 2000 02:41:34 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Wed, 29 Mar 2000 12:27:37 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yes, but it's Intel secret and I'd have to kill you. That would be ok ;-) >But I think everything runs that way. The 68K, PPC, Sparc, and 34010 all >seem to do that. On the other hand ARM, MIPS, Alpha, SPARC, etc can use any GPR as SP. BTW, I don't think that PPC has a hardware SP. >What BeOS does support it supports very well. What Linux supports it's >so-so across the board. True. >I've had them be equally stable even under heavy load. FreeBSD surely >performs better, though - more bang for processor buck. You surely didn't have a RAS connection. We once crashed NT that way. >FreeBSD. Of course. ;-) I answered the question to myself by taking a look at the Synthcom server... BTW, I always thought that the BSD devil is cuter than Tux anyway! ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 02:56:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA47990 for dynarec-outgoing; Wed, 29 Mar 2000 02:56:56 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003291058.MAA03233@pons.ac.upc.es> Subject: Re: DYNAREC: Graphics theories In-Reply-To: from Neil Bradley at "Mar 29, 2000 02:23:55 am" To: dynarec@synthcom.com Date: Wed, 29 Mar 2000 12:58:05 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Here's a 2D graphics methodology with built in optimizing and dirty > regioning, making it braindead simple for the programmer to deal with flat > 2D hardware in a 2D hardware-assist style mode. It's not complete, but it > should give an idea of what I'm thinking. It'll also make the document > better based upon your questions and feedback. Let me know what you think: > I don't know more than basis about 2D graphics systems so I can't really help. But I'm ready to learn a lot :) > > THE BASIC CONCEPT > ----------------- > > Let's first start with some terminology: > I understand all terminology. You explain really well :) > When the sprite layer draws a sprite, it makes a call up to the prior layer > saying "dirty region x1/y1 - x2/y2" for the area of the sprite. The tile > layer in turn "dirties" the tiles that it touches so they will be redrawn > next frame. Remember, sprites are redrawn every frame. > Depth traversal? ;) > Using this approach, we can layer many layers, and each layer will figure > out if it needs to pass dirty region information up to the prior layer. > Each layer is responsible for being able to dirty itself (hehehehehe). > So, when the program modifies a layer this layer is called and then this layer calls prior layer because of modifications and so on. A kind of cascade. What happens when the definition of a sprite changes? I don't know if this is possible, perhaps all sprites are ROMed. > It's a start. Comments? > > For me seems all correct. I think I will try this afternoon to learn a bit about 2D graphics by myself, to don't get lost. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 03:52:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA48069 for dynarec-outgoing; Wed, 29 Mar 2000 03:52:21 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Wed, 29 Mar 2000 13:51:44 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No, it's a hybrid processor. But you've changed your tune now - you're now >conceding that it does use RISC. You wouldn't say that before! ;) Sometimes a compromise is better than endless discussion... >Whether it's a x86 clone to you or not, that doesn't mean that technically >it's an x86 clone. It isn't really a x86 clone, but with having only a x86 code morpher and no information available about its real architecture it isn't much more either. >Maybe, but how are you going to define what RISC is now? It means "Reduced >Instruction Set Computing" (though I prefer "Chip") and so any processor >with a reduced instruction set must be RISC. ;) It's "Reduced Instruction Set Computer" and you don't have to take the term too literal because it's only one of the features that make a processor RISC. Some people really argumented that according to this term a 6502 would be RISC too. So here is what I think to be RISC: * Few instructions; this is a bit relative because PPC has a few hundred. * Simple instructions, most of these can be executed in one cycle by utilizing a pipeline. * Load/store architecture, ie. most instructions only operate on registers and immediates and special instructions are needed for memory access. * Large set of general purpose registers, at least 16. * Uniform instruction length, either 32-bit or 16-bit. A few rare ones, like TriCore or M32R, are able to mix two instruction formats. >And how do you define what has a reduced instruction set? Can I remove one >instruction from a processor and claim that it's RISC? ;) Well, compare the 6502 to the list above and you'll see that it is not RISC. You just take the term RISC too literal. As I already said I mainly take the original definition by David Patterson (Berkeley RISC) who invented that term. >I did a short (3 months) research project on RISC and CISC which is when I >discovered about the P5 being a hybrid. I didn't know that before - Intel >didn't make a big thing of it. In fact, I told several computing friends >and they wouldn't believe me until I showed them my research. I wonder how >many people know this? I don't think it's too many, to be honest. I already knew that some time ago... During my research I analysed over a dozen RISC and CISC architectures. I think I have information on many RISC processors you never heard of. >So long as they retain the same kernel, most things should remain. But if >programs become dependent upon parts of a certain distribution, then >they'll become incompatible. We'll see. Whatever, I don't like Linux too >much at the moment. The error messages are a load of crap - as is the >documentation. It's getting better, but it's not brilliant. But I think many distributors adjust the kernel. Also the whole directory structure is different for each distribution, which means that you need a software package for your distribution because the package of another distribution won't install correctly. This isn't what I call compatible! Just one little example: the directory where the link to the X server is created can differ: SuSE: /var/X11R6/bin/X RedHat: /etc/X In my opinion RedHat is better since /etc is where also other configuration files like fstab go. I wonder why SuSE decided to put it into /var/... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 04:29:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA48134 for dynarec-outgoing; Wed, 29 Mar 2000 04:29:34 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories Date: Wed, 29 Mar 2000 14:28:40 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >The approach I'm proposing gives several advantages: >* Everything is drawn to a common surface Less memory used and acts more like a real video buffer. >* Priorities are handled by virtue of the definition of the various layers Nice concept. >* Handles viewport management so that scrolling regions and views can take > advantage of the dirty buffering What about a strongly scrolling game like Sonic? In that case you'll end up with the whole screen being dirty and you still have to redraw everything? Wait! I think I begin to understand your concept. You just replace the viewport on the backbuffer and redraw the sprite positions. I think the ideal way would be if this technique would be adjusted to the largest layer and not to the layer in the back which normally only displays some mountains being scrolled a bit slower in a small portion of the screen to get a pseudo 3D effect. >* Only affected regions are redrawn That's how it should be, isn't it? >* Only affected regions are blitted to the final destination surface I guess by destination surface you mean the video buffer of the host system. >(Overdraw) Border - A region of pixels around a backbuffer. If I understand it correctly than this is a way to spare a special clipping function without having to fear about memory leaks. Neat! >And a definition for the graphical layers: >struct sLayerDefinition sLayers[] >{ > {LAYER_TILE, 0, sTileDefs}, > {LAYER_SPRITE, 0, sSpriteDefs}, > {LAYER_EOL} >}; >When the sprite layer draws a sprite, it makes a call up to the prior layer >saying "dirty region x1/y1 - x2/y2" for the area of the sprite. The tile >layer in turn "dirties" the tiles that it touches so they will be redrawn >next frame. Remember, sprites are redrawn every frame. Ok, let me just see if I get your idea. You start to redraw at the layer in the front which then passes the changed regions to the underlying layer which again passes the changed regions (including those changed by that layer) to the next one and so on. Sounds pretty neat to me, but I'm surely not a graphics expert. What would be interesting to me is according to which layer you move the viewport. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 09:16:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA48933 for dynarec-outgoing; Wed, 29 Mar 2000 09:16:08 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E21327.F88BA257@eurocopter.de> Date: Wed, 29 Mar 2000 16:28:55 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: <200003290930.LAA02355@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > > Then I seem to be used to the first interpretation. > > > > So it's RISC then. The design of the processor is RISC, it just has a > > translator in there for good measure. > > > > I think this RISC/CISC discussion is like the dynamic recompilation/dynamic > translation or whatever discussion. You talk about the same: how really works > the different CPUs. But you are using different names for it, and you are > discussing about which is the better name. I think is more important to know > how works something than how someone (or someother) calls it. Of course. In actual fact I meant to put a smilie there, but I forgot. And then I was going to reply to my reply to say there should be a smilie there, but I thought that would be strange. So I didn't. :) > Pentium an P-II are internally RISC CPUs but their instruction set are CISC, > this is all for me. You can name them RISC or CISC but this don't change what > they are. Hybrid! ;) > Ummm, this are my thoughts. I hope I don't ofense someone. Grr! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 11:17:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA49441 for dynarec-outgoing; Wed, 29 Mar 2000 11:17:41 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 29 Mar 2000 11:17:40 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories In-Reply-To: <200003291058.MAA03233@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > saying "dirty region x1/y1 - x2/y2" for the area of the sprite. The tile > > layer in turn "dirties" the tiles that it touches so they will be redrawn > > next frame. Remember, sprites are redrawn every frame. > Depth traversal? ;) Heh. Not really. Depth traversal sorta requires that you call yourself with a pointer to the next place you go. In this case you've only got to dirty the stuff underneath you. > > Using this approach, we can layer many layers, and each layer will figure > > out if it needs to pass dirty region information up to the prior layer. > > Each layer is responsible for being able to dirty itself (hehehehehe). > So, when the program modifies a layer this layer is called and then > this layer calls prior layer because of modifications and so on. A Correct. And each layer knows how to dirty a region for itself. > kind of cascade. What happens when the definition of a sprite changes? Do you mean the size or the color? In either case, sprites are redrawn every frame anyway, and if its size or color changes then it falls out by redrawing and dirtying the layers below it. > > It's a start. Comments? > For me seems all correct. I think I will try this afternoon to learn > a bit about 2D graphics by myself, to don't get lost. Wait until I get to the hardware blitting aspect of things. It keeps a dirty buffer list so it knows exactly what to blit. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 11:23:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA49457 for dynarec-outgoing; Wed, 29 Mar 2000 11:23:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 29 Mar 2000 11:23:22 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > What about a strongly scrolling game like Sonic? In that case you'll > end up with the whole screen being dirty and you still have to redraw > everything? Yeah. You're kinda screwed. You'll have to blit the entire thing to the display device. But also think about even when it's scrolling, not every frame is a change in scroll position. When the viewport position changes, you'll have to reblit the entire screen anyway (to the video card that is), but if it doesn't change, then the graphics routines will just blit the stuff that has changed. > Wait! > I think I begin to understand your concept. You just replace the > viewport on the backbuffer and redraw the sprite positions. The sprite positions and whatnot are still drawn to the overall backbuffer. The only thing you change is the viewport. > I think the ideal way would be if this technique would be adjusted to > the largest layer and not to the layer in the back which normally only > displays some mountains being scrolled a bit slower in a small portion > of the screen to get a pseudo 3D effect. Even with the Genesis, there's a bit of an overdraw region and it has a backbuffer that's much larger than the viewport. > >* Only affected regions are redrawn > That's how it should be, isn't it? Yes, but you'll find a lot of publicly released emulators are NOT this way. > >* Only affected regions are blitted to the final destination surface > I guess by destination surface you mean the video buffer of the host > system. Correct. The reason I didn't say "video buffer" is that it might go through yet another memory region (OS anyone?). > >(Overdraw) Border - A region of pixels around a backbuffer. > If I understand it correctly than this is a way to spare a special > clipping function without having to fear about memory leaks. Neat! Or more importantly, memory corruption, yes. > >struct sLayerDefinition sLayers[] >{ > > {LAYER_TILE, 0, sTileDefs}, > > {LAYER_SPRITE, 0, sSpriteDefs}, > > {LAYER_EOL} > >}; > >When the sprite layer draws a sprite, it makes a call up to the prior > >saying "dirty region x1/y1 - x2/y2" for the area of the sprite. The > >layer in turn "dirties" the tiles that it touches so they will be > >next frame. Remember, sprites are redrawn every frame. > Ok, let me just see if I get your idea. You start to redraw at the > layer in the front which then passes the changed regions to the Actually, you start at the lowest layer (LAYER_TILE in this case) and work your way toward the front. > underlying layer which again passes the changed regions (including > those changed by that layer) to the next one and so on. Correct. > Sounds pretty neat to me, but I'm surely not a graphics expert. > What would be interesting to me is according to which layer you move > the viewport. It all winds up being one backbuffer surface anyway, even if you have 10 scrolling layers. They all get drawn to a common place, and your viewport would be just a view into the backbuffer. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 12:02:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA49667 for dynarec-outgoing; Wed, 29 Mar 2000 12:02:25 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <007701bf99b9$407e9420$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Emu Fakes Date: Wed, 29 Mar 2000 21:56:25 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > "You are only a Master of evil, Neil!" ;-) "Strong is the power of the dark, yeees". :) > >In actual fact, the correct term for this architecture is "Hybrid". > So, in > >fact, the P5 is a hybrid processor. > > Let's say it's a hybrid design and the PPC has a hybrid instruction > set. No: in fact the official term is "Hybrid". So the P5 is, in fact, a hybrid processor. Don't know about the PPC, though. I wasn't arguing that point. :) > >That seems fair. If you tell him on the list, we'll all ignore that > >message, you can kill him and no-one else would know. ;) > > Hey, what is this? Treachery against me? No, not at all. I just reckon that unless they've perfected the e-mail bomb (it actually harms humans now) that you're safe. NB is, after all, several thousand miles away from you. ;) > Yeah, I was surprised that BeOS 5 already has G400 drivers. But people > are only mocking that it doesn't have GeForce drivers yet. Does Linux > have these? No. I want ViperII support in either. Mainly because I have a ViperII. :) > BTW, BeOS 5 Pro will be the first OS with MP3 codecs, ie. you don't > need a special MP3 player and you can load and save MP3 in any > application that uses the media translators correctly. And it's also > nice to have a CD burn application preinstalled. You've been able to do that in Win '9X for ages - though it wasn't part of Win '95. The MP3 encoding thing, I mean. The CD burn application is nice, though that does come with Linux. And *BSD too, AFAIK. > Imagine this: I tried Quake 2 on BeOS and thought some hardware > acceleration would be nice. So I copied the experimental library to a > special directory, started Quake 2 one second later and it worked! This > is how it should be. Indeed. And so long as you don't get a BSOD when (if!) it crashes, I'll be happy. > And when you change network settings the network services are simply > restarted. About the only thing where you need to restart is when you > change the application server, ie. the main graphics driver. > These are the advantages of a microkernel OS. Yes, this is why I like this design. > I think the main problem is the formulation: "Do you *want* to restart > Windows now?" > No, I surely don't *want* to do this but in most cases I have to. That was my whole point exactly. I hate that phrase. A better phrase would be "No, you *HAVE* to restart Windows - but do you want to do it now or not?". :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 14:37:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA50335 for dynarec-outgoing; Wed, 29 Mar 2000 14:37:53 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories Date: Wed, 29 Mar 2000 23:11:49 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yeah. You're kinda screwed. Very likely, my knowledge about graphics is... limited. >You'll have to blit the entire thing to the >display device. But also think about even when it's scrolling, not every >frame is a change in scroll position. When the viewport position changes, >you'll have to reblit the entire screen anyway (to the video card that >is), but if it doesn't change, then the graphics routines will just blit >the stuff that has changed. Oops, forgot the last step of finally making everything visable... >The sprite positions and whatnot are still drawn to the overall >backbuffer. The only thing you change is the viewport. Yeah, that's what I meant, but I had the wrong order. Surely the sprites have to be redrawn before the viewport is set. >Even with the Genesis, there's a bit of an overdraw region and it has a >backbuffer that's much larger than the viewport. Have to take a look at the Generator docs again... >Actually, you start at the lowest layer (LAYER_TILE in this case) and work >your way toward the front. So you pass the dirty regions from front to back and then redraw everything from back to front? >It all winds up being one backbuffer surface anyway, even if you have 10 >scrolling layers. They all get drawn to a common place, and your viewport >would be just a view into the backbuffer. You surely know more about the topic than me. Thank God that the topic isn't sound emulation or I'll go totally nuts... BTW, I think graphical enhancements like Eagle could be optionally applied during the transfer from the viewport to the surface display. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 14:38:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA50343 for dynarec-outgoing; Wed, 29 Mar 2000 14:38:06 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Wed, 29 Mar 2000 23:22:29 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >"Strong is the power of the dark, yeees". :) Why do all dark power uses die then? ;-) >No: in fact the official term is "Hybrid". So the P5 is, in fact, a hybrid >processor. Is that as official as CRISP? ;-) >Don't know about the PPC, though. I wasn't arguing that point. :) Some parts of the PPC are nice, others are just weird! For emulators it could be nice because you have intructions to load and store data byte- reversed ;-) >No, not at all. I just reckon that unless they've perfected the e-mail bomb >(it actually harms humans now) that you're safe. NB is, after all, several >thousand miles away from you. ;) Aha, I hope the email bomb doesn't work with BeMail ;-) >I want ViperII support in either. Mainly because I have a ViperII. :) Tell Be... >You've been able to do that in Win '9X for ages - though it wasn't part of >Win '95. The MP3 encoding thing, I mean. But it certainly didn't work like the BeOS media translators where every application that makes correct use of the translators can load and store any format you have a translator for! >The CD burn application is nice, though that does come with Linux. And *BSD >too, AFAIK. Linux surely has one. >Indeed. And so long as you don't get a BSOD when (if!) it crashes, I'll be >happy. I read that they added the WSOD to BeOS 5, but it's interactive. Anyway you won't see it that often. >That was my whole point exactly. I hate that phrase. A better phrase would >be "No, you *HAVE* to restart Windows - but do you want to do it now or >not?". :) Hehe. Even better is the translated shutdown message. I think the original says something like "It's now safe to turn the computer off." The German translation says: "You can switch off the computer now." What do they know about what I can or cannot do? They also could have written: "You can throw the computer out of the window now." I guess the computer market would have increased sales then ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 22:38:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id WAA51880 for dynarec-outgoing; Wed, 29 Mar 2000 22:38:27 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 29 Mar 2000 22:38:26 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Yeah. You're kinda screwed. > Very likely, my knowledge about graphics is... limited. Actually, I was referring to when you have to scroll the whole screen - there's nothing you can do other than just blit the whole thing. Not that you were screwed personally. ;-) > >frame is a change in scroll position. When the viewport position > >you'll have to reblit the entire screen anyway (to the video card that > >is), but if it doesn't change, then the graphics routines will just > >the stuff that has changed. > Oops, forgot the last step of finally making everything visable... Yeah. Just creating it in memory might be faster, but getting to see it is even better! > >The sprite positions and whatnot are still drawn to the overall > >backbuffer. The only thing you change is the viewport. > Yeah, that's what I meant, but I had the wrong order. Surely the > sprites have to be redrawn before the viewport is set. I would say it depends. Some sprites in games (like Toobin' for example) can have their sprites relative to the viewport and some relative to the entire backbuffer. So I'd leave that up to the individual layer. > >Actually, you start at the lowest layer (LAYER_TILE in this case) and > >your way toward the front. > So you pass the dirty regions from front to back and then redraw > everything from back to front? Sort - As each layer is drawn, it "dirties" the layer beneath it if it affects it so that the layer redraws it the next frame. > >It all winds up being one backbuffer surface anyway, even if you have > >scrolling layers. They all get drawn to a common place, and your > >would be just a view into the backbuffer. > You surely know more about the topic than me. I've had a bit of experience... ;-( > Thank God that the topic isn't sound emulation or I'll go totally > nuts... I've had a bit of experience with that, too - even moreso than graphics! > BTW, I think graphical enhancements like Eagle could be optionally > applied during the transfer from the viewport to the surface display. Easily. You can also do weird effects like scanlining and pixel stretching at that level, too. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 22:42:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id WAA51894 for dynarec-outgoing; Wed, 29 Mar 2000 22:42:01 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E2F601.7E06BA07@eurocopter.de> Date: Thu, 30 Mar 2000 08:36:49 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >"Strong is the power of the dark, yeees". :) > > Why do all dark power uses die then? ;-) As a Star Wars fan, you should know that there were only 2 Jedi Knights left in Episode IV. It appears that users of the light die easily too. ;) > >No: in fact the official term is "Hybrid". So the P5 is, in fact, a > hybrid > >processor. > > Is that as official as CRISP? ;-) I don't know. ;) CRISP surely isn't an official term. Hybrid is though. > >Don't know about the PPC, though. I wasn't arguing that point. :) > > Some parts of the PPC are nice, others are just weird! For emulators it > could be nice because you have intructions to load and store data byte- > reversed ;-) Do you mean endian reversed, or actually full reversal - so that instead of storage going from 0000 to FFFF, it goes from FFFF to 0000? > >No, not at all. I just reckon that unless they've perfected the e-mail > bomb > >(it actually harms humans now) that you're safe. NB is, after all, > several > >thousand miles away from you. ;) > > Aha, I hope the email bomb doesn't work with BeMail ;-) Ooh, I don't know. Maybe it supports the "Monitor blowing up(tm) protocol". Let's hope not, hey? ;) > >I want ViperII support in either. Mainly because I have a ViperII. :) > > Tell Be... Might do at that. I could also take the piss and ask for support for crap chipsets like "my SiS 6326" or... no, just the SiS 6326. Or any other chipset that SiS (also known as PC Chips) create. :) Which reminds me, I've GOT to do a pisstake website for the 6326. I've come up with a logo just now: "All the graphics ability of a... TNT! All the speed of a... 286. And a slow 286 at that!". :) > >You've been able to do that in Win '9X for ages - though it wasn't > part of > >Win '95. The MP3 encoding thing, I mean. > > But it certainly didn't work like the BeOS media translators where > every application that makes correct use of the translators can load > and store any format you have a translator for! It did, actually. Any program that used the Win '95 sound codecs (that'll be all the normal ones - I haven't seen one that didn't) could load and save from and into MP3 files. > >The CD burn application is nice, though that does come with Linux. And > *BSD > >too, AFAIK. > > Linux surely has one. Yes, it does. It's crap, mind, but it does have one. :) > >Indeed. And so long as you don't get a BSOD when (if!) it crashes, > I'll be > >happy. > > I read that they added the WSOD to BeOS 5, but it's interactive. Anyway > you won't see it that often. "Place your bets, please". I surely can make it crash a lot. :) > Even better is the translated shutdown message. I think the original > says something like "It's now safe to turn the computer off." The > German translation says: "You can switch off the computer now." What do > they know about what I can or cannot do? They also could have written: > "You can throw the computer out of the window now." I guess the > computer market would have increased sales then ;-) Maybe Win2K says that. After all, they'll be wanting to sell the X-Box, won't they? :) I don't actually know what it says. I've got an ATX mobo and PSU and so my computer turns off before that message appears... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 23:20:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA51957 for dynarec-outgoing; Wed, 29 Mar 2000 23:20:17 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E2FF47.730E464@eurocopter.de> Date: Thu, 30 Mar 2000 09:16:23 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Actually, I was referring to when you have to scroll the whole screen - > there's nothing you can do other than just blit the whole thing. Not that > you were screwed personally. ;-) And apart from you saying that the scrolling doesn't occur every frame, you can also take parallax into account. In that case you may find that the background doesn't move much at all. And even in Sonic, you're not always scrolling. There's not a hell of a lot you can do when scrolling. You could try some clever techniques such as buffering what you've just seen (erm... you're scrolling right to left, so you remember what was on the left side of the screen) which will speed up if you were to change directions. Otherwise I can't think of much that would speed up this process. Well, you could always not display it. That'd keep the speed up. :) > Yeah. Just creating it in memory might be faster, but getting to see it is > even better! Ooh, I don't know. Just think what you could be doing with those extra clock cycles! ;) > I would say it depends. Some sprites in games (like Toobin' for example) > can have their sprites relative to the viewport and some relative to the > entire backbuffer. So I'd leave that up to the individual layer. Ah, is that way Toobin' took so long to emulate and to get right? > > You surely know more about the topic than me. > > I've had a bit of experience... ;-( I've had a fair bit as well, though not as much on the PC as you probably have. I was going to add some comments to this last night, but I fell asleep instead which is a really bad plan when you're sitting up. Arse! I'm just glad I disconnected from the 'net first! > > Thank God that the topic isn't sound emulation or I'll go totally > > nuts... > > I've had a bit of experience with that, too - even moreso than graphics! This is where I've had little experience on the PC. > > BTW, I think graphical enhancements like Eagle could be optionally > > applied during the transfer from the viewport to the surface display. > > Easily. You can also do weird effects like scanlining and pixel stretching > at that level, too. Does anyone here actually like Eagle, BTW? I know that I don't. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 23:27:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA51982 for dynarec-outgoing; Wed, 29 Mar 2000 23:27:54 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 29 Mar 2000 23:27:53 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories In-Reply-To: <38E2FF47.730E464@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > there's nothing you can do other than just blit the whole thing. Not that > > you were screwed personally. ;-) > And apart from you saying that the scrolling doesn't occur every frame, you > can also take parallax into account. In that case you may find that the > background doesn't move much at all. And even in Sonic, you're not always > scrolling. A bit more clarification: Scrolling doesn't *ALWAYS* occur every frame... > There's not a hell of a lot you can do when scrolling. You could try some > clever techniques such as buffering what you've just seen (erm... you're And those wind up just taking longer than blitting the whole thing anyway. > > can have their sprites relative to the viewport and some relative to the > > entire backbuffer. So I'd leave that up to the individual layer. > Ah, is that way Toobin' took so long to emulate and to get right? Did it take so long to emulate and get right? -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 23:40:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA52014 for dynarec-outgoing; Wed, 29 Mar 2000 23:40:02 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E303FA.85FAD2D3@eurocopter.de> Date: Thu, 30 Mar 2000 09:36:27 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > And apart from you saying that the scrolling doesn't occur every frame, you > > can also take parallax into account. In that case you may find that the > > background doesn't move much at all. And even in Sonic, you're not always > > scrolling. > > A bit more clarification: Scrolling doesn't *ALWAYS* occur every frame... Sorry, yes. I meant that, but I didn't write it. My bad. :) > > There's not a hell of a lot you can do when scrolling. You could try some > > clever techniques such as buffering what you've just seen (erm... you're > > And those wind up just taking longer than blitting the whole thing anyway. I imagine so, yes. When you write to the screen, do you always use DWORDS or something else? > > Ah, is that way Toobin' took so long to emulate and to get right? > > Did it take so long to emulate and get right? You got it before the MAME team did, IIRC. I remember they had problems getting it to display properly. And I seem to remember even now seeing some graphics glitches, though whether they're from the original I just don't know... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 23:46:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA52091 for dynarec-outgoing; Wed, 29 Mar 2000 23:46:19 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories Date: Thu, 30 Mar 2000 09:16:44 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Actually, I was referring to when you have to scroll the whole screen - >there's nothing you can do other than just blit the whole thing. Not that >you were screwed personally. ;-) Heh, but I guess it would be true as well ;-) >Yeah. Just creating it in memory might be faster, but getting to see it is >even better! Why? You could market it as "increased challange" ;-) >I would say it depends. Some sprites in games (like Toobin' for example) >can have their sprites relative to the viewport and some relative to the >entire backbuffer. So I'd leave that up to the individual layer. It seems I really need to learn more about the topic... >Sort - As each layer is drawn, it "dirties" the layer beneath it if it >affects it so that the layer redraws it the next frame. The redraw is done in the next frame? Won't that make a difference? >I've had a bit of experience... ;-( It seems you also had negative experience... >> Thank God that the topic isn't sound emulation or I'll go totally >> nuts... >I've had a bit of experience with that, too - even moreso than graphics! For sound it seems that I enjoy produced sounds so much that I find the theory too boring to understand much. One of my friends was surprised that I knew of ADSR but that's about it... >Easily. You can also do weird effects like scanlining and pixel stretching >at that level, too. And if it's done correctly you still only have to do it for the modified portions ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Mar 29 23:46:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA52098 for dynarec-outgoing; Wed, 29 Mar 2000 23:46:20 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Thu, 30 Mar 2000 09:32:41 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >As a Star Wars fan, you should know that there were only 2 Jedi Knights >left in Episode IV. It appears that users of the light die easily too. ;) That was because they were hunted down... Also you have to note that Yoda didn't consider Leia. Maybe Luke was just the only one powerful enough to stand the threat... BTW, did you know that Palpatine comes back 7 years after the Battle of Endor? ;-) >Do you mean endian reversed, or actually full reversal - so that instead of >storage going from 0000 to FFFF, it goes from FFFF to 0000? IBM calls it byte reversed but it's actually endian conversion. They have a good hand for weird names: RLWNM - Rotate Left Word then AND with Mask EIEIO - Enforce In-order Execution of I/O, surely invented by a farmer called McDonald! >Ooh, I don't know. Maybe it supports the "Monitor blowing up(tm) protocol". >Let's hope not, hey? ;) I bet it won't work on RISC OS! ;-) BTW, you could blow up a colour monitor on a ST. There was some way to switch off the emergency reset when the frequency was too high, then switch to 70Hz and see how long the monitor lives... >It did, actually. Any program that used the Win '95 sound codecs (that'll >be all the normal ones - I haven't seen one that didn't) could load and >save from and into MP3 files. Didn't know that Windows is this flexible... >Yes, it does. It's crap, mind, but it does have one. :) Haven't tried it yet. >"Place your bets, please". >I surely can make it crash a lot. :) I don't bet, at least not money. >Maybe Win2K says that. After all, they'll be wanting to sell the X- Box, >won't they? :) Hehe. And you would still be able to tell most customers that this is normal! I noticed that PC customers accept lots of quirks that no other computer user would have accepted some years ago. One of my friends bought a notebook recently. When a program crashed he did a reboot, but instead of starting up it just turned the screen on and off all the time and it didn't switch off until he took the batteries out. He really believed that to be normal and due to the crash of the program before!!! >I don't actually know what it says. I've got an ATX mobo and PSU and so my >computer turns off before that message appears... I know that from Win95 running on my PC card. And you also see it in Windows NT. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 00:19:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA52172 for dynarec-outgoing; Thu, 30 Mar 2000 00:19:20 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E30D16.2EA8B032@est.fib.upc.es> Date: Thu, 30 Mar 2000 10:15:18 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > >As a Star Wars fan, you should know that there were only 2 Jedi > Knights > >left in Episode IV. It appears that users of the light die easily too. > ;) > > That was because they were hunted down... > Also you have to note that Yoda didn't consider Leia. Maybe Luke was > just the only one powerful enough to stand the threat... > BTW, did you know that Palpatine comes back 7 years after the Battle of > Endor? ;-) > Something about dies and Star Wars. Today I was talking about Episode I with a friend and he said there is a web page called something like 'Jar-Jar must die'. Do you know about this? What do you think about this 'thing' called Jar-Jar? I don´t know the web direction but he said me there is a section about manners of kill it but ever 'at the start of the movie' ;) BTW we can talk about what do you think about this last(first?!) movie of the saga. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 00:23:22 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA52185 for dynarec-outgoing; Thu, 30 Mar 2000 00:23:22 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E30E6F.EEB47838@est.fib.upc.es> Date: Thu, 30 Mar 2000 10:21:03 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories References: <38E2FF47.730E464@eurocopter.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Griffiths wrote: > Does anyone here actually like Eagle, BTW? I know that I don't. :) > Eagle? What is it Eagle? A bird ;) I usually don´t like this kind of 'effects'. About Graphics Theories. How are priorities handled in the NB model? For example Genesis (from Generator doc): has a background, scroll B, scroll A and sprite layer. Each has a priority bit so finally how is shown a picture is: background scroll B prio 0 scroll A prio 0 sprite prio 0 scroll B prio 1 scroll A prio 1 sprite prio 1 Perhaps this could be done having a different layer for each priority so the structure for layers would be something like this: {background, layer_scroll_b_0, layer_scroll_a_0, layer_sprite_0, layer_scroll_b_1, layer_scroll_a_1, layer_sprite_1} Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 00:39:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA52218 for dynarec-outgoing; Thu, 30 Mar 2000 00:39:42 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E311E5.8F34A05C@est.fib.upc.es> Date: Thu, 30 Mar 2000 10:35:49 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories References: Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Bradley wrote: > > >* Only affected regions are redrawn > > That's how it should be, isn't it? > > Yes, but you'll find a lot of publicly released emulators are NOT this > way. > Yes ; ) And because of this is why some emulators run nicely a game on a old PC and other just don´t run in the last P-7000. One example I got long ago was Dave Spicer´s Arcade emulator (Sparcade). All games runned well on my old 486 but others emulators didn´t run properly games like SI or Pacman, too slow !!. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 00:40:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA52230 for dynarec-outgoing; Thu, 30 Mar 2000 00:40:56 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E311C7.C82BB227@eurocopter.de> Date: Thu, 30 Mar 2000 10:35:19 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >As a Star Wars fan, you should know that there were only 2 Jedi > Knights > >left in Episode IV. It appears that users of the light die easily too. > ;) > > That was because they were hunted down... No idea, I haven't read any of the books (that the films are based on or whatever) so I don't know the story - other than what I've seen in the films. I like the sage, but I read one of the books once and it was crap. Terrible writing. So I didn't bother with any others. > Also you have to note that Yoda didn't consider Leia. Maybe Luke was > just the only one powerful enough to stand the threat... He did, in fact. There's one point where he says to the ghost of Obi-Wan something like "No, there is another". Referring to Leia. We think. :) > BTW, did you know that Palpatine comes back 7 years after the Battle of > Endor? ;-) Nope, didn't know that. :) > IBM calls it byte reversed but it's actually endian conversion. Ah, okay. Good. :) > EIEIO - Enforce In-order Execution of I/O, surely invented by a farmer > called McDonald! This one made me laugh. :)) > I bet it won't work on RISC OS! ;-) Is that a real RISC OS? ;) I don't know. If you have free control of refresh rates, you can blow something up. Either the monitor or the RAMDAC on the video card. Both achieve the same effect (ie no picture) but one is a whole lot cheaper to replace than the other... > BTW, you could blow up a colour monitor on a ST. There was some way to > switch off the emergency reset when the frequency was too high, then > switch to 70Hz and see how long the monitor lives... Really? Hmm. Also, why would 70Hz kill the monitor? What refresh was it normally at? I was under the impression that the Atari ST and Amiga monitors were in fact TVs without any tuners... > Didn't know that Windows is this flexible... If you mess around with the installed codecs, yes. I'm pretty sure it was a German company who released the codec - "Fraunhoffer" or something like that. I also know that within one week it was withdrawn from public because they realised that anyone could now create MP3s easily. It was also pretty good quality, but slow. > >Yes, it does. It's crap, mind, but it does have one. :) > > Haven't tried it yet. I wouldn't bother. Text interfaces suck - but commandline interfaces suck more. And this is a commandline led program thing... :-/ > >"Place your bets, please". > >I surely can make it crash a lot. :) > > I don't bet, at least not money. It's safer that way. :) > Hehe. And you would still be able to tell most customers that this is > normal! I noticed that PC customers accept lots of quirks that no other > computer user would have accepted some years ago. I agree. Such as "Oh, my computer has crashed. Never mind!" whereas on other computers it'd be more like "Oh, my computer has crashed. Why? WHY? WTF?!". We're used to it - and we shouldn't be. > One of my friends bought a notebook recently. When a program crashed he > did a reboot, but instead of starting up it just turned the screen on > and off all the time and it didn't switch off until he took the > batteries out. He really believed that to be normal and due to the > crash of the program before!!! Ooh, bad. Don't know why that would happen... > >I don't actually know what it says. I've got an ATX mobo and PSU and > so my > >computer turns off before that message appears... > > I know that from Win95 running on my PC card. And you also see it in > Windows NT. I'm not going to run NT if I can possibly help it. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 00:41:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA52239 for dynarec-outgoing; Thu, 30 Mar 2000 00:41:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E31275.A478DA4F@eurocopter.de> Date: Thu, 30 Mar 2000 10:38:13 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories References: <38E2FF47.730E464@eurocopter.de> <38E30E6F.EEB47838@est.fib.upc.es> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Does anyone here actually like Eagle, BTW? I know that I don't. :) > > Eagle? What is it Eagle? A bird ;) It surely is. :) > I usually don´t like this kind of 'effects'. Nor me. Only effect like this I do like is the TV-mode in ZSNES and SNES9X. > About Graphics Theories. How are priorities handled in the NB model? AFAIK they're not. You'd have to implement that as an additional thing. The model that NB showed us was more a design for an overall engine and not meant to handle things like this. Wouldn't be hard to implement though. > Perhaps this could be done having a different layer for each priority so the > structure for layers would be something like this: > > {background, layer_scroll_b_0, layer_scroll_a_0, layer_sprite_0, > layer_scroll_b_1, layer_scroll_a_1, layer_sprite_1} Something like this, yes. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 00:56:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA52268 for dynarec-outgoing; Thu, 30 Mar 2000 00:56:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 30 Mar 2000 00:56:09 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories In-Reply-To: <38E311E5.8F34A05C@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by synthcom.com id AAA52265 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Yes, but you'll find a lot of publicly released emulators are NOT this > > way. > Yes ; ) And because of this is why some emulators run nicely a game on a old PC > and other just don´t run in the last P-7000. One example I got long ago was Dave > Spicer´s Arcade emulator (Sparcade). All games runned well on my old 486 but > others emulators didn´t run properly games like SI or Pacman, too slow !!. Well Retrocade'll run Galaga on a 486/66 full speed (with a cruddy ISA card). It's no slouch performer! -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 00:57:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA52278 for dynarec-outgoing; Thu, 30 Mar 2000 00:57:06 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 30 Mar 2000 00:57:05 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories In-Reply-To: <38E30E6F.EEB47838@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by synthcom.com id AAA52275 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Does anyone here actually like Eagle, BTW? I know that I don't. :) > Eagle? What is it Eagle? A bird ;) > I usually don´t like this kind of 'effects'. A big bird that makes big poop. > About Graphics Theories. How are priorities handled in the NB model? For > example Genesis (from Generator doc): has a background, scroll B, scroll A and > sprite layer. Each has a priority bit so finally how is shown a picture is: > background > scroll B prio 0 > scroll A prio 0 > sprite prio 0 > scroll B prio 1 > scroll A prio 1 > sprite prio 1 > Perhaps this could be done having a different layer for each priority so the > structure for layers would be something like this: > {background, layer_scroll_b_0, layer_scroll_a_0, layer_sprite_0, > layer_scroll_b_1, layer_scroll_a_1, layer_sprite_1} Bingo. When the sprite is drawn, the code decides (based on its priority) which layer it goes to. If a given layer doesn't have anything to draw that frame, then *NOTHING* happens and it passes right through. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 01:04:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA52299 for dynarec-outgoing; Thu, 30 Mar 2000 01:04:41 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E31819.ABE2D451@est.fib.upc.es> Date: Thu, 30 Mar 2000 11:02:17 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: <38E311C7.C82BB227@eurocopter.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Griffiths wrote: > Hi, > > > >As a Star Wars fan, you should know that there were only 2 Jedi > > Knights > > >left in Episode IV. It appears that users of the light die easily too. > > ;) > > > > That was because they were hunted down... > > No idea, I haven't read any of the books (that the films are based on or > whatever) so I don't know the story - other than what I've seen in the > films. I like the sage, but I read one of the books once and it was crap. > Terrible writing. So I didn't bother with any others. > I have readed some of the books, they aren´t real SF books (like the ones I really like) but for do some reading they are good. Palpatine and Darth Vader killed all Jedi nights some time before episode IV. And Darks Jedis are a lot of stronger than Light ones so they didn´t have a chance ;) I think I readed first Dark One was someone called Lord of Sith (Darth Vader is called so sometimes also). In a book Luke has to fight against his spirit in the moon ... what was the moon of the first movie? But in the books wrote later than first saga remake a lot of things were changed by the authors. It seems the Empire had impressive weapons (a lot of more powerful than Death Star Station) but they didn´t use them !!!. And twenty years later Luke and others are still fighting against Empire forces !! It´s a bit unbelieveable, but what do you want in an adventures book? > > > Also you have to note that Yoda didn't consider Leia. Maybe Luke was > > just the only one powerful enough to stand the threat... > > He did, in fact. There's one point where he says to the ghost of Obi-Wan > something like "No, there is another". Referring to Leia. We think. :) > > > BTW, did you know that Palpatine comes back 7 years after the Battle of > > Endor? ;-) > > Nope, didn't know that. :) > > > > BTW, you could blow up a colour monitor on a ST. There was some way to > > switch off the emergency reset when the frequency was too high, then > > switch to 70Hz and see how long the monitor lives... > > Really? Hmm. Also, why would 70Hz kill the monitor? What refresh was it > normally at? I was under the impression that the Atari ST and Amiga > monitors were in fact TVs without any tuners... > I have a 14 inch SVGA monitor theorically 60 Hz max refresh rate. The image was uggly because it is pretty bad and old so I put it to 75 Hz (Hehehe :)) ) and still works. So one day the monitor will burn up but then I will buy something better. And I can´t use now 60Hz refresh rate because seems in fact a 2 Hz refresh rate. > > Hehe. And you would still be able to tell most customers that this is > > normal! I noticed that PC customers accept lots of quirks that no other > > computer user would have accepted some years ago. > > I agree. Such as "Oh, my computer has crashed. Never mind!" whereas on > other computers it'd be more like "Oh, my computer has crashed. Why? WHY? > WTF?!". We're used to it - and we shouldn't be. > In PC, 'my computer has crashed again, ok well just restart the system ;)'. What really overcomes me is why a crash in a word processor (Word) have to crash all the system. This fucking Word2000 didn´t let me read the Genesis Tech doc ... It´s incredible that word just don´t support itself and the worst is that it crashes Windows in a standard Dead Blue Screen .... : ( This old DOS days where there wasn´t nothing to crash .... Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 01:07:12 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA52312 for dynarec-outgoing; Thu, 30 Mar 2000 01:07:12 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E31855.246D98B8@eurocopter.de> Date: Thu, 30 Mar 2000 11:03:17 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > This message uses a character set that is not supported by the Internet > Service. To view the original message content, open the attached message. > If the text doesn't display correctly, save the attachment to disk, and then > open it using a viewer that can display the original character set. Rather freaky. This is the second message in 2 days from NB to be corrupted. I can open it, but it's got lots of crap bytes before and after the message... And the stranger thing is that the corrupted message yesterday was fine in OE at home, but not in Netscape Composer here at work... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 01:07:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA52322 for dynarec-outgoing; Thu, 30 Mar 2000 01:07:35 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 30 Mar 2000 01:07:34 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38E30D16.2EA8B032@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > friend and he said there is a web page called something like 'Jar-Jar must > die'. Do you know about this? What do you think about this 'thing' called > Jar-Jar? Jar-Jar is the evil spawn of Satan. He instills hatred and annoyance in everyone everywhere, much like Barney or the Teletubbies, but with satanic influence. > BTW we can talk about what do you think about this last(first?!) movie > of the saga. Yes. It sucked. Wait for it on video cassette - if then. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 01:10:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA52342 for dynarec-outgoing; Thu, 30 Mar 2000 01:10:41 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E318C3.F986E406@est.fib.upc.es> Date: Thu, 30 Mar 2000 11:05:07 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Graphics theories References: Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Bradley wrote: > > Well Retrocade'll run Galaga on a 486/66 full speed (with a cruddy ISA > card). It's no slouch performer! > Oh, sorry I didn´t tried never Retrocade :( And my 486 is now stored somewhere ... But I believe you :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 01:32:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA52390 for dynarec-outgoing; Thu, 30 Mar 2000 01:32:19 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003300933.LAA17723@pons.ac.upc.es> Subject: Re: DYNAREC: Emu Fakes In-Reply-To: from Neil Bradley at "Mar 30, 2000 01:07:34 am" To: dynarec@synthcom.com Date: Thu, 30 Mar 2000 11:33:27 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > friend and he said there is a web page called something like 'Jar-Jar must > > die'. Do you know about this? What do you think about this 'thing' called > > Jar-Jar? > > Jar-Jar is the evil spawn of Satan. He instills hatred and annoyance in > everyone everywhere, much like Barney or the Teletubbies, but with satanic > influence. > I agree. And I can't read Teletubbies without .... oughhh ... Oh, not again!! ;) I don't want to think how will be children who have seen Teletubbies when grow up. These could be really hurtly. > > BTW we can talk about what do you think about this last(first?!) movie > > of the saga. > > Yes. It sucked. Wait for it on video cassette - if then. > I saw it at the cinema. Good FX but bad story. How in hell there wasn't a single dead in the final battle between Jar-Jar's Kinds (Gungas??)? Only some robots being destroyed ... In think there were only two deads: ObiWan's master and the evil knight ... A friend saied me in TV really sucks because FX then aren't so important. For 3D made movies I like more Final Fantasy movies (more reals), I'm waiting for the Final Fantasy Movie (for next year) I hope it comes to Spain but usually there isn't Japanese Movies here. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 01:36:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA52408 for dynarec-outgoing; Thu, 30 Mar 2000 01:36:28 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E31F81.E271AFB5@eurocopter.de> Date: Thu, 30 Mar 2000 11:33:53 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Jar-Jar is the evil spawn of Satan. He instills hatred and annoyance in > everyone everywhere, much like Barney or the Teletubbies, but with satanic > influence. Agreed. > > BTW we can talk about what do you think about this last(first?!) movie > > of the saga. > > Yes. It sucked. Wait for it on video cassette - if then. Hey, it didn't suck too badly. It had Natalie Portman in it. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 01:40:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA52423 for dynarec-outgoing; Thu, 30 Mar 2000 01:40:57 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 30 Mar 2000 01:40:56 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <200003300933.LAA17723@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Jar-Jar is the evil spawn of Satan. He instills hatred and annoyance in > > everyone everywhere, much like Barney or the Teletubbies, but with satanic > > influence. > I agree. And I can't read Teletubbies without .... oughhh ... Oh, not again!! > ;) I don't want to think how will be children who have seen Teletubbies when > grow up. These could be really hurtly. I swear someone ate some really bad mushrooms when they conjured up the Teletubbies. I'll bet it'd be really good stoned. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 01:41:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA52432 for dynarec-outgoing; Thu, 30 Mar 2000 01:41:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 30 Mar 2000 01:41:22 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38E31F81.E271AFB5@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > BTW we can talk about what do you think about this last(first?!) movie > > > of the saga. > > Yes. It sucked. Wait for it on video cassette - if then. > Hey, it didn't suck too badly. It had Natalie Portman in it. :) Yup. She's way yummy. But the story was lame, lame lame. And the pod races I just got totally lost. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 01:43:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA52442 for dynarec-outgoing; Thu, 30 Mar 2000 01:43:15 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003300944.LAA30096@pons.ac.upc.es> Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38E31F81.E271AFB5@eurocopter.de> from Neil Griffiths at "Mar 30, 2000 11:33:53 am" To: dynarec@synthcom.com Date: Thu, 30 Mar 2000 11:44:51 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > Jar-Jar is the evil spawn of Satan. He instills hatred and annoyance in > > everyone everywhere, much like Barney or the Teletubbies, but with satanic > > influence. > > Agreed. > Everybody agrees. Only braindeads doesn't agree. > > > BTW we can talk about what do you think about this last(first?!) movie > > > of the saga. > > > > Yes. It sucked. Wait for it on video cassette - if then. > > Hey, it didn't suck too badly. It had Natalie Portman in it. :) > > Yes :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 01:47:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA52471 for dynarec-outgoing; Thu, 30 Mar 2000 01:47:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003300948.LAA04239@pons.ac.upc.es> Subject: Re: DYNAREC: Emu Fakes In-Reply-To: from Neil Bradley at "Mar 30, 2000 01:41:22 am" To: dynarec@synthcom.com Date: Thu, 30 Mar 2000 11:48:40 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Yup. She's way yummy. But the story was lame, lame lame. And the pod races > I just got totally lost. > They want to do a copy of Ben-Hur races. I like more Ben-Hur ones (and this isn't the kind of movie a like). Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 01:51:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA52486 for dynarec-outgoing; Thu, 30 Mar 2000 01:51:17 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E322AA.FDC26FF2@eurocopter.de> Date: Thu, 30 Mar 2000 11:47:22 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I swear someone ate some really bad mushrooms when they conjured up the > Teletubbies. I'll bet it'd be really good stoned. ;-) I just feel bad that I'm from the country responsible for distributing Tellytubbies to the world. But if you think they're evil NOW, you wait until you see the German version. It's even MORE scary! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 01:54:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA52496 for dynarec-outgoing; Thu, 30 Mar 2000 01:54:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 30 Mar 2000 01:54:04 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38E322AA.FDC26FF2@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > I swear someone ate some really bad mushrooms when they conjured up the > > Teletubbies. I'll bet it'd be really good stoned. ;-) > I just feel bad that I'm from the country responsible for distributing > Tellytubbies to the world. I think every country has had their fair share of crappy things come from it. Just look at the French! > But if you think they're evil NOW, you wait until you see the German > version. It's even MORE scary! I thought it was a requirement that you be stoned to watch the teletubbies. And if I got a chance to watch it in German (when I don't speak German), I'd probably die of laughter. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 01:55:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA52508 for dynarec-outgoing; Thu, 30 Mar 2000 01:55:34 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E323B2.A614E86F@eurocopter.de> Date: Thu, 30 Mar 2000 11:51:46 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Hey, it didn't suck too badly. It had Natalie Portman in it. :) > > Yup. She's way yummy. But the story was lame, lame lame. And the pod races > I just got totally lost. Of course, the story was crap. But so was "The Empire Strikes Back". Episode I and V were lame - and the only movies to have a storyline from George Lucas himself. The others had a professional storywriter to edit them. Hmm... Anyway, Nat is way yummy. And she's mine - you can't have her! ;p Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 01:59:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA52520 for dynarec-outgoing; Thu, 30 Mar 2000 01:59:17 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003300959.LAA01097@pons.ac.upc.es> Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38E322AA.FDC26FF2@eurocopter.de> from Neil Griffiths at "Mar 30, 2000 11:47:22 am" To: dynarec@synthcom.com Date: Thu, 30 Mar 2000 11:59:38 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > I swear someone ate some really bad mushrooms when they conjured up the > > Teletubbies. I'll bet it'd be really good stoned. ;-) > > I just feel bad that I'm from the country responsible for distributing > Tellytubbies to the world. > > But if you think they're evil NOW, you wait until you see the German > version. It's even MORE scary! God Thanks, I never seen the Spanish version either. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 02:10:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA52658 for dynarec-outgoing; Thu, 30 Mar 2000 02:10:33 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 30 Mar 2000 02:10:31 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38E323B2.A614E86F@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > Hey, it didn't suck too badly. It had Natalie Portman in it. :) > > Yup. She's way yummy. But the story was lame, lame lame. And the pod races > > I just got totally lost. > Of course, the story was crap. But so was "The Empire Strikes Back". I think you're thinking of Return Of The Jedi. That story was crap. ESB Is considered by many people to be the best of the series (I do, too). > Episode I and V were lame - and the only movies to have a storyline from > George Lucas himself. The others had a professional storywriter to edit > them. Hmm... Edit yes, but Lucas penned them all. > Anyway, Nat is way yummy. And she's mine - you can't have her! ;p Ha! Now are we going to get on the topic of women? Well, here's my list: Helent Hunt Salma Hayek Julianne Moore Julia Roberts Renee O'Connor Christine Taylor Christina Applegate Jennifer Aniston Sanda Bullock Laura Dern Heather Graham Teri Hatcher Anne Heche (bummer she's gay) Elizabeth Hurley Reese Witherspoon Marisa Tomei Denise Richards (no brains, but *DAMN*!) Gates McFadden (she's 50 but still damned hot) Alyssa Milano Andie MacDowell Julia Louis-Dreyfus Natalie Portman Anyone else? ;-) There's something I find "cute" about the teeny bopper girls but I dig the older women. If you don't know who they are, do a web search. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 02:27:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA52727 for dynarec-outgoing; Thu, 30 Mar 2000 02:27:38 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E32ABF.13A44CCC@eurocopter.de> Date: Thu, 30 Mar 2000 12:21:51 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I think you're thinking of Return Of The Jedi. That story was crap. ESB Is > considered by many people to be the best of the series (I do, too). The second one of the three is the one I'm referring to. I thought that was terrible! > > Episode I and V were lame - and the only movies to have a storyline from > > George Lucas himself. The others had a professional storywriter to edit > > them. Hmm... > > Edit yes, but Lucas penned them all. Yes. But the ones left untouched were bad (or at least I think so)! > > Anyway, Nat is way yummy. And she's mine - you can't have her! ;p > > Ha! Now are we going to get on the topic of women? Well, here's my list: Okay, let's see who I agree with: > Julia Roberts > Christina Applegate > Jennifer Aniston > Sanda Bullock > Heather Graham > Teri Hatcher > Elizabeth Hurley > Denise Richards (no brains, but *DAMN*!) So you've seen "Wild Things" then? I bet you used the pause button! ;) > Natalie Portman > Alyssa Milano People I don't know (or their name doesn't ring a bell): > Helent Hunt > Salma Hayek > Julianne Moore > Renee O'Connor > Christine Taylor > Laura Dern > Anne Heche (bummer she's gay) > Reese Witherspoon > Marisa Tomei > Julia Louis-Dreyfus People I don't think are great: > Gates McFadden (she's 50 but still damned hot) > Andie MacDowell None of those in the list were bad. :) > Anyone else? ;-) There's something I find "cute" about the teeny bopper > girls but I dig the older women. If you don't know who they are, do a web > search. ;-) I'm sure I will. I'm trying to think who else I'd add. In terms of actresses, I can't think of any more to add to that list (you've covered my list, pretty much). Others I may add would be: Christina Aguilera Britney Spears (Yes, they're fake... but I'm not after her when she's 50...) There are a few others, but you're not likely to know them. Either soap stars or just people off British TV. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 02:37:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA52755 for dynarec-outgoing; Thu, 30 Mar 2000 02:37:39 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 30 Mar 2000 02:37:38 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38E32ABF.13A44CCC@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > I think you're thinking of Return Of The Jedi. That story was crap. ESB Is > > considered by many people to be the best of the series (I do, too). > The second one of the three is the one I'm referring to. I thought that was > terrible! I don't know how you can say that. That was the only episode with any sort of soul! What did you find awful about it? Certainly it wasn't anywhere near as bad as the Ewoks! > > Denise Richards (no brains, but *DAMN*!) > So you've seen "Wild Things" then? I bet you used the pause button! ;) I've seen it, but no pause button (wife was watching, too). Major chubbyage! > People I don't know (or their name doesn't ring a bell): > > Helent Hunt Twister (bad move) > > Salma Hayek Was in Wild, Wild West (bad movie) > > Julianne Moore 9 Months, Boogie Nights, Lost World (terrible movie) > > Renee O'Connor Xena: Warrior Princess's sidekick > > Christine Taylor Brady Bunch Movie > > Laura Dern Jurassic Park (Ellie Sattler) > > Anne Heche (bummer she's gay) Can't remember... > > Reese Witherspoon Election, Pleasantville > > Marisa Tomei My Cousin Vinny - cute Italian > > Julia Louis-Dreyfus Seinfeld > People I don't think are great: > > Gates McFadden (she's 50 but still damned hot) Hey.... you gotta see her - season 3 - in those starfleet uniforms. Hubba hubba! > > Andie MacDowell The wood is fading, but it's still there. She's yummy, too. > None of those in the list were bad. :) It's not like I threw a Kathy Bates in there to see if you were paying attention. > Christina Aguilera Dumb, brainless tart. > Britney Spears (Yes, they're fake... but I'm not after her when she's > 50...) Dumb, brainless tart. These are the type of "girls" we'd "fuck & chuck" when in high school. > There are a few others, but you're not likely to know them. Either soap > stars or just people off British TV. :) Well, I remember some chick in Dr. Who named Sarah who was a short little hottie. But then again, I was 12 at the time and I don't think my sense of what was and wasn't attractive had solidifed yet. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 02:52:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA52787 for dynarec-outgoing; Thu, 30 Mar 2000 02:52:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E330B9.CC1AE139@eurocopter.de> Date: Thu, 30 Mar 2000 12:47:21 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > > Salma Hayek > > Was in Wild, Wild West (bad movie) I know now. > > > Julianne Moore > > 9 Months, Boogie Nights, Lost World (terrible movie) I think I know now (I got bored in Boogie Nights, didn't think that was up to much)... > > > Renee O'Connor > > Xena: Warrior Princess's sidekick Yes, I know. She's quite nice, though not in my top 20. > > > Christine Taylor > > Brady Bunch Movie Haven't seen it. > > > Laura Dern > > Jurassic Park (Ellie Sattler) Hmm... okay, yep. > > > Reese Witherspoon > > Election, Pleasantville Haven't seen either... > > > Marisa Tomei > > My Cousin Vinny - cute Italian Ooh. Okay, she could go in my list. > > > Julia Louis-Dreyfus > > Seinfeld Still no clue. > > People I don't think are great: > > > Gates McFadden (she's 50 but still damned hot) > > Hey.... you gotta see her - season 3 - in those starfleet uniforms. Hubba > hubba! Heh. :) > > None of those in the list were bad. :) > > It's not like I threw a Kathy Bates in there to see if you were paying > attention. Good. :) > > Christina Aguilera > > Dumb, brainless tart. Yes. > > Britney Spears (Yes, they're fake... but I'm not after her when she's > > 50...) > > Dumb, brainless tart. Yes. Your point is? ;) >These are the type of "girls" we'd "fuck & chuck" when in high school. Yes, exactly. But I was just talking about girls who look nice. I'm not going to have a relationship with either, so I don't care how clever they are. :) > > There are a few others, but you're not likely to know them. Either soap > > stars or just people off British TV. :) > > Well, I remember some chick in Dr. Who named Sarah who was a short little > hottie. But then again, I was 12 at the time and I don't think my sense of > what was and wasn't attractive had solidifed yet. Was that the blonde? No, what am I saying? Almost all of them were! :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 06:13:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA53155 for dynarec-outgoing; Thu, 30 Mar 2000 06:13:15 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003301414.QAA11016@pons.ac.upc.es> Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38E32ABF.13A44CCC@eurocopter.de> from Neil Griffiths at "Mar 30, 2000 12:21:51 pm" To: dynarec@synthcom.com Date: Thu, 30 Mar 2000 16:14:27 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, MIKE, I have seen your web page and I have a question to ask you. In your book section you have Tolkien's "Silmarillion". Why? Usually people reads "Lord of the Rings" or "The Hobbit". But the only one you have is "Silmarillion". I ask you this because it's the book a like more from Tolkien. You also seem to read some SF (Science Fiction) books. Perhaps, you are also a SF maniac :). I'm luckly because my university (UPC) has a very good SF library so I have readed tons of SF books, and there is also an UPC Science Fiction Award, do you know it? It seems it's known outside of Spain and a lot of SF writers have come to talk each year. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 06:23:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA53197 for dynarec-outgoing; Thu, 30 Mar 2000 06:23:53 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E3627B.4960D17@eurocopter.de> Date: Thu, 30 Mar 2000 16:19:39 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: <200003301414.QAA11016@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > MIKE, I have seen your web page and I have a question to ask you. In your book > section you have Tolkien's "Silmarillion". Why? Usually people reads "Lord of > the Rings" or "The Hobbit". But the only one you have is "Silmarillion". I ask > you this because it's the book a like more from Tolkien. And in fact it's quite usual for children in Britain to make a study of "The Hobbit". > You also seem to read some SF (Science Fiction) books. Perhaps, you are also a > SF maniac :). I'm luckly because my university (UPC) has a very good SF > library so I have readed tons of SF books, and there is also an UPC Science > Fiction Award, do you know it? It seems it's known outside of Spain and a > lot of SF writers have come to talk each year. I don't mind SF books, but I'm really into Science Fantasy books. I have several favourite authors (such as David Eddings - who I'm prepared to believe is the next Tolkien - and Piers Anthony). There are others, these are just the ones I can remember straight away. My other favourite author is Terry Pratchett (British!) whose books, while being fantasy, also have a lot of humour inside. Apparently he's Britains number 1 author at the moment, but I've been reading his books since he was an unknown. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 06:37:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA53226 for dynarec-outgoing; Thu, 30 Mar 2000 06:37:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003301438.QAA08712@pons.ac.upc.es> Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38E3627B.4960D17@eurocopter.de> from Neil Griffiths at "Mar 30, 2000 04:19:39 pm" To: dynarec@synthcom.com Date: Thu, 30 Mar 2000 16:38:27 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > And in fact it's quite usual for children in Britain to make a study of > "The Hobbit". Being a so easy to read book and so well wrote (but I didn't read it in english though, but Tolkien was a english teacher so ...) it seems very normal. I don't mind SF books, but I'm really into Science Fantasy books. I have > several favourite authors (such as David Eddings - who I'm prepared to > believe is the next Tolkien - and Piers Anthony). There are others, these > are just the ones I can remember straight away. My other favourite author > is Terry Pratchett (British!) whose books, while being fantasy, also have a > lot of humour inside. Apparently he's Britains number 1 author at the > moment, but I've been reading his books since he was an unknown. :) I have readed some Fantasy books too, in fact there is a discussion between writers about what is Fantasy and what is Science Fiction. Sometimes is hard to say if a book is Fantasy or SF. I don't remember to know about 'David Eddings', what has he written? I know Terry Pratchett but I have readed only a few of his books, the UPC library doesn't have Fantasy books. Do you know who is Michael Morcok (I don't remember how exactly is his name)? But I only have readed some Fantasy books so I'm not an expert. If my university has Fantasy books .... Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 11:04:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA53964 for dynarec-outgoing; Thu, 30 Mar 2000 11:04:37 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Star Wars Date: Thu, 30 Mar 2000 19:29:52 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id LAA53961 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Something about dies and Star Wars. Today I was talking about Episode I with a >friend and he said there is a web page called something like 'Jar-Jar must >die'. Do you know about this? I haven't seen the site yet, but I've heard of such movement. >What do you think about this 'thing' called Jar-Jar? Well, they replaced the humor between R2-D2 and C-3PO with this slapstick character. Exqueese me - what else shall I say? >I don´t know the web direction but he said me there is a section >about manners of kill it but ever 'at the start of the movie' ;) Some one even said that Jar-Jar will be a Dark Jedi because fear feeds the Dark Side and just take this Jar-Jar quote: "This gonna be messy, me no watching." >BTW we can talk about what do you think about this last(first?!) movie of the >saga. Some say it's bad and somewhat unfinished. What they don't understand is that this film is only the prologue of a series which should originally consist of 9 films. And Episode 1 certainly did to me what Lucas intended: I had the need to see the second prequel! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 11:04:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA53972 for dynarec-outgoing; Thu, 30 Mar 2000 11:04:43 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Thu, 30 Mar 2000 19:43:35 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No idea, I haven't read any of the books (that the films are based on or >whatever) so I don't know the story - other than what I've seen in the >films. I like the sage, but I read one of the books once and it was crap. >Terrible writing. So I didn't bother with any others. Do you know which one it was? An older or newer one? There are several newer ones which are really crap, eg. Crystal Star. The best Star Wars books are written by Timothy Zahn and Michael Stackpole. My favourite is "I, Jedi" by the latter author. >He did, in fact. There's one point where he says to the ghost of Obi- Wan >something like "No, there is another". Referring to Leia. We think. :) But he wasn't sure if she was strong enough so he didn't mention her. And it was Obi-Wan's guess that it must be Leia. >Nope, didn't know that. :) Really, before he "dies" in Return of the Jedi (originally Revenge of the Jedi, and during filming Blue Harvest - disguised as a horror movie) he transferred his soul (did he have one?) to a prepared clone on a world very near to the galactic core. He comes back 7 years later in the comic Dark Empire. >> EIEIO - Enforce In-order Execution of I/O, surely invented by a farmer >> called McDonald! >This one made me laugh. :)) The instruction is really called that way! I stole the joke from Peter van der Linden though... >Is that a real RISC OS? ;) The name is RISC OS and it runs on the oldest commercial RISC architecture: ARM. Currently I have a StrongARM but I'd only need 2 minutes to fit my old ARM610 again. >I don't know. If you have free control of refresh rates, you can blow >something up. Either the monitor or the RAMDAC on the video card. Both >achieve the same effect (ie no picture) but one is a whole lot cheaper to >replace than the other... Good, I don't think that such a prog knows how the VIDC20 works ;-) >Really? Hmm. Also, why would 70Hz kill the monitor? What refresh was it >normally at? I was under the impression that the Atari ST and Amiga >monitors were in fact TVs without any tuners... Colour monitors or TV sets were driven with 60Hz but Atari's b/w monitors (old 12 inch SM124 or the newer 14 inch SM146) ran at 70Hz frequency. >If you mess around with the installed codecs, yes. I'm pretty sure it was a >German company who released the codec - "Fraunhoffer" or something like >that. I also know that within one week it was withdrawn from public because >they realised that anyone could now create MP3s easily. It was also pretty >good quality, but slow. Yeah, I think one guy from Erlangen (where I live) created it ;-) >I wouldn't bother. Text interfaces suck - but commandline interfaces suck >more. And this is a commandline led program thing... :-/ The Be CDBurner has a GUI but it doesn't recognize my HP CDR6020i :-( >I agree. Such as "Oh, my computer has crashed. Never mind!" whereas on >other computers it'd be more like "Oh, my computer has crashed. Why? WHY? >WTF?!". We're used to it - and we shouldn't be. Indeed! >Ooh, bad. Don't know why that would happen... Yeah, I said to him that he should tell dealer what happend because this surely is a fault in the notebook, but he thought that was normal... >I'm not going to run NT if I can possibly help it. :) Well done. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 11:04:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA53981 for dynarec-outgoing; Thu, 30 Mar 2000 11:04:54 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Star Wars Date: Thu, 30 Mar 2000 20:17:48 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id LAA53978 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I have readed some of the books, they aren´t real SF books (like the ones I >really like) but for do some reading they are good. Palpatine and Darth Vader >killed all Jedi nights some time before episode IV. Not all, there were at least Obi-Wan and Yoda left. There is actually an explanation why they didn't find Yoda. Remember that place on Dagobah where Luke beheaded Darth Vader and it turned out to be himself? Yoda defeatet a Dark Jedi there some time ago and due to the high concentration of the Dark Side there Yoda's power was neutralized and couldn't be tracked. But it still doesn't explain why they weren't able to find Obi-Wan. >And Darks Jedis are a lot >of stronger than Light ones so they didn´t have a chance ;) According to Yoda the Dark Side doesn't make one stronger. >I think I readed >first Dark One was someone called Lord of Sith (Darth Vader is called so >sometimes also). According a comic series the Sith were a race and the mightiest was called the Dark Lord of the Sith. One of these (forgot his name) fled to Yavin 4. >In a book Luke has to fight against his spirit in the moon >... what was the moon of the first movie? You mean Exar Kun, he was a Jedi who searcher for Sith lore and came to Yavin 4. It's claimed that he was even more mighty than Palpatine or Vader. BTW, did you read Kevin J. Andersons Jedi Acadamy Trilogy or was that part from the parallel book "I, Jedi"? I don't like Kevin Anderson much and especially after he killed Crix Madine in Darksaber. But I wasn't as shock as when Chewie died in Vector Prime... >But in the books wrote later than >first saga remake a lot of things were changed by the authors. It seems the >Empire had impressive weapons (a lot of more powerful than Death Star Station) >but they didn´t use them !!!. Do you mean "Palpatine's Eye" from "Children of the Jedi"? Or do you refer to the Noghri? >And twenty years later Luke and others are >still fighting against Empire forces !! The make a peace treaty in the end of Zahn's "Vision of the Future". >It´s a bit unbelieveable, but what do you want in an adventures book? Well, they always want to make it bigger, bigger, and bigger. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 11:05:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA53993 for dynarec-outgoing; Thu, 30 Mar 2000 11:05:06 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Star Wars Date: Thu, 30 Mar 2000 20:21:43 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Jar-Jar is the evil spawn of Satan. He instills hatred and annoyance in >everyone everywhere, much like Barney or the Teletubbies, but with satanic >influence. Hehe. >> BTW we can talk about what do you think about this last(first?!) movie >> of the saga. >Yes. It sucked. Wait for it on video cassette - if then. No, it certainly wasn't that bad. There are lots of references to the past and the future. It's certainly most interesting to watch Palpatine when he reveals himself as the bad guy ;-) BTW, did you know the shortes description of Episode 1? Qui gone. Darth mauled. Obi won. ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 11:05:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA54007 for dynarec-outgoing; Thu, 30 Mar 2000 11:05:20 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Star Wars Date: Thu, 30 Mar 2000 20:23:59 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I saw it at the cinema. Good FX but bad story. How in hell there wasn't a >single dead in the final battle between Jar-Jar's Kinds (Gungas??)? The name of the species is Gungan. >Only some >robots being destroyed ... In think there were only two deads: ObiWan's master >and the evil knight ... Some Naboo pilots and the whole crew of a droid controll ship... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 11:05:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA54008 for dynarec-outgoing; Thu, 30 Mar 2000 11:05:20 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Thu, 30 Mar 2000 20:25:17 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >But if you think they're evil NOW, you wait until you see the German >version. It's even MORE scary! Really? I can only watch it for a few seconds anyway before it drives me mad... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 11:05:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA54019 for dynarec-outgoing; Thu, 30 Mar 2000 11:05:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Star Wars and chicks Date: Thu, 30 Mar 2000 20:48:21 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I think you're thinking of Return Of The Jedi. That story was crap. ESB Is >considered by many people to be the best of the series (I do, too). So do I. >Ha! Now are we going to get on the topic of women? Well, here's my list: Now to the chicks... BTW, stormtroopers are also sometimes called chicks ;-) >Helent Hunt I think she got an Oscar last year for a film with Jack Nicholson, but I forgot the name... >Salma Hayek Hot! >Julianne Moore I first recognized her due to her very short appearance in The Fugitive. >Julia Roberts Don't like her that much. >Renee O'Connor She's better than Lucy Lawless ;-) >Christine Taylor Don't know her... >Christina Applegate Kelly Bundy. I think she now stars in the sitcom Jessie. >Jennifer Aniston Nice Friend(s). You forgot Courtney Cox. >Sanda Bullock Speedy ;-) >Laura Dern The daughter of Bruce Dern. Don't like her that much. >Heather Graham Haven't seen any of her performances (apart from that during the Oscar night) but she's cute. >Teri Hatcher She already is the girlfriend of Superman. >Anne Heche (bummer she's gay) Vulcano? >Elizabeth Hurley In some films I like her in others not. >Reese Witherspoon I recognized her when she was still young and in a movie playing in Africa, don't know the title though. >Marisa Tomei I think I saw her in afilm with Robert Downey jr. >Denise Richards (no brains, but *DAMN*!) Oh no! In Starship troopers I prefered Dina Meyer but the wrong one died! >Gates McFadden (she's 50 but still damned hot) True. >Alyssa Milano Even better in combination with her 2 witch sisters ;-) >Andie MacDowell Groundhog day... >Julia Louis-Dreyfus Yes! >Natalie Portman Maybe they shouldn't have changed her voice as Amidala that much. What about: Christina Ricci Julie Delpy Kate Beckinsale Cameron Diaz Charlize Theron Elizabeth Shue Madchen Amick I'm sure I forgot many... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 11:05:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA54028 for dynarec-outgoing; Thu, 30 Mar 2000 11:05:33 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Books Date: Thu, 30 Mar 2000 20:58:43 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >MIKE, I have seen your web page and I have a question to ask you. In your book >section you have Tolkien's "Silmarillion". Why? Usually people reads "Lord of >the Rings" or "The Hobbit". But the only one you have is "Silmarillion". I ask >you this because it's the book a like more from Tolkien. I read the Hobbit, LOTR, Silmarillion, Tales form Middle-Earth, and several secondary literature. Yeah, sometimes it's hard to decide if I am more Tolkien or Star Wars maniac, but I have more Star Wars material now. The reason why I list the Silmarillion instead of LOTR: - Everyone says the LOTR is great so why have it to do that? - When I was younger I read many Greek sagas and later switched to Norse sagas which also largely inspired Tolkien - take the Old Edda and you'll notice that he got names like Thorin or Gandalf from there! Since I mainly enjoy the tales with the gods (Odin, Thor, Loki,...) it's natural that I also like the Silmarillion, which is like Tolkien's bible. BTW, did you know that the Elven name for Middle-Earth is "Endor"? ;-) >You also seem to read some SF (Science Fiction) books. Perhaps, you are also a >SF maniac :). It depends. My problem is that I often don't have the time to read so many books. But Ian Banks' "Agains a Dark Background" is great! I'd like to read more books written by him but I have problems to get these. >I'm luckly because my university (UPC) has a very good SF >library so I have readed tons of SF books, and there is also an UPC Science >Fiction Award, do you know it? It seems it's known outside of Spain and a >lot of SF writers have come to talk each year. That's new to me. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 11:05:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA54036 for dynarec-outgoing; Thu, 30 Mar 2000 11:05:44 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Books Date: Thu, 30 Mar 2000 21:01:18 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >And in fact it's quite usual for children in Britain to make a study of >"The Hobbit". I bet so! >I don't mind SF books, but I'm really into Science Fantasy books. Star Wars is often classified as Science Fantasy too. >I have >several favourite authors (such as David Eddings - who I'm prepared to >believe is the next Tolkien - and Piers Anthony). One of my friends likes Piers Anthony but I haven't read any of his books yet. >There are others, these >are just the ones I can remember straight away. My other favourite author >is Terry Pratchett (British!) whose books, while being fantasy, also have a >lot of humour inside. Apparently he's Britains number 1 author at the >moment, but I've been reading his books since he was an unknown. :) Do you know "Good Omens"? He co-wrote that book with Neil Gaiman. Absolutely great. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 11:05:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA54045 for dynarec-outgoing; Thu, 30 Mar 2000 11:05:58 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Thu, 30 Mar 2000 21:04:25 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Being a so easy to read book and so well wrote (but I didn't read it in english >though, but Tolkien was a english teacher so ...) it seems very normal. Well, he was a professor... >I have readed some Fantasy books too, in fact there is a discussion between >writers about what is Fantasy and what is Science Fiction. Sometimes is hard to >say if a book is Fantasy or SF. I don't remember to know about 'David Eddings', >what has he written? Don't know that one. >I know Terry Pratchett but I have readed only a few of his >books, the UPC library doesn't have Fantasy books. Do you know who is Michael >Morcok (I don't remember how exactly is his name)? The name is Michael Moorcock. He wrote the books about Elric of Melnibone (eg. Stormbringer) and Corum. I only know that because I have the Strombringer RPG. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 14:19:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA54945 for dynarec-outgoing; Thu, 30 Mar 2000 14:19:48 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <003e01bf9a95$9ccdc980$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Star Wars and chicks Date: Fri, 31 Mar 2000 00:04:07 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Christina Ricci Ooh, forgot her... > Cameron Diaz DEFINITELY! :) > I'm sure I forgot many... I forgot Sarah Michelle Gellar... She's nice too. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 14:19:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA54954 for dynarec-outgoing; Thu, 30 Mar 2000 14:19:55 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <003f01bf9a95$a289aec0$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Books Date: Fri, 31 Mar 2000 00:05:05 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > One of my friends likes Piers Anthony but I haven't read any of his > books yet. Some are strange, but worth reading. Funny, for sure. :) > Do you know "Good Omens"? He co-wrote that book with Neil Gaiman. > Absolutely great. I know it, I have it - and I agree. It's great! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 14:20:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA54967 for dynarec-outgoing; Thu, 30 Mar 2000 14:20:08 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <004001bf9a95$a7bdc660$0a909090@okay> From: "Neil Griffiths" To: References: <200003301438.QAA08712@pons.ac.upc.es> Subject: Re: DYNAREC: Emu Fakes Date: Fri, 31 Mar 2000 00:08:46 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I don't remember to know about 'David Eddings', what has he written? Possibly the two best fantasy series' of the last 50 years or so. The Belgariad and the Mallorean. Both are trilogies made up of 5 books. Absolutely fantastic, he has a way with words. Having said that, I'm not so keen on some of the other series' that he's written, so maybe it was just those... :) > Do you know who is Michael > Morcok (I don't remember how exactly is his name)? Yes, though I find his books too short personally. I'm a fast reader and I can quite easily go through a 200-page book in an hour. Which is a bad thing, believe me. :-/ > But I only have readed some Fantasy books so I'm not an expert. If my > university has Fantasy books .... I don't know whether I'm an expert, but I'd like to think I am. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 14:20:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA54976 for dynarec-outgoing; Thu, 30 Mar 2000 14:20:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <004101bf9a95$aebeaec0$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Books Date: Fri, 31 Mar 2000 00:13:20 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > But Ian Banks' "Agains a Dark Background" is great! I'd like to read > more books written by him but I have problems to get these. Good author - I've read two of his books. Can't remember which ones, though. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 17:21:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id RAA55647 for dynarec-outgoing; Thu, 30 Mar 2000 17:21:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 30 Mar 2000 17:21:09 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars and chicks In-Reply-To: <003e01bf9a95$9ccdc980$0a909090@okay> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Christina Ricci > Ooh, forgot her... Kind of a ho... > > Cameron Diaz > DEFINITELY! :) Definitely *NOT*. She's total trailer trash! > > I'm sure I forgot many... > I forgot Sarah Michelle Gellar... She's nice too. :) Yep. ;-) But she reminds me too much of one of my nieces and that just causes weird feelings. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 22:38:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id WAA00293 for dynarec-outgoing; Thu, 30 Mar 2000 22:38:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E445FC.4BF1F5E5@eurocopter.de> Date: Fri, 31 Mar 2000 08:30:20 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >> EIEIO - Enforce In-order Execution of I/O, surely invented by a > farmer > >> called McDonald! > >This one made me laugh. :)) > > The instruction is really called that way! I stole the joke from Peter > van der Linden though... I believe you! It's just... funny. :) > >Is that a real RISC OS? ;) > > The name is RISC OS and it runs on the oldest commercial RISC > architecture: ARM. Currently I have a StrongARM but I'd only need 2 > minutes to fit my old ARM610 again. I was joking, I know RISC OS. I've used it a lot when I was using some old Archimedes computers back when I was in high school... > >Really? Hmm. Also, why would 70Hz kill the monitor? What refresh was > it > >normally at? I was under the impression that the Atari ST and Amiga > >monitors were in fact TVs without any tuners... > > Colour monitors or TV sets were driven with 60Hz but Atari's b/w > monitors (old 12 inch SM124 or the newer 14 inch SM146) ran at 70Hz > frequency. TV sets in Europe (and most of the world) should be 50Hz, in fact. You only get 60Hz in places like the US and Japan. But we make up for it by having more definition on our TVs. :) > >It was also pretty good quality, but slow. > > Yeah, I think one guy from Erlangen (where I live) created it ;-) Really? Heh. :) > >I wouldn't bother. Text interfaces suck - but commandline interfaces > >suck more. And this is a commandline led program thing... :-/ > > The Be CDBurner has a GUI but it doesn't recognize my HP CDR6020i :-( Is that SCSI or IDE? It must be SCSI because if it's IDE, there's something up with BeOS. > >Ooh, bad. Don't know why that would happen... > > Yeah, I said to him that he should tell dealer what happend because > this surely is a fault in the notebook, but he thought that was > normal... Heh. I'd guess at it not being normal, actually. :) > >I'm not going to run NT if I can possibly help it. :) > > Well done. Thank you. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 22:38:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id WAA00306 for dynarec-outgoing; Thu, 30 Mar 2000 22:38:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E442E9.68A55674@eurocopter.de> Date: Fri, 31 Mar 2000 08:17:13 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars and chicks References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > > Christina Ricci > > Ooh, forgot her... > > Kind of a ho... Heh. :) > > > Cameron Diaz > > DEFINITELY! :) > > Definitely *NOT*. She's total trailer trash! Maybe so, but she's trailer trash with nice tits. :) BTW, what is "trailer trash"? > > > I'm sure I forgot many... > > I forgot Sarah Michelle Gellar... She's nice too. :) > > Yep. ;-) But she reminds me too much of one of my nieces and that just > causes weird feelings. She's nice and I shouldn't have forgotten her. Too bad you have wierd feelings about that. So, SMG reminds you of your niece? So... about your niece... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 22:42:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id WAA00362 for dynarec-outgoing; Thu, 30 Mar 2000 22:42:46 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 30 Mar 2000 22:42:45 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38E445FC.4BF1F5E5@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > >Really? Hmm. Also, why would 70Hz kill the monitor? What refresh was > > >normally at? I was under the impression that the Atari ST and Amiga > > >monitors were in fact TVs without any tuners... > > Colour monitors or TV sets were driven with 60Hz but Atari's b/w > > monitors (old 12 inch SM124 or the newer 14 inch SM146) ran at 70Hz > > frequency. > TV sets in Europe (and most of the world) should be 50Hz, in fact. No, they shouldn't. Even 60hz is too slow. > You only > get 60Hz in places like the US and Japan. But we make up for it by having > more definition on our TVs. :) 8% more horizontal lines of resolution and 5FPS slower than NTSC? People wouldn't notice it anyway. No thanks. It flickers bad enough at 60HZ let alone 50HZ, and yes, I've seen PAL and NTSC side by side on professional studio monitors and NTSC is far crisper and smoother. PAL Looks smeared and flickery by comparison. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 22:46:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id WAA00436 for dynarec-outgoing; Thu, 30 Mar 2000 22:46:38 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003310650.IAA14560@pons.ac.upc.es> Subject: Re: DYNAREC: Star Wars In-Reply-To: from Michael Koenig at "Mar 30, 2000 07:29:52 pm" To: dynarec@synthcom.com Date: Fri, 31 Mar 2000 08:50:27 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >BTW we can talk about what do you think about this last(first?!) movie > of the > >saga. > > Some say it's bad and somewhat unfinished. What they don't understand > is that this film is only the prologue of a series which should > originally consist of 9 films. And Episode 1 certainly did to me what > Lucas intended: I had the need to see the second prequel! What I think is perhaps I won't want to see the second prequel. Episode II seems to be a love story between Anakin and ???, I don't remember who. But do you think he will do Episode III. In Episode III Anakin has to become Darth Vader, Palpatine the Emperor a lot of people killed. I think this is far from the kind of movie is Episode I, perhaps would be an adventures movie but it isn't a movie for laugh. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 23:03:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA00481 for dynarec-outgoing; Thu, 30 Mar 2000 23:03:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E44CC5.3C8BB8CA@eurocopter.de> Date: Fri, 31 Mar 2000 08:59:17 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > TV sets in Europe (and most of the world) should be 50Hz, in fact. > > No, they shouldn't. Even 60hz is too slow. You're right. Maybe saying they "should be" was wrong. In this case, "usually are" might have been better. HDTV could be interesting. :) > > You only > > get 60Hz in places like the US and Japan. But we make up for it by having > > more definition on our TVs. :) > > 8% more horizontal lines of resolution and 5FPS slower than NTSC? People > wouldn't notice it anyway. No thanks. It flickers bad enough at 60HZ let > alone 50HZ, and yes, I've seen PAL and NTSC side by side on professional > studio monitors and NTSC is far crisper and smoother. PAL Looks smeared > and flickery by comparison. You notice the difference in quality between US and UK TVs - 8% extra vertical width makes a lot of difference. You don't usually notice the flicker unless you're in a darkened room - and only usually then when you look at the light from the TV on the wall. I can see it sometimes, depends how tired I am. :) I've also seen PAL and NTSC side by side - and NTSC on one of our TVs is great (I don't know why but some TVs support it). NTSC is definitely better than PAL - I'm not going to argue that. But the greater vertical width is highly noticable. It's the difference between 320x200 and 320x240 - quite noticable. But proof, if needed, is just watch any on of the US shows that they show over in the UK (usually chat shows, I don't know why they bother - but it can be anything). Quite often the quality is completely shit. And so is the program usually. "Go Jerry! Go Jerry!" :-/ "Eh-oh!" >:-) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 23:03:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA00492 for dynarec-outgoing; Thu, 30 Mar 2000 23:03:56 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E44D27.7B999211@eurocopter.de> Date: Fri, 31 Mar 2000 09:00:55 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars References: <200003310650.IAA14560@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Some say it's bad and somewhat unfinished. What they don't understand > > is that this film is only the prologue of a series which should > > originally consist of 9 films. And Episode 1 certainly did to me what > > Lucas intended: I had the need to see the second prequel! > > What I think is perhaps I won't want to see the second prequel. Episode II > seems to be a love story between Anakin and ???, I don't remember who. Queen Amidala, played by Natalie Portman. I'm not going to enjoy that film - for one good reason. "No, Nat, no! Don't do it! Save yourself!" :) > But do > you think he will do Episode III. In Episode III Anakin has to become Darth > Vader, Palpatine the Emperor a lot of people killed. I think this is far from > the kind of movie is Episode I, perhaps would be an adventures movie but it > isn't a movie for laugh. Who knows when it'll happen? He could start to turn to the Dark Side in Episode II... Who knows? George Lucas, most likely. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 23:04:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA00499 for dynarec-outgoing; Thu, 30 Mar 2000 23:04:01 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003310707.JAA13725@pons.ac.upc.es> Subject: Re: DYNAREC: Star Wars In-Reply-To: from Michael Koenig at "Mar 30, 2000 08:17:48 pm" To: dynarec@synthcom.com Date: Fri, 31 Mar 2000 09:07:49 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-MIME-Autoconverted: from 8bit to quoted-printable by pons.ac.upc.es id JAA13725 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id XAA00496 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Not all, there were at least Obi-Wan and Yoda left. There is actually > an explanation why they didn't find Yoda. Remember that place on > Dagobah where Luke beheaded Darth Vader and it turned out to be > himself? Yoda defeatet a Dark Jedi there some time ago and due to the > high concentration of the Dark Side there Yoda's power was neutralized > and couldn't be tracked. But it still doesn't explain why they weren't > able to find Obi-Wan. > I know this. What I means is all Jedi Knights were killed but Obi-Wan and Yoda. And in some books there are also other lost Jedis. For example I remember a clone from an old Knight and also a number of Dark Knights. > >And Darks Jedis are a lot > >of stronger than Light ones so they didn´t have a chance ;) > > According to Yoda the Dark Side doesn't make one stronger. > I'm talking about the facts :) If the writer makes the heroe win although it is weaker this doesn't make the bad guy being more powerful. In fact in the books I have readed seems Luke has more luck than other thing. It's better he would become a Jedi professor and let new Jedis fight agains dark forces. It seems a bad copy of Obi-Wan with less age. > >I think I readed > >first Dark One was someone called Lord of Sith (Darth Vader is called > so > >sometimes also). > > According a comic series the Sith were a race and the mightiest was > called the Dark Lord of the Sith. One of these (forgot his name) fled > to Yavin 4. > I think I remember something like this ... but my memory is really bad :( > >In a book Luke has to fight against his spirit in the moon > >... what was the moon of the first movie? > > You mean Exar Kun, he was a Jedi who searcher for Sith lore and came to > Yavin 4. It's claimed that he was even more mighty than Palpatine or > Vader. > BTW, did you read Kevin J. Andersons Jedi Acadamy Trilogy or was that > part from the parallel book "I, Jedi"? > I don't like Kevin Anderson much and especially after he killed Crix > Madine in Darksaber. But I wasn't as shock as when Chewie died in > Vector Prime... > I don't remember now if I have readed "I, Jedi", knowing Spanish translators they can have changed the title, and my memory is really bad. I have readed Jedi Academy Trilogy and some more trylogy. > >But in the books wrote later than > >first saga remake a lot of things were changed by the authors. It > seems the > >Empire had impressive weapons (a lot of more powerful than Death Star > Station) > >but they didn´t use them !!!. > > Do you mean "Palpatine's Eye" from "Children of the Jedi"? Or do you > refer to the Noghri? > And the star crusher and planet destroyers and a lot of more weapons. I remember there was a scientist facility hidden with the Death Star Prototype. I just have remembered the Noghri's. Thrawn/Vader special forces when they saw Leia they follow her. > >And twenty years later Luke and others are > >still fighting against Empire forces !! > > The make a peace treaty in the end of Zahn's "Vision of the Future". > I think I'm readed something from Zahn. But I can't just remember. Finally there are only a few imperial forces resting. I remember that woman admiral (I just don't remember her name) who finally becomes in a kind of piracy band. And helps Luke and friends!! It was sad when Thrawn died ..., it was a good enemy, perhaps the better general of the Empire ... > >It´s a bit unbelieveable, but what do you want in an adventures book? > > Well, they always want to make it bigger, bigger, and bigger. > Yes this is the general idea. To sell more books :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 23:13:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA00532 for dynarec-outgoing; Thu, 30 Mar 2000 23:13:03 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003310716.JAA09337@pons.ac.upc.es> Subject: Re: DYNAREC: Books In-Reply-To: from Michael Koenig at "Mar 30, 2000 08:58:43 pm" To: dynarec@synthcom.com Date: Fri, 31 Mar 2000 09:16:55 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > I read the Hobbit, LOTR, Silmarillion, Tales form Middle-Earth, and > several secondary literature. Yeah, sometimes it's hard to decide if I > am more Tolkien or Star Wars maniac, but I have more Star Wars material > now. > The reason why I list the Silmarillion instead of LOTR: I'm readed Hobbit, LOTR, Silmarillion and perhaps some more but I don't remember. I think LOTR it's a good book but I like more The Hobbit and Silmarillion. The last book of LOTR it's too sad, too slow and too boring for me. I can accept the good ones being defeated but not support the Frodo's quest to destroy the ring, he really didn't nothing!!. I like a lot sagas, so the best book for me is Silmarillion. And you can learn about all what happened in Middle-Earth. > BTW, did you know that the Elven name for Middle-Earth is "Endor"? ;-) > "Endor" brings me something to my head, but I can't just remember ... > >You also seem to read some SF (Science Fiction) books. Perhaps, you > are also a > >SF maniac :). > > It depends. My problem is that I often don't have the time to read so > many books. > But Ian Banks' "Agains a Dark Background" is great! I'd like to read > more books written by him but I have problems to get these. > I remember I have readed something from Ian Banks, but I can't remember this title, perhaps are this fucking Spanish translators ... I readed some books from a serie were large's IAs and humans live in large Space Ships ... Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 23:20:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA00549 for dynarec-outgoing; Thu, 30 Mar 2000 23:20:24 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003310724.JAA13171@pons.ac.upc.es> Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <004001bf9a95$a7bdc660$0a909090@okay> from Neil Griffiths at "Mar 31, 2000 00:08:46 am" To: dynarec@synthcom.com Date: Fri, 31 Mar 2000 09:24:05 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > I don't remember to know about 'David Eddings', what has he written? > > Possibly the two best fantasy series' of the last 50 years or so. The > Belgariad and the Mallorean. Both are trilogies made up of 5 books. > Absolutely fantastic, he has a way with words. Having said that, I'm not so > keen on some of the other series' that he's written, so maybe it was just > those... :) > I think I haven't readed nothing from it :( > > Do you know who is Michael > > Morcok (I don't remember how exactly is his name)? > > Yes, though I find his books too short personally. I'm a fast reader and I > can quite easily go through a 200-page book in an hour. Which is a bad > thing, believe me. :-/ > But just group each serie in a single book an you will get a large book. I also read fast, a 200-page book it's a 'small' story for me ;) I want large books of 1000-2000 pages (poor writers) :)) I have readed three or four of his series. In fact they are all the same (same hero, same enemies, same sad story). And I have 'Tales form RuneStaff' (or something similar in name' in my home. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 23:23:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA00559 for dynarec-outgoing; Thu, 30 Mar 2000 23:23:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003310727.JAA10370@pons.ac.upc.es> Subject: Re: DYNAREC: Star Wars In-Reply-To: <38E44D27.7B999211@eurocopter.de> from Neil Griffiths at "Mar 31, 2000 09:00:55 am" To: dynarec@synthcom.com Date: Fri, 31 Mar 2000 09:27:20 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Queen Amidala, played by Natalie Portman. I'm not going to enjoy that film > - for one good reason. "No, Nat, no! Don't do it! Save yourself!" :) Think about this, Di Caprio being Anakin :) God thanks finally he didn't want to do this movie. I think Di Caprio would have killed StarWars Saga for ever ... > Who knows when it'll happen? He could start to turn to the Dark Side in > Episode II... Who knows? George Lucas, most likely. :) > I'm sure he will let the better/worst for the end. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 23:41:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA00602 for dynarec-outgoing; Thu, 30 Mar 2000 23:41:51 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E45593.7D7A4727@eurocopter.de> Date: Fri, 31 Mar 2000 09:36:51 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars References: <200003310727.JAA10370@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Queen Amidala, played by Natalie Portman. I'm not going to enjoy that film > > - for one good reason. "No, Nat, no! Don't do it! Save yourself!" :) > Think about this, Di Caprio being Anakin :) Noooooooooooooooooooooooooooooooooooooooooooooo! > God thanks finally he didn't want to do this movie. I think Di Caprio would have > killed StarWars Saga for ever ... He would, but that's not my problem. I hate him and think he's one of the biggest arseholes in the world. Which reminds me, two more to add to my list: Claire Danes Heather Graham > > Who knows when it'll happen? He could start to turn to the Dark Side in > > Episode II... Who knows? George Lucas, most likely. :) > > > I'm sure he will let the better/worst for the end. Maybe. Oh well, I'm not going to waste time worrying about it. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 23:50:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA00620 for dynarec-outgoing; Thu, 30 Mar 2000 23:50:01 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200003310753.JAA05651@pons.ac.upc.es> Subject: Re: DYNAREC: Star Wars In-Reply-To: <38E45593.7D7A4727@eurocopter.de> from Neil Griffiths at "Mar 31, 2000 09:36:51 am" To: dynarec@synthcom.com Date: Fri, 31 Mar 2000 09:53:37 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > He would, but that's not my problem. I hate him and think he's one of the > biggest arseholes in the world. > Agreed. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Mar 30 23:54:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA00629 for dynarec-outgoing; Thu, 30 Mar 2000 23:54:25 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E458F4.DDCB1284@eurocopter.de> Date: Fri, 31 Mar 2000 09:51:16 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: <200003310724.JAA13171@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Possibly the two best fantasy series' of the last 50 years or so. The > > Belgariad and the Mallorean. Both are trilogies made up of 5 books. > > Absolutely fantastic, he has a way with words. Having said that, I'm not so > > keen on some of the other series' that he's written, so maybe it was just > > those... :) > > > I think I haven't readed nothing from it :( If you can, try. It's worth the effort it'll take to find the books. "Pawn of Prophecy" is the first book in "The Belgariad" series. "The Mallorean" continues from that. > > Yes, though I find his books too short personally. I'm a fast reader and I > > can quite easily go through a 200-page book in an hour. Which is a bad > > thing, believe me. :-/ > > > But just group each serie in a single book an you will get a large book. I > also read fast, a 200-page book it's a 'small' story for me ;) I want large > books of 1000-2000 pages (poor writers) :)) Same here. And then my arms get tired from holding it. :)) > I have readed three or four of his series. In fact they are all the same (same > hero, same enemies, same sad story). And I have 'Tales form RuneStaff' (or > something similar in name' in my home. I don't think much of his stories, though I am being a little harsh. I don't like small books. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 00:02:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA00661 for dynarec-outgoing; Fri, 31 Mar 2000 00:02:33 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 31 Mar 2000 00:02:32 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars and chicks In-Reply-To: <38E442E9.68A55674@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > > Cameron Diaz > > > DEFINITELY! :) > > Definitely *NOT*. She's total trailer trash! > Maybe so, but she's trailer trash with nice tits. :) I'll take the tits, but the rest I can leave. > BTW, what is "trailer trash"? Ah. This is some Americanism. Here's the background: In the southeastern and southern midwestern US (Arkansas, Missouri, Oklahoma, parts of Texas, parts of Georgia, etc...) is where all the stupid, inbred, low life, scum of the earth live. We refer to them as rednecks or white trash. They can't afford real homes, so they buy trailers. So the term "trailer trash" means the low life scums who live in trailer parks. Beer drinkin'. Shootin' guns. Makin' moonshine. Getting pregnant at 14. Sleeping with your sister (or brother). All part of being a trailer trash redneck. People who aren't worth a damn... Ever wonder why when tornadoes hit in the US that so many trailer parks are nailed? Tornado alley just so happens to have all the trailer trash in one place. I actually think that trailer parks actually cause tornadoes! > So, SMG reminds you of your niece? So... about your niece... ;) Heh. She's interning on the David Letterman show right now, and she actually made it in an episode (well, at least her legs did). -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 00:07:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA00683 for dynarec-outgoing; Fri, 31 Mar 2000 00:07:56 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 31 Mar 2000 00:07:55 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38E44CC5.3C8BB8CA@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > 8% more horizontal lines of resolution and 5FPS slower than NTSC? People > > wouldn't notice it anyway. No thanks. It flickers bad enough at 60HZ let > > alone 50HZ, and yes, I've seen PAL and NTSC side by side on professional > > studio monitors and NTSC is far crisper and smoother. PAL Looks smeared > > and flickery by comparison. > You notice the difference in quality between US and UK TVs - 8% extra > vertical width makes a lot of difference. I'm actually talking studio production equipment. 8% Makes very little difference, and the only time the average person can tell is when they *ARE* side by side. Further strengthened by the fact that people actually use extended play on their VCRs even though it looks like shite! > flicker unless you're in a darkened room - and only usually then when you > look at the light from the TV on the wall. I can see it sometimes, depends > how tired I am. :) The problem is I can always see it. And it does have a fatiguing effect on people (subconcious effect). > I've also seen PAL and NTSC side by side - and NTSC on one of our TVs is > great (I don't know why but some TVs support it). NTSC is definitely better > than PAL - I'm not going to argue that. But the greater vertical width is > highly noticable. It's the difference between 320x200 and 320x240 - quite > noticable. No, that's 17% more lines, not 8% viewable. And no, 8% doesn't make that much difference - even side by side. I also wouldn't say that NTSC is necessarily better than PAL. They're both barely tolerable standards. > But proof, if needed, is just watch any on of the US shows that they show > over in the UK (usually chat shows, I don't know why they bother - but it > can be anything). Quite often the quality is completely shit. And so is the > program usually. Ever thought about the fact that the conversion might be shite? > "Go Jerry! Go Jerry!" :-/ Hey! That's a perfect example of trailer trash! They get paid $5000 to talk about their lesbian nazi hooker sisters with whom they've had a kid! -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 00:08:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA00694 for dynarec-outgoing; Fri, 31 Mar 2000 00:08:40 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 31 Mar 2000 00:08:39 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars In-Reply-To: <38E45593.7D7A4727@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > He would, but that's not my problem. I hate him and think he's one of the > biggest arseholes in the world. > Which reminds me, two more to add to my list: Two assholes? > Claire Danes Nah. > Heather Graham Makes me *RANDY*, baby, yeah! ;-) So whaddya think of Austin Powers? -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 00:11:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA00722 for dynarec-outgoing; Fri, 31 Mar 2000 00:11:15 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 31 Mar 2000 00:11:14 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by synthcom.com id AAA00719 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >And Darks Jedis are a lot > >of stronger than Light ones so they didn´t have a chance ;) > According to Yoda the Dark Side doesn't make one stronger. Speaking of Yoda and general humor: http://www.synthcom.com/~neil/ripped.jpg And this one: http://www.synthcom.com/~neil/edgell.jpg ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 00:32:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA00868 for dynarec-outgoing; Fri, 31 Mar 2000 00:32:46 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E461DC.55298234@eurocopter.de> Date: Fri, 31 Mar 2000 10:29:16 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars and chicks References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > > Definitely *NOT*. She's total trailer trash! > > Maybe so, but she's trailer trash with nice tits. :) > > I'll take the tits, but the rest I can leave. I wonder if you can get a discount then? ;)) > > BTW, what is "trailer trash"? > > Ah. This is some Americanism. Here's the background: > > In the southeastern and southern midwestern US (Arkansas, Missouri, > Oklahoma, parts of Texas, parts of Georgia, etc...) is where all the > stupid, inbred, low life, scum of the earth live. We refer to them as > rednecks or white trash. They can't afford real homes, so they buy > trailers. So the term "trailer trash" means the low life scums who live in > trailer parks. Ah, I know what you mean now. I've only seen things like that in films, though. Like "Mars Attacks". I mention that only because I watched it last weekend... > Beer drinkin'. Shootin' guns. Makin' moonshine. Getting pregnant at 14. > Sleeping with your sister (or brother). All part of being a trailer trash > redneck. People who aren't worth a damn... Hmm. Seems a strange way of life. > Ever wonder why when tornadoes hit in the US that so many trailer parks > are nailed? Tornado alley just so happens to have all the trailer trash in > one place. I actually think that trailer parks actually cause tornadoes! Do you never think that it's natures way of getting rid of the garbage? :) > > So, SMG reminds you of your niece? So... about your niece... ;) > > Heh. She's interning on the David Letterman show right now, and she > actually made it in an episode (well, at least her legs did). Really? Cool. I've seen a few of those shows. I'm pretty sure that they show some even over here in Germany (on cable), though I'm not 100% sure about that. They show some every Friday night back in the UK though. Can't say I've ever watched it though... Either way, sounds like a good way to get into the media business. I take it that's what she wants to do? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 00:35:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA00882 for dynarec-outgoing; Fri, 31 Mar 2000 00:35:23 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E462F4.89D6E36@eurocopter.de> Date: Fri, 31 Mar 2000 10:33:56 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Which reminds me, two more to add to my list: > > Two assholes? Between them, yeah. And if not... oh dear. :) > > Claire Danes > > Nah. Yeah. ;) > > Heather Graham > > Makes me *RANDY*, baby, yeah! ;-) > > So whaddya think of Austin Powers? Brilliant, absolutely brilliant. Very, very funny - both of them. I know that sometimes he (Mike Myers) is trying to take the piss out of Britain, but I think it's very funny. Both of the films are better than the Waynes World series, IMO. Though that is also pretty funny too. :) "Yeah, baby, yeah!" and "Do I make you randy, baby, do I?" Though I think the funniest sketch so far in either films is the penis enlarger (first film). I almost collapsed at that point. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 01:03:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA00939 for dynarec-outgoing; Fri, 31 Mar 2000 01:03:43 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 31 Mar 2000 01:03:42 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars and chicks In-Reply-To: <38E461DC.55298234@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > rednecks or white trash. They can't afford real homes, so they buy > > trailers. So the term "trailer trash" means the low life scums who live in > > trailer parks. > Ah, I know what you mean now. I've only seen things like that in films, > though. Like "Mars Attacks". I mention that only because I watched it last > weekend... Bingo. Bad movie, though. Didn't even come close to the comic books. > > Beer drinkin'. Shootin' guns. Makin' moonshine. Getting pregnant at 14. > > Sleeping with your sister (or brother). All part of being a trailer trash > > redneck. People who aren't worth a damn... > Hmm. Seems a strange way of life. I guess when you don't have any money and there's no big city to go to, the only thing to do is sleep with everyone in the trailer park and shag sheep. And drink. And smoke cigarettes. > > are nailed? Tornado alley just so happens to have all the trailer trash in > > one place. I actually think that trailer parks actually cause tornadoes! > Do you never think that it's natures way of getting rid of the garbage? :) The problem is that it doesn't go away. IT just gets strewn all over the countryside. ;-0 > Either way, sounds like a good way to get into the media business. I take > it that's what she wants to do? She's a communications major, and what better way? She's a real life "Felicity" or "Time of your life" if you get those shows where you are. They're campy "girl coming of age and finding herself" shows. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 01:04:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA00948 for dynarec-outgoing; Fri, 31 Mar 2000 01:04:54 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 31 Mar 2000 01:04:53 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars In-Reply-To: <38E462F4.89D6E36@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Brilliant, absolutely brilliant. Very, very funny - both of them. I know > that sometimes he (Mike Myers) is trying to take the piss out of Britain, What does "take the piss out of" mean? > but I think it's very funny. Both of the films are better than the Waynes > World series, IMO. Though that is also pretty funny too. :) Yes, I think I like the Spy who Shagged me btter than the first. Fat bastard is a riot: "Where's your *SHITTER*?! I've got a tutle head pokin' out!" I completely lost it when I heard this... -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 01:06:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA00960 for dynarec-outgoing; Fri, 31 Mar 2000 01:06:13 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E46638.A812D598@eurocopter.de> Date: Fri, 31 Mar 2000 10:47:52 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > You notice the difference in quality between US and UK TVs - 8% extra > > vertical width makes a lot of difference. > > I'm actually talking studio production equipment. 8% Makes very little > difference, and the only time the average person can tell is when they > *ARE* side by side. Further strengthened by the fact that people actually > use extended play on their VCRs even though it looks like shite! Firstly: I meant "vertical height". Just noticed that. :) If the average person can't see 8% then I'm not average because I notice these things very easily. And I also *never* use the "long play" modes because the quality goes down so sharply. > > flicker unless you're in a darkened room - and only usually then when you > > look at the light from the TV on the wall. I can see it sometimes, depends > > how tired I am. :) > > The problem is I can always see it. And it does have a fatiguing effect on > people (subconcious effect). I can't see it in a well lit room (such as in daylight), but I do notice it in a darker room. I put it down to me being tired, but it could just be more noticable in that condition. > > I've also seen PAL and NTSC side by side - and NTSC on one of our TVs is > > great (I don't know why but some TVs support it). NTSC is definitely better > > than PAL - I'm not going to argue that. But the greater vertical width is > > highly noticable. It's the difference between 320x200 and 320x240 - quite > > noticable. > > No, that's 17% more lines, not 8% viewable. And no, 8% doesn't make that > much difference - even side by side. I also wouldn't say that NTSC is > necessarily better than PAL. They're both barely tolerable standards. Of course, but NTSC does hurt the eyes less. Hmm. How many lines are on your TV? I know it's between 580 and 600 for ours. > > But proof, if needed, is just watch any on of the US shows that they show > > over in the UK (usually chat shows, I don't know why they bother - but it > > can be anything). Quite often the quality is completely shit. And so is the > > program usually. > > Ever thought about the fact that the conversion might be shite? Yes. But then I've seen videos of US shows (my parents have a dual format VCR) that also look crap. The odds are against them being high quality. :) > > "Go Jerry! Go Jerry!" :-/ > > Hey! That's a perfect example of trailer trash! They get paid $5000 to > talk about their lesbian nazi hooker sisters with whom they've had a kid! Is it? Ooh, I know what trailer trash is! I know what it is! ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 01:15:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA00980 for dynarec-outgoing; Fri, 31 Mar 2000 01:15:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 31 Mar 2000 01:15:04 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes In-Reply-To: <38E46638.A812D598@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > difference, and the only time the average person can tell is when they > > *ARE* side by side. Further strengthened by the fact that people actually > > use extended play on their VCRs even though it looks like shite! > Firstly: I meant "vertical height". Just noticed that. :) Uh, the aspect ratios are the same, so the only thing we're talking about is # of horizontal lines. > If the average person can't see 8% then I'm not average because I notice > these things very easily. And I also *never* use the "long play" modes > because the quality goes down so sharply. I can't even tolerate standard play VHS. It has to be S-VHS *MINIMUM*. But then again, I've got a 53" screen so you tend to notice crappy sources. > > No, that's 17% more lines, not 8% viewable. And no, 8% doesn't make that > > much difference - even side by side. I also wouldn't say that NTSC is > > necessarily better than PAL. They're both barely tolerable standards. > Of course, but NTSC does hurt the eyes less. Hmm. How many lines are on > your TV? I know it's between 580 and 600 for ours. NTSC Is 525 Lines - 500 of which are viewable. PAL Is 576. > > > can be anything). Quite often the quality is completely shit. And so is the > > > program usually. > > Ever thought about the fact that the conversion might be shite? > Yes. But then I've seen videos of US shows (my parents have a dual format > VCR) that also look crap. The odds are against them being high quality. :) VHS I would assume, which is 240 lines of horizontal resolution. I'm talking about a *DECENT* video source. The broadcast video quality is quite good here when the cable company doesn't fuck up the reception. > > > "Go Jerry! Go Jerry!" :-/ > > Hey! That's a perfect example of trailer trash! They get paid $5000 to > > talk about their lesbian nazi hooker sisters with whom they've had a kid! > Is it? Ooh, I know what trailer trash is! I know what it is! ;)) Yep. That show is a trailer trash magnet! -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 01:35:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01026 for dynarec-outgoing; Fri, 31 Mar 2000 01:35:03 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E470ED.95EEB7CC@eurocopter.de> Date: Fri, 31 Mar 2000 11:33:33 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Brilliant, absolutely brilliant. Very, very funny - both of them. I know > > that sometimes he (Mike Myers) is trying to take the piss out of Britain, > > What does "take the piss out of" mean? Ah, a Briticism (I've invented a new word!). To "take the piss out of" is to wind something or someone up - to tease them, if you will. > > but I think it's very funny. Both of the films are better than the Waynes > > World series, IMO. Though that is also pretty funny too. :) > > Yes, I think I like the Spy who Shagged me btter than the first. Fat > bastard is a riot: > > "Where's your *SHITTER*?! I've got a tutle head pokin' out!" > > I completely lost it when I heard this... Yes, that was funny. I prefer the second to the first - though I don't think Dr. Evil is as funny in the second. And I did exactly the same as you in this case. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 01:36:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01035 for dynarec-outgoing; Fri, 31 Mar 2000 01:36:20 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 31 Mar 2000 01:36:19 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: Digital camera - wow! Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com I just bought a Kodak DC-290 camera and I'm extremely impressed. Check out this photo that I just picked up the camera and clicked a picture: http://www.synthcom.com/~neil/stinky.jpg This is Stinky, my cat. Notice the incredible amount of detail that this camera has. Wow! I've also photographed a picture of my office that I sit in and work: http://www.synthcom.com/~neil/office.jpg And my home theater: http://www.synthcom.com/~neil/theater.jpg And my arcade: http://www.synthcom.com/~neil/arcade1.jpg http://www.synthcom.com/~neil/arcade2.jpg http://www.synthcom.com/~neil/arcade3.jpg These are all really big files but you'll get an idea of what a bonehead amateur like me can do with a camera just by pulling it out of the box! -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 01:47:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01074 for dynarec-outgoing; Fri, 31 Mar 2000 01:47:30 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E473A3.60CEDB6@eurocopter.de> Date: Fri, 31 Mar 2000 11:45:07 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Firstly: I meant "vertical height". Just noticed that. :) > > Uh, the aspect ratios are the same, so the only thing we're talking about > is # of horizontal lines. Yes. If you increase the # of horizontal lines, you increase the vertical height. Not vertical width which is what I originally wrote. That makes no sense. :) > > If the average person can't see 8% then I'm not average because I notice > > these things very easily. And I also *never* use the "long play" modes > > because the quality goes down so sharply. > > I can't even tolerate standard play VHS. It has to be S-VHS *MINIMUM*. But > then again, I've got a 53" screen so you tend to notice crappy sources. Yes, you would. I bet games play nicely on a 53" TV. Hmm, I bet that DVD looks crap on that. That would make it so easy to see all the artifacts that you wouldn't normally notice... > > > No, that's 17% more lines, not 8% viewable. And no, 8% doesn't make that > > > much difference - even side by side. I also wouldn't say that NTSC is > > > necessarily better than PAL. They're both barely tolerable standards. > > Of course, but NTSC does hurt the eyes less. Hmm. How many lines are on > > your TV? I know it's between 580 and 600 for ours. > > NTSC Is 525 Lines - 500 of which are viewable. PAL Is 576. 576, that's the one. Not above 580. Oops. :) > > > Ever thought about the fact that the conversion might be shite? > > Yes. But then I've seen videos of US shows (my parents have a dual format > > VCR) that also look crap. The odds are against them being high quality. :) > > VHS I would assume, which is 240 lines of horizontal resolution. I'm > talking about a *DECENT* video source. The broadcast video quality is > quite good here when the cable company doesn't fuck up the reception. VHS, yes. Not the best source in the world, but I can compare it with things recorded over here. Of course you've got to take different heads and different tape into account so it's not really a fair test. I'll see for myself when I head over to the US (hopefully!) this year. > > > Hey! That's a perfect example of trailer trash! They get paid $5000 to > > > talk about their lesbian nazi hooker sisters with whom they've had a kid! > > Is it? Ooh, I know what trailer trash is! I know what it is! ;)) > > Yep. That show is a trailer trash magnet! I agree now I know what it is. :) Hmm - not forgetting "Go Ricky! Go Ricky!". :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 01:49:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01083 for dynarec-outgoing; Fri, 31 Mar 2000 01:49:17 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E47410.C6F95238@eurocopter.de> Date: Fri, 31 Mar 2000 11:46:56 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars and chicks References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Ah, I know what you mean now. I've only seen things like that in films, > > though. Like "Mars Attacks". I mention that only because I watched it last > > weekend... > > Bingo. Bad movie, though. Didn't even come close to the comic books. Bad movie, yes. But it has Natalie Portman in it. ;) > > Hmm. Seems a strange way of life. > > I guess when you don't have any money and there's no big city to go to, > the only thing to do is sleep with everyone in the trailer park and shag > sheep. And drink. And smoke cigarettes. I guess so. It's just not something I could do. I like my computer too much! > > Do you never think that it's natures way of getting rid of the garbage? :) > > The problem is that it doesn't go away. IT just gets strewn all over the > countryside. ;-0 I didn't say it worked. ;) > > Either way, sounds like a good way to get into the media business. I take > > it that's what she wants to do? > > She's a communications major, and what better way? She's a real life > "Felicity" or "Time of your life" if you get those shows where you are. > They're campy "girl coming of age and finding herself" shows. I don't know the shows, but I guess I know what you mean. And I agree - what better way to get a communications major? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 02:58:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA01365 for dynarec-outgoing; Fri, 31 Mar 2000 02:58:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars and chicks Date: Fri, 31 Mar 2000 01:57:15 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I forgot Sarah Michelle Gellar... She's nice too. :) As long as you're not a vampire ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 02:58:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA01369 for dynarec-outgoing; Fri, 31 Mar 2000 02:58:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Fri, 31 Mar 2000 02:01:31 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> I don't remember to know about 'David Eddings', what has he written? >Possibly the two best fantasy series' of the last 50 years or so. The >Belgariad and the Mallorean. Both are trilogies made up of 5 books. >Absolutely fantastic, he has a way with words. Having said that, I'm not so >keen on some of the other series' that he's written, so maybe it was just >those... :) Still have no idea... >Yes, though I find his books too short personally. I'm a fast reader and I >can quite easily go through a 200-page book in an hour. Which is a bad >thing, believe me. :-/ Oh shit, this is *fast*! So you must be able to read the "Lord of the Rings" in 6 hours! I think it took me one week to read that one... My record was 6 Star Wars books in two weeks IIRC. >I don't know whether I'm an expert, but I'd like to think I am. :) I bet you don't know the German fantasy authors ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 03:09:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA01393 for dynarec-outgoing; Fri, 31 Mar 2000 03:09:09 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E486D4.F9A24ED9@eurocopter.de> Date: Fri, 31 Mar 2000 13:07:00 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Yes, though I find his books too short personally. I'm a fast reader > >and I can quite easily go through a 200-page book in an hour. Which is a bad > >thing, believe me. :-/ > > Oh shit, this is *fast*! So you must be able to read the "Lord of the > Rings" in 6 hours! I think it took me one week to read that one... > My record was 6 Star Wars books in two weeks IIRC. The complete trilogy? No, unless I really like it then I can't sit and read for 6 hours... > >I don't know whether I'm an expert, but I'd like to think I am. :) > > I bet you don't know the German fantasy authors ;-) German fantasy authors? Are they the ones who write about how great Germany is? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 03:21:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA01414 for dynarec-outgoing; Fri, 31 Mar 2000 03:21:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E489CD.95A3AA4F@eurocopter.de> Date: Fri, 31 Mar 2000 13:19:41 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Digital camera - wow! References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I just bought a Kodak DC-290 camera and I'm extremely impressed. Check out > this photo that I just picked up the camera and clicked a picture: > > http://www.synthcom.com/~neil/stinky.jpg > > This is Stinky, my cat. Notice the incredible amount of detail that this > camera has. Wow! I've also photographed a picture of my office that I sit > in and work: AAAAAAARRRGGGGHHHH! AAAAARRRRGGGGHHHHH! HUGE CAT! ;) No, really, there's a lot of detail there. Looks good! Heh, and you can play MAME on it too, can't you? ;) > http://www.synthcom.com/~neil/office.jpg Looks incredibly like mine (no case on it) - although you've got two. I've only got the one... > And my home theater: > > http://www.synthcom.com/~neil/theater.jpg Niiiice! Is that a Pro-Logic setup or a 5.1/DTS setup? > And my arcade: > > http://www.synthcom.com/~neil/arcade1.jpg This is where you see where the camera starts to fail (probably also due to JPG format) - look at the dithering and artifacts on the wall... > These are all really big files but you'll get an idea of what a bonehead > amateur like me can do with a camera just by pulling it out of the box! I'm impressed, I have to say. :) And now you have to send a picture of your SMG-look-a-like niece! ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 03:34:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA01450 for dynarec-outgoing; Fri, 31 Mar 2000 03:34:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Fri, 31 Mar 2000 13:18:31 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I was joking, I know RISC OS. I've used it a lot when I was using some old >Archimedes computers back when I was in high school... Oops, you mentioned that some time earlier but I just forgot it... >TV sets in Europe (and most of the world) should be 50Hz, in fact. You only >get 60Hz in places like the US and Japan. But we make up for it by having >more definition on our TVs. :) Sure, unless you have a telly with 100Hz ;-) >Is that SCSI or IDE? It must be SCSI because if it's IDE, there's something >up with BeOS. It's SCSI of course! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 03:34:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA01461 for dynarec-outgoing; Fri, 31 Mar 2000 03:34:18 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars Date: Fri, 31 Mar 2000 13:32:49 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I know this. >What I means is all Jedi Knights were killed but Obi-Wan and Yoda. And in some >books there are also other lost Jedis. For example I remember a clone from an >old Knight and also a number of Dark Knights. I guess you mean Joruus C'abot (sp?). So you've read the Thrawn trilogy. >I'm talking about the facts :) >If the writer makes the heroe win although it is weaker this doesn't make the >bad guy being more powerful. Hehe. >In fact in the books I have readed seems Luke has more luck than other thing. >It's better he would become a Jedi professor and let new Jedis fight agains dark >forces. It seems a bad copy of Obi-Wan with less age. BTW, Obi-Wan is my favourite Jedi and I think Ewen McGregor was a good pick for that role. Did you know that he is the nephew of Denis Lawson, who played Wedge Antilles in the original trilogy? >I think I remember something like this ... but my memory is really bad :( I have to admit that I forgot most details of the comics... >I don't remember now if I have readed "I, Jedi", knowing Spanish translators they >can have changed the title, and my memory is really bad. You'd know if you read "I, Jedi": The main character is Corran Horn and it's the only Star Wars book told in first person. >And the star crusher Oops, forgot that one. Maybe because Kyp Durron isn't my favourite character. >and planet destroyers and a lot of more weapons. Planet destroyers? Do you mean world devastators? >I remember >there was a scientist facility hidden with the Death Star Prototype. Yeah, but the prototype was much smaller than the Death Star and it only was a skeleton. >I think I'm readed something from Zahn. But I can't just remember. Finally there are >only a few imperial forces resting. You surely have read Zahn's Thrawn trilogy. >I remember that woman admiral (I just don't remember >her name) who finally becomes in a kind of piracy band. Admiral Daala? >And helps Luke and friends!! Daala helps Luke? Have I missed something?? >It was sad when Thrawn died ..., it was a good enemy, perhaps the better general of the >Empire ... The Zahn duology "Specter of the Past" and "Vison of the Future" is about Thraw again but it's really a fake. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 03:34:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA01465 for dynarec-outgoing; Fri, 31 Mar 2000 03:34:19 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars Date: Fri, 31 Mar 2000 13:21:48 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >What I think is perhaps I won't want to see the second prequel. Episode II >seems to be a love story between Anakin and ???, I don't remember who. You mean Queen Amidala aka Padme. She'll be the mother of Luke and Leia. >But do >you think he will do Episode III. In Episode III Anakin has to become Darth >Vader, Palpatine the Emperor a lot of people killed. I think this is far from >the kind of movie is Episode I, perhaps would be an adventures movie but it >isn't a movie for laugh. Episode II will be a bit like The Empire Strikes Back and Episode III will be even darker ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 03:34:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA01472 for dynarec-outgoing; Fri, 31 Mar 2000 03:34:21 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Books Date: Fri, 31 Mar 2000 13:35:52 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I'm readed Hobbit, LOTR, Silmarillion and perhaps some more but I don't >remember. I think LOTR it's a good book but I like more The Hobbit and >Silmarillion. The last book of LOTR it's too sad, too slow and too boring for >me. I can accept the good ones being defeated but not support the Frodo's quest >to destroy the ring, he really didn't nothing!!. The best thing in LOTR were the dialogs between Merry and Pippin and Logolas and Gimli. >I like a lot sagas, so the best book for me is Silmarillion. And you can learn >about all what happened in Middle-Earth. Indeed. >"Endor" brings me something to my head, but I can't just remember ... Just think of the forest moon in The Return of the Jedi ;-) >I remember I have readed something from Ian Banks, but I can't remember this >title, perhaps are this fucking Spanish translators ... I readed some books >from a serie were large's IAs and humans live in large Space Ships ... The one I have is about a strange weapon called the "Lazy Gun". Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 03:48:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA01505 for dynarec-outgoing; Fri, 31 Mar 2000 03:48:11 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E4903A.95ECFA8F@est.fib.upc.es> Date: Fri, 31 Mar 2000 13:47:06 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars References: Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > > You mean Queen Amidala aka Padme. She'll be the mother of Luke and > Leia. > Yes I know, but I wasn´t sure. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 03:51:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA01517 for dynarec-outgoing; Fri, 31 Mar 2000 03:51:25 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E4912F.C8374F43@est.fib.upc.es> Date: Fri, 31 Mar 2000 13:51:11 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars References: Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > >I know this. > >What I means is all Jedi Knights were killed but Obi-Wan and Yoda. > And in some > >books there are also other lost Jedis. For example I remember a clone > from an > >old Knight and also a number of Dark Knights. > > I guess you mean Joruus C'abot (sp?). So you've read the Thrawn > trilogy. > Yes, I do :) > >In fact in the books I have readed seems Luke has more luck than other > thing. > >It's better he would become a Jedi professor and let new Jedis fight > agains dark > >forces. It seems a bad copy of Obi-Wan with less age. > > BTW, Obi-Wan is my favourite Jedi and I think Ewen McGregor was a good > pick for that role. Did you know that he is the nephew of Denis Lawson, > who played Wedge Antilles in the original trilogy? Really? > >I don't remember now if I have readed "I, Jedi", knowing Spanish > translators they > >can have changed the title, and my memory is really bad. > > You'd know if you read "I, Jedi": The main character is Corran Horn and > it's the only Star Wars book told in first person. > Then I haven´t readed it. I will try to find it. > >and planet destroyers and a lot of more weapons. > > Planet destroyers? Do you mean world devastators? > Yes, I´m bad translating from spanish to english :) > >I remember that woman admiral (I just don't remember > >her name) who finally becomes in a kind of piracy band. > > Admiral Daala? > > >And helps Luke and friends!! > > Daala helps Luke? Have I missed something?? > Yes. I don´t remember in what book. I will search. What I remember is that happens more than ten years later, Anakin (the son of Leia and Solo) is 6 or so years old. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 04:16:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA01576 for dynarec-outgoing; Fri, 31 Mar 2000 04:16:10 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars Date: Fri, 31 Mar 2000 14:12:35 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Think about this, Di Caprio being Anakin :) He will surely not, because after the first rumours that he might play Anakin most people on the web said they wouldn't watch the film if he does. So Lucas won't cast him, but it was a nice shock anyway. >God thanks finally he didn't want to do this movie. I think Di Caprio would have >killed StarWars Saga for ever ... Too true. >I'm sure he will let the better/worst for the end. Well, we all know how the prequels will end so the interesting thing will be what makes Anakin to change sides. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 04:16:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA01583 for dynarec-outgoing; Fri, 31 Mar 2000 04:16:15 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars Date: Fri, 31 Mar 2000 14:14:34 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> God thanks finally he didn't want to do this movie. I think Di Caprio would have >> killed StarWars Saga for ever ... >He would, but that's not my problem. I hate him and think he's one of the >biggest arseholes in the world. True! I don't know why so many chicks like him! But I guess if I could understand the girls I wouldn't be solo... >Claire Danes But she played with Leo too! >Heather Graham I think NB already mentioned her. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 04:51:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA01647 for dynarec-outgoing; Fri, 31 Mar 2000 04:51:36 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars Date: Fri, 31 Mar 2000 14:29:51 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Speaking of Yoda and general humor: >http://www.synthcom.com/~neil/ripped.jpg Now we know why Yoda speaks that way: he's constantly stoned! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 04:51:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA01657 for dynarec-outgoing; Fri, 31 Mar 2000 04:51:38 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Fri, 31 Mar 2000 14:35:14 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >German fantasy authors? Are they the ones who write about how great Germany >is? ;) I guess you already know me good enough that I wouldn't talk about such crap! But have you ever heard of Michael Ende or Wolfgang Hohlbein? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 04:51:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA01664 for dynarec-outgoing; Fri, 31 Mar 2000 04:51:39 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars and chicks Date: Fri, 31 Mar 2000 14:33:41 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >But it has Natalie Portman in it. ;) Is that a typical British saying? David McEwen also used statements like these a lot! ;-) >I guess so. It's just not something I could do. I like my computer too >much! Are you already engaged? ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 04:51:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA01671 for dynarec-outgoing; Fri, 31 Mar 2000 04:51:41 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars Date: Fri, 31 Mar 2000 14:48:28 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id EAA01668 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Then I haven´t readed it. I will try to find it. "I, Jedi" is the best Star Wars book IMO. You might want to read the first four books of the X-Wing series to know how the characters are. These are also some of my favorite books, maybe becaused the overused characters like Han, Luke, and Leia only appear very seldom. The important people in the first few X-Wing books are Corran Horn, Wedge Antilles, and various other new pilots. >Yes, I´m bad translating from spanish to english :) Much better than my Spanish! And compared to Pedro Almodovar your English is perfect! ;-) >> Daala helps Luke? Have I missed something?? >Yes. I don´t remember in what book. I will search. What I remember is that >happens more than ten years later, Anakin >(the son of Leia and Solo) is 6 or so years old. Either I forgot about that book or it's in one of those I haven't read yet. In that time period (after the first appearance of Admiral Daala in the Jedi Academy Trilogy) these are only "Planet of Twilight", "X- Wing: Starfighters of Adumar", and the Junior and Young Jedi Knigth books. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 04:51:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA01678 for dynarec-outgoing; Fri, 31 Mar 2000 04:51:42 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Digital camera - wow! Date: Fri, 31 Mar 2000 14:31:10 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >http://www.synthcom.com/~neil/stinky.jpg >This is Stinky, my cat. Notice the incredible amount of detail that this >camera has. Attack of the monster cats! >Wow! I've also photographed a picture of my office that I sit >in and work: >http://www.synthcom.com/~neil/office.jpg I'm pleased that I'm not the only one who has such a mess... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 08:46:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA02229 for dynarec-outgoing; Fri, 31 Mar 2000 08:46:14 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 31 Mar 2000 08:46:14 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Digital camera - wow! In-Reply-To: <38E489CD.95A3AA4F@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > No, really, there's a lot of detail there. Looks good! Heh, and you can > play MAME on it too, can't you? ;) Nope, not that I'm aware of! > > http://www.synthcom.com/~neil/office.jpg > Looks incredibly like mine (no case on it) - although you've got two. I've > only got the one... I didn't put the other two rooms in the photo. ;-) > > And my home theater: > > http://www.synthcom.com/~neil/theater.jpg > Niiiice! Is that a Pro-Logic setup or a 5.1/DTS setup? 5.1 (no rear speakers). The fronts are so good at imaging that surround speakers are *NOT* needed. > > And my arcade: > > http://www.synthcom.com/~neil/arcade1.jpg > This is where you see where the camera starts to fail (probably also due to > JPG format) - look at the dithering and artifacts on the wall... That's the JPG format. I can do uncompressed, too, but the pictures are bloody huge! > And now you have to send a picture of your SMG-look-a-like niece! ;)) When she returns from New York, I'll do that. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Mar 31 09:17:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA02360 for dynarec-outgoing; Fri, 31 Mar 2000 09:17:13 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Fri, 31 Mar 2000 04:26:23 -0800 (PST) To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Time for my 2 cents again =P Star Wars books: Han Solo at Stars End Han Solo's Revenge -- this series was quite good. The author does a Han Solo and the Lost Legacy -- great job of getting the characters right Lando Trilogy -- this one is much like the previous one, excellent set of characters Splinter of the Minds Eye -- written between Empire and Jedi I believe, no longer canon since it has Luke thinking about getting it on with Leia... Courtship of Princess Leia -- not bad, rancors are always fun Thrawn Trilogy -- Zahn is the best SW author at the moment, period. Dark Empire -- Decent art, story relies a bit too much on the old superweapons DE2, Empires End -- Two more comics which I haven't read. Pull the same tricks Children of the Jedi -- introduces that bitch Callista, mediocre book Darksaber -- This one is fairly cliche like the rest of the crap Anderson spews out The Crystal Star -- this one was a bit strange, but liveable XWing novels -- the ones I've read were great, this guy has potential The Black Fleet Trilogy -- barely stomachable politics. Author seems to be trying for Thrawn level politics and fails miserably Corellian Trilogy -- wasn't as bad as it could have been... Haven't read the newest Han Solo Trilogy Tales from the -- all of these are good. Authors seem to do a bit better when they are working with characters most people have little knowledge of... Bounty Hunter Wars -- Seems to be a decent enough Fett, kind of soft though... Jedi Acadamy Trilogy -- Anderson should not be allowed to write SW books. This trilogy falls back on a standard run of the mill superweapon that just happens to be invulnerable. Character development is almost nonexistant. He seems to think everyone will forget that Mara's hair is red, so he mentions it every other sentance. Qui Xux is about as improbable as they come. Daala is a sick joke, if she had really been an Admiral she would not have fucked up to the degree she fucked up. Hell, not even Ozzel screwed up as much as her... Newest Thrawn books -- it's about %&#*#$#@ time.... Vector Prime -- I have a mixed opinion on this one. The writing is decent, and he's the first author since Zahn to do some MAJOR development on main characters, but I think he goes a bit to the extremes... villians are good though. Only read a few of the Young Jedi Knights books, seems to be more Anderson shovelware... If you want to check out some fanfiction, the Dark Ring / Return of the Empire are nice. Find those over at www.fanfix.com John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Flatline Studios http://www.flatlinestudios.com Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 01:18:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA05202 for dynarec-outgoing; Sat, 1 Apr 2000 01:18:57 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 1 Apr 2000 01:18:57 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: Soo.... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com What shall the topic be this week? We already covered graphics, controllers, and dynarec, Star Wars, how much we all hate the French ( ;-) ) and something about shagging sheep. How about this as a question: How are US citizens viewed by the countries you're all from? -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 03:40:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA07951 for dynarec-outgoing; Sat, 1 Apr 2000 03:40:47 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars Date: Sat, 01 Apr 2000 04:12:00 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Time for my 2 cents again =P Looks like a bit more than 2 cents ;-) >Han Solo at Stars End >Han Solo's Revenge -- this series was quite good. The author does a >Han Solo and the Lost Legacy -- great job of getting the characters right It's long since I read these. I think the author died one or two year ago... >Lando Trilogy -- this one is much like the previous one, excellent set of > characters I think I have to read these again two since I forgot too much about the two trilogies. >Splinter of the Minds Eye -- written between Empire and Jedi I believe, no > longer canon since it has Luke thinking about > getting it on with Leia... Nope, it came out shortly after the first film which is the reason why it doesn't fit into the rest of the trilogy. It also brought up the rumours that Alan Dean Foster might have been the ghost writer of the Star Wars novel. BTW, the story Splinter of the Minds Eye is closer to the first darft of the Star Wars screenplay where a crystal was the main source of the Force. This idea was later taken over as one story element of The Dark Crystal, which had the same producer as Star Wars ;-) >Courtship of Princess Leia -- not bad, rancors are always fun It was quite nice, but a bit surprising to have all these witches... >Thrawn Trilogy -- Zahn is the best SW author at the moment, period. I read it twice to compare it with Michael Stackpole's work and I didn't like it that much the second time, but maybe I have to read an untranslated copy. >Dark Empire -- Decent art, story relies a bit too much on the old > superweapons It was a bit disappointing for me as I read the Dark Empire Sourcebook for the RPG by West End Games (now Wizards of the Coast took over the license) and it had much more interesting details. >DE2, Empires End -- Two more comics which I haven't read. Pull the same > tricks I haven't read these yet, mainly because I thought it to be a bit lame that the Emperor used the clone trick again... >Children of the Jedi -- introduces that bitch Callista, mediocre book That book was way too long, 500 pages for a story that could be told in 300 pages! It was also the reason why I didn't read Planet of Twilight be the same author yet. >Darksaber -- This one is fairly cliche like the rest of the crap Anderson > spews out Indeed, and he drove me nuts when Crix Madine was killed. >The Crystal Star -- this one was a bit strange, but liveable Yeah, strange and a bit boring... >XWing novels -- the ones I've read were great, this guy has potential There are two different authors actually. 1 to 4 and 8 are about Rogue squadron, were written by Michael Stackpole and are some of my favourites. I haven't read 5 to 7 by Aaron Allston yet, which feature the Wraith squadron which is also led by Wedge Antilles. If you like Michael Stackpole's books then you have to read "I, Jedi" which I consider to be one of the best Star Wars novels, but maybe I'm just to fond of Corran Horn, who is one of the best characters in that galaxy far far away. >The Black Fleet Trilogy -- barely stomachable politics. Author seems to be > trying for Thrawn level politics and fails > miserably I think the author must have run out of ideas and made a very rushed end. >Corellian Trilogy -- wasn't as bad as it could have been... It was nice to learn a bit more about Corellia but I found the story slightly confusing. >Haven't read the newest Han Solo Trilogy Neither did I. >Tales from the -- all of these are good. Authors seem to do a bit > better when they are working with characters > most people have little knowledge of... Yeah, the nice thing about these books is that you have short stories about not so well known characters which you recognize from the movies though. And the whole plot is around some famous scenes. One part I found really amusing. When in one story a Jawa buys a blaster and that story ends when he starts to open fire on some stormtroopers. And in the next story you learn that the guy who sold the blaster took out the battery pack before he handed it over - poor Jawa ;-) >Bounty Hunter Wars -- Seems to be a decent enough Fett, kind of soft > though... Haven't read it yet, but I head that it isn't that good. >Jedi Acadamy Trilogy -- Anderson should not be allowed to write SW books. Just my thought! But I think he's even the chief editor, or how they call it... > This trilogy falls back on a standard run of the > mill superweapon that just happens to be > invulnerable. Small, invulnerable, yet powerful - quite an oxymeron! > Character development is almost > nonexistant. I think so, and I don't like Kyp Durron anyway... > He seems to think everyone will > forget that Mara's hair is red, so he mentions it > every other sentance. Haven't noticed that but I bet you're right. > Qui Xux is about as > improbable as they come. Much too naive! > Daala is a sick joke, > if she had really been an Admiral she would not > have fucked up to the degree she fucked up. Hell, > not even Ozzel screwed up as much as her... Hehe, yeah. "Apologize accepted Kevin Anderson." ;-) >Newest Thrawn books -- it's about %&#*#$#@ time.... The best character is Pelleon but the rest was too much fake... And I knew what "The Hand of Thrawn" is long before they figured it out! >Vector Prime -- I have a mixed opinion on this one. The writing is decent, > and he's the first author since Zahn to do some MAJOR > development on main characters, but I think he goes a bit > to the extremes... villians are good though. This is one of the few books I read in the original version, and I had to get used to his writing style first. BTW, the other books I read in original version are: I Jedi, X-Wing 8, The Phantom Menace, Specter of the Past, and Vision of the Future. Translated books are just cheaper... I think it was a bad move to let Chewie die... You're right that the villians are the best part of the book, which is mainly due to their strange organic technology, although that idea isn't that new too... >Only read a few of the Young Jedi Knights books, seems to be more Anderson >shovelware... That's what I estimated and I'm too old for children books. Do these also feature babysitting droids with built-in blasters?? What else do I have what you haven't mentioned? Shadows of the Empire: One of the few books between episodes V and VI. It isn't bad, but could have been better given the fact that the main villian is the head of the Black Sun. It's also a bit illogic that the alliance let Luke and Leia perform some search for Han in Imperial City. I think it certainly wasn't worth the hype: Soundtrack, computer game, whatsoever... A Truce at Bakura: Plays only a few days after the battle of Endor. The alliance have to help an Imperial world against a powerful alien race. This is one of the better books. The New Rebellion: Isn't that bad, but it's strange that one of Luke's former students wants to be the ruler... The Phantom Menace: Terry Brooks' style is quite good and he tells us many details which weren't explained in the film (eg. how Anakin saved his racer "mostly"). I guess for those who know the film it won't be that interesting though. I read it before I saw the film. I forgot most details about the Tales of the Jedi comics, maybe I should read these again someday... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 05:03:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA08062 for dynarec-outgoing; Sat, 1 Apr 2000 05:03:19 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Soo.... Date: Sat, 01 Apr 2000 15:04:46 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >What shall the topic be this week? We already covered graphics, >controllers, and dynarec, Star Wars, how much we all hate the French ( ;-) >) and something about shagging sheep. I think you forgot some topics ;-) But we still seem to have some lurkers, which is quite astonishing! BTW, I want to greet all the lurkers from NSA, CIA, or what you are from ;-) >How about this as a question: How are US citizens viewed by the countries >you're all from? Do you really want to hear that? Do you know the comic Asterix? Obelix always would say: "They are crazy, the Romans!" - Well just exchange Romans with Americans ;-) Some Americans seem to think that everyone apart from them and maybe Japan are still living in the stone ages, but they have some backwardness themselves: - No good paper hankies, Cleanex (sp?) is a joke! - Washing machines don't heat up the water! When my brother-in-law asked someone in a shop if they had washing machines that heat up the water the guy looked at him as if he asked for a wonder. - Most of the American kitchen stoves would be forbidden in Germany because they're not safe enough. - Compared to most American houses our garden shed is very solid. - There shouldn't be any mental diseases in your family if you wnat to visit the US, maybe they think they already have enough mad people. - The American knowledge of Europe is somewhat limited - I'm talking about the average American and not you, of course! They think that they can see everithing interesting in Europe in one week because it's so much smaller than the US. - Bavarians always run around in leather pants, they think. - Germany is full of Nazis, although there should be much more in the US. - They are so fond of their history that they have a sign for every skirmish they know of. If we did that in Europe you couldn't walk a meter before running into the next sign. - Their history starts in 1776, in some rare cases even 1492. If you show them a house that was built before these dates they think it has to be a fake. I hope I didn't offend anyone. You're always free to write something about the German Barbarians of course ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 06:56:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA08387 for dynarec-outgoing; Sat, 1 Apr 2000 06:56:30 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <006701bf9bea$4b956e00$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Star Wars Date: Sat, 1 Apr 2000 16:42:04 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > BTW, Obi-Wan is my favourite Jedi and I think Ewen McGregor was a good > pick for that role. Did you know that he is the nephew of Denis Lawson, > who played Wedge Antilles in the original trilogy? Yes - but this was made into a big deal in Britain. It was reported everywhere. Mind you, Ewan always mentioned it in all of his interviews. :) What impressed me the most was that Ewan McGregor has a Scottish accent normally. He really copied the original Obi-Wans accent very well. > >I remember that woman admiral (I just don't remember > >her name) who finally becomes in a kind of piracy band. > > Admiral Daala? I think he could be talking about Mara Jade, in fact. > >And helps Luke and friends!! > > Daala helps Luke? Have I missed something?? But now I'm not so sure... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 06:56:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA08395 for dynarec-outgoing; Sat, 1 Apr 2000 06:56:31 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <006801bf9bea$4d390be0$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Star Wars Date: Sat, 1 Apr 2000 16:45:19 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > True! I don't know why so many chicks like him! But I guess if I could > understand the girls I wouldn't be solo... I'm guessing it's because he looks nice. It certainly can't be for any other reason! > >Claire Danes > > But she played with Leo too! Yeah, I know... :-/ > >Heather Graham > > I think NB already mentioned her. IIRC, that was Heather Locklear. Heather Graham was the girl out of "Austin Powers 2: The Spy Who Shagged Me". :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 06:56:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA08404 for dynarec-outgoing; Sat, 1 Apr 2000 06:56:37 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <006901bf9bea$5033fc60$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Star Wars and chicks Date: Sat, 1 Apr 2000 16:46:45 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >But it has Natalie Portman in it. ;) > > Is that a typical British saying? David McEwen also used statements > like these a lot! ;-) No idea who David McEwen is, but it's a sort of statement that I like making. Stupid, yet amusing. :) > >I guess so. It's just not something I could do. I like my computer too > >much! > > Are you already engaged? ;-) It appears that way. Every time I want it to do something demanding, it crashes. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 06:56:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA08414 for dynarec-outgoing; Sat, 1 Apr 2000 06:56:41 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <006a01bf9bea$52b04700$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Emu Fakes Date: Sat, 1 Apr 2000 16:47:58 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >German fantasy authors? Are they the ones who write about how great > Germany > >is? ;) > > I guess you already know me good enough that I wouldn't talk about such > crap! Germany is a nice place. It's over-rated by the Germans in general - but I think that's true of all countries. Especially France. :) > But have you ever heard of Michael Ende or Wolfgang Hohlbein? I've heard of Michael Ende, though I can't think of any of his work... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 06:56:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA08422 for dynarec-outgoing; Sat, 1 Apr 2000 06:56:42 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <006b01bf9bea$53e78e80$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Digital camera - wow! Date: Sat, 1 Apr 2000 16:51:03 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > No, really, there's a lot of detail there. Looks good! Heh, and you can > > play MAME on it too, can't you? ;) > > Nope, not that I'm aware of! Oh - I thought it was one of those that you could. Wrong again! :) > > > http://www.synthcom.com/~neil/office.jpg > > Looks incredibly like mine (no case on it) - although you've got two. I've > > only got the one... > > I didn't put the other two rooms in the photo. ;-) Grr. ;) > > > And my home theater: > > > http://www.synthcom.com/~neil/theater.jpg > > Niiiice! Is that a Pro-Logic setup or a 5.1/DTS setup? > > 5.1 (no rear speakers). The fronts are so good at imaging that surround > speakers are *NOT* needed. Although you've probably mentioned it before, what speakers are they? I've just bought myself a 5.1 setup today - though I have to wait until next weekend to get my speakers. I've got the amp though, which is a bit of a bugger really, all things considered. :) > > > And my arcade: > > > http://www.synthcom.com/~neil/arcade1.jpg > > This is where you see where the camera starts to fail (probably also due to > > JPG format) - look at the dithering and artifacts on the wall... > > That's the JPG format. I can do uncompressed, too, but the pictures are > bloody huge! And I wouldn't be too impressed at downloading them either. ;) > > And now you have to send a picture of your SMG-look-a-like niece! ;)) > > When she returns from New York, I'll do that. ;-) Well, I was joking. But if you're going to do it, I won't argue... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 08:04:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA08580 for dynarec-outgoing; Sat, 1 Apr 2000 08:04:16 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars Date: Sat, 01 Apr 2000 18:01:27 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yes - but this was made into a big deal in Britain. It was reported >everywhere. Mind you, Ewan always mentioned it in all of his interviews. :) I bet so, it was his uncle who made him play. >What impressed me the most was that Ewan McGregor has a Scottish accent >normally. He really copied the original Obi-Wans accent very well. I haven't heard Ewan McGregor with his normal language before but I knew that he is Scottish and was very impressed that he had an almost snobistic English. IMO he and Ian McDiarmid were the best actors in the film anyway. >> Admiral Daala? >I think he could be talking about Mara Jade, in fact. Hey, that could be the solution! >> Daala helps Luke? Have I missed something?? >But now I'm not so sure... :) Well, I wasn't that sure because I really missed that Luke got married (to Mara of course). But now I'm back on track again ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 08:04:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA08590 for dynarec-outgoing; Sat, 1 Apr 2000 08:04:17 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Fakes Date: Sat, 01 Apr 2000 18:05:49 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Germany is a nice place. It's over-rated by the Germans in general - but I >think that's true of all countries. Especially France. :) Germany is not perfect, but it could be much worse... >I've heard of Michael Ende, though I can't think of any of his work... "Neverending Story" - Forget the film, the book is much better. "Momo" ... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 08:04:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA08594 for dynarec-outgoing; Sat, 1 Apr 2000 08:04:17 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars and chicks Date: Sat, 01 Apr 2000 18:04:19 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No idea who David McEwen is, David McEwen is for RISC OS what Richard Bannister is for Mac, ie. he ported about a dozen emulators and since I'm his only beta tester I have all of these ;-) >but it's a sort of statement that I like making. Stupid, yet amusing. :) He used that two: "But it has XYZ in it." ;-) >It appears that way. Every time I want it to do something demanding, it >crashes. ;) I guess a golden ring wouldn't help much in that case though ;-) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 11:14:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA09037 for dynarec-outgoing; Sat, 1 Apr 2000 11:14:06 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Sat, 1 Apr 2000 06:23:17 -0800 (PST) To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Sat, 1 Apr 2000, Michael Koenig wrote: > >Children of the Jedi -- introduces that bitch Callista, mediocre book > > That book was way too long, 500 pages for a story that could be told in > 300 pages! It was also the reason why I didn't read Planet of Twilight > be the same author yet. Ahh, I forgot about that one, it was more of the same. > >Darksaber -- This one is fairly cliche like the rest of the crap > Anderson > > spews out > > Indeed, and he drove me nuts when Crix Madine was killed. Forgot about him killing Madine... he is the embodiment of a crappy author. He doesn't have the balls to kill someone really big, nor the balls to even attempt some character development. > I haven't read 5 to 7 by Aaron Allston yet, which feature the Wraith > squadron which is also led by Wedge Antilles. The Wraith Squadron ones are pretty good, Booster Terrik has fun with a star destroyer... > If you like Michael Stackpole's books then you have to read "I, Jedi" > which I consider to be one of the best Star Wars novels, but maybe I'm > just to fond of Corran Horn, who is one of the best characters in that > galaxy far far away. Hmm, I've seen this one around, guess it's time to pick it up =P > >The Black Fleet Trilogy -- barely stomachable politics. Author seems > to be > > trying for Thrawn level politics and fails > > miserably > > I think the author must have run out of ideas and made a very rushed > end. I had that idea after the first couple of chapters =P > >Corellian Trilogy -- wasn't as bad as it could have been... > > It was nice to learn a bit more about Corellia but I found the story > slightly confusing. There are times when having the jedi kids outdoing everyone else at everything gets excessive =P > Yeah, the nice thing about these books is that you have short stories > about not so well known characters which you recognize from the movies > though. And the whole plot is around some famous scenes. Amazingly enough I think Anderson was the editor for these =) > stormtroopers. And in the next story you learn that the guy who sold > the blaster took out the battery pack before he handed it over - poor > Jawa ;-) Hehe, "DIE &*%$(@)#*%#)@'S! ... > I think it was a bad move to let Chewie die... I would definitely agree with you there. I'm betting that Lucas will de-canonize this one =P > You're right that the villians are the best part of the book, which is > mainly due to their strange organic technology, although that idea > isn't that new too... > > >Only read a few of the Young Jedi Knights books, seems to be more > Anderson > >shovelware... > > That's what I estimated and I'm too old for children books. Do these > also feature babysitting droids with built-in blasters?? Think Corellia trilogy > Shadows of the Empire: > One of the few books between episodes V and VI. It isn't bad, but could Never read this one, played the game though. > A Truce at Bakura: > Plays only a few days after the battle of Endor. The alliance have to > help an Imperial world against a powerful alien race. This is one of > the better books. This one seemed to bail out of any real major character development. Overall this one was good. > The New Rebellion: > Isn't that bad, but it's strange that one of Luke's former students > wants to be the ruler... Did not read this one. > The Phantom Menace: > Terry Brooks' style is quite good and he tells us many details which > weren't explained in the film (eg. how Anakin saved his racer > "mostly"). I guess for those who know the film it won't be that > interesting though. I read it before I saw the film. Hmm, Brooks did a fine job with those Elfstone books, looks like another one to check out... > I forgot most details about the Tales of the Jedi comics, maybe I > should read these again someday... Heh, the Marvel comics? The ones where Luke invariably scored a half dozen chicks that all died horribly before the end? The ones that got de-canonized? =) > Bye, > M.I.K.e > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@synthcom.com. Please direct other > ** questions, comments, or problems to neil@synthcom.com. > John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Flatline Studios http://www.flatlinestudios.com Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 11:33:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA09081 for dynarec-outgoing; Sat, 1 Apr 2000 11:33:50 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 1 Apr 2000 11:33:49 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Soo.... In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >How about this as a question: How are US citizens viewed by the > >you're all from? > Do you really want to hear that? Sure! > Do you know the comic Asterix? Obelix always would say: "They are > crazy, the Romans!" - Well just exchange Romans with Americans ;-) Too true. > - No good paper hankies, Cleanex (sp?) is a joke! I'm not sure I understand... Kleenex is crap since it throws up lots of dust particles. I just use a towel or a paper towel! > - Washing machines don't heat up the water! When my brother-in-law > asked someone in a shop if they had washing machines that heat up the > water the guy looked at him as if he asked for a wonder. You mean washing machines in the US don't heat up the water? Mine surely doesn't - it takes a hot water tap out of the hot water that runs throughout our house. > - Most of the American kitchen stoves would be forbidden in Germany > because they're not safe enough. Really? How so? > - Compared to most American houses our garden shed is very solid. Considering that I and a *LOT* of Americans don't have them, I'll take your word for it. ;-) > - There shouldn't be any mental diseases in your family if you wnat to > visit the US, maybe they think they already have enough mad people. Is this an immigration rule or something? > - The American knowledge of Europe is somewhat limited - I'm talking > about the average American and not you, of course! They think that they > can see everithing interesting in Europe in one week because it's so > much smaller than the US. I have a feeling US citizens have less time on their hands than the rest of the world. Also, this might sound arrogant, but the US is the economic captial of the world and the "one to follow", so the attention is usually toward the US. US Citizens typically don't spend much time studying foreign countries because they are too distracted with their own lives. > - Bavarians always run around in leather pants, they think. Heh. Well, the weirdo Bavarians do. ;-) We have our share of leather pants wearing freaks here in the states. Just look at San Fransisco! > - Germany is full of Nazis, although there should be much more in the > US. That would be the Southeastern United States. Lots of "Neo Nazis" who are nothing more than white supremecist racist pricks. There's still a lot of racial bias in the south. Doesn't make a damn bit of sense to me (I'm from the Northwestern US). > - They are so fond of their history that they have a sign for every > skirmish they know of. If we did that in Europe you couldn't walk a > meter before running into the next sign. A sign for every skirmish? You mean like the Vietnam Memorial and shit like that? Yeah, we've got a bunch of those. That's because the "veterans" want to be remembered and recognized. Most people don't give a flying fuck about it. > - Their history starts in 1776, in some rare cases even 1492. If you > show them a house that was built before these dates they think it has > to be a fake. ???? -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 11:34:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA09090 for dynarec-outgoing; Sat, 1 Apr 2000 11:34:21 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 1 Apr 2000 11:34:20 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars In-Reply-To: <006801bf9bea$4d390be0$0a909090@okay> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > >Heather Graham > > I think NB already mentioned her. > IIRC, that was Heather Locklear. Heather Graham was the girl out of "Austin > Powers 2: The Spy Who Shagged Me". :) No, I said Heather Graham. She's a hot one! Heather Locklear is cute, too, but she's getting up there in years. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 13:33:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA09407 for dynarec-outgoing; Sat, 1 Apr 2000 13:33:43 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars Date: Sat, 01 Apr 2000 23:12:55 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No, I said Heather Graham. She's a hot one! Heather Locklear is cute, too, >but she's getting up there in years. Ah, so I was right. I was getting worried! I thought I could distinguish these two, but when NG said you had Locklear on your list I thought my internal RAM had some leaks again... Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 13:33:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA09414 for dynarec-outgoing; Sat, 1 Apr 2000 13:33:44 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Soo.... Date: Sat, 01 Apr 2000 23:33:16 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Sure! What a brave man! ;-) >> Do you know the comic Asterix? Obelix always would say: "They are >> crazy, the Romans!" - Well just exchange Romans with Americans ;-) >Too true. I even have another one, but I don't know if I translate it correctly: America is often referred to as the "land of unlimited possibilities." And I say it's the "land of unlimited impossibilities." ;-) >I'm not sure I understand... Kleenex is crap since it throws up lots of >dust particles. I just use a towel or a paper towel! My mother always imports tons of "Softies", ask NG what it is... Actually my mother visits the US with very have luggage but when she comes back she sometimes puts the smaller suitcase into the larger one! About the only things she exports are: jeans (for my father, I prefer cord), Tabasco, jazz, and books (for me). >You mean washing machines in the US don't heat up the water? Mine surely >doesn't - it takes a hot water tap out of the hot water that runs >throughout our house. How hot can that water be? Some of our cloth is "cooked" 95 degrees centigrade, I think that's about 200 degrees fahrenheit. >> - Most of the American kitchen stoves would be forbidden in Germany >> because they're not safe enough. >Really? How so? My sister has a better stove now, but before she had one where the heating spirals were lying open and the controlls were in the back. This would be surely forbidden in Germany! >Considering that I and a *LOT* of Americans don't have them, I'll take >your word for it. ;-) But a stone house is quite expensive in the US, right? >Is this an immigration rule or something? I think you actually have to fill in a form asking you questions about mental diseases, AIDS, and so on every time when you visit the US. But I can ask my mother if you're interested. It's also a bit strange that my sister had to make a special driving test given the fact that in Germany you have to learn several weeks to drive and pay about 1500 dollars till you get your driving license! When you learn on an automatic car in Germany you even get a note in your license that you're only allowed to drive such cars, but I think in the US such cars are in the majority. >I have a feeling US citizens have less time on their hands than the rest >of the world. Also, this might sound arrogant, but the US is the economic >captial of the world and the "one to follow", so the attention is usually >toward the US. US Citizens typically don't spend much time studying >foreign countries because they are too distracted with their own lives. Actually that led to a big surprise in some firms when Asian firms was able to manufacture higher quality computer parts at a lower price... >Heh. Well, the weirdo Bavarians do. ;-) We have our share of leather pants >wearing freaks here in the states. Just look at San Fransisco! Yeah, but don't think we run around that way here ;-) >A sign for every skirmish? You mean like the Vietnam Memorial and shit >like that? Yeah, we've got a bunch of those. That's because the "veterans" >want to be remembered and recognized. Most people don't give a flying fuck >about it. No, I mean the skirmishes from the Independence War and the war between North and South - how do you call it? If we'd do that in Europe, or the rest of the world you couldn't build a single house because everything would be crowded with sings... >> - Their history starts in 1776, in some rare cases even 1492. If you >> show them a house that was built before these dates they think it has >> to be a fake. >???? Believe me it really was that way! I think the worst thing was when some Americans where invited to the 1000 year celebration of a city. They just couldn't believe it. And this only was the first mentioning of that city, only god knows when that city was founded! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 16:26:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA09756 for dynarec-outgoing; Sat, 1 Apr 2000 16:26:50 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 1 Apr 2000 16:26:49 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Soo.... In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > I even have another one, but I don't know if I translate it correctly: > America is often referred to as the "land of unlimited possibilities." > And I say it's the "land of unlimited impossibilities." ;-) It's both, actually - depending upon what you want to do. There's no restriction on how far you can take things, but if you get too big, people tend to get pissy about it (I.E. Microsoft, Intel, etc...). > >You mean washing machines in the US don't heat up the water? Mine > >doesn't - it takes a hot water tap out of the hot water that runs > >throughout our house. > How hot can that water be? Some of our cloth is "cooked" 95 degrees > centigrade, I think that's about 200 degrees fahrenheit. Standard water is 190F, which is 87C, so close, yeah. > >> because they're not safe enough. > >Really? How so? > My sister has a better stove now, but before she had one where the > heating spirals were lying open and the controlls were in the back. > This would be surely forbidden in Germany! Those stoves haven't been made in at least 20 years. Controls are on the front these days. > >Considering that I and a *LOT* of Americans don't have them, I'll take > >your word for it. ;-) > But a stone house is quite expensive in the US, right? Uh... I dunno - I never have checked! But brick houses are more expensive, yes... > >Is this an immigration rule or something? > I think you actually have to fill in a form asking you questions about > mental diseases, AIDS, and so on every time when you visit the US. But > I can ask my mother if you're interested. That's there to deter getting the crazies into the country. I surely don't want any more wackos than we've already got. > It's also a bit strange that my sister had to make a special driving > test given the fact that in Germany you have to learn several weeks to > drive and pay about 1500 dollars till you get your driving license! Sure, but driving laws here are different than they are in Germany, and that's all the driver's license/tests are really for - so you know them. They do NOT teach you how to drive. > When you learn on an automatic car in Germany you even get a note in > your license that you're only allowed to drive such cars, but I think > in the US such cars are in the majority. Automatics? Nah - they're about 50/50. I don't think the driving tests are stringent enough. They ought to have emergency situations accounted for (meaning actual testing of reaction of emergency situations) and spend a 6 week course on how to handle your fucking vehicle. They'll give any moron a driver's license around here. I much prefer Germany's approach. > >I have a feeling US citizens have less time on their hands than the > >of the world. Also, this might sound arrogant, but the US is the > >captial of the world and the "one to follow", so the attention is > >toward the US. US Citizens typically don't spend much time studying > >foreign countries because they are too distracted with their own > Actually that led to a big surprise in some firms when Asian firms was > able to manufacture higher quality computer parts at a lower price... Non-US citizens tend to think we don't know enough about other countries. We ask "WTF are you spending so much time worrying about and studying us for?" ;-) But seriously, we know lots about our own country. It just so happens that the size of your entire country is the size of a few of our states, so it's like a mini-grouping of countries. > >Heh. Well, the weirdo Bavarians do. ;-) We have our share of leather > >wearing freaks here in the states. Just look at San Fransisco! > Yeah, but don't think we run around that way here ;-) I don't think anyone does. Germans are made fun of a lot for some of the more eccentric things (like sex fetish videos - why do they all seem to be German?), but no one takes them seriously. > >A sign for every skirmish? You mean like the Vietnam Memorial and shit > >like that? Yeah, we've got a bunch of those. That's because the > >want to be remembered and recognized. Most people don't give a flying > >about it. > No, I mean the skirmishes from the Independence War and the war between > North and South - how do you call it? You mean the revolutionary war? I didn't even know we had signs for THOSE skirmishes. I'm not sure what you mean by "signs", either. Do you mean like the confederate flag? > If we'd do that in Europe, or the rest of the world you couldn't build > a single house because everything would be crowded with sings... We stopped fighting in our country over a hundred years ago, so there's no call for new ones. ;-) > >> - Their history starts in 1776, in some rare cases even 1492. If you > >> show them a house that was built before these dates they think it > >> to be a fake. > >???? > Believe me it really was that way! I think the worst thing was when > some Americans where invited to the 1000 year celebration of a city. > They just couldn't believe it. And this only was the first mentioning > of that city, only god knows when that city was founded! I admit that a 1000 year old city is novel to any country that's only a couple of hundred years old. But to *DISBELIEVE* it is entirely another thing! -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 19:29:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id TAA10118 for dynarec-outgoing; Sat, 1 Apr 2000 19:29:34 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E6BD82.C97F539E@zaz.com.br> Date: Sun, 02 Apr 2000 00:24:50 -0300 From: Willian Padovani Germano X-Mailer: Mozilla 4.61 [en] (Win98; I) X-Accept-Language: en,ja MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Soo.... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Greetings :), Neil Bradley wrote: > > What shall the topic be this week? We already covered graphics, > controllers, and dynarec, Star Wars, how much we all hate the French ( ;-) > ) and something about shagging sheep. > > How about this as a question: How are US citizens viewed by the countries > you're all from? Let me try... Willian, from Brazil, here. 1) Visions about the US are always distorted by it being the mightiest country, bad points are overemphasized, good points not considered... distortions extrapolate. Any silly isolate example is generalized to the whole nation by a detractor. We probably have all kinds of people around here, so anything from hate to love to uh? happens. Absolute minorities apart: 2) There are masses who simply live their lives and don't care about faraway matters. Unless during soccer competitions. Actually the american team is just beginning to be respected here, If we loose, it's still considered our fault. Good discipline and defense, though -- but soccer is an art, it has to be beautiful, fluid, like you play basketball. 3) The so-called new rich ones ( in case this is local, new rich are those who became rich or almost, but have no "proper" education and tradition, blah blah ). The ones who buy in New York and Miami, go to Disneyland, buy import cars, etc. They love this US they see as THE US. Ah, traditional ones prefer Europe, of course. 4) Just like many other places, we are bombarded with american culture, specially commercial one. Some consider this a form of domination. And that it takes space from our own -- better -- culture. Also, because what comes to big tv stations is mostly commercial, for the masses, many ( probably not just in Brazil ) take that as an example of how ALL americans are: dumb, ignorant and arrogant. Of course this is naive thinking to say the least. Our own culture has a lot of space, easily much more than foreign ones. This was not the case for some years in the 80's ( our creative fault ), but more and more it is happening. Just don't think it is for our GOOD culture ( the one that is better than american -- than any -- COMMERCIAL STUFF, of course ). It is space for our own trash. That's why I said it was naive thinking. 5) I've already said we are a mix from many places, massively Portugal, Italy, Africans, Germany and even Japan, markedly Spain, Middle East countries, etc. Although the US is the foreign nation with most exposure on tv, etc., others are close to that. So, in some sense, the US is "just another country, that happens to be the #1 economy, military force, science, technology, etc. ". In essence, americans -- or any other people -- are not hated at all in here. Brazilians are in general warm, nice people. No holy wars or major prejudices. Willian, wgermano@zaz.com.br --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 1 21:50:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id VAA10354 for dynarec-outgoing; Sat, 1 Apr 2000 21:50:05 -0800 (PST) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 1 Apr 2000 21:50:05 -0800 (PST) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Soo.... In-Reply-To: <38E6BD82.C97F539E@zaz.com.br> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > How about this as a question: How are US citizens viewed by the countries > > you're all from? > Let me try... Willian, from Brazil, here. > 1) Visions about the US are always distorted by it being the mightiest > country, bad points are overemphasized, good points not considered... Yeah, that's probably true. My guess is that what most people know of the US is limited to television that gets exported, which most people here don't think is worth a damn. Well, most *DECENT* people don't think much of it. > 2) There are masses who simply live their lives and don't care about > faraway matters. Unless during soccer competitions. Actually the Yeah. I find that rather offenseive myself. I've often said that the more of a sports fan someone is the less of an IQ they have. > 3) The so-called new rich ones ( in case this is local, new rich are > those who became rich or almost, but have no "proper" education and > tradition, blah blah ). The ones who buy in New York and Miami, go to > Disneyland, buy import cars, etc. They love this US they see as THE US. > Ah, traditional ones prefer Europe, of course. You lost me here - something in the translation, I guess. In my case I can remember when $50 meant whether or not I ate during that week. I'm nowhere near that now, but I do have quite a bit of respect for $$! > 4) Just like many other places, we are bombarded with american culture, > specially commercial one. Some consider this a form of domination. And > that it takes space from our own -- better -- culture. Also, because > what comes to big tv stations is mostly commercial, for the masses, many > ( probably not just in Brazil ) take that as an example of how ALL > americans are: dumb, ignorant and arrogant. Of course this is naive > thinking to say the least. Funny, we think that the ads are aimed at dumb, ignorant, etc... We're honestly so numb to advertising now that companies *REALLY* have to go over the top to sell us on a product. Some ads are absolutely brilliant - most are just lame. Like is my life so fucking important that I need a calling plan, or that I should dail 10-10-220-800-collect so I can save a dollar or two? Bleugh. > but more and more it is happening. Just don't think it is for our GOOD > culture ( the one that is better than american -- than any -- COMMERCIAL > STUFF, of course ). It is space for our own trash. That's why I said it > was naive thinking. The reason it becomes popular is most often because the natives are sick of what they've got and want a change. If it wasn't the US, it would be something else. But advancement comes at a price of ditching old traditional ways. Honestly, being traditional about anything for the sake of tradition is just stupid. As transporation barriers break down, everyone will eventually wind up polluting everyone else and we'll run into a situation where the world is a hybrid of everything. *THAT* Is when the world society will begin to advance in leaps and bounds. > In essence, americans -- or any other people -- are not hated at all in > here. Brazilians are in general warm, nice people. No holy wars or major > prejudices. I think that's typical here as well. Well, except for the racist southeastern United States. ;-) The reason I asked the original question is to perhaps explain what's really going on so it can be understood. I find Europeans always bitch that US citizens don't care about foreign countries. To a large extent, that's true. We generally don't hold a lot of value in knowing anything about non-US countries, and it all boils down to time. In fact, we often question why Europeans are so obsessed with thinking they know everything about US, too! I don't know what the work pace is like in a lot of countries, but I know I'm personally so busy with just getting things I *HAVE* to do done that I don't have time to devote to studying foreign cultures. This is actually one way I do it - by polling. ;-) I'd absolutely love to visit Germany, Australia, the UK, Japan, and Egypt. They are, what I consider to be, the richest countries of culture and style in the world. Seeing the castles of Germany would be euphoria. We don't have castles in the US. We've got boring, bland buildings mostly. Have I bored you enough? Any other questions from the inside of the US? Have a US stereotype you'd like explained? -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 2 06:07:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA11041 for dynarec-outgoing; Sun, 2 Apr 2000 06:07:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <004201bf9ca4$3ef24e60$0a909090@okay> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Soo.... Date: Sun, 2 Apr 2000 15:04:52 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > How about this as a question: How are US citizens viewed by the countries > you're all from? That's a good question. Hmm... :) Well, I'm afraid that Britain is 50/50 with America. In some respects we dislike the country, in other ways we aspire to be like it. I'm not a normal British person anymore. A true Britan would keep himself to himself in regards to other countries - an English person especially dislikes people from other countries. As for me, I think that's stupid - so I try to learn all I can about the various countries so I can make up my own opinion. Britain sees America as having a very poor education system. Because of this, most Americans are seen as being quite stupid. It doesn't help the American cause when you have American tourists walking around in utter disbelief that any country has been around for more than 500 years and saying that everything is "quaint". America is respected as a political power - but the actual political system seems to be quite poor. You can elect lots of people to look after each state - but you have one senator who can be from another party who has enough power to overrule anything they want to do. Because of this it is seen that your political system just doesn't work very well. We also see America as being a very violent place. Everyone carries a gun with them and there are regular shootings. I don't agree with this stereotype - though I do think that there are more shootings and killings (or the ratio is higher) than in Britain or any other country I know about. Whatever, the American film industry definitely doesn't do you any favours here. Americans also have quite a high opinion of themselves and think that every country that isn't America is nowhere near as good. You're like the French in that regard. ;) I know a lot of people think that Americans are terrible for knowing very little about history outside of America. While I know that America is big (indeed, anyone of the great lakes could quite easily fit Britain inside!) it doesn't really have a huge history. In our history lessons, not only do we learn about our own history - we learn about other peoples too. I think the only other thing I can think of that people think about is that Americans don't generally know what is going on around the world. They know what is happening in their village, city and state - but not too much about anywhere else. This doesn't help them when they are seen as being not so bright. Now I'm not saying that I agree with these stereotypes. Indeed, I've spoke with a fair few Americans, like yourself, who I wouldn't say would fit into these categories. However, I have met quite a few Americans who do fit quite easily into some of them. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 2 12:03:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA11861 for dynarec-outgoing; Sun, 2 Apr 2000 12:03:47 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 2 Apr 2000 12:03:46 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Soo.... In-Reply-To: <004201bf9ca4$3ef24e60$0a909090@okay> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > I'm not a normal British person anymore. A true Britan would keep himself to > himself in regards to other countries - an English person especially > dislikes people from other countries. As for me, I think that's stupid - so > I try to learn all I can about the various countries so I can make up my own > opinion. Yeah, that is stupid. It's almost racist (disliking everyone from another country). Except for the French, of course. ;-) > Britain sees America as having a very poor education system. Because of > this, most Americans are seen as being quite stupid. It doesn't help the That's certainly not true, but I think you know it. I can say, having been through the US's public education system, that the grades K-12 aren't worth a damn. The only time you really learn in school is when you go on to college, whether it be a state university or a community college. My math education is so screwed up because they put me in too high of a math class to start with, realized their mistake, put me in too low of a math class, and by the time I was a senior in high school, they had me at sophomore level math. I graduated high school in the first 3 months of me being a senior, and went directly to community college. > American cause when you have American tourists walking around in utter > disbelief that any country has been around for more than 500 years and > saying that everything is "quaint". As I said in my other email, having buildings that are 200 years old or older is a novelty to us. To you it's just standard issue, but for US citizens, we just don't have anything like that in the states! > seems to be quite poor. You can elect lots of people to look after each > state - but you have one senator who can be from another party who has > enough power to overrule anything they want to do. Because of this it is > seen that your political system just doesn't work very well. It works well enough to be the #1 military, economic, and cultural center of the world. ;-) But what you're not seeing is that our senators are elected in each state because of their mindset, and we're not often disappointed. It actually does work quite well. > We also see America as being a very violent place. Everyone carries a gun > with them and there are regular shootings. I don't agree with this That's total bullshit, and is further fueled by my major enemy - the media. Since guns in schools are a hot topic, any time they have a shooting, the media goes hog wild talking about "Violence in our schools" and making a huge fucking deal about it. If anything, it just fuels more copycats. I really, really hate the media. I write nastygrams to them on a consistent basis. > stereotype - though I do think that there are more shootings and killings > (or the ratio is higher) than in Britain or any other country I know about. Either that or we just glorify it more often when it happens. > Whatever, the American film industry definitely doesn't do you any favours > here. And of course, the film industry is most often a joke, and doesn't reflect real life. I've met a handful of Germans who think that everyone has swimming pools in their mansions in the US because of reruns of crappy soap operas like Knott's Landing. ;-) But then again, I don't think you'd like Americans to view the English as a bunch of herion junkies (I.E. Trainspotting - horrible fucking movie). ;-) > Americans also have quite a high opinion of themselves and think that every > country that isn't America is nowhere near as good. You're like the French > in that regard. ;) We do? It depends upon what you mean by "nowhere near as good". Good in what way? If you mean economically, well, that can't be argued with successfully. ;-) Our minimum standards for health are quite a bit higher than other countries. One thing I don't understand about a lot of foreign countries is why everybody seems to smoke. Can't a country that has been around for thousands of years, especially ones that know damn well what the consequences of doing so are, change their culture to ban it in public places? In this part of the US, you'll get ostracized if you light up a cigarette. It's a filthy, smelly, stinky, unhealthy habit that should not be allowed in public (in private it's OK), and should be treated as a drug addiction. > I know a lot of people think that Americans are terrible for knowing very > little about history outside of America. While I know that America is big > (indeed, anyone of the great lakes could quite easily fit Britain inside!) > it doesn't really have a huge history. In our history lessons, not only do > we learn about our own history - we learn about other peoples too. We do as well. We just don't remember it after we leave school unless we're going into a field that requires it. ;-) > I think the only other thing I can think of that people think about is that > Americans don't generally know what is going on around the world. They know > what is happening in their village, city and state - but not too much about > anywhere else. This doesn't help them when they are seen as being not so > bright. And as I mentioned in my prior emails, why exactly is this so important, and why does that make US citizens look stupid? The reverse could be said: Why are you so interested in everyone else's affairs? ;-) > Now I'm not saying that I agree with these stereotypes. Indeed, I've spoke > with a fair few Americans, like yourself, who I wouldn't say would fit into > these categories. However, I have met quite a few Americans who do fit quite > easily into some of them. :) I have met very few that fit in the stereotypical view, actually. Then again, I tend to hang around highly educated people. But I'd also say that England isn't free of dipshits, either. You just value knowing the history of your surrounding neighbors. It just so happens that our "surrounding neighbors" span several thousand miles that we call "states". ;-) It has a common history/ancestry. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 2 12:45:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA11952 for dynarec-outgoing; Sun, 2 Apr 2000 12:45:23 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E7A22F.1F9CD6F3@zaz.com.br> Date: Sun, 02 Apr 2000 16:40:31 -0300 From: Willian Padovani Germano X-Mailer: Mozilla 4.61 [en] (Win98; I) X-Accept-Language: en,ja MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Soo.... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi :), Neil Bradley wrote: > > > > How about this as a question: How are US citizens viewed by the countries > > > you're all from? > > Let me try... Willian, from Brazil, here. > Yeah, that's probably true. My guess is that what most people know of the > US is limited to television that gets exported, which most people here > don't think is worth a damn. Well, most *DECENT* people don't think much > of it. You know, TV is like Pandora's box, you don't have much control over what they put there. Open at your own risk. But most people seem to rely too much on it. We can say one can always turn it off if nothing good is on, there are worlds of other possibilities around. But many people seem to be too depending on tv, they simply didn't develop taste for much else. They are doomed with a very time demanding hobby that never evolves. Maybe those people saying TV is a devil's thing are right :). Now God sent the Internet ;). > You lost me here - something in the translation, I guess. In my case I can > remember when $50 meant whether or not I ate during that week. I'm nowhere > near that now, but I do have quite a bit of respect for $$! Sorry, I didn't make myself clear. New rich is not a term for anyone who got money, but for people who think money is everything and whose sport is spending money on expensive, shiny things. Basically just concerned with their position in their social group. They judge others based on their house, electronic gadgets, the brand of the cars, clothes, parties you go to, who you know, social columns on newspapers and tv, etc. Got the picture ? The sad thing is that they are arrogant, a quality that comes with ignorance, surely. If something is not cool in their group, then it's worth nothing. It's just another sad/funny tribe in our "jungle". What I said about traditional rich people not liking them is not a praise for tradition. It's just how these two groups relate: the new rich ones want to be accepted among the later, who think they are disgusting, because they have no taste or "advanced" culture. But they usually have to welcome them, specially when their bank accounts start not doing justice to their "status/tradition" anymore. Comedians love to mock on these stereotypes. Clear now ? So, these new rich love the US as they see it: home of Miami, limousines, stores in NY, Las Vegas, Disneyland, etc. > Funny, we think that the ads are aimed at dumb, ignorant, etc... We're yes, ours too. Though now and then some pretty funny/smart ad comes out. But I guess I made another confusion here: when I said commercial stuff, I meant movies, series, cartoons, etc. with no quality, done with no other intent but getting money from it. The industry of the million clones... > Some ads are absolutely brilliant - > most are just lame. Like is my life so fucking important that I need a > calling plan, or that I should dail 10-10-220-800-collect so I can save a > dollar or two? Bleugh. :) Smaller tv stations here sometimes accept those old pseudo shows where they try to prove some product will change your life... Once I saw one, of a face cleaner cream or something (my english surely doesn't help here), where a young adult guy was saying: "Now I have a future!", just because he claimed the product got his face rid of a bunch of skin eruptions. Willian --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 2 12:46:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA11961 for dynarec-outgoing; Sun, 2 Apr 2000 12:46:26 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E7A26D.B6BEA35E@zaz.com.br> Date: Sun, 02 Apr 2000 16:41:33 -0300 From: Willian Padovani Germano X-Mailer: Mozilla 4.61 [en] (Win98; I) X-Accept-Language: en,ja MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Soo.... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi again, Neil Bradley wrote: > I find Europeans always bitch that US citizens don't care about foreign > countries. To a large extent, that's true. We generally don't hold a lot > of value in knowing anything about non-US countries, and it all boils down > to time. In fact, we often question why Europeans are so obsessed with > thinking they know everything about US, too! > I don't know what the work pace is like in a lot of countries, but I know > I'm personally so busy with just getting things I *HAVE* to do done that I > don't have time to devote to studying foreign cultures. This is actually > one way I do it - by polling. ;-) Great. We're all busy ;), though we can try to minimize that. I'm not European, but I guess I can help a little. Maybe it's not that they want you to *study* their culture. Just respect them, intellectually (not saying that you don't, read the alert at the end). 1) There's the emotional part, too. Watching american movies, cartoons, tv series, shows, music star, etc. on a daily basis makes that part of our societies and cultures, too, of course. We get 'to know how you are', see that we have many things in common: we all believe in love and in good against evil, etc. It gets to the point where they don't even seem foreign anymore ( global communications, translations adapted to our tastes and common roots help that ). Brazilians don't care, we expect that others may not know anything true about us, but Europeans probably expect a two-way road, like friendship, which implies sharing. Or at least expect an open spirit. But while they know so much about american culture (?), the average american ( averages always get their voice spread worldwide! ) knows nothing and even mocks on things he has no clue about. The average man we talk about is stupid everywhere probably. He thinks he is the best, makes fun of things he doesn't understand ( at least that's better than a dog, who pisses on new things :) )-- and worst, proudly spreads his ignorance in loud words. So let's not take these things seriously. On the other side, I understand that americans may be bothered about this pseudo knowledge others claim to have about them. Surely what gets exported from their culture is not enough to give us a decent view about them, but some people don't realize this ( global communications, translations adapted to our tastes and common roots help that ). And then foreigners may end thinking they have twice as much culture as someone in the US: the american one and their own, simply from watching TV :). Besides that, you didn't come to my door and said "I'm Neil Bradley, take these tapes and learn about the americans". Business did it, you might not even know we watch the same programs, which were made for americans. Not your problem if they were sold worldwide and exhibited here, this doesn't mean you have to learn about us all in exchange. Apparently this is not the reasoning some adopt... We shouldn't care about mindless complaints, generalizations, etc. I'm just writing this all for the slight chance that it helps answering your questions. 2) We all know how knowledge and comprehension broadens our views. If some people have their attention limited to a country, they are restricting their own development. They fall into ignorance. If they think other countries can't be relevant ( they are arrogant ) and do that intentionally, they are dumb. So others with a broader view and maybe some hurt feelings will have a terrible opinion about them and no respect for their minds. This whole matter is illusory in all sides. First, nations can't isolate themselves. Some citizens can, but others will have an open mind and bring innovation and experience from wherever it lies. Second, we're both in the new world, our culture evolved from a recent mix of other ones, with a never-ending feedback system linking everything. This is obvious, there's no such thing as "the exclusive, original, better way" in general. The whole of humanity built the knowledge we have today. Probably everything one may claim as his achievement developed upon contributions from many civilizations through time. Besides that, many foreigners working in the US are directly responsible for key developments in science, technology, etc. So it's at least not very practical to suddenly close your eyes to what is done elsewhere. One more illusion: who said americans don't know that ? There may be some who don't but... you know, there are all kinds... so is the world. Personally I try to stay away from these matters. These generalizations, complaints, prejudices, etc. are not part of how I think, it's hard to talk about what you don't believe. I like to talk, like to get in touch with other cultures, but being the voice of the masses, ugh . Well, hope it helps. [ALERT: this post talked roughly about an abstract entity called the average man, who some suppose is an acceptable model for the crowds that populate modern societies. Nothing here is aimed at my fellow Dynareckers ( hope this is not an offensive word... )] Willian, from Brazil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 2 13:04:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA12014 for dynarec-outgoing; Sun, 2 Apr 2000 13:04:17 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 2 Apr 2000 13:04:17 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Soo.... In-Reply-To: <38E7A22F.1F9CD6F3@zaz.com.br> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > You know, TV is like Pandora's box, you don't have much control over > what they put there. Open at your own risk. But most people seem to rely > too much on it. Right. I've had quite a few foreigners (for lack of a better term) razz me for shit they see in ads and on TV. The average US citizen doesn't like 90% of the shows on TV anyway. > evolves. Maybe those people saying TV is a devil's thing are right :). > Now God sent the Internet ;). It has been said that a million monkeys pounding on typewriters will eventually write every literary work written. Now with the internet, we've proven that that's not the case. ;-) > > You lost me here - something in the translation, I guess. In my case I can > > remember when $50 meant whether or not I ate during that week. I'm nowhere > > near that now, but I do have quite a bit of respect for $$! > Sorry, I didn't make myself clear. New rich is not a term for anyone who > got money, but for people who think money is everything and whose sport > is spending money on expensive, shiny things. "In it for the money" - gotcha. I butt heads with people at work who just want to get their job done and the only reason they're doing programming at all is because it's a well paying job. These people do what little they have to. As I told my boss, I find them to be the most offensive people on the planet and are single-handedly screwing the industry. > Basically just concerned > with their position in their social group. They judge others based on > their house, electronic gadgets, the brand of the cars, clothes, parties > you go to, who you know, social columns on newspapers and tv, etc. Got Hey, I like toys, but I like toys because I like the toys - not because I want to impress someone. I want to impress *ME*! ;-) I can understand liking to have nice things, but just buying things for the sake of impressing others (I.E. people who own BMWs, which are nice cars, but aren't even close to worth it) are just lame. > the picture ? The sad thing is that they are arrogant, a quality that > comes with ignorance, surely. If something is not cool in their group, > then it's worth nothing. Aggressively incompetent is what I call them. > have no taste or "advanced" culture. But they usually have to welcome > them, specially when their bank accounts start not doing justice to > their "status/tradition" anymore. Comedians love to mock on these > stereotypes. Fortunately, though, the new rich are the first to get tanked if the economy goes sour. > > Funny, we think that the ads are aimed at dumb, ignorant, etc... We're > yes, ours too. Though now and then some pretty funny/smart ad comes out. Yep. And some that are riotous. > But I guess I made another confusion here: when I said commercial stuff, > I meant movies, series, cartoons, etc. with no quality, done with no > other intent but getting money from it. The industry of the million > clones... Oh, you mean like the US music industry? I also happen to be a musician and I find everything "popular" to be offensive. Britney Spears wouldn't have a record contract if she weighed 300 pounds. It's assembly line *CRAP* music. And funnily enough, it doesn't seem to permeate outside the US. I happen to love European music much much more than US music (which I absolutely abhor). > > most are just lame. Like is my life so fucking important that I need a > > calling plan, or that I should dail 10-10-220-800-collect so I can save a > > dollar or two? Bleugh. > :) Smaller tv stations here sometimes accept those old pseudo shows > where they try to prove some product will change your life... Once I saw > one, of a face cleaner cream or something (my english surely doesn't > help here), where a young adult guy was saying: "Now I have a future!", > just because he claimed the product got his face rid of a bunch of skin > eruptions. Sadly, though, people in every culture around the world tend to treat better looking people better. But I've known many a zit face who have gotten master's degrees and became wonderful contributors to society, so it's certainly not a disability! -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 2 14:11:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA12268 for dynarec-outgoing; Sun, 2 Apr 2000 14:11:24 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Delays... Date: Sun, 02 Apr 2000 16:19:33 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Sorry for the delayed replies but my SMTP host wasn't working again :-( I will have to look for a different provider since this really gets onto my nerves! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 2 14:11:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA12270 for dynarec-outgoing; Sun, 2 Apr 2000 14:11:24 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: DYNAREC: Buttonless Mouse from Microsoft Date: Sun, 02 Apr 2000 00:01:58 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Have you seen this one? ;-) http://www.avault.com/hardware/buttonless.asp Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 2 14:11:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA12280 for dynarec-outgoing; Sun, 2 Apr 2000 14:11:25 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars Date: Sun, 02 Apr 2000 16:28:23 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> That book was way too long, 500 pages for a story that could be told in >> 300 pages! It was also the reason why I didn't read Planet of Twilight >> be the same author yet. >Ahh, I forgot about that one, it was more of the same. Good that you told me then I don't have to read it myself... >The Wraith Squadron ones are pretty good, Booster Terrik has fun with a >star destroyer... Hehe, Booster is always fun, but how can he have fun with the Errant Venture with only 10 turbolaser batteries? >Hmm, I've seen this one around, guess it's time to pick it up =P Be warned that "I, Jedi" is in first person and everything is narrated from the view of Corran, but this book really has character development. >There are times when having the jedi kids outdoing everyone else at >everything gets excessive =P Yeah, tell me about it! >Amazingly enough I think Anderson was the editor for these =) Yes, but the good news is that he only wrote one tale per book! >I would definitely agree with you there. I'm betting that Lucas will >de-canonize this one =P I'm not sure. I think all stories are reviewed first, and Vector Prime is the start of a whole series. >> The New Rebellion: >Did not read this one. It isn't that bad but it isn't one of the better ones as well. I guess you won't miss much when you don't read it. >Hmm, Brooks did a fine job with those Elfstone books, looks like another >one to check out... You learn more about the Sith and why there are only two, which was the most interesting part, forgot to mark that page though... >Heh, the Marvel comics? The ones where Luke invariably scored a half dozen >chicks that all died horribly before the end? The ones that got >de-canonized? =) I mean those Sith comics set about 5000 to 4000 years before ANH. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 2 14:11:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA12287 for dynarec-outgoing; Sun, 2 Apr 2000 14:11:26 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Soo.... Date: Sun, 02 Apr 2000 16:51:53 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Those stoves haven't been made in at least 20 years. Controls are on the >front these days. The new one my sister has is much better I heard. >That's there to deter getting the crazies into the country. I surely don't >want any more wackos than we've already got. I asked my mother and she told me that she has to fill out such a form (mental diseases, ever kidnapped an American, etc) every time she visits(!) the US! When she once said that this procedure isn't too different from what you have to do to visit the GDR (German Democratic Republic) the guys at the customs almost got upset. But she knows both procedures well enough to notice such similarities. >Sure, but driving laws here are different than they are in Germany, and >that's all the driver's license/tests are really for - so you know them. >They do NOT teach you how to drive. In Germany you have two tests: theory and driving. >Automatics? Nah - they're about 50/50. I don't think the driving tests are >stringent enough. They ought to have emergency situations accounted for >(meaning actual testing of reaction of emergency situations) and spend a 6 >week course on how to handle your fucking vehicle. I guess what you mean is a special course in Germany, but I didn't do that one. I was in a special driving school where I had a few hours of driving practice every day and it still lasted for three weeks. The bad thing was that the postal service needed a whole week to deliver the official papers in my home town and therefore I had to do both tests on the same day, which certainly isn't normal. But I had zero errors in each one anyway ;-) >They'll give any moron >a driver's license around here. I much prefer Germany's approach. We still have enough morons on the streets, especially those in BMW and Mercedes who think they're the kings of the road. And a really like to see a speed limit for our highways. If it goes on the way it is now than our highways are just suicide. Most have only two tracks, the left one is crowded with trucks, mainly from Eastern Europe and most shouldn't be driving due to our technical standards, and on the left track you have to watch out for the crazy guys who drive full throttle and shoot ahead with 200kph! >Non-US citizens tend to think we don't know enough about other countries. >We ask "WTF are you spending so much time worrying about and studying us >for?" ;-) But seriously, we know lots about our own country. It just so >happens that the size of your entire country is the size of a few of our >states, so it's like a mini-grouping of countries. That's true, but we also have a larger population density. It was also a bit weird why the US Air Force had to practice their low flights over all our populated regions (they did - this isn't hear-say, I experienced that on my own!) when they have enough open spaces in America. >I don't think anyone does. Germans are made fun of a lot for some of the >more eccentric things (like sex fetish videos - why do they all seem to be >German?), but no one takes them seriously. Don't ask me! >You mean the revolutionary war? I didn't even know we had signs for >THOSE skirmishes. I'm not sure what you mean by "signs", either. Do you >mean like the confederate flag? Probably "sign" is the wrong word. I'm talkong about "signs" saying: on there was a skirmish here. That might be typical for the Eastern part of the US though. >We stopped fighting in our country over a hundred years ago, so there's no >call for new ones. ;-) Yeah, then the army started playing in other countries... I think the country which didn't have war for the longest period is Switzerland, and they even have the largest army of the world because everyone who has ever been in the army, that is every man at a certain age, is still part of the army. >I admit that a 1000 year old city is novel to any country that's only a >couple of hundred years old. But to *DISBELIEVE* it is entirely another >thing! Ok, then tell them that a wall was running through Berlin (Ok, they might know that), and that a large fence ran right through Germany and people were shot while trying to cross it. Most Americans will think you're just joking! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 2 14:51:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA12417 for dynarec-outgoing; Sun, 2 Apr 2000 14:51:45 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 2 Apr 2000 14:51:44 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > http://www.avault.com/hardware/buttonless.asp Looks like April fools to me. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 2 23:27:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA13451 for dynarec-outgoing; Sun, 2 Apr 2000 23:27:17 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004030630.IAA17550@pons.ac.upc.es> Subject: Re: DYNAREC: Star Wars In-Reply-To: from Michael Koenig at "Mar 31, 2000 02:48:28 pm" To: dynarec@synthcom.com Date: Mon, 3 Apr 2000 08:30:52 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-MIME-Autoconverted: from 8bit to quoted-printable by pons.ac.upc.es id IAA17550 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id XAA13447 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Much better than my Spanish! And compared to Pedro Almodovar your > English is perfect! ;-) > Hehehe, I think you are wrong, my spoken english is really worst :) If you heared Almodovar speaking then you know the tipical spanish english. > >> Daala helps Luke? Have I missed something?? > >Yes. I don´t remember in what book. I will search. What I remember > is that > >happens more than ten years later, Anakin > >(the son of Leia and Solo) is 6 or so years old. > > Either I forgot about that book or it's in one of those I haven't read > yet. In that time period (after the first appearance of Admiral Daala > in the Jedi Academy Trilogy) these are only "Planet of Twilight", "X- > Wing: Starfighters of Adumar", and the Junior and Young Jedi Knigth > books. > It's "Planet of Twilight" and Daala helps Han Solo to deal with some kind of enemy float. Books I surely I have readed: "The Truce of Bakura", Kathy Tyers "New Republic Trilogy", Timothy Zahn "Jedi Academy Trilogy", Kevin J. Anderson "The Crystal Star", Vonda McIntyre "The New Rebellion", Kristine Kathryn Rush Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 01:07:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA13668 for dynarec-outgoing; Mon, 3 Apr 2000 01:07:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004030810.KAA27760@pons.ac.upc.es> Subject: Re: DYNAREC: Soo.... In-Reply-To: from Neil Bradley at "Apr 2, 2000 01:04:17 pm" To: dynarec@synthcom.com Date: Mon, 3 Apr 2000 10:10:33 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com I think today I'm too sleeped to talk seriously ... I only know US by movies and TV so I really don't know nothing only the crap they send to us, so you can see what Spanish people think about US ... I agree with all has been saied this weekend, but I only have done a fast reading. I suppose in US there are all kind of people like here in Spain and all over the world. The only I can really disagree with US is its international policy but this is related mainly to politics and so and not to all the people living there. And in Spain I think people are a bit historical angry with the country who 'stole' our last outsea colonies :). The new empire crushing the old one. hehehe. It doesn't matter really, Spain empire was already dead at this time and I don't like imperialism. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 01:30:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA13749 for dynarec-outgoing; Mon, 3 Apr 2000 01:30:31 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E855EE.9A1A4716@eurocopter.de> Date: Mon, 03 Apr 2000 10:27:26 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Soo.... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Yeah, that is stupid. It's almost racist (disliking everyone from another > country). Except for the French, of course. ;-) Oh, there's no doubt about it. It's quite a racist country in that regard. All I can say is that I don't suffer from it. I detest racism in all its forms. Except when it's about the French. ;) > > Britain sees America as having a very poor education system. Because of > > this, most Americans are seen as being quite stupid. It doesn't help the > > That's certainly not true, but I think you know it. I can say, having been > through the US's public education system, that the grades K-12 aren't > worth a damn. The only time you really learn in school is when you go on > to college, whether it be a state university or a community college. My > math education is so screwed up because they put me in too high of a math > class to start with, realized their mistake, put me in too low of a math > class, and by the time I was a senior in high school, they had me at > sophomore level math. I graduated high school in the first 3 months of me > being a senior, and went directly to community college. I've heard that the state education in America is among the worst in the developed countries. There was apparently research done and a table drawn up of how all the countries performed. America was down at the bottom, though I don't think it was last. I'm not sure where Britain stood, but by the fact that fun is still made of America I assume it was higher. I believe it was either France or Germany that performed the best. Damn. :) I don't actually know the different levels of schooling in America. While I understand that Junior, Sophomore, Senior etc are different years, I don't know which is the first or which is the last. In Britain we just give a number for each year. Education starts at age 5 - in an Infant school - but this year is really for integration and isn't counted. We start counting at the age of six (called "Year 1") which goes on to "Year 2". You then leave Infant school and join the Junior school for 4 years - up to "Year 6". Secondary school finishes in "Year 11" and you are 16. You take your GCSEs at the end of this year and get your results in August. That's the end of compulsory education. After that you can either stay in High School (Secondary School) and do your "A" Levels - or go to College and do either "A" Levels or an equivalent - or (try and) get a job. That generally lasts for 2 years. You can then either try and get a job or go to University. The two main types of course are HND (a Diploma - lasts for 2 years), Degree (lasts for 2 years) or a degree with honours (three years). > > American cause when you have American tourists walking around in utter > > disbelief that any country has been around for more than 500 years and > > saying that everything is "quaint". > > As I said in my other email, having buildings that are 200 years old or > older is a novelty to us. To you it's just standard issue, but for US > citizens, we just don't have anything like that in the states! For me in particular, I live right by Chester which used to be an ancient Roman fortress - and the walls they built still exist. There's a wall that goes all the way around the city. In fact, Chester used to be the Roman capital of England. And we still have laws that date back hundreds of years. For instance, it is still legal to kill a Welshman in Chester with a longbow if you see him inside the city walls after midnight! And anyway, the word "quaint" is quite offensive to a lot of people. :) > > seems to be quite poor. You can elect lots of people to look after each > > state - but you have one senator who can be from another party who has > > enough power to overrule anything they want to do. Because of this it is > > seen that your political system just doesn't work very well. > > It works well enough to be the #1 military, economic, and cultural center > of the world. ;-) But what you're not seeing is that our senators are > elected in each state because of their mindset, and we're not often > disappointed. It actually does work quite well. You're the #1 economic center of the world. I don't know about cultural center or military - especially not military as your country has bombed it's own side in every war since WW2! ;) I also think I used the wrong word. I didn't mean "Senator" but Governor. I don't know the difference, but I think the Governor has less power. > > We also see America as being a very violent place. Everyone carries a gun > > with them and there are regular shootings. I don't agree with this > > That's total bullshit, and is further fueled by my major enemy - the > media. Since guns in schools are a hot topic, any time they have a > shooting, the media goes hog wild talking about "Violence in our schools" > and making a huge fucking deal about it. If anything, it just fuels more > copycats. I really, really hate the media. I write nastygrams to them on a > consistent basis. Yes, I hate the media too. Of course it's fueled by them. It's disgusting the way they act. I don't write to them - I just don't buy any newspapers because I don't want them to have any of my money. > > stereotype - though I do think that there are more shootings and killings > > (or the ratio is higher) than in Britain or any other country I know about. > > Either that or we just glorify it more often when it happens. I don't think so. There have been a couple of shootings in Britain - but these weren't by school children but by members of the public who had managed to get into the school. I don't know how easy it is to get a gun in the US but I know that it is really difficult in this country. You need to have a psycho-analysis, have talks with policemen and other tests and if you fail any, you won't get a licence to have a gun. And if you don't have a licence, you can't buy one. Well, at least you can't legally. > > Whatever, the American film industry definitely doesn't do you any favours > > here. > > And of course, the film industry is most often a joke, and doesn't reflect > real life. I've met a handful of Germans who think that everyone has > swimming pools in their mansions in the US because of reruns of crappy > soap operas like Knott's Landing. ;-) But then again, I don't think you'd > like Americans to view the English as a bunch of herion junkies (I.E. > Trainspotting - horrible fucking movie). ;-) Of course the film industry is a joke. I can watch it and know that everything is exaggerated, over-hyped and I don't get drawn in. I don't believe what I see. However, I can't say the same for everybody because I know it's not true. To a lot of people, what they see on TV is what they believe! Anyway, Trainspotting wasn't about the English - it was about the Scottish! ;) And if you believe the movies, there are no coloured people in Notting Hill and everyone speaks like Hugh Grant over here - like a big puff. :)) > > Americans also have quite a high opinion of themselves and think that every > > country that isn't America is nowhere near as good. You're like the French > > in that regard. ;) > > We do? It depends upon what you mean by "nowhere near as good". Good in > what way? If you mean economically, well, that can't be argued with > successfully. ;-) Our minimum standards for health are quite a bit higher > than other countries. I don't know in what way, I haven't heard of a single thing that Americans think is better! I agree that you have a good health system. However, it's also very expensive. Ours is still very good, but free. Well, sort of. Money gets taken out of your wages to pay for it, but it is also Government subsidised. >From what I've heard about food in America (first hand reports), it appears that there's no imagination. It appears that a lot of the food involves steak. And foreign food (such as Italian) isn't so great. However, I've also heard that the Pizzas you make in America are the nicest in the world. And food is cheap. :) > One thing I don't understand about a lot of foreign countries is why > everybody seems to smoke. Can't a country that has been around for > thousands of years, especially ones that know damn well what the > consequences of doing so are, change their culture to ban it in public > places? In this part of the US, you'll get ostracized if you light up a > cigarette. It's a filthy, smelly, stinky, unhealthy habit that should not > be allowed in public (in private it's OK), and should be treated as a > drug addiction. Yes, I agree here. Britain is at least getting better in that it's banning advertising of cigarette adverts and making sure that certain places are no smoking zones. Germany is definitely the worst place for this that I've seen so far. Lots of people smoke around here! > > I think the only other thing I can think of that people think about is that > > Americans don't generally know what is going on around the world. They know > > what is happening in their village, city and state - but not too much about > > anywhere else. This doesn't help them when they are seen as being not so > > bright. > > And as I mentioned in my prior emails, why exactly is this so important, > and why does that make US citizens look stupid? The reverse could be said: > Why are you so interested in everyone else's affairs? ;-) You seem like an intelligent person. Do you really think that what happens in another state or another country doesn't affect you at all? It obviously depends on what it is, but lots of important things affect other countries. > I have met very few that fit in the stereotypical view, actually. Then > again, I tend to hang around highly educated people. But I'd also say that > England isn't free of dipshits, either. You just value knowing the history > of your surrounding neighbors. It just so happens that our "surrounding > neighbors" span several thousand miles that we call "states". ;-) It has a > common history/ancestry. Certainly, Britain isn't free of dipshits and I wouldn't say that it is. In terms of trouble-makers, England and Germany are the worst in Europe (look at football games). It's just that while I'd say there are quite a lot of intelligent people in America, you certainly have a really unfair share of unintelligent. ;) Okay, you can blame that on South America if you want. :) Anyway, I wasn't saying that I agree with these views, I was just letting you know what they were. I've spoken to enough stupid Americans who knew nothing about anything but spoke as if they did (I'll give you that, Americans are not afraid to speak in public) which gives me a rather bad impression. But I still know some people, like yourself, who I'd certainly class as intelligent. It's a much lower ratio, though. And yes, there are thick people in Britain. I just stay away from them. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 02:01:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA13943 for dynarec-outgoing; Mon, 3 Apr 2000 02:01:08 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 3 Apr 2000 02:01:07 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Soo.... In-Reply-To: <38E855EE.9A1A4716@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Oh, there's no doubt about it. It's quite a racist country in that regard. > All I can say is that I don't suffer from it. I detest racism in all its > forms. Except when it's about the French. ;) Yeah, except it's not full blown racism. It's just merciless teasing! > > That's certainly not true, but I think you know it. I can say, having been > > through the US's public education system, that the grades K-12 aren't > > worth a damn. The only time you really learn in school is when you go on > I've heard that the state education in America is among the worst in the > developed countries. There was apparently research done and a table drawn > up of how all the countries performed. America was down at the bottom, > though I don't think it was last. I'm not sure where Britain stood, but by > the fact that fun is still made of America I assume it was higher. Since schools are state run (not federally run), the quality, depending upon where the school is located, can vary *WIDELY*. Growing up, they canned computer class so we could have a fucking football league. What a joke! But at the same time, there's a K-6 school across the street that is in part of the wealthiest part of Beaverton and is thusly heavily funded, meaning that all the best teachers, best programs, and best materials are available for the students. Go to north Portland where a lot of poor, lower class black families live, and their education system is shit. There are minimum standards that all schools must follow across the country (which aren't very high IMHO) - that's set and controlled at a federal level. But the states can do what they with with electives. > I believe it was either France or Germany that performed the best. Damn. :) I think the French need a humility class. ;-) > I don't actually know the different levels of schooling in America. While I > understand that Junior, Sophomore, Senior etc are different years, I don't > know which is the first or which is the last. In Britain we just give a Preschool - 0-5 years old Elementary school: Kindergarten - 5 years old Grade school: Grades 1-6 - 6-11 years old "Middle" or "Junior high" school: Grades 7-9 (or 7-8): High school or senior high: Freshman - Grade 9 Sophomore - Grade 10 Junior - Grade 11 Senior - Grade 12 So you're going to public school here (mandatory until grade 9) until you're 18. Grades 9-12 the student can drop out of. There are some rare cases where people drop out as low as 7th or 8th grade, but that's really an exception. After this you go to college - whether it be a community college (usually offering 2 year 'associates' degress) or a university (offering 4 year or 6 year degrees). Some handle doctorates as well - it depends upon the school. > for 2 years. You can then either try and get a job or go to University. The > two main types of course are HND (a Diploma - lasts for 2 years), Degree > (lasts for 2 years) or a degree with honours (three years). Hm... our bachelor's degrees last 4 years, so you'd be in school until you're 22! > goes all the way around the city. In fact, Chester used to be the Roman > capital of England. And we still have laws that date back hundreds of > years. For instance, it is still legal to kill a Welshman in Chester with a > longbow if you see him inside the city walls after midnight! I would guess that there are laws on the book that contradict it and prevent murder. ;-) Too bad there's no rule like that for the French! > And anyway, the word "quaint" is quite offensive to a lot of people. :) I consider it a "stylish" word that people use because they like the sound of it (rather than knowing what it means). It's certainly not in my vernacular. > > It works well enough to be the #1 military, economic, and cultural center > > of the world. ;-) But what you're not seeing is that our senators are > > elected in each state because of their mindset, and we're not often > > disappointed. It actually does work quite well. > You're the #1 economic center of the world. I don't know about cultural > center or military - especially not military as your country has bombed > it's own side in every war since WW2! ;) Well considering that the US is (unfortunately) emulated and envied in terms of culture around the world, it sure points to some strong evidence! And yep, we've bombed our own guys, but you and everyone else has, too. ;-) > I also think I used the wrong word. I didn't mean "Senator" but Governor. I > don't know the difference, but I think the Governor has less power. Aha - here's something about politics that I know that you don't! At least about US politics: Governor - Resides in the state and deals with the day to day runnings of state affairs. The most directly powerful person in a state. Senator - Resides in the senate in Washington DC at the federal level and lobbies/influences/votes for the state that they represent. They are actually peers with two separate jobs, though senators are looked more highly upon than Governors are. Both positions are elected offices by the people. > > > stereotype - though I do think that there are more shootings and killings > > > (or the ratio is higher) than in Britain or any other country I know about. > > Either that or we just glorify it more often when it happens. > I don't think so. There have been a couple of shootings in Britain - but > these weren't by school children but by members of the public who had > managed to get into the school. There've been 5 in the US in the past 2 years. Sounds like a lot more, right? Well how many times do you think a kid in Britain has brought a gun to school? When they do it in the states, it's national headlines. > I don't know how easy it is to get a gun in the US but I know that it is > really difficult in this country. You need to have a psycho-analysis, have It varies on a state by state basis, and it's in our constitution for the right to bear arms. Which means only the wackos go out and buy guns. There's a 5 day waiting period while they do a criminal check on you. If you have any assult charges or convictions, you don't get a gun. But a private party can sell a gun to anyone. And there's concealed weapons permits and other factors that allow you to carry a weapon at any time, but they're lots harder to get. > Anyway, Trainspotting wasn't about the English - it was about the Scottish! > ;) IT's tough for me to distinguish cockney and Scottish accents because I haven't heard them enough to REALLY know the difference. > And if you believe the movies, there are no coloured people in Notting Hill > and everyone speaks like Hugh Grant over here - like a big puff. :)) Except in the US, where politically correct activists now must place an obligatory black guy, Chinese guy, Indian guy, in every fucking scene of the movie even though you don't run into that in real life! > I agree that you have a good health system. However, it's also very > expensive. Yes it is, but that's what medical insurance is for. ;-) That's standard issue at any job you'll get in the states. > Ours is still very good, but free. Well, sort of. Money gets > taken out of your wages to pay for it, but it is also Government > subsidised. We call it "Medicade", where I'm forced to pay in to a huge pool of money to help pay for medical aid when I'm older. I don't have an option, and I'm pissed about it. > >From what I've heard about food in America (first hand reports), it appears > that there's no imagination. It appears that a lot of the food involves > steak. And foreign food (such as Italian) isn't so great. However, I've Steak? Really? I'd say that depends. In the midwest, it's much more prevalent. But in the western coast, it's far more diverse. Portland Oregon has the highest # of restaurants per capita in the *ENTIRE WORLD*. We have our share of boring restaurants, but there are a zillion others that are quite worthwhile! We have awesome German, Italian, Moroccan, Indian, Thai (ooooh, I love Thai food), etc... restaurants all over the city. > also heard that the Pizzas you make in America are the nicest in the world. I know of many places that are good, but tons that are absolute crap. Have a Domino's pizza sometime and it'll change that opinion quick! > And food is cheap. :) That's why we have so many fat asses here. > > One thing I don't understand about a lot of foreign countries is why > > everybody seems to smoke. Can't a country that has been around for > Yes, I agree here. Britain is at least getting better in that it's banning > advertising of cigarette adverts and making sure that certain places are no We banned cigarette advertising in billboards, TV, and radio ads over 30 years ago now. ;-) > smoking zones. Germany is definitely the worst place for this that I've > seen so far. Lots of people smoke around here! In California, not even bars allow smoking. In Oregon, almost no public restaurant allows smoking (in fact, I can't think of one offhand). It's filthy, disgusting, smelly, unheatlhy, and just a waste of money. > > And as I mentioned in my prior emails, why exactly is this so important, > > and why does that make US citizens look stupid? The reverse could be said: > > Why are you so interested in everyone else's affairs? ;-) > You seem like an intelligent person. Do you really think that what happens > in another state or another country doesn't affect you at all? It obviously > depends on what it is, but lots of important things affect other countries. Of course I do. But I don't particularly care what happens in Poland, but I certainly might care what happens in India or China! I think everything is a matter of degree. I know at a high level what's going on in other countries, as do most other US citizens. But I don't necessarily konw the names of the presidents, who they shagged last, or any of that other crap that the British (present company excluded) seem to love so much, like who Prince Charles is shagging. > > England isn't free of dipshits, either. You just value knowing the history > > of your surrounding neighbors. It just so happens that our "surrounding > > neighbors" span several thousand miles that we call "states". ;-) It has a > > common history/ancestry. > Certainly, Britain isn't free of dipshits and I wouldn't say that it is. In > terms of trouble-makers, England and Germany are the worst in Europe (look > at football games). It's just that while I'd say there are quite a lot of > intelligent people in America, you certainly have a really unfair share of > unintelligent. ;) I think that's a lopsided view. We've got a LOT of smart people in the US - some so intelligent that it scares the shit out of me. They tend to congregate in cities, though. > Okay, you can blame that on South America if you want. :) That's an ENTIRELY different world! > Anyway, I wasn't saying that I agree with these views, I was just letting > you know what they were. I've spoken to enough stupid Americans who knew > nothing about anything but spoke as if they did (I'll give you that, Yep, and they're just embarassing, lamebrained idiots. Tourists tend to be pretty clueless, because the smart ones are working all the time. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 03:04:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA14104 for dynarec-outgoing; Mon, 3 Apr 2000 03:04:01 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E86C2C.D9DB801B@eurocopter.de> Date: Mon, 03 Apr 2000 12:02:20 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Soo.... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Yeah, except it's not full blown racism. It's just merciless teasing! Ooh, I don't know... ;) > Since schools are state run (not federally run), the quality, depending > upon where the school is located, can vary *WIDELY*. Growing up, they > canned computer class so we could have a fucking football league. What a > joke! Whaaaat?! I'd be terribly pissed off at that. Luckily that never happened to me! > But at the same time, there's a K-6 school across the street that is in > part of the wealthiest part of Beaverton and is thusly heavily funded, > meaning that all the best teachers, best programs, and best materials are > available for the students. Go to north Portland where a lot of poor, > lower class black families live, and their education system is shit. Ah, right. Well, although we have privately funded schools, the majority of schools are funded by the state. The way they do that is per student so a big school has more money - but generally has less in the end because they need more teachers etc. > There are minimum standards that all schools must follow across the > country (which aren't very high IMHO) - that's set and controlled at a > federal level. But the states can do what they with with electives. It's pretty much the same here. > > I believe it was either France or Germany that performed the best. Damn. :) > > I think the French need a humility class. ;-) Indeed. I'm teaching them 1 by 1. ;) > High school or senior high: > > Freshman - Grade 9 So you're 14 when you're a Freshman? > So you're going to public school here (mandatory until grade 9) until > you're 18. Grades 9-12 the student can drop out of. There are some rare > cases where people drop out as low as 7th or 8th grade, but that's really > an exception. So you obviously aren't 14 when you're a Freshman. Hmm. :o > After this you go to college - whether it be a community college (usually > offering 2 year 'associates' degress) or a university (offering 4 year or > 6 year degrees). Some handle doctorates as well - it depends upon the > school. Of course, you can do doctorates here. But you have to go to a University to do one. > Hm... our bachelor's degrees last 4 years, so you'd be in school until > you're 22! I will be anyway! I already have letters after my name (with my 2 year Diploma) and I'm taking a degree at the moment. I'd like to take a MSc (Masters Degree) or PhD (Doctorate) but I won't - at 22 I believe I've been in the education system for too long. I'd rather go out and actually work. Hopefully doing something I enjoy! > > goes all the way around the city. In fact, Chester used to be the Roman > > capital of England. And we still have laws that date back hundreds of > > years. For instance, it is still legal to kill a Welshman in Chester with a > > longbow if you see him inside the city walls after midnight! > > I would guess that there are laws on the book that contradict it and > prevent murder. ;-) Too bad there's no rule like that for the French! No. The way that the legal system in the UK works is by precedent. So a judge passes a sentence on someone and that becomes law. The only way that can be changed is in a court of appeal (or any other higher court). While it may sound strange, it still works. BTW, did you know that people can still be hung in this country? No-one has been since 1969, but it's still possible. All you have to do is commit treason (an act against the Queen). And seeing as the Royal Mail is... well, Royal, all you have to do is to steal a letter and it's treason. So you could get hung for it. Strange but true! > > And anyway, the word "quaint" is quite offensive to a lot of people. :) > > I consider it a "stylish" word that people use because they like the sound > of it (rather than knowing what it means). It's certainly not in my > vernacular. It's in mine, but I wouldn't use it. I know what the word means, so I'd consider it offensive too! Luckily I haven't heard an American say it to me. :) > > You're the #1 economic center of the world. I don't know about cultural > > center or military - especially not military as your country has bombed > > it's own side in every war since WW2! ;) > > Well considering that the US is (unfortunately) emulated and envied in > terms of culture around the world, it sure points to some strong evidence! > And yep, we've bombed our own guys, but you and everyone else has, too. > ;-) I really don't know what you mean about culture - that's the first time I've heard that ever! AFAIK America isn't envied for culture. And also, AFAIK, America envies Europe for exactly the same! And as for the military, yes - we've bombed our own side too. It's just that we've had wars where we haven't. Which is more than you. ;) > > I also think I used the wrong word. I didn't mean "Senator" but Governor. I > > don't know the difference, but I think the Governor has less power. > > Aha - here's something about politics that I know that you don't! At least > about US politics: > > Governor - Resides in the state and deals with the day to day runnings of > state affairs. The most directly powerful person in a state. > > Senator - Resides in the senate in Washington DC at the federal level and > lobbies/influences/votes for the state that they represent. > > They are actually peers with two separate jobs, though senators are looked > more highly upon than Governors are. Both positions are elected offices by > the people. That's the one - it's definitely a Governor that I meant. It's just remembering - your legal and political systems work a whole lot differently than the one I'm used to. > > I don't think so. There have been a couple of shootings in Britain - but > > these weren't by school children but by members of the public who had > > managed to get into the school. > > There've been 5 in the US in the past 2 years. Sounds like a lot more, > right? Well how many times do you think a kid in Britain has brought a gun > to school? When they do it in the states, it's national headlines. I know children have brought air-rifles into school - but I don't know of any who brought in a pistol or any other type of handgun. 5 in 2 years is too many, but how can you stop it? I know there hasn't been that many in Britain - at least not by children. The horrific one was in Dublain where a man came in and shot lots of children and teachers. That was about 2 years ago now. I'd be more concerned about how to stop things like this happening than exaggerating the whole story and printing a load of meaningless drivel. > > I don't know how easy it is to get a gun in the US but I know that it is > > really difficult in this country. You need to have a psycho-analysis, have > > It varies on a state by state basis, and it's in our constitution for the > right to bear arms. Which means only the wackos go out and buy guns. Yes, I figured that. I know it's in your constitution. Maybe it should be changed, but it'd be a brave government that tried to do it (I know why it's in the constitution). But, at the end of the day, the constitution was written for that time and maybe it should be changed. But even if that happens, will it stop? Probably not. > There's a 5 day waiting period while they do a criminal check on you. If > you have any assult charges or convictions, you don't get a gun. But a > private party can sell a gun to anyone. Hmm, not sure that's a great idea. > And there's concealed weapons permits and other factors that allow you to > carry a weapon at any time, but they're lots harder to get. It's still scary. Easy access to weapons like that. Not good. :-/ > > Anyway, Trainspotting wasn't about the English - it was about the Scottish! > > ;) > > IT's tough for me to distinguish cockney and Scottish accents because I > haven't heard them enough to REALLY know the difference. I understand. I can tell the difference between North, Mid and Southern America accents - but if there are accents on a state-to-state (or even inter-state) basis then I don't think I could. I could tell you were American though. ;) In Britain I'm quite good with accents. I can place people to within 50 miles of their home town in England - there are so many accents. Although it does get difficult with Scottish, Irish and Welsh accents. I can then only place them to the quarter of that country (NE, NW, SE, SW, N, S, E, W). And some Irish accents I just can't understand too well. And considering I've lived with 3 Irish guys for 9 months, that's bad! I'm sure you could tell the difference between Scottish and Cockney accents if you heard two people from Scotland and London talking. You might not know which is which, but you could tell the difference! > > And if you believe the movies, there are no coloured people in Notting Hill > > and everyone speaks like Hugh Grant over here - like a big puff. :)) > > Except in the US, where politically correct activists now must place an > obligatory black guy, Chinese guy, Indian guy, in every fucking scene of > the movie even though you don't run into that in real life! Political correctness tried to make its way over to Britain, but died a sudden death. > > I agree that you have a good health system. However, it's also very > > expensive. > > Yes it is, but that's what medical insurance is for. ;-) That's standard > issue at any job you'll get in the states. You can have medical insurance here for private healthcare. But that's not a normal package you get with your job. > > Ours is still very good, but free. Well, sort of. Money gets > > taken out of your wages to pay for it, but it is also Government > > subsidised. > > We call it "Medicade", where I'm forced to pay in to a huge pool of money > to help pay for medical aid when I'm older. I don't have an option, and > I'm pissed about it. What's the state with pensions over there? Up until last year, everyone used to have a state pension (some money would go out of your wages) - but anyone who starts up now will have to have a private pension. > Steak? Really? I'd say that depends. In the midwest, it's much more > prevalent. But in the western coast, it's far more diverse. Portland > Oregon has the highest # of restaurants per capita in the *ENTIRE WORLD*. > We have our share of boring restaurants, but there are a zillion others > that are quite worthwhile! We have awesome German, Italian, Moroccan, > Indian, Thai (ooooh, I love Thai food), etc... restaurants all over the > city. You have German restaurants? What do they serve? I cannot, for the life of me, find a German restaurant *anywhere*! I can find German-owned restaurants, but the food they cook is no different to any other restaurant! One of the French guys I share a house with is of Moroccon descent (his parents are Moroccon). I've tasted Moroccon food when he's cooked some and it's quite nice. Fairly hot too. Suits me down to the ground. I love Thai food a lot - and Indian food is the most popular in Britain. In fact, the #1 meal to have in Britain is "Chicken Tikka Masalla" - which was even *invented* in Britain and sent back to India! So, yes, I like Indian food too. And I like spices. It generally doesn't matter how spicy the food is, I'll eat it and enjoy it. :) > > also heard that the Pizzas you make in America are the nicest in the world. > > I know of many places that are good, but tons that are absolute crap. Have > a Domino's pizza sometime and it'll change that opinion quick! I've never been to America (hope to change that this year), but people who have tell me that the Pizzas are the best they've ever had. I like Pizza, so I'll have to do some research! :) > > And food is cheap. :) > > That's why we have so many fat asses here. Oh yeah, that's the other thing that we see about America. Everyone is fat. Now I know that's not true - but that's certainly the image we have. Or, let's change that. Every woman under 35 is really thin and attractive. Over that and they're fat and unattractive. You can thank the film industry for that, probably... > > Yes, I agree here. Britain is at least getting better in that it's banning > > advertising of cigarette adverts and making sure that certain places are no > > We banned cigarette advertising in billboards, TV, and radio ads over 30 > years ago now. ;-) I think it was about 1 year ago for Britain. Still, so long as it gets done... > > smoking zones. Germany is definitely the worst place for this that I've > > seen so far. Lots of people smoke around here! > > In California, not even bars allow smoking. In Oregon, almost no public > restaurant allows smoking (in fact, I can't think of one offhand). It's > filthy, disgusting, smelly, unheatlhy, and just a waste of money. I agree. I hate it, myself. I take it you live in Oregon? > > You seem like an intelligent person. Do you really think that what happens > > in another state or another country doesn't affect you at all? It obviously > > depends on what it is, but lots of important things affect other countries. > > Of course I do. But I don't particularly care what happens in Poland, but > I certainly might care what happens in India or China! I think everything > is a matter of degree. I know at a high level what's going on in other > countries, as do most other US citizens. But I don't necessarily konw the > names of the presidents, who they shagged last, or any of that other crap > that the British (present company excluded) seem to love so much, like who > Prince Charles is shagging. I don't particularly care what happens in Poland either. I agree that it's on a matter of degree - but let's give you an example. Last year was the big forest fires in California. Spoke to some Americans who didn't even know about it. The annoying thing is that the media think that we care who Bill Clinton has been shagging last, where he did it and what position he used. I don't care. :) Nor do I care about Prince Charles - or any other member of the Royal family for that matter. So yes, I'll probably get hung now. :) > I think that's a lopsided view. We've got a LOT of smart people in the US > - some so intelligent that it scares the shit out of me. They tend to > congregate in cities, though. Guess they're too intelligent to talk to me then. :) > > Okay, you can blame that on South America if you want. :) > > That's an ENTIRELY different world! Heh. ;) > > Anyway, I wasn't saying that I agree with these views, I was just letting > > you know what they were. I've spoken to enough stupid Americans who knew > > nothing about anything but spoke as if they did (I'll give you that, > > Yep, and they're just embarassing, lamebrained idiots. Tourists tend to be > pretty clueless, because the smart ones are working all the time. ;-) Yes, that's pretty true. And tourists don't try and learn the local ways of life or languages for the most part when they're British or American. That's quite bad. Both have a bad reputation because of this. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 04:11:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA14226 for dynarec-outgoing; Mon, 3 Apr 2000 04:11:43 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft Date: Mon, 03 Apr 2000 03:43:54 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> http://www.avault.com/hardware/buttonless.asp >Looks like April fools to me. Yeah, sure. I actually wanted to send the mail on April 1st but that damn SMTP didn't let me. But it seems you figured it out anyway ;-) Has anyone found other April fools? This was the only one I stumbled across on the web. Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 04:20:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA14254 for dynarec-outgoing; Mon, 3 Apr 2000 04:20:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars Date: Mon, 03 Apr 2000 13:21:26 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Hehehe, I think you are wrong, my spoken english is really worst :) >If you heared Almodovar speaking then you know the tipical spanish english. Billy Crystals commentary was: Against Pedro Roberto Bergnini sounds like an English teacher... >It's "Planet of Twilight" and Daala helps Han Solo to deal with some kind of enemy >float. Maybe I have to read that then... Thanks for checking it! Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 06:41:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA14549 for dynarec-outgoing; Mon, 3 Apr 2000 06:41:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E89F57.B94EA023@eurocopter.de> Date: Mon, 03 Apr 2000 15:40:39 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Looks like April fools to me. > > Yeah, sure. I actually wanted to send the mail on April 1st but that > damn SMTP didn't let me. But it seems you figured it out anyway ;-) It was the "Oompah-Loompah" bit that gave it away to me. That and the buttonless bit. :) > Has anyone found other April fools? This was the only one I stumbled > across on the web. Found one about a new hoverboard (as in Back to the Future 2). There were a few. Funnily enough, one guy did an April Fool, upset a load of people and has now quit one site. I find that amusing anyway. If you're going to play a joke, be prepared for a backlash off people who have no sense of humour! :) I was going to do one on my site, but I could only think of cruel ones - so I didn't bother. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 07:08:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA14619 for dynarec-outgoing; Mon, 3 Apr 2000 07:08:08 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft Date: Mon, 03 Apr 2000 16:02:43 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >It was the "Oompah-Loompah" bit that gave it away to me. That and the >buttonless bit. :) Well, I couldn't believe the buttonlessbit too, but the fake was revealed when they claimed that their frag count in Q3A increased by 50% ;-) I didn't know what Oompah-Loompah are anyway... >Found one about a new hoverboard (as in Back to the Future 2). There were a >few. Seems I'm visiting the wrong sites... >Funnily enough, one guy did an April Fool, upset a load of people and >has now quit one site. I find that amusing anyway. If you're going to play >a joke, be prepared for a backlash off people who have no sense of humour! >:) Yeah, too bad. >I was going to do one on my site, but I could only think of cruel ones - so >I didn't bother. :) You even have your own site? Anything interesting? Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 07:22:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA14652 for dynarec-outgoing; Mon, 3 Apr 2000 07:22:24 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E8A8A9.D311AA3D@eurocopter.de> Date: Mon, 03 Apr 2000 16:20:25 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >It was the "Oompah-Loompah" bit that gave it away to me. That and the > >buttonless bit. :) > > Well, I couldn't believe the buttonlessbit too, but the fake was > revealed when they claimed that their frag count in Q3A increased by > 50% ;-) That's possible - if they're badly arthritic or just have general hand problems. For a normal person, though, I'd agree. :) > I didn't know what Oompah-Loompah are anyway... Ooh. There's a famous British childrens author called "Rhoal Dahl" (I think that's how you spell his name) who wrote "Charlie and the chocolate factory". The Oompah-Loohmpahs are small people who used to work in the factory from the book. Ooh, that brings back memories. I used to have all of his books. Other books by him are "James and the giant peach" and "Danny the champion of the world". Oh yes, he also wrote "Matilda". Definite memory material there. I haven't read those books since I was 11 or under! :o > >Found one about a new hoverboard (as in Back to the Future 2). There > were a > >few. > > Seems I'm visiting the wrong sites... The link is still on RetroGames (http://www.retrogames.com). > >Funnily enough, one guy did an April Fool, upset a load of people and > >has now quit one site. I find that amusing anyway. If you're going to > play > >a joke, be prepared for a backlash off people who have no sense of > humour! > >:) > > Yeah, too bad. I don't know what the joke was either. Damn! They've deleted it! :o > >I was going to do one on my site, but I could only think of cruel ones > - so > >I didn't bother. :) > > You even have your own site? Anything interesting? That depends on whether you have a S3 card. I'm one of the authors of S3Tweak and the website I work on is "S3 Planet" (http://www.s3p.co.uk). It's because of this that I know so much (or little!) about 3D and 3D cards. Apart from the site being the longest running (and the first!) S3 customer support site, we're all completely unbiased. That's why S3 don't talk to us that much anymore. :)) Still, we write S3Tweak, so they can't complain. And if we do... well, there'd be a whole load of p*ssed off people. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 08:22:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA14830 for dynarec-outgoing; Mon, 3 Apr 2000 08:22:26 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft Date: Mon, 03 Apr 2000 17:24:29 CEST From: "Michael Koenig" MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: BeOS Mail [R4.5.2] Message-Id: Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Ooh. There's a famous British childrens author called "Rhoal Dahl" (I think >that's how you spell his name) who wrote "Charlie and the chocolate >factory". The Oompah-Loohmpahs are small people who used to work in the >factory from the book. Ah, I think you mean Roald Dahl and he also wrote books like "Kiss Kiss" which surely aren't for children. Only few people know that he also created the Gremlins for his novel "Some Time Never". I always tried to get this book but without any luck :-( >Ooh, that brings back memories. I used to have all of his books. Other >books by him are "James and the giant peach" and "Danny the champion of the >world". Oh yes, he also wrote "Matilda". Definite memory material there. I >haven't read those books since I was 11 or under! :o One of the best German children book authors is Otfried Preussler. He wrote books like Hotzenplotz, The Little Witch, or Krabat. >That depends on whether you have a S3 card. Nope. >I'm one of the authors of >S3Tweak and the website I work on is "S3 Planet" (http:// www.s3p.co.uk). >It's because of this that I know so much (or little!) about 3D and 3D >cards. Ah, this explains some things. >Apart from the site being the longest running (and the first!) S3 >customer support site, we're all completely unbiased. That's why S3 don't >talk to us that much anymore. :)) >Still, we write S3Tweak, so they can't complain. And if we do... well, >there'd be a whole load of p*ssed off people. :) Hehe ;-) BTW, which chipset does your card have? Since BeOS 5 supports the following: S3 Virge, Virge DX, and Virge GX (but not VX or HX) Bye, M.I.K.e --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 08:40:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA14877 for dynarec-outgoing; Mon, 3 Apr 2000 08:40:10 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E8BA93.EAFD0D24@eurocopter.de> Date: Mon, 03 Apr 2000 17:36:51 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Ah, I think you mean Roald Dahl and he also wrote books like "Kiss > Kiss" which surely aren't for children. Only few people know that he > also created the Gremlins for his novel "Some Time Never". I always > tried to get this book but without any luck :-( Roald Dahl, that's the one. I knew how to SAY the name, just not how to spell it. :) I've never heard of "Kiss Kiss" (should I?) nor "Some Time Never". Heh. :) > One of the best German children book authors is Otfried Preussler. He > wrote books like Hotzenplotz, The Little Witch, or Krabat. "The Little Witch" I've heard of - assuming it was translated. Otherwise... no. > >That depends on whether you have a S3 card. > > Nope. That's probably a good thing! ;) > >It's because of this that I know so much (or little!) about 3D and 3D > >cards. > > Ah, this explains some things. I'm one of the few people running any sort of 3D card site who actually: a) Knows about 3D and 3D techniques and b) Is willing to criticize the company the site is about and c) Knows a fair bit about other cards :) > >Still, we write S3Tweak, so they can't complain. And if we do... well, > >there'd be a whole load of p*ssed off people. :) > > Hehe ;-) It's not quite blackmail. But if they insist of having crap support... > BTW, which chipset does your card have? Since BeOS 5 supports the > following: > S3 Virge, Virge DX, and Virge GX (but not VX or HX) My card at the moment is a Savage2K. So it isn't supported. Arse. But I do have a ViRGE /DX - and a Savage3D (several, in fact). And a Savage4 (several of those too!). I'm willing to get a GeForce - but as I see it, their support isn't particularly better. They've still got driver problems. At least for the S2K S3 have an excuse (it's a new chip with a new design). The Savage4 they had no excuse for - it was basically a Savage3D with some hardware bugs removed, some added for good measure - and a strange form of multi-texturing. 3Dfx are probably the worst for support, actually. I mean... how long did it take them to get an ICD? And, AFAIK, they still haven't got a full ICD. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 10:27:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA15176 for dynarec-outgoing; Mon, 3 Apr 2000 10:27:53 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Buttonless Mouse from Microsoft From: Michael Koenig In-Reply-To: <38E8BA93.EAFD0D24@eurocopter.de> Message-Id: <0003645eb63ca785_mailit@mailhub.rrze.uni-erlangen.de> References: <38E8BA93.EAFD0D24@eurocopter.de> Date: Mon, 03 Apr 2000 19:27:57 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Roald Dahl, that's the one. I knew how to SAY the name, just not how to >spell it. :) BTW, I just found out that he was born in Wales ;-) >I've never heard of "Kiss Kiss" (should I?) nor "Some Time Never". Heh. :) "Kiss Kiss" and some other books contain lots of strange short strories similar to Poe or Kafka but a lot funnier. In one story (but not from Kiss Kiss) a wife kills her husband with a frozen lamb leg. Until the police arrives she cocks it and they end up eating the "weapon" ;-) >"The Little Witch" I've heard of - assuming it was translated. Otherwise... >no. Some of Otfried Preussler's books were translated into several languages. >> >That depends on whether you have a S3 card. >> Nope. >That's probably a good thing! ;) Hehe. Are they that bad? >I'm one of the few people running any sort of 3D card site who actually: >a) Knows about 3D and 3D techniques and >b) Is willing to criticize the company the site is about and >c) Knows a fair bit about other cards I certainly cannot claim that for myself. >My card at the moment is a Savage2K. So it isn't supported. Arse. But I do >have a ViRGE /DX - and a Savage3D (several, in fact). And a Savage4 >(several of those too!). Erm, do you have several cards in your computers or are these just spare ones? >I'm willing to get a GeForce - but as I see it, their support isn't >particularly better. They've still got driver problems. And no diver for BeOS yet... >3Dfx are probably the worst for support, actually. I mean... how long did >it take them to get an ICD? And, AFAIK, they still haven't got a full ICD. ICD? Yet another acronym I don't know? -- M.I.Ke First Law of Bicycling: No matter which way you ride, it's uphill and against the wind. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 10:33:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA15204 for dynarec-outgoing; Mon, 3 Apr 2000 10:33:05 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 3 Apr 2000 10:33:04 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: Those wacky Germans Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Will men in German town take toilet order sitting down? March 31, 2000 Web posted at: 10:58 p.m. EST (0358 GMT) BERLIN (Reuters) -- Germany's reputation for precision has taken a knock, judging by a ban on urinating while standing that has been imposed on tenants in an east German apartment block, the daily Bild reported Friday. Landlords, complaining that misdirected urine is causing their radiators to rust, ordered male tenants to answer the call of nature off their feet. But men in the town of Radeburg are not taking the the ban ban sitting down. "I'm not going to let anybody tell me how I take care of business. I'm going to carry on standing. Basta!" said local cemetery worker Juergen Galler. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 10:56:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA15287 for dynarec-outgoing; Mon, 3 Apr 2000 10:56:54 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Those wacky Germans From: Michael Koenig In-Reply-To: Message-Id: <0003645f17e2b795_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Mon, 03 Apr 2000 19:55:15 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Will men in German town take toilet order sitting down? I won't!!! Damn females, they are just jealous! -- M.I.Ke Ducharme's Axiom: If you view your problem closely enough you will recognize yourself as part of the problem. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 14:27:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA16133 for dynarec-outgoing; Mon, 3 Apr 2000 14:27:27 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <00a601bf9dbb$8bf38220$0100a8c0@lion> From: "Neil Griffiths" To: References: <0003645f17e2b795_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Those wacky Germans Date: Mon, 3 Apr 2000 23:00:00 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Will men in German town take toilet order sitting down? > > I won't!!! Nor me. Hey, I'm not German. Whew! ;) > Damn females, they are just jealous! Yeah. They just want to be able to write their names in the snow too. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 14:27:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA16137 for dynarec-outgoing; Mon, 3 Apr 2000 14:27:28 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <00a501bf9dbb$8af01be0$0100a8c0@lion> From: "Neil Griffiths" To: References: <38E8BA93.EAFD0D24@eurocopter.de> <0003645eb63ca785_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Buttonless Mouse from Microsoft Date: Mon, 3 Apr 2000 22:58:30 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Roald Dahl, that's the one. I knew how to SAY the name, just not how to > >spell it. :) > > BTW, I just found out that he was born in Wales ;-) Really? I never knew that. I wonder if he speaks Welsh? It'd be quite funny if he didn't. Him being born in Wales and not speaking it - and me NOT being born in Wales but being able to speak it! :) > >I've never heard of "Kiss Kiss" (should I?) nor "Some Time Never". Heh. :) > > "Kiss Kiss" and some other books contain lots of strange short strories > similar to Poe or Kafka but a lot funnier. In one story (but not from Kiss > Kiss) a wife kills her husband with a frozen lamb leg. Until the police > arrives she cocks it and they end up eating the "weapon" ;-) Heh. Nope, not heard of them before! > >"The Little Witch" I've heard of - assuming it was translated. Otherwise... > >no. > > Some of Otfried Preussler's books were translated into several languages. Okay. Well I guess I've read a book by a German author now. Damn. And I was trying to avoid it... ;) > >> >That depends on whether you have a S3 card. > >> Nope. > >That's probably a good thing! ;) > > Hehe. Are they that bad? No, not really. But I do like to tease. :) > >I'm one of the few people running any sort of 3D card site who actually: > >a) Knows about 3D and 3D techniques and > >b) Is willing to criticize the company the site is about and > >c) Knows a fair bit about other cards > > I certainly cannot claim that for myself. I have to. If only so that I can compare to other cards. There are not many other website owners that I can respect for the same thing... There are a few - just not so many. :-/ > >My card at the moment is a Savage2K. So it isn't supported. Arse. But I do > >have a ViRGE /DX - and a Savage3D (several, in fact). And a Savage4 > >(several of those too!). > > Erm, do you have several cards in your computers or are these just spare > ones? Spare. I'll probably have two in my machine when I go home, though. Mainly because I can then dual-monitor. Which has got to make programming so much easier. :) > >I'm willing to get a GeForce - but as I see it, their support isn't > >particularly better. They've still got driver problems. > > And no diver for BeOS yet... No, but that's up to the Be team to implement. nVidea certainly aren't going to do it themselves - not enough demand. > >3Dfx are probably the worst for support, actually. I mean... how long did > >it take them to get an ICD? And, AFAIK, they still haven't got a full ICD. > > ICD? Yet another acronym I don't know? Installable Client Driver. It's a full OpenGL implementation. Anything less is a MiniGL. The other word you may have heard of is MCD - Microsoft Client Driver. I bet you can guess what that is. ;) > First Law of Bicycling: > No matter which way you ride, it's uphill and against the > wind. I completely agree. That - and car drivers are complete bastards when you're riding a bike. :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 14:30:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA16165 for dynarec-outgoing; Mon, 3 Apr 2000 14:30:53 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 3 Apr 2000 14:30:52 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft In-Reply-To: <00a501bf9dbb$8af01be0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > >> >That depends on whether you have a S3 card. > > >> Nope. > > >That's probably a good thing! ;) > > Hehe. Are they that bad? > No, not really. But I do like to tease. :) Actually, yes, they are. > > >My card at the moment is a Savage2K. So it isn't supported. Arse. But I > > >have a ViRGE /DX - and a Savage3D (several, in fact). And a Savage4 > > >(several of those too!). > > Erm, do you have several cards in your computers or are these just spare > > ones? > Spare. I'll probably have two in my machine when I go home, though. Mainly > because I can then dual-monitor. Which has got to make programming so much > easier. :) I've got two 770 Ultras in my Windows 2K box and I run dual monitors. I can't live without it now. > No, but that's up to the Be team to implement. nVidea certainly aren't going > to do it themselves - not enough demand. Nvidia, actually. ;-) > > First Law of Bicycling: > > No matter which way you ride, it's uphill and against the > > wind. > I completely agree. That - and car drivers are complete bastards when you're > riding a bike. :-/ Being someone who was both a cyclist and a motorist in downtown Portland, I can say that the assholedom is far worse with bicyclists - at least in Portland. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 14:37:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA16200 for dynarec-outgoing; Mon, 3 Apr 2000 14:37:16 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <00ba01bf9dbc$ea6a22e0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Buttonless Mouse from Microsoft Date: Mon, 3 Apr 2000 23:35:25 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > > Hehe. Are they that bad? > > No, not really. But I do like to tease. :) > > Actually, yes, they are. After having one for 5 years and also using a TNT for some time, I can say that I prefer S3. I had much more problems with the TNT when I had it. > > Spare. I'll probably have two in my machine when I go home, though. Mainly > > because I can then dual-monitor. Which has got to make programming so much > > easier. :) > > I've got two 770 Ultras in my Windows 2K box and I run dual monitors. I > can't live without it now. As I say, it's got to be useful. I can think of so many good things to implement with it! > > No, but that's up to the Be team to implement. nVidea certainly aren't going > > to do it themselves - not enough demand. > > Nvidia, actually. ;-) Really? Strange. :) > > I completely agree. That - and car drivers are complete bastards when you're > > riding a bike. :-/ > > Being someone who was both a cyclist and a motorist in downtown Portland, > I can say that the assholedom is far worse with bicyclists - at least in > Portland. I take it you've never been knocked off your bike by a motorist on the wrong side of the road then? And then when they see you lying in a pool of blood with half your face ripped open they drive off? Never happened to you? Well, it has to me. So I have a rather low opinion of car drivers. Especially when they drive on MY side of the road at ridiculous speeds. And to drive off after hitting me... That's the epitomy of arseholeness. All I can say is that it's a good job my face healed so well. I'm still scarred under my eye though... :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 14:43:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA16232 for dynarec-outgoing; Mon, 3 Apr 2000 14:43:50 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft Date: Mon, 03 Apr 2000 17:47:32 -0400 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: <00ba01bf9dbc$ea6a22e0$0100a8c0@lion> In-Reply-To: <00ba01bf9dbc$ea6a22e0$0100a8c0@lion> X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Mon, 3 Apr 2000 23:35:25 +0100, "Neil Griffiths" wrote: >> Being someone who was both a cyclist and a motorist in downtown Portland, >> I can say that the assholedom is far worse with bicyclists - at least in >> Portland. > >I take it you've never been knocked off your bike by a motorist on the wrong >side of the road then? And then when they see you lying in a pool of blood >with half your face ripped open they drive off? Never happened to you? Well, >it has to me. So I have a rather low opinion of car drivers. Especially when >they drive on MY side of the road at ridiculous speeds. And to drive off >after hitting me... That's the epitomy of arseholeness. All I can say is >that it's a good job my face healed so well. I'm still scarred under my eye >though... :-/ That's a pretty serious offense here in the US. "Leaving the scene of an accident" or "hit and run" depending on the seriousness of the accident. Add to that "crossing a double yellow line" (we use double yellow lines in the center/centre of our roadways). Did they catch the ^$#&(* blighter? -- Jack ---- The road to truth and enlightenment is long... be sure to bring a snack and something to drink - Seen on a bumper sticker --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 14:43:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA16241 for dynarec-outgoing; Mon, 3 Apr 2000 14:43:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 3 Apr 2000 14:43:50 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft In-Reply-To: <00ba01bf9dbc$ea6a22e0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > No, not really. But I do like to tease. :) > > Actually, yes, they are. > After having one for 5 years and also using a TNT for some time, I can say > that I prefer S3. I had much more problems with the TNT when I had it. I had exactly the opposite experience. I couldn't get the S3 to work reliably, especially under Windows. The TNT series has always been awesome. > > can't live without it now. > As I say, it's got to be useful. I can think of so many good things to > implement with it! DOUBLE PORN! ;-=) > > Being someone who was both a cyclist and a motorist in downtown Portland, > > I can say that the assholedom is far worse with bicyclists - at least in > > Portland. > I take it you've never been knocked off your bike by a motorist on the wrong > side of the road then? And then when they see you lying in a pool of blood > with half your face ripped open they drive off? Never happened to you? Well, Not face ripped open, but I've been knocked down by passing motorists whose mirrors stick out so far that they smack me. But yes, I have had that happen. And I cycled far more than I drove when I lived downtown. > it has to me. So I have a rather low opinion of car drivers. Especially when > they drive on MY side of the road at ridiculous speeds. And to drive off > after hitting me... That's the epitomy of arseholeness. All I can say is > that it's a good job my face healed so well. I'm still scarred under my eye > though... :-/ It's quite the opposite here. Bicyclists often hold up traffic, run red lights, turn in front of you for no reason and act like YOU are the jerk for being on the road, etc... It's to the point where cyclists act like they own the whole fucking road but don't bother to obey the rules of the road which they are required by law to do. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 14:50:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA16302 for dynarec-outgoing; Mon, 3 Apr 2000 14:50:54 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <00cd01bf9dbe$d2a2e0a0$0100a8c0@lion> From: "Neil Griffiths" To: References: <00ba01bf9dbc$ea6a22e0$0100a8c0@lion> Subject: Re: DYNAREC: Buttonless Mouse from Microsoft Date: Mon, 3 Apr 2000 23:46:32 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > That's a pretty serious offense here in the US. "Leaving the scene of > an accident" or "hit and run" depending on the seriousness of the > accident. Add to that "crossing a double yellow line" (we use double > yellow lines in the center/centre of our roadways). Did they catch the > ^$#&(* blighter? No. And if they did, I'd probably kill the git. Whatever, I'm scarred for life. Only happened a year and a half ago... :-/ It's a serious offence, but the police weren't bothered. Wasn't happy about it, but that's the way it goes. Hmm. :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 14:50:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA16309 for dynarec-outgoing; Mon, 3 Apr 2000 14:50:55 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <00ce01bf9dbe$d35b8240$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Buttonless Mouse from Microsoft Date: Mon, 3 Apr 2000 23:49:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > After having one for 5 years and also using a TNT for some time, I can say > > that I prefer S3. I had much more problems with the TNT when I had it. > > I had exactly the opposite experience. I couldn't get the S3 to work > reliably, especially under Windows. The TNT series has always been > awesome. Oh well. :) > > As I say, it's got to be useful. I can think of so many good things to > > implement with it! > > DOUBLE PORN! ;-=) Well... yeah. :) > > I take it you've never been knocked off your bike by a motorist on the wrong > > side of the road then? And then when they see you lying in a pool of blood > > with half your face ripped open they drive off? Never happened to you? Well, > > Not face ripped open, but I've been knocked down by passing motorists > whose mirrors stick out so far that they smack me. But yes, I have had > that happen. And I cycled far more than I drove when I lived downtown. I haven't cycled since - though that's more due to the lack of opportunity than fear. But yes, the car hit me at roughly 50mph - ~80kph. Fast, whatever. Especially in a 30mph limit... > > it has to me. So I have a rather low opinion of car drivers. Especially when > > they drive on MY side of the road at ridiculous speeds. And to drive off > > after hitting me... That's the epitomy of arseholeness. All I can say is > > that it's a good job my face healed so well. I'm still scarred under my eye > > though... :-/ > > It's quite the opposite here. Bicyclists often hold up traffic, run red > lights, turn in front of you for no reason and act like YOU are the jerk > for being on the road, etc... It's to the point where cyclists act like > they own the whole fucking road but don't bother to obey the rules of the > road which they are required by law to do. I'd say that it's the few who do this that give the rest a bad name. Personally I believe that you should be required to have a licence to ride a bike on the road. That'd solve the problem. And more bike lanes too... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 15:04:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA16394 for dynarec-outgoing; Mon, 3 Apr 2000 15:04:16 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Buttonless Mouse from Microsoft From: Michael Koenig In-Reply-To: <00a501bf9dbb$8af01be0$0100a8c0@lion> Message-Id: <0003646285344d0c_mailit@mailhub.rrze.uni-erlangen.de> References: <38E8BA93.EAFD0D24@eurocopter.de> <0003645eb63ca785_mailit@mailhub.rrze.uni-erlangen.de> <00a501bf9dbb$8af01be0$0100a8c0@lion> Date: Tue, 04 Apr 2000 00:00:34 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Really? I never knew that. I wonder if he speaks Welsh? It'd be quite funny >if he didn't. Him being born in Wales and not speaking it - and me NOT being >born in Wales but being able to speak it! :) I'm not sure. I think his parents are from Norway... Where were you born if not in Wales? >Heh. Nope, not heard of them before! Strange, I Germany he's more well-known for these short stories than his children books. >Okay. Well I guess I've read a book by a German author now. Damn. And I was >trying to avoid it... ;) Hehe. One German author you should avoid is Günter Grass, especially the book "Die Blechtromel". But a must read is "Faust" by Wolfgang Goethe, I'm sure I mentioned that already... >Spare. I'll probably have two in my machine when I go home, though. Mainly >because I can then dual-monitor. Which has got to make programming so much >easier. :) For me it's the other way round: I have one monitor for two computers... >No, but that's up to the Be team to implement. It would be nice if Be receives enough publicity that this changes. According to some estimations the Personal Edition of BeOS 5 was downloaded over half a million times up to the fourth day after its first announcement. >Installable Client Driver. It's a full OpenGL implementation. Anything less >is a MiniGL. Ah, now I know. I even searched the 3Dfx site to get this driver but found nothing... >The other word you may have heard of is MCD - Microsoft Client >Driver. I bet you can guess what that is. ;) That's a hard one: D3D? ;-) >> First Law of Bicycling: >> No matter which way you ride, it's uphill and against the >> wind. Indeed! -- M.I.Ke Beware of low-flying butterflies. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 15:04:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA16402 for dynarec-outgoing; Mon, 3 Apr 2000 15:04:18 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Buttonless Mouse from Microsoft From: Michael Koenig In-Reply-To: Message-Id: <00036462967e50a1_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Tue, 04 Apr 2000 00:05:24 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> No, but that's up to the Be team to implement. nVidea certainly aren't >>going to do it themselves - not enough demand. >Nvidia, actually. ;-) Really? I wonder why there is a project for an unofficial driver then... -- M.I.Ke We can defeat gravity. The problem is the paperwork involved. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 15:04:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA16409 for dynarec-outgoing; Mon, 3 Apr 2000 15:04:19 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Those wacky Germans From: Michael Koenig In-Reply-To: <00a601bf9dbb$8bf38220$0100a8c0@lion> Message-Id: <000364628f560d76_mailit@mailhub.rrze.uni-erlangen.de> References: <0003645f17e2b795_mailit@mailhub.rrze.uni-erlangen.de> <00a601bf9dbb$8bf38220$0100a8c0@lion> Date: Tue, 04 Apr 2000 00:03:24 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Nor me. Hey, I'm not German. Whew! ;) Lucky you ;-) >Yeah. They just want to be able to write their names in the snow too. :)) If you drank so much to be able to write your name then you won't get the spelling right ;-) BTW, what I always wanted to ask you: Don't all the Germans you know have severe problems to pronounce your last name correctly? I bet it'll sound like "Griffisss" then. -- M.I.Ke Excellent day to have a rotten day. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 15:36:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA16525 for dynarec-outgoing; Mon, 3 Apr 2000 15:36:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft Date: Mon, 03 Apr 2000 18:40:22 -0400 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: <9a7ies06udrojgr5jq1kos9pktmm7l643d@4ax.com> References: <00ba01bf9dbc$ea6a22e0$0100a8c0@lion> <00cd01bf9dbe$d2a2e0a0$0100a8c0@lion> In-Reply-To: <00cd01bf9dbe$d2a2e0a0$0100a8c0@lion> X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Mon, 3 Apr 2000 23:46:32 +0100, "Neil Griffiths" wrote: >Hi, > > >> That's a pretty serious offense here in the US. "Leaving the scene of >> an accident" or "hit and run" depending on the seriousness of the >> accident. Add to that "crossing a double yellow line" (we use double >> yellow lines in the center/centre of our roadways). Did they catch the >> ^$#&(* blighter? > >No. And if they did, I'd probably kill the git. Whatever, I'm scarred for >life. Only happened a year and a half ago... :-/ He was probably a tourist: "Hey Martha - Look at that quaint English boy bleeding to death on the side of the road." -- Jack ---- The road to truth and enlightenment is long... be sure to bring a snack and something to drink - Seen on a bumper sticker --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 15:41:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA16547 for dynarec-outgoing; Mon, 3 Apr 2000 15:41:49 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 3 Apr 2000 15:41:47 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft In-Reply-To: <00ce01bf9dbe$d35b8240$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Not face ripped open, but I've been knocked down by passing motorists > > whose mirrors stick out so far that they smack me. But yes, I have had > > that happen. And I cycled far more than I drove when I lived downtown. > I haven't cycled since - though that's more due to the lack of opportunity > than fear. But yes, the car hit me at roughly 50mph - ~80kph. Fast, > whatever. Especially in a 30mph limit... Okay, but at 30 you'd still be hurt just as bad. Just because the guy was driving too fast doesn't necessarily mean it was reckless or negligent. It's easy to do harm driving too slow! > > It's quite the opposite here. Bicyclists often hold up traffic, run red > > lights, turn in front of you for no reason and act like YOU are the jerk > > for being on the road, etc... It's to the point where cyclists act like > > they own the whole fucking road but don't bother to obey the rules of the > > road which they are required by law to do. > I'd say that it's the few who do this that give the rest a bad name. No, it's few who *DON'T&* do this, and besides, you don't live where I live - you couldn't know! > Personally I believe that you should be required to have a licence to ride a > bike on the road. That'd solve the problem. And more bike lanes too... I agree. And give shotguns to motorists for rude bicyclists. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 18:17:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id SAA17057 for dynarec-outgoing; Mon, 3 Apr 2000 18:17:42 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Buttonless Mouse from Microsoft From: Michael Koenig In-Reply-To: Message-Id: <0003646548db972f_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Tue, 04 Apr 2000 03:18:26 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Okay, but at 30 you'd still be hurt just as bad. Just because the guy was >driving too fast doesn't necessarily mean it was reckless or negligent. >It's easy to do harm driving too slow! True, but I live in a street with a 30kph limit and I couldn't drive much faster than that although I know the street by heart (the problem are playing children and lots of cars parking on the street). I don't know how some people think that they can drive 60 to 70kph, apart from the fact that they are not allowed to. >> > It's quite the opposite here. Bicyclists often hold up traffic, run red >> > lights, turn in front of you for no reason and act like YOU are the jerk >> > for being on the road, etc... It's to the point where cyclists act like >> > they own the whole fucking road but don't bother to obey the rules of the >> > road which they are required by law to do. >> I'd say that it's the few who do this that give the rest a bad name. What I hate is when they drive on the street although a special bike lane is available. >I agree. And give shotguns to motorists for rude bicyclists. OK, but then I also want to have a granade launcher for my bike against all those drivers who think they have a special license to park right on the bike lanes! -- M.I.Ke Boob's Law: You always find something in the last place you look. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 23:19:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA17737 for dynarec-outgoing; Mon, 3 Apr 2000 23:19:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E988EA.DAEB4CB3@eurocopter.de> Date: Tue, 04 Apr 2000 08:17:14 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft References: <00ba01bf9dbc$ea6a22e0$0100a8c0@lion> <00cd01bf9dbe$d2a2e0a0$0100a8c0@lion> <9a7ies06udrojgr5jq1kos9pktmm7l643d@4ax.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >No. And if they did, I'd probably kill the git. Whatever, I'm scarred for > >life. Only happened a year and a half ago... :-/ > > He was probably a tourist: "Hey Martha - Look at that quaint English > boy bleeding to death on the side of the road." Heh. Who knows? :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 23:28:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA17765 for dynarec-outgoing; Mon, 3 Apr 2000 23:28:05 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E98ACB.EBEC388E@eurocopter.de> Date: Tue, 04 Apr 2000 08:25:15 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Okay, but at 30 you'd still be hurt just as bad. Just because the guy was > driving too fast doesn't necessarily mean it was reckless or negligent. > It's easy to do harm driving too slow! I'd have been hurt, but not as bad. The force would have been less - so I would therefore have flown less and not hit the ground as hard. Anyway, he was on the wrong side of the road! And he hit me and drove off! If that doesn't count as reckless or negligant behaviour then I don't know what does! > > I'd say that it's the few who do this that give the rest a bad name. > > No, it's few who *DON'T&* do this, and besides, you don't live where I > live - you couldn't know! In that case it's completely different in Britain. There are a few *really* stupid cyclists - but the majority are pretty damn good. People are encouraged to take a "Cycling Proficiency Test" early on in life so that they can be taught how to ride properly and safely - and if they pass the (practical) test, they get a certificate. I think the majority (or a lot) of people have taken this course, so we've got a fair few safe riders. Besides, where I live there are a lot of mountain bikers - about 5m away is the start of the Welsh mountains! > > Personally I believe that you should be required to have a licence to ride a > > bike on the road. That'd solve the problem. And more bike lanes too... > > I agree. And give shotguns to motorists for rude bicyclists. Whatever, there are still a hell of stupid drivers who should be forced to take their tests again. A quick example: how much room do you give a cyclist when you overtake him? The correct answer should be that you give him the *same* amount of space as if you were overtaking a car. The majority of drivers don't do this - and that makes life really difficult for a cyclist - especially in windy weather! I'm not a pro-cyclist and anti-car user. I use both. But cyclists are getting a lot of flak at the moment and it is only the few causing the problems. There are faaaaar more shit drivers than cyclists! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 23:31:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA17789 for dynarec-outgoing; Mon, 3 Apr 2000 23:31:55 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E98BE3.2E05C87D@eurocopter.de> Date: Tue, 04 Apr 2000 08:29:55 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Those wacky Germans References: <0003645f17e2b795_mailit@mailhub.rrze.uni-erlangen.de> <00a601bf9dbb$8bf38220$0100a8c0@lion> <000364628f560d76_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Nor me. Hey, I'm not German. Whew! ;) > > Lucky you ;-) I'm English... oh. ;) > >Yeah. They just want to be able to write their names in the snow too. :)) > > If you drank so much to be able to write your name then you won't get the > spelling right ;-) True. But what if it was water? ;) > BTW, what I always wanted to ask you: > Don't all the Germans you know have severe problems to pronounce your last > name correctly? I bet it'll sound like "Griffisss" then. And my first name too. But yes, they have problems with it - but you can't really hear it. They have real problems to spell it, though. "Griffis" or "Griffis" is quite usual. And they can't spell my first name either. It's the first country I've been to where I have this problem! The good thing is that while "Griffiths" is quite a popular name in Britain, I don't know of a single other person with Griffiths. That's good. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 23:35:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA17807 for dynarec-outgoing; Mon, 3 Apr 2000 23:35:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 3 Apr 2000 23:35:40 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft In-Reply-To: <38E98ACB.EBEC388E@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Anyway, he was on the wrong side of the road! And he hit me and drove off! > If that doesn't count as reckless or negligant behaviour then I don't know > what does! That is reckless and negligent, but your original message said nothing but speed. I keep getting in this fight with a million people that just because you violate the speed limit by 5 or 10 miles an hour doesn't mean you're more accident prone or that it would really make a difference to drive 5-10 miles an hour slower! > > No, it's few who *DON'T&* do this, and besides, you don't live where I > > live - you couldn't know! > In that case it's completely different in Britain. There are a few *really* > stupid cyclists - but the majority are pretty damn good. People are Here they are arrogant, I-own-the-road, screw-you-you-motorist-pigs, Nazi bicyclists who consistently violate all the laws that motorists must (and they are required to follow as well) adhere to as well! > > > Personally I believe that you should be required to have a licence to ride a > > > bike on the road. That'd solve the problem. And more bike lanes too... > > I agree. And give shotguns to motorists for rude bicyclists. > Whatever, there are still a hell of stupid drivers who should be forced to > take their tests again. A quick example: how much room do you give a > cyclist when you overtake him? Oh agreed. But in downtown Portland where you can't go faster than 20MPH anyway due to so much bloody traffic, people and cyclists, you can't go fast enough to be stupid! > I'm not a pro-cyclist and anti-car user. I use both. But cyclists are > getting a lot of flak at the moment and it is only the few causing the > problems. There are faaaaar more shit drivers than cyclists! I use both as well, but the cyclists here are just assholes. They'll hold up traffic, run red lights, and in one case some asshole actually hit the back of my car because I stopped abruptly for a red light, and screamed at *ME* for stopping! Like whose fucking fault was that? His for not paying attention and following too close! Sorry, of the experiences as a cyclist and a motorist in Portland, the cyclists are the elitist pricks who deserve no respect at all. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 3 23:58:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA17866 for dynarec-outgoing; Mon, 3 Apr 2000 23:58:17 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E99141.688C4D5D@eurocopter.de> Date: Tue, 04 Apr 2000 08:52:49 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Anyway, he was on the wrong side of the road! And he hit me and drove off! > > If that doesn't count as reckless or negligant behaviour then I don't know > > what does! > > That is reckless and negligent, but your original message said nothing but > speed. No, you're right. But it did say he was on my side of the road at the time. > I keep getting in this fight with a million people that just > because you violate the speed limit by 5 or 10 miles an hour doesn't mean > you're more accident prone or that it would really make a difference to > drive 5-10 miles an hour slower! No, but you've got to drive according to the conditions. If you can't see more than 20m in front of you then you have to drive slowly. Of course, if you've got clear vision for hundreds of metres, then drive ahead! But 50mph is 20 more than the 30mph limit - not to mention that it would be stupid to attempt to drive 30mph on this road anyway. If you drive on a housing estate (which is where this happened) you can't drive fast - you don't know what will be in the road. Small children, pets, me... ;) > > In that case it's completely different in Britain. There are a few *really* > > stupid cyclists - but the majority are pretty damn good. People are > > Here they are arrogant, I-own-the-road, screw-you-you-motorist-pigs, Nazi > bicyclists who consistently violate all the laws that motorists must (and > they are required to follow as well) adhere to as well! Really? Well the police can do you for doing that, so you have to behave fairly well. You still have to follow all the motorist laws and the highway code. I agree though, there are many people who don't. > > Whatever, there are still a hell of stupid drivers who should be forced to > > take their tests again. A quick example: how much room do you give a > > cyclist when you overtake him? > > Oh agreed. But in downtown Portland where you can't go faster than 20MPH > anyway due to so much bloody traffic, people and cyclists, you can't go > fast enough to be stupid! Heh. In that case it's a different situation altogether! :) > > I'm not a pro-cyclist and anti-car user. I use both. But cyclists are > > getting a lot of flak at the moment and it is only the few causing the > > problems. There are faaaaar more shit drivers than cyclists! > > I use both as well, but the cyclists here are just assholes. They'll hold > up traffic, run red lights, and in one case some asshole actually hit the > back of my car because I stopped abruptly for a red light, and screamed at > *ME* for stopping! Like whose fucking fault was that? His for not paying > attention and following too close! Yes, I can see why you hold that view. In this case it was definitely the cyclist at fault. I mean, you've got to give yourself decent stopping distance - it's stupid not to! > Sorry, of the experiences as a cyclist and a motorist in Portland, the > cyclists are the elitist pricks who deserve no respect at all. In that case, I'll agree - but the situation is certainly different back home. And here, for that matter. Cycle lanes all over the place! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 4 00:08:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA17896 for dynarec-outgoing; Tue, 4 Apr 2000 00:08:14 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E994A7.7BA7187D@est.fib.upc.es> Date: Tue, 04 Apr 2000 09:07:19 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars References: Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > >Hehehe, I think you are wrong, my spoken english is really worst :) > >If you heared Almodovar speaking then you know the tipical spanish > english. > > Billy Crystals commentary was: Against Pedro Roberto Bergnini sounds > like an English teacher... : ) Oh well, I didn´t understand him either but it´s the kind of english you can expect from a spanish who doesn´t really know how to speak english. If you hear someone talking like that you have found a spanish guy. Do you want to know what he couldn´t say of his speak? Something like US people should begin to learn spanish because they will be conquered by the people from South America. But in fact is true. I heared all candidates for president are learning spanish to get more votes. I think he forgot also Spanish people should begin to learn arabian or morocco language for the same reason. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 4 00:13:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA17921 for dynarec-outgoing; Tue, 4 Apr 2000 00:13:14 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E995D5.9804F0@est.fib.upc.es> Date: Tue, 04 Apr 2000 09:12:21 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Buttonless Mouse from Microsoft References: <38E89F57.B94EA023@eurocopter.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Griffiths wrote: > Hi, > > > >Looks like April fools to me. > > > > Yeah, sure. I actually wanted to send the mail on April 1st but that > > damn SMTP didn't let me. But it seems you figured it out anyway ;-) > > It was the "Oompah-Loompah" bit that gave it away to me. That and the > buttonless bit. :) > > > Has anyone found other April fools? This was the only one I stumbled > > across on the web. > I think someone send me one, perhaps not. The problem is that in Spain April Fools isn´t in april and we never remember it´s april fools :o A movie for a PSX RPG game from Square: "Parasite Eve: A female NYPD officer who must stop a genetically mutated and psychotic villainess from destroying not only New York City, but changing the rest of the world's population via sinister DNA manipulation. Rumoured Stars: Madonna" Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 4 00:22:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA17936 for dynarec-outgoing; Tue, 4 Apr 2000 00:22:22 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E99715.4BF3C683@eurocopter.de> Date: Tue, 04 Apr 2000 09:17:41 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars References: <38E994A7.7BA7187D@est.fib.upc.es> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Oh well, I didn´t understand him either but it´s the kind of english you can > expect from a spanish who doesn´t really know how to speak english. If you > hear someone talking like that you have found a spanish guy. There's a Spanish guy here I'm friends with who has *really* good English. Mind you, he did live in England for 5 years. :) > I think he forgot also Spanish people should begin to learn arabian or morocco > language for the same reason. Oh, you're safe there. One of the guys I live with - his father is a Moroccon Ambassador. If I hear anything, I'll give you warning. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 4 00:31:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA17962 for dynarec-outgoing; Tue, 4 Apr 2000 00:31:05 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38E99A07.EA822BFE@est.fib.upc.es> Date: Tue, 04 Apr 2000 09:30:15 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Star Wars References: <38E994A7.7BA7187D@est.fib.upc.es> <38E99715.4BF3C683@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > I think he forgot also Spanish people should begin to learn arabian or morocco > > language for the same reason. > > Oh, you're safe there. One of the guys I live with - his father is a > Moroccon Ambassador. If I hear anything, I'll give you warning. ;) > : ) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 4 10:02:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA19498 for dynarec-outgoing; Tue, 4 Apr 2000 10:02:26 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004041705.TAA20089@pons.ac.upc.es> Subject: DYNAREC: New Topic: Game killers In-Reply-To: <38E99A07.EA822BFE@est.fib.upc.es> from "Victor (R.0.B.) Moya" at "Apr 4, 2000 09:30:15 am" To: dynarec@synthcom.com Date: Tue, 4 Apr 2000 19:05:09 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Perhaps someone it's interested to talk about this. This weekend a mad boy (17 years) killed all his family using a katana (samurai sword) somewhere in Spain. This is a sad notice, but this kind of things happens sometimes all over the world. Well. Now comes the bad news. It seems this boy was a Final Fantasy 8 player (I don't know how journalist discovered this, perhaps they invented). So now all media in Spain are talking about how violent, how dangerous and how mad are all people who plays this (perhaps all) kind of videogames. I'm really angry. This isn't the first time that videogames, or rol games (board games) are used in Spain to explain some murder. Perhaps they think all people who plays computer games or rol games are mad. I think something similar happened sometime ago with some US boys who began shoting in a their school and killed some students. The media said they were 'Doom'-like games players. So with the 'perfect' logic journalists use the game is guilty and all game players are dangerous. My parents are beginning to think I could become a psicokiller :( Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 4 10:26:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA19575 for dynarec-outgoing; Tue, 4 Apr 2000 10:26:49 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <200004041705.TAA20089@pons.ac.upc.es> Message-Id: <00036472d484c607_mailit@mailhub.rrze.uni-erlangen.de> References: <200004041705.TAA20089@pons.ac.upc.es> Date: Tue, 04 Apr 2000 19:28:04 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >This weekend a mad boy (17 years) killed all his family using a katana >(samurai sword) somewhere in Spain. This is a sad notice, but this kind of things >happens sometimes all over the world. Indeed. At least he shows some style by using a katana, ok bad joke... >Well. Now comes the bad news. It seems this boy was a Final Fantasy 8 >player (I don't know how journalist discovered this, perhaps they invented). So now >all media in Spain are talking about how violent, how dangerous and how mad are >all people who plays this (perhaps all) kind of videogames. How typical for the press. They always search for a reason and they either end up with action movies or action games instead of searching for the personal problems that must have caused this boy to go rampage. BTW, I think that most TV news are actually more brutal than any computer game I know! >I'm really angry. This isn't the first time that videogames, or rol games >(board games) are used in Spain to explain some murder. This has been done in the US and also in Germany before. The main difference is that in Germany most brutal games are illegal or you have to be at least 18 years old to get these. Or you are just fast enough to buy the game before it's forbidden and the "original German version" is released, as I did with Half-Life. >Perhaps they think >all people who plays computer games or rol games are mad. It's somewhat strange that they now even think that RPGs can make you mad! >I think something similar happened sometime ago with some US boys who began >shoting in a their school and killed some students. The media said they were >'Doom'-like games players. So with the 'perfect' logic journalists use the >game is guilty and all game players are dangerous. The journalists - especially yellow press - always search for the easiest solution even if it's totally wrong. If this was really the case then you wouldn't have a few mad guys but *thousands* of these! Actually I can even calm down again after having played an action game! >My parents are beginning to think I could become a psicokiller :( Then ask them if they believe everything what's mentioned in the press! -- M.I.Ke "Even the best of friends cannot attend each other's funeral." -- Kehlog Albran, "The Profit" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 4 10:32:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA19617 for dynarec-outgoing; Tue, 4 Apr 2000 10:32:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 4 Apr 2000 10:32:14 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers In-Reply-To: <200004041705.TAA20089@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > I'm really angry. This isn't the first time that videogames, or rol > games (board games) are used in Spain to explain some murder. > Perhaps they think all people who plays computer games or rol games > are mad. People who take the "extra step" and go off and kill people are predispositioned to go kill people anyway, and if it wasn't video games it'd be something else. This is a really lame excuse. I also remember the time a 4 year old kid set fire to his trailer (which killed his little sister) and his mother blamed it on an episode of Beavis & Butthead where Beavis said "Fire! Fire! Fire!". Later it was found that the kid had never seen nor heard of the show, so his mother was just trying to make an excuse. I've often felt that I have far more of a collective IQ than the media does. So often I'm irritated by the over generalization and conservatism found in the voice/writing of the journalists to the point I'll shut off the TV or put down the paper. When I see some low life dumbshit going on for pages about video game violence without naming one iota of redeeming qualities (I.E. hand/eye coordination, logical thought, planning, which are all proven qualities of video games), it makes me want to pick up a katana and go chop some heads. HEy! That's it! The journalists made me do it! Let's outlaw journalists! -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 4 10:49:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA19713 for dynarec-outgoing; Tue, 4 Apr 2000 10:49:53 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: Message-Id: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Tue, 04 Apr 2000 19:50:32 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >People who take the "extra step" and go off and kill people are >predispositioned to go kill people anyway, and if it wasn't video games >it'd be something else. This is a really lame excuse. Indeed. The games might be the last nail for the coffin but they're certainly not the reason! >I've often felt that I have far more of a collective IQ than the media >does. So often I'm irritated by the over generalization and conservatism >found in the voice/writing of the journalists to the point I'll shut off >the TV or put down the paper. Yeah, I once read an article about the Pentium (a few years ago of course) in a otherwise good news magazine (Der Spiegel), and they said that it was the fastest processor (nope, it surely was Alpha at that time and Alpha is still faster than a P3-1000MHz!) and that the first PC processor was the 286. We all know that the 286 was the first AT processor but the first PC-XT processor was the 8088! So much about good research... But even well know computer magazines talk about Athlon and Pentium III being the fastest processors as if they never heard of Alpha or PA-RISC, which leads to many readers thinking that there isn't anything else! :-( >When I see some low life dumbshit going on >for pages about video game violence without naming one iota of redeeming >qualities (I.E. hand/eye coordination, logical thought, planning, which >are all proven qualities of video games), it makes me want to pick up a >katana and go chop some heads. Hand me the wakisashi and I'll be with you! >HEy! That's it! The journalists made me do it! Let's outlaw journalists! Yes!!! -- M.I.Ke The light at the end of the tunnel may be an oncoming dragon. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 4 23:35:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA22236 for dynarec-outgoing; Tue, 4 Apr 2000 23:35:54 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EADE38.BD72FDE6@est.fib.upc.es> Date: Wed, 05 Apr 2000 08:33:28 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <200004041705.TAA20089@pons.ac.upc.es> <00036472d484c607_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > BTW, I think that most TV news are actually more brutal than any computer > game I know! > You are right. News about people killed in wars, people burned and so on. And these are real people dead! > > This has been done in the US and also in Germany before. The main difference > is that in Germany most brutal games are illegal or you have to be at least > 18 years old to get these. Or you are just fast enough to buy the game before > it's forbidden and the "original German version" is released, as I did with > Half-Life. > Here in Spain there isn´t actually any limitation. And knowing it is one of the countries with more videogames piracy it´s difficult to control them. > > It's somewhat strange that they now even think that RPGs can make you mad! > One or two years ago two boys (16-18 years) killed a man who was standing in a bus stop with a big knife. These boys were rol games (board games) players and the more crazy of them said that they were playing a kind of real rol game. So the media began a persecution against all rol players. > The journalists - especially yellow press - always search for the easiest > solution even if it's totally wrong. If this was really the case then you > wouldn't have a few mad guys but *thousands* of these! > Actually I can even calm down again after having played an action game! > And think about violence in some sports and sport fans aren´t prosecuted. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 00:24:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA22322 for dynarec-outgoing; Wed, 5 Apr 2000 00:24:31 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EAE8EE.AE7B7967@eurocopter.de> Date: Wed, 05 Apr 2000 09:19:10 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > I'm really angry. This isn't the first time that videogames, or rol > > games (board games) are used in Spain to explain some murder. > > Perhaps they think all people who plays computer games or rol games > > are mad. > > People who take the "extra step" and go off and kill people are > predispositioned to go kill people anyway, and if it wasn't video games > it'd be something else. This is a really lame excuse. Yes, I completely agree. The trouble with the media - and parents - is that when children do something like this, they have to have something to blame. And with both of them, it can never be themselves. I've played video games since I was 8 and I watched scary movies even then (although my parents never knew about it!). I can say that I have never actually killed someone in real life - nor have I thought "Ooh, this is a game" or "Ooh, I'm in a film!". You know? Am I the exception - or are they? If they are the exception, you've got to look at all the other people who aren't affected. There are millions worldwide who aren't affected by it. So you have to think "Hmm... maybe it's NOT games or films then". And then you've got to look elsewhere. The parents, the childs upbringing, his friends, his friends' parents. Anything and everything that could have made this person act like he did. Computer games and films are not the cause for violence in this world. Look at the wars we've seen in Africa (10 years ago, for instance). I somehow doubt that the majority of the people would have seen videos or played computer games. Look back in history - when we didn't have films and games. Violence there? Yes. Heard of "Jack the ripper?". He was a mass murderer in London many, many years ago. There weren't films or computer games then. What was the cause of that? Who knows, but what I do know is that if it had happened now, the media would blame films and computer games. Films and computer games model real life violence. Of course, they make it more gratuitous, but the fact is that it is modelled on real life. There is nothing more violent in this world than a human being. Violence - and peace - are part of human nature - and you'll always find people who are more inclined to either. Sometimes you just get people with severe problems who are just violent and do violent things for no particular reason. Maybe that's the case here? Who knows. What I do know is that I can almost certainly say that computer games and films are NOT the reason for this. One screwed up kid - yes. > I also remember the time a 4 year old kid set fire to his trailer (which > killed his little sister) and his mother blamed it on an episode of Beavis > & Butthead where Beavis said "Fire! Fire! Fire!". Later it was found that > the kid had never seen nor heard of the show, so his mother was just > trying to make an excuse. Children at that age are inquisitive - and will try and copy their parents. If a 4 year old has seen his parents light a match, he'll want to know how that happened - and he'll want to try it for himself. Fact of life. Okay, it's a shame he set fire to the trailer - but it could happen. You can't blame that on a *cartoon* for christs sake! My god, think how screwed up children would be if they watch "Tom & Jerry" for instance! > I've often felt that I have far more of a collective IQ than the media > does. So often I'm irritated by the over generalization and conservatism > found in the voice/writing of the journalists to the point I'll shut off > the TV or put down the paper. When I see some low life dumbshit going on > for pages about video game violence without naming one iota of redeeming > qualities (I.E. hand/eye coordination, logical thought, planning, which > are all proven qualities of video games), it makes me want to pick up a > katana and go chop some heads. Yes, I feel the same. And I hate any biased reports. I don't mind reports that come to a conclusion I disagree with - but if it's unbiased then I don't really mind. If it's biased, I'm likely to get angry about it. Reporters should NEVER be biased when making a report. Unfortunately, reporters who are unbiased are few and far between. > HEy! That's it! The journalists made me do it! Let's outlaw journalists! Hand me a katana, somebody! I'm going to get me some journalist butt! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 00:26:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA22334 for dynarec-outgoing; Wed, 5 Apr 2000 00:26:11 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EAEA33.220C7F5F@eurocopter.de> Date: Wed, 05 Apr 2000 09:24:35 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Yeah, I once read an article about the Pentium (a few years ago of course) in > a otherwise good news magazine (Der Spiegel), and they said that it was the > fastest processor (nope, it surely was Alpha at that time and Alpha is still > faster than a P3-1000MHz!) and that the first PC processor was the 286. We > all know that the 286 was the first AT processor but the first PC-XT > processor was the 8088! If we want to get technical, the fastest processor even then wouldn't be an Alpha. Too many people forget that we don't just have micro-computers - we have mini-computers and mainframes. I'm thinking "Cray", to be honest. The processors used in that must be tremendous! > So much about good research... But even well know computer magazines talk > about Athlon and Pentium III being the fastest processors as if they never > heard of Alpha or PA-RISC, which leads to many readers thinking that there > isn't anything else! :-( Of course, you wouldn't normally have a Cray in your computer room, but still. There are alternatives - like the ones you mentioned - but I'll stay with the x86 series for now. Everything I normally use is for that platform, so I'm sticking with it. :) > >When I see some low life dumbshit going on > >for pages about video game violence without naming one iota of redeeming > >qualities (I.E. hand/eye coordination, logical thought, planning, which > >are all proven qualities of video games), it makes me want to pick up a > >katana and go chop some heads. > > Hand me the wakisashi and I'll be with you! Aaah. I used to Judo - and did it for 10 years, in fact. Anyway, I was talking to a German guy who works here who was telling me he's been doing Ji-jitsu - and when I told him I did Judo, he told me to go with him. So I went there last night for the first time and now I'm in pain. Aaah! My arms hurt! Must... stop... typing... :) As Mr. Mackey (South Park) might say: "Pain is bad, M'kay?". And if he said it, I'd agree. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 00:32:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA22358 for dynarec-outgoing; Wed, 5 Apr 2000 00:32:13 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EADE38.BD72FDE6@est.fib.upc.es> Message-Id: <0003647e951ff069_mailit@mailhub.rrze.uni-erlangen.de> References: <200004041705.TAA20089@pons.ac.upc.es> <00036472d484c607_mailit@mailhub.rrze.uni-erlangen.de> <38EADE38.BD72FDE6@est.fib.upc.es> Date: Wed, 05 Apr 2000 09:29:20 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >You are right. News about people killed in wars, people burned and so on. >And these are real people dead! Indeed. In action movies I know that it's fake and in a computer game it certainly isn't real, but some news are really disgusting! >Here in Spain there isn´t actually any limitation. And knowing it is one of >the countries with more videogames piracy it´s difficult to control them. Even with control there is no real control. The ones who want to have the game either have it before it's forbidden or they find other ways to get the game. >One or two years ago two boys (16-18 years) killed a man who was standing in >a bus stop with a big knife. These boys were rol games (board games) players >and the more crazy of them said that they were playing a kind of real rol game. >So the media began a persecution against all rol players. I guess you mean LARP (Live Action Role-Playing). I prefer it the old style with dice and pencil. I even had some email discussion with the inventor of the second oldest role-playing game, Tunnels and Trolls. But have you ever heard that all people with a driving license are accused just because yet another accident has happend? >And think about violence in some sports and sport fans aren´t prosecuted. One German proverb says "Sport ist Mord": "Sports is murder", but that means a different aspect of sports... -- M.I.Ke Admiration, n.: Our polite recognition of another's resemblance to ourselves. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 00:51:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA22396 for dynarec-outgoing; Wed, 5 Apr 2000 00:51:43 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EAEA33.220C7F5F@eurocopter.de> Message-Id: <0003647ee23f4a59_mailit@mailhub.rrze.uni-erlangen.de> References: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> <38EAEA33.220C7F5F@eurocopter.de> Date: Wed, 05 Apr 2000 09:50:54 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >If we want to get technical, the fastest processor even then wouldn't be an >Alpha. Too many people forget that we don't just have micro-computers - we >have mini-computers and mainframes. OK, I should have written microprocessor... >I'm thinking "Cray", to be honest. The >processors used in that must be tremendous! Cray aren't the fastest computers now. But don't ask me which is faster. Maybe it's a NEC? >Of course, you wouldn't normally have a Cray in your computer room, but >still. There are alternatives - like the ones you mentioned - but I'll stay >with the x86 series for now. Everything I normally use is for that >platform, so I'm sticking with it. :) It would be perfectly right if the say that Athlon and Pentium III are currently the fastest x86 compatible microprocessors, and not like they say/ write it which implies for about 90% of the readers that nothing else is faster... >Aaah. I used to Judo - and did it for 10 years, in fact. Really? Which belt do you have? >Anyway, I was >talking to a German guy who works here who was telling me he's been doing >Ji-jitsu - and when I told him I did Judo, he told me to go with him. So I >went there last night for the first time and now I'm in pain. Aaah! My arms >hurt! Must... stop... typing... :) Hehe. I could have told you that before ;-) I mean, Judo is a sports dicipline and Jiu-jitsu is a martial art, and one that is specialised to incapacitate your opponent. I have to admit that I'd prefer a mixture of Shaolin Chuan Fa and Ninjitsu ;- ) But this is also a good argument against these action movie theories: I have some knowledge about martial art styles and you shouldn't watch an action movie with me because I know most of the weapons. But I couldn't really use that knowledge to hurt someone because I never practiced martial arts and I never fired a weapon. I mean you really have to practice that several times before you can be as effective as some of these guys have been. And movies and video games don't provide the practice nor the weapons to do it. OK, a katana is a bit different, but if you don't know how to use it you probably only chop yourself... -- M.I.Ke The earth is like a tiny grain of sand, only much, much heavier. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 01:11:22 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA22466 for dynarec-outgoing; Wed, 5 Apr 2000 01:11:21 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 5 Apr 2000 01:11:21 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers In-Reply-To: <38EAEA33.220C7F5F@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > all know that the 286 was the first AT processor but the first PC-XT > > processor was the 8088! > If we want to get technical, the fastest processor even then wouldn't be an > Alpha. Too many people forget that we don't just have micro-computers - we > have mini-computers and mainframes. I'm thinking "Cray", to be honest. The > processors used in that must be tremendous! No... no... no... That would be the Intel Paragon. Crays are actually fairly slow by comparison. ;-) > Ji-jitsu - and when I told him I did Judo, he told me to go with him. So I > went there last night for the first time and now I'm in pain. Aaah! My arms > hurt! Must... stop... typing... :) Hm... Well, when he asked you to go with him, I was thinking it was more of a sexual thing. Just why again do your arms hurt so much? ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 01:20:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA22485 for dynarec-outgoing; Wed, 5 Apr 2000 01:20:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004050822.KAA27435@pons.ac.upc.es> Subject: Re: DYNAREC: New Topic: Game killers In-Reply-To: <0003647ee23f4a59_mailit@mailhub.rrze.uni-erlangen.de> from Michael Koenig at "Apr 5, 2000 09:50:54 am" To: dynarec@synthcom.com Date: Wed, 5 Apr 2000 10:22:30 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hehe. I could have told you that before ;-) > I mean, Judo is a sports dicipline and Jiu-jitsu is a martial art, and one > that is specialised to incapacitate your opponent. > I have to admit that I'd prefer a mixture of Shaolin Chuan Fa and Ninjitsu ;- > ) > A martial art expert? As I like Japanese and oriental culture I'm also interested in this kind of things (and martial art movies are fun :). But my knowledge is very limited. > But this is also a good argument against these action movie theories: > I have some knowledge about martial art styles and you shouldn't watch an > action movie with me because I know most of the weapons. > But I couldn't really use that knowledge to hurt someone because I never > practiced martial arts and I never fired a weapon. I mean you really have to > practice that several times before you can be as effective as some of these > guys have been. And movies and video games don't provide the practice nor the > weapons to do it. Do you mean? I was playing last weekend Final Fantasy 8 and now I feel I could go to a street and begin to kill people with a gun blade (what a strange weapon) :) > OK, a katana is a bit different, but if you don't know how to use it you > probably only chop yourself... > More easyly than you can think :) If I have cut myself sometimes using a small kitchen knife I don't want to think what can happen to me with these large sharp swords :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 01:24:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA22498 for dynarec-outgoing; Wed, 5 Apr 2000 01:24:59 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EAF7C9.5E1A1684@eurocopter.de> Date: Wed, 05 Apr 2000 10:22:33 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > If we want to get technical, the fastest processor even then wouldn't be an > > Alpha. Too many people forget that we don't just have micro-computers - we > > have mini-computers and mainframes. I'm thinking "Cray", to be honest. The > > processors used in that must be tremendous! > > No... no... no... That would be the Intel Paragon. Crays are actually > fairly slow by comparison. ;-) Okay, but it was the only mainframe I could think of at the time. Did I mention that I hurt at the moment? ;) > > Ji-jitsu - and when I told him I did Judo, he told me to go with him. So I > > went there last night for the first time and now I'm in pain. Aaah! My arms > > hurt! Must... stop... typing... :) > > Hm... Well, when he asked you to go with him, I was thinking it was more > of a sexual thing. Just why again do your arms hurt so much? ;-) Well, he had one of my arms behind my back and I had the other arm around his neck and... ohmygod! :o :)) Hey, my first night there and already a girl asked me to go with her for a drink next Tuesday. ;p Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 01:25:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA22510 for dynarec-outgoing; Wed, 5 Apr 2000 01:25:27 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EAF745.F96DBECF@eurocopter.de> Date: Wed, 05 Apr 2000 10:20:21 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> <38EAEA33.220C7F5F@eurocopter.de> <0003647ee23f4a59_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >If we want to get technical, the fastest processor even then wouldn't be an > >Alpha. Too many people forget that we don't just have micro-computers - we > >have mini-computers and mainframes. > > OK, I should have written microprocessor... Not you - the *magazine* should have written it! > >I'm thinking "Cray", to be honest. The > >processors used in that must be tremendous! > > Cray aren't the fastest computers now. But don't ask me which is faster. > Maybe it's a NEC? No idea, I don't follow the mainframe market. The cost is a little out of my price range. :) > >Of course, you wouldn't normally have a Cray in your computer room, but > >still. There are alternatives - like the ones you mentioned - but I'll stay > >with the x86 series for now. Everything I normally use is for that > >platform, so I'm sticking with it. :) > > It would be perfectly right if the say that Athlon and Pentium III are > currently the fastest x86 compatible microprocessors, and not like they say/ > write it which implies for about 90% of the readers that nothing else is > faster... Yes, I agree. Still, I don't know what quality the journalists are for this magazine. My guess is not very high quality at all... > >Aaah. I used to Judo - and did it for 10 years, in fact. > > Really? Which belt do you have? Black belt, 2nd Dan. > >Anyway, I was > >talking to a German guy who works here who was telling me he's been doing > >Ji-jitsu - and when I told him I did Judo, he told me to go with him. So I > >went there last night for the first time and now I'm in pain. Aaah! My arms > >hurt! Must... stop... typing... :) > > Hehe. I could have told you that before ;-) I knew, but I don't remember hurting like this. Of course, that'll be because I did Judo for ages and got really flexible. But I haven't done anything now for almost 4 years and so I've lost it. Still, hope I pick it up again soon! > I mean, Judo is a sports dicipline and Jiu-jitsu is a martial art, and one > that is specialised to incapacitate your opponent. Yes, though not as specialised as JKD. > I have to admit that I'd prefer a mixture of Shaolin Chuan Fa and Ninjitsu ;- > ) They're not bad, but I'm glad you didn't say Karate. I have no respect for the followers of that - most people who do that are bullies because the discipline is less. > But this is also a good argument against these action movie theories: > I have some knowledge about martial art styles and you shouldn't watch an > action movie with me because I know most of the weapons. That's a gun. That's a knife. That's a really sharp and long knife. That's a sword... ;) > But I couldn't really use that knowledge to hurt someone because I never > practiced martial arts and I never fired a weapon. I mean you really have to > practice that several times before you can be as effective as some of these > guys have been. And movies and video games don't provide the practice nor the > weapons to do it. No, of course not. > OK, a katana is a bit different, but if you don't know how to use it you > probably only chop yourself... I can use a sword - but that's because I also used to fence. Not just Epee (no accent on these keyboards!), but Foil and Sabre (closest to the japanese style). Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 01:28:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA22519 for dynarec-outgoing; Wed, 5 Apr 2000 01:28:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 5 Apr 2000 01:28:32 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers In-Reply-To: <38EAF7C9.5E1A1684@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > Ji-jitsu - and when I told him I did Judo, he told me to go with him. So I > > > went there last night for the first time and now I'm in pain. Aaah! My arms > > > hurt! Must... stop... typing... :) > > Hm... Well, when he asked you to go with him, I was thinking it was more > > of a sexual thing. Just why again do your arms hurt so much? ;-) > Well, he had one of my arms behind my back and I had the other arm around > his neck and... ohmygod! :o And really quick like, you pulled his underwear up over his head, right? ;-) POWER WEDGIE! I think that would be a good idea to put in a video game of some sort. > Hey, my first night there and already a girl asked me to go with her for a > drink next Tuesday. ;p Cool! She wasn't one of the lee sisters, was she? (Ug and Home) -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 01:34:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA22544 for dynarec-outgoing; Wed, 5 Apr 2000 01:34:17 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EAF951.5BF2AD1F@eurocopter.de> Date: Wed, 05 Apr 2000 10:29:05 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <200004050822.KAA27435@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > A martial art expert? As I like Japanese and oriental culture I'm also > interested in this kind of things (and martial art movies are fun :). But my > knowledge is very limited. I, myself, am no martial arts expert. I'm good at what I do - Judo - but my knowledge only stretches to theory with other pracices (Kung-Fu, TKD etc)/ > Do you mean? I was playing last weekend Final Fantasy 8 and now I feel I could > go to a street and begin to kill people with a gun blade (what a strange weapon) > :) Don't, though. I mean, you've got to FIND the blade first - and when you've done that, you're going to set the media off again... ;) > > OK, a katana is a bit different, but if you don't know how to use it you > > probably only chop yourself... > > More easyly than you can think :) If I have cut myself sometimes using a small > kitchen knife I don't want to think what can happen to me with these large > sharp swords :) I can beat that - I've stabbed myself through the hand with a steak knife (one of the big ones). And no, I didn't do it on purpose. :) My friend can beat that as well - he got shot in the leg with a shotgun! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 01:42:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA22571 for dynarec-outgoing; Wed, 5 Apr 2000 01:42:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EAFBEA.7FFC6A21@eurocopter.de> Date: Wed, 05 Apr 2000 10:40:10 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Well, he had one of my arms behind my back and I had the other arm around > > his neck and... ohmygod! :o > > And really quick like, you pulled his underwear up over his head, right? > ;-) > > POWER WEDGIE! > > I think that would be a good idea to put in a video game of some sort. Heh! Yeah, that'd be cool. I can see the advert now: "Street Figher MCXXVI-and-a-bit: Coming soon to an arcade near you! With new features such as Tickle-a-thon(tm) and the much touted POWER WEDGIE mode!" :)) > > Hey, my first night there and already a girl asked me to go with her for a > > drink next Tuesday. ;p > > Cool! She wasn't one of the lee sisters, was she? (Ug and Home) I don't know who they are. But she wasn't ugly, so I'm guessing the answer is no. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 06:47:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA23363 for dynarec-outgoing; Wed, 5 Apr 2000 06:47:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EAF7C9.5E1A1684@eurocopter.de> Message-Id: <00036483c4207733_mailit@mailhub.rrze.uni-erlangen.de> References: <38EAF7C9.5E1A1684@eurocopter.de> Date: Wed, 05 Apr 2000 15:40:24 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Okay, but it was the only mainframe I could think of at the time. Did I >mention that I hurt at the moment? ;) Not in the last few seconds ;-) >Hey, my first night there and already a girl asked me to go with her for a >drink next Tuesday. ;p How did you manage that? Maybe she just seeks for someone who cannot beat her ;-) -- M.I.Ke One is not superior merely because one sees the world as odious. -- Chateaubriand (1768-1848) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 06:47:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA23376 for dynarec-outgoing; Wed, 5 Apr 2000 06:47:07 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EAF745.F96DBECF@eurocopter.de> Message-Id: <00036483af533359_mailit@mailhub.rrze.uni-erlangen.de> References: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> <38EAEA33.220C7F5F@eurocopter.de> <0003647ee23f4a59_mailit@mailhub.rrze.uni-erlangen.de> <38EAF745.F96DBECF@eurocopter.de> Date: Wed, 05 Apr 2000 15:34:35 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No idea, I don't follow the mainframe market. The cost is a little out of >my price range. :) You don't have at least a IBM S/390? Too bad! ;-) >Black belt, 2nd Dan. Not bad! I think there are 10 Dan grades in Judo, right? >I knew, but I don't remember hurting like this. Of course, that'll be >because I did Judo for ages and got really flexible. But I haven't done >anything now for almost 4 years and so I've lost it. Still, hope I pick it >up again soon! It was exactly the same when I didn't play badminton for some time, then I thought my right arm was falling off. >Yes, though not as specialised as JKD. I guess you mean Jete Kun Do (sp?) the style created by Bruce Lee. I think that is a mixture of Jiu-jitsu and Escrima... >They're not bad, but I'm glad you didn't say Karate. I have no respect for >the followers of that - most people who do that are bullies because the >discipline is less. Karate is too blunt without any elegance! >That's a gun. That's a knife. That's a really sharp and long knife. That's >a sword... ;) For old weapons I'd be more precise (dagger, gladius, broad sword, sabre, katana, ...) and I certainly can tell a ninjato from a katana. In action movies it goes like this: Oh no, not the Beretta M92F again, they're using it too much. Nice Desert Eagle. Is it .357, .44, or .50AE? Hey, wait how can he fire an Ingram MAC-10 single-handed? Caliber .45ACP and 30 round magazine that is emptied in just 1.5 seconds you simply cannot controll that! I think I'd get on your nerves ;-) >I can use a sword - but that's because I also used to fence. Not just Epee >(no accent on these keyboards!), but Foil and Sabre (closest to the >japanese style). Oh shit, here we have the next candidate... ;-) OK, sabre might be relatively close to a katana because of the curved, one edged blade, but I think the technique is still different. Although I have to admit that you will be able to do some damage with it. -- M.I.Ke If you pick up a starving dog and make him prosperous, he will not bite you. This is the principal difference between a dog and a man. -- Mark Twain --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 06:47:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA23381 for dynarec-outgoing; Wed, 5 Apr 2000 06:47:08 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <200004050822.KAA27435@pons.ac.upc.es> Message-Id: <00036483bf365cfd_mailit@mailhub.rrze.uni-erlangen.de> References: <200004050822.KAA27435@pons.ac.upc.es> Date: Wed, 05 Apr 2000 15:39:01 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >A martial art expert? Nope, I have absolutely no practice. Like in most other topic I have only theoretical knowledge. >As I like Japanese and oriental culture I'm also >interested in this kind of things (and martial art movies are fun :). I adore Jackie Chan, that guy is great! >Do you mean? I was playing last weekend Final Fantasy 8 and now I feel I >could go to a street and begin to kill people with a gun blade (what a strange >weapon) :) Gun blade? Hey even I don't know that one! >More easyly than you can think :) If I have cut myself sometimes using a >small kitchen knife I don't want to think what can happen to me with these large >sharp swords :) Hehe. I got my hands cut several times when I was younger, but now I'm don't have much problems with knives. -- M.I.Ke I see a good deal of talk from Washington about lowering taxes. I hope they do get 'em lowered enough so people can afford to pay 'em. -- Will Rogers --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 06:47:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA23387 for dynarec-outgoing; Wed, 5 Apr 2000 06:47:09 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EAF951.5BF2AD1F@eurocopter.de> Message-Id: <00036483d12ab51b_mailit@mailhub.rrze.uni-erlangen.de> References: <200004050822.KAA27435@pons.ac.upc.es> <38EAF951.5BF2AD1F@eurocopter.de> Date: Wed, 05 Apr 2000 15:44:02 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I, myself, am no martial arts expert. I'm good at what I do - Judo - but my >knowledge only stretches to theory with other pracices (Kung-Fu, TKD etc)/ I think Kung-Fu isn't a style for itself but rather a group of styles similar to Budo. The fencing style is Wushu, which is what Ray Park, the guy who played Darth Maul, does. >I can beat that - I've stabbed myself through the hand with a steak knife >(one of the big ones). And no, I didn't do it on purpose. :) I did something similar with a pocket knife but I didn't stab through. >My friend can beat that as well - he got shot in the leg with a shotgun! :o Uh, that must hurt for sure! Did he loose his leg? -- M.I.Ke "I have to convince you, or at least snow you ..." -- Prof. Romas Aleliunas, CS 435 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 06:54:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA23426 for dynarec-outgoing; Wed, 5 Apr 2000 06:54:36 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EAFBEA.7FFC6A21@eurocopter.de> Message-Id: <00036483dec5e6a7_mailit@mailhub.rrze.uni-erlangen.de> References: <38EAFBEA.7FFC6A21@eurocopter.de> Date: Wed, 05 Apr 2000 15:47:51 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >"Street Figher MCXXVI-and-a-bit: Coming soon to an arcade near you! With >new features such as Tickle-a-thon(tm) and the much touted POWER WEDGIE >mode!" There is a German (table) RPG where you play teddy bears and similar stuff. In that game you're also able to learn a martial arts style called Whum-Uae witch lots of funny techniques ;-) -- M.I.Ke Help fight continental drift. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 07:18:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA23481 for dynarec-outgoing; Wed, 5 Apr 2000 07:18:18 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EB4AA8.50492A67@eurocopter.de> Date: Wed, 05 Apr 2000 16:16:08 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <200004050822.KAA27435@pons.ac.upc.es> <00036483bf365cfd_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >As I like Japanese and oriental culture I'm also > >interested in this kind of things (and martial art movies are fun :). > > I adore Jackie Chan, that guy is great! I'm surprised he's still alive! AFAIK he's one of the only people alive to have broken every bone in his body! > >Do you mean? I was playing last weekend Final Fantasy 8 and now I feel I > >could go to a street and begin to kill people with a gun blade (what a > strange > >weapon) :) > > Gun blade? Hey even I don't know that one! That's probably because it's not real. It's from a game. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 07:18:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA23490 for dynarec-outgoing; Wed, 5 Apr 2000 07:18:26 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EB4A2B.2D5C5A20@eurocopter.de> Date: Wed, 05 Apr 2000 16:14:03 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> <38EAEA33.220C7F5F@eurocopter.de> <0003647ee23f4a59_mailit@mailhub.rrze.uni-erlangen.de> <38EAF745.F96DBECF@eurocopter.de> <00036483af533359_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >No idea, I don't follow the mainframe market. The cost is a little out of > >my price range. :) > > You don't have at least a IBM S/390? Too bad! ;-) No. But I have got a Gameboy. ;) > >Black belt, 2nd Dan. > > Not bad! I think there are 10 Dan grades in Judo, right? I don't know how far it goes up, to be honest - I just know that some of the top guys in Britain are 13th Dan. Maybe 15 or 20? Whatever, I don't want to fight those guys! :o > >I knew, but I don't remember hurting like this. Of course, that'll be > >because I did Judo for ages and got really flexible. But I haven't done > >anything now for almost 4 years and so I've lost it. Still, hope I pick it > >up again soon! > > It was exactly the same when I didn't play badminton for some time, then I > thought my right arm was falling off. Heh. I played that again back at Uni. Played doubles - and I was jumping around all over the place. On the floor and everything. Hey, my side won! :) > >Yes, though not as specialised as JKD. > > I guess you mean Jete Kun Do (sp?) the style created by Bruce Lee. I think > that is a mixture of Jiu-jitsu and Escrima... Jae Kwon Do - and yes, I mean that. Not so much a martial art as a death sentence - it's designed to immobilize your opponent as quickly as possible. Scary stuff! > >They're not bad, but I'm glad you didn't say Karate. I have no respect for > >the followers of that - most people who do that are bullies because the > >discipline is less. > > Karate is too blunt without any elegance! Absolutely! > >That's a gun. That's a knife. That's a really sharp and long knife. That's > >a sword... ;) > > For old weapons I'd be more precise (dagger, gladius, broad sword, sabre, > katana, ...) and I certainly can tell a ninjato from a katana. Same here. > In action movies it goes like this: > Oh no, not the Beretta M92F again, they're using it too much. Nice Desert > Eagle. Is it .357, .44, or .50AE? > Hey, wait how can he fire an Ingram MAC-10 single-handed? Caliber .45ACP and > 30 round magazine that is emptied in just 1.5 seconds you simply cannot > controll that! > I think I'd get on your nerves ;-) Yes. I laugh at stupidly done stuff, but I don't know enough about weapons to do the same. :) > >I can use a sword - but that's because I also used to fence. Not just Epee > >(no accent on these keyboards!), but Foil and Sabre (closest to the > >japanese style). > > Oh shit, here we have the next candidate... ;-) ;) > OK, sabre might be relatively close to a katana because of the curved, one > edged blade, but I think the technique is still different. Although I have to > admit that you will be able to do some damage with it. The technique is certainly different - but it is the closest in styles to a Japanese style. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 07:24:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA23524 for dynarec-outgoing; Wed, 5 Apr 2000 07:24:56 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EB4C07.A4C830EB@eurocopter.de> Date: Wed, 05 Apr 2000 16:21:59 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <38EAF7C9.5E1A1684@eurocopter.de> <00036483c4207733_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Okay, but it was the only mainframe I could think of at the time. Did I > >mention that I hurt at the moment? ;) > > Not in the last few seconds ;-) Oh, that's good. If that's the case, you won't mind me mentioning that I hurt. ;) > >Hey, my first night there and already a girl asked me to go with her for a > >drink next Tuesday. ;p > > How did you manage that? Good looks, charm and personality. Hell, I don't know! ;)) > Maybe she just seeks for someone who cannot beat her ;-) Yeah, maybe... Hey, hang on! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 07:34:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA23556 for dynarec-outgoing; Wed, 5 Apr 2000 07:34:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EB4D90.E76C2F56@eurocopter.de> Date: Wed, 05 Apr 2000 16:28:32 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <200004050822.KAA27435@pons.ac.upc.es> <38EAF951.5BF2AD1F@eurocopter.de> <00036483d12ab51b_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I think Kung-Fu isn't a style for itself but rather a group of styles similar > to Budo. The fencing style is Wushu, which is what Ray Park, the guy who > played Darth Maul, does. You're right - Kung-Fu isn't a style in itself but a practice. There are several styles that form Kung-Fu. Then again, the same could be said of most martial arts! > >I can beat that - I've stabbed myself through the hand with a steak knife > >(one of the big ones). And no, I didn't do it on purpose. :) > > I did something similar with a pocket knife but I didn't stab through. Well, I didn't really. The bone got in the way! :o > >My friend can beat that as well - he got shot in the leg with a shotgun! :o > > Uh, that must hurt for sure! Did he loose his leg? No, but he was lucky - it was only a few pellets that hit his knee. The funny thing (well, ironic) was that it was a soldier who did it. He was on an army camp as part of a high school thing and the soldier was - at that moment in time - talking about what could happen if the safety was off! However... the safety was off and when he fired it (expecting it not to fire), it did. Not good! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 07:39:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA23596 for dynarec-outgoing; Wed, 5 Apr 2000 07:39:18 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EB4A2B.2D5C5A20@eurocopter.de> Message-Id: <0003648499e2a7c3_mailit@mailhub.rrze.uni-erlangen.de> References: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> <38EAEA33.220C7F5F@eurocopter.de> <0003647ee23f4a59_mailit@mailhub.rrze.uni-erlangen.de> <38EAF745.F96DBECF@eurocopter.de> <00036483af533359_mailit@mailhub.rrze.uni-erlangen.de> <38EB4A2B.2D5C5A20@eurocopter.de> Date: Wed, 05 Apr 2000 16:40:10 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No. But I have got a Gameboy. ;) What a mainframe! >I don't know how far it goes up, to be honest - I just know that some of >the top guys in Britain are 13th Dan. Maybe 15 or 20? Whatever, I don't >want to fight those guys! :o That high? I thought there were only 10 Dan grades, or was than karate? >Heh. I played that again back at Uni. Played doubles - and I was jumping >around all over the place. On the floor and everything. Hey, my side won! >:) I'm too lazy to run around all the time so I'm a better double player. I'm one of the few player who do a long service even in doubles and it doesn't always work, but believe me as soon as two of these are not out and your opponents guessed wrong they will try to get any ball no matter how bad ;-) >Jae Kwon Do - and yes, I mean that. Not so much a martial art as a death >sentence - it's designed to immobilize your opponent as quickly as >possible. Scary stuff! I checked the spelling, it's Jeet Kune Do. And it's a mixture of Wing Chun (no, not the group), Escrima, and other styles. >> Karate is too blunt without any elegance! >Absolutely! Good that we agree on this one ;-) >Yes. I laugh at stupidly done stuff, but I don't know enough about weapons >to do the same. :) >From time to time they have weapons I don't know or cannot identify because you don't see them long enough, but most of the time they have the typical weapons. I certainly have nothing against the Beretta, it's a nice pistol, but why do they have to use it in almost any action movie. What about the P7 or Mark 23, these are cool pistols too! >The technique is certainly different - but it is the closest in styles to a >Japanese style. Unless you know how to handle a scramasax ;-) >> I adore Jackie Chan, that guy is great! >I'm surprised he's still alive! AFAIK he's one of the only people alive to >have broken every bone in his body! Yeah, I think he broke some bones even twice at least. >> Gun blade? Hey even I don't know that one! >That's probably because it's not real. It's from a game. :) I know, Victor mentioned that it's from FF8. -- M.I.Ke Monday, n.: In Christian countries, the day after the baseball game. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 07:48:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA23621 for dynarec-outgoing; Wed, 5 Apr 2000 07:48:26 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EB4D90.E76C2F56@eurocopter.de> Message-Id: <00036484ba71f980_mailit@mailhub.rrze.uni-erlangen.de> References: <200004050822.KAA27435@pons.ac.upc.es> <38EAF951.5BF2AD1F@eurocopter.de> <00036483d12ab51b_mailit@mailhub.rrze.uni-erlangen.de> <38EB4D90.E76C2F56@eurocopter.de> Date: Wed, 05 Apr 2000 16:49:16 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Oh, that's good. If that's the case, you won't mind me mentioning that I >hurt. ;) Haven't I heard that before? >Good looks, charm and personality. Let's check my chances: - good looks - no - charm - well, I have I good hand with dogs but girls are no dogs... - personality - yes, but nothing girls would be interested in. Hey, my chances are even higher than 0% ;-) >Hell, I don't know! ;)) Shit, I thought I can get hints from someone who knows what he does... >Yeah, maybe... Hey, hang on! ;) Good luck! ;-) >You're right - Kung-Fu isn't a style in itself but a practice. There are >several styles that form Kung-Fu. Then again, the same could be said of >most martial arts! True. >Well, I didn't really. The bone got in the way! :o What's that supposed to do in your hand? ;-) >No, but he was lucky - it was only a few pellets that hit his knee. The >funny thing (well, ironic) was that it was a soldier who did it. He was on >an army camp as part of a high school thing and the soldier was - at that >moment in time - talking about what could happen if the safety was off! >However... the safety was off and when he fired it (expecting it not to >fire), it did. Not good! Too bad! That's why the H&K P7 is so cool. The safety is in the grip, so it's absolutely safe as long as you don't really want to fire it. -- M.I.Ke Self Test for Paranoia: You know you have it when you can't think of anything that's your own fault. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 08:01:22 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA23656 for dynarec-outgoing; Wed, 5 Apr 2000 08:01:22 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EB5443.1E7C91E7@eurocopter.de> Date: Wed, 05 Apr 2000 16:57:07 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> <38EAEA33.220C7F5F@eurocopter.de> <0003647ee23f4a59_mailit@mailhub.rrze.uni-erlangen.de> <38EAF745.F96DBECF@eurocopter.de> <00036483af533359_mailit@mailhub.rrze.uni-erlangen.de> <38EB4A2B.2D5C5A20@eurocopter.de> <0003648499e2a7c3_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >No. But I have got a Gameboy. ;) > > What a mainframe! I know. And it's one of the original ones too! Yeah, I run all my computers off it! I used to use it as a web server, but the batteries kept running out. ;) > >I don't know how far it goes up, to be honest - I just know that some of > >the top guys in Britain are 13th Dan. Maybe 15 or 20? Whatever, I don't > >want to fight those guys! :o > > That high? I thought there were only 10 Dan grades, or was than karate? Must be Karate. There's at least 2 guys in Britain at 13th Dan. One's written a book about it too... > >Heh. I played that again back at Uni. Played doubles - and I was jumping > >around all over the place. On the floor and everything. Hey, my side won! > >:) > > I'm too lazy to run around all the time so I'm a better double player. I'm > one of the few player who do a long service even in doubles and it doesn't > always work, but believe me as soon as two of these are not out and your > opponents guessed wrong they will try to get any ball no matter how bad ;-) I'm a better doubles player too. But I'm not scared of the floor, so I jump around for no good reason. :) > >Jae Kwon Do - and yes, I mean that. Not so much a martial art as a death > >sentence - it's designed to immobilize your opponent as quickly as > >possible. Scary stuff! > > I checked the spelling, it's Jeet Kune Do. And it's a mixture of Wing Chun > (no, not the group), Escrima, and other styles. Is it? I've seen it written as "Jae Kwon Do" before now. "Jeet Kune Do" sounds cooler though. :) And Wing Chun is, of course, a part of Kung Fu. > >> Karate is too blunt without any elegance! > >Absolutely! > > Good that we agree on this one ;-) Absolutely! ;) > I certainly have nothing against the Beretta, it's a nice pistol, but why do > they have to use it in almost any action movie. What about the P7 or Mark 23, > these are cool pistols too! Don't know. Maybe they actually have realistic models of the Beretta and they don't want to buy anything else? > >The technique is certainly different - but it is the closest in styles to a > >Japanese style. > > Unless you know how to handle a scramasax ;-) Well, I wouldn't go into a fight with a sabre anyway. In fact, if I could possibly help it, I wouldn't go into a fight at all - especially not one involving weapons! > >I'm surprised he's still alive! AFAIK he's one of the only people alive to > >have broken every bone in his body! > > Yeah, I think he broke some bones even twice at least. I can believe it. But hey, it's what you get for doing your own stunts all the time - and being in as many films as he has been in! > >> Gun blade? Hey even I don't know that one! > >That's probably because it's not real. It's from a game. :) > > I know, Victor mentioned that it's from FF8. Of course. I was just teasing you. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 08:19:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA23683 for dynarec-outgoing; Wed, 5 Apr 2000 08:19:02 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EB58B4.C898E6B@eurocopter.de> Date: Wed, 05 Apr 2000 17:16:04 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <200004050822.KAA27435@pons.ac.upc.es> <38EAF951.5BF2AD1F@eurocopter.de> <00036483d12ab51b_mailit@mailhub.rrze.uni-erlangen.de> <38EB4D90.E76C2F56@eurocopter.de> <00036484ba71f980_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Oh, that's good. If that's the case, you won't mind me mentioning that I > >hurt. ;) > > Haven't I heard that before? Maybe, but it wouldn't have been from me. But by a strange coincedence, now you mention it, I do actually hurt. ;)) > >Good looks, charm and personality. > > Let's check my chances: > - good looks - no Well, I'm hardly... damn, can't think of anyone. Was going to write Leonardo DiCaprio, but I wouldn't even WANT to be him! > - charm - well, I have I good hand with dogs but girls are no dogs... Well, that depends on... no, I'm not going there. :) > - personality - yes, but nothing girls would be interested in. Depends on the girl. I've done the impossible: found girls interested in computers, games and... emulation! They _do_ exist! It's just... they have boyfriends. Damn! > Hey, my chances are even higher than 0% ;-) Your chances are never 0% so long as you don't look like a Labrador, smell like sewage and have the personality of a tree. And even then - maybe, just maybe... ;) I'd say whatever the situation is, your odds are better than winning the lottery. Why do I say this? Well, typically 3 people win the jackpot every Saturday. I'd say that a whole load more win in Real Life(tm) every day! > >Hell, I don't know! ;)) > > Shit, I thought I can get hints from someone who knows what he does... I don't know. I'm just as scared as you! ;) > >Yeah, maybe... Hey, hang on! ;) > > Good luck! ;-) Damnit! > >Well, I didn't really. The bone got in the way! :o > > What's that supposed to do in your hand? ;-) I don't know, but I've figured one if its uses is to stop knives going completely through hands. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 08:24:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA23702 for dynarec-outgoing; Wed, 5 Apr 2000 08:24:38 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EB5443.1E7C91E7@eurocopter.de> Message-Id: <000364853bb8267e_mailit@mailhub.rrze.uni-erlangen.de> References: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> <38EAEA33.220C7F5F@eurocopter.de> <0003647ee23f4a59_mailit@mailhub.rrze.uni-erlangen.de> <38EAF745.F96DBECF@eurocopter.de> <00036483af533359_mailit@mailhub.rrze.uni-erlangen.de> <38EB4A2B.2D5C5A20@eurocopter.de> <0003648499e2a7c3_mailit@mailhub.rrze.uni-erlangen.de> <38EB5443.1E7C91E7@eurocopter.de> Date: Wed, 05 Apr 2000 17:25:25 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I know. And it's one of the original ones too! Yeah, I run all my computers >off it! I used to use it as a web server, but the batteries kept running >out. ;) You have to stop using it as a power station for your hi-fi equipment and the microwave then the batteries hold much longer ;-) >Must be Karate. There's at least 2 guys in Britain at 13th Dan. One's >written a book about it too... I look it up in the Judo book I have and it says there are 10 Dan grades. But I guess the book is wrong then. >I'm a better doubles player too. But I'm not scared of the floor, so I jump >around for no good reason. :) Might distract the opponent ;-) >Is it? I've seen it written as "Jae Kwon Do" before now. "Jeet Kune Do" >sounds cooler though. :) Is it possible that you mixed it with Tae Kwon Do? OK, "do" is the way, "kwon" is the fist, "tae" is the jump/kick, but what would be "jae"? >And Wing Chun is, of course, a part of Kung Fu. Sure, and I was stupid to write that JKD had something to do with Jiu-jitsu since that belongs to Budo. >Don't know. Maybe they actually have realistic models of the Beretta and >they don't want to buy anything else? Yeah, maybe. Although the boss of the bad guys in Die Hard (played by Alan Rickman) has a P7. >Well, I wouldn't go into a fight with a sabre anyway. In fact, if I could >possibly help it, I wouldn't go into a fight at all - especially not one >involving weapons! Agreed! >I can believe it. But hey, it's what you get for doing your own stunts all >the time - and being in as many films as he has been in! Indeed! Have you seen the trailer for the movies the'll show in April on Pro 7? Mr Bean, Mission Impossible, Eraser, and First Strike. If you take Mr Bean out than it's a bit strange to combine that Jackie Chan film with the other two because all of his stunts are real and most of the stuff in the others is only computer graphics! >Of course. I was just teasing you. ;) You like teasing, don't you? I just have to find a way to tease you ;-) -- M.I.Ke A lack of leadership is no substitute for inaction. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 08:38:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA23729 for dynarec-outgoing; Wed, 5 Apr 2000 08:38:13 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EB58B4.C898E6B@eurocopter.de> Message-Id: <000364856c4e23f5_mailit@mailhub.rrze.uni-erlangen.de> References: <200004050822.KAA27435@pons.ac.upc.es> <38EAF951.5BF2AD1F@eurocopter.de> <00036483d12ab51b_mailit@mailhub.rrze.uni-erlangen.de> <38EB4D90.E76C2F56@eurocopter.de> <00036484ba71f980_mailit@mailhub.rrze.uni-erlangen.de> <38EB58B4.C898E6B@eurocopter.de> Date: Wed, 05 Apr 2000 17:39:00 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Maybe, but it wouldn't have been from me. But by a strange coincedence, now >you mention it, I do actually hurt. ;)) Why, really? ;-) >Well, I'm hardly... damn, can't think of anyone. Was going to write >Leonardo DiCaprio, but I wouldn't even WANT to be him! I don't think that Leo looks that good... BTW, the good news is that he won't be in Episode 2 ;-) Well, I call myself an intellectual barbarian because I have to wear glasses (I'm blind as a mole and contact lenses don't agree with me) and I combine that with a full beard. >Well, that depends on... no, I'm not going there. :) No comment on that one. But I really have a good hand with dogs. When I went to the city today a small dog ran to the fence I just walked past and I noticed that it was beginning to bark. So simply let it sniff at my hand, stroked it a bit, and then went on. Well, it started to bark then but also waved its tail as if to say, hey that's not enough ;-) >Depends on the girl. I've done the impossible: found girls interested in >computers, games and... emulation! They _do_ exist! Really? Must be pretty rare! >It's just... they have boyfriends. Damn! We have a German proverb which could be translated like this: "Girls are like toilets, either shit or occupied." >Your chances are never 0% so long as you don't look like a Labrador, smell >like sewage and have the personality of a tree. And even then - maybe, just >maybe... ;) Well, you forgot in your evaluation that there are more men than women in the damn world... >I'd say whatever the situation is, your odds are better than winning the >lottery. Why do I say this? Well, typically 3 people win the jackpot every >Saturday. I'd say that a whole load more win in Real Life(tm) every day! What's Real Life? Can I buy that? Does it run on my computer? ;-) >I don't know. I'm just as scared as you! ;) As long as you don't let her notice that ;-) >I don't know, but I've figured one if its uses is to stop knives going >completely through hands. ;) Isn't evolution great? ;-) -- M.I.Ke I gave up Smoking, Drinking and Sex. It was the most * __________horrifying* 20 minutes of my life! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 08:53:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA23788 for dynarec-outgoing; Wed, 5 Apr 2000 08:53:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EB6099.64A8AC7@eurocopter.de> Date: Wed, 05 Apr 2000 17:49:45 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> <38EAEA33.220C7F5F@eurocopter.de> <0003647ee23f4a59_mailit@mailhub.rrze.uni-erlangen.de> <38EAF745.F96DBECF@eurocopter.de> <00036483af533359_mailit@mailhub.rrze.uni-erlangen.de> <38EB4A2B.2D5C5A20@eurocopter.de> <0003648499e2a7c3_mailit@mailhub.rrze.uni-erlangen.de> <38EB5443.1E7C91E7@eurocopter.de> <000364853bb8267e_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > You have to stop using it as a power station for your hi-fi equipment and the > microwave then the batteries hold much longer ;-) But what about the rest of the street that use it for their main power source? > >Must be Karate. There's at least 2 guys in Britain at 13th Dan. One's > >written a book about it too... > > I look it up in the Judo book I have and it says there are 10 Dan grades. But > I guess the book is wrong then. I'd say so, yes. :) How old is the book, BTW? > >I'm a better doubles player too. But I'm not scared of the floor, so I jump > >around for no good reason. :) > > Might distract the opponent ;-) Well, I do attempt to hit the shuttlecock at the same time. But I suppose actually falling on the floor for no good reason serves its own purpose too. :) > >Is it? I've seen it written as "Jae Kwon Do" before now. "Jeet Kune Do" > >sounds cooler though. :) > > Is it possible that you mixed it with Tae Kwon Do? > OK, "do" is the way, "kwon" is the fist, "tae" is the jump/kick, but what > would be "jae"? I don't speak Chinese/Japanese (I'm not sure from which the phrase comes from). > >And Wing Chun is, of course, a part of Kung Fu. > > Sure, and I was stupid to write that JKD had something to do with Jiu-jitsu > since that belongs to Budo. No idea. I only know what I've been told about JKD. :) > >Don't know. Maybe they actually have realistic models of the Beretta and > >they don't want to buy anything else? > > Yeah, maybe. Although the boss of the bad guys in Die Hard (played by Alan > Rickman) has a P7. Really? And speaking of Alan Rickman, I think he's a really good actor and always makes a good "bad guy" in every film he's been in. :) > Indeed! Have you seen the trailer for the movies the'll show in April on Pro > 7? Mr Bean, Mission Impossible, Eraser, and First Strike. If you take Mr Bean > out than it's a bit strange to combine that Jackie Chan film with the other > two because all of his stunts are real and most of the stuff in the others is > only computer graphics! No. Hmm. I may watch them. :) > >Of course. I was just teasing you. ;) > > You like teasing, don't you? Yes, it's one of the downsides to being British. ;) > I just have to find a way to tease you ;-) I'm living in Germany. Isn't that enough? ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 09:17:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA23872 for dynarec-outgoing; Wed, 5 Apr 2000 09:17:46 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EB6099.64A8AC7@eurocopter.de> Message-Id: <00036485f9d57b46_mailit@mailhub.rrze.uni-erlangen.de> References: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> <38EAEA33.220C7F5F@eurocopter.de> <0003647ee23f4a59_mailit@mailhub.rrze.uni-erlangen.de> <38EAF745.F96DBECF@eurocopter.de> <00036483af533359_mailit@mailhub.rrze.uni-erlangen.de> <38EB4A2B.2D5C5A20@eurocopter.de> <0003648499e2a7c3_mailit@mailhub.rrze.uni-erlangen.de> <38EB5443.1E7C91E7@eurocopter.de> <000364853bb8267e_mailit@mailhub.rrze.uni-erlangen.de> <38EB6099.64A8AC7@eurocopter.de> Date: Wed, 05 Apr 2000 18:18:35 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >But what about the rest of the street that use it for their main power >source? Tell them to buy their own Gameboys ;-) >How old is the book, BTW? Have to check... 1978. >Well, I do attempt to hit the shuttlecock at the same time. But I suppose >actually falling on the floor for no good reason serves its own purpose >too. :) If you want to be a clown, yes ;-) >I don't speak Chinese/Japanese (I'm not sure from which the phrase comes >from). That's one thing I don't understand anyway: Tae Kwon Do is Korean, but the name seems to be Japanese... >Really? And speaking of Alan Rickman, I think he's a really good actor and >always makes a good "bad guy" in every film he's been in. :) He is a good actor indeed, and I think one of the reasons why the other two Die Hard films aren't that good is because they don't feature such a good bad guy. Not to mention Kevin Costner's Robin Hood... >Yes, it's one of the downsides to being British. ;) It seems so. >I'm living in Germany. Isn't that enough? ;)) No! Am I cruel today? ;-) -- M.I.Ke In 1914, the first crossword puzzle was printed in a newspaper. The creator received $4000 down ... and $3000 across. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 09:22:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA23911 for dynarec-outgoing; Wed, 5 Apr 2000 09:22:51 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EB6797.A9F44FB3@eurocopter.de> Date: Wed, 05 Apr 2000 18:19:35 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <200004050822.KAA27435@pons.ac.upc.es> <38EAF951.5BF2AD1F@eurocopter.de> <00036483d12ab51b_mailit@mailhub.rrze.uni-erlangen.de> <38EB4D90.E76C2F56@eurocopter.de> <00036484ba71f980_mailit@mailhub.rrze.uni-erlangen.de> <38EB58B4.C898E6B@eurocopter.de> <000364856c4e23f5_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Well, I'm hardly... damn, can't think of anyone. Was going to write > >Leonardo DiCaprio, but I wouldn't even WANT to be him! > > I don't think that Leo looks that good... Nor I - but several thousand girls do, so what does that mean? Well, it means that several thousand girls have no taste - but it means that they DO think he looks good. Strange people. :) > BTW, the good news is that he won't be in Episode 2 ;-) That is good news. I really do hate him with a passion people can only dream of. :) > Well, I call myself an intellectual barbarian because I have to wear glasses > (I'm blind as a mole and contact lenses don't agree with me) and I combine > that with a full beard. I also wear glasses, but I don't have a beard. Having blonde hair and a beard looks strange. Or, to be fair, it does on me. :) > >Well, that depends on... no, I'm not going there. :) > > No comment on that one. It's safer not to. :) > But I really have a good hand with dogs. When I went to the city today a > small dog ran to the fence I just walked past and I noticed that it was > beginning to bark. So simply let it sniff at my hand, stroked it a bit, and > then went on. Well, it started to bark then but also waved its tail as if to > say, hey that's not enough ;-) So long as it didn't think it'd found a new sexual partner: your hand. ;) > >Depends on the girl. I've done the impossible: found girls interested in > >computers, games and... emulation! They _do_ exist! > > Really? Must be pretty rare! It seems so. I've only found two so far. And I still don't understand why... Well, no, I think I do: advertising. > >It's just... they have boyfriends. Damn! > > We have a German proverb which could be translated like this: > "Girls are like toilets, either shit or occupied." I like that proverb and I'm going to introduce that into Britain when I go back in a couple of weeks. :) > >Your chances are never 0% so long as you don't look like a Labrador, smell > >like sewage and have the personality of a tree. And even then - maybe, just > >maybe... ;) > > Well, you forgot in your evaluation that there are more men than women in the > damn world... Not true. 52% women, 48% men. So some men could be really lucky (or unlucky when you really think about it)... > >I'd say whatever the situation is, your odds are better than winning the > >lottery. Why do I say this? Well, typically 3 people win the jackpot every > >Saturday. I'd say that a whole load more win in Real Life(tm) every day! > > What's Real Life? Can I buy that? Does it run on my computer? ;-) It should be in your local computer shop right now. ;) > >I don't know. I'm just as scared as you! ;) > > As long as you don't let her notice that ;-) Of course. I was shocked, that's all I can say! :o > >I don't know, but I've figured one if its uses is to stop knives going > >completely through hands. ;) > > Isn't evolution great? ;-) I know. Just think, we have bones in our hand just so that people like me, when being stupid, don't shove knives through their hands. ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 09:37:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA23977 for dynarec-outgoing; Wed, 5 Apr 2000 09:37:58 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EB6B5C.1AF0711E@eurocopter.de> Date: Wed, 05 Apr 2000 18:35:40 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> <38EAEA33.220C7F5F@eurocopter.de> <0003647ee23f4a59_mailit@mailhub.rrze.uni-erlangen.de> <38EAF745.F96DBECF@eurocopter.de> <00036483af533359_mailit@mailhub.rrze.uni-erlangen.de> <38EB4A2B.2D5C5A20@eurocopter.de> <0003648499e2a7c3_mailit@mailhub.rrze.uni-erlangen.de> <38EB5443.1E7C91E7@eurocopter.de> <000364853bb8267e_mailit@mailhub.rrze.uni-erlangen.de> <38EB6099.64A8AC7@eurocopter.de> <00036485f9d57b46_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >But what about the rest of the street that use it for their main power > >source? > > Tell them to buy their own Gameboys ;-) Okay, I'll do that. :) > >How old is the book, BTW? > > Have to check... 1978. That may explain it. Whatever, Judo is a new sport and the rules are still changing - even now. > >Well, I do attempt to hit the shuttlecock at the same time. But I suppose > >actually falling on the floor for no good reason serves its own purpose > >too. :) > > If you want to be a clown, yes ;-) You could scare the other team by running into the net too while screaming. That'd serve a purpose too. Of course, you could get locked up after doing both of these - but it'd be funny for a short while. :)) > >I don't speak Chinese/Japanese (I'm not sure from which the phrase comes > >from). > > That's one thing I don't understand anyway: Tae Kwon Do is Korean, but the > name seems to be Japanese... It does - from the little Japanese that I know. > >Really? And speaking of Alan Rickman, I think he's a really good actor and > >always makes a good "bad guy" in every film he's been in. :) > > He is a good actor indeed, and I think one of the reasons why the other two > Die Hard films aren't that good is because they don't feature such a good bad > guy. Not to mention Kevin Costner's Robin Hood... He was brilliant in Robin Hood: Prince of Thieves. Which is more than could be said for Kevin Costner. Also - why has every Robin Hood ever (except one) been American and not even attempted an English accent? :o > >Yes, it's one of the downsides to being British. ;) > > It seems so. Sarcasm does appear to be a way of life, I'm afraid. And teasing. Especially teasing. > >I'm living in Germany. Isn't that enough? ;)) > > No! Am I cruel today? ;-) Yes, damn you! ;) To be fair, it took quite a lot of courage to come out here like I did. I knew little of Germany, I knew very little German - but I'm getting by now. I can hold a conversation in German now - so long as it doesn't last more than 10 seconds. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 10:24:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA24180 for dynarec-outgoing; Wed, 5 Apr 2000 10:24:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EB6797.A9F44FB3@eurocopter.de> Message-Id: <00036486e6e38456_mailit@mailhub.rrze.uni-erlangen.de> References: <200004050822.KAA27435@pons.ac.upc.es> <38EAF951.5BF2AD1F@eurocopter.de> <00036483d12ab51b_mailit@mailhub.rrze.uni-erlangen.de> <38EB4D90.E76C2F56@eurocopter.de> <00036484ba71f980_mailit@mailhub.rrze.uni-erlangen.de> <38EB58B4.C898E6B@eurocopter.de> <000364856c4e23f5_mailit@mailhub.rrze.uni-erlangen.de> <38EB6797.A9F44FB3@eurocopter.de> Date: Wed, 05 Apr 2000 19:24:52 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Nor I - but several thousand girls do, so what does that mean? Well, it >means that several thousand girls have no taste - but it means that they DO >think he looks good. Strange people. :) Tell me about it... >> BTW, the good news is that he won't be in Episode 2 ;-) >That is good news. I really do hate him with a passion people can only >dream of. :) I hope it's really official, I read it on JediNet. >I also wear glasses, but I don't have a beard. Having blonde hair and a >beard looks strange. Or, to be fair, it does on me. :) Well, I have dark blond hair (almost brown) and my beard is brown. At first it was lazyness not to shave but then I noticed that I looked at least 2 or 3 years younger than I actually was after having shaved the beard off. Now I'm just used to it. >So long as it didn't think it'd found a new sexual partner: your hand. ;) You have a very dirty imagination! >It seems so. I've only found two so far. And I still don't understand >why... Well, no, I think I do: advertising. Advertising? How does this work? >I like that proverb and I'm going to introduce that into Britain when I go >back in a couple of weeks. :) Oh my, what have I done? ;-) Well, the strange thing that the statement is true in most cases! >Not true. 52% women, 48% men. So some men could be really lucky (or unlucky >when you really think about it)... Oops, have to take a look at the statistics again... But I thought that more boys than girls are born which is equalized by the fact that women can get older than men. >It should be in your local computer shop right now. ;) Oh boy, oh boy, oh boy! I have to go there tomorrow! ;-) >Of course. I was shocked, that's all I can say! :o Is she German? >That may explain it. Whatever, Judo is a new sport and the rules are still >changing - even now. I think it was invented shortly after the second world war. >You could scare the other team by running into the net too while screaming. That's a great strategy! ;-) >He was brilliant in Robin Hood: Prince of Thieves. Which is more than could >be said for Kevin Costner. Also - why has every Robin Hood ever (except >one) been American and not even attempted an English accent? :o Haven't noticed that because I always saw them dubbed. Hey, now that you mention it, why did Kevin Costner speak fluent German in the whole film? ;-) BTW, I guess the one exception you mentioned is the film with Sean Connery, although he doesn't have an English accent as well. >> No! Am I cruel today? ;-) >Yes, damn you! ;) You could have eaten some of my lunch today: Bratwürste, Sauerkraut, and Kartoffelbrei ;-) >To be fair, it took quite a lot of courage to come out here like I did. I >knew little of Germany, I knew very little German - but I'm getting by now. I think I had problems to go to - say - Italy and work there because my Italian is almost non-existent. >I can hold a conversation in German now - so long as it doesn't last more >than 10 seconds. ;) Ah, yes that's quite long. Well, I visited one of my friends today very briefly, and we ended up to have a discussion about 2 hours long... -- M.I.Ke "Apathy is not the problem, it's the solution" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 23:24:00 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA00329 for dynarec-outgoing; Wed, 5 Apr 2000 23:24:00 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 5 Apr 2000 23:23:58 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: Grrrrr..... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com http://www.cnn.com/2000/TRAVEL/NEWS/04/05/airfrance.engl.ap/index.html Only the French are so arrogant to put their petty little false pride in front of people's safety. Should we talk about recompilers again? -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 23:33:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA00351 for dynarec-outgoing; Wed, 5 Apr 2000 23:33:46 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EC2F8A.B836257F@eurocopter.de> Date: Thu, 06 Apr 2000 08:32:42 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Only the French are so arrogant to put their petty little false pride in > front of people's safety. I can't read this at the moment as I only have 1hr of Internet usage a day - between 12 and 1pm. And it's 8:33 at the moment. What's it about? > Should we talk about recompilers again? What, you want to get on topic now? ;) Yes, certainly. How about this for a topic: how can we optimise code produced by a dynamic recompiler - yet keep it fast? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 23:35:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA00364 for dynarec-outgoing; Wed, 5 Apr 2000 23:35:43 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EC2F16.BF37DDDD@eurocopter.de> Date: Thu, 06 Apr 2000 08:30:46 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <200004050822.KAA27435@pons.ac.upc.es> <38EAF951.5BF2AD1F@eurocopter.de> <00036483d12ab51b_mailit@mailhub.rrze.uni-erlangen.de> <38EB4D90.E76C2F56@eurocopter.de> <00036484ba71f980_mailit@mailhub.rrze.uni-erlangen.de> <38EB58B4.C898E6B@eurocopter.de> <000364856c4e23f5_mailit@mailhub.rrze.uni-erlangen.de> <38EB6797.A9F44FB3@eurocopter.de> <00036486e6e38456_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >> BTW, the good news is that he won't be in Episode 2 ;-) > >That is good news. I really do hate him with a passion people can only > >dream of. :) > > I hope it's really official, I read it on JediNet. Is that an official or unofficial site? > >I also wear glasses, but I don't have a beard. Having blonde hair and a > >beard looks strange. Or, to be fair, it does on me. :) > > Well, I have dark blond hair (almost brown) and my beard is brown. > At first it was lazyness not to shave but then I noticed that I looked at > least 2 or 3 years younger than I actually was after having shaved the beard > off. Now I'm just used to it. But I have light blonde hair - and my beard, if I let it grow, doesn't grow in one colour. On either side of my chin hair grows in black. As I said, it makes me look strange. :) > >So long as it didn't think it'd found a new sexual partner: your hand. ;) > > You have a very dirty imagination! Okay, fair cop. But I know small dogs! ;) > >It seems so. I've only found two so far. And I still don't understand > >why... Well, no, I think I do: advertising. > > Advertising? How does this work? Advertising for computer games tends to be biased towards men all the time. There's not so many games I can think of that were advertised for both sexes - or a game advertised primarily for women (except for the "Barbie" games - which is for girls and not women anyway!). > >I like that proverb and I'm going to introduce that into Britain when I go > >back in a couple of weeks. :) > > Oh my, what have I done? ;-) Corrupting the English language! "Oh my god, they've killed the English Language!" "You bastards!"... :) > Well, the strange thing that the statement is true in most cases! It... seems so, yes. > >Not true. 52% women, 48% men. So some men could be really lucky (or unlucky > >when you really think about it)... > > Oops, have to take a look at the statistics again... > But I thought that more boys than girls are born which is equalized by the > fact that women can get older than men. No, I'm fairly sure that there are more women being born than men - certainly true in Britain. At the moment, they're blaming it on chemicals put in water (used to clean it) which seems to make people produce more oestrogen. I imagine it's the same across any developed country - we all use the same chemicals to clean the water! > >It should be in your local computer shop right now. ;) > > Oh boy, oh boy, oh boy! I have to go there tomorrow! ;-) Shame about the price you have to pay, though... ;) > >Of course. I was shocked, that's all I can say! :o > > Is she German? Yes. So maybe that explains it. Girls do like people from different countries - but I am in Munich which has a high ratio of foreigners to Germans. Who knows? > >That may explain it. Whatever, Judo is a new sport and the rules are still > >changing - even now. > > I think it was invented shortly after the second world war. I don't actually know for sure, but that sounds about right. > >You could scare the other team by running into the net too while screaming. > > That's a great strategy! ;-) It's got to be worth a go. > >He was brilliant in Robin Hood: Prince of Thieves. Which is more than could > >be said for Kevin Costner. Also - why has every Robin Hood ever (except > >one) been American and not even attempted an English accent? :o > > Haven't noticed that because I always saw them dubbed. Hey, now that you > mention it, why did Kevin Costner speak fluent German in the whole film? ;-) I'd say "He's talented", but I've been taught not to lie. ;) > BTW, I guess the one exception you mentioned is the film with Sean Connery, > although he doesn't have an English accent as well. No, in fact I was thinking of someone else. Who's name I've forgotten right now. Oops! Sean Connery is close, but still a Scottish accent... > >> No! Am I cruel today? ;-) > >Yes, damn you! ;) > > You could have eaten some of my lunch today: Bratwürste, Sauerkraut, and > Kartoffelbrei ;-) Sausage, strange cabbage stuff and potato... what? > >To be fair, it took quite a lot of courage to come out here like I did. I > >knew little of Germany, I knew very little German - but I'm getting by now. > > I think I had problems to go to - say - Italy and work there because my > Italian is almost non-existent. Somewhat like my German, then? No, to be fair, it's much improved now. > >I can hold a conversation in German now - so long as it doesn't last more > >than 10 seconds. ;) > > Ah, yes that's quite long. It's just about enough to tell them my name and what I do - then ask them about themselves. :) > Well, I visited one of my friends today very briefly, and we ended up to have > a discussion about 2 hours long... I can do that. On the phone too. Which is really bad when you're phoning Britain! Neil. PS How off-topic can two people get, eh? It's all your fault, Victor! ;) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 5 23:51:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA00393 for dynarec-outgoing; Wed, 5 Apr 2000 23:51:32 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EC33D8.56BA9DB@est.fib.upc.es> Date: Thu, 06 Apr 2000 08:51:04 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <200004050822.KAA27435@pons.ac.upc.es> <00036483bf365cfd_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > > Gun blade? Hey even I don't know that one! > It´s a mix between a revolver and a large sword. Just search someone who has FF8 :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 00:08:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA00435 for dynarec-outgoing; Thu, 6 Apr 2000 00:08:32 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 6 Apr 2000 00:08:31 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38EC2F8A.B836257F@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Only the French are so arrogant to put their petty little false pride in > > front of people's safety. > I can't read this at the moment as I only have 1hr of Internet usage a day > - between 12 and 1pm. And it's 8:33 at the moment. What's it about? French air traffic controllers don't want to speak English even though every international airport in the world speaks it (and it has caused problems). > Yes, certainly. How about this for a topic: how can we optimise code > produced by a dynamic recompiler - yet keep it fast? Well, if you're optimizing code from a recompiler and it slows down, then, you're not quite optimizing it, are you? ;-) -->NEil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 00:11:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA00455 for dynarec-outgoing; Thu, 6 Apr 2000 00:11:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EC3892.8641769B@est.fib.upc.es> Date: Thu, 06 Apr 2000 09:11:14 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <200004050822.KAA27435@pons.ac.upc.es> <38EAF951.5BF2AD1F@eurocopter.de> <00036483d12ab51b_mailit@mailhub.rrze.uni-erlangen.de> <38EB4D90.E76C2F56@eurocopter.de> <00036484ba71f980_mailit@mailhub.rrze.uni-erlangen.de> <38EB58B4.C898E6B@eurocopter.de> <000364856c4e23f5_mailit@mailhub.rrze.uni-erlangen.de> <38EB6797.A9F44FB3@eurocopter.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Griffiths wrote: > > > BTW, the good news is that he won't be in Episode 2 ;-) > > That is good news. I really do hate him with a passion people can only > dream of. :) > There is a 'Di Caprio must die club' somewhere? :) I want to join. > > > Well, I call myself an intellectual barbarian because I have to wear glasses > > (I'm blind as a mole and contact lenses don't agree with me) and I combine > > that with a full beard. > > I also wear glasses, but I don't have a beard. Having blonde hair and a > beard looks strange. Or, to be fair, it does on me. :) > I think you waste too much time watching TV and computer monitors ;) But I also wear glasses, actually who doesn´t wear glasses this days? And I didn´t like contact lenses either. I usually use a five days beard (oh well, no beard, one day beard, two days beard, three days beard, I think I have to cut my beard but I really don´t want ..., four day beard, this beard is beginning to teasing me ..., five days beard, oh well, I surrender, I will cut my beard ; ) > > > But I really have a good hand with dogs. When I went to the city today a > > small dog ran to the fence I just walked past and I noticed that it was > > beginning to bark. So simply let it sniff at my hand, stroked it a bit, and > > then went on. Well, it started to bark then but also waved its tail as if to > > say, hey that's not enough ;-) > > So long as it didn't think it'd found a new sexual partner: your hand. ;) > Dogs ..., I don´t like them, they don´t like me ... I like cats, tigers, panthers, lions and wolves. > > > >Depends on the girl. I've done the impossible: found girls interested in > > >computers, games and... emulation! They _do_ exist! > > > > Really? Must be pretty rare! > > It seems so. I've only found two so far. And I still don't understand > why... Well, no, I think I do: advertising. > You have found two !!! > > >Your chances are never 0% so long as you don't look like a Labrador, smell > > >like sewage and have the personality of a tree. And even then - maybe, just > > >maybe... ;) > > > > Well, you forgot in your evaluation that there are more men than women in the > > damn world... > > Not true. 52% women, 48% men. So some men could be really lucky (or unlucky > when you really think about it)... > Not really. 54% young men 46%young women, and 48%old men and 52%old women. Women live more than men. And my chance are -50 % ; ). Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 00:14:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA00465 for dynarec-outgoing; Thu, 6 Apr 2000 00:14:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EC394C.3660E8AD@est.fib.upc.es> Date: Thu, 06 Apr 2000 09:14:20 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> <38EAEA33.220C7F5F@eurocopter.de> <0003647ee23f4a59_mailit@mailhub.rrze.uni-erlangen.de> <38EAF745.F96DBECF@eurocopter.de> <00036483af533359_mailit@mailhub.rrze.uni-erlangen.de> <38EB4A2B.2D5C5A20@eurocopter.de> <0003648499e2a7c3_mailit@mailhub.rrze.uni-erlangen.de> <38EB5443.1E7C91E7@eurocopter.de> <000364853bb8267e_mailit@mailhub.rrze.uni-erlangen.de> <38EB6099.64A8AC7@eurocopter.de> <00036485f9d57b46_mailit@mailhub.rrze.uni-erlangen.de> <38EB6B5C.1AF0711E@eurocopter.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Griffiths wrote: > > > >I don't speak Chinese/Japanese (I'm not sure from which the phrase comes > > >from). > > > > That's one thing I don't understand anyway: Tae Kwon Do is Korean, but the > > name seems to be Japanese... > > It does - from the little Japanese that I know. > You know Japanase? Anata no name wa nan to iu no? Watashi no namae wa Victor (Bikutoru) desu. :)) > > > >Really? And speaking of Alan Rickman, I think he's a really good actor and > > >always makes a good "bad guy" in every film he's been in. :) > > > > He is a good actor indeed, and I think one of the reasons why the other two > > Die Hard films aren't that good is because they don't feature such a good bad > > guy. Not to mention Kevin Costner's Robin Hood... > > He was brilliant in Robin Hood: Prince of Thieves. Which is more than could > be said for Kevin Costner. Also - why has every Robin Hood ever (except > one) been American and not even attempted an English accent? :o > Yes he´s a good bad guy :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 00:47:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA00599 for dynarec-outgoing; Thu, 6 Apr 2000 00:47:57 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: Message-Id: <00036492c046811b_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Thu, 06 Apr 2000 09:33:03 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Only the French are so arrogant to put their petty little false pride in >front of people's safety. Probably... >Should we talk about recompilers again? I already wanted to ask: "How about a dynarec topic, just for a change?" ;-) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 00:47:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA00603 for dynarec-outgoing; Thu, 6 Apr 2000 00:47:58 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: Message-Id: <00036492e906af8f_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Thu, 06 Apr 2000 09:44:27 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> Yes, certainly. How about this for a topic: how can we optimise code >> produced by a dynamic recompiler - yet keep it fast? >Well, if you're optimizing code from a recompiler and it slows down, then, >you're not quite optimizing it, are you? ;-) I guess what he means is how to optimise code without slowing the translation process down too much. -- M.I.Ke "Now this is a totally brain damaged algorithm. Gag me with a smurfette." -- P. Buhr, Computer Science 354 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 00:47:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA00615 for dynarec-outgoing; Thu, 6 Apr 2000 00:47:59 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EC2F16.BF37DDDD@eurocopter.de> Message-Id: <00036492e445edaa_mailit@mailhub.rrze.uni-erlangen.de> References: <200004050822.KAA27435@pons.ac.upc.es> <38EAF951.5BF2AD1F@eurocopter.de> <00036483d12ab51b_mailit@mailhub.rrze.uni-erlangen.de> <38EB4D90.E76C2F56@eurocopter.de> <00036484ba71f980_mailit@mailhub.rrze.uni-erlangen.de> <38EB58B4.C898E6B@eurocopter.de> <000364856c4e23f5_mailit@mailhub.rrze.uni-erlangen.de> <38EB6797.A9F44FB3@eurocopter.de> <00036486e6e38456_mailit@mailhub.rrze.uni-erlangen.de> <38EC2F16.BF37DDDD@eurocopter.de> Date: Thu, 06 Apr 2000 09:43:07 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Is that an official or unofficial site? It's a fan site, but one of the more official ones. >But I have light blonde hair - and my beard, if I let it grow, doesn't grow >in one colour. On either side of my chin hair grows in black. As I said, it >makes me look strange. :) I also know some guys who cannot grow a beard because the hair only grows in some parts of their face. I on the other hand have a pretty regular beard. >Okay, fair cop. But I know small dogs! ;) I prefer the larger ones too, but not what you think! >Advertising for computer games tends to be biased towards men all the time. >There's not so many games I can think of that were advertised for both >sexes - or a game advertised primarily for women (except for the "Barbie" >games - which is for girls and not women anyway!). So how does this advertising help you to find out which girl likes computers and emulators? >Corrupting the English language! "Oh my god, they've killed the English >Language!" "You bastards!"... :) Hehe. >No, I'm fairly sure that there are more women being born than men - >certainly true in Britain. At the moment, they're blaming it on chemicals >put in water (used to clean it) which seems to make people produce more >oestrogen. I imagine it's the same across any developed country - we all >use the same chemicals to clean the water! They all blame it on the stuff in the water... hmm, which brings us back to our subject ;-) >> Oh boy, oh boy, oh boy! I have to go there tomorrow! ;-) >Shame about the price you have to pay, though... ;) Yes? What's the price? >Yes. So maybe that explains it. Girls do like people from different >countries - but I am in Munich which has a high ratio of foreigners to >Germans. Who knows? Yeah, Munich even has an English Garden ;-) >No, in fact I was thinking of someone else. Who's name I've forgotten right >now. Oops! Sean Connery is close, but still a Scottish accent... Ah, so was that Peter Bergin then? >Sausage, strange cabbage stuff and potato... what? Sausages, sauerkraut, and meshed potatos. >Somewhat like my German, then? No, to be fair, it's much improved now. Indeed? >It's just about enough to tell them my name and what I do - then ask them >about themselves. :) Yeah, very informative ;-) >I can do that. On the phone too. Which is really bad when you're phoning >Britain! Deutsche Telekom will be happy :-( >PS How off-topic can two people get, eh? It's all your fault, Victor! ;) What was the topic anyway? ;-) -- M.I.Ke "I'm prepared for all emergencies but totally unprepared for everyday life." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 00:48:00 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA00625 for dynarec-outgoing; Thu, 6 Apr 2000 00:48:00 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EC394C.3660E8AD@est.fib.upc.es> Message-Id: <00036492fb02be01_mailit@mailhub.rrze.uni-erlangen.de> References: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> <38EAEA33.220C7F5F@eurocopter.de> <0003647ee23f4a59_mailit@mailhub.rrze.uni-erlangen.de> <38EAF745.F96DBECF@eurocopter.de> <00036483af533359_mailit@mailhub.rrze.uni-erlangen.de> <38EB4A2B.2D5C5A20@eurocopter.de> <0003648499e2a7c3_mailit@mailhub.rrze.uni-erlangen.de> <38EB5443.1E7C91E7@eurocopter.de> <000364853bb8267e_mailit@mailhub.rrze.uni-erlangen.de> <38EB6099.64A8AC7@eurocopter.de> <00036485f9d57b46_mailit@mailhub.rrze.uni-erlangen.de> <38EB6B5C.1AF0711E@eurocopter.de> <38EC394C.3660E8AD@est.fib.upc.es> Date: Thu, 06 Apr 2000 09:49:29 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >You know Japanase? Not really... Ohaio gosaimasu. >Anata no name wa nan to iu no? >Watashi no namae wa Victor (Bikutoru) desu. Some parts sound familiar, but I don't get what you're saying... -- M.I.Ke "She said, `I know you ... you cannot sing'. I said, `That's nothing, you should hear me play piano.'" -- Morrisey --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 00:48:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA00629 for dynarec-outgoing; Thu, 6 Apr 2000 00:48:01 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EC3892.8641769B@est.fib.upc.es> Message-Id: <00036492f63d8c76_mailit@mailhub.rrze.uni-erlangen.de> References: <200004050822.KAA27435@pons.ac.upc.es> <38EAF951.5BF2AD1F@eurocopter.de> <00036483d12ab51b_mailit@mailhub.rrze.uni-erlangen.de> <38EB4D90.E76C2F56@eurocopter.de> <00036484ba71f980_mailit@mailhub.rrze.uni-erlangen.de> <38EB58B4.C898E6B@eurocopter.de> <000364856c4e23f5_mailit@mailhub.rrze.uni-erlangen.de> <38EB6797.A9F44FB3@eurocopter.de> <38EC3892.8641769B@est.fib.upc.es> Date: Thu, 06 Apr 2000 09:48:09 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from Quoted-Printable to 8bit by synthcom.com id AAA00622 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >There is a 'Di Caprio must die club' somewhere? :) I want to join. Me too, me too! Oh, is that on-topic again? Leo made me do it... ;-) >Dogs ..., I don´t like them, they don´t like me ... I like cats, tigers, >panthers, lions and wolves. I don't like cats that much, but if you like wolves (as do I) than you should also like some dogs. >Not really. 54% young men 46%young women, and 48%old men and 52%old women. >Women live more than men. >And my chance are -50 % ; ). Does that mean you spoilt all your chances? -- M.I.Ke Bumper sticker: "All the parts falling off this car are of the very finest British manufacture" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 01:06:07 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA00686 for dynarec-outgoing; Thu, 6 Apr 2000 01:06:07 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004060807.KAA24328@pons.ac.upc.es> Subject: Re: DYNAREC: New Topic: Game killers In-Reply-To: <00036492fb02be01_mailit@mailhub.rrze.uni-erlangen.de> from Michael Koenig at "Apr 6, 2000 09:49:29 am" To: dynarec@synthcom.com Date: Thu, 6 Apr 2000 10:07:51 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >You know Japanase? > > Not really... > I only take a look to a 'Learn Japanese in 21 days' book. > Ohaio gosaimasu. > What this means? A salutation? > >Anata no name wa nan to iu no? > >Watashi no namae wa Victor (Bikutoru) desu. > > Some parts sound familiar, but I don't get what you're saying... > If I haven't missed something means: what's your name? My name is Victor (kinda japanese transcription). :)) I only know the phrase structure and two or three dozens of words. I want to learn more but I don't have time. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 01:06:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA00698 for dynarec-outgoing; Thu, 6 Apr 2000 01:06:29 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004060808.KAA13406@pons.ac.upc.es> Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <00036492e906af8f_mailit@mailhub.rrze.uni-erlangen.de> from Michael Koenig at "Apr 6, 2000 09:44:27 am" To: dynarec@synthcom.com Date: Thu, 6 Apr 2000 10:08:51 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >> Yes, certainly. How about this for a topic: how can we optimise code > >> produced by a dynamic recompiler - yet keep it fast? > >Well, if you're optimizing code from a recompiler and it slows down, then, > >you're not quite optimizing it, are you? ;-) > > I guess what he means is how to optimise code without slowing the translation > process down too much. > We are really on topic? I can't believe that :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 02:10:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA01027 for dynarec-outgoing; Thu, 6 Apr 2000 02:10:07 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EC433D.8F1EA412@eurocopter.de> Date: Thu, 06 Apr 2000 09:56:45 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > I can't read this at the moment as I only have 1hr of Internet usage a day > > - between 12 and 1pm. And it's 8:33 at the moment. What's it about? > > French air traffic controllers don't want to speak English even though > every international airport in the world speaks it (and it has caused > problems). Really? Hmm, that's bad. Okay, they don't like English. I can accept that. However, there HAS to be one language for the world to use in airports - pilots aren't just from America and Britain, you know! But the pilots from other places still learn English because they have to all around the world. Hmm... > > Yes, certainly. How about this for a topic: how can we optimise code > > produced by a dynamic recompiler - yet keep it fast? > > Well, if you're optimizing code from a recompiler and it slows down, then, > you're not quite optimizing it, are you? ;-) No, that's right. But I was talking about keeping the *optimiser* fast - not the code! An easy optimisation is to use the registers as much as possible - but can we do such things as pipelining, yet keeping the optimiser fast? And other optimisations? How can we do them, yet keeping the optimiser fast? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 02:38:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA01069 for dynarec-outgoing; Thu, 6 Apr 2000 02:38:34 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EC4270.5338D730@eurocopter.de> Date: Thu, 06 Apr 2000 09:53:20 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <200004050822.KAA27435@pons.ac.upc.es> <38EAF951.5BF2AD1F@eurocopter.de> <00036483d12ab51b_mailit@mailhub.rrze.uni-erlangen.de> <38EB4D90.E76C2F56@eurocopter.de> <00036484ba71f980_mailit@mailhub.rrze.uni-erlangen.de> <38EB58B4.C898E6B@eurocopter.de> <000364856c4e23f5_mailit@mailhub.rrze.uni-erlangen.de> <38EB6797.A9F44FB3@eurocopter.de> <38EC3892.8641769B@est.fib.upc.es> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > That is good news. I really do hate him with a passion people can only > > dream of. :) > > There is a 'Di Caprio must die club' somewhere? :) I want to join. If it doesn't exist, I want to start it. :) > > I also wear glasses, but I don't have a beard. Having blonde hair and a > > beard looks strange. Or, to be fair, it does on me. :) > > > > I think you waste too much time watching TV and computer monitors ;) But I also > wear glasses, actually who doesn´t wear glasses this days? And I didn´t like > contact lenses either. I usually use a five days beard (oh well, no beard, one day > beard, two days beard, three days beard, I think I have to cut my beard but I > really don´t want ..., four day beard, this beard is beginning to teasing me ..., > five days beard, oh well, I surrender, I will cut my beard ; ) Heh. I think that everybody wearing glasses is a plot by opticians to make money. Hmm... Hmm... :) > > So long as it didn't think it'd found a new sexual partner: your hand. ;) > > Dogs ..., I don´t like them, they don´t like me ... I like cats, tigers, panthers, > lions and wolves. How about huskies? They're very close to both wolf and dog families (of course, dogs come from wolves)... > > Not true. 52% women, 48% men. So some men could be really lucky (or unlucky > > when you really think about it)... > > Not really. 54% young men 46%young women, and 48%old men and 52%old women. Women > live more than men. No, I certainly read that the percentage of babies born into this world today is 52% women. Although whether the report was for Britain alone or the whole world, I don't know. > And my chance are -50 % ; ). What - of living? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 02:55:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA01116 for dynarec-outgoing; Thu, 6 Apr 2000 02:55:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004060958.LAA24548@pons.ac.upc.es> Subject: Re: DYNAREC: New Topic: Game killers In-Reply-To: <38EC4270.5338D730@eurocopter.de> from Neil Griffiths at "Apr 6, 2000 09:53:20 am" To: dynarec@synthcom.com Date: Thu, 6 Apr 2000 11:58:18 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-MIME-Autoconverted: from 8bit to quoted-printable by pons.ac.upc.es id LAA24548 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id CAA01113 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > That is good news. I really do hate him with a passion people can only > > > dream of. :) > > > > There is a 'Di Caprio must die club' somewhere? :) I want to join. > > If it doesn't exist, I want to start it. :) > Why don't change this mailing list into a 'we hate Di Caprio' list ;) What do you say NB? > > > So long as it didn't think it'd found a new sexual partner: your hand. ;) > > > > Dogs ..., I don´t like them, they don´t like me ... I like cats, tigers, panthers, > > lions and wolves. > > How about huskies? They're very close to both wolf and dog families (of > course, dogs come from wolves)... > Yes I like huskies too, and 'pastores alemanes', german ??? ... I can't remember how is called a man who takes cares of animals. I don't like pitbulls and other heavy mutated dogs races. > > > Not true. 52% women, 48% men. So some men could be really lucky (or unlucky > > > when you really think about it)... > > > > Not really. 54% young men 46%young women, and 48%old men and 52%old women. Women > > live more than men. > > No, I certainly read that the percentage of babies born into this world > today is 52% women. Although whether the report was for Britain alone or > the whole world, I don't know. > I haven't readed/heared this. I have heared that more male babies born because they have more chance to day before getting old... Perhaps I'm wrong, but I'm sure I have heared this somewhere ... Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 05:57:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA01445 for dynarec-outgoing; Thu, 6 Apr 2000 05:57:34 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EC891A.9B5EE37F@eurocopter.de> Date: Thu, 06 Apr 2000 14:54:50 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> <38EAEA33.220C7F5F@eurocopter.de> <0003647ee23f4a59_mailit@mailhub.rrze.uni-erlangen.de> <38EAF745.F96DBECF@eurocopter.de> <00036483af533359_mailit@mailhub.rrze.uni-erlangen.de> <38EB4A2B.2D5C5A20@eurocopter.de> <0003648499e2a7c3_mailit@mailhub.rrze.uni-erlangen.de> <38EB5443.1E7C91E7@eurocopter.de> <000364853bb8267e_mailit@mailhub.rrze.uni-erlangen.de> <38EB6099.64A8AC7@eurocopter.de> <00036485f9d57b46_mailit@mailhub.rrze.uni-erlangen.de> <38EB6B5C.1AF0711E@eurocopter.de> <38EC394C.3660E8AD@est.fib.upc.es> <00036492fb02be01_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >You know Japanase? > > Not really... I know very little. I know how to write my name in Japanese - and in Chinese, though I don't know which dialect. Mandarin I think, but I'm not sure. > Ohaio gosaimasu. Fight! ;) > >Anata no name wa nan to iu no? > >Watashi no namae wa Victor (Bikutoru) desu. > > Some parts sound familiar, but I don't get what you're saying... What's your name? My name is Victor. You've just about covered the only phrases I know! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 05:57:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA01454 for dynarec-outgoing; Thu, 6 Apr 2000 05:57:38 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EC88AB.F809C413@eurocopter.de> Date: Thu, 06 Apr 2000 14:52:59 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <200004050822.KAA27435@pons.ac.upc.es> <38EAF951.5BF2AD1F@eurocopter.de> <00036483d12ab51b_mailit@mailhub.rrze.uni-erlangen.de> <38EB4D90.E76C2F56@eurocopter.de> <00036484ba71f980_mailit@mailhub.rrze.uni-erlangen.de> <38EB58B4.C898E6B@eurocopter.de> <000364856c4e23f5_mailit@mailhub.rrze.uni-erlangen.de> <38EB6797.A9F44FB3@eurocopter.de> <00036486e6e38456_mailit@mailhub.rrze.uni-erlangen.de> <38EC2F16.BF37DDDD@eurocopter.de> <00036492e445edaa_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Advertising for computer games tends to be biased towards men all the time. > >There's not so many games I can think of that were advertised for both > >sexes - or a game advertised primarily for women (except for the "Barbie" > >games - which is for girls and not women anyway!). > > So how does this advertising help you to find out which girl likes computers > and emulators? It doesn't: it's the reason why there are less girls who like computers and emulation. Well, it's the best reason I can think of... > >> Oh boy, oh boy, oh boy! I have to go there tomorrow! ;-) > >Shame about the price you have to pay, though... ;) > > Yes? What's the price? You have to hand in your fake life. ;) > >Yes. So maybe that explains it. Girls do like people from different > >countries - but I am in Munich which has a high ratio of foreigners to > >Germans. Who knows? > > Yeah, Munich even has an English Garden ;-) Yep, with many beer gardens in there. Which is something that Neil may be interested in: I found out yesterday that there are over 300 "micro" breweries in Munich alone. And I have 7 months left to try and sample each type of beer. It's a mission and a half - but I'm up for it. :) > >No, in fact I was thinking of someone else. Who's name I've forgotten right > >now. Oops! Sean Connery is close, but still a Scottish accent... > > Ah, so was that Peter Bergin then? I think it probably was, yes. > >Sausage, strange cabbage stuff and potato... what? > > Sausages, sauerkraut, and meshed potatos. Sauerkraut = strange cabbage stuff. ;) Mashed potato... Ah, now I know what that's called. A British dish called "Bangers and Mash" is sausages with (and sometimes inside the) mashed potato... > >Somewhat like my German, then? No, to be fair, it's much improved now. > > Indeed? Well, yes. I could count up to 20 when I got here. I can do more than that now. :) > >It's just about enough to tell them my name and what I do - then ask them > >about themselves. :) > > Yeah, very informative ;-) Thanks. ;) > >I can do that. On the phone too. Which is really bad when you're phoning > >Britain! > > Deutsche Telekom will be happy :-( Don't use them. Use one of those strange call-by-call numbers... > >PS How off-topic can two people get, eh? It's all your fault, Victor! ;) > > What was the topic anyway? ;-) Game killers. Like how we're "mailing list killers" ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 05:59:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA01477 for dynarec-outgoing; Thu, 6 Apr 2000 05:59:57 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EC89B3.B849D95F@eurocopter.de> Date: Thu, 06 Apr 2000 14:57:23 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: New Topic: Game killers References: <200004060958.LAA24548@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Why don't change this mailing list into a 'we hate Di Caprio' list ;) > What do you say NB? No - the less I think of him, the happier I'll feel. :) > > How about huskies? They're very close to both wolf and dog families (of > > course, dogs come from wolves)... > > > Yes I like huskies too, and 'pastores alemanes', german ??? ... I can't remember > how is called a man who takes cares of animals. I don't like pitbulls and other > heavy mutated dogs races. German Shepards, I'm guessing. Often used for police dogs. I also don't like pitbulls or anything like that... > > No, I certainly read that the percentage of babies born into this world > > today is 52% women. Although whether the report was for Britain alone or > > the whole world, I don't know. > > > I haven't readed/heared this. I have heared that more male babies born because > they have more chance to day before getting old... Perhaps I'm wrong, but I'm > sure I have heared this somewhere ... I have heard that female babies are sometimes killed in China because male babies can grow up to be "more useful". If this is true, that's horrible. :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 06:04:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA01492 for dynarec-outgoing; Thu, 6 Apr 2000 06:04:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004061307.PAA02342@pons.ac.upc.es> Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38EC433D.8F1EA412@eurocopter.de> from Neil Griffiths at "Apr 6, 2000 09:56:45 am" To: dynarec@synthcom.com Date: Thu, 6 Apr 2000 15:07:45 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > Yes, certainly. How about this for a topic: how can we optimise code > > > produced by a dynamic recompiler - yet keep it fast? > > > > Well, if you're optimizing code from a recompiler and it slows down, then, > > you're not quite optimizing it, are you? ;-) > > No, that's right. But I was talking about keeping the *optimiser* fast - > not the code! > > An easy optimisation is to use the registers as much as possible - but can > we do such things as pipelining, yet keeping the optimiser fast? And other > optimisations? How can we do them, yet keeping the optimiser fast? > It's difficult to say. For code which is executed a lot of times to use more optimization techniques is good, for code which is executed only once no optimizations it's the better chance. The more time a piece of code is used the more optimizations can be done keeping the whole emulator faster. What optimizations techniques can be used for dynamic recompilation? How says NB it depends upon your target emulator. I have found examples for all approach, no optimizations, register allocation and flag evaluation optimizations, and full block optimizations. Usually, for the arcade CPU's we want to emulate some register pre-allocation, flag evaluation and perhaps pipeling is useful and I think can be implemented without made the emulator slower than an interpreter (and if it's a C interpreter perhaps some more). In fact I believe the best solution for emulate 8-bit and 16-bit CPUs used in emulation escene is to use NB's method, because usually this machines need a very accurate timing. And using a per-instruction timing reduces the number of optimizations you can do are reduced. And I think it still manteins a better performance than some interpreters if it's well implemented. Perhaps when NB's Z80 Recompiler will be implemented some test could be done in this way. I think for 32 bits and new 64 bits CPUs (??) a per-block optimization approach would be more useful because they don't need a very accurate timing (or I think so) and the code generated must be the better posible. These CPUs need all power of actual processors (oh, well, with the GHz race we are seing lately in one or two years a PlayStation will be emulated in only two years :) so all optimizations are wellcome. With these CPUs some analysis of the code of each block is needed, use pipelining ever, supress all flag evaluation not needed, and perhaps use others optimizations from compilers theory. What usually will be never used are optimizations that require a large and slow tree analysis of dependences as some compilers use (or they should use). Although some implementations I know use these techniques (FX!32, Hot Spot) I think this isn't good for our emulation purposes. In any case. I think a lot of this is talk for just talking. The better and only way for know what optimizations can be implemented is to build a emulator and test it. Or in any case do some code translation tests watching speed of translation and speed of translated code. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 06:11:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA01515 for dynarec-outgoing; Thu, 6 Apr 2000 06:11:16 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004061314.PAA26091@pons.ac.upc.es> Subject: Re: DYNAREC: New Topic: Game killers In-Reply-To: <38EC89B3.B849D95F@eurocopter.de> from Neil Griffiths at "Apr 6, 2000 02:57:23 pm" To: dynarec@synthcom.com Date: Thu, 6 Apr 2000 15:14:23 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Why don't change this mailing list into a 'we hate Di Caprio' list ;) > > What do you say NB? > > No - the less I think of him, the happier I'll feel. :) Yes, it's better not to think of him. :) > > I have heard that female babies are sometimes killed in China because male > babies can grow up to be "more useful". If this is true, that's horrible. > :-/ It's true and, yes, it is terrible. This kind of discrimination as males are useful for work, females are only useful for wifes is really awful, stone age discrimination. I don't like it. Better education is needed to avoid this. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 09:51:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA02017 for dynarec-outgoing; Thu, 6 Apr 2000 09:51:11 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <200004060807.KAA24328@pons.ac.upc.es> Message-Id: <00036499ba0aa888_mailit@mailhub.rrze.uni-erlangen.de> References: <200004060807.KAA24328@pons.ac.upc.es> Date: Thu, 06 Apr 2000 17:52:24 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I only take a look to a 'Learn Japanese in 21 days' book. Hehe. >> Ohaio gosaimasu. >What this means? A salutation? It's a greeting, but I don't know the exact translation. I think it's a bit more formal than "moshi-moshi", which simply means "hello". >If I haven't missed something means: >what's your name? >My name is Victor (kinda japanese transcription). Ah, could have guessed that. -- M.I.Ke 7:30, Channel 5: The Bionic Dog (Action/Adventure) The Bionic Dog drinks too much and kicks over the National Redwood Forest. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 09:51:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA02026 for dynarec-outgoing; Thu, 6 Apr 2000 09:51:18 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <200004060958.LAA24548@pons.ac.upc.es> Message-Id: <00036499e2b594dd_mailit@mailhub.rrze.uni-erlangen.de> References: <200004060958.LAA24548@pons.ac.upc.es> Date: Thu, 06 Apr 2000 18:03:46 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yes I like huskies too, and 'pastores alemanes', german ??? ... I can't >remember how is called a man who takes cares of animals. The German name is "Deutscher Schaeferhund" and the English term is "German Shepard" as NG noted. I don't like these dogs that much because they are over -bred (I hope that term makes sense), they are sometimes agressive, and their hind legs are shorter which causes many problems with their backbones when they get older. I also like what is called "Irischer Wolfshund" in German. Is it "irish wolfhound"? These are nice big dogs and very peacful. >I don't like pitbulls and other heavy mutated dogs races. Me neither. And I don't like the dogs which have a similar size like rats. For me a dog has to look a bit similar to a wolf. If you're interested I could send you a photo of our family dog who died a few years ago... -- M.I.Ke Give thought to your reputation. Consider changing name and moving to a new town. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 09:51:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA02035 for dynarec-outgoing; Thu, 6 Apr 2000 09:51:27 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EC88AB.F809C413@eurocopter.de> Message-Id: <0003649a8b434e8a_mailit@mailhub.rrze.uni-erlangen.de> References: <200004050822.KAA27435@pons.ac.upc.es> <38EAF951.5BF2AD1F@eurocopter.de> <00036483d12ab51b_mailit@mailhub.rrze.uni-erlangen.de> <38EB4D90.E76C2F56@eurocopter.de> <00036484ba71f980_mailit@mailhub.rrze.uni-erlangen.de> <38EB58B4.C898E6B@eurocopter.de> <000364856c4e23f5_mailit@mailhub.rrze.uni-erlangen.de> <38EB6797.A9F44FB3@eurocopter.de> <00036486e6e38456_mailit@mailhub.rrze.uni-erlangen.de> <38EC2F16.BF37DDDD@eurocopter.de> <00036492e445edaa_mailit@mailhub.rrze.uni-erlangen.de> <38EC88AB.F809C413@eurocopter.de> Date: Thu, 06 Apr 2000 18:50:54 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >It doesn't: it's the reason why there are less girls who like computers and >emulation. Well, it's the best reason I can think of... Ah, now I understand. I thought you used some kind of advertisement to find out which girls like emulators. >You have to hand in your fake life. ;) That's too high a price to pay! >Yep, with many beer gardens in there. ;-) >Which is something that Neil may be interested in: I found out yesterday >that there are over 300 "micro" breweries in Munich alone. And I have 7 >months left to try and sample each type of beer. It's a mission and a half >- but I'm up for it. :) I hope this mail doesn't self-destruct in 5 seconds... >Sauerkraut = strange cabbage stuff. ;) You can use the right term, it's even in my English dictionary ;-) >Mashed potato... Oops, I got the spelling wrong... >Ah, now I know what that's called. Indeed, that's what we call Kartoffelbrei. Maybe you just have to buy a dictionary, it sometimes helps ;-) >Well, yes. I could count up to 20 when I got here. I can do more than that >now. :) So how was your first meeting at Eurocopter then? Q: "Wie ist Ihr Name?" A: "Eins." ;-) >Don't use them. Use one of those strange call-by-call numbers... Aha. >Game killers. Like how we're "mailing list killers" ;) Hehe ;-) -- M.I.Ke God did not create the world in seven days; he screwed around for six days and then pulled an all-nighter. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 09:51:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA02044 for dynarec-outgoing; Thu, 6 Apr 2000 09:51:37 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: New Topic: Game killers From: Michael Koenig In-Reply-To: <38EC891A.9B5EE37F@eurocopter.de> Message-Id: <0003649a8f4e8d19_mailit@mailhub.rrze.uni-erlangen.de> References: <0003647324dac08b_mailit@mailhub.rrze.uni-erlangen.de> <38EAEA33.220C7F5F@eurocopter.de> <0003647ee23f4a59_mailit@mailhub.rrze.uni-erlangen.de> <38EAF745.F96DBECF@eurocopter.de> <00036483af533359_mailit@mailhub.rrze.uni-erlangen.de> <38EB4A2B.2D5C5A20@eurocopter.de> <0003648499e2a7c3_mailit@mailhub.rrze.uni-erlangen.de> <38EB5443.1E7C91E7@eurocopter.de> <000364853bb8267e_mailit@mailhub.rrze.uni-erlangen.de> <38EB6099.64A8AC7@eurocopter.de> <00036485f9d57b46_mailit@mailhub.rrze.uni-erlangen.de> <38EB6B5C.1AF0711E@eurocopter.de> <38EC394C.3660E8AD@est.fib.upc.es> <00036492fb02be01_mailit@mailhub.rrze.uni-erlangen.de> <38EC891A.9B5EE37F@eurocopter.de> Date: Thu, 06 Apr 2000 18:52:02 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I know very little. I know how to write my name in Japanese - and in >Chinese, though I don't know which dialect. Mandarin I think, but I'm not >sure. Zai jian ;-) >> Ohaio gosaimasu. >Fight! Hey, it doesn't mean "en garde" ;-) -- M.I.Ke Playing an unamplified electric guitar is like strumming on a picnic table. -- Dave Barry, "The Snake" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 10:54:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA02255 for dynarec-outgoing; Thu, 6 Apr 2000 10:54:50 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <200004061307.PAA02342@pons.ac.upc.es> Message-Id: <0003649b728bca82_mailit@mailhub.rrze.uni-erlangen.de> References: <200004061307.PAA02342@pons.ac.upc.es> Date: Thu, 06 Apr 2000 19:55:34 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >What optimizations techniques can be used for dynamic recompilation? How >says NB it depends upon your target emulator. I have found examples for all >approach, no optimizations, register allocation and flag evaluation >optimizations, and full block optimizations. No optimisation might be slower than an optimised interpreter and should be avoided if possible. I still think that register allocation can be very useful especially when both machines have many registers. According to Hennessy/Patterson good register allocation yields a better speed increase than any other single optimisation method. Flag evaluation reduction can help much, especially when the flags of the two systems aren't as similar as they are in Z80 and x86. Flag reduction will be done in the source layer since there are some processors (MIPS, Alpha, SuperH) which have no flags or only for some evaluations. I don't think that a full block optimisation will be that helpful. Also typical compiler techniques like common subexpression or strength reduction involve to much search to be of much help. But simple peephole optimisation could be done on a block. >Usually, for the arcade CPU's >we want to emulate some register pre-allocation, Since you know most of the code the machine will run NB's approach to have a static register allocation should work quite well, especially for all those 8 -bit CPU which don't have that much registers. >flag evaluation and perhaps >pipeling is useful and I think can be implemented without made the emulator >slower than an interpreter (and if it's a C interpreter perhaps some more). Flag evaluation reduction is almost obligatory for 8-bit processors because this is where the emulator will spend most of the time since the instructions shouldn't be too complicated. >In fact I believe the best solution for emulate 8-bit and 16-bit CPUs used in >emulation escene is to use NB's method, because usually this machines need a >very accurate timing. And using a per-instruction timing reduces the number >of optimizations you can do are reduced. For timing sensitive systems NB's approach is the best solution indeed, and it'll cost a Pentium less cycles to execute than we think by reading the generated code. Flag reduction can always be performed. Slight peephole optimisation should be possible too but then the emulator looses the ability to jump to any preferred instruction, so optimisations have to be carefully picked. >And I think it still manteins a better >performance than some interpreters if it's well implemented. Perhaps when >NB's Z80 Recompiler will be implemented some test could be done in this way. Yeah, it will be interesting to see how fast the Z80 dynarec is compared to MZ80. >I think for 32 bits and new 64 bits CPUs (??) a per-block optimization >approach >would be more useful because they don't need a very accurate timing (or I >think >so) and the code generated must be the better posible. That's what I think too. Especially with some register ladden systems a dynamic register allocation could be useful, which means that you have to work with small closed blocks. But these blocks can then be optimised as much as possible. >These CPUs need all >power of actual processors (oh, well, with the GHz race we are seing lately >in one or two years a PlayStation will be emulated in only two years :) Don't expect too much from these GHz CPUs. We need a faster bus first or otherwise it will be a severe bottleneck! > so all >optimizations are wellcome. With these CPUs some analysis of the code of >each >block is needed, use pipelining ever, supress all flag evaluation not needed, >and perhaps use others optimizations from compilers theory. I don't think that there are too many techniques from compiler theory that are useful for fast optimisation of code. I guess by pipelining you mean that the generated code is arranged in a way that fewer pipeline hazards occur and parallel execution is supported. If I understand NB's approach right then he'll handle this in the code emitter later. The advantage is that you don't have to care about the instruction order too much during translation and that the same code emitter can be used for any dynarec on the same target, so you only have to invent the instruction reordering once! >What usually will be never used are optimizations that require a large and >slow >tree analysis of dependences as some compilers use (or they should use). >Although some implementations I know use these techniques (FX!32, Hot Spot) I >think this isn't good for our emulation purposes. This is one of the reasons why many compiler optimisation methods aren't helpful to us, they are created to operate on semantic trees. But we don't have such a tree since we don't translate a high-level language. IMO it would be a too time consuming process to convert the sequential code into a semantic tree just to use some compiler optimisations and generate sequential code again. >In any case. I think a lot of this is talk for just talking. The better and >only way for know what optimizations can be implemented is to build a >emulator >and test it. Or in any case do some code translation tests watching speed of >translation and speed of translated code. Too true... -- M.I.Ke Under a government which imprisons any unjustly, the true place for a just man is also in prison. -- Henry David Thoreau --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 23:38:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA04331 for dynarec-outgoing; Thu, 6 Apr 2000 23:38:47 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 6 Apr 2000 23:38:46 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <00036492e906af8f_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >> produced by a dynamic recompiler - yet keep it fast? > >Well, if you're optimizing code from a recompiler and it slows down, then, > >you're not quite optimizing it, are you? ;-) > I guess what he means is how to optimise code without slowing the translation > process down too much. But that would be OK, wouldn't it? It'd only have to be done once, right? I don't see that doing the optimization step would really be all that time consuming. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 6 23:40:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA04351 for dynarec-outgoing; Thu, 6 Apr 2000 23:40:24 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 6 Apr 2000 23:40:23 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38EC433D.8F1EA412@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Well, if you're optimizing code from a recompiler and it slows down, then, > > you're not quite optimizing it, are you? ;-) > No, that's right. But I was talking about keeping the *optimiser* fast - > not the code! Aha! > An easy optimisation is to use the registers as much as possible - but can > we do such things as pipelining, yet keeping the optimiser fast Why not? Pipelining would be a bunch of table lookups and reorderings. > And other > optimisations? How can we do them, yet keeping the optimiser fast? You optimize on a per-block basis. We're not talkinga bout a lot of code, here. I really don't see that the recompilation process would take inordinate amounts of time doing the optimization. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 7 00:27:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA04477 for dynarec-outgoing; Fri, 7 Apr 2000 00:27:13 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004070730.JAA14765@pons.ac.upc.es> Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <0003649b728bca82_mailit@mailhub.rrze.uni-erlangen.de> from Michael Koenig at "Apr 6, 2000 07:55:34 pm" To: dynarec@synthcom.com Date: Fri, 7 Apr 2000 09:30:47 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > No optimisation might be slower than an optimised interpreter and should be > avoided if possible. A recompiler without optimisation can be faster than an optimised interpreter because you are decoding only once each instruction and you avoid the code for fetching next instruction in each instruction. Only with this and making a fast translation you will be always faster than and interpreter. And I'm talking about in assembler made interpreter, so you can think about a C interpreter. Translated code will be ever faster than interpreter code. > I still think that register allocation can be very useful especially when > both machines have many registers. According to Hennessy/Patterson good > register allocation yields a better speed increase than any other single > optimisation method. You are true, but now we are only emulating for PC so register allocation can hurt more than help. > I don't think that a full block optimisation will be that helpful. Also > typical compiler techniques like common subexpression or strength reduction > involve to much search to be of much help. But simple peephole optimisation > could be done on a block. > I agree peephole could be done. But I'm not sure about others optimizations, it depends upon your final objective. > > For timing sensitive systems NB's approach is the best solution indeed, and > it'll cost a Pentium less cycles to execute than we think by reading the > generated code. Flag reduction can always be performed. > Slight peephole optimisation should be possible too but then the emulator > looses the ability to jump to any preferred instruction, so optimisations > have to be carefully picked. > And timing accuracy also it's affected a bit. > Don't expect too much from these GHz CPUs. We need a faster bus first or > otherwise it will be a severe bottleneck! > Hehe, you are right. Intel uses now a 133 Mhz bus and AMD a 200 Mhz bus, I think. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 7 01:53:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA04741 for dynarec-outgoing; Fri, 7 Apr 2000 01:53:47 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EDA19C.B68ED88A@eurocopter.de> Date: Fri, 07 Apr 2000 10:51:40 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > An easy optimisation is to use the registers as much as possible - but can > > we do such things as pipelining, yet keeping the optimiser fast > > Why not? Pipelining would be a bunch of table lookups and reorderings. That's true. But I'm thinking about a faster CPU than a Z80 - the TMS38310 (not sure about the numbers) or the 68K. But then... hmm, when I think about it, no. We can still do optimisation on these and still stay fast. Okay. So, what optimisation methods can we use? - Register allocation - Pipelining - Peephole optimisation Anything else? > > And other > > optimisations? How can we do them, yet keeping the optimiser fast? > > You optimize on a per-block basis. We're not talkinga bout a lot of code, > here. I really don't see that the recompilation process would take > inordinate amounts of time doing the optimization. Yes, I now agree. When I think about it, the main difference between the 68K and Z80 is the speed (yes, yes - one is 16-bit and the other 8-bit). One runs at around 4MHz, the other at about 7MHz. Yes, the speed shouldn't be too much of an issue. So, what's the most advanced/fastest CPU used in arcade machines that we could possibly emulate now? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 7 02:05:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA04881 for dynarec-outgoing; Fri, 7 Apr 2000 02:05:31 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004070908.LAA03994@pons.ac.upc.es> Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38EDA19C.B68ED88A@eurocopter.de> from Neil Griffiths at "Apr 7, 2000 10:51:40 am" To: dynarec@synthcom.com Date: Fri, 7 Apr 2000 11:08:50 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > That's true. But I'm thinking about a faster CPU than a Z80 - the TMS38310 > (not sure about the numbers) or the 68K. But then... hmm, when I think > about it, no. We can still do optimisation on these and still stay fast. > Okay. So, what optimisation methods can we use? > > - Register allocation > - Pipelining > - Peephole optimisation > > Anything else? > Flag evaluation suppression. And then there are all these compiler theory optimizations. > > > And other > > > optimisations? How can we do them, yet keeping the optimiser fast? > > > > You optimize on a per-block basis. We're not talkinga bout a lot of code, > > here. I really don't see that the recompilation process would take > > inordinate amounts of time doing the optimization. > > Yes, I now agree. When I think about it, the main difference between the > 68K and Z80 is the speed (yes, yes - one is 16-bit and the other 8-bit). And the number and complexity of instruction. A Z80 it's easy to emulate, a M68k has a lot of more work in my thoughts. > One runs at around 4MHz, the other at about 7MHz. Yes, the speed shouldn't > be too much of an issue. So, what's the most advanced/fastest CPU used in > arcade machines that we could possibly emulate now? Also runs at 12Mhz on some machines. I think the CPU used in these TAITO and CAPCOM machines emulated on Impact Emu :). Any 32 bit RISC CPU will fit this characteristics. I don't know what are the modern arcade machines. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 7 02:20:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA04960 for dynarec-outgoing; Fri, 7 Apr 2000 02:20:31 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EDA728.7FC488FD@eurocopter.de> Date: Fri, 07 Apr 2000 11:15:20 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <200004070908.LAA03994@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Anything else? > > > Flag evaluation suppression. Yes, that's an idea. > And then there are all these compiler theory optimizations. Not sure how applicable they are... > > Yes, I now agree. When I think about it, the main difference between the > > 68K and Z80 is the speed (yes, yes - one is 16-bit and the other 8-bit). > And the number and complexity of instruction. A Z80 it's easy to emulate, a > M68k has a lot of more work in my thoughts. Of course there are more instructions (though looking at the book in front of me I don't think it's by much). But the complexity issue I'll agree with. > > One runs at around 4MHz, the other at about 7MHz. Yes, the speed shouldn't > > be too much of an issue. So, what's the most advanced/fastest CPU used in > > arcade machines that we could possibly emulate now? > Also runs at 12Mhz on some machines. I think the CPU used in these TAITO and > CAPCOM machines emulated on Impact Emu :). Any 32 bit RISC CPU will fit this > characteristics. I don't know what are the modern arcade machines. That was just one example. Some Z80s run at ~24MHz. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 7 02:30:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA04975 for dynarec-outgoing; Fri, 7 Apr 2000 02:30:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004070933.LAA20047@pons.ac.upc.es> Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38EDA728.7FC488FD@eurocopter.de> from Neil Griffiths at "Apr 7, 2000 11:15:20 am" To: dynarec@synthcom.com Date: Fri, 7 Apr 2000 11:33:23 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > And then there are all these compiler theory optimizations. > > Not sure how applicable they are... > Either I am :/ > Of course there are more instructions (though looking at the book in front > of me I don't think it's by much). But the complexity issue I'll agree > with. > Oh, perhaps not so many new instructions types but a lot of more variations for each instruction type, you know all this addressing modes :). I think I know well Z80 and M68K (they are the only I know) because I have studied a lot of times how emulate them and I have readed books and I have their ISAs at home ... No offense, but what is happening with SI emulator? Do you need some help? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 7 02:48:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA05011 for dynarec-outgoing; Fri, 7 Apr 2000 02:48:34 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EDAE0F.42B7DBFE@eurocopter.de> Date: Fri, 07 Apr 2000 11:44:47 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <200004070933.LAA20047@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Not sure how applicable they are... > > > Either I am :/ Hmm. I'd guess at it not being possible, but the only way to prove me wrong is to try it. :) > Oh, perhaps not so many new instructions types but a lot of more variations for > each instruction type, you know all this addressing modes :). Well, I do for the Z80. :) I'm learning about the 68K at the moment. Because we use them here at work there's loads of documentation. I may just... 'liberate' some and take them home. :) > I think I know well Z80 and M68K (they are the only I know) because I have > studied a lot of times how emulate them and I have readed books and I have their > ISAs at home ... I'm currently doing this. > No offense, but what is happening with SI emulator? Do you need some help? Hmm. I really want to do the SI emulator to help newbies. But I've also committed myself to working on a new emulator which involves writing a dynamic compilation (NOT recompilation - although I think they could be freely adapted) core for the 68K - amongst other CPUs. I'd like to do both, but my interests lie more in the direction of the 68K one - because of the compilation issue. Besides, I've emulated one 8-bit machine (the Spectrum) and I want something that is actually going to challenge my programming skills. Besides, if everything works out well, I'll end up doing 3D programming as well which *really* interests me - this is the area of work I want to end up in. So, basically, I'd suggest that someone else commands this project. Although I can help and overview, I can't do both. At least - I *could* do both, but it'd mean having no life (and not meeting my mission of getting to every beer garden in Munich!). So... I'm not going to do the SI tutorial project thing. Besides, it annoyed me when I got hardly any replies - yet so many people keep asking about where they can find stuff about writing an emulator. You know, when I actually committed myself to it, no-one replied. I was annoyed about that to be honest. :) Add that to the fact that I'm getting my home-cinema setup completed tomorrow, I can see time just disappearing. :) Would anyone here be interested in taking control of the SI tutorial project? When I get an answer, I'll let the mul8 list know. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 7 04:26:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA05165 for dynarec-outgoing; Fri, 7 Apr 2000 04:26:09 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EDC584.672DD1F8@est.fib.upc.es> Date: Fri, 07 Apr 2000 13:24:52 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <200004070933.LAA20047@pons.ac.upc.es> <38EDAE0F.42B7DBFE@eurocopter.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Griffiths wrote: > Hi, > > > > Not sure how applicable they are... > > > > > Either I am :/ > > Hmm. I'd guess at it not being possible, but the only way to prove me wrong > is to try it. :) > Yes, but who has the time :( > > No offense, but what is happening with SI emulator? Do you need some help? > Would anyone here be interested in taking control of the SI tutorial > project? When I get an answer, I'll let the mul8 list know. :) > I haven´t either so much free time. I haven´t write a single line for my documentation project in a month! But I think a step-by-step emulator can be useful for teaching emulation techniques. I think I could help some, but take control ... I don´t know, now I want first finish (someday) a first simple version of the dynarec doc. Perhaps for this project it´s need more people, perhaps a team ... But then it will be more difficult to coordinate ... Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 7 06:04:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA05420 for dynarec-outgoing; Fri, 7 Apr 2000 06:04:28 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <200004070730.JAA14765@pons.ac.upc.es> Message-Id: <000364ab62ec30f0_mailit@mailhub.rrze.uni-erlangen.de> References: <200004070730.JAA14765@pons.ac.upc.es> Date: Fri, 07 Apr 2000 14:56:31 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >A recompiler without optimisation can be faster than an optimised interpreter >because you are decoding only once each instruction and you avoid the code >for fetching next instruction in each instruction. Only with this and making >a fast translation you will be always faster than and interpreter. And I'm >talking about in assembler made interpreter, so you can think about a C >interpreter. Translated code will be ever faster than interpreter code. Paul Clifford had an experimental dynarec versionof his PCEngine emulator for RISC OS. It wasn't optimising and therefore slower than the interpreter written in ARM assembly, so he told me. >You are true, but now we are only emulating for PC so register allocation can >hurt more than help. That's why I wrote that both systems should have a relatively large number of registers. On IA-32 a dynamic register allocator would end up constantly swapping registers. >> Slight peephole optimisation should be possible too but then the emulator >> looses the ability to jump to any preferred instruction, so optimisations >> have to be carefully picked. >And timing accuracy also it's affected a bit. Indeed, that's why NB's current approach is the best solution for timing sensitive systems. >Hehe, you are right. Intel uses now a 133 Mhz bus and AMD a 200 Mhz bus, I >think. The Athlon can use a 200MHz bus, but there are no PC-200 DIMMs so I guess it uses a 133MHz bus as well. Please correct me if I'm wrong... -- M.I.Ke An Englishman never enjoys himself, except for a noble purpose. -- A. P. Herbert --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 7 06:04:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA05429 for dynarec-outgoing; Fri, 7 Apr 2000 06:04:36 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <38EDA19C.B68ED88A@eurocopter.de> Message-Id: <000364ab80442c07_mailit@mailhub.rrze.uni-erlangen.de> References: <38EDA19C.B68ED88A@eurocopter.de> Date: Fri, 07 Apr 2000 15:04:44 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Okay. So, what optimisation methods can we use? >- Register allocation >- Pipelining >- Peephole optimisation >Anything else? As Victor noted there is also flag evaluation supression. It's also interesting to consider which optimisations can be performed when: * Source Layer Mainly flag evaluation supression can be utilized here, maybe even some peephole optimisation. * Target Layer Peephole optimisation should form the largest part here, optionally combined with register allocation. * Code Emitter All code reordering should be done here. The main reason for identifying the right layers for each optimisation method is to reduce the need of having to program that optimisation anew when the dynarec is ported to another system or a new dynarec is added to the same host. -- M.I.Ke "Calling J-Man Kink. Calling J-Man Kink. Hash missile sighted, target Los Angeles. Disregard personal feelings about city and intercept." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 7 08:34:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA05770 for dynarec-outgoing; Fri, 7 Apr 2000 08:34:18 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38EDF11A.B430DDBD@eurocopter.de> Date: Fri, 07 Apr 2000 16:30:51 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <200004070730.JAA14765@pons.ac.upc.es> <000364ab62ec30f0_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, Off-topic, just for a change, but I've just thought of something. Mike, your last name. Isn't that written, in German, as "König"? If so, doesn't that mean that your name, in English, is "Michael King"? You don't know anyone called "Stephan", do you? ;) > > Translated code will be ever faster than interpreter code. > > Paul Clifford had an experimental dynarec versionof his PCEngine emulator for > RISC OS. It wasn't optimising and therefore slower than the interpreter > written in ARM assembly, so he told me. The good thing about ARM assembly is the amount of registers. I'm quite used to working with a poor amount of registers, but there are times where I can increase the speed of my code quite a lot with just 2 or 3 extra registers! So having... 32 registers available would be really nice for me. :) Intel/AMD - are you listening? :) > That's why I wrote that both systems should have a relatively large number of > registers. On IA-32 a dynamic register allocator would end up constantly > swapping registers. Relatively: you could really do with double the amount of registers as the CPU you're emulating. That would give you a remarkable speed boost and just generally be nice. Of course, if the CPU you're emulating only has 4 registers, having triple or quadruple the amount of registers would be nice. To just have 16 free for my own use would be great! > >Hehe, you are right. Intel uses now a 133 Mhz bus and AMD a 200 Mhz bus, I > >think. > > The Athlon can use a 200MHz bus, but there are no PC-200 DIMMs so I guess it > uses a 133MHz bus as well. Please correct me if I'm wrong... I'm thinking that PC-100 is half of the bus speed. So everything works at 200MHz except for the memory bus. But that's just a guess, I can't check it at the moment. :) Whatever, half speed cache sucks. I know why AMD had to take their cache down to half speed when they hit the 800MHz zone, but still... why do you think the Celeron A series did so well? Yes, they were overclockable - but so was the original Celerons. And they had no cache memory worth speaking of. > An Englishman never enjoys himself, except for a noble purpose. > -- A. P. Herbert I'll agree with this one. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 7 08:50:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA05817 for dynarec-outgoing; Fri, 7 Apr 2000 08:50:25 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <38EDF11A.B430DDBD@eurocopter.de> Message-Id: <000364add6019ed4_mailit@mailhub.rrze.uni-erlangen.de> References: <200004070730.JAA14765@pons.ac.upc.es> <000364ab62ec30f0_mailit@mailhub.rrze.uni-erlangen.de> <38EDF11A.B430DDBD@eurocopter.de> Date: Fri, 07 Apr 2000 17:51:52 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Off-topic, just for a change, but I've just thought of something. Mike, >your last name. Isn't that written, in German, as "König"? If so, doesn't >that mean that your name, in English, is "Michael King"? Your German is getting better indeed, since my last name "König" means "king" in English, but I prefer to translate the full name as "King Michael" ;-) >You don't know anyone called "Stephan", do you? ;) I know several Stephans, but no-one called Stephan König... >The good thing about ARM assembly is the amount of registers. I'm quite >used to working with a poor amount of registers, but there are times where >I can increase the speed of my code quite a lot with just 2 or 3 extra >registers! So having... 32 registers available would be really nice for me. >:) Well, the ARM has only 16 registers and R15 is occipied by the PC and is used as LR, but otherwise it's quite nice. >Intel/AMD - are you listening? :) Only if they provide the NSA with their equipment ;-) >Relatively: you could really do with double the amount of registers as the >CPU you're emulating. That would give you a remarkable speed boost and just >generally be nice. Of course, if the CPU you're emulating only has 4 >registers, having triple or quadruple the amount of registers would be >nice. To just have 16 free for my own use would be great! Yeah, emulation on IA-64 might be fun. >I'm thinking that PC-100 is half of the bus speed. So everything works at >200MHz except for the memory bus. But that's just a guess, I can't check it >at the moment. :) That might be the other solution. >Whatever, half speed cache sucks. I know why AMD had to take their cache >down to half speed when they hit the 800MHz zone, but still... why do you >think the Celeron A series did so well? Yes, they were overclockable - but >so was the original Celerons. And they had no cache memory worth speaking >of. Yeah, but I prefer 100MHz bus clock instead of 66MHz. >> An Englishman never enjoys himself, except for a noble purpose. >> -- A. P. Herbert >I'll agree with this one. ;) I bet you do! It seems you enjoy that I activated the fortunes in the signature when I switched from BeMail to Mail-It. -- M.I.Ke The bogosity meter just pegged. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 9 23:21:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA03725 for dynarec-outgoing; Sun, 9 Apr 2000 23:21:57 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004100625.IAA25900@pons.ac.upc.es> Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <000364ab80442c07_mailit@mailhub.rrze.uni-erlangen.de> from Michael Koenig at "Apr 7, 2000 03:04:44 pm" To: dynarec@synthcom.com Date: Mon, 10 Apr 2000 08:25:26 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > It's also interesting to consider which optimisations can be performed when: > > * Source Layer > Mainly flag evaluation supression can be utilized here, maybe even some > peephole optimisation. > > * Target Layer > Peephole optimisation should form the largest part here, optionally combined > with register allocation. > > * Code Emitter > All code reordering should be done here. > > The main reason for identifying the right layers for each optimisation method > is to reduce the need of having to program that optimisation anew when the > dynarec is ported to another system or a new dynarec is added to the same > host. > I think this can be a good approach. Perhaps it would be good if we think about this a bit more. But I'm still a bit sleepy this morning so I don't have new ideas :(. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 9 23:36:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA03756 for dynarec-outgoing; Sun, 9 Apr 2000 23:36:18 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004100640.IAA18081@pons.ac.upc.es> Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <000364ab62ec30f0_mailit@mailhub.rrze.uni-erlangen.de> from Michael Koenig at "Apr 7, 2000 02:56:31 pm" To: dynarec@synthcom.com Date: Mon, 10 Apr 2000 08:40:05 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Paul Clifford had an experimental dynarec versionof his PCEngine emulator for > RISC OS. It wasn't optimising and therefore slower than the interpreter > written in ARM assembly, so he told me. > Interesting. I think in theory if the translation is made fast (as in NB recompiler) without optimizations the code will be still better because you don't have the decode overhead of a interpreter. You see when interpreting the code for each instruction is something like this: instr_xx() { perhaps_some_more_decode implement_instruction test_elapsed_cycles decode_next_instruction_and_jump } The main decode is implemented with an array of functions for each instruction accessed by opcode as usual. In a recompiler all decoding is made only once and this time is wasted by the recompiler for emit the translated code. If you execute enough instructions and reuse the translated code the time spended in decoding in an interpreter will be larger than the time spended translating. For this to be true is needed that the translation don't be a lot of more slow than the decoding in the interpreter. What I can't really believe is that a well done recompiler will be slower than a C (or other high-level language) interpreter. He said what was the bottleneck in the recompiler? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 00:15:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA03841 for dynarec-outgoing; Mon, 10 Apr 2000 00:15:56 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 10 Apr 2000 00:15:55 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38EDA19C.B68ED88A@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > An easy optimisation is to use the registers as much as possible - but can > > > we do such things as pipelining, yet keeping the optimiser fast > > Why not? Pipelining would be a bunch of table lookups and reorderings. > That's true. But I'm thinking about a faster CPU than a Z80 - the TMS38310 > (not sure about the numbers) or the 68K. But then... hmm, when I think > about it, no. We can still do optimisation on these and still stay fast. > Okay. So, what optimisation methods can we use? I'm not even sure why we're talking about this. Any optimizations done would only have to be done *ONCE* and never again. Even if it took a whopping 10 seconds to recompile an entire 512K chunk of code it still wouldn't be a big deal. Why does everyone think this will be a big time sink? > be too much of an issue. So, what's the most advanced/fastest CPU used in > arcade machines that we could possibly emulate now? Some games use 68030s, but the 34010 is pretty beefy. 50MHZ. It's basically an 8 cycle blitter chip. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 00:20:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA03870 for dynarec-outgoing; Mon, 10 Apr 2000 00:20:18 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 10 Apr 2000 00:20:17 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <000364ab62ec30f0_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >a fast translation you will be always faster than and interpreter. And I'm > >talking about in assembler made interpreter, so you can think about a C > >interpreter. Translated code will be ever faster than interpreter code. > Paul Clifford had an experimental dynarec versionof his PCEngine emulator for > RISC OS. It wasn't optimising and therefore slower than the interpreter > written in ARM assembly, so he told me. No offense, but if his recompiler is slower than his interpreted code, it's a creappy recompiler. Any recompiler should be able to out clock an interpreted emulator. At worst case the recompiler should be no worse than the interpreted emulator since it doesn't have to fetch any code. If your recompiler is slower than your emulated version of the core, then your recompiler frankly sucks. There's no excuse for it, actually. > That's why I wrote that both systems should have a relatively large number of > registers. On IA-32 a dynamic register allocator would end up constantly > swapping registers. Yup. That's why I use the "pick 4 and use them". You'll find fairly uniform allocation across all CPUs (like the 68K for example). There are registers that are used more than others. Though the 34010 seems to break that mold. > >> looses the ability to jump to any preferred instruction, so optimisations > >> have to be carefully picked. > >And timing accuracy also it's affected a bit. > Indeed, that's why NB's current approach is the best solution for timing > sensitive systems. Even for timing insensitive techniques it's still the best solution. ;-) > >Hehe, you are right. Intel uses now a 133 Mhz bus and AMD a 200 Mhz bus, I > >think. > The Athlon can use a 200MHz bus, but there are no PC-200 DIMMs so I guess it > uses a 133MHz bus as well. Please correct me if I'm wrong... No one can seem to make the 200MHZ memory bus actually function full speed for any length of time, which is why no one is manufacturing RAM for the thing. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 00:23:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA03887 for dynarec-outgoing; Mon, 10 Apr 2000 00:23:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 10 Apr 2000 00:23:31 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <200004100625.IAA25900@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > * Target Layer > > Peephole optimisation should form the largest part here, optionally combined > > with register allocation. > > * Code Emitter > > All code reordering should be done here. In my approach the target layer and the code emitter are really the same layer. You don't want to divorce them because the target layer can pass hints to the code emission routines to indicate what instructions can be combined, pitched, ignored, reordered, etc... Having them tightly coupled is a huge advantage. > > The main reason for identifying the right layers for each optimisation method > > is to reduce the need of having to program that optimisation anew when the > > dynarec is ported to another system or a new dynarec is added to the same > > host. Right. And in my case, you'd have to rewrite a target layer for every target that you'd want to support. But the "architecture" I've got allows you to share the atoms amongst multiple recompiler cores. The part that creates (from my example) an sOp. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 00:27:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA03936 for dynarec-outgoing; Mon, 10 Apr 2000 00:27:28 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004100729.JAA31985@pons.ac.upc.es> Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: from Neil Bradley at "Apr 10, 2000 00:15:55 am" To: dynarec@synthcom.com Date: Mon, 10 Apr 2000 09:29:44 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > I'm not even sure why we're talking about this. Any optimizations done > would only have to be done *ONCE* and never again. Even if it took a > whopping 10 seconds to recompile an entire 512K chunk of code it still > wouldn't be a big deal. Why does everyone think this will be a big time > sink? > Ummm, you are right but perhaps you need more than 10 seconds for some optimization . And you don't translate all the code in a single shot so you can have a emulator that sometimes (when executing the code the first time) slowdowns (what It musn't to be bad, genecyst did that on my old 486, first a bit slow and a couple of second later run a lot of faster, something similar when using a cache). The problem I see is we are talking about theory without a practical base. We (I) haven't tested these ideas yet. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 00:30:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA03948 for dynarec-outgoing; Mon, 10 Apr 2000 00:30:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F18242.BEE24FD9@eurocopter.de> Date: Mon, 10 Apr 2000 09:26:58 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I'm not even sure why we're talking about this. Any optimizations done > would only have to be done *ONCE* and never again. Even if it took a > whopping 10 seconds to recompile an entire 512K chunk of code it still > wouldn't be a big deal. Why does everyone think this will be a big time > sink? Because what would happen if that 512KB chunk had some minor opcodes changed each cycle so you'd have to recompile that chunk each time? > > be too much of an issue. So, what's the most advanced/fastest CPU used in > > arcade machines that we could possibly emulate now? > > Some games use 68030s, but the 34010 is pretty beefy. 50MHZ. It's > basically an 8 cycle blitter chip. Okay, but I think I want to leave that one alone for the time being. :) 68k series, here I come! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 00:32:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA03961 for dynarec-outgoing; Mon, 10 Apr 2000 00:32:31 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 10 Apr 2000 00:32:30 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38F18242.BEE24FD9@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > whopping 10 seconds to recompile an entire 512K chunk of code it still > > wouldn't be a big deal. Why does everyone think this will be a big time > > sink? > Because what would happen if that 512KB chunk had some minor opcodes > changed each cycle so you'd have to recompile that chunk each time? You're assuming that the code writes self modifying code, which isn't the case for 99.9% of the code out there, so you shouldn't be hung up on it. The last time I saw self modifying code was in a video game two years ago and I'm only aware of 1 out of a thousand. In that case, a recompiler isn't the right solution. An emulated interpreter is. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 01:16:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA04121 for dynarec-outgoing; Mon, 10 Apr 2000 01:16:17 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F18C51.25A0BC9E@eurocopter.de> Date: Mon, 10 Apr 2000 10:09:53 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Because what would happen if that 512KB chunk had some minor opcodes > > changed each cycle so you'd have to recompile that chunk each time? > > You're assuming that the code writes self modifying code, which isn't the > case for 99.9% of the code out there, so you shouldn't be hung up on it. So why write a dynamic recompiler then if we're not thinking about self modifying code? If I'm to discount that, I may as well just write a dynamic compiler. > The last time I saw self modifying code was in a video game two years ago > and I'm only aware of 1 out of a thousand. In that case, a recompiler > isn't the right solution. An emulated interpreter is. I was personally thinking about computers where I've seen self-modifying code a lot. Except in a lot of the newer stuff, I must admit. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 01:24:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA04147 for dynarec-outgoing; Mon, 10 Apr 2000 01:24:45 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004100828.KAA11862@pons.ac.upc.es> Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38F18C51.25A0BC9E@eurocopter.de> from Neil Griffiths at "Apr 10, 2000 10:09:53 am" To: dynarec@synthcom.com Date: Mon, 10 Apr 2000 10:28:09 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > So why write a dynamic recompiler then if we're not thinking about self > modifying code? If I'm to discount that, I may as well just write a dynamic > compiler. > Another time this? I think all agreed that 'dynamic recompiler' it's the name used and known everywhere by everybody for dynamic translation doesn't matter if it's a recompiler or a only a compiler. BTW has anyone done a real dynamic REcompiler? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 01:44:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA04242 for dynarec-outgoing; Mon, 10 Apr 2000 01:44:40 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F193C0.BCA3AC39@eurocopter.de> Date: Mon, 10 Apr 2000 10:41:36 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <200004100828.KAA11862@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Another time this? I think all agreed that 'dynamic recompiler' it's the name > used and known everywhere by everybody for dynamic translation doesn't matter if > it's a recompiler or a only a compiler. BTW has anyone done a real dynamic > REcompiler? Eh? I came up with a list of terms a few weeks ago and we all agreed. A dynamic recompiler handles self-modifying code. A dynamic compiler doesn't. If we want to come up with new terms, then great - but until then, I'm correct and you're not. Nyarh! ;p :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 02:33:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA04493 for dynarec-outgoing; Mon, 10 Apr 2000 02:33:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004100934.LAA00754@pons.ac.upc.es> Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38F193C0.BCA3AC39@eurocopter.de> from Neil Griffiths at "Apr 10, 2000 10:41:36 am" To: dynarec@synthcom.com Date: Mon, 10 Apr 2000 11:34:32 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > Another time this? I think all agreed that 'dynamic recompiler' it's the name > > used and known everywhere by everybody for dynamic translation doesn't matter if > > it's a recompiler or a only a compiler. BTW has anyone done a real dynamic > > REcompiler? > > Eh? I came up with a list of terms a few weeks ago and we all agreed. A > dynamic recompiler handles self-modifying code. A dynamic compiler doesn't. > If we want to come up with new terms, then great - but until then, I'm > correct and you're not. Nyarh! ;p > > :) > But it seems people haven't agreed totally with your terms :) It doesn't matter really. Next time I will call dynamic compilation to all it, because you have to agree there is noone doing dynamic recompilation. Talking about SI tutorial. What was your idea about this tutorial? I took a loot to the INVZ in MUL8 page that uses MZ80 core and the video and sound hardware are really easy. The main difficulty it's the 8080 core. You planned to do the 8080 core? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 02:49:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA04521 for dynarec-outgoing; Mon, 10 Apr 2000 02:49:57 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F1A306.359D7B6@eurocopter.de> Date: Mon, 10 Apr 2000 11:46:46 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <200004100934.LAA00754@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > But it seems people haven't agreed totally with your terms :) Maybe. But they should do! ;) > It doesn't matter really. Next time I will call dynamic compilation to all it, > because you have to agree there is noone doing dynamic recompilation. I thought that NBs could handle self-modifying code? Or, to change that, *will* be able to. The thing with me is that I make a distinction. That's because I'm looking at starting to co-write a 68k which dynamically compiles. This is because I will be emulating an arcade machine which generally won't use self-modifying code (and I'll be really, really upset if it does). Don't really want to talk about it too much because we haven't completely decided on everything yet, though we are getting there. One thing is for sure that it'll be a Win32 emulator. We should be writing it so that it's portable, yet fast. It needs a huge amount of function pointers, though. Oh yes, and we're going to try and make it OOP with C++. Yes, we both love a challenge. :) > Talking about SI tutorial. What was your idea about this tutorial? I took a loot > to the INVZ in MUL8 page that uses MZ80 core and the video and sound hardware > are really easy. The main difficulty it's the 8080 core. You planned to do > the 8080 core? Yep, I planned to write everything. Because I really feel sorry for people who want to start it, I'll make a deal. I'll overlook the whole thing, helping out whenever necessary, but I can't maintain it or even keep control of the whole project. I have a Real Life(tm) to look after - and I want to do this emulator I've sort of not mentioned at all. Especially now that I'll be starting German lessons, I'm keeping up Ju-jitsu (and teaching some Judo techniques as well, apparently - I was asked to) and I generally have too much work. I'm in work from 8:15am through to 6:55pm - it's a really, really long day and I feel really tired after it. Two choices, basically: 1) We start the SI tutorial now with me just helping out and someone else with control over the project. 2) We wait until the end of August which is when I finish here and I'll have lots more free time. Seeing as I don't think people are that patient, I really want someone to take over. I just don't have the time... ...and besides, when the other guy and myself get this emulator working, people should be impressed! That's the plan, anyway! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 02:56:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA04548 for dynarec-outgoing; Mon, 10 Apr 2000 02:56:14 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: VICTOR MOYA DEL BARRIO Message-Id: <200004100955.LAA19459@alabi.fib.upc.es> Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38F1A306.359D7B6@eurocopter.de> from Neil Griffiths at "Apr 10, 0 11:46:46 am" To: dynarec@synthcom.com Date: Mon, 10 Apr 2000 11:55:13 +0200 (MET DST) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > It doesn't matter really. Next time I will call dynamic compilation to all it, > > because you have to agree there is noone doing dynamic recompilation. > > I thought that NBs could handle self-modifying code? Or, to change that, > *will* be able to. > In fact any dynamic compiler will be able to. NB compiler it's not thought for self-modifying code. > Don't really want to talk about it too much because we haven't completely > decided on everything yet, though we are getting there. One thing is for > sure that it'll be a Win32 emulator. We should be writing it so that it's > portable, yet fast. It needs a huge amount of function pointers, though. Oh > yes, and we're going to try and make it OOP with C++. Yes, we both love a > challenge. :) > I hope the better luck to your projecct. > Yep, I planned to write everything. Because I really feel sorry for people > who want to start it, I'll make a deal. I'll overlook the whole thing, > helping out whenever necessary, but I can't maintain it or even keep > control of the whole project. I have a Real Life(tm) to look after - and I > want to do this emulator I've sort of not mentioned at all. Especially now > that I'll be starting German lessons, I'm keeping up Ju-jitsu (and teaching > some Judo techniques as well, apparently - I was asked to) and I generally > have too much work. I'm in work from 8:15am through to 6:55pm - it's a > really, really long day and I feel really tired after it. > > Two choices, basically: > > 1) We start the SI tutorial now with me just helping out and someone else > with control over the project. > 2) We wait until the end of August which is when I finish here and I'll > have lots more free time. > > Seeing as I don't think people are that patient, I really want someone to > take over. I just don't have the time... > > ...and besides, when the other guy and myself get this emulator working, > people should be impressed! That's the plan, anyway! :) > I have no more time today. Perhaps I will be interested, more in the 8080 core part, but I need still to think about it. I will say something tomorrow. Sorry. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 05:14:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA04812 for dynarec-outgoing; Mon, 10 Apr 2000 05:14:24 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: Message-Id: <000364e6ef7f4d44_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Mon, 10 Apr 2000 13:59:13 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No offense, but if his recompiler is slower than his interpreted code, >it's a creappy recompiler. Any recompiler should be able to out clock an >interpreted emulator. At worst case the recompiler should be no worse than >the interpreted emulator since it doesn't have to fetch any code. If your >recompiler is slower than your emulated version of the core, then your >recompiler frankly sucks. There's no excuse for it, actually. >From the knowledge I have now I can simply agree with what you are saying. But when I had my dicussions with him I just started to be insterested in dynarecs and didn't know much, so I just had to believe what he told me. >Yup. That's why I use the "pick 4 and use them". You'll find fairly >uniform allocation across all CPUs (like the 68K for example). There are >registers that are used more than others. Though the 34010 seems to break >that mold. There is always an exception to the rule ;-) >Even for timing insensitive techniques it's still the best solution. ;-) And it's the cleanest solution of course! ;-) >No one can seem to make the 200MHZ memory bus actually function full speed >for any length of time, which is why no one is manufacturing RAM for the >thing. So what for do I need a 1GHz processor when it's slowed down by the bus bottleneck? -- M.I.Ke A fanatic is one who can't change his mind and won't change the subject. -- Winston Churchill --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 05:14:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA04822 for dynarec-outgoing; Mon, 10 Apr 2000 05:14:25 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: Message-Id: <000364e6fb0e7271_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Mon, 10 Apr 2000 14:02:27 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >In my approach the target layer and the code emitter are really the same >layer. You don't want to divorce them because the target layer can pass >hints to the code emission routines to indicate what instructions can be >combined, pitched, ignored, reordered, etc... Having them tightly coupled >is a huge advantage. But I think it's still possible to reuse the code emitter for a different target layer. >Right. And in my case, you'd have to rewrite a target layer for every >target that you'd want to support. But the "architecture" I've got allows >you to share the atoms amongst multiple recompiler cores. The part that >creates (from my example) an sOp. Indeed, you'd have one code emitter per host platform and one source layer for every emulated CPU. The only thing that needs to be rewritten during a port is the target layer, right? -- M.I.Ke Cabbage, n.: A familiar kitchen-garden vegetable about as large and wise as a man's head. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 05:14:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA04827 for dynarec-outgoing; Mon, 10 Apr 2000 05:14:26 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <38F193C0.BCA3AC39@eurocopter.de> Message-Id: <000364e70b043c72_mailit@mailhub.rrze.uni-erlangen.de> References: <200004100828.KAA11862@pons.ac.upc.es> <38F193C0.BCA3AC39@eurocopter.de> Date: Mon, 10 Apr 2000 14:06:55 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Nyarh! ;p Could you translate that please? ;-) -- M.I.Ke Pascal, n.: A programming language named after a man who would turn over in his grave if he knew about it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 05:14:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA04834 for dynarec-outgoing; Mon, 10 Apr 2000 05:14:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <38F1A306.359D7B6@eurocopter.de> Message-Id: <000364e729ec91f7_mailit@mailhub.rrze.uni-erlangen.de> References: <200004100934.LAA00754@pons.ac.upc.es> <38F1A306.359D7B6@eurocopter.de> Date: Mon, 10 Apr 2000 14:15:33 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Maybe. But they should do! ;) When you tell me I should do something I'll just do the opposite thing ;-) >I thought that NBs could handle self-modifying code? Or, to change that, >*will* be able to. He could add it but it's up to him if he wants to. >The thing with me is that I make a distinction. That's because I'm looking >at starting to co-write a 68k which dynamically compiles. This is because I >will be emulating an arcade machine which generally won't use >self-modifying code (and I'll be really, really upset if it does). Good luck! ;-) >Don't really want to talk about it too much because we haven't completely >decided on everything yet, though we are getting there. One thing is for >sure that it'll be a Win32 emulator. Not BeOS? :-( >We should be writing it so that it's portable, yet fast. I guess you mean portable to other x86 based OSs. >It needs a huge amount of function pointers, though. Oh >yes, and we're going to try and make it OOP with C++. Fast and C++, isn't that an oxymoron? I means C++ compilers generate such overheads that you won't be lucky with the speed of it! >...and besides, when the other guy and myself get this emulator working, >people should be impressed! That's the plan, anyway! :) How about simply naming the compiler "Impressive" then? ;-) -- M.I.Ke Support wildlife -- vote for an orgy. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 05:31:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA04889 for dynarec-outgoing; Mon, 10 Apr 2000 05:31:14 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F1C8E8.E62C7E52@eurocopter.de> Date: Mon, 10 Apr 2000 14:28:24 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <000364e6ef7f4d44_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Yup. That's why I use the "pick 4 and use them". You'll find fairly > >uniform allocation across all CPUs (like the 68K for example). There are > >registers that are used more than others. Though the 34010 seems to break > >that mold. > > There is always an exception to the rule ;-) Yep. What's the saying? Something like "The exception proves the rule" or something. That's a load of crap, that is. I mean... if it's a rule... :) > >No one can seem to make the 200MHZ memory bus actually function full speed > >for any length of time, which is why no one is manufacturing RAM for the > >thing. > > So what for do I need a 1GHz processor when it's slowed down by the bus > bottleneck? You don't, to put it simply. No-one who does normal tasks - even playing games - needs a 1GHz processor. But if you did go for 1GHz, it'd be great for anything that isn't pulling or pushing huge chunks of data from the memory bus. So if you're dealing with lots of small chunks of data, you're fine. They've pipelined the memory bus to get it up to speed - but if you aren't reading logically then it doesn't help. At the moment it's the memory speeds that are slowing *everything* down. Well, okay, not everything. I mean, I don't need a faster keyboard. ;) The problem with both Intel and AMD using such large branch predictions isn't generally thought about. Yes, it means you can get faster CPUs. However, it also means that you get a much more difficult to produce CPU. It's why they are so expensive and not widely available. It's also the reason for so many chip failures (or, to rephrase, so many *more* failures). This is, of course, my opinion - but I don't think I'm wrong in this. If I am, I'm sure NB will let me know in no uncertain terms. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 05:43:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA04942 for dynarec-outgoing; Mon, 10 Apr 2000 05:43:54 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F1CBDF.23705F97@eurocopter.de> Date: Mon, 10 Apr 2000 14:41:03 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <200004100934.LAA00754@pons.ac.upc.es> <38F1A306.359D7B6@eurocopter.de> <000364e729ec91f7_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Maybe. But they should do! ;) > > When you tell me I should do something I'll just do the opposite thing ;-) Okay. So in your case, you shouldn't do it. ;) > >I thought that NBs could handle self-modifying code? Or, to change that, > >*will* be able to. > > He could add it but it's up to him if he wants to. I thought it was meant to support it anyway. It needs to if it is to be used in a computer such as the Amiga. > >The thing with me is that I make a distinction. That's because I'm looking > >at starting to co-write a 68k which dynamically compiles. This is because I > >will be emulating an arcade machine which generally won't use > >self-modifying code (and I'll be really, really upset if it does). > > Good luck! ;-) Thanks. We'll both need it looking at the feature set we're making a list up of! And the worst thing is that our e-mails have increased to about 70k each time - and this is without attachments! We're spending more time writing the e-mails than code! ;) > >Don't really want to talk about it too much because we haven't completely > >decided on everything yet, though we are getting there. One thing is for > >sure that it'll be a Win32 emulator. > > Not BeOS? :-( It's not out of the question. It's just that we want to write it for one platform at a time. It should be easily platform portable - we are writing it with things like this in mind. > >We should be writing it so that it's portable, yet fast. > > I guess you mean portable to other x86 based OSs. Well... yes. Though the main thing that would need to be changed for other CPU types would be the CPU core, so it's not totally out of the question... > >It needs a huge amount of function pointers, though. Oh > >yes, and we're going to try and make it OOP with C++. > > Fast and C++, isn't that an oxymoron? Not quite, no. > I means C++ compilers generate such overheads that you won't be lucky with > the speed of it! We've taken this into account too. I think too much is said about the "overheads". Yes, there are some. But you can get around most of them if you structure the code correctly. And make use of virtuals and pointers. And we'll be compiling it with VC6 Enterprise Edition, so it should be pretty fast. Besides, making use of things like DirectX is a little easier in C++. > >...and besides, when the other guy and myself get this emulator working, > >people should be impressed! That's the plan, anyway! :) > > How about simply naming the compiler "Impressive" then? ;-) Heh. We've got a better name for the emulator. Wait and see. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 06:04:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA04994 for dynarec-outgoing; Mon, 10 Apr 2000 06:04:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <38F1CBDF.23705F97@eurocopter.de> Message-Id: <000364e7d1547fd9_mailit@mailhub.rrze.uni-erlangen.de> References: <200004100934.LAA00754@pons.ac.upc.es> <38F1A306.359D7B6@eurocopter.de> <000364e729ec91f7_mailit@mailhub.rrze.uni-erlangen.de> <38F1CBDF.23705F97@eurocopter.de> Date: Mon, 10 Apr 2000 15:02:22 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Okay. So in your case, you shouldn't do it. ;) Teasing again? ;-) [self-modifying code] >I thought it was meant to support it anyway. It needs to if it is to be >used in a computer such as the Amiga. I guess NB wants to get SI running first before he thinks of such topics. >Thanks. We'll both need it looking at the feature set we're making a list >up of! And the worst thing is that our e-mails have increased to about 70k >each time - and this is without attachments! We're spending more time >writing the e-mails than code! ;) Oh my... >> Not BeOS? :-( >It's not out of the question. It's just that we want to write it for one >platform at a time. It should be easily platform portable - we are writing >it with things like this in mind. Nice ;-) >Well... yes. Though the main thing that would need to be changed for other >CPU types would be the CPU core, so it's not totally out of the question... I hope you do it clean then ;-) >We've taken this into account too. I think too much is said about the >"overheads". Yes, there are some. But you can get around most of them if >you structure the code correctly. And make use of virtuals and pointers. If you are using pointers then it isn't clean C++... >And we'll be compiling it with VC6 Enterprise Edition, so it should be >pretty fast. I guess the Voyager Edition would be even faster ;-) >Besides, making use of things like DirectX is a little easier in C++. Ah, the API also one reason why you have to program BeOS mainly in C++. >Heh. We've got a better name for the emulator. Wait and see. :) Now you made me curious... -- M.I.Ke "The illegal we do immediately. The unconstitutional takes a bit longer." -- Henry Kissinger --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 06:04:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA05002 for dynarec-outgoing; Mon, 10 Apr 2000 06:04:24 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <38F1C8E8.E62C7E52@eurocopter.de> Message-Id: <000364e7dd9f9582_mailit@mailhub.rrze.uni-erlangen.de> References: <000364e6ef7f4d44_mailit@mailhub.rrze.uni-erlangen.de> <38F1C8E8.E62C7E52@eurocopter.de> Date: Mon, 10 Apr 2000 15:05:48 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yep. What's the saying? Something like "The exception proves the rule" or >something. That's a load of crap, that is. I mean... if it's a rule... :) Hehe. Language certainly isn't logical. >You don't, to put it simply. No-one who does normal tasks - even playing >games - needs a 1GHz processor. That's what I thought. >They've pipelined the memory bus to get it up to speed - but if you aren't >reading logically then it doesn't help. At the moment it's the memory >speeds that are slowing *everything* down. Well, okay, not everything. I >mean, I don't need a faster keyboard. ;) Or a buttonless mouse ;-) I mean the fastest way would be to plug directly into the computer, cyberpunk -like. >The problem with both Intel and AMD using such large branch predictions >isn't generally thought about. Yes, it means you can get faster CPUs. >However, it also means that you get a much more difficult to produce CPU. >It's why they are so expensive and not widely available. It's also the >reason for so many chip failures (or, to rephrase, so many *more* >failures). This is, of course, my opinion - but I don't think I'm wrong in >this. Well, I'd agree with you. >If I am, I'm sure NB will let me know in no uncertain terms. :) Sure ;-) -- M.I.Ke You will remember, Watson, how the dreadful business of the Abernetty family was first brought to my notice by the depth which the parsley had sunk into the butter upon a hot day. -- Sherlock Holmes --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 06:35:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA05072 for dynarec-outgoing; Mon, 10 Apr 2000 06:35:36 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F1D7D2.40158C3@eurocopter.de> Date: Mon, 10 Apr 2000 15:32:02 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <200004100934.LAA00754@pons.ac.upc.es> <38F1A306.359D7B6@eurocopter.de> <000364e729ec91f7_mailit@mailhub.rrze.uni-erlangen.de> <38F1CBDF.23705F97@eurocopter.de> <000364e7d1547fd9_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Okay. So in your case, you shouldn't do it. ;) > > Teasing again? ;-) Of course not! ;) > [self-modifying code] > >I thought it was meant to support it anyway. It needs to if it is to be > >used in a computer such as the Amiga. > > I guess NB wants to get SI running first before he thinks of such topics. He's already started thinking about it. So have I. But that's something for the future... > >It's not out of the question. It's just that we want to write it for one > >platform at a time. It should be easily platform portable - we are writing > >it with things like this in mind. > > Nice ;-) Thanks. We're currently looking at the MAME source so that we know what we SHOULDN'T do. It's one of the great things about open source. You can look at the mistakes that others have made - and then try not to copy them. :) I won't guarantee we won't make our own, though. :) > >Well... yes. Though the main thing that would need to be changed for other > >CPU types would be the CPU core, so it's not totally out of the question... > > I hope you do it clean then ;-) That's the plan. > >We've taken this into account too. I think too much is said about the > >"overheads". Yes, there are some. But you can get around most of them if > >you structure the code correctly. And make use of virtuals and pointers. > > If you are using pointers then it isn't clean C++... So? I don't care. The use of OOP is good - especially for multi-platform emulators. And pointers are good. Admittedly they aren't so great for a true OO design - but we both want speed as well. > >And we'll be compiling it with VC6 Enterprise Edition, so it should be > >pretty fast. > > I guess the Voyager Edition would be even faster ;-) Please, let's not get onto Sci-Fi again. :) > >Besides, making use of things like DirectX is a little easier in C++. > > Ah, the API also one reason why you have to program BeOS mainly in C++. Really? I haven't looked. But DirectX won't be our only API - it's just the one we'll probably start off with. > >Heh. We've got a better name for the emulator. Wait and see. :) > > Now you made me curious... That was the plan. ;) But it wasn't me who came up with the name, so I'm not about to tell everybody. And the scary thing is that the other guy is on this list - but hasn't said anything yet. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 07:18:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA05169 for dynarec-outgoing; Mon, 10 Apr 2000 07:18:44 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <38F1D7D2.40158C3@eurocopter.de> Message-Id: <000364e8c051ed96_mailit@mailhub.rrze.uni-erlangen.de> References: <200004100934.LAA00754@pons.ac.upc.es> <38F1A306.359D7B6@eurocopter.de> <000364e729ec91f7_mailit@mailhub.rrze.uni-erlangen.de> <38F1CBDF.23705F97@eurocopter.de> <000364e7d1547fd9_mailit@mailhub.rrze.uni-erlangen.de> <38F1D7D2.40158C3@eurocopter.de> Date: Mon, 10 Apr 2000 16:09:11 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >He's already started thinking about it. So have I. But that's something for >the future... You certainly cannot do everything at the same time... >Thanks. We're currently looking at the MAME source so that we know what we >SHOULDN'T do. Hehe, I bet so! >It's one of the great things about open source. You can look >at the mistakes that others have made - and then try not to copy them. :) Just imagine if Windows would be open source!!! ;-) >I won't guarantee we won't make our own, though. :) Erare humanum est. >So? I don't care. The use of OOP is good - especially for multi-platform >emulators. And pointers are good. Admittedly they aren't so great for a >true OO design - but we both want speed as well. So it's a hybrid design ;-) >Please, let's not get onto Sci-Fi again. :) Why not? Hey, what about fantasy? It seems that the LOTR trailer has been released: http://www.webslacker.com/lotr/ >But it wasn't me who came up with the name, so I'm not about to tell >everybody. And the scary thing is that the other guy is on this list - but >hasn't said anything yet. :) What? Even more lurkers?!? I wonder how they are able to listen to our discussions without writing a comment or going totally nuts ;-) -- M.I.Ke "This is a country where people are free to practice their religion, regardless of race, creed, color, obesity, or number of dangling keys ..." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 08:17:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA05332 for dynarec-outgoing; Mon, 10 Apr 2000 08:17:02 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F1EFBF.A042725B@eurocopter.de> Date: Mon, 10 Apr 2000 17:14:07 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <200004100934.LAA00754@pons.ac.upc.es> <38F1A306.359D7B6@eurocopter.de> <000364e729ec91f7_mailit@mailhub.rrze.uni-erlangen.de> <38F1CBDF.23705F97@eurocopter.de> <000364e7d1547fd9_mailit@mailhub.rrze.uni-erlangen.de> <38F1D7D2.40158C3@eurocopter.de> <000364e8c051ed96_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Thanks. We're currently looking at the MAME source so that we know what we > >SHOULDN'T do. > > Hehe, I bet so! Well, that's what MAME is for, isn't it? :) > >It's one of the great things about open source. You can look > >at the mistakes that others have made - and then try not to copy them. :) > > Just imagine if Windows would be open source!!! ;-) Heh. It'd be interesting to see, actually. A big project like that. I wonder how they maintain it? It's impressive they get a end-product anyway - especially given the time it takes. I may not respect the business practices of Microsoft, but they do have some talented guys working for them - and they do produce some good stuff. I can understand the amount of bugs in the software too - but I think that they shouldn't charge so much for software they know has X amount of bugs... > >I won't guarantee we won't make our own, though. :) > > Erare humanum est. Exactly, and I agree. > >So? I don't care. The use of OOP is good - especially for multi-platform > >emulators. And pointers are good. Admittedly they aren't so great for a > >true OO design - but we both want speed as well. > > So it's a hybrid design ;-) No, it's just a great design. ;) > >Please, let's not get onto Sci-Fi again. :) > > Why not? Because we'll all join in again and increase the amount of traffic in this list tenfold - yet not discuss anything emulation related. I enjoy it - but I wonder if EVERYONE does? :o > Hey, what about fantasy? It seems that the LOTR trailer has been released: > http://www.webslacker.com/lotr/ Yes, I know - but I'm not watching it across my modem and there is no version of Quicktime 4.0 for Solaris. So I won't be watching it... :-/ > >But it wasn't me who came up with the name, so I'm not about to tell > >everybody. And the scary thing is that the other guy is on this list - but > >hasn't said anything yet. :) > > What? Even more lurkers?!? I think there's lots. Asking NB might be good - he runs the mailing list on Synthcom! > I wonder how they are able to listen to our discussions without writing a > comment or going totally nuts ;-) They're on a Dynamic Recompilation mailing list. I can't imagine normal people subscribing to it to start with! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 09:19:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA05487 for dynarec-outgoing; Mon, 10 Apr 2000 09:19:13 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <38F1EFBF.A042725B@eurocopter.de> Message-Id: <000364ea96102809_mailit@mailhub.rrze.uni-erlangen.de> References: <200004100934.LAA00754@pons.ac.upc.es> <38F1A306.359D7B6@eurocopter.de> <000364e729ec91f7_mailit@mailhub.rrze.uni-erlangen.de> <38F1CBDF.23705F97@eurocopter.de> <000364e7d1547fd9_mailit@mailhub.rrze.uni-erlangen.de> <38F1D7D2.40158C3@eurocopter.de> <000364e8c051ed96_mailit@mailhub.rrze.uni-erlangen.de> <38F1EFBF.A042725B@eurocopter.de> Date: Mon, 10 Apr 2000 18:20:32 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Well, that's what MAME is for, isn't it? :) Maybe they just want to get another Guinnes record for the most people working on a single program? >Heh. It'd be interesting to see, actually. A big project like that. I >wonder how they maintain it? I don't even want to know! >It's impressive they get a end-product anyway >- especially given the time it takes. I may not respect the business >practices of Microsoft, but they do have some talented guys working for >them Yeah, two ex-Microsoft programmers founded Valve... >- and they do produce some good stuff. Eg. Cabinet compression... >I can understand the amount of bugs in the software too - We sometimes get very strange bugs on certain computers or with special database systems, it will be even worse for an OS that has to work with so much different hardware. >but I think that they shouldn't charge so much >for software they know has X amount of bugs... Indeed. >No, it's just a great design. ;) "Eigenlob stinkt!" - I don't know if I should translate that ;-) >Because we'll all join in again and increase the amount of traffic in this >list tenfold - yet not discuss anything emulation related. So what? >I enjoy it - Me too. >but I wonder if EVERYONE does? :o Well, I wonder who "everyone" is, BTW! >> http://www.webslacker.com/lotr/ >Yes, I know - but I'm not watching it across my modem and there is no >version of Quicktime 4.0 for Solaris. So I won't be watching it... :-/ That's why you have non-Quicktime versions on that site. >I think there's lots. Oh shit, I have to be careful what I say... >Asking NB might be good - he runs the mailing list on Synthcom! Hey, NB what about telling us how many guys are on the list? I don't ask for their addresses if they want to stay in the shadows, but it would be nice to know how many lurkers we have... >They're on a Dynamic Recompilation mailing list. I can't imagine normal >people subscribing to it to start with! :o You have a point there! ;-) -- M.I.Ke Eat drink and be merry, for tomorrow they may make it illegal. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 09:34:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA05553 for dynarec-outgoing; Mon, 10 Apr 2000 09:34:44 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F20235.8C7AC029@eurocopter.de> Date: Mon, 10 Apr 2000 18:32:53 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <200004100934.LAA00754@pons.ac.upc.es> <38F1A306.359D7B6@eurocopter.de> <000364e729ec91f7_mailit@mailhub.rrze.uni-erlangen.de> <38F1CBDF.23705F97@eurocopter.de> <000364e7d1547fd9_mailit@mailhub.rrze.uni-erlangen.de> <38F1D7D2.40158C3@eurocopter.de> <000364e8c051ed96_mailit@mailhub.rrze.uni-erlangen.de> <38F1EFBF.A042725B@eurocopter.de> <000364ea96102809_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Well, that's what MAME is for, isn't it? :) > > Maybe they just want to get another Guinnes record for the most people > working on a single program? For a free program, maybe. But I think projects like Linux and FreeBSD still beat that... > Yeah, two ex-Microsoft programmers founded Valve... Did they? Didn't know that. > >- and they do produce some good stuff. > > Eg. Cabinet compression... Visual Studio, Office etc. Although Office is slow because lots of it is in Pseudo-code. Why?! The only reason I can come up with is: Intel. > >No, it's just a great design. ;) > > "Eigenlob stinkt!" - I don't know if I should translate that ;-) "Praise your own stink"? Er, can I give that a miss? ;) > >Because we'll all join in again and increase the amount of traffic in this > >list tenfold - yet not discuss anything emulation related. > > So what? Okay, you have a point. ;)) > >but I wonder if EVERYONE does? :o > > Well, I wonder who "everyone" is, BTW! This is true. > >Yes, I know - but I'm not watching it across my modem and there is no > >version of Quicktime 4.0 for Solaris. So I won't be watching it... :-/ > > That's why you have non-Quicktime versions on that site. Is there? On the official site on Friday the only available format was QT4. > >I think there's lots. > > Oh shit, I have to be careful what I say... Let's insult lots of countries and see who replies. ;) > >Asking NB might be good - he runs the mailing list on Synthcom! > > Hey, NB what about telling us how many guys are on the list? I don't ask for > their addresses if they want to stay in the shadows, but it would be nice to > know how many lurkers we have... This is true. :) > >They're on a Dynamic Recompilation mailing list. I can't imagine normal > >people subscribing to it to start with! :o > > You have a point there! ;-) Thanks. :) > Eat drink and be merry, for tomorrow they may make it illegal. Because of the lack of grammar in this, this sentence doesn't make sense. It's quite funny though. :) I suppose if the drink in question was Guinness, it might be possible... :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 12:19:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA06144 for dynarec-outgoing; Mon, 10 Apr 2000 12:19:59 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <38F20235.8C7AC029@eurocopter.de> Message-Id: <000364ed1c947a03_mailit@mailhub.rrze.uni-erlangen.de> References: <200004100934.LAA00754@pons.ac.upc.es> <38F1A306.359D7B6@eurocopter.de> <000364e729ec91f7_mailit@mailhub.rrze.uni-erlangen.de> <38F1CBDF.23705F97@eurocopter.de> <000364e7d1547fd9_mailit@mailhub.rrze.uni-erlangen.de> <38F1D7D2.40158C3@eurocopter.de> <000364e8c051ed96_mailit@mailhub.rrze.uni-erlangen.de> <38F1EFBF.A042725B@eurocopter.de> <000364ea96102809_mailit@mailhub.rrze.uni-erlangen.de> <38F20235.8C7AC029@eurocopter.de> Date: Mon, 10 Apr 2000 21:21:19 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >For a free program, maybe. But I think projects like Linux and FreeBSD >still beat that... As projects, yes. But probably not as a single program. >> Yeah, two ex-Microsoft programmers founded Valve... >Did they? Didn't know that. At least that's what I've read. >Visual Studio, Don't know it. >Office etc. Although Office is slow because lots of it is in >Pseudo-code. Why?! The only reason I can come up with is: Intel. Office is crap! >"Praise your own stink"? Er, can I give that a miss? ;) "Praising your own work stinks", but you were pretty close! >Okay, you have a point. ;)) Does that mean we can discuss SF again? ;-) >> That's why you have non-Quicktime versions on that site. >Is there? On the official site on Friday the only available format was QT4. Maybe not non-Quicktime, but certainly not QT4 so it should run on BeOS and Linux: http://www.webslacker.com/lotr/ >Let's insult lots of countries and see who replies. ;) You already tried it on a general basis ("Your country sux!") without much effect... >> Eat drink and be merry, for tomorrow they may make it illegal. >Because of the lack of grammar in this, this sentence doesn't make sense. >It's quite funny though. :) I don't write this, I just activated the fortunes. When I browsed through that file once I found some nice ones: "A baby is an alimentary canal with a loud voice at one end and no responsibility at the other." ;-) >I suppose if the drink in question was Guinness, it might be possible... >:)) Haven't tried Guinness yet. Germany beer is better anyway ;-) -- M.I.Ke Cloning is the sincerest form of flattery. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 14:25:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA06655 for dynarec-outgoing; Mon, 10 Apr 2000 14:25:59 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <003201bfa335$efb25820$0100a8c0@lion> From: "Neil Griffiths" To: References: <200004100934.LAA00754@pons.ac.upc.es> <38F1A306.359D7B6@eurocopter.de> <000364e729ec91f7_mailit@mailhub.rrze.uni-erlangen.de> <38F1CBDF.23705F97@eurocopter.de> <000364e7d1547fd9_mailit@mailhub.rrze.uni-erlangen.de> <38F1D7D2.40158C3@eurocopter.de> <000364e8c051ed96_mailit@mailhub.rrze.uni-erlangen.de> <38F1EFBF.A042725B@eurocopter.de> <000364ea96102809_mailit@mailhub.rrze.uni-erlangen.de> <38F20235.8C7AC029@eurocopter.de> <000364ed1c947a03_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Grrrrr..... Date: Mon, 10 Apr 2000 22:43:21 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >For a free program, maybe. But I think projects like Linux and FreeBSD > >still beat that... > > As projects, yes. But probably not as a single program. The kernel could be counted as a single driver. Especially when you compare MAME to it... > At least that's what I've read. > > >Visual Studio, > > Don't know it. I'm sure you know the various components - like VC and VB for instance. > >Office etc. Although Office is slow because lots of it is in > >Pseudo-code. Why?! The only reason I can come up with is: Intel. > > Office is crap! Only decent alternative I can think of is StarOffice. > >"Praise your own stink"? Er, can I give that a miss? ;) > > "Praising your own work stinks", but you were pretty close! Not bad, I suppose. My German is definitely coming along nicely, isn't it? :) > >Okay, you have a point. ;)) > > Does that mean we can discuss SF again? ;-) Erm... let's see if anyone starts crying first. :) > >Is there? On the official site on Friday the only available format was QT4. > > Maybe not non-Quicktime, but certainly not QT4 so it should run on BeOS and > Linux: > http://www.webslacker.com/lotr/ I'll have a go tomorrow then. :) > >Let's insult lots of countries and see who replies. ;) > > You already tried it on a general basis ("Your country sux!") without much > effect... Okay, let's be more explicit: Okay, your country sucks - and you smell of elderberries! Let me know if I'm wrong! ;) > >Because of the lack of grammar in this, this sentence doesn't make sense. > >It's quite funny though. :) > > I don't write this, I just activated the fortunes. Of course, I know this. Otherwise it'd be strange why you write things like "Blah blah blah - Winston Churchill". ;) > When I browsed through that file once I found some nice ones: > "A baby is an alimentary canal with a loud voice at one end and no > responsibility at the other." > ;-) I like that one. :) > >I suppose if the drink in question was Guinness, it might be possible... > >:)) > > Haven't tried Guinness yet. Germany beer is better anyway ;-) Guinness isn't a beer. It's a stout. I've no particular idea what the difference is, but if there are any Guinness drinkers on this list, you'll probably get flamed for calling it a beer. ;) I hate it, by the way. Tastes like complete crap to me... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 14:48:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA06789 for dynarec-outgoing; Mon, 10 Apr 2000 14:48:45 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <003201bfa335$efb25820$0100a8c0@lion> Message-Id: <000364ef30cfa6d7_mailit@mailhub.rrze.uni-erlangen.de> References: <200004100934.LAA00754@pons.ac.upc.es> <38F1A306.359D7B6@eurocopter.de> <000364e729ec91f7_mailit@mailhub.rrze.uni-erlangen.de> <38F1CBDF.23705F97@eurocopter.de> <000364e7d1547fd9_mailit@mailhub.rrze.uni-erlangen.de> <38F1D7D2.40158C3@eurocopter.de> <000364e8c051ed96_mailit@mailhub.rrze.uni-erlangen.de> <38F1EFBF.A042725B@eurocopter.de> <000364ea96102809_mailit@mailhub.rrze.uni-erlangen.de> <38F20235.8C7AC029@eurocopter.de> <000364ed1c947a03_mailit@mailhub.rrze.uni-erlangen.de> <003201bfa335$efb25820$0100a8c0@lion> Date: Mon, 10 Apr 2000 23:50:09 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> >Visual Studio, >> Don't know it. >I'm sure you know the various components - like VC and VB for instance. Ah, now I know. But I haven't worked with these yet. >Only decent alternative I can think of is StarOffice. I guess Gobe Productive on BeOS is quite good, I think of buying it. On Atari ST you have Signum and for RISC OS there's TechWriter, which fits onto one 1.44MB disc (without the spelling dictionary) and is even able to open some Word documents that Office screwed up ;-) >Not bad, I suppose. My German is definitely coming along nicely, isn't it? >:) Yes indeed, I'm quite impressed. You seem to do the first steps in understanding German morphology, which might not be as complex as for Finnish but it's certainly more complicated than in English. >Erm... let's see if anyone starts crying first. :) I give everyone on the list 24 hours to start complaining ;-) >I'll have a go tomorrow then. :) It's Quicktime but in Cinepak format, whatever that means. I haven't tested it yet as the download would take ages with my modem. >Okay, your country sucks - and you smell of elderberries! Let me know if I'm >wrong! >;) Is "you smell of elderberries" a flame in English?? >Of course, I know this. Otherwise it'd be strange why you write things like >"Blah blah blah - Winston Churchill". ;) Well, as you noted we are all strange people on the list ;-) >Guinness isn't a beer. It's a stout. I've no particular idea what the >difference is, but if there are any Guinness drinkers on this list, you'll >probably get flamed for calling it a beer. ;) According to my English-German dictionary "stout" means "Starkbier", which is what you'll currently get in Munich. But there has to be some other difference as well. >I hate it, by the way. Tastes like complete crap to me... Haven't tasted it yet, but it looks a bit like muddy water, and I heard that the foam was similar to concrete... -- M.I.Ke Oh, I am a C programmer and I'm okay I muck with indices and structs all day And when it works, I shout hoo-ray Oh, I am a C programmer and I'm okay --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 23:26:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA01198 for dynarec-outgoing; Mon, 10 Apr 2000 23:26:31 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2C4F0.42B6BC@eurocopter.de> Date: Tue, 11 Apr 2000 08:23:44 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <200004100934.LAA00754@pons.ac.upc.es> <38F1A306.359D7B6@eurocopter.de> <000364e729ec91f7_mailit@mailhub.rrze.uni-erlangen.de> <38F1CBDF.23705F97@eurocopter.de> <000364e7d1547fd9_mailit@mailhub.rrze.uni-erlangen.de> <38F1D7D2.40158C3@eurocopter.de> <000364e8c051ed96_mailit@mailhub.rrze.uni-erlangen.de> <38F1EFBF.A042725B@eurocopter.de> <000364ea96102809_mailit@mailhub.rrze.uni-erlangen.de> <38F20235.8C7AC029@eurocopter.de> <000364ed1c947a03_mailit@mailhub.rrze.uni-erlangen.de> <003201bfa335$efb25820$0100a8c0@lion> <000364ef30cfa6d7_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >I'm sure you know the various components - like VC and VB for instance. > > Ah, now I know. But I haven't worked with these yet. Really? That's... surprising. I'd have thought that EVERYONE would have used VB by now - in one of its forms... > >Only decent alternative I can think of is StarOffice. > > I guess Gobe Productive on BeOS is quite good, I think of buying it. > On Atari ST you have Signum and for RISC OS there's TechWriter, which fits > onto one 1.44MB disc (without the spelling dictionary) and is even able to > open some Word documents that Office screwed up ;-) But the problem with all of these is that I don't use them. So I have two alternatives: MS Office or StarOffice. Seeing as I get to use MS Office for free, it's fine by me. If I had to pay, I'd be using StarOffice. > >Not bad, I suppose. My German is definitely coming along nicely, isn't it? > >:) > > Yes indeed, I'm quite impressed. You seem to do the first steps in > understanding German morphology, which might not be as complex as for Finnish > but it's certainly more complicated than in English. But the scary thing is that I haven't had any German lessons yet - this is all from listening and picking up words when I'm out and about in Munich. It's quite scary, most people can't do this! :o > I give everyone on the list 24 hours to start complaining ;-) Okay, it's a deal. ;) > >I'll have a go tomorrow then. :) > > It's Quicktime but in Cinepak format, whatever that means. I haven't tested > it yet as the download would take ages with my modem. Which is why I didn't want to check it out at home... > >Okay, your country sucks - and you smell of elderberries! Let me know if I'm > >wrong! > >;) > > Is "you smell of elderberries" a flame in English?? No, it's just part of a joke from one of the "Monty Pythons Flying Circus" episodes. At the time it amused me. And it continues to. "Your father smells of Yak piss - and your mother smells of elderberries"! > >Of course, I know this. Otherwise it'd be strange why you write things like > >"Blah blah blah - Winston Churchill". ;) > > Well, as you noted we are all strange people on the list ;-) This is true. It certainly wasn't conclusive evidence... ;) > >Guinness isn't a beer. It's a stout. I've no particular idea what the > >difference is, but if there are any Guinness drinkers on this list, you'll > >probably get flamed for calling it a beer. ;) > > According to my English-German dictionary "stout" means "Starkbier", which is > what you'll currently get in Munich. But there has to be some other > difference as well. Yes, there certainly is. I've had several types of Starkbier now and it's not the same. But, as I said, I don't know what Stout is exactly. I'm guessing the nearest equivalent that Germany has is Starkbier - which is why you found it in the dictionary. But it's not the same. Which, in my opinion, is a good thing. :) > >I hate it, by the way. Tastes like complete crap to me... > > Haven't tasted it yet, but it looks a bit like muddy water, and I heard that > the foam was similar to concrete... Indeed, and I believe it was used instead of cement to hold bricks together when buildings were made. ;) > Oh, I am a C programmer and I'm okay > I muck with indices and structs all day > And when it works, I shout hoo-ray > Oh, I am a C programmer and I'm okay Was this song written about me? :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 23:33:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA01226 for dynarec-outgoing; Mon, 10 Apr 2000 23:33:44 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 10 Apr 2000 23:33:44 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38F193C0.BCA3AC39@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Another time this? I think all agreed that 'dynamic recompiler' it's the name > > used and known everywhere by everybody for dynamic translation doesn't matter if > > it's a recompiler or a only a compiler. BTW has anyone done a real dynamic > > REcompiler? > Eh? I came up with a list of terms a few weeks ago and we all agreed. A > dynamic recompiler handles self-modifying code. A dynamic compiler doesn't. > If we want to come up with new terms, then great - but until then, I'm > correct and you're not. Nyarh! ;p Well, we haven't all committed your terms to memory. Dynamic recompiler is what I'll use until I have the brain power to commit (and agree with) your terms. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 23:36:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA01247 for dynarec-outgoing; Mon, 10 Apr 2000 23:36:37 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 10 Apr 2000 23:36:36 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38F1A306.359D7B6@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > It doesn't matter really. Next time I will call dynamic compilation to all it, > > because you have to agree there is noone doing dynamic recompilation. > I thought that NBs could handle self-modifying code? Or, to change that, > *will* be able to. Not that I had planned, anyway. > sure that it'll be a Win32 emulator. We should be writing it so that it's > portable, yet fast. It needs a huge amount of function pointers, though. Oh > yes, and we're going to try and make it OOP with C++. Yes, we both love a > challenge. :) You can make anything object oriented in any language. C++ does not necessarily equal object oriented programming. C++ Has zero connection with it. Goddamn, I hate C++ for this very reason. And yes, I have plenty of experience with C++ and C. C++ Fucking sucks. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 23:37:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA01260 for dynarec-outgoing; Mon, 10 Apr 2000 23:37:34 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 10 Apr 2000 23:37:33 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <000364e6ef7f4d44_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > So what for do I need a 1GHz processor when it's slowed down by the bus > bottleneck? To make your "internet experience better". I'm still not sure how it's actually done, though... -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 23:38:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA01277 for dynarec-outgoing; Mon, 10 Apr 2000 23:38:28 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 10 Apr 2000 23:38:28 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <000364e6fb0e7271_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >combined, pitched, ignored, reordered, etc... Having them tightly coupled > >is a huge advantage. > But I think it's still possible to reuse the code emitter for a different > target layer. The emitter (in my recompiler) is about 20 lines of code, so there's no need to create another layer. I think you mean the opcode generator, right? The one that generates the sOp structures? > >target that you'd want to support. But the "architecture" I've got allows > >you to share the atoms amongst multiple recompiler cores. The part that > >creates (from my example) an sOp. > Indeed, you'd have one code emitter per host platform and one source layer > for every emulated CPU. The only thing that needs to be rewritten during a > port is the target layer, right? Correct. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 23:41:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA01289 for dynarec-outgoing; Mon, 10 Apr 2000 23:41:35 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2C8EB.44F00046@eurocopter.de> Date: Tue, 11 Apr 2000 08:40:43 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Well, we haven't all committed your terms to memory. Dynamic recompiler is > what I'll use until I have the brain power to commit (and agree with) your > terms. ;-) That sounds like exactly the sort of thing I wrote last night when I was tired. God, anyone would think you were doing too much work! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 23:43:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA01298 for dynarec-outgoing; Mon, 10 Apr 2000 23:43:09 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 10 Apr 2000 23:43:08 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38F1CBDF.23705F97@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > >It needs a huge amount of function pointers, though. Oh > > >yes, and we're going to try and make it OOP with C++. > > Fast and C++, isn't that an oxymoron? > Not quite, no. If all you're using are C++ class wrappers and constructors/destructors, that's like getting a bunch of porno mags, a jar of vaseline and your right hand and claiming you're ready for sex! ;-) > "overheads". Yes, there are some. But you can get around most of them if > you structure the code correctly. And make use of virtuals and pointers. If you have to tiptoe around the constructs of the language, what good is it? Write it in C and save yourself some hassle. And please *DO NOT* tell me you're using MFC! That's a bloated piece of garbage that was originally designed to ween people off of DOS to to Windows apps. > And we'll be compiling it with VC6 Enterprise Edition, so it should be > pretty fast. Besides, making use of things like DirectX is a little easier > in C++. As compared to C? Nope - Seeing how all the Microsoft press books on DirectX (Inside DirectX as an example) are *ALL* written in C. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 23:46:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA01319 for dynarec-outgoing; Mon, 10 Apr 2000 23:46:36 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 10 Apr 2000 23:46:35 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38F1D7D2.40158C3@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > >We've taken this into account too. I think too much is said about the > > >"overheads". Yes, there are some. But you can get around most of them if > > >you structure the code correctly. And make use of virtuals and pointers. > > If you are using pointers then it isn't clean C++... > So? I don't care. The use of OOP is good - especially for multi-platform > emulators. But you don't need C++ to do it. > And pointers are good. Admittedly they aren't so great for a > true OO design - but we both want speed as well. Not true. Object oriented programming is a *DESIGN* methodology - not what language or language constructs you use. You do know that C++ was originally a preprocessor to C, right? -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 23:48:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA01333 for dynarec-outgoing; Mon, 10 Apr 2000 23:48:13 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2CA28.1FF42403@eurocopter.de> Date: Tue, 11 Apr 2000 08:46:00 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > I thought that NBs could handle self-modifying code? Or, to change that, > > *will* be able to. > > Not that I had planned, anyway. Really? Oh, I completely misunderstood. If this is the case, then *yes* - I definitely would like to join in to create the 68k core when you're ready. :) > > sure that it'll be a Win32 emulator. We should be writing it so that it's > > portable, yet fast. It needs a huge amount of function pointers, though. Oh > > yes, and we're going to try and make it OOP with C++. Yes, we both love a > > challenge. :) > > You can make anything object oriented in any language. C++ does not > necessarily equal object oriented programming. C++ Has zero connection > with it. Goddamn, I hate C++ for this very reason. Of course you *can* make anything OO in any language. C++ makes it easier for what we want to do though. And though I agree that you can make anything OO in just about any language, you can't always do things like inheritance - or having private or protected data. These are also things I intend to make use of. Thinking about it, can you make things OO in any language? That's quite a theoretical question, actually... > And yes, I have plenty of experience with C++ and C. C++ Fucking sucks. So do I. And yes, it sucks. But I hope you give me the credibility to actually give some thought to something before committing myself to a language! As I said earlier, C++ makes it easier for us to do what we want to do. That's why we're using it. If it didn't make things any easier, we wouldn't be using it. I'm not using it just for the sake of using it - just so I can say "Look - it's written in C++"! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 23:51:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA01349 for dynarec-outgoing; Mon, 10 Apr 2000 23:51:37 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2CAA0.10B6AE5C@eurocopter.de> Date: Tue, 11 Apr 2000 08:48:00 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > So what for do I need a 1GHz processor when it's slowed down by the bus > > bottleneck? > > To make your "internet experience better". I'm still not sure how it's > actually done, though... First of all, we've got to discount marketing. They do, of course, tell the truth - so it must be something else. Maybe they include really fast ISDN cards inside the processors. It's Intels hidden feature! God, I'm really excited now! ;)) Actually, I suppose if you're coming from a P-90 then upgrading to a 1GHz processor probably would make your Internet experience better. You could actually scroll the webpage and have it be nice and smooth. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 23:54:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA01358 for dynarec-outgoing; Mon, 10 Apr 2000 23:54:16 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 10 Apr 2000 23:54:15 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38F1EFBF.A042725B@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > >Thanks. We're currently looking at the MAME source so that we know what we > > >SHOULDN'T do. > > Hehe, I bet so! > Well, that's what MAME is for, isn't it? :) A testament to this is the guy who is doing the CE port of MAME. A bit of history: I visited Microsoft in person in June of last year when I presented Retrocade in full Windows CE form - running at 75FPS with full sound - running Pacman. Single CPU emulation on a MIPS 4000. Some other guy (working on CE at Microsoft) did a MAME port that was running at 40FPS with *NO* sound with Pacman, and that was after he did hoards of optimization and cleaning a lot of stuff up. Still couldn't make full speed even without sound. There's this other guy who is doing a CE port currently who is far better off to write his own emulator for the platform, but is convinced that dynamic recompilation will actually help it. No chance in hell. The emulation of MAME tops at around 25FPS for Pacman and it's *AWFULLY* slow. So I have to ask - what is MAME doing that takes 3 times longer than Retrocade's core? I can imagine a 50% slowness, but *3X* slower?!?! > them - and they do produce some good stuff. I can understand the amount of > bugs in the software too - but I think that they shouldn't charge so much > for software they know has X amount of bugs... The problem with the 63000 number is: * Is that good or bad? * What are the categories of the bugs? * What other products on the market have the same level of functionality and how many bugs does *IT* have? We have no lithmus test to even judge what that number means, let alone claiming that they shouldn't charge "so much" for it. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 10 23:57:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA01370 for dynarec-outgoing; Mon, 10 Apr 2000 23:57:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 10 Apr 2000 23:57:51 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38F2CA28.1FF42403@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > I thought that NBs could handle self-modifying code? Or, to change that, > > > *will* be able to. > > Not that I had planned, anyway. > Really? Oh, I completely misunderstood. If this is the case, then *yes* - I > definitely would like to join in to create the 68k core when you're ready. > :) At that point I'll already have an opcode emitter (debugged) and a lot of the theory flattened out. > > You can make anything object oriented in any language. C++ does not > > necessarily equal object oriented programming. C++ Has zero connection > > with it. Goddamn, I hate C++ for this very reason. > Of course you *can* make anything OO in any language. C++ makes it easier > for what we want to do though. How does it make it "easier"? It just ads more bulk to the program. > And though I agree that you can make anything OO in just about any > language, you can't always do things like inheritance - or having private > or protected data. These are also things I intend to make use of. You can do protected data in C, too (static anyone). I also fail to see how inheritance would help you in emulation. > Thinking about it, can you make things OO in any language? That's quite a > theoretical question, actually... Of course you can. Object oriented programming means putting things in small, compartmentable, "black boxes" that allow simple, uniform, connectivity. Case in point - Our system management firmware at work is 100% object oriented (we designed it as a graphical layout first), and guess what? 100% C! > > And yes, I have plenty of experience with C++ and C. C++ Fucking sucks. > So do I. And yes, it sucks. But I hope you give me the credibility to > actually give some thought to something before committing myself to a > language! Well, you never know. ;-| If I was sitting across from a desk from you, I'd probably figure it out really fast. > As I said earlier, C++ makes it easier for us to do what we want > to do. That's why we're using it. If it didn't make things any easier, we > wouldn't be using it. I'm not using it just for the sake of using it - just > so I can say "Look - it's written in C++"! :) I still fail to see how any of it is made "easier". -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 00:01:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA01393 for dynarec-outgoing; Tue, 11 Apr 2000 00:01:57 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2CD29.840A443F@eurocopter.de> Date: Tue, 11 Apr 2000 08:58:49 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > > Fast and C++, isn't that an oxymoron? > > Not quite, no. > > If all you're using are C++ class wrappers and constructors/destructors, > that's like getting a bunch of porno mags, a jar of vaseline and your > right hand and claiming you're ready for sex! ;-) True. But luckily we're not. Don't know about the porno ma... No, let's leave it. ;) > > "overheads". Yes, there are some. But you can get around most of them if > > you structure the code correctly. And make use of virtuals and pointers. > > If you have to tiptoe around the constructs of the language, what good is > it? Write it in C and save yourself some hassle. Yes, but we're not. I don't want to go into any great detail on how it works because we're only just approaching the end of the design stages. Though some parts are currently being implemented, these are definitely WIP and subject to change. > And please *DO NOT* tell me you're using MFC! That's a bloated piece of > garbage that was originally designed to ween people off of DOS to to > Windows apps. You and me have similar opinions on this. No, I'm not using MFC. I don't like it. See S3Tweak. A program I co-wrote - and it doesn't use it. Although... I do seem to remember that MFC is being used in it - but only for the GUI. As I've said, it's subject to change. At the moment it's only so we have something to work with. It can - and will, without doubt - be changed. > > And we'll be compiling it with VC6 Enterprise Edition, so it should be > > pretty fast. Besides, making use of things like DirectX is a little easier > > in C++. > > As compared to C? Nope - Seeing how all the Microsoft press books on > DirectX (Inside DirectX as an example) are *ALL* written in C. Yes, but there are classes available for DirectX usage which keeps things a whole lot nicer. Can you tell me one good reason why we shouldn't consider writing it in C++ ? I can give you many reasons why we should. But here is just one big reason for it: We can keep each arcade machine type as a class. We can keep each game as a class. As I said, I don't want to get into the internal workings of it just yet - especially not on a public mailing list. This is, after all, a WIP emulator which is only just beginning to be wrote. There are other reasons for keeping it all in classes too - but we won't see these reasons until we near completion. Which is, to be fair, a long way off. Given that it's April now, I wouldn't expect us to have anything working properly until September. I could be wrong, I'm just trying to be realistic. :) And, besides, no-one else has done it before. Whether that means it can't be done, I just don't know. But I doubt it. And if it works... good. And if it doesn't... it's not going to take too much work to go down to C. But I intend to make full use of any features available to me if I think that it makes things better. Okay, you don't like C++. But I'm not a C++ lover - I just intend to utilise anything that makes my life easier. I'm not using it just because I can... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 00:06:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA01409 for dynarec-outgoing; Tue, 11 Apr 2000 00:06:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2CE4F.95AC69DF@eurocopter.de> Date: Tue, 11 Apr 2000 09:03:43 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > So? I don't care. The use of OOP is good - especially for multi-platform > > emulators. > > But you don't need C++ to do it. I know I don't. I have actually put some thought into it. There are reasons why we chose it. No, we don't NEED C++. But we have decided that it will make our lives easier. > > And pointers are good. Admittedly they aren't so great for a > > true OO design - but we both want speed as well. > > Not true. Object oriented programming is a *DESIGN* methodology - not what > language or language constructs you use. I know that - you can see that even from my last sentence: "aren't so great for a true OO design". Yes, OO is a methodology. And it's a methodology we intend to use. And take full advantage of. I'm not entirely sure what you've got against C++. Yes, people have used it badly before. But I would say that I've been using it for long enough now that I'm not going to make the same mistakes. I know techniques I can use to use OOP in C++ and still remain fast. It may not be quite as fast as a C program - but the only way to compare is to write two programs. And I'm not about to do that now. :) > You do know that C++ was originally a preprocessor to C, right? I didn't, but it doesn't change anything for me. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 00:10:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA01421 for dynarec-outgoing; Tue, 11 Apr 2000 00:10:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 11 Apr 2000 00:10:29 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38F2CD29.840A443F@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > If you have to tiptoe around the constructs of the language, what good is > > it? Write it in C and save yourself some hassle. > Yes, but we're not. I don't want to go into any great detail on how it > works because we're only just approaching the end of the design stages. > Though some parts are currently being implemented, these are definitely WIP > and subject to change. Hehehehe. No project is ever finished. It's always a WIP. ;-) > > And please *DO NOT* tell me you're using MFC! That's a bloated piece of > > garbage that was originally designed to ween people off of DOS to to > > Windows apps. > You and me have similar opinions on this. No, I'm not using MFC. I don't > like it. See S3Tweak. A program I co-wrote - and it doesn't use it. When you visit the US (or I visit the UK), let's hold an MFC lynch mob burning rally, shall we? ;-) I can tell you a zillion horror stories about its memory leaks and memory overwrites. > Although... I do seem to remember that MFC is being used in it - but only > for the GUI. As I've said, it's subject to change. At the moment it's only > so we have something to work with. It can - and will, without doubt - be > changed. Eeeeewww...... Yuk. Use ATL instead! Just having the MFC DLL loaded ads an additional 2.4 megabytes of memory used. Yuck! > > > pretty fast. Besides, making use of things like DirectX is a little easier > > > in C++. > > As compared to C? Nope - Seeing how all the Microsoft press books on > > DirectX (Inside DirectX as an example) are *ALL* written in C. > Yes, but there are classes available for DirectX usage which keeps things a > whole lot nicer. I depends upon what you mean by "nicer". DirectX isn't all that heavy. > Can you tell me one good reason why we shouldn't consider writing it in C++ > ? Can you tell me one good reason why you *SHOULD* consider writing it in C++? I can't. > We can keep each arcade machine type as a class. We can keep each game as a > class. Make each arcade machine type a DLL. > And, besides, no-one else has done it before. Flatly not true. It was done 3 years ago with MageX (Edward Massey's multi-game emulator for Windows). It was also done with Brian Levine's emulator (forgot the name) two years ago. In fact, the original code I ported was C++ (ported it down to C). > Okay, you don't like C++. But I'm not a C++ lover - I just intend to > utilise anything that makes my life easier. I'm not using it just because I > can... I've had similar conversations with people about this. And in every instance to date I've seen people fall in love with the C++ constructs but after very, very close examination, it buys them *NOTHING*. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 00:21:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA01436 for dynarec-outgoing; Tue, 11 Apr 2000 00:21:49 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 11 Apr 2000 00:21:48 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38F2CE4F.95AC69DF@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > And pointers are good. Admittedly they aren't so great for a > > > true OO design - but we both want speed as well. > > Not true. Object oriented programming is a *DESIGN* methodology - not what > > language or language constructs you use. > I know that - you can see that even from my last sentence: "aren't so great > for a true OO design". Why aren't pointers so great for a true OO design? True OO design *DEMANDS* the use of pointers - even if they're hidden. > Yes, OO is a methodology. And it's a methodology we > intend to use. And take full advantage of. It's a great methodology. > I'm not entirely sure what > you've got against C++. Walk many footsteps in my shoes, my friend. ;-) For the past 5 years I've had to live with the legacy of people writing shitty, unmaintainable, C++ code just because it was fashionable or they were somehow smokescreened into believing it made their lives better. I've seen projects collapse under the weight of their own infrastructure because you get 50 people (of varying levels of experience) hacking on it. Abstraction becomes an irrational passion until the cogs make it run so slow it's a sluggish turd. C++ Is the devil spawn of Satan. It has *NO NEED* to exist. It does very, very little that C doesn't, and certainly doesn't do anything that C couldn't also accomplish. I also have my beefs with C (switch/case statements are screwed, some typechecking is flawed, etc...), too, but they are spread far and few between. > Yes, people have used it badly before. But I would > say that I've been using it for long enough now that I'm not going to make > the same mistakes. I know techniques I can use to use OOP in C++ and still > remain fast. It may not be quite as fast as a C program - but the only way > to compare is to write two programs. And I'm not about to do that now. :) I wouldn't imagine that you're write your CPU emulator in C++. That already has been a mistake. I know of two people who wrote C++ based CPU emulator cores and they were horridly slow - due to C++'s overhead. It will never, ever beat C. Take a look at the stack frame that the compiler sets up for C++ calls alone and that'll scare the living hell out of you. Or maybe it won't. ;-) But if you're going to use assembly cores for things, it won't matter much, because the C++ aspect of things is hardly used as compared to the CPU emulation time sink. > > You do know that C++ was originally a preprocessor to C, right? > I didn't, but it doesn't change anything for me. :) Damnit. They ought to force people to learn this before C++ compilers are handed out. Yes, indeed, C++ was a preprocessor to C. It's a similar concept to what's done with STL to Win32. C++ Was a processor that was designed to teach you how to think in an OO fashion. Now it's the fashion language of the 90's with far too many people who are clueless idiots about it who write bloated code and eat up all of our MIPS. Ever wonder why our apps run the same speed even though we have much faster processors, memory, and hard disks than we did 5 years ago? Because little Timmy out of college wanted to write an OO program and he used C++ to create his little MFC app, and took 2.4 megabytes to say "hello world" on the screen... But I'm not bitter... ;-) I've had far too many bad experiences with C++ to even consider using it in a serious project. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 00:24:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA01445 for dynarec-outgoing; Tue, 11 Apr 2000 00:24:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 11 Apr 2000 00:24:14 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > We can keep each arcade machine type as a class. We can keep each game as a > > class. > Make each arcade machine type a DLL. FWIW, This is how Retrocade works. No DLL, but we have a "platform" and a "game". Platform is the platform type, like Namco System 1 (hence the name 'platform extension', adding a platform to Retrocade is extending it). "game" Is a specific ROMset and control set that uses a platform (Dragon Spirit, Galaga 88, etc...). Done with simple, orthogonal structures, entirely in C. Simple to use. Simple to read. Simple to extend. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 00:29:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA01465 for dynarec-outgoing; Tue, 11 Apr 2000 00:29:08 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2D2F6.CCF80486@eurocopter.de> Date: Tue, 11 Apr 2000 09:23:34 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Really? Oh, I completely misunderstood. If this is the case, then *yes* - I > > definitely would like to join in to create the 68k core when you're ready. > > :) > > At that point I'll already have an opcode emitter (debugged) and a lot of > the theory flattened out. Which is very, very cool indeed. :) > > Of course you *can* make anything OO in any language. C++ makes it easier > > for what we want to do though. > > How does it make it "easier"? It just ads more bulk to the program. If you really want to know, I can forward you ~1MB of e-mails which you could read and find out. ;) > > And though I agree that you can make anything OO in just about any > > language, you can't always do things like inheritance - or having private > > or protected data. These are also things I intend to make use of. > > You can do protected data in C, too (static anyone). I also fail to see > how inheritance would help you in emulation. I didn't say inheritance would help in emulation. I was just talking about inheritance in general then. > > Thinking about it, can you make things OO in any language? That's quite a > > theoretical question, actually... > > Of course you can. Object oriented programming means putting things in > small, compartmentable, "black boxes" that allow simple, uniform, > connectivity. Think Prolog or Miranda. > Case in point - Our system management firmware at work is 100% object > oriented (we designed it as a graphical layout first), and guess what? > 100% C! I agree, it's easy to apply OO methodologies to most languages. I've done it myself. :) > > So do I. And yes, it sucks. But I hope you give me the credibility to > > actually give some thought to something before committing myself to a > > language! > > Well, you never know. ;-| If I was sitting across from a desk from you, > I'd probably figure it out really fast. That's true. But given that this has been discussed for just over 2 months now, I should hope that we've planned it out carefully. I've learnt from previous mistakes that plans should be made before the implementation. If it is planned carefully enough, you can see mistakes before they happen and work around them - or even fix them before they become mistakes. It's also a very good thing when two people are working on the same project. > > As I said earlier, C++ makes it easier for us to do what we want > > to do. That's why we're using it. If it didn't make things any easier, we > > wouldn't be using it. I'm not using it just for the sake of using it - just > > so I can say "Look - it's written in C++"! :) > > I still fail to see how any of it is made "easier". Because of the way we're writing it. We can design each system as a class and each game as a class. If we want to create a new system, we can do it very easily. If a game requires a special add-on to a machine, we can add it very easily. If we want to use multi-threading, we can do it easily. If we want to add a new machine, we can add it very easily. If we... no, don't want to give too much away... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 00:32:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA01484 for dynarec-outgoing; Tue, 11 Apr 2000 00:32:27 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 11 Apr 2000 00:32:26 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38F2D2F6.CCF80486@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > wouldn't be using it. I'm not using it just for the sake of using it - just > > > so I can say "Look - it's written in C++"! :) > > I still fail to see how any of it is made "easier". > Because of the way we're writing it. We can design each system as a class > and each game as a class. If we want to create a new system, we can do it > very easily. If a game requires a special add-on to a machine, we can add > it very easily. If we want to use multi-threading, we can do it easily. If > we want to add a new machine, we can add it very easily. If we... no, don't > want to give too much away... :) Oh come on, Neil. What you're describing isn't anything new. It has all been done before in both C++ and C code. It's not like you're harboring any huge secret. I have all of what you've got above in C and it's real clean, too. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 00:34:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA01506 for dynarec-outgoing; Tue, 11 Apr 2000 00:34:39 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2D508.D532B576@eurocopter.de> Date: Tue, 11 Apr 2000 09:32:24 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Yes, but we're not. I don't want to go into any great detail on how it > > works because we're only just approaching the end of the design stages. > > Though some parts are currently being implemented, these are definitely WIP > > and subject to change. > > Hehehehe. No project is ever finished. It's always a WIP. ;-) That's true. But this project is barely started. :) > > You and me have similar opinions on this. No, I'm not using MFC. I don't > > like it. See S3Tweak. A program I co-wrote - and it doesn't use it. > > When you visit the US (or I visit the UK), let's hold an MFC lynch mob > burning rally, shall we? ;-) I can tell you a zillion horror stories about > its memory leaks and memory overwrites. Okay, that seems like a fair deal. :) I really don't like MFC - which the other guy (who still hasn't introduced himself!) knows because I told him in no uncertain terms. But as it will be used as a temporary measure. Mind you, I won't be using it. I refuse to. :) > > Although... I do seem to remember that MFC is being used in it - but only > > for the GUI. As I've said, it's subject to change. At the moment it's only > > so we have something to work with. It can - and will, without doubt - be > > changed. > > Eeeeewww...... Yuk. Use ATL instead! Just having the MFC DLL loaded ads an > additional 2.4 megabytes of memory used. Yuck! Really? I can use ATL. I actually did it direct (calling Windows functions directly) with S3Tweak, but I don't want to make things more difficult than necessary for this. This is ever so slightly a bigger project. :) I find that strange that it takes up an extra 2.4MB. Surely the whole point of DLLs is that you only load the functions you need? > > Yes, but there are classes available for DirectX usage which keeps things a > > whole lot nicer. > > I depends upon what you mean by "nicer". DirectX isn't all that heavy. Nicer = easier for me to maintain. > Can you tell me one good reason why you *SHOULD* consider writing it in > C++? I can't. I just did. Probably many times. ;) > > And, besides, no-one else has done it before. > > Flatly not true. It was done 3 years ago with MageX (Edward Massey's > multi-game emulator for Windows). It was also done with Brian Levine's > emulator (forgot the name) two years ago. In fact, the original code I > ported was C++ (ported it down to C). Multi-system (not game)? If so, I'll take that back. But I don't remember that. > > Okay, you don't like C++. But I'm not a C++ lover - I just intend to > > utilise anything that makes my life easier. I'm not using it just because I > > can... > > I've had similar conversations with people about this. And in every > instance to date I've seen people fall in love with the C++ constructs but > after very, very close examination, it buys them *NOTHING*. Yes, okay, I'll give you that. But I haven't fallen in love with C++. I use C a lot - I can do things quickly in it. But, in this case, I believe I can use it as a tool to help us get the thing done with a minimum of fuss - and effort. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 00:35:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA01518 for dynarec-outgoing; Tue, 11 Apr 2000 00:35:08 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 11 Apr 2000 00:35:07 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: FWIW... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com There are 20 subscribed people to the Dynarec list. Also, my contract work has ended. I have too much free time, and I don't know what to do with myself. ;-) I'll sleep I think... unless you guys can get me really motivated! -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 00:39:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA01531 for dynarec-outgoing; Tue, 11 Apr 2000 00:39:10 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 11 Apr 2000 00:39:09 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38F2D508.D532B576@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Eeeeewww...... Yuk. Use ATL instead! Just having the MFC DLL loaded ads an > > additional 2.4 megabytes of memory used. Yuck! > Really? I can use ATL. I actually did it direct (calling Windows functions > directly) with S3Tweak, but I don't want to make things more difficult than > necessary for this. This is ever so slightly a bigger project. :) Sorry... STL - not ATL. ;-( What's S3Tweak? Some sort of DirectX bypass? > I find that strange that it takes up an extra 2.4MB. Surely the whole point > of DLLs is that you only load the functions you need? It loads the MSVC60.DLL (or whatever it's called). The DLL is atomic. Call one function, suck the whole DLL. Yeuck. > > > Yes, but there are classes available for DirectX usage which keeps things a > > > whole lot nicer. > > I depends upon what you mean by "nicer". DirectX isn't all that heavy. > Nicer = easier for me to maintain. > > > Can you tell me one good reason why you *SHOULD* consider writing it in > > C++? I can't. > I just did. Probably many times. ;) I didn't see any. > > > And, besides, no-one else has done it before. > > Flatly not true. It was done 3 years ago with MageX (Edward Massey's > > multi-game emulator for Windows). It was also done with Brian Levine's > > emulator (forgot the name) two years ago. In fact, the original code I > > ported was C++ (ported it down to C). > Multi-system (not game)? If so, I'll take that back. But I don't remember > that. Yes. MageX, from memory did: Sinistar, Galaga, Pacman, Space Invaders, Joust, a bunch of the Williams games, - about 50 in all. All different platforms. Remember that that was when arcade emulation was fairly young, so there weren't a lot of other games emulated. Brian Levine's emulator did 30+ of the same genre. So yes, you need to take that back. ;-) MageX Ran pretty well, but Brian's emulator was notably slower (but still not as slow as MAME at the time). > > I've had similar conversations with people about this. And in every > > instance to date I've seen people fall in love with the C++ constructs but > > after very, very close examination, it buys them *NOTHING*. > Yes, okay, I'll give you that. But I haven't fallen in love with C++. I use > C a lot - I can do things quickly in it. But, in this case, I believe I can > use it as a tool to help us get the thing done with a minimum of fuss - and > effort. :) Okay - but I just don't to see the wool being pulled over a smart guy's eyes. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 00:46:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA01546 for dynarec-outgoing; Tue, 11 Apr 2000 00:46:06 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 11 Apr 2000 00:46:05 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... In-Reply-To: <38F2D2F6.CCF80486@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Because of the way we're writing it. We can design each system as a class > and each game as a class. If we want to create a new system, we can do it > very easily. If a game requires a special add-on to a machine, we can add > it very easily. If we want to use multi-threading, we can do it easily. If > we want to add a new machine, we can add it very easily. If we... no, don't > want to give too much away... :) Some words of wisdom from someone who has been where you're going. When dealing with CPU emulation specifically, multithreading will buy you little to nothing, and you're better off making processor emulation single threaded. Here's why. Most often when you've got CPUs talking to eachother, there's a bit of synchronization that goes on. I'll take Major Havoc as an example - if the slave CPU doesn't respond in 200 emulated microseconds, it'll think the sound processor has stopped responding and will reset it. Not only that, the slave CPU must give back a signal to the master CPU indicating that it has been acknowledged. In the case where they don't need to be synchronized, you'll hope that they don't both use the same CPU. If they use the same code and different data segments, you've now just caused an additional level of indirection to have to be coded into the CPU emulator. The CPUs in most games have to be interleaved very closely. Leaving them free run or even pacing them is tough to get right in a non-realtime OS. I fought with this for months - even with my own multiprocessor OS - to get the emulation to run better/faster, and the single threaded approach always won out in performance and accurate operability. However - Using separate threads to run video, sound, and controller input (which really should be message based anyway) is about the only way to do it IMHO. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 01:18:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01613 for dynarec-outgoing; Tue, 11 Apr 2000 01:18:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2DF25.18AF08C@eurocopter.de> Date: Tue, 11 Apr 2000 10:15:33 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: FWIW... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > There are 20 subscribed people to the Dynarec list. So, we have about 5 active members. Who are you other 15, eh? ;) > Also, my contract work has ended. I have too much free time, and I don't > know what to do with myself. ;-) I'll sleep I think... unless you guys can > get me really motivated! Congratulations! So, you're going to get some sleep - and then you're going to finish the Z80 core. Aren't you. Aren't you, eh? Aren't you? ;) You will. You will, you know. Yes, you will. You have to. You have no choice. You will. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 01:18:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01621 for dynarec-outgoing; Tue, 11 Apr 2000 01:18:06 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2DEC1.E03423C3@eurocopter.de> Date: Tue, 11 Apr 2000 10:13:53 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Make each arcade machine type a DLL. > > FWIW, This is how Retrocade works. No DLL, but we have a "platform" and a > "game". Platform is the platform type, like Namco System 1 (hence the name > 'platform extension', adding a platform to Retrocade is extending it). > "game" Is a specific ROMset and control set that uses a platform (Dragon > Spirit, Galaga 88, etc...). > > Done with simple, orthogonal structures, entirely in C. Simple to use. > Simple to read. Simple to extend. Exactly the approach we're using - except we're using classes to do it. Same technique though. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 01:19:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01630 for dynarec-outgoing; Tue, 11 Apr 2000 01:19:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2DF9F.F90595D@eurocopter.de> Date: Tue, 11 Apr 2000 10:17:35 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Oh come on, Neil. What you're describing isn't anything new. It has all > been done before in both C++ and C code. It's not like you're harboring > any huge secret. I have all of what you've got above in C and it's real > clean, too. ;-) Actually, what we're planning hasn't been done before. Yes, I'll admit the techniques have been used before - but that's because we want to keep things simple. Apart from knowing that the emu will use a 68k core, does anyone know what it is? What it'll do? What it's emulating? No. I don't want to give too much away - partly because it's not my sole project but mainly because we don't need the pressure to get it finished. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 01:19:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01639 for dynarec-outgoing; Tue, 11 Apr 2000 01:19:49 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2DE88.F23C30F0@eurocopter.de> Date: Tue, 11 Apr 2000 10:12:56 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > I know that - you can see that even from my last sentence: "aren't so great > > for a true OO design". > > Why aren't pointers so great for a true OO design? True OO design > *DEMANDS* the use of pointers - even if they're hidden. Okay, that's bad wording. Yes, pointers are required "behind the scenes" as it were. No, I was wrong to say that. > > Yes, OO is a methodology. And it's a methodology we > > intend to use. And take full advantage of. > > It's a great methodology. It is, yes. > > I'm not entirely sure what > > you've got against C++. > > Walk many footsteps in my shoes, my friend. ;-) For the past 5 years I've > had to live with the legacy of people writing shitty, unmaintainable, C++ > code just because it was fashionable or they were somehow smokescreened > into believing it made their lives better. Oh, okay, I'll forgive you. ;) If it makes you feel any better, can I say that the whole thing won't be OO? We won't be using classes in any place they're not needed. They're only being used in places where we think it'll make things easier. Otherwise we'll stick to C. > I've seen projects collapse under the weight of their own infrastructure > because you get 50 people (of varying levels of experience) hacking on it. > Abstraction becomes an irrational passion until the cogs make it run so > slow it's a sluggish turd. Yes - this is the one big problem of C++ - abstraction. Don't worry, we won't be using this. Too much, at least. > C++ Is the devil spawn of Satan. It has *NO NEED* to exist. It does very, > very little that C doesn't, and certainly doesn't do anything that C > couldn't also accomplish. Yes, I agree. That's the whole point, I guess. You can do it in C - C++ is just meant to take away some of that work. > I also have my beefs with C (switch/case statements are screwed, some > typechecking is flawed, etc...), too, but they are spread far and few > between. I have plenty of gripes with Ada - but that's the main language I don't like. Probably because I have to use it everyday. > I wouldn't imagine that you're write your CPU emulator in C++. That > already has been a mistake. I know of two people who wrote C++ based CPU > emulator cores and they were horridly slow - due to C++'s overhead. It > will never, ever beat C. Take a look at the stack frame that the compiler > sets up for C++ calls alone and that'll scare the living hell out of you. > Or maybe it won't. ;-) No, I do agree that it can generate horrible code. But you *can* get around it if you code sensibly. Which I'm intending to do. And no, I don't intend to do the CPU core in C++ because that seems really stupid to me. There's no point using it where it's not needed. > But if you're going to use assembly cores for things, it won't matter > much, because the C++ aspect of things is hardly used as compared to the > CPU emulation time sink. That's true. But anyway, I won't be using C++ for the CPU core. Too much hassle. > > > You do know that C++ was originally a preprocessor to C, right? > > I didn't, but it doesn't change anything for me. :) > > Damnit. They ought to force people to learn this before C++ compilers are > handed out. Yes, indeed, C++ was a preprocessor to C. It's a similar > concept to what's done with STL to Win32. C++ Was a processor that was > designed to teach you how to think in an OO fashion. Ah, right. No, didn't know that - but it does make sense. > Now it's the fashion language of the 90's with far too many people who are > clueless idiots about it who write bloated code and eat up all of our > MIPS. Ever wonder why our apps run the same speed even though we have much > faster processors, memory, and hard disks than we did 5 years ago? Because > little Timmy out of college wanted to write an OO program and he used C++ > to create his little MFC app, and took 2.4 megabytes to say "hello world" > on the screen... No, I haven't wondered that. I *know* damn well why our apps run the same speed (and even slower) - and I don't like it either. I'm not using it because it's a fashionable language to use. I didn't even know it was! A language is a tool and I think that in this case, C++ is the tool for the job. That - and a healthy dose of C as well. > But I'm not bitter... ;-) I've had far too many bad experiences with C++ > to even consider using it in a serious project. Who knows? Maybe I'll learn. But, for now, we'll see. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 01:24:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01657 for dynarec-outgoing; Tue, 11 Apr 2000 01:24:54 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2E12C.85E9522D@est.fib.upc.es> Date: Tue, 11 Apr 2000 10:24:12 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: FWIW... References: Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Bradley wrote: > There are 20 subscribed people to the Dynarec list. > So many? Where are they I have seen only 8 (aprox) :) > > Also, my contract work has ended. I have too much free time, and I don't > know what to do with myself. ;-) I'll sleep I think... unless you guys can > get me really motivated! > I suggest you go to sleep, it´s good for health and mind :) And I envy you because you have now time to sleep. But next week it´s holyday in Spain so I will sleep a lot too ;) About motivation, what do you want a fan club? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 01:28:12 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01674 for dynarec-outgoing; Tue, 11 Apr 2000 01:28:12 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2E14D.E032BBC0@eurocopter.de> Date: Tue, 11 Apr 2000 10:24:45 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Really? I can use ATL. I actually did it direct (calling Windows functions > > directly) with S3Tweak, but I don't want to make things more difficult than > > necessary for this. This is ever so slightly a bigger project. :) > > Sorry... STL - not ATL. ;-( What's S3Tweak? Some sort of DirectX bypass? I wondered what ATL was. :) S3Tweak is just a program for S3 card owners that lets them tweak the driver settings, overclock and do other miscellaneous stuff. Sits in the task bar and has a pop-up menu when you right-click it. Is about 145k when loaded - and that includes little icons. So that's pretty good, isn't it? :) > > I find that strange that it takes up an extra 2.4MB. Surely the whole point > > of DLLs is that you only load the functions you need? > > It loads the MSVC60.DLL (or whatever it's called). The DLL is atomic. Call > one function, suck the whole DLL. Yeuck. Yuck indeed! That's... not just horrible, but horribly stupid! > > > Can you tell me one good reason why you *SHOULD* consider writing it in > > > C++? I can't. > > I just did. Probably many times. ;) > > I didn't see any. Oh well. The way that we see it, it makes things easier. And if it doesn't, it's not going to be so difficult to port it back to C. You could moan if I wrote it in... ooh, I don't know... Java or Delphi. ;) > > Multi-system (not game)? If so, I'll take that back. But I don't remember > > that. > > Yes. MageX, from memory did: > > Sinistar, Galaga, Pacman, Space Invaders, Joust, a bunch of the Williams > games, - about 50 in all. All different platforms. Remember that that was > when arcade emulation was fairly young, so there weren't a lot of other > games emulated. > > Brian Levine's emulator did 30+ of the same genre. > > So yes, you need to take that back. ;-) MageX Ran pretty well, but Brian's > emulator was notably slower (but still not as slow as MAME at the time). Okay, I take that back. I do remember them... I'm trying to remember the name of Brians emulator, but I can't. I know I've been around from the start though. I remember the old sites like... Node99. Archaic Ruins. I'm trying to remember the others. I know I was emulating myself before it took off in a big way on the PC... Saddo that I am. :)) > > Yes, okay, I'll give you that. But I haven't fallen in love with C++. I use > > C a lot - I can do things quickly in it. But, in this case, I believe I can > > use it as a tool to help us get the thing done with a minimum of fuss - and > > effort. :) > > Okay - but I just don't to see the wool being pulled over a smart guy's > eyes. ;-) Nice to know you care. I love you too. ;) No, being serious, we will be using C as well. The OO is just to make certain things easier. Lots of things won't be OO - just some things will. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 01:30:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01696 for dynarec-outgoing; Tue, 11 Apr 2000 01:30:56 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2E1C5.9021B4E5@eurocopter.de> Date: Tue, 11 Apr 2000 10:26:45 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > When dealing with CPU emulation specifically, multithreading will buy you > little to nothing, and you're better off making processor emulation single > threaded. Here's why. --- Snipped very useful comments --- > I fought with this for months - even with my own multiprocessor OS - to > get the emulation to run better/faster, and the single threaded approach > always won out in performance and accurate operability. CPU core will be single threaded. I can't actually think of a good way to make it multi-threaded anyway! > However - Using separate threads to run video, sound, and controller input > (which really should be message based anyway) is about the only way to do > it IMHO. Indeed. These will be using seperate threads. And so will anything else we can usefully multi-thread. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 01:46:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01763 for dynarec-outgoing; Tue, 11 Apr 2000 01:46:32 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2E643.2CB6CC74@est.fib.upc.es> Date: Tue, 11 Apr 2000 10:45:55 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: DYNAREC: SI project References: <38F2E1C5.9021B4E5@eurocopter.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Do you want to talk a bit about SI? First, disadvantatges I find on getting involved on this: 1) I have no real experience with emulators, I only have worked with theory 2) no Internet access at home 3) I think I´m good with CPU emulation, but graphics and sound are another thing 4) I have time at weekends but not the rest of the week 5) I can´t begin until two weeks later, next week is holyday 7) I really don´t know allegro 8) a lot of more I can´t just remember Advantages: 1) noone 2) there is a better solution? 3) I´m interested 4) This will give me some real experience and perhaps it would be useful to see what mistakes makes a newby. In fact I´m more interested in doing the 8080 core and later think about graphics and sound. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From sahron37720@cybercenter.cl Tue Apr 11 02:07:30 2000 Received: from csk.poi (ABDA04EE.ipt.aol.com [171.218.4.238]) by synthcom.com (8.9.3/8.9.3) with SMTP id CAA01925; Tue, 11 Apr 2000 02:07:17 -0700 (PDT) (envelope-from sahron37720@cybercenter.cl) Message-ID: <61454.47344@csk.poi> From: "sahron37720@cybercenter.cl" Bcc: Reply-To: Subject: WANTEDD 97 People (4550) Date: Tue, 11 Apr 2000 02:28:54 -0400 (EDT) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset="US-ASCII" Content-Transfer-Encoding: 7bit WANTED 97 People We'll PAY you to lose up to 29 plus pounds! * All natural. * Doctor recomended. * #1 in Europe! * 100% money back guaranteed. * Works especially good for woman. Call TOLL FREE: 1-800-211-3197 Please do not respond to this e mail, e mails will not be read! ***************************************************************** This message is sent in compliance of the new email bill section 301. Per Section 301, Paragraph (a)(2)(C) of S. 1618, further transmissions to you by the sender of this email may be stopped at no cost to you. TO REMOVE reply to relist@hongkong.com. You must put your email in the subject line otherwise our software won't recognize your remove request ***************************************************************** Thank You! ************* ************************** 87819 From owner-dynarec@synthcom.com Tue Apr 11 02:24:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA02019 for dynarec-outgoing; Tue, 11 Apr 2000 02:24:13 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2EE73.22906CCF@eurocopter.de> Date: Tue, 11 Apr 2000 11:20:51 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: SI project References: <38F2E1C5.9021B4E5@eurocopter.de> <38F2E643.2CB6CC74@est.fib.upc.es> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Do you want to talk a bit about SI? Sure, not a problem. > First, disadvantatges I find on getting involved on this: > > 1) I have no real experience with emulators, I only have worked with theory That's fine. In fact, that's probably more useful. > 2) no Internet access at home That could be a problem - it depends on how much you wanted to do. > 3) I think I´m good with CPU emulation, but graphics and sound are another > thing That's why we chose SI in the end - it's easy. :) > 4) I have time at weekends but not the rest of the week I don't even have that! > 5) I can´t begin until two weeks later, next week is holyday > 7) I really don´t know allegro So you're also a beginner. That could be a good thing, you know. > Advantages: > > 1) noone > 2) there is a better solution? > 3) I´m interested > 4) This will give me some real experience and perhaps it would be useful to > see > what mistakes makes a newby. > > In fact I´m more interested in doing the 8080 core and later think about > graphics and sound. If you want to do it, let me know and I'll let Mul8 know. I realise the problems (I also thought the same way) but if you have some interest in it then that's good. I have interest, but I have a rather major lack of time. And I want to work on dynarec for the time being. :) Whatever, I'll still be around to help. I just can't be in control of it all. I'm sure the other people like NB will also help out. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 02:40:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA02058 for dynarec-outgoing; Tue, 11 Apr 2000 02:40:08 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F2F2B9.D8F962D0@est.fib.upc.es> Date: Tue, 11 Apr 2000 11:39:05 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: SI project References: <38F2E1C5.9021B4E5@eurocopter.de> <38F2E643.2CB6CC74@est.fib.upc.es> <38F2EE73.22906CCF@eurocopter.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Griffiths wrote: > > 2) no Internet access at home > > That could be a problem - it depends on how much you wanted to do. > Implement code, write documents and try to answer some questions. I think if there are a lot of questions the better way is other people in Mul8 list, with more experience and better Internet access, helps answering them. > > > 5) I can´t begin until two weeks later, next week is holyday > > 7) I really don´t know allegro > > So you're also a beginner. That could be a good thing, you know. > Yes, anybody will know what a bad programmer I am :) and then they will realize how easy is an emulator. > If you want to do it, let me know and I'll let Mul8 know. I realise the > problems (I also thought the same way) but if you have some interest in it > then that's good. I have interest, but I have a rather major lack of time. > And I want to work on dynarec for the time being. :) > > Whatever, I'll still be around to help. I just can't be in control of it > all. I'm sure the other people like NB will also help out. I think first I need to do some study of the question, work a bit about how the emulator will be implemented, try to write some lessons (I like more writing documents than code :o) and search some info about SI and 8080 processor. I also want you explain a bit how you planned to do the project and discuss a bit here how I will implement it. For example I have thought in writing a kind of document/lesson explaining something about the emulator, then write some of the code and let the people to write themselves the rest of the code (for example I implement a general opcode function and then all other are implemented by people). I have thought in a lesson each week, but it depends upon how finally goes all. The main problem it´s I don´t know how many people it´s interested and what they will do or they want to do. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 04:15:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA02250 for dynarec-outgoing; Tue, 11 Apr 2000 04:15:17 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <38F2C4F0.42B6BC@eurocopter.de> Message-Id: <000364fa6abb7d28_mailit@mailhub.rrze.uni-erlangen.de> References: <200004100934.LAA00754@pons.ac.upc.es> <38F1A306.359D7B6@eurocopter.de> <000364e729ec91f7_mailit@mailhub.rrze.uni-erlangen.de> <38F1CBDF.23705F97@eurocopter.de> <000364e7d1547fd9_mailit@mailhub.rrze.uni-erlangen.de> <38F1D7D2.40158C3@eurocopter.de> <000364e8c051ed96_mailit@mailhub.rrze.uni-erlangen.de> <38F1EFBF.A042725B@eurocopter.de> <000364ea96102809_mailit@mailhub.rrze.uni-erlangen.de> <38F20235.8C7AC029@eurocopter.de> <000364ed1c947a03_mailit@mailhub.rrze.uni-erlangen.de> <003201bfa335$efb25820$0100a8c0@lion> <000364ef30cfa6d7_mailit@mailhub.rrze.uni-erlangen.de> <38F2C4F0.42B6BC@eurocopter.de> Date: Tue, 11 Apr 2000 13:13:45 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Really? That's... surprising. I'd have thought that EVERYONE would have >used VB by now - in one of its forms... Ah, forgot about it. I once programmed a bit VB for ASP. >But the scary thing is that I haven't had any German lessons yet - this is >all from listening and picking up words when I'm out and about in Munich. >It's quite scary, most people can't do this! :o I think I could do that. I actually talked to someone with a strong Munich accent on the phone and needed at least 5 minutes to understand more than 50% of what he was saying ;-) >No, it's just part of a joke from one of the "Monty Pythons Flying Circus" >episodes. At the time it amused me. And it continues to. "Your father >smells of Yak piss - and your mother smells of elderberries"! Which episode was that? >Yes, there certainly is. I've had several types of Starkbier now and it's >not the same. But, as I said, I don't know what Stout is exactly. I'm >guessing the nearest equivalent that Germany has is Starkbier - which is >why you found it in the dictionary. But it's not the same. Which, in my >opinion, is a good thing. :) So you enjoy the Starkbier? ;-) >Indeed, and I believe it was used instead of cement to hold bricks together >when buildings were made. ;) Hehe. >> Oh, I am a C programmer and I'm okay >> I muck with indices and structs all day >> And when it works, I shout hoo-ray >> Oh, I am a C programmer and I'm okay >Was this song written about me? :o I'm not sure... BTW, is that to the tune of "I'm a lumberjack"? -- M.I.Ke To invent, you need a good imagination and a pile of junk. -- Thomas Edison --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 04:15:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA02259 for dynarec-outgoing; Tue, 11 Apr 2000 04:15:36 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: Message-Id: <000364fa6d984c2a_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Tue, 11 Apr 2000 13:14:33 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> So what for do I need a 1GHz processor when it's slowed down by the bus >> bottleneck? >To make your "internet experience better". I'm still not sure how it's >actually done, though... Maybe by ISSE? ;-) -- M.I.Ke Conscience is the inner voice that warns us somebody is looking -- H. L. Mencken --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 05:12:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA02387 for dynarec-outgoing; Tue, 11 Apr 2000 05:12:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F315FD.D8569A68@eurocopter.de> Date: Tue, 11 Apr 2000 14:09:33 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <200004100934.LAA00754@pons.ac.upc.es> <38F1A306.359D7B6@eurocopter.de> <000364e729ec91f7_mailit@mailhub.rrze.uni-erlangen.de> <38F1CBDF.23705F97@eurocopter.de> <000364e7d1547fd9_mailit@mailhub.rrze.uni-erlangen.de> <38F1D7D2.40158C3@eurocopter.de> <000364e8c051ed96_mailit@mailhub.rrze.uni-erlangen.de> <38F1EFBF.A042725B@eurocopter.de> <000364ea96102809_mailit@mailhub.rrze.uni-erlangen.de> <38F20235.8C7AC029@eurocopter.de> <000364ed1c947a03_mailit@mailhub.rrze.uni-erlangen.de> <003201bfa335$efb25820$0100a8c0@lion> <000364ef30cfa6d7_mailit@mailhub.rrze.uni-erlangen.de> <38F2C4F0.42B6BC@eurocopter.de> <000364fa6abb7d28_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I think I could do that. I actually talked to someone with a strong Munich > accent on the phone and needed at least 5 minutes to understand more than 50% > of what he was saying ;-) I have the same problem with people from Munich - or anywhere in Bavaria. I just can't understand them! I have had problems with Austrians as well. :o > >No, it's just part of a joke from one of the "Monty Pythons Flying Circus" > >episodes. At the time it amused me. And it continues to. "Your father > >smells of Yak piss - and your mother smells of elderberries"! > > Which episode was that? Can't remember. One of them. I've got the scene in MP3 format if you're interested... > >Yes, there certainly is. I've had several types of Starkbier now and it's > >not the same. But, as I said, I don't know what Stout is exactly. I'm > >guessing the nearest equivalent that Germany has is Starkbier - which is > >why you found it in the dictionary. But it's not the same. Which, in my > >opinion, is a good thing. :) > > So you enjoy the Starkbier? ;-) I do, actually! It's nowhere near as horrible as Guinness. :) > >Was this song written about me? :o > > I'm not sure... It could have been... ;) > BTW, is that to the tune of "I'm a lumberjack"? I think so, yes. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 05:12:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA02396 for dynarec-outgoing; Tue, 11 Apr 2000 05:12:46 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F31581.2EDFEB34@eurocopter.de> Date: Tue, 11 Apr 2000 14:07:29 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: SI project References: <38F2E1C5.9021B4E5@eurocopter.de> <38F2E643.2CB6CC74@est.fib.upc.es> <38F2EE73.22906CCF@eurocopter.de> <38F2F2B9.D8F962D0@est.fib.upc.es> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Implement code, write documents and try to answer some questions. I think if there > are a lot of questions the better way is other people in Mul8 list, with more experience > and better Internet access, helps answering them. Absolutely. But this is the great thing about the project taking place over a mailing list - you get lots of input! > > So you're also a beginner. That could be a good thing, you know. > > Yes, anybody will know what a bad programmer I am :) and then they will realize how > easy is an emulator. Maybe, but that wasn't the answer I was looking for. :) I was thinking that if you are a beginner, you'll also know what the problems are. > > Whatever, I'll still be around to help. I just can't be in control of it > > all. I'm sure the other people like NB will also help out. > > I think first I need to do some study of the question, work a bit about how the > emulator will be implemented, try to write some lessons (I like more writing documents > than code :o) and search some info about SI and 8080 processor. That's exactly what I was doing - and putting it all into a webpage. However, that plan didn't happen. > I also want you explain a bit how you planned to do the project and discuss a bit > here how I will implement it. I planned it to happen like this: I would say "We need to implement this" and maybe give a small piece of code. Then the others could expand on that until it was finished. > For example I have thought in writing a kind of document/lesson explaining something > about the emulator, then write some of the code and let the people to write themselves the > rest of the code (for example I implement a general opcode function and then all other are > implemented by people). I have thought in a lesson each week, but it depends upon how finally > goes all. The main problem it´s I don´t know how many people it´s interested and what they will do > or they want to do. That's the problem - but if you document the process then you have a pretty cool tutorial already written up! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 05:47:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA02455 for dynarec-outgoing; Tue, 11 Apr 2000 05:47:55 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004111248.OAA10622@pons.ac.upc.es> Subject: Re: DYNAREC: SI project In-Reply-To: <38F31581.2EDFEB34@eurocopter.de> from Neil Griffiths at "Apr 11, 2000 02:07:29 pm" To: dynarec@synthcom.com Date: Tue, 11 Apr 2000 14:48:22 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > Implement code, write documents and try to answer some questions. I think if there > > are a lot of questions the better way is other people in Mul8 list, with more experience > > and better Internet access, helps answering them. > > Absolutely. But this is the great thing about the project taking place over > a mailing list - you get lots of input! > Yes, you say you will do some work and then this work is all done by other people ;) > > > So you're also a beginner. That could be a good thing, you know. > > > > Yes, anybody will know what a bad programmer I am :) and then they will realize how > > easy is an emulator. > > Maybe, but that wasn't the answer I was looking for. :) > > I was thinking that if you are a beginner, you'll also know what the > problems are. > Yes I thought something similar. The problem it's I'm not the usual beginner. > That's exactly what I was doing - and putting it all into a webpage. > However, that plan didn't happen. > A webpage, what an interesting idea. But I can't mantein a webpage, perhaps I will look for someone who wants, I have to ask a friend. > > I also want you explain a bit how you planned to do the project and discuss a bit > > here how I will implement it. > > I planned it to happen like this: > > I would say "We need to implement this" and maybe give a small piece of > code. Then the others could expand on that until it was finished. > Hehe. The hard work for beginners the glory for the chief ;) > That's the problem - but if you document the process then you have a pretty > cool tutorial already written up! > Written in something than resembles english :) Do you have some information about SI, or do you know were I can get some information? This weekend I took a look at INVZ and a bit to the mame driver, but I think I need some more information. About the 8080 I think I will find enough information and as it's a old and simple version of Z80 will be easy for me. I have studied a lot Z80, and started to write an assembler core for it, don't finished though, in fact the only thing I did was write some code on paper and then rewrite it to a file. But I didn't tested nothing although I implemented all standard opcode (not extended opcodes). This time the core will be in C I supose, more easy for teaching, but I like more assembler. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 07:13:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA02658 for dynarec-outgoing; Tue, 11 Apr 2000 07:13:51 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004111417.QAA22178@pons.ac.upc.es> Subject: Re: DYNAREC: FWIW... In-Reply-To: from Neil Bradley at "Apr 11, 2000 00:35:07 am" To: dynarec@synthcom.com Date: Tue, 11 Apr 2000 16:17:07 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > There are 20 subscribed people to the Dynarec list. > > Also, my contract work has ended. I have too much free time, and I don't > know what to do with myself. ;-) I'll sleep I think... unless you guys can > get me really motivated! > Last mail was just a joke. I will show you tomorrow something I'm working on although it isn't finished. We will see what do you think about it, then. In any case what you have to do is what you really want, of course. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 11:15:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA03436 for dynarec-outgoing; Tue, 11 Apr 2000 11:15:32 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 11 Apr 2000 11:15:31 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: FWIW... In-Reply-To: <38F2E12C.85E9522D@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > About motivation, what do you want a fan club? Sure! With dancing girls with big hooters. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 11:21:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA03484 for dynarec-outgoing; Tue, 11 Apr 2000 11:21:19 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: DYNAREC: Emu Top 100 From: Michael Koenig Message-Id: <00036500660e01cb_mailit@mailhub.rrze.uni-erlangen.de> Date: Tue, 11 Apr 2000 20:21:56 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Have you seen this list? http://www.emucamp.com/frames.html?/articles/top100/index.html I don't know two of the emulators in the top 10, some emulators are much too high, and others much too low. Who thinks that MAME is this good while Retrocade is only in the middle?!? -- M.I.Ke Stay away from hurricanes for a while. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 11:21:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA03492 for dynarec-outgoing; Tue, 11 Apr 2000 11:21:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: FWIW... From: Michael Koenig In-Reply-To: Message-Id: <0003650013fd8075_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Tue, 11 Apr 2000 19:58:59 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >There are 20 subscribed people to the Dynarec list. Are you kidding? Ok, we have us 4 hardcore guys and some occasional posters (forgot the exact amount), but that means that over 50% are lurkers! >Also, my contract work has ended. I have too much free time, and I don't >know what to do with myself. ;-) I'll sleep I think... Ok, get some rest then you can have a fresh start ;-) >unless you guys can get me really motivated! Please Neil, continue your great work to enlighten us unimportant creatures with the best dynarec in existence! How was that? ;-) -- M.I.Ke Reader, suppose you were an idiot. And suppose you were a member of Congress. But I repeat myself. -- Mark Twain --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 11:21:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA03501 for dynarec-outgoing; Tue, 11 Apr 2000 11:21:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: Message-Id: <000364fffbcb3b1f_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Tue, 11 Apr 2000 19:52:13 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I also have my beefs with C (switch/case statements are screwed, some >typechecking is flawed, etc...), too, but they are spread far and few >between. One nice bug is also when you forget the semicolon after a structure since you'll get a strange error somewhere else... But I agree that most C bugs are well-know now and if you don't use too much macros you'll understand new C code better than C++ where you first have to find out what class hirarchy the programmer used and what methods are available. >I wouldn't imagine that you're write your CPU emulator in C++. That >already has been a mistake. I know of two people who wrote C++ based CPU >emulator cores and they were horridly slow - due to C++'s overhead. It >will never, ever beat C. I think Stella is written in C++ and it needs a really fast machine given the fact that it only emulates a 6507, although the biggest problem will be the graphics emulation. >Take a look at the stack frame that the compiler >sets up for C++ calls alone and that'll scare the living hell out of you. Not to forget the class descriptors and method tables that have to be copied, and when you have multiple inheritation it gets *really messy*! >Or maybe it won't. ;-) Most programmers won't know what's going on since they won't be able to find "their" code in all that overhead... >Now it's the fashion language of the 90's with far too many people who are >clueless idiots about it who write bloated code and eat up all of our >MIPS. Ever wonder why our apps run the same speed even though we have much >faster processors, memory, and hard disks than we did 5 years ago? Because >little Timmy out of college wanted to write an OO program and he used C++ >to create his little MFC app, and took 2.4 megabytes to say "hello world" >on the screen... Too true! :-( -- M.I.Ke If you think the United States has stood still, who built the largest shopping center in the world? -- Richard M. Nixon --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 11:26:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA03521 for dynarec-outgoing; Tue, 11 Apr 2000 11:26:31 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 11 Apr 2000 11:26:30 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: <00036500660e01cb_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Have you seen this list? > http://www.emucamp.com/frames.html?/articles/top100/index.html > I don't know two of the emulators in the top 10, some emulators are much too > high, and others much too low. Who thinks that MAME is this good while > Retrocade is only in the middle?!? # Of games emulated. People care about quantity and not quality. Plus, Retrocade hasn't had a release since May of last year so it kinda went out of the public limelight. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 11:56:00 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA03643 for dynarec-outgoing; Tue, 11 Apr 2000 11:56:00 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Tue, 11 Apr 2000 07:06:55 -0700 (PDT) To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Tue, 11 Apr 2000, Neil Bradley wrote: > > Have you seen this list? > > http://www.emucamp.com/frames.html?/articles/top100/index.html > > I don't know two of the emulators in the top 10, some emulators are much too > > high, and others much too low. Who thinks that MAME is this good while > > Retrocade is only in the middle?!? > > # Of games emulated. People care about quantity and not quality. Plus, > Retrocade hasn't had a release since May of last year so it kinda went out > of the public limelight. IMHO the list is a complete joke. First, "best" emulator is not really a valid concept as there's no real way to compare emulator A that emulates say, the SNES, and emulator B that emulates the 2600. On the arcade side, MAME gets points from the sheer number of games it emulates, even if it is slow as all hell and an excellent example of how not to design something. For SNES, well, zsnes and snes9x are about equal, mostly because the authors tended to share information. N64, UltraHLE (nemu64 as well?) is HLE, and not a real emulator. As for NES, nesticle is nowhere near the best. While it did show the general populace that they didn't have to put up with Marat's pile of shit, it is no longer an example of decent emulation. AFAIK, the most accurate NES emulators at the moment are NESten, and loopynes. FCE Ultra might be in there somewhere. None of them are quite perfect yet. About the other 50 on the list I have never heard of... > -->Neil John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 12:26:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA03808 for dynarec-outgoing; Tue, 11 Apr 2000 12:26:08 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Emu Top 100 From: Michael Koenig In-Reply-To: Message-Id: <0003650151a05453_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Tue, 11 Apr 2000 21:27:48 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >IMHO the list is a complete joke. First, "best" emulator is not really a >valid concept as there's no real way to compare emulator A that emulates >say, the SNES, and emulator B that emulates the 2600. Correct. >On the arcade side, MAME gets points from the sheer number of games it >emulates, even if it is slow as all hell and an excellent example of how >not to design something. Indeed, and don't even think that it achieves good emulation. >For SNES, well, zsnes and snes9x are about equal, mostly because the >authors tended to share information. I always liked Snes9X more, maybe because it's available on so many systems. >N64, UltraHLE (nemu64 as well?) is HLE, and not a real emulator. The more complex the emulated systems get the more HLE will be used since it's no longer possible to emulate every little piece of hardware and the programs won't be that low-level anymore that you really had to do it. For me HLE is also emualtion as long as it acompanies a decent emulation, which is the case for Nemu64 but not for UltraHLE IMHO. >As for NES, nesticle is nowhere near the best. While it did show the >general populace that they didn't have to put up with Marat's pile of >shit, it is no longer an example of decent emulation. I think Nesticle should be remembered as the emulator that started the avalanche of NES emulators we have today, but it simply isn't state of the art anymore. >AFAIK, the most >accurate NES emulators at the moment are NESten, and loopynes. FCE Ultra >might be in there somewhere. None of them are quite perfect yet. I think JNes has the best NES sound emulation I heard so far, but I haven't tested the lastest NESten versions. >About the other 50 on the list I have never heard of... I'm not sure if it's that much in my case but I was surprised that I don't know two out of the top 10! -- M.I.Ke "I have a very firm grasp on reality! I can reach out and strangle it any time!" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 12:39:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA03858 for dynarec-outgoing; Tue, 11 Apr 2000 12:39:01 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Tue, 11 Apr 2000 07:49:57 -0700 (PDT) To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: <0003650151a05453_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Tue, 11 Apr 2000, Michael Koenig wrote: > >For SNES, well, zsnes and snes9x are about equal, mostly because the > >authors tended to share information. > > I always liked Snes9X more, maybe because it's available on so many systems. Heh, past a general overview I have no real opinion about zsnes, as it doesn't run under my primary OS =) > >N64, UltraHLE (nemu64 as well?) is HLE, and not a real emulator. > > The more complex the emulated systems get the more HLE will be used since > it's no longer possible to emulate every little piece of hardware and the > programs won't be that low-level anymore that you really had to do it. > For me HLE is also emualtion as long as it acompanies a decent emulation, > which is the case for Nemu64 but not for UltraHLE IMHO. Point, but there's HLE and then there's UltraHLE. Hacking something for every single game to get added is no way to write a (decent) emulator... > I think Nesticle should be remembered as the emulator that started the > avalanche of NES emulators we have today, but it simply isn't state of the > art anymore. So very true, though I've heard it's debugger can be handy... > I think JNes has the best NES sound emulation I heard so far, but I haven't > tested the lastest NESten versions. I haven't seen Jabo on efnet in a fairly long time. The things about NES sound that are left at the moment (AFAIK) are incomplete, incorrect, or nonexistant documentation on the pulse sweeps, and some synthesis and generation issues dealing with the noise channel (samplerate of about 400KHz...) The documentation issue will be resolved whenever Kevin Horton gets around to finishing the RE... John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 13:13:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA03982 for dynarec-outgoing; Tue, 11 Apr 2000 13:13:00 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Emu Top 100 From: Michael Koenig In-Reply-To: Message-Id: <00036501f68e75d7_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Tue, 11 Apr 2000 22:13:56 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Heh, past a general overview I have no real opinion about zsnes, as it >doesn't run under my primary OS =) Linux? My current primary OS is BeOS... >Point, but there's HLE and then there's UltraHLE. Hacking something for >every single game to get added is no way to write a (decent) emulator... True. It's a bit strange when an emulator can run a few comercial games but is unable to get some simple demos right. >I haven't seen Jabo on efnet in a fairly long time. The things about NES >sound that are left at the moment (AFAIK) are incomplete, incorrect, or >nonexistant documentation on the pulse sweeps, and some synthesis and >generation issues dealing with the noise channel (samplerate of about >400KHz...) The documentation issue will be resolved whenever Kevin Horton >gets around to finishing the RE... I don't know that much about NES emulation, but in JNes I got some digitized speech (in Karate Champ eg.) which I haven't heard in any other emulator. What I also don't like about the list is that great computer emulators like VICE or Basilisk are rather low on the list :-( It seems that most guys only want to play the newest games... Not much nostalgia left :-( -- M.I.Ke Save energy: be apathetic. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 15:54:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA04659 for dynarec-outgoing; Tue, 11 Apr 2000 15:54:34 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <007701bfa409$0675af20$6d1f883e@ben> From: "Andrew Davidson" To: References: <38F2D508.D532B576@eurocopter.de> Subject: Re: DYNAREC: Grrrrr..... Date: Tue, 11 Apr 2000 23:32:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > Yes, but we're not. I don't want to go into any great detail on how it > > > works because we're only just approaching the end of the design stages. > > > Though some parts are currently being implemented, these are definitely WIP > > > and subject to change. > > > > Hehehehe. No project is ever finished. It's always a WIP. ;-) > > That's true. But this project is barely started. :) > > > > You and me have similar opinions on this. No, I'm not using MFC. I don't > > > like it. See S3Tweak. A program I co-wrote - and it doesn't use it. > > > > When you visit the US (or I visit the UK), let's hold an MFC lynch mob > > burning rally, shall we? ;-) I can tell you a zillion horror stories about > > its memory leaks and memory overwrites. > > Okay, that seems like a fair deal. :) > > I really don't like MFC - which the other guy (who still hasn't introduced > himself!) knows because I told him in no uncertain terms. But as it will be > used as a temporary measure. Mind you, I won't be using it. I refuse to. :) *cough* It isn't using MFC, though. I decided that MFC made it far to difficult to get at the fun stuff and, as t'other Neil mentioned, takes up a ton of memory. The current code uses a very un-OO, dull looking, C style, common controls based Gui, and is intended to stay that way. Erm... hello everyone, by the way! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 17:56:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id RAA05207 for dynarec-outgoing; Tue, 11 Apr 2000 17:56:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <007701bfa409$0675af20$6d1f883e@ben> Message-Id: <00036505edd39554_mailit@mailhub.rrze.uni-erlangen.de> References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> Date: Wed, 12 Apr 2000 02:57:49 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Erm... hello everyone, by the way! Ah, another lurker demasked ;-) BTW, your email address rang a bell and after a check I noticed that my organic computer fetched the right data: So you are the author of SpectrEm- Dr, right? Well, it could be really interesting for you when NB finally finishes his Z80 dynarec ;-) -- M.I.Ke Telephone, n.: An invention of the devil which abrogates some of the advantages of making a disagreeable person keep his distance. -- Ambrose Bierce --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 23:29:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA06190 for dynarec-outgoing; Tue, 11 Apr 2000 23:29:09 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F41756.E75DFB30@eurocopter.de> Date: Wed, 12 Apr 2000 08:27:34 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <000364fffbcb3b1f_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > One nice bug is also when you forget the semicolon after a structure since > you'll get a strange error somewhere else... Yes, I've encountered this - but I think this depends on the actual compiler itself. > But I agree that most C bugs are well-know now and if you don't use too much > macros you'll understand new C code better than C++ where you first have to > find out what class hirarchy the programmer used and what methods are > available. If you have to figure out a class hierarchy then the programmer was crap. You should only ever interface with one class and you shouldn't need to know about the class hierarchy - ever. > >Take a look at the stack frame that the compiler > >sets up for C++ calls alone and that'll scare the living hell out of you. > > Not to forget the class descriptors and method tables that have to be copied, > and when you have multiple inheritation it gets *really messy*! Yes, it can do. But if you make clever use of function pointers and especially clever use of virtual functions, then it's not so much. It gets messy if you don't take care. Admittedly, the programmer shouldn't *need* to take care, but I guess people get used to it. And they shouldn't. > >Or maybe it won't. ;-) > > Most programmers won't know what's going on since they won't be able to find > "their" code in all that overhead... Hmm. The "overhead" depends on the compiler used - most overhead is at the start of the program. I'll agree that there is too much in the middle of the code - but again, think cleverly and it is reduced. > >Now it's the fashion language of the 90's with far too many people who are > >clueless idiots about it who write bloated code and eat up all of our > >MIPS. Ever wonder why our apps run the same speed even though we have much > >faster processors, memory, and hard disks than we did 5 years ago? Because > >little Timmy out of college wanted to write an OO program and he used C++ > >to create his little MFC app, and took 2.4 megabytes to say "hello world" > >on the screen... > > Too true! :-( Although I thought Java was the fashion language of the 90's now - but there we go. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 23:30:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA06202 for dynarec-outgoing; Tue, 11 Apr 2000 23:30:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F417C2.34A89011@est.fib.upc.es> Date: Wed, 12 Apr 2000 08:29:22 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: FWIW... References: <200004111417.QAA22178@pons.ac.upc.es> Content-Type: multipart/mixed; boundary="------------F2BC214D90F24BCD655DE7BA" Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com This is a multi-part message in MIME format. --------------F2BC214D90F24BCD655DE7BA Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Victor Moya del Barrio wrote: > I will show you tomorrow something I'm working on although it isn't finished. > We will see what do you think about it, then. > OK, not really impresive or new. Victor Moya --------------F2BC214D90F24BCD655DE7BA Content-Type: application/x-zip-compressed; name="drmz80doc.zip" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="drmz80doc.zip" UEsDBBQAAgAIAJlCjCi7MlrXzxgAAC1/AAAnAAAATmVpbCBCcmFkbGV5IFo4MCBEeW5hbWlj IFJlY29tcGlsZXIucnRm3D1rb9TIlt+R+A8l3Q+TjJKs7XY/AhohCHBvtBNAwNwr7Xq1qrbL 3Z64bd8qO0kT5b/vOVXl96Od0IHMgkjsepw673PqZW4dnvqmQyMRyB9usjKtqeVkrkkcj/m+ gT9DGq1MYzLJn302MRbWrePHUZouQ3gwHJ/HGxo5vrumXLAUChL+b2jzq5PQKBaMGBb8nRkT Y2rY8M+CJ/vua7Bhgnxg1+Qzdn95B7Asx9/EHuNNYGYd2BwAnEqgCMwGYGdxxgPGEdzLu+fP ANSkiZbVRmsKf02AYALEmYQ2v/uy3SzjUGJj2o4fBeEwhNafu38F0cqDf0KR1OKPNVkoQKTB AnL2TnUxW10Mu6/LlmuCrRbF5szs6fV3ztilGstu97J6en3NuOozbfVZzHr6vKFhGriy26Qt 3ZwVJqkIULJByXDS7qE50eixVZhNpq0OORPqHUoGTGYdXayOLjn1k3m7gya/3iEnHTq5cRhz MJeXDmee4axg9MhwlmHGjHaRNZ2+fP6sUgwFRUVHsQKBbw0gHcWNtj0gegZUIExrUS2E16Fi BRnfOkA0ig1NdlHcA6Q5pHlq6Qp4kBWnFopKpNuQiTVj6a1zHXhuGiaUO9T7MxMpD1brlDi+ APtEv4ZezXFXPPCIIyJ2kxrkQ8w3VHoCYTqXjCVRH5Qlwlk4WShBgR+ZF6CWVDAvjowC6ppR dA7EBMBArrCGQaNLRBzvBVtRP9mJ9ENgTyRseyzsBmCkuBe0LUFPh0EHfaAHAE8R8K+OK0yo o54XpMEVI2+ZT7MwJZ8opytOkzV5D0FNyRv8SHC8mJpOGODPHcLZhYk5BcLfxN6WfIU3LR5z BsAta7b4bugzUsI+jzwWySEkyWEg0pQuQ3YrH9U72yQhTVngHVvzU3MOodRQ1SG7YqAL+DPy XUM9/Zk/+HEYxtf6RaSUpzQ19VtCXaZrAokBQsS3FJACof9iWPDPOEHKFfxss2RcQCEYguMv AyqAHmD6ZAZwgjnQ/aersXfSG3gnd11I2vtCUqNo9qKYo2badh03LOhGzgLKNXrWftCzBtAz F4ieZc7q6GFBN3rGnnk3aSEnJV/jnrVYNNCDgh8jWnunaOFnHTks6BHtGMHm4h+F3nSnaO1J wyqw4MeIdraTd5jaA71V9LDox4h2vhu9ecMssOA7RFtFLhdzL3qLnaKd2Q2zwIIcvYhuGIHW +Bx409kUctr57K7TpZvmwrSNmXU66yRtMoLxxmifbjrZ8eTUnJBXTfq6fHqTRLvP8EdhOVY9 zLgLN6uNnmk1jB8L+hAsHfs+UJRstE672Yiz0Baupw1PgAWPzcwRIp+0UbVmjXCJBU9J7pNJ wzNgQQ3BXNh7R/HecreNpg0Ziycqd7Dulrk/KblPpw0bwoInKveZ1TAiLOgJD9OZNZnac6M7 Phybc3sxswxzag8H5pz47w3NxuHYnN80ZtO6U4OCn5X1tzNXc75ooAcFe8ogvj/rnxp15LDg O1LDe2Wuk92JtWXV0cOCJ5P1n9rTRuaKRT9GtCOy/lnDLLBgT1n/zsx1RN4/aZgFFjyVrH9m NswCC4hcXH580Y7I+hcNs8CCbre+MCa2NbWmdk/av7Dmk8nUNGfDejHk1e37ePW/4kpOh0+/ x1rOX34lZ88+/cmv5DR9+vet5fxlVnL24dONhln8BVZynoxPH7+SY5qLxcy2T6dmb64+MRaQ isx3LeYMuXVr7KzkeNQiTiOg2n1p5o+c1AH5pUs3GzEVC34EivdfxFnYDUwX9j0xLVz6Q3C9 zyLOdNacXsyemNwn1qI5xVg8TbnbRsuGjCcqd3veMCYseFpyn9oNK8KCJyn3mTlrTkZmPdm+ OTHni/lsZtpFXGvEBmtmm9Zi/vCd279Ctn+vjHW/O7c/JdtvZKw/c+f2R2b7OzPWH79z+yOy /e6M9efs3P7obL84EvJzd25/aLY/tY25MZ9a1p0UvTqcE18xzgOPVQ7p5EWN/d5anRtnEW7U inzq0OhUTi26u1k93Qocu7tNursVi1Pdvcog1hyuCHPdHafdwxVbHN29Znj0KYj8+NZJA9AQ 8oEFIXnDqReyrfPL0hbkv0BIb7cgn8Aln6HnJglCxqEbzdJ1zMk/AzeFXxfxlhKPQWcKQ8RQ HyeMU6z6/ez9+Rs82ckZTYONs+WWAS5oE9uOtzVNZ80t09kE0fRUEs/ZVbuVBa0W2MjCzRog QwRxhCxmHhQKLIxiP6ErJk7V83XMPWFOJ7pKHj9dzC1bHW8DMmi0Je9ZFNyQs5gnJ5Vm10IP Epnm5O7OSSiQcm2ap8ZMPa/N2WIC6FC+Cs055Df4xIun1LTNuXxa4hPmYB7zQW3nhjzBFl+7 KQ8dP42WfzqURZ4Xu856m6zXcfoNtAMQuYHUJY23LHLYTSLWPI2gMAuhm0hcx4vSZRiJpbeE UmmefsyzUMJwaSIMB943Yk1BD64Cdn0JZmvLJ+HSkJnWqXz5dmk5yWrJPY6n//SjH8d4oA6P kwvmph4BzYnYjeFgG8a3c+PUwTb60Y1DcYMPQEa0ZpypXuq8oBsSZb5JBKXhVWjCU+byDRag j8F35VIwG0qiNY1Wt/A7vUkpOVHn8vK+luwLLHhI5wk8gd4/pKsNT+HocQ/rnXG3ZOzIS3Jw 1wdndg8khuDMJZxRAhgCsxiDDop+J6TThyMEtshBa0MaROQ+h5bl5Yn8pCgaJ/TKf9WBdhxm jrMU7UEGOmPk0WYccLRn7URkX9TdFseN7SqexDwh51HKYy9zU3CsJ2X7DmCEfF0HgoDTyjZ4 gBaeaUSCKAUXQMDxEHBZEu3rNU3JOUnXQXQpW5GIXUNbj2SC+VlINgxCiOoTwGyNSXCeZgkv WCIU1E0GThGxI+Q8dfi/M3BCgJMg8pAviSMYickhujmLfp4RvI5RE8YJ0sPIBjGG2EhJ7CPK IscOnuANWr2GgLGBKEovGWKUAR1BpJoWvKAwAgQkaHCAQt4AODcDweHLi0PEnFwHYUhoKGKS 8i0RMQwjL4KkMfJQygBgbEl8jcDjDCQNrFuC4lXROqlLVtGQZDzBuzZtChD4SA4zcvbpD4Ei 0vSxkvVEuCxiJ1oDSvBanv7zZxUwFOiUvW8wFYlWZHG8DFIFPQwumRQTtJ9NYc6H7PUUW1zQ piVTCFTRCiGgghTNWQPMxWzxnwhnYSxmCEcNKzQdKJErCunvtiCJchdCmVREN45EHOYUxsgI 1I+FIWQ1oxz6ncLbFh5FVVUwU6AuhEEgbh24QjH9+TMGGlkZOkUbAHS28i3hLE1B6JBqE5mD cMDoOkjXBEBlNNT9YGRk3IqiXvAsigr13ih6IPgS0BpkqrQ7EVwxcQTKBDYmK6nrZhyZlrcS YBjMY54iYas4DQyBDiE0SWEEusG0EOnYsE2MQDyPMyGIzDByoUv1XWppAHO0sZcG6IISRG6Y iYojqXuOUm+U5Uot46xig+JFveOtXtKB6UbpFntP/YM41g6FWm8pH6BFDA/ghOmhA2mYDh3N 8zSlk22erMHEvOZ5634R2SgYdFRaus3tCRNtT6k55KgpV85VyVcpNujxzWJGsNnJnkldKlKV iNEppsxdR8G/MybHjpcpwEXVSDmNBBqYJ/HIpQ6aB7liCKVfscEFTRJsfZD783Og6Qq8CcoP HJScwIGH2zMVrqKi9F09+g3aBj8pgeS8yuuCOHxWhigZLhLmBj64QCmtk1rM7Yu2PbFQuZuK YZQG4WccBuS5F8ULKASzY1SClmXowFCGAD/gIq24XwySwG7ugzEeQWwFnqH9BCilrfTx0FSg GKiQAS4PkYJcoAq6EP2U9Ucw2PNncrg8VK/BIQUylBesZl5tcOj6UUY74JDGNe+MMQxepB9C /Ub9SmshVXrBa5gdEC8QbiYqsQWDEQQibBwSVBodCvwgkoTpsRAjKUTvikYpzvOkGQG4Skke 9wpVb3B5VxpkyTRIsXg4BzrgQZKgiDFavP28+QYMFnHGXXb4OJ7ruNtx4R5jt9/CmlBMB1T4 M1tBa9DPTAD3HgXfdy3NfZRhLnS8AoU4/4+PoEqJeJRxlBlFelXugS6jMcWwBqcY5tgrjqDS 5H0WKefyKHMIaTVBreaP8w9fJ5bWf3bD3INsYr2D32dbNwR7VPWHVUsi3WZV2GRR8gE8WbPR i8pQDf/Z6v8OHOm2AeAFKfBD9H4jfyMfffL1+EsKoUQmyQg5S2XMHp4Yftetx1uJLnl3E6R3 t4CVcbPQN+LJua9xkNl25roQiiG1PiIxhpLrQDDpNfPUTHo8hqGYhoFXDX2PogNtNr9lwgVf iCM2md2Z+3HQblDuPIAoblMIizxQDryZLR0RSEohNNQ1y1W/MBnWQDCzBebRclbjkSWY7yVM zpiIfknVPKQITjkHgS0QKASOBUwGzABJuVLJvKM8E4+wsBinQddI8/g7S8+U6/gSfGMHV3Hg HQ5Ps+9lEnXwDdzGWseHGHO71e7eUnGbiODAKEHtIckBsHa5BcM6rAAqPUAOtqVCheb0+Yq6 JsGUKuORTn80Coonv4gClxyVgYRgWHbvQggqzPsauJfiQFXi0nmHE6uXgdqehTB3PMO5FePD Im8xepfIq1g1mVamCqenE3BT+LMvTDVG7daONzHMlGFufkyiOPrGePybpIwwhQSk4mBsrqLz iMgGvzN6xTCxpCGY1gNi5n11sO7QE4qZ5k513u3DSif2WWvb31DNGgOB+kUuzgAxbw82ylNr hpBryMpd5FfuqRqaIafoiq+yX5Wb0ifpvg2M+jUYPYzWlM+QTMBMGz848iUMXO197oaWCu/n fSoDCBzgp/ifsb3vI+4zmsmZcMY5zj7TnEDMFZboeyTdHqE+iknKWzetzkIxIIUMFUXH9mj1 IDmWTl5KkPz6OBHkgdL7FMssH1kD6YbiUZKljYz5KUi1nYmIiK5q4ssDB2YAQtpiIKMIzRfH ILWgaXuJa5QcvzymHL/sUY64bpRzAl4F+/lSHBAirszjVkSx4FwV4gYrA7WgQl35VRNd/RAJ QurI0r0ncRLq/xvf2cjSgDRR3w8onGE1Zy+WqprwRskliIL9iwWBPmy6WWfrd8lk7yaDVAUw a/zGlFj0KlYX70emyeA2dGqMyc1rNcG6Z8Y7LIeHGkeJDrhvqicL6siT2kNpFJxfEPxuWbEN kaesg18hqg9qkN/I+SoCbuYJqNkqaS4qPPAzR7cWQP49viYLssS1eLXvBIloWaTXCfJJL/jy P7NNAr/3u0xwXxU3fpPrrTxLUum9YQqezy2KChAZFZd7TuOlJbgqucMlg1UWUr1KKZHhTC4K IKNi3Go4IQ+aOEabYO/eCGD+lBDxOrymW6HWpJgnyIFx+HjhohANqAOKH4/8VcRz8OHi/LAQ zlG3bOrGNRlcZ7XGf/DttnCU7YXgPZ/XkCzROztnRM0nclPOc5t8PQvjZr5X03D8uiNiXUfa uc0fUrqUmrsgv0KrNzCneVmt0hDUOvtnRr0325TJplCE7/2t/8WDlFWby4Ku9lD9KeYpgpNt z+M+yLqlhKSbtqFqQ0SicRkQc3jR0yDw/b6aXOUuIBz0tFnTMGUFntU24Ff+l/rYhtYHwIql ixVLt1ahFsCw2mNY3Ri0YUTYbh1KHMIe5KifcJi09tQu3aFajw3VrsN2LSIU3EjG3bQrtrJi 2wNPJD0VidtTAZ4Qo3q/6AZq82WXWrWajF0lb9We5Fua0pdtC0HY3cW8p3WUfmIRfl7xZW0r xLl7OZwc1T2YPejBJiM/Kwku2nCChrE/zmbBuTobRpJyQomeCg99FEdMOKfb3KUVW82tIFsP saO90T0c0SgfNNL99ET5r/JQEiZnuCdZ2Sav7F7KzcuiZixDhlxdDzJfAKxO/NV5fblyr3ZV upYxMeLhEiZ0wmOarW2QAZwq3nU3MtCYXNEww6MK40fo8tLDY+XHE8ucAhP+PNgCzBcwCTCO 4Id5hIfLzi+s8RTXI8IORPzGGQ+hz4KFW6Lg4PBRnO4avivYdMUZ3bEzyHQCbUaYHnowAZEn Prg+VyDGM6wRpXoDVG9s6g1LPVtIiKxgkA15FEwvxxgXuMawuRniatFteFldbW967OYhbCpD 5IAMwD7dy9znjoeduCNgJzxecbrJ9yXGQ2+E6p4hXtd3tSHJJwcwATjOZwDHhbUegm1EXngf FBr5wA4U0AVHaucwdxD3HrGZY/QM+erVqx0gB/KSfpivRuBZT2YGBH9eqOtJ4bnkCoIfV6fN YP3nF69Oxo7MR4z8uTryH/mZ4LcXr6HcBzRwRks+v74YPWhPNtaRvkAjV27vgY/WJ9w1mYIk CkT32vFjz0D1eSdMFcqs4TEnot2JVO8sEtQ/jK/7su814NCqkyp+8KvKhc4g+h3qpcQjJbmj 3mTusCOFT0BR+GvOyvT97iWRfwboyjPJfZKltK6brp40dg/0VBPUXmrMGVJzHnfiDJVIT0et FtT5x5IYc9YUUj1DHkvREC3In32TomvbxHRNBg475un9pMhGg+5FzQbUSBm6U4/5uPLVPSPI LxdUj+O+o+6aMFzpw4xCu6pifxK9Jp6XxVsVeejSEwt5BL/SSF9rwFlJ5fQ/Jr0fdQu5CgXo BWJdXFiAeQMe4ZLjH+BdD5m2C8yhcKb34Y/ffz/Mz2QlwEbERgf22gjydgHAj/COzPNnab4a 30angovIklgeuVD78BTPyTE8DgzhEa966KlmbaCrgMs7FmpAxW4PD0vTqJyHdp0Savjx6aAf t0f+Hwy33R7lO9x3ZxrS9Eq9kxGY1Mkj9HjrRYa25i2Quuy05oxKXFoG8n2J0PdFiZ6x30p1 aKxWUHJGfH2oVp9hj/mlQJ3RbGgZVs2iir6glQEoR20PRuqswFOGclEEsYQhr6XLVFbbWDfR Q6oW4BTGZTwPiz0P4FIHk+jD2CRqfPKl5av/nWSIL9hG+srCp57kx7VKDgtMXct7e3UVH8PQ rlDTjjLDc8C3pacXHXYHrgr9ZeUiTsG2wiH3nlnotJcHBes9GQpFpFvyLwkZUgHwq3iACLnR ZSW5FBW39KU5gFxYSEUVxvHrYRnBE+BUEOWMqjJiwCRwOMlNbJNfZCm42Tzj/BoP1VA8xIZT /9CDmPtizAyBiPPoCj8bIGTRf/8P+a2ZxJXnVPXXEXburDu3xo1lG8aRSsWMm8n79+/1Sz7c xyx17o6KsYwbPFx/pNub2F4+Y5JStrvPwVTZHQHbFcDTue93Aa6kjM7tsamayB+1F9WplQ/f PehK9+SEnOdXuejuS91P/7rSBWZEYRwn5MALIIdLIfvF18NHQf3rdayvch5hGJM3x0N2E+A+ tLq/+jjD4n3Fjbpr+SgDFDqh7kt2XaZsnXmxp/e/3zT2SpRyasXqt971T3PuE2AFj3Gioy48 rvCiMzRY4Q0NLZEgDFKd8Vfv/pGD2rXM8uIh3nXleFtZ38Ukdn4VXN9aPlR5Bt6QXrMwkcdl pGutLdTj6QN5vTPFm9Apro1iQhfra+IwtNxBCVI1rxHycolOopfBaoXHS6APKNQGi/NL+eWV /CWTpyAwNMjb4CzCD+rIKYtgm2WYX9gNVIIAs5jiWmuBS3n13At8qMH/xK2gBqJRpEig3F2D f9YzUTm/w/ZMHoVtEIY38+U0Kg7VLaWSQoDI2TILQq+4/N8kq/O7BYW41dkldZEyVwAMZ4rD 6rIuTFaq9Wsqx93QiK5UThVRebqz5IG61gxwEsbxwzjqsFceR2OcoKqr2rz8fEDt/HaC/3Wl p3ArEkjkdx5WdSRv3QCWqqa5ViWiyjP8bgMkgblqlAx7/kx/t0IC13RWSahdbsb8Ee+TS2Lz DUQ95tmnP0qdxOFruYOi3avfUQfuXQVFYlCTiDwFLbJAfocLh9ocYRYBM+hopUEiwKMcV6Eu CMcJupdvtLwDj/iKToSV7IA9cVthqtLvTuuA1KrC9LQp4kkvkIov7mvzzw7/Obwm3BevbVzR Ke5QH8mj1/JTCMNx+wkH7H9gKothRrDQ/7/qzm61QRiK469yLlvoclcYvbMWxijSsjfIpm3K bJWpjFzs3Xc+EuOs7WCQi10JmsRATs75J+b8fDhX6FGsnMrO46QB79ED5BA9hK45q1DQFYMp GOVdO3LPDcxqzjMRbo1PuycXa3EyiJnAav73nOTfjHOpIL2Cevw7g0x6UkCUvm6GLIIob0jq ujy9aVE88UabKDopRjn0zvfHeohRmjxrHhhRrTCvME7QwQa0VxvW8V7ocHO+5EAtHdAVHjuL wsRUJCSoxQZ87HC8CF+PFe1ngXPDlZR8O0+hcqWwAydZkHcXWi+2smrWgecU5pO7ZDg4uihh WxWX4Fq4z08fJK5a0/ys4T7XcqzLuvIxMC5o48n9ZoMKkubodaVwFZvxSdACEn6wGo1iZ4wB pdRCes6bWsCoqcwKlQVvTUMaYRboU/pdw4vaqbUS9fvs6SFnwce82lswqJFRfX0DUEsDBBQA AgAIAKJCjChdRjDEGg8AAL8rAAAnAAAATmVpbCBCcmFkbGV5IFo4MCBEeW5hbWljIFJlY29t cGlsZXIudHh0vVptb9vIEf5sAfoPC9yHkw+yaie51HUQBI6TXIWL4sBxrkCLoliRK2lrimR3 SdvK4f7E/Zb8wD4zu0suKSlOrkATwDaXw9l5fWb2ZTgYDt4pnYmXRqaZ2ny24u+nx+LVJpdr nYgrlRTrUmfKDAf0/2QipnllirROKl3kExoT4nqlrUiLpF6rvBL4W+ZC55XKU7EojFD3ZSZ1 Lu5WshJTUa10fsNUIld3oE3FcFBbtagzsVbVqnBf6XWZKWaYemFMI4x1fNd1JlkMIabV7xZs 5tKqVBQ5JlHMfbcy4qIwSixMsRax8hNSRYHNmsTVqZKiWJC8NgiGv/AEuvN8I9baVvJGkTA1 lNC5I20MMRxIzLLWOUhGn9fgltRZKT+fHZLA4k5nmZCZLURlNsIWmEKvQVoVZDy2Mb7egE1x R6yLermqYLV5UVexUI0TlChrUxZW7ZCamD5o0OHAmVSJi/cfrajJltrZsrG1sInK1cQ7vZ3A O7DLRkJD/voeptL5UpwezXXluGf6RrF78MXTH48fsVFTZ5AEATRXLizSyNdKZNIs4b+Tpz1G s6enPxOn0+PTp8TJTWy9Js4Tt9JW2aZRS5pEporjLylyW2RBy4LMQbFxemz5tZIG3/3lmBht 8GB9oHCYJCtpZFIpAxVXOrHO+M3UNHFFgY+xDT8NB6VRVQWXZ8WdIA9gNEU4VCsBRrXM/JeY mYy3lBQVps7zJrTXntGtQuQgasi0nHBW3yo7RjAhufilTJLakOEClUVaqFSlTgWKLrY4jIJP MhBVmEWuEdEVabJW64LYpKlR1gpbyqRxPgcwu4m9AhP5TG9TEIZNstr2oKKNGpevHGNGeYNS 3tkzIpeHLJdVsJBz/iaEaorQTV386NxWxuGRM5qLF00JeH/6VBAhZp8feiUJFiqVrHL9n1ox cTGvMDGZpzIytxRoKX8W9Fbk+QTRjPFrIpnJsiT6UYCzKcS4RW6RNkhS5JcSyHN8dRgl3h6n wED4KUWJyI60wZxBHnpyMSRIJVuqRC+QwWwRb1oX85FfWm8saoNPTUjmXN1XsKozmf/a41GL PAttbBXlPkEy9DMLRMAYWK6TFblPk1k25EtIC2JLmkvLuApInpGHEqCti7c8zBNqwgopoCv3 eWMnlXbmxaeXjK0m7X9OqIkHjnxyv4OfahWFksu+O4WESbVNahuhGgEhQJCIMwS/rTwIDQcL nbNefj6Sin2Q3sq8kkvlIg0Mo5GAuk1wTVzRfMRF01mOh0ZGlyW5hUDm1dX6E2xki9ok6pBe H6FSLSEMHFZbcKaR11s+oNGZz06IMv3TJdQoLQ07m4PwviJ+b+rcuZoePk7fXT9+5GdV9yoZ 1Y8fvcbvi02SQQn3nuUQ7ziKI1oefY0Q2ZyJ5jP66rn4TlwuxPXRhwpxzeWG6OuKU9R9dg8/ n4nj+9Nj909MF56Iy0qdJMg01JCxKChY77RV7KSAPTCvcy0yTWY6jVOFZ3ilbALL0vNZhDYG 9RJZEALHSSUR/0Y7p/VBZCwAfggIlJ+OaRL3i6DXsyEUhRayraSpmGdFcoMmQNn8e4Igrn0c mLEyCEAEiKX5oC+kg6CJUYQ844D8uUuLZi7WqefBn1R14Tz9QX9So9tCpzt816ViLsGN7woC sKUfcz4iIjKMjyExgrTzDfx66Mi6hhZblkZ5qw2ykfHA83KCfG8bpoGnT5K+Vq8zBLNKr3Vy Y0f+JdxxkaH+XlB1Uma3ovGHHU1fFijxaCyORF7kn5QpnjMzodwHAGP4LXGsx4IJ3ip5qwRX EpnBSx0rdSO+lAQse+1z5U3yHdmi9xFslCdU3Qhv0QL6ysmCiDvJtYckDeHWMwPXdKcRfxnr wWHlv2VJ0DMgRLy1rhReWXWNOT9kOtkbPhGdJboHA6gztsMaF7KmmooqaKgsVoEx4cac4ofn Qx+yIB3YHJ4UVSIqkJR0mSJLeiDJlzvUbKOfFRQ/fDFDOsq9LxhvSS4UHCdgifY76dB+ndLb YGRzuexoF3KDAMCyHzUnigx9GFqtIpHN0quj5oevUPPDg2pSdxTEwKNVX63kbh1phUTrwWYJ EOu4ppfadRlofdG8Uqw7gm0FAZyq2hej/PJ/DswejIGl7S5gmjiLIb/pcRyXjtDoK/fKTO/i ktpIt0Pgh81N3DQK4yflZPaNRStYD2Th8ghYz11hYil7QnbN2tIiKKVH+UWRYTHjliG9gelM rNFKU0d/jD5huswhEIDyJH54hIe3aAVPxZzaZ7doAiS2Q25V1dRPhOZw8O96XeKvjoePn3Ov Zeqy4thDeQ1w37yA5NLefAGt2a6JAykq7ks0X771YsZGcfEmKQrq5SdiRxHL13qf4/HqwVA9 z+7kxrq+SKVWjI6/svo2ckNv0lPOMxXJPno3mx42ko+d4E2sNE3jcMBMtfPvhXCgG9wQkji0 NZQBoV3n2PTkxLVh+utwcEAWOhU/YPglEP4ZRjyla2WvlExfoitgCgzR8xbR3wwWqTEVD0Rk GH1fmIo+ZpJp0ePjCfg7T9Hw8D4kwamTIxS23XG9WPQGgnFnCPTuq5XM0Lo9I5McII7+JRc0 KpkBPc8Tep4n4RlrTjw7LvS8yphL1uUqF6VBzewOzpMdg6naMbjKmkGaQ9+zEvfN84afN92P bNl9LpPuM2KacGHLMtuDoXGhUVepbstXbiX2SlbyWRMmxKDzZLrv8uq9ylMkDoZ/exYSsA0v Tryp25EUZVvjKGJp56HZ3TBGbkJoN6vOKIy/GJxfF5sPhebDkQldrnlfidCRFqu2Sb91tA7k ZWDzpqPNntAG4w8g8WUjr9dzmInaf7fe2dWdElhQZ4qPKmnC4qSfIl3GGBNYuNW0FdCj7uVP +13YNW7hi2pJQCV8eob6cjzGj5Mxbf9NZ496kkQJ2DBd9LY1rN93w3rfkROrvHAtSC9re0nb y9leymJOQkbeizB+TW97Ara5vCuVd2XyrkT2M1k0JXkqEQthOurgGj2iTO8luv9e56m63ysq Q0CYqZJoT31S9egYGjxdaYqlkeuwIOlRtqAB8vN2oU/+QZ0SI9Swo1DEjpooOISf8jTbYtfC TcSOUiF3K84QRLu/jnAJn7948aLpP7cAyr1/0UKOhyqv9LQxIWLdRx03K4sibiMQFdPZi0mH i2m5XMVcPoad8Fezc4wvwJJaBnF1Pusy6KAi4R/+Tni1ibj3BzN+eixAHaXvtYcDv6FECNKC iXu1G+baqg4bol3rof1KL1dhiC05+sFh1QWy7dC3n2PedDodi31IethWihJ2MOdGSYZ8wf/2 AvU3COfMt1u6PUXg66WKQb2V6eQpyTQtYhEwRlK1g95o08tWpJOnfYN1i8ZeubYlImW+USA/ uC3SrgK3V5QD12BSNXPf1ZQiqVpQA7u7ovXLsxCvZbKi/THqoQm5fJg3i2XKHtqzpVOlkPK+ MPIhRETEJYmOdKiuRuceVFIuPQ03wxBQ21VzXINqSZuKLMGITrsAGFTiLMEutRrvPr59exh2 CUsYhiTyqnTm4JMVzJB/ZlxwO53b0kSi2LosePvIbZpI2j9VtCcNmKJzLl4ibc1zqw0fMbn5 nMVT2rCXedsHtRtzW8mznTtcWNEE8BkGnZYxpPRPjro6e6u3ABuHRw98/zBk8FppwcevnfZP Yjmz8Hvi/nSgMDeWjODFi4OFbEirqxAnFCXN1zC1VrfdfWp2hKV9XO4zSRx2xR2np4vGXjPq p3UUCPYI0b8Zkh7QeofS8o+qbTt6Lzg8ZRriQNJJ5049iYpzusn9SdghbW1mqWymIRfahPXT NSbqodYu0GpM4nakdwQrEoOSMzrva3Ciyf94Q+rbEfkPBKOkubdwazhoJfqSW4q6op1KUqsb iS7KaCPVMXSK+8Nm8G6iMHJPu73xTdj/f1da50HnWKMm3kL9iyOOpmTTEFU4lGsM4w5dzmn/ UtJeM/WxWQq8PdvfEwk7zW/By1ge+sc/xXMusr8e3z96cozVysHx/eM3b97gj0B4WVe/jZmC TsbGIDghggMqH/TiAG+e+Dc//nmxiN8cnYwPDvgHj4VKPxw8nohpOFKN94yPxIwWJFlRlGKU alSCCoWUHg/p5fVd4U/axwQNfFMmU/eatpHcyT1T0cn02h2D03MzkzvK3nXO3d5TaZZefqeq ClMKMDQF1XV3wLyk+wwgWNLRGB3LsiA609XGYUp83CpGnePv9rSXDvQNXUnwZ95g9CTc+/DX Ew4dZNFViJXKSt5g5DDqrBRp14wP0iu68FDxVY6C0L7wd0IwPS+UdfXZ8rGeL3tzvVzShiHI YcY1DYdLOLThHS7hzBVv3lEe8M0PlSvDlxHonGg9z8K1BO3wCSW7uQkQidJeNUmx5tZJnVWt Oki+3OkgTbJCePrei/uZ4YC+UHwW0dNMwVfcNxSZO7BlFcHOqHmts7S56wMeXrOgV3RBqXG0 2+N1h97B9ZSwzq7uWgOWTvH7FZ+EYca1zOXSYXku+dCgVd3d2gCnUhmYaO02owNWFAuuSu7y iGnvCXVuXZTS8NmTiWsQmTpAh0MsFPStexYcaN5csSreWHRDC7UnBMW2pRxnUpT8FWnQuQdC ZYuut7Cu7Y0HP+HF+49tKNLcHYB0qqfdSzMw362mUSQYoV/HLXz8ZGtd8T4ySTQmqESrmC89 U2I5DvKSk/haRlFS2n+S7cUcktq2YkdCNw70sRI73qMWdIqDIww2UNaSRcjUDP6yA4+aVe8T Wkw0l0jGfAbGt5AmDi7/SuWIcM2qbHG0LpAkG3eUlfI1jPcIx3QLEV/yRQB3wynyH726pAS0 YlTyOae7gxiutFAebaC+k0CcHToZf5yIi+5lqiNx3tw9oadX8WUUfl2WGdZEDi4dF7obd4GQ hh+YR3z7ceddTopbeJu2xiDNpu0fAlQxhz7cIY5gwmW9Aa6sCgpv4mZFcL+/ZsOfcaW4U9Da k7ljbtf10UVRIsLc2rUOdU71snLVXbZXLr2hZqgaUmXi50Ll7AeW7ydDQFit+AaM38nhiJzV 2Wl7+4dazDm4DweECw3qyxpFz1i/ZBXn/HjGC/x6tVqJyWQydnJwlyr4fuds4y6BYegXnRCb WbGRyD/YG8mjCzFqr3wOB/JGiqvJ5eTlxFWi6e9rd1Vtvtl3BZPm/y9QSwECFgsUAAIACACZ QowouzJa188YAAAtfwAAJwAAAAAAAAABACAAgIEAAAAATmVpbCBCcmFkbGV5IFo4MCBEeW5h bWljIFJlY29tcGlsZXIucnRmUEsBAhYLFAACAAgAokKMKF1GMMQaDwAAvysAACcAAAAAAAAA AQAgAICBFBkAAE5laWwgQnJhZGxleSBaODAgRHluYW1pYyBSZWNvbXBpbGVyLnR4dFBLBQYA AAAAAgACAKoAAABzKAAAAAA= --------------F2BC214D90F24BCD655DE7BA-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 23:30:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA06211 for dynarec-outgoing; Tue, 11 Apr 2000 23:30:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F41782.D1156933@eurocopter.de> Date: Wed, 12 Apr 2000 08:28:18 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: FWIW... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > About motivation, what do you want a fan club? > > Sure! With dancing girls with big hooters. ;-) If you want to pay for it, I can arrange it. It's very, very possible here in Germany. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 23:33:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA06224 for dynarec-outgoing; Tue, 11 Apr 2000 23:33:19 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F417C1.D599B498@eurocopter.de> Date: Wed, 12 Apr 2000 08:29:21 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Have you seen this list? > > http://www.emucamp.com/frames.html?/articles/top100/index.html > > I don't know two of the emulators in the top 10, some emulators are much too > > high, and others much too low. Who thinks that MAME is this good while > > Retrocade is only in the middle?!? > > # Of games emulated. People care about quantity and not quality. Plus, > Retrocade hasn't had a release since May of last year so it kinda went out > of the public limelight. Yes, I agree that this is the way things are going. I'll personally pick quality over quantity any day. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 23:34:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA06233 for dynarec-outgoing; Tue, 11 Apr 2000 23:34:01 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 11 Apr 2000 23:34:00 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: FWIW... In-Reply-To: <38F41782.D1156933@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > About motivation, what do you want a fan club? > > Sure! With dancing girls with big hooters. ;-) > If you want to pay for it, I can arrange it. It's very, very possible here > in Germany. ;) To really, really motivate me, find me a nice photo of a brown eyed brunette with perfect boobs. Not huge ones, not small ones, but natural looking "nurse me" boobs... that'll motivate me! I just got done having marathon sex so I've only got one thing on my mind... ;p -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 23:36:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA06249 for dynarec-outgoing; Tue, 11 Apr 2000 23:36:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F418D5.CB7B221@eurocopter.de> Date: Wed, 12 Apr 2000 08:33:57 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, And I'd like to introduce... the other guy. :) > *cough* Very good, Mr. Davidson. You can put your trousers back up now. ;) > It isn't using MFC, though. I decided that MFC made it far to difficult to > get at the fun stuff and, as t'other Neil mentioned, takes up a ton of > memory. The current code uses a very un-OO, dull looking, C style, common > controls based Gui, and is intended to stay that way. Isn't it? Erm, oops. That shows how deep I looked into the GUI code, doesn't it? :o Okay, NB, you can be happy (or happier) now. We're not using MFC. :) > Erm... hello everyone, by the way! Haha! I knew talking about this would draw you out of the shadows. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 23:42:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA06265 for dynarec-outgoing; Tue, 11 Apr 2000 23:42:28 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F419D4.36573B8@eurocopter.de> Date: Wed, 12 Apr 2000 08:38:12 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: FWIW... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > To really, really motivate me, find me a nice photo of a brown eyed > brunette with perfect boobs. Not huge ones, not small ones, but natural > looking "nurse me" boobs... that'll motivate me! Erm... sort of Jennifer Aniston or Courtney Cox style? Or are you thinking Jenny McCarthy style (she's dyed her hair)? > I just got done having marathon sex so I've only got one thing on my > mind... ;p ...and you're using your computer? Go back! Go back, I say! Back! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 11 23:46:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA06281 for dynarec-outgoing; Tue, 11 Apr 2000 23:46:31 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 11 Apr 2000 23:46:31 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: FWIW... In-Reply-To: <38F419D4.36573B8@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > brunette with perfect boobs. Not huge ones, not small ones, but natural > > looking "nurse me" boobs... that'll motivate me! > Erm... sort of Jennifer Aniston or Courtney Cox style? Or are you thinking > Jenny McCarthy style (she's dyed her hair)? Jennifer Aniston - most definitely. Courtney Cox is too thin for me. Jenny McCarthy is well, not quite it. More along the lines of Jeanne Tripplehorn. ;-) > > I just got done having marathon sex so I've only got one thing on my > > mind... ;p > ...and you're using your computer? Go back! Go back, I say! Back! ;) She's tired and fell asleep. I'm using the computer now... heheheheheh... -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 00:17:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA06370 for dynarec-outgoing; Wed, 12 Apr 2000 00:17:39 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F42273.667485BB@eurocopter.de> Date: Wed, 12 Apr 2000 09:14:59 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: FWIW... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Erm... sort of Jennifer Aniston or Courtney Cox style? Or are you thinking > > Jenny McCarthy style (she's dyed her hair)? > > Jennifer Aniston - most definitely. Me too. :) > Courtney Cox is too thin for me. Yes, I find that a bit of a turnoff. > Jenny McCarthy is well, not quite it. I quite like her now she has dark hair. :) > More along the lines of Jeanne Tripplehorn. ;-) Nope, no idea who that is. > > ...and you're using your computer? Go back! Go back, I say! Back! ;) > > She's tired and fell asleep. I'm using the computer now... heheheheheh... You see, if that happens, you should find somewhere that *isn't* on the bed. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 00:22:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA06382 for dynarec-outgoing; Wed, 12 Apr 2000 00:22:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F42377.E0EF566@eurocopter.de> Date: Wed, 12 Apr 2000 09:19:19 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 References: <00036501f68e75d7_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > What I also don't like about the list is that great computer emulators like > VICE or Basilisk are rather low on the list :-( I'm not so interested in Macintosh emulation (there's only one game I ever enjoyed for the Macintosh - Bolo), but C64, Spectrum and *especially* CPC emulation is what I like when I do computer emulation. And that's bad that they're so low... :-/ > It seems that most guys only want to play the newest games... > Not much nostalgia left :-( There's no nostalgia anymore. The only nostalgia you'll find these days is with the people who were in the emu 'scene' from the beginning. There we go, a new topic. What happened to the emu scene? When did it all change for, what I think is, the worse? My personal opinion is that it started to go wrong with Callus. I'm not blaming Sardu for that emulator, I think it's an amazing piece of code. But the games were pretty new and very popular and attracted a lot of attention. The other possibility is with Genesis and SNES emulation. But... what do you all think? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 00:32:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA06408 for dynarec-outgoing; Wed, 12 Apr 2000 00:32:17 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F425AE.E7EAA197@eurocopter.de> Date: Wed, 12 Apr 2000 09:28:46 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 References: <0003650151a05453_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >N64, UltraHLE (nemu64 as well?) is HLE, and not a real emulator. > > The more complex the emulated systems get the more HLE will be used since > it's no longer possible to emulate every little piece of hardware and the > programs won't be that low-level anymore that you really had to do it. > For me HLE is also emualtion as long as it acompanies a decent emulation, > which is the case for Nemu64 but not for UltraHLE IMHO. And if you're going to claim that, you've got to think about sound emulation. For example, what about sound emulation with the NES or SNES? You can't claim that to be "true" emulation if you think that. That's a topic we could start, but I don't want to. I want to get my work finished today. :) > I'm not sure if it's that much in my case but I was surprised that I don't > know two out of the top 10! I remember NeoDanji as the first NeoGeo emulator - it emulated that NAM game thing. I know there was one I didn't know, though - and that's bad. I just can't believe the lack of old computers and consoles. Also, if memory serves me correctly, MAME wasn't #1 - was it? If not, that's even worse. Okay, I don't think it's the "best" emulator - but it does emulate a whole load of nostalgic games for me. Top 10 is fair enough, but I'd have to put Retrocade in there. Hmm, my top 10 would look something like: 1) Raine 2) MAME (it plays Bubble Bobble, okay?) 3) Retrocade 4) ZSNES 5) SNES9X 6) KGEN 7) Oh, choose any CPC emulator - No$CPC 8) Choose any C64 emulator - CC64S 9) Any speccy emulator 10) Erm... Callus Although number 10 is dodgy as I don't normally use that anymore. Oh, okay: 10) NeoRAGE-X I use that more... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 00:40:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA06428 for dynarec-outgoing; Wed, 12 Apr 2000 00:40:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004120742.JAA19323@pons.ac.upc.es> Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: <38F42377.E0EF566@eurocopter.de> from Neil Griffiths at "Apr 12, 2000 09:19:19 am" To: dynarec@synthcom.com Date: Wed, 12 Apr 2000 09:42:22 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > It seems that most guys only want to play the newest games... > > Not much nostalgia left :-( > > There's no nostalgia anymore. The only nostalgia you'll find these days is > with the people who were in the emu 'scene' from the beginning. > Now people wants to play N64 and Play Station games on their PCs. But this is because emulation scene has grown a lot. Now emulators aren't underground, they have become in a another part of the warez and piracy scene. When something becomes popular the average people who follows it becomes worst. > My personal opinion is that it started to go wrong with Callus. I'm not > blaming Sardu for that emulator, I think it's an amazing piece of code. But > the games were pretty new and very popular and attracted a lot of > attention. > Perhaps. I like Callus because is a really fast emulator with a great compatibility (it's almost work without sound in my old 486) and I think Sardu it's one of the best emulator authors. > The other possibility is with Genesis and SNES emulation. But... what do > you all think? > In fact my interest in emulation systems is limited, for example most of the first computers don't interest me (like Spectrum or C64) with the exception of course of the great MSX. Either the arcade systems. What I really like are all old Japanese consoles and those impressive Japanase games I never couldn't try when I was young. Why does people like emulation? They can play games from their old computers, so nostalgia. They can play games they couldn't play when they were released, so curiosity. They can play games that haven't been ported to their system (PC), so piracy. And perhaps some more. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 00:52:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA06453 for dynarec-outgoing; Wed, 12 Apr 2000 00:52:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Tue, 11 Apr 2000 20:03:11 -0700 (PDT) To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: <38F425AE.E7EAA197@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Wed, 12 Apr 2000, Neil Griffiths wrote: > And if you're going to claim that, you've got to think about sound > emulation. For example, what about sound emulation with the NES or SNES? > You can't claim that to be "true" emulation if you think that. What exactly do you mean? AFAIK, most of the current crop of NES emulators emulate the sound at the register level. I am not familiar with the SNES setup, but I was under the impression that they were somewhat similar. The NES scene does not use samples anymore =) > That's a topic we could start, but I don't want to. I want to get my work > finished today. :) Too late =) John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 00:58:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA06465 for dynarec-outgoing; Wed, 12 Apr 2000 00:58:35 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004120802.KAA21001@pons.ac.upc.es> Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: <38F425AE.E7EAA197@eurocopter.de> from Neil Griffiths at "Apr 12, 2000 09:28:46 am" To: dynarec@synthcom.com Date: Wed, 12 Apr 2000 10:02:01 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Retrocade in there. Hmm, my top 10 would look something like: > > 1) Raine > 2) MAME (it plays Bubble Bobble, okay?) > 3) Retrocade > 4) ZSNES > 5) SNES9X > 6) KGEN > 7) Oh, choose any CPC emulator - No$CPC > 8) Choose any C64 emulator - CC64S > 9) Any speccy emulator > 10) Erm... Callus > > Although number 10 is dodgy as I don't normally use that anymore. Oh, okay: > > 10) NeoRAGE-X > > I use that more... My own list, it's limited and it has some severe missing because I haven't tried all emulators out there (for example Retrocade, although I'm sure it's one of the best). They are only emulators I usually use: 1) ZSNES (but lately it's becoming too slow) 2) Genecyst (some compatibity lacks, but really fast) 3) KGEN (too slow in old systems) 4) DBOY (other Gameboy emulators are also good) 5) Sparcade 6) Magic Engine 7) NeoRageX 8) CVGS (a bit slow but better than bleem) 9) UltraHLE (not tested the others, I don't like N64) 10) RAPE and NeogeoPock (these are news ..) 30) MAME (don't like it at all, but it's a good project for compile information on arcade systems) There are also some MSX emulators and Master System/GameGear emulators and I'm sure forgetting some. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 01:10:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA06494 for dynarec-outgoing; Wed, 12 Apr 2000 01:10:26 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F42EBB.65864D50@eurocopter.de> Date: Wed, 12 Apr 2000 10:07:23 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > And if you're going to claim that, you've got to think about sound > > emulation. For example, what about sound emulation with the NES or SNES? > > You can't claim that to be "true" emulation if you think that. > > What exactly do you mean? AFAIK, most of the current crop of NES emulators > emulate the sound at the register level. I am not familiar with the SNES > setup, but I was under the impression that they were somewhat similar. Yes, but they then try to make it sound like how it used to. Then it becomes simulation. Well... it does in my book. :) > The NES scene does not use samples anymore =) Which is a good thing. :) > > That's a topic we could start, but I don't want to. I want to get my work > > finished today. :) > > Too late =) Damnit! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 02:00:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA06689 for dynarec-outgoing; Wed, 12 Apr 2000 02:00:42 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004120903.LAA27092@pons.ac.upc.es> Subject: DYNAREC: Dynarec terms votation In-Reply-To: <38F42EBB.65864D50@eurocopter.de> from Neil Griffiths at "Apr 12, 2000 10:07:23 am" To: dynarec@synthcom.com Date: Wed, 12 Apr 2000 11:03:21 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com So there are 20 members in the list. I think it's a good number for a votation about dynarec terminology. What about it? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 02:12:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA06787 for dynarec-outgoing; Wed, 12 Apr 2000 02:12:11 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F43D50.61910FD2@eurocopter.de> Date: Wed, 12 Apr 2000 11:09:36 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec terms votation References: <200004120903.LAA27092@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > So there are 20 members in the list. > > I think it's a good number for a votation about dynarec terminology. > > What about it? I vote for my terms because they're correct. ;)) - Dynamic recompilation = Binary translation + handles self modifying code. Done during execution. - Dynamic compilation = Binary translation but cannot handle self modifying code. Done during execution. - Static recompilation = Binary translation + handles self modifying code. Done before execution - but may also use runtime analysis for self modifying code - Static compilation = Binary translation but cannot handle self modifying code. Done before execution. I would suggest that we try and come up with some new terms - but that may be what you mean by this vote. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 02:26:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA06817 for dynarec-outgoing; Wed, 12 Apr 2000 02:26:37 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004120929.LAA11701@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec terms votation In-Reply-To: <38F43D50.61910FD2@eurocopter.de> from Neil Griffiths at "Apr 12, 2000 11:09:36 am" To: dynarec@synthcom.com Date: Wed, 12 Apr 2000 11:29:26 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > So there are 20 members in the list. > > > > I think it's a good number for a votation about dynarec terminology. > > > > What about it? > > I vote for my terms because they're correct. ;)) > Not really :)) > - Dynamic recompilation = Binary translation + handles self modifying code. > Done during execution. OK. > - Dynamic compilation = Binary translation but cannot handle self modifying > code. Done during execution. OK. > - Static recompilation = Binary translation + handles self modifying code. > Done before execution - but may also use runtime analysis for self > modifying code Never!!!! ;) I don't like this term. > - Static compilation = Binary translation but cannot handle self modifying > code. Done before execution. > OK. > I would suggest that we try and come up with some new terms - but that may > be what you mean by this vote. :) > Alternative terms changing translation for compilation. The basic terms: - Dynamic translation - Static translation - Interpreter I'm not sure about the 're-' preffix meaning that handles self-modifying code because it also can mean you don't cache all translations. But if people agrees with it I will agree too. It's shorter. Extended terminology: Append characteristhics or techniques used by the emulator as: - handles self-modifying code or not (and perhaps how) - transmapping or TLBs - size of the translation block - etc. It will be good to search short names for all those. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 02:42:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA06874 for dynarec-outgoing; Wed, 12 Apr 2000 02:42:54 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F4446B.94FF67A3@eurocopter.de> Date: Wed, 12 Apr 2000 11:39:55 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec terms votation References: <200004120929.LAA11701@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > I vote for my terms because they're correct. ;)) > > > Not really :)) I'm right! I'm right! I'm right! ;))) > > - Static recompilation = Binary translation + handles self modifying code. > > Done before execution - but may also use runtime analysis for self > > modifying code > Never!!!! ;) I don't like this term. Nor me, but that's what it is. At least one document I've read has mentioned this. > Alternative terms changing translation for compilation. > > The basic terms: > > - Dynamic translation > - Static translation > - Interpreter I can agree with those, but it's important - for me - to be able to distinguish between compilation and recompilation. > I'm not sure about the 're-' preffix meaning that handles self-modifying code > because it also can mean you don't cache all translations. But if people agrees > with it I will agree too. It's shorter. The "re" comes from Latin and it means that something happens more than once. So, if you "recompile" - you must compile more than once. You can see this all through the English language. :) > Extended terminology: > > Append characteristhics or techniques used by the emulator as: > > - handles self-modifying code or not (and perhaps how) > - transmapping or TLBs > - size of the translation block > - etc. > > It will be good to search short names for all those. I agree. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 02:55:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA06906 for dynarec-outgoing; Wed, 12 Apr 2000 02:55:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004120958.LAA23883@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec terms votation In-Reply-To: <38F4446B.94FF67A3@eurocopter.de> from Neil Griffiths at "Apr 12, 2000 11:39:55 am" To: dynarec@synthcom.com Date: Wed, 12 Apr 2000 11:58:12 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > I vote for my terms because they're correct. ;)) > > > > > Not really :)) > > I'm right! I'm right! I'm right! ;))) > ;)))) > > > - Static recompilation = Binary translation + handles self modifying code. > > > Done before execution - but may also use runtime analysis for self > > > modifying code > > Never!!!! ;) I don't like this term. > > Nor me, but that's what it is. At least one document I've read has > mentioned this. > What document? Where can I find it? > > Alternative terms changing translation for compilation. > > > > The basic terms: > > > > - Dynamic translation > > - Static translation > > - Interpreter > > I can agree with those, but it's important - for me - to be able to > distinguish between compilation and recompilation. > > > I'm not sure about the 're-' preffix meaning that handles self-modifying code > > because it also can mean you don't cache all translations. But if people agrees > > with it I will agree too. It's shorter. > > The "re" comes from Latin and it means that something happens more than > once. So, if you "recompile" - you must compile more than once. > > You can see this all through the English language. :) > Same in Spanish, but I don't mean that. I mean that there are dynarec emulators that can be recompilers but they don't handle self-modifying code. For example a emulator with a limited amount of memory that has to delete translations because needs the memory. So recompilation or retranslation don't means that handles self-modifying code. > > Extended terminology: > > > > Append characteristhics or techniques used by the emulator as: > > > > - handles self-modifying code or not (and perhaps how) > > - transmapping or TLBs > > - size of the translation block > > - etc. > > > > It will be good to search short names for all those. > > I agree. :) > Good :) I think MIKE wrote a good mail about it, perhaps we use that mail as a start. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 04:49:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA07091 for dynarec-outgoing; Wed, 12 Apr 2000 04:49:06 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Emu Top 100 From: Michael Koenig In-Reply-To: <38F42377.E0EF566@eurocopter.de> Message-Id: <0003650e04cb4649_mailit@mailhub.rrze.uni-erlangen.de> References: <00036501f68e75d7_mailit@mailhub.rrze.uni-erlangen.de> <38F42377.E0EF566@eurocopter.de> Date: Wed, 12 Apr 2000 12:36:54 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I'm not so interested in Macintosh emulation Neither am I, but Basilisk is cool. I had it installed on BeOS, I put an audio CD in the drive and Basilisk started playing it ;-) >(there's only one game I ever enjoyed for the Macintosh - Bolo), And that's originally an Atari ST game, since the programmer is Meinolf Schneider ;-) >but C64, Spectrum and *especially* CPC >emulation is what I like when I do computer emulation. And that's bad that >they're so low... :-/ I guess it depends on what you used, so I'm not that interested in Spectrum or CPC, but I always test a few C64 emulators for each platform. >There's no nostalgia anymore. The only nostalgia you'll find these days is >with the people who were in the emu 'scene' from the beginning. I'm not sure if I was in the scene from the beginning but I started quite early. >There we go, a new topic. What happened to the emu scene? When did it all >change for, what I think is, the worse? I think the really big change came with UltraHLE when there were ROM beggers all around, but there were slight changes even earlier. >My personal opinion is that it started to go wrong with Callus. I'm not >blaming Sardu for that emulator, I think it's an amazing piece of code. But >the games were pretty new and very popular and attracted a lot of >attention. Yeah, it was the first time that I could play arcade games that I played on the real machine. But it probably started even earlier and it surely was a console emulator and not a computer emulator. >The other possibility is with Genesis and SNES emulation. But... what do >you all think? Yeah, Snes9x and Genecyst made also a big change... -- M.I.Ke It is impossible to travel faster than light, and certainly not desirable, as one's hat keeps blowing off. -- Woody Allen --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 04:49:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA07099 for dynarec-outgoing; Wed, 12 Apr 2000 04:49:13 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: FWIW... From: Michael Koenig In-Reply-To: <38F41782.D1156933@eurocopter.de> Message-Id: <0003650dd8262e33_mailit@mailhub.rrze.uni-erlangen.de> References: <38F41782.D1156933@eurocopter.de> Date: Wed, 12 Apr 2000 12:24:25 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> > About motivation, what do you want a fan club? >> Sure! With dancing girls with big hooters. ;-) >If you want to pay for it, I can arrange it. It's very, very possible here >in Germany. ;) Really? I didn't know that :-( -- M.I.Ke Mencken and Nathan's Sixteenth Law of The Average American: Milking a cow is an operation demanding a special talent that is possessed only by yokels, and no person born in a large city can never hope to acquire it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 04:49:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA07108 for dynarec-outgoing; Wed, 12 Apr 2000 04:49:35 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: FWIW... From: Michael Koenig In-Reply-To: <38F42273.667485BB@eurocopter.de> Message-Id: <0003650de5f6bd8c_mailit@mailhub.rrze.uni-erlangen.de> References: <38F42273.667485BB@eurocopter.de> Date: Wed, 12 Apr 2000 12:28:17 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> More along the lines of Jeanne Tripplehorn. ;-) >Nope, no idea who that is. Think of Basic Instinct and Waterworld... -- M.I.Ke Things will be bright in P.M. A cop will shine a light in your face. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 04:49:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA07117 for dynarec-outgoing; Wed, 12 Apr 2000 04:49:50 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <38F418D5.CB7B221@eurocopter.de> Message-Id: <0003650de00a03c1_mailit@mailhub.rrze.uni-erlangen.de> References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <38F418D5.CB7B221@eurocopter.de> Date: Wed, 12 Apr 2000 12:26:37 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >And I'd like to introduce... the other guy. :) OK, do that. >Very good, Mr. Davidson. You can put your trousers back up now. ;) Hehe ;-) >Isn't it? Erm, oops. That shows how deep I looked into the GUI code, >doesn't it? :o Shame on you! >Okay, NB, you can be happy (or happier) now. We're not using MFC. :) Not only NB ;-) >Haha! I knew talking about this would draw you out of the shadows. ;) Hey, you could have told us that he already did a dynarec... -- M.I.Ke The human animal differs from the lesser primates in his passion for lists of "Ten Best". -- H. Allen Smith --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 05:05:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA07174 for dynarec-outgoing; Wed, 12 Apr 2000 05:05:57 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F465F6.8E00829D@eurocopter.de> Date: Wed, 12 Apr 2000 14:03:02 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: FWIW... References: <38F41782.D1156933@eurocopter.de> <0003650dd8262e33_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >If you want to pay for it, I can arrange it. It's very, very possible here > >in Germany. ;) > > Really? I didn't know that :-( Come to Munich! Go behind the Hauptbahnhoff and see for yourself! :o Not that I'd *ever* go looking, of course. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 05:06:12 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA07183 for dynarec-outgoing; Wed, 12 Apr 2000 05:06:12 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F465B2.31B83D8C@eurocopter.de> Date: Wed, 12 Apr 2000 14:01:54 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec terms votation References: <200004120958.LAA23883@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Nor me, but that's what it is. At least one document I've read has > > mentioned this. > > > What document? Where can I find it? No idea. I've got the sort of memory that I can remember almost word perfect complete passages from books and magazines. But if you asked me which book or magazine that came from, I couldn't tell you. :) > > The "re" comes from Latin and it means that something happens more than > > once. So, if you "recompile" - you must compile more than once. > > > > You can see this all through the English language. :) > > > Same in Spanish, but I don't mean that. I mean that there are dynarec emulators > that can be recompilers but they don't handle self-modifying code. For example > a emulator with a limited amount of memory that has to delete translations > because needs the memory. So recompilation or retranslation don't means that > handles self-modifying code. Okay, I see what you mean. But if they do that, they're still recompiling - it doesn't matter whether the code has changed or not. I never said that a recompiler is *just* for self-modifying code. But I did say that a compiler can't handle it. :) > I think MIKE wrote a good mail about it, perhaps we use that mail as a start. If Mike says it's okay to do so, then yes. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 05:16:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA07220 for dynarec-outgoing; Wed, 12 Apr 2000 05:16:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F46851.7B66711@eurocopter.de> Date: Wed, 12 Apr 2000 14:13:05 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <38F418D5.CB7B221@eurocopter.de> <0003650de00a03c1_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >And I'd like to introduce... the other guy. :) > > OK, do that. I already did, you're too late. ;) > >Isn't it? Erm, oops. That shows how deep I looked into the GUI code, > >doesn't it? :o > > Shame on you! I'm more interested in the emulation itself than the GUI. :) > >Okay, NB, you can be happy (or happier) now. We're not using MFC. :) > > Not only NB ;-) Okay, *everybody* in the whole wide world (except Microsoft) can be happy at that choice. :) > >Haha! I knew talking about this would draw you out of the shadows. ;) > > Hey, you could have told us that he already did a dynarec... I... didn't actually know! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 05:21:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA07236 for dynarec-outgoing; Wed, 12 Apr 2000 05:21:37 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F46976.46CABDC9@eurocopter.de> Date: Wed, 12 Apr 2000 14:17:58 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 References: <00036501f68e75d7_mailit@mailhub.rrze.uni-erlangen.de> <38F42377.E0EF566@eurocopter.de> <0003650e04cb4649_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >(there's only one game I ever enjoyed for the Macintosh - Bolo), > > And that's originally an Atari ST game, since the programmer is Meinolf > Schneider ;-) Then we're talking about different games because the game "Bolo" that I'm talking about only exists on the Macintosh. It's a multiplayer 2D overhead tank game thing. Was really my introduction to network gaming which is probably why I like it so much. > I guess it depends on what you used, so I'm not that interested in Spectrum > or CPC, but I always test a few C64 emulators for each platform. Spectrum because... well, you have to. C64 because of the hours me and my best friend used to play 2-player games on it - and CPC for obvious reasons (I must have mentioned it enough in the past!). That's something I miss - decent 2 player games you can play on one computer. Internet gaming may be all fine and dandy in the US where local phone calls are free - but not anywhere else in the world. Except Australia. Arse! :-/ > >There's no nostalgia anymore. The only nostalgia you'll find these days is > >with the people who were in the emu 'scene' from the beginning. > > I'm not sure if I was in the scene from the beginning but I started quite > early. I've been in it since ~1993/94... > >There we go, a new topic. What happened to the emu scene? When did it all > >change for, what I think is, the worse? > > I think the really big change came with UltraHLE when there were ROM beggers > all around, but there were slight changes even earlier. Oh, definitely. But the emu scene had press coverage before that. That's when it all started... > >My personal opinion is that it started to go wrong with Callus. I'm not > >blaming Sardu for that emulator, I think it's an amazing piece of code. But > >the games were pretty new and very popular and attracted a lot of > >attention. > > Yeah, it was the first time that I could play arcade games that I played on > the real machine. But it probably started even earlier and it surely was a > console emulator and not a computer emulator. Yes, I agree. > >The other possibility is with Genesis and SNES emulation. But... what do > >you all think? > > Yeah, Snes9x and Genecyst made also a big change... So... we're blaming Sardu then? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 06:43:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA07379 for dynarec-outgoing; Wed, 12 Apr 2000 06:43:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarec terms votation From: Michael Koenig In-Reply-To: <200004120958.LAA23883@pons.ac.upc.es> Message-Id: <00036510a05da096_mailit@mailhub.rrze.uni-erlangen.de> References: <200004120958.LAA23883@pons.ac.upc.es> Date: Wed, 12 Apr 2000 15:43:34 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I think MIKE wrote a good mail about it, perhaps we use that mail as a start. Nice, then I don't have to rewrite my opinion on that matter ;-) BTW, for all of you who don't have a mailer with a find procedure, my latest mail no that topic was on March 22 with the subject "Re: DYNAREC: OT: Compilation and recompilation", in which I disribed NB's approach as "volatile code-emitting dynamic translation without self-modifying code detection (yet)"... -- M.I.Ke "...and the fully armed nuclear warheads, are, of course, merely a courtesy detail." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 08:33:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA07605 for dynarec-outgoing; Wed, 12 Apr 2000 08:33:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarec terms votation From: Michael Koenig In-Reply-To: <38F465B2.31B83D8C@eurocopter.de> Message-Id: <00036511f973f09d_mailit@mailhub.rrze.uni-erlangen.de> References: <200004120958.LAA23883@pons.ac.upc.es> <38F465B2.31B83D8C@eurocopter.de> Date: Wed, 12 Apr 2000 17:20:04 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No idea. I've got the sort of memory that I can remember almost word >perfect complete passages from books and magazines. But if you asked me >which book or magazine that came from, I couldn't tell you. :) For me it's often the other way round... >Okay, I see what you mean. But if they do that, they're still recompiling - >it doesn't matter whether the code has changed or not. I never said that a >recompiler is *just* for self-modifying code. But I did say that a compiler >can't handle it. :) Gotcha! Then a dynamic compiler (in your terms) would be a dynamic recompiler as well because it translates blocks of code and then starts to translate again when not enough code is available. You might not have emphasized that a dynamic recompiler is not only for self-modifying code, but that is the main difference between a dynamic compiler and a dynamic recompiler you quote so often. See why I feel that the small prefix "re" isn't good to distinguish different approaches? >If Mike says it's okay to do so, then yes. :) If what's ok? Using my mail as reference? Of course it's ok, that's why I posted it. -- M.I.Ke You worry too much about your job. Stop it. You're not paid enough to worry. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 08:33:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA07616 for dynarec-outgoing; Wed, 12 Apr 2000 08:33:17 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <38F46851.7B66711@eurocopter.de> Message-Id: <000365120b7f7dbb_mailit@mailhub.rrze.uni-erlangen.de> References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <38F418D5.CB7B221@eurocopter.de> <0003650de00a03c1_mailit@mailhub.rrze.uni-erlangen.de> <38F46851.7B66711@eurocopter.de> Date: Wed, 12 Apr 2000 17:25:06 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> Hey, you could have told us that he already did a dynarec... >I... didn't actually know! :) If there are not so many people with the same email address around then he wrote Spectrem-Dr, a dynarec Spectrum emulator... -- M.I.Ke If you wish to live wisely, ignore sayings -- including this one. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 08:33:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA07617 for dynarec-outgoing; Wed, 12 Apr 2000 08:33:17 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Emu Top 100 From: Michael Koenig In-Reply-To: <38F46976.46CABDC9@eurocopter.de> Message-Id: <000365122d3b898f_mailit@mailhub.rrze.uni-erlangen.de> References: <00036501f68e75d7_mailit@mailhub.rrze.uni-erlangen.de> <38F42377.E0EF566@eurocopter.de> <0003650e04cb4649_mailit@mailhub.rrze.uni-erlangen.de> <38F46976.46CABDC9@eurocopter.de> Date: Wed, 12 Apr 2000 17:34:32 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Then we're talking about different games because the game "Bolo" that I'm >talking about only exists on the Macintosh. It's a multiplayer 2D overhead >tank game thing. Then it's a different game... >Was really my introduction to network gaming which is >probably why I like it so much. My first introduction to "network" gaming was MidiMaze on the Atari ST. A bit like Doom although you only ran around with Smilies, but you could connect up to 16 STs via MIDI. >That's something I miss - decent 2 player games you can play on one >computer. Indeed! It was just cool to play Bubble Bobble, Bruce Lee, MULE, etc sitting in front of the *same* computer. >Internet gaming may be all fine and dandy in the US where local >phone calls are free - but not anywhere else in the world. Except >Australia. Arse! :-/ Yeah, especially the fees of Deutsche Telekom and British Telecom are a real hinderence! >I've been in it since ~1993/94... Then I started a bit earlier on the ST. My first commercial emulator was a colour emulator (which was crap BTW) because I only had a monochrome monitor and couldn't run much games, but that emulator didn't change the situation. I also has a very primitive C64 emulator and two Spectrum emulators. >Oh, definitely. But the emu scene had press coverage before that. That's >when it all started... I think especially MAME and later Bleem were mentioned in the press. >So... we're blaming Sardu then? ;) He only did some nice emulators, the real problem were the ROM beggars... -- M.I.Ke There is no satisfaction in hanging a man who does not object to it -- G. B. Shaw --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 08:33:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA07627 for dynarec-outgoing; Wed, 12 Apr 2000 08:33:18 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: FWIW... From: Michael Koenig In-Reply-To: <38F465F6.8E00829D@eurocopter.de> Message-Id: <000365120429d1ce_mailit@mailhub.rrze.uni-erlangen.de> References: <38F41782.D1156933@eurocopter.de> <0003650dd8262e33_mailit@mailhub.rrze.uni-erlangen.de> <38F465F6.8E00829D@eurocopter.de> Date: Wed, 12 Apr 2000 17:23:03 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Come to Munich! Go behind the Hauptbahnhoff and see for yourself! :o I've never been there but now I can imagine what you meant ;-) BTW, the spelling is "Hauptbahnhof" because the "o" is long, in your spelling it would be short. >Not that I'd *ever* go looking, of course. :) Hey Pinoccio, isn't that long nose a problem in front of a computer monitor? ;-) -- M.I.Ke You cannot kill time without injuring eternity. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 08:47:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA07656 for dynarec-outgoing; Wed, 12 Apr 2000 08:47:54 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F499BD.49A63B39@eurocopter.de> Date: Wed, 12 Apr 2000 17:43:57 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec terms votation References: <200004120958.LAA23883@pons.ac.upc.es> <38F465B2.31B83D8C@eurocopter.de> <00036511f973f09d_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >No idea. I've got the sort of memory that I can remember almost word > >perfect complete passages from books and magazines. But if you asked me > >which book or magazine that came from, I couldn't tell you. :) > > For me it's often the other way round... Heh. We'd make a great team then. ;) > >Okay, I see what you mean. But if they do that, they're still recompiling - > >it doesn't matter whether the code has changed or not. I never said that a > >recompiler is *just* for self-modifying code. But I did say that a compiler > >can't handle it. :) > > Gotcha! Then a dynamic compiler (in your terms) would be a dynamic recompiler > as well because it translates blocks of code and then starts to translate > again when not enough code is available. You might not have emphasized that a > dynamic recompiler is not only for self-modifying code, but that is the main > difference between a dynamic compiler and a dynamic recompiler you quote so > often. If it can go back and retranslate code which was translated before then yes, it is indeed a dynamic recompiler. That's the difference. A recompiler can go back. But the real point is this: if it *can* go back and translate code (for whatever reason) then it stands to reason that it will also be able to handle self-modifying code too (maybe with a few very minor checks). > See why I feel that the small prefix "re" isn't good to distinguish different > approaches? But you see what the difference is? > >If Mike says it's okay to do so, then yes. :) > > If what's ok? Using my mail as reference? Of course it's ok, that's why I > posted it. Good. Because he was going to use it anyway. Ha! ;p :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 08:48:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA07665 for dynarec-outgoing; Wed, 12 Apr 2000 08:48:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F49A54.30BCDFC6@eurocopter.de> Date: Wed, 12 Apr 2000 17:46:28 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: FWIW... References: <38F41782.D1156933@eurocopter.de> <0003650dd8262e33_mailit@mailhub.rrze.uni-erlangen.de> <38F465F6.8E00829D@eurocopter.de> <000365120429d1ce_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Come to Munich! Go behind the Hauptbahnhoff and see for yourself! :o > > I've never been there but now I can imagine what you meant ;-) Good, good. ;) The parks are meant to be pretty good during summer too. And alongside the river. Heh, I'll be lost for choices. So, where shall I go birdwatching today then? :)) > BTW, the spelling is "Hauptbahnhof" because the "o" is long, in your spelling > it would be short. Ah, my bad. Yes, you're right. I was just trying to type quickly! > >Not that I'd *ever* go looking, of course. :) > > Hey Pinoccio, isn't that long nose a problem in front of a computer monitor? > ;-) I haven't been looking... yet. :) But the "Erotik Messe" is now on. I may have to go along - just for research purposes, obviously. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 08:51:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA07678 for dynarec-outgoing; Wed, 12 Apr 2000 08:51:58 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F49AC3.811C346C@eurocopter.de> Date: Wed, 12 Apr 2000 17:48:19 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <38F418D5.CB7B221@eurocopter.de> <0003650de00a03c1_mailit@mailhub.rrze.uni-erlangen.de> <38F46851.7B66711@eurocopter.de> <000365120b7f7dbb_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > If there are not so many people with the same email address around then he > wrote Spectrem-Dr, a dynarec Spectrum emulator... We spoke about his Spectrum emulator and, indeed, my own. I don't remember him mentioning about it being dynarec - but this was in the middle of several ~100k e-mail messages. It's difficult to remember exactly what was written then. Whatever, we both agree that a lot of clever tricks were pulled off to make the Speccy do *half* of what it did. :) I could be nasty and say "colour". Or truthful and say "sound". :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 08:58:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA07704 for dynarec-outgoing; Wed, 12 Apr 2000 08:58:16 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F49C89.B4904EEE@eurocopter.de> Date: Wed, 12 Apr 2000 17:55:53 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 References: <00036501f68e75d7_mailit@mailhub.rrze.uni-erlangen.de> <38F42377.E0EF566@eurocopter.de> <0003650e04cb4649_mailit@mailhub.rrze.uni-erlangen.de> <38F46976.46CABDC9@eurocopter.de> <000365122d3b898f_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Then we're talking about different games because the game "Bolo" that I'm > >talking about only exists on the Macintosh. It's a multiplayer 2D overhead > >tank game thing. > > Then it's a different game... Definitely. I have been considering re-writing, but I know I'm not going to get around to it. And if I do, I'll want to make it 3D. Which is a really, really interesting concept actually... :) > >Was really my introduction to network gaming which is > >probably why I like it so much. > > My first introduction to "network" gaming was MidiMaze on the Atari ST. A bit > like Doom although you only ran around with Smilies, but you could connect up > to 16 STs via MIDI. Was that a realtime thing? Sounds like fun! I think Bolo would support up to 32 people at once. I remember we had 8 - which was pretty amazing at the time. That was via AppleTalk - through the connections normally used by the printers. This is funny because this was on the Macintoshes at high school. We had to break the protection on them (really difficult - hold down the left SHIFT key when booting) and change the network settings. Even now, apparently, those Macs still say "Printing using Lion" - Lion being my old demo coder name (and still my game-name). :)) > >That's something I miss - decent 2 player games you can play on one > >computer. > > Indeed! It was just cool to play Bubble Bobble, Bruce Lee, MULE, etc sitting > in front of the *same* computer. Yes, it was. But because people have moved onto FPS, this won't happen so easily. I know there are ports out for Doom that let 2 people play at once - that seems interesting. But my heart - for 2 player games - lies with platformers. :) > >Internet gaming may be all fine and dandy in the US where local > >phone calls are free - but not anywhere else in the world. Except > >Australia. Arse! :-/ > > Yeah, especially the fees of Deutsche Telekom and British Telecom are a real > hinderence! Yes, though we are getting flat-rate in Britain for reasonable money at the moment. There are similar things in Germany, but there are stupid restrictions. Such as 150DM/month for unlimited access - but you can only download 2GB/month. Doh! > >I've been in it since ~1993/94... > > Then I started a bit earlier on the ST. My first commercial emulator was a > colour emulator (which was crap BTW) because I only had a monochrome monitor > and couldn't run much games, but that emulator didn't change the situation. I > also has a very primitive C64 emulator and two Spectrum emulators. I wrote a terminal emulator before that - about 1988. For my amazingly fast (and expensive) 2400 baud acoustic coupler. Ah, those were the days. :) > >Oh, definitely. But the emu scene had press coverage before that. That's > >when it all started... > > I think especially MAME and later Bleem were mentioned in the press. Hmm. MAME started to attract attention... but was the attention before or after Callus? It hasn't been for too long - it started to get like it is now around 1997 - IIRC. > >So... we're blaming Sardu then? ;) > > He only did some nice emulators, the real problem were the ROM beggars... Of course, it's not the fault of the emu authors. It's the fault of the users. In a perfect world. When you look at UltraHLE - do you really believe that the authors thought that everyone would be nice and not beg for N64 ROMs? I know that I don't... But then, I'm a born cynic. I'm British! :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 09:11:22 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA07756 for dynarec-outgoing; Wed, 12 Apr 2000 09:11:22 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarec terms votation From: Michael Koenig In-Reply-To: <38F499BD.49A63B39@eurocopter.de> Message-Id: <00036512a7bc52f5_mailit@mailhub.rrze.uni-erlangen.de> References: <200004120958.LAA23883@pons.ac.upc.es> <38F465B2.31B83D8C@eurocopter.de> <00036511f973f09d_mailit@mailhub.rrze.uni-erlangen.de> <38F499BD.49A63B39@eurocopter.de> Date: Wed, 12 Apr 2000 18:08:48 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Heh. We'd make a great team then. ;) We just would keep teasing each other ;-) >If it can go back and retranslate code which was translated before then >yes, it is indeed a dynamic recompiler. That's the difference. A recompiler >can go back. So it's not a recompiler but a backtracking compiler? ;-) >But the real point is this: if it *can* go back and translate >code (for whatever reason) then it stands to reason that it will also be >able to handle self-modifying code too (maybe with a few very minor >checks). No, because the big problem is not how to "retranslate" the code but how to quickly identify if the code has been modified! >But you see what the difference is? If I use a magnifier, yes ;-) Actually I'm blind as a mole (about -9.5 on both eyes!)... >Good. Because he was going to use it anyway. Ha! ;p Hey Victor, what about a shareware fee ;-) Uh, bad idea, he'll be using Spanish terms then... ;-) -- M.I.Ke *** NEWSFLASH *** Russian tanks steamrolling through New Jersey!!!! Details at eleven! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 09:11:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA07764 for dynarec-outgoing; Wed, 12 Apr 2000 09:11:23 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: FWIW... From: Michael Koenig In-Reply-To: <38F49A54.30BCDFC6@eurocopter.de> Message-Id: <00036512ae0ef1ce_mailit@mailhub.rrze.uni-erlangen.de> References: <38F41782.D1156933@eurocopter.de> <0003650dd8262e33_mailit@mailhub.rrze.uni-erlangen.de> <38F465F6.8E00829D@eurocopter.de> <000365120429d1ce_mailit@mailhub.rrze.uni-erlangen.de> <38F49A54.30BCDFC6@eurocopter.de> Date: Wed, 12 Apr 2000 18:10:34 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >The parks are meant to be pretty good during summer too. And alongside the >river. Heh, I'll be lost for choices. So, where shall I go birdwatching >today then? :)) Watching pretty big birds (without wings) in the English Garden? ;-) >But the "Erotik Messe" is now on. I may have to go along - just for >research purposes, obviously. :)) Research, on what topic? BTW, how was your date? -- M.I.Ke Life is a whim of several billion cells to be you for a while. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 09:11:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA07771 for dynarec-outgoing; Wed, 12 Apr 2000 09:11:24 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <38F49AC3.811C346C@eurocopter.de> Message-Id: <00036512b5cb43b2_mailit@mailhub.rrze.uni-erlangen.de> References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <38F418D5.CB7B221@eurocopter.de> <0003650de00a03c1_mailit@mailhub.rrze.uni-erlangen.de> <38F46851.7B66711@eurocopter.de> <000365120b7f7dbb_mailit@mailhub.rrze.uni-erlangen.de> <38F49AC3.811C346C@eurocopter.de> Date: Wed, 12 Apr 2000 18:12:43 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >We spoke about his Spectrum emulator and, indeed, my own. I don't remember >him mentioning about it being dynarec He has two versions, and the dynarec one is more or less experimental, but I only took a look at the source of the DR one. BTW, which Speccy emulator did you write? > - but this was in the middle of >several ~100k e-mail messages. It's difficult to remember exactly what was >written then. Whatever, we both agree that a lot of clever tricks were >pulled off to make the Speccy do *half* of what it did. :) Isn't that always done? ;-) >I could be nasty and say "colour". Or truthful and say "sound". :) I guess I have to know the Spectrum to understand these jokes. -- M.I.Ke Anyone who is capable of getting themselves made President should on no account be allowed to do the job. -- Douglas Adams, "The Hitchhiker's Guide to the Galaxy" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 09:25:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA07845 for dynarec-outgoing; Wed, 12 Apr 2000 09:25:19 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Emu Top 100 From: Michael Koenig In-Reply-To: <38F49C89.B4904EEE@eurocopter.de> Message-Id: <00036512e5a191fa_mailit@mailhub.rrze.uni-erlangen.de> References: <00036501f68e75d7_mailit@mailhub.rrze.uni-erlangen.de> <38F42377.E0EF566@eurocopter.de> <0003650e04cb4649_mailit@mailhub.rrze.uni-erlangen.de> <38F46976.46CABDC9@eurocopter.de> <000365122d3b898f_mailit@mailhub.rrze.uni-erlangen.de> <38F49C89.B4904EEE@eurocopter.de> Date: Wed, 12 Apr 2000 18:26:06 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Was that a realtime thing? Sounds like fun! I guess so, I only played it once. >I think Bolo would support up >to 32 people at once. I remember we had 8 - which was pretty amazing at the >time. That was via AppleTalk - through the connections normally used by the >printers. Not bad. >This is funny because this was on the Macintoshes at high school. We had to >break the protection on them (really difficult - hold down the left SHIFT >key when booting) and change the network settings. Hehe. >Even now, apparently, >those Macs still say "Printing using Lion" - Lion being my old demo coder >name (and still my game-name). :)) My game-name used to by Mike or my initials MIK when only 3 letters are possible. My online name M.I.K.e is aktually a hybrid of these two. After having played Half-Life with three others who decided to hunt me down together, which led to me having more kills than they together in most levels, I changed my game-name to KingOfPain since the first word is a translation of my last name and I'm also a big Sting fan. >Yes, it was. But because people have moved onto FPS, this won't happen so >easily. I know there are ports out for Doom that let 2 people play at once >- that seems interesting. But you could spy where the other one is runnign around. >But my heart - for 2 player games - lies with platformers. :) I'm not that into platformers... >I wrote a terminal emulator before that - about 1988. For my amazingly fast >(and expensive) 2400 baud acoustic coupler. I only got a modem after I had my PC. >Ah, those were the days. :) Oh yes! >Hmm. MAME started to attract attention... but was the attention before or >after Callus? I think it was after Callus, but I'm not too sure about that. >Of course, it's not the fault of the emu authors. It's the fault of the >users. In a perfect world. When you look at UltraHLE - do you really >believe that the authors thought that everyone would be nice and not beg >for N64 ROMs? I know that I don't... But then, I'm a born cynic. I'm >British! :)) Yeah, the reaction was obvious but much stronger than everyone imagined... -- M.I.Ke I don't care for the Sugar Smacks commercial. I don't like the idea of a frog jumping on my Breakfast. -- Lowell, Chicago Reader 10/15/82 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 09:28:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA07869 for dynarec-outgoing; Wed, 12 Apr 2000 09:28:01 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 12 Apr 2000 09:28:00 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: <38F49C89.B4904EEE@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > >Oh, definitely. But the emu scene had press coverage before that. That's > > >when it all started... > > I think especially MAME and later Bleem were mentioned in the press. > Hmm. MAME started to attract attention... but was the attention before or > after Callus? It hasn't been for too long - it started to get like it is > now around 1997 - IIRC. Ahem.... Let me step in here... If you're talking console emulation, it existed in about 1995, but the arcade emulation stuff didn't start until January of 1996 when Dave Spicer released Sparcade. After that, I released EMU in September of 1996 and started a mailing list - That's when things started going. And MAME was started in Feb of '97 - one of the latecomers. At that time there were at least two dozen arcade emulators. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 10:33:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA08199 for dynarec-outgoing; Wed, 12 Apr 2000 10:33:10 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Emu Top 100 From: Michael Koenig In-Reply-To: Message-Id: <00036513da80e263_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Wed, 12 Apr 2000 19:34:34 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Ahem.... Let me step in here... >If you're talking console emulation, it existed in about 1995, but the >arcade emulation stuff didn't start until January of 1996 when Dave Spicer >released Sparcade. >After that, I released EMU in September of 1996 and started a mailing list >- That's when things started going. And MAME was started in Feb of '97 - >one of the latecomers. At that time there were at least two dozen arcade >emulators. You obviously know more about arcade emulation than I do! But we didn't discuss which emulator has been the first, but which was mentioned even in the press and started the lamer problem. I'm certainly not a fan of MAME, but it was even mentioned in non-computer magazines in Germany, which made me think: "Why do they write about that *bad * example?" -- M.I.Ke Twenty Percent of Zero is Better than Nothing. -- Walt Kelly --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 10:39:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA08231 for dynarec-outgoing; Wed, 12 Apr 2000 10:39:53 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Wed, 12 Apr 2000 05:50:41 -0700 (PDT) To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: <38F42EBB.65864D50@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Wed, 12 Apr 2000, Neil Griffiths wrote: > > What exactly do you mean? AFAIK, most of the current crop of NES emulators > > emulate the sound at the register level. I am not familiar with the SNES > > setup, but I was under the impression that they were somewhat similar. > > Yes, but they then try to make it sound like how it used to. Then it > becomes simulation. Well... it does in my book. :) Give an example of what you're talking about =) If you mean that they tend to filter the sound a bit, that is because they're attempting to emulate that nasty big analog filter between the NES CPU (where the audio is generated) and the RCA jack. If you mean filtering elsewhere, it has little to do with the actual emulation, and more to do with the deficiencies of the sound card. Dumping a 1.789772.5 MHz signal out to the soundblaster without filtering does not sound all that great =P In short, all the decent NES emulators are emulating the sound at the hardware level. It's the only way to get it right. John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 11:17:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA08428 for dynarec-outgoing; Wed, 12 Apr 2000 11:17:29 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <004101bfa4ab$75d4b3a0$901d883e@ben> From: "Andrew Davidson" To: References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <00036505edd39554_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Grrrrr..... Date: Wed, 12 Apr 2000 19:10:06 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Erm... hello everyone, by the way! > > Ah, another lurker demasked ;-) > > BTW, your email address rang a bell and after a check I noticed that my > organic computer fetched the right data: So you are the author of SpectrEm- > Dr, right? Indeed. I'll probably never live that down... ;) > Well, it could be really interesting for you when NB finally finishes his Z80 > dynarec ;-) Hopefully it'll be a tad faster and more efficient than the core in SpectrEm, which was pants. It was a very useful learning experience, though. Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 11:31:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA08524 for dynarec-outgoing; Wed, 12 Apr 2000 11:31:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <004b01bfa4ad$5bba59a0$901d883e@ben> From: "Andrew Davidson" To: References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <38F418D5.CB7B221@eurocopter.de> <0003650de00a03c1_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Grrrrr..... Date: Wed, 12 Apr 2000 19:31:14 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >And I'd like to introduce... the other guy. :) > > OK, do that. > > >Very good, Mr. Davidson. You can put your trousers back up now. ;) > > Hehe ;-) Shocking! :) > >Haha! I knew talking about this would draw you out of the shadows. ;) > > Hey, you could have told us that he already did a dynarec... It's not all that dynarec, though. It was intended to be, originally, but the full dynarec version I did was so slow I threw it away and did an immediate value recompiler instead. If the Z80 code modifies an immediate value it simply self-modifies the equivalent compiled x86 value, which is an awful lot faster than full block recompilation. I've since had a number of ideas for some rather spiffy block spliting that should allow full recompilation without destroying the speed, but it's going to be a fair bit of work and I'm far to lazy to ever sit down and try it. Incidentally, with regard to the naming conventions, what do you people think we should call a partial recompiler like that in SpectrEm-DR? In my constant quest for interesting bits and bobs about compiling emulators I found a web page (which I've since lost the URL of!) that accused SpectrEm-DR of being a "lazy" recompiler. I quite like that. It pretty much sums up my whole work ethos! :) Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 12:42:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA08896 for dynarec-outgoing; Wed, 12 Apr 2000 12:42:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <004b01bfa4ad$5bba59a0$901d883e@ben> Message-Id: <000365159f472f39_mailit@mailhub.rrze.uni-erlangen.de> References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <38F418D5.CB7B221@eurocopter.de> <0003650de00a03c1_mailit@mailhub.rrze.uni-erlangen.de> <004b01bfa4ad$5bba59a0$901d883e@ben> Date: Wed, 12 Apr 2000 21:41:11 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >It's not all that dynarec, though. It was intended to be, originally, but >the full dynarec version I did was so slow I threw it away and did an >immediate value recompiler instead. If the Z80 code modifies an immediate >value it simply self-modifies the equivalent compiled x86 value, which is an >awful lot faster than full block recompilation. I've since had a number of >ideas for some rather spiffy block spliting that should allow full >recompilation without destroying the speed, but it's going to be a fair bit >of work and I'm far to lazy to ever sit down and try it. Maybe you can share some of your ideas with us if you want. >Incidentally, with regard to the naming conventions, what do you people >think we should call a partial recompiler like that in SpectrEm-DR? I bet NG calls it a dynamic compiler ;-) Maybe combined with "backtracked patching" to support self-modifying code. >In my >constant quest for interesting bits and bobs about compiling emulators I >found a web page (which I've since lost the URL of!) that accused >SpectrEm-DR of being a "lazy" recompiler. I quite like that. It pretty much >sums up my whole work ethos! :) Erm, I think that was "lazy code translation" which was just used as an alternative term for dynamic recompilation, inspired of lazy evaluation in languages like Miranda or Gopher. The URL of the page is: http://www.cybervillage.co.uk/acorn/emulation/ dynrcomp.htm Just in case you haven't guessed already, I wrote that page... -- M.I.Ke Barach's Rule: An alcoholic is a person who drinks more than his own physician. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 17:14:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id RAA09813 for dynarec-outgoing; Wed, 12 Apr 2000 17:14:53 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <002101bfa4d3$c809bf80$ce21883e@ben> From: "Andrew Davidson" To: References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <38F418D5.CB7B221@eurocopter.de> <0003650de00a03c1_mailit@mailhub.rrze.uni-erlangen.de> <004b01bfa4ad$5bba59a0$901d883e@ben> <000365159f472f39_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Grrrrr..... Date: Thu, 13 Apr 2000 00:06:17 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >It's not all that dynarec, though. It was intended to be, originally, but > >the full dynarec version I did was so slow I threw it away and did an > >immediate value recompiler instead. If the Z80 code modifies an immediate > >value it simply self-modifies the equivalent compiled x86 value, which is an > >awful lot faster than full block recompilation. I've since had a number of > >ideas for some rather spiffy block spliting that should allow full > >recompilation without destroying the speed, but it's going to be a fair bit > >of work and I'm far to lazy to ever sit down and try it. > > Maybe you can share some of your ideas with us if you want. I'd love to, I find the whole subject fascinating. The thing is, it's all a tad pointless for a 3.5mhz CPU. On my P2-266 SpectrEm-DR uses about 5% of the cpus power. If it was rewritten properly I think you could probably halve that. When I benchmarked Z80, which is written in C, I think it managed about 10% cpu usage at 3.5mhz. It just doesn't seem worth the effort for CPUs that are intended to run at such teeny clock rates. Still, overclocking it was fun. I managed to emulate a 49mhz Speccy on my machine without slowdown, and I'm dying to hear what kind of performance you can get on a decent PC! Playing Feud at 14 times its intended speed is certainly interesting... :) The only problem is, the core is too buggy to run any of the 3D speccy games. Driller (a 3D 'Freescape' game) runs at about 1.5 SPF (yep, SPF, not FPS) on a standard Speccy, so it should be just about playable at 49mhz... Mind, I bet it uses self modifying code all over the place... Maybe I should write a NeoGeo emulator. They run their Z80s at 6mhz, don't they? We might be able to get a worthwhile performance increase with that... > >Incidentally, with regard to the naming conventions, what do you people > >think we should call a partial recompiler like that in SpectrEm-DR? > > I bet NG calls it a dynamic compiler ;-) > Maybe combined with "backtracked patching" to support self-modifying code. Oooh stop! My head hurts. I'm with Neil Griffiths on this one, whether he's right or wrong. We spent a couple of months arguing about it and we're finally pretty much in agreement, so I'm all argued out, I'm afraid! ;) Mind, saying that... Simplification is often advantageous. You need to define a few simple terms, which are bound to be a bit inaccurate because simple terms can't describe complex ideas, then you take your terms, and you define them. This just seems to make more sense to me than having a million different paragraph length descriptions for each and every possible technique or idea ever. Translation instead of compilation is an idea, though... only it doesn't allow the idea of repeated translation (support for self-modification) to come in... Argh! I'm off again! Someone sedate me! > >In my > >constant quest for interesting bits and bobs about compiling emulators I > >found a web page (which I've since lost the URL of!) that accused > >SpectrEm-DR of being a "lazy" recompiler. I quite like that. It pretty much > >sums up my whole work ethos! :) > > Erm, I think that was "lazy code translation" which was just used as an > alternative term for dynamic recompilation, inspired of lazy evaluation in > languages like Miranda or Gopher. > The URL of the page is: http://www.cybervillage.co.uk/acorn/emulation/ > dynrcomp.htm > Just in case you haven't guessed already, I wrote that page... That's the one! It's a nice page, that. I found it very interesting. So how come you didn't describe the other dynarec cores as lazy code translators? That was the reason I thought it was a specialist term, you see... > -- > M.I.Ke > > Barach's Rule: > An alcoholic is a person who drinks more than his own > physician. Oh dear. Mine's a tee-totaller! Andrew (hic!) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 23:27:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA10914 for dynarec-outgoing; Wed, 12 Apr 2000 23:27:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 12 Apr 2000 23:27:14 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: FWIW... In-Reply-To: <38F42273.667485BB@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > More along the lines of Jeanne Tripplehorn. ;-) > Nope, no idea who that is. http://filosofo.net/JeanneTripplehorn/foto/JeanneTripplehorn/jeanne23.htm She was in The Firm and a few other movies. Not a big actress, but I like her. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 23:30:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA10928 for dynarec-outgoing; Wed, 12 Apr 2000 23:30:55 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 12 Apr 2000 23:30:54 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: <38F42377.E0EF566@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > There we go, a new topic. What happened to the emu scene? When did it all > change for, what I think is, the worse? The "kids" took over. It became a WaReZ scene. > My personal opinion is that it started to go wrong with Callus. I'm not > blaming Sardu for that emulator, I think it's an amazing piece of code. But > the games were pretty new and very popular and attracted a lot of > attention. Yeah, the wrong kind of "kiddie" attention where the kids just joined up trading ROMs and act like they are entitled to everything. It's a similar militaristic attitude of the right wing open source Nazis. Because their stuff is open source, they think everything is and should be freely available and are justified in stealing. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 23:34:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA10938 for dynarec-outgoing; Wed, 12 Apr 2000 23:34:59 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F56993.16A771F9@eurocopter.de> Date: Thu, 13 Apr 2000 08:30:43 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <38F418D5.CB7B221@eurocopter.de> <0003650de00a03c1_mailit@mailhub.rrze.uni-erlangen.de> <004b01bfa4ad$5bba59a0$901d883e@ben> <000365159f472f39_mailit@mailhub.rrze.uni-erlangen.de> <002101bfa4d3$c809bf80$ce21883e@ben> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Maybe you can share some of your ideas with us if you want. > > I'd love to, I find the whole subject fascinating. The thing is, it's all a > tad pointless for a 3.5mhz CPU. On my P2-266 SpectrEm-DR uses about 5% of > the cpus power. If it was rewritten properly I think you could probably > halve that. When I benchmarked Z80, which is written in C, I think it > managed about 10% cpu usage at 3.5mhz. It just doesn't seem worth the effort > for CPUs that are intended to run at such teeny clock rates. Still, > overclocking it was fun. I managed to emulate a 49mhz Speccy on my machine > without slowdown, and I'm dying to hear what kind of performance you can get > on a decent PC! Playing Feud at 14 times its intended speed is certainly > interesting... :) The only problem is, the core is too buggy to run any of > the 3D speccy games. Driller (a 3D 'Freescape' game) runs at about 1.5 SPF > (yep, SPF, not FPS) on a standard Speccy, so it should be just about > playable at 49mhz... Mind, I bet it uses self modifying code all over the > place... Ah... all the talk yesterday about 8-bit computers made me think. So I loaded "Animedes" (it's called something like that) and discovered a program that, for the first time in almost 3 years, needed EMS. I couldn't be arsed with that, so I loaded up No$CPC. It's been ages since I've used a CPC emulator now. Gosh, it brought back memories... Anyway, playing Dizzy at "Unlimited speed" is something that can be recommended if you are completely pissed. My god, it's very, VERY funny. :) On my 450MHz CPU I'm not sure how many FPS it was - but it was certainly over 90fps. :) > Maybe I should write a NeoGeo emulator. They run their Z80s at 6mhz, don't > they? We might be able to get a worthwhile performance increase with that... Okay, Andrew, deep breaths. In... out... in... and out. Good. Now, calm down. ;) > > I bet NG calls it a dynamic compiler ;-) > > Maybe combined with "backtracked patching" to support self-modifying code. > > Oooh stop! My head hurts. I'm with Neil Griffiths on this one, whether he's > right or wrong. We spent a couple of months arguing about it and we're > finally pretty much in agreement, so I'm all argued out, I'm afraid! ;) I was going to say exactly the same. Hey, it was a great couple of months though. :) > Mind, saying that... Simplification is often advantageous. You need to > define a few simple terms, which are bound to be a bit inaccurate because > simple terms can't describe complex ideas, then you take your terms, and you > define them. This just seems to make more sense to me than having a million > different paragraph length descriptions for each and every possible > technique or idea ever. Translation instead of compilation is an idea, > though... only it doesn't allow the idea of repeated translation (support > for self-modification) to come in... Argh! I'm off again! Someone sedate me! How about "Repetitive translation compiler"? :) > That's the one! It's a nice page, that. I found it very interesting. So how > come you didn't describe the other dynarec cores as lazy code translators? > That was the reason I thought it was a specialist term, you see... The scary thing is that it sums up my whole work ethos too. I'm now madly answering e-mail so I don't have to do work. I'm working on something which is basically the black box - it monitors when things have gone wrong. But, ironically, it is broken itself - and they want me to find out why. I can tell them why. "Because it's crap!" I think they want a more descriptive answer though... :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 23:39:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA10955 for dynarec-outgoing; Wed, 12 Apr 2000 23:39:29 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F56A94.98D46A22@eurocopter.de> Date: Thu, 13 Apr 2000 08:35:00 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec terms votation References: <200004120958.LAA23883@pons.ac.upc.es> <38F465B2.31B83D8C@eurocopter.de> <00036511f973f09d_mailit@mailhub.rrze.uni-erlangen.de> <38F499BD.49A63B39@eurocopter.de> <00036512a7bc52f5_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Heh. We'd make a great team then. ;) > > We just would keep teasing each other ;-) True. But it'd be fun. ;) > >If it can go back and retranslate code which was translated before then > >yes, it is indeed a dynamic recompiler. That's the difference. A recompiler > >can go back. > > So it's not a recompiler but a backtracking compiler? ;-) Yes - but that's exactly what a recompiler does. Or, to be fair, *can* do. > >But the real point is this: if it *can* go back and translate > >code (for whatever reason) then it stands to reason that it will also be > >able to handle self-modifying code too (maybe with a few very minor > >checks). > > No, because the big problem is not how to "retranslate" the code but how to > quickly identify if the code has been modified! Split off each 4K (or less). If a write happens inside one of the 4K blocks, mark it somewhere (you only need 1 bit to do this). If the IP gets to that 4K then recompile. If you can handle going back to translate code again, this shouldn't be a problem. And it should be pretty damn fast too. That's just a quick idea I've come up with. Probably isn't the best in the world - but I did come up with it in just under 5 seconds. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 23:42:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA10971 for dynarec-outgoing; Wed, 12 Apr 2000 23:42:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F56B86.D0C2273A@eurocopter.de> Date: Thu, 13 Apr 2000 08:39:02 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: FWIW... References: <38F41782.D1156933@eurocopter.de> <0003650dd8262e33_mailit@mailhub.rrze.uni-erlangen.de> <38F465F6.8E00829D@eurocopter.de> <000365120429d1ce_mailit@mailhub.rrze.uni-erlangen.de> <38F49A54.30BCDFC6@eurocopter.de> <00036512ae0ef1ce_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Watching pretty big birds (without wings) in the English Garden? ;-) Yes - and if it's cold then I'll be watching for some blue tits (okay, that's a joke that non-English speakers may not get). :) > >But the "Erotik Messe" is now on. I may have to go along - just for > >research purposes, obviously. :)) > > Research, on what topic? Erm... I'm not going to touch that one with a 9ft barge-pole. :) > BTW, how was your date? Hmm, yes. Was that the one that never happened? :o Someone gave me a quick punch to the... painful bits... and I generally didn't want to do anything after that. Two good reasons: a) I was in pain b) If it went well, then... ow. =:o I've got to get some of those protection pad things, but I don't know what they're called in German - so I don't know what to ask for. And everytime I go into any sports shop, it's always a fairly attractive female behind the counter - so I can't even do the mime for it. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 23:44:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA10983 for dynarec-outgoing; Wed, 12 Apr 2000 23:44:44 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F56C22.187B6767@eurocopter.de> Date: Thu, 13 Apr 2000 08:41:38 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <38F418D5.CB7B221@eurocopter.de> <0003650de00a03c1_mailit@mailhub.rrze.uni-erlangen.de> <38F46851.7B66711@eurocopter.de> <000365120b7f7dbb_mailit@mailhub.rrze.uni-erlangen.de> <38F49AC3.811C346C@eurocopter.de> <00036512b5cb43b2_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > BTW, which Speccy emulator did you write? Not many people got to see it because I never released it. It was a Speccy emulator for... my CPC. Yes. Using a CPC 6128 (with 128K of RAM) you could load an 8k (or up to 12k - if you were lucky) Spectrum program and it'd work. I didn't have to do much work with the CPU (same one - haha!) and so my main problem was getting a BIOS image and reading Spectrum tapes. Oh, and getting an image up. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 12 23:54:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA11004 for dynarec-outgoing; Wed, 12 Apr 2000 23:54:35 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 12 Apr 2000 23:54:35 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: <200004120742.JAA19323@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > Not much nostalgia left :-( > > There's no nostalgia anymore. The only nostalgia you'll find these days is > > with the people who were in the emu 'scene' from the beginning. > Now people wants to play N64 and Play Station games on their PCs. But this > is because emulation scene has grown a lot. Now emulators aren't underground, > they have become in a another part of the warez and piracy scene. When > something becomes popular the average people who follows it becomes worst. I see it as a disturbing trend - not just with emulation, but the internet and computing society as a whole. The quality of software is going down because people's minimum expectations are lower. Computers are getting easier to use and thusly more idiots are writing programs. We're taking a step backward in audio technology (MP3 - it's lossy and far worse than CDs are). Our CPUs are getting faster and software runs about the same as it always has. The Linux community are a bunch of anti-everything Nazis who are forcibly ramming their medicore half attempt at an OS down everyone's throat (didn't they accuse Microsoft of the same thing?). People are self-appointed clairvoyant mediums who suddenly have the ability to peer deep into the souls of every company and know what their intentions. What the fuck do they know? I think it boils down to most people are too stupid and ignorant to care or know any differently. What bugs me is people seem to be happily ignorant - like it's OK! I'd be much, much happier if there was some sort of programming license required before you can obtain a compiler. And if Linux just went away. I'm really sick of hearing about it when there are better alternatives. I'm tired of the hype. I'm tired of the lameo following of people who are using it. Like fucking Honda Accord owners who think their car is the purest and best thing on the market and absolutely nothing that happens to it mechanically is really a failure, when on any other car it would be reason to never buy another one. Just like Macintosh owners! Sorry to vent. I just had a long day where a tool at work couldn't figure out that his "preference" causes extra work for other people. That, and another guy who doesn't fucking listen to anyone and just implements whatever he feels like implementing. I can tolerate ignorance because it's curable, but stupidity is forever binding it seems. -->Neil ------------------------------------------------------------------------------- Neil Bradley "It's not that I'm lazy, Bob, it's that I just don't Synthcom Systems, Inc. care!" - Peter Gibbons - Office Space ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 00:00:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA11042 for dynarec-outgoing; Thu, 13 Apr 2000 00:00:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F56FD3.8AD4C660@eurocopter.de> Date: Thu, 13 Apr 2000 08:57:23 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 References: <00036501f68e75d7_mailit@mailhub.rrze.uni-erlangen.de> <38F42377.E0EF566@eurocopter.de> <0003650e04cb4649_mailit@mailhub.rrze.uni-erlangen.de> <38F46976.46CABDC9@eurocopter.de> <000365122d3b898f_mailit@mailhub.rrze.uni-erlangen.de> <38F49C89.B4904EEE@eurocopter.de> <00036512e5a191fa_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Even now, apparently, > >those Macs still say "Printing using Lion" - Lion being my old demo coder > >name (and still my game-name). :)) > > My game-name used to by Mike or my initials MIK when only 3 letters are > possible. My online name M.I.K.e is aktually a hybrid of these two. > After having played Half-Life with three others who decided to hunt me down > together, which led to me having more kills than they together in most > levels, I changed my game-name to KingOfPain since the first word is a > translation of my last name and I'm also a big Sting fan. Heh. :) I'm pretty good at FPS games - everyone usually has one type of game that they're really good at - and this type is mine. For instance, played a network game at my house the other day in Q3A. Put on 6 bots on the medium skill setting and me and my flatmate connected. About 45mins later I was on 150 kills - and you could have picked any other two people from the game, added their scores and they wouldn't have been as high as mine. This may not seem so brilliant until you realise that my flatmate used to play FPS games online all day every day last year and has been asked to join lots of clans. So he's considered to be quite good. May I just insert an evil laugh here? :)) > >Yes, it was. But because people have moved onto FPS, this won't happen so > >easily. I know there are ports out for Doom that let 2 people play at once > >- that seems interesting. > > But you could spy where the other one is runnign around. Agreed, but you could play co-operatively. Like with the majority of the old 2-players. :) > >But my heart - for 2 player games - lies with platformers. :) > > I'm not that into platformers... Nor me - only for 2-player games. > >Of course, it's not the fault of the emu authors. It's the fault of the > >users. In a perfect world. When you look at UltraHLE - do you really > >believe that the authors thought that everyone would be nice and not beg > >for N64 ROMs? I know that I don't... But then, I'm a born cynic. I'm > >British! :)) > > Yeah, the reaction was obvious but much stronger than everyone imagined... I didn't. When I saw it back in that January (I was at my friends house at the time) I thought "Nah, it isn't possible". We tried it out with a Mario64 ROM - and it worked. I thought it was a joke and just a simulation and would crash out after a while - nope. It was then that I thought "Ooooh shit. Downhill from here onwards," and I was right. :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 00:02:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA11054 for dynarec-outgoing; Thu, 13 Apr 2000 00:02:17 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F57041.7F157327@eurocopter.de> Date: Thu, 13 Apr 2000 08:59:13 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > If you're talking console emulation, it existed in about 1995, but the > arcade emulation stuff didn't start until January of 1996 when Dave Spicer > released Sparcade. > > After that, I released EMU in September of 1996 and started a mailing list > - That's when things started going. And MAME was started in Feb of '97 - > one of the latecomers. At that time there were at least two dozen arcade > emulators. I can't quite remember which was my first arcade emulator. I know that it could have been Sparcade. I remember EMU - but I seem to remember a Gauntlet emulator around the same time. Was that MAGE? I can't remember. Whatever, I'm sure I played Gauntlet before I used MAME... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 00:04:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA11068 for dynarec-outgoing; Thu, 13 Apr 2000 00:04:54 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F570DD.C3948D90@eurocopter.de> Date: Thu, 13 Apr 2000 09:01:49 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <38F418D5.CB7B221@eurocopter.de> <0003650de00a03c1_mailit@mailhub.rrze.uni-erlangen.de> <004b01bfa4ad$5bba59a0$901d883e@ben> <000365159f472f39_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Erm, I think that was "lazy code translation" which was just used as an > alternative term for dynamic recompilation, inspired of lazy evaluation in > languages like Miranda or Gopher. AAAAARGH! AAAARGGHHHH! AARGH! Whew, that brought back bad memories. I *never* want to touch Miranda again. It's an evil language and should be banished to the lowest levels of hell. Which is roughly where it come from, IMO. I *hate* functional languages, but I especially hate Miranda. I don't like Prolog either. Hell, I can't think of a functional language that I *do* like! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 00:06:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA11080 for dynarec-outgoing; Thu, 13 Apr 2000 00:06:10 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F5718A.AEAD0D00@est.fib.upc.es> Date: Thu, 13 Apr 2000 09:05:10 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec terms votation References: <200004120958.LAA23883@pons.ac.upc.es> <38F465B2.31B83D8C@eurocopter.de> <00036511f973f09d_mailit@mailhub.rrze.uni-erlangen.de> <38F499BD.49A63B39@eurocopter.de> <00036512a7bc52f5_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Michael Koenig wrote: > >Heh. We'd make a great team then. ;) > > We just would keep teasing each other ;-) > Hehe ;) > >But the real point is this: if it *can* go back and translate > >code (for whatever reason) then it stands to reason that it will also be > >able to handle self-modifying code too (maybe with a few very minor > >checks). > > No, because the big problem is not how to "retranslate" the code but how to > quickly identify if the code has been modified! > You are right. My opinion now is this: dynamic recompiling has no sense as NG is now talking about it because any dynamic compiler CAN recompile by it´s own definition. You see, if you can build a translation there isn´t a reason you can´t translate the same block of code twice, three or any times. So a dynamic compiler and a dynamic recompiler are the same, you are only saing that in one of them you use the capabality of make multiple translation of the same block of code and in the other don´t. The real important thing is if you are TESTING for self-modifying code. This is the real problem about self-modifying code, how to detect it. Then rebuild the translation it´s easy just use the same standard as it was a new block of code. Because of this I think than any dynamic translator can become easily a dynamic translator that handles self-modifying code adding a test for memory write on code memory regions. The real problem is how make this test enough fast, because usually will be a real knightmare for perfomance. > > >But you see what the difference is? > > If I use a magnifier, yes ;-) > Actually I'm blind as a mole (about -9.5 on both eyes!)... > I only -3.5 and -4.5 :) > > >Good. Because he was going to use it anyway. Ha! ;p > > Hey Victor, what about a shareware fee ;-) > Uh, bad idea, he'll be using Spanish terms then... ;-) > I thought that mail was for free ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 00:06:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA11093 for dynarec-outgoing; Thu, 13 Apr 2000 00:06:35 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: FWIW... From: Michael Koenig In-Reply-To: <38F56B86.D0C2273A@eurocopter.de> Message-Id: <0003651f33ef615d_mailit@mailhub.rrze.uni-erlangen.de> References: <38F41782.D1156933@eurocopter.de> <0003650dd8262e33_mailit@mailhub.rrze.uni-erlangen.de> <38F465F6.8E00829D@eurocopter.de> <000365120429d1ce_mailit@mailhub.rrze.uni-erlangen.de> <38F49A54.30BCDFC6@eurocopter.de> <00036512ae0ef1ce_mailit@mailhub.rrze.uni-erlangen.de> <38F56B86.D0C2273A@eurocopter.de> Date: Thu, 13 Apr 2000 09:06:59 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yes - and if it's cold then I'll be watching for some blue tits (okay, >that's a joke that non-English speakers may not get). :) I think I can understand that ;-) >Hmm, yes. Was that the one that never happened? :o Oww :-( >I've got to get some of those protection pad things, but I don't know what >they're called in German - so I don't know what to ask for. I think it's called "Suspensorium", but I'm not too sure about that. >And everytime I >go into any sports shop, it's always a fairly attractive female behind the >counter - so I can't even do the mime for it. :)) Hehe ;-) You could also call it "Eierwärmer", but you certainly don't want to do that in front of a women ;-) -- M.I.Ke "But officer, I was only trying to gain enough speed so I could coast to the nearest gas station." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 00:08:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA11102 for dynarec-outgoing; Thu, 13 Apr 2000 00:08:35 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F5718E.B330CC63@eurocopter.de> Date: Thu, 13 Apr 2000 09:04:46 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > There we go, a new topic. What happened to the emu scene? When did it all > > change for, what I think is, the worse? > > The "kids" took over. It became a WaReZ scene. Agreed - and it's not something I'm happy about. :-/ > > My personal opinion is that it started to go wrong with Callus. I'm not > > blaming Sardu for that emulator, I think it's an amazing piece of code. But > > the games were pretty new and very popular and attracted a lot of > > attention. > > Yeah, the wrong kind of "kiddie" attention where the kids just joined up > trading ROMs and act like they are entitled to everything. Exactly - and it's extremely wrong. But you can see this from the EmuCamp "Top 100" where the "best" emulators are the ones that emulate the modern stuff. I don't like that. Mind you, that's probably because most arcades in the UK are old and I can still play that stuff on the real machine. :)) > It's a similar militaristic attitude of the right wing open source Nazis. > Because their stuff is open source, they think everything is and should be > freely available and are justified in stealing. I agree, it's not a good situation. That's why I'm getting back into the *writing* of emulators - I can do something useful. Which is more than the other 99.999% of people out there in the "scene". :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 00:10:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA11115 for dynarec-outgoing; Thu, 13 Apr 2000 00:10:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F56EB8.1CF84763@est.fib.upc.es> Date: Thu, 13 Apr 2000 08:52:40 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 References: <00036501f68e75d7_mailit@mailhub.rrze.uni-erlangen.de> <38F42377.E0EF566@eurocopter.de> <0003650e04cb4649_mailit@mailhub.rrze.uni-erlangen.de> <38F46976.46CABDC9@eurocopter.de> <000365122d3b898f_mailit@mailhub.rrze.uni-erlangen.de> <38F49C89.B4904EEE@eurocopter.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Griffiths wrote: > > >Internet gaming may be all fine and dandy in the US where local > > >phone calls are free - but not anywhere else in the world. Except > > >Australia. Arse! :-/ > > > > Yeah, especially the fees of Deutsche Telekom and British Telecom are a real > > hinderence! > > Yes, though we are getting flat-rate in Britain for reasonable money at the > moment. There are similar things in Germany, but there are stupid > restrictions. Such as 150DM/month for unlimited access - but you can only > download 2GB/month. Doh! > You are in luck. Here in Spain the standard Internet connection (modem) usually goes about 5-10 Kbps. A lot of more expensive alternatives is something called RDSI (64 Kbps or 128 Kbps with two channels) and the new ADSL technology, but surely it´s too expensive, that works at some MBs second. You pay for time connection or you pay the connection itself and no limits. I haven´t either of them as I only start work last month. I hope I will buy a modem soon. > > > >I've been in it since ~1993/94... > > > > Then I started a bit earlier on the ST. My first commercial emulator was a > > colour emulator (which was crap BTW) because I only had a monochrome monitor > > and couldn't run much games, but that emulator didn't change the situation. I > > also has a very primitive C64 emulator and two Spectrum emulators. > > I wrote a terminal emulator before that - about 1988. For my amazingly fast > (and expensive) 2400 baud acoustic coupler. Ah, those were the days. :) > I´m since five years ago when I started my studies in the unversity. Before that Internet was something unknown for me, and I learn programming by myself in some small librarys near my home with old, really old books. > > > >Oh, definitely. But the emu scene had press coverage before that. That's > > >when it all started... > > > > I think especially MAME and later Bleem were mentioned in the press. > > Hmm. MAME started to attract attention... but was the attention before or > after Callus? It hasn't been for too long - it started to get like it is > now around 1997 - IIRC. > Here in Spain MAME was the first. Now seems is getting more known for people out of Internet or programming scene. In last month a lot of videogames and computer magazines are writing articles about emulation. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 00:10:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA11125 for dynarec-outgoing; Thu, 13 Apr 2000 00:10:39 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F572B5.699DE02D@est.fib.upc.es> Date: Thu, 13 Apr 2000 09:09:41 +0200 From: "Victor (R.0.B.) Moya" Organization: Facultat =?iso-8859-1?Q?d=27Inform=E0tica?= de Barcelona X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en,es,ca MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Neil Bradley wrote: > Ahem.... Let me step in here... > > If you're talking console emulation, it existed in about 1995, but the > arcade emulation stuff didn't start until January of 1996 when Dave Spicer > released Sparcade. > That was the best arcade emulator I tested until Callus arrived. I get really impressed when any games worked fast in my old 486 when M.A.M.E. was so slow. Dave Spicer impressed me a lot. This remembers me that I have to download Retrocade, I have to test it ... Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 00:16:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA11169 for dynarec-outgoing; Thu, 13 Apr 2000 00:16:39 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 13 Apr 2000 00:16:38 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: <38F572B5.699DE02D@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > That was the best arcade emulator I tested until Callus arrived. I get really > impressed when any games worked fast in my old 486 when M.A.M.E. was so slow. Dave > Spicer impressed me a lot. This remembers me that I have to download Retrocade, I > have to test it ... As a benchmark, Retrocade will run Galaga on a 486/66 full speed (3 Z80s) @ 44.1khz. MAME Can't break 25FPS with half the sample rate. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 00:58:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA11269 for dynarec-outgoing; Thu, 13 Apr 2000 00:58:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Wed, 12 Apr 2000 20:09:15 -0700 (PDT) To: dynarec@synthcom.com Subject: DYNAREC: Linux, functional languages, and toolchain theory... In-Reply-To: <38F56EB8.1CF84763@est.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com First, half that Linux nazi issue is the media shoveling it out because it's the "hot new thing". Most of us are not quite that blind to the problems =) Upsides: 25 day uptime and counting supports all my hardware runs quake3 free compiler that usually performs acceptably OS sources avaliable Sources to almost everything avaliable None of that Explorer nonsense OS under constant development Downsides: Documentation is somewhat spotty OS under constant development Netscape is extremely unstable (it crash this much in NT?) AT&T asm syntax No decent Intel syntax assembler (nasm is marginal) Don't think it supports any PCI soundcards yet Pretty much locked into the GNU toolchain for now X is long overdue for a complete overhaul GPL is rather extreme As for the types that demand all sources to be free, remember that that is an opinion. Personally I consider the BSD license to be a bit more usable, from a programmer's standpoint. Has a much more practical outlook on things. Programming for X is a bit better than Windows IMHO, but it's far from optimal. Being able to run graphical programs over the network and all is nice but most of the applications of that have pretty much vanished... The GNU toolchain has its own quirks. ld doesn't seem to support real incremental linking. The source trees are quite full, and somewhat inapproachable without LONG study. X took that to an extreme though, unpacked XFree86 4.0 sources are 193MB, though half of that is made up of fonts and documentation (the manuals DO exist in electronic form...) As one person put it, "Linux is proprietary junk, it's not BSD, and it's not SysV" Functional Languages: One of the two courses I took at UT was Intro to CS... taught in Haskell. I passed that one by the skin of my teeth. That language must die, along with all of it's children, parents, relatives, and acquaintances. While you're at it, get rid of BASIC and Pascal, please =P On another note, to anyone who thinks about rewriting their toolchain with somewhat different symbol resolution policies, it isn't as easy as it first appears... John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 01:00:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA11294 for dynarec-outgoing; Thu, 13 Apr 2000 01:00:48 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004130803.KAA22779@pons.ac.upc.es> Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: <38F5718E.B330CC63@eurocopter.de> from Neil Griffiths at "Apr 13, 2000 09:04:46 am" To: dynarec@synthcom.com Date: Thu, 13 Apr 2000 10:03:57 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > There we go, a new topic. What happened to the emu scene? When did it all > > > change for, what I think is, the worse? > > > > The "kids" took over. It became a WaReZ scene. > > Agreed - and it's not something I'm happy about. :-/ > True. But I think it isn't so bad, you just have to ignore them. > I agree, it's not a good situation. That's why I'm getting back into the > *writing* of emulators - I can do something useful. Which is more than the > other 99.999% of people out there in the "scene". :-/ > Are you talking about me? :o Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 01:34:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA11416 for dynarec-outgoing; Thu, 13 Apr 2000 01:34:24 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004130835.KAA19323@pons.ac.upc.es> Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: from Neil Bradley at "Apr 13, 2000 00:16:38 am" To: dynarec@synthcom.com Date: Thu, 13 Apr 2000 10:35:27 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > As a benchmark, Retrocade will run Galaga on a 486/66 full speed (3 Z80s) > @ 44.1khz. MAME Can't break 25FPS with half the sample rate. > Really impresive. Do you know how it works compared with Sparcade? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 01:57:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA11460 for dynarec-outgoing; Thu, 13 Apr 2000 01:57:21 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004130857.KAA30223@pons.ac.upc.es> Subject: Re: DYNAREC: Linux, functional languages, and toolchain theory... In-Reply-To: from "tarquin@austin.rr.com" at "Apr 12, 2000 08:09:15 pm" To: dynarec@synthcom.com Date: Thu, 13 Apr 2000 10:57:58 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Upsides: > 25 day uptime and counting > supports all my hardware Not mine :( > free compiler that usually performs acceptably > OS sources avaliable > Sources to almost everything avaliable Good for programmers, universities and students but not for end users. > Downsides: > AT&T asm syntax This is really bad :) > > As for the types that demand all sources to be free, remember that that is > an opinion. Personally I consider the BSD license to be a bit more > usable, from a programmer's standpoint. Has a much more practical > outlook on things. > As a opinion I think the main problem (and I'm talking about what happens here in Spain) is the prices are too expensives for the average people, with more reasonable prices perhaps ... I have only used Linux for do homework for my university. > with all of it's children, parents, relatives, and acquaintances. While > you're at it, get rid of BASIC and Pascal, please =P > Hey, I like Basic and Pascal. Basic was my first language and Pascal my second, and I still think it's more understable (but slower) than C. For learning I think is better than C. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 02:04:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA11583 for dynarec-outgoing; Thu, 13 Apr 2000 02:04:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 13 Apr 2000 02:04:00 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: <200004130835.KAA19323@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > As a benchmark, Retrocade will run Galaga on a 486/66 full speed (3 Z80s) > > @ 44.1khz. MAME Can't break 25FPS with half the sample rate. > Really impresive. Do you know how it works compared with Sparcade? At last I checked it was around 30% faster than Sparcade for all commonly supported games. Sparcade rules, though! -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 02:08:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA11605 for dynarec-outgoing; Thu, 13 Apr 2000 02:08:23 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 13 Apr 2000 02:08:19 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Linux, functional languages, and toolchain theory... In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > First, half that Linux nazi issue is the media shoveling it out because > it's the "hot new thing". Yep. > Upsides: > 25 day uptime and counting FreeBSD/BSDI regularly beat this. I know of a FreeBSD 1.1.5 system that has been up for 1200 days now. > supports all my hardware Mine too. > runs quake3 Eh? did they come out with a UNIX version? > free compiler that usually performs acceptably gcc - comes with FreeBSD. > OS sources avaliable Same with FreeBSD. > Sources to almost everything avaliable Same with FreeBSD. > None of that Explorer nonsense ;-) > OS under constant development Same with FreeBSD, but the development is much more tightly controlled and they have quite a bit more organization to their project. > Downsides: > Documentation is somewhat spotty True. > OS under constant development ;-) > Netscape is extremely unstable (it crash this much in NT?) > AT&T asm syntax Not Linux's fault. > No decent Intel syntax assembler (nasm is marginal) Not Linux's fault. > Don't think it supports any PCI soundcards yet Really? The SB Live is supported by FreeBSD and I'm sure it is under Linux, too. > Pretty much locked into the GNU toolchain for now > X is long overdue for a complete overhaul That's not Linux's fault - that's Xfree86's... > GPL is rather extreme Yet another FreeBSD advantage. > As for the types that demand all sources to be free, remember that that is > an opinion. Personally I consider the BSD license to be a bit more > usable, from a programmer's standpoint. Has a much more practical > outlook on things. Yep. GPL Is far too restrictive. > As one person put it, "Linux is proprietary junk, it's not BSD, and it's > not SysV" It can't quite figure out what it wants to be. ;-) > One of the two courses I took at UT was Intro to CS... taught in Haskell. > I passed that one by the skin of my teeth. That language must die, along > with all of it's children, parents, relatives, and acquaintances. While > you're at it, get rid of BASIC and Pascal, please =P BASIC Is OK if that's all you ever intend on learning. But going from BASIC to C, you've got to unlearn some really nasty bad habits. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 02:28:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA11712 for dynarec-outgoing; Thu, 13 Apr 2000 02:28:25 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004130931.LAA25394@pons.ac.upc.es> Subject: DYNAREC: First SI summary In-Reply-To: from Neil Bradley at "Apr 13, 2000 02:08:19 am" To: dynarec@synthcom.com Date: Thu, 13 Apr 2000 11:31:13 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com I have been thinking a bit about the SI project. I'm working in summary. What do you think about this? I have thought a name: Invasores (Invaders in Spanish) but I think better use one peoples agrees with. Invasores Summary 0. Introduction/preparation work - Introduction - Present myself - Present the project - Present the game - Information sources * Docs * Emus * Schematics * ???? - Tools (DJGPP, etc) 1. Getting started - Main structure of an emulator Chapter I The CPU core 1. Main structure of the CPU core - Main loop - Context - First functions 2. Implementing the opcodes 2.0 General implementation of an instruction About this I think it is only a way to organize the work that will be where the more time will be wasted. I think perhaps I will introduce some other techniques only for learning while implementing all the opcodes. 2.1 Arithmetic Instructions 2.2 Memory instructions 2.3 Jump instructions 2.4 Testing 3. Memory maps 4. Interrupts and timing 5. The core interface Chapter II Graphics, sound an other hardware I still have to learn about the SI hardware. Chapter III An asm core (I don't now if making it in parallel with the C core or do it when (if) the whole C emulator will be implemented). Chapter IV A dynarec core Hehe, this could be fun ;) But I think it will be really hard to arrive here, but a step-by-step dynarec core is something I will study someday ... Any comments? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 05:02:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA11963 for dynarec-outgoing; Thu, 13 Apr 2000 05:02:57 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004131205.OAA19856@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec terms votation In-Reply-To: <38F5718A.AEAD0D00@est.fib.upc.es> from "Victor (R.0.B.) Moya" at "Apr 13, 2000 09:05:10 am" To: dynarec@synthcom.com Date: Thu, 13 Apr 2000 14:05:19 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com I was reading last night Marat's How to and I saw 'static recompilation'. But he was naming in fact 'static compilation'. The same happens when he says 'dynamic recompilation' but really is 'dynamic compilation'. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 05:05:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA11975 for dynarec-outgoing; Thu, 13 Apr 2000 05:05:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F5B730.DEF8CE45@eurocopter.de> Date: Thu, 13 Apr 2000 14:01:52 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I see it as a disturbing trend - not just with emulation, but the internet > and computing society as a whole. Amen. Yes, I completely agree with this. And not just with the computing society - but society as a whole. > The quality of software is going down because people's minimum > expectations are lower. Computers are getting easier to use and thusly > more idiots are writing programs. We're taking a step backward in audio > technology (MP3 - it's lossy and far worse than CDs are). Our CPUs are > getting faster and software runs about the same as it always has. The > Linux community are a bunch of anti-everything Nazis who are forcibly > ramming their medicore half attempt at an OS down everyone's throat > (didn't they accuse Microsoft of the same thing?). People are > self-appointed clairvoyant mediums who suddenly have the ability to peer > deep into the souls of every company and know what their intentions. What > the fuck do they know? I completely agree. People have lost any quality ethos that they may have had. I like audio quality - so I'm not keen on MP3. Okay, I can store lots of MP3s on a CD. But the sound quality annoys me. And also, most encoders have a 16KHz cutoff - that also annoys me. I hate the way that people accept lower quality software these days. I hate the way in which people accept crashes as perfectly normal. 6 or 7 years ago this would not have been acceptable. I hate the way in which companies release their software knowing full well that they will need to release bug patches only a couple of days after it ships. This is terrible. Yes, we have the Internet - but we didn't use to and software didn't usually have bugs. Or, to be fair, have bugs which actually stopped the software from working. > I think it boils down to most people are too stupid and ignorant to care > or know any differently. What bugs me is people seem to be happily > ignorant - like it's OK! I'd be much, much happier if there was some sort > of programming license required before you can obtain a compiler. And if > Linux just went away. I'm really sick of hearing about it when there are > better alternatives. I'm tired of the hype. I'm tired of the lameo > following of people who are using it. I also thing that most people seem to be too stupid and ignorant. It's a really, really stupid situation to be in. I can agree with your "programming license" idea, but there are still quite a few home coders out there - like emu authors - who can code well. What would be the deciding factor on getting a licence? Whether they're going to write for Linux or not? ;) I also think that too much hype is put onto Linux. It is NOT that good. It's hard for a beginner to pick up, the documentation is scarce and there are too many h4x0rs using it. I don't want to be in the same crowd as them. Though I do like the idea that it's hard for a beginner to pick up. If you can pick it up, it shows you have some intelligence about you... :)) > Sorry to vent. I just had a long day where a tool at work couldn't figure > out that his "preference" causes extra work for other people. That, and > another guy who doesn't fucking listen to anyone and just implements > whatever he feels like implementing. I know that feeling only too well... > I can tolerate ignorance because it's curable, but stupidity is forever > binding it seems. It appears that way, yes. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 05:23:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA12011 for dynarec-outgoing; Thu, 13 Apr 2000 05:23:13 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F5BAC4.94D014DD@eurocopter.de> Date: Thu, 13 Apr 2000 14:17:08 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec terms votation References: <200004131205.OAA19856@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I was reading last night Marat's How to and I saw 'static recompilation'. > But he was naming in fact 'static compilation'. The same happens when > he says 'dynamic recompilation' but really is 'dynamic compilation'. Exactly - this is why we need to get sorted with the terminology. A true dynamic recompiler CPU core is *much* more impressive technically than a dynamic compiler. Having said that, a dynamic compiler core should be faster than the recompiler core. Which is why Andy and myself are wanting to do a dynamic compiler core. And also, probably working alongside NB. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 05:25:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA12027 for dynarec-outgoing; Thu, 13 Apr 2000 05:25:46 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F5BA56.11397908@eurocopter.de> Date: Thu, 13 Apr 2000 14:15:18 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: First SI summary References: <200004130931.LAA25394@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I have been thinking a bit about the SI project. I'm working in summary. > What do you think about this? I'll read on and let you know. :) > I have thought a name: Invasores (Invaders in Spanish) but I think better > use one peoples agrees with. Well, there was a small vote some time ago and the name that won was "Space8". The name doesn't matter to me, though. > Invasores Summary > > 0. Introduction/preparation work > > - Introduction > - Present myself > - Present the project > - Present the game > - Information sources > * Docs > * Emus > * Schematics > * ???? > - Tools (DJGPP, etc) Yep, that sounds good so far. > 1. Getting started > > - Main structure of an emulator Okay, people need to know and understand this. > Chapter I The CPU core > > 1. Main structure of the CPU core > > - Main loop > - Context > - First functions > > 2. Implementing the opcodes > > 2.0 General implementation of an instruction > > About this I think it is only a way to organize the work that will be > where the more time will be wasted. I think perhaps I will introduce > some other techniques only for learning while implementing all the > opcodes. Yes, this is where the project falls over. This bit is the difficult bit... > 2.1 Arithmetic Instructions > 2.2 Memory instructions > 2.3 Jump instructions > 2.4 Testing By "testing", you mean comparisons? You also need to explain flags. > 3. Memory maps > > 4. Interrupts and timing And this can be a difficult concept to someone coming across this for the first time. > 5. The core interface Yep. Text based is good for this one - otherwise you have to explain how to write a GUI. And writing a good one can be quite difficult! > Chapter II Graphics, sound an other hardware > > I still have to learn about the SI hardware. I've been learning from documentation across the web. Chances are you've already got it! > Chapter III An asm core > > (I don't now if making it in parallel with the C core or do it when (if) the > whole C emulator will be implemented). This is a bad idea. I don't know how good your asm is, but explaining how to write one is a tremendously difficult task. And beginners can quite easily write a *slower* asm core than the default C one. :) > Chapter IV A dynarec core > > Hehe, this could be fun ;) But I think it will be really hard to arrive here, > but a step-by-step dynarec core is something I will study someday ... Again, this gets into the "this isn't funny" stage. Can you truly imagine people new to emulation trying this one out? :o But, if you could explain the asm one and get a good response, maybe it's possible. I just don't think it'll happen. Nothing to stop you from trying it yourself though. :) I can help co-ordinate the project, I can help with anything - I just can't do it by myself at all. It's just not going to happen. It would have been difficult before - but now impossible what with doing Ju-jitsu as well! I'm going to devote most of my programming time to the new emulator (Andrew, are you okay if I mention the name of it - this is killing me!). At least... this is my plan. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 05:35:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA12059 for dynarec-outgoing; Thu, 13 Apr 2000 05:35:05 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004131237.OAA14249@pons.ac.upc.es> Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: <38F5B730.DEF8CE45@eurocopter.de> from Neil Griffiths at "Apr 13, 2000 02:01:52 pm" To: dynarec@synthcom.com Date: Thu, 13 Apr 2000 14:37:48 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > I see it as a disturbing trend - not just with emulation, but the internet > > and computing society as a whole. > > Amen. Yes, I completely agree with this. And not just with the computing > society - but society as a whole. > I think you have superiority feelings ;) But in fact I also have such feelings sometimes, this is good or it's bad :o. But after seing the average people 'intelligence' it's by far small I can't think it's so bad. > > The quality of software is going down because people's minimum > > expectations are lower. Computers are getting easier to use and thusly > > more idiots are writing programs. We're taking a step backward in audio > > technology (MP3 - it's lossy and far worse than CDs are). Our CPUs are > > getting faster and software runs about the same as it always has. The > > Linux community are a bunch of anti-everything Nazis who are forcibly > > ramming their medicore half attempt at an OS down everyone's throat > > (didn't they accuse Microsoft of the same thing?). People are > > self-appointed clairvoyant mediums who suddenly have the ability to peer > > deep into the souls of every company and know what their intentions. What > > the fuck do they know? > > I completely agree. People have lost any quality ethos that they may have > had. I like audio quality - so I'm not keen on MP3. Okay, I can store lots > of MP3s on a CD. But the sound quality annoys me. And also, most encoders > have a 16KHz cutoff - that also annoys me. > About MP3 I think it has enough quality for people who has an old ISA SB16 with the worst posible loudspeakers to listen them. And I'm one of them. And I think having 10 music hours in a single CD it's a good thing. But perhaps it's because I'm a bit beaf. The average 44khz, 160 or 192 kbps MP3 quality it's quite good for me. But I'm not an expert and I don't have a good music equipment. > I hate the way that people accept lower quality software these days. I hate > the way in which people accept crashes as perfectly normal. 6 or 7 years > ago this would not have been acceptable. I hate the way in which companies > release their software knowing full well that they will need to release bug > patches only a couple of days after it ships. This is terrible. Yes, we > have the Internet - but we didn't use to and software didn't usually have > bugs. Or, to be fair, have bugs which actually stopped the software from > working. > Microsoft? All videogames companies? They release BETA versions of his games! And they sell at the same price as a full made game. People works as beta testers without being paied. And not all people has Internet access. Because of this I usually like more companies who made games for consoles, they usually (but this is changing lately) release finished jobs. I have a game that it's unplayable, the number of bugs it's greatest than the number of bugs of Windows I think. > > I think it boils down to most people are too stupid and ignorant to care > > or know any differently. What bugs me is people seem to be happily > > ignorant - like it's OK! I'd be much, much happier if there was some sort > > of programming license required before you can obtain a compiler. And if > > Linux just went away. I'm really sick of hearing about it when there are > > better alternatives. I'm tired of the hype. I'm tired of the lameo > > following of people who are using it. > > I also thing that most people seem to be too stupid and ignorant. It's a > really, really stupid situation to be in. > Just saw how the world has become. Famine with food excedents, wars everywhere, corruption, what it's called democracy but it isn't real democracy ... Whatever. It's best I shut down. > I can agree with your "programming license" idea, but there are still quite > a few home coders out there - like emu authors - who can code well. What > would be the deciding factor on getting a licence? Whether they're going to > write for Linux or not? ;) > I don't like licences. They easily becomes in a closed scene controled by a few people. Like old middle-age guild corporations. > I also think that too much hype is put onto Linux. It is NOT that good. > It's hard for a beginner to pick up, the documentation is scarce and there > are too many h4x0rs using it. I don't want to be in the same crowd as them. > I think Linux is by far the worst OS for beginners. Now this is changing a bit with new companies as Corel who build more easy Linux versions. But Linux fails in compability in hardware and between Linux and other Unix versions. Linux has been (my university is a good example) a good tool for research and for learning. This is because it's free and source open. I think it's good for university, but still not enough for end users. > > I can tolerate ignorance because it's curable, but stupidity is forever > > binding it seems. > > It appears that way, yes. > I agree, and the more I hate about the 'average people' it's their stupidity. The worst it's I'm ignorant in a bunch of things and sometimes I also act as I was stupid :( Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 05:54:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA12106 for dynarec-outgoing; Thu, 13 Apr 2000 05:54:16 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004131255.OAA10165@pons.ac.upc.es> Subject: Re: DYNAREC: First SI summary In-Reply-To: <38F5BA56.11397908@eurocopter.de> from Neil Griffiths at "Apr 13, 2000 02:15:18 pm" To: dynarec@synthcom.com Date: Thu, 13 Apr 2000 14:55:51 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > I have thought a name: Invasores (Invaders in Spanish) but I think better > > use one peoples agrees with. > > Well, there was a small vote some time ago and the name that won was > "Space8". The name doesn't matter to me, though. > Ah. I forgot it. Oh, but I want a Spanish name ;)) > Yes, this is where the project falls over. This bit is the difficult bit... > > > 2.1 Arithmetic Instructions > > 2.2 Memory instructions > > 2.3 Jump instructions > > 2.4 Testing > > By "testing", you mean comparisons? > No these are in fact arithmetic instructions. What I was meaning is how to test that the instructions are well implemented. This could be easy because we have a lot of tested Z80 cores out there as MZ80. What I don't know is whether do it while implementing instructions or at the end of the core. > You also need to explain flags. It will be primary explained in 2.0 and then in arithmetic instructions that are the ones that usually generates flags. > > > 3. Memory maps > > > > 4. Interrupts and timing > > And this can be a difficult concept to someone coming across this for the > first time. > OK, but just a few words. I have thought that while all the opcodes are being implemented I can release small documents with code examples explaining more complex techniques. > > 5. The core interface > > Yep. Text based is good for this one - otherwise you have to explain how to > write a GUI. And writing a good one can be quite difficult! > My english will be a problem I think :( I mean work a bit in the functions needed to call properly the CPU core from the main program. I mean something like mz80reset(), mz80exec(), mz80getcontext and so on. Only for make it more polite. > > Chapter II Graphics, sound an other hardware > > > > I still have to learn about the SI hardware. > > I've been learning from documentation across the web. Chances are you've > already got it! > I'm being downloading something today, I will get a book about 8080 from university library and I will study all this next week :) > > Chapter III An asm core > > > > (I don't now if making it in parallel with the C core or do it when (if) the > > whole C emulator will be implemented). > > This is a bad idea. I don't know how good your asm is, but explaining how > to write one is a tremendously difficult task. And beginners can quite > easily write a *slower* asm core than the default C one. :) > I think my asm is best than my C. I like and understand better asm than C, what the hell! But it's only an idea. I thought making it in parallel could help to do comparision between C and asm. It's better I let it as a second course tutorial. If I finish the first tutorial someday ... > > Chapter IV A dynarec core > > > > Hehe, this could be fun ;) But I think it will be really hard to arrive here, > > but a step-by-step dynarec core is something I will study someday ... > > Again, this gets into the "this isn't funny" stage. Can you truly imagine > people new to emulation trying this one out? :o > No this idea is for people who knows interpreter emulation. And I don't think mul8 will be the best mailing list for it, perhaps dynarec mail list. But all people in dynarec list seems to know enough about dynarec to don't need it though. Perhaps some of the lurkers will need it ;) I will work on that later. People in SI is getting anxious I think, and next week I will be off. Do you think enough people will stand on the list when/if the tutorial get started? :o Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 05:59:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA12119 for dynarec-outgoing; Thu, 13 Apr 2000 05:59:37 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004131302.PAA26399@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec terms votation In-Reply-To: <38F5BAC4.94D014DD@eurocopter.de> from Neil Griffiths at "Apr 13, 2000 02:17:08 pm" To: dynarec@synthcom.com Date: Thu, 13 Apr 2000 15:02:04 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > I was reading last night Marat's How to and I saw 'static recompilation'. > > But he was naming in fact 'static compilation'. The same happens when > > he says 'dynamic recompilation' but really is 'dynamic compilation'. > > Exactly - this is why we need to get sorted with the terminology. A true > dynamic recompiler CPU core is *much* more impressive technically than a > dynamic compiler. Having said that, a dynamic compiler core should be > faster than the recompiler core. Which is why Andy and myself are wanting > to do a dynamic compiler core. And also, probably working alongside NB. :) > Not again please. I think we disagree on this. Until I see a working and good enough dynamic recompiler I won't think that dynamic recompiling exists. Now, as dynamic recompilation is being told and as no techniques can be found to handle in a proper manner self-modifying code I think a dynamic compiler is a recompiler with self-modifying or recompile feature switched off. A dynamic compiler has all what it's needed for build a recompiler but it's acting as it. An idea: let's try to find a real and fast technique for handling self-modifying code. If this could exist, though. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 06:42:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA12231 for dynarec-outgoing; Thu, 13 Apr 2000 06:42:16 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F5CD1E.F524E168@eurocopter.de> Date: Thu, 13 Apr 2000 15:35:26 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec terms votation References: <200004131302.PAA26399@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Exactly - this is why we need to get sorted with the terminology. A true > > dynamic recompiler CPU core is *much* more impressive technically than a > > dynamic compiler. Having said that, a dynamic compiler core should be > > faster than the recompiler core. Which is why Andy and myself are wanting > > to do a dynamic compiler core. And also, probably working alongside NB. :) > > Not again please. I think we disagree on this. Until I see a working and > good enough dynamic recompiler I won't think that dynamic recompiling exists. It exists. I use one here at work. Made by HP. :) > Now, as dynamic recompilation is being told and as no techniques can be found > to handle in a proper manner self-modifying code I think a dynamic compiler is > a recompiler with self-modifying or recompile feature switched off. A dynamic > compiler has all what it's needed for build a recompiler but it's acting as it. You can use special techniques to speed the emulation in a dynamic compiler because you have no overhead of checking for modified code. So it's not really a recompiler with the feature turned off - though I *do* see what you mean. > An idea: let's try to find a real and fast technique for handling self-modifying > code. If this could exist, though. My technique I mentioned before should be a real and fast technique. And it exists! It just... isn't implemented. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 06:49:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA12243 for dynarec-outgoing; Thu, 13 Apr 2000 06:49:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004131349.PAA00422@pons.ac.upc.es> Subject: Re: DYNAREC: First SI summary In-Reply-To: <200004131255.OAA10165@pons.ac.upc.es> from Victor Moya del Barrio at "Apr 13, 2000 02:55:51 pm" To: dynarec@synthcom.com Date: Thu, 13 Apr 2000 15:49:48 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com A bit of help, please. I have been downloading SI documets from spies.com. But those pdf are really strange, my acrobat reader can't read them. What is it happening? Victor MOya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 06:50:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA12255 for dynarec-outgoing; Thu, 13 Apr 2000 06:50:14 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004131353.PAA00997@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec terms votation In-Reply-To: <38F5CD1E.F524E168@eurocopter.de> from Neil Griffiths at "Apr 13, 2000 03:35:26 pm" To: dynarec@synthcom.com Date: Thu, 13 Apr 2000 15:53:11 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > Exactly - this is why we need to get sorted with the terminology. A true > > > dynamic recompiler CPU core is *much* more impressive technically than a > > > dynamic compiler. Having said that, a dynamic compiler core should be > > > faster than the recompiler core. Which is why Andy and myself are wanting > > > to do a dynamic compiler core. And also, probably working alongside NB. :) > > > > Not again please. I think we disagree on this. Until I see a working and > > good enough dynamic recompiler I won't think that dynamic recompiling exists. > > It exists. I use one here at work. Made by HP. :) > Umm, it has documentation? I always search for new info. > > Now, as dynamic recompilation is being told and as no techniques can be found > > to handle in a proper manner self-modifying code I think a dynamic compiler is > > a recompiler with self-modifying or recompile feature switched off. A dynamic > > compiler has all what it's needed for build a recompiler but it's acting as it. > > You can use special techniques to speed the emulation in a dynamic compiler > because you have no overhead of checking for modified code. So it's not > really a recompiler with the feature turned off - though I *do* see what > you mean. > Of course, the only difference I see between dynamic recompilation and dyynamic compilation it's this test. The test for modified code really harms the performance of the emulation. > > An idea: let's try to find a real and fast technique for handling self-modifying > > code. If this could exist, though. > > My technique I mentioned before should be a real and fast technique. And it > exists! It just... isn't implemented. :) > What, where, how ?!!!! I have missed it .... :o I will have to search it ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 06:57:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA12282 for dynarec-outgoing; Thu, 13 Apr 2000 06:57:10 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F5D086.23EF2105@eurocopter.de> Date: Thu, 13 Apr 2000 15:49:58 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: FWIW... References: <38F41782.D1156933@eurocopter.de> <0003650dd8262e33_mailit@mailhub.rrze.uni-erlangen.de> <38F465F6.8E00829D@eurocopter.de> <000365120429d1ce_mailit@mailhub.rrze.uni-erlangen.de> <38F49A54.30BCDFC6@eurocopter.de> <00036512ae0ef1ce_mailit@mailhub.rrze.uni-erlangen.de> <38F56B86.D0C2273A@eurocopter.de> <0003651f33ef615d_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Yes - and if it's cold then I'll be watching for some blue tits (okay, > >that's a joke that non-English speakers may not get). :) > > I think I can understand that ;-) Good. That means you can understand my whole humour level. :) > >Hmm, yes. Was that the one that never happened? :o > > Oww :-( Amongst many swear-words, this was one of the things I said. :)) The ironic thing is that at the time we were practising a new stance - which allegedly stopped this sort of thing. But... nope. Remember, a swift punch in the knackers (there we go, TRUE British slang) will often put you on the floor. :o > >I've got to get some of those protection pad things, but I don't know what > >they're called in German - so I don't know what to ask for. > > I think it's called "Suspensorium", but I'm not too sure about that. Nor me. I've a feeling it's called a "Cricket box" in Britain, but I'm not even sure about THAT! :o > >And everytime I > >go into any sports shop, it's always a fairly attractive female behind the > >counter - so I can't even do the mime for it. :)) > > Hehe ;-) > You could also call it "Eierwärmer", but you certainly don't want to do that > in front of a women ;-) Thermal underwear? I'm not going to ask. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 06:58:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA12291 for dynarec-outgoing; Thu, 13 Apr 2000 06:58:51 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004131401.QAA01781@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec terms votation In-Reply-To: <38F56A94.98D46A22@eurocopter.de> from Neil Griffiths at "Apr 13, 2000 08:35:00 am" To: dynarec@synthcom.com Date: Thu, 13 Apr 2000 16:01:38 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com I found it :)) > Split off each 4K (or less). If a write happens inside one of the 4K > blocks, mark it somewhere (you only need 1 bit to do this). If the IP gets > to that 4K then recompile. > > If you can handle going back to translate code again, this shouldn't be a > problem. And it should be pretty damn fast too. > > That's just a quick idea I've come up with. Probably isn't the best in the > world - but I did come up with it in just under 5 seconds. :) > This seems a lot like that old paged transmapping technique I thought long time ago. A clear addition to this is use a memory map approach. You know, you don't have to test all memory space for modifyied code only the blocks (as RAM zone in an arcade machine) that can have self-modified code. When I wrote about extending NB dynamic compiler to handle self-modifying code I talk about this, but as NB translation at instruction level each memory byte is and must be marked. The worst is that you still have to track all writes. What I want is something that will help not to test all memory writes because it's what slowsdown the emulation. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 07:15:22 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA12354 for dynarec-outgoing; Thu, 13 Apr 2000 07:15:22 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Thu, 13 Apr 2000 02:26:08 -0700 (PDT) To: dynarec@synthcom.com Subject: Re: DYNAREC: Linux, functional languages, and toolchain theory... In-Reply-To: <200004130857.KAA30223@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Thu, 13 Apr 2000, Victor Moya del Barrio wrote: > > Upsides: > > > free compiler that usually performs acceptably > > OS sources avaliable > > Sources to almost everything avaliable > Good for programmers, universities and students but not for end users. Agreed, but then again, are you sure you WANT normal end-users? =P > > Downsides: > > AT&T asm syntax > This is really bad :) What's worse, nasm hasn't been updated since last June, and LCC revved the code generator interface. The lcc->nasm backend ceased to work. And the documentation on the new interface is done in terms of what changed from the book... > As a opinion I think the main problem (and I'm talking about what happens > here in Spain) is the prices are too expensives for the average people, with > more reasonable prices perhaps ... Depends on the software. Most all the things I use are free, because they work well enough to be acceptable =P > > with all of it's children, parents, relatives, and acquaintances. While > > you're at it, get rid of BASIC and Pascal, please =P > > > > Hey, I like Basic and Pascal. Basic was my first language and Pascal my second, > and I still think it's more understable (but slower) than C. For learning I > think is better than C. Learning perhaps, but the problem is people embraced them as production languages. I learned BASIC long ago, switched to HyperTalk, learned C/asm, took a course in Pascal, went back to C/asm before the course ended =P > Victor Moya John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 07:22:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA12370 for dynarec-outgoing; Thu, 13 Apr 2000 07:22:50 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Thu, 13 Apr 2000 02:33:45 -0700 (PDT) To: dynarec@synthcom.com Subject: Re: DYNAREC: Linux, functional languages, and toolchain theory... In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Thu, 13 Apr 2000, Neil Bradley wrote: Heh, I don't have much against BSD, but I'm not going through the trouble of reformatting any portion of my 27GB drive to try it out =P > > Upsides: > > 25 day uptime and counting > > FreeBSD/BSDI regularly beat this. I know of a FreeBSD 1.1.5 system that > has been up for 1200 days now. Once you get past about 60 it's usually irrelevant. Hardware upgrades and all =P > > runs quake3 > > Eh? did they come out with a UNIX version? Yup, loki ported it to linux. Don't know how well it runs in FreeBSD, hardware accel and everything if Mesa supports your card. > Same with FreeBSD, but the development is much more tightly controlled and > they have quite a bit more organization to their project. So I've noticed, also looked like they supported a couple of extra semantics that linux doesn't seem to yet (SA_SIGINFO comes to mind). However, mmap /proc/self/mem does not seem to work for bankswitching on FreeBSD =P > > Netscape is extremely unstable (it crash this much in NT?) > > AT&T asm syntax > > Not Linux's fault. Didn't think so, the crashes are too predictable... > > No decent Intel syntax assembler (nasm is marginal) > > Not Linux's fault. GNU's fault =P > > Don't think it supports any PCI soundcards yet > > Really? The SB Live is supported by FreeBSD and I'm sure it is under > Linux, too. Heh, I haven't looked into the details any time recently, use a SB32 PnP myself, damn good card. Some of those newer ones like the Diamond MX300 look nice though... 3D sound is cool... > > X is long overdue for a complete overhaul > > That's not Linux's fault - that's Xfree86's... True, though nyef was kicking around the idea of building a decent window system on top of XFree86's drivers... > > GPL is rather extreme > > Yet another FreeBSD advantage. Yes =/ > > As one person put it, "Linux is proprietary junk, it's not BSD, and it's > > not SysV" > > It can't quite figure out what it wants to be. ;-) And unfortunately, neither can it seem to document every last detail =/ Can't quite fault them on that though, I'm not fond of writing docs either... > BASIC Is OK if that's all you ever intend on learning. But going from > BASIC to C, you've got to unlearn some really nasty bad habits. Yes... best way I heard it was that BASIC had great potential for permanent brain damage =P > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley I can tolerate ignorance because it's curable, but > Synthcom Systems, Inc. stupidity is forever binding it seems. > ICQ # 29402898 John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 07:31:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA12407 for dynarec-outgoing; Thu, 13 Apr 2000 07:31:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Thu, 13 Apr 2000 02:42:13 -0700 (PDT) To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 In-Reply-To: <38F5B730.DEF8CE45@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Thu, 13 Apr 2000, Neil Griffiths wrote: > patches only a couple of days after it ships. This is terrible. Yes, we > have the Internet - but we didn't use to and software didn't usually have > bugs. Or, to be fair, have bugs which actually stopped the software from > working. Ahh, the good old days of DOS, before people could routinely download a 15 MB patch. And windows was scorned for being about as reliable as a rainstorm in the sahara... > I also think that too much hype is put onto Linux. It is NOT that good. > It's hard for a beginner to pick up, the documentation is scarce and there > are too many h4x0rs using it. I don't want to be in the same crowd as them. You have a personal beef against Linux? Linus molest you as a kid? =P The fact that it is hard for a beginner to pick up is not restricted to it, it is a side effect of all Unices. However, that fact is also the reason a large amount of its userbase uses it. Steep learning curves weed out those who can't deal with it, and generally mean the system is more likely to do what you want. As for the h4x0rs, we all know your average skript kiddie has the IQ of a roach, the steep learning curve forces them to the help channels earlier. The questions they tend to ask have a nasty tendancy to get them permabanned =) (How do I compile an eggdrop? How do I hack into Apache? etc) Though with the recent setups Redhat and others are coming up with, we're getting more and more idiots running around. New people are good, but now we're getting into the crowd that has no standards and doesn't want to learn =/ Case in point, Enlightenment. The developers have no idea about how to write a decent build process, they've come up with a window manager that can take a minute to load on a BEEFED machine, and not only that, one that crashes unpredictably. Problem is that it's called a decent release =/ > Though I do like the idea that it's hard for a beginner to pick up. If you > can pick it up, it shows you have some intelligence about you... :)) See above =) > Neil. John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 07:41:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA12426 for dynarec-outgoing; Thu, 13 Apr 2000 07:41:50 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004131444.QAA00188@pons.ac.upc.es> Subject: Re: DYNAREC: Linux, functional languages, and toolchain theory... In-Reply-To: from "tarquin@austin.rr.com" at "Apr 13, 2000 02:26:08 am" To: dynarec@synthcom.com Date: Thu, 13 Apr 2000 16:44:16 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > On Thu, 13 Apr 2000, Victor Moya del Barrio wrote: > > > > Upsides: > > > > > free compiler that usually performs acceptably > > > OS sources avaliable > > > Sources to almost everything avaliable > > Good for programmers, universities and students but not for end users. > > Agreed, but then again, are you sure you WANT normal end-users? =P > Hehe, but if you are a programmer you still need someone who buys your programs, whatever they are :) > > As a opinion I think the main problem (and I'm talking about what happens > > here in Spain) is the prices are too expensives for the average people, with > > more reasonable prices perhaps ... > > Depends on the software. Most all the things I use are free, because they > work well enough to be acceptable =P > Perhaps, but in Spain the shareware or freeware market it isn't as good as this. Internet access is growing up but still is a bit difficult, magazines provide some shareware too, but you can't search the best shareware by yourself. And more, in Spain piracy is the rule, and I still don't know if I like it or not :o > > > with all of it's children, parents, relatives, and acquaintances. While > > > you're at it, get rid of BASIC and Pascal, please =P > > > > > > > Hey, I like Basic and Pascal. Basic was my first language and Pascal my second, > > and I still think it's more understable (but slower) than C. For learning I > > think is better than C. > > Learning perhaps, but the problem is people embraced them as production > languages. I learned BASIC long ago, switched to HyperTalk, learned > C/asm, took a course in Pascal, went back to C/asm before the course ended > =P > Visual Basic isn't real BASIC and it's still a lot of useful for prototyping and to build simple applications. Pascal isn't worst than Java or C++ or other high level languages. The worst is that it's dead, I think Delphi doesn't have a future ... For the kind of software (slow software) the companies are producing I don't thing they need C or assembler, Pascal or Java are good enough. BTW I don't think they use C or assembler anymore. That good old days when all games were wrotten in assembler. I still can remember how easy they were to understand while debugging for searching for the life variable ..., ahh, it remembers me this happy childhood days .... ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 07:47:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA12469 for dynarec-outgoing; Thu, 13 Apr 2000 07:47:45 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Thu, 13 Apr 2000 02:58:42 -0700 (PDT) To: dynarec@synthcom.com Subject: Re: DYNAREC: Linux, functional languages, and toolchain theory... In-Reply-To: <200004131444.QAA00188@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Thu, 13 Apr 2000, Victor Moya del Barrio wrote: > > On Thu, 13 Apr 2000, Victor Moya del Barrio wrote: > > Agreed, but then again, are you sure you WANT normal end-users? =P > > > Hehe, but if you are a programmer you still need someone who buys your > programs, whatever they are :) That's why you have someone port it to windows for the main market =) > Visual Basic isn't real BASIC and it's still a lot of useful for prototyping and > to build simple applications. Pascal isn't worst than Java or C++ or other > high level languages. The worst is that it's dead, I think Delphi doesn't have > a future ... I have serious issues with the First Law of Pascal: The programmer does not know what they're doing. This ideology permeates the language... > For the kind of software (slow software) the companies are producing I don't > thing they need C or assembler, Pascal or Java are good enough. BTW I don't > think they use C or assembler anymore. That good old days when all games were C or C++ for good software houses. Java makes qbasic look fast... C++ has it's own issues... > wrotten in assembler. I still can remember how easy they were to understand > while debugging for searching for the life variable ..., ahh, it remembers me > this happy childhood days .... ;) Hehe > Victor Moya John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 07:58:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA12506 for dynarec-outgoing; Thu, 13 Apr 2000 07:58:14 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004131500.RAA25568@pons.ac.upc.es> Subject: Re: DYNAREC: Linux, functional languages, and toolchain theory... In-Reply-To: from "tarquin@austin.rr.com" at "Apr 13, 2000 02:58:42 am" To: dynarec@synthcom.com Date: Thu, 13 Apr 2000 17:00:47 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > I have serious issues with the First Law of Pascal: The programmer does > not know what they're doing. This ideology permeates the language... > The sad thing is that usually it's true :( > C or C++ for good software houses. Java makes qbasic look fast... > This is another old one, qbasic ... :) I don't know how someone can say that Java it's the language of the future ... Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 08:09:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA12543 for dynarec-outgoing; Thu, 13 Apr 2000 08:09:57 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F5E2F3.7BC0010A@eurocopter.de> Date: Thu, 13 Apr 2000 17:08:35 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Linux, functional languages, and toolchain theory... References: <200004131500.RAA25568@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > C or C++ for good software houses. Java makes qbasic look fast... > > > This is another old one, qbasic ... :) Anyone remember GW-BASIC for the PC? :o > I don't know how someone can say that Java it's the language of the future ... The idea behind Java should make it the language of the future. The actual implementation doesn't. Cross-platform languages are good - but when you're talking at this speed, it's horrible... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 08:10:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA12555 for dynarec-outgoing; Thu, 13 Apr 2000 08:10:13 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F5E296.D8C8014C@eurocopter.de> Date: Thu, 13 Apr 2000 17:07:02 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Linux, functional languages, and toolchain theory... References: <200004131444.QAA00188@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Perhaps, but in Spain the shareware or freeware market it isn't as good as this. > Internet access is growing up but still is a bit difficult, magazines provide > some shareware too, but you can't search the best shareware by yourself. I think that Internet access in Europe is ruled by Germany - though Britain is now actually catching up. > And more, in Spain piracy is the rule, and I still don't know if I like it > or not :o Hmm... > Visual Basic isn't real BASIC and it's still a lot of useful for prototyping and > to build simple applications. Pascal isn't worst than Java or C++ or other > high level languages. The worst is that it's dead, I think Delphi doesn't have > a future ... How can you work out that VB isn't real BASIC? Also, Pascal *is* much worse than Java or C++. And Ada takes all the good things out of Pascal and C++ - and then merges all the bad things together. I *hate* Ada. And I have to use it day in, day out. :-/ > For the kind of software (slow software) the companies are producing I don't > thing they need C or assembler, Pascal or Java are good enough. BTW I don't > think they use C or assembler anymore. That good old days when all games were > wrotten in assembler. I still can remember how easy they were to understand > while debugging for searching for the life variable ..., ahh, it remembers me > this happy childhood days .... ;) Me too. I used to have a Multiface II for my CPC. Basically a hardware debugger. Ah, it was great. =) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 08:16:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA12578 for dynarec-outgoing; Thu, 13 Apr 2000 08:16:23 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F5E38F.ACCB8516@eurocopter.de> Date: Thu, 13 Apr 2000 17:11:11 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec terms votation References: <200004131401.QAA01781@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I found it :)) Well done. :) > This seems a lot like that old paged transmapping technique I thought long > time ago. Is it? Well, you know what they say about great minds, don't you? :) > A clear addition to this is use a memory map approach. You know, you don't have > to test all memory space for modifyied code only the blocks (as RAM zone in an > arcade machine) that can have self-modified code. The clear downside to this is that you have to know which areas can contain code. > When I wrote about extending NB dynamic compiler to handle self-modifying code > I talk about this, but as NB translation at instruction level each memory byte > is and must be marked. My solution gets around that. Whether it's the best solution, though, I just don't know! > The worst is that you still have to track all writes. What I want is something > that will help not to test all memory writes because it's what slowsdown > the emulation. No matter what method you'll use, you have to watch for writes. It's how you deal with it that gives you the speed-ups/slow-downs... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 08:19:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA12591 for dynarec-outgoing; Thu, 13 Apr 2000 08:19:54 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004131522.RAA15285@pons.ac.upc.es> Subject: Re: DYNAREC: Linux, functional languages, and toolchain theory... In-Reply-To: <38F5E2F3.7BC0010A@eurocopter.de> from Neil Griffiths at "Apr 13, 2000 05:08:35 pm" To: dynarec@synthcom.com Date: Thu, 13 Apr 2000 17:22:51 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > C or C++ for good software houses. Java makes qbasic look fast... > > > > > This is another old one, qbasic ... :) > > Anyone remember GW-BASIC for the PC? :o > :) When I bought my second computer, an Olivetti PC clone, I only have a single 3.5 inch floppy with MS-DOS 3.2, GW-BASIC and DEBUG, what do you think was the first thing I do? ;) Just run GW-BASIC. Later I run DEBUG. And a lot of later I bought my first videogames. > > I don't know how someone can say that Java it's the language of the future ... > > The idea behind Java should make it the language of the future. The actual > implementation doesn't. Cross-platform languages are good - but when you're > talking at this speed, it's horrible... > Say that Java is cross plataform is just a bad joke. The only solution for cross plataform is to have only one plataform. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 08:30:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA12659 for dynarec-outgoing; Thu, 13 Apr 2000 08:30:44 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004131533.RAA00491@pons.ac.upc.es> Subject: Re: DYNAREC: Linux, functional languages, and toolchain theory... In-Reply-To: <38F5E296.D8C8014C@eurocopter.de> from Neil Griffiths at "Apr 13, 2000 05:07:02 pm" To: dynarec@synthcom.com Date: Thu, 13 Apr 2000 17:33:14 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > And more, in Spain piracy is the rule, and I still don't know if I like it > > or not :o > > Hmm... > I don't know what you mean ... > > Visual Basic isn't real BASIC and it's still a lot of useful for prototyping and > > to build simple applications. Pascal isn't worst than Java or C++ or other > > high level languages. The worst is that it's dead, I think Delphi doesn't have > > a future ... > > How can you work out that VB isn't real BASIC? It isn't real good old basic with number lines :) 10 REM I like number lines All syntaxis is changed and a lot of new stuff it's added. Only a few instructions share the same name. And perhaps it manteins and improves the idea of be easy to use. Bill Gates and some other people created BASIC (or perhaps more likely some other people and Bill Gates). Microsoft started with BASIC, perhaps MS isn't as bad at all ;) > > Also, Pascal *is* much worse than Java or C++. And Ada takes all the good > things out of Pascal and C++ - and then merges all the bad things together. > I *hate* Ada. And I have to use it day in, day out. :-/ > This is still another programmer war (like Linux vs MS): Pascal vs C. Or Amiga vs PC, or ... whatever... I think there are too many of this wars. > > For the kind of software (slow software) the companies are producing I don't > > thing they need C or assembler, Pascal or Java are good enough. BTW I don't > > think they use C or assembler anymore. That good old days when all games were > > wrotten in assembler. I still can remember how easy they were to understand > > while debugging for searching for the life variable ..., ahh, it remembers me > > this happy childhood days .... ;) > > Me too. I used to have a Multiface II for my CPC. Basically a hardware > debugger. Ah, it was great. =) > :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 08:31:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA12670 for dynarec-outgoing; Thu, 13 Apr 2000 08:31:55 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F5E7DD.46189E8B@eurocopter.de> Date: Thu, 13 Apr 2000 17:29:33 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Linux, functional languages, and toolchain theory... References: <200004131522.RAA15285@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Anyone remember GW-BASIC for the PC? :o > > > :) > When I bought my second computer, an Olivetti PC clone, I only have a single > 3.5 inch floppy with MS-DOS 3.2, GW-BASIC and DEBUG, what do you think was the > first thing I do? ;) Just run GW-BASIC. Later I run DEBUG. And a lot of later > I bought my first videogames. Pretty much the same here - though the PC wasn't mine, but my friends. A 286 Intertan computer running at 12MHz. Heh. :) I remember when he bought his SoundBlaster 2.0. Played Lemmings and was very impressed. Also, we hacked "Fire and Ice" to get that to work (checked for a 386 even though it had no 32-bit instructions!). That was cool. :) > > The idea behind Java should make it the language of the future. The actual > > implementation doesn't. Cross-platform languages are good - but when you're > > talking at this speed, it's horrible... > > Say that Java is cross plataform is just a bad joke. The only solution for > cross plataform is to have only one plataform. I used to think the same about Java, but my mind has been changed. Cross-platform is great - if you can compile natively for that machine. If you require a virtual machine (an emulator) to make it work then the speed will be poor. Or, at least, comparatively poor. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 08:39:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA12714 for dynarec-outgoing; Thu, 13 Apr 2000 08:39:16 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: DYNAREC: Near 1000 Postings From: Michael Koenig Message-Id: <00036526600f6e04_mailit@mailhub.rrze.uni-erlangen.de> Date: Thu, 13 Apr 2000 17:40:24 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, I have currently 979 DYNAREC messages in my folder! Any idea how to celebrate the 1000 messages mark? -- M.I.Ke "The chain which can be yanked is not the eternal chain." -- G. Fitch --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 08:46:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA12741 for dynarec-outgoing; Thu, 13 Apr 2000 08:46:38 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F5EB12.5F0CCC97@eurocopter.de> Date: Thu, 13 Apr 2000 17:43:14 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Emu Top 100 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > patches only a couple of days after it ships. This is terrible. Yes, we > > have the Internet - but we didn't use to and software didn't usually have > > bugs. Or, to be fair, have bugs which actually stopped the software from > > working. > > Ahh, the good old days of DOS, before people could routinely download a 15 > MB patch. And windows was scorned for being about as reliable as a > rainstorm in the sahara... Good old days of DOS, yes - but I was thinking earlier. To the times of 8-bit and 16-bit computers. And anyway, a rainstorm in the Sahara is pretty reliable. I can rely on it not to happen. :) > You have a personal beef against Linux? Linus molest you as a kid? =P Damn you! Damn! Just as I had manage to forget about it and remove the mental scars, you have to remind me! Damn you! ;) > The fact that it is hard for a beginner to pick up is not restricted to > it, it is a side effect of all Unices. However, that fact is also the > reason a large amount of its userbase uses it. Steep learning curves weed > out those who can't deal with it, and generally mean the system is more > likely to do what you want. I use Unix all day at work (Solaris on a Sparc Ultra 5). I don't want to put up with it when I go home. :) And as for steep learning curves meaning "the system is more likely to do what you want" - I don't believe that. I believe that it means that it's more difficult to do what you want - but you get a satisfying feeling afterwards because you got it to work. It's kind of like a game - a text-based adventure game, if you want. :)) > As for the h4x0rs, we all know your average skript kiddie has the IQ of a > roach, the steep learning curve forces them to the help channels earlier. > The questions they tend to ask have a nasty tendancy to get them > permabanned =) (How do I compile an eggdrop? How do I hack into Apache? > etc) So... how do I compile an eggdrop? ;) No, really. I don't want to know. :) > Though with the recent setups Redhat and others are coming up with, we're > getting more and more idiots running around. New people are good, but now > we're getting into the crowd that has no standards and doesn't want to > learn =/ Everyone should use the Debian distribution if you're to use Linux. It's a nice distribution in terms of the packaged software - and it's still a bugger to set up properly. :)) > Case in point, Enlightenment. The developers have no idea about how to > write a decent build process, they've come up with a window manager that > can take a minute to load on a BEEFED machine, and not only that, one that > crashes unpredictably. Problem is that it's called a decent release =/ Don't like it so much. If I use it at home (which I have done previously), then I use Gnome. Or KDE. I've never used FreeBSD. Not because I don't want to - mainly because I haven't had a copy of it to try out yet. I don't want to do it at the moment anyway - not enough time. :) > > Though I do like the idea that it's hard for a beginner to pick up. If you > > can pick it up, it shows you have some intelligence about you... :)) > > See above =) Ah, we agree. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 08:48:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA12763 for dynarec-outgoing; Thu, 13 Apr 2000 08:48:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F5EB8F.EFB1A69A@eurocopter.de> Date: Thu, 13 Apr 2000 17:45:19 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Near 1000 Postings References: <00036526600f6e04_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I have currently 979 DYNAREC messages in my folder! > Any idea how to celebrate the 1000 messages mark? Discuss something on-topic? ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 09:04:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA12822 for dynarec-outgoing; Thu, 13 Apr 2000 09:04:26 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F5EF84.5319C780@eurocopter.de> Date: Thu, 13 Apr 2000 18:02:12 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Linux, functional languages, and toolchain theory... References: <200004131533.RAA00491@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > > And more, in Spain piracy is the rule, and I still don't know if I like it > > > or not :o > > > > Hmm... > > I don't know what you mean ... Well, I don't completely agree with piracy - and I'm not completely behind it. I'm all for *selective* piracy. :) I didn't finish that sentence there - I meant to say more than "Hmm..." but I forgot. :o Anyway, speaking as someone into emulation, I can't really say "I'm against all piracy and it should be wiped out". I may, or may not have ROMs which I theoretically shouldn't have. Maybe. I'm not going to commit myself one way or the other on a public mailing list. ;) I don't go for pirated programs - stuff under 1-2 years old. I buy it. Generally. I have had copied programs before now - but if I use them on even a semi-regular basis, I buy them. It's only fair. Besides, games is the business I'm trying to get into. So if I don't support it myself, how can I expect others to? :o > > How can you work out that VB isn't real BASIC? > > It isn't real good old basic with number lines :) > > 10 REM I like number lines > > All syntaxis is changed and a lot of new stuff it's added. Only a few > instructions share the same name. And perhaps it manteins and improves the > idea of be easy to use. Bill Gates and some other people created BASIC (or > perhaps more likely some other people and Bill Gates). > Microsoft started with BASIC, perhaps MS isn't as bad at all ;) The only real instruction that I can think of that's been removed from BASIC is PRINT. I can't think of anything else. All the other commands I used to use are in. Except PEEK and POKE - but I don't believe they were part of BASIC. Just my version of it. > > Also, Pascal *is* much worse than Java or C++. And Ada takes all the good > > things out of Pascal and C++ - and then merges all the bad things together. > > I *hate* Ada. And I have to use it day in, day out. :-/ > > This is still another programmer war (like Linux vs MS): Pascal vs C. > > Or Amiga vs PC, or ... whatever... I think there are too many of this wars. Agreed, but in this case I'm in a very real situation to decide. I use Ada (Pascal basically) and C pretty much daily. I'm in a very good position to decide which is the better language. If one can do everything I want easily - and the other is more difficult, then one must be a worse language. If I can do something in one which I can't in the other, then one must be worse. Pascal loses. Ada loses by a looong way. When you get to Amiga vs PC, I have to wonder if this didn't die years ago - this is the first I've heard about it in years. It's stupid to argue about machines because each has it's own benefits and disadvantages. It isn't the case with Pascal and C - C can do everything that Pascal can - but not vice-versa. > > Me too. I used to have a Multiface II for my CPC. Basically a hardware > > debugger. Ah, it was great. =) > > :) What did you have before a PC - or was a PC your first computer (I think I remember you saying this)? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 09:11:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA12842 for dynarec-outgoing; Thu, 13 Apr 2000 09:11:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F5F0CC.389ADADC@eurocopter.de> Date: Thu, 13 Apr 2000 18:07:40 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: DYNAREC: Two things References: <00036526600f6e04_mailit@mailhub.rrze.uni-erlangen.de> <38F5EB8F.EFB1A69A@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, Debugging a program in hex (not ASM but *HEX*) on a Sparc isn't fun. But one thing is: this is a really scary high-endian machine. I always though that a real address such as 0034FED6 would be written like FED60034 in a high-endian and like 3400D6FE in a low-endian (or something like that, I can't be bothered remembering right now). But on this machine it's stored as I'd write it - 0034FED6. Scary! Neil. PS Bet you're wondering about the other thing now, aren't you? Haha! My plan worked! ;) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 09:57:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA12974 for dynarec-outgoing; Thu, 13 Apr 2000 09:57:01 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarec terms votation From: Michael Koenig In-Reply-To: <38F56A94.98D46A22@eurocopter.de> Message-Id: <000365270842965d_mailit@mailhub.rrze.uni-erlangen.de> References: <200004120958.LAA23883@pons.ac.upc.es> <38F465B2.31B83D8C@eurocopter.de> <00036511f973f09d_mailit@mailhub.rrze.uni-erlangen.de> <38F499BD.49A63B39@eurocopter.de> <00036512a7bc52f5_mailit@mailhub.rrze.uni-erlangen.de> <38F56A94.98D46A22@eurocopter.de> Date: Thu, 13 Apr 2000 18:27:26 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> No, because the big problem is not how to "retranslate" the code but how to >> quickly identify if the code has been modified! >Split off each 4K (or less). If a write happens inside one of the 4K >blocks, mark it somewhere (you only need 1 bit to do this). If the IP gets >to that 4K then recompile. >If you can handle going back to translate code again, this shouldn't be a >problem. And it should be pretty damn fast too. OK, first of all we came up with a similar solution when discussing the paged TransMap some time ago... But this is only half of the job, because you don't mention that you not only have to modify the memory handlers to behave that way, but you also have to generate the code for any instruction that writes to a constant RAM address. -- M.I.Ke "If God lived on Earth, people would knock out all His windows." -- Yiddish saying --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 09:57:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA12979 for dynarec-outgoing; Thu, 13 Apr 2000 09:57:02 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarec terms votation From: Michael Koenig In-Reply-To: <38F5718A.AEAD0D00@est.fib.upc.es> Message-Id: <0003652732d01627_mailit@mailhub.rrze.uni-erlangen.de> References: <200004120958.LAA23883@pons.ac.upc.es> <38F465B2.31B83D8C@eurocopter.de> <00036511f973f09d_mailit@mailhub.rrze.uni-erlangen.de> <38F499BD.49A63B39@eurocopter.de> <00036512a7bc52f5_mailit@mailhub.rrze.uni-erlangen.de> <38F5718A.AEAD0D00@est.fib.upc.es> Date: Thu, 13 Apr 2000 18:39:20 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> Actually I'm blind as a mole (about -9.5 on both eyes!)... >I only -3.5 and -4.5 :) Lucky you! I could even ride a bike without glasses on with these specs! >I thought that mail was for free ;) Who said that? ;-) -- M.I.Ke Uncle Ed's Rule of Thumb: Never use your thumb for a rule. You'll either hit it with a hammmer or get a splinter in it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 09:57:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA12987 for dynarec-outgoing; Thu, 13 Apr 2000 09:57:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarec terms votation From: Michael Koenig In-Reply-To: <200004131205.OAA19856@pons.ac.upc.es> Message-Id: <00036527473cc7eb_mailit@mailhub.rrze.uni-erlangen.de> References: <200004131205.OAA19856@pons.ac.upc.es> Date: Thu, 13 Apr 2000 18:45:03 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I was reading last night Marat's How to and I saw 'static recompilation'. >But he was naming in fact 'static compilation'. The same happens when >he says 'dynamic recompilation' but really is 'dynamic compilation'. Even the "emulation god" Marat isn't perfect. The worst error I found was that 6502 was listed as an example for big endian processors. Marat should know that it's little endian because he wrote a 6502 emulator... I mentioned the 6809 as a better example for a big endian 8-bit processor, since then the docs feature my favourite 8-bit CPU ;-) -- M.I.Ke Just remember: when you go to court, you are trusting your fate to twelve people that weren't smart enough to get out of jury duty! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 09:57:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA12998 for dynarec-outgoing; Thu, 13 Apr 2000 09:57:06 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Emu Top 100 From: Michael Koenig In-Reply-To: <38F5718E.B330CC63@eurocopter.de> Message-Id: <000365272a6f305a_mailit@mailhub.rrze.uni-erlangen.de> References: <38F5718E.B330CC63@eurocopter.de> Date: Thu, 13 Apr 2000 18:37:00 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I agree, it's not a good situation. That's why I'm getting back into the >*writing* of emulators - I can do something useful. Which is more than the >other 99.999% of people out there in the "scene". :-/ Shit, I haven't written an emulator yet... -- M.I.Ke "I'd love to go out with you, but I'm converting my calendar watch from Julian to Gregorian." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 09:57:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA13015 for dynarec-outgoing; Thu, 13 Apr 2000 09:57:08 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: First SI summary From: Michael Koenig In-Reply-To: <200004131255.OAA10165@pons.ac.upc.es> Message-Id: <000365274b668428_mailit@mailhub.rrze.uni-erlangen.de> References: <200004131255.OAA10165@pons.ac.upc.es> Date: Thu, 13 Apr 2000 18:46:13 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> > I have thought a name: Invasores (Invaders in Spanish) but I think better >> > use one peoples agrees with. >> Well, there was a small vote some time ago and the name that won was >> "Space8". The name doesn't matter to me, though. >Ah. I forgot it. Oh, but I want a Spanish name ;)) I think "Invasores" sounds better! ;-) -- M.I.Ke Everybody is somebody else's weirdo. -- Dykstra --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 09:57:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA13010 for dynarec-outgoing; Thu, 13 Apr 2000 09:57:08 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: FWIW... From: Michael Koenig In-Reply-To: <38F5D086.23EF2105@eurocopter.de> Message-Id: <000365276afdaa76_mailit@mailhub.rrze.uni-erlangen.de> References: <38F41782.D1156933@eurocopter.de> <0003650dd8262e33_mailit@mailhub.rrze.uni-erlangen.de> <38F465F6.8E00829D@eurocopter.de> <000365120429d1ce_mailit@mailhub.rrze.uni-erlangen.de> <38F49A54.30BCDFC6@eurocopter.de> <00036512ae0ef1ce_mailit@mailhub.rrze.uni-erlangen.de> <38F56B86.D0C2273A@eurocopter.de> <0003651f33ef615d_mailit@mailhub.rrze.uni-erlangen.de> <38F5D086.23EF2105@eurocopter.de> Date: Thu, 13 Apr 2000 18:55:03 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Good. That means you can understand my whole humour level. :) Really? I doubt that... >The ironic thing is that at the time we were practising a new stance - >which allegedly stopped this sort of thing. But... nope. Remember, a swift >punch in the knackers (there we go, TRUE British slang) will often put you >on the floor. :o Too true... New German lesson ;-) The most precise translation of "knackers" will be "Nüsse" (lit. "nuts"), but you could also say "Eier" (lit. "eggs", Brit. "balls") or "Familienjuwelen" ("familiy treasure"). Do I have to mention that this is slang too? ;-) >Nor me. I've a feeling it's called a "Cricket box" in Britain, but I'm not >even sure about THAT! :o Makes sense since cricket balls should be hard. But what about bugby? >Thermal underwear? I'm not going to ask. ;) Nope, "Eier" (eggs) means "balls" in English. The "Eierwärmer" is a joke because you can have certain cloth to keep boild eggs warm ;-) -- M.I.Ke Man is the only animal that can remain on friendly terms with the victims he intends to eat until he eats them. -- Samuel Butler --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 09:57:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA13019 for dynarec-outgoing; Thu, 13 Apr 2000 09:57:09 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <002101bfa4d3$c809bf80$ce21883e@ben> Message-Id: <00036526ba194530_mailit@mailhub.rrze.uni-erlangen.de> References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <38F418D5.CB7B221@eurocopter.de> <0003650de00a03c1_mailit@mailhub.rrze.uni-erlangen.de> <004b01bfa4ad$5bba59a0$901d883e@ben> <000365159f472f39_mailit@mailhub.rrze.uni-erlangen.de> <002101bfa4d3$c809bf80$ce21883e@ben> Date: Thu, 13 Apr 2000 18:05:35 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I'd love to, I find the whole subject fascinating. The thing is, it's all a >tad pointless for a 3.5mhz CPU. On my P2-266 SpectrEm-DR uses about 5% of >the cpus power. Windows eats the other 95%? ;-) >If it was rewritten properly I think you could probably >halve that. When I benchmarked Z80, which is written in C, I think it >managed about 10% cpu usage at 3.5mhz. It just doesn't seem worth the effort >for CPUs that are intended to run at such teeny clock rates. Yeah, my opinion is still that using a dynarec for 8-bit CPUs doesn't help that much. The real speed increase should lie in 68K and RISC emulation. >Maybe I should write a NeoGeo emulator. They run their Z80s at 6mhz, don't >they? We might be able to get a worthwhile performance increase with that... Hmm, NeoGeo also also has a 68K and you and Neil want to write a dynarec for that one..., just an idea ;-) But can a dynarec be used for a secondary CPU that is used for sound? Sorry if this question should be a bit silly but I'm not into multi-processor systems, especially when the CPU is used for SFX. >Mind, saying that... Simplification is often advantageous. You need to >define a few simple terms, which are bound to be a bit inaccurate because >simple terms can't describe complex ideas, then you take your terms, and you >define them. This just seems to make more sense to me than having a million >different paragraph length descriptions for each and every possible >technique or idea ever. True, that's why we need new and better defined terminology. I just want to demonstrate how sloppy our current terms are. >Translation instead of compilation is an idea, I definately prefer translation, or more precise binary translation. Especially "static recompilation" sounds a bit weird, because you could also think of it as taking the original source code and "recompiling" it on a different platform. >though... only it doesn't allow the idea of repeated translation (support >for self-modification) to come in... NG's answer would be: "retranslation" ;-) >That's the one! It's a nice page, that. I found it very interesting. Thanks. The small page took more time to compile that it seems, but I felt there was lack of a good reference so I just created one. The greatest problem was to find all the info and the code. >So how >come you didn't describe the other dynarec cores as lazy code translators? I guess it's just because there aren't so many sources listed yet. In German school you learn that repetition of words is bad, so I didn't use the term "dynarec" or "dynamic recompiler" for every entry. If there would be more sources I might have reused "lazy translation" as well. >That was the reason I thought it was a specialist term, you see... Nope, it isn't (at least not that I know of). I could have written "on-demand translation" as well. But it's nice that you like the term ;-) -- M.I.Ke Yield to Temptation ... it may not pass your way again. -- Lazarus Long, "Time Enough for Love" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 09:57:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA13034 for dynarec-outgoing; Thu, 13 Apr 2000 09:57:11 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Grrrrr..... From: Michael Koenig In-Reply-To: <38F570DD.C3948D90@eurocopter.de> Message-Id: <0003652726957663_mailit@mailhub.rrze.uni-erlangen.de> References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <38F418D5.CB7B221@eurocopter.de> <0003650de00a03c1_mailit@mailhub.rrze.uni-erlangen.de> <004b01bfa4ad$5bba59a0$901d883e@ben> <000365159f472f39_mailit@mailhub.rrze.uni-erlangen.de> <38F570DD.C3948D90@eurocopter.de> Date: Thu, 13 Apr 2000 18:35:55 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I don't like Prolog either. OK, try a shorter "program" in any other language: s --> np, vp. np --> det, n. vp --> tv, n. det --> [the]. det --> [a]. n --> [dog]. n --> [cat]. tv --> [chases]. :- s([the,dog,chases,a,cat],[]). yes And I even didn't let it build a parse tree yet! ;-) -- M.I.Ke "They're unfriendly, which is fortunate, really. They'd be difficult to like." -- Avon --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 09:57:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA13038 for dynarec-outgoing; Thu, 13 Apr 2000 09:57:11 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Linux, functional languages, and toolchain theory... From: Michael Koenig In-Reply-To: Message-Id: <00036526ee549571_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Thu, 13 Apr 2000 18:20:11 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > supports all my hardware Not my soundcard: Yamaha Waveforce 192XG :-( Runs prefect with BeOS... > Documentation is somewhat spotty Documentation? > OS under constant development Didn't I read that above? ;-) > Netscape is extremely unstable (it crash this much in NT?) I haven't used it on Linux much, but it crashes often with HP-UX and on NT you often have to log out and in again because Netscape doesn't react to mouse clicks on links or keyboard commands anymore :-( > Don't think it supports any PCI soundcards yet See above :-( The other problem is that there are too many distributions which aren't that compatible as most think... Also I don't like monolithic kernels that much. BeOS shows the pros of a microkernel. >Functional Languages: >One of the two courses I took at UT was Intro to CS... taught in Haskell. >I passed that one by the skin of my teeth. That language must die, along >with all of it's children, parents, relatives, and acquaintances. I think Haskell is similar to Miranda and Gopher, which aren't that bad. These languages are good for rapid prototyping of small math algorithms, but certainly not for large scale (or even medium scale) projects. BTW, blame John McCarthy, who invented LISP, the first functional language. I even saw him once giving a talk about "Lemmings". The original topic should have been what knowledge for AI can be found when a program would be written that can solve the computer game Lemmings. But he ended up discussion certain levels with the audience... >While you're at it, get rid of BASIC and Pascal, please =P Some BASIC dialects aren't that bad. BBC BASIC even has a real inline assembler! And some BASIC compilers for the Atari ST were said to produce better code than most C compilers. Pascal is good to learn a bit about structued programming, but as soon as I knew C I thought you had to much typing work in Pascal. Who wants to write "BEGIN ... END" if "{ ... }" is enough? ;-) -- M.I.Ke "Life is like a buffet; it's not good but there's plenty of it." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 10:11:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA13104 for dynarec-outgoing; Thu, 13 Apr 2000 10:11:18 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 13 Apr 2000 10:11:17 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec terms votation In-Reply-To: <00036527473cc7eb_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >I was reading last night Marat's How to and I saw 'static recompilation'. > >But he was naming in fact 'static compilation'. The same happens when > >he says 'dynamic recompilation' but really is 'dynamic compilation'. > Even the "emulation god" Marat isn't perfect. That's very true, in addition to his coding style being highly unreadable and inefficient as hell. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 10:32:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA13196 for dynarec-outgoing; Thu, 13 Apr 2000 10:32:21 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Near 1000 Postings From: Michael Koenig In-Reply-To: <38F5EB8F.EFB1A69A@eurocopter.de> Message-Id: <0003652782f683e6_mailit@mailhub.rrze.uni-erlangen.de> References: <00036526600f6e04_mailit@mailhub.rrze.uni-erlangen.de> <38F5EB8F.EFB1A69A@eurocopter.de> Date: Thu, 13 Apr 2000 19:01:45 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Discuss something on-topic? ;)) Then could you please remind me what the topic was? ;-) -- M.I.Ke Horses are forbidden to eat fire hydrants in Marshalltown, Iowa. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 10:32:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA13204 for dynarec-outgoing; Thu, 13 Apr 2000 10:32:23 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Two things From: Michael Koenig In-Reply-To: <38F5F0CC.389ADADC@eurocopter.de> Message-Id: <00036527cf8d029a_mailit@mailhub.rrze.uni-erlangen.de> References: <00036526600f6e04_mailit@mailhub.rrze.uni-erlangen.de> <38F5EB8F.EFB1A69A@eurocopter.de> <38F5F0CC.389ADADC@eurocopter.de> Date: Thu, 13 Apr 2000 19:23:10 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Debugging a program in hex (not ASM but *HEX*) on a Sparc isn't fun. I've analyzed bootsector viruses on the Atari ST that way ;-) >But >one thing is: this is a really scary high-endian machine. I always though >that a real address such as 0034FED6 would be written like FED60034 in a >high-endian and like 3400D6FE in a low-endian (or something like that, I >can't be bothered remembering right now). But on this machine it's stored >as I'd write it - 0034FED6. Scary! Erm, you don't seem to know the difference between big and little endian... When you have the value 0034FED6 on the display then * big endian stores exactly that 0034FED6 * little endian stores D6FE3400 -- M.I.Ke One learns to itch where one can scratch. -- Ernest Bramah --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 10:47:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA13265 for dynarec-outgoing; Thu, 13 Apr 2000 10:47:51 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarec terms votation From: Michael Koenig In-Reply-To: Message-Id: <0003652829793a29_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Thu, 13 Apr 2000 19:48:19 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >[Marat] >That's very true, in addition to his coding style being highly unreadable >and inefficient as hell. Yeah, his 6502 core uses far too many macros and I don't even want to know about the Z80 core... -- M.I.Ke Food for thought is no substitute for the real thing. -- Walt Kelly, "Putluck Pogo" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 11:26:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA13403 for dynarec-outgoing; Thu, 13 Apr 2000 11:26:06 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Thu, 13 Apr 2000 06:36:51 -0700 (PDT) To: dynarec@synthcom.com Subject: DYNAREC: Marat cores, endianness, kernels, linux In-Reply-To: <0003652829793a29_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Most situations one hears about on the NES involving Marat's 6502 core run something like this: "Wrote a new CPU core to replace Marat's. Doubled the compatability list, removed CPU core from the top half of the profile." I'm not going to start on how crappy ines/unix is, as it would only get me in a bad mood =P Endianness: I believe you meant that, given the 32 bit value 003456FD, it would be stored like so: 0 1 2 3 memory address 00 34 56 FD MSB first FD 56 34 00 LSB first 34 00 FD 56 PDP order =) The usual way of describing these is how 'UNIX' would look after being read in from memory and written as a number. The possible outputs are UNIX MSB first XINU LSB first NUXI PDP Kernels Anyone able to enlighten me as to the supposed pros and cons of microkerneels and macrokernels? Linux distributions Redhat: nonstandard runtime environment anal-retentive package management package mechanism isn't all that simple new packages aren't always avaliable Debian: Fairly normal GNU environment package manager generally behaves as expected packages are cpio archives new packages are usually avaliable SuSE: never used Slackware: damn near impossible to upgrade steep learning curve manual package management Personally, my system is a bit of a hybrid between Debian and Slackware. I use the Slackware style if sources are easily avaliable and the package isn't too huge. (recompiling libc and gcc are not my idea of fun, did them once already) The first install I ever did was Slackware, but found out about upgrading when I tried going from kernel 1.2.13 to 2.0.x... gave up after 4 tries and got a nice copy of Redhat. Somewhere between RH3 and RH4 I developed a distaste for it, and moved to Debian. Haven't come across any showstopper annoyances yet... John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 14:27:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA14195 for dynarec-outgoing; Thu, 13 Apr 2000 14:27:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 13 Apr 2000 14:27:02 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Two things In-Reply-To: <00036527cf8d029a_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >one thing is: this is a really scary high-endian machine. I always though You mean big and little endian, not "high" and "low". > >that a real address such as 0034FED6 would be written like FED60034 in a > >high-endian and like 3400D6FE in a low-endian (or something like that, I > >can't be bothered remembering right now). But on this machine it's stored > >as I'd write it - 0034FED6. Scary! Um... no, it'd be more like d6fe3400 0034fed6 -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 15:49:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA14511 for dynarec-outgoing; Thu, 13 Apr 2000 15:49:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Marat cores, endianness, kernels, linux From: Michael Koenig In-Reply-To: Message-Id: <0003652c5c232373_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Fri, 14 Apr 2000 00:48:48 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Most situations one hears about on the NES involving Marat's 6502 core run >something like this: "Wrote a new CPU core to replace Marat's. Doubled the >compatability list, removed CPU core from the top half of the profile." >I'm not going to start on how crappy ines/unix is, as it would only get me >in a bad mood =P Hehe ;-) >Endianness: I believe you meant that, given the 32 bit value 003456FD, it >would be stored like so: >0 1 2 3 memory address >00 34 56 FD MSB first >FD 56 34 00 LSB first >34 00 FD 56 PDP order =) Yeah, I read that those Programmable Data Processors had a strange byte ordering... >The usual way of describing these is how 'UNIX' would look after being >read in from memory and written as a number. The possible outputs are >UNIX MSB first >XINU LSB first >NUXI PDP Haven't seen that example before but it's very nice ;-) >Kernels >Anyone able to enlighten me as to the supposed pros and cons of >microkerneels and macrokernels? The advantages of a microkernel are: * you don't have to recompile your kernel to add a primitive feature (Linux anyone?) * the microkernel only loads those extensions and drivers that you really need * you can change about any driver during runtime (the only thing in BeOS that cannot be changed without rebooting is the graphics driver) * since the microkernel only performs memory and process management, therefore the whole rest of the system (and that's quite a lot) has far better multi-tasking, unlike Unix where writing a large core file blocks the whole machine for a few seconds. The advantages of a macrokernel are probably that you are able to adapt it to what you need, which is about the only advantage I can think of. Please correct me if I should be wrong, but I certainly prefer microkernel systems. I liked that idea when I first heard how OS/9 works - no not Mac OS 9, but that old system by Microware. >Linux distributions >Redhat: nonstandard runtime environment > anal-retentive package management > package mechanism isn't all that simple > new packages aren't always avaliable I once tried a modified Redhat which wasn't that bad, but it was rather small (got it on a magazine CD) and was lacking XEmacs and LaTeX, so those things I normally use on Linux were missing... >Debian: Fairly normal GNU environment > package manager generally behaves as expected > packages are cpio archives > new packages are usually avaliable Isn't Debian even GNU only? I think that's why they didn't have KDE in the beginning. >SuSE: never used I think SuSE is the most popular in Germany, but they seem to have a very non -standard directory structure and even change that from distribution to distribution. Eg. they create the link to the X server in /var/X11R6/bin/X the Redhat derivate I tried had it as /etc/X Since configuration files like XF86Config and fstab are in /etc I think it's a good place to put the X server link. I wonder who came up with /var/X11R6/ bin/X? I guess the good thing about SuSE is the support. I never needed it direktly, but the have a good online database to find out which hardware is supported and where to find the drivers. >Slackware: damn near impossible to upgrade > steep learning curve > manual package management Nomen est omen? >Personally, my system is a bit of a hybrid between Debian and Slackware. I >use the Slackware style if sources are easily avaliable and the package >isn't too huge. (recompiling libc and gcc are not my idea of fun, did them >once already) The first install I ever did was Slackware, but found out >about upgrading when I tried going from kernel 1.2.13 to 2.0.x... gave up >after 4 tries and got a nice copy of Redhat. Somewhere between RH3 and >RH4 I developed a distaste for it, and moved to Debian. Haven't come >across any showstopper annoyances yet... So your recommendation would be Debian. I think it's even a relatively cheap distrubution. I mean, SuSE comes with 6 (in words six) CDs now and costs DEM 98 (about $49) and the update costs DEM 79 (about $40). I think even the BeOS upgrade isn't much more expensive, and that's certainly a commercial and not a "free" OS. Wait, the professional version of BeOS is commercial but the personal editon is free of course... -- M.I.Ke "Calvin Coolidge was the greatest man who ever came out of Plymouth Corner, Vermont." -- Clarence Darrow --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 16:01:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA14561 for dynarec-outgoing; Thu, 13 Apr 2000 16:01:05 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: DYNAREC: 1000 Postings From: Michael Koenig Message-Id: <0003652c864399e6_mailit@mailhub.rrze.uni-erlangen.de> Date: Fri, 14 Apr 2000 01:00:35 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com BTW, we crossed the mark of 1000 postings... Yeah, I know that senseless messages like this one help us to reach the 2000 mark even faster ;-) -- M.I.Ke Real Programs don't use shared text. Otherwise, how can they use functions for scratch space after they are finished calling them? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 16:02:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA14576 for dynarec-outgoing; Thu, 13 Apr 2000 16:02:27 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: DYNAREC: Linux Distributions From: Michael Koenig Message-Id: <0003652c94b77287_mailit@mailhub.rrze.uni-erlangen.de> Date: Fri, 14 Apr 2000 01:04:38 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com If you are fed up with all the different Linux distributions then you have to read about the BeDope Dstribution ;-) http://www.bedope.com/stories/0089.html And about obtaining and installing that distribution ;-) http://www.bedope.com/stories/0090.html -- M.I.Ke Your conscience never stops you from doing anything. It just stops you from enjoying it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 16:04:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA14586 for dynarec-outgoing; Thu, 13 Apr 2000 16:04:02 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: 1000 Postings Date: Thu, 13 Apr 2000 19:07:34 -0400 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: <8okcfskmtcc7kcurbhf7o55riafnq3ecee@4ax.com> References: <0003652c864399e6_mailit@mailhub.rrze.uni-erlangen.de> In-Reply-To: <0003652c864399e6_mailit@mailhub.rrze.uni-erlangen.de> X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Fri, 14 Apr 2000 01:00:35 +0200, Michael Koenig wrote: >BTW, we crossed the mark of 1000 postings... >Yeah, I know that senseless messages like this one help us to reach the 2000 >mark even faster ;-) You won't find me contributing to these off-topic postings. :) -- Jack ---- "Remember: The Internet, of course, is more than a place to find pictures of people having sex with dogs." - Time magazine, June 1995 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 16:18:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA14638 for dynarec-outgoing; Thu, 13 Apr 2000 16:18:31 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: 1000 Postings From: Michael Koenig In-Reply-To: <8okcfskmtcc7kcurbhf7o55riafnq3ecee@4ax.com> Message-Id: <0003652ca2941541_mailit@mailhub.rrze.uni-erlangen.de> References: <0003652c864399e6_mailit@mailhub.rrze.uni-erlangen.de> <8okcfskmtcc7kcurbhf7o55riafnq3ecee@4ax.com> Date: Fri, 14 Apr 2000 01:08:30 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >You won't find me contributing to these off-topic postings. :) Then the sentence above is a paradoxon ;-) -- M.I.Ke Real programmers disdain structured programming. Structured programming is for compulsive neurotics who were prematurely toilet- trained. They wear neckties and carefully line up pencils on otherwise clear desks. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 16:22:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA14654 for dynarec-outgoing; Thu, 13 Apr 2000 16:22:01 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <008001bfa59f$25beaf20$4e33883e@ben> From: "Andrew Davidson" To: References: <38F41782.D1156933@eurocopter.de> <0003650dd8262e33_mailit@mailhub.rrze.uni-erlangen.de> <38F465F6.8E00829D@eurocopter.de> <000365120429d1ce_mailit@mailhub.rrze.uni-erlangen.de> <38F49A54.30BCDFC6@eurocopter.de> <00036512ae0ef1ce_mailit@mailhub.rrze.uni-erlangen.de> <38F56B86.D0C2273A@eurocopter.de> Subject: Re: DYNAREC: FWIW... Date: Thu, 13 Apr 2000 23:34:47 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > >But the "Erotik Messe" is now on. I may have to go along - just for > > >research purposes, obviously. :)) > > > > Research, on what topic? > > Erm... I'm not going to touch that one with a 9ft barge-pole. :) 9 FEET?!? My my... quite an ego you've got there, Neil! ;) Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 16:22:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA14666 for dynarec-outgoing; Thu, 13 Apr 2000 16:22:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <008101bfa59f$272e6bc0$4e33883e@ben> From: "Andrew Davidson" To: References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <38F418D5.CB7B221@eurocopter.de> <0003650de00a03c1_mailit@mailhub.rrze.uni-erlangen.de> <004b01bfa4ad$5bba59a0$901d883e@ben> <000365159f472f39_mailit@mailhub.rrze.uni-erlangen.de> <002101bfa4d3$c809bf80$ce21883e@ben> <00036526ba194530_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Grrrrr..... Date: Fri, 14 Apr 2000 00:16:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >I'd love to, I find the whole subject fascinating. The thing is, it's all a > >tad pointless for a 3.5mhz CPU. On my P2-266 SpectrEm-DR uses about 5% of > >the cpus power. > > Windows eats the other 95%? ;-) I wouldn't know, because I never actually thought about this before! The profiler assumes it's got the CPU all to itself, and just ignores background tasks like windows. I wonder how many extra % I could shave off the thing by actually trying to run it in proper DOS... > >If it was rewritten properly I think you could probably > >halve that. When I benchmarked Z80, which is written in C, I think it > >managed about 10% cpu usage at 3.5mhz. It just doesn't seem worth the effort > >for CPUs that are intended to run at such teeny clock rates. > > Yeah, my opinion is still that using a dynarec for 8-bit CPUs doesn't help > that much. The real speed increase should lie in 68K and RISC emulation. Yep. I'm even a bit worried about the performance gain for a 68k. A 12mhz machine (NeoGeo, possibly CPS1, some of the taito stuff) would probably start to be worth the effort. A 20+mhz 32bit RISC CPU, of course, would just zoom along! > >Maybe I should write a NeoGeo emulator. They run their Z80s at 6mhz, don't > >they? We might be able to get a worthwhile performance increase with that... > > Hmm, NeoGeo also also has a 68K and you and Neil want to write a dynarec for > that one..., just an idea ;-) > But can a dynarec be used for a secondary CPU that is used for sound? Sorry > if this question should be a bit silly but I'm not into multi-processor > systems, especially when the CPU is used for SFX. Try downloading the 0.37b1 release of EMU+ (MAME with a built in overclocker). I played around with underclocking the NeoGeo CPU, and the only effect you get is that the sound goes just like it does if your CPU isn't powerful enough to keep up with the game and the frame rate starts to drop below 40ish fps. Everything seems a bit drawn out, but it works fine. However, when I tried the same with the Williams hardware (Narc, T2, MK, etc.) it reset the machine almost instantly. The ROM code seems to be very picky about getting correctly timed responses from the sound CPUs. I'm not sure how accurate it needs to be, but half a mhz was enough to cause the reset (and this may help to explain the distinct lack of the rumoured dynarec Williams emulator, that and the fact that someone had added an extra '0' onto the end of the TMS CPUs clock speed at some stage!). Given that I reckon that two transpiled (for want of a better word!) CPUs aren't likely to get out of sync by more than a few hundred cycles, there shouldn't be any problems at all. If there are, it's always possible to put in opcode by opcode cycle checkers, although that will impact performance pretty nastily. That sort of thing is another reason SpectrEm-DR's Z80 took up 5% of my CPU resources... > >Mind, saying that... Simplification is often advantageous. You need to > >define a few simple terms, which are bound to be a bit inaccurate because > >simple terms can't describe complex ideas, then you take your terms, and you > >define them. This just seems to make more sense to me than having a million > >different paragraph length descriptions for each and every possible > >technique or idea ever. > > True, that's why we need new and better defined terminology. I just want to > demonstrate how sloppy our current terms are. Indeed they are, but they're short and sharp and make up really cool sounding buzzwords! 'Dynarec' rolls off the tongue a lot more easily than "Native machine code emitting binary translator" ;) If we started calling it that, we'd have to stop being l33t, d00d, and we all know what a tragedy that would be for emulation... > >Translation instead of compilation is an idea, > > I definately prefer translation, or more precise binary translation. > Especially "static recompilation" sounds a bit weird, because you could also > think of it as taking the original source code and "recompiling" it on a > different platform. Yes, "static recompilation" has always bothered me. It's all a bit oxymoronic, really. If you're going to do a one off compile, you can hardly start recompiling self-modified code, because that's dynamic. > >though... only it doesn't allow the idea of repeated translation (support > >for self-modification) to come in... > > NG's answer would be: "retranslation" ;-) Indeed, I think it was when we discussed this point. However, we both quickly decided that "retranslation" was a cruddy description, because... erm... I've forgotten. Neil? Why did we decide it was a cruddy description? > >That's the one! It's a nice page, that. I found it very interesting. > > Thanks. The small page took more time to compile that it seems, but I felt > there was lack of a good reference so I just created one. The greatest > problem was to find all the info and the code. I'll bet it took bloody ages! Resources on the net are few and far between, unfortunately. Does this group have a FAQ or anything, because that page would be an excellent starting point for new joiner-upers. And I'd be able to find it more easily the next time I lose the URL! ;) > >So how > >come you didn't describe the other dynarec cores as lazy code translators? > > I guess it's just because there aren't so many sources listed yet. > In German school you learn that repetition of words is bad, so I didn't use > the term "dynarec" or "dynamic recompiler" for every entry. If there would be > more sources I might have reused "lazy translation" as well. Ah, right. Fair enough. > >That was the reason I thought it was a specialist term, you see... > > Nope, it isn't (at least not that I know of). I could have written "on-demand > translation" as well. But it's nice that you like the term ;-) Indeed I do! :) > -- > M.I.Ke Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 16:27:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA14689 for dynarec-outgoing; Thu, 13 Apr 2000 16:27:25 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: 1000 Postings Date: Thu, 13 Apr 2000 19:30:59 -0400 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: <0003652c864399e6_mailit@mailhub.rrze.uni-erlangen.de> <8okcfskmtcc7kcurbhf7o55riafnq3ecee@4ax.com> <0003652ca2941541_mailit@mailhub.rrze.uni-erlangen.de> In-Reply-To: <0003652ca2941541_mailit@mailhub.rrze.uni-erlangen.de> X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Fri, 14 Apr 2000 01:08:30 +0200, Michael Koenig wrote: >>You won't find me contributing to these off-topic postings. :) > >Then the sentence above is a paradoxon ;-) As it was meant to be. :p >Real programmers disdain structured programming. Structured >programming is for compulsive neurotics who were prematurely toilet- >trained. They wear neckties and carefully line up pencils on otherwise >clear desks. I think you should change your .sig to: "Beginning programmers..." After 20 years of programming, of dealing with other people's tossed of hacks, and of returning to code I've previously written, the use of structured programming techniques and of anally self documenting code is now the only way I'll program. I can show you some old assembly code where one function runs to about 10 pages and bx is set somewhere in the middle of the first page and then not used until the next to last page. That I will never do again. -- Jack ---- The road to truth and enlightenment is long... be sure to bring a snack and something to drink - Seen on a bumper sticker --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 17:11:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id RAA14871 for dynarec-outgoing; Thu, 13 Apr 2000 17:11:50 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <008101bfa59f$272e6bc0$4e33883e@ben> Message-Id: <0003652d87da60a4_mailit@mailhub.rrze.uni-erlangen.de> References: <38F2D508.D532B576@eurocopter.de> <007701bfa409$0675af20$6d1f883e@ben> <38F418D5.CB7B221@eurocopter.de> <0003650de00a03c1_mailit@mailhub.rrze.uni-erlangen.de> <004b01bfa4ad$5bba59a0$901d883e@ben> <000365159f472f39_mailit@mailhub.rrze.uni-erlangen.de> <002101bfa4d3$c809bf80$ce21883e@ben> <00036526ba194530_mailit@mailhub.rrze.uni-erlangen.de> <008101bfa59f$272e6bc0$4e33883e@ben> Date: Fri, 14 Apr 2000 02:12:37 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yep. I'm even a bit worried about the performance gain for a 68k. A 12mhz >machine (NeoGeo, possibly CPS1, some of the taito stuff) would probably >start to be worth the effort. The performance gain for 68k should be quite good since you are able to predecode the big endian immediates and addresses. >A 20+mhz 32bit RISC CPU, of course, would just zoom along! Indeed ;-) >Try downloading the 0.37b1 release of EMU+ (MAME with a built in >overclocker). I played around with underclocking the NeoGeo CPU, and the >only effect you get is that the sound goes just like it does if your CPU >isn't powerful enough to keep up with the game and the frame rate starts to >drop below 40ish fps. Everything seems a bit drawn out, but it works fine. It seems that 16-bit systems aren't that timing sensitive. >However, when I tried the same with the Williams hardware (Narc, T2, MK, >etc.) it reset the machine almost instantly. The ROM code seems to be very >picky about getting correctly timed responses from the sound CPUs. I'm not >sure how accurate it needs to be, but half a mhz was enough to cause the >reset Guess why NB makes his dynarec so timing sensitive ;-) >(and this may help to explain the distinct lack of the rumoured >dynarec Williams emulator, that and the fact that someone had added an extra >'0' onto the end of the TMS CPUs clock speed at some stage!). TMS? I thought the Williams system had a 6809. >Given that I reckon that two transpiled (for want of a better word!) CPUs >aren't likely to get out of sync by more than a few hundred cycles, there >shouldn't be any problems at all. If there are, it's always possible to put >in opcode by opcode cycle checkers, although that will impact performance >pretty nastily. I think NB's solution is quite good. The test if you have a cycle timer underflow only needs one clock cycle per instruction, and the following conditional jump to the instruction specific return code should be sorted out completely by the branch predictor anyway! >Indeed they are, but they're short and sharp and make up really cool >sounding buzzwords! 'Dynarec' rolls off the tongue a lot more easily than >"Native machine code emitting binary translator" ;) That's the reason why I still use that term, and because it's already well- esablished. >Yes, "static recompilation" has always bothered me. It's all a bit >oxymoronic, really. If you're going to do a one off compile, you can hardly >start recompiling self-modified code, because that's dynamic. That's because "recompiling" is often used in the sense of "recompile" a binary on a different platform, than NG's interpretation of "repetetive translation". Another reason why I don't like putting to much sense on that prefix "re" because three are two totally different interpretations. >I'll bet it took bloody ages! Not ages, but surely months... >Resources on the net are few and far between, unfortunately. Yeah, and you still have to sieve the good ones and leave the bad behind. When I now do a search for "dynamic recompilation" on Altavista or any other search engine I know about 95% of the listed links. >Does this group have a FAQ or anything, because that page >would be an excellent starting point for new joiner-upers. And I'd be able >to find it more easily the next time I lose the URL! ;) We don't have one yet, but I might write one when I'm very bored... I think I already know someone who can do a Spanish version ;-) -- M.I.Ke Time flies like an arrow Fruit flies like a banana --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 17:25:00 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id RAA14917 for dynarec-outgoing; Thu, 13 Apr 2000 17:24:59 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: 1000 Postings From: Michael Koenig In-Reply-To: Message-Id: <0003652db8035174_mailit@mailhub.rrze.uni-erlangen.de> References: <0003652c864399e6_mailit@mailhub.rrze.uni-erlangen.de> <8okcfskmtcc7kcurbhf7o55riafnq3ecee@4ax.com> <0003652ca2941541_mailit@mailhub.rrze.uni-erlangen.de> Date: Fri, 14 Apr 2000 02:26:05 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >>Then the sentence above is a paradoxon ;-) >As it was meant to be. :p That's what I thought. >I think you should change your .sig to: "Beginning programmers..." Actually my mailer takes these lines from a fortunes file so even I don't know what it says until I receive my copy. >After 20 years of programming, of dealing with other people's tossed >of hacks, and of returning to code I've previously written, the use of >structured programming techniques and of anally self documenting code >is now the only way I'll program. Can help sometimes ;-) >I can show you some old assembly code where one function runs to about >10 pages and bx is set somewhere in the middle of the first page and >then not used until the next to last page. That I will never do again. I took a look at my ST virus killer (written in 68K assembler) some time ago and in some parts I really wasn't sure what I must have thought when I programmed it. >Jack -- M.I.Ke Beware of computerized fortune-tellers! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 13 18:01:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id SAA15048 for dynarec-outgoing; Thu, 13 Apr 2000 18:01:39 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: tarquin@austin.rr.com Date: Thu, 13 Apr 2000 13:12:31 -0700 (PDT) To: dynarec@synthcom.com Subject: Re: DYNAREC: Marat cores, endianness, kernels, linux In-Reply-To: <0003652c5c232373_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Fri, 14 Apr 2000, Michael Koenig wrote: > >UNIX MSB first > >XINU LSB first > >NUXI PDP > > Haven't seen that example before but it's very nice ;-) I don't quite remember where I saw it, I know I've seen it referred to in the Jargon file... > The advantages of a microkernel are: > * you don't have to recompile your kernel to add a primitive feature (Linux > anyone?) Now that Linux supports modules most of these have gone away =) > * the microkernel only loads those extensions and drivers that you really > need my printer port, sound card, network card, and the fat FS modules tend to stay loaded. The scsi subsystem only loads when I burn =P > * you can change about any driver during runtime (the only thing in BeOS that > cannot be changed without rebooting is the graphics driver) Haven't quite checked up on everything, but almost all of the main kernel drivers can be compiled as modules. If you use an initial ramdisk image, you can even make the drivers for the root disk and root filesystem as modules... > * since the microkernel only performs memory and process management, > therefore the whole rest of the system (and that's quite a lot) has far > better multi-tasking, unlike Unix where writing a large core file blocks the > whole machine for a few seconds. True, but I wouldn't exactly want the HD drivers getting interrupted to keep other processes running... It also depends on the magnitude of the writes, pine had a nasty habit of holding up one CPU while it dealt with a 30MB mailbox... > The advantages of a macrokernel are probably that you are able to adapt it to > what you need, which is about the only advantage I can think of. I believe part of the argument was that things could be more tightly integrated, leading to performance increases... > Please correct me if I should be wrong, but I certainly prefer microkernel > systems. I liked that idea when I first heard how OS/9 works - no not Mac OS > 9, but that old system by Microware. Not familiar with this one... > >Debian: Fairly normal GNU environment > > package manager generally behaves as expected > > packages are cpio archives > > new packages are usually avaliable > > Isn't Debian even GNU only? I think that's why they didn't have KDE in the > beginning. Debian does get a bit anal about using only free software. They do however provide the packages for them, but they have to live in a seperate tree on the main server. > So your recommendation would be Debian. I think it's even a relatively cheap > distrubution. All distributions are cheap =) Most all of them offer the expensive versions, that come with manuals, full phone support, etc. Cheapbytes (www.cheapbytes.com) usually has somethign in the $2-8 range avaliable, and all of them allow you to download it if you are so inclined. Other than that, Debian's install was fairly painless, my issues with them usually occur because I have that (un?)healthy C programmer habit of wanting to screw with everything down to the last bit. Software wise, Linux has an edge on the games thanks to Loki. I don't believe they officially support the BSD flavors, and their current list of completed ports runs Civilization: Call to Power Myth 2 Railroad Tycoon 2 Some Solitaire game Heretic 2 Heroes 3 Quake 3 Arena Heavy Gear 2 and they have SimCity 3000 on the way... They're doing wonders for the normal usability... the big software packages only target the machines with games, the games only go to the machines with low end users, the low end users stick to doze... now we have games for the machines with high end users =) > I mean, SuSE comes with 6 (in words six) CDs now and costs DEM 98 (about $49) > and the update costs DEM 79 (about $40). I think even the BeOS upgrade isn't > much more expensive, and that's certainly a commercial and not a "free" OS. > Wait, the professional version of BeOS is commercial but the personal editon > is free of course... I got RedHat on 6 CD's once, usually those packs are one or two for the main OS install, then freezes of metalab.unc.edu, xfree86.org, kernel.org, etc... > -- > M.I.Ke > > "Calvin Coolidge was the greatest man who ever came out of Plymouth > Corner, Vermont." > -- Clarence Darrow John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 00:52:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA16088 for dynarec-outgoing; Fri, 14 Apr 2000 00:52:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 14 Apr 2000 00:52:18 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Two things In-Reply-To: <38F5F0CC.389ADADC@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Debugging a program in hex (not ASM but *HEX*) on a Sparc isn't fun. But > one thing is: this is a really scary high-endian machine. I always though > that a real address such as 0034FED6 would be written like FED60034 in a > high-endian and like 3400D6FE in a low-endian (or something like that, I > can't be bothered remembering right now). But on this machine it's stored > as I'd write it - 0034FED6. Scary! Again, you mean big endian/little endian. ;-) I don't recall any of the work I did on the Sparc causing this kind of grief. Are you sure it isn't the debugger playing tricks on you? -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 01:04:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA16124 for dynarec-outgoing; Fri, 14 Apr 2000 01:04:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 14 Apr 2000 01:04:19 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs In-Reply-To: <0003652d87da60a4_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >only effect you get is that the sound goes just like it does if your CPU > >isn't powerful enough to keep up with the game and the frame rate starts to > >drop below 40ish fps. Everything seems a bit drawn out, but it works fine. > It seems that 16-bit systems aren't that timing sensitive. You shouldn't make statements like that! ;-) Timing sensitivty has zero connection with the "bitness" of the CPU - it's ENTIRELY software and architecture dependent. Well over half of the Genesis games are timing critical. You'll cause sprites to appear, disappear, and flicker if you get off by so much as a cycle! Same deal with the Atari System 1 games like Marble Madness, Road Blasters, and Toobin' especially (well, it's not system 1 but still has the same issue). I don't know what this "overclocking" thing is for MAME, but it's a horrid name. In Retrocade if we want to increase the framerate we can just increase it, but it doesn't change any of the internal clocking or timing. > >etc.) it reset the machine almost instantly. The ROM code seems to be very > >picky about getting correctly timed responses from the sound CPUs. I'm not > >sure how accurate it needs to be, but half a mhz was enough to cause the > Guess why NB makes his dynarec so timing sensitive ;-) Bingo. Because in almost all cases its needed. And after I get to the point of doing optimization on the core, I'll put in a little option that'll allow the code to group them together for increased (but less accurate) timing efficiency. > >(and this may help to explain the distinct lack of the rumoured > >dynarec Williams emulator, that and the fact that someone had added an extra > >'0' onto the end of the TMS CPUs clock speed at some stage!). > TMS? I thought the Williams system had a 6809. The question is *WHICH* Williams set of games? If you're talking the early really good ones like Joust, Robotron, etc... they're all 6809 based. IF you're talking about Mortal Kombat, Smash TV, etc... that's the TMS 34010. FWIW, I have seen and worked a bit with the author of the dynarec 34010 emulator. He and I had completely different philosophies on how to do dynamic recompilation, so we went our separate ways. I didn't like the "assemble the preassembled blocks" approach. I still don't. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 01:15:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA16183 for dynarec-outgoing; Fri, 14 Apr 2000 01:15:27 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004140816.KAA07995@pons.ac.upc.es> Subject: Re: DYNAREC: Near 1000 Postings In-Reply-To: <0003652782f683e6_mailit@mailhub.rrze.uni-erlangen.de> from Michael Koenig at "Apr 13, 2000 07:01:45 pm" To: dynarec@synthcom.com Date: Fri, 14 Apr 2000 10:16:57 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Discuss something on-topic? ;)) > > Then could you please remind me what the topic was? ;-) > I think was SF books ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 01:15:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA16192 for dynarec-outgoing; Fri, 14 Apr 2000 01:15:53 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004140814.KAA26466@pons.ac.upc.es> Subject: Re: DYNAREC: Linux, functional languages, and toolchain theory... In-Reply-To: <38F5EF84.5319C780@eurocopter.de> from Neil Griffiths at "Apr 13, 2000 06:02:12 pm" To: dynarec@synthcom.com Date: Fri, 14 Apr 2000 10:14:20 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > > And more, in Spain piracy is the rule, and I still don't know if I like it > > > > or not :o > > > > > > Hmm... > > > > I don't know what you mean ... > > Well, I don't completely agree with piracy - and I'm not completely behind > it. I'm all for *selective* piracy. :) > > Anyway, speaking as someone into emulation, I can't really say "I'm against > all piracy and it should be wiped out". I may, or may not have ROMs which I > theoretically shouldn't have. Maybe. I'm not going to commit myself one way > or the other on a public mailing list. ;) > > I don't go for pirated programs - stuff under 1-2 years old. I buy it. > Generally. I have had copied programs before now - but if I use them on > even a semi-regular basis, I buy them. It's only fair. Besides, games is > the business I'm trying to get into. So if I don't support it myself, how > can I expect others to? :o > I think something similar. If I have the money and the program it's good enough it must be bought, if not ... ;) What happens that I usually I don't have the money ... :o BTW sometimes I think the companies are selling the programs at a too high price (using piracy as an excuse), and most of times the beneficies are most for companies than for programmers, developers, etc. > When you get to Amiga vs PC, I have to wonder if this didn't die years ago > - this is the first I've heard about it in years. It's stupid to argue > about machines because each has it's own benefits and disadvantages. It > isn't the case with Pascal and C - C can do everything that Pascal can - > but not vice-versa. > As Amiga died it's dead. > > > Me too. I used to have a Multiface II for my CPC. Basically a hardware > > > debugger. Ah, it was great. =) > > > > :) > > What did you have before a PC - or was a PC your first computer (I think I > remember you saying this)? > A heavy powerful multipurpose Sinclair ZX81 ;) A text based (I can't call graphics something made with 0.5 cm dots/squares) computer. It uses a Z80 processor, BASIC, 1KB with a 16KB expansion, keyboard integrated. It resembles a bit a PDU in size, it was really small, but you still need a screen. But as it was hard to play with it, I was too young (around ten years) I just learn a bit of Basic with it. And I have a lot of problems saving programs in a cassette so I couldn't write large programs, just turn on it, writing a small program and try it. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 01:16:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA16201 for dynarec-outgoing; Fri, 14 Apr 2000 01:16:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004140816.KAA11445@pons.ac.upc.es> Subject: Re: DYNAREC: First SI summary In-Reply-To: <000365274b668428_mailit@mailhub.rrze.uni-erlangen.de> from Michael Koenig at "Apr 13, 2000 06:46:13 pm" To: dynarec@synthcom.com Date: Fri, 14 Apr 2000 10:16:21 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >> > I have thought a name: Invasores (Invaders in Spanish) but I think > better > >> > use one peoples agrees with. > >> Well, there was a small vote some time ago and the name that won was > >> "Space8". The name doesn't matter to me, though. > >Ah. I forgot it. Oh, but I want a Spanish name ;)) > > I think "Invasores" sounds better! ;-) > Hehe, I agree. It sounds just cool ;) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 01:18:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA16210 for dynarec-outgoing; Fri, 14 Apr 2000 01:18:01 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004140821.KAA19476@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec terms votation In-Reply-To: from Neil Bradley at "Apr 13, 2000 10:11:17 am" To: dynarec@synthcom.com Date: Fri, 14 Apr 2000 10:21:09 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > >I was reading last night Marat's How to and I saw 'static recompilation'. > > >But he was naming in fact 'static compilation'. The same happens when > > >he says 'dynamic recompilation' but really is 'dynamic compilation'. > > Even the "emulation god" Marat isn't perfect. > > That's very true, in addition to his coding style being highly unreadable > and inefficient as hell. > I agree with you. The first time I started to learn about emulation I tried to read that ugly Marat's Z80 core and I couldn't. But later, when I found your MZ80 core it was so clear (helping that I knew well x86 assembler) I undertood it really fast and easyly. I really can say you have helped me learn about emulation. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 01:23:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA16222 for dynarec-outgoing; Fri, 14 Apr 2000 01:23:42 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004140826.KAA28957@pons.ac.upc.es> Subject: Re: DYNAREC: Marat cores, endianness, kernels, linux In-Reply-To: from "tarquin@austin.rr.com" at "Apr 13, 2000 01:12:31 pm" To: dynarec@synthcom.com Date: Fri, 14 Apr 2000 10:26:45 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com About microkernels: I did a subject in my unversity last year about advanced OS technologies and they talked a lot about microkernels. I don't really know about Linux. But microkernels has a lot of sense for multiprocessors computers, the new tendences seems to something called exokernels, what in fact means that there isn't OS at all, only different modules being loaded at application level. It is because when you are in OS level (or privileged level) the execution has to become serialized, so if you want use all the processors what you have to do is make the OS (privileged level) as thin as possible. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 01:25:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA16234 for dynarec-outgoing; Fri, 14 Apr 2000 01:25:34 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004140828.KAA11354@pons.ac.upc.es> Subject: Re: DYNAREC: 1000 Postings In-Reply-To: <8okcfskmtcc7kcurbhf7o55riafnq3ecee@4ax.com> from Jack at "Apr 13, 2000 07:07:34 pm" To: dynarec@synthcom.com Date: Fri, 14 Apr 2000 10:28:12 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > On Fri, 14 Apr 2000 01:00:35 +0200, Michael Koenig > wrote: > > >BTW, we crossed the mark of 1000 postings... > >Yeah, I know that senseless messages like this one help us to reach the 2000 > >mark even faster ;-) > > You won't find me contributing to these off-topic postings. :) Then why you don't contribute with some on-topic postings ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 02:27:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA16512 for dynarec-outgoing; Fri, 14 Apr 2000 02:27:49 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Dynarecs Date: Fri, 14 Apr 2000 10:25:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > >only effect you get is that the sound goes just like it does if your CPU > > >isn't powerful enough to keep up with the game and the frame rate starts to > > >drop below 40ish fps. Everything seems a bit drawn out, but it works fine. > > It seems that 16-bit systems aren't that timing sensitive. > > You shouldn't make statements like that! ;-) > > Timing sensitivty has zero connection with the "bitness" of the CPU - it's > ENTIRELY software and architecture dependent. Well over half of the > Genesis games are timing critical. You'll cause sprites to appear, > disappear, and flicker if you get off by so much as a cycle! > > Same deal with the Atari System 1 games like Marble Madness, Road > Blasters, and Toobin' especially (well, it's not system 1 but still has > the same issue). Indeed. As I mentioned, the Midway games just keel over if the timing is out. However, the more modern the machine, the greater chance they were designed to be a bit more stable than that. > I don't know what this "overclocking" thing is for MAME, but it's a horrid > name. In Retrocade if we want to increase the framerate we can just > increase it, but it doesn't change any of the internal clocking or timing. Overclocking has nothing to do with the framerate. A game that runs at 60fps will still run at 60fps if you double, triple, or quadruple the core CPU speeds, because you'll be doubling, tripling, or quadrupling all the interupt periods. As most games sync off the vblank interrupt you shouldn't see any difference in performance, except that the game runs at full speed the whole of the time. Metal Slug X on the NeoGeo is ideal for this sort of thing, because it's chucking so many sprites around that it slows down something chronic the second you get hold of a nice destructive weapon like the rocket launcher. With a faster CPU it can manage all those sprites without a loss of game speed. Of course, you'll always get a few shoddily coded games that use slowdown loops and rely on the CPUs clock rate for timing, but, given that pretty much all of the 16bit and up games in MAME come with CPU skippers, I'd say they're few and far between. > > >etc.) it reset the machine almost instantly. The ROM code seems to be very > > >picky about getting correctly timed responses from the sound CPUs. I'm not > > >sure how accurate it needs to be, but half a mhz was enough to cause the > > Guess why NB makes his dynarec so timing sensitive ;-) > > Bingo. Because in almost all cases its needed. And after I get to the > point of doing optimization on the core, I'll put in a little option > that'll allow the code to group them together for increased (but less > accurate) timing efficiency. In almost all of the older (hence 8bit) machines accuracy is needed. SpectrEm-DR does t-state exact timing with its Z80 because the almost all software written for the Spectrum relied on the CPU running at *exactly* 3.5mhz. Based on the fiddling I've done with EMU+ most of the late 80s and onwards games can cope quite admirably with half megahertz changes in CPU speeds, so being out by a few hundred cycles shouldn't do any damage at all. For compatibilities sake, a cycle exact timing method is definately useful. If you want compatibility with an 8-bit CPU, though, some sort of self-modifying code handling is going to be needed, and if you're going to code a cycle exact self-modification capable Z80 you might as well do it in assembler as an interpreted core. A 68k version would be cool, though. It'd certainly do the various Amiga, ST, and MegaDrive emulators a power of good... > > >(and this may help to explain the distinct lack of the rumoured > > >dynarec Williams emulator, that and the fact that someone had added an extra > > >'0' onto the end of the TMS CPUs clock speed at some stage!). > > TMS? I thought the Williams system had a 6809. > > The question is *WHICH* Williams set of games? If you're talking the early > really good ones like Joust, Robotron, etc... they're all 6809 based. IF > you're talking about Mortal Kombat, Smash TV, etc... that's the TMS 34010. I'm talking about the later ones, yes. I ought to point out that if I ever start wittering on about potential compiled core candidates I'm probably discussing anything after around about 1987... > FWIW, I have seen and worked a bit with the author of the dynarec 34010 > emulator. He and I had completely different philosophies on how to do > dynamic recompilation, so we went our separate ways. I didn't like the > "assemble the preassembled blocks" approach. I still don't. Assemble the preassembled blocks? How's that work, then? > -->Neil Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:03:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16582 for dynarec-outgoing; Fri, 14 Apr 2000 03:03:23 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004141006.MAA14082@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarecs In-Reply-To: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> from Andrew Davidson at "Apr 14, 2000 10:25:04 am" To: dynarec@synthcom.com Date: Fri, 14 Apr 2000 12:06:02 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Overclocking has nothing to do with the framerate. A game that runs at 60fps > will still run at 60fps if you double, triple, or quadruple the core CPU > speeds, because you'll be doubling, tripling, or quadrupling all the > interupt periods. As most games sync off the vblank interrupt you shouldn't > see any difference in performance, except that the game runs at full speed > the whole of the time. Metal Slug X on the NeoGeo is ideal for this sort of > thing, because it's chucking so many sprites around that it slows down > something chronic the second you get hold of a nice destructive weapon like > the rocket launcher. With a faster CPU it can manage all those sprites > without a loss of game speed. There are some SNES games which needs such overclocking too ;) This idea of overclocking remembers another one. Emulation can be used not only to recreate old computer systems but also to create new ones. For example you could mix characteristhics of varius systems in a single emulator. But it isn't so useful at all, because I think noone would program with those 'irreal' systems. But perhaps it can be interesting just for test it. > assembler as an interpreted core. A 68k version would be cool, though. It'd > certainly do the various Amiga, ST, and MegaDrive emulators a power of > good... > Oh well, I think there are now a lot of people building a M86k dynarec core ;) Neil Bradley is perhaps interested, Neil Griffiths wants also, I think Tom Seddon it's working in one and I also have to build one. Who knows, perhaps the Generator author will end his own. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:10:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16609 for dynarec-outgoing; Fri, 14 Apr 2000 03:10:40 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> Message-Id: <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> Date: Fri, 14 Apr 2000 12:08:34 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >A 68k version would be cool, though. It'd >certainly do the various Amiga, ST, and MegaDrive emulators a power of >good... I'd really like to see a dynarec ST emulator ;-) >Assemble the preassembled blocks? How's that work, then? Take a look at NEStra eg. There you have a a file which looks a bit like an assembly optimised interpretive core, but it has some blanks (or zeros). This file is run through the assembler when the emulator is compiled. During runtime the compiler takes a specific code template according to the found opcode, copies the whole code to the translation cache and patches the blanks to reflect the current instruction arguments - disgusting! -- M.I.Ke Celebrate Hannibal Day this year. Take an elephant to lunch. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:10:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16610 for dynarec-outgoing; Fri, 14 Apr 2000 03:10:40 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Near 1000 Postings From: Michael Koenig In-Reply-To: <200004140816.KAA07995@pons.ac.upc.es> Message-Id: <00036535e307e059_mailit@mailhub.rrze.uni-erlangen.de> References: <200004140816.KAA07995@pons.ac.upc.es> Date: Fri, 14 Apr 2000 12:10:46 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I think was SF books ;) Great, I'm just half through the second book of the new Han Solo trilogy... ; -) -- M.I.Ke "Last night, I came home and realized that everything in my apartment had been stolen and replaced with an exact duplicate. I told this to my friend -- he said, `Do I know you?'" -- Steven Wright --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:10:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16620 for dynarec-outgoing; Fri, 14 Apr 2000 03:10:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: 1000 Postings From: Michael Koenig In-Reply-To: <200004140828.KAA11354@pons.ac.upc.es> Message-Id: <00036535e67dde36_mailit@mailhub.rrze.uni-erlangen.de> References: <200004140828.KAA11354@pons.ac.upc.es> Date: Fri, 14 Apr 2000 12:11:44 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Then why you don't contribute with some on-topic postings ;) Great idea! Some other lurkers could do that as well ;-) -- M.I.Ke First Law of Socio-Genetics: Celibacy is not hereditary. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:12:00 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16628 for dynarec-outgoing; Fri, 14 Apr 2000 03:12:00 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004141013.MAA18798@pons.ac.upc.es> Subject: Re: DYNAREC: First SI summary In-Reply-To: <200004140816.KAA11445@pons.ac.upc.es> from Victor Moya del Barrio at "Apr 14, 2000 10:16:21 am" To: dynarec@synthcom.com Date: Fri, 14 Apr 2000 12:13:28 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com OK. About SI/Space8/Invasores project. I downloaded yesterday all documentation I found at spies. Today I have copied it to floppys and I will take it to my house (I hope I don't find disk errors :|). Next week is holiday for me so I will try to work in the project. The university isn't closed all the week so perhaps I will come to read mails tuesday or wednesday, but this isn't sure. If not I will return Tuesday 25th. I say this so you don't think SI is dead or I'm dead ;). I'm sure than as soon as I will get out of here you all will begin to talk about emulation and dynarec ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:18:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16640 for dynarec-outgoing; Fri, 14 Apr 2000 03:18:21 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <200004141006.MAA14082@pons.ac.upc.es> Message-Id: <0003653601eda157_mailit@mailhub.rrze.uni-erlangen.de> References: <200004141006.MAA14082@pons.ac.upc.es> Date: Fri, 14 Apr 2000 12:19:25 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Oh well, I think there are now a lot of people building a M86k dynarec core >;) Oops, I know the M68K and the M88K, but the M86K must be a Motorola/Intel hybrid ;-) >Neil Bradley is perhaps interested, Neil Griffiths wants also, I think Tom >Seddon it's working in one and I also have to build one. Forgot about Tom Seddon... >Who knows, perhaps the Generator author will end his own. I think James Ponder's dynarec for ARM is more or less complete but still experimental and he doesn't want to modify it anymore. The problem is that David McEwen told me he activated the dynarec core and it didn't make any difference, so the dynarec is eiter crap, the bottleneck somewhere else, or both. -- M.I.Ke Machines certainly can solve problems, store information, correlate, and play games -- but not with pleasure. -- Leo Rosten --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:20:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16656 for dynarec-outgoing; Fri, 14 Apr 2000 03:20:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <007a01bfa5fa$a8257f60$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: <200004141006.MAA14082@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarecs Date: Fri, 14 Apr 2000 11:17:36 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Overclocking has nothing to do with the framerate. A game that runs at 60fps > > will still run at 60fps if you double, triple, or quadruple the core CPU > > speeds, because you'll be doubling, tripling, or quadrupling all the > > interupt periods. As most games sync off the vblank interrupt you shouldn't > > see any difference in performance, except that the game runs at full speed > > the whole of the time. Metal Slug X on the NeoGeo is ideal for this sort of > > thing, because it's chucking so many sprites around that it slows down > > something chronic the second you get hold of a nice destructive weapon like > > the rocket launcher. With a faster CPU it can manage all those sprites > > without a loss of game speed. > > There are some SNES games which needs such overclocking too ;) > This idea of overclocking remembers another one. Emulation can be used not > only to recreate old computer systems but also to create new ones. For example > you could mix characteristhics of varius systems in a single emulator. But > it isn't so useful at all, because I think noone would program with those > 'irreal' systems. But perhaps it can be interesting just for test it. It would definately be interesting, but think how much work it would take! Actually, I believe that some of the bigger processor manufacturers emulate new CPU designs before they actually start pouring millions into producing real live versions... it would certainly make some sense for them to, anyway. However, I'd imagine that they emulate them at a much lower level than we do. > > assembler as an interpreted core. A 68k version would be cool, though. It'd > > certainly do the various Amiga, ST, and MegaDrive emulators a power of > > good... > > > > Oh well, I think there are now a lot of people building a M86k dynarec core ;) > Neil Bradley is perhaps interested, Neil Griffiths wants also, I think Tom Seddon > it's working in one and I also have to build one. Who knows, perhaps the Generator > author will end his own. But are they/you building full cores, or just JIT/translated/compiled cores that can't handle the whole self-modification problem? > Victor Moya Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:24:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16665 for dynarec-outgoing; Fri, 14 Apr 2000 03:24:58 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: First SI summary From: Michael Koenig In-Reply-To: <200004141013.MAA18798@pons.ac.upc.es> Message-Id: <0003653619aafc1c_mailit@mailhub.rrze.uni-erlangen.de> References: <200004141013.MAA18798@pons.ac.upc.es> Date: Fri, 14 Apr 2000 12:26:03 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >OK. About SI/Space8/Invasores project. I downloaded yesterday all >documentation I found at spies. Today I have copied it to floppys and I will >take it to my house (I hope I don't find disk errors :|). I know that problem... Brought the LOTR trailer home on 8 disks and, thank god, there was no error. Why don't they have a Zip drive at work? >If not I will return Tuesday 25th. I say this so you >don't think SI is dead or I'm dead ;). SI surely won't be dead, and I hope you won't be as well ;-) Since NG will have holidays too I wonder who is going to do some posts anyway... >I'm sure than as soon as I will get out of here you all will begin to talk >about emulation and dynarec ;) What was that? These words are neither in my English nor in my German dictionary! -- M.I.Ke Hire the morally handicapped. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:30:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16686 for dynarec-outgoing; Fri, 14 Apr 2000 03:30:56 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarecs Date: Fri, 14 Apr 2000 11:27:03 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >A 68k version would be cool, though. It'd > >certainly do the various Amiga, ST, and MegaDrive emulators a power of > >good... > > I'd really like to see a dynarec ST emulator ;-) Heh! :) Spawn of the devil, those Atari things... (Says the bloke with a pile of old Amigas living in his garage) > >Assemble the preassembled blocks? How's that work, then? > > Take a look at NEStra eg. There you have a a file which looks a bit like an > assembly optimised interpretive core, but it has some blanks (or zeros). This > file is run through the assembler when the emulator is compiled. > During runtime the compiler takes a specific code template according to the > found opcode, copies the whole code to the translation cache and patches the > blanks to reflect the current instruction arguments - disgusting! Ah right, yes. You provide a slice of template machine code for each emulated opcode? I was planning on doing something like this for a Z80 core. It may not be elegant, but it's bloody fast (relatively!) when you've got a code segment that requires lots and lots of recompilation. Of course, you can probably handle that better by running an interpreted core beside the compiled one, and giving it control of any code blocks which self-modify too much... > -- > M.I.Ke Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:33:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16698 for dynarec-outgoing; Fri, 14 Apr 2000 03:33:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004141035.MAA05331@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarecs In-Reply-To: <007a01bfa5fa$a8257f60$88dc48c2@icc.co.im> from Andrew Davidson at "Apr 14, 2000 11:17:36 am" To: dynarec@synthcom.com Date: Fri, 14 Apr 2000 12:35:08 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > It would definately be interesting, but think how much work it would take! > Actually, I believe that some of the bigger processor manufacturers emulate > new CPU designs before they actually start pouring millions into producing > real live versions... it would certainly make some sense for them to, > anyway. However, I'd imagine that they emulate them at a much lower level > than we do. > Yes I have found documentation talking about that. > > But are they/you building full cores, or just JIT/translated/compiled cores > that can't handle the whole self-modification problem? > I'm not sure the others, but I think they won't handle self-modifying code. I'm not sure what I will do, as it will be a core for a MegaDrive emulator, I don't think it needs handle self-modifying code. But perhaps will be interesting to test how the NB approach works with a simple self-modifying handle algorithm. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:33:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16708 for dynarec-outgoing; Fri, 14 Apr 2000 03:33:54 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <007a01bfa5fa$a8257f60$88dc48c2@icc.co.im> Message-Id: <0003653636f94e6b_mailit@mailhub.rrze.uni-erlangen.de> References: <200004141006.MAA14082@pons.ac.upc.es> <007a01bfa5fa$a8257f60$88dc48c2@icc.co.im> Date: Fri, 14 Apr 2000 12:34:15 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >It would definately be interesting, but think how much work it would take! >Actually, I believe that some of the bigger processor manufacturers emulate >new CPU designs before they actually start pouring millions into producing >real live versions... it would certainly make some sense for them to, >anyway. However, I'd imagine that they emulate them at a much lower level >than we do. Indeed. The first ARM processors were simulated in BBC BASIC on a BBC Micro - must have been damn slow, imagine emulating a 8MHz RISC CPU on a 2MHz 6502 ; -) The simulator, know as ASIM, was latter rewritten in Modula-2 and C and is still used. >But are they/you building full cores, or just JIT/translated/compiled cores >that can't handle the whole self-modification problem? I have to admit that I don't know if Generator handles self-modifying 68K code, but it deals with the other self-modification problem which occurs when the dynarec runs on a Harvard architecture ;-) -- M.I.Ke Alexander Graham Bell is alive and well in New York, and still waiting for a dial tone. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:35:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16719 for dynarec-outgoing; Fri, 14 Apr 2000 03:35:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004141036.MAA20395@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarecs In-Reply-To: <0003653601eda157_mailit@mailhub.rrze.uni-erlangen.de> from Michael Koenig at "Apr 14, 2000 12:19:25 pm" To: dynarec@synthcom.com Date: Fri, 14 Apr 2000 12:36:50 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Oh well, I think there are now a lot of people building a M86k dynarec core > >;) > > Oops, I know the M68K and the M88K, but the M86K must be a Motorola/Intel > hybrid ;-) > Oops, why I can't just read the mail before posting it? :( > I think James Ponder's dynarec for ARM is more or less complete but still > experimental and he doesn't want to modify it anymore. > The problem is that David McEwen told me he activated the dynarec core and it > didn't make any difference, so the dynarec is eiter crap, the bottleneck > somewhere else, or both. > Oh, bad news I think. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:36:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16728 for dynarec-outgoing; Fri, 14 Apr 2000 03:36:01 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004141038.MAA01586@pons.ac.upc.es> Subject: Re: DYNAREC: First SI summary In-Reply-To: <0003653619aafc1c_mailit@mailhub.rrze.uni-erlangen.de> from Michael Koenig at "Apr 14, 2000 12:26:03 pm" To: dynarec@synthcom.com Date: Fri, 14 Apr 2000 12:38:31 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >If not I will return Tuesday 25th. I say this so you > >don't think SI is dead or I'm dead ;). > > SI surely won't be dead, and I hope you won't be as well ;-) > Since NG will have holidays too I wonder who is going to do some posts > anyway... > Lurkers :) > >I'm sure than as soon as I will get out of here you all will begin to talk > >about emulation and dynarec ;) > > What was that? These words are neither in my English nor in my German > dictionary! > Ops, I can't remember now where I readed this words? ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:39:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16737 for dynarec-outgoing; Fri, 14 Apr 2000 03:39:42 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> Message-Id: <000365364e6755a0_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> Date: Fri, 14 Apr 2000 12:40:48 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Heh! :) Spawn of the devil, those Atari things... (Says the bloke with a >pile of old Amigas living in his garage) AHHH, take that you fiend! I have a Atari Mega STE 4 ready to run and a 1040ST in the antic! BTW, do we really want to carry on with that Atari vs Amiga feud? ;-) >Ah right, yes. You provide a slice of template machine code for each >emulated opcode? I was planning on doing something like this for a Z80 core. >It may not be elegant, but it's bloody fast (relatively!) when you've got a >code segment that requires lots and lots of recompilation. Of course, you >can probably handle that better by running an interpreted core beside the >compiled one, and giving it control of any code blocks which self-modify too >much... I guess I don't have to comment on that since NB surely will tell you wha he thinks of copy-paste-and-patch dynarecs and combined compiling and interpretive cores... >Andrew -- M.I.Ke Overdrawn? But I still have checks left! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:42:24 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16753 for dynarec-outgoing; Fri, 14 Apr 2000 03:42:24 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F6F57E.50BCAD82@eurocopter.de> Date: Fri, 14 Apr 2000 12:39:58 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs References: <200004141006.MAA14082@pons.ac.upc.es> <007a01bfa5fa$a8257f60$88dc48c2@icc.co.im> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > It would definately be interesting, but think how much work it would take! > Actually, I believe that some of the bigger processor manufacturers emulate > new CPU designs before they actually start pouring millions into producing > real live versions... it would certainly make some sense for them to, > anyway. However, I'd imagine that they emulate them at a much lower level > than we do. I know for a fact that most graphics chip companies do this. It may be possible at some point for me to get the source to one of S3s chips in the future. That could be interesting. Written in C, IIRC... I find it hard to believe that AMD and Intel don't do the same. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:46:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16771 for dynarec-outgoing; Fri, 14 Apr 2000 03:46:51 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <200004141036.MAA20395@pons.ac.upc.es> Message-Id: <000365366758930d_mailit@mailhub.rrze.uni-erlangen.de> References: <200004141036.MAA20395@pons.ac.upc.es> Date: Fri, 14 Apr 2000 12:47:46 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Oops, why I can't just read the mail before posting it? :( Because we didn't have the opportunity to mock about it... and no-one else does it as well ;-) >[Generator] >Oh, bad news I think. I'm not sure how the whole dynarec really looks. I only found some code generated for addressing modes when I took a look at the source. I guess the translations have to be generated first just like the interpretive core... -- M.I.Ke A man wrapped up in himself makes a very small package. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:46:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16778 for dynarec-outgoing; Fri, 14 Apr 2000 03:46:53 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: First SI summary From: Michael Koenig In-Reply-To: <200004141038.MAA01586@pons.ac.upc.es> Message-Id: <000365365b7a1304_mailit@mailhub.rrze.uni-erlangen.de> References: <200004141038.MAA01586@pons.ac.upc.es> Date: Fri, 14 Apr 2000 12:44:27 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> Since NG will have holidays too I wonder who is going to do some posts >> anyway... >Lurkers :) Hehehe ;-) >Ops, I can't remember now where I readed this words? ;) Which words? Shit, my brain is like a sieve today... ;-) -- M.I.Ke Do not drink coffee in early a.m. It will keep you awake until noon. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 03:47:00 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA16787 for dynarec-outgoing; Fri, 14 Apr 2000 03:47:00 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F6F689.483E99A5@eurocopter.de> Date: Fri, 14 Apr 2000 12:44:25 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: First SI summary References: <200004141013.MAA18798@pons.ac.upc.es> <0003653619aafc1c_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I know that problem... Brought the LOTR trailer home on 8 disks and, thank > god, there was no error. Why don't they have a Zip drive at work? I downloaded a 60MB version. Can I fit that on 8 disks, do you think? ;)) > >If not I will return Tuesday 25th. I say this so you > >don't think SI is dead or I'm dead ;). > > SI surely won't be dead, and I hope you won't be as well ;-) > Since NG will have holidays too I wonder who is going to do some posts > anyway... I will have holidays - but I'll be back in Britain. My sister turns 18 next Sunday, so I'll be home for that. I go home next Wednesday and come back the following Tuesday - so chances are you won't hear from me until Wednesday 26th. After next Wednesday that is. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 04:05:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA16819 for dynarec-outgoing; Fri, 14 Apr 2000 04:05:01 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <00c001bfa600$e557a380$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarecs Date: Fri, 14 Apr 2000 12:02:16 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Heh! :) Spawn of the devil, those Atari things... (Says the bloke with a > >pile of old Amigas living in his garage) > > AHHH, take that you fiend! I have a Atari Mega STE 4 ready to run and a > 1040ST in the antic! > BTW, do we really want to carry on with that Atari vs Amiga feud? ;-) No need. It was finished years ago when the Amiga trashed the Atari. Argh! I didn't just say that, did I? Sorry! Sorry! Sorry! Amiga! Sorry! Sorry! ;) > >Ah right, yes. You provide a slice of template machine code for each > >emulated opcode? I was planning on doing something like this for a Z80 core. > >It may not be elegant, but it's bloody fast (relatively!) when you've got a > >code segment that requires lots and lots of recompilation. Of course, you > >can probably handle that better by running an interpreted core beside the > >compiled one, and giving it control of any code blocks which self-modify too > >much... > > I guess I don't have to comment on that since NB surely will tell you wha he > thinks of copy-paste-and-patch dynarecs and combined compiling and > interpretive cores... I wrote a program to run on SpectrEm-DR that consisted of a looped code block that called one of two other blocks, each of which modified the code in the main block to cause it to call the othe block the next time it ran. My framerate dropped to about four, and the profiler went mad and broke. Admittedly, it was a slightly excessive example, but a couple of the Speccy speed loaders self-modify almost as regularly as it did, so it's not totally unrealistic. Even block splitting won't handle that sort of code at anywhere near a sensible speed, so you've got to start using icky hacks, the dual compiled/interpreted system being the best of the two, as far as I can see. > -- > M.I.Ke > > Overdrawn? But I still have checks left! And God said "Let there be credit cards"... As if we didn't have enough in the way of temptation already! Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 04:08:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA16828 for dynarec-outgoing; Fri, 14 Apr 2000 04:08:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: First SI summary From: Michael Koenig In-Reply-To: <38F6F689.483E99A5@eurocopter.de> Message-Id: <000365369a0bb4cc_mailit@mailhub.rrze.uni-erlangen.de> References: <200004141013.MAA18798@pons.ac.upc.es> <0003653619aafc1c_mailit@mailhub.rrze.uni-erlangen.de> <38F6F689.483E99A5@eurocopter.de> Date: Fri, 14 Apr 2000 13:01:57 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I downloaded a 60MB version. I only have the 12MB version :-( >Can I fit that on 8 disks, do you think? ;)) Depends on the disks ;-) >I will have holidays - but I'll be back in Britain. My sister turns 18 next >Sunday, so I'll be home for that. I go home next Wednesday and come back >the following Tuesday - so chances are you won't hear from me until >Wednesday 26th. After next Wednesday that is. :) Uh, then it will be very silent... :-( -- M.I.Ke You cannot kill time without injuring eternity. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 05:18:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA16938 for dynarec-outgoing; Fri, 14 Apr 2000 05:18:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <00c001bfa600$e557a380$88dc48c2@icc.co.im> Message-Id: <00036537ae152139_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze.uni-erlangen.de> <00c001bfa600$e557a380$88dc48c2@icc.co.im> Date: Fri, 14 Apr 2000 14:19:08 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No need. It was finished years ago when the Amiga trashed the Atari. Really? I think there are still more Ataris in use than Amigas, just think of MIDI... >Argh! I didn't just say that, did I? Sorry! Sorry! Sorry! Amiga! Sorry! >Sorry! ;) Doesn't matter! Doesn't matter! Doesn't matter! Atari rules! Doesn't matter! Doesn't matter! ;-) >I wrote a program to run on SpectrEm-DR that consisted of a looped code >block that called one of two other blocks, each of which modified the code >in the main block to cause it to call the othe block the next time it ran. >My framerate dropped to about four, and the profiler went mad and broke. >Admittedly, it was a slightly excessive example, but a couple of the Speccy >speed loaders self-modify almost as regularly as it did, so it's not totally >unrealistic. Even block splitting won't handle that sort of code at anywhere >near a sensible speed, so you've got to start using icky hacks, the dual >compiled/interpreted system being the best of the two, as far as I can see. Yes, it's an extreme example but interesting to see how performance drops. I guess NB's answer would be that in such a self-modifying system like that it would be better to use an optimised interpretive-only approach. BTW, how does this block splitting work? >Andrew -- M.I.Ke Barth's Distinction: There are two types of people: those who divide people into two types, and those who don't. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 05:36:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA16975 for dynarec-outgoing; Fri, 14 Apr 2000 05:36:18 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <019401bfa60d$a5234140$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <00036537ae152139_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarecs Date: Fri, 14 Apr 2000 13:33:31 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >No need. It was finished years ago when the Amiga trashed the Atari. > > Really? I think there are still more Ataris in use than Amigas, just think of > MIDI... Ah, but that's sound. What about CG? Just think of Video Toasters and Babylon 5 and suchlike... > >Argh! I didn't just say that, did I? Sorry! Sorry! Sorry! Amiga! Sorry! > >Sorry! ;) > > Doesn't matter! Doesn't matter! Doesn't matter! Atari rules! Doesn't matter! > Doesn't matter! ;-) Indeed! Indeed! Indeed! They do not! Indeed! Indeed! Indeed! We may just have invented a whole new form of communication... ;) > >I wrote a program to run on SpectrEm-DR that consisted of a looped code > >block that called one of two other blocks, each of which modified the code > >in the main block to cause it to call the othe block the next time it ran. > >My framerate dropped to about four, and the profiler went mad and broke. > >Admittedly, it was a slightly excessive example, but a couple of the Speccy > >speed loaders self-modify almost as regularly as it did, so it's not totally > >unrealistic. Even block splitting won't handle that sort of code at anywhere > >near a sensible speed, so you've got to start using icky hacks, the dual > >compiled/interpreted system being the best of the two, as far as I can see. > > Yes, it's an extreme example but interesting to see how performance drops. I > guess NB's answer would be that in such a self-modifying system like that it > would be better to use an optimised interpretive-only approach. > BTW, how does this block splitting work? Block splitting is pretty simple really. You keep track of exactly which opcodes are being self modified, then you go back to the machine code you generated for that block, and replace the code that's emulating that opcode with a jump to a sort of sub-block, which consists of nothing but the machine code to emulate that opcode, and a jump back to the main block. You can, of course, optimise that to group sub-blocks, but you've got to be a bit careful with that because you could well end up with a situation where you're splitting sub-blocks into sub-blocks, and you're right back where you started but with a bit of extra overhead. NOPs and other easily compiled opcodes can cause problems, too, because every opcode needs to take up at least 5 x86 bytes (for a direct jump). Of course, you can always compile NOPs as five x86 NOPs or a useless jump that leads directly to the next op. (A three byte +2 relative jump would probably gain you a clock or two here). The idea is that you can modify these sub blocks without worrying about having to reallocate space for the main block, and recompile all the code that follows the modified opcode(s). > -- > M.I.Ke Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 06:25:00 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA17070 for dynarec-outgoing; Fri, 14 Apr 2000 06:25:00 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <019401bfa60d$a5234140$88dc48c2@icc.co.im> Message-Id: <000365389e32fe2e_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <00036537ae152139_mailit@mailhub.rrze.uni-erlangen.de> <019401bfa60d$a5234140$88dc48c2@icc.co.im> Date: Fri, 14 Apr 2000 15:26:16 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Ah, but that's sound. What about CG? Just think of Video Toasters and >Babylon 5 and suchlike... Babylon 5 is made with Amigas? Now I know why it looks so bad! >Indeed! Indeed! Indeed! They do not! Indeed! Indeed! Indeed! Of course! Of course! Of course! Neither does Amiga! Of course! Ofcourse! >We may just have invented a whole new form of communication... ;) You call that communication? ;-) >Block splitting is pretty simple really. You keep track of exactly which >opcodes are being self modified, then you go back to the machine code you >generated for that block, and replace the code that's emulating that opcode >with a jump to a sort of sub-block, which consists of nothing but the >machine code to emulate that opcode, and a jump back to the main block. You >can, of course, optimise that to group sub-blocks, but you've got to be a >bit careful with that because you could well end up with a situation where >you're splitting sub-blocks into sub-blocks, and you're right back where you >started but with a bit of extra overhead. Ok, from Pentium onward the two jumps should be eliminated by the branch predictor, but how do you keep track of all those jumps? I mean, when an instruction is modified then you first have t track down if it was already replaced by a jump, or do you simply overwrite the instruction without checking and leave the older sub-block behind as a zombie? >NOPs and other easily compiled >opcodes can cause problems, too, because every opcode needs to take up at >least 5 x86 bytes (for a direct jump). Of course, you can always compile >NOPs as five x86 NOPs or a useless jump that leads directly to the next op. So you generate at least 5 bytes per translated instruction, filling it with NOPs if in need. How do you keep track of the "instructions lengths", since you'd have to overwrite some bytes with NOPs if the instruction needed more than 5 bytes and shall be replaced by a sub-block, or does this never happen? >(A three byte +2 relative jump would probably gain you a clock or two here). True, but it will be even more complicated, I guess. >The idea is that you can modify these sub blocks without worrying about >having to reallocate space for the main block, and recompile all the code >that follows the modified opcode(s). But that can lead to slight problems as well. Eg. if the last instruction in the block (which should be a jump) is overwritten by a non-jump because the programmer only needed a small part of the block at first but now activates the whole block, you'll end up with 2 blocks and maybe even 1 sub-block and you have to go through the dispatcher loop each time the program flows from the first part to the second part of the block. I admit that this example is extreme as well, but in this case recompiling the whole block would be better. >Andrew -- M.I.Ke Don't believe everything you hear or anything you say. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 06:58:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA17151 for dynarec-outgoing; Fri, 14 Apr 2000 06:58:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F722C4.FEBABA3A@eurocopter.de> Date: Fri, 14 Apr 2000 15:53:08 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <00036537ae152139_mailit@mailhub.rrze.uni-erlangen.de> <019401bfa60d$a5234140$88dc48c2@icc.co.im> <000365389e32fe2e_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Ah, but that's sound. What about CG? Just think of Video Toasters and > >Babylon 5 and suchlike... > > Babylon 5 is made with Amigas? Now I know why it looks so bad! Yep, it's made with Amigas. But beware - Amiga owners will tell you that everything ELSE is made with Amigas too. I've even been told that Toy Story and Toy Story 2 were rendered with an Amiga. :)) > >Indeed! Indeed! Indeed! They do not! Indeed! Indeed! Indeed! > > Of course! Of course! Of course! Neither does Amiga! Of course! Ofcourse! Oh no! I'm sure there's some messages hidden in there, but I can't quite make it out... ;) > >We may just have invented a whole new form of communication... ;) > > You call that communication? ;-) I bet I could dyanrec those comments to translate them into something that is understandable... :) > Don't believe everything you hear or anything you say. That's a fitting ending! That's a fitting ending! No it isn't! That's a fitting ending! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 07:20:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA17204 for dynarec-outgoing; Fri, 14 Apr 2000 07:20:59 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <026801bfa61c$43dcc460$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze.<00036537ae152139_mailit@mailhub.rrze.uni-erlangen.de> <019401bfa60d$a5234140$88dc48c2@icc.co.im> <000365389e32fe2e_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarecs Date: Fri, 14 Apr 2000 15:18:11 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Ah, but that's sound. What about CG? Just think of Video Toasters and > >Babylon 5 and suchlike... > > Babylon 5 is made with Amigas? Now I know why it looks so bad! Pah! So give me some examples of music made with STs to be rude about. I simply can't think of anything of note! :þ > >Indeed! Indeed! Indeed! They do not! Indeed! Indeed! Indeed! > > Of course! Of course! Of course! Neither does Amiga! Of course! Ofcourse! Yep! Yep! Yep! Right, that's it. I'm telling my mum! Yep! Yep! Yep! > >We may just have invented a whole new form of communication... ;) > > You call that communication? ;-) Indeed I do. Mind, I never had the advantage of growning up surrounded by MIDI ports to learn from... ;) > >Block splitting is pretty simple really. You keep track of exactly which > >opcodes are being self modified, then you go back to the machine code you > >generated for that block, and replace the code that's emulating that opcode > >with a jump to a sort of sub-block, which consists of nothing but the > >machine code to emulate that opcode, and a jump back to the main block. You > >can, of course, optimise that to group sub-blocks, but you've got to be a > >bit careful with that because you could well end up with a situation where > >you're splitting sub-blocks into sub-blocks, and you're right back where you > >started but with a bit of extra overhead. > > Ok, from Pentium onward the two jumps should be eliminated by the branch > predictor, but how do you keep track of all those jumps? I mean, when an > instruction is modified then you first have t track down if it was already > replaced by a jump, or do you simply overwrite the instruction without > checking and leave the older sub-block behind as a zombie? You can keep track of them however you like. Simply keeping a list of modified opcode addresses is a good way for a CPU with a 16bit address bus, whilst reserving oversized areas of memory for sub blocks (which, as they're only a single instruction, can never be large than you single largest emulated opcode) and compiling in the jump back to an area of the memory that can't be overwritten (this is what you meant by 'zombie', is it?) would work fine for 24/32bit buses. In the latter case, the first time the instruction is modified you'd overwrite it with the jump to the sub-block address and just forget about it. > >NOPs and other easily compiled > >opcodes can cause problems, too, because every opcode needs to take up at > >least 5 x86 bytes (for a direct jump). Of course, you can always compile > >NOPs as five x86 NOPs or a useless jump that leads directly to the next op. > > So you generate at least 5 bytes per translated instruction, filling it with > NOPs if in need. How do you keep track of the "instructions lengths", since > you'd have to overwrite some bytes with NOPs if the instruction needed more > than 5 bytes and shall be replaced by a sub-block, or does this never happen? You can tell how many bytes any instruction takes to compile because you know how many bytes are needed to compile that instruction, sort of thing. It's in the code already, and another lookup table (which could easily be automatically generated at either compile or run time) should sort you out for that one. You wouldn't need to overwrite long invalid x86 instruction sequences with NOPs, because the jumping system would kick in at the start of the sequence, and jump back to the first byte of the next emulated opcode sequence, thus ignoring the rest of the system altogether. > >(A three byte +2 relative jump would probably gain you a clock or two here). > > True, but it will be even more complicated, I guess. How? I'm talking about an instruction to skip over the two bytes of padding code that doesn't strictly speaking need to be there (for padding REALLY short emulated opcodes like NOP, which you can do in 0 bytes, without accurate timing). > >The idea is that you can modify these sub blocks without worrying about > >having to reallocate space for the main block, and recompile all the code > >that follows the modified opcode(s). > > But that can lead to slight problems as well. Eg. if the last instruction in > the block (which should be a jump) is overwritten by a non-jump because the > programmer only needed a small part of the block at first but now activates > the whole block, you'll end up with 2 blocks and maybe even 1 sub-block and > you have to go through the dispatcher loop each time the program flows from > the first part to the second part of the block. > I admit that this example is extreme as well, but in this case recompiling > the whole block would be better. Sorry, I don't think I've got my thinking cap on straight today. That lot went right over my head. Are you saying that there would be modifications to the main block? Other than overwriting the first five bytes of an opcodes x86 machine code equivalent with a jump to the single opcode sub-block, nothing in the main block is modified at all. If you mean problems with the sub-block, the last five bytes (with the jump back to the main block encoded in them) can be protected from being overwritten by simply ensuring that the sub-block is five bytes bigger than the largest possible x86 opcode sequence (a couple of hundred bytes at most). > -- > M.I.Ke > > Don't believe everything you hear or anything you say. Especially if it's about STs being good! ;) Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 08:30:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA17391 for dynarec-outgoing; Fri, 14 Apr 2000 08:30:55 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: DYNAREC: DynaRec FAQ From: Michael Koenig Message-Id: <0003653a5fc07b08_mailit@mailhub.rrze.uni-erlangen.de> Date: Fri, 14 Apr 2000 17:31:59 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com OK, let's do some brainstorming! What topics should a dynarec FAQ cover? I'll make a brief list, which should be just a beginning. Any recommendations are welcome! * "Dynarec" and other terms - dynamic recompilation, binary translation, JIT compilation, on-demand/on- the-fly/lazy translation * How does dynamic recompilation work in principle? - on-demand translation of binary code blocks to another machine code * What other translation methods are possible? - static compilation, hybrids, ... * How to generate code? - code templates (yuk!), code emitter * How to map translated code blocks? - TLB, TransMap, and paged TransMap * The problem with self-modifying code. - Why a problem? How to detect? How to solve? * What optimisations can be performed? - redundant flag calculation reduction, register allocation, peephole optimisation * How to sync the code? - NB's t-state approach, the sloppy block approach Anything I forgot? -- M.I.Ke Loud burping while walking around the airport is prohibited in Halstead, Kansas. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 08:39:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA17424 for dynarec-outgoing; Fri, 14 Apr 2000 08:39:55 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38F73B2D.72AFD7C7@eurocopter.de> Date: Fri, 14 Apr 2000 17:37:17 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DynaRec FAQ References: <0003653a5fc07b08_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > sloppy block approach I like the sound of that. The downside is that it sounds like some bizarre sexual disease... :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 09:00:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA17485 for dynarec-outgoing; Fri, 14 Apr 2000 09:00:01 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <38F722C4.FEBABA3A@eurocopter.de> Message-Id: <0003653a86829189_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <00036537ae152139_mailit@mailhub.rrze.uni-erlangen.de> <019401bfa60d$a5234140$88dc48c2@icc.co.im> <000365389e32fe2e_mailit@mailhub.rrze.uni-erlangen.de> <38F722C4.FEBABA3A@eurocopter.de> Date: Fri, 14 Apr 2000 17:42:49 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yep, it's made with Amigas. That's explains why I don't like Babylon 5, much too colourful for space... >But beware - Amiga owners will tell you that >everything ELSE is made with Amigas too. I've even been told that Toy Story >and Toy Story 2 were rendered with an Amiga. :)) Hehe. I think in that case they had SPARC render farms, but normally you'd be using a batch of decent SGIs. >Oh no! I'm sure there's some messages hidden in there, but I can't quite >make it out... ;) A message in a message? I guess you used too much left recursive GNU names recently ;-) >I bet I could dyanrec those comments to translate them into something that >is understandable... :) A dynarec for natural language, noooo! >That's a fitting ending! That's a fitting ending! No it isn't! That's a >fitting ending! ;) Something goes very wrong here.... -- M.I.Ke "As part of the conversion, computer specialists rewrote 1,500 programs; a process that traditionally requires some debugging." -- USA Today, referring to the IRS switchover to a new computer system. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 09:00:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA17493 for dynarec-outgoing; Fri, 14 Apr 2000 09:00:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <026801bfa61c$43dcc460$88dc48c2@icc.co.im> Message-Id: <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze.<00036537ae152139_mailit@mailhub.rrze.uni-erlangen.de> <019401bfa60d$a5234140$88dc48c2@icc.co.im> <000365389e32fe2e_mailit@mailhub.rrze.uni-erlangen.de> <026801bfa61c$43dcc460$88dc48c2@icc.co.im> Date: Fri, 14 Apr 2000 18:01:05 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Pah! So give me some examples of music made with STs to be rude about. I >simply can't think of anything of note! :þ Just as NB says about synths, I can say that you wouldn't notice when a ST is used for music, since it surely isn't the YM2149 that's used but the MIDI to communicate with synths. >Indeed I do. Mind, I never had the advantage of growning up surrounded by >MIDI ports to learn from... ;) But you come from the country that brought us Teletubbies! ;-) >You can keep track of them however you like. Simply keeping a list of >modified opcode addresses is a good way for a CPU with a 16bit address bus, >whilst reserving oversized areas of memory for sub blocks (which, as they're >only a single instruction, can never be large than you single largest >emulated opcode) and compiling in the jump back to an area of the memory >that can't be overwritten (this is what you meant by 'zombie', is it?) would >work fine for 24/32bit buses. In the latter case, the first time the >instruction is modified you'd overwrite it with the jump to the sub-block >address and just forget about it. Ah, ok. What I meant with zombie is a memory location you don't have a pointer to any longer but which is still reserved. >You can tell how many bytes any instruction takes to compile because you >know how many bytes are needed to compile that instruction, sort of thing. >It's in the code already, and another lookup table (which could easily be >automatically generated at either compile or run time) should sort you out >for that one. You wouldn't need to overwrite long invalid x86 instruction >sequences with NOPs, because the jumping system would kick in at the start >of the sequence, and jump back to the first byte of the next emulated opcode >sequence, thus ignoring the rest of the system altogether. Sorry, just forgot that the jump at the end of the sub-block can simply transfer controll to the next instruction in sequence. >How? I'm talking about an instruction to skip over the two bytes of padding >code that doesn't strictly speaking need to be there (for padding REALLY >short emulated opcodes like NOP, which you can do in 0 bytes, without >accurate timing). Oops, got you wrong. I thought you wanted to use the relative jump to the sub -block instead of jumping over the gap that you'd normally have to fill with NOPs. >Sorry, I don't think I've got my thinking cap on straight today. I guess I forgot mine on the nightstand... >That lot >went right over my head. Are you saying that there would be modifications to >the main block? Other than overwriting the first five bytes of an opcodes >x86 machine code equivalent with a jump to the single opcode sub-block, >nothing in the main block is modified at all. If you mean problems with the >sub-block, the last five bytes (with the jump back to the main block encoded >in them) can be protected from being overwritten by simply ensuring that the >sub-block is five bytes bigger than the largest possible x86 opcode sequence >(a couple of hundred bytes at most). I'll make it more precise, take the following (senseless code) addq #1, d0 jmp mainloop sub #20, d0 jump end Say this code is called somewhere in the mainloop, so you'll have a block only consisting of: addq #1, d0 jmp mainloop But when D0 reaches a certain amount mainloop changes the JMP to NOPs, what will happen? Is the whole block recompiled or does it even lead to an error? addq #1, d0 nop... sub #20, d0 jump end >Andrew -- M.I.Ke Simon's Law: Everything put together falls apart sooner or later. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 09:03:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA17505 for dynarec-outgoing; Fri, 14 Apr 2000 09:03:50 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: DynaRec FAQ From: Michael Koenig In-Reply-To: <38F73B2D.72AFD7C7@eurocopter.de> Message-Id: <0003653ad5d57366_mailit@mailhub.rrze.uni-erlangen.de> References: <0003653a5fc07b08_mailit@mailhub.rrze.uni-erlangen.de> <38F73B2D.72AFD7C7@eurocopter.de> Date: Fri, 14 Apr 2000 18:05:00 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> sloppy block approach >I like the sound of that. The downside is that it sounds like some bizarre >sexual disease... :)) I wonder what you're thinking about all the time! Any *productive* reactions? ;-) BTW, in the section "How to map translated code blocks?" I forgot to list UltraHLE's dirty illegal opcode trick. -- M.I.Ke What you don't know can hurt you, only you won't know it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 09:35:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA17642 for dynarec-outgoing; Fri, 14 Apr 2000 09:35:53 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarecs Date: Fri, 14 Apr 2000 17:33:03 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Pah! So give me some examples of music made with STs to be rude about. I > >simply can't think of anything of note! :þ > > Just as NB says about synths, I can say that you wouldn't notice when a ST is > used for music, since it surely isn't the YM2149 that's used but the MIDI to > communicate with synths. I've never been that much of a music fan, so I'm not really up on MIDIs, but don't you get different quality MIDI controllers? For instance, the sort of cheap crap they'd likely bung in the back of an inexpensive home computer would only have support for four MIDI channels, whilst a professional set up would require 8, 16, or 32 channels? > >Indeed I do. Mind, I never had the advantage of growning up surrounded by > >MIDI ports to learn from... ;) > > But you come from the country that brought us Teletubbies! ;-) Yeah, sorry about that! ;) Anyway, they didn't have Teletubbies to teach us pronunciation when I was a lad. They had the Klangers! Meep! > >You can keep track of them however you like. Simply keeping a list of > >modified opcode addresses is a good way for a CPU with a 16bit address bus, > >whilst reserving oversized areas of memory for sub blocks (which, as they're > >only a single instruction, can never be large than you single largest > >emulated opcode) and compiling in the jump back to an area of the memory > >that can't be overwritten (this is what you meant by 'zombie', is it?) would > >work fine for 24/32bit buses. In the latter case, the first time the > >instruction is modified you'd overwrite it with the jump to the sub-block > >address and just forget about it. > > Ah, ok. What I meant with zombie is a memory location you don't have a > pointer to any longer but which is still reserved. Ah, righto. I don't think I'd want to do that. That's asking for memory leakage trouble, that is. > >You can tell how many bytes any instruction takes to compile because you > >know how many bytes are needed to compile that instruction, sort of thing. > >It's in the code already, and another lookup table (which could easily be > >automatically generated at either compile or run time) should sort you out > >for that one. You wouldn't need to overwrite long invalid x86 instruction > >sequences with NOPs, because the jumping system would kick in at the start > >of the sequence, and jump back to the first byte of the next emulated opcode > >sequence, thus ignoring the rest of the system altogether. > > Sorry, just forgot that the jump at the end of the sub-block can simply > transfer controll to the next instruction in sequence. I don't know about simply. You've still got to work out exactly where the next instruction sequence is supposed to start, hence the extra lookup table. Support for self modificatication is a bloody nuisance! > >How? I'm talking about an instruction to skip over the two bytes of padding > >code that doesn't strictly speaking need to be there (for padding REALLY > >short emulated opcodes like NOP, which you can do in 0 bytes, without > >accurate timing). > > Oops, got you wrong. I thought you wanted to use the relative jump to the sub > -block instead of jumping over the gap that you'd normally have to fill with > NOPs. It could be added, but the chances of being able to use a word length offset to jump to the correct address are pretty slim, and I don't know about you, but I can't really be bothered to write code to test for that sort of stuff and compile the correct jump in! :) > >Sorry, I don't think I've got my thinking cap on straight today. > > I guess I forgot mine on the nightstand... :) It's work that's doing it. I'd be all right if I was sat at home with my feet up and a nice hot cup of tea! > >That lot > >went right over my head. Are you saying that there would be modifications to > >the main block? Other than overwriting the first five bytes of an opcodes > >x86 machine code equivalent with a jump to the single opcode sub-block, > >nothing in the main block is modified at all. If you mean problems with the > >sub-block, the last five bytes (with the jump back to the main block encoded > >in them) can be protected from being overwritten by simply ensuring that the > >sub-block is five bytes bigger than the largest possible x86 opcode sequence > >(a couple of hundred bytes at most). > > I'll make it more precise, take the following (senseless code) > > addq #1, d0 > jmp mainloop > sub #20, d0 > jump end > > Say this code is called somewhere in the mainloop, so you'll have a block > only consisting of: > > addq #1, d0 > jmp mainloop > > But when D0 reaches a certain amount mainloop changes the JMP to NOPs, what > will happen? Is the whole block recompiled or does it even lead to an error? > > addq #1, d0 > nop... > sub #20, d0 > jump end Right, got it. This would actually end up being supported by the system anyway, albeit in a slightly messy fashion. Just by way of explanation, I'm considering blocks to begin at whatever address is jumped to, and end at the first unconditional modification of the program counter. This means that your example above would be seen by the compiler as the two line version. It would compile that block and carry on merrily on its way. When the first jmp got modified to a nop it would (because it's stupid and doesn't check for nops) replace the jmp code with a jump to a block of code consisting of nothing more exciting than a jump back to the block termination code (the bit that flushes the CPU register caches back to memory, adds the number of clocks on to the timer, and rets back to the C/C++/whatever control loop). The PC would then be pointing at the 'sub' command, which hasn't been compiled, so this would be compiled for the first time as a two instruction block comprising the sub and the jmp. Everything would continue merrily on its way, and no harm would be done. Of course, that's not optimal because you've introduced a bit of jumping around in the code that really doesn't need to be there (a split block, of sorts), but a bit of clever compiler coding would allow you to spot recompilation of terminating opcodes and deal with it by compiling the rest of the block in after the initial block. > -- > M.I.Ke Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 10:04:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA17800 for dynarec-outgoing; Fri, 14 Apr 2000 10:04:14 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> Message-Id: <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> Date: Fri, 14 Apr 2000 19:05:18 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I've never been that much of a music fan, so I'm not really up on MIDIs, but >don't you get different quality MIDI controllers? For instance, the sort of >cheap crap they'd likely bung in the back of an inexpensive home computer >would only have support for four MIDI channels, whilst a professional set up >would require 8, 16, or 32 channels? Don't ask me, I never used the MIDI of my ST. But I bet NB can answer your question. >Yeah, sorry about that! ;) Anyway, they didn't have Teletubbies to teach us >pronunciation when I was a lad. Lucky you! >They had the Klangers! Meep! Pardon? >Ah, righto. I don't think I'd want to do that. That's asking for memory >leakage trouble, that is. Indeed, that's why I was asking. >I don't know about simply. You've still got to work out exactly where the >next instruction sequence is supposed to start, hence the extra lookup >table. Support for self modificatication is a bloody nuisance! Too true! >It could be added, but the chances of being able to use a word length offset >to jump to the correct address are pretty slim, and I don't know about you, >but I can't really be bothered to write code to test for that sort of stuff >and compile the correct jump in! :) That's why I said that it could be complicated when I thought you were talking about exchanging the direct jumps with relative jumps and not the NOPs. >:) It's work that's doing it. I'd be all right if I was sat at home with my >feet up and a nice hot cup of tea! Yeah, a cup of black tea would be nice now ;-) >Right, got it. This would actually end up being supported by the system >anyway, albeit in a slightly messy fashion. Just by way of explanation, I'm >considering blocks to begin at whatever address is jumped to, and end at the >first unconditional modification of the program counter. NB does it the same way and I think I'd do it as well, although in compiler theory a basic block ends with the first conditional interruption of a code sequence. >This means that >your example above would be seen by the compiler as the two line version. It >would compile that block and carry on merrily on its way. I never saw a merry dynarec before! Is it AI? ;-) >When the first jmp >got modified to a nop it would (because it's stupid and doesn't check for >nops) replace the jmp code with a jump to a block of code consisting of >nothing more exciting than a jump back to the block termination code (the >bit that flushes the CPU register caches back to memory, adds the number of >clocks on to the timer, and rets back to the C/C++/whatever control loop). That's what I guessed. BTW, do you calculate the cycles at the end of each block? >The PC would then be pointing at the 'sub' command, which hasn't been >compiled, so this would be compiled for the first time as a two instruction >block comprising the sub and the jmp. Everything would continue merrily on >its way, and no harm would be done. Which leads exactly to the 2 blocks and 1 sub-block I expected. A bit spooky when you consider that I didn't really study that part of your code! >Of course, that's not optimal because >you've introduced a bit of jumping around in the code that really doesn't >need to be there (a split block, of sorts), but a bit of clever compiler >coding would allow you to spot recompilation of terminating opcodes and deal >with it by compiling the rest of the block in after the initial block. Well, the question is how often code shows such a behaviour anyway, but if it happens from time to time then replacing jumps and using nops as replacement should be specially handled. >Andrew -- M.I.Ke According to Kentucky state law, every person must take a bath at least once a year. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 10:08:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA17839 for dynarec-outgoing; Fri, 14 Apr 2000 10:08:42 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 14 Apr 2000 10:08:41 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs In-Reply-To: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > FWIW, I have seen and worked a bit with the author of the dynarec 34010 > > emulator. He and I had completely different philosophies on how to do > > dynamic recompilation, so we went our separate ways. I didn't like the > > "assemble the preassembled blocks" approach. I still don't. > Assemble the preassembled blocks? How's that work, then? * Create a bunch of x86 assembly "covers" for each 34010 instruction * When you "recompile" it, you just memcpy() the cover to a new location * Use the "fill in the blanks" approach and just poke some values into specific locations in that cover Fairly wasteful and you can't do anything to eliminate some of the dead code. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 10:16:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA17886 for dynarec-outgoing; Fri, 14 Apr 2000 10:16:51 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 14 Apr 2000 10:16:51 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs In-Reply-To: <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Just as NB says about synths, I can say that you wouldn't notice when a ST > > used for music, since it surely isn't the YM2149 that's used but the MIDI > > communicate with synths. > I've never been that much of a music fan, so I'm not really up on MIDIs, but > don't you get different quality MIDI controllers? For instance, the sort of > cheap crap they'd likely bung in the back of an inexpensive home computer > would only have support for four MIDI channels, whilst a professional set up > would require 8, 16, or 32 channels? Unfortunately, people think that MIDI is a sound standard, like WAV. It's not! All MIDI is is a 31.5kbps serial interface that transfers note on/note off and various controller information. Inherently it has *NO* sound encoded in it at all. So for you to actually get sound out of a MIDI file, the device you're sending it to must have sound generation capabilities. What most people hear as "MIDI" files is what's called general MIDI. It's a list of sounds that are expected to be on certain channels and controlled with certain controllers (like volume), and it just takes the note data and generates sound out of it. The problem with it is that it sounds, well, general. Uninteresting. Boring. A MIDI interface is a MIDI interface. There's no way for you to actually hear the difference because they're just serial ports. The thing that makes the sound is what it's connected to. You could have the best MIDI interface in the world with the most horrid synths and create bad sounding music, and also have the worst MIDI interface in the world and connect it to execllent synths and have great music. FWIW, Tangerine Dream's Optical Race was done on a 1040ST. Quite a good album. Every MIDI interface comes with 16 channels per bus. Some MIDI interfaces only have 1 bus, some have 2 buses. As an example, I have a Mark Of The Unicorn MIDI Timepiece/AV, which has *8* MIDI buses (For a total of 128 channels). But all 16 MIDI channels go over the same bus. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 13:00:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA18483 for dynarec-outgoing; Fri, 14 Apr 2000 13:00:27 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <001601bfa64c$196f19a0$8f52883e@ben> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Dynarecs Date: Fri, 14 Apr 2000 20:37:12 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > FWIW, I have seen and worked a bit with the author of the dynarec 34010 > > > emulator. He and I had completely different philosophies on how to do > > > dynamic recompilation, so we went our separate ways. I didn't like the > > > "assemble the preassembled blocks" approach. I still don't. > > Assemble the preassembled blocks? How's that work, then? > > * Create a bunch of x86 assembly "covers" for each 34010 instruction > * When you "recompile" it, you just memcpy() the cover to a new location > * Use the "fill in the blanks" approach and just poke some values into > specific locations in that cover > > Fairly wasteful and you can't do anything to eliminate some of the dead > code. Indeed, but it's much faster than standard compilation. The only use I can see for it is in recompiling (self-modification handling) cores, where it could be very neat indeed. > -->Neil Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 13:00:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA18487 for dynarec-outgoing; Fri, 14 Apr 2000 13:00:27 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <001701bfa64c$1b01eea0$8f52883e@ben> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Dynarecs Date: Fri, 14 Apr 2000 20:46:54 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > Just as NB says about synths, I can say that you wouldn't notice when a ST > > > used for music, since it surely isn't the YM2149 that's used but the MIDI > > > communicate with synths. > > I've never been that much of a music fan, so I'm not really up on MIDIs, but > > don't you get different quality MIDI controllers? For instance, the sort of > > cheap crap they'd likely bung in the back of an inexpensive home computer > > would only have support for four MIDI channels, whilst a professional set up > > would require 8, 16, or 32 channels? > > Unfortunately, people think that MIDI is a sound standard, like WAV. It's > not! All MIDI is is a 31.5kbps serial interface that transfers note > on/note off and various controller information. Inherently it has *NO* > sound encoded in it at all. So for you to actually get sound out of a MIDI > file, the device you're sending it to must have sound generation > capabilities. > > What most people hear as "MIDI" files is what's called general MIDI. It's > a list of sounds that are expected to be on certain channels and > controlled with certain controllers (like volume), and it just takes the > note data and generates sound out of it. The problem with it is that it > sounds, well, general. Uninteresting. Boring. > > A MIDI interface is a MIDI interface. There's no way for you to actually > hear the difference because they're just serial ports. The thing that > makes the sound is what it's connected to. You could have the best MIDI > interface in the world with the most horrid synths and create bad sounding > music, and also have the worst MIDI interface in the world and connect it > to execllent synths and have great music. > > FWIW, Tangerine Dream's Optical Race was done on a 1040ST. Quite a good > album. > > Every MIDI interface comes with 16 channels per bus. Some MIDI interfaces > only have 1 bus, some have 2 buses. As an example, I have a Mark Of The > Unicorn MIDI Timepiece/AV, which has *8* MIDI buses (For a total of 128 > channels). But all 16 MIDI channels go over the same bus. Ah, right. I knew MIDI worked by instructing various prerecorded instruments (on your keyboard or your soundcard or whatever) to play at different pitches for different durations, but I thought it worked in parallel, thus the somewhat reduced number of possible instruments. How versatile is it? Do you specify specific notes, or actual frequencies, and, if so, how finely can you tune the frequencies? So am I correct in assuming that the ST only had a single bus? Did the later models have more? Also, how complex is the data required? The MIDI files I've got sat here on my PC are certainly teeny tiny compared to WAVs, MP3s, IT/XM, and suchlike, but most of them are still pushing 30k, which seems a lot for a few "play this note now" instructions. I've also got two copies of a song somewhere that sound pretty much identical, are of similar duration, but are massively different in size. 30k vs. 4k. Don't tell me someone's already invented MPMIDI? ;) Either that, or most people release WAVs of all the instruments used with their MIDI songs to ensure you've got the right stuff. > -->Neil Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 13:00:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA18494 for dynarec-outgoing; Fri, 14 Apr 2000 13:00:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <001801bfa64c$1ce72960$8f52883e@ben> From: "Andrew Davidson" To: References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarecs Date: Fri, 14 Apr 2000 20:59:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Yeah, sorry about that! ;) Anyway, they didn't have Teletubbies to teach us > >pronunciation when I was a lad. > > Lucky you! Too right, although their artificially intelligent hoover is pretty cool. > >They had the Klangers! Meep! > > Pardon? Ever heard of Big Klanger, Small Klanger, Tiny Klanger? The Soup Dragon? Classic TV! If they don't show it in Germany you should start a petition or something. And get them to put on Mr Benn, too. And Bagpuss, that was brilliant. Fingermouse! Don't forget that! Cor... Nostalgia's setting in... > >:) It's work that's doing it. I'd be all right if I was sat at home with my > >feet up and a nice hot cup of tea! > > Yeah, a cup of black tea would be nice now ;-) Black tea? Urk! Milk in tea. Extra coffee in coffee. That's the way to do it! :) > >Right, got it. This would actually end up being supported by the system > >anyway, albeit in a slightly messy fashion. Just by way of explanation, I'm > >considering blocks to begin at whatever address is jumped to, and end at the > >first unconditional modification of the program counter. > > NB does it the same way and I think I'd do it as well, although in compiler > theory a basic block ends with the first conditional interruption of a code > sequence. Does it? I never did any courses on compilers. Unconditional modification is definately the way to go, though, because it's the largest blocksize you can easily measure, so you reduce fannying around time trying to sort out which block you should be running in and compiling new segments of code and stuff. > >This means that > >your example above would be seen by the compiler as the two line version. It > >would compile that block and carry on merrily on its way. > > I never saw a merry dynarec before! Is it AI? ;-) Nope, it's just pissed. "Ho ho ho... *hic*! Time for a GPF, mayhap? *burp* *giggle*". > >When the first jmp > >got modified to a nop it would (because it's stupid and doesn't check for > >nops) replace the jmp code with a jump to a block of code consisting of > >nothing more exciting than a jump back to the block termination code (the > >bit that flushes the CPU register caches back to memory, adds the number of > >clocks on to the timer, and rets back to the C/C++/whatever control loop). > > That's what I guessed. > BTW, do you calculate the cycles at the end of each block? When I can get away with it, yes. The loss of accuracy is pretty minor, so unless the system requires spot on perfect timing (because video/audio/secondary cpus require it) you can easily more than halve the x86 cycle count for a block by chopping out the cycle count and test, not to mention save a ton of space for your x86 caches. > >The PC would then be pointing at the 'sub' command, which hasn't been > >compiled, so this would be compiled for the first time as a two instruction > >block comprising the sub and the jmp. Everything would continue merrily on > >its way, and no harm would be done. > > Which leads exactly to the 2 blocks and 1 sub-block I expected. A bit spooky > when you consider that I didn't really study that part of your code! Well done that man. To be honest, I haven't studied it in a while myself, and I've probably gone and done something stupid that'll cause it to fall over in this sort of situation, but *theoretically* it should work fine. :) > >Of course, that's not optimal because > >you've introduced a bit of jumping around in the code that really doesn't > >need to be there (a split block, of sorts), but a bit of clever compiler > >coding would allow you to spot recompilation of terminating opcodes and deal > >with it by compiling the rest of the block in after the initial block. > > Well, the question is how often code shows such a behaviour anyway, but if it > happens from time to time then replacing jumps and using nops as replacement > should be specially handled. I doubt it'll happen enough to warrant the effort, really. Once or twice a program, if that. > -- > M.I.Ke Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 13:29:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA18609 for dynarec-outgoing; Fri, 14 Apr 2000 13:29:01 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <001601bfa64c$196f19a0$8f52883e@ben> Message-Id: <0003653e619f2b0f_mailit@mailhub.rrze.uni-erlangen.de> References: <001601bfa64c$196f19a0$8f52883e@ben> Date: Fri, 14 Apr 2000 22:18:50 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >[code templates] >Indeed, but it's much faster than standard compilation. The only use I can >see for it is in recompiling (self-modification handling) cores, where it >could be very neat indeed. I'm not sure if it's really that much faster, but the "generated" code will certainly be slower since you cannot perform redundant flag calculation reduction or even simple peephole optimisations. When you don't have very severely self-modifying code then you'll be on the faster side with dynamic code generation after about the third run, I guess. -- M.I.Ke No problem is so formidable that you can't just walk away from it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 13:29:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA18622 for dynarec-outgoing; Fri, 14 Apr 2000 13:29:13 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <001801bfa64c$1ce72960$8f52883e@ben> Message-Id: <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> Date: Fri, 14 Apr 2000 22:29:05 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Too right, although their artificially intelligent hoover is pretty cool. Don't tell me you're really watching it! >Ever heard of Big Klanger, Small Klanger, Tiny Klanger? The Soup Dragon? >Classic TV! If they don't show it in Germany you should start a petition or >something. And get them to put on Mr Benn, too. And Bagpuss, that was >brilliant. Fingermouse! Don't forget that! Cor... Nostalgia's setting in... Doesn't ring a bell... Maybe they changed the names? >Black tea? Urk! Milk in tea. Extra coffee in coffee. That's the way to do >it! :) I drink my tea without milk, but with a bit sugar. I have a great tea mixture - called Batavia - from Java, no not the language but the island ;-) >Does it? I never did any courses on compilers. It depends on which book you read, but most share the opinion that a basic block starts at the entry point and must be an uniterrupted sequence, and a conditional jump would be an interruption. >Unconditional modification is >definately the way to go, though, because it's the largest blocksize you can >easily measure, so you reduce fannying around time trying to sort out which >block you should be running in and compiling new segments of code and stuff. Indeed. >> I never saw a merry dynarec before! Is it AI? ;-) >Nope, it's just pissed. "Ho ho ho... *hic*! Time for a GPF, mayhap? *burp* >*giggle*". GPF? BTW, the portmonteau word from Lewis Carrol's book (was it "Alice in Wonderland" or "Through the Looking-Glass?") is "mayhaps", and a special one indeed because it's also a hen-dia-dioin ;-) Because you asked for a DR-FAQ: anything you want to be included? >Andrew -- M.I.Ke In the Top 40, half the songs are secret messages to the teen world to drop out, turn on, and groove with the chemicals and light shows at discotheques. -- Art Linkletter --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 13:37:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA18664 for dynarec-outgoing; Fri, 14 Apr 2000 13:37:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 14 Apr 2000 13:37:03 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs In-Reply-To: <001601bfa64c$196f19a0$8f52883e@ben> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > * Use the "fill in the blanks" approach and just poke some values into > > specific locations in that cover > > Fairly wasteful and you can't do anything to eliminate some of the dead > > code. > Indeed, but it's much faster than standard compilation. The only use I can > see for it is in recompiling (self-modification handling) cores, where it > could be very neat indeed. I don't see why compilation speed would be an issue at all. Even recompling a 128K object only takes a fraction of a second, and during emulation you wouldn't notice it anyway. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 13:41:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA18685 for dynarec-outgoing; Fri, 14 Apr 2000 13:41:49 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 14 Apr 2000 13:41:49 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs In-Reply-To: <001701bfa64c$1b01eea0$8f52883e@ben> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Ah, right. I knew MIDI worked by instructing various prerecorded instruments > (on your keyboard or your soundcard or whatever) to play at different > pitches for different durations, but I thought it worked in parallel, thus > the somewhat reduced number of possible instruments. How versatile is it? Do > you specify specific notes, or actual frequencies, and, if so, how finely > can you tune the frequencies? It depends entirely upon the device you're talking to. That's like saying "What's the seek time over SCSI vs. IDE?" The seek time is bound to the drive - not to the interface itself. > So am I correct in assuming that the ST only had a single bus? Did the later > models have more? I think it only had one. At least the 1040. I never knew of a model that had more than one. Doesn't mean that it didn't exist, though. ;-) > Also, how complex is the data required? The MIDI files I've got sat here on > my PC are certainly teeny tiny compared to WAVs, That's because it's a list of notes and timestamps. It's not audio like MP3 or WAV. They aren't even comparable formats. MP3 and WAV files are just recorded audio. MIDI Is *NOT* recorded audio - it's like having the sheet music to a song. You still have to have something interpret the sheet music and turn it in to actual sound. > MP3s, IT/XM, and suchlike, > but most of them are still pushing 30k, which seems a lot for a few "play > this note now" instructions. Not really. You've got note on/note off messages, plus volume control changes and potentially patch changes too. Consider that a 3 note chord is 3 note on messages - 6 bytes each. So even short compositions can be fairly sizable. > I've also got two copies of a song somewhere > that sound pretty much identical, are of similar duration, but are massively > different in size. 30k vs. 4k. Don't tell me someone's already invented > MPMIDI? ;) Nope. What you're seeing in the 30k version is probably a bunch of minute controller changes like volume or perhaps panning, and that'll increase the size of the file. > Either that, or most people release WAVs of all the instruments used with > their MIDI songs to ensure you've got the right stuff. The thing about MIDI is you can compose on one set of synthesizers and it won't translate to another set, especailly if you start putting in controller changes. Think of the anaology: MIDI Is to wave as the SCSI bus is to a SCSI/Hard drive combo. MIDI Is just a serial interface - nothing more. It has no sound generating capabilities. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 14:58:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA19017 for dynarec-outgoing; Fri, 14 Apr 2000 14:58:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <002501bfa664$a801e4a0$0100a8c0@lion> From: "Neil Griffiths" To: References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarecs Date: Fri, 14 Apr 2000 23:56:18 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Too right, although their artificially intelligent hoover is pretty cool. > > Don't tell me you're really watching it! I know there's a hoover that is intelligent, but not much else. I only know what... well, what I haven't seen. I've never watched it! > >Ever heard of Big Klanger, Small Klanger, Tiny Klanger? The Soup Dragon? > >Classic TV! If they don't show it in Germany you should start a petition or > >something. And get them to put on Mr Benn, too. And Bagpuss, that was > >brilliant. Fingermouse! Don't forget that! Cor... Nostalgia's setting in... > > Doesn't ring a bell... Maybe they changed the names? Damn, you've missed out! Rhubarb and Custard? No? Oh no! ;) > >Black tea? Urk! Milk in tea. Extra coffee in coffee. That's the way to do > >it! :) > > I drink my tea without milk, but with a bit sugar. I have a great tea mixture > - called Batavia - from Java, no not the language but the island ;-) And I... don't drink tea nor coffee. Heh. :) > >> I never saw a merry dynarec before! Is it AI? ;-) > >Nope, it's just pissed. "Ho ho ho... *hic*! Time for a GPF, mayhap? *burp* > >*giggle*". > > GPF? General Protection Fault. You've used Windows? Blue Screen Of Death? Usually one of those... > Because you asked for a DR-FAQ: anything you want to be included? There's a couple of things I want, but my brain has switched off for now so I'll let you know tomorrow. BTW, Mike, any places you can recommend visiting in Bavaria? I fancy going somewhere on Sunday because it should be nice - but I have no idea where might be nice. :) Nuernburg is a possibility - but I'm not sure how much there will be to do on a Sunday... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 14 17:40:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id RAA19540 for dynarec-outgoing; Fri, 14 Apr 2000 17:40:43 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <002501bfa664$a801e4a0$0100a8c0@lion> Message-Id: <0003654200648037_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bfa664$a801e4a0$0100a8c0@lion> Date: Sat, 15 Apr 2000 02:37:58 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I know there's a hoover that is intelligent, but not much else. I only know >what... well, what I haven't seen. I've never watched it! I hadn't assumed that *anything* in that show is intelligent at all! ;-) >Damn, you've missed out! Rhubarb and Custard? No? Oh no! ;) Well, do you know Pumukel or Jim Knopf? >And I... don't drink tea nor coffee. Heh. :) I don't drink coffee either... >General Protection Fault. You've used Windows? Blue Screen Of Death? Usually >one of those... Why do you all have to use these TLAs? ;-) >[DR-FAQ] >There's a couple of things I want, but my brain has switched off for now so Hey, you're pretty good at typing without your brain ;-) >I'll let you know tomorrow. OK. >BTW, Mike, any places you can recommend visiting in Bavaria? I fancy going >somewhere on Sunday because it should be nice - but I have no idea where >might be nice. :) Good question, I'm not really the traveller type... The Americans always seem to visit King Ludwig's castles (Neuschwanstein, Hohenschwangau), but I'm not sure if that's of interest for you. Bamberg is a very nice city, especially with very good beer ;-) >Nuernburg is a possibility - but I'm not sure how much there will be to do >on a Sunday... Well, most interesting locations will be closed, I'm afraid. Hey, you could even visit me ;-) -- M.I.Ke There has been an alarming increase in the number of things you know nothing about. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 01:42:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA20979 for dynarec-outgoing; Sat, 15 Apr 2000 01:42:08 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: Grrrrr..... Date: Sat, 15 Apr 2000 04:43:19 -0400 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: <200004100934.LAA00754@pons.ac.upc.es> <38F1A306.359D7B6@eurocopter.de> <000364e729ec91f7_mailit@mailhub.rrze.uni-erlangen.de> <38F1CBDF.23705F97@eurocopter.de> <000364e7d1547fd9_mailit@mailhub.rrze.uni-erlangen.de> In-Reply-To: <000364e7d1547fd9_mailit@mailhub.rrze.uni-erlangen.de> X-Mailer: Forte Agent 1.6/32.525 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Sorry, I've been busy and have fallen behind in reading. :( On Mon, 10 Apr 2000 15:02:22 +0200, Michael Koenig wrote: >>We've taken this into account too. I think too much is said about the >>"overheads". Yes, there are some. But you can get around most of them if >>you structure the code correctly. And make use of virtuals and pointers. > >If you are using pointers then it isn't clean C++... Just what do you mean by pointers not being clean C++? What the heck do you think a class instance is??? A pointer. To the instance and it's data/function pointers. Maybe I just don't understand something. I am self taught without the benefit (?) of college, so I haven't had the esoteric learning you all seem privy to. Only 20 years in the field experience. :) -- Jack ---- "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." - Benjamin Franklin --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 01:59:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA21002 for dynarec-outgoing; Sat, 15 Apr 2000 01:59:01 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec terms votation Date: Sat, 15 Apr 2000 05:00:17 -0400 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: <200004120958.LAA23883@pons.ac.upc.es> <38F465B2.31B83D8C@eurocopter.de> <00036511f973f09d_mailit@mailhub.rrze.uni-erlangen.de> <38F499BD.49A63B39@eurocopter.de> <00036512a7bc52f5_mailit@mailhub.rrze.uni-erlangen.de> <38F56A94.98D46A22@eurocopter.de> In-Reply-To: <38F56A94.98D46A22@eurocopter.de> X-Mailer: Forte Agent 1.6/32.525 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Thu, 13 Apr 2000 08:35:00 +0200, Neil Griffiths wrote: >> No, because the big problem is not how to "retranslate" the code but how to >> quickly identify if the code has been modified! > >Split off each 4K (or less). If a write happens inside one of the 4K >blocks, mark it somewhere (you only need 1 bit to do this). If the IP gets >to that 4K then recompile. > >If you can handle going back to translate code again, this shouldn't be a >problem. And it should be pretty damn fast too. > >That's just a quick idea I've come up with. Probably isn't the best in the >world - but I did come up with it in just under 5 seconds. :) What if the opcode and it's parameters cross the 4KB block split? Look ahead a fixed number of bytes based on the maximum opcode size for a particular processor? -- Jack ---- "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." - Benjamin Franklin --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 02:17:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA21195 for dynarec-outgoing; Sat, 15 Apr 2000 02:17:18 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs Date: Sat, 15 Apr 2000 05:18:34 -0400 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: <200004141006.MAA14082@pons.ac.upc.es> <007a01bfa5fa$a8257f60$88dc48c2@icc.co.im> <38F6F57E.50BCAD82@eurocopter.de> In-Reply-To: <38F6F57E.50BCAD82@eurocopter.de> X-Mailer: Forte Agent 1.6/32.525 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Fri, 14 Apr 2000 12:39:58 +0200, Neil Griffiths wrote: >Hi, > >> It would definately be interesting, but think how much work it would take! >> Actually, I believe that some of the bigger processor manufacturers emulate >> new CPU designs before they actually start pouring millions into producing >> real live versions... it would certainly make some sense for them to, >> anyway. However, I'd imagine that they emulate them at a much lower level >> than we do. > >I know for a fact that most graphics chip companies do this. It may be >possible at some point for me to get the source to one of S3s chips in the >future. That could be interesting. Written in C, IIRC... Video hardware code is not written in C, but it is very C-like. >I find it hard to believe that AMD and Intel don't do the same. :) I can't say how CPUs are designed, only video hardware. ;) -- Jack ---- "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." - Benjamin Franklin --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 02:19:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA21204 for dynarec-outgoing; Sat, 15 Apr 2000 02:19:53 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs Date: Sat, 15 Apr 2000 05:21:09 -0400 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: <+zP4OJS1KUQqcZ6lWf3YAAA8z3LH@4ax.com> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze.uni-erlangen.de> In-Reply-To: <000365364e6755a0_mailit@mailhub.rrze.uni-erlangen.de> X-Mailer: Forte Agent 1.6/32.525 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Fri, 14 Apr 2000 12:40:48 +0200, Michael Koenig wrote: >>Heh! :) Spawn of the devil, those Atari things... (Says the bloke with a >>pile of old Amigas living in his garage) > >AHHH, take that you fiend! I have a Atari Mega STE 4 ready to run and a >1040ST in the antic! >BTW, do we really want to carry on with that Atari vs Amiga feud? ;-) I have both an ST and an Amiga. I'm feeling conflicted. :) -- Jack ---- "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." - Benjamin Franklin --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 02:21:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA21216 for dynarec-outgoing; Sat, 15 Apr 2000 02:21:50 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Jack To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs Date: Sat, 15 Apr 2000 05:23:06 -0400 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <00036537ae152139_mailit@mailhub.rrze.uni-erlangen.de> <019401bfa60d$a5234140$88dc48c2@icc.co.im> In-Reply-To: <019401bfa60d$a5234140$88dc48c2@icc.co.im> X-Mailer: Forte Agent 1.6/32.525 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Fri, 14 Apr 2000 13:33:31 +0100, "Andrew Davidson" wrote: >> Doesn't matter! Doesn't matter! Doesn't matter! Atari rules! Doesn't >matter! >> Doesn't matter! ;-) > >Indeed! Indeed! Indeed! They do not! Indeed! Indeed! Indeed! > >We may just have invented a whole new form of communication... ;) Sorry, 6 year olds have been using this technique for millennia. :p -- Jack ---- "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." - Benjamin Franklin --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 02:47:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA21256 for dynarec-outgoing; Sat, 15 Apr 2000 02:47:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarec terms votation From: Michael Koenig In-Reply-To: Message-Id: <00036549a9001480_mailit@mailhub.rrze.uni-erlangen.de> References: <200004120958.LAA23883@pons.ac.upc.es> <38F465B2.31B83D8C@eurocopter.de> <00036511f973f09d_mailit@mailhub.rrze.uni-erlangen.de> <38F499BD.49A63B39@eurocopter.de> <00036512a7bc52f5_mailit@mailhub.rrze.uni-erlangen.de> <38F56A94.98D46A22@eurocopter.de> Date: Sat, 15 Apr 2000 11:46:12 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >>Split off each 4K (or less). If a write happens inside one of the 4K >>blocks, mark it somewhere (you only need 1 bit to do this). If the IP gets >>to that 4K then recompile. >>If you can handle going back to translate code again, this shouldn't be a >>problem. And it should be pretty damn fast too. >What if the opcode and it's parameters cross the 4KB block split? Look >ahead a fixed number of bytes based on the maximum opcode size for a >particular processor? That's a good qestion indeed, I'll have to think about it... >Jack -- M.I.Ke Necessity is a mother. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 05:19:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA23834 for dynarec-outgoing; Sat, 15 Apr 2000 05:19:26 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <002101bfa6d4$e1879560$163d883e@ben> From: "Andrew Davidson" To: References: <001601bfa64c$196f19a0$8f52883e@ben> <0003653e619f2b0f_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarecs Date: Sat, 15 Apr 2000 12:03:42 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >[code templates] > >Indeed, but it's much faster than standard compilation. The only use I can > >see for it is in recompiling (self-modification handling) cores, where it > >could be very neat indeed. > > I'm not sure if it's really that much faster, but the "generated" code will > certainly be slower since you cannot perform redundant flag calculation > reduction or even simple peephole optimisations. > When you don't have very severely self-modifying code then you'll be on the > faster side with dynamic code generation after about the third run, I guess. I suppose it depends on how efficiently your 'normal' compiler works. However, I'm certainly not suggesting you'd use the precompiled version the whole time as, yes, it would kill off any execution speed optimisations you could get. Just to really upset you I'd use it with your other least favourite emulation method, the hybrid system! ;) You'd only start using the precompiled stuff when something needed recompiling, and use the normal, slower to compile, but easily optimised method for the initial compile of any code block. If you combined those with the block splitting method you might even be able to get a decent speed going for most self modifying code stuff. > -- > M.I.Ke > > No problem is so formidable that you can't just walk away from it. Even your random sig generator is starting to get worried about the amount of work in an optimised compiler with precompiled sub-block based dynarec support! Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 05:19:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA23845 for dynarec-outgoing; Sat, 15 Apr 2000 05:19:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <002201bfa6d4$e58f13e0$163d883e@ben> From: "Andrew Davidson" To: References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarecs Date: Sat, 15 Apr 2000 12:26:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Too right, although their artificially intelligent hoover is pretty cool. > > Don't tell me you're really watching it! Erm... err... I turned the telly on one day by accident and there it was. Honest. I couldn't help it. They held me down and made me watch it! I didn't want to! > >Ever heard of Big Klanger, Small Klanger, Tiny Klanger? The Soup Dragon? > >Classic TV! If they don't show it in Germany you should start a petition or > >something. And get them to put on Mr Benn, too. And Bagpuss, that was > >brilliant. Fingermouse! Don't forget that! Cor... Nostalgia's setting in... > > Doesn't ring a bell... Maybe they changed the names? Okay. The Klangers are made of felt and live on the moon. When they're hungry they go down to visit the Soup Dragon who gives them some horrible looking green soup. If I was a Klanger I'd have snapped and waxed the bitch years ago, just for the opportunity for a bit of red meat! Mr Benn is the mecca of childrens TV. Every day Mr. Benn leaves his house and walks to the fancy dress party costume rental shop. There the mysterious 'Shop Keeper' gives him a new outfit, which he goes into the changing room to try on. When he's put it on he leaves the changing room and finds himself in a whole new world that pertains to his outfit. He's been all over the place. A pirate, an astronaut, a cowboy.... loads of stuff. At the end of the episode the voiceover man says "As if by magic, the shopkeeper appeared" and he's led through a door that goes back to the changing room. It's a cartoon, and probably explains why I grew up like I did. Mr. Benn never bloody had to work, so why should I? Bagpuss! Bagpuss is brilliant! He's a big, slow, thick soft toy who comes to life at the start of every episode. "And when Bagpuss wakes up, all his friends wake up". So you get this funny wooden bookend in the shape of a woodpecker, a raggity-anne doll, a one of those frogs that's really a mini beanbag, and, of course, the mice. They all live in a shop owned by a little girl called Emily, I think, (who's going to be in real trouble when the DHSS Child Labour division lot get word of it!) and she brings in something old and knackered every episode which the mice fix, whilst singing "We will fix it, we will fix it!". Probably the best remembered episode is the one where the mice con everybody into thinking that some weird dolls house thing that Emily's brought in is actually a chocolate biscuit making machine. Wonderful stuff. Fingermouse, is, well, brilliant. I need a bigger vocabulary! It must have been made on a budget of £3.50, and involves a mouse made out of a tube of cardboard stuck on someone's middle finger, the rest of their fingers doing the job of legs. He's got big whiskers! It's a classic example of the BBC being stingy bastards and trying to cut costs, but still managing to produce something really rather special. Ahhh... memories. > >Black tea? Urk! Milk in tea. Extra coffee in coffee. That's the way to do > >it! :) > > I drink my tea without milk, but with a bit sugar. I have a great tea mixture > - called Batavia - from Java, no not the language but the island ;-) I thought they only did coffee. And you shouldn't put sugar in either! It masks the taste... > >Does it? I never did any courses on compilers. > > It depends on which book you read, but most share the opinion that a basic > block starts at the entry point and must be an uniterrupted sequence, and a > conditional jump would be an interruption. But it only *might* be an interruption. What do they do if it isn't? Or is this conditional jumps in the initial language, rather than in the machine code? Although that'd be a bit useless for Assembler... > >Unconditional modification is > >definately the way to go, though, because it's the largest blocksize you can > >easily measure, so you reduce fannying around time trying to sort out which > >block you should be running in and compiling new segments of code and stuff. > > Indeed. Is everybody in agreement? Put that in the FAQ! ;) > >> I never saw a merry dynarec before! Is it AI? ;-) > >Nope, it's just pissed. "Ho ho ho... *hic*! Time for a GPF, mayhap? *burp* > >*giggle*". > > GPF? General Protection Fault. I take it you're into Linux, then... > BTW, the portmonteau word from Lewis Carrol's book (was it "Alice in > Wonderland" or "Through the Looking-Glass?") is "mayhaps", and a special one > indeed because it's also a hen-dia-dioin ;-) Well... you can hardly expect a drunken, merry, non-AIy code translator to know that, now can you. The poor chap's only just got the Horatio/well thing sorted out... > Because you asked for a DR-FAQ: anything you want to be included? Everything! One of those multi volume 10MB download thingies would be ideal. All the URLs on your page would be nice too, because that gives me even less chance of losing them! :) > -- > M.I.Ke Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 05:19:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA23852 for dynarec-outgoing; Sat, 15 Apr 2000 05:19:35 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <002301bfa6d4$e80ce520$163d883e@ben> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Dynarecs Date: Sat, 15 Apr 2000 12:30:06 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > * Use the "fill in the blanks" approach and just poke some values into > > > specific locations in that cover > > > Fairly wasteful and you can't do anything to eliminate some of the dead > > > code. > > Indeed, but it's much faster than standard compilation. The only use I can > > see for it is in recompiling (self-modification handling) cores, where it > > could be very neat indeed. > > I don't see why compilation speed would be an issue at all. Even > recompling a 128K object only takes a fraction of a second, and during > emulation you wouldn't notice it anyway. Yeah, but recompiling it a few hundred times a second takes a few hundred fractions of a second. Recompiling it a few thousand times a second takes s Cray. I'm not talking about using this method for the initial compilation of a block. Just for any recompilation that may be needed in the event of self-modifying code, in which case you'd need as much compilation speed as possible. Sacrificing a few thousand execution cycles is well worth it to save a few hundred thousand (or tens of thousands if you turn some of the optimisation off) compilation cycles. > -->Neil Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 05:19:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA23862 for dynarec-outgoing; Sat, 15 Apr 2000 05:19:38 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <002401bfa6d4$e985c980$163d883e@ben> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Dynarecs Date: Sat, 15 Apr 2000 12:57:58 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Ah, right. I knew MIDI worked by instructing various prerecorded instruments > > (on your keyboard or your soundcard or whatever) to play at different > > pitches for different durations, but I thought it worked in parallel, thus > > the somewhat reduced number of possible instruments. How versatile is it? Do > > you specify specific notes, or actual frequencies, and, if so, how finely > > can you tune the frequencies? > > It depends entirely upon the device you're talking to. That's like saying > "What's the seek time over SCSI vs. IDE?" The seek time is bound to the > drive - not to the interface itself. Surely there's an industry standard way of talking to a keyboard or synth or whatever it is you've got your MIDI plugged into. Otherwise all the keyboard manufacturers would be running around expecting their own format to be used and requiring that you have custom software for each different keyboard you buy. They can't be that stupid, can they? I owned a really crap MIDI years ago, which I bought to plug my Amiga into a cheap and nasty Yamaha keyboard. I remember them working fine with MED and SoundTracker, and I didn't need to inform the Amiga of the make and manufacturer of the thing. > > So am I correct in assuming that the ST only had a single bus? Did the later > > models have more? > > I think it only had one. At least the 1040. I never knew of a model that > had more than one. Doesn't mean that it didn't exist, though. ;-) What's the price range from a single bus MIDI to one of those eight bus things like you've got? Given that it's such a simple device you'd think they'd be pretty cheap regardless of the number of buses, but I bet they charge a fortune. > > Also, how complex is the data required? The MIDI files I've got sat here on > > my PC are certainly teeny tiny compared to WAVs, > > That's because it's a list of notes and timestamps. It's not audio like > MP3 or WAV. > > They aren't even comparable formats. MP3 and WAV files are just recorded > audio. MIDI Is *NOT* recorded audio - it's like having the sheet music to > a song. You still have to have something interpret the sheet music and > turn it in to actual sound. Indeed, but what I'm asking is: How often can you make changes to the note that's currently playing. I think that's a better way of describing it. In all the old Amiga Tracker programs you could do volume slides and frequency changes and stuff, but you couldn't do all that many a second. What's the maximum data frequency over a MIDI bus, and do you need top of the range hardware at the other end to be able to respond to it (thus is there a recommended cap, or just a hardware limited maximum). > > MP3s, IT/XM, and suchlike, > > but most of them are still pushing 30k, which seems a lot for a few "play > > this note now" instructions. > > Not really. You've got note on/note off messages, plus volume control > changes and potentially patch changes too. Consider that a 3 note chord is > 3 note on messages - 6 bytes each. So even short compositions can be > fairly sizable. So how do you set which note to play? Do send a note on message with a specific note frequency, or is it more limited than that? Do you send a note on message with a 'Play C#' message? I'm really getting out of my depth here, because I can't read sheet music and I don't understand the principles behind it, but how many note on messages are you likely to get a second? Isn't the standard four beats to the bar? And most notes are... One beat? Half a beat? So that's roughly 6 notes a second (I'll take an average until you fill me in on the details) plus potentially chords and stuff, which is probably around eight bytes a second of data on average? Is that right? That would lead to a 30k song being a bit over an hour... possibly a tad low. :) > > I've also got two copies of a song somewhere > > that sound pretty much identical, are of similar duration, but are massively > > different in size. 30k vs. 4k. Don't tell me someone's already invented > > MPMIDI? ;) > > Nope. What you're seeing in the 30k version is probably a bunch of minute > controller changes like volume or perhaps panning, and that'll increase > the size of the file. Aha! This is what I'm after. How minute can these changes be? > > Either that, or most people release WAVs of all the instruments used with > > their MIDI songs to ensure you've got the right stuff. > > The thing about MIDI is you can compose on one set of synthesizers and it > won't translate to another set, especailly if you start putting in > controller changes. I was thinking about computer MIDIs, though, which allow you to upload sample data to the soundcard as MIDI instruments. > Think of the anaology: > > MIDI Is to wave as the SCSI bus is to a SCSI/Hard drive combo. MIDI Is > just a serial interface - nothing more. It has no sound generating > capabilities. Yep, fear not. I've got that sussed. It's just like the old Tracker mods (except without the instrument data included in the file, except in certain MIDI files intended for play on a soundcard. Erk!) > -->Neil Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 05:19:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA23870 for dynarec-outgoing; Sat, 15 Apr 2000 05:19:42 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <002501bfa6d4$eb41d160$163d883e@ben> From: "Andrew Davidson" To: References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bfa664$a801e4a0$0100a8c0@lion> Subject: Re: DYNAREC: Dynarecs Date: Sat, 15 Apr 2000 13:05:43 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > >Too right, although their artificially intelligent hoover is pretty cool. > > > > Don't tell me you're really watching it! > > I know there's a hoover that is intelligent, but not much else. I only know > what... well, what I haven't seen. I've never watched it! Ha! Don't believe him! He sends me regular urgent flagged emails to warn me when it's coming on! > > >Ever heard of Big Klanger, Small Klanger, Tiny Klanger? The Soup Dragon? > > >Classic TV! If they don't show it in Germany you should start a petition > or > > >something. And get them to put on Mr Benn, too. And Bagpuss, that was > > >brilliant. Fingermouse! Don't forget that! Cor... Nostalgia's setting > in... > > > > Doesn't ring a bell... Maybe they changed the names? > > Damn, you've missed out! Rhubarb and Custard? No? Oh no! ;) Oh, that was amazing! The music's great. Despite my best efforts, however, it doesn't translate to email very well... wooooooooaaaah da da woooooooaaaah da da wooah da da da da... See? Mind, Rhubarb and Custard is one of the newer ones... It's not got so much nostalgia value. > > >> I never saw a merry dynarec before! Is it AI? ;-) > > >Nope, it's just pissed. "Ho ho ho... *hic*! Time for a GPF, mayhap? > *burp* > > >*giggle*". > > > > GPF? > > General Protection Fault. You've used Windows? Blue Screen Of Death? Usually > one of those... I'm pretty sure he must be a Linux type. Maybe BeOS. Either that or he's like me and just hits the reset button in a huff every time his computer BSODs, without reading the chirpy little messages. Partially debugged self writing emulator cores just don't seem to get on very well with Windows... > Neil. Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 05:44:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA23902 for dynarec-outgoing; Sat, 15 Apr 2000 05:44:27 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <004a01bfa6d8$60ec2a20$163d883e@ben> From: "Andrew Davidson" To: References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <00036537ae152139_mailit@mailhub.rrze.uni-erlangen.de> <019401bfa60d$a5234140$88dc48c2@icc.co.im> Subject: Re: DYNAREC: Dynarecs Date: Sat, 15 Apr 2000 13:36:05 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > On Fri, 14 Apr 2000 13:33:31 +0100, "Andrew Davidson" > wrote: > > >> Doesn't matter! Doesn't matter! Doesn't matter! Atari rules! Doesn't > >matter! > >> Doesn't matter! ;-) > > > >Indeed! Indeed! Indeed! They do not! Indeed! Indeed! Indeed! > > > >We may just have invented a whole new form of communication... ;) > > Sorry, 6 year olds have been using this technique for millennia. :p No they haven't! No they haven't! No they haven't! You're Mr. Poo! No they haven't! No they haven't! Anyway, what makes you think I'm NOT six? :) > -- > Jack Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 05:44:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA23909 for dynarec-outgoing; Sat, 15 Apr 2000 05:44:29 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <004b01bfa6d8$625be6c0$163d883e@ben> From: "Andrew Davidson" To: References: <200004120958.LAA23883@pons.ac.upc.es> <38F465B2.31B83D8C@eurocopter.de> <00036511f973f09d_mailit@mailhub.rrze.uni-erlangen.de> <38F499BD.49A63B39@eurocopter.de> <00036512a7bc52f5_mailit@mailhub.rrze.uni-erlangen.de> <38F56A94.98D46A22@eurocopter.de> <00036549a9001480_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarec terms votation Date: Sat, 15 Apr 2000 13:43:07 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >>Split off each 4K (or less). If a write happens inside one of the 4K > >>blocks, mark it somewhere (you only need 1 bit to do this). If the IP gets > >>to that 4K then recompile. > >>If you can handle going back to translate code again, this shouldn't be a > >>problem. And it should be pretty damn fast too. > > >What if the opcode and it's parameters cross the 4KB block split? Look > >ahead a fixed number of bytes based on the maximum opcode size for a > >particular processor? > > That's a good qestion indeed, I'll have to think about it... Is this actually a problem? Your compiler isn't being limited by these blocks in any way. It isn't even aware of them. If the last byte of a block is modified you'd recompile the code from the address that maps to that last byte, which would also deal with the code in the next block. All you have to do is make sure you treat the 4K blocks as one big block when you're unflagging modified bytes (during recompilation), so as to catch half an instruction at the start of the block. Personally, I'd not use 4K blocks, though. Some sort of modified memory -> compiled block mapper that would allow me to flag, say, block 43 as having been messed with at some stage, would be better. > >Jack > > -- > M.I.Ke Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 06:03:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA23955 for dynarec-outgoing; Sat, 15 Apr 2000 06:03:37 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <002101bfa6d4$e1879560$163d883e@ben> Message-Id: <0003654c23660aca_mailit@mailhub.rrze.uni-erlangen.de> References: <001601bfa64c$196f19a0$8f52883e@ben> <0003653e619f2b0f_mailit@mailhub.rrze.uni-erlangen.de> <002101bfa6d4$e1879560$163d883e@ben> Date: Sat, 15 Apr 2000 14:43:35 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I suppose it depends on how efficiently your 'normal' compiler works. >However, I'm certainly not suggesting you'd use the precompiled version the >whole time as, yes, it would kill off any execution speed optimisations you >could get. One point for me. >Just to really upset you I'd use it with your other least >favourite emulation method, the hybrid system! ;) I've seen so much crap dynarec code so far that it takes a bit more to upset me ;-) >You'd only start using the >precompiled stuff when something needed recompiling, and use the normal, >slower to compile, but easily optimised method for the initial compile of >any code block. If you combined those with the block splitting method you >might even be able to get a decent speed going for most self modifying code >stuff. Hey, you could even have an interpreter for the initialization code of the ROM which is only executed once, but why should you implement three methods to get one thing running? >> No problem is so formidable that you can't just walk away from it. >Even your random sig generator is starting to get worried about the amount >of work in an optimised compiler with precompiled sub-block based dynarec >support! Yeah, this is true AI! >Andrew -- M.I.Ke "One planet is all you get." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 06:03:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA23967 for dynarec-outgoing; Sat, 15 Apr 2000 06:03:39 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <002201bfa6d4$e58f13e0$163d883e@ben> Message-Id: <0003654c4f4c3ff2_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002201bfa6d4$e58f13e0$163d883e@ben> Date: Sat, 15 Apr 2000 14:55:52 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Erm... err... I turned the telly on one day by accident and there it was. >Honest. I couldn't help it. They held me down and made me watch it! I didn't >want to! Who is they? The same as in "Oh my god, they killed Kenny?" >Okay. The Klangers are made of felt and live on the moon. Don't know it. >Mr Benn is the mecca of childrens TV. Every day Mr. Benn leaves his house >and walks to the fancy dress party costume rental shop. There the mysterious >'Shop Keeper' gives him a new outfit, which he goes into the changing room >to try on. When he's put it on he leaves the changing room and finds himself >in a whole new world that pertains to his outfit. No. >Bagpuss! Bagpuss is brilliant! He's a big, slow, thick soft toy who comes to >life at the start of every episode. "And when Bagpuss wakes up, all his >friends wake up". Sounds a bit familiar. >They all live in a shop owned by a little >girl called Emily, I think, (who's going to be in real trouble when the DHSS >Child Labour division lot get word of it!) Hehe. >Fingermouse, is, well, brilliant. I need a bigger vocabulary! It must have >been made on a budget of £3.50, and involves a mouse made out of a tube of >cardboard stuck on someone's middle finger, the rest of their fingers doing >the job of legs. He's got big whiskers! It's a classic example of the BBC >being stingy bastards and trying to cut costs, but still managing to produce >something really rather special. It doesn't take much money to make a child's eyes glow ;-) >Ahhh... memories. How much RAM? ;-) >I thought they only did coffee. Nope, certainly not. >And you shouldn't put sugar in either! It masks the taste... As does milk, I bet. >But it only *might* be an interruption. What do they do if it isn't? >Or is this conditional jumps in the initial language, rather than in the >machine code? Although that'd be a bit useless for Assembler... I guess this is why not all definitions of basic block are the same. But normally when the sequence might be interrupted somewhere (by an instruction of course and not an interrupt) then this is where the basic block ends. >Is everybody in agreement? Put that in the FAQ! ;) I'll mention both... >General Protection Fault. I take it you're into Linux, then... I only use Linux for LaTeX. I was just too tired for a good guess what the TLA means. >Well... you can hardly expect a drunken, merry, non-AIy code translator to >know that, now can you. Why not? >The poor chap's only just got the Horatio/well thing sorted out... Oh no, you should try to teach it some Sokrates at least! >> Because you asked for a DR-FAQ: anything you want to be included? >Everything! Since I'm more or less a theoretician it's hard for me to cover everything, especially when no-one tells me what everything is. >One of those multi volume 10MB download thingies would be ideal. Ok, your turn to do that! ;-) >All the URLs on your page would be nice too, I planned to do that with more comments on the specific aproaches and maybe even a list of most dynarec emulators around. >because that gives me even less chance of losing them! :) How about saving the page to disk? It doesn't have any images so you get the complete set. >Andrew -- M.I.Ke For perfect happiness, remember two things: (1) Be content with what you've got. (2) Be sure you've got plenty. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 06:03:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA23971 for dynarec-outgoing; Sat, 15 Apr 2000 06:03:40 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <002501bfa6d4$eb41d160$163d883e@ben> Message-Id: <0003654c6e33796c_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bfa664$a801e4a0$0100a8c0@lion> <002501bfa6d4$eb41d160$163d883e@ben> Date: Sat, 15 Apr 2000 15:04:30 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I'm pretty sure he must be a Linux type. Not really. >Maybe BeOS. Good guess ;-) I worked on TOS for several years, then RISC OS (yes, I have an English computer!), then on Windoze and Linux, and now I'm quite happy with BeOS - stable, fast, and nice to use. >Either that or he's >like me and just hits the reset button in a huff every time his computer >BSODs, without reading the chirpy little messages. Hey, it's always the came blabla anyway! BTW, how can you tell that Windows is installed on a computer without turning it on? You cannot read the letters on the reset button anymore! ;-) >Partially debugged self >writing emulator cores just don't seem to get on very well with Windows... When it crashes on BeOS you're asked if you want to start the debugger and no harm is made to the system itself. BTW, you must be a guy with multiple personalities, otherwise it's hard to explain why you were so silten in the beginning and now make more postings than I do... >Andrew -- M.I.Ke Song Title of the Week: "They're putting dimes in the hole in my head to see the change in me." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 10:55:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA25058 for dynarec-outgoing; Sat, 15 Apr 2000 10:55:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 15 Apr 2000 10:55:33 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs In-Reply-To: <002401bfa6d4$e985c980$163d883e@ben> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > It depends entirely upon the device you're talking to. That's like saying > > "What's the seek time over SCSI vs. IDE?" The seek time is bound to the > > drive - not to the interface itself. > Surely there's an industry standard way of talking to a keyboard or synth or > whatever it is you've got your MIDI plugged into. There is for actual notes and volume control changes, but everything else is up to the manufacturer. All the expressiveness of filter cutoff, when LFOs are triggered, etc... is completely different on every synth. That's because the structure of each synth is entirely different from the next. Standardizing such a thing would be severely limiting what the manufacturer could (or could not) do with the structure of the synth. > Otherwise all the keyboard > manufacturers would be running around expecting their own format to be used > and requiring that you have custom software for each different keyboard you > buy. They can't be that stupid, can they? This is the way it is! Unless you want to use general MIDI, which varies in style/sound from synth to synth, but even then that only gives you patches and notes on certain channels (and thusly sucks). > I owned a really crap MIDI years ago, which I bought to plug my Amiga into a > cheap and nasty Yamaha keyboard. I remember them working fine with MED and > SoundTracker, and I didn't need to inform the Amiga of the make and > manufacturer of the thing. If all you're doing is just basic notes it'll work with any synth. I really doubt you were changing resonance frequencies or anything complex. Cheap and nasty Yamaha keyboards don't have thea bility tochange this stuff anyway. > > I think it only had one. At least the 1040. I never knew of a model that > > had more than one. Doesn't mean that it didn't exist, though. ;-) > What's the price range from a single bus MIDI to one of those eight bus > things like you've got? Given that it's such a simple device you'd think > they'd be pretty cheap regardless of the number of buses, but I bet they > charge a fortune. For a PC, I think single MIDI ports are around $49. The MIDI Timepiece AV is $395, but also consider it does more than just MIDI. It also speaks house timecode, video synchronization, MIDI time code, and ADAT machine control and is able to translate between them all. It also has a lot of funky routing and filtering capabilities that a regular single port MIDI interface wouldn't have. > > They aren't even comparable formats. MP3 and WAV files are just recorded > > audio. MIDI Is *NOT* recorded audio - it's like having the sheet music to > > a song. You still have to have something interpret the sheet music and > > turn it in to actual sound. > Indeed, but what I'm asking is: How often can you make changes to the note > that's currently playing. I think that's a better way of describing it. In > all the old Amiga Tracker programs you could do volume slides and frequency > changes and stuff, but you couldn't do all that many a second. What's the > maximum data frequency over a MIDI bus, and do you need top of the range > hardware at the other end to be able to respond to it (thus is there a > recommended cap, or just a hardware limited maximum). Even cheap hardware (486s and the like) can deal with it pretty fast. It's a 31.5kbps stream, which is about 320 microseconds per byte. Each MIDI message is 2 or 3 bytes long on average, so you're looking at almost a millisecond maximum for note on/note off transitions. But in practice each synthesizer responds in more like 3-6 milliseconds after the note has been received. So there's usually a lag. But there's no difference in one MIDI interface over the next. It's just like a serial port - like a regular serial port that's slower than the one on the back of any PC. > > Not really. You've got note on/note off messages, plus volume control > > changes and potentially patch changes too. Consider that a 3 note chord is > > 3 note on messages - 6 bytes each. So even short compositions can be > > fairly sizable. > So how do you set which note to play? Do send a note on message with a > specific note frequency, or is it more limited than that? Do you send a note > on message with a 'Play C#' message? Yes, exactly. There's an 8 octave range, and you just send it a number. C0 Is 32, C#0 is 33, D0 is 34, etc... and so on. In your note on message, you also send it a velocity from 0 to 127. That note will stay on until you send it a note off command. > I'm really getting out of my depth here, because I can't read sheet music > and I don't understand the principles behind it, but how many note on > messages are you likely to get a second? It's entirely dependent on the music. Something like the Moonlight Sonota has much less note data because it's mostly quarter notes. But take something like Rage over a Lost Penny and it's quite a bit higher than that. > Isn't the standard four beats to > the bar? There is no "standard". It's entirely dependent on the song. > And most notes are... One beat? Half a beat? So that's roughly 6 > notes a second (I'll take an average until you fill me in on the details) > plus potentially chords and stuff, which is probably around eight bytes a > second of data on average? Is that right? That would lead to a 30k song > being a bit over an hour... possibly a tad low. :) What you're trying to do here is take something that's extremely broad and making it narrow and general. Music just doesn't work that way. Basically, the faster the notes come in the music the larger the file is going to be, since each note on/note off is recorded. > > Nope. What you're seeing in the 30k version is probably a bunch of minute > > controller changes like volume or perhaps panning, and that'll increase > > the size of the file. > Aha! This is what I'm after. How minute can these changes be? The fastest you can make them go is about 640 milliseconds (two bytes for controller messages) per control change. > > The thing about MIDI is you can compose on one set of synthesizers and it > > won't translate to another set, especailly if you start putting in > > controller changes. > I was thinking about computer MIDIs, though, which allow you to upload > sample data to the soundcard as MIDI instruments. I have no idea what you mean, here. If you're talking about feeding a MIDI file to the sound card (Which is a general MIDI device interanlly), the card does all the sound generation. MIDI Does not transport actual audio data. Unless you're talking about SMIDI which is only available for samplers (and is today an abandoned standard) and it's dog slow. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 10:57:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA25072 for dynarec-outgoing; Sat, 15 Apr 2000 10:57:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 15 Apr 2000 10:57:40 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs In-Reply-To: <002301bfa6d4$e80ce520$163d883e@ben> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > I don't see why compilation speed would be an issue at all. Even > > recompling a 128K object only takes a fraction of a second, and during > > emulation you wouldn't notice it anyway. > Yeah, but recompiling it a few hundred times a second takes a few hundred > fractions of a second. It depends. If your target code has no self modifying code then I fail to see why this would make any difference. > a block. Just for any recompilation that may be needed in the event of > self-modifying code, in which case you'd need as much compilation speed as > possible. But you shouldn't focus on that or even be concerned about it. It seldom happens. And in the case where it does quite frequently, an emulated CPU core would be a better approach because a well written emulated CPU is going to be faster than any recompiler. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 15:35:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA26081 for dynarec-outgoing; Sat, 15 Apr 2000 15:35:08 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <000201bfa72a$e27d7100$423a883e@ben> From: "Andrew Davidson" To: References: <001601bfa64c$196f19a0$8f52883e@ben> <0003653e619f2b0f_mailit@mailhub.rrze.uni-erlangen.de> <002101bfa6d4$e1879560$163d883e@ben> <0003654c23660aca_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarecs Date: Sat, 15 Apr 2000 16:51:09 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >I suppose it depends on how efficiently your 'normal' compiler works. > >However, I'm certainly not suggesting you'd use the precompiled version the > >whole time as, yes, it would kill off any execution speed optimisations you > >could get. > > One point for me. He shoots... he scores! ;) > >Just to really upset you I'd use it with your other least > >favourite emulation method, the hybrid system! ;) > > I've seen so much crap dynarec code so far that it takes a bit more to upset > me ;-) It's not the dynarec code that you have to worry about. It's the machine code it generates... > >You'd only start using the > >precompiled stuff when something needed recompiling, and use the normal, > >slower to compile, but easily optimised method for the initial compile of > >any code block. If you combined those with the block splitting method you > >might even be able to get a decent speed going for most self modifying code > >stuff. > > Hey, you could even have an interpreter for the initialization code of the > ROM which is only executed once, but why should you implement three methods > to get one thing running? Because it's faster. The whole point of using a compiled CPU core is because an interpreted core is too slow. If you spend your whole time making your code readable, size efficient, and beautifully designed you'll end up with a beautiful, small, easily modified total waste of disk space. Speed speed speed! If ANSI goes out the window, who cares? > >> No problem is so formidable that you can't just walk away from it. > >Even your random sig generator is starting to get worried about the amount > >of work in an optimised compiler with precompiled sub-block based dynarec > >support! > > Yeah, this is true AI! There's a bloke on the comp.sys.sinclair newsgroup that has a random Spectrum error message tagged to the end of each of his emails. Whenever there's the faintest hint of a Speccy error that could fit the topic of conversation it'll come up! > -- > M.I.Ke Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 15:35:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA26090 for dynarec-outgoing; Sat, 15 Apr 2000 15:35:11 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <000301bfa72a$e4b81ec0$423a883e@ben> From: "Andrew Davidson" To: References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bfa664$a801e4a0$0100a8c0@lion> <002501bfa6d4$eb41d160$163d883e@ben> <0003654c6e33796c_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarecs Date: Sat, 15 Apr 2000 16:56:26 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >I'm pretty sure he must be a Linux type. > > Not really. > > >Maybe BeOS. > > Good guess ;-) > I worked on TOS for several years, then RISC OS (yes, I have an English > computer!), then on Windoze and Linux, and now I'm quite happy with BeOS - > stable, fast, and nice to use. Are you using the freebie version, or has the full price edition come out yet? Being limited to half a gig of harddrive can't be nice. > >Either that or he's > >like me and just hits the reset button in a huff every time his computer > >BSODs, without reading the chirpy little messages. > > Hey, it's always the came blabla anyway! > BTW, how can you tell that Windows is installed on a computer without turning > it on? > You cannot read the letters on the reset button anymore! ;-) Rubbish! I haven't even got any letters on my reset button! Erm... ah. Damn... > >Partially debugged self > >writing emulator cores just don't seem to get on very well with Windows... > > When it crashes on BeOS you're asked if you want to start the debugger and no > harm is made to the system itself. The same thing happens in Windows if you've got VC++ installed. The only difference being, I assume, that BeOS catches more errors. Still, I bet it's got holes somewhere. Has it ever crashed properly on you? > BTW, you must be a guy with multiple personalities, otherwise it's hard to > explain why you were so silten in the beginning and now make more postings > than I do... I was busy with work, was only subscribed to the mailing list from home, and was coding away happily when I was at home. This week I've been pretty bored and not in a programming mood at all, so I decided to inflict myself on the rest of you. Hard luck! ;) > -- > M.I.Ke Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 15 18:15:09 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id SAA26683 for dynarec-outgoing; Sat, 15 Apr 2000 18:15:09 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <000201bfa72a$e27d7100$423a883e@ben> Message-Id: <00036556a136e1f9_mailit@mailhub.rrze.uni-erlangen.de> References: <001601bfa64c$196f19a0$8f52883e@ben> <0003653e619f2b0f_mailit@mailhub.rrze.uni-erlangen.de> <002101bfa6d4$e1879560$163d883e@ben> <0003654c23660aca_mailit@mailhub.rrze.uni-erlangen.de> <000201bfa72a$e27d7100$423a883e@ben> Date: Sun, 16 Apr 2000 03:14:36 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >It's not the dynarec code that you have to worry about. It's the machine >code it generates... It's both. On one hand I thought I had to go blind when I saw MIPS dynarecs generating the following code for each simple instruction: mov eax, simRs1 operation eax, simRs2 mov simRd, eax On the other hand many dynarecs generate the code the following way: GenCodePointer += 0x12345678; /* emitt instruction whatsoever */ This is of course very easy to read and very easy to extend or debug... >> Hey, you could even have an interpreter for the initialization code of the >> ROM which is only executed once, but why should you implement three >>methods to get one thing running? >Because it's faster. The whole point of using a compiled CPU core is because >an interpreted core is too slow. If you spend your whole time making your >code readable, size efficient, and beautifully designed you'll end up with a >beautiful, small, easily modified total waste of disk space. Speed speed >speed! If ANSI goes out the window, who cares? But if you have such weird, large scale self-modifying code then it would be easier just to implement a very optimised interpretive core, as it won't be worth the hassle to do a dynarec. >There's a bloke on the comp.sys.sinclair newsgroup that has a random >Spectrum error message tagged to the end of each of his emails. Whenever >there's the faintest hint of a Speccy error that could fit the topic of >conversation it'll come up! Probably not IA but simple pattern matching - Eliza anyone? >[BeOS] >Are you using the freebie version, or has the full price edition come out >yet? I'm working with the commercial edition of BeOS 4.5.2 but I also have the personal edition of BeOS 5 and told my sister today that she should order the upgrade to BeOS 5 Pro since it's cheaper in the US than in Germany and I also would have to wait one or two more months to get it here. In the US it's shipping in the next week. >Being limited to half a gig of harddrive can't be nice. You haven't tried it yet or read some hints on BeNews or BeTips, have you? BeOS 5 PE comes with two tools which are also part of the commercial edition. DriveSetup lets you create and initialize a BFS partition (without any size limitations) and Installer lets you copy a whole BeOS installation from one partition to another, or in that special case from the partition file to the newly created partition. Absolutely no limitation there! >The same thing happens in Windows if you've got VC++ installed. The only >difference being, I assume, that BeOS catches more errors. Still, I bet it's >got holes somewhere. Has it ever crashed properly on you? I haven't had a real system crash yet, but I had to reset my machine twice. In one case the Tracker (similar to the Explorer) crashed and you cannot do much then. Of course you could simply restart the Tracker from a terminal but I didn't have one open. Now I have the tool BackOnTrack, which automatically recognizes when either Tracker or Deskbar don't run anymore and lets you restart these. The other case was when I was unable to terminate an application which was using the *experimental* hardware acceleration for OpenGL. So much for "system crashes" on BeOS ;-) I have application crashes from time to time (eg. the browser NetPositive if too many windows are open or with too many downloads at the same time) but you can restart the application after the crash without any problems. >I was busy with work, was only subscribed to the mailing list from home, and >was coding away happily when I was at home. This week I've been pretty bored >and not in a programming mood at all, so I decided to inflict myself on the >rest of you. Hard luck! ;) We have to bear that I guess ;-) >Andrew -- M.I.Ke No part of this message may reproduce, store itself in a retrieval system, or transmit disease, in any form, without the permissiveness of the author. -- Chris Shaw --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 16 04:36:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA28177 for dynarec-outgoing; Sun, 16 Apr 2000 04:36:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: DYNAREC: DRFAQ From: Michael Koenig Message-Id: <0003655f56949764_mailit@mailhub.rrze.uni-erlangen.de> Date: Sun, 16 Apr 2000 13:37:59 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com To reduce traffic on the mailing list I put a first outline of the DRFAQ online at: http://www.linguistik.uni-erlangen.de/~mlkoenig/drfaq.html Only the first "question" is answered so far, the rest is just brainstorming. Comments are very welcome! -- M.I.Ke "If I am elected, the concrete barriers around the WHITE HOUSE will be replaced by tasteful foam replicas of ANN MARGARET!" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 16 23:53:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA33468 for dynarec-outgoing; Sun, 16 Apr 2000 23:53:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38FAB3BE.82CB4BA@eurocopter.de> Date: Mon, 17 Apr 2000 08:48:30 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bfa664$a801e4a0$0100a8c0@lion> <0003654200648037_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >I know there's a hoover that is intelligent, but not much else. I only know > >what... well, what I haven't seen. I've never watched it! > > I hadn't assumed that *anything* in that show is intelligent at all! ;-) The Sun is, apparently. Always laughing at how stupid the Tellytubbies actually are. Apparently. Although I wouldn't know... because I've never seen it. :) > >Damn, you've missed out! Rhubarb and Custard? No? Oh no! ;) > > Well, do you know Pumukel or Jim Knopf? I know Jim Knopf. Ha! Do you know "Fireman Sam", eh? Or "Pobl y cwm" eh? ;)) > >General Protection Fault. You've used Windows? Blue Screen Of Death? Usually > >one of those... > > Why do you all have to use these TLAs? ;-) BTF. :)) > Hey, you're pretty good at typing without your brain ;-) I've had plenty of practice. :) > >I'll let you know tomorrow. > > OK. Whatever it was, I didn't let you know. I haven't e-mailed anyone from home for about 6 days now - which is really bad because I've got at least 100 messages I need to reply to. Arse! > >BTW, Mike, any places you can recommend visiting in Bavaria? I fancy going > >somewhere on Sunday because it should be nice - but I have no idea where > >might be nice. :) > > Good question, I'm not really the traveller type... > The Americans always seem to visit King Ludwig's castles (Neuschwanstein, > Hohenschwangau), but I'm not sure if that's of interest for you. I wouldn't mind Neuschwanstein, but I was really looking for somewhere with lots of nice girls. I found the place. :) > Bamberg is a very nice city, especially with very good beer ;-) Really? Damn, maybe that would have been preferable... but no. :)) > >Nuernburg is a possibility - but I'm not sure how much there will be to do > >on a Sunday... > > Well, most interesting locations will be closed, I'm afraid. > Hey, you could even visit me ;-) I actually could have done, but instead we headed around Munich (on both days) and did some birdwatching. The warm weather really does bring them out, you know. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 16 23:54:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA33477 for dynarec-outgoing; Sun, 16 Apr 2000 23:54:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38FAB42B.4351E6D@eurocopter.de> Date: Mon, 17 Apr 2000 08:50:19 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec terms votation References: <200004120958.LAA23883@pons.ac.upc.es> <38F465B2.31B83D8C@eurocopter.de> <00036511f973f09d_mailit@mailhub.rrze.uni-erlangen.de> <38F499BD.49A63B39@eurocopter.de> <00036512a7bc52f5_mailit@mailhub.rrze.uni-erlangen.de> <38F56A94.98D46A22@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >That's just a quick idea I've come up with. Probably isn't the best in the > >world - but I did come up with it in just under 5 seconds. :) > > What if the opcode and it's parameters cross the 4KB block split? Look > ahead a fixed number of bytes based on the maximum opcode size for a > particular processor? I did say that it was something that I came up with in 5 seconds. :) Anyway, I'd differ the length of the block by looking for the first available conditional jump - and split it like that. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 00:32:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA33563 for dynarec-outgoing; Mon, 17 Apr 2000 00:32:35 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38FABC6D.265A33B8@eurocopter.de> Date: Mon, 17 Apr 2000 09:25:33 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bfa664$a801e4a0$0100a8c0@lion> <002501bfa6d4$eb41d160$163d883e@ben> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Ha! Don't believe him! He sends me regular urgent flagged emails to warn me > when it's coming on! Quick! It's being repeated on BBC2 right no... Ah. :) > > Damn, you've missed out! Rhubarb and Custard? No? Oh no! ;) > > Oh, that was amazing! The music's great. Despite my best efforts, however, > it doesn't translate to email very well... wooooooooaaaah da da > woooooooaaaah da da wooah da da da da... See? > > Mind, Rhubarb and Custard is one of the newer ones... It's not got so much > nostalgia value. It has for me I'm afraid. How about Jackanory? Thundercats? Knightmare? Although these are getting slightly more modern... Hmm, you like "Blue Peter" you do. ;) > I'm pretty sure he must be a Linux type. Maybe BeOS. Either that or he's > like me and just hits the reset button in a huff every time his computer > BSODs, without reading the chirpy little messages. Partially debugged self > writing emulator cores just don't seem to get on very well with Windows... The cool thing about my computer is that it crashes for everyone else - but not for me. It's favouritism - but it's favouritism that I can handle. :) I find that writing programs which turn the interrupts off and then promptly crash don't get on too well with Windows either... :)) I'm thinking of writing a BSOD emulator - but I'll add some poetry in there. You can leave it loaded and it will give you a BSOD seemingly at random - just like the real thing. But I'll add some poetry in there - and see how many people notice. :)) To error 0E or not to error 0E, that is the question. Romeo, Romeo, wherefor art thou Error 0D, Romeo? Alas poor Yorick, I knew his invalid VxD error well. :)) I could go on, but I'd get bored. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 01:41:14 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA33789 for dynarec-outgoing; Mon, 17 Apr 2000 01:41:14 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <003d01bfa848$3b2ed5a0$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: <001601bfa64c$196f19a0$8f52883e@ben> <0003653e619f2b0f_mailit@mailhub.rrze.uni-erlangen.de> <002101bfa6d4$e1879560$163d883e@ben> <0003654c23660aca_mailit@mailhub.rrze.uni-erlangen <00036556a136e1f9_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarecs Date: Mon, 17 Apr 2000 09:37:56 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >It's not the dynarec code that you have to worry about. It's the machine > >code it generates... > > It's both. > On one hand I thought I had to go blind when I saw MIPS dynarecs generating > the following code for each simple instruction: > > mov eax, simRs1 > operation eax, simRs2 > mov simRd, eax It's actually pretty suprising how many dynarec cores seem to do this. I'm pretty sure Nemu (the N64 emulator) still does things this way, which might well explain the crap performance I get with it. > On the other hand many dynarecs generate the code the following way: > > GenCodePointer += 0x12345678; /* emitt instruction whatsoever */ > > This is of course very easy to read and very easy to extend or debug... You've totally lost me with that one... how's that supposed to work, then? > >> Hey, you could even have an interpreter for the initialization code of the > >> ROM which is only executed once, but why should you implement three > >>methods to get one thing running? > >Because it's faster. The whole point of using a compiled CPU core is because > >an interpreted core is too slow. If you spend your whole time making your > >code readable, size efficient, and beautifully designed you'll end up with a > >beautiful, small, easily modified total waste of disk space. Speed speed > >speed! If ANSI goes out the window, who cares? > > But if you have such weird, large scale self-modifying code then it would be > easier just to implement a very optimised interpretive core, as it won't be > worth the hassle to do a dynarec. Not for a Z80, maybe, but what about the 32/64 bit end of the market? Have you tried AGES or Vegas yet? They're both emulating the 32X, which requires 2 SH2s, and a 68000. They both run at roughly one frame every second and a half on my machine. They both use interpreted cores. It's the same with the N64 emulators. Even though Nemu64 doesn't use register caching, it still performs loads better than any interpreted core could. When you need speed that badly, you either have to put the extra effort in, or wait four or five years for computers to become powerful enough to emulate the machine with an interpreted core. > >There's a bloke on the comp.sys.sinclair newsgroup that has a random > >Spectrum error message tagged to the end of each of his emails. Whenever > >there's the faintest hint of a Speccy error that could fit the topic of > >conversation it'll come up! > > Probably not IA but simple pattern matching - Eliza anyone? I'm beginning to suspect it might well be highly complicated pattern matching... I reckon he's cheating! :) > >[BeOS] > >Are you using the freebie version, or has the full price edition come out > >yet? > > I'm working with the commercial edition of BeOS 4.5.2 but I also have the > personal edition of BeOS 5 and told my sister today that she should order the > upgrade to BeOS 5 Pro since it's cheaper in the US than in Germany and I also > would have to wait one or two more months to get it here. In the US it's > shipping in the next week. So why BeOS, then? I've been thinking about giving the personal edition a quick go, just to see what all the fuss is about, but I haven't got the harddisk space at the moment. > >Being limited to half a gig of harddrive can't be nice. > > You haven't tried it yet or read some hints on BeNews or BeTips, have you? > BeOS 5 PE comes with two tools which are also part of the commercial edition. > DriveSetup lets you create and initialize a BFS partition (without any size > limitations) and Installer lets you copy a whole BeOS installation from one > partition to another, or in that special case from the partition file to the > newly created partition. > Absolutely no limitation there! And this isn't a sneaky work-around? I was under the impression that you weren't supposed to use the personal edition seriously, just as a taster of things to come. If you can have any size hard drive, what are the limitations on the PE? > >The same thing happens in Windows if you've got VC++ installed. The only > >difference being, I assume, that BeOS catches more errors. Still, I bet it's > >got holes somewhere. Has it ever crashed properly on you? > > I haven't had a real system crash yet, but I had to reset my machine twice. > In one case the Tracker (similar to the Explorer) crashed and you cannot do > much then. Of course you could simply restart the Tracker from a terminal but > I didn't have one open. Now I have the tool BackOnTrack, which automatically > recognizes when either Tracker or Deskbar don't run anymore and lets you > restart these. > The other case was when I was unable to terminate an application which was > using the *experimental* hardware acceleration for OpenGL. > So much for "system crashes" on BeOS ;-) > I have application crashes from time to time (eg. the browser NetPositive if > too many windows are open or with too many downloads at the same time) but > you can restart the application after the crash without any problems. How long can you leave it running before memory leakage slows things to a crawl? Days? Weeks? Months? Is it any good at spotting poorly written programs and clearing up the mess they leave after they've exited? > >I was busy with work, was only subscribed to the mailing list from home, and > >was coding away happily when I was at home. This week I've been pretty bored > >and not in a programming mood at all, so I decided to inflict myself on the > >rest of you. Hard luck! ;) > > We have to bear that I guess ;-) You certainly do. There's no escape now. I know where you live! Or at least where your email does... > -- > M.I.Ke Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 01:56:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA33850 for dynarec-outgoing; Mon, 17 Apr 2000 01:56:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <004501bfa84a$6a402c20$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Dynarecs Date: Mon, 17 Apr 2000 09:53:34 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > I don't see why compilation speed would be an issue at all. Even > > > recompling a 128K object only takes a fraction of a second, and during > > > emulation you wouldn't notice it anyway. > > Yeah, but recompiling it a few hundred times a second takes a few hundred > > fractions of a second. > > It depends. If your target code has no self modifying code then I fail to > see why this would make any difference. Of course, which is why I'm suggesting that you use it as part of a hybrid engine. Your first pass compile is done in the normal, run of the mill, easy to optimise way, whilst any recompiles are done using the "copy a precompiled block" method. The entire point of precompiling is to optimise compile speed, not execution speed, so it should only be used where compile speed is important. > > a block. Just for any recompilation that may be needed in the event of > > self-modifying code, in which case you'd need as much compilation speed as > > possible. > > But you shouldn't focus on that or even be concerned about it. It seldom > happens. And in the case where it does quite frequently, an emulated CPU > core would be a better approach because a well written emulated CPU is > going to be faster than any recompiler. Not necessarily. In certain, heavy duty, circumstances an interpreted core can't be beaten. However, most self-modifying code only changes a few hundred times a second at worst. If you execute every self-modifying even five or six times per modification you'll end up making a saving, which would be negated by a long compile time. Also, as I've said to Mike, what do you do when an interpreted core just won't cut the mustard? Some machines require the speed benefits of a compiled core, and even using an interpreter to handle just the self-modified blocks could lead to a major loss of speed if the block contains a loop. The whole point about binary translators is that you can't write an ideal, generic, core. You've got to make assumptions about the behaviour of the code that you intend to run on them, the trick being to make sure that your assumptions cover as many of the possibilities as they can. I've got no solution to the problem of emulating a MIPS R10000 that's expected to run code that spends most of its time in a tight, self-modifying, loop. You just can't do it with any kind of speed. Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 02:35:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA34101 for dynarec-outgoing; Mon, 17 Apr 2000 02:35:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <004b01bfa84f$d6a53fe0$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Dynarecs Date: Mon, 17 Apr 2000 10:32:24 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > It depends entirely upon the device you're talking to. That's like saying > > > "What's the seek time over SCSI vs. IDE?" The seek time is bound to the > > > drive - not to the interface itself. > > Surely there's an industry standard way of talking to a keyboard or synth or > > whatever it is you've got your MIDI plugged into. > > There is for actual notes and volume control changes, but everything else > is up to the manufacturer. All the expressiveness of filter cutoff, when > LFOs are triggered, etc... is completely different on every synth. That's > because the structure of each synth is entirely different from the next. > Standardizing such a thing would be severely limiting what the > manufacturer could (or could not) do with the structure of the synth. So do you just have to use specialist software to control the thing? Erk... > > Otherwise all the keyboard > > manufacturers would be running around expecting their own format to be used > > and requiring that you have custom software for each different keyboard you > > buy. They can't be that stupid, can they? > > This is the way it is! Unless you want to use general MIDI, which varies > in style/sound from synth to synth, but even then that only gives you > patches and notes on certain channels (and thusly sucks). So has anyone tried to write a generic MIDI driver? Sort of like DirectMIDI... :) The synth manufacturers would just have to provide a driver for their machines... In fact, the drivers could probably be done with some sort of VM bytecodes, rather than actual hard code, which would mean you could use them on any hardware. Cor. That's an interesting thought. One JIT compiler later and... DynaMID! > > I owned a really crap MIDI years ago, which I bought to plug my Amiga into a > > cheap and nasty Yamaha keyboard. I remember them working fine with MED and > > SoundTracker, and I didn't need to inform the Amiga of the make and > > manufacturer of the thing. > > If all you're doing is just basic notes it'll work with any synth. I > really doubt you were changing resonance frequencies or anything complex. > Cheap and nasty Yamaha keyboards don't have thea bility tochange this > stuff anyway. Yes, I think I was doing general MIDI stuff. The keyboard could only map four instruments at a time, and it couldn't do anything clever like pitch or volume slides. > > > I think it only had one. At least the 1040. I never knew of a model that > > > had more than one. Doesn't mean that it didn't exist, though. ;-) > > What's the price range from a single bus MIDI to one of those eight bus > > things like you've got? Given that it's such a simple device you'd think > > they'd be pretty cheap regardless of the number of buses, but I bet they > > charge a fortune. > > For a PC, I think single MIDI ports are around $49. The MIDI Timepiece AV > is $395, but also consider it does more than just MIDI. It also speaks > house timecode, video synchronization, MIDI time code, and ADAT machine > control and is able to translate between them all. It also has a lot of > funky routing and filtering capabilities that a regular single port MIDI > interface wouldn't have. Fair enough. $49 for a single MIDI port, though? That seems a bit excessive. I'm sure I only paid £25 for mine, and that was seven or eight years ago. Mind, it was probably pretty poor quality. It broke after about six months and would only communicate one way (keyboard -> computer, I think). Still, you gets what you pays for, eh? > > > They aren't even comparable formats. MP3 and WAV files are just recorded > > > audio. MIDI Is *NOT* recorded audio - it's like having the sheet music to > > > a song. You still have to have something interpret the sheet music and > > > turn it in to actual sound. > > Indeed, but what I'm asking is: How often can you make changes to the note > > that's currently playing. I think that's a better way of describing it. In > > all the old Amiga Tracker programs you could do volume slides and frequency > > changes and stuff, but you couldn't do all that many a second. What's the > > maximum data frequency over a MIDI bus, and do you need top of the range > > hardware at the other end to be able to respond to it (thus is there a > > recommended cap, or just a hardware limited maximum). > > Even cheap hardware (486s and the like) can deal with it pretty fast. It's > a 31.5kbps stream, which is about 320 microseconds per byte. Each MIDI > message is 2 or 3 bytes long on average, so you're looking at almost a > millisecond maximum for note on/note off transitions. But in practice each > synthesizer responds in more like 3-6 milliseconds after the note has been > received. So there's usually a lag. So is the lag standardised, or do you have to take it into account when writing a MIDI piece? I suppose that'd be quite good, really. Musical people I talked to when I was doing my AI degree told me that they didn't think a computer could ever play sheet music properly, because it played it too perfectly. A synth imposing some lag might begin to make things a little bit more 'human', although I'm not sure if a six millisecond delay constitutes a musical style! ;) > But there's no difference in one MIDI interface over the next. It's just > like a serial port - like a regular serial port that's slower than the one > on the back of any PC. Fair enough. I take it there's pretty much no way of saturating it with data? Still, even if there was, I bet someone's already come up with a USB MIDI... > > > Not really. You've got note on/note off messages, plus volume control > > > changes and potentially patch changes too. Consider that a 3 note chord is > > > 3 note on messages - 6 bytes each. So even short compositions can be > > > fairly sizable. > > So how do you set which note to play? Do send a note on message with a > > specific note frequency, or is it more limited than that? Do you send a note > > on message with a 'Play C#' message? > > Yes, exactly. There's an 8 octave range, and you just send it a number. C0 > Is 32, C#0 is 33, D0 is 34, etc... and so on. In your note on message, you > also send it a velocity from 0 to 127. That note will stay on until you > send it a note off command. Velocity? Is that volume? > > And most notes are... One beat? Half a beat? So that's roughly 6 > > notes a second (I'll take an average until you fill me in on the details) > > plus potentially chords and stuff, which is probably around eight bytes a > > second of data on average? Is that right? That would lead to a 30k song > > being a bit over an hour... possibly a tad low. :) > > What you're trying to do here is take something that's extremely broad and > making it narrow and general. Music just doesn't work that way. Basically, > the faster the notes come in the music the larger the file is going to be, > since each note on/note off is recorded. Indeed, but I was under the impression that there was a common (modal average) time scale... err... thingy. Erm... I'm getting into complicated technical words now, so don't worry if you're having trouble keeping up! ;) > > > Nope. What you're seeing in the 30k version is probably a bunch of minute > > > controller changes like volume or perhaps panning, and that'll increase > > > the size of the file. > > Aha! This is what I'm after. How minute can these changes be? > > The fastest you can make them go is about 640 milliseconds (two bytes for > controller messages) per control change. And would this produce sensible music, or would you end up with a glut of high speed noise? > > > The thing about MIDI is you can compose on one set of synthesizers and it > > > won't translate to another set, especailly if you start putting in > > > controller changes. > > I was thinking about computer MIDIs, though, which allow you to upload > > sample data to the soundcard as MIDI instruments. > > I have no idea what you mean, here. If you're talking about feeding a MIDI > file to the sound card (Which is a general MIDI device interanlly), the > card does all the sound generation. MIDI Does not transport actual audio > data. Unless you're talking about SMIDI which is only available for > samplers (and is today an abandoned standard) and it's dog slow. I don't think I'm on about any of these. What I'm talking about involves uploading WAVs of instruments playing middle C (I assume) to the soundcards memory. You then map your MIDI instruments to these WAVs, and the soundcard treats them as extended general MIDI instruments, sort of thing. That way you can write music that'll sound the same regardless of the instrument set on the soundcard that's playing it. I doubt it's a part of the whole general MIDI thing, because it'd be useless for anything other than computer playback. > -->Neil Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 04:50:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA34431 for dynarec-outgoing; Mon, 17 Apr 2000 04:50:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <003d01bfa848$3b2ed5a0$88dc48c2@icc.co.im> Message-Id: <000365738f825405_mailit@mailhub.rrze.uni-erlangen.de> References: <001601bfa64c$196f19a0$8f52883e@ben> <0003653e619f2b0f_mailit@mailhub.rrze.uni-erlangen.de> <002101bfa6d4$e1879560$163d883e@ben> <0003654c23660aca_mailit@mailhub.rrze.uni-erlangen <00036556a136e1f9_mailit@mailhub.rrze.uni-erlangen.de> <003d01bfa848$3b2ed5a0$88dc48c2@icc.co.im> Date: Mon, 17 Apr 2000 13:45:33 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >It's actually pretty suprising how many dynarec cores seem to do this. I'm >pretty sure Nemu (the N64 emulator) still does things this way, which might >well explain the crap performance I get with it. Yeah, it's the "no register allocation" approach and I've seen it in both Pex and FPSE. I don't have the sources of Nemu64 or PSEmuPro, but it wouldn't be a big surprise if they did the same. Although I wasn't a great fan of NB's static register allocation in the beginning I have to admit that it surely is much better than that crap... >> GenCodePointer += 0x12345678; /* emitt instruction whatsoever */ >> This is of course very easy to read and very easy to extend or debug... >You've totally lost me with that one... how's that supposed to work, then? Depending how orthogonal the traget instruction set is you should either use functions or macros for most RISC targets. Eg. a RISC addition instruction ADD R1, R2, R3 could be generated by emittADD(1, 2, 3); /* this could be a macro */ or *CodePointer += ADD | Rd(1) | Rs(2) | Rs(3); /* lots of small macros */ Both versions are much more readable than just using the binary representation and naming the instruction in a comment! >Not for a Z80, maybe, but what about the 32/64 bit end of the market? Have >you tried AGES or Vegas yet? They're both emulating the 32X, which requires >2 SH2s, and a 68000. They both run at roughly one frame every second and a >half on my machine. They both use interpreted cores. It's the same with the >N64 emulators. Even though Nemu64 doesn't use register caching, it still >performs loads better than any interpreted core could. When you need speed >that badly, you either have to put the extra effort in, or wait four or five >years for computers to become powerful enough to emulate the machine with an >interpreted core. I don't know the 32X, but I guess it doesn't have that much self-modifying code, so a DynaRec would be perfectly fine. >So why BeOS, then? I've been thinking about giving the personal edition a >quick go, just to see what all the fuss is about, but I haven't got the >harddisk space at the moment. It boots up and shuts down *much* faster than Windows or Linux. It's very nice to use, relatively stable (had my first complete hang yesterday :-(), it's fast and very responsive. Although disk operations are very fast you still have a great response in BeOS. The only thing where you get a slight delay is when accessing a floppy disk, but even then it is responsive unlike Windows. >And this isn't a sneaky work-around? Nope these are absolutely the same tools as in the Pro edition. You could even burn the image file onto a CD-ROM start it with the boot disk (because the CD won't be bootable) and make an installation from CD without having to start BeOS under Windows. BTW, the bootloader on the disk finds the image file on FAT/FAT32, ext2, and NTFS partitions as long as it's in a special directory - so much for excellent foreign FS support ;-) >I was under the impression that you >weren't supposed to use the personal edition seriously, just as a taster of >things to come. I guess they hope that some will by the Pro edition because they liked PE, but if should have anything in PE you want there is really no need. >If you can have any size hard drive, what are the >limitations on the PE? Some things that require licenses are missing: MP3 and Intel codecs, the RealPlayer You have the download the compiler in a separate archive, there are not much demos and no extensions (source code for some apps, experimental stuff) in the PE. And you don't get support for BeOS 5 PE, which is just fair when it's for free. But that leads to stupid questions on newsgroups: "What is the Tracker?", "Does BeOS run DOS apps?", "Where is the CLI? What, it's named Terminal?",... The worst are those guys who took a look of two minutes at it and think "How do I use it? No idea! And I don't have any apps for it anyway!" and then post "BeOS sucks" - I could kill these guys! It would be just as if I came from BeOS to Windows and say: "Hey, BeOS would have booted three times by now, Windows must have crashed. Let's turn the machine off and trash the partition." BTW, someone really ask if it is a bad joke that BeOS can be booted in 20 seconds because for him it needs as long as Windows when he is using the boot disk!!! >How long can you leave it running before memory leakage slows things to a >crawl? Days? Weeks? Months? I normally don't let my computer running over night, and IMO BeOS isn't really a server OS, although I was told that Siemens use it for some servers. But sometimes I let it run the whole day just to read email from time to time. Unlike Windows BeOS never was unstable due to this. BTW, some people where quite upset why BeOS was working on the harddrive when they weren't doing anything. The solution is that the Registrar searches for files which don't have a filetype yet when the system is idle. >Is it any good at spotting poorly written >programs and clearing up the mess they leave after they've exited? I haven't really programmed on it yet, so I don't have much experience with poorly written code yet ;-) As far as I can tell BeOS does a great job to remove the remains of a crashed application, since I always was able to restart that app without any problems. Sometimes NetPositive (the browser) eats up much processor time, mainly due to some weird pages and I normally have between 10 and 20 pages open (Netscape often crashes when I have more than 5 pages open), but when I close NetPositive and restart it, everything is perfectly fine again. >You certainly do. There's no escape now. I know where you live! Or at least >where your email does... Mind you, I know your email address as well! ;-) >Andrew -- M.I.Ke Due to lack of disk space, this fortune database has been discontinued. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 04:50:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA34443 for dynarec-outgoing; Mon, 17 Apr 2000 04:50:32 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <38FAB3BE.82CB4BA@eurocopter.de> Message-Id: <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bfa664$a801e4a0$0100a8c0@lion> <0003654200648037_mailit@mailhub.rrze.uni-erlangen.de> <38FAB3BE.82CB4BA@eurocopter.de> Date: Mon, 17 Apr 2000 12:59:18 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >The Sun is, apparently. Always laughing at how stupid the Tellytubbies >actually are. Apparently. Although I wouldn't know... because I've never >seen it. :) I thought about the sun but I think it isn't intelligent either... >I know Jim Knopf. Ha! Really? ;-) >Do you know "Fireman Sam", eh? Or "Pobl y cwm" eh? ;)) Nope. BTW, how is the latter pronounced? >> Why do you all have to use these TLAs? ;-) >BTF. :)) Here is a four letter German acronym: LMAA! >> Hey, you're pretty good at typing without your brain ;-) >I've had plenty of practice. :) When being at work? ;-) >Whatever it was, I didn't let you know. I noticed. No-one seemed to be interested in the FAQ, not even Andy, who asked for it :-( >I haven't e-mailed anyone from home >for about 6 days now - which is really bad because I've got at least 100 >messages I need to reply to. Arse! Yeah, sometimes it's hard to keep up. >I wouldn't mind Neuschwanstein, but I was really looking for somewhere with >lots of nice girls. I found the place. :) Where? ;-) >> Bamberg is a very nice city, especially with very good beer ;-) >Really? Damn, maybe that would have been preferable... but no. :)) Damn birdwatchers! >I actually could have done, but instead we headed around Munich (on both >days) and did some birdwatching. The warm weather really does bring them >out, you know. :) Any interesting birds with - erm - big wings? ;-) -- M.I.Ke Every successful person has had failures but repeated failure is no guarantee of eventual success. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 04:50:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA34448 for dynarec-outgoing; Mon, 17 Apr 2000 04:50:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <004501bfa84a$6a402c20$88dc48c2@icc.co.im> Message-Id: <000365739feea120_mailit@mailhub.rrze.uni-erlangen.de> References: <004501bfa84a$6a402c20$88dc48c2@icc.co.im> Date: Mon, 17 Apr 2000 13:50:08 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >The whole point about binary translators is that you can't write an ideal, >generic, core. You've got to make assumptions about the behaviour of the >code that you intend to run on them, the trick being to make sure that your >assumptions cover as many of the possibilities as they can. Seems to be right. Until we write a dynarec for Itanium and can cache every single simulated register ;-) >I've got no >solution to the problem of emulating a MIPS R10000 that's expected to run >code that spends most of its time in a tight, self-modifying, loop. You just >can't do it with any kind of speed. Erm, MIPS CPUs (at least the newer ones) are Harvard architectures and cache handling on MIPS is somewhat awkward. These both facts mean that hardly ever you will find self-modifying code on a R10000, at least that's what I think. >Andrew -- M.I.Ke What is mind? No matter. What is matter? Never mind. -- Thomas Hewitt Key, 1799-1875 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 05:26:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA34634 for dynarec-outgoing; Mon, 17 Apr 2000 05:26:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <016a01bfa867$a2a84da0$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze.<0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bf <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarecs Date: Mon, 17 Apr 2000 13:22:44 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Whatever it was, I didn't let you know. > > I noticed. No-one seemed to be interested in the FAQ, not even Andy, who > asked for it :-( Eeek! Sorry! :( I've had a look, though. I just haven't written anything about it. My first impression is that it's going to be BIG. Blimey. You've got a couple of pages of nothing but headings! Rather you than me, old chap! I also note that "Some people even distinguish between dynamic compilation and recompilation, where the latter handles self-modifying code and the former does not. But *most* people use these terms synonymously and don't imply if self-modifying code is handled or not." Hmph! I'm sending Neil G over to have words with you. Most, indeed! ;þ Other than that, it's looking pretty good, though. :) I very much like the "How does Dynamic Recompilation work in principle?" section. It's much clearer than my "Malloc a block of memory, chuck a few bytes at it, then call it with assembler" method. However, doesn't it put unnecessary load on the system, having to deal with C calling conventions every time it enters a block? (This also makes it harder to do block to block linking optimisations). Still, that's being picky, because it's just intended as an overview of the process, isn't it? So when's the next update? > -- > M.I.Ke Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 05:49:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA34758 for dynarec-outgoing; Mon, 17 Apr 2000 05:49:55 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <017201bfa86a$f74112e0$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: <001601bfa64c$196f19a0$8f52883e@ben> <0003653e619f2b0f_mailit@mailhub.rrze.uni-erlangen.de> <002101bfa6d4$e1879560$163d883e@ben> <0003654c23660aca_mailit@mailhub.rrze.uni-erlangen<00036556a136e1f9_mailit@mailhub.rrze.uni-erlangen.de> <003d01bfa848$3b2ed5a0$88dc48c2@icc.co.im> <000365738f825405_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarecs Date: Mon, 17 Apr 2000 13:46:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >It's actually pretty suprising how many dynarec cores seem to do this. I'm > >pretty sure Nemu (the N64 emulator) still does things this way, which might > >well explain the crap performance I get with it. > > Yeah, it's the "no register allocation" approach and I've seen it in both Pex > and FPSE. I don't have the sources of Nemu64 or PSEmuPro, but it wouldn't be > a big surprise if they did the same. > Although I wasn't a great fan of NB's static register allocation in the > beginning I have to admit that it surely is much better than that crap... Static register allocation as in "ax will hold the flags and the accumulator"? I'm still not sure if it's the best way to do the Z80, although it's what I used for SpectrEm-DR. That's because I was feeling too lazy to do proper register tracking and allocation, though. For a 6502 it'd work, but you're still left wondering what to do with IX and IY with a Z80. (And you'll end up doing "that crap", probably. It's just not as noticable because they don't get used all that much). > >> GenCodePointer += 0x12345678; /* emitt instruction whatsoever */ > >> This is of course very easy to read and very easy to extend or debug... > >You've totally lost me with that one... how's that supposed to work, then? > > Depending how orthogonal the traget instruction set is you should either use > functions or macros for most RISC targets. > Eg. a RISC addition instruction > ADD R1, R2, R3 > could be generated by > emittADD(1, 2, 3); /* this could be a macro */ > or > *CodePointer += ADD | Rd(1) | Rs(2) | Rs(3); /* lots of small macros > */ > > Both versions are much more readable than just using the binary > representation and naming the instruction in a comment! Right. So you missed out the * in the initial example? I still don't see how *CodePointer += whatever is going to work... that'll just add whatever to the contents of the memory location pointed to by codepointer. Do you mean *CodePointer = whatever; Codepointer+=sizeof(whatever); (to hideously misuse sizeof)? Or *CodePointer++= whatever, assuming whatever is of constant size and CodePointer knows it? Anyway, I used the macro/inline function approach in SpectrEm. It does make things an awful lot more readable and extendable, and doesn't impact perfomance at all, so why not? :) > >Not for a Z80, maybe, but what about the 32/64 bit end of the market? Have > >you tried AGES or Vegas yet? They're both emulating the 32X, which requires > >2 SH2s, and a 68000. They both run at roughly one frame every second and a > >half on my machine. They both use interpreted cores. It's the same with the > >N64 emulators. Even though Nemu64 doesn't use register caching, it still > >performs loads better than any interpreted core could. When you need speed > >that badly, you either have to put the extra effort in, or wait four or five > >years for computers to become powerful enough to emulate the machine with an > >interpreted core. > > I don't know the 32X, but I guess it doesn't have that much self-modifying > code, so a DynaRec would be perfectly fine. Probably. The occasional console game seems to use self-modifying code, but given how terrified most programmers were of Sega's SH2 using hardware, the odds are they just wrote everything in C and hoped for the best, thus no nasty stuff. > >So why BeOS, then? I've been thinking about giving the personal edition a > >quick go, just to see what all the fuss is about, but I haven't got the > >harddisk space at the moment. > > It boots up and shuts down *much* faster than Windows or Linux. It's very > nice to use, relatively stable (had my first complete hang yesterday :-(), > it's fast and very responsive. > Although disk operations are very fast you still have a great response in > BeOS. The only thing where you get a slight delay is when accessing a floppy > disk, but even then it is responsive unlike Windows. A hang! Congratulations! How did you manage it? Do you get a delay to the entire system when accessing a floppy (like in Windows) or just a delay to the access time. I've never understood why PCs don't seem to be able to read from their floppy drives whilst they're doing something else. Haven't they heard of DMA? > >And this isn't a sneaky work-around? > > Nope these are absolutely the same tools as in the Pro edition. > You could even burn the image file onto a CD-ROM start it with the boot disk > (because the CD won't be bootable) and make an installation from CD without > having to start BeOS under Windows. > BTW, the bootloader on the disk finds the image file on FAT/FAT32, ext2, and > NTFS partitions as long as it's in a special directory - so much for > excellent foreign FS support ;-) As long as it works... :) > >I was under the impression that you > >weren't supposed to use the personal edition seriously, just as a taster of > >things to come. > > I guess they hope that some will by the Pro edition because they liked PE, > but if should have anything in PE you want there is really no need. Can you boot without going through Windows or a boot disk in the Pro edition? That'd be a good reason to buy the thing. > >If you can have any size hard drive, what are the > >limitations on the PE? > > Some things that require licenses are missing: MP3 and Intel codecs, the > RealPlayer > You have the download the compiler in a separate archive, there are not much > demos and no extensions (source code for some apps, experimental stuff) in > the PE. > And you don't get support for BeOS 5 PE, which is just fair when it's for > free. But that leads to stupid questions on newsgroups: "What is the > Tracker?", "Does BeOS run DOS apps?", "Where is the CLI? What, it's named > Terminal?",... You've got to expect that, though. BeOS is trendy, so you're bound to get a bunch of clueless trendy wannabees who don't really need to be using the thing but have been brought up to believe Windows is evil. So from that point of view, it's all your own fault you're being bothered! And the fault of the Linux crowd, of course. You should have told people that BeOS was boring and for geeks. That way you only have to deal with computer literate techies... > The worst are those guys who took a look of two minutes at it and think "How > do I use it? No idea! And I don't have any apps for it anyway!" and then post > "BeOS sucks" - I could kill these guys! > It would be just as if I came from BeOS to Windows and say: "Hey, BeOS would > have booted three times by now, Windows must have crashed. Let's turn the > machine off and trash the partition." > BTW, someone really ask if it is a bad joke that BeOS can be booted in 20 > seconds because for him it needs as long as Windows when he is using the boot > disk!!! Heh! :) I quite like the GUI that I've seen in the screenshots floating around. It reminds me of some of the nicer window managers for the later Amiga Workbenches. Very pretty. > >How long can you leave it running before memory leakage slows things to a > >crawl? Days? Weeks? Months? > > I normally don't let my computer running over night, and IMO BeOS isn't > really a server OS, although I was told that Siemens use it for some servers. > But sometimes I let it run the whole day just to read email from time to > time. Unlike Windows BeOS never was unstable due to this. > BTW, some people where quite upset why BeOS was working on the harddrive when > they weren't doing anything. The solution is that the Registrar searches for > files which don't have a filetype yet when the system is idle. Yes, people get very funny about the OS doing stuff in the background. I've heard a few complaints about Win98 thrashing the hard drive when it's left idle, which is because it's trying to sort out the virtual memory at a convinient time for the user. People actually seem to prefer to have the thing turned off so that it's forced to sort it out when it's run out of memory and is in the middle of doing something else. Weirdos! ;) > >Is it any good at spotting poorly written > >programs and clearing up the mess they leave after they've exited? > > I haven't really programmed on it yet, so I don't have much experience with > poorly written code yet ;-) > As far as I can tell BeOS does a great job to remove the remains of a crashed > application, since I always was able to restart that app without any > problems. > Sometimes NetPositive (the browser) eats up much processor time, mainly due > to some weird pages and I normally have between 10 and 20 pages open > (Netscape often crashes when I have more than 5 pages open), but when I close > NetPositive and restart it, everything is perfectly fine again. 10-20 pages? That's pretty impressive. BeOS was specifically designed for something or other, originally, wasn't it? CAD? Multimedia stuff? Anyway, I'd not want to risk opening 20 pages simultaneously in IE... > >You certainly do. There's no escape now. I know where you live! Or at least > >where your email does... > > Mind you, I know your email address as well! ;-) But I've got two! How do you know you're going to hit the right one? :) > -- > M.I.Ke Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 05:54:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA34793 for dynarec-outgoing; Mon, 17 Apr 2000 05:54:06 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <017801bfa86b$8da79380$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: <004501bfa84a$6a402c20$88dc48c2@icc.co.im> <000365739feea120_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarecs Date: Mon, 17 Apr 2000 13:50:47 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >The whole point about binary translators is that you can't write an ideal, > >generic, core. You've got to make assumptions about the behaviour of the > >code that you intend to run on them, the trick being to make sure that your > >assumptions cover as many of the possibilities as they can. > > Seems to be right. Until we write a dynarec for Itanium and can cache every > single simulated register ;-) Oooh... I have wet dreams about that processor! (Although I'm not entirely sure you really wanted to know that...) Writing an emulator on it would be wonderful! > >I've got no > >solution to the problem of emulating a MIPS R10000 that's expected to run > >code that spends most of its time in a tight, self-modifying, loop. You just > >can't do it with any kind of speed. > > Erm, MIPS CPUs (at least the newer ones) are Harvard architectures and cache > handling on MIPS is somewhat awkward. These both facts mean that hardly ever > you will find self-modifying code on a R10000, at least that's what I think. Ahhh... hardly ever is not never, though, sort of thing. That's the point. And if you don't like that example, replace R10000 with 1ghz Athlon/P3. Or even Itanium! *shiver*. I'd like to see you try to do decent register caching for that! > -- > M.I.Ke Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 06:07:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA34864 for dynarec-outgoing; Mon, 17 Apr 2000 06:07:53 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38FB0BBF.C9A08494@eurocopter.de> Date: Mon, 17 Apr 2000 15:04:00 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze.<0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bf <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> <016a01bfa867$a2a84da0$88dc48c2@icc.co.im> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Hmph! I'm sending Neil G over to have words with you. Most, indeed! ;þ It's okay, I'll go over there with my "friends" and deal with him. ;) > Other than that, it's looking pretty good, though. :) I very much like the > "How does Dynamic Recompilation work in principle?" section. It's much > clearer than my "Malloc a block of memory, chuck a few bytes at it, then > call it with assembler" method. However, doesn't it put unnecessary load on > the system, having to deal with C calling conventions every time it enters a > block? (This also makes it harder to do block to block linking > optimisations). I think it's really good. No, I'm lying. I haven't even read it. Although it may be good. I just don't know. Because I haven't read it. Yet. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 06:14:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA34891 for dynarec-outgoing; Mon, 17 Apr 2000 06:14:58 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38FB0D80.5DEE52DB@eurocopter.de> Date: Mon, 17 Apr 2000 15:11:29 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs References: <004501bfa84a$6a402c20$88dc48c2@icc.co.im> <000365739feea120_mailit@mailhub.rrze.uni-erlangen.de> <017801bfa86b$8da79380$88dc48c2@icc.co.im> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Oooh... I have wet dreams about that processor! (Although I'm not entirely > sure you really wanted to know that...) You'd be right. I didn't want to know that. Don't tell me you buy PlayCPU too, do you? ;)) > Writing an emulator on it would be wonderful! It would, but I still wouldn't dream about it. :) I was going to add something useful to this message, but I've forgotten it now. Oops. Besides, it's pretty funny as it is. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 06:16:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA34924 for dynarec-outgoing; Mon, 17 Apr 2000 06:16:43 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <023901bfa86e$b60f7b00$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <38FB0BBF.C9A08494@eurocopter.de> Subject: Re: DYNAREC: Dynarecs Date: Mon, 17 Apr 2000 14:13:24 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > Hmph! I'm sending Neil G over to have words with you. Most, indeed! ;þ > > It's okay, I'll go over there with my "friends" and deal with him. ;) Good man! > > Other than that, it's looking pretty good, though. :) I very much like the > > "How does Dynamic Recompilation work in principle?" section. It's much > > clearer than my "Malloc a block of memory, chuck a few bytes at it, then > > call it with assembler" method. However, doesn't it put unnecessary load on > > the system, having to deal with C calling conventions every time it enters a > > block? (This also makes it harder to do block to block linking > > optimisations). > > I think it's really good. No, I'm lying. I haven't even read it. Although > it may be good. I just don't know. Because I haven't read it. Yet. :) You've got to stop all this socialising! What ever happened to staying in of an evening and surfing the net? I don't know. It's impossible to find an honest to goodness geek anywhere, these days! ;) > Neil. Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 06:35:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA35099 for dynarec-outgoing; Mon, 17 Apr 2000 06:35:10 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38FB125C.A90659E3@eurocopter.de> Date: Mon, 17 Apr 2000 15:32:12 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bfa664$a801e4a0$0100a8c0@lion> <0003654200648037_mailit@mailhub.rrze.uni-erlangen.de> <38FAB3BE.82CB4BA@eurocopter.de> <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >I know Jim Knopf. Ha! > > Really? ;-) Nah, probably not. ;)) > >Do you know "Fireman Sam", eh? Or "Pobl y cwm" eh? ;)) > > Nope. BTW, how is the latter pronounced? Pob-bull EE cum I've never actually watched it myself, but it means "People of Cwm" so I imagine that "Cwm" is a village. Of course, if the title is in fact "Pobl y cym" - which is possible - then it'd mean "People of Wales". So it's probably that then. :)) How about "Button Moon", eh? Yet another program produced for about 3 pounds. Although maybe it was slightly more expensive. 5 pounds, maybe. :) > >> Why do you all have to use these TLAs? ;-) > >BTF. :)) > > Here is a four letter German acronym: LMAA! But mine means "Because They're Funny"! ;) > >> Hey, you're pretty good at typing without your brain ;-) > >I've had plenty of practice. :) > > When being at work? ;-) Most likely, yes. :) > >Whatever it was, I didn't let you know. > > I noticed. No-one seemed to be interested in the FAQ, not even Andy, who > asked for it :-( I'm interested, I've just had no time. Had a guest at my house - and then we went bird-watching. :)) I'm sorry, but I have my priorities sorted: Women. Computers. Food should go in that list somewhere, but I'm not sure where. I can usually do the food part alongside either of the others, so it's a sort of symbiotic thing. :) > >I haven't e-mailed anyone from home > >for about 6 days now - which is really bad because I've got at least 100 > >messages I need to reply to. Arse! > > Yeah, sometimes it's hard to keep up. It is when... no, I have no excuse. I just couldn't be arsed. :) > >I wouldn't mind Neuschwanstein, but I was really looking for somewhere with > >lots of nice girls. I found the place. :) > > Where? ;-) Muenchen. Oh yes. Could have gone to the "Erotik Messe" this weekend as well - but it was like that in the parks. But free. :)) > >> Bamberg is a very nice city, especially with very good beer ;-) > >Really? Damn, maybe that would have been preferable... but no. :)) > > Damn birdwatchers! Hey, I don't use binoculars! > >I actually could have done, but instead we headed around Munich (on both > >days) and did some birdwatching. The warm weather really does bring them > >out, you know. :) > > Any interesting birds with - erm - big wings? ;-) A few, yes. And some with nice... tail feathers. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 06:39:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA35138 for dynarec-outgoing; Mon, 17 Apr 2000 06:39:37 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38FB12D2.F2774307@eurocopter.de> Date: Mon, 17 Apr 2000 15:34:10 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <38FB0BBF.C9A08494@eurocopter.de> <023901bfa86e$b60f7b00$88dc48c2@icc.co.im> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > It's okay, I'll go over there with my "friends" and deal with him. ;) > > Good man! Right, you've given me his name, address, phone number, photo and social security number. I think I can find him... ;) > > I think it's really good. No, I'm lying. I haven't even read it. Although > > it may be good. I just don't know. Because I haven't read it. Yet. :) > > You've got to stop all this socialising! What ever happened to staying in of > an evening and surfing the net? I don't know. It's impossible to find an > honest to goodness geek anywhere, these days! ;) I'm a 50/50 geek. 50% women, 50% computers. The 50% computers happens during winter - and the other 50% happens when it's warmer. I can't imagine why. I'm sure it can't have anything to do with less clothes or anything... :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 06:53:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA35282 for dynarec-outgoing; Mon, 17 Apr 2000 06:53:25 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <016a01bfa867$a2a84da0$88dc48c2@icc.co.im> Message-Id: <00036574ee4d4fb9_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze.<0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bf <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> <016a01bfa867$a2a84da0$88dc48c2@icc.co.im> Date: Mon, 17 Apr 2000 15:23:38 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> I noticed. No-one seemed to be interested in the FAQ, not even Andy, who >> asked for it :-( >Eeek! Sorry! :( I've had a look, though. I just haven't written anything >about it. My first impression is that it's going to be BIG. You wanted everything and I still have new ideas! >Blimey. It's the second time that I read this word! The first time it was in a mail by David McEwen and he told me that word is typically British. >You've got a couple of pages of nothing but headings! Haven't come around to write more yet :-( >Rather you than me, old chap! Afraid of the size? ;-) >I also note that "Some people even distinguish between dynamic compilation >and recompilation, where the latter handles self-modifying code and the >former does not. But *most* people use these terms synonymously and don't >imply if self-modifying code is handled or not." >Hmph! I'm sending Neil G over to have words with you. Most, indeed! ;þ We already had that discussion ;-) I took a look at some of the dynarec docs I have and found the following statement in Ardi's whitepaper on Executor: "Like most dynamically compiling emulators, Syn68k doesn't detect self- modifying code" This means that other dynamic compilers could do that, and they don't call them dynamic recompilers! >Other than that, it's looking pretty good, though. :) Thanks. >I very much like the "How does Dynamic Recompilation work in principle?" section. It's not ready yet! >It's much >clearer than my "Malloc a block of memory, chuck a few bytes at it, then >call it with assembler" method. However, doesn't it put unnecessary load on >the system, having to deal with C calling conventions every time it enters a >block? (This also makes it harder to do block to block linking >optimisations). Maybe I'm too much into RISC processors again. In that case you'd have the address of the context structure passed in a register and you could access the whole context by a simple displacement operation. I will NB's method to reduce redundancy by generating some "glue code" (I call it "Master Block" and hope that NB agrees with that term) later. In that case a block consisting of the entry and exit code is called. This block has the pointer to the context hard-coded and does all the setup before it calls the actual basic block. But I though that the approach of directly calling the basic block which has prologue and epilogue code will be easier to understand in the beginning. >Still, that's being picky, because it's just intended as an overview of the >process, isn't it? Yeah, I certainly don't want to present a complete dynarec in the FAQ. I mean, even the longest emulator FAQ doesn't include a complete emulator. >So when's the next update? Maybe just writing along, or add ideas as they come. Currently I want to seach the docs I have for methods I might have forgotten. >Andrew -- M.I.Ke Everyone talks about apathy, but no one ____does anything about it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 06:53:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA35291 for dynarec-outgoing; Mon, 17 Apr 2000 06:53:28 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <017801bfa86b$8da79380$88dc48c2@icc.co.im> Message-Id: <00036575584ab78f_mailit@mailhub.rrze.uni-erlangen.de> References: <004501bfa84a$6a402c20$88dc48c2@icc.co.im> <000365739feea120_mailit@mailhub.rrze.uni-erlangen.de> <017801bfa86b$8da79380$88dc48c2@icc.co.im> Date: Mon, 17 Apr 2000 15:53:17 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Oooh... I have wet dreams about that processor! (Although I'm not entirely >sure you really wanted to know that...) Shocking! >Writing an emulator on it would be wonderful! Yeah, but with a dynarec you'd have much work with instruction ordering since you have to fit 3 instructions in one bundle and also set the right template... >Ahhh... hardly ever is not never, though, sort of thing. That's the point. >And if you don't like that example, replace R10000 with 1ghz Athlon/P3. Athlon even has fewer registers than P3... But I think or problem was self-modifying code, which is a real problem for emulation in that case, because x86 processors have transparent caches, which means that everything is handled in hardware. Thus you have no possiblity to detect self-modifying code because of any cache synchronization instructions used, and the programmer also will have less fear to use self-modifying code as they don't really know what's going on when they do so. >Or even Itanium! *shiver*. >I'd like to see you try to do decent register caching for that! Certainly not! This surely is Nightmare on Emu Street!!! >Andrew -- M.I.Ke Of what you see in books, believe 75%. Of newspapers, believe 50%. And of TV news, believe 25% -- make that 5% if the anchorman wears a blazer. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 06:53:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA35298 for dynarec-outgoing; Mon, 17 Apr 2000 06:53:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <017201bfa86a$f74112e0$88dc48c2@icc.co.im> Message-Id: <000365754380f527_mailit@mailhub.rrze.uni-erlangen.de> References: <001601bfa64c$196f19a0$8f52883e@ben> <0003653e619f2b0f_mailit@mailhub.rrze.uni-erlangen.de> <002101bfa6d4$e1879560$163d883e@ben> <0003654c23660aca_mailit@mailhub.rrze.uni-erlangen<00036556a136e1f9_mailit@mailhub.rrze.uni-erlangen.de> <003d01bfa848$3b2ed5a0$88dc48c2@icc.co.im> <000365738f825405_mailit@mailhub.rrze.uni-erlangen.de> <017201bfa86a$f74112e0$88dc48c2@icc.co.im> Date: Mon, 17 Apr 2000 15:47:28 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Static register allocation as in "ax will hold the flags and the >accumulator"? I'm still not sure if it's the best way to do the Z80, >although it's what I used for SpectrEm-DR. That's because I was feeling too >lazy to do proper register tracking and allocation, though. For a 6502 it'd >work, but you're still left wondering what to do with IX and IY with a Z80. >(And you'll end up doing "that crap", probably. It's just not as noticable >because they don't get used all that much). NB's idea is to make the common case fast and use the general direct memory access for the remaining cases. Even with a 68K he'll cache the most frequently used registers in the hardware registers and have memory accesses for the others. From the RISC view this isn't ideal, but given the few registers in x86 architectures it's probably the best way to do it. >Right. So you missed out the * in the initial example? I still don't see how >*CodePointer += whatever is going to work... that'll just add whatever to >the contents of the memory location pointed to by codepointer. Do you mean >*CodePointer = whatever; Codepointer+=sizeof(whatever); (to hideously misuse >sizeof)? Or *CodePointer++= whatever, assuming whatever is of constant size >and CodePointer knows it? Ah, shit! Should be something like this: *CodePointer = instruction; CodePointer++; I guess I'm just too tired again... >Anyway, I used the macro/inline function approach in SpectrEm. It does make >things an awful lot more readable and extendable, and doesn't impact >perfomance at all, so why not? :) Indeed. But I've seen lots of stuff where they used the binary coding directly and only mentioned the instruction in the comment, if at all! >Probably. The occasional console game seems to use self-modifying code, but >given how terrified most programmers were of Sega's SH2 using hardware, the >odds are they just wrote everything in C and hoped for the best, thus no >nasty stuff. I bet so. A system with two SH2 must be a beast to program, and emulate, just take a look at Sega Saturn... >A hang! Congratulations! How did you manage it? Don't know exactly. NetPostitive crashed, I clicked to OK to kill it, the modem disconnected (which it normally doesn't do), and the machine hung. >Do you get a delay to the >entire system when accessing a floppy (like in Windows) or just a delay to >the access time. You get a very slight delay when first accessing the floppy (I only noticed it because I got used to the perfect response time of BeOS), but when you do disk transfers it works quite well, at least compared to Windows. Another good example is the difference between the BeOS and Win32 versions of Basilisk II. This emulator tests for a bootable Mac floppy at startup. The Win32 port makes noise for several seconds if you don't have a disk in the drive. With the BeOS version you hardly notice that it tests for a floppy! >I've never understood why PCs don't seem to be able to read >from their floppy drives whilst they're doing something else. Haven't they >heard of DMA? It seems that BeOS has ;-) >As long as it works... :) NTFS and ext2 are read-only at present, but BeOS is still the only OS which can read all my partitions. >Can you boot without going through Windows or a boot disk in the Pro >edition? That'd be a good reason to buy the thing. If you create a BFS partition with BeOS 5 PE you can add this to yur boot manager and boot it that way as well, I already did it and it really works! >You've got to expect that, though. BeOS is trendy, so you're bound to get a >bunch of clueless trendy wannabees who don't really need to be using the >thing but have been brought up to believe Windows is evil. So from that >point of view, it's all your own fault you're being bothered! And the fault >of the Linux crowd, of course. You should have told people that BeOS was >boring and for geeks. That way you only have to deal with computer literate >techies... Hehe... Well, the good thing might be that maybe some hardware firms realize that there is need for BeOS drivers as well. >Heh! :) I quite like the GUI that I've seen in the screenshots floating >around. It reminds me of some of the nicer window managers for the later >Amiga Workbenches. Very pretty. I liked the look of the GUI before I had BeOS, but now I'm so used to the functions of the GUI as well that I miss something on other OSs. Just take the window title bar. It only has two buttons for closing and full size, but if you double click the bar you hide the window under the application entry in the deskbar, and a right click on the bar pushes it in the back of your window stack. Believe me, I started right clicking on title bars in Windows and RISC OS to cycle through windows and was shocked that it doesn't work! >10-20 pages? That's pretty impressive. BeOS was specifically designed for >something or other, originally, wasn't it? CAD? Multimedia stuff? It was programmed with multi-media in mind. That's why it has a 64-bit FS and is so multi-threaded. It's a shame that I don't have a multiprocessor system since BeOS supports up to 8 CPUs currently. >Anyway, I'd not want to risk opening 20 pages simultaneously in IE... Neither would I, but I sometimes do that with NetPositive. Most guys mock about the browser because you have so few controls and settings, and it doesn't support JavaScript or Java, but I guess that's the reason why it's more stable than Netscape or IE and loads in 1 (in words one) second ;-) >But I've got two! How do you know you're going to hit the right one? :) I could just use both ;-) >Andrew -- M.I.Ke The study of non-linear physics is like the study of non-elephant biology. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 07:08:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA35386 for dynarec-outgoing; Mon, 17 Apr 2000 07:08:50 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <38FB0BBF.C9A08494@eurocopter.de> Message-Id: <00036575736250ba_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze.<0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bf <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> <016a01bfa867$a2a84da0$88dc48c2@icc.co.im> <38FB0BBF.C9A08494@eurocopter.de> Date: Mon, 17 Apr 2000 16:00:51 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> Hmph! I'm sending Neil G over to have words with you. Most, indeed! ;þ >It's okay, I'll go over there with my "friends" and deal with him. ;) You and the other Spice Boys? ;-) >I think it's really good. No, I'm lying. I haven't even read it. Although >it may be good. I just don't know. Because I haven't read it. Yet. :) Shame on you! -- M.I.Ke "Thirty days hath Septober, April, June, and no wonder. all the rest have peanut butter except my father who wears red suspenders." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 07:08:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA35401 for dynarec-outgoing; Mon, 17 Apr 2000 07:08:56 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <38FB0D80.5DEE52DB@eurocopter.de> Message-Id: <00036575781e6987_mailit@mailhub.rrze.uni-erlangen.de> References: <004501bfa84a$6a402c20$88dc48c2@icc.co.im> <000365739feea120_mailit@mailhub.rrze.uni-erlangen.de> <017801bfa86b$8da79380$88dc48c2@icc.co.im> <38FB0D80.5DEE52DB@eurocopter.de> Date: Mon, 17 Apr 2000 16:02:10 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Don't tell me you buy PlayCPU too, do you? ;)) Am I missing anything? ;-) >It would, but I still wouldn't dream about it. :) I guess you dream about that other 50%... >I was going to add something useful to this message, but I've forgotten it >now. Oops. Besides, it's pretty funny as it is. :) Funny? Where? ;-) -- M.I.Ke In a museum in Havana, there are two skulls of Christopher Columbus, "one when he was a boy and one when he was a man." -- Mark Twain --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 07:08:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA35405 for dynarec-outgoing; Mon, 17 Apr 2000 07:08:56 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <38FB125C.A90659E3@eurocopter.de> Message-Id: <000365758cc6ff37_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bfa664$a801e4a0$0100a8c0@lion> <0003654200648037_mailit@mailhub.rrze.uni-erlangen.de> <38FAB3BE.82CB4BA@eurocopter.de> <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> <38FB125C.A90659E3@eurocopter.de> Date: Mon, 17 Apr 2000 16:07:57 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> >Do you know "Fireman Sam", eh? Or "Pobl y cwm" eh? ;)) >> Nope. BTW, how is the latter pronounced? >Pob-bull EE cum >I've never actually watched it myself, but it means "People of Cwm" so I >imagine that "Cwm" is a village. Of course, if the title is in fact "Pobl y >cym" - which is possible - then it'd mean "People of Wales". So it's >probably that then. :)) I already wanted to ask if that's a Welsh name... BTW, isn't Wales named Cymru in Welsh? >How about "Button Moon", eh? Yet another program produced for about 3 >pounds. Although maybe it was slightly more expensive. 5 pounds, maybe. :) Nope. >But mine means "Because They're Funny"! ;) I already guessed that... I hope you don't know what LMAA means! >I'm interested, I've just had no time. Had a guest at my house - and then >we went bird-watching. :)) Oh, collective bird-watching, probably even given marks. >I'm sorry, but I have my priorities sorted: Women. Computers. Food should >go in that list somewhere, but I'm not sure where. I can usually do the >food part alongside either of the others, so it's a sort of symbiotic >thing. :) Food is just a necessary nuisance, as is sleep... >It is when... no, I have no excuse. I just couldn't be arsed. :) Hey, Beavis he said "arsed"! - Yes, "arsed", hehehe. >Muenchen. Oh yes. Could have gone to the "Erotik Messe" this weekend as >well - but it was like that in the parks. But free. :)) Free as in beer? ;-) >Hey, I don't use binoculars! Oh no! >> Any interesting birds with - erm - big wings? ;-) >A few, yes. And some with nice... tail feathers. :)) This is something for the gay bird-watchers I guess... -- M.I.Ke If you had any brains, you'd be dangerous. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 07:08:58 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA35413 for dynarec-outgoing; Mon, 17 Apr 2000 07:08:57 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <38FB12D2.F2774307@eurocopter.de> Message-Id: <00036575919a6765_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <38FB0BBF.C9A08494@eurocopter.de> <023901bfa86e$b60f7b00$88dc48c2@icc.co.im> <38FB12D2.F2774307@eurocopter.de> Date: Mon, 17 Apr 2000 16:09:18 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Right, you've given me his name, address, phone number, photo and social >security number. I think I can find him... ;) No you don't have that information! Thank god that I didn't really invite you! ;-) >I'm a 50/50 geek. 50% women, 50% computers. The 50% computers happens >during winter - and the other 50% happens when it's warmer. I can't imagine >why. I'm sure it can't have anything to do with less clothes or anything... No it's because the birds are singing so nicely ;-) >Neil. -- M.I.Ke Workers of the world, arise! You have nothing to lose but your chairs. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 08:55:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA35914 for dynarec-outgoing; Mon, 17 Apr 2000 08:55:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38FB32DA.483578B6@eurocopter.de> Date: Mon, 17 Apr 2000 17:50:50 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze.<0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bf <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> <016a01bfa867$a2a84da0$88dc48c2@icc.co.im> <38FB0BBF.C9A08494@eurocopter.de> <00036575736250ba_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >> Hmph! I'm sending Neil G over to have words with you. Most, indeed! ;þ > >It's okay, I'll go over there with my "friends" and deal with him. ;) > > You and the other Spice Boys? ;-) Yeah. I'm Thyme Spice and the others include Salt Spice and Pepper Spice. Be scared. ;)) > >I think it's really good. No, I'm lying. I haven't even read it. Although > >it may be good. I just don't know. Because I haven't read it. Yet. :) > > Shame on you! I'm...s...ssss...sssorry! No, seriously, I can't check anything except for one hour of Internet access. Except at home. Which is where I'll check it. But then I'll probably forget to mail you anyway. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 09:07:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA36062 for dynarec-outgoing; Mon, 17 Apr 2000 09:07:05 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38FB35C7.92AEACDD@eurocopter.de> Date: Mon, 17 Apr 2000 18:03:19 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs References: <004501bfa84a$6a402c20$88dc48c2@icc.co.im> <000365739feea120_mailit@mailhub.rrze.uni-erlangen.de> <017801bfa86b$8da79380$88dc48c2@icc.co.im> <38FB0D80.5DEE52DB@eurocopter.de> <00036575781e6987_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Don't tell me you buy PlayCPU too, do you? ;)) > > Am I missing anything? ;-) PlayCPU it appears. ;)) > >It would, but I still wouldn't dream about it. :) > > I guess you dream about that other 50%... Do I? I don't remember any of my dreams. Ugh, maybe I *do* dream of the Itanium! AAARGH! > >I was going to add something useful to this message, but I've forgotten it > >now. Oops. Besides, it's pretty funny as it is. :) > > Funny? Where? ;-) Down the road, first turning on the right. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 09:11:05 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA36101 for dynarec-outgoing; Mon, 17 Apr 2000 09:11:05 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38FB36F0.E89938B8@eurocopter.de> Date: Mon, 17 Apr 2000 18:08:16 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bfa664$a801e4a0$0100a8c0@lion> <0003654200648037_mailit@mailhub.rrze.uni-erlangen.de> <38FAB3BE.82CB4BA@eurocopter.de> <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> <38FB125C.A90659E3@eurocopter.de> <000365758cc6ff37_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >I've never actually watched it myself, but it means "People of Cwm" so I > >imagine that "Cwm" is a village. Of course, if the title is in fact "Pobl y > >cym" - which is possible - then it'd mean "People of Wales". So it's > >probably that then. :)) > > I already wanted to ask if that's a Welsh name... It is, yes. > BTW, isn't Wales named Cymru in Welsh? Very good! Yes, it is. And "Welsh" in Welsh is "Cymraeg". > >How about "Button Moon", eh? Yet another program produced for about 3 > >pounds. Although maybe it was slightly more expensive. 5 pounds, maybe. :) > > Nope. "Come fly to Button Moon with me and Mr. Spoon"? No? AARGH! Don't you get quality childrens programs in Germany? ;) > >But mine means "Because They're Funny"! ;) > > I already guessed that... I hope you don't know what LMAA means! If one A means Arsch, then I'm not sure I want to know! > >I'm interested, I've just had no time. Had a guest at my house - and then > >we went bird-watching. :)) > > Oh, collective bird-watching, probably even given marks. Maybe. Although I obviously wouldn't do that because that's very degrading and sexist... ...okay, maybe I did. :) > >I'm sorry, but I have my priorities sorted: Women. Computers. Food should > >go in that list somewhere, but I'm not sure where. I can usually do the > >food part alongside either of the others, so it's a sort of symbiotic > >thing. :) > > Food is just a necessary nuisance, as is sleep... Food + women (consenting) = fun! Food + computer (uh...) = mess all over keyboard (from the crumbs, from the crumbs - you're sick!) > >Muenchen. Oh yes. Could have gone to the "Erotik Messe" this weekend as > >well - but it was like that in the parks. But free. :)) > > Free as in beer? ;-) Beer is free when you steal it. Or nick it off someone. :) > >Hey, I don't use binoculars! > > Oh no! *POP* > >> Any interesting birds with - erm - big wings? ;-) > >A few, yes. And some with nice... tail feathers. :)) > > This is something for the gay bird-watchers I guess... I don't know what you're thinking, but I think it's something else. I'm talking bottoms here. Female bottoms. Just to clarify. Although... okay, maybe gays do go for bottoms. But... ooh, I don't want to go there. Or think about it either! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 09:13:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA36112 for dynarec-outgoing; Mon, 17 Apr 2000 09:13:27 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38FB373F.E7568AF6@eurocopter.de> Date: Mon, 17 Apr 2000 18:09:35 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <38FB0BBF.C9A08494@eurocopter.de> <023901bfa86e$b60f7b00$88dc48c2@icc.co.im> <38FB12D2.F2774307@eurocopter.de> <00036575919a6765_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Right, you've given me his name, address, phone number, photo and social > >security number. I think I can find him... ;) > > No you don't have that information! I do now. Didn't you know that Andy is in fact a Fed working for InterPol? ;) > Thank god that I didn't really invite you! ;-) You'd have been scared if I'd have brought Salt Spice and Pepper Spice, I'm sure. :) > >I'm a 50/50 geek. 50% women, 50% computers. The 50% computers happens > >during winter - and the other 50% happens when it's warmer. I can't imagine > >why. I'm sure it can't have anything to do with less clothes or anything... > > No it's because the birds are singing so nicely ;-) And their feathers are... well... groomed. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 09:53:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA36252 for dynarec-outgoing; Mon, 17 Apr 2000 09:53:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <38FB36F0.E89938B8@eurocopter.de> Message-Id: <00036577dee4cd37_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bfa664$a801e4a0$0100a8c0@lion> <0003654200648037_mailit@mailhub.rrze.uni-erlangen.de> <38FAB3BE.82CB4BA@eurocopter.de> <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> <38FB125C.A90659E3@eurocopter.de> <000365758cc6ff37_mailit@mailhub.rrze.uni-erlangen.de> <38FB36F0.E89938B8@eurocopter.de> Date: Mon, 17 Apr 2000 18:54:05 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> BTW, isn't Wales named Cymru in Welsh? >Very good! Yes, it is. And "Welsh" in Welsh is "Cymraeg". I didn't know the latter one. Isn't Cymru pronounced more like [kamri]? >"Come fly to Button Moon with me and Mr. Spoon"? No? AARGH! Don't you get >quality childrens programs in Germany? ;) Since Matrix I know that there is no spoon! ;-) >> I already guessed that... I hope you don't know what LMAA means! >If one A means Arsch, then I'm not sure I want to know! How did you guess? ;-) >> Oh, collective bird-watching, probably even given marks. >Maybe. Although I obviously wouldn't do that because that's very degrading >and sexist... Isn't bird-watching sexist as well? >...okay, maybe I did. :) Here we go ;-) >Food + women (consenting) = fun! Haven't tried yet... >Food + computer (uh...) = mess all over keyboard (from the crumbs, from the >crumbs - you're sick!) Hey, you're sick as well if you think you can foretell my reaction! ;-) >*POP* Pardon? >I don't know what you're thinking, but I think it's something else. I'm >talking bottoms here. Female bottoms. Just to clarify. Ah, ok. >Although... okay, >maybe gays do go for bottoms. But... ooh, I don't want to go there. Or >think about it either! :o Me neither... >I do now. Didn't you know that Andy is in fact a Fed working for InterPol? I should know that I'm the boss of InterPol! >You'd have been scared if I'd have brought Salt Spice and Pepper Spice, I'm >sure. :) As long as Salt and Pepper would be female... ;-) >And their feathers are... well... groomed. :) It seems that I don't understand that joke even when I looked up "groom" in the dictionary... >Neil. -- M.I.Ke "The voters have spoken, the bastards ..." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 09:53:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA36256 for dynarec-outgoing; Mon, 17 Apr 2000 09:53:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <38FB32DA.483578B6@eurocopter.de> Message-Id: <00036577ab8b992f_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze.<0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bf <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> <016a01bfa867$a2a84da0$88dc48c2@icc.co.im> <38FB0BBF.C9A08494@eurocopter.de> <00036575736250ba_mailit@mailhub.rrze.uni-erlangen.de> <38FB32DA.483578B6@eurocopter.de> Date: Mon, 17 Apr 2000 18:39:43 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yeah. I'm Thyme Spice and the others include Salt Spice and Pepper Spice. >Be scared. ;)) No I won't. I eat Sambal Oelek as a snack, so I will just swallow you ;-) >No, seriously, I can't check anything except for one hour of Internet >access. Except at home. Which is where I'll check it. But then I'll >probably forget to mail you anyway. :)) You need a brain upgrade ;-) >PlayCPU it appears. ;)) Anything I should know? ;-) >Do I? I don't remember any of my dreams. Ugh, maybe I *do* dream of the >Itanium! AAARGH! Hehe. So you don't remember your dreams either? >Down the road, first turning on the right. ;) Shit I went too far... >Neil. -- M.I.Ke Naeser's Law: You can make it foolproof, but you can't make it damnfoolproof. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 22:08:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id WAA39057 for dynarec-outgoing; Mon, 17 Apr 2000 22:08:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 17 Apr 2000 22:08:20 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: OS Upgrade on its way Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Synthcom is scheduled to upgraded to FreeBSD 4.0 on the days of April 28th and 29th. It will go down sometime in the afternoon of the 28th and come back up sometime on the 29th. If worse comes to worst, I'll stick in the old drive and boot the old OS, so it'll be up and running on the 29th without question. Obviously, during that time Synthcom will be unreachable as well as its services. This includes dialin lines for those that use them. I expect the transition to the new OS to be smooth. Each upgrade to the next major revision number has been extremely simple and trouble free, and from what I've read from other early adopters this is certainly to be expected. I'll post another message in a week or so and an additional message the day before it goes down. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon Apr 17 23:58:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA39468 for dynarec-outgoing; Mon, 17 Apr 2000 23:58:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38FC066C.81EB07FE@eurocopter.de> Date: Tue, 18 Apr 2000 08:53:32 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze.<0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bf <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> <016a01bfa867$a2a84da0$88dc48c2@icc.co.im> <38FB0BBF.C9A08494@eurocopter.de> <00036575736250ba_mailit@mailhub.rrze.uni-erlangen.de> <38FB32DA.483578B6@eurocopter.de> <00036577ab8b992f_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Yeah. I'm Thyme Spice and the others include Salt Spice and Pepper Spice. > >Be scared. ;)) > > No I won't. I eat Sambal Oelek as a snack, so I will just swallow you ;-) I could reply to that... but I won't. :) > >No, seriously, I can't check anything except for one hour of Internet > >access. Except at home. Which is where I'll check it. But then I'll > >probably forget to mail you anyway. :)) > > You need a brain upgrade ;-) No, the one I've got is quite fine. I just need to find the "On" switch. :)) > >PlayCPU it appears. ;)) > > Anything I should know? ;-) Ask Andrew! ;) > >Do I? I don't remember any of my dreams. Ugh, maybe I *do* dream of the > >Itanium! AAARGH! > > Hehe. So you don't remember your dreams either? It's very rare that I can actually. > >Down the road, first turning on the right. ;) > > Shit I went too far... Damn! > Naeser's Law: > You can make it foolproof, but you can't make it > damnfoolproof. Isn't this kind of fitting to do with Dynarec, eh? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 18 00:18:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA39517 for dynarec-outgoing; Tue, 18 Apr 2000 00:18:35 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <38FC066C.81EB07FE@eurocopter.de> Message-Id: <00036583f4438b5a_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze.<0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bf <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> <016a01bfa867$a2a84da0$88dc48c2@icc.co.im> <38FB0BBF.C9A08494@eurocopter.de> <00036575736250ba_mailit@mailhub.rrze.uni-erlangen.de> <38FB32DA.483578B6@eurocopter.de> <00036577ab8b992f_mailit@mailhub.rrze.uni-erlangen.de> <38FC066C.81EB07FE@eurocopter.de> Date: Tue, 18 Apr 2000 09:19:03 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> No I won't. I eat Sambal Oelek as a snack, so I will just swallow you ;-) >I could reply to that... but I won't. :) Why not? Don't you know what Sambal Oelek is? >> You need a brain upgrade ;-) >No, the one I've got is quite fine. I just need to find the "On" switch. >:)) What? I have to activate it? Thanks for the hint! >> Hehe. So you don't remember your dreams either? >It's very rare that I can actually. Probably only nightmares which are so scary that one wakes up. >> Naeser's Law: >> You can make it foolproof, but you can't make it >> damnfoolproof. >Isn't this kind of fitting to do with Dynarec, eh? I guess it fits any piece of software. >Neil. -- M.I.Ke Peter's Law of Substitution: Look after the molehills, and the mountains will look after themselves. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 18 01:43:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA39773 for dynarec-outgoing; Tue, 18 Apr 2000 01:43:11 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38FC1F70.1CC0BCC5@eurocopter.de> Date: Tue, 18 Apr 2000 10:40:16 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bfa664$a801e4a0$0100a8c0@lion> <0003654200648037_mailit@mailhub.rrze.uni-erlangen.de> <38FAB3BE.82CB4BA@eurocopter.de> <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> <38FB125C.A90659E3@eurocopter.de> <000365758cc6ff37_mailit@mailhub.rrze.uni-erlangen.de> <38FB36F0.E89938B8@eurocopter.de> <00036577dee4cd37_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >> BTW, isn't Wales named Cymru in Welsh? > >Very good! Yes, it is. And "Welsh" in Welsh is "Cymraeg". > > I didn't know the latter one. Isn't Cymru pronounced more like [kamri]? Almost. It's pronounced like [kum-rEE]. That's very good though for a non-Welsh person. It appears you know more than most English people too! :o > >"Come fly to Button Moon with me and Mr. Spoon"? No? AARGH! Don't you get > >quality childrens programs in Germany? ;) > > Since Matrix I know that there is no spoon! ;-) Yes, but that'd mean there are no computers, no emulation - and no Dynarec. Hmm... No Dynarec. Is that necessarily a bad thing? :o > >> I already guessed that... I hope you don't know what LMAA means! > >If one A means Arsch, then I'm not sure I want to know! > > How did you guess? ;-) I was right?! ;o > >Maybe. Although I obviously wouldn't do that because that's very degrading > >and sexist... > > Isn't bird-watching sexist as well? If we're talking real birds here, then no. If not, then... maybe. :) > >Food + women (consenting) = fun! > > Haven't tried yet... When you do, a quick hint: not McDonalds. :)) > >Food + computer (uh...) = mess all over keyboard (from the crumbs, from the > >crumbs - you're sick!) > > Hey, you're sick as well if you think you can foretell my reaction! ;-) I won't deny that. :) > >*POP* > > Pardon? *POP* :)) > >I do now. Didn't you know that Andy is in fact a Fed working for InterPol? > > I should know that I'm the boss of InterPol! Really? That's handy then. You must know each other. ;) > >You'd have been scared if I'd have brought Salt Spice and Pepper Spice, I'm > >sure. :) > > As long as Salt and Pepper would be female... ;-) "Spice Boys"? I'd be surprised... ;) > >And their feathers are... well... groomed. :) > > It seems that I don't understand that joke even when I looked up "groom" in > the dictionary... I can't remember what I meant anyway. It probably wasn't very funny. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 18 07:40:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA40731 for dynarec-outgoing; Tue, 18 Apr 2000 07:40:50 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Dynarecs From: Michael Koenig In-Reply-To: <38FC1F70.1CC0BCC5@eurocopter.de> Message-Id: <0003658a216924af_mailit@mailhub.rrze.uni-erlangen.de> References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bfa664$a801e4a0$0100a8c0@lion> <0003654200648037_mailit@mailhub.rrze.uni-erlangen.de> <38FAB3BE.82CB4BA@eurocopter.de> <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> <38FB125C.A90659E3@eurocopter.de> <000365758cc6ff37_mailit@mailhub.rrze.uni-erlangen.de> <38FB36F0.E89938B8@eurocopter.de> <00036577dee4cd37_mailit@mailhub.rrze.uni-erlangen.de> <38FC1F70.1CC0BCC5@eurocopter.de> Date: Tue, 18 Apr 2000 16:41:10 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> I didn't know the latter one. Isn't Cymru pronounced more like [kamri]? >Almost. It's pronounced like [kum-rEE]. Since I tried to stick to the IPA and you used the typical pseudo phonetics transscription that is that same, or at least I meant the same. >That's very good though for a >non-Welsh person. It appears you know more than most English people too! :o Thanks. But don't ask me why I know that because I couldn't explain it. >Yes, but that'd mean there are no computers, no emulation - and no Dynarec. >Hmm... No Dynarec. Is that necessarily a bad thing? :o Yes! >> >If one A means Arsch, then I'm not sure I want to know! >I was right?! ;o Indeed ;-) The translation for LMAA would be KMA. >If we're talking real birds here, then no. If not, then... maybe. :) Sometimes there isn't much difference anyway... >> >Food + women (consenting) = fun! >When you do, a quick hint: not McDonalds. :)) Since I'm not a great fan of McDonalds that's not much of a problem, the women will be the big problem... >*POP* Ok, is it an acronym or are you just trying to tease me again? >> I should know that I'm the boss of InterPol! >Really? That's handy then. You must know each other. ;) Nope, we are only known by code names of course, unless you're the boss, who has all information. >> As long as Salt and Pepper would be female... ;-) >"Spice Boys"? I'd be surprised... ;) I just wanted to see if you notice the error ;-) And I'm dreaming again... >Neil. -- M.I.Ke Never offend people with style when you can offend them with substance. -- Sam Brown, "The Washington Post", January 26, 1977 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 19 02:45:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA44488 for dynarec-outgoing; Wed, 19 Apr 2000 02:45:46 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <38FD7F77.68A23C51@eurocopter.de> Date: Wed, 19 Apr 2000 11:42:15 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarecs References: <001701bfa5f3$51a0ec80$88dc48c2@icc.co.im> <00036535db23660f_mailit@mailhub.rrze.uni-erlangen.de> <008a01bfa5fc$22c2da00$88dc48c2@icc.co.im> <000365364e6755a0_mailit@mailhub.rrze. <0003653ac7de15d7_mailit@mailhub.rrze.uni-erlangen.de> <031d01bfa62f$1b0a5940$88dc48c2@icc.co.im> <0003653bad883606_mailit@mailhub.rrze.uni-erlangen.de> <001801bfa64c$1ce72960$8f52883e@ben> <0003653e864fa218_mailit@mailhub.rrze.uni-erlangen.de> <002501bfa664$a801e4a0$0100a8c0@lion> <0003654200648037_mailit@mailhub.rrze.uni-erlangen.de> <38FAB3BE.82CB4BA@eurocopter.de> <00036572ea16fe33_mailit@mailhub.rrze.uni-erlangen.de> <38FB125C.A90659E3@eurocopter.de> <000365758cc6ff37_mailit@mailhub.rrze.uni-erlangen.de> <38FB36F0.E89938B8@eurocopter.de> <00036577dee4cd37_mailit@mailhub.rrze.uni-erlangen.de> <38FC1F70.1CC0BCC5@eurocopter.de> <0003658a216924af_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Almost. It's pronounced like [kum-rEE]. > > Since I tried to stick to the IPA and you used the typical pseudo phonetics > transscription that is that same, or at least I meant the same. Okay. Anyway, that's very good. :) > >That's very good though for a > >non-Welsh person. It appears you know more than most English people too! :o > > Thanks. But don't ask me why I know that because I couldn't explain it. And, moreover, is it useful to know? I don't think so. Except that it makes learning a new language easier - but then it has its downsides too. For instance, I can speak in either English, Welsh or French. My German is getting better, but it's nowhere near good. Anyway, I now get confused when speaking either French or German and mixing up the languages. AARGH! > >> >If one A means Arsch, then I'm not sure I want to know! > >I was right?! ;o > > Indeed ;-) > The translation for LMAA would be KMA. Kick My Arse? If it's that, that's not a request. :) > >> >Food + women (consenting) = fun! > >When you do, a quick hint: not McDonalds. :)) > > Since I'm not a great fan of McDonalds that's not much of a problem, the > women will be the big problem... None at your workplace? > >*POP* > > Ok, is it an acronym or are you just trying to tease me again? Er... I couldn't remember why I wrote it - but now I do. It's because you wrote "Oh no!" and I put in "*POP*". Still no idea? Think "Lemmings". :) > >Really? That's handy then. You must know each other. ;) > > Nope, we are only known by code names of course, unless you're the boss, who > has all information. You should know then! > >> As long as Salt and Pepper would be female... ;-) > >"Spice Boys"? I'd be surprised... ;) > > I just wanted to see if you notice the error ;-) Haha! Your plan failed! I spotted the error. ;) > And I'm dreaming again... Not of Itanium processors I hope! Anyway, I'm off home now. Well, in about 20 mins. I'll speak to you all again next Wednesday. See you! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 19 09:10:07 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA45370 for dynarec-outgoing; Wed, 19 Apr 2000 09:10:07 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: DYNAREC: DRFAQ update From: Michael Koenig Message-Id: <0003659f7d60aa34_mailit@mailhub.rrze.uni-erlangen.de> Date: Wed, 19 Apr 2000 18:10:07 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com, DavidSharp@ThePentagon.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com I guess that subject says it all... -- M.I.Ke Yea, though I walk through the valley of the shadow of APL, I shall fear no evil, for I can string six primitive monadic and dyadic operators together. -- Steve Higgins --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sat Apr 22 11:51:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA12108 for dynarec-outgoing; Sat, 22 Apr 2000 11:51:55 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 22 Apr 2000 11:51:54 -0700 (PDT) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: OS Upgrade moved from the 29th to Tuesday the 25th Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com The priorly planned OS upgrade has been moved from the 28th-29th to this Tuesday. Expect Synthcom to be unreachable for nearly all day - it will be back online late Tuesday night at the latest. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 25 00:13:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA01834 for dynarec-outgoing; Tue, 25 Apr 2000 00:13:23 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004250717.JAA25984@pons.ac.upc.es> Subject: DYNAREC: SI and DRFAQ In-Reply-To: <0003659f7d60aa34_mailit@mailhub.rrze.uni-erlangen.de> from Michael Koenig at "Apr 19, 2000 06:10:07 pm" To: dynarec@synthcom.com Date: Tue, 25 Apr 2000 09:17:19 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Umm ... Hello, It seems that the SI emulator it's now working and without my help. Oh, well, I will have more time for dynarec. But also seems MIKE has started a DRFAQ, so what it's supposed I have to do now? ;) Only a week out and ... I haven't still readed all the MUL8 mails but it seems it's been discused if the SI project will use MZ80 core or a new one. I'm already interested in building the 8080 core. And as I didn't think in discuss the schematics ... Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 25 03:10:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA02506 for dynarec-outgoing; Tue, 25 Apr 2000 03:10:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: SI and DRFAQ From: Michael Koenig In-Reply-To: <200004250717.JAA25984@pons.ac.upc.es> Message-Id: <000366132fafbeea_mailit@mailhub.rrze.uni-erlangen.de> References: <200004250717.JAA25984@pons.ac.upc.es> Date: Tue, 25 Apr 2000 12:12:00 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >It seems that the SI emulator it's now working and without my help. Oh, >well, I will have more time for dynarec. Think positively ;-) >But also seems MIKE has started a DRFAQ, so >what it's supposed I have to do now? ;) You could take a look if I forgot something important. And how about a Spanish translation? ;-) >Only a week out and ... I know, but the good news is that you didn't miss anything important on this mailing list... -- M.I.Ke You don't have to think too hard when you talk to teachers. -- J. D. Salinger --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 25 05:01:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA02735 for dynarec-outgoing; Tue, 25 Apr 2000 05:01:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004251204.OAA00105@pons.ac.upc.es> Subject: Re: DYNAREC: SI and DRFAQ In-Reply-To: <000366132fafbeea_mailit@mailhub.rrze.uni-erlangen.de> from Michael Koenig at "Apr 25, 2000 12:12:00 pm" To: dynarec@synthcom.com Date: Tue, 25 Apr 2000 14:04:41 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >It seems that the SI emulator it's now working and without my help. Oh, > >well, I will have more time for dynarec. > > Think positively ;-) I'm too pesimist to not to think positively ;) > > >But also seems MIKE has started a DRFAQ, so > >what it's supposed I have to do now? ;) > > You could take a look if I forgot something important. And how about a > Spanish translation? ;-) > I will take a careful look ... someday. Until thursday I'm busy :( The translation seems a good idea ;) And I'm sure I still will have ideas for the FAQ. > >Only a week out and ... > > I know, but the good news is that you didn't miss anything important on this > mailing list... > Really?, I still haven't readed all the mails (around 80) posted last week. Only a very fast look up. Victor Moya P.S.: What has happenned? The last mail I get was 19th April, and NG is still around? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 25 05:48:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA02839 for dynarec-outgoing; Tue, 25 Apr 2000 05:48:51 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 25 Apr 2000 14:52:25 +0100 From: Julian Brown To: dynarec@synthcom.com Subject: DYNAREC: ARM emulation Message-ID: <20000425145223.B754@jtb20b.quns.cam.ac.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, I don't know exactly how much interest it'll be to members of this group (about how many are there here anyway?), but I've been coding a dynamic-recompiling ARM emulator (on x86 Linux) over the last few months for a final-year university project. Now, I intend to carry on working on the emulator for fun, as a handy alternative to revising for finals... ;-) The emulator's in a state where it can run some amount of code under recompilation (with a slightly-disappointing sixfold speed increase over the 'normal' emulation it is also capable of), but there are some bugs remaining and some important feature omissions. The code produced dynamically is 'real' x86 machine code, not intermediate or threaded code of some description. I guess other people have come to the stage in projects of this sort where debugging becomes extremely difficult (two different types of processor aren't supported by most debuggers for one thing...) - are there any hints and tips anyone has which might be useful to me? If anyone's interested in having a look at what I've done so far, there's a little bit of information and a CVS source snapshot at: http://jtb20.quns.cam.ac.uk/armdynrec/index.html Any (serious) collaboration efforts will be considered if you feel like helping, particularly if you're interested in Acorn/RISC OS emulation. Bear in mind that, strictly speaking, I don't have any spare time for about the next six weeks (see first paragraph)... Jules -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 25 06:36:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA02929 for dynarec-outgoing; Tue, 25 Apr 2000 06:36:29 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200004251339.PAA25417@pons.ac.upc.es> Subject: Re: DYNAREC: ARM emulation In-Reply-To: <20000425145223.B754@jtb20b.quns.cam.ac.uk> from Julian Brown at "Apr 25, 2000 02:52:25 pm" To: dynarec@synthcom.com Date: Tue, 25 Apr 2000 15:39:59 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > I don't know exactly how much interest it'll be to members of this group > (about how many are there here anyway?), but I've been coding a > dynamic-recompiling ARM emulator (on x86 Linux) over the last few months > for a final-year university project. Now, I intend to carry on working on > the emulator for fun, as a handy alternative to revising for finals... ;-) > Oh, yet another university project about dynarec. How many there are now? ;) Welcome anyway. > > I guess other people have come to the stage in projects of this sort where > debugging becomes extremely difficult (two different types of processor > aren't supported by most debuggers for one thing...) - are there any hints > and tips anyone has which might be useful to me? > As I still haven't started to write code (my university project it's stopped now) I can't really help with this. But I'm working with a static translator trying to find the errors in the PowerPc translator and it's really hard, and I'm using a Power and an Alpha (target machine) at the same time (using a X-Terminal). Now we are trying to automatice the process using trace system and then searching for diffs. > If anyone's interested in having a look at what I've done so far, there's > a little bit of information and a CVS source snapshot at: > > http://jtb20.quns.cam.ac.uk/armdynrec/index.html > It seems it doesn't work. > Any (serious) collaboration efforts will be considered if you feel like > helping, particularly if you're interested in Acorn/RISC OS emulation. > Bear in mind that, strictly speaking, I don't have any spare time > for about the next six weeks (see first paragraph)... > Most of the people in the list it's usually busy ... it's sure I am. But I'm sure you will get some help. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 25 07:39:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA03066 for dynarec-outgoing; Tue, 25 Apr 2000 07:39:31 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 25 Apr 2000 16:42:52 +0100 From: Julian Brown To: dynarec@synthcom.com Subject: Re: DYNAREC: ARM emulation Message-ID: <20000425164252.A996@jtb20b.quns.cam.ac.uk> References: <20000425145223.B754@jtb20b.quns.cam.ac.uk> <200004251339.PAA25417@pons.ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: <200004251339.PAA25417@pons.ac.upc.es>; from Victor Moya del Barrio on Tue, Apr 25, 2000 at 03:39:59PM +0200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Tue, Apr 25, 2000 at 03:39:59PM +0200, Victor Moya del Barrio wrote: > > > I guess other people have come to the stage in projects of this sort where > > debugging becomes extremely difficult (two different types of processor > > aren't supported by most debuggers for one thing...) - are there any hints > > and tips anyone has which might be useful to me? > > > As I still haven't started to write code (my university project it's stopped > now) I can't really help with this. But I'm working with a static translator > trying to find the errors in the PowerPc translator and it's really hard, and > I'm using a Power and an Alpha (target machine) at the same time (using a > X-Terminal). Now we are trying to automatice the process using trace system > and then searching for diffs. I have a roughly similar setup (real machines with x86 and StrongARM processors), but I haven't tried to automate any testing or verification process using both yet - I guessed that trying to do that would be practically as hard as the rest of the project again... > > If anyone's interested in having a look at what I've done so far, there's > > a little bit of information and a CVS source snapshot at: > > > > http://jtb20.quns.cam.ac.uk/armdynrec/index.html > > It seems it doesn't work. Oh? Can anyone see that page and/or the rest of the site, or is my server broken or being blocked by something? It seems to work fine from the bits of network I have access to, but someone else (from within .cam.ac.uk) has been complaining they can't access the server... I'll check my config again. > Most of the people in the list it's usually busy ... it's sure I am. > But I'm sure you will get some help. OK, thanks for replying anyway, Jules -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 25 07:45:12 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA03095 for dynarec-outgoing; Tue, 25 Apr 2000 07:45:11 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 25 Apr 2000 16:48:45 +0100 From: Julian Brown To: dynarec@synthcom.com Subject: Re: DYNAREC: ARM emulation Message-ID: <20000425164844.A1056@jtb20b.quns.cam.ac.uk> References: <20000425145223.B754@jtb20b.quns.cam.ac.uk> <200004251339.PAA25417@pons.ac.upc.es> <20000425164252.A996@jtb20b.quns.cam.ac.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: <20000425164252.A996@jtb20b.quns.cam.ac.uk>; from Julian Brown on Tue, Apr 25, 2000 at 04:42:52PM +0100 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Tue, Apr 25, 2000 at 04:42:52PM +0100, Julian Brown wrote: > Oh? Can anyone see that page and/or the rest of the site, or is my server > broken or being blocked by something? It seems to work fine from the bits > of network I have access to, but someone else (from within .cam.ac.uk) > has been complaining they can't access the server... I'll check my config > again. Sorry to reply to my own message - I think I might have fixed that problem now... Julian -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 25 09:45:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA03382 for dynarec-outgoing; Tue, 25 Apr 2000 09:45:36 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: ARM emulation From: Michael Koenig In-Reply-To: <20000425145223.B754@jtb20b.quns.cam.ac.uk> Message-Id: <00036618b90d2c66_mailit@mailhub.rrze.uni-erlangen.de> References: <20000425145223.B754@jtb20b.quns.cam.ac.uk> Date: Tue, 25 Apr 2000 18:48:20 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I don't know exactly how much interest it'll be to members of this group >(about how many are there here anyway?), but I've been coding a >dynamic-recompiling ARM emulator (on x86 Linux) over the last few months >for a final-year university project. Now, I intend to carry on working on >the emulator for fun, as a handy alternative to revising for finals... ;-) Interest? Certainly! I'm always interested in dynarecs and especially if it has something to do with ARM on one of the sides. >The emulator's in a state where it can run some amount of code under >recompilation (with a slightly-disappointing sixfold speed increase over >the 'normal' emulation it is also capable of), but there are some bugs >remaining and some important feature omissions. The code produced >dynamically is 'real' x86 machine code, not intermediate or threaded code >of some description. Very nice! I think the sixfold speed increase sounds quite realistic. I'm pleased to hear that you produce "real" code since I found out that James Ponder mainly used threaded code for Generator :-( >I guess other people have come to the stage in projects of this sort where >debugging becomes extremely difficult (two different types of processor >aren't supported by most debuggers for one thing...) - are there any hints >and tips anyone has which might be useful to me? The only way to debug the code is probably to dump the disassembled source and traget blocks in a file and check these instruction per instruction. I don't think that anyone found a more fancy debugging method yet. >If anyone's interested in having a look at what I've done so far, there's >a little bit of information and a CVS source snapshot at: > http://jtb20.quns.cam.ac.uk/armdynrec/index.html I'll take a look, thanks! >Any (serious) collaboration efforts will be considered if you feel like >helping, particularly if you're interested in Acorn/RISC OS emulation. >Bear in mind that, strictly speaking, I don't have any spare time >for about the next six weeks (see first paragraph)... Try contacting Chris Lloyd, who wrote the best Archimedes emulator "Archie", whose main flaw is the bad speed: http://archieemu.cjb.net/ >Jules -- M.I.Ke The truth is what is; what should be is a dirty lie. -- Lenny Bruce --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 25 11:19:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA03785 for dynarec-outgoing; Tue, 25 Apr 2000 11:19:46 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: SI and DRFAQ From: Michael Koenig In-Reply-To: <200004251204.OAA00105@pons.ac.upc.es> Message-Id: <0003661a04ceab85_mailit@mailhub.rrze.uni-erlangen.de> References: <200004251204.OAA00105@pons.ac.upc.es> Date: Tue, 25 Apr 2000 20:21:05 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I'm too pesimist to not to think positively ;) You're also too funny to be taken seriously ;-) >I will take a careful look ... someday. Until thursday I'm busy :( Let's hope I can provide some more sections till then. >The translation seems a good idea ;) It is, isn't it? ;-) >And I'm sure I still will have ideas for the FAQ. I hope so, I'm certainly not perfect! Any ideas and contributions are welcome. >Really?, I still haven't readed all the mails (around 80) posted last week. >Only a very fast look up. So many? >Victor Moya >P.S.: What has happenned? The last mail I get was 19th April, There wasn't much traffic on the list and the message on the 19th and the one on the 22th were the last ones till today. >and NG is still around? He went to Cymru (Wales) and will be back on Wednesday IIRC. -- M.I.Ke Pro is to con as progress is to Congress. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue Apr 25 14:34:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA04655 for dynarec-outgoing; Tue, 25 Apr 2000 14:34:55 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 25 Apr 2000 14:34:53 -0700 (PDT) From: Neil Bradley To: rasterlist@synthcom.com, vectorlist@synthcom.com, dynarec@synthcom.com Subject: DYNAREC: Synthcom downtime Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Roughly 3 hour warning - Synthcom will be down at around 4-5PM and will stay down until roughly 2AM PDT for an OS upgrade. No data will be lost, but I do expect some things to break (for dialin users). If worse comes to worst, I'll throw the old hard drive back online to restore system service so it'll be back online guaranteed. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 26 01:32:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA00380 for dynarec-outgoing; Wed, 26 Apr 2000 01:32:59 GMT (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: beacon.synthcom.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <39069819.A73A4926@eurocopter.de> Date: Wed, 26 Apr 2000 09:17:45 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: DYNAREC: I'm back! :) References: <200004251204.OAA00105@pons.ac.upc.es> <0003661a04ceab85_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, Not only am I back but WOW, have I got a lot of e-mails. Well, yes, actually. :) The SI project is coming along. I'm glad they're sorting it out by themselves, it means that I have more time to myself - and so do you, Victor. :) I'm also interested by the new dynarec emulator, Julian. I bet it's hard work getting that up to scratch in Cambridge University! I have two friends who work there in the tech support section... Anyway, I'll be taking a look at that a bit later. Anyway, I've got to go back and pretend to work. I'll actually be e-mailing other people to tell them that I'm back - and telling them that I'm pretending to work too. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 26 02:08:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA08530 for dynarec-outgoing; Wed, 26 Apr 2000 02:08:33 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200004260846.KAA19933@pons.ac.upc.es> Subject: Re: DYNAREC: I'm back! :) In-Reply-To: <39069819.A73A4926@eurocopter.de> from Neil Griffiths at "Apr 26, 2000 09:17:45 am" To: dynarec@synthcom.com Date: Wed, 26 Apr 2000 10:46:46 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > Not only am I back but WOW, have I got a lot of e-mails. Well, yes, > actually. :) > Hehe, the same happened to me yesterday ;) More than 80s mails to read ... > The SI project is coming along. I'm glad they're sorting it out by > themselves, it means that I have more time to myself - and so do you, > Victor. :) > Yes I get really surprised yesterday when I saw all those mails, it makes me really happy. > I'm also interested by the new dynarec emulator, Julian. I bet it's hard > work getting that up to scratch in Cambridge University! I have two friends > who work there in the tech support section... Anyway, I'll be taking a look > at that a bit later. > DYNAREC list it's becoming more interesting every day :) > Anyway, I've got to go back and pretend to work. I'll actually be e-mailing > other people to tell them that I'm back - and telling them that I'm > pretending to work too. :) > :)) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 26 02:16:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA08771 for dynarec-outgoing; Wed, 26 Apr 2000 02:16:56 GMT (envelope-from owner-dynarec@synthcom.com) Date: Wed, 26 Apr 2000 02:16:53 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: Duplicate messages Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Can we not send duplicate messages to the list if they don't get bounced back to you? I've already warned everyone on all mailing lists that Synthcom was undergoing an OS upgrade (which it is now back from). All it does is just cause messages to get clogged up in a queue elsewhere and then spew double messages to the list later on causing me to scratch my head and wonder why my machine is sending out double messages, when in fact it's nothing more than incessant pinging from mail list members. Thank you! -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 26 03:01:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA13706 for dynarec-outgoing; Wed, 26 Apr 2000 03:01:26 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: I'm back! :) From: Michael Koenig In-Reply-To: <39069819.A73A4926@eurocopter.de> Message-Id: <00036627258841ca_mailit@mailhub.rrze.uni-erlangen.de> References: <200004251204.OAA00105@pons.ac.upc.es> <0003661a04ceab85_mailit@mailhub.rrze.uni-erlangen.de> <39069819.A73A4926@eurocopter.de> Date: Wed, 26 Apr 2000 12:00:49 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Not only am I back but WOW, have I got a lot of e-mails. Well, yes, >actually. :) Oh my, he's back, AHHHHH! >I'm also interested by the new dynarec emulator, Julian. I bet it's hard >work getting that up to scratch in Cambridge University! I have two friends >who work there in the tech support section... Anyway, I'll be taking a look >at that a bit later. It sounds very interesting indeed ;-) >Anyway, I've got to go back and pretend to work. I'll actually be e-mailing >other people to tell them that I'm back - and telling them that I'm >pretending to work too. :) Isn't that exactly what you did before Easter as well? ;-) >Neil. -- M.I.Ke WARNING TO ALL PERSONNEL: Firings will continue until morale improves. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 26 03:14:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA13780 for dynarec-outgoing; Wed, 26 Apr 2000 03:14:36 GMT (envelope-from owner-dynarec@synthcom.com) Date: Wed, 26 Apr 2000 03:14:29 +0000 (GMT) From: Neil Bradley To: mul8@synthcom.com, rasterlist@synthcom.com, vectorlist@synthcom.com, dynarec@synthcom.com Subject: DYNAREC: Synthcom back online Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Synthcom is back up on the new OS. Things appear to be running smoothly. Majordomo is working fine. All mail programs are working fine. Dialin lines are working fine. FTP, Web, etc... all work as it should. For those of who you emailed me or spammed the mailing lists with mulitple messages, shame on you. I warned you already that Synthcom would be down and that it would be back up by 2AM PDT (it came up at 1:45AM). There is going to be some mail queue weirdness (as in some messages not being delivered at all and followups coming through OK) as there were messages queued up before the switchover took place. The mail queue file formats aren't compatiable, so we've lost a few messages (nothing to the MAME or MESSDEV lists, though) in the transition. And I have no intention of sifting through the messages by hand to figure out what they were, either, so don't ask. ;-) Also do not assume Synthcom is down or malfunctioning. Reserve that judgement until a few days have passed. I'm sure there are several mail servers out there that couldn't contact Synthcom for a few hours and have queued messages up for Synthcom. That means you'll get messages out of order. This is a normal downtime transition process that should work itself out in the next 24-48 hours. FreeBSD 4.0 is snappier than 3.2 is. Turnaround time on just about every operation is much quicker. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed Apr 26 13:59:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA01464 for dynarec-outgoing; Wed, 26 Apr 2000 13:59:02 GMT (envelope-from owner-dynarec@synthcom.com) Subject: DYNAREC: DRFAQ From: Michael Koenig Message-Id: <000366305f9e3e24_mailit@mailhub.rrze.uni-erlangen.de> Date: Wed, 26 Apr 2000 23:01:18 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, I've uploaded the modified DRFAQ with an alternative version for the dispatcher code which uses less function pointer casts. Could you tell me please if I should leave the old one or the new one. Just in case you've lost the URL (or we have even new lurkers): http://www.linguistik.uni-erlangen.de/~mlkoenig/drfaq.html -- M.I.Ke "It's bad luck to be superstitious." -- Andrew W. Mathis --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 27 02:53:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA00988 for dynarec-outgoing; Thu, 27 Apr 2000 02:53:51 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200004270957.LAA12959@pons.ac.upc.es> Subject: Re: DYNAREC: DRFAQ In-Reply-To: <000366305f9e3e24_mailit@mailhub.rrze.uni-erlangen.de> from Michael Koenig at "Apr 26, 2000 11:01:18 pm" To: dynarec@synthcom.com Date: Thu, 27 Apr 2000 11:57:24 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > I've uploaded the modified DRFAQ with an alternative version for the > dispatcher code which uses less function pointer casts. Could you tell me > please if I should leave the old one or the new one. I prefer the one I wrote in my own document, it's less C alike ;) The new one it's the best for me, but I think that when writen pseudocode using pointer casts has no sense. I doesn't helps understand the algorithm but dirties it. Just my thoughts. Finally! I have the time to read the FAQ today :) Just a quick lookup ... FAQ means frequently asked questions, you see a question, an answer, I think this document itsn't a FAQ. But it's still a good name ;) > Basic Blocks and Translation Units I have this too in my old never finished stopped until Judgement day document, but in the spanish version ;) Perhaps it's time to translate it. > Prolog and Epilog Shade? ;) > Translation Mapping (TransMap) I invented the name !!! > Paged TransMap I invented the technique !!! :)) About self-modifying code I have a new idea, I think I will write it tomorrow. The document resembles a lot my own ideas, when I was still writing my document, now stopped. Perhaps I will have to take a look my notes ... I think I have still more documents about dynarec, but I think you have it also ... I mean Embra, FX!32, some other from Apple, I will take a look for tomorrow. The Spanish translation will be for next monday ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 27 07:15:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA01516 for dynarec-outgoing; Thu, 27 Apr 2000 07:15:57 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200004271417.QAA00278@pons.ac.upc.es> Subject: DYNAREC: SI In-Reply-To: <200004270957.LAA12959@pons.ac.upc.es> from Victor Moya del Barrio at "Apr 27, 2000 11:57:24 am" To: dynarec@synthcom.com Date: Thu, 27 Apr 2000 16:17:44 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL60 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com About SI project. I think there are too much discussion around how to do the project. This was already discussed when you presented it. And although its a project from all the group there was a main 'chief' (Neil Griffiths) that could put order on it. Now it's becoming too disorganized in my thoughts. What it's going to happen now. I thought in start something next week, but now ... If not I still have to end my (internal use) document about Neil Bradley's emulator, and I want also to work around MIKE's document. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 27 07:33:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA01591 for dynarec-outgoing; Thu, 27 Apr 2000 07:33:45 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <39084ECB.6A1B167@eurocopter.de> Date: Thu, 27 Apr 2000 16:29:31 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ References: <000366305f9e3e24_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I've uploaded the modified DRFAQ with an alternative version for the > dispatcher code which uses less function pointer casts. Could you tell me > please if I should leave the old one or the new one. Looking good, Mike. Now there's almost as much content as there are subheadings. ;) No, really, it's looking good. But I want to know who those insane people are who distinguish between "dynamic compilation" and "dynamic recompilation"! ;) Neil. PS "UltraHLE's dirty trick" sounds like something rude and definitely for the over-18s. ;)) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 27 09:04:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA02070 for dynarec-outgoing; Thu, 27 Apr 2000 09:04:26 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ From: Michael Koenig In-Reply-To: <39084ECB.6A1B167@eurocopter.de> Message-Id: <000366403ba320b1_mailit@mailhub.rrze.uni-erlangen.de> References: <000366305f9e3e24_mailit@mailhub.rrze.uni-erlangen.de> <39084ECB.6A1B167@eurocopter.de> Date: Thu, 27 Apr 2000 17:56:34 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Looking good, Mike. Now there's almost as much content as there are >subheadings. ;) I hope that I can add more text than headings in the future... >No, really, it's looking good. But I want to know who those insane people >are who distinguish between "dynamic compilation" and "dynamic >recompilation"! ;) I think there was some insane Welsh guy whose name I forgot... >PS "UltraHLE's dirty trick" sounds like something rude and definitely for >the over-18s. ;)) It is! ;-) -- M.I.Ke I don't mind what Congress does, as long as they don't do it in the streets and frighten the horses. -- Victor Hugo --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 27 09:04:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA02078 for dynarec-outgoing; Thu, 27 Apr 2000 09:04:28 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ From: Michael Koenig In-Reply-To: <200004270957.LAA12959@pons.ac.upc.es> Message-Id: <000366405c11e94f_mailit@mailhub.rrze.uni-erlangen.de> References: <200004270957.LAA12959@pons.ac.upc.es> Date: Thu, 27 Apr 2000 18:05:38 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I prefer the one I wrote in my own document, it's less C alike ;) More Pascal-like? ;-) >The new one it's the best for me, but I think that when writen pseudocode >using >pointer casts has no sense. I doesn't helps understand the algorithm but >dirties it. Just my thoughts. I wanted to reduce the casts because it should improve understanding, but what I wrote is no pseudo-code, it should run when all variables and functions are declared. >FAQ means frequently asked questions, you see a question, an answer, I think >this document itsn't a FAQ. But it's still a good name ;) I noticed the problem as well, but I didn't want to collect all possible questions before starting with the answers. I'm also of the opinion that the taken approach has less fragmentary text. >> Prolog and Epilog >Shade? ;) How did you guess? >> Translation Mapping (TransMap) >I invented the name !!! I know, and I like it that's why I used it. >> Paged TransMap >I invented the technique !!! Do you want credit or what? ;-) >About self-modifying code I have a new idea, I think I will write it >tomorrow. I'll be longing for it ;-) >The document resembles a lot my own ideas, when I was still writing my >document, >now stopped. Perhaps I will have to take a look my notes ... Might help. >I think I have still more documents about dynarec, but I think you have it >also ... I mean Embra, FX!32, some other from Apple, I will take a look for >tomorrow. I have more documents as well, but I wanted to sort the crap out and put in only the useful stuff. I don't know about further documents from Apple, maybe you mean the article about Virtual PC by Eric Traut. I don't think that it's this useful. I guess Embra will be added for sure. FX!32 is no dynarec but a interpreter with a static binary translator, since translation is performed after execution and not during runtime. >The Spanish translation will be for next monday ;) Aren't you afraid that I might change the whole thing? ;-) -- M.I.Ke "Stealing a rhinoceros should not be attempted lightly." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 27 23:21:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA00960 for dynarec-outgoing; Thu, 27 Apr 2000 23:21:36 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <39092D72.AB87AE98@eurocopter.de> Date: Fri, 28 Apr 2000 08:19:30 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ References: <000366305f9e3e24_mailit@mailhub.rrze.uni-erlangen.de> <39084ECB.6A1B167@eurocopter.de> <000366403ba320b1_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Looking good, Mike. Now there's almost as much content as there are > >subheadings. ;) > > I hope that I can add more text than headings in the future... I think we all do. If I can help at all, just let me know. > >No, really, it's looking good. But I want to know who those insane people > >are who distinguish between "dynamic compilation" and "dynamic > >recompilation"! ;) > > I think there was some insane Welsh guy whose name I forgot... Hey, I'm not Welsh. I just live in Wales... and speak Welsh. I was born in England though. But hey, the majority of my family is Welsh so I can forgive you. ;) Heh, I've got a truly British name though. My first name is Scottish (Neil), my second name is English (I'm not telling you!) and my last name is Welsh. > >PS "UltraHLE's dirty trick" sounds like something rude and definitely for > >the over-18s. ;)) > > It is! ;-) Ah. That'd explain it. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 27 23:33:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA00994 for dynarec-outgoing; Thu, 27 Apr 2000 23:33:02 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <39092F12.3D89B3BB@eurocopter.de> Date: Fri, 28 Apr 2000 08:26:26 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ References: <200004270957.LAA12959@pons.ac.upc.es> <000366405c11e94f_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >I prefer the one I wrote in my own document, it's less C alike ;) > > More Pascal-like? ;-) Below here is where you said "pseudocode". I have to agree. Pascal-like code is pseudocode. Why do I say that? Well, it's not real code. ;) Okay, I'm biased. Mainly because I use Ada all day. :-/ > I wanted to reduce the casts because it should improve understanding, but > what I wrote is no pseudo-code, it should run when all variables and > functions are declared. I compiled it in my Pascal compiler and it didn't work, what can I do? ;p > >> Prolog and Epilog > >Shade? ;) > > How did you guess? Aargh! Don't mention Prolog to me. I still have nightmares over that language. And the worst thing is that I recieved a phone call last night at around 11:30pm from a friend with a... Prolog problem. Aargh! Because of that, I have now come up with the following theory: Prolog = Satanism. :) > >> Paged TransMap > >I invented the technique !!! > > Do you want credit or what? ;-) I think he wants money for every time it's used. ;) > >The Spanish translation will be for next monday ;) > > Aren't you afraid that I might change the whole thing? ;-) I could translate it to Welsh... but that'd be silly. I could translate it to French too - but that'd be stupid. ;) > "Stealing a rhinoceros should not be attempted lightly." Wise advice. A forklift truck would be well advised. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 27 23:37:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA01020 for dynarec-outgoing; Thu, 27 Apr 2000 23:37:38 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200004280641.IAA15355@pons.ac.upc.es> Subject: Re: DYNAREC: DRFAQ In-Reply-To: <000366405c11e94f_mailit@mailhub.rrze.uni-erlangen.de> "from Michael Koenig at Apr 27, 2000 06:05:38 pm" To: dynarec@synthcom.com Date: Fri, 28 Apr 2000 08:41:47 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >I prefer the one I wrote in my own document, it's less C alike ;) > > More Pascal-like? ;-) > Yes! ;) BTW have you readed my attempt of document? I think I posted it somewhere, but I can't remember where it was. > I wanted to reduce the casts because it should improve understanding, but > what I wrote is no pseudo-code, it should run when all variables and > functions are declared. > For a document I like more pseudo-code. > >> Paged TransMap > >I invented the technique !!! > > Do you want credit or what? ;-) > Yes! ;) > >About self-modifying code I have a new idea, I think I will write it > >tomorrow. > > I'll be longing for it ;-) > Just wait to my next mail ;) > I have more documents as well, but I wanted to sort the crap out and put in > only the useful stuff. > I don't know about further documents from Apple, maybe you mean the article > about Virtual PC by Eric Traut. I don't think that it's this useful. I think it is, but I can't remember about what it was ... I will have to reread it. > FX!32 is no dynarec but a interpreter with a static binary translator, since > translation is performed after execution and not during runtime > But I think it's still interesting, it has some interesting ideas. > >The Spanish translation will be for next monday ;) > > Aren't you afraid that I might change the whole thing? ;-) > Oh ... It doesn't matter ;) But it will be for tuesday, monday it's 'Workers Day'(I don't know the english translation) and it's holiday. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 27 23:40:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA01036 for dynarec-outgoing; Thu, 27 Apr 2000 23:40:30 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200004280644.IAA13429@pons.ac.upc.es> Subject: Re: DYNAREC: DRFAQ In-Reply-To: <39092F12.3D89B3BB@eurocopter.de> "from Neil Griffiths at Apr 28, 2000 08:26:26 am" To: dynarec@synthcom.com Date: Fri, 28 Apr 2000 08:44:34 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > >> Prolog and Epilog > > >Shade? ;) > > > > How did you guess? > > Aargh! Don't mention Prolog to me. I still have nightmares over that > language. And the worst thing is that I recieved a phone call last night at > around 11:30pm from a friend with a... Prolog problem. Aargh! > > Because of that, I have now come up with the following theory: Prolog = > Satanism. > > :) > Prolog! Prolog! Prolog! Prolog! Do you have enough? :)) > > >> Paged TransMap > > >I invented the technique !!! > > > > Do you want credit or what? ;-) > > I think he wants money for every time it's used. ;) > Why not? ;) > > "Stealing a rhinoceros should not be attempted lightly." > > Wise advice. A forklift truck would be well advised. Indeed. How could I miss it? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu Apr 27 23:53:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA01061 for dynarec-outgoing; Thu, 27 Apr 2000 23:53:00 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200004280657.IAA23962@pons.ac.upc.es> Subject: Re: DYNAREC: DRFAQ In-Reply-To: <200004280641.IAA15355@pons.ac.upc.es> "from Victor Moya del Barrio at Apr 28, 2000 08:41:47 am" To: dynarec@synthcom.com Date: Fri, 28 Apr 2000 08:57:08 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Type: multipart/mixed; boundary=ELM956905028-14216-0_ Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com --ELM956905028-14216-0_ Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII > BTW have you readed my attempt of document? I think I posted it somewhere, but > I can't remember where it was. > I think I will post it. Now ;) Victor Moya --ELM956905028-14216-0_ Content-Transfer-Encoding: 7bit Content-Type: text/plain Content-Disposition: attachment; filename=dynarec.txt Emulators and dynamic recompilation (by Victor Moya del Barrio) Index 1. Introduction. 2. Definitions. 3. Basic algorithm for dynamic translation. 4. Basic blocks, problems. Translation unit. 5. Code generation. 6. Memory access and I/O. 7. Timing, interruptions. 8. Self-modifying code. 9. Other forms of binary translation. 9.1 Interpreter vs translator. 9.2 Static vs Dynamic Translation. 10. Conclusions. 11. Related works. 12. Sources. 1. Introduction. I started in this emulation world five years ago (perhaps you could remember those Gameboy and MSX emulators from Marat Fayzullin the first I saw). I began as an interested user. Interested in playing and also in all techniques about emulation. But I was too busy (or I was too lazy) to do nothing more than search information and just begin M68000 and Z80 CPU cores. I saw too the lack of good emulation documents. OK there are some ones really good like Marat, Dan Boris, the Arcade Emulation HowTo, the Emulation Mechanism discussion and perhaps some others, but they are incomplete. There are many things that you have to learn by yourself. So I thought in a document that compiles all the emulation techniques: interpretation and dynamic recompilation and the full forms they are implemented, the large number of graphic and sound hardware and how to emulate it (sprites, vectors, 3D, FM, DAC, ...). All this information with examples of use, with algorithm, with all that could be useful to build an emulator from an 80 arcade machine to (someday and not too late) a DreamCast. So this what I'm trying to do. I don't remember when was the first time I heard about dynamic recompilation, but I think it was two or three years ago, perhaps in some emulation mechanism discussion. There wasn't playable emulators that used dynamic recompilation (or I didn't known them) and I talked with friends about how would be a dynamic recompilation emulator. Then it appear PSEmuPro and later UltraHLE that used dynamic recompilation to emulate the high-end machines of this days (PlayStation and Nintendo64) so dynamic recompilation became a useful (and used) technique for emulation and was known in all the emulation world. Dynamic recompilation helps to build faster emulators than interpreters so it was useful for begin the fight against emulation of this high-end machines that would be impossible (it would have been really slow an interpreter emulator for Play, and I don't know if this days, with 1 GHz CPU pushing our door, this could be possible). So in this document I talk about dynamic recompilation, a technique I think it has a splendid future. The term 'dynamic recompilation' is used for name a technique for CPU emulation. I think a more correct term is dynamic translation. First, we look in the term: 'dynamic recompilation'. The first word is 'recompilation', what does it mean?, it is the generation of object code from a source representation (like C or another programming language), the prefix 're-' means that it's done more than once. This is useful for solve the self-modifying code o dynamic generation problem. 'Dynamic' means that it's done in execution time, and it's done each time you execute the program (static means it's done only once, when you do the compilation). Static compilation it's difficult to implement because there are things that are only known (or may be difficult to known) at execution time. One more it's that the emulators we want to do are for execute a large number of programs, each different, so static compilation of each of it would be too expensive, our emulators have to be a lot of flexible. If we look the full term it means execution time compilation of code and that each block of code can be compiled more than once. I think it's more correct to name it dynamic (object code or binary) translation. I think 'compilation' it's an another thing. Compilation it's used for machine code generation from a high level language like C or Pascal. Compilation implies the use of parse techniques, to build an intermediate representation (like 3-address code), to optimize it and finally to do code generation. In an emulator that uses 'dynamic recompilation' none of these is done, you do, most of times, an adhoc translation from source machine code to target machine code with little or not optimization. And an emulator can or not to use 'recompilation', only if it handles self-modifying code can be named a recompiler. For example, Java Hot Spot it's a dynamic recompiler because it compiles a language like Java (although in a byte code representation) to a machine code for a target machine, an emulator like UltraHle or PSEmuPro uses dynamic translation because translates MIPS code to x86 code. So I think it's better to name this technique dynamic translation, and I will use this term in this entire document. (But I realize that 'dynamic recompilation' it's a better- known term and it could be used like a 'mark' term). 2. Definitions. What concepts or terms would you want I do a definition? 3. Basic algorithm for dynamic translation. The basic algorithm for dynamic translation it's very simple and resembles with the interpretation algorithm. It's an infinite loop that takes the value of the PC from emulated CPU and search for a translated block of code. If it's found a translated block that begins in the PC address it's executed. If not a new translation is made from the PC address, the translated block is stored and it's executed. After the execution the translated code returns to the main loop. In a kind of C code it would be something like that: for(;;) { if (getTranslation(PC,TC,TB) execute(TB); else { TB = translateBlock(PC); storeBlock(PC,TB,TC); execute(TB); } // emulation of interruptions, video and sound hardware, etc. } TC or Translation Cache is the data structure where translated blocks (TB) are stored. To get a TB you have to access this structure. TB is the data structure which store a translated block (translated code and another optional data). Function getTranslation(PC, TC, TB) search for a TB in the TC, if it is found a TB that begins in PC address the function returns a true value and puts in TB a pointer to the translated block, if it isn't found a false value is returned. Function execute(TB) do a jump to the translated block in TB. Instruction TB = translateBlock(PC) gets a block from address in PC and makes a translation. Function storeBlock(PC,TB,TC) stores the translated block structure, TB, which begins in address PC in the TC structure. Interruption, device and other hardware emulation it's made as in an interpreter, after translated block execution. I talk this in section 6 and 7. You can see it's an easy concept, but his implementation it's really hard. The CPU emulation it's a hard task, as it's in an interpreter, but in a dynamic translator it's harder. In the CPU emulation you have to deal with a great number of CPU instructions and manage to make all them to work when a lot of errors could happen. In dynamic translation you have to manage other problems also. First, if we follow compilation theory we have to use basic blocks as translation unit, but it's hard to identify basic block in execution time. We work, most of time, with a kind of basic block. The translation of a block will start from the PC address and end with the first jump instruction (or another kind of branch instruction like call, ret, ...) we find. I talk a lot about the basic blocks and the translation unit in section 4. The next problem we found is translation. There are a lot of ways to make a translation and we have to found the best way to make it. Translation has a great impact in the performance of the emulator. If we don't find a good translation method or translator could be slower than an interpreter could. There are two different point of views: making an expensive translation, with a lot of optimizations, that will make a very fast translated code. Or we can do a fast translation with little or not optimization and the translated code will be a bit slower. We have to find the good balance between these two ways, we have to choice the better way for our emulator. The most often dynamic translation emulators do a fast translation with a few optimizations. This is because this emulators works with an approximation of basic blocks and the number of optimizations that someone can make in them are few, a basic block has only a few instructions. Making more optimizations means a slower translation with the almost the same code generated. Exceptions can be found as DIGITAL FX!32 (a x86 emulator for Alpha NT which executes win32 application). This emulator works with larger blocks (his document talks of routine size blocks) and a lot of more local and global optimizations can be made. This is an interesting emulator because it mixes an interpreter with a background optimizer-translator (if you know Java Hot Spot, it works in a very same way). I will talk some more about this emulator later. Another problem is how do you access to the TC to retrieve the translated code. It has to be very fast. It's used a hash table to access it (when you have a large memory space) or an array with a pointer to translated code for each address (thank you Neil). I will talk about TC in section 4. There are more things you have to look at that you can't see in this algorithm. Memory access, input/output (device access, which could be memory mapped and then is a subset of memory acces or in his own address space), how you manage self-modifying code, how you do timing and more things. I will talk about them in next sections. A translated block has this general structure: a prologue (that it will be or not, often it won't) where you can make some initializations (as register preload, as some tests as could be verifying speculative jumps in Embra); a body which has the translation for each source machine instruction, you can make some optimizations like suppress flag evaluation. Finally, in epilogue the full CPU state is stored in his canonical location (virtual state is stored in the data structures or registers you have assigned to it). You can do some more tests, like testing the number of executed cycles to end the execution or continue in next translated block (if chaining is used). The emulated CPU state is stored in a data structure like this: an array for each machine register, some variables for special registers as PC (program counter) or SP (stak pointer), some variables for store state and condition bits of the machine (flags) and perhaps some other variables for monitoring (like number of already executed cycles). Many times if you have enough registers in target machine you reserve some registers to emulate some (or all) source machine registers (for exemple is useful to have PC ever in a register). 4. Basic blocks, problems. Translation unit. 5. Code generation. 6. Memory access and I/O. 7. Timing, interruptions. 8. Self-modifying code 9. Other forms of dynamic translation. 10. Conclusions. 11. Related work. 12. Sources. --ELM956905028-14216-0_-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 00:24:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA01153 for dynarec-outgoing; Fri, 28 Apr 2000 00:24:31 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <39093C4F.D84D8D@eurocopter.de> Date: Fri, 28 Apr 2000 09:22:55 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ References: <200004280644.IAA13429@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Prolog! Prolog! Prolog! Prolog! > Do you have enough? Waaah! Waaaaaaaah! Please! Stop! No more! I can't take it! :)) > > I think he wants money for every time it's used. ;) > > > Why not? ;) Well... you have a point. Damn, I've given him an idea... ;) > > > "Stealing a rhinoceros should not be attempted lightly." > > > > Wise advice. A forklift truck would be well advised. > > Indeed. How could I miss it? The rhino or the forklift truck? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 00:33:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA01187 for dynarec-outgoing; Fri, 28 Apr 2000 00:33:06 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200004280736.JAA18010@pons.ac.upc.es> Subject: Re: DYNAREC: DRFAQ In-Reply-To: <39093C4F.D84D8D@eurocopter.de> "from Neil Griffiths at Apr 28, 2000 09:22:55 am" To: dynarec@synthcom.com Date: Fri, 28 Apr 2000 09:36:33 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > Prolog! Prolog! Prolog! Prolog! > > Do you have enough? > > Waaah! Waaaaaaaah! Please! Stop! No more! I can't take it! > > :)) > Hehe, I'm so cruel ;) > > > I think he wants money for every time it's used. ;) > > > > > Why not? ;) > > Well... you have a point. Damn, I've given him an idea... ;) > I will call my advocates ;) > > > > "Stealing a rhinoceros should not be attempted lightly." > > > > > > Wise advice. A forklift truck would be well advised. > > > > Indeed. How could I miss it? > > The rhino or the forklift truck? ;) > The rhino. I can still see a forklift truck, I'm not so blind ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 01:19:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01319 for dynarec-outgoing; Fri, 28 Apr 2000 01:19:40 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3909493A.512CA714@eurocopter.de> Date: Fri, 28 Apr 2000 10:18:02 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ References: <200004280736.JAA18010@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Waaah! Waaaaaaaah! Please! Stop! No more! I can't take it! > > > > :)) > > > Hehe, I'm so cruel ;) *sniff* *sob* It's finished... Thank you... *sniff* > > Well... you have a point. Damn, I've given him an idea... ;) > > > I will call my advocates ;) Oh no! > > The rhino or the forklift truck? ;) > > > The rhino. I can still see a forklift truck, I'm not so blind ;) You don't need to see a rhino. You just need to listen to (and feel!) the shaking of the ground as it charges at you... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 01:30:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01364 for dynarec-outgoing; Fri, 28 Apr 2000 01:30:10 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200004280833.KAA10987@pons.ac.upc.es> Subject: DYNAREC: Self-modifying code, a new approach ;) In-Reply-To: <200004280736.JAA18010@pons.ac.upc.es> "from Victor Moya del Barrio at Apr 28, 2000 09:36:33 am" To: dynarec@synthcom.com Date: Fri, 28 Apr 2000 10:33:55 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com I will spend a bit of my time talking about the new idea I come last week about the self-modifying code problem. I think I have worked enough for a while ;) First question. Why is a problem self-modifying code? Because self-modifying code makes the dynarec to recompile the modified block of code each time a modification it's done. And because for detect that a block code has been modified we track all writes to (code) memory. But what will be the best solution? It isn't a interpreter or a mixed dynarec-interpreter. The best solution it's TRANSLATE the self-modifying code, build self-modifying translations. And with it I don't mean a putting a the translator code each time we find a memory write to code accesses, I mean a real translation of the block of code which self-modifies itself. It is to translate the intention of the code, not the machine code itself. Second question. Is it possible? First answer, no, it's impossible ;) OK. But why not? Because the translator it isn't a person or an IA, so it can't know the intention of the code ... Or perhaps it could? Well I was wandering if many of the self-modifying codes are similar or not. Perhaps someone can find some rules that would help to translate MANY, but not ALL, the self-modifying code. Here I stopped because I was on holidays, far away from a computer and my knowledge about self-modifying code it's bad, well, really very bad. So I think a bit of help now. I have explained well, or I have confused everybody ;) Do you understand what are my thoughts? Do you think it can be done? Do you think it comes the effort of study it? Have I made too many questions? ;) Something I'm sure. For an arcade machine emulator, with only a few games/programs to be executed on it, a modification of this idea it's the best. What you have to do it's to execute the game, search for self-modifying code and patch it. Tracking all writes to RAM code (?), using an interpreter or whatever are just a waste of time. And this come with the main idea I have behind this approach: perhaps we don't need to handle ALL the possible self-modifying code types, but just as many as we can, as many as a lot of programs games/programs could be executed. For the other programs/games just use the bad, old approach or an interpreter or just improve the translation of self-modifying code a bit more ;) So, what are your thoughts? I think It's a bit crazy idea, and I'm a bit crazy. But for sure I need help, I don't know as many code examples as some of you. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 01:32:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01381 for dynarec-outgoing; Fri, 28 Apr 2000 01:32:10 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200004280836.KAA16088@pons.ac.upc.es> Subject: Re: DYNAREC: DRFAQ In-Reply-To: <3909493A.512CA714@eurocopter.de> "from Neil Griffiths at Apr 28, 2000 10:18:02 am" To: dynarec@synthcom.com Date: Fri, 28 Apr 2000 10:35:58 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > The rhino or the forklift truck? ;) > > > > > The rhino. I can still see a forklift truck, I'm not so blind ;) > > You don't need to see a rhino. You just need to listen to (and feel!) the > shaking of the ground as it charges at you... :) > Then I'm also a bit deaf ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 01:49:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA01424 for dynarec-outgoing; Fri, 28 Apr 2000 01:49:39 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <39094F6B.8FE97F35@eurocopter.de> Date: Fri, 28 Apr 2000 10:44:27 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ References: <200004280836.KAA16088@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > You don't need to see a rhino. You just need to listen to (and feel!) the > > shaking of the ground as it charges at you... :) > > > Then I'm also a bit deaf ;) That's okay - you can still feel the earth shake as it charges towards you. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 02:00:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA01566 for dynarec-outgoing; Fri, 28 Apr 2000 02:00:59 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200004280903.LAA30170@pons.ac.upc.es> Subject: Re: DYNAREC: DRFAQ In-Reply-To: <39094F6B.8FE97F35@eurocopter.de> "from Neil Griffiths at Apr 28, 2000 10:44:27 am" To: dynarec@synthcom.com Date: Fri, 28 Apr 2000 11:03:54 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > > You don't need to see a rhino. You just need to listen to (and feel!) the > > > shaking of the ground as it charges at you... :) > > > > > Then I'm also a bit deaf ;) > > That's okay - you can still feel the earth shake as it charges towards you. > ;) > Oh, I think you have beaten me :( ... Or perhaps not :) I'm so absentminded that it's as I was floating over the floor ;) So If I'm floating I can't feel the earth shake ;)) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 02:15:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA01649 for dynarec-outgoing; Fri, 28 Apr 2000 02:15:54 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <390955C4.778E673F@eurocopter.de> Date: Fri, 28 Apr 2000 11:11:32 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ References: <200004280903.LAA30170@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > That's okay - you can still feel the earth shake as it charges towards you. > > ;) > > > Oh, I think you have beaten me :( ... > > Or perhaps not :) > > I'm so absentminded that it's as I was floating over the floor ;) > > So If I'm floating I can't feel the earth shake ;)) Oh well. I guess you'll know when it actually hits you... I cannot believe how off-topic I can get... Victor, you've got to stop encouraging me! ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 02:17:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA01658 for dynarec-outgoing; Fri, 28 Apr 2000 02:17:04 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3909566B.3A43E26E@eurocopter.de> Date: Fri, 28 Apr 2000 11:14:19 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Self-modifying code, a new approach ;) References: <200004280833.KAA10987@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I will spend a bit of my time talking about the new idea I come last week > about the self-modifying code problem. I think I have worked enough for a > while ;) Oh, I haven't. But I'm going to reply to it anyway! > First question. Why is a problem self-modifying code? Because self-modifying > code makes the dynarec to recompile the modified block of code each time a > modification it's done. And because for detect that a block code has been > modified we track all writes to (code) memory. But what will be the best > solution? It isn't a interpreter or a mixed dynarec-interpreter. The best > solution it's TRANSLATE the self-modifying code, build self-modifying > translations. And with it I don't mean a putting a the translator code each > time we find a memory write to code accesses, I mean a real translation of > the block of code which self-modifies itself. It is to translate the intention > of the code, not the machine code itself. Hmm, interesting concept. Let me think about it a little... > Second question. Is it possible? First answer, no, it's impossible ;) > OK. But why not? Because the translator it isn't a person or an IA, so it > can't know the intention of the code ... Or perhaps it could? Well I was > wandering if many of the self-modifying codes are similar or not. Perhaps > someone can find some rules that would help to translate MANY, but not ALL, > the self-modifying code. Here I stopped because I was on holidays, far away > from a computer and my knowledge about self-modifying code it's bad, well, > really very bad. So I think a bit of help now. My first thoughts were that it wouldn't be possible - you wouldn't know whether the bytes being emitted would be data or code. If it was data, translating it would be bad. However, maybe I have a workaround for this that could take your technique and improve it slightly for this possibility. I just don't know whether it would be faster than checking for any writes. My guess is that it could well be faster, so maybe it would be worth doing a little research into the subject. Okay, my workaround would be this: Keep the original code in memory. Translate the code as you would normally. During execution, when there is a write to memory, write it twice. Once in the native format over the original code. The other time you would translate it. That would mean that if the data was read from memory, you could give it the new data. But if it was the IP going over that address, you could execute the modified code. Now that's a possibility. That could well work. I just don't know whether it would be faster. But seeing as you could build it into your CPU core for every instruction which can change memory, it strikes me that this could be a faster method than having to check for modified memory. It might not be though. It could well be slower. And it's this reason why I want a dynamic CPU core - I can try out these new ideas! > I have explained well, or I have confused everybody ;) You've explained well I think. Unless I misunderstood you! > Do you understand what are my thoughts? Do you think it can be done? I think it couldn't be done exactly as you wrote it, but I think it could be done. > Do you think it comes the effort of study it? Have I made too many questions? > ;) It's worth giving some thought to, yes. :) > And this come with the main idea I have behind this approach: perhaps we don't > need to handle ALL the possible self-modifying code types, but just as many as > we can, as many as a lot of programs games/programs could be executed. For the > other programs/games just use the bad, old approach or an interpreter or just > improve the translation of self-modifying code a bit more ;) This is another technique that could work - but it's not so dissimilar to how static recompilation would work. > So, what are your thoughts? Well, me and this girl were... No, you don't want to know. ;)) > I think It's a bit crazy idea, and I'm a bit crazy. But for sure I need help, > I don't know as many code examples as some of you. You're crazy? I'm the one replying to e-mails talking about charging rhinos! :))) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 02:50:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA01725 for dynarec-outgoing; Fri, 28 Apr 2000 02:50:39 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200004280953.LAA17494@abrell.ac.upc.es> Subject: Re: DYNAREC: Self-modifying code, a new approach ;) In-Reply-To: <3909566B.3A43E26E@eurocopter.de> "from Neil Griffiths at Apr 28, 2000 11:14:19 am" To: dynarec@synthcom.com Date: Fri, 28 Apr 2000 11:53:50 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Second question. Is it possible? First answer, no, it's impossible ;) > > OK. But why not? Because the translator it isn't a person or an IA, so it > > can't know the intention of the code ... Or perhaps it could? Well I was > > wandering if many of the self-modifying codes are similar or not. Perhaps > > someone can find some rules that would help to translate MANY, but not ALL, > > the self-modifying code. Here I stopped because I was on holidays, far away > > from a computer and my knowledge about self-modifying code it's bad, well, > > really very bad. So I think a bit of help now. > > My first thoughts were that it wouldn't be possible - you wouldn't know > whether the bytes being emitted would be data or code. If it was data, > translating it would be bad. > An small bad example that it can work: - you know you are self-modifying code because it's a memory access to a memory address you have already translated (code to be modified) . . . mod_jump: jmp 0x1000 . . . (translation) . . . xxx: mov esi,[transmap + 0x1000] jump esi . . . (code that modifyies previous code) (you translate it after the previous code) mov word [mod_jump+0x01],0x2000 (normal translation) (with no memory mapping test) mov word [emulated_mem + mod_jump + 0x01],0x2000 ('translating the meaning' approach) // updating emulated memory (avoiding cheksums and reads ;) mov word [(emulated_mem + mod_jump + 0x01)],0x2000 // we modify our own translation (I hope I haven't missed something) mov word [(xxx + 0x0y)], (transmap + 0x2000) Take in care that my main idea isn't to translate all cases of self-modifying code, but enough of them to get something working. > Keep the original code in memory. Translate the code as you would normally. > During execution, when there is a write to memory, write it twice. Once in > the native format over the original code. The other time you would > translate it. That would mean that if the data was read from memory, you > could give it the new data. But if it was the IP going over that address, > you could execute the modified code. > > Now that's a possibility. That could well work. I just don't know whether > it would be faster. But seeing as you could build it into your CPU core for > every instruction which can change memory, it strikes me that this could be > a faster method than having to check for modified memory. It might not be > though. It could well be slower. And it's this reason why I want a dynamic > CPU core - I can try out these new ideas! > Ummm ... Interesting, I have to think about it, unluckly I have to leave for a class now ... I also think it can work. > > And this come with the main idea I have behind this approach: perhaps we don't > > need to handle ALL the possible self-modifying code types, but just as many as > > we can, as many as a lot of programs games/programs could be executed. For the > > other programs/games just use the bad, old approach or an interpreter or just > > improve the translation of self-modifying code a bit more ;) > > This is another technique that could work - but it's not so dissimilar to > how static recompilation would work. > Then perhaps static recompilation it isn't as bad at all ;) But the name still makes me feel really bad :o. > > So, what are your thoughts? > > Well, me and this girl were... No, you don't want to know. ;)) > Why not? ;)) Victor Moya P.S.: Finally!!!! We are on-topic!!! Do you see how easy it is? ;)) And we all learn new things :)) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 03:30:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA01845 for dynarec-outgoing; Fri, 28 Apr 2000 03:30:30 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <00a101bfb0fc$7b078200$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: <200004280953.LAA17494@abrell.ac.upc.es> Subject: Re: DYNAREC: Self-modifying code, a new approach ;) Date: Fri, 28 Apr 2000 11:28:22 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > Second question. Is it possible? First answer, no, it's impossible ;) > > > OK. But why not? Because the translator it isn't a person or an IA, so it > > > can't know the intention of the code ... Or perhaps it could? Well I was > > > wandering if many of the self-modifying codes are similar or not. Perhaps > > > someone can find some rules that would help to translate MANY, but not ALL, > > > the self-modifying code. Here I stopped because I was on holidays, far away > > > from a computer and my knowledge about self-modifying code it's bad, well, > > > really very bad. So I think a bit of help now. > > > > My first thoughts were that it wouldn't be possible - you wouldn't know > > whether the bytes being emitted would be data or code. If it was data, > > translating it would be bad. > > > An small bad example that it can work: > > - you know you are self-modifying code because it's a memory access to > a memory address you have already translated > > (code to be modified) > . > . > . > mod_jump: > jmp 0x1000 > . > . > . > > (translation) > . > . > . > xxx: > mov esi,[transmap + 0x1000] > jump esi SpectrEm-DR already does this (although, because it's emulating a simple Z80, it'd do a direct jump to the compiled code representing the code at Z80 address 0x1000) (In fact, that's a lie. It'd load the PC with 0x1000, then ret back to the C code, because it doesn't do inter-block jumps, but if it *did* do them, that's how it would. Confused yet? :) Maybe try thinking of compiling LD BC, 0x1000 instead). The problem with this is that it only really works for immediate values. Anything else has to be handled explicitly. For instance, Jetpac (I think it is) is a Speccy game which has the following line: LD BC,0x0000 (or DE, or something similar) This is periodically modified to read: JMP 0x1000 (wrong address, but you get the idea) It's then flipped back. It's used as a switchable JMP. Any idea how to compile that as self modifying code? (Without recognising it as a unique special case, of course). Contact Sam Spade does LDIR->LDDR and back. That's another one to think about. Arcadia does some simple immediate value self modification. Immediate value modifications are about the only decently sized group of mods that can be generically supported. There's no other way to use a self-modifying method of supporting self-modifying code, without limiting yourself to having to add new code for each new SM game. That's far to constricting, and if you're going to go down that route you might as well drop the dynamic moniker and make it a static compiler. Very fast, but utterly useless for anything beyond unique arcade machine emulation. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 04:07:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA01917 for dynarec-outgoing; Fri, 28 Apr 2000 04:07:51 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200004281110.NAA02282@sostres.ac.upc.es> Subject: Re: DYNAREC: Self-modifying code, a new approach ;) In-Reply-To: <00a101bfb0fc$7b078200$88dc48c2@icc.co.im> "from Andrew Davidson at Apr 28, 2000 11:28:22 am" To: dynarec@synthcom.com Date: Fri, 28 Apr 2000 13:10:47 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > really works for immediate values. Anything else has to be handled > explicitly. For instance, Jetpac (I think it is) is a Speccy game which has > the following line: > > LD BC,0x0000 (or DE, or something similar) > > This is periodically modified to read: > > JMP 0x1000 (wrong address, but you get the idea) > > It's then flipped back. It's used as a switchable JMP. Any idea how to > compile that as self modifying code? (Without recognising it as a unique > special case, of course). Contact Sam Spade does LDIR->LDDR and back. That's > another one to think about. Arcadia does some simple immediate value self > modification. > Yes. But I have thought about this too. I think this isn't the real problem. Working on your example: mod_address: LD BC, 0x0000/ JMP 0x1000 (in hex, but I don't know the opcode number, just xx and yy) xx 00 00 / yy 00 00 Translation: xor ax,ax mov [bc],ax / mov word [pc],0x1000 jump what_ever Main problem: the translation are a lot differents, and perhaps they don't have the same number of bytes. What's not a problem? The translation of the code that flip the code, it's still some kind of write and you can analize it and translate the bytes are writed and build your self-modifying translation. But how you can handle the difference in size? When you find the code that makes the flip you detect that the size will be different. Then you copy the block (or whatever) that will be modified and use NOPs to make fit with the larger size. The piece of code that generates the smallest translation it's changed to generate NOPs. Ummm ..., a bit confusing. I know that it's hard to do it. I have thought enough about it to see there are a lot of problems. But perhaps there is a solution for many of these problems. Now you can continue discussing about it ;) Or you can wait until next Tuesday when I will have mail access again :(. In any case, I will think about it, although my bad knowledge of self-modifyied code. The main idea it's just to think positively :). How many kinds of self-modifying code there are?, we can build a kind a database of rules for translating them? It's finding hints for translating self-modifying code. I think it makes the effort to think a bit about it. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 04:26:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA01949 for dynarec-outgoing; Fri, 28 Apr 2000 04:26:10 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ From: RRZE In-Reply-To: <39092F12.3D89B3BB@eurocopter.de> Message-Id: <000366507d426699_mailit@mailhub.rrze.uni-erlangen.de> References: <200004270957.LAA12959@pons.ac.upc.es> <000366405c11e94f_mailit@mailhub.rrze.uni-erlangen.de> <39092F12.3D89B3BB@eurocopter.de> Date: Fri, 28 Apr 2000 13:20:15 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Below here is where you said "pseudocode". I have to agree. Pascal-like >code is pseudocode. Why do I say that? Well, it's not real code. ;) Hey, only machine code is real code anyway! ;-) >Okay, I'm biased. Mainly because I use Ada all day. :-/ Haven't I heard that complain before? >I compiled it in my Pascal compiler and it didn't work, what can I do? ;p Your Pascal compiler is crap! Visit Niklaus Wirth in Zürich Switzerland to get a better one! >> >> Prolog and Epilog >Aargh! Don't mention Prolog to me. I still have nightmares over that >language. And the worst thing is that I recieved a phone call last night at >around 11:30pm from a friend with a... Prolog problem. Aargh! He means Prologue and Epilogue! But I want to be cruel: Prolog, Prolog, Prolog, Prolog, Prolog, ... >Because of that, I have now come up with the following theory: Prolog = >Satanism. And I thought I wasn't religious! ;-) >> Do you want credit or what? ;-) >I think he wants money for every time it's used. ;) Don't give him hints! >I could translate it to Welsh... but that'd be silly. Why? We could make Welsh the official dynarec documentation language! ;-) >I could translate it to French too - but that'd be stupid. ;) Because the French guys wouldn't understand it anyway? BTW, yesterday I was on some usenet boards again and I really wonder how some people (especially the French ones) can think they should post messages in their mother tongue on an international board! :-( >> "Stealing a rhinoceros should not be attempted lightly." >Wise advice. A forklift truck would be well advised. A crane might be useful as well. -- M.I.K.e Think of it! With VLSI we can pack 100 ENIACs in 1 sq. cm.! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 04:26:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA01958 for dynarec-outgoing; Fri, 28 Apr 2000 04:26:17 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ From: RRZE In-Reply-To: <200004280641.IAA15355@pons.ac.upc.es> Message-Id: <000366508c91ceba_mailit@mailhub.rrze.uni-erlangen.de> References: <200004280641.IAA15355@pons.ac.upc.es> Date: Fri, 28 Apr 2000 13:24:31 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >BTW have you readed my attempt of document? I think I posted it somewhere, >but I can't remember where it was. I think it's not on your homepage... >For a document I like more pseudo-code. Mayhaps... >> >> Paged TransMap >> >I invented the technique !!! >> Do you want credit or what? ;-) >Yes! ;) The productive people on the list will get credit anyway, and this includes the Spice Boys, Andy, and you. >> I don't know about further documents from Apple, maybe you mean the article >> about Virtual PC by Eric Traut. I don't think that it's this useful. >I think it is, but I can't remember about what it was ... I will have to >reread it. That's always useful. I noticed that I have a much better understanding of ARDI's docus now. >> FX!32 is no dynarec but a interpreter with a static binary translator, >>since >> translation is performed after execution and not during runtime >But I think it's still interesting, it has some interesting ideas. I'll see what I can do about that ;-) -- M.I.K.e To err is human, to moo bovine. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 04:26:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA01966 for dynarec-outgoing; Fri, 28 Apr 2000 04:26:26 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ From: RRZE In-Reply-To: <39092D72.AB87AE98@eurocopter.de> Message-Id: <00036650639ed676_mailit@mailhub.rrze.uni-erlangen.de> References: <000366305f9e3e24_mailit@mailhub.rrze.uni-erlangen.de> <39084ECB.6A1B167@eurocopter.de> <000366403ba320b1_mailit@mailhub.rrze.uni-erlangen.de> <39092D72.AB87AE98@eurocopter.de> Date: Fri, 28 Apr 2000 13:13:04 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> I hope that I can add more text than headings in the future... >I think we all do. If I can help at all, just let me know. You can be sure I will! ;-) >Hey, I'm not Welsh. I just live in Wales... and speak Welsh. I was born in >England though. But hey, the majority of my family is Welsh so I can >forgive you. ;) Oh thanks! ;-) >Heh, I've got a truly British name though. My first name is Scottish >(Neil), my second name is English (I'm not telling you!) and my last name >is Welsh. Ok, let's just say you are truly British ;-) BTW, let me guess, your second name is a girls name? ;-) >> >PS "UltraHLE's dirty trick" sounds like something rude and definitely for >> >the over-18s. ;)) >> It is! ;-) >Ah. That'd explain it. ;) Haven't I meantioned that before? -- M.I.K.e You might have mail --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 04:26:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA01973 for dynarec-outgoing; Fri, 28 Apr 2000 04:26:29 GMT (envelope-from owner-dynarec@synthcom.com) Subject: DYNAREC: Driving me crazy From: RRZE Message-Id: <0003665059d2c785_mailit@mailhub.rrze.uni-erlangen.de> Date: Fri, 28 Apr 2000 13:10:20 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Sorry for any reply delays or that my fortunes might be repeated. This is because I exchanged my 2 DDRS-34560 with 2 DNES-309170 and Partition Magic refused to copy my BeOS partition so I had to install it anew, but I think it was worth the hassle ;-) The first thing I noticed when I received my mail was that I defined the mail filter wrong and all dynarec mails ended up in the "In" box instead of the "DynaRec" box. I didn't even imagine how used I could get to that filtering feature... -- M.I.K.e Familiarity breeds attempt --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 04:27:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA01983 for dynarec-outgoing; Fri, 28 Apr 2000 04:27:33 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <010401bfb104$640b2220$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: <200004281110.NAA02282@sostres.ac.upc.es> Subject: Re: DYNAREC: Self-modifying code, a new approach ;) Date: Fri, 28 Apr 2000 12:25:00 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > really works for immediate values. Anything else has to be handled > > explicitly. For instance, Jetpac (I think it is) is a Speccy game which has > > the following line: > > > > LD BC,0x0000 (or DE, or something similar) > > > > This is periodically modified to read: > > > > JMP 0x1000 (wrong address, but you get the idea) > > > > It's then flipped back. It's used as a switchable JMP. Any idea how to > > compile that as self modifying code? (Without recognising it as a unique > > special case, of course). Contact Sam Spade does LDIR->LDDR and back. That's > > another one to think about. Arcadia does some simple immediate value self > > modification. > > > Yes. But I have thought about this too. I think this isn't the real problem. > Working on your example: > > mod_address: > > LD BC, 0x0000/ JMP 0x1000 > > (in hex, but I don't know the opcode number, just xx and yy) > > xx 00 00 / yy 00 00 > > Translation: > > xor ax,ax > mov [bc],ax > / > mov word [pc],0x1000 > jump what_ever > > Main problem: the translation are a lot differents, and perhaps they don't have > the same number of bytes. > > What's not a problem? The translation of the code that flip the code, it's still > some kind of write and you can analize it and translate the bytes are writed and > build your self-modifying translation. But how you can handle the difference in > size? When you find the code that makes the flip you detect that the size will > be different. Then you copy the block (or whatever) that will be modified and > use NOPs to make fit with the larger size. The piece of code that generates the > smallest translation it's changed to generate NOPs. Ummm ..., a bit confusing. I'm not sure I'm following you here. That's just straight forward self-modifying code support, isn't it? You have to recompile the code when the modification is made. I mean, technically, all self-modifying support HAS to be self-modifying, because you're modifying the compiled code at run time. > I know that it's hard to do it. I have thought enough about it to see there are a lot > of problems. But perhaps there is a solution for many of these problems. There are many solutions, and that's the problem. If you support SM code on a mod by mod basis you'll end up with something as limiting as static compilation, which is nice and fast, but not exactly suitable for, say, the emulation of a full home computer system. > Now you can continue discussing about it ;) Or you can wait until next Tuesday when > I will have mail access again :(. All these bank holidays getting in the way, eh? And I so wanted to be at work on Monday, too! ;) > In any case, I will think about it, although my bad knowledge of self-modifyied code. > The main idea it's just to think positively :). How many kinds of self-modifying code > there are?, we can build a kind a database of rules for translating them? > It's finding hints for translating self-modifying code. But for every example you can think of, thousands of past programmers will have thought of thousands of other examples. It really is amazing how devious some of those buggers could be! :) > I think it makes the effort to think a bit about it. I agree with that. It's certainly good to get the brain ticking over. :) > Victor Moya Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 04:54:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA02044 for dynarec-outgoing; Fri, 28 Apr 2000 04:54:02 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Self-modifying code, a new approach ;) From: RRZE In-Reply-To: <200004280833.KAA10987@pons.ac.upc.es> Message-Id: <00036650f73b3b46_mailit@mailhub.rrze.uni-erlangen.de> References: <200004280833.KAA10987@pons.ac.upc.es> Date: Fri, 28 Apr 2000 13:54:21 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I have explained well, or I have confused everybody ;) Totally confused, but that already was my state before I read your message ;- ) >Do you understand what are my thoughts? Yep. You want to simulate self-modifying code by using a dynarec that can modify its generated code. >Do you think it can be done? I think almost everything can be done. >Do you think it comes the effort of study it? I don't think that it's practical: * I guess much code modifying isn't done via a direct but an indirect memory access, which makes it almost impossible to trace. * Even if you can trap self-modification you'd have to scan the code to see which instructions were generated. * Source and target code will have different sizes so you'd have to use a sub -block solution as Andrew did. * You still have to flush caches on the host machine. >Have I made too many questions? ;) Certainly ;-) >Something I'm sure. For an arcade machine emulator, with only a few >games/programs to be executed on it, a modification of this idea it's the >best. What you have to do it's to execute the game, search for self- >modifying code and patch it. In that case you could also write a static binary translator that has a code block for each possible modification and simply jumps to the appropriate one during runtime. >So, what are your thoughts? Without any code research I really don't know if it could be done or not. >I think It's a bit crazy idea, and I'm a bit crazy. Not only you ;-) >But for sure I need help, Medical help? ;-) >I don't know as many code examples as some of you. That refers to the two Neils and Andy I guess, since I wouldn't count me in that case... -- M.I.K.e Keep America beautiful. Swallow your beer cans. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 05:35:51 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA02131 for dynarec-outgoing; Fri, 28 Apr 2000 05:35:50 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <390984E9.6F37F82F@eurocopter.de> Date: Fri, 28 Apr 2000 14:32:41 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Driving me crazy References: <0003665059d2c785_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, In case you haven't noticed, your name is now "RRZE". This could be what you want, it could be a mistake. I'm just telling you. :) > The first thing I noticed when I received my mail was that I defined the mail > filter wrong and all dynarec mails ended up in the "In" box instead of the > "DynaRec" box. I didn't even imagine how used I could get to that filtering > feature... I know that feeling well... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 05:40:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA02149 for dynarec-outgoing; Fri, 28 Apr 2000 05:40:30 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <39098628.1A71B800@eurocopter.de> Date: Fri, 28 Apr 2000 14:38:00 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ References: <000366305f9e3e24_mailit@mailhub.rrze.uni-erlangen.de> <39084ECB.6A1B167@eurocopter.de> <000366403ba320b1_mailit@mailhub.rrze.uni-erlangen.de> <39092D72.AB87AE98@eurocopter.de> <00036650639ed676_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >I think we all do. If I can help at all, just let me know. > > You can be sure I will! ;-) Damn, you weren't meant to say that. ;) > >Heh, I've got a truly British name though. My first name is Scottish > >(Neil), my second name is English (I'm not telling you!) and my last name > >is Welsh. > > Ok, let's just say you are truly British ;-) Yep. And I'm no expert on names, but I'm pretty sure that "Bradley" is from Yorkshire (in England), so NB has an English name too. If I'm right, of course. > BTW, let me guess, your second name is a girls name? ;-) It's "Edward". So there. Ha! Anyway, you've got a Jewish name! ;p > You might have mail No, I definitely have mail. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 06:28:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA02224 for dynarec-outgoing; Fri, 28 Apr 2000 06:28:31 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <39099108.BFABC9A3@eurocopter.de> Date: Fri, 28 Apr 2000 15:24:24 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ References: <200004270957.LAA12959@pons.ac.upc.es> <000366405c11e94f_mailit@mailhub.rrze.uni-erlangen.de> <39092F12.3D89B3BB@eurocopter.de> <000366507d426699_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Below here is where you said "pseudocode". I have to agree. Pascal-like > >code is pseudocode. Why do I say that? Well, it's not real code. ;) > > Hey, only machine code is real code anyway! ;-) Yes! Let us revolt and go back to programming in binary digits! > >Okay, I'm biased. Mainly because I use Ada all day. :-/ > > Haven't I heard that complain before? Yes, and I have no doubt that you'll hear it many more times before I leave work. ;) > >I compiled it in my Pascal compiler and it didn't work, what can I do? ;p > > Your Pascal compiler is crap! Visit Niklaus Wirth in Zürich Switzerland to > get a better one! I could do at that. ;) > He means Prologue and Epilogue! Oh, good, that makes me feel better... > But I want to be cruel: Prolog, Prolog, Prolog, Prolog, Prolog, ... AARGH! > >Because of that, I have now come up with the following theory: Prolog = > >Satanism. > > And I thought I wasn't religious! ;-) You worship Prolog! You demonic spawn from hell! ;p > >> Do you want credit or what? ;-) > >I think he wants money for every time it's used. ;) > > Don't give him hints! Too late. Sorry! > >I could translate it to Welsh... but that'd be silly. > > Why? We could make Welsh the official dynarec documentation language! ;-) That's true. It'd be just as understandable. ;p > >I could translate it to French too - but that'd be stupid. ;) > > Because the French guys wouldn't understand it anyway? No, mainly because it was funny to write. :) > BTW, yesterday I was on some usenet boards again and I really wonder how some > people (especially the French ones) can think they should post messages in > their mother tongue on an international board! :-( I don't mind that people do this. But if everyone else is speaking in English then it isn't so polite. But I don't actually think that everyone should learn English. If they do then great. But I do make an effort to learn other languages. I'm not like the average Englishman in that respect... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 06:32:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA02257 for dynarec-outgoing; Fri, 28 Apr 2000 06:32:19 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Driving me crazy From: Michael Koenig In-Reply-To: <390984E9.6F37F82F@eurocopter.de> Message-Id: <00036652414abd0a_mailit@mailhub.rrze.uni-erlangen.de> References: <0003665059d2c785_mailit@mailhub.rrze.uni-erlangen.de> <390984E9.6F37F82F@eurocopter.de> Date: Fri, 28 Apr 2000 15:26:38 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >In case you haven't noticed, your name is now "RRZE". This could be what >you want, it could be a mistake. I'm just telling you. :) Another guy just mentioned it. I surely shouldn't have set up Mail-It this early in the morning... Should be corrected now. >> >I think we all do. If I can help at all, just let me know. >> You can be sure I will! ;-) >Damn, you weren't meant to say that. ;) So what? ;-) >> Ok, let's just say you are truly British ;-) >Yep. And I'm no expert on names, but I'm pretty sure that "Bradley" is from >Yorkshire (in England), so NB has an English name too. If I'm right, of >course. I might be wrong but I think he mentioned that his parents are from England? >> BTW, let me guess, your second name is a girls name? ;-) >It's "Edward". So there. Ha! Anyway, you've got a Jewish name! ;p That's a Jewish name? I didn't know that. Hey, there even several kings in England with the name Edward! BTW, my second name is Ingo, I'm not sure if that's much better... >> You might have mail >No, I definitely have mail. :) Are you sure? ;-) Maybe AOL even tries to patent that sentence ;-) >Neil. -- M.I.K.e Time is an illusion; lunchtime, doubly so. -- Ford Prefect --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 06:45:29 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA02302 for dynarec-outgoing; Fri, 28 Apr 2000 06:45:29 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ From: Michael Koenig In-Reply-To: <39099108.BFABC9A3@eurocopter.de> Message-Id: <000366527a9669d3_mailit@mailhub.rrze.uni-erlangen.de> References: <200004270957.LAA12959@pons.ac.upc.es> <000366405c11e94f_mailit@mailhub.rrze.uni-erlangen.de> <39092F12.3D89B3BB@eurocopter.de> <000366507d426699_mailit@mailhub.rrze.uni-erlangen.de> <39099108.BFABC9A3@eurocopter.de> Date: Fri, 28 Apr 2000 15:42:40 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yes! Let us revolt and go back to programming in binary digits! Oh yes! Do you know that joke: 1st geek: "Back in the good old days we programmed only with ones and zeros." 2nd geek: "Yeah, and sometimes we only had zeros." >> Your Pascal compiler is crap! Visit Niklaus Wirth in Zürich Switzerland to >> get a better one! >I could do at that. ;) Then you know where to go this weekend ;-) >You worship Prolog! You demonic spawn from hell! ;p Hohoho, everybody has to believe in something! ;-) >> Why? We could make Welsh the official dynarec documentation language! ;-) >That's true. It'd be just as understandable. ;p At least for you ;-) But I guess you couldn't translate the important terms anyway... >I don't mind that people do this. Well, it was rather unhelpful when the only review to a book on Amazon was written in Korean and I didn't even have a Hangul font installed :-( >But if everyone else is speaking in >English then it isn't so polite. But I don't actually think that everyone >should learn English. If they do then great. But I do make an effort to >learn other languages. I'm not like the average Englishman in that >respect... Or even the average American! >Neil. -- M.I.K.e Parallel lines never meet, unless you bend one or both of them. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 07:51:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA02448 for dynarec-outgoing; Fri, 28 Apr 2000 07:51:48 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3909A4F9.4DABD667@eurocopter.de> Date: Fri, 28 Apr 2000 16:49:29 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ References: <200004280641.IAA15355@pons.ac.upc.es> <000366508c91ceba_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > The productive people on the list will get credit anyway, and this includes > the Spice Boys, Andy, and you. Spice Boys. Grr! ;) > To err is human, to moo bovine. Unless the cow in question is British. ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 07:56:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA02463 for dynarec-outgoing; Fri, 28 Apr 2000 07:56:41 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3909A605.A844C93@eurocopter.de> Date: Fri, 28 Apr 2000 16:53:57 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Driving me crazy References: <0003665059d2c785_mailit@mailhub.rrze.uni-erlangen.de> <390984E9.6F37F82F@eurocopter.de> <00036652414abd0a_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Another guy just mentioned it. I surely shouldn't have set up Mail-It this > early in the morning... > Should be corrected now. Indeed it is! > >Yep. And I'm no expert on names, but I'm pretty sure that "Bradley" is from > >Yorkshire (in England), so NB has an English name too. If I'm right, of > >course. > > I might be wrong but I think he mentioned that his parents are from England? Possibly, but that means nothing. English people are made up from all countries. France, Germany and the Netherlands mainly! :) > >It's "Edward". So there. Ha! Anyway, you've got a Jewish name! ;p > > That's a Jewish name? I didn't know that. Michael? Sure, it's Jewish. It's in the Bible - there was an Angel called Michael. > Hey, there even several kings in England with the name Edward! Yep. 5 or 6 of them! It's a family name which is why I have it. Not fond of it to be honest... > BTW, my second name is Ingo, I'm not sure if that's much better... Don't know, but that sounds Spanish to me... Never heard of that name before. > Time is an illusion; lunchtime, doubly so. > -- Ford Prefect Taken from a good book - The Hitchhikers Guide To The Galaxy. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 08:25:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA02557 for dynarec-outgoing; Fri, 28 Apr 2000 08:25:43 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3909AD17.9CDABFDC@eurocopter.de> Date: Fri, 28 Apr 2000 17:24:07 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ References: <200004270957.LAA12959@pons.ac.upc.es> <000366405c11e94f_mailit@mailhub.rrze.uni-erlangen.de> <39092F12.3D89B3BB@eurocopter.de> <000366507d426699_mailit@mailhub.rrze.uni-erlangen.de> <39099108.BFABC9A3@eurocopter.de> <000366527a9669d3_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Yes! Let us revolt and go back to programming in binary digits! > > Oh yes! > Do you know that joke: > 1st geek: "Back in the good old days we programmed only with ones and zeros." > 2nd geek: "Yeah, and sometimes we only had zeros." Well, I didn't know that joke. I do now though. :) > >I could do at that. ;) > > Then you know where to go this weekend ;-) Hmm. Maybe I could come and see you this weekend - if it's okay with you. I have no better plans! :) Hang on, that sounds really insulting. I don't mean it like that. :) > >You worship Prolog! You demonic spawn from hell! ;p > > Hohoho, everybody has to believe in something! ;-) C++ is my god. Neil Bradley loves it too. ;)) > >> Why? We could make Welsh the official dynarec documentation language! ;-) > >That's true. It'd be just as understandable. ;p > > At least for you ;-) No, not really. I can speak Welsh, but I'm not great at it. That's by choice as much as anything else... > But I guess you couldn't translate the important terms anyway... They'd be the same. Or similar. > >But if everyone else is speaking in > >English then it isn't so polite. But I don't actually think that everyone > >should learn English. If they do then great. But I do make an effort to > >learn other languages. I'm not like the average Englishman in that > >respect... > > Or even the average American! I think that a lot of Americans can speak Spanish actually. Not sure about any other languages though... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 09:03:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA02649 for dynarec-outgoing; Fri, 28 Apr 2000 09:03:43 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ From: Michael Koenig In-Reply-To: <3909AD17.9CDABFDC@eurocopter.de> Message-Id: <00036654777276b1_mailit@mailhub.rrze.uni-erlangen.de> References: <200004270957.LAA12959@pons.ac.upc.es> <000366405c11e94f_mailit@mailhub.rrze.uni-erlangen.de> <39092F12.3D89B3BB@eurocopter.de> <000366507d426699_mailit@mailhub.rrze.uni-erlangen.de> <39099108.BFABC9A3@eurocopter.de> <000366527a9669d3_mailit@mailhub.rrze.uni-erlangen.de> <3909AD17.9CDABFDC@eurocopter.de> Date: Fri, 28 Apr 2000 18:04:57 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> Then you know where to go this weekend ;-) >Hmm. Maybe I could come and see you this weekend - if it's okay with you. I >have no better plans! :) Ahhh! I thought I could free Germany of your presence and then you want to visit me! Maybe I should check with my father first... Clean up some of the mess the last handgranade left in my room... BTW, anything special you have in mind or just talking about dynarecs in person? >Hang on, that sounds really insulting. I don't mean it like that. :) Teasing me again, you bastard! >C++ is my god. How crazy must a god be to have such a weird name!?! >Neil Bradley loves it too. ;)) Don't tell that NB or his wife! ;-) >No, not really. I can speak Welsh, but I'm not great at it. That's by >choice as much as anything else... I guess just like my spoken English... >Neil. -- M.I.K.e "The bland leadeth the bland and they both shall fall into the kitsch." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 09:03:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA02656 for dynarec-outgoing; Fri, 28 Apr 2000 09:03:46 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Driving me crazy From: Michael Koenig In-Reply-To: <3909A605.A844C93@eurocopter.de> Message-Id: <000366546431b575_mailit@mailhub.rrze.uni-erlangen.de> References: <0003665059d2c785_mailit@mailhub.rrze.uni-erlangen.de> <390984E9.6F37F82F@eurocopter.de> <00036652414abd0a_mailit@mailhub.rrze.uni-erlangen.de> <3909A605.A844C93@eurocopter.de> Date: Fri, 28 Apr 2000 17:59:34 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yep. 5 or 6 of them! It's a family name which is why I have it. Not fond of >it to be honest... Maybe you just don't want to be called Eddie... >> BTW, my second name is Ingo, I'm not sure if that's much better... >Don't know, but that sounds Spanish to me... Never heard of that name >before. You can ask Victor if it's Spanish, but I only heard it as a German name, although it isn't very common. >> Time is an illusion; lunchtime, doubly so. >> -- Ford Prefect >Taken from a good book - The Hitchhikers Guide To The Galaxy. Sure, who else could be Ford Perfect. >Neil. -- M.I.K.e "I used to think that the brain was the most wonderful organ in my body. Then I realized who was telling me this." -- Emo Phillips --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 09:53:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA02764 for dynarec-outgoing; Fri, 28 Apr 2000 09:53:46 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3909C162.8AEB0CC2@eurocopter.de> Date: Fri, 28 Apr 2000 18:50:43 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ References: <200004270957.LAA12959@pons.ac.upc.es> <000366405c11e94f_mailit@mailhub.rrze.uni-erlangen.de> <39092F12.3D89B3BB@eurocopter.de> <000366507d426699_mailit@mailhub.rrze.uni-erlangen.de> <39099108.BFABC9A3@eurocopter.de> <000366527a9669d3_mailit@mailhub.rrze.uni-erlangen.de> <3909AD17.9CDABFDC@eurocopter.de> <00036654777276b1_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Hmm. Maybe I could come and see you this weekend - if it's okay with you. I > >have no better plans! :) > > Ahhh! I thought I could free Germany of your presence and then you want to > visit me! Don't complain, Germany was free of my presence for 6 days last week/this week... ;p > Maybe I should check with my father first... > Clean up some of the mess the last handgranade left in my room... > BTW, anything special you have in mind or just talking about dynarecs in > person? Hadn't thought about it, but talking about dynarecs could be cool. Not sure if I can do it now, though - my friend from Stuttgart may be coming up to visit tomorrow and may stay over until Sunday. I like these short-notice visits. :) > >Hang on, that sounds really insulting. I don't mean it like that. :) > > Teasing me again, you bastard! Jewish name! ;)) > >C++ is my god. > > How crazy must a god be to have such a weird name!?! You think that Prolog is better? :o > >Neil Bradley loves it too. ;)) > > Don't tell that NB or his wife! ;-) You're sick. ;) > >No, not really. I can speak Welsh, but I'm not great at it. That's by > >choice as much as anything else... > > I guess just like my spoken English... You haven't heard my German yet, have you? But my English is quite okay... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 10:06:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA02813 for dynarec-outgoing; Fri, 28 Apr 2000 10:06:08 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ From: Michael Koenig In-Reply-To: <3909C162.8AEB0CC2@eurocopter.de> Message-Id: <0003665553a36454_mailit@mailhub.rrze.uni-erlangen.de> References: <200004270957.LAA12959@pons.ac.upc.es> <000366405c11e94f_mailit@mailhub.rrze.uni-erlangen.de> <39092F12.3D89B3BB@eurocopter.de> <000366507d426699_mailit@mailhub.rrze.uni-erlangen.de> <39099108.BFABC9A3@eurocopter.de> <000366527a9669d3_mailit@mailhub.rrze.uni-erlangen.de> <3909AD17.9CDABFDC@eurocopter.de> <00036654777276b1_mailit@mailhub.rrze.uni-erlangen.de> <3909C162.8AEB0CC2@eurocopter.de> Date: Fri, 28 Apr 2000 19:06:31 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Don't complain, Germany was free of my presence for 6 days last week/this >week... ;p It was quite a relief! ;-) >Hadn't thought about it, but talking about dynarecs could be cool. Not sure >if I can do it now, though - my friend from Stuttgart may be coming up to >visit tomorrow and may stay over until Sunday. I like these short-notice >visits. :) Just inform me what you decided to do. >Jewish name! ;)) You cannot tease me with that! >> How crazy must a god be to have such a weird name!?! >You think that Prolog is better? :o At least it's a name without mathematics. >You're sick. ;) Really? ;-) >You haven't heard my German yet, have you? Nope, could be funny! ;-) >But my English is quite okay... >;) I hope so. >Neil. -- M.I.K.e Lysistrata had a good idea. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 11:21:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA03089 for dynarec-outgoing; Fri, 28 Apr 2000 11:21:21 GMT (envelope-from owner-dynarec@synthcom.com) Date: Fri, 28 Apr 2000 11:21:20 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ In-Reply-To: <39098628.1A71B800@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > >Heh, I've got a truly British name though. My first name is Scottish > > >(Neil), my second name is English (I'm not telling you!) and my last name > > >is Welsh. > > Ok, let's just say you are truly British ;-) > Yep. And I'm no expert on names, but I'm pretty sure that "Bradley" is from > Yorkshire (in England), so NB has an English name too. If I'm right, of > course. According to my dad, it's Irish. Bradley "broad-lee", or plains people. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 13:58:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA03752 for dynarec-outgoing; Fri, 28 Apr 2000 13:58:10 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <004201bfb15c$ba14dbe0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: DRFAQ Date: Fri, 28 Apr 2000 22:55:06 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Yep. And I'm no expert on names, but I'm pretty sure that "Bradley" is from > > Yorkshire (in England), so NB has an English name too. If I'm right, of > > course. > > According to my dad, it's Irish. Bradley "broad-lee", or plains people. Ah, Gaelic. I'm no expert on that - though Welsh is a Gaelic language. Well... similar. I don't know much Gaelic. "Tir na nog" or "Land of the young" is about all I know. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 13:58:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA03759 for dynarec-outgoing; Fri, 28 Apr 2000 13:58:11 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <004101bfb15c$b943d040$0100a8c0@lion> From: "Neil Griffiths" To: References: <200004270957.LAA12959@pons.ac.upc.es> <000366405c11e94f_mailit@mailhub.rrze.uni-erlangen.de> <39092F12.3D89B3BB@eurocopter.de> <000366507d426699_mailit@mailhub.rrze.uni-erlangen.de> <39099108.BFABC9A3@eurocopter.de> <000366527a9669d3_mailit@mailhub.rrze.uni-erlangen.de> <3909AD17.9CDABFDC@eurocopter.de> <00036654777276b1_mailit@mailhub.rrze.uni-erlangen.de> <3909C162.8AEB0CC2@eurocopter.de> <0003665553a36454_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: DRFAQ Date: Fri, 28 Apr 2000 22:53:05 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Don't complain, Germany was free of my presence for 6 days last week/this > >week... ;p > > It was quite a relief! ;-) That's why I went, thought I'd give you guys a break. I mean, you're all just jealous of the amazing British guy (me). ;)))))) > >Hadn't thought about it, but talking about dynarecs could be cool. Not sure > >if I can do it now, though - my friend from Stuttgart may be coming up to > >visit tomorrow and may stay over until Sunday. I like these short-notice > >visits. :) > > Just inform me what you decided to do. Sure thing. I'll let you know tomorrow - if it does happen it'd be Sunday. But that depends on you! > >Jewish name! ;)) > > You cannot tease me with that! Okay. Fine then. You static recompiler, you! ;p > >> How crazy must a god be to have such a weird name!?! > >You think that Prolog is better? :o > > At least it's a name without mathematics. But if "log" means logarythms, then Prolog could mean PROfessional LOGarythms. And then it'd be even worse. ;) > >You're sick. ;) > > Really? ;-) Yes. And I use smilies more than you do. ;) > >You haven't heard my German yet, have you? > > Nope, could be funny! ;-) Hey, mein Deutsch ist nicht *das* schiesse! Nein, mein Deutsh ist sehr gut. Hehehe... Okay, ist nicht das gut. Okay, okay, es ist schiesse. Well, although that may suck, that's pretty good for 14/15 weeks - and no lessons. :) > >But my English is quite okay... > >;) > > I hope so. Thinking about it... I wouldn't bet on it. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 14:20:15 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA03849 for dynarec-outgoing; Fri, 28 Apr 2000 14:20:15 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ From: Michael Koenig In-Reply-To: <004101bfb15c$b943d040$0100a8c0@lion> Message-Id: <00036658de837a62_mailit@mailhub.rrze.uni-erlangen.de> References: <200004270957.LAA12959@pons.ac.upc.es> <000366405c11e94f_mailit@mailhub.rrze.uni-erlangen.de> <39092F12.3D89B3BB@eurocopter.de> <000366507d426699_mailit@mailhub.rrze.uni-erlangen.de> <39099108.BFABC9A3@eurocopter.de> <000366527a9669d3_mailit@mailhub.rrze.uni-erlangen.de> <3909AD17.9CDABFDC@eurocopter.de> <00036654777276b1_mailit@mailhub.rrze.uni-erlangen.de> <3909C162.8AEB0CC2@eurocopter.de> <0003665553a36454_mailit@mailhub.rrze.uni-erlangen.de> <004101bfb15c$b943d040$0100a8c0@lion> Date: Fri, 28 Apr 2000 23:20:06 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Sure thing. I'll let you know tomorrow - if it does happen it'd be Sunday. >But that depends on you! If you don't expect a sight seeing tour then it's ok. I guess it isn't the weather for sight seeing anyway... >Okay. Fine then. You static recompiler, you! ;p Aw, that's mean! You heap of threaded spaghetti code! >But if "log" means logarythms, then Prolog could mean PROfessional >LOGarythms. And then it'd be even worse. ;) Agreed, but it means PROgramming in LOGic. >Yes. And I use smilies more than you do. ;) That's because you use the more economic version with only two signs! >Hey, mein Deutsch ist nicht *das* schiesse! Nein, mein Deutsh ist sehr gut. >Hehehe... Okay, ist nicht das gut. Okay, okay, es ist schiesse. Syntax is perfect, one spelling error ("Deutsh"), and one translation error: "is not *that* good" has to be "ist nicht *so* gut". >Well, although that may suck, that's pretty good for 14/15 weeks - and no >lessons. :) Yes indeed! I hope you have a dictionary at least... >> >But my English is quite okay... >> I hope so. >Thinking about it... I wouldn't bet on it. :) With us both speaking crappy English a discussion about dynarecs might be very interesting ;-) >Neil. -- M.I.K.e "You can bring any calculator you like to the midterm, as long as it doesn't dim the lights when you turn it on." -- Hepler, Systems Design 182 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 14:20:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA03857 for dynarec-outgoing; Fri, 28 Apr 2000 14:20:16 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ From: Michael Koenig In-Reply-To: <004201bfb15c$ba14dbe0$0100a8c0@lion> Message-Id: <00036658e6856774_mailit@mailhub.rrze.uni-erlangen.de> References: <004201bfb15c$ba14dbe0$0100a8c0@lion> Date: Fri, 28 Apr 2000 23:22:20 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> According to my dad, it's Irish. Bradley "broad-lee", or plains people. >Ah, Gaelic. I'm no expert on that - though Welsh is a Gaelic language. >Well... similar. I don't know much Gaelic. "Tir na nog" or "Land of the >young" is about all I know. :) Ok, my knowledge about Gaelic is as worse as my knowledge about Welsh, but I bet that Welsh isn't a Gaelic language, but both are Celtic languages. How about that? The only thing I know is that "clannad" means "family". >Neil. -- M.I.K.e Sauron is alive in Argentina! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 14:31:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA03937 for dynarec-outgoing; Fri, 28 Apr 2000 14:31:20 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <006e01bfb161$5b3c8460$0100a8c0@lion> From: "Neil Griffiths" To: References: <004201bfb15c$ba14dbe0$0100a8c0@lion> <00036658e6856774_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: DRFAQ Date: Fri, 28 Apr 2000 23:25:10 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >> According to my dad, it's Irish. Bradley "broad-lee", or plains people. > >Ah, Gaelic. I'm no expert on that - though Welsh is a Gaelic language. > >Well... similar. I don't know much Gaelic. "Tir na nog" or "Land of the > >young" is about all I know. :) > > Ok, my knowledge about Gaelic is as worse as my knowledge about Welsh, but I > bet that Welsh isn't a Gaelic language, but both are Celtic languages. How > about that? You're right. That's why I changed it to "Well... similar". The languages are quite similar - usually. :) > The only thing I know is that "clannad" means "family". It actually means "clan" - but seeing as a clan usually was a family (a big one usually), this makes sense. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 14:31:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA03945 for dynarec-outgoing; Fri, 28 Apr 2000 14:31:21 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <006f01bfb161$5c05eee0$0100a8c0@lion> From: "Neil Griffiths" To: References: <200004270957.LAA12959@pons.ac.upc.es> <000366405c11e94f_mailit@mailhub.rrze.uni-erlangen.de> <39092F12.3D89B3BB@eurocopter.de> <000366507d426699_mailit@mailhub.rrze.uni-erlangen.de> <39099108.BFABC9A3@eurocopter.de> <000366527a9669d3_mailit@mailhub.rrze.uni-erlangen.de> <3909AD17.9CDABFDC@eurocopter.de> <00036654777276b1_mailit@mailhub.rrze.uni-erlangen.de> <3909C162.8AEB0CC2@eurocopter.de> <0003665553a36454_mailit@mailhub.rrze.uni-erlangen.de> <004101bfb15c$b943d040$0100a8c0@lion> <00036658de837a62_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: DRFAQ Date: Fri, 28 Apr 2000 23:30:23 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Sure thing. I'll let you know tomorrow - if it does happen it'd be Sunday. > >But that depends on you! > > If you don't expect a sight seeing tour then it's ok. I guess it isn't the > weather for sight seeing anyway... I wouldn't expect that anyway. Although I'm hoping the weather will be nice. The girls in Germany are nice, I've noticed - and especially so when it's hot. ;) > >Okay. Fine then. You static recompiler, you! ;p > > Aw, that's mean! You heap of threaded spaghetti code! You 0110011001001101011 person, you! > >But if "log" means logarythms, then Prolog could mean PROfessional > >LOGarythms. And then it'd be even worse. ;) > > Agreed, but it means PROgramming in LOGic. Haha! Logic. Prolog. Haha! ;)) > >Yes. And I use smilies more than you do. ;) > > That's because you use the more economic version with only two signs! True... > >Hey, mein Deutsch ist nicht *das* schiesse! Nein, mein Deutsh ist sehr gut. > >Hehehe... Okay, ist nicht das gut. Okay, okay, es ist schiesse. > > Syntax is perfect, one spelling error ("Deutsh"), and one translation error: > "is not *that* good" has to be "ist nicht *so* gut". Arse, the spelling mistake was stupid - and caused by me typing at high speed. Oops. The translation error I couldn't help though - didn't know that. I'll remember it though. :) > >Well, although that may suck, that's pretty good for 14/15 weeks - and no > >lessons. :) > > Yes indeed! I hope you have a dictionary at least... Somewhere, I hardly use it. I learn better that way. Only if I'm completely stuck do I go for it... > >Thinking about it... I wouldn't bet on it. :) > > With us both speaking crappy English a discussion about dynarecs might be > very interesting ;-) Heh. Could be, could be. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 14:51:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA04018 for dynarec-outgoing; Fri, 28 Apr 2000 14:51:10 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ From: Michael Koenig In-Reply-To: <006f01bfb161$5c05eee0$0100a8c0@lion> Message-Id: <0003665953e3ca33_mailit@mailhub.rrze.uni-erlangen.de> References: <200004270957.LAA12959@pons.ac.upc.es> <000366405c11e94f_mailit@mailhub.rrze.uni-erlangen.de> <39092F12.3D89B3BB@eurocopter.de> <000366507d426699_mailit@mailhub.rrze.uni-erlangen.de> <39099108.BFABC9A3@eurocopter.de> <000366527a9669d3_mailit@mailhub.rrze.uni-erlangen.de> <3909AD17.9CDABFDC@eurocopter.de> <00036654777276b1_mailit@mailhub.rrze.uni-erlangen.de> <3909C162.8AEB0CC2@eurocopter.de> <0003665553a36454_mailit@mailhub.rrze.uni-erlangen.de> <004101bfb15c$b943d040$0100a8c0@lion> <00036658de837a62_mailit@mailhub.rrze.uni-erlangen.de> <006f01bfb161$5c05eee0$0100a8c0@lion> Date: Fri, 28 Apr 2000 23:52:55 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I wouldn't expect that anyway. Good. I just checked that we have 5 bottles of Schlenkerla (great smoke beer from Bamberg) and 2 bottles of Sankt Georgen Keller Bier, which is also very good. You really have to taste these! Oops, this might be interpreted as bribery... >Although I'm hoping the weather will be nice. >The girls in Germany are nice, I've noticed - and especially so when it's >hot. ;) Sometimes, sometimes not. I guess you as a foreigner have a slight bonus. >You 0110011001001101011 person, you! What? You only have 19 bits for me?!? Then you'll deserve only 8 bits, you 00000000! >Haha! Logic. Prolog. Haha! ;)) Well, take first order predicate logic and then change it in a way till it works in Prolog... >Arse, the spelling mistake was stupid - and caused by me typing at high >speed. Aha. >Oops. The translation error I couldn't help though - didn't know >that. I'll remember it though. :) I know where it comes from: "That is not good." = "Das ist nicht gut." "It is not that good." = "Es ist nicht so gut." The both thats are different. In the first case you have a pronoun and in the second case it has an exagerating purpose, I think it's a particle. >> Yes indeed! I hope you have a dictionary at least... >Somewhere, I hardly use it. I learn better that way. Only if I'm completely >stuck do I go for it... I have to admit that I have a dictionary left beside me, but I'm often too lazy to check the words because I noticed that in 90% my first guess is right anyway. That was somewhat different a few years ago though. If you can learn a new language that way it is fine because you also learn how to use the word and not only the word itself. But I guess that method wouldn't work for me. >Neil. -- M.I.K.e Sauron is alive in Argentina! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri Apr 28 14:54:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA04037 for dynarec-outgoing; Fri, 28 Apr 2000 14:54:50 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ From: Michael Koenig In-Reply-To: <006e01bfb161$5b3c8460$0100a8c0@lion> Message-Id: <0003665961c778a1_mailit@mailhub.rrze.uni-erlangen.de> References: <004201bfb15c$ba14dbe0$0100a8c0@lion> <00036658e6856774_mailit@mailhub.rrze.uni-erlangen.de> <006e01bfb161$5b3c8460$0100a8c0@lion> Date: Fri, 28 Apr 2000 23:56:48 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> The only thing I know is that "clannad" means "family". >It actually means "clan" - but seeing as a clan usually was a family (a big >one usually), this makes sense. :) I thought that "clan" is a Scottish term. BTW, do you know any Scots? I noticed that knowing a bit of Scots can help British speakers with German because of the pronunciation of "night" like German "ich" or "loch" just like the German counterpart. >Neil. -- M.I.K.e First Law of Procrastination: Procrastination shortens the job and places the responsibility for its termination on someone else (i.e., the authority who imposed the deadline). --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 30 08:06:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA12313 for dynarec-outgoing; Sun, 30 Apr 2000 08:06:34 GMT (envelope-from owner-dynarec@synthcom.com) Subject: DYNAREC: DRFAQ updated From: Michael Koenig Message-Id: <0003667b1142014a_mailit@mailhub.rrze.uni-erlangen.de> Date: Sun, 30 Apr 2000 16:08:06 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com, DavidSharp@ThePentagon.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, I've updated the DynaRec FAQ again... Comments and additions are still welcome... http://www.linguistik.uni-erlangen.de/~mlkoenig/drfaq.html -- M.I.K.e "The voters have spoken, the bastards ..." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 30 14:54:00 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA13353 for dynarec-outgoing; Sun, 30 Apr 2000 14:54:00 GMT (envelope-from owner-dynarec@synthcom.com) Subject: DYNAREC: Hungarian? From: Michael Koenig Message-Id: <000366819c453f40_mailit@mailhub.rrze.uni-erlangen.de> Date: Sun, 30 Apr 2000 23:56:28 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Does anyone on the list understand Hungarian? http://www.dynarec.hu -- M.I.K.e Maybe you can't buy happiness, but these days you can certainly charge it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 30 16:36:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA13669 for dynarec-outgoing; Sun, 30 Apr 2000 16:36:03 GMT (envelope-from owner-dynarec@synthcom.com) Date: Mon, 1 May 2000 00:39:07 +0100 From: Julian Brown To: dynarec@synthcom.com Subject: DYNAREC: More ARM emulation Message-ID: <20000501003906.A10117@jtb20b.quns.cam.ac.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, If anyone'd like more information about my ARM emulator, my project dissertation is now online (not sure if it's in the rules for it to be, but whatever really). There's (possibly) more technical detail there than in most of the commonly-available free DR documents (it's probably pushing 12,000 words now), though it's written in the style required by my examiners, so areas might be quite heavily fabricated/egotistical/ nonsensical/etc... Of course, if you read it and find any glaring technical errors (or even speling+grammer), I'd like to know before I submit it - I have a few weeks yet... ;-) Enjoy, Jules Oh yeah, the URL is: http://jtb20.quns.cam.ac.uk/diss.ps Hope it works this time ;-) -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun Apr 30 18:38:50 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id SAA14047 for dynarec-outgoing; Sun, 30 Apr 2000 18:38:49 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: More ARM emulation From: Michael Koenig In-Reply-To: <20000501003906.A10117@jtb20b.quns.cam.ac.uk> Message-Id: <00036684b8bd217b_mailit@mailhub.rrze.uni-erlangen.de> References: <20000501003906.A10117@jtb20b.quns.cam.ac.uk> Date: Mon, 01 May 2000 03:39:11 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >If anyone'd like more information about my ARM emulator, my project >dissertation is now online (not sure if it's in the rules for it to be, >but whatever really). There's (possibly) more technical detail there than >in most of the commonly-available free DR documents (it's probably pushing >12,000 words now), though it's written in the style required by my >examiners, so areas might be quite heavily fabricated/egotistical/ >nonsensical/etc... I will take a closer look. >Of course, if you read it and find any glaring technical errors (or even >speling+grammer), I'd like to know before I submit it - I have a few weeks >yet... ;-) I hope that I don't find too many errors ;-) > http://jtb20.quns.cam.ac.uk/diss.ps >Hope it works this time ;-) It worked! BTW, it's quite funny to see the URL of the page I wrote mentioned is such a document ;-) -- M.I.K.e Those who in quarrels interpose, must often wipe a bloody nose. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 1 23:13:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA19754 for dynarec-outgoing; Mon, 1 May 2000 23:13:48 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005020617.IAA08212@pons.ac.upc.es> Subject: Re: DYNAREC: Driving me crazy In-Reply-To: <000366546431b575_mailit@mailhub.rrze.uni-erlangen.de> "from Michael Koenig at Apr 28, 2000 05:59:34 pm" To: dynarec@synthcom.com Date: Tue, 2 May 2000 08:17:23 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >> BTW, my second name is Ingo, I'm not sure if that's much better... > >Don't know, but that sounds Spanish to me... Never heard of that name > >before. > > You can ask Victor if it's Spanish, but I only heard it as a German name, > although it isn't very common. > Never heared about it. It doesn't sound Spanish for sure. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 1 23:43:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA19806 for dynarec-outgoing; Mon, 1 May 2000 23:43:58 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005020647.IAA08466@pons.ac.upc.es> Subject: Re: DYNAREC: DRFAQ updated In-Reply-To: <0003667b1142014a_mailit@mailhub.rrze.uni-erlangen.de> "from Michael Koenig at Apr 30, 2000 04:08:06 pm" To: dynarec@synthcom.com Date: Tue, 2 May 2000 08:47:26 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > I've updated the DynaRec FAQ again... > Comments and additions are still welcome... > > http://www.linguistik.uni-erlangen.de/~mlkoenig/drfaq.html > Damn it! I have already translated the old version. ;) BTW some comments about the old version: - Basic block it's already a well defined term. It's just a block that it has only one entry point(the start of the block) and only one exit point (the end of the block). There is also an algorithm for calculate basic blocks, but it won't, easily, work with dynarec, perhaps with static compilation. There is no discussion about that, just see Aho and Ullman or another compiler theory book. - Why do you say the main problem with static compilation is self-modifying code?. It is just one of the problems (and not the worst because not all programs have self-modifying code). The main problem with static compilation is how to determine what it's code and what it's data. Mainly because of indirect jumps and jump tables. - You say a dynarec can't implement compiler theory optimizations but I think that isn't probed, it depends upon your implementation. I can't agree with that, perhaps could be better say that usually dynarec don't implement as many optimization techniques as static compilers. - I can't see why zero register are so important, just another processors feature you have to translated ... Oh, well, just some comments. I like your document, what I don't like it's my Spanish translation still seems something translated from English. ;) > "The voters have spoken, the bastards ..." > You are getting out of ideas? ;) I have seen it twice. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 1 23:55:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA19837 for dynarec-outgoing; Mon, 1 May 2000 23:55:38 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005020659.IAA08926@pons.ac.upc.es> Subject: DYNAREC: Old discussions In-Reply-To: <0003665961c778a1_mailit@mailhub.rrze.uni-erlangen.de> "from Michael Koenig at Apr 28, 2000 11:56:48 pm" To: dynarec@synthcom.com Date: Tue, 2 May 2000 08:59:10 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com I was reading last weekend the emu-mech doc. It's a collection of a discussion about emulation in an old amiga newsgroup. It's quite old, from 1991 (I was still with my old 8086 just knowing nothing more than some Basic), but it's still interesting. I found a new term for Neil: transpiler. It's the name they found for static compilation. There is also some comments explaining the problems about static compilation. It seems they didn't know about dynamic compilation. When wer ARDI's or SHADE implemented? There is also some interesting examples about threaded interpreters implementation. I wonder how many times have been discussed those subjects out there ... Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 2 00:07:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA19874 for dynarec-outgoing; Tue, 2 May 2000 00:07:20 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <390E7DB4.1D5BAF76@eurocopter.de> Date: Tue, 02 May 2000 09:03:16 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Driving me crazy References: <200005020617.IAA08212@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > You can ask Victor if it's Spanish, but I only heard it as a German name, > > although it isn't very common. > > > Never heared about it. It doesn't sound Spanish for sure. Ah, now I know where it came from. And even then it's not Spanish. And that doesn't matter because it wasn't the same anyway! Nope, I was thinking of Mexico - and what you hear in a lot of the old movies. You know, "Hey, Gringo!". Heh, not quite the same... :)) Ooh, well I managed exactly 0% of the emu-related stuff I planned for this weekend. My friend decided to stay until Monday and so I didn't get anything done that I wanted to. Arse! Oh well, at least I've introduced him to the wonders(!) of emulation. Yep, classic arcade games, old C64 games - and Amiga games. Not too keen on the Amiga myself, but he had one for years and was very impressed to see one or two of his old favourite games. He didn't know about emulation - so that shows he doesn't read the media. :) Ah well, another convert. At least I'm here to stop him becoming a l4m3r. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 2 00:10:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA19922 for dynarec-outgoing; Tue, 2 May 2000 00:10:35 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <390E7EB6.D9294BBD@eurocopter.de> Date: Tue, 02 May 2000 09:07:34 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Old discussions References: <200005020659.IAA08926@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I found a new term for Neil: transpiler. It's the name they found for static > compilation. Ohmygod! I actually can *remember* that term! Yep, I've heard it before! :o Translator and compiler = transpiler. Heh, memories... :) > There is also some comments explaining the problems about static compilation. > It seems they didn't know about dynamic compilation. When wer ARDI's or SHADE > implemented? Executor... Hmm, I know I saw it around '96/'97. Well, my memory tells me I did anyway. :)) > There is also some interesting examples about threaded interpreters > implementation. Cool. Got a link for that documentation? Old, but could be worth a laugh - I mean read. ;) > I wonder how many times have been discussed those subjects out there ... I don't know, but hopefully we're on the forefront of this technology... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 2 00:24:43 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA19967 for dynarec-outgoing; Tue, 2 May 2000 00:24:42 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005020727.JAA31381@pons.ac.upc.es> Subject: Re: DYNAREC: Old discussions In-Reply-To: <390E7EB6.D9294BBD@eurocopter.de> "from Neil Griffiths at May 2, 2000 09:07:34 am" To: dynarec@synthcom.com Date: Tue, 2 May 2000 09:27:52 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > > I found a new term for Neil: transpiler. It's the name they found for static > > compilation. > > Ohmygod! I actually can *remember* that term! Yep, I've heard it before! :o > > Translator and compiler = transpiler. Heh, memories... :) > What a good memory!!! If I only could have this kind of memory :( > > There is also some comments explaining the problems about static compilation. > > It seems they didn't know about dynamic compilation. When wer ARDI's or SHADE > > implemented? > > Executor... Hmm, I know I saw it around '96/'97. Well, my memory tells me I > did anyway. :)) > I was thinking about when was the first time dynamic compilation was implemented. > > There is also some interesting examples about threaded interpreters > > implementation. > > Cool. Got a link for that documentation? Old, but could be worth a laugh - > I mean read. ;) > I can't remember where I found it, I will put it somewhere or I will post it to you if you are interested. I thought It was on Dan Boris Page, but it isn't. I found this document a year or two ago. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 2 00:39:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA20012 for dynarec-outgoing; Tue, 2 May 2000 00:39:59 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <390E8577.7057E929@eurocopter.de> Date: Tue, 02 May 2000 09:36:23 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Old discussions References: <200005020727.JAA31381@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Translator and compiler = transpiler. Heh, memories... :) > > > What a good memory!!! If I only could have this kind of memory :( Hey, my memory isn't *that* good. If it was, I'd have remembered the term before! :o > > Executor... Hmm, I know I saw it around '96/'97. Well, my memory tells me I > > did anyway. :)) > > > I was thinking about when was the first time dynamic compilation was > implemented. Hmm. Is Executor a dynamic compiler? I don't know about the CPU, but the rest of it seems to be a high-level emulation. Well, it emulates the OS... > > Cool. Got a link for that documentation? Old, but could be worth a laugh - > > I mean read. ;) > > > I can't remember where I found it, I will put it somewhere or I will post it to > you if you are interested. Yes, that could be good. :) > I thought It was on Dan Boris Page, but it isn't. I found this document a year > or two ago. I don't think I've read it, but we'll see. I was never really into Amiga's so I doubt it... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 2 00:47:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA20057 for dynarec-outgoing; Tue, 2 May 2000 00:47:18 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005020750.JAA13311@pons.ac.upc.es> Subject: Re: DYNAREC: Old discussions In-Reply-To: <390E8577.7057E929@eurocopter.de> "from Neil Griffiths at May 2, 2000 09:36:23 am" To: dynarec@synthcom.com Date: Tue, 2 May 2000 09:50:27 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > Executor... Hmm, I know I saw it around '96/'97. Well, my memory tells me I > > > did anyway. :)) > > > > > I was thinking about when was the first time dynamic compilation was > > implemented. > > Hmm. Is Executor a dynamic compiler? I don't know about the CPU, but the > rest of it seems to be a high-level emulation. Well, it emulates the OS... > It has some dynamic compiling and also some threaded code. > > I thought It was on Dan Boris Page, but it isn't. I found this document a year > > or two ago. > > I don't think I've read it, but we'll see. I was never really into Amiga's > so I doubt it... > Neither I was. I found it searching for emulation docs so I think it must be in a well known emulation page, but I can't remember it. This document it's like the comp.emulation.misc (c.e.m.) FAQ, an old document about emulation, perhaps they are in the same site ... Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 2 01:15:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA20149 for dynarec-outgoing; Tue, 2 May 2000 01:15:42 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005020818.KAA10740@pons.ac.upc.es> Subject: Re: DYNAREC: Self-modifying code, a new approach ;) In-Reply-To: <00036650f73b3b46_mailit@mailhub.rrze.uni-erlangen.de> "from RRZE at Apr 28, 2000 01:54:21 pm" To: dynarec@synthcom.com Date: Tue, 2 May 2000 10:18:59 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Yep. You want to simulate self-modifying code by using a dynarec that can > modify its generated code. > I think it's more a dynarec that produces self-modifying translations. > I don't think that it's practical: > * I guess much code modifying isn't done via a direct but an indirect memory > access, which makes it almost impossible to trace. Some of the worst problems I have found. About indirect memory access and memory maps I thought something too. > * Even if you can trap self-modification you'd have to scan the code to see > which instructions were generated. You realize it from the bytes writed. > * You still have to flush caches on the host machine. > I think I'm too x86 based ;) I don't think in other CPUs cache problems. I think I must work more this idea before talk more about it. > >Something I'm sure. For an arcade machine emulator, with only a few > >games/programs to be executed on it, a modification of this idea it's the > >best. What you have to do it's to execute the game, search for self- > >modifying code and patch it. > > In that case you could also write a static binary translator that has a code > block for each possible modification and simply jumps to the appropriate one > during runtime. > Perhaps, but static translator have another problems, as indirect jumps. Also has some legal problems, It's better you don't release a translated version of a game. Now I think that if you want static translation you can implement it for arcade machines with only a few games, but you must provide to the static compiler all the information needed (something like a feedback file, i'm using this in Dixie, where I work) to build a full translation from the ROMS. Something I readed on Crusoe: using the MMU hardware to write protect translated pages, so detect self-modifying code is easily handled by hardware. Can it be done in Windows? I'm sure some UNIX OS provide this kind of capabilities. A new game: a say the name of a technique and you tell what the technique is. :)) For example: - delayed translations - speculative translations - delayed address translation - speculative address translation The names are wonderful, aren't they?. But I think they are a bit empty, why not to search a technique for this names? Increasing my madness level ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 2 04:14:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA20660 for dynarec-outgoing; Tue, 2 May 2000 04:14:33 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Old discussions From: Michael Koenig In-Reply-To: <200005020659.IAA08926@pons.ac.upc.es> Message-Id: <000366a0a749143a_mailit@mailhub.rrze.uni-erlangen.de> References: <200005020659.IAA08926@pons.ac.upc.es> Date: Tue, 02 May 2000 12:58:37 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I was reading last weekend the emu-mech doc. It's a collection of a >discussion >about emulation in an old amiga newsgroup. It's quite old, from 1991 (I was >still with my old 8086 just knowing nothing more than some Basic), but it's >still interesting. Is that nostalgia-nostalgia? ;-) >I found a new term for Neil: transpiler. It's the name they found for static >compilation. Sounds a bit like transputer... >There is also some comments explaining the problems about static compilation. >It seems they didn't know about dynamic compilation. When wer ARDI's or >SHADE implemented? Shade is from about 93/94, Executor slightly later (maybe 95?). Static recompilation is quite old, the first threaded interpreter could be Mimic (1987). >There is also some interesting examples about threaded interpreters >implementation. Any chance that I can read that article? >I wonder how many times have been discussed those subjects out there ... Probably not too often, at least not with our background ;-) -- M.I.K.e Oregon, n.: Eighty billion gallons of water with no place to go on Saturday night. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 2 04:14:35 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA20669 for dynarec-outgoing; Tue, 2 May 2000 04:14:35 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ updated From: Michael Koenig In-Reply-To: <200005020647.IAA08466@pons.ac.upc.es> Message-Id: <000366a08ef3fa14_mailit@mailhub.rrze.uni-erlangen.de> References: <200005020647.IAA08466@pons.ac.upc.es> Date: Tue, 02 May 2000 12:51:49 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> I've updated the DynaRec FAQ again... >Damn it! I have already translated the old version. ;) I've warned you ;-) >BTW some comments about the old version: Ah, the first comments ;-) > - Basic block it's already a well defined term. It's just a block that > it has only one entry point(the start of the block) and only one exit > point (the end of the block). There is also an algorithm for calculate > basic blocks, but it won't, easily, work with dynarec, perhaps with > static compilation. There is no discussion about that, just see Aho and > Ullman or another compiler theory book. Did I write anything different? I know it's a typical compiler theory term, but even there I've read more than one definition. > - Why do you say the main problem with static compilation is self-modifying > code?. It is just one of the problems (and not the worst because not all > programs have self-modifying code). The main problem with static > compilation is how to determine what it's code and what it's data. Mainly > because of indirect jumps and jump tables. Oops, forgot about indirect jumps, thanks for the hint! > - You say a dynarec can't implement compiler theory optimizations but I >think > that isn't probed, it depends upon your implementation. I can't agree >with > that, perhaps could be better say that usually dynarec don't implement > as many optimization techniques as static compilers. The problem is that we work with flat code, and almost all compiler optimiastion methods work on trees and graphs. If you want to use these you have to build a tree first, perform optimisations, and flatten out the code again. I bet that my "second chance" register allocation is a thousand times faster than the typical graph colouring algorithm. Even ARDI mention that they didn't use traditional methods because it would be too slow, and FX!32 can only utilize this methods because it has a profiler. > - I can't see why zero register are so important, just another processors > feature you have to translated ... Agreed, but given the fact that so many MIPS dynarecs don't implement it, I thought I had to mention it. >Oh, well, just some comments. I like your document, what I don't like it's >my Spanish translation still seems something translated from English. ;) I couldn't judge that anyway ;-) >> "The voters have spoken, the bastards ..." >You are getting out of ideas? ;) I have seen it twice. Nope, I've reinstalled my system, so it probably started from the beginning again... -- M.I.K.e I didn't like the play, but I saw it under adverse conditions. The curtain was up. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 2 04:14:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA20676 for dynarec-outgoing; Tue, 2 May 2000 04:14:36 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Driving me crazy From: Michael Koenig In-Reply-To: <390E7DB4.1D5BAF76@eurocopter.de> Message-Id: <000366a0ac06d361_mailit@mailhub.rrze.uni-erlangen.de> References: <200005020617.IAA08212@pons.ac.upc.es> <390E7DB4.1D5BAF76@eurocopter.de> Date: Tue, 02 May 2000 12:59:57 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Ooh, well I managed exactly 0% of the emu-related stuff I planned for this >weekend. My friend decided to stay until Monday and so I didn't get >anything done that I wanted to. Arse! Oh well, at least I've introduced him >to the wonders(!) of emulation. Yep, classic arcade games, old C64 games - >and Amiga games. Not too keen on the Amiga myself, but he had one for years >and was very impressed to see one or two of his old favourite games. He >didn't know about emulation - so that shows he doesn't read the media. :) >Ah well, another convert. At least I'm here to stop him becoming a l4m3r. >:)) Missonary Neil? Now I know why you didn't have time to reply to my last message... >Neil. -- M.I.K.e When we understand knowledge-based systems, it will be as before -- except our fingertips will have been singed. -- Epigrams in Programming, ACM SIGPLAN Sept. 1982 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 2 04:14:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA20683 for dynarec-outgoing; Tue, 2 May 2000 04:14:40 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Self-modifying code, a new approach ;) From: Michael Koenig In-Reply-To: <200005020818.KAA10740@pons.ac.upc.es> Message-Id: <000366a0e199d031_mailit@mailhub.rrze.uni-erlangen.de> References: <200005020818.KAA10740@pons.ac.upc.es> Date: Tue, 02 May 2000 13:14:55 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I think it's more a dynarec that produces self-modifying translations. Sounded a bit like tricks for static recompilation for me, maybe you got influenced by your university work? ;-) >> * Even if you can trap self-modification you'd have to scan the code to see >> which instructions were generated. >You realize it from the bytes writed. What I meant is that some instructions need more than one store to be written and other stores might write two instructions, the whole process could be even out of order. Unless you have a very complicated mechanism to trace all writes you'll have to rescan the block for changes anyway. >> * You still have to flush caches on the host machine. >I think I'm too x86 based ;) I don't think in other CPUs cache problems. Even IA-32 flushes the caches but it does that in hardware and automatically. >Something I readed on Crusoe: using the MMU hardware to write protect >translated >pages, so detect self-modifying code is easily handled by hardware. Can it >be done in Windows? I'm sure some UNIX OS provide this kind of capabilities. I think I mentioned that technique somewhen earlier on the list, although I got inspiered by some techniques used on MIPS processors. To answer your question, it is possible on any CPU that can write protect pages, but that's down to system level, so your emulator has to be somewhat like an operating system. >A new game: a say the name of a technique and you tell what the technique is. >:)) What can the candidates win? A totally free brain damage? ;-) > - delayed translations Sounds a bit like a compiler technique for functional languages with lazy evaluation. > - speculative translations Jump targets are translated although it isn't clear yet that they will be executed or not. Only slows down the recompiler. > - delayed address translation Erm, no idea. > - speculative address translation Sounds like a speed-up for indirect addressing. >The names are wonderful, aren't they?. But I think they are a bit empty, why >not to search a technique for this names? Your turn ;-) >Increasing my madness level ;) I wouldn't have thought that this is possible, but it is indeed! ;-) >Victor Moya -- M.I.K.e Don't worry about avoiding temptation -- as you grow older, it starts avoiding you. -- The Old Farmer's Almanac --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 2 04:14:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id EAA20690 for dynarec-outgoing; Tue, 2 May 2000 04:14:48 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Old discussions From: Michael Koenig In-Reply-To: <390E8577.7057E929@eurocopter.de> Message-Id: <000366a0b5adb451_mailit@mailhub.rrze.uni-erlangen.de> References: <200005020727.JAA31381@pons.ac.upc.es> <390E8577.7057E929@eurocopter.de> Date: Tue, 02 May 2000 13:02:38 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Hmm. Is Executor a dynamic compiler? I don't know about the CPU, but the >rest of it seems to be a high-level emulation. Well, it emulates the OS... It's even a dynamic REcompiler ;-) Actually they first produce threaded code and after some runs (I guess I read 50 times) they translate to native code on selected architectures, which is still only x86 I think. >I don't think I've read it, but we'll see. I was never really into Amiga's >so I doubt it... Me neither... >Neil. -- M.I.K.e Ass, n.: The masculine of "lass". --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 00:38:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24681 for dynarec-outgoing; Wed, 3 May 2000 00:38:06 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <017101bfb4d2$57121d40$a33b5393@a5s111pc16.fib.upc.es> From: "Victor (R.0.B.) Moya" To: Subject: RE: DYNAREC: DRFAQ updated Date: Wed, 3 May 2000 09:36:47 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3612.1700 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3612.1700 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Did I write anything different? >I know it's a typical compiler theory term, but even there I've read more >than one definition. > More than one definition? Are you sure? >> - You say a dynarec can't implement compiler theory optimizations but I >>think >> that isn't probed, it depends upon your implementation. I can't agree >>with >> that, perhaps could be better say that usually dynarec don't implement >> as many optimization techniques as static compilers. > >The problem is that we work with flat code, and almost all compiler >optimiastion methods work on trees and graphs. If you want to use these you >have to build a tree first, perform optimisations, and flatten out the code >again. Do you have readed Julian dissertion? Cruose Code Morpher also talks about compiler theory optimizations, but I think it´s a bad exampe. >>Oh, well, just some comments. I like your document, what I don't like it's >>my Spanish translation still seems something translated from English. ;) > >I couldn't judge that anyway ;-) > BTW the actual translation it´s at : http://alabi.fib.upc.es/~e6706591 But I can´t think in anyone interested on that ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 00:41:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA24698 for dynarec-outgoing; Wed, 3 May 2000 00:41:25 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <018601bfb4d2$c190fe20$a33b5393@a5s111pc16.fib.upc.es> From: "Victor (R.0.B.) Moya" To: Subject: RE: DYNAREC: Old discussions Date: Wed, 3 May 2000 09:39:46 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3612.1700 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3612.1700 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Any chance that I can read that article? > Yesterday I forgot that I have many of the emulation and dynamic compilation docs I have at my "page": http://alabi.fib.upc.es/~e6706591 Just download the emuinfo.zip and search for a file named "emumech.txt" or something like this. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 01:04:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24772 for dynarec-outgoing; Wed, 3 May 2000 01:04:36 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <01a301bfb4d5$f323b2e0$a33b5393@a5s111pc16.fib.upc.es> From: "Victor (R.0.B.) Moya" To: Subject: RE: DYNAREC: Self-modifying code, a new approach ;) Date: Wed, 3 May 2000 10:02:37 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3612.1700 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3612.1700 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >>I think it's more a dynarec that produces self-modifying translations. > >Sounded a bit like tricks for static recompilation for me, maybe you got >influenced by your university work? ;-) > In my work we don´t use any kind of trick ;) Or I hope so :o But yes this is the idea, a lot of tricks :) >I think I mentioned that technique somewhen earlier on the list, although I >got inspiered by some techniques used on MIPS processors. >To answer your question, it is possible on any CPU that can write protect >pages, but that's down to system level, so your emulator has to be somewhat >like an operating system. > I think that use the MMU could improve a lot the test for self-modifying code, it's the hardware who actually looks for writes, that it´s the worst about detecting self-modifying code, and the overhead involved to page write faults will be still better than the overhead of testing all memory writes. >>A new game: a say the name of a technique and you tell what the technique >is. >>:)) > >What can the candidates win? A totally free brain damage? ;-) > What do you want to win? Secret dynarec techniques that I (don´t) know about? >> - delayed translations > >Sounds a bit like a compiler technique for functional languages with lazy >evaluation. > I think I would be better I would called it "deferred translation". My first thought about it is to wait until you know everything before perform a translation. You put a fallback at the code and when it´s executed you perform the translation. I don´t know if can be useful. For example could be used with indirect jumps, many times indirect jumps uses ever the same jump address but it´s hard to discover the address. >> - speculative translations > >Jump targets are translated although it isn't clear yet that they will be >executed or not. Only slows down the recompiler. > Probably. Other approach could be translate something you aren´t still sure what it is. >> - delayed address translation > >Erm, no idea. > The same of above? Wait until an indirect addressing it´s executed and then write it to the translation (self-modifying code ;) and hope the indirect addressing isn´t variable. >> - speculative address translation > >Sounds like a speed-up for indirect addressing. > It´s the main idea yes. >>The names are wonderful, aren't they?. But I think they are a bit empty, >why >>not to search a technique for this names? > >Your turn ;-) > No I just say the names, you have to tell the technique ;) >>Increasing my madness level ;) > >I wouldn't have thought that this is possible, but it is indeed! ;-) > Ha!!, you still don´t know as crazy I am ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 01:33:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA24937 for dynarec-outgoing; Wed, 3 May 2000 01:33:10 GMT (envelope-from owner-dynarec@synthcom.com) Subject: RE: DYNAREC: DRFAQ updated From: Michael Koenig In-Reply-To: <017101bfb4d2$57121d40$a33b5393@a5s111pc16.fib.upc.es> Message-Id: <000366b2bd5ef72f_mailit@mailhub.rrze.uni-erlangen.de> References: <017101bfb4d2$57121d40$a33b5393@a5s111pc16.fib.upc.es> Date: Wed, 03 May 2000 10:33:17 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >More than one definition? Are you sure? Taken from "The Theory and Practice of Compiler Writing": "The basic block is a program fragment that has only one entry point and whose transfer mechanism between statements is that of proceeding to the next statement. An alternative definition (Gries, 1971) states that a basic block is a sequence of program statements organized in such a way that all transfers to the block are to the first statement in the block. Also if any statment in the block is executed, all statements in the block are executed." Acording to both definitions NB doesn't work with basic blocks and the term translation unit might be better. >Do you have readed Julian dissertion? Only the first two chapters and a part of chapter three yet, but from browsing through it I don't think that he's using any traditional optimisation techinques. >Cruose Code Morpher also talks about >compiler theory optimizations, but I think it´s a bad exampe. They touch many topics without explaining how they solved the problems... Maybe I should read the patent script, looks a bit better... >BTW the actual translation it´s at : > http://alabi.fib.upc.es/~e6706591 >But I can´t think in anyone interested on that ;) Well, I took a brief look and at looks Spanish at least ;-) It seems you had problems to translate the word "catchy". I hope I took the right English term. What I meant are short, recognizable terms that exactly hit the point. BTW, are you satisfied with the credits? >Victor Moya -- M.I.K.e Avoid reality at all costs. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 01:53:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA25021 for dynarec-outgoing; Wed, 3 May 2000 01:53:48 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005030856.KAA06680@pons.ac.upc.es> Subject: Re: DYNAREC: DRFAQ updated In-Reply-To: <000366b2bd5ef72f_mailit@mailhub.rrze.uni-erlangen.de> "from Michael Koenig at May 3, 2000 10:33:17 am" To: dynarec@synthcom.com Date: Wed, 3 May 2000 10:56:57 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-MIME-Autoconverted: from 8bit to quoted-printable by pons.ac.upc.es id KAA06680 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id BAA25018 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >More than one definition? Are you sure? > > Taken from "The Theory and Practice of Compiler Writing": > "The basic block is a program fragment that has only one entry point and > whose transfer mechanism between statements is that of proceeding to the next > statement. An alternative definition (Gries, 1971) states that a basic block > is a sequence of program statements organized in such a way that all > transfers to the block are to the first statement in the block. Also if any > statment in the block is executed, all statements in the block are executed." > I can see the difference (but perhaps it's my english). What it's happenning is that defining a basic block it's something difficult (the better choice for me is just to show the algorithm for obtaining them) and the authors are confusing everyone ;) But there is only one definition of basic block, I'm sure. > Acording to both definitions NB doesn't work with basic blocks and the term > translation unit might be better. > I don't think any dynarec use real basic blocks (because the effort of be sure that it's a BB is too big). And I also think "translation unit" it's a better term. I used it on my document (spanish version only). I also use a term "lazy basic blocks" (or something like this) referring to the usual basic blocks used in dynarec, because you are not sure if they are real basic blocks. If you are insterested I could translate this section of my doc. > >Do you have readed Julian dissertion? > > Only the first two chapters and a part of chapter three yet, but from > browsing through it I don't think that he's using any traditional > optimisation techinques. > I spent two or three hours yesterday afternoon doing a quick reading of it. I think he has now more knowledge than some of the people it's talking in this list. Too many theoricians in the list I think ;) (And I'm the first). He really doesn't use any optimisation techniques (but some deadcode and flag evaluation supression) but he uses many tree like structures and the phetacode and I think it could be easy (well, not so easy) to implement some of this optimizations. He talks about it as a continuation of the project but I know it is something university professors wants to listen ;) > >Cruose Code Morpher also talks about > >compiler theory optimizations, but I think it´s a bad exampe. > > They touch many topics without explaining how they solved the problems... > Maybe I should read the patent script, looks a bit better... > Oh, there is another document about Crusoe? I have missed it. > Well, I took a brief look and at looks Spanish at least ;-) > It seems you had problems to translate the word "catchy". I hope I took the > right English term. What I meant are short, recognizable terms that exactly > hit the point. I used the translation I found in my english-to-spanish dictionary, but I think it has to be a better translation. And yes I understand what you mean with catchy. > BTW, are you satisfied with the credits? > Yes I like them a lot :))) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 03:06:12 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA25475 for dynarec-outgoing; Wed, 3 May 2000 03:06:12 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ updated From: Michael Koenig In-Reply-To: <200005030856.KAA06680@pons.ac.upc.es> Message-Id: <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> References: <200005030856.KAA06680@pons.ac.upc.es> Date: Wed, 03 May 2000 12:07:05 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I can see the difference (but perhaps it's my english). What it's happenning >is that defining a basic block it's something difficult (the better choice >for >me is just to show the algorithm for obtaining them) and the authors are >confusing everyone ;) Yeah, a better definition might be: it's a block of sequential code with an entry point in the beginning. >I don't think any dynarec use real basic blocks (because the effort of be >sure that it's a BB is too big). True, you can never be sure that you found a real basic block. >And I also think "translation unit" it's a better term. It tells more what it really is and you're still enough freedom to decide how large it shall be. >If you are insterested I could translate this section of my doc. Only if it's not too much work for you, but I guess we share the same idea anyway. >I spent two or three hours yesterday afternoon doing a quick reading of it. >I think he has now more knowledge than some of the people it's talking in >this list. Too many theoricians in the list I think ;) (And I'm the first). Someone who wrote his own dynarec surely knows more about many aspects of this method, but we might have a better overview after all the discussions we had. I also found some slight errors in the first chapter: * The 640k limit is formed by DOS and not the 8086. But the 8086 has the lovely 64k segments. * Generator isn't much of a dynarec but more threaded code, but it took me a while to realize that. >He really doesn't use any optimisation techniques (but some deadcode and flag >evaluation supression) Flag reduction for ARM emulation is quite easy because the took over a feature from Berkeley-RISC (later SPARC) that condition flags are only calculated when a special bit in the instruction is set. I think he has an example with the instruction "addlts", which means: add if less than and set flags. >but he uses many tree like structures and the phetacode >and I think it could be easy (well, not so easy) to implement some of this >optimizations. As far as I can see he only uses the tree-like structures for the matching templates but the intermediate representation (the phetacode) is still linear. >He talks about it as a continuation of the project but I know >it is something university professors wants to listen ;) We'll see ;-) >Oh, there is another document about Crusoe? I have missed it. This is the patent for Crusoe: http://164.195.100.11/netacgi/nph-Parser?Sect1=PTO2&Sect2=HITOFF&u=/netahtml/ search-adv.htm&r=1&p=1&f=G&l=50&d=curr&S1=transmeta.ASNM.&OS=an/transmeta&RS= AN/transmeta >I used the translation I found in my english-to-spanish dictionary, but I >think it has to be a better translation. Dictionaries are often too much out of context :-( >And yes I understand what you mean with catchy. Good, it seems that I picked the right term then- >> BTW, are you satisfied with the credits? >Yes I like them a lot :))) Good. I thought simply listing you and the others would be a bit lame so I added a small characterization. >Victor Moya -- M.I.K.e Never underestimate the bandwidth of a station wagon full of tapes. -- Dr. Warren Jackson, Director, UTCS --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 03:22:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA25510 for dynarec-outgoing; Wed, 3 May 2000 03:22:26 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005031022.MAA08932@pons.ac.upc.es> Subject: Re: DYNAREC: More ARM emulation In-Reply-To: <20000501003906.A10117@jtb20b.quns.cam.ac.uk> "from Julian Brown at May 1, 2000 00:39:07 am" To: dynarec@synthcom.com Date: Wed, 3 May 2000 12:22:49 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hi, > > If anyone'd like more information about my ARM emulator, my project > dissertation is now online (not sure if it's in the rules for it to be, > but whatever really). There's (possibly) more technical detail there than > in most of the commonly-available free DR documents (it's probably pushing > 12,000 words now), though it's written in the style required by my > examiners, so areas might be quite heavily fabricated/egotistical/ > nonsensical/etc... > > Of course, if you read it and find any glaring technical errors (or even > speling+grammer), I'd like to know before I submit it - I have a few weeks > yet... ;-) > > Enjoy, > For sure. I readed it yesterday afternoon. Perhaps a too quick reading. My comments: - I like you talk about Turing and Turing Universal Machine. I thought talk about that in my own dissertation, too. It seems I'm not the only one who relates emulation with universal machines ;) - A small fault, you are using ugly AT x86 asm conventions ;) - a good feature, you use pascal like pseudocode :) More seriously. Your approach to dynarec it's the kind of theorical approach MIKE and me started also, something different than Neil Bradley ideas. When do you subscribed to the list? I think it would be interesting for you to know the new approach Neil is using (if you don't know it already), perhaps it will be better when you have more free time ;) You use an interpreter+profiler+translator approach. It makes me think that a new classification must be added to dynarec. Dynarecs based in an interpreter/profiler with translation of more often executed blocks approach, and full dynarecs which always build a translation and they don't use an interpreter. Your approach I think is as used (or perhaps more used) as the second one. Perhaps FX!32 implements something similar, Crusoe Code Morpher seems (but who can be sure about it) to work also in a similar way. More info to Neil Griffiths classification doc ;) I like the rule and tree matching approach to code generation/translation. The full document it's very interesting and it's more useful than all other dynarec docs in aspects like code generation, intermediate representation, etc. I can't see any mistake, if this helps you ;) I think you have now a better knowledge about dynarec than some other people on the list. People who talks too much about theory without real experience perhaps, me perhaps :o And if you already know Neil's method you are a real dynarec expert ;) Umm, perhaps there is something more to say, but I can't just remember ... Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 03:29:07 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id DAA25523 for dynarec-outgoing; Wed, 3 May 2000 03:29:07 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005031031.MAA09058@pons.ac.upc.es> Subject: Re: DYNAREC: DRFAQ updated In-Reply-To: <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> "from Michael Koenig at May 3, 2000 12:07:05 pm" To: dynarec@synthcom.com Date: Wed, 3 May 2000 12:31:33 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >I can see the difference (but perhaps it's my english). What it's > happenning > >is that defining a basic block it's something difficult (the better choice > >for > >me is just to show the algorithm for obtaining them) and the authors are > >confusing everyone ;) > > Yeah, a better definition might be: it's a block of sequential code with an > entry point in the beginning. > Perhaps: a block of sequentially executed code with only an entry point. Meaning that the full block it's always executed. > >And I also think "translation unit" it's a better term. > > It tells more what it really is and you're still enough freedom to decide how > large it shall be. > Agreed. > >I spent two or three hours yesterday afternoon doing a quick reading of it. > >I think he has now more knowledge than some of the people it's talking in > >this list. Too many theoricians in the list I think ;) (And I'm the first). > > Someone who wrote his own dynarec surely knows more about many aspects of > this method, but we might have a better overview after all the discussions we > had. > I also found some slight errors in the first chapter: > * The 640k limit is formed by DOS and not the 8086. But the 8086 has the > lovely 64k segments. As DOS it's almost the only OS for 8086 it isn't a great mistake. I don't think his professors pay attention to this. > * Generator isn't much of a dynarec but more threaded code, but it took me a > while to realize that. > The Generator doc it's really bad related to the "dynamic recompilation" implementation chapter. > >Oh, there is another document about Crusoe? I have missed it. > > This is the patent for Crusoe: > > http://164.195.100.11/netacgi/nph-Parser?Sect1=PTO2&Sect2=HITOFF&u=/netahtml/ > search-adv.htm&r=1&p=1&f=G&l=50&d=curr&S1=transmeta.ASNM.&OS=an/transmeta&RS= > AN/transmeta > I have already downloaded it. I just went to your dynarec page at Acorn Emulation Page. > >> BTW, are you satisfied with the credits? > >Yes I like them a lot :))) > > Good. I thought simply listing you and the others would be a bit lame so I > added a small characterization. > Indeed. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 05:31:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA25732 for dynarec-outgoing; Wed, 3 May 2000 05:31:12 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: More ARM emulation From: Michael Koenig In-Reply-To: <200005031022.MAA08932@pons.ac.upc.es> Message-Id: <000366b5fcffacc9_mailit@mailhub.rrze.uni-erlangen.de> References: <200005031022.MAA08932@pons.ac.upc.es> Date: Wed, 03 May 2000 14:25:49 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >You use an interpreter+profiler+translator approach. It makes me think that >a new classification must be added to dynarec. Dynarecs based in an >interpreter/profiler with translation of more often executed blocks approach, >and full dynarecs which always build a translation and they don't use an >interpreter. Your approach I think is as used (or perhaps more used) as the >second one. It's similar to Executor, only that Syn68k uses threaded code for interpretation and ARMphetamine seems to have a normal interpretive emulator. >Perhaps FX!32 implements something similar, Yes, but translation is done after the application was terminated. >Crusoe Code Morpher >seems (but who can be sure about it) to work also in a similar way. They always translated the code (like NB) but when it's executed often it is optimised further. > More info >to Neil Griffiths classification doc ;) If he ever writes it ;-) >Victor Moya -- M.I.K.e Don't take life so serious, son, it ain't nohow permanent. -- Walt Kelly --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 05:31:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA25738 for dynarec-outgoing; Wed, 3 May 2000 05:31:13 GMT (envelope-from owner-dynarec@synthcom.com) Subject: RE: DYNAREC: Self-modifying code, a new approach ;) From: Michael Koenig In-Reply-To: <01a301bfb4d5$f323b2e0$a33b5393@a5s111pc16.fib.upc.es> Message-Id: <000366b5ed763263_mailit@mailhub.rrze.uni-erlangen.de> References: <01a301bfb4d5$f323b2e0$a33b5393@a5s111pc16.fib.upc.es> Date: Wed, 03 May 2000 14:21:29 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I think that use the MMU could improve a lot the test for self-modifying >code, it's the hardware who actually looks for writes, that it´s the worst >about detecting self-modifying code, and the overhead involved to page write >faults will be still better than the overhead of testing all memory writes. I just remembered that Virtual PC indeed uses the PowerPC MMU to simulate Pentium paging. Nothing about self-modifying code is mentioned, but it surely has to deal with it because Intel processors solve that in hardware. It seem that your idea can be implemented even without the emulator behaving like the operating system, but I'm not sure how to do it. I guess it will also depend on the involved hardware and OS. I bet Unix wouldn't like it when you fiddle around with page settings. I had the idea some time earlier because on MIPS you utilize that feature to speed-up page replacement algorithms. Every new page is set to read-only in the beginning, which causes a page fault as soon as you write to it. If the system routine notices that writing is permitted then the page is set to writeable and the dirty bit for that page is set. Due to this technique you only have to trap the first write and still know that the page was changed and you have to store it when it is swapped out. >I think I would be better I would called it "deferred translation". >My first thought about it is to wait until you know everything before >perform a translation. You put a fallback at the code and when it´s >executed you perform the translation. I don´t know if can be useful. For >example could be used with indirect jumps, many times indirect jumps uses >ever the same jump address but it´s hard to discover the address. Ah, so it's like an interpreter/profiler/recompiler combination. >Ha!!, you still don´t know as crazy I am ;) It seems so! >Victor Moya -- M.I.K.e When the speaker and he to whom he is speaks do not understand, that is metaphysics. -- Voltaire --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 05:31:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA25743 for dynarec-outgoing; Wed, 3 May 2000 05:31:13 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ updated From: Michael Koenig In-Reply-To: <200005031031.MAA09058@pons.ac.upc.es> Message-Id: <000366b5c30fd5d6_mailit@mailhub.rrze.uni-erlangen.de> References: <200005031031.MAA09058@pons.ac.upc.es> Date: Wed, 03 May 2000 14:09:37 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Perhaps: a block of sequentially executed code with only an entry point. >Meaning that the full block it's always executed. That's what I meant. I really should be more precise, shouldn't I? >As DOS it's almost the only OS for 8086 it isn't a great mistake. I don't >think his professors pay attention to this. I guess since it's only in the introduction they'll browse right over it. >The Generator doc it's really bad related to the "dynamic recompilation" >implementation chapter. I think Generator isn't that bad as a document, but I don't like the implementation that much. >> This is the patent for Crusoe: >I have already downloaded it. I just went to your dynarec page at Acorn >Emulation Page. Surely was easier than copy'n'paste the long URL into the browser. >Victor Moya -- M.I.K.e Tax reform means "Don't tax you, don't tax me, tax that fellow behind the tree." -- Russell Long --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 06:50:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25909 for dynarec-outgoing; Wed, 3 May 2000 06:50:42 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <39102096.29B24E93@eurocopter.de> Date: Wed, 03 May 2000 14:50:31 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Yeah, a better definition might be: it's a block of sequential code with an > entry point in the beginning. Yes - but only ONE entry point. And I've read that it's only meant to have one way out too, but I think we can scrap that idea. I know I have! :) > I also found some slight errors in the first chapter: > * The 640k limit is formed by DOS and not the 8086. But the 8086 has the > lovely 64k segments. Yep - and if I'd have read it I'd have said so. But you can't complain about it. Just remember, "640k is enough for anybody!". That wouldn't be half as amusing if it didn't come from the guy who runs the company that produces the most bloated applications I have ever seen! Did you know that things like Word, Access and Excel have lots of Pseudocode-like stuff in there which gets compiled on the fly? So if you've ever wondered why it's a bit slow, that's why. :-/ I tried to open the PostScript file in PSP6, but it died. At least, after 4 minutes it was still loading - so I gave up. Suppose I should try something else to open it! Any suggestions for me, a x86 owning Win '98 owner? I've got lots of things that'd open here at work under Solaris! :o > As far as I can see he only uses the tree-like structures for the matching > templates but the intermediate representation (the phetacode) is still > linear. I can't remember what CPU it emulates. Can anybody enlighten me? > >I used the translation I found in my english-to-spanish dictionary, but I > >think it has to be a better translation. > > Dictionaries are often too much out of context :-( Yeah. And you never find the "good" words in there. You know which ones I mean. ;) > Good. I thought simply listing you and the others would be a bit lame so I > added a small characterization. Nuh? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 06:59:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA25930 for dynarec-outgoing; Wed, 3 May 2000 06:59:59 GMT (envelope-from owner-dynarec@synthcom.com) Date: Wed, 3 May 2000 15:02:33 +0100 From: Julian Brown To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated Message-ID: <20000503150232.B938@jtb20b.quns.cam.ac.uk> References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de>; from Michael Koenig on Wed, May 03, 2000 at 12:07:05PM +0200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Wed, May 03, 2000 at 12:07:05PM +0200, Michael Koenig wrote: > >I don't think any dynarec use real basic blocks (because the effort of be > >sure that it's a BB is too big). > > True, you can never be sure that you found a real basic block. In my project, I differentiated between "basic blocks" and "chunks" (which I think are what you refer to as translation units, but I probably haven't read around the subject as much as some of you...). My "chunks" have the limitation that they must be sequential code blocks (they can disrupt control flow internally). It's not possible to jump into the middle of one of these chunks once recompiled, but they may overlap. The basic blocks I use are subsections of chunks, and are important (ie, pretty much vital) for things like register allocation. They don't have anything to do with the profiler. > Someone who wrote his own dynarec surely knows more about many aspects of > this method, but we might have a better overview after all the discussions we > had. > I also found some slight errors in the first chapter: > * The 640k limit is formed by DOS and not the 8086. But the 8086 has the > lovely 64k segments. > * Generator isn't much of a dynarec but more threaded code, but it took me a > while to realize that. Thanks a lot, I'll fix those things... > >He really doesn't use any optimisation techniques (but some deadcode and > flag > >evaluation supression) > > Flag reduction for ARM emulation is quite easy because the took over a > feature from Berkeley-RISC (later SPARC) that condition flags are only > calculated when a special bit in the instruction is set. > I think he has an example with the instruction "addlts", which means: add if > less than and set flags. It is easy to do at a simple level, which is all that's done at the moment. I think I can do better though ;-) > >but he uses many tree like structures and the phetacode > >and I think it could be easy (well, not so easy) to implement some of this > >optimizations. > > As far as I can see he only uses the tree-like structures for the matching > templates but the intermediate representation (the phetacode) is still > linear. The phetacode IS linear, but I annotate it with tree- (actually graph-) like 'edges', for the benefit of the matching algorithm, which makes it sort-of tree-like. There are places extra optimisations could be added fairly easily and cheaply. Actually, at the moment the whole thing's a bit of a hack to be honest, hope it doesn't show too badly ;-) > >He talks about it as a continuation of the project but I know > >it is something university professors wants to listen ;) > > We'll see ;-) Don't think it'll be academic, depends how things turn out though... ARM Ltd. seem to be interested in the stuff I've done, but that might mean whatever work I'd do would end up being proprietary, which would be a shame I think. Thanks for the interest - I've got a supervision now, so I'd better be off... Jules -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 08:13:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA26169 for dynarec-outgoing; Wed, 3 May 2000 08:13:10 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ updated From: Michael Koenig In-Reply-To: <20000503150232.B938@jtb20b.quns.cam.ac.uk> Message-Id: <000366b8547a99b9_mailit@mailhub.rrze.uni-erlangen.de> References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> <20000503150232.B938@jtb20b.quns.cam.ac.uk> Date: Wed, 03 May 2000 17:13:27 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >In my project, I differentiated between "basic blocks" and "chunks" (which >I think are what you refer to as translation units, but I probably haven't >read around the subject as much as some of you...). Generally the size of a translation unit isn't really defined, it's just a block of code that's translated. But a typical definition is to take the first branch target to a new block as the beginning of the unit and then procede to the next unconditional branch. That way you can optimise the heart out of intra unit branches without the need to go through the global dispatcher. >My "chunks" have >the limitation that they must be sequential code blocks (they can disrupt >control flow internally). It's not possible to jump into the middle of one >of these chunks once recompiled, but they may overlap. This is the typical approach with dynamic register allocation, which you are using. Neil Bradley currently uses a direct address to address mapping which allows him to jump right into any previously translated block. But this only works because he uses static register allocation, meaning all simulated registers are allocated to the same hardware registers all of the time, and because he doesn't do any peephole optimisation yet. >The basic blocks I use are subsections of chunks, and are important (ie, >pretty much vital) for things like register allocation. They don't have >anything to do with the profiler. The profiler works with chunks, right? >Thanks a lot, I'll fix those things... Never mind. Expect more comments as I read on. >The phetacode IS linear, but I annotate it with tree- (actually graph-) >like 'edges', for the benefit of the matching algorithm, which makes it >sort-of tree-like. There are places extra optimisations could be added >fairly easily and cheaply. I haven't finished reading that section yet, so forgive my incompetence ;-) >Actually, at the moment the whole thing's a bit >of a hack to be honest, hope it doesn't show too badly ;-) If you want to see dynarec hacks then take a look at the current open source N64 and PSX emulators! Compared to that your method is cleanly designed. >Don't think it'll be academic, depends how things turn out though... ARM >Ltd. seem to be interested in the stuff I've done, but that might mean >whatever work I'd do would end up being proprietary, which would be a shame >I think. Maybe, but it sounds like a very interesting offer! >Jules -- M.I.K.e The optimum committee has no members. -- Norman Augustine --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 08:13:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA26173 for dynarec-outgoing; Wed, 3 May 2000 08:13:10 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ updated From: Michael Koenig In-Reply-To: <39102096.29B24E93@eurocopter.de> Message-Id: <000366b816fa85f3_mailit@mailhub.rrze.uni-erlangen.de> References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> <39102096.29B24E93@eurocopter.de> Date: Wed, 03 May 2000 16:56:15 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Yes - but only ONE entry point. And I've read that it's only meant to have >one way out too, but I think we can scrap that idea. I know I have! :) Actually there are two ways out. Since a basic block is terminated by conditional branches you have one for the branch taken and one for the branch not taken. >Yep - and if I'd have read it I'd have said so. But you can't complain >about it. Just remember, "640k is enough for anybody!". That wouldn't be >half as amusing if it didn't come from the guy who runs the company that >produces the most bloated applications I have ever seen! Too true! >Did you know that things like Word, Access and Excel have lots of >Pseudocode-like stuff in there which gets compiled on the fly? So if you've >ever wondered why it's a bit slow, that's why. :-/ Where did you get that information? >I tried to open the PostScript file in PSP6, but it died. At least, after 4 >minutes it was still loading - so I gave up. Suppose I should try something >else to open it! Any suggestions for me, a x86 owning Win '98 owner? I've >got lots of things that'd open here at work under Solaris! :o How about Ghostview? It certainly is available for Windows (and I used it to print the dissertation), but the download could be a bit large... >I can't remember what CPU it emulates. Can anybody enlighten me? You wan to be an Englishman? It emulates an ARM processor in user mode. >> Dictionaries are often too much out of context :-( >Yeah. And you never find the "good" words in there. You know which ones I >mean. ;) You mean the bird-watching related ones? ;-) >> Good. I thought simply listing you and the others would be a bit lame so I >> added a small characterization. >Nuh? ;) If you don't agree with what I wrote about you then tell me what I should write instead ;-) >Neil. -- M.I.K.e Spend extra time on hobby. Get plenty of rolling papers. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 09:13:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA26340 for dynarec-outgoing; Wed, 3 May 2000 09:13:51 GMT (envelope-from owner-dynarec@synthcom.com) Date: Wed, 3 May 2000 17:16:28 +0100 From: Julian Brown To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated Message-ID: <20000503171627.A1084@jtb20b.quns.cam.ac.uk> References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> <20000503150232.B938@jtb20b.quns.cam.ac.uk> <000366b8547a99b9_mailit@mailhub.rrze.uni-erlangen.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: <000366b8547a99b9_mailit@mailhub.rrze.uni-erlangen.de>; from Michael Koenig on Wed, May 03, 2000 at 05:13:27PM +0200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Wed, May 03, 2000 at 05:13:27PM +0200, Michael Koenig wrote: > > Neil Bradley currently uses a direct address to address mapping which allows > him to jump right into any previously translated block. But this only works > because he uses static register allocation, meaning all simulated registers > are allocated to the same hardware registers all of the time, and because he > doesn't do any peephole optimisation yet. I couldn't do that, obviously - there aren't enough registers on the x86... > >The basic blocks I use are subsections of chunks, and are important (ie, > >pretty much vital) for things like register allocation. They don't have > >anything to do with the profiler. > > The profiler works with chunks, right? Yes. > If you want to see dynarec hacks then take a look at the current open source > N64 and PSX emulators! Compared to that your method is cleanly designed. Maybe when I have more time :-) Jules -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 09:24:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA26364 for dynarec-outgoing; Wed, 3 May 2000 09:24:19 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <39105209.131E8B4@eurocopter.de> Date: Wed, 03 May 2000 18:21:29 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> <20000503150232.B938@jtb20b.quns.cam.ac.uk> <000366b8547a99b9_mailit@mailhub.rrze.uni-erlangen.de> <20000503171627.A1084@jtb20b.quns.cam.ac.uk> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I couldn't do that, obviously - there aren't enough registers on the > x86... No, this is for the Z80. Could be interesting when I and Andrew join him in the 68k CPU. :) > > If you want to see dynarec hacks then take a look at the current open source > > N64 and PSX emulators! Compared to that your method is cleanly designed. > > Maybe when I have more time :-) Are you in the same situation as two of my friends who have to have their projects + dissertations in by this Friday? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 09:30:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA26398 for dynarec-outgoing; Wed, 3 May 2000 09:30:27 GMT (envelope-from owner-dynarec@synthcom.com) Date: Wed, 3 May 2000 17:32:57 +0100 From: Julian Brown To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated Message-ID: <20000503173256.A1193@jtb20b.quns.cam.ac.uk> References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> <20000503150232.B938@jtb20b.quns.cam.ac.uk> <000366b8547a99b9_mailit@mailhub.rrze.uni-erlangen.de> <20000503171627.A1084@jtb20b.quns.cam.ac.uk> <39105209.131E8B4@eurocopter.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: <39105209.131E8B4@eurocopter.de>; from Neil Griffiths on Wed, May 03, 2000 at 06:21:29PM +0200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com On Wed, May 03, 2000 at 06:21:29PM +0200, Neil Griffiths wrote: > > I couldn't do that, obviously - there aren't enough registers on the > > x86... > > No, this is for the Z80. Could be interesting when I and Andrew join him in > the 68k CPU. :) Right... > Are you in the same situation as two of my friends who have to have their > projects + dissertations in by this Friday? Not quite that bad, I've got 'til the 19th I think. Still, I'm supposed to be revising for exams too... Jules -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 09:44:08 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA26439 for dynarec-outgoing; Wed, 3 May 2000 09:44:08 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <391056D0.957A7360@eurocopter.de> Date: Wed, 03 May 2000 18:41:52 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> <20000503150232.B938@jtb20b.quns.cam.ac.uk> <000366b8547a99b9_mailit@mailhub.rrze.uni-erlangen.de> <20000503171627.A1084@jtb20b.quns.cam.ac.uk> <39105209.131E8B4@eurocopter.de> <20000503173256.A1193@jtb20b.quns.cam.ac.uk> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > No, this is for the Z80. Could be interesting when I and Andrew join him in > > the 68k CPU. :) > > Right... 10 registers. I think they're all 16-bit as well - but I haven't checked that out just yet. :) > > Are you in the same situation as two of my friends who have to have their > > projects + dissertations in by this Friday? > > Not quite that bad, I've got 'til the 19th I think. Still, I'm supposed to > be revising for exams too... Hmm. You're not that much better off, are you? Not if exams are straight after. It's always good to have at least a fortnight of revision... Mind you, this is the flukemeister himself talking. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 10:24:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA26619 for dynarec-outgoing; Wed, 3 May 2000 10:24:28 GMT (envelope-from owner-dynarec@synthcom.com) Date: Wed, 3 May 2000 10:24:26 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated In-Reply-To: <39102096.29B24E93@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > I also found some slight errors in the first chapter: > > * The 640k limit is formed by DOS and not the 8086. But the 8086 has the > > lovely 64k segments. > Yep - and if I'd have read it I'd have said so. But you can't complain > about it. Just remember, "640k is enough for anybody!". That wouldn't be > half as amusing if it didn't come from the guy who runs the company that > produces the most bloated applications I have ever seen! Sorry - urban legend. This was said by Thomas Watson Jr. of IBM - not by Bill Gates. If you think about it, it doesn't make sense. Microsoft didn't impose the 640K limit - IBM did with the design of the IBM PC. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 10:56:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA26808 for dynarec-outgoing; Wed, 3 May 2000 10:56:47 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ updated From: Michael Koenig In-Reply-To: <391056D0.957A7360@eurocopter.de> Message-Id: <000366ba56e79742_mailit@mailhub.rrze.uni-erlangen.de> References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> <20000503150232.B938@jtb20b.quns.cam.ac.uk> <000366b8547a99b9_mailit@mailhub.rrze.uni-erlangen.de> <20000503171627.A1084@jtb20b.quns.cam.ac.uk> <39105209.131E8B4@eurocopter.de> <20000503173256.A1193@jtb20b.quns.cam.ac.uk> <391056D0.957A7360@eurocopter.de> Date: Wed, 03 May 2000 19:37:18 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> > No, this is for the Z80. Could be interesting when I and Andrew join him >> >in the 68k CPU. :) >10 registers. I think they're all 16-bit as well - but I haven't checked >that out just yet. :) Z80 or 68K? The 68K has 8 data and 8 address registers with a 32-bit width, a PC, a PSR, and an additional A7 for supervisor mode. The Z80 has 8 registers (including flags and accumulator) with 8-bit width, with a complete shadow bank. There are further 16-bit registers: 2 index registers (IX, IY), SP, and PC. For comparison, the ARM has 16 GPRs with 32 bit, of which R15 is used as PC. >Neil. -- M.I.K.e My mother loved children -- she would have given anything if I had been one. -- Groucho Marx --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 11:03:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id LAA26857 for dynarec-outgoing; Wed, 3 May 2000 11:03:04 GMT (envelope-from owner-dynarec@synthcom.com) Date: Wed, 3 May 2000 11:03:03 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated In-Reply-To: <000366ba56e79742_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > The Z80 has 8 registers (including flags and accumulator) with 8-bit width, > with a complete shadow bank. There are further 16-bit registers: 2 index > registers (IX, IY), SP, and PC. Well, AF - 8 bit/8 bit flag BC - 16 bit DE - 16 bit HL - 16 bit IX - 16 bit IY - 16 bit SP - 16 bit PC - 16 bit (duh) -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 15:08:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA27757 for dynarec-outgoing; Wed, 3 May 2000 15:08:11 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <000301bfb553$ca098dc0$0100a8c0@lion> From: "Neil Griffiths" To: References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> <20000503150232.B938@jtb20b.quns.cam.ac.uk> <000366b8547a99b9_mailit@mailhub.rrze.uni-erlangen.de> <20000503171627.A1084@jtb20b.quns.cam.ac.uk> <39105209.131E8B4@eurocopter.de> <20000503173256.A1193@jtb20b.quns.cam.ac.uk> <391056D0.957A7360@eurocopter.de> <000366ba56e79742_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: DRFAQ updated Date: Wed, 3 May 2000 21:59:37 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >10 registers. I think they're all 16-bit as well - but I haven't checked > >that out just yet. :) > > Z80 or 68K? 68k. > The 68K has 8 data and 8 address registers with a 32-bit width, a PC, a PSR, > and an additional A7 for supervisor mode. I don't know which registers can be used for what, I just know their names - I had a list in front of me at the time. :) > The Z80 has 8 registers (including flags and accumulator) with 8-bit width, > with a complete shadow bank. There are further 16-bit registers: 2 index > registers (IX, IY), SP, and PC. Well, you could have 16-bit registers on the Z80. I can't remember all of them, but I know I used HL a lot - and that was a 16-bit register. I used know one hell of a lot about the Z80 (ex-demo coder for the CPC, remember?) but my knowledge then extends to the x86, where I am also quite proficient. I know a little 6502 and 6510 (I did a little ASM for the C64 years ago) but I really can't remember much from those. > For comparison, the ARM has 16 GPRs with 32 bit, of which R15 is used as PC. It's annoying that other CPUs have so many registers. It would make optimisations so much easier if we had more registers available! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 15:14:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA27793 for dynarec-outgoing; Wed, 3 May 2000 15:14:30 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <000201bfb553$c79e0c00$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: DRFAQ updated Date: Wed, 3 May 2000 21:52:25 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Yep - and if I'd have read it I'd have said so. But you can't complain > > about it. Just remember, "640k is enough for anybody!". That wouldn't be > > half as amusing if it didn't come from the guy who runs the company that > > produces the most bloated applications I have ever seen! > > Sorry - urban legend. This was said by Thomas Watson Jr. of IBM - not by > Bill Gates. If you think about it, it doesn't make sense. Microsoft didn't > impose the 640K limit - IBM did with the design of the IBM PC. Ah, but I never said that I was talking about Mr. Gates. ;) Okay, I was, but that's not the point. :) The scary thing is that my friend has a transcript of some of the first speeches Gates gave about MS-DOS and it's in one of them. That would imply that either a) They're fake (Mark will be upset!) or b) Gates *did* say it - he just wasn't the first to, Watson was. Ooh. Mysteries! You are right to say that it wouldn't make sense, but seeing as MS and IBM were so closely linked at that time, it actually could make sense. I actually believe you, but that is worrying about the transcripts... Has someone really got that much time on their hands to fake them? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 15:22:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA27877 for dynarec-outgoing; Wed, 3 May 2000 15:22:23 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <000701bfb553$cec9ade0$0100a8c0@lion> From: "Neil Griffiths" To: References: <200005031022.MAA08932@pons.ac.upc.es> Subject: Re: DYNAREC: More ARM emulation Date: Wed, 3 May 2000 22:19:33 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > More info to Neil Griffiths classification doc ;) Uh, I'd forgotten all about that! Hmm... No, I'm not doing it now. It's yet another thing I'll mean to do this weekend - and then forget about. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 15:22:25 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA27885 for dynarec-outgoing; Wed, 3 May 2000 15:22:25 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <000401bfb553$cbe8ae00$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: DRFAQ updated Date: Wed, 3 May 2000 22:01:33 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Well, > > AF - 8 bit/8 bit flag > BC - 16 bit > DE - 16 bit > HL - 16 bit > IX - 16 bit > IY - 16 bit > SP - 16 bit > PC - 16 bit (duh) That's them! That's them! I remember them now! I seem to remember registers like 'A' and 'D' though. Whether that's my memory failing or not, I'm not quite sure. I certainly don't remember *always* using two letters for registers... :o Neil --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 15:22:26 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA27892 for dynarec-outgoing; Wed, 3 May 2000 15:22:26 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <000601bfb553$cde7d960$0100a8c0@lion> From: "Neil Griffiths" To: References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> <39102096.29B24E93@eurocopter.de> <000366b816fa85f3_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: DRFAQ updated Date: Wed, 3 May 2000 22:17:18 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >I can't remember what CPU it emulates. Can anybody enlighten me? > > You wan to be an Englishman? It emulates an ARM processor in user mode. I don't *want* to be an Englishman. I just... am. :o > >Yeah. And you never find the "good" words in there. You know which ones I > >mean. ;) > > You mean the bird-watching related ones? ;-) Maybe. ;) > >Nuh? ;) > > If you don't agree with what I wrote about you then tell me what I should > write instead ;-) Until recently, I really hadn't read, replied or reconsidered any required use of the really special prefix "re". Really, read recent real required reading material (e-mails) from me and see if it's true. Oh yes, I got bored of trying to think of words that started with "re". ;) I don't mind, though I'm not sure it's the best description. Maybe a better one would be "Neil Griffiths - The God of all things related to dynamic recompilation. And women love him too. And he's very modest". Of course, this would be a load of lies, but that isn't the point. ;)) I'm not entirely sure what you'd need to write about me. Tell you what, we'll leave it as it is and see if anything better comes to mind shall we? I've got one for you as well, Mike. "Mike - German guy. Need I say more?" ;p Actually, I have got one for myself now. "Neil Griffiths - Lives in Germany, doesn't speak German. Take that as a metaphor, apply it to dynamic recompilation and that's him". :)) Ooh, don't write that. That's really derogatory. Against me! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 15:23:57 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA27904 for dynarec-outgoing; Wed, 3 May 2000 15:23:57 GMT (envelope-from owner-dynarec@synthcom.com) Date: Wed, 3 May 2000 15:23:56 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated In-Reply-To: <000201bfb553$c79e0c00$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > about it. Just remember, "640k is enough for anybody!". That wouldn't be > > > half as amusing if it didn't come from the guy who runs the company that > > > produces the most bloated applications I have ever seen! > > Sorry - urban legend. This was said by Thomas Watson Jr. of IBM - not by > > Bill Gates. If you think about it, it doesn't make sense. Microsoft didn't > > impose the 640K limit - IBM did with the design of the IBM PC. > Ah, but I never said that I was talking about Mr. Gates. ;) Yes, you did. "come from the guy who runs the company that produces the most bloated applications I have ever seen!". ;-) > The scary thing is that my friend has a transcript of some of the first > speeches Gates gave about MS-DOS and it's in one of them. That would imply > that either > a) They're fake (Mark will be upset!) or > b) Gates *did* say it - he just wasn't the first to, Watson was. a) It's fake. It doesn't make sense that Gates would say something like that. That limitation is a *HARDWARE* issue - not a *SOFTWARE* issue. IBM Made the (stupid) decision to map all their hardware at the top of the address space instead of at the bottom - not Microsoft. And at the time, 640K was enough for anybody. 64K Of RAM was $350. Apps were tiny. No hurting came of it until many years later. It's funny how ridiculous something can sound when you take it out of context, but at the time that statement was plenty truthful. > Ooh. Mysteries! You are right to say that it wouldn't make sense, but seeing > as MS and IBM were so closely linked at that time, it actually could make > sense. I actually believe you, but that is worrying about the transcripts... > Has someone really got that much time on their hands to fake them? Most likely there was more than one person talking at the time of the PC's release and who was talking wound up getting lost. Or it got fabricated. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 15:24:34 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA27914 for dynarec-outgoing; Wed, 3 May 2000 15:24:34 GMT (envelope-from owner-dynarec@synthcom.com) Date: Wed, 3 May 2000 15:24:32 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated In-Reply-To: <000401bfb553$cbe8ae00$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > AF - 8 bit/8 bit flag > > BC - 16 bit > > DE - 16 bit > > HL - 16 bit > > IX - 16 bit > > IY - 16 bit > > SP - 16 bit > > PC - 16 bit (duh) > That's them! That's them! I remember them now! > I seem to remember registers like 'A' and 'D' though. Whether that's my > memory failing or not, I'm not quite sure. I certainly don't remember > *always* using two letters for registers... :o You can use A, B, C, D, E, H, or L individually, but IX/IY/SP/PC were always in a 16 bit fashion. -->Neil ------------------------------------------------------------------------------- Neil Bradley I can tolerate ignorance because it's curable, but Synthcom Systems, Inc. stupidity is forever binding it seems. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 16:24:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA28154 for dynarec-outgoing; Wed, 3 May 2000 16:24:55 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ updated From: Michael Koenig In-Reply-To: <000301bfb553$ca098dc0$0100a8c0@lion> Message-Id: <000366bf19d4fcc2_mailit@mailhub.rrze.uni-erlangen.de> References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> <20000503150232.B938@jtb20b.quns.cam.ac.uk> <000366b8547a99b9_mailit@mailhub.rrze.uni-erlangen.de> <20000503171627.A1084@jtb20b.quns.cam.ac.uk> <39105209.131E8B4@eurocopter.de> <20000503173256.A1193@jtb20b.quns.cam.ac.uk> <391056D0.957A7360@eurocopter.de> <000366ba56e79742_mailit@mailhub.rrze.uni-erlangen.de> <000301bfb553$ca098dc0$0100a8c0@lion> Date: Thu, 04 May 2000 01:18:08 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >68k. >I don't know which registers can be used for what, I just know their names - >I had a list in front of me at the time. :) Data registers: D0-D7 Address registers: A0-A7, where A7 is used as SP and there is a shadowed A7' for superiser mode Else: PC and PSR Apart from PSR (8-bit) all registers are 32-bit in width. >Well, you could have 16-bit registers on the Z80. I can't remember all of >them, but I know I used HL a lot - and that was a 16-bit register. You can combine the 8-bit registers as 16-bit registers. HL is actually a combination of the registers H and L. X86 remodels that with AX consisting of AH and AL, and so on. >Neil. -- M.I.K.e If you are a fatalist, what can you do about it? -- Ann Edwards-Duff --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 16:25:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA28167 for dynarec-outgoing; Wed, 3 May 2000 16:25:01 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ updated From: Michael Koenig In-Reply-To: <000601bfb553$cde7d960$0100a8c0@lion> Message-Id: <000366bf320af002_mailit@mailhub.rrze.uni-erlangen.de> References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> <39102096.29B24E93@eurocopter.de> <000366b816fa85f3_mailit@mailhub.rrze.uni-erlangen.de> <000601bfb553$cde7d960$0100a8c0@lion> Date: Thu, 04 May 2000 01:24:54 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I don't *want* to be an Englishman. I just... am. :o Oh shit! What did you do wrong? Or rather blame your parents! ;-) But you do know the ARM, do you? >Until recently, I really hadn't read, replied or reconsidered any required >use of the really special prefix "re". Really, read recent real required >reading material (e-mails) from me and see if it's true. I know, but I couldn't think of anything better. I couldn't have written: "He likes to go bird-watching in the English garden." >Oh yes, I got bored of trying to think of words that started with "re". ;) xxally? ;-) >I don't mind, though I'm not sure it's the best description. Maybe a better >one would be "Neil Griffiths - The God of all things related to dynamic >recompilation. And women love him too. And he's very modest". Of course, >this would be a load of lies, but that isn't the point. ;)) Are you sure you don't have any German ancestors? You sound just like Münchausen ;-) >I'm not entirely sure what you'd need to write about me. Tell you what, >we'll leave it as it is and see if anything better comes to mind shall we? Ok. When you have the 68K dynarec ready then I know what to write, but I'll accept any earlier hints as well. >I've got one for you as well, Mike. "Mike - German guy. Need I say more?" ;p Why should I credit myself? I might credit my brain, but the characterization would be rather bad... >Actually, I have got one for myself now. "Neil Griffiths - Lives in Germany, >doesn't speak German. Take that as a metaphor, apply it to dynamic >recompilation and that's him". :)) Hehe. >Ooh, don't write that. That's really derogatory. Against me! :o Then I *have* to write it! >Neil. -- M.I.K.e Some people have a way about them that seems to say: "If I have only one life to live, let me live it as a jerk." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 23:28:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA29292 for dynarec-outgoing; Wed, 3 May 2000 23:28:01 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3911175A.906936@eurocopter.de> Date: Thu, 04 May 2000 08:23:22 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > I seem to remember registers like 'A' and 'D' though. Whether that's my > > memory failing or not, I'm not quite sure. I certainly don't remember > > *always* using two letters for registers... :o > > You can use A, B, C, D, E, H, or L individually, but IX/IY/SP/PC were > always in a 16 bit fashion. Thank god! My memory does it again! I was worried I was going mad there, I could remember it! I'm glad I was right. I always remembered being able to pair registers to make 16-bit values - but I never really checked it out. It's amazing how much I've forgotten - but I reckon if I go back and look at some Z80 source code then it'll all come back to me. :) In fact, I think I'll do that today. For nostalgia reasons. Get some Z80 source code. Specifically for the CPC. Hmm. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 23:28:04 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA29301 for dynarec-outgoing; Wed, 3 May 2000 23:28:04 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <391116DD.1C39BA31@eurocopter.de> Date: Thu, 04 May 2000 08:21:17 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Ah, but I never said that I was talking about Mr. Gates. ;) > > Yes, you did. "come from the guy who runs the company that produces the > most bloated applications I have ever seen!". ;-) Have you seen OS/2? ;) > a) It's fake. It doesn't make sense that Gates would say something like > that. That limitation is a *HARDWARE* issue - not a *SOFTWARE* issue. IBM > Made the (stupid) decision to map all their hardware at the top of the > address space instead of at the bottom - not Microsoft. And at the time, > 640K was enough for anybody. 64K Of RAM was $350. Apps were tiny. No > hurting came of it until many years later. It's funny how ridiculous > something can sound when you take it out of context, but at the time that > statement was plenty truthful. Yep, I know that. It's just a shame that it isn't true. :) Of course, at the time 640K *was* enough for anybody. It changed with the 286 I think (I saw some with an amazing 1MB of RAM). And then it went up with the 386 (2-4MB), up with the 486 (4-8MB) and with the Pentium it was 16MB until Win '95 came out. Then it became a requirement to have 32MB. :) > > Has someone really got that much time on their hands to fake them? > > Most likely there was more than one person talking at the time of the PC's > release and who was talking wound up getting lost. Or it got fabricated. True enough. I may have to research that. I won't tell my friend, Mark, about it just yet. He's quite the geek and will be quite upset if I tell him that some of his prized possesions are actually fake (or incorrect). :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 23:30:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA29318 for dynarec-outgoing; Wed, 3 May 2000 23:30:59 GMT (envelope-from owner-dynarec@synthcom.com) Date: Wed, 3 May 2000 23:30:58 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated In-Reply-To: <391116DD.1C39BA31@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > Ah, but I never said that I was talking about Mr. Gates. ;) > > Yes, you did. "come from the guy who runs the company that produces the > > most bloated applications I have ever seen!". ;-) > Have you seen OS/2? ;) Maybe slightly overweight, but not obese. ;-) > Of course, at the time 640K *was* enough for anybody. It changed with the > 286 I think (I saw some with an amazing 1MB of RAM). And then it went up > with the 386 (2-4MB), up with the 486 (4-8MB) and with the Pentium it was > 16MB until Win '95 came out. Then it became a requirement to have 32MB. :) You're thinking of NT. Win '95 ran fine in 8MB of RAM. '98 Wasn't so lucky, though... > > > Has someone really got that much time on their hands to fake them? > > Most likely there was more than one person talking at the time of the PC's > > release and who was talking wound up getting lost. Or it got fabricated. > True enough. I may have to research that. I won't tell my friend, Mark, > about it just yet. He's quite the geek and will be quite upset if I tell > him that some of his prized possesions are actually fake (or incorrect). :o It's better to dishearten him instead of having a false saying be continuously spread. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Wed May 3 23:34:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id XAA29341 for dynarec-outgoing; Wed, 3 May 2000 23:34:16 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3911190C.D1F06BA0@eurocopter.de> Date: Thu, 04 May 2000 08:30:36 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> <39102096.29B24E93@eurocopter.de> <000366b816fa85f3_mailit@mailhub.rrze.uni-erlangen.de> <000601bfb553$cde7d960$0100a8c0@lion> <000366bf320af002_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >I don't *want* to be an Englishman. I just... am. :o > > Oh shit! What did you do wrong? Or rather blame your parents! ;-) The amusing thing is that my Dad is a proud Welshman. Okay, that's not amusing by itself - but given that my sister was born on St. George's Day (the patron saint of England) then that is. :) > But you do know the ARM, do you? Of course. I've used many Archimedes machines... Though I haven't used one in a hell of long time! > >Until recently, I really hadn't read, replied or reconsidered any required > >use of the really special prefix "re". Really, read recent real required > >reading material (e-mails) from me and see if it's true. > > I know, but I couldn't think of anything better. I couldn't have written: "He > likes to go bird-watching in the English garden." Okay, I'm quite glad you didn't write that. :) > >I don't mind, though I'm not sure it's the best description. Maybe a better > >one would be "Neil Griffiths - The God of all things related to dynamic > >recompilation. And women love him too. And he's very modest". Of course, > >this would be a load of lies, but that isn't the point. ;)) > > Are you sure you don't have any German ancestors? You sound just like > Münchausen ;-) Possibly, but I know for a fact that I've got Spanish ancestors. Given that my Mum's side of the family is English, it's quite possible that I have German ancestors. It's not so likely from my Dad's side of the family because they're all Welsh. And the Welsh were never defeated in battle, not even when you go as far back as the Romans. Having said that, you can see Wales being trashed all the time if you cared to watch a sports match. Doesn't matter what the sport, if there's a Welsh team then they'll lose. :)) > >I've got one for you as well, Mike. "Mike - German guy. Need I say more?" ;p > > Why should I credit myself? I might credit my brain, but the characterization > would be rather bad... That's okay, we can credit you whenever a link is made to the FAQ. So be careful what you write about me! ;) > >Ooh, don't write that. That's really derogatory. Against me! :o > > Then I *have* to write it! Damn! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu May 4 00:34:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA29535 for dynarec-outgoing; Thu, 4 May 2000 00:34:18 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ updated From: Michael Koenig In-Reply-To: <3911190C.D1F06BA0@eurocopter.de> Message-Id: <000366c60a20ccd8_mailit@mailhub.rrze.uni-erlangen.de> References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> <39102096.29B24E93@eurocopter.de> <000366b816fa85f3_mailit@mailhub.rrze.uni-erlangen.de> <000601bfb553$cde7d960$0100a8c0@lion> <000366bf320af002_mailit@mailhub.rrze.uni-erlangen.de> <3911190C.D1F06BA0@eurocopter.de> Date: Thu, 04 May 2000 09:34:49 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >The amusing thing is that my Dad is a proud Welshman. Okay, that's not >amusing by itself - but given that my sister was born on St. George's Day >(the patron saint of England) then that is. :) Probably better as if she were born of St. Patrick's Day ;-) >Of course. I've used many Archimedes machines... Though I haven't used one >in a hell of long time! Then you have to visit me, I have a RiscPC ;-) >Possibly, but I know for a fact that I've got Spanish ancestors. Given that >my Mum's side of the family is English, it's quite possible that I have >German ancestors. It's not so likely from my Dad's side of the family >because they're all Welsh. And the Welsh were never defeated in battle, not >even when you go as far back as the Romans. Seems that I missed that aspect of Brithish history. >Having said that, you can see Wales being trashed all the time if you cared >to watch a sports match. Doesn't matter what the sport, if there's a Welsh >team then they'll lose. :)) Hehe. >That's okay, we can credit you whenever a link is made to the FAQ. So be >careful what you write about me! ;) Maybe I could be credited as "Mike the bookwork"? >Neil. -- M.I.K.e It is very difficult to prophesy, especially when it pertains to the future. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu May 4 00:34:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA29544 for dynarec-outgoing; Thu, 4 May 2000 00:34:49 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3911270C.1A85168D@eurocopter.de> Date: Thu, 04 May 2000 09:30:20 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Have you seen OS/2? ;) > > Maybe slightly overweight, but not obese. ;-) Er... SmartSuite? ViaVoice? Er... I can't think of any more IBM applications that are recent! :o > > Of course, at the time 640K *was* enough for anybody. It changed with the > > 286 I think (I saw some with an amazing 1MB of RAM). And then it went up > > with the 386 (2-4MB), up with the 486 (4-8MB) and with the Pentium it was > > 16MB until Win '95 came out. Then it became a requirement to have 32MB. :) > > You're thinking of NT. Win '95 ran fine in 8MB of RAM. '98 Wasn't so > lucky, though... No, I'm thinking of '95. Let's see. Win '95 (original version) with 8MB RAM. Load MS-DOS Prompt. Takes 4 seconds to give you a prompt (and your HD thrashes). 16MB of RAM, on the other hand, and the MS-DOS prompt is pretty much instant. I also used IE3 and Netscape 3 in the original '95 with 8MB of RAM. Terrible performance. Much better with 16MB... > > True enough. I may have to research that. I won't tell my friend, Mark, > > about it just yet. He's quite the geek and will be quite upset if I tell > > him that some of his prized possesions are actually fake (or incorrect). :o > > It's better to dishearten him instead of having a false saying be > continuously spread. ;-) Actually, I may enjoy it. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu May 4 00:39:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA29566 for dynarec-outgoing; Thu, 4 May 2000 00:39:38 GMT (envelope-from owner-dynarec@synthcom.com) Date: Thu, 4 May 2000 00:39:37 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated In-Reply-To: <3911270C.1A85168D@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > with the 386 (2-4MB), up with the 486 (4-8MB) and with the Pentium it was > > > 16MB until Win '95 came out. Then it became a requirement to have 32MB. :) > > You're thinking of NT. Win '95 ran fine in 8MB of RAM. '98 Wasn't so > > lucky, though... > No, I'm thinking of '95. Let's see. Win '95 (original version) with 8MB > RAM. Load MS-DOS Prompt. Takes 4 seconds to give you a prompt (and your HD > thrashes). 16MB of RAM, on the other hand, and the MS-DOS prompt is pretty > much instant. Um... no... I ran Win '95 on several machines configured with only 8MB of RAM and it didn't hit swap. You must've added in a bunch of other shit. The basic OS with everything loaded takes about 6.3MB, and loading a DOS prompt doesn't cause thrashing. I don't know what you did to cause lousy performance on your machine, but it's completely opposite of what I experienced for many years on many machines. > I also used IE3 and Netscape 3 in the original '95 with 8MB of RAM. > Terrible performance. Much better with 16MB... Well yeah - Nutscrape and Internet Exploder are pigs. But that's not Windows 95's fault. Bloated apps know no OS bounds... ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu May 4 00:53:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA29593 for dynarec-outgoing; Thu, 4 May 2000 00:53:52 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <39112B63.9B462ABF@eurocopter.de> Date: Thu, 04 May 2000 09:48:51 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Um... no... I ran Win '95 on several machines configured with only 8MB of > RAM and it didn't hit swap. You must've added in a bunch of other > shit. The basic OS with everything loaded takes about 6.3MB, and loading a > DOS prompt doesn't cause thrashing. I don't know what you did to cause > lousy performance on your machine, but it's completely opposite of what I > experienced for many years on many machines. Well I'm certainly not the only one to experience this and it certainly isn't just the case with my machines. I've seen this on at least 20 machines (some from friends, some from College etc). So maybe you're just exceptionally lucky. ;) > > I also used IE3 and Netscape 3 in the original '95 with 8MB of RAM. > > Terrible performance. Much better with 16MB... > > Well yeah - Nutscrape and Internet Exploder are pigs. But that's not > Windows 95's fault. Bloated apps know no OS bounds... ;-) Ah, but remember. IE is a part of the OS and not an application. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu May 4 01:04:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA29627 for dynarec-outgoing; Thu, 4 May 2000 01:04:10 GMT (envelope-from owner-dynarec@synthcom.com) Date: Thu, 4 May 2000 01:04:09 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated In-Reply-To: <39112B63.9B462ABF@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > shit. The basic OS with everything loaded takes about 6.3MB, and loading a > > DOS prompt doesn't cause thrashing. I don't know what you did to cause > > lousy performance on your machine, but it's completely opposite of what I > > experienced for many years on many machines. > Well I'm certainly not the only one to experience this and it certainly > isn't just the case with my machines. I've seen this on at least 20 > machines (some from friends, some from College etc). So maybe you're just > exceptionally lucky. ;) On all the boxen I've worked on? Hardly. > > > I also used IE3 and Netscape 3 in the original '95 with 8MB of RAM. > > > Terrible performance. Much better with 16MB... > > Well yeah - Nutscrape and Internet Exploder are pigs. But that's not > > Windows 95's fault. Bloated apps know no OS bounds... ;-) > Ah, but remember. IE is a part of the OS and not an application. ;) No, it's not. In '95 it was a completely separate application (the topic of our discussion) that you had to buy in the plus pack. In '98, all of the doc view controls for Java and HTML viewers are either OCX controls or DLLs (as is the internet access DLLs that lots of other applications use) - something that come with the operating system, but aren't inherently part of it. Never you mind that they were PUBLISHED SPECIFICATIONS that were openly available to *ANYONE* who wanted to use them. The thing is that *EVERYTHING* uses them - everything from Word to Excel, etc... So a small piece of it came with the OS that is a shared resource for lots of other programs to use. By the logic above, MFC40.DLL, a DLL that ships with all MS operating systems (and used by lots of applications) is also "part of the operating system", which would make anything that uses it part of the operating system. Of course, that doesn't add up. MSIE As an "application" is nothing more than glue to piece those components and controls together. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu May 4 01:24:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA29670 for dynarec-outgoing; Thu, 4 May 2000 01:24:33 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3911328E.91B5056@eurocopter.de> Date: Thu, 04 May 2000 10:19:26 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> <39102096.29B24E93@eurocopter.de> <000366b816fa85f3_mailit@mailhub.rrze.uni-erlangen.de> <000601bfb553$cde7d960$0100a8c0@lion> <000366bf320af002_mailit@mailhub.rrze.uni-erlangen.de> <3911190C.D1F06BA0@eurocopter.de> <000366c60a20ccd8_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >The amusing thing is that my Dad is a proud Welshman. Okay, that's not > >amusing by itself - but given that my sister was born on St. George's Day > >(the patron saint of England) then that is. :) > > Probably better as if she were born of St. Patrick's Day ;-) That would be fine, no problem with the Irish. I've been out quite a few times now on St. Paddy's day. I still don't like Guinness though... > >Of course. I've used many Archimedes machines... Though I haven't used one > >in a hell of long time! > > Then you have to visit me, I have a RiscPC ;-) But probably not with a 486 DX2/66 - which was the case with the very first RiscPC I ever saw. Which I probably saw before you too! > >Possibly, but I know for a fact that I've got Spanish ancestors. Given that > >my Mum's side of the family is English, it's quite possible that I have > >German ancestors. It's not so likely from my Dad's side of the family > >because they're all Welsh. And the Welsh were never defeated in battle, not > >even when you go as far back as the Romans. > > Seems that I missed that aspect of Brithish history. It's not so interesting. The Welsh got bored of winning and the English got bored of losing, so they signed a treaty to not attack each other. I'm not entirely sure what the Welsh got out of it - but I know that we suddenly had a Prince of Wales. Maybe he was Welsh? I'm not sure, I haven't really studied it! > >That's okay, we can credit you whenever a link is made to the FAQ. So be > >careful what you write about me! ;) > > Maybe I could be credited as "Mike the bookwork"? "Mike the bookworm" sounds better. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu May 4 01:33:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA29704 for dynarec-outgoing; Thu, 4 May 2000 01:33:40 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3911345B.1BBDE70D@eurocopter.de> Date: Thu, 04 May 2000 10:27:07 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > On all the boxen I've worked on? Hardly. We've got remarkably different experiences then. :) > > Ah, but remember. IE is a part of the OS and not an application. ;) > > No, it's not. Yeah, I know - that's why I put the winking smilie thing there. :) > In '95 it was a completely separate application (the topic of our > discussion) that you had to buy in the plus pack. Actually, IE2 came with Win '95. And if it didn't then I had some freaky CD that had it on, because it was installed along with everything else. IE3 came with OSR2 (though I think you're right in saying it came with the Plus pack). > So a small piece of it came with the OS that is a shared resource for lots > of other programs to use. By the logic above, MFC40.DLL, a DLL that ships > with all MS operating systems (and used by lots of applications) is also > "part of the operating system", which would make anything that uses it > part of the operating system. Of course, that doesn't add up. Of course. I was only winding you up. It worked. ;) > MSIE As an "application" is nothing more than glue to piece those > components and controls together. Yep. I was merely referring to MS' argument that IE is part of the OS. That tune changed, but that is what they did claim in court. It isn't, it is - as you say - an application. I know that, you know that, we all know that. This is one thing that MS *did* say that I find funny. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu May 4 01:33:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA29713 for dynarec-outgoing; Thu, 4 May 2000 01:33:45 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <003701bfb5a3$0551b200$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: DRFAQ updated Date: Thu, 4 May 2000 09:30:33 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > > AF - 8 bit/8 bit flag > > > BC - 16 bit > > > DE - 16 bit > > > HL - 16 bit > > > IX - 16 bit > > > IY - 16 bit > > > SP - 16 bit > > > PC - 16 bit (duh) > > That's them! That's them! I remember them now! > > I seem to remember registers like 'A' and 'D' though. Whether that's my > > memory failing or not, I'm not quite sure. I certainly don't remember > > *always* using two letters for registers... :o > > You can use A, B, C, D, E, H, or L individually, but IX/IY/SP/PC were > always in a 16 bit fashion. > > -->Neil Tut tut, you big fibber! You're forgetting the undocumented IXh/IXl, and IYh/IYl ops. Get back to work on that MZ80 core immediately! ;) Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu May 4 01:45:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA29756 for dynarec-outgoing; Thu, 4 May 2000 01:45:30 GMT (envelope-from owner-dynarec@synthcom.com) Date: Thu, 4 May 2000 01:45:28 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated In-Reply-To: <3911345B.1BBDE70D@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > In '95 it was a completely separate application (the topic of our > > discussion) that you had to buy in the plus pack. > Actually, IE2 came with Win '95. And if it didn't then I had some freaky CD > that had it on, because it was installed along with everything else. I guess you did. You're going to find this surprisingly sickening, but I just installed Win 95 on a boxen downstairs. No Internet Exploder in sight. OSR2 Did have it or some version of it. > > with all MS operating systems (and used by lots of applications) is also > > "part of the operating system", which would make anything that uses it > > part of the operating system. Of course, that doesn't add up. > Of course. I was only winding you up. It worked. ;) Aha! Gotcha. Well, it's not widely understood and I'm really getting sick of the know-nothings professing like they have a fucking clue about it and hopping on the anti-Microsoft bandwagon just to be part of the tirade. > > MSIE As an "application" is nothing more than glue to piece those > > components and controls together. > Yep. I was merely referring to MS' argument that IE is part of the OS. That > tune changed, but that is what they did claim in court. It isn't, it is - > as you say - an application. I know that, you know that, we all know that. > This is one thing that MS *did* say that I find funny. >From some of the transcripts I saw, I thought there was a *LOT* of miscommunication, and what was defined as an application and what was defined as a resource wasn't clearly noted anywhere that I could see. You can bet your ass that if I created an OS and included those DLLs so I can now publish my help text on the web and on my OS's CD, and was told by the courts to remove it, I'd tell them to fuck off. The problem is the court didn't make the distinction as to what was or wasn't "IE". I'm also annoyed by the fact that people aren't going after Apple and AOL for the same things that Microsoft is getting nailed for. Grr... I'm certainly no MS sympathizer, but they don't deserve that much shit. Netscape deserves a *LOT* of shit for Netscape 6. It's a joke. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu May 4 02:42:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA30032 for dynarec-outgoing; Thu, 4 May 2000 02:42:39 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <39114398.C39A0D9@eurocopter.de> Date: Thu, 04 May 2000 11:32:08 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: DRFAQ updated References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Actually, IE2 came with Win '95. And if it didn't then I had some freaky CD > > that had it on, because it was installed along with everything else. > > I guess you did. You're going to find this surprisingly sickening, but I > just installed Win 95 on a boxen downstairs. No Internet Exploder in > sight. OSR2 Did have it or some version of it. Seriously?! Er... My original Win '95 really does install IE2 along with it. Erm... Only thing I can think of is that my CD is European and they did something different when they released '95 over here. Otherwise it's really scary. I could give you CRCs of the .CAB files if I was in the UK so we could guess what is different, but I can't do that right now. All I can say is that the only reason I've ever used IE2 is because of my old '95 CD... Scary! :o > > Of course. I was only winding you up. It worked. ;) > > Aha! Gotcha. Well, it's not widely understood and I'm really getting sick > of the know-nothings professing like they have a fucking clue about it and > hopping on the anti-Microsoft bandwagon just to be part of the > tirade. No, I completely agree. I'm sure if you were to look through old e-mails in mailing lists like Retrocade (and quite possibly Dynarec!) that I don't hate MS. I use their software every day. I believe IE5 to be the best browser around for the PC at the moment. I like Opera - but IE5 does what I need it to do and does it fast. Windows is an impressive feat of programming when you consider the amount of time it was written in. Okay, there are bugs - but at least they're being fixed. I don't agree with their business practices for the most part - but I do use their products because they are the best products for me. I have never followed a crowd just for followings sake - which appears to be the main reason why most people are doing it now. MS have some impressive products and so long as they're right for me then I'm going to use them. Besides, my computing life would be nowhere near as much fun if I didn't have to battle the crashes. ;) > > Yep. I was merely referring to MS' argument that IE is part of the OS. That > > tune changed, but that is what they did claim in court. It isn't, it is - > > as you say - an application. I know that, you know that, we all know that. > > This is one thing that MS *did* say that I find funny. > > From some of the transcripts I saw, I thought there was a *LOT* of > miscommunication, and what was defined as an application and what was > defined as a resource wasn't clearly noted anywhere that I could see. Yes, I agree with you here. > You can bet your ass that if I created an OS and included those DLLs so I > can now publish my help text on the web and on my OS's CD, and was told by > the courts to remove it, I'd tell them to fuck off. The problem is the > court didn't make the distinction as to what was or wasn't "IE". Yes, exactly - and it was a big problem. To sue them for bad business practices is fine - but I'm not quite sure why they brought IE into the picture... > I'm also annoyed by the fact that people aren't going after Apple and AOL > for the same things that Microsoft is getting nailed for. Grr... I'm > certainly no MS sympathizer, but they don't deserve that much > shit. Netscape deserves a *LOT* of shit for Netscape 6. It's a joke. ;-) No, I agree. And I'd love to see AOL go down for the same thing. Not sure about Apple, at least Apple are competition for MS. Even then, can I make exceptions? I haven't used NS6 mainly because I've found every version of IE superior to the same version of Netscape. IE5 handles brilliantly for me and I'm not going to swap to Netscape. Nope. NOP. XOR AX, AX. SHL BX, 8. And that says it pretty well. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Thu May 4 09:45:27 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id JAA31018 for dynarec-outgoing; Thu, 4 May 2000 09:45:27 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: DRFAQ updated From: Michael Koenig In-Reply-To: <3911328E.91B5056@eurocopter.de> Message-Id: <000366ccf7530037_mailit@mailhub.rrze.uni-erlangen.de> References: <200005030856.KAA06680@pons.ac.upc.es> <000366b40cd5d46b_mailit@mailhub.rrze.uni-erlangen.de> <39102096.29B24E93@eurocopter.de> <000366b816fa85f3_mailit@mailhub.rrze.uni-erlangen.de> <000601bfb553$cde7d960$0100a8c0@lion> <000366bf320af002_mailit@mailhub.rrze.uni-erlangen.de> <3911190C.D1F06BA0@eurocopter.de> <000366c60a20ccd8_mailit@mailhub.rrze.uni-erlangen.de> <3911328E.91B5056@eurocopter.de> Date: Thu, 04 May 2000 17:50:38 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >That would be fine, no problem with the Irish. I've been out quite a few >times now on St. Paddy's day. Ok. >I still don't like Guinness though... Never tasted it... >> Then you have to visit me, I have a RiscPC ;-) >But probably not with a 486 DX2/66 - which was the case with the very first >RiscPC I ever saw. Which I probably saw before you too! I don't think so. I had my 486SX/33 card (the first PC card at all) before the DX2/66 came out, but I had it upgraded to an AMD 5x86/160 later. >It's not so interesting. The Welsh got bored of winning and the English got >bored of losing, so they signed a treaty to not attack each other. I'm not >entirely sure what the Welsh got out of it - but I know that we suddenly >had a Prince of Wales. Is there anyone who can remember all the British kings and princes anyway? >Maybe he was Welsh? I'm not sure, I haven't really studied it! I guess Prince Charles is English... >> Maybe I could be credited as "Mike the bookwork"? >"Mike the bookworm" sounds better. :) That's what I meant, but I was half asleep when I wrote that mail... >Neil. -- M.I.K.e "I'd love to go out with you, but I've been scheduled for a karma transplant." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri May 5 00:51:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA34061 for dynarec-outgoing; Fri, 5 May 2000 00:51:01 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005050753.JAA29689@pons.ac.upc.es> Subject: DYNAREC: Crusoe In-Reply-To: <000366ccf7530037_mailit@mailhub.rrze.uni-erlangen.de> "from Michael Koenig at May 4, 2000 05:50:38 pm" To: dynarec@synthcom.com Date: Fri, 5 May 2000 09:53:38 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com I know Transmeta marketing campaign it's hated everywhere (I also hate it) but I think it's still insteresting to try to learn about that "Code Morpher software" (it seems as they can't copyright dynamic binary translation they found a more sound name). If only a half of what they say Code Morpher is implementing it's true, we have found the more developed and complex dynarec ever made. And I also think that five years working on it (Transmeta was created in 1995) it's enough time to investigate a lot about dynarec. Therefore I'm being studying Crusoe docs all this week. For sure they are too vague, there is no real info about Crusoe CPU or Code Morpher software. They only talk about 3 or so hardware implementations to help dynarec (but that hardware isn't nothing new, but the same hardware P-II has software controlled). And when they talk about Code Morpher they are a lot of more imprecise, a dynarec with a profiler and an optimizer. They talk about a lot of kinds of optimizations, but are they really implemented? Last night I was trying to read Transmeta US Patent but I can't understand all that legal crap. What the patent is for? Patenting the combination of a processor and a software to emulate another architecture behaviour? This is nothing new, how can be patented? The patent doc also talks about a lot of kind of optimizations, since compiler theory optimizations to reordering, and others. I can't see how all this optimizations can be implemented. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri May 5 01:04:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA34114 for dynarec-outgoing; Fri, 5 May 2000 01:04:52 GMT (envelope-from owner-dynarec@synthcom.com) Date: Fri, 5 May 2000 01:04:50 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Crusoe In-Reply-To: <200005050753.JAA29689@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Last night I was trying to read Transmeta US Patent but I can't understand all > that legal crap. What the patent is for? Patenting the combination of a > processor and a software to emulate another architecture behaviour? This is > nothing new, how can be patented? You can patent anything that hasn't been patented, even if it's a common idea. Most often you'll get it rejected if it's too common, but we have a patent office in the US that grants patent for faster-than-light communication devices and blinking the cursor using an XOR instruction. > The patent doc also talks about a lot of kind of optimizations, since > compiler theory optimizations to reordering, and others. I can't see > how all this optimizations can be implemented. Nothing they are doing is revolutionary or new. I'd venture a guess that they are in many violations of Intel's patents, as many of the techniques they are touting as "new" were done in the early model Pentiums in the early 90's (and probably elsewhere, too). In short: Crusoe is a marketing ploy - nothing more. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri May 5 01:17:03 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA34143 for dynarec-outgoing; Fri, 5 May 2000 01:17:03 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <001301bfb669$d409da20$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Crusoe Date: Fri, 5 May 2000 09:13:42 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Last night I was trying to read Transmeta US Patent but I can't understand all > > that legal crap. What the patent is for? Patenting the combination of a > > processor and a software to emulate another architecture behaviour? This is > > nothing new, how can be patented? > > You can patent anything that hasn't been patented, even if it's a common > idea. Most often you'll get it rejected if it's too common, but we have a > patent office in the US that grants patent for faster-than-light > communication devices and blinking the cursor using an XOR instruction. FTL communications? When did we discover that? I really must subscribe to New Scientist... > In short: Crusoe is a marketing ploy - nothing more. Too right. "Never mind about the product. Look who we've got working for us, guys. It's Linus! Wow! We must be great!" > -->Neil Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri May 5 01:24:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA34191 for dynarec-outgoing; Fri, 5 May 2000 01:24:39 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005050827.KAA30462@pons.ac.upc.es> Subject: Re: DYNAREC: Crusoe In-Reply-To: "from Neil Bradley at May 5, 2000 01:04:50 am" To: dynarec@synthcom.com Date: Fri, 5 May 2000 10:27:14 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > You can patent anything that hasn't been patented, even if it's a common > idea. Most often you'll get it rejected if it's too common, but we have a > patent office in the US that grants patent for faster-than-light > communication devices and blinking the cursor using an XOR instruction. > I can say now I hate patent offices. Too legal crap mixed with too much stupidity. Patent offices could be useful if they weren't carried as they are actually carried. > > The patent doc also talks about a lot of kind of optimizations, since > > compiler theory optimizations to reordering, and others. I can't see > > how all this optimizations can be implemented. > > Nothing they are doing is revolutionary or new. I'd venture a guess that > they are in many violations of Intel's patents, as many of the techniques > they are touting as "new" were done in the early model Pentiums in the > early 90's (and probably elsewhere, too). > > In short: Crusoe is a marketing ploy - nothing more. > I'm feeling something similar. All hardware techniques they have implemented aren't new: every out-of-order processor has a buffer for delayed writes, hardware register renaming (what they call shadowing) is already implemented in Pentium, use the MMU to write protect translated pages makes me laugh it's too obvious, and so on. They only take the same hardware and make it software controlled. IA-64 is already based in the same philosophy. And they don't talk about specific or really new optimizationn techniques. All about Code Morpher it's too vague, and even in the patent doc they only talk in general about dynarec, optimizations and previous works made. They don't say what are they really doing. There is any Crusoe product already released? But what I can't understand how the patent office has admited such a patent. BTW, as Code Morpher is now a TradeMark noone else can use it, we can still thank they didn't register "dynarec" ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri May 5 01:28:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA34220 for dynarec-outgoing; Fri, 5 May 2000 01:28:06 GMT (envelope-from owner-dynarec@synthcom.com) Date: Fri, 5 May 2000 01:28:05 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Crusoe In-Reply-To: <200005050827.KAA30462@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > idea. Most often you'll get it rejected if it's too common, but we have a > > patent office in the US that grants patent for faster-than-light > > communication devices and blinking the cursor using an XOR instruction. > I can say now I hate patent offices. Too legal crap mixed with too much > stupidity. Patent offices could be useful if they weren't carried as they > are actually carried. No, they're just too stupid to realize what is a good idea to patent and what isn't. Companies are patenting everything from the ridiculous to the ludicrous. > talk about specific or really new optimizationn techniques. All about Code > Morpher it's too vague, and even in the patent doc they only talk in general > about dynarec, optimizations and previous works made. They don't say what > are they really doing. Do you remember when Sega came out with "BLAST Processing" to give better graphics? They were claiming that "BLAST Processing" was different from the concepts of sprites but > But what I can't understand how the patent office has admited such a patent. > BTW, as Code Morpher is now a TradeMark noone else can use it, we can > still thank they didn't register "dynarec" ;) I thought about registering dynarec.com.... I might still do it if someone doesn't beat me to it. ;-) Hell, we can register "codemorpher.com", too because it's not taken! -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri May 5 01:43:37 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA34262 for dynarec-outgoing; Fri, 5 May 2000 01:43:37 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005050846.KAA31486@pons.ac.upc.es> Subject: Re: DYNAREC: Crusoe In-Reply-To: "from Neil Bradley at May 5, 2000 01:28:05 am" To: dynarec@synthcom.com Date: Fri, 5 May 2000 10:46:10 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > No, they're just too stupid to realize what is a good idea to patent and > what isn't. Companies are patenting everything from the ridiculous to the > ludicrous. > Personally I don't like the will of companys to earn more money. It's better I don't continue in that way, or I will begin to talk about my feelings about capitalism ;) And perhaps are people listening ... :o > Do you remember when Sega came out with "BLAST Processing" to give better > graphics? They were claiming that "BLAST Processing" was different from > the concepts of sprites but > No I don't know anything about this. And your message has stoped just in the more interesting point. I think it will be fun to know what that BLAST Processing it's. > > But what I can't understand how the patent office has admited such a patent. > > BTW, as Code Morpher is now a TradeMark noone else can use it, we can > > still thank they didn't register "dynarec" ;) > > I thought about registering dynarec.com.... I might still do it if someone > doesn't beat me to it. ;-) Hell, we can register "codemorpher.com", too > because it's not taken! > Hey! I think it's a good idea. ;) In Spanish TV there is now an announcement about a company that register Internet Domains for you. The idea of registering "codemorpher.com" is still better. ;) You can then sell it to Transmeta for a lot of money ;)). You can also patent your new technique (better than let some else do it). Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri May 5 01:50:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA34278 for dynarec-outgoing; Fri, 5 May 2000 01:50:40 GMT (envelope-from owner-dynarec@synthcom.com) Date: Fri, 5 May 2000 01:50:39 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Crusoe In-Reply-To: <200005050846.KAA31486@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > No, they're just too stupid to realize what is a good idea to patent and > > what isn't. Companies are patenting everything from the ridiculous to the > > ludicrous. > Personally I don't like the will of companys to earn more money. I can say that large corporations usually patent to use as armament when a company tries to do battle with them - not to make more money. > It's > better I don't continue in that way, or I will begin to talk about my > feelings about capitalism ;) And perhaps are people listening ... :o Oh come on. Capitalism isn't the issue here. Your true feelings are toward the greedy. Capitalism has some major advantages, but you've got to take the bad with the good. If it wasn't for capitalism, 16K would still be a lot of memory. ;-) Wait... Hm... that's beginning to sound good. As a side note, I really like how those low life limey fucks who vandalized a McDonalds were thinking they were being so anticapitalism, but seemed to have no problem with thievery and vandalism. Go figger. It's like abortion protesters killing doctors. > > Do you remember when Sega came out with "BLAST Processing" to give better > > graphics? They were claiming that "BLAST Processing" was different from > > the concepts of sprites but > No I don't know anything about this. And your message has stoped just in > the more interesting point. I think it will be fun to know what that BLAST > Processing it's. But really weren't. They were the same thing. ;-) > > I thought about registering dynarec.com.... I might still do it if someone > > doesn't beat me to it. ;-) Hell, we can register "codemorpher.com", too > > because it's not taken! > Hey! I think it's a good idea. ;) In Spanish TV there is now an announcement > about a company that register Internet Domains for you. Probably won't make any difference in the "real world" of the internet. Networksolutions pretty much has that stuff all bound up. > The idea of > registering "codemorpher.com" is still better. ;) You can then sell it > to Transmeta for a lot of money ;)). You can also patent your new technique > (better than let some else do it). Hm... extortion... I like it! -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri May 5 02:21:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA34507 for dynarec-outgoing; Fri, 5 May 2000 02:21:32 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005050921.LAA00149@pons.ac.upc.es> Subject: Re: DYNAREC: Crusoe In-Reply-To: "from Neil Bradley at May 5, 2000 01:50:39 am" To: dynarec@synthcom.com Date: Fri, 5 May 2000 11:21:47 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > It's > > better I don't continue in that way, or I will begin to talk about my > > feelings about capitalism ;) And perhaps are people listening ... :o > > Oh come on. Capitalism isn't the issue here. Your true feelings are toward > the greedy. Capitalism has some major advantages, but you've got to take > the bad with the good. If it wasn't for capitalism, 16K would still be a > lot of memory. ;-) Wait... Hm... that's beginning to sound good. > This is a dangerous zone ... I can think capitalism has some sense as an economic system, mainly knowing how the people is. Capitalism is good as it means competing and helps people motivate to get better results, but I still think there are better ways to put people to work. You say I don't like the greedy, and I agree with that, but I also think that capitalism it's responsible of a lot of the greedy that there is on the world. And better don't talk about global capitalism, this is a foolness so great that could destroy human race ... :o I think I'm being to serious here. Well some more. I know from chaotic systems order can be arised, but not necesarilly arises. Global capitalism, as ,it's spreaded mainly from US, with a little state control (and I don't say I like state control, but I still want some control) it's a chaotic system, if you think than order will arise without help I think you are wrong. Earth resources are limited and economy can't just grow for ever (what it's one of the main components of capitalism, without economy growing the system is destroyed, just think about inflation). I think planification (in a global sense) it's needed. The whole humanity should decide what are their objectives and then work for realice them. I think I have talked too much ... > As a side note, I really like how those low life limey fucks who > vandalized a McDonalds were thinking they were being so anticapitalism, > but seemed to have no problem with thievery and vandalism. Go figger. It's > like abortion protesters killing doctors. > > > > Do you remember when Sega came out with "BLAST Processing" to give better > > > graphics? They were claiming that "BLAST Processing" was different from > > > the concepts of sprites but > > No I don't know anything about this. And your message has stoped just in > > the more interesting point. I think it will be fun to know what that BLAST > > Processing it's. > > But really weren't. They were the same thing. ;-) > Then they were a bunch of liers ;) How many time were you laughing? > > The idea of > > registering "codemorpher.com" is still better. ;) You can then sell it > > to Transmeta for a lot of money ;)). You can also patent your new technique > > (better than let some else do it). > > Hm... extortion... I like it! > It's really evil ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Fri May 5 12:23:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id MAA36409 for dynarec-outgoing; Fri, 5 May 2000 12:23:47 GMT (envelope-from owner-dynarec@synthcom.com) Date: Fri, 5 May 2000 12:23:46 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Crusoe In-Reply-To: <200005050921.LAA00149@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > I can think capitalism has some sense as an economic system, mainly knowing > how the people is. Capitalism is good as it means competing and helps > people motivate to get better results, but I still think there are better > ways to put people to work. You say I don't like the greedy, and I agree > with that, but I also think that capitalism it's responsible of a lot of > the greedy that there is on the world. That's like saying gambling is responsible for a lot of people going broke with gambling problems. The problem is the people, not the gambling. Same deal with capitalism. What would you recommend as an alternative? One where no one has a chance of bettering themselves from the next guy (I.E. Communism)? > and economy can't just grow for ever (what it's one of the main > components of capitalism, without economy growing the system is > destroyed, just think about inflation). That's not quite true. Depending upon the market for that area of business, if it ebbs too much, it'll start to pick up steam. People don't stop buying food, for example... > I think planification (in a > global sense) it's needed. The whole humanity should decide what are > their objectives and then work for realice them. I think I have > talked too much ... Yeah, right. Like that'll happen. World society (and not just the US - *EVERY* country is guilty of individualism) has not evolved enough for this to have a snowball's chance in hell of working. When you've got countries that are working on racial issues that the US solved over 200 years ago (like Zimbabwe), this will never happen. Don't get me wrong - I wish a free market didn't exist. One where everyone DID band together and combine forces. But that isn't going to happen in this century or probably the next one after that. Individualism is both good and bad (as is banding together). -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun May 7 14:49:52 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA46538 for dynarec-outgoing; Sun, 7 May 2000 14:49:52 GMT (envelope-from owner-dynarec@synthcom.com) Date: Sun, 7 May 2000 14:49:51 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete! [NIC-000507.7e7] (fwd) Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hehehehe. Looks like it worked! I've registered dynarec.com. I'll put up a site with a tiny hard drive in the next few days dedicated to Dynamic recompilation. I'll move the list to there, as well as put up a web service for it. Want to collect your sites and place them here? I can give shell access to contributors. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette ---------- Forwarded message ---------- Date: Sun, 7 May 2000 01:48:36 -0400 (EDT) From: Domain Registration Role Account Reply-To: hostmaster@internic.net To: neil@synthcom.com Cc: marc@ENGINET.COM Subject: Re: Registration of domain name DYNAREC.COM is complete! [NIC-000507.7e7] Congratulations! Registration of the domain name DYNAREC.COM is complete and you are on your way toward making a name for yourself on the Internet! Below you will find a summary of your registration information. This email serves as a receipt for your recent purchase and confirmation that your order is complete. Make the most of your domain name registration! Check out http://www.networksolutions.com/catalog/ to learn more about valuable products, services and free resources offered by Network Solutions designed to help you maximize and promote your Internet presence. Thank you for registering your domain name with Network Solutions! Sincerely, Network Solutions Registration Services the dot com people You have entered into a binding agreement with Network Solutions. Network Solutions may take all remedies available, including collection agencies, to collect fees owed to us. ========================================================================== Neil Bradley (DYNAREC-DOM) 12327 SW Canvasback Way Beaverton, OR 97007 US Domain Name: DYNAREC.COM Administrative Contact: Bradley, Chris N (CNB3) neil@SYNTHCOM.COM (503) 579-3657 Technical Contact: Frajola, Marc (MF46) marc@ENGINET.COM (503) 292-9999 Billing Contact: Bradley, Chris N (CNB3) neil@SYNTHCOM.COM (503) 579-3657 Record last updated on 07-May-2000. Domain servers in listed order: NS.SYNTHCOM.COM 207.202.141.81 NS.RDROP.COM 199.2.210.241 ========================================================================= --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun May 7 15:01:39 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA46586 for dynarec-outgoing; Sun, 7 May 2000 15:01:39 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <000b01bfb877$d97e1100$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete! [NIC-000507.7e7](fwd) Date: Sun, 7 May 2000 23:59:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Hehehehe. Looks like it worked! I've registered dynarec.com. I'll put up a > site with a tiny hard drive in the next few days dedicated to Dynamic > recompilation. I'll move the list to there, as well as put up a web > service for it. Cool! Who did you use to register the domain with, BTW? I have to register a domain soon-ish... Was it direct with Network Solutions or did you use a middle-man? > Want to collect your sites and place them here? I can give shell access to > contributors. Would this involve me actually writing up some documents? :) Anyway, cool idea. Yep. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun May 7 15:21:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA46627 for dynarec-outgoing; Sun, 7 May 2000 15:21:19 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete! [NIC-000507.7e7](fwd) From: Michael Koenig In-Reply-To: Message-Id: <0003670ec777304e_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Mon, 08 May 2000 00:21:43 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Hehehehe. Looks like it worked! I've registered dynarec.com. I'll put up a >site with a tiny hard drive in the next few days dedicated to Dynamic >recompilation. I'll move the list to there, as well as put up a web >service for it. Very cool indeed! ;-) >Want to collect your sites and place them here? I can give shell access to >contributors. Nice idea. I'd like to put my DRFAQ there if you allow me to. >-->Neil -- M.I.K.e Economics is extremely useful as a form of employment for economists. -- John Kenneth Galbraith --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun May 7 16:03:13 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA46776 for dynarec-outgoing; Sun, 7 May 2000 16:03:13 GMT (envelope-from owner-dynarec@synthcom.com) Date: Sun, 7 May 2000 16:03:11 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete! [NIC-000507.7e7](fwd) In-Reply-To: <000b01bfb877$d97e1100$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > site with a tiny hard drive in the next few days dedicated to Dynamic > > recompilation. I'll move the list to there, as well as put up a web > > service for it. > Cool! Who did you use to register the domain with, BTW? I have to register a > domain soon-ish... Was it direct with Network Solutions or did you use a > middle-man? Network solutions. No need to involve any middle men. ;-) > > Want to collect your sites and place them here? I can give shell access to > > contributors. > Would this involve me actually writing up some documents? :) Sure! Of course, I have to put the machine together - hopefully I can get to this fairly quickly... -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun May 7 16:34:17 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA46860 for dynarec-outgoing; Sun, 7 May 2000 16:34:17 GMT (envelope-from owner-dynarec@synthcom.com) Date: Sun, 7 May 2000 16:34:16 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete! [NIC-000507.7e7](fwd) In-Reply-To: <0003670ec777304e_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Want to collect your sites and place them here? I can give shell access to > >contributors. > Nice idea. I'd like to put my DRFAQ there if you allow me to. Of course! You're all welcome to. I'll also move the dynarec mailing list to there as well. Just give me a few to get the machine up and running. I've got to piece it together. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Sun May 7 19:10:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id TAA47197 for dynarec-outgoing; Sun, 7 May 2000 19:10:41 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7](fwd) From: Michael Koenig In-Reply-To: Message-Id: <00036711fa7c11e2_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Mon, 08 May 2000 04:10:44 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Of course! You're all welcome to. I'll also move the dynarec mailing list >to there as well. Great then even I might be able to remember the location of the DRFAQ ;-) >Just give me a few to get the machine up and running. I've got to piece it >together. Sure. >-->Neil -- M.I.K.e Committees have become so important nowadays that subcommittees have to be appointed to do the work. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 01:17:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA47966 for dynarec-outgoing; Mon, 8 May 2000 01:17:18 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005080819.KAA31006@pons.ac.upc.es> Subject: Re: DYNAREC: Crusoe In-Reply-To: "from Neil Bradley at May 5, 2000 12:23:46 pm" To: dynarec@synthcom.com Date: Mon, 8 May 2000 10:19:18 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > That's like saying gambling is responsible for a lot of people going broke > with gambling problems. The problem is the people, not the gambling. Same > deal with capitalism. > You have a point here. > What would you recommend as an alternative? One where no one has a chance > of bettering themselves from the next guy (I.E. Communism)? > It seems Communism doesn't work or maybe people doesn't think or want that Communism works. I'm not sure I have enough knowledge to talk about alternatives. Perhaps a solution will be capitalism at low level and communism at high level. > > and economy can't just grow for ever (what it's one of the main > > components of capitalism, without economy growing the system is > > destroyed, just think about inflation). > > That's not quite true. Depending upon the market for that area of > business, if it ebbs too much, it'll start to pick up steam. People don't > stop buying food, for example... > But there is a limit on how many people could be. And also a limit in how many food can buy or consume. > > I think planification (in a > > global sense) it's needed. The whole humanity should decide what are > > their objectives and then work for realice them. I think I have > > talked too much ... > > Yeah, right. Like that'll happen. World society (and not just the US - > *EVERY* country is guilty of individualism) has not evolved enough for > this to have a snowball's chance in hell of working. When you've got > countries that are working on racial issues that the US solved over 200 > years ago (like Zimbabwe), this will never happen. > Yes, and in Spain still happens something similar that braindead nazis from E.T.A. who are still killing people because they talk against them. I don't know if you know about E.T.A. terrorist group, but do you know that the 'country' they want to free was ever from Spain, in fact they conquered the rest of Spain from the Islam. The nation they talk about was invented last century. And now their local government has nearly the freedom and power of a federated stated (as US states), a lot of different from Ireland. What happens it's they are racist and hate everyone who don't think the same they think, they hate people who come from other regions of Spain. Umm, sorry for that, but this weekend they killed a journalist and I'm a bit angry ... I think there are too many fools on Earth ... > Don't get me wrong - I wish a free market didn't exist. One where everyone > DID band together and combine forces. But that isn't going to happen in > this century or probably the next one after that. Individualism is both > good and bad (as is banding together). > The worst is that sometimes I think we don't have one or two centurys more. I like individualism but everyone with a bit of intelligence has to agree that everyone needs a society to survive, it's imposible to survive out of the civilization (or maybe very hard), perhaps we would try to not destroy it. Individualism comes from genes will to survive, survive to reproduce themselves, but destroying the humanity isn't the best chance of survive. Humans have the capacity to go farther than gene orders, perhaps we use that capacity. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 01:32:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id BAA48019 for dynarec-outgoing; Mon, 8 May 2000 01:32:56 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005080834.KAA01729@pons.ac.upc.es> Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete! [NIC-000507.7e7] (fwd) In-Reply-To: "from Neil Bradley at May 7, 2000 02:49:51 pm" To: dynarec@synthcom.com Date: Mon, 8 May 2000 10:34:06 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL76a (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Hehehehe. Looks like it worked! I've registered dynarec.com. I'll put up a > site with a tiny hard drive in the next few days dedicated to Dynamic > recompilation. I'll move the list to there, as well as put up a web > service for it. > It's really good, there is now an easy to learn domain about dynarec. Dynarec could now be spreaded all around the world ;) Luckyly it wasn't used yet. > Want to collect your sites and place them here? I can give shell access to > contributors. > I think I have nothing to collect ... But MIKE do you think that we could copy dynarec docs from Embra, Shade and so to a single page? It would be easy to access them. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 02:50:32 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA48356 for dynarec-outgoing; Mon, 8 May 2000 02:50:32 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7] (fwd) From: Michael Koenig In-Reply-To: <200005080834.KAA01729@pons.ac.upc.es> Message-Id: <000367185b53c030_mailit@mailhub.rrze.uni-erlangen.de> References: <200005080834.KAA01729@pons.ac.upc.es> Date: Mon, 08 May 2000 11:47:19 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >It's really good, there is now an easy to learn domain about dynarec. >Dynarec could now be spreaded all around the world ;) That's the idea! ;-) >Luckyly it wasn't used yet. Quite astonishing indeed, since nowadays almost every site name seems to be reserved. >I think I have nothing to collect ... But MIKE do you think that we could >copy dynarec docs from Embra, Shade and so to a single page? It would be >easy to access them. I'm not sure if it's legal to copy them, but we can provide links for sure. Maybe we should keep your idea in mind though, as one or two pages I had links for simply disapeared. >Victor Moya -- M.I.K.e If you live to the age of a hundred you have it made because very few people die past the age of a hundred. -- George Burns --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 05:36:20 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA48625 for dynarec-outgoing; Mon, 8 May 2000 05:36:20 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3916B28B.76A51C3F@eurocopter.de> Date: Mon, 08 May 2000 14:26:51 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7](fwd) References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, Whoever released that "ILOVEYOU" virus should go to hell - they shut down my mail server since Thursday because of it! The amount of backlogged mail arriving at the moment is phenomenal. The good thing is that this shows I have the right type of friends - I never recieved this virus at my home account. However, it shows that I have the wrong type of work collegues - I've recieved three copies so far! Mind you, they're all from the France branch (which brings along an interesting question - what are they doing with my e-mail address?). Those damn French... :)) That'll explain why the list activity has been low for so long. :)) > > Cool! Who did you use to register the domain with, BTW? I have to register a > > domain soon-ish... Was it direct with Network Solutions or did you use a > > middle-man? > > Network solutions. No need to involve any middle men. ;-) Okay. So, if you don't mind me asking, how much did that cost? And how long have you got the domain name for? > > Would this involve me actually writing up some documents? :) > > Sure! Damn! ;) > Of course, I have to put the machine together - hopefully I can get to > this fairly quickly... Good luck with it. I'll probably write up some documents this week. Seeing as I can't do any programming at the moment... Be warned, never share a flat with someone else who owns a computer. They may feel at liberty to borrow some software - and then lend it to others. I wouldn't mind - except it was my VC++ CD. So I've done nothing this weekend. GRR! :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 05:39:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA48642 for dynarec-outgoing; Mon, 8 May 2000 05:39:36 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3916B432.E64AFA8D@eurocopter.de> Date: Mon, 08 May 2000 14:33:54 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7] (fwd) References: <200005080834.KAA01729@pons.ac.upc.es> <000367185b53c030_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > >Luckyly it wasn't used yet. > > Quite astonishing indeed, since nowadays almost every site name seems to be > reserved. Yes, this was quite lucky indeed! > >I think I have nothing to collect ... But MIKE do you think that we could > >copy dynarec docs from Embra, Shade and so to a single page? It would be > >easy to access them. > > I'm not sure if it's legal to copy them, but we can provide links for sure. > Maybe we should keep your idea in mind though, as one or two pages I had > links for simply disapeared. The best idea is to archive them and put them on the site. Then if, for any reason, any of the links break and you can't find the new ones then you can link to them. This sounds the best (and most sensible) idea. Hmm. Given that I have actually designed quite a few sites now (some for businesses as well) and been paid for it, maybe I can design some sort of layout for the thing. Just an idea sort of thing. I'd normally do it in raw HTML - but I haven't got the time to mess around with that at the moment, so I'll just use FP2000. Assuming you want me to do this, does anyone have some sort of colour scheme that they'd like to see - or one that they wouldn't? I know that I'm usually inclined to use inordinate amounts of black - I seem to like black. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 07:24:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA48958 for dynarec-outgoing; Mon, 8 May 2000 07:24:01 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7] (fwd) From: Michael Koenig In-Reply-To: <3916B432.E64AFA8D@eurocopter.de> Message-Id: <0003671c389ece5b_mailit@mailhub.rrze.uni-erlangen.de> References: <200005080834.KAA01729@pons.ac.upc.es> <000367185b53c030_mailit@mailhub.rrze.uni-erlangen.de> <3916B432.E64AFA8D@eurocopter.de> Date: Mon, 08 May 2000 16:23:56 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >The best idea is to archive them and put them on the site. Then if, for any >reason, any of the links break and you can't find the new ones then you can >link to them. This sounds the best (and most sensible) idea. I think that's a good compromise. >Hmm. Given that I have actually designed quite a few sites now (some for >businesses as well) and been paid for it, maybe I can design some sort of >layout for the thing. Just an idea sort of thing. If you want to do it we won't hinder you, right NB? ;-) Could you provide any examples of your work? >I'd normally do it in raw HTML - Me too, but as I'm not a designer I somewhat use HTML a bit like LaTeX, which results in well-formated but realtively boring pages... >but I haven't got the time to mess around with that at the moment, >so I'll just use FP2000. Front Page? Not another Microsith product! If I cannot display the pages with NetPositive I'll kill you! ;-) >Assuming you want me to do this, How did you guess? ;-) >does anyone have some sort of colour >scheme that they'd like to see - or one that they wouldn't? Since I'm not my niece, please don't use any pink! ;-) >I know that I'm >usually inclined to use inordinate amounts of black - I seem to like black. >:) I seem to like pages with balck background as well, but it's a bit awkward to print these pages. So either we should provide printable versions of the important documents as well, or stick to a different colour sceme. I guess it would be fairly easy to change the colour settings in my DRFAQ eg. to have two different versions, so I wouldn't have too much problems with a black background. >Neil. -- M.I.K.e Don't go surfing in South Dakota for a while. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 07:24:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id HAA48962 for dynarec-outgoing; Mon, 8 May 2000 07:24:02 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7](fwd) From: Michael Koenig In-Reply-To: <3916B28B.76A51C3F@eurocopter.de> Message-Id: <0003671c1967c646_mailit@mailhub.rrze.uni-erlangen.de> References: <3916B28B.76A51C3F@eurocopter.de> Date: Mon, 08 May 2000 16:15:13 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Whoever released that "ILOVEYOU" virus should go to hell - they shut down >my mail server since Thursday because of it! The amount of backlogged mail >arriving at the moment is phenomenal. I had more luck. But one of my friends who works for Siemens came back from work at 11 PM after the first day (I think he starts at 7 AM), and he told me that at KWU only 1000 computers of 5000 work... I'm glad that I don't use Outlook at home and that there are no computer viruses for BeOS yet. I still wonder why so many use Outlook as it's know to act like a virus and worm magnet! >The good thing is that this shows I have the right type of friends - I >never recieved this virus at my home account. Neither did I. >However, it shows that I have >the wrong type of work collegues - I've recieved three copies so far! There are always three things... BTW, my fiend also told me that one guy at Siemens heard that the virus is a VBScript, so he deleted everything related to VB on the computer and wondered why it didn't work anymore... >Mind >you, they're all from the France branch (which brings along an interesting >question - what are they doing with my e-mail address?). Those damn >French... :)) Hehe. >That'll explain why the list activity has been low for so long. :)) Bad boy! >Okay. So, if you don't mind me asking, how much did that cost? And how long >have you got the domain name for? I guess you have to pay on a per yeat basis for a domain, but I might be wrong. >> > Would this involve me actually writing up some documents? :) >> Sure! >Damn! ;) Why do you ask such rhetorical questions if you don't want to hear the answer? ;-) >Good luck with it. I'll probably write up some documents this week. Seeing >as I can't do any programming at the moment... Be warned, never share a >flat with someone else who owns a computer. They may feel at liberty to >borrow some software - and then lend it to others. I wouldn't mind - except >it was my VC++ CD. So I've done nothing this weekend. GRR! :-/ Since I noticed that you always seem to need the things you just lend someone, I'm very careful who I lend my books and software... >Neil. -- M.I.K.e Bathquake, n.: The violent quake that rattles the entire house when the water faucet is turned on to a certain point. -- Rich Hall, "Sniglets" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 08:29:12 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA49159 for dynarec-outgoing; Mon, 8 May 2000 08:29:12 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3916DB89.F8FB5539@eurocopter.de> Date: Mon, 08 May 2000 17:21:45 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7](fwd) References: <3916B28B.76A51C3F@eurocopter.de> <0003671c1967c646_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > There are always three things... > BTW, my fiend also told me that one guy at Siemens heard that the virus is a > VBScript, so he deleted everything related to VB on the computer and wondered > why it didn't work anymore... Hehehe! > >> > Would this involve me actually writing up some documents? :) > >> Sure! > >Damn! ;) > > Why do you ask such rhetorical questions if you don't want to hear the > answer? ;-) British nature. Sorry. :) > >Good luck with it. I'll probably write up some documents this week. Seeing > >as I can't do any programming at the moment... Be warned, never share a > >flat with someone else who owns a computer. They may feel at liberty to > >borrow some software - and then lend it to others. I wouldn't mind - except > >it was my VC++ CD. So I've done nothing this weekend. GRR! :-/ > > Since I noticed that you always seem to need the things you just lend > someone, I'm very careful who I lend my books and software... Yes, but the point was that I wasn't asked. I didn't even know it had gone! :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 08:48:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id IAA49231 for dynarec-outgoing; Mon, 8 May 2000 08:48:40 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7](fwd) From: Michael Koenig In-Reply-To: <3916DB89.F8FB5539@eurocopter.de> Message-Id: <0003671d618ca37e_mailit@mailhub.rrze.uni-erlangen.de> References: <3916B28B.76A51C3F@eurocopter.de> <0003671c1967c646_mailit@mailhub.rrze.uni-erlangen.de> <3916DB89.F8FB5539@eurocopter.de> Date: Mon, 08 May 2000 17:46:58 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> Why do you ask such rhetorical questions if you don't want to hear the >> answer? ;-) >British nature. Sorry. :) This wasn't mentioned by Grizimek! ;-) >> Since I noticed that you always seem to need the things you just lend >> someone, I'm very careful who I lend my books and software... >Yes, but the point was that I wasn't asked. I didn't even know it had gone! >:-/ That's bad! I guess I would go rampage in that case... >Neil. -- M.I.K.e If you push the "extra ice" button on the soft drink vending machine, you won't get any ice. If you push the "no ice" button, you'll get ice, but no cup. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 13:50:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA50425 for dynarec-outgoing; Mon, 8 May 2000 13:50:53 GMT (envelope-from owner-dynarec@synthcom.com) Date: Mon, 8 May 2000 13:50:52 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Crusoe In-Reply-To: <200005080819.KAA31006@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > What would you recommend as an alternative? One where no one has a chance > > of bettering themselves from the next guy (I.E. Communism)? > It seems Communism doesn't work or maybe people doesn't think or want that > Communism works. I'm not sure I have enough knowledge to talk about > alternatives. Perhaps a solution will be capitalism at low level and > communism at high level. Actually, I think Communism can work, just not Marxist Communism. The reason that any form of Communism can't work in today's world is that Communism's standards are quite minimal. Until we can maintain a very high standard for everyone, Communism can't work. I don't think those who have a high standard of living would want to step it down. I think the only thing that will cause Communism to work is the invention of the replicator. > > That's not quite true. Depending upon the market for that area of > > business, if it ebbs too much, it'll start to pick up steam. People don't > > stop buying food, for example... > But there is a limit on how many people could be. And also a limit in > how many food can buy or consume. But my point is that there is a critical mass point on both ends. If economy gets too bad, something will cause it to boose. And if it gets too good, it'll drop and become volatile. It has a way of rowkring itself out. > century. And now their local government has nearly the freedom and power of > a federated stated (as US states), a lot of different from Ireland. What > happens it's they are racist and hate everyone who don't think the same they > think, they hate people who come from other regions of Spain. Umm, sorry > for that, but this weekend they killed a journalist and I'm a bit angry ... > I think there are too many fools on Earth ... I wasn't aware of this, but it doesn't surprise me one bit. > > Don't get me wrong - I wish a free market didn't exist. One where everyone > > DID band together and combine forces. But that isn't going to happen in > > this century or probably the next one after that. Individualism is both > > good and bad (as is banding together). > The worst is that sometimes I think we don't have one or two centurys more. I'm sure that people thought that during the Dark Ages, but I don't think it's true. If anything, global communication is increasing dramatically. Twenty years ago, I hadn't spoken to anyone outside the US. Now I do it on a daily basis. If anything is going to cause a world melting pot, the Internet is the start. > I like individualism but everyone with a bit of intelligence has to > agree that everyone needs a society to survive, it's imposible to > survive out of the civilization (or maybe very hard), perhaps we would > try to not destroy it. Individualism comes from genes will to survive, > survive to reproduce themselves, but destroying the humanity isn't the > best chance of survive. Humans have the capacity to go farther than > gene orders, perhaps we use that capacity. I see several things that impede the entire world from moving forward: * Race/heritage pride * Religion * Tradition This is what all wars and problems are caused by. I have serious issues with just about every religion. I can't stand racial hatred or racial pride. And people who practice "Tradition" just for the sake of their "heriatge" just annoy the hell out of me. For example, in the Northwest we have the Makaw (sp?) native Americans who are now whaling. There hasn't been whaling for over 70 years in the Northwest, but these boneheads are saying "It's our right! It's our heritage!" when none of the current whalers were even sperm when it was practiced. I was born in this fucking country too, but it doesn't give me the right to practice stupid rituals performed by my ancestors. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 13:51:48 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA50439 for dynarec-outgoing; Mon, 8 May 2000 13:51:48 GMT (envelope-from owner-dynarec@synthcom.com) Date: Mon, 8 May 2000 13:51:47 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete! [NIC-000507.7e7] (fwd) In-Reply-To: <200005080834.KAA01729@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > site with a tiny hard drive in the next few days dedicated to Dynamic > > recompilation. I'll move the list to there, as well as put up a web > > service for it. > It's really good, there is now an easy to learn domain about dynarec. Dynarec > could now be spreaded all around the world ;) Luckyly it wasn't used yet. I couldn't get the damn machine to boot off the CDROM! How annoying! I'm putting together another machine tonight to see if I can get it running. Shouldn't take long! So who here is HTML/graphics savvy? I suck at it, but I can provide nice content. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 13:53:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA50449 for dynarec-outgoing; Mon, 8 May 2000 13:53:16 GMT (envelope-from owner-dynarec@synthcom.com) Date: Mon, 8 May 2000 13:53:15 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7](fwd) In-Reply-To: <3916B28B.76A51C3F@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Whoever released that "ILOVEYOU" virus should go to hell - they shut down > my mail server since Thursday because of it! The amount of backlogged mail > arriving at the moment is phenomenal. How can this happen? Did they just overload it? Anyway, I keep telling people: Don't click on shit you don't know about - even if it's from someone you trust! I haven't seen it here at work nor at home. > Okay. So, if you don't mind me asking, how much did that cost? And how long > have you got the domain name for? $35/year and it's renewable on a yearly basis. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 13:53:59 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA50460 for dynarec-outgoing; Mon, 8 May 2000 13:53:59 GMT (envelope-from owner-dynarec@synthcom.com) Date: Mon, 8 May 2000 13:53:58 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7] (fwd) In-Reply-To: <3916B432.E64AFA8D@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Assuming you want me to do this, does anyone have some sort of colour > scheme that they'd like to see - or one that they wouldn't? I know that I'm > usually inclined to use inordinate amounts of black - I seem to like black. > :) Dark. Slick. Sleek. Easy to use. I personally like black, silver, and blue. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 13:55:38 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA50478 for dynarec-outgoing; Mon, 8 May 2000 13:55:38 GMT (envelope-from owner-dynarec@synthcom.com) Date: Mon, 8 May 2000 13:55:37 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7] (fwd) In-Reply-To: <0003671c389ece5b_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Hmm. Given that I have actually designed quite a few sites now (some for > >businesses as well) and been paid for it, maybe I can design some sort of > >layout for the thing. Just an idea sort of thing. > If you want to do it we won't hinder you, right NB? ;-) No, of course not. ;-) > >but I haven't got the time to mess around with that at the moment, > >so I'll just use FP2000. > Front Page? Not another Microsith product! As long as it doesn't create shitty HTML, I have no problem with it, but FP tends to do that. > I seem to like pages with balck background as well, but it's a bit awkward to > print these pages. So either we should provide printable versions of the > important documents as well, or stick to a different colour sceme. They still print out just fine, though, as long as it's text and not graphcis. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 14:05:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA50541 for dynarec-outgoing; Mon, 8 May 2000 14:05:43 GMT (envelope-from owner-dynarec@synthcom.com) Date: Mon, 8 May 2000 14:05:42 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: Dynarec server Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com I'll be setting it up tonight. Some notes: * It'll be running FreeBSD 4.0 * It'll be running the latest Apache server software * It'll have shell accounts so we can maintain individual pages if needed * It can handle email addresses (I.E. neil@dynarec.com) * It'll have an anonymous FTP server * It'll have about 4 gigabytes free Contributors (or planned contributors), please contact me so we can get password and account stuff set up. So who is our web master? -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 14:36:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA50643 for dynarec-outgoing; Mon, 8 May 2000 14:36:54 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Dynarec server From: Michael Koenig In-Reply-To: Message-Id: <0003672238dc0ccd_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Mon, 08 May 2000 23:33:30 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I'll be setting it up tonight. Some notes: >* It'll be running FreeBSD 4.0 Then it's stable ;-) >* It'll be running the latest Apache server software Cheap and fast. >* It'll have shell accounts so we can maintain individual pages if > needed How about password protected FTP? Could be a bit easier to transfer new pages. BTW, how can I maintain pages via shell account since I normally do that with FTP anyway? >* It can handle email addresses (I.E. neil@dynarec.com) Nice. >* It'll have an anonymous FTP server Good, no crap HTML downloads. >* It'll have about 4 gigabytes free Should be absolutely enough. >Contributors (or planned contributors), please contact me so we can get >password and account stuff set up. You can add me to the list. >So who is our web master? NG? I can make the deputy and hope that Eric doesn't shoot the sheriff ;-) >-->Neil -- M.I.K.e Equal bytes for women. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 14:36:54 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA50651 for dynarec-outgoing; Mon, 8 May 2000 14:36:54 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7] (fwd) From: Michael Koenig In-Reply-To: Message-Id: <0003672209c88e94_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Mon, 08 May 2000 23:20:20 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I couldn't get the damn machine to boot off the CDROM! How annoying! BIOS too old? I'm a bit pissed of as well when I have to use bootdisks on some computers because they won't be able to boot fromthe CD as they should nowadays... >So who here is HTML/graphics savvy? I suck at it, but I can provide nice >content. ;-) I guess NG almost volunteered for it ;-) I could do some additional stuff, but I'm not a perfect web designer... >-->Neil -- M.I.K.e Ducharme's Axiom: If you view your problem closely enough you will recognize yourself as part of the problem. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 14:36:55 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA50660 for dynarec-outgoing; Mon, 8 May 2000 14:36:55 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7] (fwd) From: Michael Koenig In-Reply-To: Message-Id: <0003672210929417_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Mon, 08 May 2000 23:22:14 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Dark. Slick. Sleek. Easy to use. Just what we want ;-) >I personally like black, silver, and blue. ;-) I'm not sure how well silver works on web pages, but I certainly like black and blue as well. Wasn't there a Mike and the Mechanics song called "Black and Blue"? >-->Neil -- M.I.K.e I've known him as a man, as an adolescent and as a child -- sometimes on the same day. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 14:36:56 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA50664 for dynarec-outgoing; Mon, 8 May 2000 14:36:55 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM iscomplete![NIC-000507.7e7] (fwd) From: Michael Koenig In-Reply-To: Message-Id: <0003672224ced808_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Mon, 08 May 2000 23:27:54 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> Front Page? Not another Microsith product! >As long as it doesn't create shitty HTML, I have no problem with it, but >FP tends to do that. That's what I'm afraid of... I don't know if that's related to one of these tools, but recently a page told me that I should use a browser with JavaScript when I tried to view it with NetPositive. So I launched it in Opera (which has JavaScript) only to get another message telling me that my browser isn't supported and I should use the latest Netscape Communicator or Internet Explorer instead. This sucks! >They still print out just fine, though, as long as it's text and not >graphics. Sure? When I did a print preview of a page with white latters and black background in Netscape I only saw a white sheet with the links only because these weren't white. >-->Neil -- M.I.K.e The cost of living hasn't affected its popularity. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 14:41:02 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA50696 for dynarec-outgoing; Mon, 8 May 2000 14:41:01 GMT (envelope-from owner-dynarec@synthcom.com) Date: Mon, 8 May 2000 14:41:00 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7] (fwd) In-Reply-To: <0003672209c88e94_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >I couldn't get the damn machine to boot off the CDROM! How annoying! > BIOS too old? I'm a bit pissed of as well when I have to use bootdisks on > some computers because they won't be able to boot fromthe CD as they should > nowadays... No BIOS update for this motherboard. It doesn't support El Torrito boot sectors. ;-( > >So who here is HTML/graphics savvy? I suck at it, but I can provide nice > >content. ;-) > I guess NG almost volunteered for it ;-) > I could do some additional stuff, but I'm not a perfect web designer... I can do content. I can't do "pretty". More like, I won't do pretty. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 14:42:36 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA50706 for dynarec-outgoing; Mon, 8 May 2000 14:42:36 GMT (envelope-from owner-dynarec@synthcom.com) Date: Mon, 8 May 2000 14:42:34 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec server In-Reply-To: <0003672238dc0ccd_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Forgot to mention majordomo, too... > >* It'll have shell accounts so we can maintain individual pages if > > needed > How about password protected FTP? Could be a bit easier to transfer new > pages. I'm not sure what you mean by this. Each individual who has an account on the site will have the ability to FTP with a username/login of their own (and be dumped to their home directory). Is that what you meant? > BTW, how can I maintain pages via shell account since I normally do that with > FTP anyway? You can FTP to your own account or I could make the HTML "account" writable by all owners. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 15:38:30 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA50972 for dynarec-outgoing; Mon, 8 May 2000 15:38:29 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Dynarec server From: Michael Koenig In-Reply-To: Message-Id: <00036722fdff7d05_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Tue, 09 May 2000 00:28:38 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> How about password protected FTP? Could be a bit easier to transfer new >> pages. >I'm not sure what you mean by this. Each individual who has an account on >the site will have the ability to FTP with a username/login of their own >(and be dumped to their home directory). Is that what you meant? Yup, that's what I mean, silly me! >You can FTP to your own account or I could make the HTML "account" >writable by all owners. Hmm, both has it's advantages and disadvantages. Maybe we could have both: A section for each contributer which can only be changed by the owner, and a "news" section where any member can post important events without having to contact the webmaster. >-->Neil -- M.I.K.e Of all the animals, the boy is the most unmanageable. -- Plato --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Mon May 8 15:38:31 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA50979 for dynarec-outgoing; Mon, 8 May 2000 15:38:31 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM iscomplete![NIC-000507.7e7] (fwd) From: Michael Koenig In-Reply-To: Message-Id: <000367230b7c2a76_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Tue, 09 May 2000 00:32:24 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >No BIOS update for this motherboard. It doesn't support El Torrito boot >sectors. ;-( I didn't even know that there are different types of boot sectors... >[HTML] >I can do content. I can't do "pretty". More like, I won't do pretty. Pretty is a bit relative. I hate those pages that only have cool looks but no content behind, but I'm certainly not a friend of ugly pure-content pages either. It has to be a good comprimise, but I get the opinion that sites are more and more looks then content... >-->Neil -- M.I.K.e District of Columbia pedestrians who leap over passing autos to escape injury, and then strike the car as they come down, are liable for any damage inflicted on the vehicle. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 00:16:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA52190 for dynarec-outgoing; Tue, 9 May 2000 00:16:28 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3917B7A1.4A62B196@eurocopter.de> Date: Tue, 09 May 2000 09:00:49 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Dynarec server References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > * It'll be running FreeBSD 4.0 Okay, cool. I'm pretty used to UNIX now so I shouldn't get stuck. :) > * It'll be running the latest Apache server software Will there be CGI access - and would you mind CGI? It would mean that we could have a HTML entry page to update the news page (and that sort of thing). > * It'll have shell accounts so we can maintain individual pages if > needed Okay, cool. > * It can handle email addresses (I.E. neil@dynarec.com) Er... this would get confusing. Would you mind if you had neilb@dynarec.com and I had neilg@dynarec.com - just so that people don't get confused? > Contributors (or planned contributors), please contact me so we can get > password and account stuff set up. Er... Hi! ;) > So who is our web master? I can do it - unless someone else would like to... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 00:17:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA52201 for dynarec-outgoing; Tue, 9 May 2000 00:17:10 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3917B484.7B44CEB2@eurocopter.de> Date: Tue, 09 May 2000 08:47:32 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM iscomplete![NIC-000507.7e7] (fwd) References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > If you want to do it we won't hinder you, right NB? ;-) > > No, of course not. ;-) I hate putting my foot in it... :)) > > Front Page? Not another Microsith product! > > As long as it doesn't create shitty HTML, I have no problem with it, but > FP tends to do that. I actually thought the same about FP until I saw FP2000. It produces surprisingly good HTML. It's not as good as hand written code - but it doesn't cover the HTML file in crap either. Apparantly the best program for generating really tidy HTML is DreamWeaver3 - which I have a copy of but I've never used. But that's not surprising. I've got games and films there which I also have never used. Maybe I can give it a go tonight... :) > > I seem to like pages with balck background as well, but it's a bit awkward to > > print these pages. So either we should provide printable versions of the > > important documents as well, or stick to a different colour sceme. > > They still print out just fine, though, as long as it's text and not > graphcis. So long as you remember to invert the colours (so that black becomes white) then I agree, they print out fine. And you can set up IE to not print out the background - not sure about Netscape though... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 00:18:33 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA52212 for dynarec-outgoing; Tue, 9 May 2000 00:18:33 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3917B1E0.CC8FAB4E@eurocopter.de> Date: Tue, 09 May 2000 08:36:16 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7](fwd) References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > > Whoever released that "ILOVEYOU" virus should go to hell - they shut down > > my mail server since Thursday because of it! The amount of backlogged mail > > arriving at the moment is phenomenal. > > How can this happen? Did they just overload it? No, they just turned off the server. Like many companies did - including Microsoft! > Anyway, I keep telling people: Don't click on shit you don't know about - > even if it's from someone you trust! I haven't seen it here at work nor at > home. I'd be very concerned if I had recieved an attachment in an e-mail like that. I'd have probably dropped into DOS and gone into the "Inbox" file to see what I'd recieved. And if I didn't know what it was, I'd have left it alone! > > Okay. So, if you don't mind me asking, how much did that cost? And how long > > have you got the domain name for? > > $35/year and it's renewable on a yearly basis. That's... pretty cheap. Hmm... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 00:18:41 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA52220 for dynarec-outgoing; Tue, 9 May 2000 00:18:41 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3917AEEE.43510FE@eurocopter.de> Date: Tue, 09 May 2000 08:23:42 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7] (fwd) References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > So who here is HTML/graphics savvy? I suck at it, but I can provide nice > content. ;-) That'd be me then - unless someone else wants to do it! Urgh, I was going to do something last night as a skeleton design - but I went out drinking instead. And now I need to drink water. A lot of water... :o Anyway, I'll try and finish some sort of skeleton design tonight - then we can all discuss it and see what needs changing and adding etc. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 00:20:46 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id AAA52244 for dynarec-outgoing; Tue, 9 May 2000 00:20:46 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <3917B8D9.D52F7213@eurocopter.de> Date: Tue, 09 May 2000 09:06:01 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@synthcom.com Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7] (fwd) References: <200005080834.KAA01729@pons.ac.upc.es> <000367185b53c030_mailit@mailhub.rrze.uni-erlangen.de> <3916B432.E64AFA8D@eurocopter.de> <0003671c389ece5b_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Could you provide any examples of your work? Probably the most notable piece of work would be http://www.s3p.co.uk - most of the HTML wasn't implemented by me, but the design was all mine. Except the bit at the bottom (the bottom frame), that wasn't. :) > >but I haven't got the time to mess around with that at the moment, > >so I'll just use FP2000. > > Front Page? Not another Microsith product! > If I cannot display the pages with NetPositive I'll kill you! ;-) I'm creating a skeleton page tonight - if you can't see that then I can change. :) > >does anyone have some sort of colour > >scheme that they'd like to see - or one that they wouldn't? > > Since I'm not my niece, please don't use any pink! ;-) Damn! And I wanted to use all of those Barbie graphics too... :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 02:06:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id CAA53000 for dynarec-outgoing; Tue, 9 May 2000 02:06:44 GMT (envelope-from owner-dynarec@synthcom.com) Date: Tue, 9 May 2000 02:06:43 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: Don't freak out Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Northwest Link's uplink is having major problems right now. Should be sorted out in 12 or so hours, so don't go flooding the list with "Test" or any of that other useless message crap. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 05:35:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA53459 for dynarec-outgoing; Tue, 9 May 2000 05:35:46 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM iscomplete![NIC-000507.7e7] (fwd) From: Michael Koenig In-Reply-To: <3917B484.7B44CEB2@eurocopter.de> Message-Id: <0003672e838c57be_mailit@mailhub.rrze.uni-erlangen.de> References: <3917B484.7B44CEB2@eurocopter.de> Date: Tue, 09 May 2000 14:13:23 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I hate putting my foot in it... :)) And we are pleased that you did it ;-) >I actually thought the same about FP until I saw FP2000. It produces >surprisingly good HTML. It's not as good as hand written code - but it >doesn't cover the HTML file in crap either. Astonishing! >Apparantly the best program for generating really tidy HTML is DreamWeaver3 >- which I have a copy of but I've never used. But that's not surprising. >I've got games and films there which I also have never used. Maybe I can >give it a go tonight... :) Might be the right occasion ;-) >Neil. -- M.I.K.e ... But we've only fondled the surface of that subject. -- Virginia Masters --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 05:35:49 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA53469 for dynarec-outgoing; Tue, 9 May 2000 05:35:49 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Dynarec server From: Michael Koenig In-Reply-To: <3917B7A1.4A62B196@eurocopter.de> Message-Id: <0003672e8ceda180_mailit@mailhub.rrze.uni-erlangen.de> References: <3917B7A1.4A62B196@eurocopter.de> Date: Tue, 09 May 2000 14:16:00 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Will there be CGI access - and would you mind CGI? It would mean that we >could have a HTML entry page to update the news page (and that sort of >thing). CGI for news might be handy but who writes the script? >Er... this would get confusing. Would you mind if you had neilb@dynarec.com >and I had neilg@dynarec.com - just so that people don't get confused? Or Neil uses "chris@dynarec.com" but I bet he refuses to do it ;-) >> So who is our web master? >I can do it - unless someone else would like to... Just do it - Neil! ;-) >Neil. -- M.I.K.e "This process can check if this value is zero, and if it is, it does something child-like." -- Forbes Burkowski, Computer Science 454 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 05:35:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA53478 for dynarec-outgoing; Tue, 9 May 2000 05:35:53 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete![NIC-000507.7e7] (fwd) From: Michael Koenig In-Reply-To: <3917B8D9.D52F7213@eurocopter.de> Message-Id: <0003672e90ab2b53_mailit@mailhub.rrze.uni-erlangen.de> References: <200005080834.KAA01729@pons.ac.upc.es> <000367185b53c030_mailit@mailhub.rrze.uni-erlangen.de> <3916B432.E64AFA8D@eurocopter.de> <0003671c389ece5b_mailit@mailhub.rrze.uni-erlangen.de> <3917B8D9.D52F7213@eurocopter.de> Date: Tue, 09 May 2000 14:17:03 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >Probably the most notable piece of work would be http://www.s3p.co.uk - >most of the HTML wasn't implemented by me, but the design was all mine. >Except the bit at the bottom (the bottom frame), that wasn't. :) I'll have a look. >I'm creating a skeleton page tonight - if you can't see that then I can >change. :) OK. >> Since I'm not my niece, please don't use any pink! ;-) >Damn! And I wanted to use all of those Barbie graphics too... :)) BTW, you don't know my niece, do you? >Neil. -- M.I.K.e Non-sequiturs make me eat lampshades. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 05:37:18 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA53487 for dynarec-outgoing; Tue, 9 May 2000 05:37:18 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <006a01bfb98f$6b10fac0$a33b5393@a5s111pc16.fib.upc.es> From: "Victor (R.0.B.) Moya" To: Subject: RE: DYNAREC: Crusoe Date: Tue, 9 May 2000 10:20:18 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3612.1700 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3612.1700 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com -----Mensaje original----- De: Neil Bradley Para: dynarec@synthcom.com Fecha: lunes 8 de mayo de 2000 22:49 Asunto: Re: DYNAREC: Crusoe >Actually, I think Communism can work, just not Marxist Communism. The >reason that any form of Communism can't work in today's world is that >Communism's standards are quite minimal. Until we can maintain a very high >standard for everyone, Communism can't work. I don't think those who have >a high standard of living would want to step it down. > But still Communism it´s better than wild capitalism. You just have to take a look at Rusia. While they were communist they had only the more needed for living, now there are millions without enough food to live. The situation in Rusia I think shows how capitalism can easily become without control, millions of peoples living in poor conditions while some hundred become too rich. >I think the only thing that will cause Communism to work is the invention >of the replicator. > What a replicator is? Something like the machines from Star Trek to produce food and equipment, perhaps direct energy conversion? I think it will take a long time until it will be invented ;) > >But my point is that there is a critical mass point on both ends. If >economy gets too bad, something will cause it to boose. And if it gets too >good, it'll drop and become volatile. It has a way of rowkring itself out. > But this kind of movements and a situation so volatile and without control means a lot of people suffering, think about 29 crack. >I'm sure that people thought that during the Dark Ages, but I don't think >it's true. If anything, global communication is increasing >dramatically. Twenty years ago, I hadn't spoken to anyone outside the >US. Now I do it on a daily basis. If anything is going to cause a world >melting pot, the Internet is the start. > Perhaps we have chance here. About Dark Ages I don´t think they had enough time to worry about future: wars, famine, diseases, a poor education level ... I hope never happen again. >I see several things that impede the entire world from moving forward: > >* Race/heritage pride >* Religion >* Tradition > >This is what all wars and problems are caused by. I have serious issues >with just about every religion. I can't stand racial hatred or racial >pride. And people who practice "Tradition" just for the sake of their >"heriatge" just annoy the hell out of me. > I don´t like any kind of religion. Oh well, more exactly I hate any kind of religion builded around an organization as the Catholicism. Personal religions, well, everyone is a bit crazy I can support that, but organized religions are dangerous. The only religion that I can say could like me are some forms of Budism (as Zen), they are more a way of live than a real religion. Religion has been one of the worst things that have happened to the humanity. And the worst religions of ever have been monoteist religions, and more exactly cristianism and Islam. Sometimes I think that it would be better that Roman or Greece kind of Gods will persisted. They had more variation of religions and I think there were more freedom to choice and less fights about religion. Tradition for me is to mantein something useless only because everybody before you have done it. I know there are good traditions and it´s good to preserve some traditions. But people uses traditions to avoid changes that are needed to create a better world. People is usually afraid of changes, and I can´t understand why. Traditions are an excuse to avoid changes. Also are used to create artificial difference between groups of people: they don´t have the same traditions as us, they are aliens. I hate this way of thinking. >For example, in the Northwest we have the Makaw (sp?) native Americans who >are now whaling. There hasn't been whaling for over 70 years in the >Northwest, but these boneheads are saying "It's our right! It's our >heritage!" when none of the current whalers were even sperm when it was >practiced. I was born in this fucking country too, but it doesn't give me >the right to practice stupid rituals performed by my ancestors. > Oh well, japanese say they kill whales for investigation and some nothern europe countrys say the same. Just something said to justify something that can´t be justified. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 05:41:47 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA53516 for dynarec-outgoing; Tue, 9 May 2000 05:41:47 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <009101bfb990$c1357b00$a33b5393@a5s111pc16.fib.upc.es> From: "Victor (R.0.B.) Moya" To: Subject: RE: DYNAREC: Re: Registration of domain name DYNAREC.COM iscomplete![NIC-000507.7e7] (fwd) Date: Tue, 9 May 2000 10:29:54 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3612.1700 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3612.1700 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >>[HTML] >>I can do content. I can't do "pretty". More like, I won't do pretty. > >Pretty is a bit relative. I hate those pages that only have cool looks but no >content behind, but I'm certainly not a friend of ugly pure-content pages >either. It has to be a good comprimise, but I get the opinion that sites are >more and more looks then content... > For hundreds of pages without content just talk with me ;) I like to write and I don´t worry if what I write has sense ;) Very useful for writing university dissertions, the readers become bored easily and they don´t keep reading. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 05:42:01 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA53524 for dynarec-outgoing; Tue, 9 May 2000 05:42:01 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <00a001bfb991$78274820$a33b5393@a5s111pc16.fib.upc.es> From: "Victor (R.0.B.) Moya" To: Subject: RE: DYNAREC: Dynarec server Date: Tue, 9 May 2000 10:35:00 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3612.1700 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3612.1700 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >> * It can handle email addresses (I.E. neil@dynarec.com) > >Er... this would get confusing. Would you mind if you had neilb@dynarec.com >and I had neilg@dynarec.com - just so that people don't get confused? > Perhaps would be better a shared address spiceboys@dynarec.com ;)) Erm ..., sorry for the joke, I couldn´t stay without saying it. >> Contributors (or planned contributors), please contact me so we can get >> password and account stuff set up. > >Er... Hi! ;) > I would like to contribute but I don´t know how ... are you interested in a Spanish section? And if you want someone to write a document about anything just call me, I´m a bad writer (and my english isn´t perfect) but I like write. >> So who is our web master? > >I can do it - unless someone else would like to... > These time I won´t help you ;) I'm not good with HTML. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 05:52:45 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id FAA53579 for dynarec-outgoing; Tue, 9 May 2000 05:52:45 GMT (envelope-from owner-dynarec@synthcom.com) Subject: RE: DYNAREC: Dynarec server From: Michael Koenig In-Reply-To: <00a001bfb991$78274820$a33b5393@a5s111pc16.fib.upc.es> Message-Id: <0003672f0e083c8c_mailit@mailhub.rrze.uni-erlangen.de> References: <00a001bfb991$78274820$a33b5393@a5s111pc16.fib.upc.es> Date: Tue, 09 May 2000 14:52:06 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I would like to contribute but I don´t know how ... are you interested in a >Spanish section? Well, a Spanish section doesn't provide me with new information, but that's only because my Spanish is so bad! ;-) I think Spanish section would be nice if you think that there could be enough people interested in it. >These time I won´t help you ;) I'm not good with HTML. Seems it's just Neil and me in this case... >Victor Moya -- M.I.K.e Good day for overcoming obstacles. Try a steeplechase. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 06:04:21 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id GAA53630 for dynarec-outgoing; Tue, 9 May 2000 06:04:21 GMT (envelope-from owner-dynarec@synthcom.com) From: Victor Moya del Barrio Message-Id: <200005091306.PAA15459@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec server In-Reply-To: <0003672f0e083c8c_mailit@mailhub.rrze.uni-erlangen.de> "from Michael Koenig at May 9, 2000 02:52:06 pm" To: dynarec@synthcom.com Date: Tue, 9 May 2000 15:06:20 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-MIME-Autoconverted: from 8bit to quoted-printable by pons.ac.upc.es id PAA15459 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by synthcom.com id GAA53627 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >I would like to contribute but I don´t know how ... are you interested in a > >Spanish section? > > Well, a Spanish section doesn't provide me with new information, but that's > only because my Spanish is so bad! ;-) > I think Spanish section would be nice if you think that there could be enough > people interested in it. > People interested in dynarec who doesn't knows English? I can think in anyone. And everyone who knows Spanish will know also English because is the first international language. So in fact it is something useless. I can think in anyone who lives in Spain interested in emulation and don't know english. Perhaps could make the reading more easy (if there is a good translation) but ... It's the problem I have, I don't know how to contribute. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 10:59:16 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id KAA54688 for dynarec-outgoing; Tue, 9 May 2000 10:59:16 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Dynarec server From: Michael Koenig In-Reply-To: <200005091306.PAA15459@pons.ac.upc.es> Message-Id: <000367335863e888_mailit@mailhub.rrze.uni-erlangen.de> References: <200005091306.PAA15459@pons.ac.upc.es> Date: Tue, 09 May 2000 19:59:14 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >People interested in dynarec who doesn't knows English? I can think in >anyone. >And everyone who knows Spanish will know also English because is the first >international language. >So in fact it is something useless. I can think in anyone who lives in >Spain interested in emulation and don't know english. Perhaps could make >the reading more easy (if there is a good translation) but ... I guess you are right. Many people who work with computers understand English relatively well, and those interested in the techincal aspects of emulation should be even better because most of the terms are actually English. >It's the problem I have, I don't know how to contribute. You did many contributions to this list so if you are willing to contribute to the site as well I bet we find something interesting for you. BTW, it seems that the server is up and running. http://www.dynarec.com/ only results in the Apache test page so far, but that shows at least that the site can already be accessed. >Victor Moya -- M.I.K.e You know you've been spending too much time on the computer when your friend misdates a check, and you suggest adding a "++" to fix it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 13:47:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA55431 for dynarec-outgoing; Tue, 9 May 2000 13:47:06 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <009801bfb9ff$b460b920$0100a8c0@lion> From: "Neil Griffiths" To: References: <200005091306.PAA15459@pons.ac.upc.es> <000367335863e888_mailit@mailhub.rrze.uni-erlangen.de> Subject: DYNAREC: Skeleton site Date: Tue, 9 May 2000 22:22:44 +0100 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_0014_01BFBA05.18E496A0" X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com This is a multi-part message in MIME format. ------=_NextPart_000_0014_01BFBA05.18E496A0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Hi, Here is just a quick site that I've knocked up. You can see the structure I'm trying to get to if you look at the links - I like structure. The title can be changed, it was just something I created quickly. I actually think it's quite a nice effect, but it may not be what we're aiming for. I don't care, it only took me something like 5 minutes to actually create. I know I can make it have a semi-3D look as well which may be a little more interesting. But it's not so important. Let me know what you think of the style and colouring! I see no reason why this wouldn't work in all browsers - but if it doesn't, tell me. I'll be surprised though... :) Also, this was created in FP2000. See, I wasn't lying. The HTML is pretty good. I could create much better myself by hand - but it would take me at least twice the time. It's not worth it for this skeleton site! A better introduction should probably be used. Ah well, it was the best I could come up with in the time... Give me some feedback, people! :) Neil. ------=_NextPart_000_0014_01BFBA05.18E496A0 Content-Type: application/x-compressed; name="dynarec.zip" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="dynarec.zip" UEsDBBQAAgAIAMqtqSh4yESF4gwAAHUPAAANAAAAaW1nL3RpdGxlLmdpZu3U+SPTjwPH8fd7s6O5 NjY2hsnswwoTOZJ6byVX9VHuodzkyNznx+etJEffmlslTVE61Jyha0rCp5gzV1kqRymrrxwVn+/3 8198f/g+/obX82Vrv8/C0k8edAZWgH9gsVg8Hk8mk7W1tfX19Y2NjS0tLTkcjoODw+HDh7lcbkBA QHh4eGxsbGpqamZm5pkzZ4qKisrLy6urq2tra5uamh4+fNjZ2dnb2zsyMvLmzZvZ2dnFxcWVlZW/ /+///rdt/aeAf1oAsBsAiKXaCQXtJ7HKTO8uYeXT03gdh3K7uivP8sgmYZNddVefn6PtyaXa11d1 F+o53/Turq/+q5QV0FNu33Dt5UWL2I+T3Q3X+y5DJ3EaDo01/VftCpk+PY03Bq87XXW4FGYsglEK 9WGv25pAJAqLk8NCTVudQRlG0qqw2WDinuZ0wpyQjczCKSpgWX/d0+Nu4iHvR1qNPkXjsMvLPgvK tdwWjW2+Qt5bxIceMitUIiypxcgroFmatf++O6uoQt5qJ2rbHo7CqbCSIL89XgoELP+Nz+DXzyis AlYrndbCk+lSZpWJ1pDH+x9cffxrYpnjkQkisFC4IAmBURvZiAkVeLStFT16dRj/yQnKmJY3FQ7D 8MLaT90Dzy9BgrQ9CDRNCmGi7QXq6dis9+pev8ZW8CCK7sv2ptIlvifIYVVTGPSPWTwsHydlY9DB of77ZFPEgr1ftOF2rhpZ4peg0e+Rn7oJcIdPK3kGQWflTQXvPLTknSY9zAxNRedunnoW4CpDFQBI OQtLpXi5ZXMCjO96BgOqCBYEykMSAImCiADYYC0GUtGep1zdZCFbsSsxYgTEUPYLRIVyJOEkSp0H SbzjgiA2Er2Tft0tXokoAklEbga4l0GHEARfIXiFGurLPgLvagFQFZpqN1H4OdThlA1qWLc/KIuf y8jwO3tDhNYxBIJT5fBdGQieSpE/CoMjihBpwQIwoyLaaXoPkiWdzk5wTWCjL6ez/NHyozecclXw vkcB9P4WrWt+Cqb6KKqwiY0ujt5SIYNunOADsr40f8xYGOMKpqV6Pj+d2aPWfwHbNZuBQmW2Mqp/ BrWJLyh1BLWDM5qN2ug1nCmEPtp+DUIqSZnuxxXkpUCI2l4xEHH32QwQS6x/IM6i0NEQgLLzvYWJ ynXkA7hA0UiN7tOs4jbKLwoBxPMYtXzG5fJv2eqfwg/lblkOfZ93uZUrLlDoKGZ3yVVeZHsr+uY6 5VItnCAQbwpPbvDadcXwQMxaDx/QTuexkZuItt7RWLoU7nlHiXTKpTNgGKG6N4EdjNNLW0I0x+NB XgcqMXk4y35dW2azvwT+UK0lWZnQ9B7vz9I4bBqMiojme5RZjJtF3LDdgl9EX3I0xD+57Cr9AS4Y HoVgBdNZEKURHpYWKId9NdU6/vA0JBNtTf3aIgO4pdfEWwvh7ltBRscQb3MqWsCxnx6TsObSQlPd 8M/9yMwGnZ8tthbyElcMTfBAvbrawO8iCdXh/FuOzTFERA78TGgCnxk+G3DEMR+jkg380gi0x5YJ xl+oXAdpkFkI0w8JApU+L5+HXEgRhExzQCH5dPQGutAFZCyBOLoImDXpWsJL2IFN8mDzVxEyMOkJ YONrSF0d2CcsYk1XKp7UkXO/3zkEt8ALf/YwgbEFsz2GKRKEbbl2Js5WKPOrhwb4T74piOfn+IR7 qJu6/UAHgCho0X2cfYWNlgCISF9w9acWXDBDNWAG8jVFQN37UOB2Esoiowp7O8Y8n2jtC+zkyK5/ zN4HROSaqNuJzsaslrVAtALLKi2vHSLYiekIIGHxEne+Ane7GulfVe3VebIjwf4F0HhVBAaf5+fk 96X9rQwQI3P+akVhLTuNtffhO7WMmCaGrdEMeGgaRG/0MX3aNLGxNbtm8XlJuzbaSoiHWvO3f1U4 /u2i9w+Jv0YYc69VOy6gTmkbI3iY4OSWDJxSEYpPkoEcGTLA9FrDC1HEzVidD2MyNgLZNJfsj8xx 1YkrGcnMwMQK+99scdJmuZSD/IVAx8lVjwOIGlaJ+WcdEA9YJC5HZ0dX9tn/fuK+oDlEMBfH5Hov ZchLxAETQxCifAfe8Ah03GoLZGCz4yDa49ztEy5TWFWRawBFwiVbiOT6gmHZ0IWqMUvowOMd7gVJ RVdjB/2sLrUxkN4mpqMEaNxl6KVoJs76j/gg7k5ltt76v1jFz/QdCcKhE6GY3IhWmP007MVGt53/ 3UBH1L5bSoYlzkUnIjcAd3UHQcx8+AFlTrAN6qbbwvnBqzNUd5BIA+V4DENPJkn13UfHPgUIFCsZ +KI4gOzSl8TeA3OYVWXP/DP1tVb/njccw9XcGI9HYloin+4Sm0gdmkvuykdZ94836xlDiMaJQdEb ztQdnIr/6yaH8ZlYIJtM27ksF7g3f+LoNU5THhFUI2wZ8lRTo1W8Z0dSooZHRb2vHi4GsbJtGDTZ jrzflbvUizV5GYOmHvXfvSN5/Up9BDYtB1Ot1sin2DV6m7i1u/J9TSYOba+vDnlJUgapudayB/ml 90l6aexJF6Mrn0CjjwCaLoFXPBXKsaHw9+yFKe6PhKMytKkNhe14zfdtYwbAU7jZkK+uuEY+QepV dMnY2oMcnUGWOnzrYBB1cua3F5avf6Y1dPQ/flQERn0SXSFKg95KoraieISK4vuhpDozoU+KIyrz /YXDF9uGYkiBNcpmr93lLfve3SR5HZ90x9oXlSZ6H+Ho0HqlM0vPNl56xFDG7U6wRXyZB/MFeqKp 5ifMR299InTPNbSEeU0MnCgya3SfHidcdhqlCmpUXzfc8vrazwybB2zue31ot+YZyO/jEnXx5XpG i8NjadLmWL3wvRiCjaMmuZ67nr+IHmuI8slDKf1Rp0eJjVSImVCnfPmib57St+4z+Lt2t7N+Xtmg ytQrYENJsA2IlSmjK36+fohzMEp9S6UmD7p7lAs3xkPxd0yPWIWcfaS4Zcf7CnmRmcn8QMVBfv9S RAJvvYZHDcmcv+yn7kg1yI+rRSHry6MzI07euixvOrllZfT+2taj1fdYHjfl71fdDE94Pk0R7vpG 67BUSsS9LZ9IZTQUeJhzzls9vI4uE6BHXl6TemBG2o//dHir4dJo52KdXWoxYP1gviR/qEImqqtM /Ej0xUFl/1h3EzLcE+yb0oeZuLz5bguO3F4JeKk+CNxx50X3ivfXDQ2p+t8+B+bSf5UHJt7LrB+q Xzxmu7RhA8f/fJ66oEczUW0JKrAan2+60S18/hBGEDfs12XEvU7PNUrGk72Sjz72Eaw3h+3B8Zaa Fn6G/lhO8Nuzl4XiFeVTunbbHFuMR4ofIxV8D+5C6XxC8yyHQUVxmkEcgJcYhUeDsqwDmFd/PtlH VnSOI62kfnNNl9q6zrmEc94Z8DExsyHJWNHBkWhjHE3rSoAu1pixv8hFZZthcFCAEpYXNpyiLAW8 80mKQGrNN/3nLiAB64avSxYPUIxDMkNnYildSTsPe9zWMXpbgKfbgsqAhaKz3+dl/GADMDIM8mQO XXCzsu34E2lsjXPieqhyZCUsa9NUtc0e143JvLcqb64EKfra7bf7Q3OO0lV4iHYq6stMZhJRe6Nz yKp2WmvuiSNDWUuxJsHlleYimGVPMj9jx4h0A7OWEgudc3brxqpuBtBSi5vDOedL405pk6MIBmqS nVWDp8/W03erqJLgjFPZqcdDUjl03ertnLurKXjASMnXDutLf6esOlccRVpNdxjQkKWBXzmqJGkK tLq1lwCmWQS8ZnvjiGd2k8HiApOJFht2AKU4mjLfclbFCVSWplRlUV8GEhptyBFEwhdtcA4bMaAD lhKiXo/CX6cNRrf99512p4I0WSewmKCmHXe2qP2cK93qLz9vhxZHNRaYHWunMazRk39KzOHrDP2m rq9DJeheLym4U2eum5n03cYlqnIDvGSSYUq3utNuLJdRYJ6T5bjZStaJQYTAu/fUvgdDYH3Bo6rC 2ozChmmN3WuAEgSSIDB5T5E59vA0ko5ngc76oOsmK0Y34XV0ZOAm68Snv6vX0ROeqQy8L5AxLskb 1JMFSzu0S0e/ar7ptyjuzJzzj2y0LX3qV6rUXyhpLEjVyRsa0Dg1ppaKtL42q4riZ7d9L9taxxg0 oTbYFjL8SInOpQ2luZomjLhk8+M5RKihhMKP/63+glGGoYIJqNF5ob7bZRMqqMjyYksyAVlm71V9 vnXtouzVWE1ReCi2vDOZ4Fa6Yzmh/IUlgR2whQDnvbS8hInX1nEH++OzhoJbL0UG0BWFxSoU7ut3 OZOeFT3bzDaP7VZyyrx3rKL1GAnz303qF/mUWNyYqVi1x3t2l5XMXFzLuYhHlKp+iPnbU4BOEWAv CHBtArlxgcIPAV6tUmlHJZFbqZJSSb5QqdZWaUPAA4DVfwBQSwMECgAAAAAA1a2pKAAAAAAAAAAA AAAAAAgAAABpbWcvV0lQL1BLAwQKAAAAAABZrakoAAAAAAAAAAAAAAAABAAAAGltZy9QSwMEFAAC AAgApLGpKKhFDXqBAwAAsgcAAAkAAABpbmRleC5odG19VW1v2zYQ/l6g/+HCof00K27aFV1jGUub pCiWZFkXoB8LSjxJhClSISm7+vc9vihxVri2IR+Pdw+fe+Fp1flerZ8/e/5s1SEXJK169Bw674cF 3o9yW7KPRnvUfnHFdTvyFhnUSVMy1Iu2Yr/0upuGfQ+P3/1xOPQU6o5bh77cSS3Mzi1enfxx8oil eY8l+3Rxc/Hl7O6fL3sQ17K2xpnGw6Ul3S1RgjfF8v+ut9a0n8We34N1cSGkN7Y4N/XY01b09NIr XH9FVZsewRvwHcL5pLnFGjrSDeR5tDpOduRwnBNGYmXEBFVbG2VsyX5bxg+DECstL+OHgZJ6E3fT cpvXH5fhyxLSAFzJVpesJl5o2Xol+xYqYwUSMmE6W5eMdIlH0cqGwU4K35Xs5O2fDDqUbUenvnvN 1i915YbT9AyEhxgnrxTuI2bvV8vlC0oWKuUGXkvdlux1Wg9ciLwmAICVt/E/SOLB/c0LlrWkH9Yr 6gaLTck07lxBBWfrG5JWx3ydiGTL2YxXZvTJ7iyIMCbbyv5sK3LdMu5cRu6l0YedUilnn7w6aI6L nkuVjC+ifNC04ffJbt65PPv3oHEoeuZwFcSDhuFIyvo3JV3Oy3XSwBVpDruhc9So3yrDrch+SQUf gurwgW6sepmP+i/KIHVjUsW8+Lnk795Sw2xzv3ozsEO3Z4eVkx6P4K6TDoSh0DTsuJsptKjRmtEp ukRmpPaFaoIblAo+WC4UTsB1ONV3EbZDNUBjTQ+d7ONW0Bp62Bmxx75C68A0T4jknELI6e9EiwKk 0SAC355viHfgFxwENlJLL7c4I4YAoDE25sT2sdeAfqGtelkDwZt+kCptBFJcT+TVk8rSJKg7Le9H dMXeHblVyB2hIiqKB2Pe8PtAQyRTyYkr4CtFbYag5R4mM1IyFPnQ4ATpZ8TRYTOqAj430YQQ9ObR o+NbBBeqsx9B3K7NqARUGNJFIDNerCKxiKEvgGKPJ0djJTeR7s6GzQAbjmvJbEhBtSZsm/GhJC/v R+NPU2MlGRzWgUQMbzdz2KKdYl0sOo8Un6aCcxvAQ81nOKJylAfJQ3eSYONkjjMuj+ao6eIzyvtD 1oZZGdq26jkdZt8/vX7evNfUhe1feXYUVOIwxqgxP1nZNNSQe9fpHIfRT/ALMOqTjqPaPMW7Tlr4 26CWLTxOyBBJeLNkMb+pfwBQSwECFAAUAAIACADKrakoeMhEheIMAAB1DwAADQAAAAAAAAAAACAA toEAAAAAaW1nL3RpdGxlLmdpZlBLAQIUAAoAAAAAANWtqSgAAAAAAAAAAAAAAAAIAAAAAAAAAAAA EAD/QQ0NAABpbWcvV0lQL1BLAQIUAAoAAAAAAFmtqSgAAAAAAAAAAAAAAAAEAAAAAAAAAAAAEAD/ QTMNAABpbWcvUEsBAhQAFAACAAgApLGpKKhFDXqBAwAAsgcAAAkAAAAAAAAAAQAgALaBVQ0AAGlu ZGV4Lmh0bVBLBQYAAAAABAAEANoAAAD9EAAAAAA= ------=_NextPart_000_0014_01BFBA05.18E496A0-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 13:47:06 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA55432 for dynarec-outgoing; Tue, 9 May 2000 13:47:06 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <009701bfb9ff$b22f3320$0100a8c0@lion> From: "Neil Griffiths" To: References: <200005091306.PAA15459@pons.ac.upc.es> <000367335863e888_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Dynarec server Date: Tue, 9 May 2000 22:17:28 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > I guess you are right. Many people who work with computers understand English > relatively well, and those interested in the techincal aspects of emulation > should be even better because most of the terms are actually English. I feel a bit guilty about that, but I shouldn't when I think about it. We all need a language which we can all communicate in. If it wasn't English then it would be something else... > >It's the problem I have, I don't know how to contribute. > > You did many contributions to this list so if you are willing to contribute > to the site as well I bet we find something interesting for you. Never forget that you're writing this document on dynamic recompilation and their techniques. Surely that's contribution enough? That's a lot of work there... :o > BTW, it seems that the server is up and running. http://www.dynarec.com/ only > results in the Apache test page so far, but that shows at least that the site > can already be accessed. I haven't tried that, but I know that dynarec.com exists - I've telnetted to it already. Can't do it from work so I have to do everything from work. Not really a big problem for me. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 13:57:19 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA55494 for dynarec-outgoing; Tue, 9 May 2000 13:57:18 GMT (envelope-from owner-dynarec@synthcom.com) Date: Tue, 9 May 2000 13:57:17 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Skeleton site In-Reply-To: <009801bfb9ff$b460b920$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Here is just a quick site that I've knocked up. You can see the structure > I'm trying to get to if you look at the links - I like structure. The title > can be changed, it was just something I created quickly. I actually think > it's quite a nice effect, but it may not be what we're aiming for. I don't > care, it only took me something like 5 minutes to actually create. I know I > can make it have a semi-3D look as well which may be a little more > interesting. But it's not so important. Gotcha. I like the layout. The colors are a bit on the muted side, though. ;-) I'd prefer something with a bit more contrast so that your eyes are led to where you want them to read. > Also, this was created in FP2000. See, I wasn't lying. The HTML is pretty > good. I could create much better myself by hand - but it would take me at > least twice the time. It's not worth it for this skeleton site! Why don't you put it up on dynarec.com now? As long as we don't announce it to a million people, it'll be fine. So everyone, keep quiet until we "launch" it! > A better introduction should probably be used. Ah well, it was the best I > could come up with in the time... > Give me some feedback, people! :) Change "michaelk" to "mike" in the mailto on the bottomt of the page and I think the rest works! -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 13:58:11 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id NAA55505 for dynarec-outgoing; Tue, 9 May 2000 13:58:10 GMT (envelope-from owner-dynarec@synthcom.com) Date: Tue, 9 May 2000 13:58:09 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: DYNAREC: BTW... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com For those of you with mail accounts on dynarec.com, pop3 service is now working. Majordomo will come sometime tonight. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 14:06:44 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA55534 for dynarec-outgoing; Tue, 9 May 2000 14:06:44 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <00b001bfba02$72d7a7e0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Skeleton site Date: Tue, 9 May 2000 23:03:43 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, > Gotcha. I like the layout. The colors are a bit on the muted side, > though. ;-) I'd prefer something with a bit more contrast so that your > eyes are led to where you want them to read. Yes, I usually prefer more contrast. I don't normally go for straight black though. I usually lighten it up a bit or have some sort of dark background. The colours do need something doing, though. I'm not sure what. I'll go back in a moment and have a play. :) > > Also, this was created in FP2000. See, I wasn't lying. The HTML is pretty > > good. I could create much better myself by hand - but it would take me at > > least twice the time. It's not worth it for this skeleton site! > > Why don't you put it up on dynarec.com now? As long as we don't announce > it to a million people, it'll be fine. So everyone, keep quiet until we > "launch" it! The e-mail you sent before talking about the directory structures hasn't turned up here yet so I'm not sure of where I'd put it. It got to my work e-mail though... Strange. Can you tell me where to put it? And what's the directory for our own pages? Is it "html" or "home" or something? I can't remember! Mind you... I shouldn't have drunk so much last night! :o > > Give me some feedback, people! :) > > Change "michaelk" to "mike" in the mailto on the bottomt of the page and I > think the rest works! Sure, I'll do that right now. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 14:13:28 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA55575 for dynarec-outgoing; Tue, 9 May 2000 14:13:28 GMT (envelope-from owner-dynarec@synthcom.com) Date: Tue, 9 May 2000 22:15:04 +0100 From: Julian Brown To: dynarec@synthcom.com Subject: DYNAREC: First content! Message-ID: <20000509221503.A4180@jtb20b.quns.cam.ac.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com Hi, I claim first content on the dynarec server - my ARMphetamine page is now at http://www.dynarec.com/~jules... :-) Jules -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 14:22:53 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA55610 for dynarec-outgoing; Tue, 9 May 2000 14:22:53 GMT (envelope-from owner-dynarec@synthcom.com) Message-ID: <00c301bfba04$b1547140$0100a8c0@lion> From: "Neil Griffiths" To: References: <00b001bfba02$72d7a7e0$0100a8c0@lion> Subject: Re: DYNAREC: Skeleton site Date: Tue, 9 May 2000 23:19:47 +0100 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_00C0_01BFBA0D.112A76C0" X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com This is a multi-part message in MIME format. ------=_NextPart_000_00C0_01BFBA0D.112A76C0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Hi, I've fixed Mike's e-mail address and I've altered the image slightly. It still isn't what I'm looking for. It's missing that certain "something". Has anyone got a good picture of a CPU? Especially an old rectangular one like the Z80 used to be. Writing "Dynarec" on one of those might be a good start... Neil. ------=_NextPart_000_00C0_01BFBA0D.112A76C0 Content-Type: application/x-compressed; name="dynarec.zip" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="dynarec.zip" UEsDBBQAAgAIAA+6qSjjatsOxAgAADwLAAANAAAAaW1nL3RpdGxlLmdpZu3T+T/TjQMA8M8uZnNs GHNvOUJoCiF6Ppu5WYsoQ82VOQpN9ZS+msi5XG2uJNbERK6R+5n6OiZn9czriYeeenLVU4onHR59 X/0X3x+e9//wdvd0s3cIU4L4A1vAD0gkEoPB4PF4IpFoZmZmbW3t4OBAoVC8vLz8/PwYDEZERERc XBybzU5JScnIyOByuTwer7Kysra2tqmpqaOjo7+/f3h4eHJyUiaTLSwsLC8vv3//fmtr6/u//vX/ zeLHgB8XAOQOAEHqerRUD6Yj1cxDRltqHmVhDL0qPVoFQ3n4/bHzo613RgoILrm6nm1C6Q1T/4YQ aVvt41JSxFilZ/vdiZv27LV5aXvd1G0wHaXnJa6fueNxwzx0TCx6Wke/43UrtggAVPCqRmB1wJ7Z +/KNfno6AQBHhfW0IfTxJxiiLbFADmj5Iz2r9/TG/euPD6zM95z/G0V7U938x60rsCuc9cSHz5Wy DOd83kKaJAicReSCTxgULhcOIdDzyG2rZTzLLJqphJyeFjtRVdW/z1YegOlf1agv6UzgibzdLeic C88XR93vZjpphn9oH7nhvdWlC7Kz5blXVkj9vcNrs8Y7n+zswU/DQHeSKjKh2Nlnizh42OIEoWdQ HjVNqSe1QuFilFNiYcBxY2aanELHuRmmAQHApgUFEELI/deGCk+oxmfUeHz0NApmaOluhjBWnW3A 5HtKkbITCFtSGRVCqg+EKjfZ65Njk0oF5H2pLYR0fc4zousBfZ7sNCaJuUgWfcl+BUUMjQpcrBgl GFgsQkq/gQgiLbCROE8Mk+ZFJTOYqskvi5dncHi2Ro5DIeS5q3poBTwpphJUSZarPR9oZxRVjvYB 0xBVM8j6dLStlnawpsBYB6JMByHwZJnWEblPZgQIQnVbIbT6tCxAqxInNZvOEtqph+bsHOkJKmcE 5phjoOU0USFsxphTBypk18Y23m2L2gOUZ2rVcxAO07o30ddPvYbkKov55xOSbCKpbKU4PUC7+tyg i6au/G3QN7VQD9KypAAiFpQjReCmmZGFWK72GzkTUAcgCKw9nRzmJuA3QZF6pFJxlNuaELK8dP5u 1/Oxr5AGUs9v5uTuM5XVfOlSXCv/F2WbXQOwqBeDCGV1UAJBvT3ewl9ODY5PVlRPHuySM8bo3UFa 5+4raDbhzV2C/hO8dnORZnOsixW1vNCuv+eN8OKuRZ/mey6aVBCKtWmk963kvzWaVt7IsqUEYqdt 41mvA/eRURZ0CaBgz0nbkSeGiy2pOTU48lOEJ1djEP3hK+Sq7VwjnhqLm/1M3a9a1REezv7rz/nY 2AZMSeD9CUMEOnJ2ZhFbFJP22iTlkN0oanW1kKFFszrB2P61sW48MPodqd3gmFLlEP4w9VSm4JVp 30eanVXvkoHPaBHDabcw+mP/4sB2/UBdhiM18kl2f8CX/0xbXWT5coLvGB60KS1m4QpmGA9WFwZu JUzNO8/PlW7+49Ieq0+hdf7km3Q/ntF+C3x4zlyGjbFUEt+Wrc/+JDi913L+CPNy9jI46iqfsh3s sYPBl309nZOubZMNwNXIb36fSscJ6bOyzTRM7brh95uhO7ntJtjUatJOH/tYK8bIVJ0iDOmBckrL TAZHulWA71o1FZm2miPV15KspMRN/Nnmf2pWMoaKDW5wRwtN9a28UCQ9BiO7cLk1Idz5UtHoC2R5 KWsm7JDfi2nhir3dcD5XIUmH8Xk/Bo60gN59PKG9V0ZWDTRJV5IqrUw/bM5BSgBi8Mkv+Bh30E/Z Mhn1Ula9YZ2Rc5Zw4a2hoU70cJopE4pOLAjQMHM7ylAsVgzj8/FMyMTns/t/UTyFOGpi1zBU6FLF RT6rTB7brEZ4IlYBaS5+2A1VlNP8jRMET2xMJyXyrXRfunBXDTGOSvT3niaKaPyeyx+O8DuMNOza Z5szTaUFpTuP6tDd7nrJ59sqDvBqbvg8KMzHjZvL9909NIKcftHqn4nuiHIxoHTa9/t7rD2r4dPM MNGpzHNwsgC0X/NIbEsQfN1gwr5nP7mGf1emAuXgDLyKnyVm7VJUQ5LZCoCieE0gooaesfP072qy qdyI9BjJddT9izDpYuQsUnPmaVQZ8wix1Lzmy5kl3SEBAk/XNQq7/eGFJ34NWL1X9WccsfBRn1If nDCQvfRAk2IUP7O6ZNA9ItjI+VVoofSmYVvUPcZabf7glD2dryVRIQE/ywVZ+I+kd+Z2FRFz85Qf 7grnj5sUVVyNYrGkX7SdBiz5MGze4YjsgwBBiQgr28mDC8s05F1x3DIXbxhmHddsKoGspyi2jDuA r+ajAu9cDveeKzviqFUtYF2URL8uD8yI1+iZgssoO+pgFlHUVmIbrJsgvnnU8olXqmuj7aD2Edem a9Zugj1h5b0hmSGavoO9ohNKlGMxXiji1ESc+/DjkoHu84k4s3xxjw4dtOY331bziJi5mvabW5Z1 8pgoZjeFM6FqewlFl6g+bQv6si/jfogvWo7S91y8LRI/zTOUJ7TYwTyY7Qp2Vm/F8k9XVTPun73G A5Gyoayv9qXrCInRnODQG7CTqMLK15rzk9ad+i9w0nkUUG+57bOD7H6TjixB+wF7dSLH4WbtOxQC XQD4EGCsCIk/0W63QiV6wmQ/2+WQPwaesScYFgQWv79kgfwZhNkPKF6tGzkQ5ui4XwMog6lOM1fC ZmjXJxWt9/Ji0PGXjqmBQIoykGbyigXTnB5fiGUJaVcqdmE5tSexmLiXVlSoarUY5RwV3cZ1n7Kt 4cFJiZDvwEETSAXYYI1JkxOWPkJngw17E0XHP0Y58T/ldzoXlzxwSpl7YSW99dD3HY87IntNu+D2 hFJnce/b77fnrfuWm7BGqRLe5uQB6vbYrvW1b4vmThIWw6mKCtt+0e/tHaO2fjrDoA+qvQIimH9z bjluv6QfldQb0j25KfMQTKFEbGYMQC6kbP9perh77Njkx5Le7dekgu7xaNpGxdz2kv1U9+SFyY0q HWMCABz8H1BLAwQKAAAAAADVrakoAAAAAAAAAAAAAAAACAAAAGltZy9XSVAvUEsDBAoAAAAAAFmt qSgAAAAAAAAAAAAAAAAEAAAAaW1nL1BLAwQUAAIACAAauqkoSEFl334DAACtBwAACQAAAGluZGV4 Lmh0bX1VW2/UOhB+R+I/TH0ET2fTpVwEdLM6hbYIUXoKVOIROckksepLaju75N8zvqTdgpbdVXY8 nvn8zcWTVe+VXD9+9PjRqkfekLRS6Dn03g8LvB3FpmTvjfao/eKC627kHTKok6ZkqBddxf7qdT0N ux4ef/rDcOgx1D23Dn25FboxW7d4dvTy6B5Lc4Ul+3B2efb15Pr/rzsQn0VtjTOth3NLuiuiBC+K 5e+uV9Z0H5sdvzvr4qwR3tji1NSjoq3o6YWXuP6OsjYKwRvwPcLppLnFGnrSDeR5sDpMduRwmBNG YmWaCaquNtLYkv2zjB8GIVZanscPAyn0TdxNy01ev1+GL0tIA3ApOl2ymnihZeuVUB1UxjZIyITp bF0y0iUeRSdaBlvR+L5kR6/eMOhRdD2d+vo5Wz/VlRuO0zMQHmKcvJK4i5i9ny2XTyhZKKUbeC10 V7LnaT3wpslrAgBYeRv/g9Tcub94wrKW9MN6Rd1gsS2Zxq0rqOBsfUnS6pCvE5FsOZvxyow+2Z0E EcZkW9k/bZtct4w7l5F7YfR+p1TK2Sev9prjQnEhk/FZlPeatvw22c075ydf9hqHomcOF0HcaxiO pKz/kMLlvHxOGrggzX43dI4a9UdluG2yX1LBu6Daf6AbKyXyUd+iDEK3JlXMN3+W/PUraphN7ldv Brbv9myxcsLjAVz3wkFjKDQNW+5mCh1qtGZ0ki6RGal9oZrgEoWEd5Y3EifgOpzq+wjboxygtUZB L1TcClpDDzsjKlQVWgemfUAk5xRCTv8lWhQgjYYm8FX8hngHfsGhwVZo4cUGZ8QQALTGxpxYFXsN 6BfaSokaCN6oQci0EUhxPZGXIpWlSVD3WtyO6IqdO3IlkTtCRZQUD8a84c+BhkimkhNXwHeK2gxB yz1MZqRkSPKhwQnCz4ijw3aUBXxsowkh6Jt7j55vEFyozm4Ecbs2o2ygwpAuApnxYhWJRQx9ARR7 PDkaS3ET6W5t2Ayw4biOzIYUVGfCthnvSvL0djT+ODVWksFhHUjE8LYzhw3aKdbFovNI8WkqOLcB PNR8hiMqB3mQ3HUnCTZO5jjj8miOmj4+o7w7ZG2YlaFtK8XpMPv24fXz5q2mLuz+y7OjoBKHMUaN +cGKtqWG3LlOpziMfoK/gClK2kMsepX1nKr/yaAW3f1wDEGEl0oW80v6F1BLAQIUABQAAgAIAA+6 qSjjatsOxAgAADwLAAANAAAAAAAAAAAAIAC2gQAAAABpbWcvdGl0bGUuZ2lmUEsBAhQACgAAAAAA 1a2pKAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAQAP9B7wgAAGltZy9XSVAvUEsBAhQACgAAAAAAWa2p KAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAQAP9BFQkAAGltZy9QSwECFAAUAAIACAAauqkoSEFl334D AACtBwAACQAAAAAAAAABACAAtoE3CQAAaW5kZXguaHRtUEsFBgAAAAAEAAQA2gAAANwMAAAAAA== ------=_NextPart_000_00C0_01BFBA0D.112A76C0-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 14:32:10 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA55664 for dynarec-outgoing; Tue, 9 May 2000 14:32:10 GMT (envelope-from owner-dynarec@synthcom.com) Date: Tue, 9 May 2000 14:32:09 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Skeleton site In-Reply-To: <00b001bfba02$72d7a7e0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > > Why don't you put it up on dynarec.com now? As long as we don't announce > > it to a million people, it'll be fine. So everyone, keep quiet until we > > "launch" it! > The e-mail you sent before talking about the directory structures hasn't > turned up here yet so I'm not sure of where I'd put it. It got to my work > e-mail though... Strange. Can you tell me where to put it? In /usr/home/html/html. > And what's the > directory for our own pages? Is it "html" or "home" or something? I can't > remember! Mind you... I shouldn't have drunk so much last night! :o It's always: http://www.dynarec.com/~username -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 14:34:23 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id OAA55685 for dynarec-outgoing; Tue, 9 May 2000 14:34:23 GMT (envelope-from owner-dynarec@synthcom.com) Date: Tue, 9 May 2000 14:34:22 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: Re: DYNAREC: Skeleton site In-Reply-To: <00c301bfba04$b1547140$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > Has anyone got a good picture of a CPU? Especially an old rectangular one > like the Z80 used to be. Writing "Dynarec" on one of those might be a good > start... I can take a picture of one with my new hires DC 290 camera. I'll do that tonight. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 15:31:40 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA55998 for dynarec-outgoing; Tue, 9 May 2000 15:31:40 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: BTW... From: Michael Koenig In-Reply-To: Message-Id: <00036736fef02161_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Wed, 10 May 2000 00:20:33 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >For those of you with mail accounts on dynarec.com, pop3 service is now >working. Kewl, we even get POP3. I guess that includes SMTP as well. What's the name of the service, pop3.dynarec.com? >Majordomo will come sometime tonight. I think you want to transfer the list from Synthcom to the new Dynarec server. >-->Neil -- M.I.K.e The problem with any unwritten law is that you don't know where to go to erase it. -- Glaser and Way --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 15:31:42 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id PAA56009 for dynarec-outgoing; Tue, 9 May 2000 15:31:42 GMT (envelope-from owner-dynarec@synthcom.com) Subject: Re: DYNAREC: Skeleton site From: Michael Koenig In-Reply-To: <00c301bfba04$b1547140$0100a8c0@lion> Message-Id: <0003673720ab53bd_mailit@mailhub.rrze.uni-erlangen.de> References: <00b001bfba02$72d7a7e0$0100a8c0@lion> <00c301bfba04$b1547140$0100a8c0@lion> Date: Wed, 10 May 2000 00:29:59 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@synthcom.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com >I've fixed Mike's e-mail address Maybe you want to change my last name to "König" as well ;-) >and I've altered the image slightly. It >still isn't what I'm looking for. It's missing that certain "something". I think the first image looked a bit better... But you were right FP2000 doesn't generate too much HTML crap. >Neil. -- M.I.K.e "For three days after death hair and fingernails continue to grow but phone calls taper off." -- Johnny Carson --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 16:35:00 2000 Received: (from majordom@localhost) by synthcom.com (8.9.3/8.9.3) id QAA56285 for dynarec-outgoing; Tue, 9 May 2000 16:35:00 GMT (envelope-from owner-dynarec@synthcom.com) Date: Tue, 9 May 2000 16:34:59 +0000 (GMT) From: Neil Bradley To: dynarec@synthcom.com Subject: RE: DYNAREC: Crusoe In-Reply-To: <006a01bfb98f$6b10fac0$a33b5393@a5s111pc16.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by synthcom.com id QAA56282 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@synthcom.com > >Actually, I think Communism can work, just not Marxist Communism. The > >reason that any form of Communism can't work in today's world is that > >Communism's standards are quite minimal. Until we can maintain a very high > >standard for everyone, Communism can't work. I don't think those who have > >a high standard of living would want to step it down. > But still Communism it´s better than wild capitalism. It depends upon what you define as "better". Russians before and after the fall of communism were poor. The standard of living in Russia is incredibly low - below what US and Canadian citizens consider to be the poverty level. No one has squat, and the food they do get isn't good food. Sure, they're fed, but that's not living. > You just have > to take a look at Rusia. While they were communist they had only the > more needed for living, now there are millions without enough food to > live. Apples to oranges comparison. You're using a transitional period as an example of capitalism being bad - going from any form to government to another will take years to be fully "accepted" and implemented. > The situation in Rusia I think shows how capitalism can easily > become without control, millions of peoples living in poor conditions > while some hundred become too rich. They were poor before that, and your "example" is flawed. It's lke going on a diet for 2 days and declaring that "it doesn't work". Transitions take time. It also takes decisive leadership - something that Russia has lacked. You're misinterpreting what you're seeing. > >I think the only thing that will cause Communism to work is the invention > >of the replicator. > What a replicator is? Something like the machines from Star Trek to produce > food and equipment, perhaps direct energy conversion? I think it will take > a long time until it will be invented ;) Bingo. Yes. Precisely. > >But my point is that there is a critical mass point on both ends. If > >economy gets too bad, something will cause it to boose. And if it gets too > >good, it'll drop and become volatile. It has a way of rowkring itself out. > But this kind of movements and a situation so volatile and without control > means a lot of people suffering, think about 29 crack. What's 29 crack? Sounds like a bad punk band. > >I'm sure that people thought that during the Dark Ages, but I don't think > >it's true. If anything, global communication is increasing > >dramatically. Twenty years ago, I hadn't spoken to anyone outside the > >US. Now I do it on a daily basis. If anything is going to cause a world > >melting pot, the Internet is the start. > Perhaps we have chance here. About Dark Ages I don´t think they had > enough time to worry about future: wars, famine, diseases, a poor > education level ... I hope never happen again. Yes, but my point is that people find a way to move on regardless of what's going on in their lives or government. > I don´t like any kind of religion. Oh well, more exactly I hate any > kind of religion builded around an organization as the Catholicism. That's bold coming from someone who lives in Spain. ;-) > Personal religions, well, everyone is a bit crazy I can support that, > but organized religions are dangerous. I wouldn't say that exclusively, but I agree with you. Any religion that's built like a business or has a living "leader" is bad news. > The only religion that I can > say could like me are some forms of Budism (as Zen), they are more a > way of live than a real religion. Religion has been one of the worst > things that have happened to the humanity. And the worst religions of > ever have been monoteist religions, and more exactly cristianism and > Islam. Yes, and they have been the source of wars and fighting for thousands of years. The stupid assed middle easterners haven't been able to get their shit together as far back as documented history, and it's all because of stupid ritualistic beliefs. You might call me a racist, but I have trouble with any religion that excludes, promotes superiority, exiles, or doesn't allow the general public (read that, anyone) to become part of it. That knocks out most variants Christianity, Judiasm, Islam, etc... You've crossed the line when you use your religion as a crutch or a weapon to beat someone else down. > Sometimes I think that it would be better that Roman or Greece > kind of Gods will persisted. They had more variation of religions and > I think there were more freedom to choice and less fights about > religion. And their leaders weren't tangible people, either. ;-) > Tradition for me is to mantein something useless only because > everybody before you have done it. I know there are good traditions > and it´s good to preserve some traditions. For example, I think the traditional wedding ceremonies are just fine as traditions, because it works quite well. But other useless traditions, such as wearing little caps or turbans on your head, is just a way to announce that you're a part of something that the next guy isn't. > But people uses traditions > to avoid changes that are needed to create a better world. We call them Republicans, or "Conservatives". > People is > usually afraid of changes, and I can´t understand why. Traditions are > an excuse to avoid changes. Also are used to create artificial > difference between groups of people: they don´t have the same > traditions as us, they are aliens. I hate this way of thinking. Or even worse, "They aren't Jewish, so therefore they are of a lower class than us." > Oh well, japanese say they kill whales for investigation and some > nothern europe countrys say the same. Just something said to justify > something that can´t be justified. It's not the whaling that I was taking issue with. It was the fact that those boneheads are claiming "heritage" that hasn't been practiced in 70 friggin' years, and they had no part in it! -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@synthcom.com. Please direct other ** questions, comments, or problems to neil@synthcom.com. From owner-dynarec@synthcom.com Tue May 9 23:54:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA00273 for dynarec-outgoing; Tue, 9 May 2000 23:54:49 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Tue, 9 May 2000 23:58:50 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: It has moved! Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com The dynarec mailing list on Synthcom has now been moved over to its new home on dynarec.com. Please continue conversation there. It will bounce if sent to the Synthcom address. Enjoy! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 00:01:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA00297 for dynarec-outgoing; Wed, 10 May 2000 00:01:28 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3919093A.2E32E3F1@eurocopter.de> Date: Wed, 10 May 2000 09:01:14 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Fwd: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete! Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, AARGH! You've taken dynarec down on Synthcom. Heh, so when I replied, I got a "User unknown" error. Never mind, I'll forward it to the correct address. :) ---------------- Hi, > > Probably the most notable piece of work would be http://www.s3p.co.uk - > > most of the HTML wasn't implemented by me, but the design was all mine. > > Except the bit at the bottom (the bottom frame), that wasn't. :) > > Hey, I *REALLY* like the look of that page. Thanks. :) Mind you, that took about 2 days to get it exactly as me and Tom (the other guy who worked on it) wanted it. You can get things pretty impressive by spending time on it... I'm glad you like it, it shows that the time was well spent! There's 5 people who work on the site, though I'm usually behind the scenes (fixing CGI, helping people, being in the forum). One of those is German - the scary thing is that I've known him for around 3 years now - and I met him for the first time about 3 months ago. Mike will probably know where he comes from - Magdeburg... Neil. PS One thing I like is your signature now, Neil. It's funny. :)) PPS I *really* should think of a good signature for myself... :) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 00:07:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA00319 for dynarec-outgoing; Wed, 10 May 2000 00:07:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <39190AA3.92BFA0C4@eurocopter.de> Date: Wed, 10 May 2000 09:07:15 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: It has moved! References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > The dynarec mailing list on Synthcom has now been moved over to its new > home on dynarec.com. Please continue conversation there. > > It will bounce if sent to the Synthcom address. Enjoy! ;-) Really? Gah, *now* you tell me! ;) Okay, can we get some discussion going about the site? We need to discuss content, colour schemes and just things which, while may not seem important, actually are important. Are there features we want on there? If so, we need to discuss. One thing, for example, would be the DR-FAQ. Do we put it in Mike's user area - or do we create a directory called "FAQ" and put it there? The easier it is to maintain, the better for everyone. Generally speaking, an easy to maintain site is an easy to navigate site. Also, has anyone got any good logo ideas? I'm just coming up with different ideas at the moment, but any input would be great! I did once render a P5 CPU, maybe I can use that as part of the logo (scaled down, of course). Ideas, I need ideas! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 00:21:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA00353 for dynarec-outgoing; Wed, 10 May 2000 00:21:11 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 10 May 2000 00:25:14 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: Fwd: Re: DYNAREC: Re: Registration of domain name DYNAREC.COM is complete! In-Reply-To: <3919093A.2E32E3F1@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Mind you, that took about 2 days to get it exactly as me and Tom (the other > guy who worked on it) wanted it. You can get things pretty impressive by > spending time on it... I'm glad you like it, it shows that the time was > well spent! I particularly like the font used, in addition to the shaded colors. It's sweet. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 00:33:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA00377 for dynarec-outgoing; Wed, 10 May 2000 00:33:36 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <391910A7.7A4C38A3@eurocopter.de> Date: Wed, 10 May 2000 09:32:55 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: Fwd: Re: DYNAREC: Re: Registration of domain name DYNAREC.COMis complete! References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Mind you, that took about 2 days to get it exactly as me and Tom (the other > > guy who worked on it) wanted it. You can get things pretty impressive by > > spending time on it... I'm glad you like it, it shows that the time was > > well spent! > > I particularly like the font used, in addition to the shaded colors. It's > sweet. Yes, the font is nice. I *think* it's Verdana that we used though I'm not sure - and I can't check because I have no 'net access at the moment. Do you want me to try and use a similar look for the Dynarec page? Similar colours and such? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 00:38:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA00390 for dynarec-outgoing; Wed, 10 May 2000 00:38:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 10 May 2000 00:42:33 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: It has moved! In-Reply-To: <39190AA3.92BFA0C4@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Okay, can we get some discussion going about the site? We need to discuss > content, colour schemes and just things which, while may not seem > important, actually are important. Are there features we want on there? If > so, we need to discuss. There's a few things I'd like: * Shameless promotion of FreeBSD 4.0 and info about what's making it run * Shameless promotion of Apache as well. I believe in crediting those who give us major benefits without thought of repayment. * Maybe a "What the Dynarec server looks like" section. I've put up some reall high res pictures of it at dynarec.com/~neilb/dynarec1.jpg and dynarec.com/~neilb/dynarec2.jpg. They are HUGE pictures, so you'll probably have to cut 'em down a bit. For your information, its: - Pentium 150 - 64 MB of RAM - 5 Gig of IDE HD space - One STB Lightspeed 128 video card - Intel Etherexpress 10/100 - That's it. No floppy or CDROM or even a cover. I put the machine together from spare parts I had laying around * As I stated before, I tend to like darker, sharp looking 3D metallic style fonts. But I do also like the example page you did, so I'd be happy with either. > One thing, for example, would be the DR-FAQ. Do we put it in Mike's user > area - or do we create a directory called "FAQ" and put it there? The > easier it is to maintain, the better for everyone. Generally speaking, an > easy to maintain site is an easy to navigate site. Sure. Is Mike going to continue to maintain the page? If so, it might make sense to have it in his account. Although, we all have rights to modify the master html pages. Thoughts? Mike? > Also, has anyone got any good logo ideas? I'm just coming up with different > ideas at the moment, but any input would be great! I did once render a P5 > CPU, maybe I can use that as part of the logo (scaled down, of course). > Ideas, I need ideas! :) Metallic. Shiny. 3D. Sharp. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 00:39:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA00400 for dynarec-outgoing; Wed, 10 May 2000 00:39:00 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 10 May 2000 00:43:03 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: Fwd: Re: DYNAREC: Re: Registration of domain name DYNAREC.COMis complete! In-Reply-To: <391910A7.7A4C38A3@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Do you want me to try and use a similar look for the Dynarec page? Similar > colours and such? Yes, I think that'd look sharp as hell. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 00:42:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA00412 for dynarec-outgoing; Wed, 10 May 2000 00:41:19 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 10 May 2000 00:45:22 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: BTW... In-Reply-To: <00036736fef02161_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > >For those of you with mail accounts on dynarec.com, pop3 service is now > >working. > Kewl, we even get POP3. I guess that includes SMTP as well. > What's the name of the service, pop3.dynarec.com? I've just updated the name server so that: pop3.dynarec.com mail.dynarec.com ftp.dynarec.com www.dynarec.com dynarec.com All resolve to the same IP. The two addressese at the top might take 24 hours to propogate depending upon how slow the DNA propogation happens. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 01:38:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA00521 for dynarec-outgoing; Wed, 10 May 2000 01:38:51 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005100839.KAA17295@pons.ac.upc.es> Subject: RE: DYNAREC: Crusoe To: dynarec@dynarec.com Date: Wed, 10 May 2000 10:39:44 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com I forgot I had to send it the new list ... This mania of using the reply command ... ;) >> But still Communism it=B4s better than wild capitalism. >It depends upon what you define as "better". Russians before and after >the fall of communism were poor. The standard of living in Russia is >incredibly low - below what US and Canadian citizens consider to be the >poverty level. No one has squat, and the food they do get isn't good >food. Sure, they're fed, but that's not living. There are a lot of reason for this situation not only communism. Russia although it's a big country isn't a so rich country as US. They were never as advanced as US either. In fact Russia is a the country where occident (europe) and orient (asia) are mixed. The way of thinking of Russians isn't the same as US, they came from a monarchy and rural country. Then a lot of resources where wasted in the cold war. While US could commerce and get resources from all around the world, with the help of Europe and Japan, Russia was more limited to some europe countries, and they were in conflict with China also. I think Russia isn't the best example for Communism. >> You just have >> to take a look at Rusia. While they were communist they had only the >> more needed for living, now there are millions without enough food to >> live. >Apples to oranges comparison. You're using a transitional period as an >example of capitalism being bad - going from any form to government to >another will take years to be fully "accepted" and implemented. Do you want to know more bad capitalism examples, just take a look at the countries south where you live. All south american countries where mainteined capitalist by US government and they aren't better than the worst Communist country. >> The situation in Rusia I think shows how capitalism can easily >> become without control, millions of peoples living in poor conditions >> while some hundred become too rich. >They were poor before that, and your "example" is flawed. It's lke going >on a diet for 2 days and declaring that "it doesn't work". Transitions >take time. It also takes decisive leadership - something that Russia has >lacked. Transition was what was doing Gorbachov. What Ieltsin has done it's destroying, with the help of the occidental countries, a whole country. >You're misinterpreting what you're seeing. No, what happens is I'm bieased by my own opinions, and I use the situation for help my arguments ;) The situation in Russia is very difficult, and I think there will be a lot of problems in next decades because of that. >> What a replicator is? Something like the machines from Star Trek to produce >> food and equipment, perhaps direct energy conversion? I think it will take >> a long time until it will be invented ;) >Bingo. Yes. Precisely. Another problem it's that wastes a lot of energy, we will need a new energy source, perhaps fussion. The problem I think is more a lack of energy resources than material resources. The invention of a good fussion method is taken a too much time. But altought we get a good source of energy there will be still a environmental problem: hot. All the energy is converted in another kind of energy and finally in the more useless of all, hot. >> But this kind of movements and a situation so volatile and without control >> means a lot of people suffering, think about 29 crack. >What's 29 crack? Sounds like a bad punk band. Wall Street 1929 crack, the biggest capitalism crisis. >> Perhaps we have chance here. About Dark Ages I don't think they had >> enough time to worry about future: wars, famine, diseases, a poor >> education level ... I hope never happen again. >Yes, but my point is that people find a way to move on regardless of >what's going on in their lives or government. >> I don't like any kind of religion. Oh well, more exactly I hate any >> kind of religion builded around an organization as the Catholicism. >That's bold coming from someone who lives in Spain. ;-) Why? The association between Catholicism and Spain is now more a question of tradition than anything else. And Catholicism in Spain was carried by monarchy and the dictature, and I don't like them. The dictature we have from 1939 to 1975 builded such image, but in the Second Republic the situation was different. The Spanish Church has been ever a great problem, in my thoughts, to Spain progress because it was too powerful and helped to mantein traditions. I feel a soon (or grandsoon perhaps) of the Civil War losers and they were anticatholicism. You don't know how bad has been church for Spain. Now catholicism is carried more as a tradition than as a religion by the young people. For example I don't know anyone who goes usually to church on Sundays. >> Personal religions, well, everyone is a bit crazy I can support that, >> but organized religions are dangerous. >I wouldn't say that exclusively, but I agree with you. Any religion that's >built like a business or has a living "leader" is bad news. They are mafious organizations. >> The only religion that I can >> say could like me are some forms of Budism (as Zen), they are more a >> way of live than a real religion. Religion has been one of the worst >> things that have happened to the humanity. And the worst religions of >> ever have been monoteist religions, and more exactly cristianism and >> Islam. >Yes, and they have been the source of wars and fighting for thousands of >years. The stupid assed middle easterners haven't been able to get their >shit together as far back as documented history, and it's all because of >stupid ritualistic beliefs. It's incredible how people can stand fighting each other for something that could happen many years ago, sometimes centuries ago. >You might call me a racist, but I have trouble with any religion that >excludes, promotes superiority, exiles, or doesn't allow the general >public (read that, anyone) to become part of it. That knocks out most >variants Christianity, Judiasm, Islam, etc... You've crossed the line when >you use your religion as a crutch or a weapon to beat someone else down. It's better I don't talk about my opinion about Judiasm or someone would call me racist ... That kind of religion are another form of racism. >> Sometimes I think that it would be better that Roman or Greece >> kind of Gods will persisted. They had more variation of religions and >> I think there were more freedom to choice and less fights about >> religion. >And their leaders weren't tangible people, either. ;-) Clericals? They didn't work as organization I think, they were a bit related to the state. The weren't a differentiation between civil people and clerical people, the clerical wasn't a separate class. The problem is when a religion organization is hierarchized and gets a lot of power. Another example of bad religion could be Old Egipcian religion. >> Tradition for me is to mantein something useless only because >> everybody before you have done it. I know there are good traditions >> and it=B4s good to preserve some traditions. >For example, I think the traditional wedding ceremonies are just fine as >traditions, because it works quite well. But other useless traditions, >such as wearing little caps or turbans on your head, is just a way to >announce that you're a part of something that the next guy isn't. You hit the point. Most of the traditions are for helping people feel they are different from other people. To divide people. We need to join an mix people, we live in the same world and we have the same basic problems. Traditions doesn't help with this. >> But people uses traditions >> to avoid changes that are needed to create a better world. >We call them Republicans, or "Conservatives". I have problem with US partys, I can't never remember who is who ;) Well the problem perhaps is that sometimes the seem the same. In Spain we have still a greatest diffentiation between political partys. But this is changing lately and it's worrying me, it's a problem from the modern democrathic system, it can easily become in only a two big partys democracy. I think more variation it's needed, two partys makes things difficult to change. >It's not the whaling that I was taking issue with. It was the fact that >those boneheads are claiming "heritage" that hasn't been practiced in 70 >friggin' years, and they had no part in it! I know. Lately there too many people claiming for old dead traditions and many times it has no sense. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 02:00:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA00723 for dynarec-outgoing; Wed, 10 May 2000 02:00:55 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 10 May 2000 02:04:59 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: RE: DYNAREC: Crusoe In-Reply-To: <200005100839.KAA17295@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > I forgot I had to send it the new list ... This mania of using > the reply command ... ;) That'll learn ya! > >incredibly low - below what US and Canadian citizens consider to be the > >poverty level. No one has squat, and the food they do get isn't good > >food. Sure, they're fed, but that's not living. > There are a lot of reason for this situation not only communism. And not only capitalism. ;-) Russia had so many problems to begin with that transitioning to any form of government is disastrous. > Then a lot of resources where wasted in the cold war The same was true with the US, too. > While US could > commerce and get resources from all around the world, with the help of > Europe and Japan, Russia was more limited to some europe countries, and > they were in conflict with China also. I think Russia isn't the best > example for Communism. The problem is that it tends to breed tyranny in leadership - the "dark side" of communism, as capitalism tends to bring out the greedy. Don't get me wrong - I like communism as an idea, but the implementations implemented so far have been horrible. > >Apples to oranges comparison. You're using a transitional period as an > >example of capitalism being bad - going from any form to government to > >another will take years to be fully "accepted" and implemented. > Do you want to know more bad capitalism examples, just take a look at > the countries south where you live. All south american countries where > mainteined capitalist by US government and they aren't better than the > worst Communist country. If you take a look at South American countries, the problem isn't capitalism, but a large bit of it being drugs and corruption of government. It might help fuel it, but it doesn't create corruption of that magnitude. > >You're misinterpreting what you're seeing. > No, what happens is I'm bieased by my own opinions, and I use the > situation for help my arguments ;) Incorrectly I might add. ;-) You're giving too much "credit" to capitalism toward it causing problems, and the Russian problems you cannot attribute to capitalism. But my point is you can't point to Russia and say "See what problems capitalism causes?" That would be like me pointing to China and saying "See what communism causes?". I'm separating the concept from the actual implementation. > The situation in Russia is very difficult, and I think there will be > a lot of problems in next decades because of that. Yes, but the problems in Russia that are seen today have nothing to do with capitalism. > Another problem it's that wastes a lot of energy, we will need a new > energy source, perhaps fussion. The problem I think is more a lack of > energy resources than material resources. The invention of a good > fussion method is taken a too much time. But altought we get a good > source of energy there will be still a environmental problem: hot. All > the energy is converted in another kind of energy and finally in the more > useless of all, hot. Find a way to recycle it to heat water so we can have warm showers. ;-) > >> But this kind of movements and a situation so volatile and without control > >> means a lot of people suffering, think about 29 crack. > >What's 29 crack? Sounds like a bad punk band. > Wall Street 1929 crack, the biggest capitalism crisis. You mean crash, not crack. ;-) And the largest contributor to the crash had nothing to do with capitalism, it had to do mostly with immigration - making more than 80% of the populus on the east coast immigrants! > >> I don't like any kind of religion. Oh well, more exactly I hate any > >> kind of religion builded around an organization as the Catholicism. > >That's bold coming from someone who lives in Spain. ;-) > Why? The association between Catholicism and Spain is now more a > question of tradition than anything else. The number of Spaniards and Mexicans I know - all of whom are Catholic or practicing Catholics. > of the Civil War losers and they were anticatholicism. You don't know > how bad has been church for Spain. I don't directly, but I've seen zillions of examples that support badness. ;-) > >I wouldn't say that exclusively, but I agree with you. Any religion that's > >built like a business or has a living "leader" is bad news. > They are mafious organizations. Like Mormonism? FWIW, As an example, the largest distributor of alcohol in the United States is owned by Mormons. Go figger. > >You might call me a racist, but I have trouble with any religion that > >excludes, promotes superiority, exiles, or doesn't allow the general > >public (read that, anyone) to become part of it. That knocks out most > It's better I don't talk about my opinion about Judiasm or someone would > call me racist ... That kind of religion are another form of racism. Any religion that has a word for nonbelievers or nonmembers (I.E. goyim) is flawed from the start. > and clerical people, the clerical wasn't a separate class. The problem > is when a religion organization is hierarchized and gets a lot of power. > Another example of bad religion could be Old Egipcian religion. Some good came of it, but there was a LOT of bad - definitely. > they are different from other people. To divide people. We need to join > an mix people, we live in the same world and we have the same basic > problems. Traditions doesn't help with this. And when we mix, we don't ram eachother's beliefs and rituals down eachother's throats. If you can believe it, we have a guy at work who refuses to take baths except *ONCE PER MONTH* because his religion forbids it. I actually thought about taking the asshole to court but my employer intervened and said "Shower - it's unsanitary and creates an unsafe work environment". Geez! > >> to avoid changes that are needed to create a better world. > >We call them Republicans, or "Conservatives". > I have problem with US partys, I can't never remember who is who ;) Neither are worth a damn. > Well the problem perhaps is that sometimes the seem the same. In Spain > we have still a greatest diffentiation between political partys. But > this is changing lately and it's worrying me, it's a problem from the > modern democrathic system, it can easily become in only a two big partys > democracy. I think more variation it's needed, two partys makes things > difficult to change. It's not really a variation that's needed, it's one of the two parties applied at the appropriate time. Whenever republicans (conservatives) get in power, it tends to slow economy because people hang on to their wallets. The republicans are the real problem in the US. They are selfish, cater to the rich, hide behind religions and "moral" issues and generally cause nuisances for anyone not them. Consider the fact that we've had more recessions during republican "rule" by a factor of 5. Too much Democracy and it tends to get out of control and nothing really gets done (But sometimes that's exactly what's wanted). Politically, I'm about mid way between both parties, but I cannot in good conscience support selfish, anal retentive, conservatives. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 02:12:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA00745 for dynarec-outgoing; Wed, 10 May 2000 02:12:19 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3919276E.AC7CFBF4@eurocopter.de> Date: Wed, 10 May 2000 11:10:06 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: Webpage References: <200005100839.KAA17295@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Can somebody do me a favour and upload the current WIP pages for the Dynarec site onto the server? I can't do this from work at all so I have a problem. Neil has asked me to do this ASAP - but I can't get it done until I go home. All you need is a decent FTP client to upload the files - and you'll probably have to CHMOD (or change the permissions) so that they become 755 (so everyone can read them). Everyone on the list has a copy of the relevant files - so if you have a 'net connection, you have no excuse! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 02:22:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA00768 for dynarec-outgoing; Wed, 10 May 2000 02:22:46 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005100927.LAA11930@pons.ac.upc.es> Subject: Re: DYNAREC: Webpage In-Reply-To: <3919276E.AC7CFBF4@eurocopter.de> "from Neil Griffiths at May 10, 2000 11:10:06 am" To: dynarec@dynarec.com Date: Wed, 10 May 2000 11:27:53 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > Can somebody do me a favour and upload the current WIP pages for the > Dynarec site onto the server? I can't do this from work at all so I have a > problem. Neil has asked me to do this ASAP - but I can't get it done until > I go home. All you need is a decent FTP client to upload the files - and > you'll probably have to CHMOD (or change the permissions) so that they > become 755 (so everyone can read them). > > Everyone on the list has a copy of the relevant files - so if you have a > 'net connection, you have no excuse! ;) > I could do it, but I don't know how. And perhaps my net connection is a bit slower ... Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 02:48:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA00831 for dynarec-outgoing; Wed, 10 May 2000 02:48:28 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <014b01bfba64$da6aee00$88dc48c2@icc.co.im> From: "Andrew Davidson" To: Subject: DYNAREC: Mothers' day Date: Wed, 10 May 2000 10:48:10 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Help! What's going on? I distinctly remember getting glared at by my sister for being overly intoxicated on Mothers day just a couple of months ago. Do they do it on a different date in the US, or something? I could have sworn it was 14th of March...There's ads all over the web that say the 14th of May, though. Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 02:49:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA00841 for dynarec-outgoing; Wed, 10 May 2000 02:49:29 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <39192FCA.E00E32E7@eurocopter.de> Date: Wed, 10 May 2000 11:45:46 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Crusoe References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > The problem is that it tends to breed tyranny in leadership - the "dark > side" of communism, as capitalism tends to bring out the greedy. This is human nature. I like the idea of communism. However, I'm realistic. It can never work while we still have class equalities (one set of people with much more money than others) and also while we have greedy people. You would also need leaders (in a true communist way, would you even HAVE leaders?) who were not greedy. And I don't believe they exist... > Don't get me wrong - I like communism as an idea, but the implementations > implemented so far have been horrible. Agreed. > Incorrectly I might add. ;-) You're giving too much "credit" to capitalism > toward it causing problems, and the Russian problems you cannot attribute > to capitalism. But my point is you can't point to Russia and say "See what > problems capitalism causes?" That would be like me pointing to China and > saying "See what communism causes?". I'm separating the concept from the > actual implementation. Although China is a case in point. They're trying to take capitalism and bend it to communism. It's stupid. When you've got the country leaders getting so much money, yet having a lot of their people in abject poverty... Also, I don't agree with the Chinese leaders deciding what the Chinese public can and cannot know. Free speech isn't a capitalist thing, it's a very communistic thing (free speech could never exist in a highly capitalistic state). Having said that, I'm not sure that it could exist in a very communistic state either... > > Another problem it's that wastes a lot of energy, we will need a new > > energy source, perhaps fussion. The problem I think is more a lack of > > energy resources than material resources. The invention of a good > > fussion method is taken a too much time. But altought we get a good > > source of energy there will be still a environmental problem: hot. All > > the energy is converted in another kind of energy and finally in the more > > useless of all, hot. > > Find a way to recycle it to heat water so we can have warm showers. ;-) Use the heat to power turbines (via steam). > > Wall Street 1929 crack, the biggest capitalism crisis. > > You mean crash, not crack. ;-) And the largest contributor to the crash > had nothing to do with capitalism, it had to do mostly with immigration - > making more than 80% of the populus on the east coast immigrants! Most of Englands ancestors aren't originally from England. It'd be difficult to find out exactly where they came from, but they've been mixed with Vikings, Germans and French over time that most English are in fact immigrants. They didn't defeat the Welsh! ;) > > Why? The association between Catholicism and Spain is now more a > > question of tradition than anything else. > > The number of Spaniards and Mexicans I know - all of whom are Catholic or > practicing Catholics. I don't know many, but the few Spanish people I do know are all Catholics. Or, at the very least, have been brought up in a very Catholic fashion... > > of the Civil War losers and they were anticatholicism. You don't know > > how bad has been church for Spain. > > I don't directly, but I've seen zillions of examples that support > badness. ;-) Religion, as a whole, is bad for everybody. Think about it. The largest majority of the worlds wars have been fought over religion. > > They are mafious organizations. > > Like Mormonism? FWIW, As an example, the largest distributor of alcohol in > the United States is owned by Mormons. Go figger. Well... I'd want to drink too if I was a Mormon. :)) > > and clerical people, the clerical wasn't a separate class. The problem > > is when a religion organization is hierarchized and gets a lot of power. > > Another example of bad religion could be Old Egipcian religion. > > Some good came of it, but there was a LOT of bad - definitely. Same in all cases. I didn't reply when we were talking about Roman religion (and Greek, for that matter) but remember - the Romans also killed people who didn't believe in their Gods. There's a very famous person who this happened to. You may have heard of him. His name was "Jesus". I'm not a Christian - though I have my own beliefs. I know that Jesus existed (records exist from that time). Whether he was the son of God, I just don't know. I just know that he existed - and that he was crucified. He was crucified because he wouldn't believe in the Roman Gods... well, allegedly. > And when we mix, we don't ram eachother's beliefs and rituals down > eachother's throats. If you can believe it, we have a guy at work who > refuses to take baths except *ONCE PER MONTH* because his religion forbids > it. I actually thought about taking the asshole to court but my employer > intervened and said "Shower - it's unsanitary and creates an unsafe work > environment". Geez! Agreed. I've had so many bad experiences that now I instantly hate anyone who tries to shove their beliefs down my throat. I have in the past, amonst other things, been called "evil" because I'm not Christian. The interesting thing is that for every religion, anyone not of that religion is evil. Therefore we are all evil. Never forget that. ;) > > I have problem with US partys, I can't never remember who is who ;) > > Neither are worth a damn. Always the case with most political parties. I find it difficult to believe any side. > Politically, I'm about mid way between both parties, but I cannot in good > conscience support selfish, anal retentive, conservatives. Politically, I'm also midway between the Conservatives and Labour (Socialists). I don't believe completely for either party. Besides, whenever either gets elected, they almost instantly start doing what they once were arguing the other side shouldn't do. It's moronic, it really is... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 03:00:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA00876 for dynarec-outgoing; Wed, 10 May 2000 03:00:37 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: It has moved! From: Michael Koenig In-Reply-To: Message-Id: <00036740b9d006d5_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Wed, 10 May 2000 11:57:03 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >There's a few things I'd like: >* Shameless promotion of FreeBSD 4.0 and info about what's making it run No problems with that. >* Shameless promotion of Apache as well. I believe in crediting those who > give us major benefits without thought of repayment. Neither here, acually I counted that under the point above. >> One thing, for example, would be the DR-FAQ. Do we put it in Mike's user >> area - or do we create a directory called "FAQ" and put it there? The >> easier it is to maintain, the better for everyone. Generally speaking, an >> easy to maintain site is an easy to navigate site. >Sure. Is Mike going to continue to maintain the page? I guess so. >If so, it might make sense to have it in his account. That's what I think as well. We'll have a news page for sudden changes which I cannot include in the DRFAQ that fast. >Although, we all have rights to modify the master html pages. Thoughts? Mike? I guess the global FAQ is for info about the server and the like, whereas the DRFAQ is more specific and might be referenced in a document section. >-->Neil -- M.I.K.e You don't sew with a fork, so I see no reason to eat with knitting needles. -- Miss Piggy, on eating Chinese Food --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 03:00:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA00890 for dynarec-outgoing; Wed, 10 May 2000 03:00:42 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Skeleton site From: Michael Koenig Message-Id: <00036740d7667f83_mailit@mailhub.rrze.uni-erlangen.de> Date: Wed, 10 May 2000 12:05:19 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >I was going to... and just didn't because I didn't know whether there was >HTML for it. Even most Germans don't know it, simply type the umlaut and get strange results with many browsers... BTW, all the special signs for German are: ö = ö ü = ü ä = ä ß = ß >Seeing as I can see there is (from this e-mail, in fact!) then >I'll do it tonight. And I'll actually upload it tonight as well. :) I hope you have more luck than I had... >Neil. -- M.I.K.e Paul Revere was a tattle-tale --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 03:00:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA00889 for dynarec-outgoing; Wed, 10 May 2000 03:00:42 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Webpage From: Michael Koenig In-Reply-To: <3919276E.AC7CFBF4@eurocopter.de> Message-Id: <000367409c127515_mailit@mailhub.rrze.uni-erlangen.de> References: <200005100839.KAA17295@pons.ac.upc.es> <3919276E.AC7CFBF4@eurocopter.de> Date: Wed, 10 May 2000 11:48:44 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Can somebody do me a favour and upload the current WIP pages for the >Dynarec site onto the server? I can't do this from work at all so I have a >problem. Neil has asked me to do this ASAP - but I can't get it done until >I go home. All you need is a decent FTP client to upload the files - and >you'll probably have to CHMOD (or change the permissions) so that they >become 755 (so everyone can read them). It should be chmod 775 for directories and 664 for files. >Everyone on the list has a copy of the relevant files - so if you have a >'net connection, you have no excuse! ;) But I don't seem to have the permission to transfer files or create the "img" directory :-( >Neil. -- M.I.K.e Everything is controlled by a small evil group to which, unfortunately, no one we know belongs. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 03:02:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA00905 for dynarec-outgoing; Wed, 10 May 2000 03:02:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <39193344.27F800E5@eurocopter.de> Date: Wed, 10 May 2000 12:00:36 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Mothers' day References: <014b01bfba64$da6aee00$88dc48c2@icc.co.im> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Help! What's going on? I distinctly remember getting glared at by my sister > for being overly intoxicated on Mothers day just a couple of months ago. Do > they do it on a different date in the US, or something? I could have sworn > it was 14th of March...There's ads all over the web that say the 14th of > May, though. Don't worry, it's a different day. And it's a different day in Germany too. And they don't have it in France. :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 03:08:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA00926 for dynarec-outgoing; Wed, 10 May 2000 03:08:42 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <016b01bfba67$ae07ae40$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: <014b01bfba64$da6aee00$88dc48c2@icc.co.im> <39193344.27F800E5@eurocopter.de> Subject: Re: DYNAREC: Mothers' day Date: Wed, 10 May 2000 11:08:25 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > Help! What's going on? I distinctly remember getting glared at by my sister > > for being overly intoxicated on Mothers day just a couple of months ago. Do > > they do it on a different date in the US, or something? I could have sworn > > it was 14th of March...There's ads all over the web that say the 14th of > > May, though. > > Don't worry, it's a different day. And it's a different day in Germany too. > And they don't have it in France. :o Phew! I was starting to panic there. I wonder if They (as in the card manufacturing companies) arranged to stagger it like that to provide themselves with year round income? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 03:09:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA00936 for dynarec-outgoing; Wed, 10 May 2000 03:09:13 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005101014.MAA07671@pons.ac.upc.es> Subject: Re: DYNAREC: Crusoe In-Reply-To: "from Neil Bradley at May 10, 2000 02:04:59 am" To: dynarec@dynarec.com Date: Wed, 10 May 2000 12:14:47 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > And not only capitalism. ;-) Russia had so many problems to begin with > that transitioning to any form of government is disastrous. > > The same was true with the US, too. > It seems clear that Russian isn't the best example. > The problem is that it tends to breed tyranny in leadership - the "dark > side" of communism, as capitalism tends to bring out the greedy. > > Don't get me wrong - I like communism as an idea, but the implementations > implemented so far have been horrible. > I think that in Marx doctrine there is a phase of dictature after the power has been taken from capitalist. I really don't know much about Marx doctrine though. The problem is that is impossible than a dictature releases it's power to a more democrathic system. Perhaps that was the problem of the implementations of communism. Communism was ever implanted by force, using armies, and when a military force get into power ... In Spain and other europe countries there are democrathic communist partys but they don't share the same ideology from old Russia Communism and they have evolved. I'm not sure but I think they have never been a "communist" government in Occidental Europe, or perhaps Italia ..., I don't know. In any case they are now helping "socialist" (something like the democrat party) governments on France and Germany. Communism breeds leadership and also burocracy because gives a lot of power to the government. > If you take a look at South American countries, the problem isn't > capitalism, but a large bit of it being drugs and corruption of > government. It might help fuel it, but it doesn't create corruption of > that magnitude. > But in my thoughts corruption is something that comes from capitalism. For example: drugs. Drugs is a good example of what capitalism means. The drug bussines are a good example of capitalism, do all what you can to get money, produce something that has a good market and mantein high prizes with low production. The prohibition of use of drugs only helps to convert it in a great bussine. You know what happenned when alcohol was forbidden in US. I think we give different meanings to the word "capitalism", perhaps you mean what I name "controlled capitalism". > Incorrectly I might add. ;-) You're giving too much "credit" to capitalism > toward it causing problems, and the Russian problems you cannot attribute > to capitalism. But my point is you can't point to Russia and say "See what > problems capitalism causes?" That would be like me pointing to China and > saying "See what communism causes?". I'm separating the concept from the > actual implementation. > Sure but I'm not the best searching for god examples ;) > > source of energy there will be still a environmental problem: hot. All > > the energy is converted in another kind of energy and finally in the more > > useless of all, hot. > > Find a way to recycle it to heat water so we can have warm showers. ;-) > Very fun, but it's a serious issue. It can helps to avoid another glacial age though. > You mean crash, not crack. ;-) And the largest contributor to the crash > had nothing to do with capitalism, it had to do mostly with immigration - > making more than 80% of the populus on the east coast immigrants! > Sorry, bad english, bad english ;) I don't know much about it, it was in US and it was long ago. As I have studied the scientist branch of Spanish studies I haven't studied so many history. I'm better with old history than history about last century. It seems there is a kind of "prohibition" of teach about what happenned last century in Spain. > > >> I don't like any kind of religion. Oh well, more exactly I hate any > > >> kind of religion builded around an organization as the Catholicism. > > >That's bold coming from someone who lives in Spain. ;-) > > Why? The association between Catholicism and Spain is now more a > > question of tradition than anything else. > > The number of Spaniards and Mexicans I know - all of whom are Catholic or > practicing Catholics. > In South America catholicism is a lot of spreaded (perhaps it's Spainish fault :o), but since 1980 Spain has become a more modern and free country. Now resembles a bit more an european country. Catholicism has less power now in Spain than ever, or I hope so. Something different happens in South and Central America. > > >I wouldn't say that exclusively, but I agree with you. Any religion that's > > >built like a business or has a living "leader" is bad news. > > They are mafious organizations. > > Like Mormonism? FWIW, As an example, the largest distributor of alcohol in > the United States is owned by Mormons. Go figger. > A good example, I see a lot of american mormons spreading their religion here too. > > they are different from other people. To divide people. We need to join > > an mix people, we live in the same world and we have the same basic > > problems. Traditions doesn't help with this. > > And when we mix, we don't ram eachother's beliefs and rituals down > eachother's throats. If you can believe it, we have a guy at work who > refuses to take baths except *ONCE PER MONTH* because his religion forbids > it. I actually thought about taking the asshole to court but my employer > intervened and said "Shower - it's unsanitary and creates an unsafe work > environment". Geez! > Rare religion. But there are worst traditions. This tradition doesn't help to get friends. > > Well the problem perhaps is that sometimes the seem the same. In Spain > > we have still a greatest diffentiation between political partys. But > > this is changing lately and it's worrying me, it's a problem from the > > modern democrathic system, it can easily become in only a two big partys > > democracy. I think more variation it's needed, two partys makes things > > difficult to change. > > It's not really a variation that's needed, it's one of the two parties > applied at the appropriate time. Whenever republicans (conservatives) get > in power, it tends to slow economy because people hang on to their > wallets. The republicans are the real problem in the US. They are selfish, > cater to the rich, hide behind religions and "moral" issues and generally > cause nuisances for anyone not them. Consider the fact that we've had more > recessions during republican "rule" by a factor of 5. Too much Democracy > and it tends to get out of control and nothing really gets done (But > sometimes that's exactly what's wanted). > US Republican party sometimes frightens me and also other heavy religious groups of your country. I can't stop thinking US can easily become a new world empire (perhaps I'm a bit biased by communist influence though) and I don't think the US model of capitalism is the best, I like more the european is more government controlled (I preffer government controlled than who knows controlled, but in fact perhaps is the same :p). > Politically, I'm about mid way between both parties, but I cannot in good > conscience support selfish, anal retentive, conservatives. > Politically I could say I'm more democrathic communism related ;) But I don't like politics. Any government which shows themselves to be efficient enough can be considered good. A government which use "common sense" (I think I'm using an Spanish expression here, read intelligence) and not "power sense" can be considered a dream. Victor Moya Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 03:10:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA00948 for dynarec-outgoing; Wed, 10 May 2000 03:10:57 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005101015.MAA21176@pons.ac.upc.es> Subject: Re: DYNAREC: Mothers' day In-Reply-To: <39193344.27F800E5@eurocopter.de> "from Neil Griffiths at May 10, 2000 12:00:36 pm" To: dynarec@dynarec.com Date: Wed, 10 May 2000 12:15:59 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > Help! What's going on? I distinctly remember getting glared at by my sister > > for being overly intoxicated on Mothers day just a couple of months ago. Do > > they do it on a different date in the US, or something? I could have sworn > > it was 14th of March...There's ads all over the web that say the 14th of > > May, though. > > Don't worry, it's a different day. And it's a different day in Germany too. > And they don't have it in France. :o > It was last Sunday in Spain. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 03:13:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA00959 for dynarec-outgoing; Wed, 10 May 2000 03:13:07 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Mothers' day From: Michael Koenig In-Reply-To: <014b01bfba64$da6aee00$88dc48c2@icc.co.im> Message-Id: <00036740e1a62427_mailit@mailhub.rrze.uni-erlangen.de> References: <014b01bfba64$da6aee00$88dc48c2@icc.co.im> Date: Wed, 10 May 2000 12:08:11 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Help! What's going on? I distinctly remember getting glared at by my sister >for being overly intoxicated on Mothers day just a couple of months ago. Do >they do it on a different date in the US, or something? I could have sworn >it was 14th of March...There's ads all over the web that say the 14th of >May, though. In Germany it's always the sunday after my birthday, so 14th of May sounds right. >Andrew -- M.I.K.e [Nuclear war] ... may not be desirable. -- Edwin Meese III --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 03:13:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA00968 for dynarec-outgoing; Wed, 10 May 2000 03:13:13 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Webpage From: Michael Koenig In-Reply-To: <200005100927.LAA11930@pons.ac.upc.es> Message-Id: <00036740fc498ef0_mailit@mailhub.rrze.uni-erlangen.de> References: <200005100927.LAA11930@pons.ac.upc.es> Date: Wed, 10 May 2000 12:15:38 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >I could do it, but I don't know how. And perhaps my net connection is >a bit slower ... It seems that when I use my university account to access the internet I don't have the rights to telnet or ftp dynarec.com or even use pop3 or smtp services of other providers :-( Maybe it's the same case for you? I had to use a different provider to setup up my page. But even then I don't have the permission to put Neil's skeleton site up. >Victor Moya -- M.I.K.e Your life would be very empty if you had nothing to regret. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 03:15:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA00981 for dynarec-outgoing; Wed, 10 May 2000 03:15:21 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <391936BC.CEDC02F6@eurocopter.de> Date: Wed, 10 May 2000 12:15:24 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Webpage References: <200005100839.KAA17295@pons.ac.upc.es> <3919276E.AC7CFBF4@eurocopter.de> <000367409c127515_mailit@mailhub.rrze.uni-erlangen.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > It should be chmod 775 for directories and 664 for files. For directories, I'm not entirely sure about that. Why would a group member need to execute the files? 755 is fine for directories normally. And as for 664 for files, no. Try doing that - and then renaming a file. You'd have to CHMOD it first, rename it and then CHMOD it back. Mind you... I suppose that with us all having different usernames yet possibly working with the same files, making the user and group attributes the same might be a good idea. Okay, Mike, I'll go along with you. But normally this isn't necessary. :) > >Everyone on the list has a copy of the relevant files - so if you have a > >'net connection, you have no excuse! ;) > > But I don't seem to have the permission to transfer files or create the "img" > directory :-( Oops, sounds like the group permissions aren't set up properly. Have you tried setting the "html" directory to 775? Or do you not have rights to that either? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 03:30:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA01006 for dynarec-outgoing; Wed, 10 May 2000 03:30:44 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005101036.MAA28057@pons.ac.upc.es> Subject: Re: DYNAREC: Crusoe In-Reply-To: <39192FCA.E00E32E7@eurocopter.de> "from Neil Griffiths at May 10, 2000 11:45:46 am" To: dynarec@dynarec.com Date: Wed, 10 May 2000 12:36:28 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > The problem is that it tends to breed tyranny in leadership - the "dark > > side" of communism, as capitalism tends to bring out the greedy. > > This is human nature. I like the idea of communism. However, I'm realistic. > It can never work while we still have class equalities (one set of people > with much more money than others) and also while we have greedy people. You > would also need leaders (in a true communist way, would you even HAVE > leaders?) who were not greedy. And I don't believe they exist... > Human nature isn't something unchangeable, it's more an educational problem. The culture has a lot of power over genes in humans. And if genes are still a problem we have know the gene therapy ;) Ops, perhaps a really bad idea, a genetic modified race of slaves ... I'm getting bad feelings. But I like gene therapy, humanity could decide how want to evolve, really every human could decide how he want to evolve. > > Don't get me wrong - I like communism as an idea, but the implementations > > implemented so far have been horrible. > > Agreed. > Unluckyly :( > Although China is a case in point. They're trying to take capitalism and > bend it to communism. It's stupid. When you've got the country leaders > getting so much money, yet having a lot of their people in abject > poverty... > Just take a look on some countries as India. It's what happens in dictatures. > Also, I don't agree with the Chinese leaders deciding what the Chinese > public can and cannot know. Free speech isn't a capitalist thing, it's a > very communistic thing (free speech could never exist in a highly > capitalistic state). Having said that, I'm not sure that it could exist in > a very communistic state either... > The problem is that all communist governments are or have been dictatures. All theses problem also happens in capitalist dictatures. > Most of Englands ancestors aren't originally from England. It'd be > difficult to find out exactly where they came from, but they've been mixed > with Vikings, Germans and French over time that most English are in fact > immigrants. > Spanish ancestors are from everywhere, europe, asia and africa. We are really near of north africa, sometimes I think too near for being europeans. In any case we are for sure meditarranean. > > The number of Spaniards and Mexicans I know - all of whom are Catholic or > > practicing Catholics. > > I don't know many, but the few Spanish people I do know are all Catholics. > Or, at the very least, have been brought up in a very Catholic fashion... > I'm worrying, perhaps I'm the only not Catholic Spanish ;). Oh well I was baptized, but this isn't my fault and it was more as a tradition. Really, many of my friends follow some catholic traditions but It's a no sense to say they are good catholic practicians. > Religion, as a whole, is bad for everybody. Think about it. The largest > majority of the worlds wars have been fought over religion. > Nacism could be considered also a religion. But a lot of wars are involved with resource limitation and the search for power of kings and leaders. > Same in all cases. I didn't reply when we were talking about Roman religion > (and Greek, for that matter) but remember - the Romans also killed people > who didn't believe in their Gods. There's a very famous person who this > happened to. You may have heard of him. His name was "Jesus". > They killed because it was a rebel (or Hebrews leaders said this), not involved with religion problems. The only problem with religion I can remember was between Jews and Romans, but was more a Jew fault they were too rebellious ever. All old empire could handle with all foreign gods but fanatic religions as Jewish one. > I'm not a Christian - though I have my own beliefs. I know that Jesus > existed (records exist from that time). Whether he was the son of God, I > just don't know. I just know that he existed - and that he was crucified. > He was crucified because he wouldn't believe in the Roman Gods... well, > allegedly. > Not true. You haven't readed enough about crucifiction ;) And I should know more than you, I'm from a catholic country ;) > Agreed. I've had so many bad experiences that now I instantly hate anyone > who tries to shove their beliefs down my throat. I have in the past, amonst > other things, been called "evil" because I'm not Christian. The interesting > thing is that for every religion, anyone not of that religion is evil. > Therefore we are all evil. Never forget that. ;) > Oh well, for me many religious people are fools and need psichiatric help. ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 03:37:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA01024 for dynarec-outgoing; Wed, 10 May 2000 03:37:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Webpage From: Michael Koenig In-Reply-To: <391936BC.CEDC02F6@eurocopter.de> Message-Id: <0003674147a24120_mailit@mailhub.rrze.uni-erlangen.de> References: <200005100839.KAA17295@pons.ac.upc.es> <3919276E.AC7CFBF4@eurocopter.de> <000367409c127515_mailit@mailhub.rrze.uni-erlangen.de> <391936BC.CEDC02F6@eurocopter.de> Date: Wed, 10 May 2000 12:36:42 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Mind you... I suppose that with us all having different usernames yet >possibly working with the same files, making the user and group attributes >the same might be a good idea. Okay, Mike, I'll go along with you. But >normally this isn't necessary. :) I only meant 775 and 664 to be used for the global site, and the normal 755 and 644 for our personal ones. >Oops, sounds like the group permissions aren't set up properly. Have you >tried setting the "html" directory to 775? Or do you not have rights to >that either? You guessed right, I don't have permission to change that either :-( >Neil. -- M.I.K.e November, n.: The eleventh twelfth of a weariness. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 05:27:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA01157 for dynarec-outgoing; Wed, 10 May 2000 05:27:35 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <39195549.CABC675F@eurocopter.de> Date: Wed, 10 May 2000 14:25:45 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Crusoe References: <200005101036.MAA28057@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Human nature isn't something unchangeable, it's more an educational problem. > The culture has a lot of power over genes in humans. And if genes are > still a problem we have know the gene therapy ;) Ops, perhaps a really > bad idea, a genetic modified race of slaves ... I'm getting bad feelings. > But I like gene therapy, humanity could decide how want to evolve, really > every human could decide how he want to evolve. Do you know how scary I find this thought? I really don't like this idea at all. To maybe "correct" children who may be born mentally or physically disabled I can just about agree with, but I really don't want to think about us messing around with our genes. What would happen if we got it wrong? Or we found that it turned into a virus? > > Although China is a case in point. They're trying to take capitalism and > > bend it to communism. It's stupid. When you've got the country leaders > > getting so much money, yet having a lot of their people in abject > > poverty... > > > Just take a look on some countries as India. It's what happens in dictatures. That's also true, yes. > > Most of Englands ancestors aren't originally from England. It'd be > > difficult to find out exactly where they came from, but they've been mixed > > with Vikings, Germans and French over time that most English are in fact > > immigrants. > > > Spanish ancestors are from everywhere, europe, asia and africa. We are > really near of north africa, sometimes I think too near for being europeans. > In any case we are for sure meditarranean. My great-grandfather is Spanish, apparently. Not that you could tell - I've got blonde hair. Actually, that's one worrying thing. My hair used to be really white-blonde when I was younger. And my family decided to take a holiday in Spain. All the Spanish people kept telling my parents that I couldn't be their son because they had dark hair - and they all kept rubbing my hair! Scary... :o > > I don't know many, but the few Spanish people I do know are all Catholics. > > Or, at the very least, have been brought up in a very Catholic fashion... > > > I'm worrying, perhaps I'm the only not Catholic Spanish ;). Oh well I was > baptized, but this isn't my fault and it was more as a tradition. Really, > many of my friends follow some catholic traditions but It's a no sense > to say they are good catholic practicians. I was also baptised. But I managed to strike a deal with my parents. If I went to church until I was 13, I could make up my own mind about going. Guess what? I stopped going on my 13th birthday. :) > > Religion, as a whole, is bad for everybody. Think about it. The largest > > majority of the worlds wars have been fought over religion. > > > Nacism could be considered also a religion. But a lot of wars are involved > with resource limitation and the search for power of kings and leaders. Yes, Nazism was indeed a religion of sorts. > > I'm not a Christian - though I have my own beliefs. I know that Jesus > > existed (records exist from that time). Whether he was the son of God, I > > just don't know. I just know that he existed - and that he was crucified. > > He was crucified because he wouldn't believe in the Roman Gods... well, > > allegedly. > > > Not true. You haven't readed enough about crucifiction ;) And I should > know more than you, I'm from a catholic country ;) Yes, but I don't base my beliefs on the Bible. It has been so mis-interpreted - and even CHANGED - through the years that it can't resemble the original. If you're going to base your belief system around something, you could at least keep it "pure". Even the Catholic church has changed the bible through the years to make it say what they wanted it to say. I actually have read many books about different subjects (I read a lot) and I've made up my own mind. Sure, you can believe the bible and that Jesus was executed because he was a rebel. Or you can believe the documents that he was killed because he believed in a "false god". I think he probably was a rebel leader, in fact. That may well be the reason the Romans found out about him. But Pontious Pilate (sp?) did give Jesus a chance to renounce his God. And he refused. See? > Oh well, for me many religious people are fools and need psichiatric help. ;) Agreed. Though I must say that there are a lot of religious people out there who are really nice! It's just the few that give the others a bad name. And I seem to have found quite a few wierd religious people - which is why I don't like them. But surely I can't be the only one who has sat down with priests and vicars discussing religion? The one thing which was pointed out to me by a vicar once which has made me think is when I was talking about how God could be an explanation for why we're all here - we know (well, we hope!) we came from the Big Bang. His reply? Why did the Big Bang happen? It's made me think a bit. Maybe there is a God. Maybe there's more! I just don't know - and I'm not going to go out and start believing in them just because they *might* exist. And I'm certainly not going to go out and call someone "evil" just because I believe in one God and they don't. Christianity (including Catholicism): you have to remember that the book isn't "Gods word" as is so often said. It was written by men, not God. Can you tell that I have strong feelings on the subject? :) I just hate to be called evil because I'm not Christian. So now I've learnt a lot about religions, just so that if it happens again, I can question their own beliefs. I had a head start on Christianity because I was forced to go to church every Sunday - I learnt a lot. Mainly that I didn't want to be in church every Sunday. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Wed May 10 18:37:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA02080 for dynarec-outgoing; Wed, 10 May 2000 18:37:14 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Wed, 10 May 2000 18:41:29 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Re: MUL8: SI Small test (fwd) Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Grrrr.. This kind of thing really annoys me. I really don't understand *NOT* protecting yourself during coding at every possible turn. The background: Instead of calling malloc(), create a MyMalloc() or equivalent macro that: * Verifies the size isn't 0 * Makes damn sure it's a valid pointer on return * Zeros the memory And instead of having free(), create a MyFree(void **) that does: * Verifies that the incoming pointer isn't NULL * Verifies that what the incoming pointer points to isn't NULL * Frees the memory block * Zeros what the incomnig pointer points to to prevent pointer reuse It's a preventative measure to catch common problems (and problems created by side effects), and I get *ARGUED WITH* that this shouldn't be done, and that somehow it's an "Oh, well, if *YOU* have *THOPSE* kinds of problems, then by all means, go ahead!" type problem. Sheesh! What is it with newbie pride anyway? -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette ---------- Forwarded message ---------- Date: Wed, 10 May 2000 18:35:38 +0000 (GMT) From: Neil Bradley Reply-To: mul8@synthcom.com To: mul8@synthcom.com Subject: Re: MUL8: SI Small test Some background: This specific idea (and other ideas I mention) come from Bounds Chcker and Purify - the two best programs for finding hairline or impossible to find bugs, including memory leaks, illegal memory accesses, stack corruptions, and array bound violations. > > Meaning if someone passes you in a 0 for the size, it asserts, because > > damnit, it's going to be a mistake and it's better to catch it then than > > later on. > Okay, this is true. On the other hand, I've _never_ seen this happen. I've > heard of it happening maybe once, and that's it. And because of this, I > don't count it worth checking for. How would you know if it did happen? Malloc returns you a valid pointer when you pass it 0! Wouldn't you rather catch the problem right there than the side effect that it causes? This is like saying that your car's engine still runs even though you haven't changed the oil in 80,000 miles. Even though that preventative measure doesn't save you every single time (and seldom does anything), that one or two times when you do need it it pays back in droves. > > No, it doesn't. If you pass in a pointer that's NULL, it's a mistake. This > > helps you catch logical errors in your code. It alsmost sounds as if > > you're arguing that it won't help you, well, after doing as much code as > > I've done and seen hairline problems be caused by stuff like this, IT > > DOES! > I'm not complaining about passing a NULL pointer (not that I've seen > _that_ happen, either), I'm complaining about zeroing the pointer > afterwards. Why? Attempting to dereference a NULL pointer will cause a protection fault and the problem will stop you. If you didn't zero it out and attempted to use that memory that was just freed, you won't get a protection fault or any sort of fault because it's in your program's local heap. And God help you if you write to it and wind up corrupting your local heap pointers which may not be discovered until many mallocs() later. > I've seen a bug that that would have prevented exactly once, > and that was in a malloc debugging package, and a desk check caught > it. Again, I don't count it worth checking for. On the other paw, if it's > something that you have problems with often, then, by all means, check for > it. I don't have that problem often. In fact it rarely happens, but usually when it happens, it's because someone *ELSE's* code overwrote data that it shouldn't have. And when it does happen, I don't spend years scratching my head trying to debug an intermittent problem. I get stopped dead and within a few minutes I can find the source of the problem even if it's in someone else's code. It isn't just good for finding bugs in *YOUR* code, it's good for finding bugs in others' code as well, and that's really important when you're working on a project with more than one person. Your approach offers no such protection and lord knows where the code would end up. The consequences are nonobvious. > > cleared a pointer that you shouldn't have or are passing it the wrong one, > > or something accidentally overwrote it with 0s. This is to help catch bugs > > that would surface later on as really nasty side effect bugs, and it does > > help, and does no harm. > Again, I've never seen it happen. Usually when I have an overrun screw it > either smashes the stack outright (ever see a SIGSEGV handler recurse?), > or it corrupts the memory system. Twice in more than a decade isn't very > many times, though. Again, if this is a problem you encounter often then > it behooves you to check for it. I don't, so I don't. I've been on far too many embedded, multithreaded apps, and multiprocessor OS projects and have seen this type of thing happen, and the consequences are especially bad in embedded systems. The server control micros I work on are required to run code that must run for years. No downtime. It must outlast the OS that's running on the machine it supports. I can't afford even the tiniest glitch or problem. And any small advantage or additional check I can put in to help ensure it, you had better believe I'm going to do. There's also no reason not to, but to have a violent opposition to protecting yourself, that's crazy! > Anyway, We've both had our say on the issue, and I suspect that what's > going to happen is that you are going to keep doing things your way, and Damn right. Because I've seen it save lots of head scratching time. > reading this (if any), will form their own conclusions. I suspect that if > I saw the bugs you described more often, I'd agree with you. And if you interviewed with me with an immovable attitude when someone shows you an additional level of protection, you'd get escorted out immediately, especially considering how there's so little to do up front and how large the payoff can potentially be. By advocating not checking for things like this, you have no way of knowing if your code is doing the right thing. Just becuase it doesn't crash doesn't mean it's not doing something wrong, either. So while this little helpful thing may not be evident *TO YOU*, others can benefit from it, especially since we have a lot of newbies on the list. Another helpful benefit is creating header guards around each memory block allocated - a default string or sequence of bytes that's attached to the beginning (and end) of every block of data. So when someone asks you for 64 bytes of data, tack a 32 byte header string on the beginning and 32 byte tail on the end (making a total of 128 bytes allocated) and return the allocated pointer to the first byte after the header. When you free the block, you check to see if that header guard is good. If it isn't, throw an exception. It'll help you catch people overwriting their buffers. Of course it slows things down, but you compile that out in release mode. It's only a debug time measure. > that need fixing have a note to that effect. If you pay attention when > you're making the mess in the first place, it's easier to clean up. But if you don't make a mess in the first place, there's nothing to clean up - that's my point. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 00:18:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA02397 for dynarec-outgoing; Thu, 11 May 2000 00:17:45 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 11 May 2000 00:22:04 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Crusoe In-Reply-To: <200005101014.MAA07671@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > The same was true with the US, too. > It seems clear that Russian isn't the best example. I don't think there is a "good" example of why capitalism doesn't work. > dictature releases it's power to a more democrathic system. Perhaps > that was the problem of the implementations of communism. Communism was > ever implanted by force, using armies, and when a military force get > into power ... Right. The communism implemented was one out of fear and control. Very similar to Hitler and his comrades. ;-) > (something like the democrat party) governments on France and Germany. > Communism breeds leadership and also burocracy because gives a lot of > power to the government. It gives total control to the government, which is what I consider to be Marxist communism. For true and pure communism to work, everyone must have all of their needs and wants met. Without replicators, that task is impossible. > > If you take a look at South American countries, the problem isn't > > capitalism, but a large bit of it being drugs and corruption of > But in my thoughts corruption is something that comes from capitalism. People are corrupt anyway. Do you think in a dictatorship or communism that there isn't corruption? Capitalism has nothing to do with it. They are flawed before any sort of. > For example: drugs. Drugs is a good example of what capitalism means. Drugs are a horrible example of capitalism, and it has no bearing on what capitalism is. Capitalism has to do with a free market, not an underground one. > The drug bussines are a good example of capitalism, do all what you can > to get money, produce something that has a good market and mantein high > prizes with low production. That's not capitalism. That's just shrewd business dealings, and that occurs in communism or any other form of government. Captialism is the concept of a "Free market", where any Joe can sell anything he wants for whatever price he wishes to charge, and allows another Joe to compete with him. Customers vote with their feet. It means I have the right to work my ass off to better myself, and if I work harder than the guy next to me, I deserve extra compensation for my extra work. I'm not about to give up my standard of living, but I have no problem bringing everyone else up to my standard of living. But I ought to have the right to better myself instead of being forced to live in poverty because that's the standard for everyone. > to convert it in a great bussine. You know what happenned when > alcohol was forbidden in US. It made the Kennedys rich. ;-) > I think we give different meanings to the word > "capitalism", perhaps you mean what I name "controlled capitalism". I think what you mean is what we call Corporatism, where companies are just trying to squeeze every last dollar out of everyone and everything in site (I.E. Disney and the music industry is the biggest example of this). But in a free market, we can undermine them if it becomes bad enough, and it has happened. It's happening to MS with Linux... > > > the energy is converted in another kind of energy and finally in the more > > > useless of all, hot. > > Find a way to recycle it to heat water so we can have warm showers. ;-) > Very fun, but it's a serious issue. It can helps to avoid another glacial > age though. That's yet another topic we should not touch on, because there are so many facets of global warming that are amazingly flawed that the only thing evident from it is that none of us have a fucking clue what's going on. > Sorry, bad english, bad english ;) > I don't know much about it, it was in US and it was long ago. Imagine a city of 200,000 "natives" and suddenly it becomes inflitrated with immigrants. What happens to that economy? Suddenly far less work is available because the jobs are taken, lots of people go hungry, and those who have the money don't want to subsidize the immigrants. They hang on to their money, the economy stifles and stalls until it crashes. > many history. I'm better with old history than history about last century. > It seems there is a kind of "prohibition" of teach about what happenned > last century in Spain. Why? > fault :o), but since 1980 Spain has become a more modern and free country. > Now resembles a bit more an european country. Catholicism has less > power now in Spain than ever, or I hope so. Something different happens > in South and Central America. As far as I'm concerned, there should be no church influence in government. It only stands to fuck it up even worse. > > Like Mormonism? FWIW, As an example, the largest distributor of alcohol in > > the United States is owned by Mormons. Go figger. > A good example, I see a lot of american mormons spreading their religion > here too. Just say "Mormons". I don't like seeing "American" and "Mormons" in the same sentence. It's insulting to Americans. ;-) > US Republican party sometimes frightens me and also other heavy religious > groups of your country. They bother us, too, but they're quite a bit more benign than you think. A Hitler or Stalin won't happen in the US. There are too many groups that wouldn't stand for it. If the president screwed up and started doing wacky things that would endanger the country, you can bet your ass there'd be multiple assassination attempts. > I can't stop thinking US can easily become a new > world empire (perhaps I'm a bit biased by communist influence though) and > I don't think the US model of capitalism is the best, I like more > the european is more government controlled (I preffer government controlled > than who knows controlled, but in fact perhaps is the same :p). I want less government. I want to figure out what's best for me - not them. Because one size does not fit all. I'm offended that I have to pay medicare when I have my own medical coverage. I have no option. I *HAVE* to support the people who are too old or can't afford it. What we have in this case is half assed. Everyone should have medical coverage subsidized by the government or no one should have it. Not any of this half way crap. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 00:19:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA02406 for dynarec-outgoing; Thu, 11 May 2000 00:18:06 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: DYNAREC: pop3.dynarec.com From: Michael Koenig Message-Id: <00036752ac3ebf19_mailit@mailhub.rrze.uni-erlangen.de> Date: Thu, 11 May 2000 09:21:44 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com I just configured my mailer to access the POP3 account on dynarec.com as well, and I received the test mail I sent there earlier - very nice ;-) -- M.I.K.e Sturgeon's Law: 90% of everything is crud. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 00:21:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA02425 for dynarec-outgoing; Thu, 11 May 2000 00:20:27 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 11 May 2000 00:24:46 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: pop3.dynarec.com In-Reply-To: <00036752ac3ebf19_mailit@mailhub.rrze.uni-erlangen.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > I just configured my mailer to access the POP3 account on dynarec.com as > well, and I received the test mail I sent there earlier - very nice ;-) Ah - then it looks like the DNS has propogated OK. mail.dynarec.com Should also work. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 00:40:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA02449 for dynarec-outgoing; Thu, 11 May 2000 00:39:22 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005110745.JAA00648@pons.ac.upc.es> Subject: Re: DYNAREC: Crusoe In-Reply-To: <39195549.CABC675F@eurocopter.de> "from Neil Griffiths at May 10, 2000 02:25:45 pm" To: dynarec@dynarec.com Date: Thu, 11 May 2000 09:45:09 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Do you know how scary I find this thought? I really don't like this idea at > all. To maybe "correct" children who may be born mentally or physically > disabled I can just about agree with, but I really don't want to think > about us messing around with our genes. What would happen if we got it > wrong? Or we found that it turned into a virus? > What would happen if someone begins a nuclear war? Nuclear power isn't the problem the problem is the humans themselves. Of course some kind of control is needed but why limit genetic to small gene modifications? I'm not talking on doing that tomorrow. And I don't like how genetic is being carried by genetical companies and how can be used for weapon researching. But genes are a new tool that humanity have to evolve and learn new things about itself and the universe. I think many people is afraid that genetic could change the perspective of the word "human" means. The small difference between humans that someones use as excuse for racism will be ridiculous. Genetic is one of science fields with the most interest for me. > > Just take a look on some countries as India. It's what happens in dictatures. > > That's also true, yes. > Something I have heared about India today. It a few years they will have more population than China. Fools. > My great-grandfather is Spanish, apparently. Not that you could tell - I've > got blonde hair. Actually, that's one worrying thing. My hair used to be > really white-blonde when I was younger. And my family decided to take a > holiday in Spain. All the Spanish people kept telling my parents that I > couldn't be their son because they had dark hair - and they all kept > rubbing my hair! Scary... :o > There are a lot of blonde people in Spain, it isn't the most usual hair color but it isn't so rare. The colour of the hair seems become lighter when you are young. My hair seemed blonde when I was a small child, and now (the few I have :p) is brown. Just another curiosity about genes ;) > > I was also baptised. But I managed to strike a deal with my parents. If I > went to church until I was 13, I could make up my own mind about going. > Guess what? I stopped going on my 13th birthday. :) > I have the luck that my parents (mainly my father) aren't religious people and they let me decide for myself when I was quite young. > > Yes, but I don't base my beliefs on the Bible. It has been so > mis-interpreted - and even CHANGED - through the years that it can't > resemble the original. If you're going to base your belief system around > something, you could at least keep it "pure". Even the Catholic church has > changed the bible through the years to make it say what they wanted it to > say. > Bible: a small collection of old stories about Jews. That for the old testament. The new testament is the story of a man called Jesus. For me it hasn't other meaning. Just a fiction or semi-fiction story. But it has been used as holy word, ha! Every time the science discovers something against the idea they have of the world they change the interpretation of the Bible. Give any book and I will create a religion around it, it's just a question of interpreting it. > I actually have read many books about different subjects (I read a lot) and > I've made up my own mind. Sure, you can believe the bible and that Jesus > was executed because he was a rebel. Or you can believe the documents that > he was killed because he believed in a "false god". > It's sure someone was executed, perhaps a rebel or a "messiah" (meaning someone a bit or a lot mad), the Roman was a powerful civilization and had good documents. The burocracy was really impressive. > I think he probably was a rebel leader, in fact. That may well be the > reason the Romans found out about him. But Pontious Pilate (sp?) did give > Jesus a chance to renounce his God. And he refused. See? > The problem was with Sinedrin, the Jew kind of senate, but what I have readed he was the leader of a new kind of Judaism and the Jew government didn't like it. They threatened the Roman governor (Judea was a very difficult province ever, and finally Romans had to expulse all Jews from it because of multiple rebellions) to go against him. > > Oh well, for me many religious people are fools and need psichiatric help. ;) > > But surely I can't be the only one who has sat down with priests and vicars > discussing religion? The one thing which was pointed out to me by a vicar > once which has made me think is when I was talking about how God could be > an explanation for why we're all here - we know (well, we hope!) we came > from the Big Bang. His reply? Why did the Big Bang happen? It's made me > think a bit. > God isn't an explanation it's just a justification or excuse for our unknowledgement. Any of the "demonstration" of God existence said by old phylosophs (Kant, and others) are really demonstrable. Just put them on a computer boolean solver and you will find a contradiction somewhere, it is just that when you have A and no A you can demostrate everything. And also they start from wrong principies. > Maybe there is a God. Maybe there's more! I just don't know - and I'm not > going to go out and start believing in them just because they *might* > exist. And I'm certainly not going to go out and call someone "evil" just > because I believe in one God and they don't. > I'm not care about gods. I haven't saw noone, while I'm not being affected by gods I don't care about them. > Christianity (including Catholicism): you have to remember that the book > isn't "Gods word" as is so often said. It was written by men, not God. > There isn't anything didn't write by men, we are STILL the only one intelligence in the world. (Discussion about Chimps and Dophins are another think, they don't have the same kind of intelligence/culture we have). > Can you tell that I have strong feelings on the subject? :) I just hate to > be called evil because I'm not Christian. So now I've learnt a lot about > religions, just so that if it happens again, I can question their own > beliefs. I had a head start on Christianity because I was forced to go to > church every Sunday - I learnt a lot. Mainly that I didn't want to be in > church every Sunday. :)) > My parents say I'm Christian because I was baptised ;) I can agree I have a great influence from Christianism but I'm not a Christian. I only follow my own ideas. I also have readed something about Budism and Islam. Budism can be understood as way of living, a philosophy. Islamism is Christianism and Judaism arranged for the arabian tribes traditions. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 01:24:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA02501 for dynarec-outgoing; Thu, 11 May 2000 01:24:17 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005110828.KAA16531@pons.ac.upc.es> Subject: Re: DYNAREC: Crusoe In-Reply-To: "from Neil Bradley at May 11, 2000 00:22:04 am" To: dynarec@dynarec.com Date: Thu, 11 May 2000 10:28:29 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > The same was true with the US, too. > > It seems clear that Russian isn't the best example. > > I don't think there is a "good" example of why capitalism doesn't work. > > Right. The communism implemented was one out of fear and control. Very > similar to Hitler and his comrades. ;-) > Yes, you hit the point. Stalin was the same kind of mad as Hitler and I always thought it was worst for comunism than for capitalism. > > (something like the democrat party) governments on France and Germany. > > Communism breeds leadership and also burocracy because gives a lot of > > power to the government. > > It gives total control to the government, which is what I consider to be > Marxist communism. For true and pure communism to work, everyone must have > all of their needs and wants met. Without replicators, that task is > impossible. > Perhaps people doesn't really knows what their real needs are. What someone needs really for living? > > For example: drugs. Drugs is a good example of what capitalism means. > > Drugs are a horrible example of capitalism, and it has no bearing on what > capitalism is. Capitalism has to do with a free market, not an underground > one. > Ha! Capitalism has to do with earn money/power. > Captialism is the concept of a "Free market", where any Joe can sell > anything he wants for whatever price he wishes to charge, and allows > another Joe to compete with him. Customers vote with their feet. It means > I have the right to work my ass off to better myself, and if I work harder > than the guy next to me, I deserve extra compensation for my extra work. > I think the real phylosophy behind capitalism isn't that is to earn as much power/money/resources from other people as you can to become the richest. A kind of wild natural selection. There are some theorically human ideas as solidarity that aren't covered with capitalism. We have different conceptions about it. > I'm not about to give up my standard of living, but I have no problem > bringing everyone else up to my standard of living. But I ought to have > the right to better myself instead of being forced to live in poverty > because that's the standard for everyone. > A bit egoistic but it's fine for me. My idea of communism is: work together so everybody could live better one day or other. We share the same problems we just have to collaborate not to compete. There is also the alternative of competing collaboration ;). > > to convert it in a great bussine. You know what happenned when > > alcohol was forbidden in US. > > It made the Kennedys rich. ;-) > But then they all dead ;). > > I think we give different meanings to the word > > "capitalism", perhaps you mean what I name "controlled capitalism". > > I think what you mean is what we call Corporatism, where companies are > just trying to squeeze every last dollar out of everyone and everything in > site (I.E. Disney and the music industry is the biggest example of > this). But in a free market, we can undermine them if it becomes bad > enough, and it has happened. It's happening to MS with Linux... > But power as energy or mass has the propierty to easily concentrate in one small point. From a good starting scene you could become ever in a monopolistic scene. This is because capitalism helps ever the better, when a someone gets enough power it will ever get over all newcommers. You have to have a powerful government to avoid that but government ever follow the money and power. You will have ever the same problem. It's the kind of philosophy behind capitalism what it's grown. Greedy and egoism are in the roots of capitalism. > > > > the energy is converted in another kind of energy and finally in the more > > > > useless of all, hot. > > > Find a way to recycle it to heat water so we can have warm showers. ;-) > > Very fun, but it's a serious issue. It can helps to avoid another glacial > > age though. > > That's yet another topic we should not touch on, because there are so > many facets of global warming that are amazingly flawed that the only > thing evident from it is that none of us have a fucking clue what's going > on. > Too true. Lately I have readed that global warmup will become in more unestable wheather, more hot first but later will become in a new glacial age. > > Sorry, bad english, bad english ;) > > I don't know much about it, it was in US and it was long ago. > > Imagine a city of 200,000 "natives" and suddenly it becomes inflitrated > with immigrants. What happens to that economy? Suddenly far less work is > available because the jobs are taken, lots of people go hungry, and those > who have the money don't want to subsidize the immigrants. They hang on to > their money, the economy stifles and stalls until it crashes. > Europe and US have now that problem now also. A lot of people from south poor countries are coming. This is raising racism all over Europe and is becoming a great problem. And the solution isn't to let them go into Europe or US. It is to arrange things in their countries. But capitalist doesn't like that because they want cheaper workhand. Capitalism is against full emploiment because makes workhand too expensive, what they call "full emploiment" it's 5% of unemploiment. But still in that 5% could be a lot of people suffering. > > many history. I'm better with old history than history about last century. > > It seems there is a kind of "prohibition" of teach about what happenned > > last century in Spain. > > Why? > Something similar what it's happening now in countries as Argentina or Chile. The non democratic band won the Civil War, a lot of year later (when the dictator died) there was a peaceful transition. Now the descendants of the winners want everyone forget what happenned in Spain that years. I don't want revenge but I can't forget what happened. They destroyed the country and Spain was lost decades of development. It becomes one of the less modern european country until 1960-70 when things become to change. Now we are nearly as all other european countries. > As far as I'm concerned, there should be no church influence in > government. It only stands to fuck it up even worse. > They Spanish church still tries to influence in politic. Hopefully they aren't so succeful now. > > > Like Mormonism? FWIW, As an example, the largest distributor of alcohol in > > > the United States is owned by Mormons. Go figger. > > A good example, I see a lot of american mormons spreading their religion > > here too. > > Just say "Mormons". I don't like seeing "American" and "Mormons" in the > same sentence. It's insulting to Americans. ;-) > I only say they were from US. > > US Republican party sometimes frightens me and also other heavy religious > > groups of your country. > > They bother us, too, but they're quite a bit more benign than you think. A > Hitler or Stalin won't happen in the US. There are too many groups that > wouldn't stand for it. If the president screwed up and started doing wacky > things that would endanger the country, you can bet your ass there'd be > multiple assassination attempts. > I feel a bit better ;) > > I can't stop thinking US can easily become a new > > world empire (perhaps I'm a bit biased by communist influence though) and > > I don't think the US model of capitalism is the best, I like more > > the european is more government controlled (I preffer government controlled > > than who knows controlled, but in fact perhaps is the same :p). > > I want less government. I want to figure out what's best for me - not > them. Because one size does not fit all. > It could be good if you are stronger than anyone else or when everybody is good people but could be dangerous if it isn't the case. > I'm offended that I have to pay medicare when I have my own medical > coverage. I have no option. I *HAVE* to support the people who are too old > or can't afford it. What we have in this case is half assed. Everyone > should have medical coverage subsidized by the government or no one should > have it. Not any of this half way crap. > The better is that all have medical coverage subsidized by the government, as it happens in europe. The problem is there are some people who are so silly to try to get over benefits from it. Do you understand the word solidarity? The problem against comunism is that people wants solidarity for themselves but not solidarity for the others. But I think it is more a problem of culture and education than a problem of human nature. But who in could change so heavily the culture? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 02:00:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA02698 for dynarec-outgoing; Thu, 11 May 2000 02:00:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005110906.LAA02624@pons.ac.upc.es> Subject: Re: DYNAREC: Re: MUL8: SI Small test (fwd) In-Reply-To: "from Neil Bradley at May 10, 2000 06:41:29 pm" To: dynarec@dynarec.com Date: Thu, 11 May 2000 11:06:11 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Grrrr.. This kind of thing really annoys me. I really don't understand > *NOT* protecting yourself during coding at every possible turn. The > background: > > Instead of calling malloc(), create a MyMalloc() or equivalent macro that: > > * Verifies the size isn't 0 > * Makes damn sure it's a valid pointer on return > * Zeros the memory > > And instead of having free(), create a MyFree(void **) that does: > > * Verifies that the incoming pointer isn't NULL > * Verifies that what the incoming pointer points to isn't NULL > * Frees the memory block > * Zeros what the incomnig pointer points to to prevent pointer reuse > > It's a preventative measure to catch common problems (and problems created > by side effects), and I get *ARGUED WITH* that this shouldn't be done, and > that somehow it's an "Oh, well, if *YOU* have *THOPSE* kinds of problems, > then by all means, go ahead!" type problem. Sheesh! What is it with newbie > pride anyway? > Do you want support? You have my support. Preventive measures are ever better than later get into great problems. I don't know why Nyef is against that. The only thing against your point is lazyness. And I can't think he is a so good programmer that he never makes a mistake. And what he has said about moderm software development ... Well, I'm really angry with the kind of buggy software we have all to deal with. The great problem with Nyef point is that if you let a small bug once you will admit more and more bugs in later developments. Finally you will have an useless system. Oh, I will have to implement it on the SI project. ;) I saw your functions MyMalloc and MyFree on DRMZ80 code and I realised you used them for checking problems. But I don't really thought it was so important. In fact I have a so small programming experience with C that I still don't know much about this kind of problems. The discussion has helped me to see that I have found sometimes this kind of problems in my code but I didn't realised how to handle it. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 02:06:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA02713 for dynarec-outgoing; Thu, 11 May 2000 02:06:32 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 11 May 2000 02:10:52 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Crusoe In-Reply-To: <200005110828.KAA16531@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > It gives total control to the government, which is what I consider to be > > Marxist communism. For true and pure communism to work, everyone must have > > all of their needs and wants met. Without replicators, that task is > > impossible. > Perhaps people doesn't really knows what their real needs are. What > someone needs really for living? Needs meaning clean water, decent quality food, basic transportation, etc... I don't ever expect the government to supply me with computers because I need/want them, but I would expect any sort of communist control to take care of the things that keep me alive. Anything beyond that is luxury. > > Drugs are a horrible example of capitalism, and it has no bearing on what > > capitalism is. Capitalism has to do with a free market, not an underground > Ha! Capitalism has to do with earn money/power. Uh... no. That's how it can be abused. You're taking one small facet of how it can be bent and think it's the basic definition of the word. NOT SO! > > Captialism is the concept of a "Free market", where any Joe can sell > > anything he wants for whatever price he wishes to charge, and allows > > another Joe to compete with him. Customers vote with their feet. It means > > I have the right to work my ass off to better myself, and if I work harder > > than the guy next to me, I deserve extra compensation for my extra work. > I think the real phylosophy behind capitalism isn't that is to earn as much > power/money/resources from other people as you can to become the richest. Wrong. See above. > A kind of wild natural selection. There are some theorically human ideas > as solidarity that aren't covered with capitalism. We have different > conceptions about it. Except consider that I'm smack dab in the middle of it and you're on the outside looking in. I have a unique perspective. Just about everything you hear about is large corporate corporatism, which is *NOT* what capitalism is all about. Very little of large corporations activities affect my daily life, but that's all you hear about on the news. I can see why your views of it are so skewed. > > I'm not about to give up my standard of living, but I have no problem > > bringing everyone else up to my standard of living. But I ought to have > > the right to better myself instead of being forced to live in poverty > > because that's the standard for everyone. > A bit egoistic but it's fine for me. What's egotistic about it? If I work harder than the next guy, he doesn't deserve as much as me. If he works just as hard, he does. If he works harder, he deserves more. > My idea of communism is: work together > so everybody could live better one day or other. A bit of background: I'm in the tax bracket of what's called (in tax categories) the "super rich". There is only one tax bracket above me. 36% of my income goes to the federal government. My total taxation rate is 48% if you include state tax, medicare, and social security. My view on money and wealth mostly in line with what most of my peers think. I know a few greedy people, but they are in their late 30s and still single because of their gluttony. I'll admit that I want more money, but my motivation is not what you think. I look at money as an enabling tool. My only goal now is to make enough so I can retire early, and do things with myself that will benefit a large group of people, and spend time with my family. In a way, with Z80 emulators, talks about dynamic recompilation, etc... I'm giving away my hard work for the benefit of others, and I'd do that full time if I could. So in other words, how can I take my money and make it benefit others? If I was to suddenly discover replicator technology, I wouldn't sell it. I'd patent it and place it in the public domain so no one and everyone could own it. I am constantly fighting people at work who are in it for the money. I find their presence in my teams offensive because I do care about doing a good job, and they just want to get it done so they can get paid. They are the dark side of capitalism. > We share the same problems > we just have to collaborate not to compete. There is also the alternative > of competing collaboration ;). But competition also moves us forward. Do you really think we'd have greater than 1GHZ CPUs today if there wasn't fierece competition? > a someone gets enough power it will ever get over all newcommers. You have > to have a powerful government to avoid that but government ever follow the > money and power. You will have ever the same problem. It's the kind of > philosophy behind capitalism what it's grown. Greedy and egoism are in the > roots of capitalism. No, you've got that backwards, Victor. Greed and egotism can sprout out of capitalism, but it does not require greed or ego to be a capitalist. I'm telling you, as someone who is right smack dab in the middle of it, your views are flawed! I can imagine why, though, because all you get are reports about how company x is crushing company y, etc... Consider that there are millions of people who are part of the capitalist system that don't share the crush all views of tyrannical corporations. Most don't. > > That's yet another topic we should not touch on, because there are so > > many facets of global warming that are amazingly flawed that the only > > thing evident from it is that none of us have a fucking clue what's going > Too true. Lately I have readed that global warmup will become in more > unestable wheather, more hot first but later will become in a new glacial > age. Tune in next week when that story changes with new findings. ;-) > > who have the money don't want to subsidize the immigrants. They hang on to > > their money, the economy stifles and stalls until it crashes. > Europe and US have now that problem now also. Not to the extreme it did in the late 20's when the US population was about 10 million and 20,000 new people were immigrating *PER DAY*. Now we've got over 300 million in the US, and immigration is far lower than that. We also have an economy to support it. > like that because they want cheaper workhand. Capitalism is against full > emploiment because makes workhand too expensive, what they call "full > emploiment" it's 5% of unemploiment. But still in that 5% could be a lot > of people suffering. Again, you're attributing too much to capitalism. Unemployment is at 4.3% currently, and that's considered noise by anyone who has studied capitalistic systems. One out of every 20 is unemployed, which at this rate means that they're just moving jobs. We cannot recruit people fast enough in basically any industry in the US. We're hiring some real shitheads in the tech sector, too, and a lot are foreigners. > > As far as I'm concerned, there should be no church influence in > > government. It only stands to fuck it up even worse. > They Spanish church still tries to influence in politic. Hopefully they > aren't so succeful now. I noticed the Catholic church has started issuing apologies and is now teaching from the bible rather than Catholic doctorines. Those are STRONG signs that it's crumbling. > > Just say "Mormons". I don't like seeing "American" and "Mormons" in the > > same sentence. It's insulting to Americans. ;-) > I only say they were from US. Don't even say that. Just say "Mormons". That's the upitome of the dark side of a capitalistic pyramid business hidden behind the shroud of a religion. > > They bother us, too, but they're quite a bit more benign than you think. A > > Hitler or Stalin won't happen in the US. There are too many groups that > > wouldn't stand for it. If the president screwed up and started doing wacky > > things that would endanger the country, you can bet your ass there'd be > > multiple assassination attempts. > I feel a bit better ;) Think of it this way - The United States does have a federal government which oversees minimum standards of all 50 states, but the states can do what they want within reason. We have an open country where we can lambast the president or anyone in the political system without fear of retaliation or jail, so we're going to speak our mind when something gets screwed up. Take a look at Viet Nam. Even though it took 5 years of protesting, it eventually wore down the pride and government officials until we pulled out (and that whole Viet Nam thing was a dumb idea to begin with). All that was caused by a bunch of radical hippies. Take a look at David Duke. This was a guy who was part of the KKK, a racist white supremicist running for Congress. This guy is serious bad news. Go to http://www.duke.org/. He's *EXTREMELY* well known and *VERY* unpopular. He might have a chance of getting support in a few southeastern states, but no one elsewhere would tolerate him. He's as close to a Hitler as we've got. These people get found out quick. He's now trying to get a license to sell life insurance. So not to worry. That kind of tyranny will be overthrown very quickly. > > I want less government. I want to figure out what's best for me - not > > them. Because one size does not fit all. > It could be good if you are stronger than anyone else or when everybody > is good people but could be dangerous if it isn't the case. Of course, but my standard of living shouldn't have to be lowered to the least common denominator. We should just bring everyone up! > > I'm offended that I have to pay medicare when I have my own medical > > coverage. I have no option. I *HAVE* to support the people who are too old > > or can't afford it. What we have in this case is half assed. Everyone > The better is that all have medical coverage subsidized by the government, > as it happens in europe. The problem is there are some people who are so > silly to try to get over benefits from it. Yes, and that's the greed I've been talking about that prevlaent in just about everyone. As you understand first hand, it's present even without capitalism. > Do you understand the word > solidarity? The problem against comunism is that people wants solidarity > for themselves but not solidarity for the others. But I think it is more > a problem of culture and education than a problem of human nature. But > who in could change so heavily the culture? Right. I do agree that basic needs (education, medical, food) should be governmentally subsidized, either fully or not at all - just not in between. If we had some sort of flat tax that gave everyone medical benefits, I'd surely go for it. That would be better for the health of the nation and for the world. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 02:11:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA02726 for dynarec-outgoing; Thu, 11 May 2000 02:11:34 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005110917.LAA16549@pons.ac.upc.es> Subject: DYNAREC: Evil idea In-Reply-To: <00036752ac3ebf19_mailit@mailhub.rrze.uni-erlangen.de> "from Michael Koenig at May 11, 2000 09:21:44 am" To: dynarec@dynarec.com Date: Thu, 11 May 2000 11:17:21 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com I've got an evil idea for dynarec.com. A page against Transmeta. I can forgive they patent something like "the combination of a procesosor and a software that ....". I can forgive they hide all useful information about their products. I can forgive how they are using Linus Torvaldis. But what I can't forgive is they call "Code Morpher" to a dynarec. ;)) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 02:12:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA02736 for dynarec-outgoing; Thu, 11 May 2000 02:12:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 11 May 2000 02:16:50 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Evil idea In-Reply-To: <200005110917.LAA16549@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've got an evil idea for dynarec.com. A page against Transmeta. > I can forgive they patent something like "the combination of a procesosor and > a software that ....". I can forgive they hide all useful information about > their products. I can forgive how they are using Linus Torvaldis. But > what I can't forgive is they call "Code Morpher" to a dynarec. Someone want to pay the $35 it costs to register "codemorpher.com"? We can have it point to Dynarec.com. I like your evil idea, Victor. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 02:15:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA02748 for dynarec-outgoing; Thu, 11 May 2000 02:15:21 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 11 May 2000 02:19:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Re: MUL8: SI Small test (fwd) In-Reply-To: <200005110906.LAA02624@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Do you want support? You have my support. If you feel you should grace it with a reply, feel free. ;-) > I saw your functions MyMalloc and MyFree on DRMZ80 code and I realised you > used them for checking problems. But I don't really thought it was so > important. In DRMZ80, you wouldn't believe how critical it is. Take a look at how much memory is allocated and deallocated. If I accidentally overwrote something just a little bit or went past the end of a structure, it'll screw me. This will catch it. > In fact I have a so small programming experience with C that I > still don't know much about this kind of problems. The discussion has > helped me to see that I have found sometimes this kind of problems in > my code but I didn't realised how to handle it. Right. And what's more, these are the types of problems that occur and you have no diea why your code is acting strange. I found it kind of offensive when he said "So if *YOU* make *THOSE* kinds of mistakes and you think you need to defend against them, so be it.", as if somehow he's above it all. I had to reprimand one of our employees (our weakest engineer) because of this exact attitude, where somehow he was infalliable. We had to rewrite 5 major pieces of his modules and did it in less than half the time that it took him to do it. I have so many horror stories of this kind of stuff that when someone doesn't listen it really infuriates me. It's one thing to say "Well, I see your point but I don't worry about it since the project is small" and another thing to vehemently defend against spending such a minor amount of time to help prevent problems. GeeZ1 -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 02:23:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA02761 for dynarec-outgoing; Thu, 11 May 2000 02:23:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <391A7BD8.4941F1C6@eurocopter.de> Date: Thu, 11 May 2000 11:22:32 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Evil idea References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > I've got an evil idea for dynarec.com. A page against Transmeta. > > I can forgive they patent something like "the combination of a procesosor and > > a software that ....". I can forgive they hide all useful information about > > their products. I can forgive how they are using Linus Torvaldis. But > > what I can't forgive is they call "Code Morpher" to a dynarec. > > Someone want to pay the $35 it costs to register "codemorpher.com"? We can > have it point to Dynarec.com. I was just about to ask if that exists... :) > I like your evil idea, Victor. ;-) So do I. Very evil. Very funny. :)) Although "code-morpher" is a very good description for "binary translation with self-modifying code handlers". It's much shorter. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 02:29:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA02774 for dynarec-outgoing; Thu, 11 May 2000 02:29:49 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005110935.LAA28085@pons.ac.upc.es> Subject: Re: DYNAREC: Evil idea In-Reply-To: <391A7BD8.4941F1C6@eurocopter.de> "from Neil Griffiths at May 11, 2000 11:22:32 am" To: dynarec@dynarec.com Date: Thu, 11 May 2000 11:35:09 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Although "code-morpher" is a very good description for "binary translation > with self-modifying code handlers". It's much shorter. :)) > Code Morpher remembers me the Mighty Morphing Power Rangers. It is a name for selling a product. And for a name easy and that sound well I like more the old "dynarec". Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 02:49:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA02800 for dynarec-outgoing; Thu, 11 May 2000 02:49:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005110955.LAA17541@pons.ac.upc.es> Subject: Re: DYNAREC: Re: MUL8: SI Small test (fwd) In-Reply-To: "from Neil Bradley at May 11, 2000 02:19:41 am" To: dynarec@dynarec.com Date: Thu, 11 May 2000 11:55:08 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Do you want support? You have my support. > > If you feel you should grace it with a reply, feel free. ;-) > I think I already have enough problems in MUL8. ;) I didn't write yesterday the continuation of the SI project, may be this afternoon. > > I saw your functions MyMalloc and MyFree on DRMZ80 code and I realised you > > used them for checking problems. But I don't really thought it was so > > important. > > In DRMZ80, you wouldn't believe how critical it is. Take a look at how > much memory is allocated and deallocated. If I accidentally overwrote > something just a little bit or went past the end of a structure, it'll > screw me. This will catch it. > I still have to take a more careful look at DRMZ80, but I never find the time. > > Right. And what's more, these are the types of problems that occur and you > have no diea why your code is acting strange. > Yes I still have one of that problems in my work. I'm debugging code from other people and there is something that is overwriting some of the data I added. I still haven't found it. > I found it kind of offensive when he said "So if *YOU* make *THOSE* kinds > of mistakes and you think you need to defend against them, so be it.", as > if somehow he's above it all. > Sure he will change his opinion when he have to fight against some of those hard to identify mistakes. > I had to reprimand one of our employees (our weakest engineer) because of > this exact attitude, where somehow he was infalliable. We had to rewrite 5 > major pieces of his modules and did it in less than half the time that it > took him to do it. > I don't have such a problem. I know I'm very fallliable, unluckyly. ;) > I have so many horror stories of this kind of stuff that when someone > doesn't listen it really infuriates me. It's one thing to say "Well, I see > your point but I don't worry about it since the project is small" and > another thing to vehemently defend against spending such a minor amount of > time to help prevent problems. GeeZ1 > There are many horror stories about programming and computers. One of my professors talked me about a engeniery company that buyed a more powerful computer with a lot of memory. They wanted to speedup a heavy calculation application, but they got a small improvement. They called our university stuff and they found they was using a Fortran program (Fortran is the more used language for engeniery) that has a static memory allocation (it performed matrix calculations so the most memory the better) with the size of the max memory used in a DEFINE. So they were using only a small set of the new computer memory. This kind of stories must show people who works with computers to pay attention about what they really are doing. I don't know about other engenieries or professions but in computers there are too many bad made work. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 05:09:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA02973 for dynarec-outgoing; Thu, 11 May 2000 05:09:31 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <391AA255.3F32B128@eurocopter.de> Date: Thu, 11 May 2000 14:06:45 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: Website is up! References: <200005110955.LAA17541@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, The Dynarec website is now up. If you want to take a look at the one page we have, feel free. It's also the final version of *this* logo, I'll hopefully be creating a new one when I get a good image of a CPU to use. Also, I'll be changing the whole colour scheme now. While I'm doing that, I'd like a little input. Do you prefer tables or frames? I don't mind either way, so if you want to make your choice then this is a good time to do so. I'm thinking that tables may be more useful, but if you don't like them then I can live with tables... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 05:42:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA03019 for dynarec-outgoing; Thu, 11 May 2000 05:42:54 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005111248.OAA13643@pons.ac.upc.es> Subject: Re: DYNAREC: Crusoe In-Reply-To: "from Neil Bradley at May 11, 2000 02:10:52 am" To: dynarec@dynarec.com Date: Thu, 11 May 2000 14:48:26 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Needs meaning clean water, decent quality food, basic transportation, > etc... I don't ever expect the government to supply me with computers > because I need/want them, but I would expect any sort of communist control > to take care of the things that keep me alive. Anything beyond that is > luxury. > Agreed. > Uh... no. That's how it can be abused. You're taking one small facet of > how it can be bent and think it's the basic definition of the word. NOT > SO! > But it's being abused. > > A kind of wild natural selection. There are some theorically human ideas > > as solidarity that aren't covered with capitalism. We have different > > conceptions about it. > > Except consider that I'm smack dab in the middle of it and you're on the > outside looking in. I have a unique perspective. Just about everything you > hear about is large corporate corporatism, which is *NOT* what capitalism > is all about. Very little of large corporations activities affect my daily > life, but that's all you hear about on the news. I can see why your views > of it are so skewed. > Large corporations don't affect your life? It's hard to believe. Large corporation have the control of the most mass production factories, the most advanced technologies and the most resources. And they also have a lot of power in governments. Really hard to believe. Large corporate corporatism is how capitalism is actually being carried. Just take a look on how many big corporations are fussing each others. > > > I'm not about to give up my standard of living, but I have no problem > > > bringing everyone else up to my standard of living. But I ought to have > > > the right to better myself instead of being forced to live in poverty > > > because that's the standard for everyone. > > A bit egoistic but it's fine for me. > > What's egotistic about it? If I work harder than the next guy, he doesn't > deserve as much as me. If he works just as hard, he does. If he works > harder, he deserves more. > Think about many people working really hard and getting the worst pay. The people who earn the most money in the real capitalism system isn't who works more but who has power or control of the capital. How much money earns a miner, they work really hard and it's a dangerous work. And then think in how much money earn the directive of a large mine company. Perhaps he think he is working hardest, but is really? It's perhaps ok a small difference because there are fewer directives, prepared people, but the real difference is too large. > > My idea of communism is: work together > > so everybody could live better one day or other. > > A bit of background: I'm in the tax bracket of what's called (in tax > categories) the "super rich". There is only one tax bracket above me. > 36% of my income goes to the federal government. My total taxation rate is > 48% if you include state tax, medicare, and social security. My view on > money and wealth mostly in line with what most of my peers think. I know a > few greedy people, but they are in their late 30s and still single because > of their gluttony. > You can consider yourself afortunate. While there is a big difference in what someone earns for its work this kind of taxes is needed. > I'll admit that I want more money, but my motivation is not what you > think. I look at money as an enabling tool. My only goal now is to make > enough so I can retire early, and do things with myself that will benefit > a large group of people, and spend time with my family. In a way, with Z80 > emulators, talks about dynamic recompilation, etc... I'm giving away my > hard work for the benefit of others, and I'd do that full time if I could. > I have also similar thoughts, but I'm still in the beginning ;) The problem is how money makes us slaves of work. And although you think in that way (the same I think also), there are too many people who don't. What an excuse has someone to control more money/power than a small country? It's so intelligence or useful for the humanity that we need to let them so much resources? I don't think so. Money has become an illness for many people who only thought in earn more and more, why? I can't what their thoughts are. And the people who has so much money also has a great control over the world. What made them better? > So in other words, how can I take my money and make it benefit others? If > I was to suddenly discover replicator technology, I wouldn't sell it. I'd > patent it and place it in the public domain so no one and everyone could > own it. > A single person can't do anything, it's needed a large change in the society. > I am constantly fighting people at work who are in it for the money. I > find their presence in my teams offensive because I do care about doing a > good job, and they just want to get it done so they can get paid. They are > the dark side of capitalism. > They are the most spreaded side of the capitalism. Perhaps the kind of dreamed capitalism you talk about it's good, but the real capitalism which is being implemented all around the world isn't that. It's a very greedy kind of capitalism. The problem isn't the theory but the implementation. > > We share the same problems > > we just have to collaborate not to compete. There is also the alternative > > of competing collaboration ;). > > But competition also moves us forward. Do you really think we'd have > greater than 1GHZ CPUs today if there wasn't fierece competition? > Do you think that the crazy race for 1Ghz between Intel and AMD is a good example? Competition is good. Too much competition isn't, it can waste more resources than really needed. > > a someone gets enough power it will ever get over all newcommers. You have > > to have a powerful government to avoid that but government ever follow the > > money and power. You will have ever the same problem. It's the kind of > > philosophy behind capitalism what it's grown. Greedy and egoism are in the > > roots of capitalism. > > No, you've got that backwards, Victor. Greed and egotism can sprout out of > capitalism, but it does not require greed or ego to be a capitalist. > Of course it doesn't. But many of the capitalism I see is builded around greed and ego. > I'm telling you, as someone who is right smack dab in the middle of it, > your views are flawed! I can imagine why, though, because all you get are > reports about how company x is crushing company y, etc... Consider that > there are millions of people who are part of the capitalist system that > don't share the crush all views of tyrannical corporations. Most don't. > I'm sure that my views are biased, as well as yours can be biased in another way. But this doesn't change the reality. And the hope we have that a better world could arise :) And I'm also in the capitalism system, still as a middle time worker, but I'm. I bought thinks in shops and I have private propierty. But I think that there are many things that must change. And I also understand there are a lot of people like me. But the people who is really controlling this world seems to be nearer to the tyrannical corporations. > > > who have the money don't want to subsidize the immigrants. They hang on to > > > their money, the economy stifles and stalls until it crashes. > > Europe and US have now that problem now also. > > Not to the extreme it did in the late 20's when the US population was > about 10 million and 20,000 new people were immigrating *PER DAY*. Now > we've got over 300 million in the US, and immigration is far lower than > that. We also have an economy to support it. > Now immigration is more controlled but can easily become uncontrolled. Spain is called the south door of europe, many people from north africa and lately also from center africa come illegally. They are still relatively few, but their number is growing. You have to think we are only 15 Km from Morocco coast. They usually come in small boats, many of them sink but many more come. It could become a very great problem in next years. > > Again, you're attributing too much to capitalism. Unemployment is at 4.3% > currently, and that's considered noise by anyone who has studied > capitalistic systems. One out of every 20 is unemployed, which at this > rate means that they're just moving jobs. We cannot recruit people fast > enough in basically any industry in the US. We're hiring some real > shitheads in the tech sector, too, and a lot are foreigners. > Theorically. I don't like capitalistic theory. > I noticed the Catholic church has started issuing apologies and is now > teaching from the bible rather than Catholic doctorines. Those are STRONG > signs that it's crumbling. > They still have some influence in poor countries as South America, but they are fading out. > Don't even say that. Just say "Mormons". That's the upitome of the dark > side of a capitalistic pyramid business hidden behind the shroud of a > religion. > A really good definition of Mormons. > Think of it this way - The United States does have a federal government > which oversees minimum standards of all 50 states, but the states can do > what they want within reason. We have an open country where we can lambast > the president or anyone in the political system without fear of > retaliation or jail, so we're going to speak our mind when something gets > screwed up. Take a look at Viet Nam. Even though it took 5 years of > protesting, it eventually wore down the pride and government officials > until we pulled out (and that whole Viet Nam thing was a dumb idea to > begin with). All that was caused by a bunch of radical hippies. > Too large time spended trying to convince them. A lot of people from both sides died in that war. But something that seems clear today can easily change another day. And your southern states are a bit worrying. > So not to worry. That kind of tyranny will be overthrown very quickly. > I hope so. > > Of course, but my standard of living shouldn't have to be lowered to the > least common denominator. We should just bring everyone up! > If it's possible, but we can't arise the standard living of 6 billions to the standard living of Bill Gates or another super-rich. The resources are far limited. We could perhaps a heavy robotized society with only some millions of people living, but what happens with the rest of the people. Population can easily grown farther than any resource or technique you can think about. > Yes, and that's the greed I've been talking about that prevlaent in just > about everyone. As you understand first hand, it's present even without > capitalism. > The humanity needs to change they way the see the live. A new kind of culture must arise that helps greedy to be limited. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 08:03:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA03189 for dynarec-outgoing; Thu, 11 May 2000 08:03:34 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Evil idea From: Michael Koenig In-Reply-To: <200005110917.LAA16549@pons.ac.upc.es> Message-Id: <000367592d027026_mailit@mailhub.rrze.uni-erlangen.de> References: <200005110917.LAA16549@pons.ac.upc.es> Date: Thu, 11 May 2000 17:07:15 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >I've got an evil idea for dynarec.com. A page against Transmeta. >I can forgive they patent something like "the combination of a procesosor and >a software that ....". I can forgive they hide all useful information about >their products. I can forgive how they are using Linus Torvaldis. But >what I can't forgive is they call "Code Morpher" to a dynarec. >;)) "At last we will reveal ourselves to Transmeta. At last we will have revenge." Sorry, just couldn't resist ;-) >Victor Moya -- M.I.K.e Are you a turtle? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 08:03:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA03194 for dynarec-outgoing; Thu, 11 May 2000 08:03:43 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: pop3.dynarec.com From: Michael Koenig In-Reply-To: Message-Id: <0003675924edb889_mailit@mailhub.rrze.uni-erlangen.de> References: Date: Thu, 11 May 2000 17:04:59 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Ah - then it looks like the DNS has propogated OK. mail.dynarec.com Should >also work. Indeed, I configured pop3 and mail, although I only mentioned pop3. It also means that the server uses pap instead of chap, otherwise it wouldn't work with BeOS. >-->Neil -- M.I.K.e If while you are in school, there is a shortage of qualified personnel in a particular field, then by the time you graduate with the necessary qualifications, that field's employment market is glutted. -- Marguerite Emmons --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 08:09:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA03208 for dynarec-outgoing; Thu, 11 May 2000 08:09:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Website is up! From: Michael Koenig In-Reply-To: <391AA255.3F32B128@eurocopter.de> Message-Id: <000367594288e721_mailit@mailhub.rrze.uni-erlangen.de> References: <200005110955.LAA17541@pons.ac.upc.es> <391AA255.3F32B128@eurocopter.de> Date: Thu, 11 May 2000 17:13:16 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >The Dynarec website is now up. If you want to take a look at the one page >we have, feel free. It's also the final version of *this* logo, I'll >hopefully be creating a new one when I get a good image of a CPU to use. BTW, the logo is centered in Netscape and Opera and left aligned in NetPositive, but I don't know why. As long as it doesn't hinder usability I can live with that though. >Also, I'll be changing the whole colour scheme now. While I'm doing that, >I'd like a little input. Do you prefer tables or frames? Good question. Normally I don't like frames that much. I think that means that I perfer tables ;-) >I don't mind >either way, so if you want to make your choice then this is a good time to >do so. I'm thinking that tables may be more useful, but if you don't like >them then I can live with tables... :) I guess you mean you can live with frames... >Neil. -- M.I.K.e Only through hard work and perseverance can one truly suffer. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 08:20:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA03247 for dynarec-outgoing; Thu, 11 May 2000 08:20:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Website is up! From: "M.I.K.e" In-Reply-To: <391AA255.3F32B128@eurocopter.de> Message-ID: <00036759678b5442_mailit@mail.dynarec.com> References: <200005110955.LAA17541@pons.ac.upc.es> <391AA255.3F32B128@eurocopter.de> Date: Thu, 11 May 2000 17:23:37 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Forgot to mention that you wrote me as "Koenig" again instead of "K& ouml;nig". BTW, does that mean that all group members now have the right to modify the global site? >Neil. -- M.I.K.e Software, n.: Formal evening attire for female computer analysts. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 08:23:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA03260 for dynarec-outgoing; Thu, 11 May 2000 08:23:06 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 11 May 2000 16:28:47 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! Message-ID: <20000511162846.A1071@jtb20b.quns.cam.ac.uk> References: <200005110955.LAA17541@pons.ac.upc.es> <391AA255.3F32B128@eurocopter.de> <000367594288e721_mailit@mailhub.rrze.uni-erlangen.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: <000367594288e721_mailit@mailhub.rrze.uni-erlangen.de>; from Michael Koenig on Thu, May 11, 2000 at 05:13:16PM +0200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, May 11, 2000 at 05:13:16PM +0200, Michael Koenig wrote: > > >Also, I'll be changing the whole colour scheme now. While I'm doing that, > >I'd like a little input. Do you prefer tables or frames? > > Good question. Normally I don't like frames that much. > I think that means that I perfer tables ;-) > > >I don't mind > >either way, so if you want to make your choice then this is a good time to > >do so. I'm thinking that tables may be more useful, but if you don't like > >them then I can live with tables... :) > > I guess you mean you can live with frames... I'd suggest a combination of tables and shtml (might need to be enabled in httpd.conf [1]) - this lets you do frame-type stuff like page headers and side toolbars, but without frames ;-) Using shtml would probably help to make the site more maintainable, too. Jules [1] The lines are: AddType text/html .shtml AddHandler server-parsed .shtml -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 12:50:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA03600 for dynarec-outgoing; Thu, 11 May 2000 12:50:24 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: DYNAREC: Homepage & DRFAQ From: "M.I.K.e" Message-ID: <0003675d310ca978_mailit@mail.dynarec.com> Date: Thu, 11 May 2000 21:54:42 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com I changed my dynarec.com hompage (mainly collection of interesting links) and also uploaded a new revision of DRFAQ with only small changes, but you might want to take a look at that modified credits section ;-) -- M.I.K.e Help me, I'm a prisoner in a Fortune cookie file! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 15:08:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA03776 for dynarec-outgoing; Thu, 11 May 2000 15:08:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <001e01bfbb9d$f466ca60$0100a8c0@lion> From: "Neil Griffiths" To: References: <200005110955.LAA17541@pons.ac.upc.es> <391AA255.3F32B128@eurocopter.de> <000367594288e721_mailit@mailhub.rrze.uni-erlangen.de> Subject: Re: DYNAREC: Website is up! Date: Thu, 11 May 2000 23:54:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >The Dynarec website is now up. If you want to take a look at the one page > >we have, feel free. It's also the final version of *this* logo, I'll > >hopefully be creating a new one when I get a good image of a CPU to use. > > BTW, the logo is centered in Netscape and Opera and left aligned in > NetPositive, but I don't know why. As long as it doesn't hinder usability I > can live with that though. That's a bug with NetPositive. To centre an image was in HTML 2, so if it doesn't work then it's the fault of your browser. Sorry! I'm not going to change it though. :p > >Also, I'll be changing the whole colour scheme now. While I'm doing that, > >I'd like a little input. Do you prefer tables or frames? > > Good question. Normally I don't like frames that much. > I think that means that I perfer tables ;-) That's fine. I don't care. Tables take longer to load - but you can do more with them (flashier effects for instance). But frames can be great for navigation. But a well-designed table using some form of server-side input can certainly be nice. It's another reason I asked if we'd have CGI. :) > >I don't mind > >either way, so if you want to make your choice then this is a good time to > >do so. I'm thinking that tables may be more useful, but if you don't like > >them then I can live with tables... :) > > I guess you mean you can live with frames... I can live with either - it doesn't bother me! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 15:08:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA03787 for dynarec-outgoing; Thu, 11 May 2000 15:08:21 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <001f01bfbb9d$f551c6a0$0100a8c0@lion> From: "Neil Griffiths" To: References: <200005110955.LAA17541@pons.ac.upc.es> <391AA255.3F32B128@eurocopter.de> <00036759678b5442_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Website is up! Date: Fri, 12 May 2000 00:00:13 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Forgot to mention that you wrote me as "Koenig" again instead of "K& > ouml;nig". Actually, no, I just haven't changed it from the original. Oops. I'll do that now... :) > BTW, does that mean that all group members now have the right to modify the > global site? No idea. But I have. :) Er... my plans for tonight changed somewhat. I planned to do my Jujitsu as normal and then come home and work on the site design. But my plans changed when I was asked by two German girls to go have Ice Cream with them. Sorry, but I think I made the right choice. I mean... Home vs Ice Cream. Girls vs Computer. No, it was a good choice... ;) Mind you, I didn't really think it'd take 2 hours. Oops! Oh well, I don't care. I enjoyed it! It was a great mix of English and German (though I'll freely admit there was more English being used). And I'm having German lessons now too! Woohoo! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 15:08:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA03793 for dynarec-outgoing; Thu, 11 May 2000 15:08:23 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <002001bfbb9d$f6120960$0100a8c0@lion> From: "Neil Griffiths" To: References: <200005110955.LAA17541@pons.ac.upc.es> <391AA255.3F32B128@eurocopter.de> <00036759678b5442_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Website is up! Date: Fri, 12 May 2000 00:07:07 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Forgot to mention that you wrote me as "Koenig" again instead of "K& > ouml;nig". It's fixed. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 20:14:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA04058 for dynarec-outgoing; Thu, 11 May 2000 20:14:24 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 11 May 2000 20:18:56 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Evil idea In-Reply-To: <200005110935.LAA28085@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Although "code-morpher" is a very good description for "binary translation > > with self-modifying code handlers". It's much shorter. :)) > Code Morpher remembers me the Mighty Morphing Power Rangers. I used to refer to them as the Mighty Morhine Motherfuckers. ;-) It was beyond my time when they were popular. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 20:52:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA04093 for dynarec-outgoing; Thu, 11 May 2000 20:52:05 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 11 May 2000 20:56:37 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Crusoe In-Reply-To: <200005111248.OAA13643@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Uh... no. That's how it can be abused. You're taking one small facet of > > how it can be bent and think it's the basic definition of the word. NOT > > SO! > But it's being abused. But that doesn't mean it's a bad thing. You cannot point to large corporations and say "See how bad Capitalism is?". That's like saying that every Mormon in the world is an acohol distributing two faced liar when clearly that isn't the case. What you're not seeing is many competitive companies coexisting nicely. It happens daily, and I see evidence of it everywhere. Of course, that doesn't make news, now, does it? I don't expect you to hear about it or even take it in to account. As an example, it's really common in the pinball business to refer people to their competitors when they are overloaded or don't have parts. > > Except consider that I'm smack dab in the middle of it and you're on the > > outside looking in. I have a unique perspective. Just about everything you > > hear about is large corporate corporatism, which is *NOT* what capitalism > > is all about. Very little of large corporations activities affect my daily > > life, but that's all you hear about on the news. I can see why your views > > of it are so skewed. > Large corporations don't affect your life? It's hard to believe. I said my *DAILY* life. Case in point - Disney. I don't buy their products and won't buy their products because they are an evil, money grubbing, thieving, controlling company and all they are about is money. I find that reprehensible. > corporation have the control of the most mass production factories, the most > advanced technologies and the most resources. And they also have a lot > of power in governments. Not anywhere near as much as you think. MS Is a perfect example of this. The government has lambasted IBM, AT&T, and Microsoft and believe me, they had *MASSIVE* influence in governmental positions. Didn't work, did it? > Really hard to believe. Large corporate > corporatism is how capitalism is actually being carried. Just take a look > on how many big corporations are fussing each others. But that still doesn't make captialism bad as a whole, Victor. Lots of what you're seeing (AMD vs. Intel) is simple jealousy, so they sue eachother right and left to try to get money out of the other guy. It's a side effect of capitalism. Not the cause of it. > > > > the right to better myself instead of being forced to live in poverty > > > > because that's the standard for everyone. > > > A bit egoistic but it's fine for me. > > What's egotistic about it? If I work harder than the next guy, he doesn't > > deserve as much as me. If he works just as hard, he does. If he works > > harder, he deserves more. > Think about many people working really hard and getting the worst pay. Ditch diggers, mechanics, mail clerks, policemen, etc... yep. I agree wholeheartedly. And "working hard" is a relative thing. See below. > The > people who earn the most money in the real capitalism system isn't who > works more but who has power or control of the capital. How much money > earns a miner, they work really hard and it's a dangerous work. And then > think in how much money earn the directive of a large mine company. Perhaps > he think he is working hardest, but is really? I've profiled the life of several CEOs - one being Andy Grove, now chairmain of Intel. On a day to day basis, his stress level is extremely high. If he makes one wrong decision, millions are out to lynch him (that whole Pentium floating point issue that got horribly blown out of proportion). Every thing he does he has to do with very careful and calculated planning, otherwise he could make a lot of investors and clients extremely angry and possibly be sued out of existence by them. He also could tank an entire economy with a wrong decision. With that amount of stress, I'm sorry, but he earns it. The miner's work may be dirty and dangerous, but he leaves it at the mine shaft when he goes home for the evening or weekend. Same deal with the mechanic - to an even lesser degree. But they don't *HAVE* to be mechanics, miners, or ditchdiggers. Anyone can do anything, and if you're not making it, you're not trying hard enough. I was *DIRT* poor for many years after high school. I said "This sucks!". I worked hard and found a way to improve myself. Sadly, lots of others don't. > > A bit of background: I'm in the tax bracket of what's called (in tax > > categories) the "super rich". There is only one tax bracket above me. > > 36% of my income goes to the federal government. My total taxation rate is > > 48% if you include state tax, medicare, and social security. My view on > You can consider yourself afortunate. While there is a big difference > in what someone earns for its work this kind of taxes is needed. I actually agree with a higher taxation rate for those who can afford it. The people on the "Bottom end" are paying little to no tax, maybe 20% total, but that's OK. I'm still going to eat well even if I'm 20% higher. FWIW, I also remember having zero money - being 2 weeks away from the street. $50 Meant if I ate for the following week. I had *NOTHING*. If my car broke, I had to fix it myself or go without. Now enter these greedy fucks who think "Well, *I* shouldn't have to pay a higher tax rate than everyone else! Those poor people should pay the same rate!" This is what you would call a Republican. They're in it to protect their own selfish agendas. > > I'll admit that I want more money, but my motivation is not what you > > think. I look at money as an enabling tool. My only goal now is to make > > enough so I can retire early, and do things with myself that will benefit > I have also similar thoughts, but I'm still in the beginning ;) The > problem is how money makes us slaves of work. Yep. Or slaves for other people's work. > And although you think > in that way (the same I think also), there are too many people who don't. > What an excuse has someone to control more money/power than a small country? > It's so intelligence or useful for the humanity that we need to let them > so much resources? I don't think so. Money has become an illness for many > people who only thought in earn more and more, why? Mostly because of mental problems, but that's a very small percentage of people. Insecurity - the desire to have to show off to people that you're successful. Even if I had 10 million dollars in the bank, I wouldn't live much differently than I do now. Maybe I'd move to a similar house in a different location, but I cannot fathom buying an $800,000 Bentley, spending $4 million for a house on the hill or any other extravagant spending. There's no point in that. In fact, if I had 10 million dollars, I'd probably start a really "cool" company that focuses on dropping the bottom out of a few markets - taking those things that are overpriced and making them equally affordable to almost everyone. I'd much rather have a company that sells things for cheap, sustains itself, and makes a lot of people happy than to try to squeeze every last dollar out of everyone. > I can't what their > thoughts are. And the people who has so much money also has a great control > over the world. What made them better? Ever heard the expression "Money talks"? If you have the financial means of unplugging someone else, that someone else listens to you and will do what you say. Conversely, those who live by the sword die by the sword. Of course, as you realize, this has nothing to do with capitalism. This has to do with human nature. > > So in other words, how can I take my money and make it benefit others? If > > I was to suddenly discover replicator technology, I wouldn't sell it. I'd > > patent it and place it in the public domain so no one and everyone could > A single person can't do anything, it's needed a large change in the > society. To affect things globally, act locally. I hate the phrase since it's associated with wacko environmentalists. Good ideas tend to breed quickly. And I flatly disagree that a single person can't do anything. > > find their presence in my teams offensive because I do care about doing a > > good job, and they just want to get it done so they can get paid. They are > > the dark side of capitalism. > They are the most spreaded side of the capitalism. Perhaps the kind > of dreamed capitalism you talk about it's good, but the real capitalism > which is being implemented all around the world isn't that. You keep speaking of "real" capitalism, and the bad aspects of it are just a small part of the good. > greedy kind of capitalism. The problem isn't the theory but the > implementation. Not even the implementation, but the execution of a small part of it. > > But competition also moves us forward. Do you really think we'd have > > greater than 1GHZ CPUs today if there wasn't fierece competition? > Do you think that the crazy race for 1Ghz between Intel and AMD is a > good example? Competition is good. Too much competition isn't, it > can waste more resources than really needed. I think that us having faster CPUs is doing the world a lot of good. Maybe not now, but it's advancing us toward moving to space and colonizing other planets. IT's an enabling too, and I for one am glad that companies are duking it out. Progress is happening quickly! > > No, you've got that backwards, Victor. Greed and egotism can sprout out of > > capitalism, but it does not require greed or ego to be a capitalist. > Of course it doesn't. But many of the capitalism I see is builded around > greed and ego. And I'm saying your view of capitalism is only a small part of the whole pie. It happens to be the loudest and most negative, but it's still a small part of a system that works extremely well. > > I'm telling you, as someone who is right smack dab in the middle of it, > > your views are flawed! I can imagine why, though, because all you get are > > reports about how company x is crushing company y, etc... Consider that > I'm sure that my views are biased, as well as yours can be biased in > another way. The difference is that I see both sides of it. You're only seeing one. I do agree with your points about corporatism, but your view is that is just how it all is and that flatly isn't true. > have that a better world could arise :) And I'm also in the > capitalism system, still as a middle time worker, but I'm. To the extent of the US? > thinks in shops and I have private propierty. But I think that there > are many things that must change. And I also understand there are a > lot of people like me. But the people who is really controlling this > world seems to be nearer to the tyrannical corporations. There are governmental checks and balances in the US that aren't affected by corporate influence. AT&T Got busted up. So did IBM, Standard Oil and so is MS. Just because you're a big corporation doesn't make you bad. But when you do something illegal, the government will come down on you hard. > > screwed up. Take a look at Viet Nam. Even though it took 5 years of > > protesting, it eventually wore down the pride and government officials > > until we pulled out (and that whole Viet Nam thing was a dumb idea to > > begin with). All that was caused by a bunch of radical hippies. > Too large time spended trying to convince them. A lot of people from > both sides died in that war. But something that seems clear today > can easily change another day. One thing going for the world is the increased level of communication. Radical outbursts tend to get squelched as soon as they start because word travels fast. In the late 60's, very little did. We have forums today that are instant that we didn't have back then. So the opportunity for these types of things to go unnoticed until they're too big to deal with just doesn't exist any longer. > And your southern states are a bit worrying. They are? In what way? I think you mean southeastern states, and if you're referring to the racism, it's dying. They're the most embarassing aspect of the US. I always have said the farther southeast you go in this country the lower your IQ dips. > > Of course, but my standard of living shouldn't have to be lowered to the > > least common denominator. We should just bring everyone up! > If it's possible, but we can't arise the standard living of 6 billions > to the standard living of Bill Gates or another super-rich. super-rich Doesn't mean Bill Gates. He owns an island with a home of 20,000 square feet and every amenity that exists. I live in a 2700 square foot (new) home on a 7,000 square foot lot. My house cost $221,000, and I also don't spend anywhere near my income on my house. I could afford something a lot larger and more extravagant, but it's pointless! What I have in terms of living standards isn't all that bad. It's above average, but even a house $70,000 less would be fine (there were many reasons I chose this house rather than a $150,000 one but that's topic for another discussion) for me or anyone else. > some millions of people living, but what happens with the rest of the > people. Population can easily grown farther than any resource or technique > you can think about. Absolutely. But what happens is those who work hard and look for ways to improve themselves financially eventually find a way to make it happen. Those who don't, don't. > > Yes, and that's the greed I've been talking about that prevlaent in just > > about everyone. As you understand first hand, it's present even without > > capitalism. > The humanity needs to change they way the see the live. A new kind of > culture must arise that helps greedy to be limited. Yes. But that won't happen for hundreds of years. I predict it's the invention of the replicator that will be the catalyst for a new era. That, or discovering that we're not alone in the universe. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 20:53:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA04103 for dynarec-outgoing; Thu, 11 May 2000 20:53:18 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 11 May 2000 20:57:50 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! In-Reply-To: <00036759678b5442_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > BTW, does that mean that all group members now have the right to modify the > global site? Yes. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 21:00:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA04121 for dynarec-outgoing; Thu, 11 May 2000 21:00:14 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Thu, 11 May 2000 21:04:47 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! In-Reply-To: <001f01bfbb9d$f551c6a0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Er... my plans for tonight changed somewhat. I planned to do my Jujitsu as > normal and then come home and work on the site design. But my plans changed > when I was asked by two German girls to go have Ice Cream with them. Sorry, > but I think I made the right choice. I mean... Home vs Ice Cream. Girls vs > Computer. No, it was a good choice... ;) I'm so glad to see you've got your priorities straight. *TWO* German girls, eh? Reminds me of a 3 way I had when I was 19... ;-) > Mind you, I didn't really think it'd take 2 hours. Oops! Oh well, I don't > care. I enjoyed it! It was a great mix of English and German (though I'll > freely admit there was more English being used). And I'm having German > lessons now too! Woohoo! Oh... rats. And here I was getting all excited for nothing. ;-( So you didn't get any? -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 11 23:46:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA04243 for dynarec-outgoing; Thu, 11 May 2000 23:46:45 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <391BA883.8821974F@eurocopter.de> Date: Fri, 12 May 2000 08:45:23 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! References: <200005110955.LAA17541@pons.ac.upc.es> <391AA255.3F32B128@eurocopter.de> <000367594288e721_mailit@mailhub.rrze.uni-erlangen.de> <20000511162846.A1071@jtb20b.quns.cam.ac.uk> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > I guess you mean you can live with frames... > > I'd suggest a combination of tables and shtml (might need to be enabled in > httpd.conf [1]) - this lets you do frame-type stuff like page headers and > side toolbars, but without frames ;-) I wasn't planning on shtml itself, but I certainly plan on the use of something server-side. CGI most likely. I don't know much about shtml, so maybe I could take a look and see how I'd use it. > Using shtml would probably help to make the site more maintainable, too. Of course. That was why I originally asked for CGI - it's the sort of thing I've found great! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 00:20:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA04287 for dynarec-outgoing; Fri, 12 May 2000 00:20:38 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <391BB084.8A3378A9@eurocopter.de> Date: Fri, 12 May 2000 09:19:32 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Er... my plans for tonight changed somewhat. I planned to do my Jujitsu as > > normal and then come home and work on the site design. But my plans changed > > when I was asked by two German girls to go have Ice Cream with them. Sorry, > > but I think I made the right choice. I mean... Home vs Ice Cream. Girls vs > > Computer. No, it was a good choice... ;) > > I'm so glad to see you've got your priorities straight. *TWO* German > girls, eh? Reminds me of a 3 way I had when I was 19... ;-) Yep. Two girls with names that I find difficult to pronounce properly. :o And I'm 20, I'm not so far off. ;) > > Mind you, I didn't really think it'd take 2 hours. Oops! Oh well, I don't > > care. I enjoyed it! It was a great mix of English and German (though I'll > > freely admit there was more English being used). And I'm having German > > lessons now too! Woohoo! > > Oh... rats. And here I was getting all excited for nothing. ;-( So you > didn't get any? Ice cream or German lessons? ;)) I think you know the answer to that. Let's put it this way - I wouldn't have e-mailed you last night. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 00:37:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA04312 for dynarec-outgoing; Fri, 12 May 2000 00:37:56 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Website is up! From: "M.I.K.e" In-Reply-To: <391BB084.8A3378A9@eurocopter.de> Message-ID: <000367670f7af553_mailit@mail.dynarec.com> References: <391BB084.8A3378A9@eurocopter.de> Date: Fri, 12 May 2000 09:41:09 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yep. Two girls with names that I find difficult to pronounce properly. :o So what were the names? >And I'm 20, I'm not so far off. ;) Shit, I begin to feel old... >>So you didn't get any? >Ice cream or German lessons? ;)) I guess he meant more physical lessons... BTW, did you mean that they give you German lessons or that you have some German course? >I think you know the answer to that. Let's put it this way - I wouldn't >have e-mailed you last night. ;) So you only got ice cream... >Neil. -- M.I.K.e Andrea: Unhappy the land that has no heroes. Galileo: No, unhappy the land that _____needs heroes. -- Bertolt Brecht, "Life of Galileo" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 01:06:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA04352 for dynarec-outgoing; Fri, 12 May 2000 01:06:18 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005120811.KAA08198@pons.ac.upc.es> Subject: Re: DYNAREC: Crusoe In-Reply-To: "from Neil Bradley at May 11, 2000 08:56:37 pm" To: dynarec@dynarec.com Date: Fri, 12 May 2000 10:11:36 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Today I'm really braindead, sorry. So don't expect I would show brilliant. > But that doesn't mean it's a bad thing. You cannot point to large > corporations and say "See how bad Capitalism is?". That's like saying that > every Mormon in the world is an acohol distributing two faced liar when > clearly that isn't the case. What you're not seeing is many competitive > companies coexisting nicely. It happens daily, and I see evidence of it > everywhere. Of course, that doesn't make news, now, does it? I don't > expect you to hear about it or even take it in to account. > Then what I'm saying is that an important portion of capitalism is bad. Both comunism and capitalism are economical theories. Both have good points and bad points. It's the implementation of them what are bad. Humans are neither heavy individualist (as it is pointed by capitalism) nor an expendable cell in a large comunity. We aren't lonely tigers nor working ants. Humans live in middle sized groups and have some individualist feelings. So I think neither pure capitalism nor comunism are the best choice. And why I ever say capitalism is bad. Because I'm being teached that a lot bad things as greedy, corporations and so on is capitalism, so when I talk about capitalism I talk about that, not about the theory or the good application of capitalism. Same happens to the people who has been teached that communism is evil and means dictature and use it as it means dictature and repression, not a economic theory. Communism also works in the small things. > As an example, it's really common in the pinball business to refer people > to their competitors when they are overloaded or don't have parts. > I think many business in Spain should know about that, because they don't do it ;) I'm not saying everyone is bad, but the average usually is bad. Is it a problem about capitalism? Perhaps not, but there is still a problem. > > Large corporations don't affect your life? It's hard to believe. > > I said my *DAILY* life. Case in point - Disney. I don't buy their products > and won't buy their products because they are an evil, money grubbing, > thieving, controlling company and all they are about is money. I find that > reprehensible. > I hate Disney and their fucking movies, I haven't seen a Disney movie since ages. ;) Manga power! ;) > > corporation have the control of the most mass production factories, the most > > advanced technologies and the most resources. And they also have a lot > > of power in governments. > > Not anywhere near as much as you think. MS Is a perfect example of > this. The government has lambasted IBM, AT&T, and Microsoft and believe > me, they had *MASSIVE* influence in governmental positions. Didn't work, > did it? > I don't see governments pursuing US companies (or Spanish companies) who have SLAVE factories at low developed countries. MS has been punished because it has too much power and other large companies are afraid about it. It has been pursuit because many of the large corporations and lobbies are against it. > But that still doesn't make captialism bad as a whole, Victor. Lots of > what you're seeing (AMD vs. Intel) is simple jealousy, so they sue > eachother right and left to try to get money out of the other guy. > I can agree with capitalism isn't esentially bad. I can't agree that the actual application of capitalism isn't bad. > It's a side effect of capitalism. Not the cause of it. > A very extended side effect of capitalism. > I've profiled the life of several CEOs - one being Andy Grove, now > chairmain of Intel. On a day to day basis, his stress level is extremely > high. If he makes one wrong decision, millions are out to lynch him (that > whole Pentium floating point issue that got horribly blown out of > proportion). Every thing he does he has to do with very careful and > calculated planning, otherwise he could make a lot of investors and > clients extremely angry and possibly be sued out of existence by them. He > also could tank an entire economy with a wrong decision. With that amount > of stress, I'm sorry, but he earns it. > If it's so hard why are they working in such a job? They have enough money to live without working. Love of power? And for each CEO can be considered a good man/woman there are ten or a hundred that are really bad. I'm not saying that it isn't a hard work, they have a lot of responsability and a lot of stress, but anyone who wants to do a good job can have such feelings. The problem is that many CEOs use that as an excuse every time you talk agaisnt them. And I can't say a man who is fanaticed by his work is a good person or a system which enables such kind of power or responsability in a single person is good. I think if I was in the chance I won't follow this kind of game of get more and more involved with power and thinking I'm the only one who could do things. Sorry, I'm not saying that they are all bad. But such kind of living isn't good, not for them not for the rest of the people. > But they don't *HAVE* to be mechanics, miners, or ditchdiggers. Anyone can > do anything, and if you're not making it, you're not trying hard enough. I > was *DIRT* poor for many years after high school. I said "This sucks!". I > worked hard and found a way to improve myself. > SOMEONE must be mechanics, miners, ditchdiggers or farmers. A CEO can't live without them. Not everyone can or could become a CEO. And I hope not every wants it. The american phisolophy about everyone can become US president (and it's a really bad example) is a fake, it's worst it's a bad joke. It isn't only a matter about how hard you work, there are many who don't want to work but there is also many that work and can't improve their lives. People has to learn that the work, all kind work, is needed. If I can't become a programmer or an engineer because I'm not enough good or there are too many programmer, well, it's a bad new, but if there are other kind of job which I can help society I will do it although it will be the worst job ever thought. And perhaps I will be still happy. > Now enter these greedy fucks who think "Well, *I* shouldn't have to pay a > higher tax rate than everyone else! Those poor people should pay the same > rate!" This is what you would call a Republican. They're in it to protect > their own selfish agendas. > They don't think that perhaps if they didn't pay higher tax rates than poor people, poor people could throught them away as has happenned in many social revolutions. > Even if I had 10 million dollars in the bank, I wouldn't live much > differently than I do now. Maybe I'd move to a similar house in a > different location, but I cannot fathom buying an $800,000 Bentley, > spending $4 million for a house on the hill or any other extravagant > spending. There's no point in that. > I agree with you I have had similiar thoughts many times. I still live with my parents until last few months I didn't have money or work (because I was studying, it isn't a problem about unemploiment) but I still lived well. I can't buy the books I wanted but I could read them from librarys. And I think about the future and I say myself what do you want: a house not too large (it would be difficult to clean it either), a good book collection and a computer. I didn't need million dollars to live happy. But there are a lot of people who don't think this way. > In fact, if I had 10 million dollars, I'd probably start a really > "cool" company that focuses on dropping the bottom out of a few markets - > taking those things that are overpriced and making them equally affordable > to almost everyone. > Umm, it's a really good idea. Perhaps if someday I earn so much money ;) > I'd much rather have a company that sells things for cheap, sustains > itself, and makes a lot of people happy than to try to squeeze every last > dollar out of everyone. > How many people has enough money to that such kinds of companies? How many people has done it? Think about that. > Ever heard the expression "Money talks"? If you have the financial means > of unplugging someone else, that someone else listens to you and will do > what you say. Conversely, those who live by the sword die by the sword. > Unluckily. But it takes too much time to die ;) > Of course, as you realize, this has nothing to do with capitalism. This > has to do with human nature. > I can agree. Then we have to try to change human nature. > To affect things globally, act locally. I hate the phrase since it's > associated with wacko environmentalists. Good ideas tend to breed > quickly. And I flatly disagree that a single person can't do anything. > A single person can do something but I means that it's hard to a single people to change a whole society. If there were enough single person doing something thing would change. > You keep speaking of "real" capitalism, and the bad aspects of it are just > a small part of the good. > The call it bad capitalism. I don't like bad capitalism as I don't like bad communism. ;) > > greedy kind of capitalism. The problem isn't the theory but the > > implementation. > > Not even the implementation, but the execution of a small part of it. > I think is more than a small part, unluckyly. And if it's a small part it's an important and dangerous part. > > I think that us having faster CPUs is doing the world a lot of good. Maybe > not now, but it's advancing us toward moving to space and colonizing other > planets. IT's an enabling too, and I for one am glad that companies are > duking it out. Progress is happening quickly! > If you are talking about 1GHz you will see it's still a fake they still cost too much to be useful and neither AMD nor Intel can't produce enough of them. The 1GHz race was a fucking marketing race. It hasn't helped anyone the 1GHz CPU will have a good price at the same time they would have been realesed (or very near) in the normal competence with AMD. Actual CPUs used for common PCs are 600 to 800 Mhz. > And I'm saying your view of capitalism is only a small part of the whole > pie. It happens to be the loudest and most negative, but it's still a > small part of a system that works extremely well. > It works well for the people living in povertry in India perhaps? Or for many people living in poor conditions in the large US cities? Perhaps you are also seing a small part of capitalism. > To the extent of the US? > Europe countries aren't still so capitalist (liberalism?) as US. The government has more power and helps more to redistribute resources. The public education and mainly health system are more powerful than US, I think. > > There are governmental checks and balances in the US that aren't affected > by corporate influence. AT&T Got busted up. So did IBM, Standard Oil and > so is MS. Just because you're a big corporation doesn't make you bad. But > when you do something illegal, the government will come down on you hard. > Justice/law works? Not usuallly. > One thing going for the world is the increased level of > communication. Radical outbursts tend to get squelched as soon as they > start because word travels fast. In the late 60's, very little did. We > have forums today that are instant that we didn't have back then. So the > opportunity for these types of things to go unnoticed until they're too > big to deal with just doesn't exist any longer. > Communication? Or perhaps media controlled communication? :p > They're the most embarassing aspect of the US. I always have said the > farther southeast you go in this country the lower your IQ dips. > The problem we have in Spain is nacionalism. There are too few but too noisy people who hate everyone out of their regions or thinking differently. I hate the guys from ETA and they guys who help them. > > Absolutely. But what happens is those who work hard and look for ways to > improve themselves financially eventually find a way to make it > happen. Those who don't, don't. > Not everyone who works improves themselves financially. > > > Yes, and that's the greed I've been talking about that prevlaent in just > > > about everyone. As you understand first hand, it's present even without > > > capitalism. > > The humanity needs to change they way the see the live. A new kind of > > culture must arise that helps greedy to be limited. > > Yes. But that won't happen for hundreds of years. I predict it's the > invention of the replicator that will be the catalyst for a new era. That, > or discovering that we're not alone in the universe. > And I predict that we perhaps we don't have the chance or time ot invent the replicator. And about ETs I don't think that changes anything unless they are a kind of UN forces who want to control primitive planets. The problem isn't really that there aren't enough resources, it's a part of the problem, but the other part is the actual human culture. Victor Moya P.S. How can we be so off-topic? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 01:15:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA04368 for dynarec-outgoing; Fri, 12 May 2000 01:15:27 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <391BBD5F.760FBE4E@eurocopter.de> Date: Fri, 12 May 2000 10:14:23 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! References: <391BB084.8A3378A9@eurocopter.de> <000367670f7af553_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Yep. Two girls with names that I find difficult to pronounce properly. :o > > So what were the names? I can't pronounce them so I'm certain that I can't spell them. But here goes (I'll write them as they sound): Dorothea Ootah I'm certain those aren't right, but I don't know how else to spell it... :-/ > >And I'm 20, I'm not so far off. ;) > > Shit, I begin to feel old... Ah, it's okay. You're probably not the oldest on the group. Though I'm quite possibly the youngest... > >Ice cream or German lessons? ;)) > > I guess he meant more physical lessons... Really? ;) > BTW, did you mean that they give you German lessons or that you have some > German course? No, I have a German course now. I've had 4 lessons so far this week. It's quite intensive. We'll see how good I get, but it's mainly just grammar. You Germans have really strange grammar! ;) Mind you, they did offer to teach me German too. That could be cool. > >I think you know the answer to that. Let's put it this way - I wouldn't > >have e-mailed you last night. ;) > > So you only got ice cream... It was nice! ;o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 01:21:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA04382 for dynarec-outgoing; Fri, 12 May 2000 01:21:02 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005120826.KAA11791@pons.ac.upc.es> Subject: Re: DYNAREC: Website is up! In-Reply-To: <391BBD5F.760FBE4E@eurocopter.de> "from Neil Griffiths at May 12, 2000 10:14:23 am" To: dynarec@dynarec.com Date: Fri, 12 May 2000 10:26:07 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >And I'm 20, I'm not so far off. ;) > > > > Shit, I begin to feel old... > > Ah, it's okay. You're probably not the oldest on the group. Though I'm > quite possibly the youngest... > Sure. I thought we have near the same age but I'm older, I'm 23. I'm beginning to feel old :( Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 01:30:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA04399 for dynarec-outgoing; Fri, 12 May 2000 01:30:46 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 12 May 2000 01:35:22 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! In-Reply-To: <200005120826.KAA11791@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > >And I'm 20, I'm not so far off. ;) > > > Shit, I begin to feel old... > > Ah, it's okay. You're probably not the oldest on the group. Though I'm > > quite possibly the youngest... > Sure. I thought we have near the same age but I'm older, I'm 23. I'm > beginning to feel old :( Anyone want to guess my age? ;-) I just had a birthday last Saturday. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 01:41:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA04418 for dynarec-outgoing; Fri, 12 May 2000 01:41:07 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Website is up! From: "M.I.K.e" In-Reply-To: <391BBD5F.760FBE4E@eurocopter.de> Message-ID: <00036767f4920d1e_mailit@mail.dynarec.com> References: <391BB084.8A3378A9@eurocopter.de> <000367670f7af553_mailit@mail.dynarec.com> <391BBD5F.760FBE4E@eurocopter.de> Date: Fri, 12 May 2000 10:45:12 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >I can't pronounce them so I'm certain that I can't spell them. But here >goes (I'll write them as they sound): >Dorothea The spelling seems to be correct, but I mind you that the "h" is not spoken. >Ootah Spelling should be "Uta" (pronounced /u:ta:/, just as you wrote - long "u" and long "a"). >I'm certain those aren't right, but I don't know how else to spell it... >:-/ I have to admit that these aren't very easy names. >Ah, it's okay. You're probably not the oldest on the group. Well, at least NB should be older than me... >Though I'm quite possibly the youngest... Of the hardcore members, I guess so, but I don't know about the lurkers... >No, I have a German course now. I thought you don't need that ;-) >I've had 4 lessons so far this week. It's >quite intensive. We'll see how good I get, but it's mainly just grammar. Uh, I hate Grammar! >You Germans have really strange grammar! ;) Tell me about it! I'm glad that I can use most things intuitively, but as soon as I have to explain why it is that way, it gets very complicated! But some aspects of the English Grammar aren't any better. Just take the CGEL (Comprehensive Grammar of the English Language), when the reader isn't killed by the contents you can still knock him out with the pure weight of the book! >Mind you, they did offer to teach me German too. That could be cool. You certainly could learn some things you'll never learn in that course ;-) >It was nice! ;o The ice cream or the companions? If it's really hot (I mean the weather) there is nothing as refreshing as the lemon ice cream they make in Italy. I still have to find a similar ice cream in Germany... >Neil. -- M.I.K.e Whom computers would destroy, they must first drive mad. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 01:44:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA04430 for dynarec-outgoing; Fri, 12 May 2000 01:44:13 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <007f01bfbbee$3ca7be60$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Website is up! Date: Fri, 12 May 2000 09:39:05 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > >And I'm 20, I'm not so far off. ;) > > > > Shit, I begin to feel old... > > > Ah, it's okay. You're probably not the oldest on the group. Though I'm > > > quite possibly the youngest... > > Sure. I thought we have near the same age but I'm older, I'm 23. I'm > > beginning to feel old :( > > Anyone want to guess my age? ;-) I just had a birthday last Saturday. > > -->Neil Given that you consistently post messages up to 10am GMT, which must be hideously early in the morning your time, I'd say about 18. ;) Don't you ever sleep? Based on your picture on the Retrocade web page, though, 27ish? Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 01:45:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA04443 for dynarec-outgoing; Fri, 12 May 2000 01:45:37 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <391BC49C.F30D074A@eurocopter.de> Date: Fri, 12 May 2000 10:45:16 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Anyone want to guess my age? ;-) I just had a birthday last Saturday. Really? Oh, well I wish you a belated "Happy Birthday!" then. And I'll guess that you're 35. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 01:46:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA04453 for dynarec-outgoing; Fri, 12 May 2000 01:46:05 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Website is up! From: "M.I.K.e" In-Reply-To: Message-ID: <0003676804277731_mailit@mail.dynarec.com> References: Date: Fri, 12 May 2000 10:49:34 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Anyone want to guess my age? ;-) I just had a birthday last Saturday. Really? I had mine last Sunday! ;-) >-->Neil -- M.I.K.e "Love is an ideal thing, marriage a real thing; a confusion of the real with the ideal never goes unpunished." -- Goethe --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 01:46:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA04461 for dynarec-outgoing; Fri, 12 May 2000 01:46:07 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Website is up! From: "M.I.K.e" In-Reply-To: <200005120826.KAA11791@pons.ac.upc.es> Message-ID: <000367680705c902_mailit@mail.dynarec.com> References: <200005120826.KAA11791@pons.ac.upc.es> Date: Fri, 12 May 2000 10:50:22 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Sure. I thought we have near the same age but I'm older, I'm 23. I'm >beginning to feel old :( Then we there have a three years span: I'm 26. >Victor Moya -- M.I.K.e Accident, n.: A condition in which presence of mind is good, but absence of body is better. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 01:49:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA04471 for dynarec-outgoing; Fri, 12 May 2000 01:49:26 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Website is up! From: "M.I.K.e" In-Reply-To: <391BC49C.F30D074A@eurocopter.de> Message-ID: <00036768130663ae_mailit@mail.dynarec.com> References: <391BC49C.F30D074A@eurocopter.de> Date: Fri, 12 May 2000 10:53:43 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >And I'll guess that you're 35. :) Oh no, since NG is 20, Victor is 23, and I am 26, NB has to be 29, at least to Murphy's Law ;-) >Neil. -- M.I.K.e Skinner's Constant (or Flannagan's Finagling Factor): That quantity which, when multiplied by, divided by, added to, or subtracted from the answer you get, gives you the answer you should have gotten. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 02:01:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA04651 for dynarec-outgoing; Fri, 12 May 2000 02:01:24 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <391BC867.7D06F8D3@eurocopter.de> Date: Fri, 12 May 2000 11:01:27 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! References: <0003676804277731_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Really? I had mine last Sunday! ;-) Really? Well, a happy belated birthday to you as well! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 02:07:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA04663 for dynarec-outgoing; Fri, 12 May 2000 02:07:21 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <391BC954.C97DA446@eurocopter.de> Date: Fri, 12 May 2000 11:05:24 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! References: <391BC49C.F30D074A@eurocopter.de> <00036768130663ae_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >And I'll guess that you're 35. :) > > Oh no, since NG is 20, Victor is 23, and I am 26, NB has to be 29, at least > to Murphy's Law ;-) If Murphy's law is involved that that would mean that NB could not possibly be 29. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 02:12:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA04678 for dynarec-outgoing; Fri, 12 May 2000 02:12:16 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Website is up! From: "M.I.K.e" In-Reply-To: <391BC867.7D06F8D3@eurocopter.de> Message-ID: <0003676860a6f40c_mailit@mail.dynarec.com> References: <0003676804277731_mailit@mail.dynarec.com> <391BC867.7D06F8D3@eurocopter.de> Date: Fri, 12 May 2000 11:15:25 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Really? Well, a happy belated birthday to you as well! Thanks. The good thing is that I got BeOS 5 Pro ;-) >Neil. -- M.I.K.e Absentee, n.: A person with an income who has had the forethought to remove himself from the sphere of exaction. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 02:12:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA04686 for dynarec-outgoing; Fri, 12 May 2000 02:12:18 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Website is up! From: "M.I.K.e" In-Reply-To: <391BC954.C97DA446@eurocopter.de> Message-ID: <000367686392a422_mailit@mail.dynarec.com> References: <391BC49C.F30D074A@eurocopter.de> <00036768130663ae_mailit@mail.dynarec.com> <391BC954.C97DA446@eurocopter.de> Date: Fri, 12 May 2000 11:16:14 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >If Murphy's law is involved that that would mean that NB could not possibly >be 29. :) Erm, agreed. Then it's according to the Law of Strange Regularities ;-) >Neil. -- M.I.K.e All the world's a stage and most of us are desperately unrehearsed. -- Sean O'Casey --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 02:25:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA04707 for dynarec-outgoing; Fri, 12 May 2000 02:25:49 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 12 May 2000 02:30:25 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Crusoe In-Reply-To: <200005120811.KAA08198@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Both comunism and capitalism are economical theories. Both have good points > and bad points. It's the implementation of them what are bad. I think you mean the execution. You can have a great implementation, but if it's poorly executed, the problem is the execution and not the implementation. > Humans are neither heavy individualist (as it is pointed by > capitalism) nor an expendable cell in a large comunity. We aren't > lonely tigers nor working ants. Humans live in middle sized groups > and have some individualist feelings. So I think neither pure > capitalism nor comunism are the best choice. I think we agree here. There are some things that I wish were centrally controlled but aren't. > And why I ever say > capitalism is bad. Because I'm being teached that a lot bad things as > greedy, corporations and so on is capitalism, so when I talk about > capitalism I talk about that, not about the theory or the good > application of capitalism. Your teachers are wrong, just as I was taught in school that communism was bad. I was taught that communism was an evil form of government. Nothing more than political propoganda and us vs. them. After being educated a bit more by self study, I realize that communism in and of itself isn't bad, and that my teachers were full of shit. You're a smart guy, and I hope you realize the same thing. > > As an example, it's really common in the pinball business to refer people > > to their competitors when they are overloaded or don't have parts. > I think many business in Spain should know about that, because they > don't do it ;) I'm not saying everyone is bad, but the average > usually is bad. Is it a problem about capitalism? Perhaps not, but > there is still a problem. It might be a problem with Spain, but smaller and mid level companies generally get along quite well. IT might be prevalent in Spain, but it isn't anywhere near as bad as you make it sound in the US. > I hate Disney and their fucking movies, I haven't seen a Disney movie since > ages. ;) Manga power! ;) The funny thing is that it *WAS* a good company until Michael Isner took over. They made a little money, but it was the will of Disney to make family quality movies. Since 1992, they've been recycling the same shit over and over again. I was told by a friend who did artwork for Disney that during her signup they point blank told her "This is a business, not an art school. You work here to make money, not to be an artist." That's a sneaky, evil company, and there's evidence all over it. I won't buy a new product of theirs - ever. > > Not anywhere near as much as you think. MS Is a perfect example of > > this. The government has lambasted IBM, AT&T, and Microsoft and believe > > me, they had *MASSIVE* influence in governmental positions. Didn't work, > > did it? > I don't see governments pursuing US companies (or Spanish companies) > who have SLAVE factories at low developed countries. It depends upon what you call "slave" factories. Slavery implies they are forced to work there - they are not. If it's in a foreign country, the US government has no jurisdiction except for importation duties. I've seen people go ape about Nike having shops in Taiwan where people are making $3.25 a day. In Taiwan, for those people, $3.25 is decent money. How can we hold every other country in the world to *OUR* value system? They're getting a better deal for their money outside the US. > MS has been > punished because it has too much power and other large companies are > afraid about it. It has been pursuit because many of the large > corporations and lobbies are against it. Microsoft has been punished because of their unfair business practices when it comes to their products, not because they have "too much power". > > But that still doesn't make captialism bad as a whole, Victor. Lots of > > what you're seeing (AMD vs. Intel) is simple jealousy, so they sue > > eachother right and left to try to get money out of the other guy. > I can agree with capitalism isn't esentially bad. I can't agree that > the actual application of capitalism isn't bad. Or some aspects of it, anyway. > > It's a side effect of capitalism. Not the cause of it. > A very extended side effect of capitalism. No, just a vocal one. Of course the only thing you ever hear about is the bad part, because that's newsworthy. Good capitalism isn't newsworthy, so it would stand to reason that you wouldn't hear about it. > > I've profiled the life of several CEOs - one being Andy Grove, now > > chairmain of Intel. On a day to day basis, his stress level is extremely > > high. If he makes one wrong decision, millions are out to lynch him (that > If it's so hard why are they working in such a job? Various reasons, actually: * They now have 75,000 employees world wide whose well beings they are protecting and ensuring. * They really believe they're making a big difference in the industry they're in. * They thrive on stress. * They want recognition. * More money! I get the impression that Andy Grove is #1, #2, maybe a bit of #3, some of #4, but I don't think #5. > They have enough > money to live without working. Love of power? Not to defend Bill Gates (he has enough fucking money, don't you think?) Bill Gates decides to call it quits and say "See ya!" Microsoft stock plummets, people lose faith in the company and stop buying their products and it puts 9,000 Microsoft employees out of work. Then the industry as a whole, of Windows programmers starts to erode. The need for computers starts to erode, and people stop buying hardware. Stock market starts plummeting as people pull their money out, which causes people to quit investing in the stock market. Don't laugh. This exact thing can happen very easily. Once you're in a position like that, attempting a transition out of it isn't as easy as you might think. I really don't think Andy Grove or Bill Gates knew what they were getting into. They might've thought they'd make a few bucks, but I'll bet you their salary that they were caught by surprise. > And for each CEO can be > considered a good man/woman there are ten or a hundred that are really bad. No, there's a few really bad ones, a few really good ones, and a lot of mediocre ones. Your view isn't correct. > you talk agaisnt them. And I can't say a man who is fanaticed by his > work is a good person or a system which enables such kind of power or > responsability in a single person is good. I think if I was in the > chance I won't follow this kind of game of get more and more involved > with power and thinking I'm the only one who could do things. Sorry, I think if you were in this situation you'd have a far more unique perspective. I have a couple of friends who are CEOs of local fairly decent sized companies. Being a CEO is extremely hard work. The best thing for you to do if you want to bow out without affecting an industry or local economy is to go to work for a company that gives good benefits, work your ass off, and get rewarded for it, and retire. I hope to at 35. ;-) Intel stock just has to reach 200 points (or 100 after an upcoming stock split). > > But they don't *HAVE* to be mechanics, miners, or ditchdiggers. Anyone can > > do anything, and if you're not making it, you're not trying hard enough. I > SOMEONE must be mechanics, miners, ditchdiggers or farmers. Yes, those who aren't willing to work hard enough to get them out of those jobs, yes. > without them. Not everyone can or could become a CEO. And I hope not No, but everyone has the inherent ability to better themselves... or not. > every wants it. The american phisolophy about everyone can become US > president (and it's a really bad example) is a fake, it's worst it's a > bad joke. I've not heard that Philosophy. Perhaps it's a translation problem of sorts. *OF COURSE* Not everyone can be president, but the whole point of a statement like that is there are no preset rules to prevent anyone from doing anything. > > Even if I had 10 million dollars in the bank, I wouldn't live much > > differently than I do now. Maybe I'd move to a similar house in a > > different location, but I cannot fathom buying an $800,000 Bentley, > > spending $4 million for a house on the hill or any other extravagant > > spending. There's no point in that. P> with my parents until last few months I didn't have money or work (because > I was studying, it isn't a problem about unemploiment) but I still lived > well. I can't buy the books I wanted but I could read them from librarys. You see? You found a solution where others would say "Oh, I can't afford those books. I just can't learn about X then." Lots of people think opportunities don't exist to do things, when they actually do. So people don't work hard and just give up, and become our ditch diggers. ;-) > And I think about the future and I say myself what do you want: a house > not too large (it would be difficult to clean it either), a good book > collection and a computer. I didn't need million dollars to live happy. Me either. I actually had some of the happiest times of my life when I was in my late teens. I was getting laid a lot, met a lot of really cool people, and was dirt poor. But it was fun! > But there are a lot of people who don't think this way. Sadly so. > > In fact, if I had 10 million dollars, I'd probably start a really > > "cool" company that focuses on dropping the bottom out of a few markets - > Umm, it's a really good idea. Perhaps if someday I earn so much money ;) Just work at it, man! Just keep your original goals and ideals in mind. > > I'd much rather have a company that sells things for cheap, sustains > > itself, and makes a lot of people happy than to try to squeeze every last > > dollar out of everyone. > How many people has enough money to that such kinds of companies? How > many people has done it? Think about that. (I raise my hand) Quite a few, actually. You'll find *LOTS* of small businesses around (and on the web) that just like making cool, affordable stuff. > > Of course, as you realize, this has nothing to do with capitalism. This > > has to do with human nature. > I can agree. Then we have to try to change human nature. You're in for a big job. ;-) I was told a few pieces of information from a book called "Built to last" - a book about how businesses are able to last - like 50 years or longer. A few things came out of it: * Always pay your taxes and bills upon receipt of invoice * Give the benefit of the doubt to every customer and company you do business with * Price products reasonably so that people feel they get a good value for their money (but not too low, because people think it isn't worth a crap and won't buy it!) * View competition as a way to rethink or improve your products, not as a threat to your livelihood * Market honestly, and never put down nor compare yourselves to a competitor to purposely make them look bad * If a customer's needs aren't met by your product, give them a refund, and even recommend a competitor's product * Avoid litigation at all costs - attempt to work out licensing or patent issues with the company in violation * Be generous to each community your company is located in * Set aside resources to donate resources and time to helping each local community That's how I run my business, and honestly, I'd rather go *OUT* of business than compromise my integrity. The one thing I can do when I go home at night is live with myself. ;-) > A single person can do something but I means that it's hard to a single > people to change a whole society. If there were enough single person > doing something thing would change. Nope, but if you're an influential person, you can "infect" others with similar styles of thinking. It takes time. You can't just one day suddenly command millions. ;-) > > I think that us having faster CPUs is doing the world a lot of good. Maybe > > not now, but it's advancing us toward moving to space and colonizing other > > planets. IT's an enabling too, and I for one am glad that companies are > > duking it out. Progress is happening quickly! > If you are talking about 1GHz you will see it's still a fake they still > cost too much to be useful and neither AMD nor Intel can't produce enough > of them. They're being sold and they do exist, so they aren't fakes. And yes, the 1GHZ "race" was just that a fake race. A good side effect of it is that we as a people are advancing technologically at a much higher rate because of this competition, regardless of the initial reason. > > And I'm saying your view of capitalism is only a small part of the whole > > pie. It happens to be the loudest and most negative, but it's still a > > small part of a system that works extremely well. > It works well for the people living in povertry in India perhaps? Or for > many people living in poor conditions in the large US cities? Perhaps you > are also seing a small part of capitalism. I'm not familiar with India's economic situation enough to comment, but the US economy is better than it has ever been. The US has an amazingly low unemployment rate - lowest in the world if I'm not mistaken. There are far more jobs available in the US than we can fill, so we're "importing". I'd say it works quite well for the US. > > To the extent of the US? > Europe countries aren't still so capitalist (liberalism?) as US. The > government has more power and helps more to redistribute resources. The > public education and mainly health system are more powerful than US, I > think. Don't get me started on the medical "business" in the US. HMOs. It just infuriates me - it's all starting to boil down to lawyers and money, and it makes me want to kill! ;-) > > by corporate influence. AT&T Got busted up. So did IBM, Standard Oil and > > so is MS. Just because you're a big corporation doesn't make you bad. But > > when you do something illegal, the government will come down on you hard. > Justice/law works? Not usuallly. With real problems it does. It takes a while, but it does work. > > start because word travels fast. In the late 60's, very little did. We > > have forums today that are instant that we didn't have back then. So the > > opportunity for these types of things to go unnoticed until they're too > > big to deal with just doesn't exist any longer. > Communication? Or perhaps media controlled communication? :p The internet isn't media controlled communication, which is what I was getting at. ;-) > > Absolutely. But what happens is those who work hard and look for ways to > > improve themselves financially eventually find a way to make it > > happen. Those who don't, don't. > Not everyone who works improves themselves financially. Then they aren't seeking better lives. If you work hard, don't take no for an answer, and open the door when opportunity knocks, there's nothing inherent about the US that'll prevent you from bettering yourself. > > Yes. But that won't happen for hundreds of years. I predict it's the > > invention of the replicator that will be the catalyst for a new era. That, > > or discovering that we're not alone in the universe. > And I predict that we perhaps we don't have the chance or time ot > invent the replicator. I don't believe that. > And about ETs I don't think that changes > anything unless they are a kind of UN forces who want to control > primitive planets. EH? What about ETs who have already evolved to a communist way of thinking and who introduce devices that end hunger, disease, and poverty? > The problem isn't really that there aren't enough > resources, it's a part of the problem, but the other part is the > actual human culture. One can argue that people's desire for more money is so they can buy more stuff and have more freedom. If you have a replicator, your every material desire is met, negating the need for money. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 02:27:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA04719 for dynarec-outgoing; Fri, 12 May 2000 02:27:28 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 12 May 2000 02:32:04 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! In-Reply-To: <391BC954.C97DA446@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >And I'll guess that you're 35. :) > > Oh no, since NG is 20, Victor is 23, and I am 26, NB has to be 29, at least > > to Murphy's Law ;-) > If Murphy's law is involved that that would mean that NB could not possibly > be 29. :) I just turned 31, and I'm proud to say that I can still hold an erection and remember lots of stuff. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 02:38:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA04742 for dynarec-outgoing; Fri, 12 May 2000 02:38:26 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <010501bfbbf5$cfc46700$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Website is up! Date: Fri, 12 May 2000 10:38:21 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > >And I'll guess that you're 35. :) > > > Oh no, since NG is 20, Victor is 23, and I am 26, NB has to be 29, at least > > > to Murphy's Law ;-) > > If Murphy's law is involved that that would mean that NB could not possibly > > be 29. :) > > I just turned 31, and I'm proud to say that I can still hold an erection > and remember lots of stuff. ;-) > > -->Neil *cough* Whose erection, exactly, are you holding? ;p Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 02:59:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA04775 for dynarec-outgoing; Fri, 12 May 2000 02:59:29 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <391BD3AF.426A2DD3@eurocopter.de> Date: Fri, 12 May 2000 11:49:35 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I just turned 31, and I'm proud to say that I can still hold an erection Your own I hope. ;) I've heard that women of 31 can also hold erections (think about it). :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 12 03:28:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA04824 for dynarec-outgoing; Fri, 12 May 2000 03:28:07 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005121032.MAA04657@pons.ac.upc.es> Subject: Re: DYNAREC: Crusoe In-Reply-To: "from Neil Bradley at May 12, 2000 02:30:25 am" To: dynarec@dynarec.com Date: Fri, 12 May 2000 12:32:51 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Your teachers are wrong, just as I was taught in school that communism was > bad. I was taught that communism was an evil form of government. Nothing > more than political propoganda and us vs. them. After being educated a bit > more by self study, I realize that communism in and of itself isn't bad, > and that my teachers were full of shit. > It's more a question of my family than my teachers ;) But as world doens't work as I would want I have to argue against something and capitalism is a good objective. ;) > You're a smart guy, and I hope you realize the same thing. > I try to get all points of view but it doesn't mean I will change without arguments my thoughts. > It depends upon what you call "slave" factories. Slavery implies they are > forced to work there - they are not. If it's in a foreign country, the US > government has no jurisdiction except for importation duties. I've seen > people go ape about Nike having shops in Taiwan where people are making > $3.25 a day. In Taiwan, for those people, $3.25 is decent money. How can > we hold every other country in the world to *OUR* value system? They're > getting a better deal for their money outside the US. > It's decent money because they live in a very poor country and it isn't so decent. > > > I've profiled the life of several CEOs - one being Andy Grove, now > > > chairmain of Intel. On a day to day basis, his stress level is extremely > > > high. If he makes one wrong decision, millions are out to lynch him (that > > > If it's so hard why are they working in such a job? > > Various reasons, actually: > > * They now have 75,000 employees world wide whose well beings they are > protecting and ensuring. > > * They really believe they're making a big difference in the industry > they're in. > > * They thrive on stress. > > * They want recognition. > > * More money! > > I get the impression that Andy Grove is #1, #2, maybe a bit of #3, some of > #4, but I don't think #5. > Those are good reasons, but are real reasons? So I don't know anyone in such a situation I can't say nothing. > Not to defend Bill Gates (he has enough fucking money, don't you think?) > Bill Gates decides to call it quits and say "See ya!" Microsoft stock > plummets, people lose faith in the company and stop buying their products > and it puts 9,000 Microsoft employees out of work. Then the industry as a > whole, of Windows programmers starts to erode. The need for computers > starts to erode, and people stop buying hardware. Stock market starts > plummeting as people pull their money out, which causes people to quit > investing in the stock market. > What you are saying is that people is silly (and perhaps they are). I can't see the difference between Bill Gates and other qualified CEO. This as the cars issue, Spanish cities are plenty of cars, there are too many cars, but as cars are a important part of the economy noone wants to apply measures on it. As easy to use more cycles or public tranport, but they are afraid that the full economy will fall if less cars are sold. If this happens then all the economic systems is a fake and it's wrong. And it should be changed. They just say we can't, we cant, it's impossible, and of course if they feel it's impossible it become impossible. > Don't laugh. This exact thing can happen very easily. Once you're in a > position like that, attempting a transition out of it isn't as easy as you > might think. > Power corruption. ;) > I really don't think Andy Grove or Bill Gates knew what they were getting > into. They might've thought they'd make a few bucks, but I'll bet you > their salary that they were caught by surprise. > Of course, and the guys from Apple too. > > > But they don't *HAVE* to be mechanics, miners, or ditchdiggers. Anyone can > > > do anything, and if you're not making it, you're not trying hard enough. I > > SOMEONE must be mechanics, miners, ditchdiggers or farmers. > > Yes, those who aren't willing to work hard enough to get them out of those > jobs, yes. > You are wrong here. I can't agree with that. > > without them. Not everyone can or could become a CEO. And I hope not > > No, but everyone has the inherent ability to better themselves... or not. > But the society prevents many times that. > I've not heard that Philosophy. Perhaps it's a translation problem of > sorts. *OF COURSE* Not everyone can be president, but the whole point of a > statement like that is there are no preset rules to prevent anyone from > doing anything. > There aren't preset rules but there are a whole system working against. And as much you talk about it, it's impossible that everybody get a CEO emploiment, it doesn't matter how hard they work. > > > > In fact, if I had 10 million dollars, I'd probably start a really > > > "cool" company that focuses on dropping the bottom out of a few markets - > > Umm, it's a really good idea. Perhaps if someday I earn so much money ;) > > Just work at it, man! Just keep your original goals and ideals in mind. > We will see. ;) > > (I raise my hand) Quite a few, actually. You'll find *LOTS* of small > businesses around (and on the web) that just like making cool, affordable > stuff. > But there aren't other that doesn't work and are forgotten. > > > Of course, as you realize, this has nothing to do with capitalism. This > > > has to do with human nature. > > I can agree. Then we have to try to change human nature. > > You're in for a big job. ;-) I'm probably in the biggest job but the creation of world. ;) > I was told a few pieces of information from a > book called "Built to last" - a book about how businesses are able to last > - like 50 years or longer. A few things came out of it: > > * Always pay your taxes and bills upon receipt of invoice > * Give the benefit of the doubt to every customer and company you do > business with > * Price products reasonably so that people feel they get a good value for > their money (but not too low, because people think it isn't worth a crap > and won't buy it!) > * View competition as a way to rethink or improve your products, not as > a threat to your livelihood > * Market honestly, and never put down nor compare yourselves to a > competitor to purposely make them look bad > * If a customer's needs aren't met by your product, give them a refund, > and even recommend a competitor's product > * Avoid litigation at all costs - attempt to work out licensing or > patent issues with the company in violation > * Be generous to each community your company is located in > * Set aside resources to donate resources and time to helping each local > community > > That's how I run my business, and honestly, I'd rather go *OUT* of > business than compromise my integrity. The one thing I can do when I go > home at night is live with myself. ;-) > They are very good rules, but I feel that only a small set of the people actually follows them. I only can agree with those principles, but they aren't usually applied. If they were applied world would be a lot of different than it is. > > A single person can do something but I means that it's hard to a single > > people to change a whole society. If there were enough single person > > doing something thing would change. > > Nope, but if you're an influential person, you can "infect" others with > similar styles of thinking. It takes time. You can't just one day suddenly > command millions. ;-) > A kind of messiah? It's a very dangerous thing. For any good of those influential person there are many more than than are really bad or evil. Think about how many Hitlers there were and how many Gandhis, Jesuses or Budas there were. > > I'm not familiar with India's economic situation enough to comment, but > the US economy is better than it has ever been. The US has an amazingly > low unemployment rate - lowest in the world if I'm not mistaken. There are > far more jobs available in the US than we can fill, so we're "importing". > US economy (and also europe economy) is arised over the resources of all over the world. Without exploitment of low developed countries a lot of things would be different. And many usual products will be very more expensive. > I'd say it works quite well for the US. > The Greek or Roman slave economic system also worked very well ..., for the owner of course, but no for the slaves. > > Justice/law works? Not usuallly. > > With real problems it does. It takes a while, but it does work. > I have seen in my countrie and other countries a lot of cases that Justice didn't work or didn't work properly. Bad example: Capone was jailed because of taxes not because it was a mafious. > > The internet isn't media controlled communication, which is what I was > getting at. ;-) > Still. It isn't STILL controlled. Governments wants a lot of more control and media companies want to get into too. But the average people don't uses internet for talking with other people about the future of the world, but they use those ugly chats saying nosenses all the time. > > Then they aren't seeking better lives. If you work hard, don't take no for > an answer, and open the door when opportunity knocks, there's nothing > inherent about the US that'll prevent you from bettering yourself. > So bad luck doesn't exist? I can follow your view of live. There are a lot of things that can prevent someone from getting a better live. For example a meteor could kill you. ;) > > > And I predict that we perhaps we don't have the chance or time ot > > invent the replicator. > > I don't believe that. > But I'm still afraid, perhaps I'm too pesimist. > > And about ETs I don't think that changes > > anything unless they are a kind of UN forces who want to control > > primitive planets. > > EH? What about ETs who have already evolved to a communist way of thinking > and who introduce devices that end hunger, disease, and poverty? > With such a technology people sure will begin first a war and will kill all the livings beings on Earth :p The ETs should be very very careful introducing such a devices because human evil can be really evil. The should change first the human nature. > > The problem isn't really that there aren't enough > > resources, it's a part of the problem, but the other part is the > > actual human culture. > > One can argue that people's desire for more money is so they can buy more > stuff and have more freedom. If you have a replicator, your every material > desire is met, negating the need for money. > You can say what you want but a replicator isn't a sollution. It's the same as say: God will come and it will give everyone what they want, evil will be pursuit and everyone will live happy. I'm not saying a replicator isn't possible. But in the kind of universe we live (entropy) and the kind of beings we are (humans) there is a great danger that it never happens. Energy and mass are still limited on that universe. And population and the need for resources can grow very more quickly than the technology for produce goods. Perhaps I'm dreaming when I talk about the human nature changing, but sure such thing as a replicator is also a dream. Think for example, someone invents the replicator, who will be? a mad scientist working alone? not it will be corporation laboratory or a military science facility. And what use they can do to such an invention? Militars will want to destroy enemy countries with the new technology because when a weapon is invented it will be used no matter how evil it could be, no matter how good people they think they are. As we say here "the evil loads the guns". And a corporation will try to conquer the world in the way they have, economically. Perhaps it isn't a true view, but it has some points to take in care. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sat May 13 11:00:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA08956 for dynarec-outgoing; Sat, 13 May 2000 11:00:42 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 13 May 2000 11:05:39 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! In-Reply-To: <007f01bfbbee$3ca7be60$88dc48c2@icc.co.im> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Anyone want to guess my age? ;-) I just had a birthday last Saturday. > Given that you consistently post messages up to 10am GMT, which must be > hideously early in the morning your time, I'd say about 18. ;) Don't you > ever sleep? Not enough, no. My schedule is fairly routine, though. I'm up until 2-2:30 PDT and I get up around 9:30PDT and sit around for an hour before I head off to work. I can stay logged in to Synthcom all day long from work because I just telnet in from there, so sometimes I get breaks at work where I'm running some huge test or am having lunch and can answer email. The long ones I usually reserve for late at night, but I was out partying last night so I didn't even check my mail. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sat May 13 11:02:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA08967 for dynarec-outgoing; Sat, 13 May 2000 11:02:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 13 May 2000 11:07:12 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! In-Reply-To: <010501bfbbf5$cfc46700$88dc48c2@icc.co.im> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > be 29. :) > > I just turned 31, and I'm proud to say that I can still hold an erection > > and remember lots of stuff. ;-) > *cough* > Whose erection, exactly, are you holding? ;p Wouldn' *YOU* like to know... big boy! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sat May 13 11:50:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA09027 for dynarec-outgoing; Sat, 13 May 2000 11:50:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 13 May 2000 11:55:18 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Crusoe In-Reply-To: <200005121032.MAA04657@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > * They now have 75,000 employees world wide whose well beings they are > > protecting and ensuring. > > * They really believe they're making a big difference in the industry > > they're in. > > * They thrive on stress. > > * They want recognition. > > * More money! > > I get the impression that Andy Grove is #1, #2, maybe a bit of #3, some of > > #4, but I don't think #5. > Those are good reasons, but are real reasons? So I don't know anyone > in such a situation I can't say nothing. I would imagine that there's varying degrees of this present in everyone who is "in charge". I really doubt that Grove expected to be where he is today. I get the impression from having met Grove many times that he's not in it for the money - he genuinely loves what he does. And *MAN* is he a sharp guy... I bumped in to Gates once at Comdex - literally. His waist almost came up to my shoulders. I thought at the time, "Man, that's a tall dude!" and I didn't even realize who it was. ;-) Granted, this was in 1991... > > whole, of Windows programmers starts to erode. The need for computers > > starts to erode, and people stop buying hardware. Stock market starts > > plummeting as people pull their money out, which causes people to quit > > investing in the stock market. > What you are saying is that people is silly (and perhaps they are). Big time. Paranoid rats, as I call them. One abandons ship, the rest do, too. > they are afraid that the full economy will fall if less cars are sold. If > this happens then all the economic systems is a fake and it's wrong. And > it should be changed. They just say we can't, we cant, it's impossible, and > of course if they feel it's impossible it become impossible. I can't argue that it isn't stupid. If I had a choice between not touching a "working" system and causing recession or harming an economy, I'd have to take the former. > > Don't laugh. This exact thing can happen very easily. Once you're in a > > position like that, attempting a transition out of it isn't as easy as you > > might think. > Power corruption. ;) No, more like you now *OWE* hard work and loyalty to the company because of all of your investors. Sometimes I think it'd be better if companies didn't go public. At least they wouldn't have to answer to the stockholders. > > I really don't think Andy Grove or Bill Gates knew what they were getting > > into. They might've thought they'd make a few bucks, but I'll bet you > > their salary that they were caught by surprise. > Of course, and the guys from Apple too. Oh yes, they're the worst. I have a vile hatred for Jobs. I don't mind Wozniak, but Jobs is just a marketing idiot who thinks he's Jesus incarnate. > > > > do anything, and if you're not making it, you're not trying hard enough. I > > > SOMEONE must be mechanics, miners, ditchdiggers or farmers. > > Yes, those who aren't willing to work hard enough to get them out of those > > jobs, yes. > You are wrong here. I can't agree with that. No, I'm not wrong here. What I'm saying is that everyone has an opportunity to better themselves. What makes that work is that very few of people actually *TRY* to better themselves, so they remain where they are. > > > without them. Not everyone can or could become a CEO. And I hope not > > No, but everyone has the inherent ability to better themselves... or not. > But the society prevents many times that. I can see there are some paths that are much more difficult, such as a woman becoming president, or someone living in the ghetto becoming head of a major corporation (the playing field isn't necessarily even and others may have extra hurdles to go through) but there's nothing stopping any average individual from working their way up in a company. It might be a long haul, but if you stick with it, it has a very good chance of succeeding. > > I've not heard that Philosophy. Perhaps it's a translation problem of > > sorts. *OF COURSE* Not everyone can be president, but the whole point of a > > statement like that is there are no preset rules to prevent anyone from > > doing anything. > There aren't preset rules but there are a whole system working against. > And as much you talk about it, it's impossible that everybody get a CEO > emploiment, it doesn't matter how hard they work. I'm not saying that everyone will get a CEO job. What I'm saying is that everyone has an opportunity to improve themselves and work toward that goal. Since 90% of people out there aren't willing to work extra hard to get where they want to be, it makes it much easier for the 10% who do, and it also makes it work. It might not work that way in Spain, but in the states it does. > > That's how I run my business, and honestly, I'd rather go *OUT* of > > business than compromise my integrity. The one thing I can do when I go > > home at night is live with myself. ;-) > They are very good rules, but I feel that only a small set of the people > actually follows them. I only can agree with those principles, but they > aren't usually applied. If they were applied world would be a lot of > different than it is. I think Spain has an entirely different economic system if you think that most aren't followed. Economy around here is good enough that everyone must compete - especially small companies - to win customers over their competitors. I can immediately think of 4 comapnies I've dealt with in the last 3 days that have had exemplary honesty - beyond the call of duty. You just have to live in the US to see that there are indeed lots of businesses who are honorable, and who genuinely love what they do. > > Nope, but if you're an influential person, you can "infect" others with > > similar styles of thinking. It takes time. You can't just one day suddenly > > command millions. ;-) > A kind of messiah? It's a very dangerous thing. For any good of those > influential person there are many more than than are really bad or evil. Very true. But I'm saying that if you positively affect 10 people in your life - giving them the benefit of the doubt or making sure that they get a "good deal" out of their purchase - TRULY take care of them, that tends to have a subconscious effect on others. It's like having a whole bunch of really bad dates and you think all women are evil, and then you meet one girl who is just awesome and sweet and it changes the way you think. If you run your business honestly and care about the customer, you can sleep at night with a clear conscience knowing that many people are happy with you and your products. > Think about how many Hitlers there were and how many Gandhis, Jesuses or > Budas there were. This is a bit outside what I'm talking about, but yes, I agree with your point. > > the US economy is better than it has ever been. The US has an amazingly > > low unemployment rate - lowest in the world if I'm not mistaken. There are > > far more jobs available in the US than we can fill, so we're "importing". > US economy (and also europe economy) is arised over the resources of all > over the world. Without exploitment of low developed countries a lot > of things would be different. And many usual products will be very more > expensive. I'd say some, but not "a lot". > > I'd say it works quite well for the US. > The Greek or Roman slave economic system also worked very well ..., for > the owner of course, but no for the slaves. That's stretching for an analogy - we're hardly talking about slave labor, here. The economy in the US works well for damn near everybody. Actually, those who don't want to work don't count. Our unemployment rate is actually 3.8%. > > > Justice/law works? Not usuallly. > > With real problems it does. It takes a while, but it does work. > I have seen in my countrie and other countries a lot of cases that > Justice didn't work or didn't work properly. Bad example: Capone was > jailed because of taxes not because it was a mafious. It's because he was a sneaky bastard and really had the ability to cover up his tracks. They did nail him *HARD* on tax evasion, though. Also, at that time, the laws were still fairly new in that department. They've changed so much now that Capone would be nailed so quickly it'd make your head spin. > > The internet isn't media controlled communication, which is what I was > > getting at. ;-) > Still. It isn't STILL controlled. Governments wants a lot of more control > and media companies want to get into too. But the average people don't > uses internet for talking with other people about the future of the world, > but they use those ugly chats saying nosenses all the time. You've got to take the good with the bad. It has been said that over 50% of the internet traffic is porn. We're still farting around with our newfound technology - downloading MP3s, streaming porno, and Java applets. We're not really using it forthings that are horribly constructive just yet, but as a new "thing" becomes available, it generally is abused and played with until its proper use comes. > > Then they aren't seeking better lives. If you work hard, don't take no for > > an answer, and open the door when opportunity knocks, there's nothing > > inherent about the US that'll prevent you from bettering yourself. > So bad luck doesn't exist? I can follow your view of live. There are a lot > of things that can prevent someone from getting a better live. For example > a meteor could kill you. ;) My point is the general public gives up too easily. They don't keep at it, they quit because it's "too hard". But I'm not talking about getting killed by a meteor. That has nothing to do with whether or not you're willing to go through the hurdles that are thrown in front of you. > > > And I predict that we perhaps we don't have the chance or time ot > > > invent the replicator. > > I don't believe that. > But I'm still afraid, perhaps I'm too pesimist. That kind of attitude has a tendency to be a self fulfilling prophecy. I don't believe that anything is impossible, no matter what people tell me. I've found through experiences in my life that nothing is impossible. I'm quite thankful that my peers give up sooner than I do, because it makes my competing with them even easier. ;-) > > EH? What about ETs who have already evolved to a communist way of thinking > > and who introduce devices that end hunger, disease, and poverty? > With such a technology people sure will begin first a war and will > kill all the livings beings on Earth :p What a dim view of things! The only way for us to know is when it happens. > > One can argue that people's desire for more money is so they can buy more > > stuff and have more freedom. If you have a replicator, your every material > > desire is met, negating the need for money. > You can say what you want but a replicator isn't a sollution. I didn't say it was a solution. I said that it'd be the invention that actually causes world change in this direction. IT's the start of a "new era", as it were. > It's the > same as say: God will come and it will give everyone what they want, evil > will be pursuit and everyone will live happy. There's a big difference between a material object's invention and a deity that no one can conclusively prove even exists. ;-) > produce goods. Perhaps I'm dreaming when I talk about the human nature > changing, but sure such thing as a replicator is also a dream. For now it is. 30 Years ago, 25MHZ microprocessors were a fantasy. They've long since surpassed reality. I just don't understand dim views of the future. If everyone would stop believeing that we actually have limits to what we can do, we'd be so much farther along in society and technologically. > for example, someone invents the replicator, who will be? a mad scientist > working alone? not it will be corporation laboratory or a military science > facility. And what use they can do to such an invention? Militars will want > to destroy enemy countries with the new technology because when a weapon > is invented it will be used no matter how evil it could be, no matter how > good people they think they are. As we say here "the evil loads the guns". > And a corporation will try to conquer the world in the way they have, > economically. Perhaps it isn't a true view, but it has some points to > take in care. Look at what drives greed: Desire for more money because they don't have it. Desire for "Things" that people want that they don't have. If a replicator had the ability to give everything to everyone, everyone's desires would be satisfied. Greed would cease to exist, because everyone gets what they want! If you want to change world thinking, I'd recommend not being so pessimistic about things. Believe that everything and anything is possible. Giving up is what causes things to stagnate. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sat May 13 16:35:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA09403 for dynarec-outgoing; Sat, 13 May 2000 16:35:22 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <003a01bfbd3c$7f29da80$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Website is up! Date: Sun, 14 May 2000 01:23:27 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > > Anyone want to guess my age? ;-) I just had a birthday last Saturday. > > Given that you consistently post messages up to 10am GMT, which must be > > hideously early in the morning your time, I'd say about 18. ;) Don't you > > ever sleep? > > Not enough, no. My schedule is fairly routine, though. I'm up until 2-2:30 > PDT and I get up around 9:30PDT and sit around for an hour before I head > off to work. I can stay logged in to Synthcom all day long from work > because I just telnet in from there, so sometimes I get breaks at work > where I'm running some huge test or am having lunch and can answer > email. The long ones I usually reserve for late at night, but I was out > partying last night so I didn't even check my mail. I think I could live with that time schedule quite happily. I'm generally up until 0:30 but I have to be up at 7:00 to be at work for 8.10 (or around there). And I stay there normally until 18:55 - it's a long day. Of course, on Tuesday and Thursday I have Ju-jitsu now, so I leave earlier on those days. And then I'm not home until at least 21:30. I do too much! :o What is it that your company does exactly? I thought that you worked for Intel, but you have mentioned about your own company before now - so I'm not sure... :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sat May 13 16:35:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA09404 for dynarec-outgoing; Sat, 13 May 2000 16:35:22 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <003b01bfbd3c$800baf00$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Website is up! Date: Sun, 14 May 2000 01:24:00 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > *cough* > > Whose erection, exactly, are you holding? ;p > > Wouldn' *YOU* like to know... big boy! ;-) I didn't just read that... I didn't just read that... Lalalalaaaaa... ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sat May 13 16:45:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA09440 for dynarec-outgoing; Sat, 13 May 2000 16:45:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <004101bfbd3d$e43cae60$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: DYNAREC: Web site modification Date: Sun, 14 May 2000 01:46:48 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Beginning of a new look. Nowhere near finished, just let me know what you think (colours and all). And if you've got any better colours to use, let me know what they are! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sat May 13 17:13:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA09491 for dynarec-outgoing; Sat, 13 May 2000 17:13:12 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Web site modification From: "M.I.K.e" In-Reply-To: <004101bfbd3d$e43cae60$0100a8c0@lion> Message-ID: <00036789185907a3_mailit@mail.dynarec.com> References: <004101bfbd3d$e43cae60$0100a8c0@lion> Date: Sun, 14 May 2000 02:17:26 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Beginning of a new look. Nowhere near finished, just let me know what you >think (colours and all). And if you've got any better colours to use, let me >know what they are! :o Wow this one's cool! I like the logo, and the colouring of the table. The only thing I'd change is the date format, since the one you are using can be ambigious. I normally use the ISO date, which would be 2000-05-14 instead of 14/5/00. Otherwise it's a very nice work. I think we "elected" the right webmaster ;-) >Neil. -- M.I.K.e A good question is never answered. It is not a bolt to be tightened into place but a seed to be planted and to bear more seed toward the hope of greening the landscape of idea. -- John Ciardi --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sat May 13 21:18:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA09688 for dynarec-outgoing; Sat, 13 May 2000 21:17:59 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sat, 13 May 2000 21:23:03 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Web site modification In-Reply-To: <00036789185907a3_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Beginning of a new look. Nowhere near finished, just let me know what you > >think (colours and all). And if you've got any better colours to use, let me > >know what they are! :o > Wow this one's cool! > I like the logo, and the colouring of the table. > The only thing I'd change is the date format, since the one you are using can > be ambigious. I normally use the ISO date, which would be 2000-05-14 instead > of 14/5/00. Better yet, just say "May 14th, 2000". That's universal. > Otherwise it's a very nice work. I think we "elected" the right webmaster ;-) I agree! The only minor thing I'd change is adding some black space to the logo like in the 'a' and 'e'. Other than that, damn sharp! -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 01:16:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA09872 for dynarec-outgoing; Sun, 14 May 2000 01:16:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 14 May 2000 01:21:11 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! In-Reply-To: <003a01bfbd3c$7f29da80$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > What is it that your company does exactly? I thought that you worked for > Intel, but you have mentioned about your own company before now - so I'm not > sure... :o I do work for Intel during the day, but by night I'm a musician who makes synthesizer/keyboard modifications and upgrades. Currently I'm working on the first one... -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 03:34:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA10169 for dynarec-outgoing; Sun, 14 May 2000 03:34:22 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Web site modification From: "M.I.K.e" In-Reply-To: Message-ID: <00036791c45590b7_mailit@mail.dynarec.com> References: Date: Sun, 14 May 2000 12:38:11 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Better yet, just say "May 14th, 2000". That's universal. That is the other solution of course ;-) BTW, forgot to mention that the time should be probably dropped since we'd have to use a standard time (eg. GMT), but even then we will cause confusion. -- M.I.K.e In Boston, it is illegal to hold frog-jumping contests in nightclubs. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 04:14:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA10226 for dynarec-outgoing; Sun, 14 May 2000 04:14:01 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Website is up! From: "M.I.K.e" In-Reply-To: Message-ID: <00036792500b1e1b_mailit@mail.dynarec.com> References: Date: Sun, 14 May 2000 13:17:15 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >I do work for Intel during the day, Uh-oh, I read that you were working for Intel but I didn't know that you are still working for them. I guess I'll never try to argue with you about Intel processors again... >but by night I'm a musician That's the typical time for musicians ;-) >who makes synthesizer/keyboard modifications and upgrades. So that's Synthcom then. >-->Neil -- M.I.K.e "Wrong," said Renner. "The tactful way," Rod said quietly, "the polite way to disagree with the Senator would be to say, `That turns out not to be the case.'" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 05:46:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA10351 for dynarec-outgoing; Sun, 14 May 2000 05:46:16 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: DYNAREC: DRFAQ extanded From: "M.I.K.e" Message-ID: <000367939c6d1eb8_mailit@mail.dynarec.com> Date: Sun, 14 May 2000 14:50:12 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com I've extended the DRFAQ a bit, maybe you want to take a look: http://www.dynarec.com/~mike/drfaq.html -- M.I.K.e How do you explain school to a higher intelligence? -- Elliot, "E.T." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 08:43:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA10550 for dynarec-outgoing; Sun, 14 May 2000 08:43:54 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <001501bfbdbb$cf21dc20$0a53883e@ben> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Web site modification Date: Sun, 14 May 2000 16:48:05 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >Beginning of a new look. Nowhere near finished, just let me know what you > > >think (colours and all). And if you've got any better colours to use, let me > > >know what they are! :o > > Wow this one's cool! > > I like the logo, and the colouring of the table. > > The only thing I'd change is the date format, since the one you are using can > > be ambigious. I normally use the ISO date, which would be 2000-05-14 instead > > of 14/5/00. > > Better yet, just say "May 14th, 2000". That's universal. I think you mean, "14th May, 2000". ;) > > Otherwise it's a very nice work. I think we "elected" the right webmaster ;-) > > I agree! The only minor thing I'd change is adding some black space to the > logo like in the 'a' and 'e'. Other than that, damn sharp! I like it too. It loads really fast, which is useful for those of us using a good old fashioned dial up modem connected over an analogue phone line (I'm currently connected at 24000 baud!), and it's clear and easy to read. I want to see links to various people pages, though! I've got to remember to add /~mike/ whenever I want to get at the FAQ, and that's ever such a strain on my diddy little mental powers. Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 09:05:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA10587 for dynarec-outgoing; Sun, 14 May 2000 09:05:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 14 May 2000 17:11:21 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: DRFAQ extanded Message-ID: <20000514171120.A932@jtb20b.quns.cam.ac.uk> References: <000367939c6d1eb8_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: <000367939c6d1eb8_mailit@mail.dynarec.com>; from M.I.K.e on Sun, May 14, 2000 at 02:50:12PM +0200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com On Sun, May 14, 2000 at 02:50:12PM +0200, M.I.K.e wrote: > I've extended the DRFAQ a bit, maybe you want to take a look: > http://www.dynarec.com/~mike/drfaq.html Cool! Thanks for including my stuff... I've done a slight tidy-up of my page using shtml [1], but I can't enable server-side preprocessed pages in the apache config on dynarec.com - the stuff which needs to be done is enabling shtml and adding index.shtml to the default page-name list nearer the top of the file... this is probably a job for Neil B, since he's probably the only one with the necessary access privileges afaik (beg ;-)) If you want a look, the pages are on my old server at http://jtb20.quns.cam.ac.uk/armphetamine. If you want to see the sort of thing you can do really easily with shtml, have a look at http://dynarec.com/~jules/index.shtml before shtml's enabled... Oh dear, I've been sitting around in the sun all day today instead of revising. I'll regret that in a few weeks... Jules [1] No new content, mind... and it's rather blue ;-) -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 11:22:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA10748 for dynarec-outgoing; Sun, 14 May 2000 11:21:50 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Web site modification From: "M.I.K.e" In-Reply-To: <001501bfbdbb$cf21dc20$0a53883e@ben> Message-ID: <0003679842f1d9c8_mailit@mail.dynarec.com> References: <001501bfbdbb$cf21dc20$0a53883e@ben> Date: Sun, 14 May 2000 20:23:05 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think you mean, "14th May, 2000". ;) We don't want to start another independence war, do we? ;-) >I like it too. It loads really fast, which is useful for those of us using a >good old fashioned dial up modem connected over an analogue phone line (I'm >currently connected at 24000 baud!), That's slow indeed. I normally don't get the full 56K, but 33.6 should be the minimum. >and it's clear and easy to read. Yep. >I want >to see links to various people pages, though! I've got to remember to add >/~mike/ whenever I want to get at the FAQ, Actually it's /~mike/drfaq.html ;-) But how often do you read the FAQ anyway? >and that's ever such a strain on my diddy little mental powers. Hard work for your lonely brain cell? I wonder why my last one didn't die yet... >Andrew -- M.I.K.e SHIFT TO THE LEFT! SHIFT TO THE RIGHT! POP UP, PUSH DOWN, BYTE, BYTE, BYTE! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 11:22:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA10744 for dynarec-outgoing; Sun, 14 May 2000 11:21:48 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: DRFAQ extanded From: "M.I.K.e" In-Reply-To: <20000514171120.A932@jtb20b.quns.cam.ac.uk> Message-ID: <000367984d7cc6d5_mailit@mail.dynarec.com> References: <000367939c6d1eb8_mailit@mail.dynarec.com> <20000514171120.A932@jtb20b.quns.cam.ac.uk> Date: Sun, 14 May 2000 20:26:02 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >> http://www.dynarec.com/~mike/drfaq.html >Cool! Thanks for including my stuff... It would be a shame if I didn't mention the work of a dynarec.com member! But I still have to write the short comment as I did for the other docs, although I also have to do it for Shade as well, so you're in good company. >Jules -- M.I.K.e Those who in quarrels interpose, must often wipe a bloody nose. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 11:33:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA10789 for dynarec-outgoing; Sun, 14 May 2000 11:33:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <003901bfbddb$778ed4c0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Web site modification Date: Sun, 14 May 2000 20:25:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Better yet, just say "May 14th, 2000". That's universal. It's changed. :) > > Otherwise it's a very nice work. I think we "elected" the right webmaster ;-) > > I agree! The only minor thing I'd change is adding some black space to the > logo like in the 'a' and 'e'. Other than that, damn sharp! Thanks! I've "fixed" the problem with the 'a' and 'e' characters, not sure they look better than before, but WTH. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 11:33:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA10803 for dynarec-outgoing; Sun, 14 May 2000 11:33:19 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <003a01bfbddb$7893c1a0$0100a8c0@lion> From: "Neil Griffiths" To: References: <004101bfbd3d$e43cae60$0100a8c0@lion> <00036789185907a3_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Web site modification Date: Sun, 14 May 2000 20:26:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Wow this one's cool! Thanks! :) > I like the logo, and the colouring of the table. I'm glad you like them. I'm afraid that the colours used in the table are a little bright, I'll try to make them slightly darker before I've finished. But I'm glad you like them. :) > Otherwise it's a very nice work. I think we "elected" the right webmaster ;-) Heh. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 11:33:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA10806 for dynarec-outgoing; Sun, 14 May 2000 11:33:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <003b01bfbddb$798e0020$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Website is up! Date: Sun, 14 May 2000 20:27:09 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I do work for Intel during the day, but by night I'm a musician who makes > synthesizer/keyboard modifications and upgrades. Currently I'm working on > the first one... Ah, okay. I understand better now! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 11:33:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA10811 for dynarec-outgoing; Sun, 14 May 2000 11:33:22 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <003c01bfbddb$7a576aa0$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036791c45590b7_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Web site modification Date: Sun, 14 May 2000 20:27:29 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > BTW, forgot to mention that the time should be probably dropped since we'd > have to use a standard time (eg. GMT), but even then we will cause confusion. That's a good point. It should be fixed now. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 11:33:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA10815 for dynarec-outgoing; Sun, 14 May 2000 11:33:23 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <003d01bfbddb$7b17ad60$0100a8c0@lion> From: "Neil Griffiths" To: References: <001501bfbdbb$cf21dc20$0a53883e@ben> Subject: Re: DYNAREC: Web site modification Date: Sun, 14 May 2000 20:29:55 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > I agree! The only minor thing I'd change is adding some black space to the > > logo like in the 'a' and 'e'. Other than that, damn sharp! > > I like it too. It loads really fast, which is useful for those of us using a > good old fashioned dial up modem connected over an analogue phone line (I'm > currently connected at 24000 baud!), and it's clear and easy to read. I want > to see links to various people pages, though! I've got to remember to add > /~mike/ whenever I want to get at the FAQ, and that's ever such a strain on > my diddy little mental powers. That was also a good idea. I've put that in as well. It might be better placed at the bottom, but as I'm not sure whether we should have news on the main page or not just yet, I've placed them at the top. It looks okay at the moment, IMHO... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 12:00:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA10868 for dynarec-outgoing; Sun, 14 May 2000 12:00:44 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 14 May 2000 12:05:57 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! In-Reply-To: <00036792500b1e1b_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I do work for Intel during the day, > Uh-oh, I read that you were working for Intel but I didn't know that you are > still working for them. I guess I'll never try to argue with you about Intel > processors again... Why? Just because I work for the company doesn't mean I have a violent agreement with everything they do. That's stupid! I disagree with a *LOT* of what goes on! > >who makes synthesizer/keyboard modifications and upgrades. > So that's Synthcom then. Yup! -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 12:04:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA10898 for dynarec-outgoing; Sun, 14 May 2000 12:04:36 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 14 May 2000 12:09:50 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Web site modification In-Reply-To: <001501bfbdbb$cf21dc20$0a53883e@ben> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Better yet, just say "May 14th, 2000". That's universal. > I think you mean, "14th May, 2000". ;) No, I meant May 14th, 2000. I have friends in Germany and several from the UK here in the US (who are not native but moved here a few years ago) and none of them speak this way. I find it quite a bit silly that Europeans aren't consistent with the mm/dd/yy and textual layout. ;=-) > I like it too. It loads really fast, which is useful for those of us using a > good old fashioned dial up modem connected over an analogue phone line (I'm > currently connected at 24000 baud!), and it's clear and easy to read. I want > to see links to various people pages, though! I've got to remember to add > /~mike/ whenever I want to get at the FAQ, and that's ever such a strain on > my diddy little mental powers. So is that what the links at the top of the page will eventually do? -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 12:10:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA10917 for dynarec-outgoing; Sun, 14 May 2000 12:10:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 14 May 2000 12:16:06 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Web site modification In-Reply-To: <003901bfbddb$778ed4c0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I agree! The only minor thing I'd change is adding some black space to the > > logo like in the 'a' and 'e'. Other than that, damn sharp! > Thanks! I've "fixed" the problem with the 'a' and 'e' characters, not sure > they look better than before, but WTH. :) I think it does look better. It was easy for us to read initially because we knew what the logo said, but my wife said "What does that say?". I'm sure that others would have a similar issue with the prior rev. Looks great now! -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 12:40:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA10960 for dynarec-outgoing; Sun, 14 May 2000 12:40:18 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Web site modification From: "M.I.K.e" In-Reply-To: Message-ID: <000367995920dafb_mailit@mail.dynarec.com> References: Date: Sun, 14 May 2000 21:40:53 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >No, I meant May 14th, 2000. I have friends in Germany and several from the >UK here in the US (who are not native but moved here a few years ago) and >none of them speak this way. I find it quite a bit silly that Europeans >aren't consistent with the mm/dd/yy and textual layout. ;=-) That's why I use the ISO date on my pages (yyyy-mm-dd): * it's clear to understand * it sorts nicely * and it doesn't have the funny "00" when you mean "2000". >-->Neil -- M.I.K.e Blore's Razor: Given a choice between two theories, take the one which is funnier. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 12:40:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA10968 for dynarec-outgoing; Sun, 14 May 2000 12:40:26 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Web site modification From: "M.I.K.e" In-Reply-To: <003a01bfbddb$7893c1a0$0100a8c0@lion> Message-ID: <000367995d92e5d3_mailit@mail.dynarec.com> References: <004101bfbd3d$e43cae60$0100a8c0@lion> <00036789185907a3_mailit@mail.dynarec.com> <003a01bfbddb$7893c1a0$0100a8c0@lion> Date: Sun, 14 May 2000 21:42:07 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm glad you like them. I'm afraid that the colours used in the table are a >little bright, I'll try to make them slightly darker before I've finished. >But I'm glad you like them. :) I guess the red could be a tick darker, but the blue is ok for me. >Neil. -- M.I.K.e When a place gets crowded enough to require ID's, social collapse is not far away. It is time to go elsewhere. The best thing about space travel is that it made it possible to go elsewhere. -- Robert Heinlein --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 12:40:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA10976 for dynarec-outgoing; Sun, 14 May 2000 12:40:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Website is up! From: "M.I.K.e" In-Reply-To: Message-ID: <000367995140907c_mailit@mail.dynarec.com> References: Date: Sun, 14 May 2000 21:38:40 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Why? Just because I work for the company doesn't mean I have a violent >agreement with everything they do. That's stupid! I disagree with a *LOT* >of what goes on! Sorry, I guess I should know you better by now, especially that you are open to discussions. >-->Neil -- M.I.K.e Ask your boss to reconsider -- it's so difficult to take "Go to hell" for an answer. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 12:47:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA10992 for dynarec-outgoing; Sun, 14 May 2000 12:47:12 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 14 May 2000 12:52:26 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! In-Reply-To: <000367995140907c_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Why? Just because I work for the company doesn't mean I have a violent > >agreement with everything they do. That's stupid! I disagree with a *LOT* > >of what goes on! > Sorry, I guess I should know you better by now, especially that you are open > to discussions. Uh... were you being sarcastic here? ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 12:55:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA11015 for dynarec-outgoing; Sun, 14 May 2000 12:55:27 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Website is up! From: "M.I.K.e" In-Reply-To: Message-ID: <00036799942dba18_mailit@mail.dynarec.com> References: Date: Sun, 14 May 2000 21:57:23 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Uh... were you being sarcastic here? ;-) Not really, but if you prefer to see it that way... ;-) >-->Neil -- M.I.K.e "Sherry [Thomas Sheridan] is dull, naturally dull; but it must have taken him a great deal of pains to become what we now see him. Such an excess of stupidity, sir, is not in Nature." -- Samuel Johnson --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 13:07:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA11048 for dynarec-outgoing; Sun, 14 May 2000 13:07:31 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 14 May 2000 13:12:46 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! In-Reply-To: <00036799942dba18_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Uh... were you being sarcastic here? ;-) > Not really, but if you prefer to see it that way... ;-) That's the shortcoming of email. You've got a particular sentence that can be taken one of two ways - one very complementary, one not so complementary. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 13:30:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA11096 for dynarec-outgoing; Sun, 14 May 2000 13:30:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Website is up! From: "M.I.K.e" In-Reply-To: Message-ID: <0003679a1afead4a_mailit@mail.dynarec.com> References: Date: Sun, 14 May 2000 22:35:05 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >That's the shortcoming of email. You've got a particular sentence that can >be taken one of two ways - one very complementary, one not so >complementary. ;-) I love ambiguity ;-) But it certainly was meant in the positive way. >-->Neil -- M.I.K.e One cannot make an omelette without breaking eggs -- but it is amazing how many eggs one can break without making a decent omelette. -- Professor Charles P. Issawi --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 13:32:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA11109 for dynarec-outgoing; Sun, 14 May 2000 13:32:32 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 14 May 2000 13:37:46 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Website is up! In-Reply-To: <0003679a1afead4a_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > >be taken one of two ways - one very complementary, one not so > >complementary. ;-) > I love ambiguity ;-) > But it certainly was meant in the positive way. I appreciate that. There's this notion floating around everywhere that just because you work for a given company that you believe in everything it does and says (unless you work for Apple where it's absolutely true). -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 13:50:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA11140 for dynarec-outgoing; Sun, 14 May 2000 13:50:45 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <002601bfbdee$a9e22720$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Web site modification Date: Sun, 14 May 2000 22:46:02 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > No, I meant May 14th, 2000. I have friends in Germany and several from the > UK here in the US (who are not native but moved here a few years ago) and > none of them speak this way. I find it quite a bit silly that Europeans > aren't consistent with the mm/dd/yy and textual layout. ;=-) Yeah, but you Americans have different laws for different states. Why can't we have different textual layouts? ;) > So is that what the links at the top of the page will eventually do? Er... they already _do_ do that. I hope. They work for me! :o Has anyone viewed the pages in anything *but* IE? It should look best in IE because I'm using the "Verdana" font which comes with it and looks pretty nice. Netscape should be okay as well, but I hate it so I'm not going to check it out. Well, not from home. I have no choice when I go to work... You use NetPositive, don't you Mike? Apart from the image at the top, how is it? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 13:51:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA11150 for dynarec-outgoing; Sun, 14 May 2000 13:51:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <002701bfbdee$b5893f00$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Web site modification Date: Sun, 14 May 2000 22:47:13 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I think it does look better. It was easy for us to read initially because > we knew what the logo said, but my wife said "What does that say?". And I bet you were thinking "Don't say Playboy! Don't say Playboy!". And you got away with it too! ;)) > I'm sure that others would have a similar issue with the prior rev. Looks > great now! Glad you like it. I'm just not so happy with the 'e' character, I think I may have removed too much. Oh well, not a problem - I've still got the original. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 13:56:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA11170 for dynarec-outgoing; Sun, 14 May 2000 13:56:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <003101bfbdef$87414ba0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Website is up! Date: Sun, 14 May 2000 22:58:14 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I appreciate that. There's this notion floating around everywhere that > just because you work for a given company that you believe in everything > it does and says (unless you work for Apple where it's absolutely true). Or 3Dfx. Sorry. :) Anyway, two updates to the webspace. The first is to the main page where I've altered the red slightly - I'm more happy with it now. The second is to my own space where I have uploaded a file called "dynarec.zip". I don't know where I got it from but I found it in with lots of my download files. It contains lots of documentation on dynamic recompilation. It's quite possible I got it from one of you guys, I'm not sure. Anyway, some people may find it useful. The link is: http://www.dynarec.com/~neilg/dynarec.zip Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 14:00:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA11193 for dynarec-outgoing; Sun, 14 May 2000 14:00:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Sun, 14 May 2000 14:05:35 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Web site modification In-Reply-To: <002601bfbdee$a9e22720$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > UK here in the US (who are not native but moved here a few years ago) and > > none of them speak this way. I find it quite a bit silly that Europeans > > aren't consistent with the mm/dd/yy and textual layout. ;=-) > Yeah, but you Americans have different laws for different states. Why can't > we have different textual layouts? ;) Hehehehehe. ;-) Consistency is a nice thing. Make it say May 14th, 2000. That's the way everyone speaks it and it reads much better. > > So is that what the links at the top of the page will eventually do? > Er... they already _do_ do that. I hope. They work for me! :o > Has anyone viewed the pages in anything *but* IE? It should look best in IE > because I'm using the "Verdana" font which comes with it and looks pretty > nice. Netscape should be okay as well, but I hate it so I'm not going to > check it out. Well, not from home. I have no choice when I go to work... You > use NetPositive, don't you Mike? Apart from the image at the top, how is it? I don't use IE except when Netscape decides it wants to start stalling on page loads. But under Netscape, clicking on the user names didn't get me anywhere. ;-( -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 15:07:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA11276 for dynarec-outgoing; Sun, 14 May 2000 15:07:27 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Web site modification From: "M.I.K.e" In-Reply-To: <002601bfbdee$a9e22720$0100a8c0@lion> Message-ID: <0003679b712ede15_mailit@mail.dynarec.com> References: <002601bfbdee$a9e22720$0100a8c0@lion> Date: Mon, 15 May 2000 00:10:46 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Has anyone viewed the pages in anything *but* IE? Yes, me. >It should look best in IE >because I'm using the "Verdana" font which comes with it and looks pretty >nice. I could try to install it on BeOS since it uses TrueType fonts as well. Is it part of Win98 or do I have to download it from somewhere? >Netscape should be okay as well, but I hate it so I'm not going to >check it out. Well, not from home. I have no choice when I go to work... I can check it with Netscape at work too, or at home but I didn't start it for ages... >You use NetPositive, don't you Mike? Apart from the image at the top, how is it? Works fine. The strange thing is that the logo is sometimes centered and sometimes not, seems to be a bug in NetPositive - certainly not the first one I found, but I'm still happier with it than with Netscape. What Neil meant about the links could have to do with the fact that Victor and Andy don't have an account yet. All other references work fine. >Neil. -- M.I.K.e "It's a small world, but I wouldn't want to have to paint it." -- Steven Wright --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 15:07:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA11285 for dynarec-outgoing; Sun, 14 May 2000 15:07:29 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Website is up! From: "M.I.K.e" In-Reply-To: Message-ID: <0003679b53f7ebd1_mailit@mail.dynarec.com> References: Date: Mon, 15 May 2000 00:02:36 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >I appreciate that. There's this notion floating around everywhere that >just because you work for a given company that you believe in everything >it does and says Since I don't do that myself I normally don't believe that of others. >(unless you work for Apple where it's absolutely true). Or your name is Jean-Louis Gasse ;-) >-->Neil -- M.I.K.e An age is called Dark not because the light fails to shine, but because people refuse to see it. -- James Michener, "Space" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 14 15:07:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA11292 for dynarec-outgoing; Sun, 14 May 2000 15:07:32 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Website is up! From: "M.I.K.e" In-Reply-To: <003101bfbdef$87414ba0$0100a8c0@lion> Message-ID: <0003679b758521c8_mailit@mail.dynarec.com> References: <003101bfbdef$87414ba0$0100a8c0@lion> Date: Mon, 15 May 2000 00:11:59 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Anyway, two updates to the webspace. The first is to the main page where >I've altered the red slightly - I'm more happy with it now. I'll take a look... >The second is to >my own space where I have uploaded a file called "dynarec.zip". I don't know >where I got it from but I found it in with lots of my download files. It >contains lots of documentation on dynamic recompilation. It's quite possible >I got it from one of you guys, I'm not sure. I bet you downloaded it from Victor's page. In that case I have it already... >Neil. -- M.I.K.e Endless Loop: n., see Loop, Endless. Loop, Endless: n., see Endless Loop. -- Random Shack Data Processing Dictionary --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 00:59:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA11768 for dynarec-outgoing; Mon, 15 May 2000 00:59:03 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <001901bfbe43$68ff20a0$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Web site modification Date: Mon, 15 May 2000 08:58:51 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: Neil Bradley > > > UK here in the US (who are not native but moved here a few years ago) and > > > none of them speak this way. I find it quite a bit silly that Europeans > > > aren't consistent with the mm/dd/yy and textual layout. ;=-) > > Yeah, but you Americans have different laws for different states. Why can't > > we have different textual layouts? ;) > > Hehehehehe. ;-) Consistency is a nice thing. Make it say May 14th, > 2000. That's the way everyone speaks it and it reads much better. I still don't get the mm/dd/yy thing, though. It doesn't make any sense. dd/mm/yy, yes. yy/mm/dd, fine. But mm/dd/yy isn't in any sort of sensible order. Where'd it come from originally? > > > So is that what the links at the top of the page will eventually do? > > Er... they already _do_ do that. I hope. They work for me! :o > > Has anyone viewed the pages in anything *but* IE? It should look best in IE > > because I'm using the "Verdana" font which comes with it and looks pretty > > nice. Netscape should be okay as well, but I hate it so I'm not going to > > check it out. Well, not from home. I have no choice when I go to work... You > > use NetPositive, don't you Mike? Apart from the image at the top, how is it? > > I don't use IE except when Netscape decides it wants to start stalling on > page loads. But under Netscape, clicking on the user names didn't get me > anywhere. ;-( They work fine for me. I must take this opportunity to comment on your incredible page, the reading of which has motivated me to hand in my notice, forsake a normal life, and dedicate myself entirely to the pursuit of binary translation. Shalom! By the way, when are you adding the jpgs? ;) Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 01:01:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA11788 for dynarec-outgoing; Mon, 15 May 2000 01:01:35 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005150807.KAA02465@pons.ac.upc.es> Subject: Re: DYNAREC: Crusoe In-Reply-To: "from Neil Bradley at May 13, 2000 11:55:18 am" To: dynarec@dynarec.com Date: Mon, 15 May 2000 10:07:46 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com How many time until you lost a discussion? ;) And a precission: I was wrong, Spain IS a catholic country :p. All weekend talking about that fucking third secret of Fatima ... And they are still talking about it! Hell! I will become a a priest of the dark church of Satan as revenge ;) > I can't argue that it isn't stupid. If I had a choice between not touching > a "working" system and causing recession or harming an economy, I'd have > to take the former. > A person is the system? > No, I'm not wrong here. What I'm saying is that everyone has an > opportunity to better themselves. What makes that work is that very few of > people actually *TRY* to better themselves, so they remain where they are. > I can see your point, but I still I saw too much poverty in the world. > If you run your business honestly and care about the customer, you can > sleep at night with a clear conscience knowing that many people are happy > with you and your products. > I think there are a lot of people doesn't need honesty to sleep at night, = they use the TV. It's incredible but today I don't feel the forces to reply your mail :o. > That's stretching for an analogy - we're hardly talking about slave labor, > here. The economy in the US works well for damn near everybody. Actually, > those who don't want to work don't count. > How live the people without working? > > You've got to take the good with the bad. It has been said that over 50% > of the internet traffic is porn. We're still farting around with our > newfound technology - downloading MP3s, streaming porno, and Java > applets. We're not really using it forthings that are horribly > constructive just yet, but as a new "thing" becomes available, it > generally is abused and played with until its proper use comes. > As TV. I'm still waiting for a good TV, in fact in Spain is becoming worst a worst every day. > My point is the general public gives up too easily. They don't keep at it, > they quit because it's "too hard". But I'm not talking about getting > killed by a meteor. That has nothing to do with whether or not you're > willing to go through the hurdles that are thrown in front of you. > Agreed. Average people will ever do average work. You can't expect everyone to be a kind life fighter. And "too hard" is a subjective expression. People are different each other, what for one is easy for other could be really hard. What it is needed is a system that helps everyone find a place where they feel happy not a system where they have to fight agains everything to be happy. > > That kind of attitude has a tendency to be a self fulfilling prophecy. I > don't believe that anything is impossible, no matter what people tell > me. I've found through experiences in my life that nothing is > impossible. I'm quite thankful that my peers give up sooner than I do, > because it makes my competing with them even easier. ;-) > > > You can say what you want but a replicator isn't a sollution. > > I didn't say it was a solution. I said that it'd be the invention that > actually causes world change in this direction. IT's the start of a "new > era", as it were. > Of course it's a new era. An area where every idiot will have the power to destroy worlds. Education first, then the power. If you have first the power you will have to learn about it and you can harm yourself or everyone else. They kind of technology you call a replicator has a lot of dark uses. > There's a big difference between a material object's invention and a deity > that no one can conclusively prove even exists. ;-) > Your replicator seems a little about the anti-entropic machine and that is against all we still know about the nature laws. The amounts of energy needed are very far from what we have now. > For now it is. 30 Years ago, 25MHZ microprocessors were a fantasy. They've > long since surpassed reality. > I'm reading Science Fiction since I was child, and I don't mean StarWars books but serious SF. So I think I know a bit about future expeculations. I hope the best from the science in next years, from Computers, Genetics and Enginery. But we can't work hoping that technology will be the solution of all our problems. > I just don't understand dim views of the future. If everyone would stop > believeing that we actually have limits to what we can do, we'd be so much > farther along in society and technologically. > There are limits. We are far away of them but there are a lot of limits in the universe. Universe itself is limited. Do you think eternal life, for example, is a real chance? Our universe, until we know something new, is limited and will end. All things from stars to living beings will end someday. What stops people to go farther is the fear for the unknown. > Look at what drives greed: Desire for more money because they don't have > it. Desire for "Things" that people want that they don't have. If a > replicator had the ability to give everything to everyone, everyone's > desires would be satisfied. Greed would cease to exist, because everyone > gets what they want! > There will be ever things impossible. Things related to the own power over other people for example. Unless you want to convert humans in a kind of gods, each separated on their owns worlds building a mad reality following their desires. Buda, Aristoteles, Platon and others good phylosophers were against the fullfishness of all desires. For ages there has been people with all their MATERIAL desires fulfilled, this makes them better or more happy than a peasant. I don't think so. Giving all they one to people who don't really now what they need or want is a mistake. It's best to try to educate them and show them how to live properly. Education and culture not material beings and consume. A basic set of things are needed: enough food, medicines, entertainment but I can't agree with leting everyone fullfill their mad dreams. And a thought: we don't need a replicator just a real VR (virtual reality) technology. Everyone plugged in a fake world that fullfill their desires. Or a drug that makes everyone happy without danger for health, these are more easy than a replicator. Interested in that kind of wolrds?. Hell! I'm still being pessimistic. > If you want to change world thinking, I'd recommend not being so > pessimistic about things. Believe that everything and anything is > possible. Giving up is what causes things to stagnate. > There are times I'm pessimistic and there are times I'm optimistic and a lot of more I don't really care about it. I also think that if you think something impossible becomes impossible but I just don't see myself trying to change the world as the world don't seem to be changing by itself I have to be realistic. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 01:18:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA11807 for dynarec-outgoing; Mon, 15 May 2000 01:18:47 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 15 May 2000 01:24:10 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Web site modification In-Reply-To: <001901bfbe43$68ff20a0$88dc48c2@icc.co.im> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Hehehehehe. ;-) Consistency is a nice thing. Make it say May 14th, > > 2000. That's the way everyone speaks it and it reads much better. > I still don't get the mm/dd/yy thing, though. It doesn't make any sense. > dd/mm/yy, yes. yy/mm/dd, fine. But mm/dd/yy isn't in any sort of sensible > order. Where'd it come from originally? It's the order spoken by everyone in every English speaking culture I've found. Saying day/month/year is inconsistent with that. So if I say "What day is it?" The response, regardless of the English speaking country is: "It's June 5th." Not: "It's the 5th of June". Therefore, mm/dd/yy has consistency where dd/mm/yy doesn't. So *NYAH*! ;-) > > I don't use IE except when Netscape decides it wants to start stalling on > > page loads. But under Netscape, clicking on the user names didn't get me > > anywhere. ;-( > They work fine for me. I must take this opportunity to comment on your > incredible page, the reading of which has motivated me to hand in my notice, > forsake a normal life, and dedicate myself entirely to the pursuit of binary > translation. Shalom! Yes. We must sacrifice at least once piece of old code to the Dynarec god of translation, otherwise we're cursed with emulation. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 01:25:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA11823 for dynarec-outgoing; Mon, 15 May 2000 01:25:50 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005150831.KAA03068@pons.ac.upc.es> Subject: Re: DYNAREC: Web site modification In-Reply-To: "from Neil Bradley at May 15, 2000 01:24:10 am" To: dynarec@dynarec.com Date: Mon, 15 May 2000 10:31:50 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Hehehehehe. ;-) Consistency is a nice thing. Make it say May 14th, > > > 2000. That's the way everyone speaks it and it reads much better. > > I still don't get the mm/dd/yy thing, though. It doesn't make any sense. > > dd/mm/yy, yes. yy/mm/dd, fine. But mm/dd/yy isn't in any sort of sensible > > order. Where'd it come from originally? > > It's the order spoken by everyone in every English speaking culture I've > found. Saying day/month/year is inconsistent with that. > > So if I say "What day is it?" > > The response, regardless of the English speaking country is: > > "It's June 5th." > > Not: > > "It's the 5th of June". > > Therefore, mm/dd/yy has consistency where dd/mm/yy doesn't. > > So *NYAH*! ;-) > A bit more about the date wars: In Spanish anything different from dd/mm/yy has no sense. It's the only one we use. This is another problem of those fucking englishmen using miles and feets but meters and kilometers ;) Just joking, don't think bad about me. :) > > > I don't use IE except when Netscape decides it wants to start stalling on > > > page loads. But under Netscape, clicking on the user names didn't get me > > > anywhere. ;-( > > They work fine for me. I must take this opportunity to comment on your > > incredible page, the reading of which has motivated me to hand in my notice, > > forsake a normal life, and dedicate myself entirely to the pursuit of binary > > translation. Shalom! > > Yes. We must sacrifice at least once piece of old code to the Dynarec god > of translation, otherwise we're cursed with emulation. ;-) > Very fun, very fun ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 01:28:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA11833 for dynarec-outgoing; Mon, 15 May 2000 01:28:48 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <003b01bfbe47$93ff49c0$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Web site modification Date: Mon, 15 May 2000 09:28:42 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Hehehehehe. ;-) Consistency is a nice thing. Make it say May 14th, > > > 2000. That's the way everyone speaks it and it reads much better. > > I still don't get the mm/dd/yy thing, though. It doesn't make any sense. > > dd/mm/yy, yes. yy/mm/dd, fine. But mm/dd/yy isn't in any sort of sensible > > order. Where'd it come from originally? > > It's the order spoken by everyone in every English speaking culture I've > found. Saying day/month/year is inconsistent with that. > > So if I say "What day is it?" > > The response, regardless of the English speaking country is: > > "It's June 5th." > > Not: > > "It's the 5th of June". Actually, before you gave that example, I'd have agreed with you. Now I look at it, though, I'm sure I've used the 'the 5th of June' order before... :) > Therefore, mm/dd/yy has consistency where dd/mm/yy doesn't. Yeah, but numbers is numbers. They don't follow the same rules as spoken English. An order of increasing/decreasing time periods just makes far more sense. > So *NYAH*! ;-) Oh, right. Well in that case, I suppose, I'll have to conceed the point... ;) > > > I don't use IE except when Netscape decides it wants to start stalling on > > > page loads. But under Netscape, clicking on the user names didn't get me > > > anywhere. ;-( > > They work fine for me. I must take this opportunity to comment on your > > incredible page, the reading of which has motivated me to hand in my notice, > > forsake a normal life, and dedicate myself entirely to the pursuit of binary > > translation. Shalom! > > Yes. We must sacrifice at least once piece of old code to the Dynarec god > of translation, otherwise we're cursed with emulation. ;-) And lo, the prophet has spoken. Henceforth all peoples will strain to maximise their nipple size, for so it is written in the Book of Bazookas. You could start a cult with a page like that. > -->Neil Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 01:29:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA11843 for dynarec-outgoing; Mon, 15 May 2000 01:29:16 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 15 May 2000 01:34:38 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Web site modification In-Reply-To: <200005150831.KAA03068@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > It's the order spoken by everyone in every English speaking culture I've > > found. Saying day/month/year is inconsistent with that. > > > > So if I say "What day is it?" > > > > The response, regardless of the English speaking country is: > > > > "It's June 5th." > > > > Not: > > > > "It's the 5th of June". > > > > Therefore, mm/dd/yy has consistency where dd/mm/yy doesn't. > > > > So *NYAH*! ;-) > > > A bit more about the date wars: > In Spanish anything different from dd/mm/yy has no sense. It's the only > one we use. This is another problem of those fucking englishmen using > miles and feets but meters and kilometers ;) Just joking, don't think > bad about me. :) Yeah, and those fucking Englishmen also drink warm beer, too. That's just sick! They're really stupid fuckers. ;-) Oh... wait a minute... I meant the French - the FRENCH! Yes, I didn't mean the English... no I didn't... ;-) But seriously, When someone asks you what the date is in Spanish, how is it spoken? -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 01:36:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA11862 for dynarec-outgoing; Mon, 15 May 2000 01:36:38 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 15 May 2000 01:42:01 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Tonight's funnies Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Even though it's horribly off topic, I feel like you guys are sorta my drinking buddies. ;-) My dad is a 76 year old guy who is now enjoying the fruits of the internet thanks to a few dialup lines on Synthcom (I'm his ISP). Periodically, I do a tcpdump to watch what packets are going where on the dialup lines to make sure I don't have any orphaned links. My dad was on, and it was fairly silent (lots of idle time) so I decided to do a tcpdump on him. I minimized the window and did something else. I came back to check on it, and names like "pussy.com", "hotoralsex.com", "fisting.com" and "assfucking.com" where scrolling by at horrid speeds on his link. I shook my head thinking that my dad had discovered internet porno, but the links were changing so quickly that something was up, so I killed the connection and called him. I informed him that I was watching him and asked him what was up with all the porn site access - just so I could tease him mercilously. His response: "Well, I got an email that said 'Click here for great girls!' and not knowing what it was, I did. Then my machine had so many instances of Netscape come up that my computer was thrashing on the hard drive and all of the instances of Netscape on the task bar became vertical slits and I couldn't shut it down! It just kept popping up more windows!" I actually believed him! It's a frightening thing to think my dad is in to fisting (or worse yet, gerbilling). ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 02:02:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA12045 for dynarec-outgoing; Mon, 15 May 2000 02:02:02 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005150908.LAA16916@pons.ac.upc.es> Subject: Re: DYNAREC: Web site modification In-Reply-To: "from Neil Bradley at May 15, 2000 01:34:38 am" To: dynarec@dynarec.com Date: Mon, 15 May 2000 11:08:08 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > A bit more about the date wars: > > In Spanish anything different from dd/mm/yy has no sense. It's the only > > one we use. This is another problem of those fucking englishmen using > > miles and feets but meters and kilometers ;) Just joking, don't think > > bad about me. :) > > Yeah, and those fucking Englishmen also drink warm beer, too. That's just > sick! They're really stupid fuckers. ;-) Oh... wait a minute... I meant > the French - the FRENCH! Yes, I didn't mean the English... no I > didn't... ;-) > > But seriously, When someone asks you what the date is in Spanish, how is > it spoken? > 15 de mayo del 2000, ever. In english 15th May 2000. And when we use numbers we use ever dd/mm/yy. All spanish versions of software (DOS, Windows) show the dates this way. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 02:09:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA12058 for dynarec-outgoing; Mon, 15 May 2000 02:09:55 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <004a01bfbe4d$522244c0$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Tonight's funnies Date: Mon, 15 May 2000 10:09:48 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Even though it's horribly off topic, I feel like you guys are sorta my > drinking buddies. ;-) Hey, if you're buying... ;) > My dad is a 76 year old guy who is now enjoying the fruits of the > internet thanks to a few dialup lines on Synthcom (I'm his ISP). I take it he lives locally? Incidentally, what sort of connections are the Synthcon and Dynarec servers hooked up to the outside world with? Cable? DSL? T1? > Periodically, I do a tcpdump to watch what packets are going where on the > dialup lines to make sure I don't have any orphaned links. My dad was on, > and it was fairly silent (lots of idle time) so I decided to do a tcpdump > on him. I minimized the window and did something else. I take it he's aware that his son is nothing but a dirty rotten spy? ;) You'll be vetting his email next... This sort of thing (although on a somewhat larger, non close family related, scale) really worries me, actually. Of course, this is coming from the bloke who's currently sending private emails over the office network during working hours. I'm feeling guilty now! > I came back to check on it, and names like "pussy.com", "hotoralsex.com", > "fisting.com" and "assfucking.com" where scrolling by at horrid speeds on > his link. I shook my head thinking that my dad had discovered internet > porno, but the links were changing so quickly that something was up, so I > killed the connection and called him. Thinking he'd 'discovered' internet porno? He's in his mid seventies, surely he's got a handle on the whole porn access thing by now? It took my dad a grand total of about three minutes on line to discover his first porn site, and he's only 52! :) > I informed him that I was watching him and asked him what was up with all > the porn site access - just so I could tease him mercilously. His > response: "Well, I got an email that said 'Click here for great girls!' > and not knowing what it was, I did. Then my machine had so many instances > of Netscape come up that my computer was thrashing on the hard drive and > all of the instances of Netscape on the task bar became vertical slits and > I couldn't shut it down! It just kept popping up more windows!" > > I actually believed him! It's a frightening thing to think my dad is in to > fisting (or worse yet, gerbilling). ;-) Aha! He's blatently going for the 'cute, older, gentleman who's totally naive about all this new fangled technology' approach! It *is* rather worrying, really, catching you parents doing this sort of stuff. I walked in on mine having sex when I was five, and, although I didn't even realise what they were doing at the time, it's scared me for life! When I was in my early teens I used to entertain myself of an evening by walking back and forward through the lounge when my dad was watching pervy late night TV shows, which led to him frantically trying to flick the channel over with our dodgy, semi-working remote control. We had another telly in an out of the way room, but he never seemed to suss that it would be easier to watch it on that... When you become a parent you're supposed to forego all pleasures of the flesh, aren't you? Got any plans that way yet, Neil? ;) Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 02:10:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA12071 for dynarec-outgoing; Mon, 15 May 2000 02:10:56 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <005001bfbe4d$761c7940$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: <200005150908.LAA16916@pons.ac.upc.es> Subject: Re: DYNAREC: Web site modification Date: Mon, 15 May 2000 10:10:48 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > A bit more about the date wars: > > > In Spanish anything different from dd/mm/yy has no sense. It's the only > > > one we use. This is another problem of those fucking englishmen using > > > miles and feets but meters and kilometers ;) Just joking, don't think > > > bad about me. :) > > > > Yeah, and those fucking Englishmen also drink warm beer, too. That's just > > sick! They're really stupid fuckers. ;-) Oh... wait a minute... I meant > > the French - the FRENCH! Yes, I didn't mean the English... no I > > didn't... ;-) > > > > But seriously, When someone asks you what the date is in Spanish, how is > > it spoken? > > > 15 de mayo del 2000, ever. In english 15th May 2000. And when we use > numbers we use ever dd/mm/yy. All spanish versions of software (DOS, > Windows) show the dates this way. > > Victor Moya Who does do it in mm/dd/yy? Is it just Americans? Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 02:12:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA12080 for dynarec-outgoing; Mon, 15 May 2000 02:12:25 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <005801bfbe4d$ac10bac0$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Web site modification Date: Mon, 15 May 2000 10:12:19 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yeah, and those fucking Englishmen also drink warm beer, too. That's just > sick! They're really stupid fuckers. ;-) Oh... wait a minute... I meant > the French - the FRENCH! Yes, I didn't mean the English... no I > didn't... ;-) Calling us 'fucking Englishman' or 'stupid fuckers' is no problem at all. Confusing us with the French, though? This means war! Andrew --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 02:14:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA12089 for dynarec-outgoing; Mon, 15 May 2000 02:14:10 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 15 May 2000 02:19:33 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Web site modification In-Reply-To: <005801bfbe4d$ac10bac0$88dc48c2@icc.co.im> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > sick! They're really stupid fuckers. ;-) Oh... wait a minute... I meant > > the French - the FRENCH! Yes, I didn't mean the English... no I > > didn't... ;-) > Calling us 'fucking Englishman' or 'stupid fuckers' is no problem at all. > Confusing us with the French, though? This means war! No, no, no... you've got it wrong. ;-) Someone said "Englishmen" and I just rolled with it, when later on my brain engaged and realized that all my anger was directed toward the FRENCH and not the English! I actually realized what I was saying - never to confuse the English and the French! --;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 02:15:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA12101 for dynarec-outgoing; Mon, 15 May 2000 02:15:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 15 May 2000 02:20:52 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Web site modification In-Reply-To: <005001bfbe4d$761c7940$88dc48c2@icc.co.im> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > 15 de mayo del 2000, ever. In english 15th May 2000. And when we use > > numbers we use ever dd/mm/yy. All spanish versions of software (DOS, > > Windows) show the dates this way. > > Victor Moya > Who does do it in mm/dd/yy? Is it just Americans? US/Canada/Mexico/Japan I know first hand. I don't know any country that speaks "The 15th of May" in English. "May 15th" is said instead, which corresponds to the date format. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 02:21:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA12113 for dynarec-outgoing; Mon, 15 May 2000 02:21:48 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <008c01bfbe4e$fb0b1fc0$88dc48c2@icc.co.im> From: "Andrew Davidson" To: References: Subject: Re: DYNAREC: Web site modification Date: Mon, 15 May 2000 10:21:36 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2014.211 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2014.211 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > sick! They're really stupid fuckers. ;-) Oh... wait a minute... I meant > > > the French - the FRENCH! Yes, I didn't mean the English... no I > > > didn't... ;-) > > Calling us 'fucking Englishman' or 'stupid fuckers' is no problem at all. > > Confusing us with the French, though? This means war! > > No, no, no... you've got it wrong. ;-) Someone said "Englishmen" and I > just rolled with it, when later on my brain engaged and realized that all > my anger was directed toward the FRENCH and not the English! I actually > realized what I was saying - never to confuse the English and the French! > > --;-) > > -->Neil Really? Oh dear, and we've already launched the ICBMs! Never mind, eh? Global fallout from the US counter strike, and the destruction of civilisation as we know it, should teach you not to do it again! And the really good thing is the way the wind's blowing France is going to end up with most of the six legged sheep! Muahaha! Andrew :) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 02:24:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA12123 for dynarec-outgoing; Mon, 15 May 2000 02:24:23 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 15 May 2000 02:29:46 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Web site modification In-Reply-To: <008c01bfbe4e$fb0b1fc0$88dc48c2@icc.co.im> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Really? Oh dear, and we've already launched the ICBMs! Never mind, eh? > Global fallout from the US counter strike, and the destruction of > civilisation as we know it, should teach you not to do it again! And the > really good thing is the way the wind's blowing France is going to end up > with most of the six legged sheep! Muahaha! Let's not go off on the sheep tangent. We might get the Aussies excited with those 6 legged sheep! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 02:29:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA12136 for dynarec-outgoing; Mon, 15 May 2000 02:29:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 15 May 2000 02:34:38 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Tonight's funnies In-Reply-To: <004a01bfbe4d$522244c0$88dc48c2@icc.co.im> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Even though it's horribly off topic, I feel like you guys are sorta my > > drinking buddies. ;-) > Hey, if you're buying... ;) Sure... I don't drink, but hey? Why not! > > My dad is a 76 year old guy who is now enjoying the fruits of the > > internet thanks to a few dialup lines on Synthcom (I'm his ISP). > I take it he lives locally? Incidentally, what sort of connections are the > Synthcon and Dynarec servers hooked up to the outside world with? Cable? > DSL? T1? He lives about 35 miles away from me (the boonies compared to suburbia where I live). Synthcom's link to the outside world is a 768K/128K DSL. I've got a block of 16 static IPs. His link is a dedicated dialup link using PPP - fixed IP address as well. > This sort of thing (although on a somewhat larger, non close family related, > scale) really worries me, actually. Of course, this is coming from the bloke > who's currently sending private emails over the office network during > working hours. I'm feeling guilty now! I don't really care if people see me peruse the spank channels.. uh.. wait... I didn't mean that. ;-) Well, since I'm the network admin for Synthcom (as well as the owner and all around god of the domain and the 12 machines that are connected to the network), I can watch others, but others can't watch me. ;-) Except my ISP, and I'm sure they've got much bigger things to worry about. > > his link. I shook my head thinking that my dad had discovered internet > > porno, but the links were changing so quickly that something was up, so I > > killed the connection and called him. > Thinking he'd 'discovered' internet porno? He's in his mid seventies, surely > he's got a handle on the whole porn access thing by now? It took my dad a > grand total of about three minutes on line to discover his first porn site, > and he's only 52! :) Nah. My dad is a bit older, which means that sort of thing was never in existence in the abundance that it is now. I actually believe him. He's not in to porno. > > I actually believed him! It's a frightening thing to think my dad is in to > > fisting (or worse yet, gerbilling). ;-) > Aha! He's blatently going for the 'cute, older, gentleman who's totally > naive about all this new fangled technology' approach! It *is* rather > worrying, really, catching you parents doing this sort of stuff. It was just my dad. This time. He sounded so distraught that it couldn't be anything other than genuine concern. > I walked in > on mine having sex when I was five, and, although I didn't even realise what > they were doing at the time, it's scared me for life! Nobody's parents ever had sex. Ever. Just remember that. > led to him frantically trying to flick the channel over with our dodgy, > semi-working remote control. We had another telly in an out of the way room, > but he never seemed to suss that it would be easier to watch it on that... Well, at least you weren't doing a warm apple pie. ;-) > When you become a parent you're supposed to forego all pleasures of the > flesh, aren't you? Got any plans that way yet, Neil? ;) As a matter of fact, the Mrs. went off the funny little round white pills a few weeks ago, so yes. In a couple of months now, we're going to be shooting for (no pun intended) a few kids. 3 Total. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 03:38:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA12230 for dynarec-outgoing; Mon, 15 May 2000 03:38:23 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Tonight's funnies From: "M.I.K.e" In-Reply-To: Message-ID: <000367a5dba7b7b1_mailit@mail.dynarec.com> References: Date: Mon, 15 May 2000 12:36:22 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Even though it's horribly off topic, I feel like you guys are sorta my >drinking buddies. ;-) Drinking over the internet is always a bit dry, don't you think so? But I guess if we all lived in the same country or even on the same continent we would have already stormed some pubs together ;-) >I informed him that I was watching him and asked him what was up with all >the porn site access - just so I could tease him mercilously. His >response: "Well, I got an email that said 'Click here for great girls!' You have to be very silent on the internet not to get such mails from time to time... >and not knowing what it was, I did. Then my machine had so many instances >of Netscape come up that my computer was thrashing on the hard drive and >all of the instances of Netscape on the task bar became vertical slits and >I couldn't shut it down! It just kept popping up more windows!" Damn JavaScript! I know why I like NetPositive ;-) >-->Neil -- M.I.K.e Real Users never use the Help key. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 03:38:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA12239 for dynarec-outgoing; Mon, 15 May 2000 03:38:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Web site modification From: "M.I.K.e" In-Reply-To: Message-ID: <000367a5cf2642a8_mailit@mail.dynarec.com> References: Date: Mon, 15 May 2000 12:32:52 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >But seriously, When someone asks you what the date is in Spanish, how is >it spoken? You haven't asked for German but I'll tell you anyway ;-) It's sopken "15ter Mai" and written "15.5.2000". >-->Neil -- M.I.K.e You're not my type. For that matter, you're not even my species!!! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 03:38:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA12246 for dynarec-outgoing; Mon, 15 May 2000 03:38:43 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Web site modification From: "M.I.K.e" In-Reply-To: Message-ID: <000367a5e87b8ddd_mailit@mail.dynarec.com> References: Date: Mon, 15 May 2000 12:39:57 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yes. We must sacrifice at least once piece of old code to the Dynarec god >of translation, otherwise we're cursed with emulation. ;-) But I bet that god won't accept any Microsoft code... >-->Neil -- M.I.K.e If God had intended Man to Smoke, He would have set him on Fire. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 04:04:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA12288 for dynarec-outgoing; Mon, 15 May 2000 04:04:01 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <391FCDE8.D8268FD9@eurocopter.de> Date: Mon, 15 May 2000 12:14:00 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Web site modification References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Who does do it in mm/dd/yy? Is it just Americans? > > US/Canada/Mexico/Japan I know first hand. I don't know any country that > speaks "The 15th of May" in English. "May 15th" is said instead, which > corresponds to the date format. We'd normally say "15th of May" in Britain. Actually, we wouldn't normally say that. Normally when someone asks you the date, you'd say "15th". If they say "15th of what though?" then you first wonder where they've been and then say "15th of May". You can still say "May 15th" but... we don't. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 05:58:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA12425 for dynarec-outgoing; Mon, 15 May 2000 05:58:56 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Web site modification From: "M.I.K.e" In-Reply-To: <391FCDE8.D8268FD9@eurocopter.de> Message-ID: <000367a7e9489c29_mailit@mail.dynarec.com> References: <391FCDE8.D8268FD9@eurocopter.de> Date: Mon, 15 May 2000 15:03:21 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >We'd normally say "15th of May" in Britain. That's what I learned at school. But I have to admit that "May 15th" would be a bit shorter than "15th of May" on a webpage. Well, as long as it is clear what is meant I can live with both formats. BTW, do we stick to three letter or full month names? >Neil. -- M.I.K.e Crash programs fail because they are based on the theory that, with nine women pregnant, you can get a baby a month. -- Wernher von Braun --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 11:09:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA12782 for dynarec-outgoing; Mon, 15 May 2000 11:09:26 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 15 May 2000 11:14:55 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Web site modification In-Reply-To: <000367a7e9489c29_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > BTW, do we stick to three letter or full month names? Go full month. It's not like we're trying to save space or anything. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 14:12:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA13001 for dynarec-outgoing; Mon, 15 May 2000 14:12:38 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 15 May 2000 14:18:09 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Crusoe In-Reply-To: <200005150807.KAA02465@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > And a precission: I was wrong, Spain IS a catholic country :p. > All weekend talking about that fucking third secret of Fatima ... What's that? > > I can't argue that it isn't stupid. If I had a choice between not touching > > a "working" system and causing recession or harming an economy, I'd have > > to take the former. > A person is the system? No, you misread this. I never said a person was the system. A working "system" meaning an economy and government that has low unemployment. > > If you run your business honestly and care about the customer, you can > > sleep at night with a clear conscience knowing that many people are happy > > with you and your products. > I think there are a lot of people doesn't need honesty to sleep at night, = > they use the TV. There are, but if someone does something wrong, they know it, and it eats at them in different ways. Most "money men" are really, really miserable people. Think about it - all you do your entire life and waking moments is think about money. > > That's stretching for an analogy - we're hardly talking about slave labor, > > here. The economy in the US works well for damn near everybody. Actually, > > those who don't want to work don't count. > How live the people without working? You mean the ones who don't want to work and WON'T work? Not well, unless they've got a nest egg or a sugar daddy. > > applets. We're not really using it forthings that are horribly > > constructive just yet, but as a new "thing" becomes available, it > > generally is abused and played with until its proper use comes. > As TV. I'm still waiting for a good TV, in fact in Spain is becoming > worst a worst every day. US TV Sucks major ass, too. There are a few bright spots, but to give you an idea, I typically watch old reruns of Star Trek: The Next Generation and the Simpsons. That's about it. > Agreed. Average people will ever do average work. You can't expect everyone > to be a kind life fighter. And "too hard" is a subjective expression. People > are different each other, what for one is easy for other could be really > hard. That's very true, but I've found that a LOT of people are just plain lazy or victims of their own lack ofmotivation or self confidence. > What it is needed is a system that helps everyone find a place where > they feel happy not a system where they have to fight agains everything to > be happy. I think you mean "compete to be happy". > > > You can say what you want but a replicator isn't a sollution. > > I didn't say it was a solution. I said that it'd be the invention that > > actually causes world change in this direction. IT's the start of a "new > > era", as it were. > Of course it's a new era. An area where every idiot will have the power > to destroy worlds. Education first, then the power. If you have first > the power you will have to learn about it and you can harm yourself or > everyone else. They kind of technology you call a replicator has a lot > of dark uses. And many, many bright ones. Wars between countries are over either commodities or religion. The replicator eliminates the need for commodities, and now all we've got to do is flush religion. > > There's a big difference between a material object's invention and a deity > > that no one can conclusively prove even exists. ;-) > Your replicator seems a little about the anti-entropic machine and that > is against all we still know about the nature laws. The amounts of > energy needed are very far from what we have now. It's against what we know *NOW*. I don't believe that we actually have bounds. > > For now it is. 30 Years ago, 25MHZ microprocessors were a fantasy. They've > > long since surpassed reality. > I'm reading Science Fiction since I was child, and I don't mean StarWars > books but serious SF. So I think I know a bit about future expeculations. No, you know about some writer's view of what's going to happen. It was said that the microchip wouldn't be invented. Manned flight would never occur. We'd never go to the moon. Etc... there are so many countless examples of this kind of limited short sightedness based on *TODAY'S* knowledge that those kinds of views should be squelched for the betterment of mankind's advancements. > I hope the best from the science in next years, from Computers, Genetics > and Enginery. But we can't work hoping that technology will be the > solution of all our problems. I never said this. Where did you get that idea? But technology is absolutely an eventual solution to our problems - maybe not directly, but it sure can become a cataylst for exactly that. Ending world hunger won't happen without some sort of technological revolution. > > I just don't understand dim views of the future. If everyone would stop > > believeing that we actually have limits to what we can do, we'd be so much > > farther along in society and technologically. > There are limits. We are far away of them but there are a lot of limits in > the universe. Universe itself is limited. Do you think eternal life, for > example, is a real chance? Could it exist? Sure! If we figure out why regenerative sequences of the body break down over the years. Why would you think that it's impossible? > Our universe, until we know something new, is > limited and will end. All things from stars to living beings will end > someday. What stops people to go farther is the fear for the unknown. Which kinda sounds like what you're advocating... > following their desires. Buda, Aristoteles, Platon and others good > phylosophers were against the fullfishness of all desires. For ages > there has been people with all their MATERIAL desires fulfilled, this > makes them better or more happy than a peasant. I don't think so. It depends upon the people. You can be materially rich but morally bankrupt. ;-) > And a thought: we don't need a replicator just a real VR (virtual reality) > technology. Everyone plugged in a fake world that fullfill their desires. > Or a drug that makes everyone happy without danger for health, these are > more easy than a replicator. Interested in that kind of wolrds?. Hell! > I'm still being pessimistic. Yes, you are, and those are plausible solutions that will eventually come - in time. The replicator is a far off example of what is to come, but it'll be here in a few hundred years. It'll be interesting to see someone digging through these archives then to see what kinds of stuff we were thinking about. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 23:21:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA13450 for dynarec-outgoing; Mon, 15 May 2000 23:20:14 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3920E8A3.E8783C63@eurocopter.de> Date: Tue, 16 May 2000 08:20:19 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Tonight's funnies References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Even though it's horribly off topic, I feel like you guys are sorta my > drinking buddies. ;-) I know what you mean. Scary, isn't it? Even though we're all in different countries with different native languages, it's very cool how we can all talk like this. I kinda feel the same. :) > Periodically, I do a tcpdump to watch what packets are going where on the > dialup lines to make sure I don't have any orphaned links. Bah, you just want to watch people browsing for porn (and nicking their passwords)! ;) > I actually believed him! It's a frightening thing to think my dad is in to > fisting (or worse yet, gerbilling). ;-) That's called "felching". Hang on, why do I know that? Why?! AARGH! Anyway, I'd also believe him. Although I was going to tease you mercilessly about it, I'm not sure what I could actually tease you about. But yes, I've seen this sort of thing happen before. Never on my machine because I run through a proxy program which removes code to open up new browser windows (it's basically for adverts). But (and especially at Uni!) I've seen it happen in various places. It's amusing. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 23:21:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA13456 for dynarec-outgoing; Mon, 15 May 2000 23:21:06 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3920E8EA.97EEFC30@eurocopter.de> Date: Tue, 16 May 2000 08:21:30 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Web site modification References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Calling us 'fucking Englishman' or 'stupid fuckers' is no problem at all. > > Confusing us with the French, though? This means war! > > No, no, no... you've got it wrong. ;-) Someone said "Englishmen" and I > just rolled with it, when later on my brain engaged and realized that all > my anger was directed toward the FRENCH and not the English! I actually > realized what I was saying - never to confuse the English and the French! Argh! Calling us French! Argh! Can you even *BE* more insulting? ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 23:27:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA13472 for dynarec-outgoing; Mon, 15 May 2000 23:27:16 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3920EA62.C05CE5E8@eurocopter.de> Date: Tue, 16 May 2000 08:27:46 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Tonight's funnies References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Hey, if you're buying... ;) > > Sure... I don't drink, but hey? Why not! So... who was it advocating the beer from micro-breweries? ;) > > I walked in > > on mine having sex when I was five, and, although I didn't even realise what > > they were doing at the time, it's scared me for life! > > Nobody's parents ever had sex. Ever. Just remember that. That's true. I was brought by the stork because my parents never had sex. Ever. > > led to him frantically trying to flick the channel over with our dodgy, > > semi-working remote control. We had another telly in an out of the way room, > > but he never seemed to suss that it would be easier to watch it on that... > > Well, at least you weren't doing a warm apple pie. ;-) Eugh! "There was this one time, at band camp, I put a flute up...". Er, if you've seen "American Pie" then you'll know what I was about to write next. If you haven't seen it, use your imagination. Or go watch it. :) > > When you become a parent you're supposed to forego all pleasures of the > > flesh, aren't you? Got any plans that way yet, Neil? ;) > > As a matter of fact, the Mrs. went off the funny little round white pills > a few weeks ago, so yes. In a couple of months now, we're going to be > shooting for (no pun intended) a few kids. 3 Total. ;-) Remember, you've got to have at least one boy. If you've got 3 children and they're all girls, you're hopelessly outnumbered and you stand no chance. Ever. In anything. Any part of decision making that you once had will disappear out the window... :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 23:29:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA13482 for dynarec-outgoing; Mon, 15 May 2000 23:29:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3920EAF5.A6CCBE3D@eurocopter.de> Date: Tue, 16 May 2000 08:30:13 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Web site modification References: <003b01bfbe47$93ff49c0$88dc48c2@icc.co.im> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Yes. We must sacrifice at least once piece of old code to the Dynarec god > > of translation, otherwise we're cursed with emulation. ;-) > > And lo, the prophet has spoken. Henceforth all peoples will strain to > maximise their nipple size, for so it is written in the Book of Bazookas. Can I pass on that one? :) > You could start a cult with a page like that. Although if people have to maximise their nipple size you may not get too many followers... :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 23:31:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA13496 for dynarec-outgoing; Mon, 15 May 2000 23:31:42 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 15 May 2000 23:37:19 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Tonight's funnies In-Reply-To: <3920E8A3.E8783C63@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Even though it's horribly off topic, I feel like you guys are sorta my > > drinking buddies. ;-) > I know what you mean. Scary, isn't it? Even though we're all in different > countries with different native languages, it's very cool how we can all > talk like this. I kinda feel the same. :) If you guys come to the states, you're definitely invited over for a party or two. I know a couple of classic arcades in the area that'd really hit the spot. > > Periodically, I do a tcpdump to watch what packets are going where on the > > dialup lines to make sure I don't have any orphaned links. > Bah, you just want to watch people browsing for porn (and nicking their > passwords)! ;) Yeah, I'm sick, aren't I? It's like reading about people masturbating to porn! ;-) > > I actually believed him! It's a frightening thing to think my dad is in to > > fisting (or worse yet, gerbilling). ;-) > That's called "felching". Hang on, why do I know that? Why?! AARGH! No, no, no... felching is when you suck... uh... wait... uh... yeah... uh... I don't know what felching is... no, I don't... what were we talking about? -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 23:32:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA13506 for dynarec-outgoing; Mon, 15 May 2000 23:32:38 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3920EBB1.5F373C26@eurocopter.de> Date: Tue, 16 May 2000 08:33:21 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Tonight's funnies References: <000367a5dba7b7b1_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Drinking over the internet is always a bit dry, don't you think so? > But I guess if we all lived in the same country or even on the same continent > we would have already stormed some pubs together ;-) That's true. :) > You have to be very silent on the internet not to get such mails from time to > time... That's also true. > Damn JavaScript! I know why I like NetPositive ;-) But you can turn it off in IE and Netscape. You don't even have that option with NetPositive. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 15 23:33:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA13515 for dynarec-outgoing; Mon, 15 May 2000 23:33:24 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 15 May 2000 23:39:01 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Tonight's funnies In-Reply-To: <3920EA62.C05CE5E8@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Hey, if you're buying... ;) > > Sure... I don't drink, but hey? Why not! > So... who was it advocating the beer from micro-breweries? ;) Me! ;-) But I *USED* to drink... Too much in fact. Bleugh. > > > but he never seemed to suss that it would be easier to watch it on that... > > Well, at least you weren't doing a warm apple pie. ;-) > Eugh! > "There was this one time, at band camp, I put a flute up...". Er, if you've > seen "American Pie" then you'll know what I was about to write next. If you > haven't seen it, use your imagination. Or go watch it. :) I've got the DVD of it. > > As a matter of fact, the Mrs. went off the funny little round white pills > > a few weeks ago, so yes. In a couple of months now, we're going to be > > shooting for (no pun intended) a few kids. 3 Total. ;-) > Remember, you've got to have at least one boy. If you've got 3 children and > they're all girls, you're hopelessly outnumbered and you stand no chance. Yes - estrogen overload. Lord forbid if their periods all come at the same time. ;-( > Ever. In anything. Any part of decision making that you once had will > disappear out the window... :o Yeah. I know. I just need to make sure we do it doggy style. That increases the chances of a boy, ya know! ;-) ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Tue May 16 00:09:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA13553 for dynarec-outgoing; Tue, 16 May 2000 00:09:14 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3920F467.D5B98CAE@eurocopter.de> Date: Tue, 16 May 2000 09:10:31 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Tonight's funnies References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > If you guys come to the states, you're definitely invited over for a party > or two. I know a couple of classic arcades in the area that'd really hit > the spot. Cool! Mind you, that's the sort of offer that you could come to regret making... ;) The same goes for you if you come over to the UK. The problem would be that I don't actually know of any classic arcades anywhere around me (they're all modern!) but I'm sure there's something... > > Bah, you just want to watch people browsing for porn (and nicking their > > passwords)! ;) > > Yeah, I'm sick, aren't I? It's like reading about people masturbating to > porn! ;-) Well... ooh, I think I'll stop thinking about that one. :) > > That's called "felching". Hang on, why do I know that? Why?! AARGH! > > No, no, no... felching is when you suck... uh... wait... uh... yeah... > uh... I don't know what felching is... no, I don't... what were we talking > about? No idea, I'm denying all knowledge of these e-mails. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Tue May 16 00:45:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA13591 for dynarec-outgoing; Tue, 16 May 2000 00:45:29 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3920FCB1.DAD35744@eurocopter.de> Date: Tue, 16 May 2000 09:45:53 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Tonight's funnies References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > So... who was it advocating the beer from micro-breweries? ;) > > Me! ;-) But I *USED* to drink... Too much in fact. Bleugh. Ah, okay. I'll let you off in that case. ;) > > "There was this one time, at band camp, I put a flute up...". Er, if you've > > seen "American Pie" then you'll know what I was about to write next. If you > > haven't seen it, use your imagination. Or go watch it. :) > > I've got the DVD of it. So have I. And I just bought "Dogma" the other day. Man, that's one of the funniest films I've seen in a while. If you're anti-religion you *have* to watch that film. > > Remember, you've got to have at least one boy. If you've got 3 children and > > they're all girls, you're hopelessly outnumbered and you stand no chance. > > Yes - estrogen overload. Lord forbid if their periods all come at the same > time. ;-( My god, that's when you hit the arcades - and stay there. For that week. :) > > Ever. In anything. Any part of decision making that you once had will > > disappear out the window... :o > > Yeah. I know. I just need to make sure we do it doggy style. That > increases the chances of a boy, ya know! ;-) ;-) That's just a bloody good excuse to do it that way. The other one I've heard is doing it either standing up or her on top also increases the chances of a boy. It's a complete lie, but it's fun trying. You'll have to get the Kama Sutra and go through the positions saying "This'll help for a boy" or "This'll help for a girl". It's a good excuse, no? ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Tue May 16 02:31:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA13841 for dynarec-outgoing; Tue, 16 May 2000 02:31:41 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Tonight's funnies From: "M.I.K.e" In-Reply-To: <3920EBB1.5F373C26@eurocopter.de> Message-ID: <000367b916543fd3_mailit@mail.dynarec.com> References: <000367a5dba7b7b1_mailit@mail.dynarec.com> <3920EBB1.5F373C26@eurocopter.de> Date: Tue, 16 May 2000 11:32:51 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >But you can turn it off in IE and Netscape. You don't even have that option >with NetPositive. ;) That's why you cannot forget to turn it off ;-) I have Opera just in case I need JavaShit... >Neil. -- M.I.K.e "Reality is that which, when you stop believing in it, doesn't go away". -- Philip K. Dick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Tue May 16 02:31:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA13850 for dynarec-outgoing; Tue, 16 May 2000 02:31:49 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Tonight's funnies From: "M.I.K.e" In-Reply-To: <3920F467.D5B98CAE@eurocopter.de> Message-ID: <000367b921bc8c47_mailit@mail.dynarec.com> References: <3920F467.D5B98CAE@eurocopter.de> Date: Tue, 16 May 2000 11:36:02 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >> If you guys come to the states, you're definitely invited over for a party >> or two. I know a couple of classic arcades in the area that'd really hit >> the spot. >Cool! Mind you, that's the sort of offer that you could come to regret >making... ;) Hehehe ;-) How about booking some seats on a plane to Portland, Oregon? ;-) >The same goes for you if you come over to the UK. And you also have a place to stop when you visit Germany. >The problem would be that >I don't actually know of any classic arcades anywhere around me (they're >all modern!) but I'm sure there's something... I have to admit that I'm not that into arcades, but there are some... >No idea, I'm denying all knowledge of these e-mails. :) What emails? ;-) >Neil. -- M.I.K.e Pedaeration, n.: The perfect body heat achieved by having one leg under the sheet and one hanging off the edge of the bed. -- Rich Hall, "Sniglets" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Tue May 16 06:13:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA14114 for dynarec-outgoing; Tue, 16 May 2000 06:13:37 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005161319.PAA29503@pons.ac.upc.es> Subject: Re: DYNAREC: Crusoe In-Reply-To: "from Neil Bradley at May 15, 2000 02:18:09 pm" To: dynarec@dynarec.com Date: Tue, 16 May 2000 15:19:37 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > And a precission: I was wrong, Spain IS a catholic country :p. > > All weekend talking about that fucking third secret of Fatima ... > > What's that? > Haven't hear anything? Lucky you are. It seems that the virgin Maria (Jesus mother) appeared to three children in Fatima (Portugal) some time ago, seventy or eighty years ago. She talked three secrets or prophecies to them. The first two where already complished and told to everyone (I don't know what they are and I don't care), but the third was still unknow (only know by the Pope and other church leaders). This weekend was the aniversary of that and the Pope revealed the last prophecy. It seems that talked about the attack -more than ten years ago- against the Pope. But as I really don't care I haven't pay attention to it. What happens is that as the government media are controlled now controlled by the conservature party they talk too much about the Pope and the Church. And all the weekend they have been talking about that prophecy. > There are, but if someone does something wrong, they know it, and it eats > at them in different ways. Most "money men" are really, really miserable > people. Think about it - all you do your entire life and waking moments is > think about money. > As I don't like them and I'm very different I can't understand how they think. > US TV Sucks major ass, too. There are a few bright spots, but to give you > an idea, I typically watch old reruns of Star Trek: The Next Generation > and the Simpsons. That's about it. > Neither I saw the TV usually. Mainly movies and, emmm ..., children cartoon series (how are they called in english, I mean in Spanish are something as "moving draws" or "moving pictures", but sure it isn't the english name) ... if they are japanese, I love japanese comics (Manga), it's a kind of addiction. I also watch SF series but now there isn't any. > > And many, many bright ones. Wars between countries are over either > commodities or religion. The replicator eliminates the need for > commodities, and now all we've got to do is flush religion. > Flush religion is still a problem, it won't be so easy. I mean, religion is like a bad cold, very hard to heal from it. ;) > > It's against what we know *NOW*. I don't believe that we actually have > bounds. > Wanna discuss about the infinite? And interesting term. Can humans really understand the concept of infinite? Meaning of course unlimited infinites, there are limited infinites, as a sphere: try to find an end walking on it. > > No, you know about some writer's view of what's going to happen. It was > said that the microchip wouldn't be invented. Manned flight would never > occur. We'd never go to the moon. Etc... there are so many countless > examples of this kind of limited short sightedness based on *TODAY'S* > knowledge that those kinds of views should be squelched for the betterment > of mankind's advancements. > You can't tell my beloved SF authors as being short sightedness!!! ;) Well, they are also limited but there are enough of them that makes interesting speculations. And some speculate about future, very different, kinds of societies. > > I never said this. Where did you get that idea? But technology is > absolutely an eventual solution to our problems - maybe not directly, but > it sure can become a cataylst for exactly that. Ending world hunger won't > happen without some sort of technological revolution. > Why not? There are other solutions for world hunger. The population could be limited (a good thing I think), or the food better shared, I mean, in Europe time by time food is thrown away because they are too excedents and the prices becomes too low. > Could it exist? Sure! If we figure out why regenerative sequences of the > body break down over the years. Why would you think that it's impossible? > Not in THAT universe, you will have to create a new one, change to another dimension/universe or create a machine that works against the entropy. Nothing in actual science helps us in that. Perhaps are other ways though. And I'm not sure that the human brain/intelligence can accept or understand REAL eternal life. What will you do ETERNALLY. This is a really interesting topic. > > It depends upon the people. You can be materially rich but morally > bankrupt. ;-) > And it happens usually. ;) > > Yes, you are, and those are plausible solutions that will eventually come > - in time. The replicator is a far off example of what is to come, but > it'll be here in a few hundred years. It'll be interesting to see someone > digging through these archives then to see what kinds of stuff we were > thinking about. ;-) > It's hard to dig on digital electric information. Will you keep all our mails hidden somewhere? ;) Computer data is easily copied but it's also easily erased or destroyed, just turn off your computer. Think about all those future guys reading our mails. What they will think about me! I should be more polite. ;)) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Tue May 16 06:55:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA14167 for dynarec-outgoing; Tue, 16 May 2000 06:55:19 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005161357.PAA28235@pons.ac.upc.es> Subject: Re: DYNAREC: Tonight's funnies In-Reply-To: <000367b921bc8c47_mailit@mail.dynarec.com> "from M.I.K.e at May 16, 2000 11:36:02 am" To: dynarec@dynarec.com Date: Tue, 16 May 2000 15:57:17 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > >The same goes for you if you come over to the UK. > > And you also have a place to stop when you visit Germany. > I don't recommend you to come Spain in Summer. It's too hot. ;) Hawai is a far better choice. > >The problem would be that > >I don't actually know of any classic arcades anywhere around me (they're > >all modern!) but I'm sure there's something... > > I have to admit that I'm not that into arcades, but there are some... > And you won't find many classic arcades here. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Tue May 16 07:05:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA14191 for dynarec-outgoing; Tue, 16 May 2000 07:05:07 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <39214976.DCA1304F@eurocopter.de> Date: Tue, 16 May 2000 15:13:26 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Tonight's funnies References: <3920F467.D5B98CAE@eurocopter.de> <000367b921bc8c47_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Hehehe ;-) > How about booking some seats on a plane to Portland, Oregon? ;-) I have no idea where that is. I suspect that's where NB lives, but that still doesn't change the fact that I don't know where it is. I'll be in the US next year, though it'll be to NY - my cousin has moved there and will be getting married next year. I'll also be heading over to California at some point to meet a few friends I've made over the years, I'm sure. :) > >The problem would be that > >I don't actually know of any classic arcades anywhere around me (they're > >all modern!) but I'm sure there's something... > > I have to admit that I'm not that into arcades, but there are some... You don't like arcade games?! Infidel! Infidel! ;) I take it that you like dynarec techniques to emulate computers more than arcade games? I don't mind, I like both. But there are some games I'd like to play again - dynarec makes it possible... :) > >No idea, I'm denying all knowledge of these e-mails. :) > > What emails? ;-) I don't know. Why do you ask? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Tue May 16 10:10:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA14391 for dynarec-outgoing; Tue, 16 May 2000 10:09:59 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Tonight's funnies From: "M.I.K.e" In-Reply-To: <39214976.DCA1304F@eurocopter.de> Message-ID: <000367bf7a1d02b4_mailit@mail.dynarec.com> References: <3920F467.D5B98CAE@eurocopter.de> <000367b921bc8c47_mailit@mail.dynarec.com> <39214976.DCA1304F@eurocopter.de> Date: Tue, 16 May 2000 19:10:15 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >I have no idea where that is. I suspect that's where NB lives, but that >still doesn't change the fact that I don't know where it is. Western coast of the US. >I'll be in the US next year, though it'll be to NY I think there is a Portland near NY. Just look at about the same hight on the other side of the US and you'll find Portland in Oregon. > - my cousin has moved there and will be getting married next year. Poor fool ;-) >I'll also be heading over to >California at some point to meet a few friends I've made over the years, >I'm sure. :) Well, Neil lives a tiny little bit more Northern... >You don't like arcade games?! I didn't say that! I lost much money when playing Final Fight and T2 Judgment Day! >Infidel! Infidel! ;) In-what? >I take it that you like dynarec techniques to emulate computers more than >arcade games? Guessed right. Maybe consoles too... >I don't know. Why do you ask? ;) Which question? >Neil. -- M.I.K.e If you make people think they're thinking, they'll love you; but if you really make them think they'll hate you. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Tue May 16 15:02:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA14723 for dynarec-outgoing; Tue, 16 May 2000 15:02:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <002f01bfbf8b$05c63b60$0100a8c0@lion> From: "Neil Griffiths" To: References: <200005161319.PAA29503@pons.ac.upc.es> Subject: Re: DYNAREC: Crusoe Date: Wed, 17 May 2000 00:03:45 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Neither I saw the TV usually. Mainly movies and, emmm ..., children > cartoon series (how are they called in english, I mean in Spanish are > something as "moving draws" or "moving pictures", but sure it isn't the > english name) ... if they are japanese, I love japanese comics (Manga), it's > a kind of addiction. I also watch SF series but now there isn't any. You probably mean "animations". The term for manga style cartoons is "Anime" but then a fan of that style will say that Anime is British only. So, you probably want to use "animation". :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Tue May 16 23:57:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA15182 for dynarec-outgoing; Tue, 16 May 2000 23:57:17 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <016f01bfbfcd$6bb3a740$a33b5393@a5s111pc16.fib.upc.es> From: "Victor Moya del Barrio" To: Subject: RE: DYNAREC: Crusoe Date: Wed, 17 May 2000 08:59:16 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3612.1700 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3612.1700 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Hi, > > >> Neither I saw the TV usually. Mainly movies and, emmm ..., children >> cartoon series (how are they called in english, I mean in Spanish are >> something as "moving draws" or "moving pictures", but sure it isn't the >> english name) ... if they are japanese, I love japanese comics (Manga), >it's >> a kind of addiction. I also watch SF series but now there isn't any. > >You probably mean "animations". The term for manga style cartoons is "Anime" >but then a fan of that style will say that Anime is British only. So, you >probably want to use "animation". :) > Later I realised that the name was animations. It is just my memory. I was sure I should know the word, but I couldn't remember it. Bad, bad memory. :( And Anime is the name used all around for manga cartoons, I don´t know the japanese name but I think they use also anime. Japanase use a lot of english terms, for example bed. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 18 03:26:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA17058 for dynarec-outgoing; Thu, 18 May 2000 03:25:43 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3923C27B.9E637A54@eurocopter.de> Date: Thu, 18 May 2000 12:14:19 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: Okay, idea time. :) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Okay, we've got a website now. We've got an index page which is looking pretty good right now (hehe, I'm sooooo modest!). What else should we add to the site before we announce it? Some content would be nice, I'm sure, but what features do we want to include before it is announced? Also, is there anything else we can think of for the site? Anything? Come on, we're all meant to be of genius status (or do I mean mad?) to be interested in dynamic recompilation. ;) Send your answers on a postcard to... ooh, sorry, wrong letter. Reply to the list. Via e-mail. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 18 05:10:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA17187 for dynarec-outgoing; Thu, 18 May 2000 05:10:25 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005181208.OAA17225@pons.ac.upc.es> Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <3923C27B.9E637A54@eurocopter.de> "from Neil Griffiths at May 18, 2000 12:14:19 pm" To: dynarec@dynarec.com Date: Thu, 18 May 2000 14:08:46 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > Okay, we've got a website now. We've got an index page which is looking > pretty good right now (hehe, I'm sooooo modest!). What else should we add > to the site before we announce it? Some content would be nice, I'm sure, > but what features do we want to include before it is announced? > Content ;) It's annoising to see each link points to nowhere. But I'm not good about web design. > Also, is there anything else we can think of for the site? Anything? Come > on, we're all meant to be of genius status (or do I mean mad?) to be > interested in dynamic recompilation. ;) > A page against Crusoe, a dynarec tutorial (don't expect anything from me until SI end though ;), ... > Send your answers on a postcard to... ooh, sorry, wrong letter. Reply to > the list. Via e-mail. :) > We can also use smoke signals ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 18 05:23:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA17207 for dynarec-outgoing; Thu, 18 May 2000 05:23:16 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3923E0B1.62669073@eurocopter.de> Date: Thu, 18 May 2000 14:23:13 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) References: <200005181208.OAA17225@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Okay, we've got a website now. We've got an index page which is looking > > pretty good right now (hehe, I'm sooooo modest!). What else should we add > > to the site before we announce it? Some content would be nice, I'm sure, > > but what features do we want to include before it is announced? > > Content ;) It's annoising to see each link points to nowhere. But I'm > not good about web design. Hey, I designed it. I'm not doing all the content by myself as well! ;) > > Also, is there anything else we can think of for the site? Anything? Come > > on, we're all meant to be of genius status (or do I mean mad?) to be > > interested in dynamic recompilation. ;) > > A page against Crusoe, a dynarec tutorial (don't expect anything from me > until SI end though ;), ... Ah. A new link to add. "Crusoe hateage (although if you give me one for free - especially one with a Savage /MX - then I won't complain!)". :)) > > Send your answers on a postcard to... ooh, sorry, wrong letter. Reply to > > the list. Via e-mail. :) > > > We can also use smoke signals ;) Ah, but I'm in the middle of one of these 24hr thunder/rain storms at the moment. So I wouldn't see the signals. Sorry! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 18 05:32:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA17230 for dynarec-outgoing; Thu, 18 May 2000 05:32:32 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005181238.OAA29098@pons.ac.upc.es> Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <3923E0B1.62669073@eurocopter.de> "from Neil Griffiths at May 18, 2000 02:23:13 pm" To: dynarec@dynarec.com Date: Thu, 18 May 2000 14:38:54 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > Content ;) It's annoising to see each link points to nowhere. But I'm > > not good about web design. > > Hey, I designed it. I'm not doing all the content by myself as well! ;) > Why not? You are not getting enough pay ;) > > A page against Crusoe, a dynarec tutorial (don't expect anything from me > > until SI end though ;), ... > > Ah. A new link to add. "Crusoe hateage (although if you give me one for > free - especially one with a Savage /MX - then I won't complain!)". :)) > Of course it will be for testing purposes only ;) What about also a full documentation about the Code Morpher. ;) > > We can also use smoke signals ;) > > Ah, but I'm in the middle of one of these 24hr thunder/rain storms at the > moment. So I wouldn't see the signals. Sorry! :o > Lucky you are! I actually like rain. Here we start with a really hot wet day and now seems is getting cold. What a crazy wheather. Anyway, we can use light morse signals. ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 18 05:49:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA17255 for dynarec-outgoing; Thu, 18 May 2000 05:49:46 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3923E6C9.1C185011@eurocopter.de> Date: Thu, 18 May 2000 14:49:13 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) References: <200005181238.OAA29098@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Hey, I designed it. I'm not doing all the content by myself as well! ;) > > > Why not? You are not getting enough pay ;) I'll never get enough pay until I leave Uni... :) > > Ah. A new link to add. "Crusoe hateage (although if you give me one for > > free - especially one with a Savage /MX - then I won't complain!)". :)) > > > Of course it will be for testing purposes only ;) Of course! I wouldn't be playing 3D games on it no matter where I am. And if the power usage is really as low as they make out, it could be interesting. The most interesting thing about it, though, is the speed. With no benchmarks out, all we have is PR stunts. Like "Look, we have Linus Torvalds on board!" - that totally impressed me. Lots. I was very impressed by that. I don't care about how good the CPU is - Linus Torvalds is involved! :)) > What about also a full documentation about the Code Morpher. ;) Reverse engineering? Me? Never! ;) > > Ah, but I'm in the middle of one of these 24hr thunder/rain storms at the > > moment. So I wouldn't see the signals. Sorry! :o > > > Lucky you are! I actually like rain. Here we start with a really hot wet day > and now seems is getting cold. What a crazy wheather. It's actually quite cool here - about 15 degrees centigrade. Considering it's been ~30 or so for the past two weeks it's quite nice. :) > Anyway, we can use light morse signals. ;) If we can find a piece of land flat enough - and a powerful enough telescope... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 18 06:02:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA17282 for dynarec-outgoing; Thu, 18 May 2000 06:02:15 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005181308.PAA04378@pons.ac.upc.es> Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <3923E6C9.1C185011@eurocopter.de> "from Neil Griffiths at May 18, 2000 02:49:13 pm" To: dynarec@dynarec.com Date: Thu, 18 May 2000 15:08:47 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Ah. A new link to add. "Crusoe hateage (although if you give me one for > > > free - especially one with a Savage /MX - then I won't complain!)". :)) > > > > > Of course it will be for testing purposes only ;) > > Of course! I wouldn't be playing 3D games on it no matter where I am. And > if the power usage is really as low as they make out, it could be > interesting. > I can't see anyone who want the Crusoe for playing, I mean, who will be want to play everywhere Final Fantasy VIII or Quake for example, you have your Gameboy for that. ;) > The most interesting thing about it, though, is the speed. With no > benchmarks out, all we have is PR stunts. Like "Look, we have Linus > Torvalds on board!" - that totally impressed me. Lots. I was very impressed > by that. I don't care about how good the CPU is - Linus Torvalds is > involved! :)) > Well they wrote a full document about "a new methodology for benchmarking code morpher software", and they also have a document about the benchmark they have made with some applications (mainly video and sound decompression). I haven't read it though. It smells like bad marketing publicy. Linus Torvaldis? Who is that man? I never heared about it, did you? ;) > > What about also a full documentation about the Code Morpher. ;) > > Reverse engineering? Me? Never! ;) > Perhaps you prefer to use your new ninja skills ;) > > Anyway, we can use light morse signals. ;) > > If we can find a piece of land flat enough - and a powerful enough > telescope... ;) > We can use mirror satellites and laser beams. ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 18 15:29:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA17908 for dynarec-outgoing; Thu, 18 May 2000 15:28:33 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <3923C27B.9E637A54@eurocopter.de> Message-ID: <000367ec24562c2a_mailit@mail.dynarec.com> References: <3923C27B.9E637A54@eurocopter.de> Date: Fri, 19 May 2000 00:27:29 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Okay, we've got a website now. We've got an index page which is looking >pretty good right now (hehe, I'm sooooo modest!). I didn't expect anything less ;-) >What else should we add to the site before we announce it? Much much more, but I'm afraid we're all too busy to gather so much content in such a short time. >Some content would be nice, I'm sure, >but what features do we want to include before it is announced? More basic info. I guess it would be nice if the DRFAQ was finished, but that'll take some time... >Also, is there anything else we can think of for the site? Anything? Come >on, we're all meant to be of genius status (or do I mean mad?) to be >interested in dynamic recompilation. ;) I guess both is equally true, but it seems that currently I'm the mad-only state... >Send your answers on a postcard to... ooh, sorry, wrong letter. Reply to >the list. Via e-mail. :) Haven't you heard of pigeons in England? >Neil. -- M.I.K.e "This is lemma 1.1. We start a new chapter so the numbers all go back to one." -- Prof. Seager, C&O 351 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 18 15:29:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA17913 for dynarec-outgoing; Thu, 18 May 2000 15:28:52 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <200005181308.PAA04378@pons.ac.upc.es> Message-ID: <000367ec2e355b8b_mailit@mail.dynarec.com> References: <200005181308.PAA04378@pons.ac.upc.es> Date: Fri, 19 May 2000 00:30:15 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Perhaps you prefer to use your new ninja skills ;) I guess you mix up jiu-jitsu and ninjitsu ;-) >We can use mirror satellites and laser beams. ;) I thought SDI was cancelled ;-) >Victor Moya -- M.I.K.e Pohl's law: Nothing is so good that somebody, somewhere, will not hate it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 18 15:30:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA17918 for dynarec-outgoing; Thu, 18 May 2000 15:29:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <3923E6C9.1C185011@eurocopter.de> Message-ID: <000367ec38fe89e4_mailit@mail.dynarec.com> References: <200005181238.OAA29098@pons.ac.upc.es> <3923E6C9.1C185011@eurocopter.de> Date: Fri, 19 May 2000 00:33:16 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >The most interesting thing about it, though, is the speed. With no >benchmarks out, all we have is PR stunts. Like "Look, we have Linus >Torvalds on board!" - that totally impressed me. Lots. I was very impressed >by that. I don't care about how good the CPU is - Linus Torvalds is >involved! :)) No comment on that, but take a look at the following page ;-) http://bedope.com/stories/0082.html >Neil. -- M.I.K.e WARNING TO ALL PERSONNEL: Firings will continue until morale improves. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 18 23:41:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA18289 for dynarec-outgoing; Thu, 18 May 2000 23:41:24 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3924E16A.220778F3@eurocopter.de> Date: Fri, 19 May 2000 08:38:34 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) References: <3923C27B.9E637A54@eurocopter.de> <000367ec24562c2a_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Okay, we've got a website now. We've got an index page which is looking > >pretty good right now (hehe, I'm sooooo modest!). > > I didn't expect anything less ;-) Good. I am British after all. We're all modest there. Aren't we, Andy? [I really must finish replying to the e-mail Andy sent me about 3 or 4 weeks ago!] > >What else should we add to the site before we announce it? > > Much much more, but I'm afraid we're all too busy to gather so much content > in such a short time. Yep, this is what I thought. I've been asked to do some things on the other site too and so I think this weekend will be busy. Still, I'm getting some Spanish guys to cook something authentically Spanish for me on Sunday so it won't be all bad. Of course, there's another side to that deal - they want two computers fixing. :) That's something Victor, I don't think I've mentioned that I'm friends with a Spanish guy here. I was going to get him to write an e-mail in Spanish to you and say "Look! I can speak Spanish!" but I realised that it would backfire as soon as you replied - so I didn't. :)) > >Some content would be nice, I'm sure, > >but what features do we want to include before it is announced? > > More basic info. I guess it would be nice if the DRFAQ was finished, but > that'll take some time... Of course. But any FAQ will always be WIP when it covers a subject such as this. Whenever you think it's reasonable would be a good time to do it... > >Also, is there anything else we can think of for the site? Anything? Come > >on, we're all meant to be of genius status (or do I mean mad?) to be > >interested in dynamic recompilation. ;) > > I guess both is equally true, but it seems that currently I'm the mad-only > state... I'm completely mad - and that's what's scary. Amusing story (well, it is to me): Before I came over here, I had a friend who wanted to take an IQ test. So he got in touch with MENSA (an international clever clogs type organisation) and got them to send two IQ test forms - one for him and one for me. We sent them off about the week before Christmas and we both got replies the week that I was leaving to come out here. His score? 117. My score? 144 (trust me to get a squared number!). In the UK, any score between 100 and 115 is average intelligence. Anything over 120 is classed as "genius". So... I'm a genius am I? Bah, what a load of crap. :) Still, it's something to claim over Americans. The average IQ over there is between 90 and 100. But that's okay, Neil - your parents are from Britain, so you've got the British intelligence. ;) No, I reckon IQ ratings are a waste of time. All they show is that you CAN solve certain puzzles. But you could have the most intelligent human alive take the test - but if he didn't know how to solve alegbraic problems (for example) then he could still get a low score. So, it's not something I feel proud and smug about. It's something I laugh about everytime I do something stupid. Genius. Haha! :)) > >Send your answers on a postcard to... ooh, sorry, wrong letter. Reply to > >the list. Via e-mail. :) > > Haven't you heard of pigeons in England? Yes, but we eat them. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Thu May 18 23:59:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA18308 for dynarec-outgoing; Thu, 18 May 2000 23:59:04 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <002801bfc15f$e9a63120$a33b5393@a5s111pc16.fib.upc.es> From: "Victor Moya del Barrio" To: Subject: RE: DYNAREC: Okay, idea time. :) Date: Fri, 19 May 2000 09:00:26 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3612.1700 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3612.1700 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >> >What else should we add to the site before we announce it? >> >> Much much more, but I'm afraid we're all too busy to gather so much content >> in such a short time. > >Yep, this is what I thought. I've been asked to do some things on the other >site too and so I think this weekend will be busy. Still, I'm getting some >Spanish guys to cook something authentically Spanish for me on Sunday so it >won't be all bad. Of course, there's another side to that deal - they want >two computers fixing. :) > Spanish omelette? Paella? ;) >That's something Victor, I don't think I've mentioned that I'm friends with >a Spanish guy here. I was going to get him to write an e-mail in Spanish to >you and say "Look! I can speak Spanish!" but I realised that it would >backfire as soon as you replied - so I didn't. :)) > You are always trying to tease. ;) >> >Also, is there anything else we can think of for the site? Anything? Come >> >on, we're all meant to be of genius status (or do I mean mad?) to be >> >interested in dynamic recompilation. ;) >> >> I guess both is equally true, but it seems that currently I'm the mad-only >> state... > >I'm completely mad - and that's what's scary. Amusing story (well, it is to >me): > Spend time trying to emulate old machines is really a mad idea. ;) More if you think we work for free. >Before I came over here, I had a friend who wanted to take an IQ test. So >he got in touch with MENSA (an international clever clogs type >organisation) and got them to send two IQ test forms - one for him and one >for me. We sent them off about the week before Christmas and we both got >replies the week that I was leaving to come out here. His score? 117. My >score? 144 (trust me to get a squared number!). In the UK, any score >between 100 and 115 is average intelligence. Anything over 120 is classed >as "genius". > Well, I never made such a test, but I made when I was a child one in a scientist magazine. I get around 140 or so. But I really don´t care. ;) >So... I'm a genius am I? Bah, what a load of crap. :) > I am. I am. ;) Or perhaps not. :( In any case it was a bit frustating to get ever the better notes at school times, I mean, it was boring. >No, I reckon IQ ratings are a waste of time. All they show is that you CAN >solve certain puzzles. But you could have the most intelligent human alive >take the test - but if he didn't know how to solve alegbraic problems (for >example) then he could still get a low score. > Indeed. Now the expert seems to work with something they call emotional intelligence. In fact there are multiple forms of intelligence, each it should be mesured separated. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 00:40:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA18358 for dynarec-outgoing; Fri, 19 May 2000 00:40:42 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3924EFA5.CE29E32C@eurocopter.de> Date: Fri, 19 May 2000 09:39:17 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) References: <002801bfc15f$e9a63120$a33b5393@a5s111pc16.fib.upc.es> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Yep, this is what I thought. I've been asked to do some things on the other > >site too and so I think this weekend will be busy. Still, I'm getting some > >Spanish guys to cook something authentically Spanish for me on Sunday so it > >won't be all bad. Of course, there's another side to that deal - they want > >two computers fixing. :) > > > Spanish omelette? Paella? ;) I'm not sure - but it almost certainly involves fish. Paella was mentioned so probably that... > You are always trying to tease. ;) Yes, that's true. ;) > >I'm completely mad - and that's what's scary. Amusing story (well, it is to > >me): > > > Spend time trying to emulate old machines is really a mad idea. ;) More if > you think we work for free. Yep, true. But I've never tried to pretend that I'm not mad - that's something. :) > Well, I never made such a test, but I made when I was a child one in a > scientist > magazine. I get around 140 or so. But I really don´t care. ;) Neither do I. And it's not really something to shout about either. But it is something to laugh about. :) "You are in the top 2% of the world with an IQ between 140 and 170". And what? :) > In any case it was a bit frustating to get ever the better notes at school > times, I mean, it was boring. To be fair I could have done a lot better at school. I always did well - I only did really well in the things I liked (Maths, Science, English and - of course - IT). I was lazy (I still am!) and would only do the minimum. Having said that, all of my results are good. It's just that they could have been better if I'd have tried harder... > Indeed. Now the expert seems to work with something they call > emotional intelligence. In fact there are multiple forms of intelligence, > each it should be mesured separated. I disagree - you shouldn't measure it at all. You should measure a human on what they've done and their potential - not how well they can solve a problem. Well, okay, maybe in special cases would it be useful... No, I don't like it. Not for a job. Nope... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 00:50:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA18376 for dynarec-outgoing; Fri, 19 May 2000 00:50:11 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 19 May 2000 00:56:37 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <3924E16A.220778F3@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >Okay, we've got a website now. We've got an index page which is looking > > >pretty good right now (hehe, I'm sooooo modest!). > > I didn't expect anything less ;-) > Good. I am British after all. We're all modest there. Aren't we, Andy? Nah. You just think you're better than everyone. ;-) Oh wait, that's the French... ;-) > > in such a short time. > Yep, this is what I thought. I've been asked to do some things on the other > site too and so I think this weekend will be busy. Still, I'm getting some > Spanish guys to cook something authentically Spanish for me on Sunday so it > won't be all bad. Of course, there's another side to that deal - they want > two computers fixing. :) I'm in the process of: * Rewiring my studio (and it's really hard work that takes days) * Repairing two pinball machine boards for a friend who owns an arcade * Trying to figure out what I'm going to do with my brand new playfield for my Black Knight 2000 pinball machine now that I fucked it up trying to remove the mylar So I'm quite busy right now. ;-( > Before I came over here, I had a friend who wanted to take an IQ test. So > he got in touch with MENSA (an international clever clogs type MENSA=My Ego Needs Some Attention > Still, it's something to claim over Americans. The average IQ over there is > between 90 and 100. Uh... that's not quite right. It's 105-115. Though admittedly, dipshits tend to congregate together - meaning the southeastern US - especially in the redneck woods. They're dumb as toaster strudel. Just listening to their "accents" sucks my IQ down like a black hole. You'll find a disproportionate set of very smart people on the west coast. > But that's okay, Neil - your parents are from Britain, > so you've got the British intelligence. ;) Yeah, but I'm not stupid enough to drink warm beer. ;-) > No, I reckon IQ ratings are a waste of time. All they show is that you CAN > solve certain puzzles. But you could have the most intelligent human alive > take the test - but if he didn't know how to solve alegbraic problems (for > example) then he could still get a low score. It's a way to figure one's intelligence in the ball park. Knowledge without intelligence is useless unless you're taking tests. I've got a friend who has a little intelligence and a lot of book knowledge, but doesn't know how to apply it. I'm just the opposite. I did shitty in school and never read books (too boring), but I can figure anything out. > So, it's not something I feel proud and smug about. It's something I laugh > about everytime I do something stupid. Genius. Haha! :)) Nod. FWIW, Got 150 when I took it in college. Doesn't mean much. > > Haven't you heard of pigeons in England? > Yes, but we eat them. ;) I think your average IQ is lower than you claim it. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 00:58:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA18389 for dynarec-outgoing; Fri, 19 May 2000 00:58:19 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005190804.KAA18106@pons.ac.upc.es> Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <3924EFA5.CE29E32C@eurocopter.de> "from Neil Griffiths at May 19, 2000 09:39:17 am" To: dynarec@dynarec.com Date: Fri, 19 May 2000 10:04:51 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Spanish omelette? Paella? ;) > > I'm not sure - but it almost certainly involves fish. Paella was mentioned > so probably that... > You have to taste the Spanish (or potatoes) omelette. > > In any case it was a bit frustating to get ever the better notes at school > > times, I mean, it was boring. > > To be fair I could have done a lot better at school. I always did well - I > only did really well in the things I liked (Maths, Science, English and - > of course - IT). I was lazy (I still am!) and would only do the minimum. > Having said that, all of my results are good. It's just that they could > have been better if I'd have tried harder... > It's better I don't tell you how I prepared my university access exam. ;) Well, for sure I didn't studied enough because I was playing to Might and Magic IV and V. But it was because I didn't need so much note for study Computer Science. I got worse notes than usual but I also get a lot of fun. :)) > > Indeed. Now the expert seems to work with something they call > > emotional intelligence. In fact there are multiple forms of intelligence, > > each it should be mesured separated. > > I disagree - you shouldn't measure it at all. You should measure a human on > what they've done and their potential - not how well they can solve a > problem. Well, okay, maybe in special cases would it be useful... No, I > don't like it. Not for a job. Nope... > I just wanted to say the actual opinion of the "experts". I don't want to say that the intelligence must be mesured (well, perhaps for politics, but we don't need to mesure their intelligence ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 00:59:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA18400 for dynarec-outgoing; Fri, 19 May 2000 00:59:42 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <3924E16A.220778F3@eurocopter.de> Message-ID: <000367f430d20c22_mailit@mail.dynarec.com> References: <3923C27B.9E637A54@eurocopter.de> <000367ec24562c2a_mailit@mail.dynarec.com> <3924E16A.220778F3@eurocopter.de> Date: Fri, 19 May 2000 10:03:38 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Good. I am British after all. We're all modest there. Aren't we, Andy? Isn't that typical for all the British? >Yep, this is what I thought. I've been asked to do some things on the other >site too and so I think this weekend will be busy. Still, I'm getting some >Spanish guys to cook something authentically Spanish for me on Sunday so it >won't be all bad. Of course, there's another side to that deal - they want >two computers fixing. :) Yeah, that's the typical trade-off when you're into computers... >That's something Victor, I don't think I've mentioned that I'm friends with >a Spanish guy here. I was going to get him to write an e-mail in Spanish to >you and say "Look! I can speak Spanish!" but I realised that it would >backfire as soon as you replied - so I didn't. :)) He, you could have replied: "Although I can speak Spanish I have no ability to understand it!" ;-) >Of course. But any FAQ will always be WIP when it covers a subject such as >this. Whenever you think it's reasonable would be a good time to do it... Sure it will be ever evolving, but currently it's still a bit empty. >I'm completely mad - and that's what's scary. I'm too, I just hesitate to admit it ;-) >So... I'm a genius am I? Bah, what a load of crap. :) Must have been a madman who told you that! ;-) >No, I reckon IQ ratings are a waste of time. All they show is that you CAN >solve certain puzzles. But you could have the most intelligent human alive >take the test - but if he didn't know how to solve alegbraic problems (for >example) then he could still get a low score. Indeed, that's what I always tell. Those tests cover only specific problems and therefore cannot reflect "intelligence" but the ability to solve such problems. Also if you can train these problems then it has nothing to do with intelligence as well. >> Haven't you heard of pigeons in England? >Yes, but we eat them. ;) Hey, you've just eaten my messenger! >Neil. -- M.I.K.e Individualists unite! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 01:13:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA18428 for dynarec-outgoing; Fri, 19 May 2000 01:13:49 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3924F782.AFEB5F1D@eurocopter.de> Date: Fri, 19 May 2000 10:12:50 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Good. I am British after all. We're all modest there. Aren't we, Andy? > > Nah. You just think you're better than everyone. ;-) Oh wait, that's the > French... ;-) That's true. But there's one thing. All the Europeans *know* they're better than the US. ;) > > Yep, this is what I thought. I've been asked to do some things on the other > > site too and so I think this weekend will be busy. Still, I'm getting some > > Spanish guys to cook something authentically Spanish for me on Sunday so it > > won't be all bad. Of course, there's another side to that deal - they want > > two computers fixing. :) > > I'm in the process of: > > * Rewiring my studio (and it's really hard work that takes days) Agreed. Rewiring meaning the electricity or all of the cable for speakers etc? > * Trying to figure out what I'm going to do with my brand new playfield > for my Black Knight 2000 pinball machine now that I fucked it up trying > to remove the mylar Damn! :o I quite like pinball - I'm quite glad it's popular over here. More so than in the UK for sure. I've had a few games. Mind you, things like 10 pin bowling and Pool are *really* expensive over here unless you have a large amount of people... > So I'm quite busy right now. ;-( I can imagine... :o > > Before I came over here, I had a friend who wanted to take an IQ test. So > > he got in touch with MENSA (an international clever clogs type > > MENSA=My Ego Needs Some Attention I agree. I was asked to join but I can't see it being anything other than useless. > > Still, it's something to claim over Americans. The average IQ over there is > > between 90 and 100. > > Uh... that's not quite right. It's 105-115. Though admittedly, dipshits > tend to congregate together - meaning the southeastern US - especially in > the redneck woods. They're dumb as toaster strudel. Just listening to > their "accents" sucks my IQ down like a black hole. Hmm, didn't read that. It's not so important. In fact... it's not important - at all. And I know what you mean about the accents. I think the same. :) > You'll find a disproportionate set of very smart people on the west coast. California way and that sort of area? > > But that's okay, Neil - your parents are from Britain, > > so you've got the British intelligence. ;) > > Yeah, but I'm not stupid enough to drink warm beer. ;-) Neither are we! I'm not sure where you got that idea from. The only warm beer I know of is the sort that you have sitting outside in the garden and it gets warm from the heat of the sun. Which, admittedly, doesn't happen too often in the UK. :)) > It's a way to figure one's intelligence in the ball park. Knowledge > without intelligence is useless unless you're taking tests. I've got a > friend who has a little intelligence and a lot of book knowledge, but > doesn't know how to apply it. I'm just the opposite. I did shitty in > school and never read books (too boring), but I can figure anything out. I've read a lot of books because I enjoy it (though I find that I don't have time to do it anymore) but I can still generally work things out quite easily. I'm definitely a person for trial-and-error techniques. > > So, it's not something I feel proud and smug about. It's something I laugh > > about everytime I do something stupid. Genius. Haha! :)) > > Nod. FWIW, Got 150 when I took it in college. Doesn't mean much. No. I hate these sort of things actually. I mentioned before that I read a lot. Well, I always have done. And when I was 10 or 11 I had some sort of child IQ test type thing in school (everyone did). Apparently I had the reading ability and problem solving ability of an 18 year old (which, to be honest, doesn't say a lot!) - so they wanted to take me to a "special" school for "advanced" children. I refused to go. I know that I wouldn't have gone because I've never felt that ANYBODY should be treated "specially" - and besides that, at the age of 10 (or so) - I wouldn't have wanted to leave home and my friends (which I'd have had to do had I gone). > > > Haven't you heard of pigeons in England? > > Yes, but we eat them. ;) > > I think your average IQ is lower than you claim it. ;-) They taste nice! Especially the ones with chewing gum stuck to their feet! ;)) Ooh, that thought makes me sick. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 01:26:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA18447 for dynarec-outgoing; Fri, 19 May 2000 01:26:38 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005190832.KAA26446@pons.ac.upc.es> Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <3924F782.AFEB5F1D@eurocopter.de> "from Neil Griffiths at May 19, 2000 10:12:50 am" To: dynarec@dynarec.com Date: Fri, 19 May 2000 10:32:41 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > That's true. But there's one thing. All the Europeans *know* they're better > than the US. ;) > Agreed. ;) > > > Before I came over here, I had a friend who wanted to take an IQ test. So > > > he got in touch with MENSA (an international clever clogs type > > > > MENSA=My Ego Needs Some Attention > > I agree. I was asked to join but I can't see it being anything other than > useless. > They also came to my university one year ago and I ignored them. It must be a kind of association of people who think they are better than others (and without reasons). > > You'll find a disproportionate set of very smart people on the west coast. > > California way and that sort of area? > Then they must be all those european and assian who are working for US companies. ;) > > It's a way to figure one's intelligence in the ball park. Knowledge > > without intelligence is useless unless you're taking tests. I've got a > > friend who has a little intelligence and a lot of book knowledge, but > > doesn't know how to apply it. I'm just the opposite. I did shitty in > > school and never read books (too boring), but I can figure anything out. > > I've read a lot of books because I enjoy it (though I find that I don't > have time to do it anymore) but I can still generally work things out quite > easily. I'm definitely a person for trial-and-error techniques. > I have read really a lot of books, most not as useful because I like more fiction but I'm sure I have read hundreds of books. And think that always there is time for reading, for example I read in the metro while I'm travelling to the university. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 01:33:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA18464 for dynarec-outgoing; Fri, 19 May 2000 01:33:37 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 19 May 2000 01:40:03 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <3924F782.AFEB5F1D@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > * Rewiring my studio (and it's really hard work that takes days) > Agreed. Rewiring meaning the electricity or all of the cable for speakers > etc? Far more than that unfortunately. * Optical cables * Many, many quarter inch analog cables (over a hundred) * Power feeds to each device * MIDI Cables * Mounting devices in a rack If you'd like, I can post pictures of the process. It really sucks! > I quite like pinball - I'm quite glad it's popular over here. More so than > in the UK for sure. I've had a few games. Mind you, things like 10 pin > bowling and Pool are *really* expensive over here unless you have a large > amount of people... I just paid $2500 for a mint Addams Family pin. I've currently got my BK2K (awaiting playfield upgrades), a Star Trek: The NExt Generation, and a Williams Flash. All fun! > > MENSA=My Ego Needs Some Attention > I agree. I was asked to join but I can't see it being anything other than > useless. It also reminds me of mensturation, too, every time I read it. ;-) > Hmm, didn't read that. It's not so important. In fact... it's not important > - at all. And I know what you mean about the accents. I think the same. :) It's funny - cockney accents sound really lame to me, but regular English accents are fine. Though I hasten to say, where I come from we don't have accents. We pronounce things exactly as they are in the dictionary. > > You'll find a disproportionate set of very smart people on the west coast. > California way and that sort of area? Yes - lots of smart people in California (but a lot of greedy ones, too). Oregon is to the north of San Fransisco about 600 miles and south of Seattle by 150 miles. > > > so you've got the British intelligence. ;) > > Yeah, but I'm not stupid enough to drink warm beer. ;-) > Neither are we! I'm not sure where you got that idea from. As an English friend of mine told me (who lives in the states now) "We like our beer at room temperature - not so cold it cracks your teeth!" > I've read a lot of books because I enjoy it (though I find that I don't > have time to do it anymore) but I can still generally work things out quite > easily. I'm definitely a person for trial-and-error techniques. Me too, and it's interesting to look back on experiences my dad and I had while working on any device, machine, or process. Every time we got something new, he'd want me to read the fucking manual cover to cover. My attitude about that is to get my hands dirty. The big problem is when my dad and I were working on cars. Whenever he hit something he couldn't solve, he'd go read the manual, and if the manual didn't provide him a solution, he'd give up. Case in point: I was converting my car from an automatic to a stick. Surprise surprise, the bell housings on the transmissions weren't the same, so my dad folded shop and went upstairs. I looked at the transmissions and noticed that the bell housings were interchangable and were just bolted to the transmission. I swapped them and had it on the car in about 15 minutes, when my dad came down in utter shock to find I had done it. He also wants manuals for computers. He thinks "if I get message A, then B is the problem". He's stunned that I can solve problems for whatever the issue is without picking up a manual or having ever seen the problem before. IT all boils down to how you think. > reading ability and problem solving ability of an 18 year old (which, to be > honest, doesn't say a lot!) - so they wanted to take me to a "special" > school for "advanced" children. I refused to go. I know that I wouldn't They did that here. It was called TAG (Talented and gifted). They eventually stopped the program when the politically correct Nazis came around. "Oh, we can't make people feel *INFERIOR* - everyone's *THE SAME*!" So now school has been dumbed down so much that everyone who is normal or above normal suffers because of the retard who can't add. Makes me mad! > > > > Haven't you heard of pigeons in England? > > > Yes, but we eat them. ;) > > I think your average IQ is lower than you claim it. ;-) > They taste nice! Especially the ones with chewing gum stuck to their feet! > ;)) Pigeon Littles! Don't they serve those at KFC? -) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 02:07:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA18653 for dynarec-outgoing; Fri, 19 May 2000 02:07:51 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <39250416.FCC72418@eurocopter.de> Date: Fri, 19 May 2000 11:06:30 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Agreed. Rewiring meaning the electricity or all of the cable for speakers > > etc? > > Far more than that unfortunately. Oh. > * Optical cables > * Many, many quarter inch analog cables (over a hundred) > * Power feeds to each device > * MIDI Cables > * Mounting devices in a rack > > If you'd like, I can post pictures of the process. It really sucks! Go on, why not? I'm betting it looks remarkably like my room at the moment - I've got no furniture and so all the wires are spread out all over the floor. And seeing that I leave in September, I'm not going to buy furniture either. :) > > I quite like pinball - I'm quite glad it's popular over here. More so than > > in the UK for sure. I've had a few games. Mind you, things like 10 pin > > bowling and Pool are *really* expensive over here unless you have a large > > amount of people... > > I just paid $2500 for a mint Addams Family pin. I've currently got my BK2K > (awaiting playfield upgrades), a Star Trek: The NExt Generation, and a > Williams Flash. All fun! Cool! I've played the Addams Family and ST:TNG one, but not the Williams. Cool! :) > > > MENSA=My Ego Needs Some Attention > > I agree. I was asked to join but I can't see it being anything other than > > useless. > > It also reminds me of mensturation, too, every time I read it. ;-) Hehe! And the people in the organisation have the same mindset as a woman at that time. :)) Ooh, no, that's cruel on women. I take that back. :) > > Hmm, didn't read that. It's not so important. In fact... it's not important > > - at all. And I know what you mean about the accents. I think the same. :) > > It's funny - cockney accents sound really lame to me, but regular English > accents are fine. Though I hasten to say, where I come from we don't have > accents. We pronounce things exactly as they are in the dictionary. Don't worry about it, cockney accents sound really lame to me too. I don't really have an identifiable accent. The best that British people can do is identify that I come from the nothern parts of the country. They certainly can't tell where I come from (the normal accent for my area is one from Liverpool, but I don't have that!). So, we must have the same accent. ;) Actually, I've heard your voice now in one of your MP3s (now I've got some decent speakers - and extremely decent headphones!). It's quite a soft American accent. I wouldn't really be able to identify where in the US, though. I could indentify places it's NOT from though. :) > > California way and that sort of area? > > Yes - lots of smart people in California (but a lot of greedy ones, > too). Oregon is to the north of San Fransisco about 600 miles and south of > Seattle by 150 miles. Ah, okay. I wouldn't know - so I'll believe you. :) > > > Yeah, but I'm not stupid enough to drink warm beer. ;-) > > Neither are we! I'm not sure where you got that idea from. > > As an English friend of mine told me (who lives in the states now) "We > like our beer at room temperature - not so cold it cracks your teeth!" When he said "We" he meant "I". I don't know a single person who likes it that way. I definitely don't! Chilled beer is great! :) I'm more of a cider person though. But the beer over here in Germany is really great... > Every time we got something new, he'd want me to read the fucking manual > cover to cover. My attitude about that is to get my hands dirty. Exactly the same attitude as me. I hardly ever read the manual. I always try things out and see what happens. I built my first computers that way, I always use software that way - it doesn't matter what it is, though, I'll rarely read a manual. Yes, I'll do it sometimes - but if I have to then I get really annoyed. :)) > He also wants manuals for computers. He thinks "if I get message A, then B > is the problem". He's stunned that I can solve problems for whatever the > issue is without picking up a manual or having ever seen the problem > before. IT all boils down to how you think. This is true. I've never had a computer problem I haven't (eventually) been able to solve. We'll see if I can still claim this on Sunday. One of the computers I'm going to try and repair has been looked at by 5 people - one meant to be a network manager for a big company who has built lots of computers. If I can repair it (or at least identify the problem) where they haven't then I can still claim it. I haven't had a problem before though... :) It's scary that we're so similar like this! It must be the name. :)) > > reading ability and problem solving ability of an 18 year old (which, to be > > honest, doesn't say a lot!) - so they wanted to take me to a "special" > > school for "advanced" children. I refused to go. I know that I wouldn't > > They did that here. It was called TAG (Talented and gifted). They > eventually stopped the program when the politically correct Nazis came > around. "Oh, we can't make people feel *INFERIOR* - everyone's *THE > SAME*!" So now school has been dumbed down so much that everyone who is > normal or above normal suffers because of the retard who can't add. Makes > me mad! No, that's not fair. Yes, we still treat people differently here - having groups of people who study more advanced topics in things like Science and Maths - and having groups for people who aren't good at those subjects. You shouldn't ever hold people back for a minority. That's politically incorrectness gone mad! That's inane. > > > I think your average IQ is lower than you claim it. ;-) > > They taste nice! Especially the ones with chewing gum stuck to their feet! > > ;)) > > Pigeon Littles! Don't they serve those at KFC? -) Hehe! Probably. Damn, there's no KFC's over here... Well, 13 in the entire *country* - and none in Munich. ARGH! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 05:23:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA18875 for dynarec-outgoing; Fri, 19 May 2000 05:23:40 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <39250416.FCC72418@eurocopter.de> Message-ID: <000367f7a7f1c50b_mailit@mail.dynarec.com> References: <39250416.FCC72418@eurocopter.de> Date: Fri, 19 May 2000 14:11:42 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm more of a cider person though. But the beer over here in Germany is >really great... Good for you that you admit that ;-) BTW, the Bergkirchweih (the 245th, therefore the oldes beer festival of the world AFAIK) will be in Erlangen from the 8th to the 19th of June. Maybe you're interested: http://www.der-berg-ruft.de/ >This is true. I've never had a computer problem I haven't (eventually) been >able to solve. We'll see if I can still claim this on Sunday. One of the >computers I'm going to try and repair has been looked at by 5 people - one >meant to be a network manager for a big company who has built lots of >computers. If I can repair it (or at least identify the problem) where they >haven't then I can still claim it. I haven't had a problem before though... >:) Hmm, my Asus P2B died about 3 months after I bought it, but it took some time till I could identify it to be the cause of the problems I had with my PCI cards... >Hehe! Probably. Damn, there's no KFC's over here... Well, 13 in the entire >*country* - and none in Munich. ARGH! :o KFC? >Neil. -- M.I.K.e According to my best recollection, I don't remember. -- Vincent "Jimmy Blue Eyes" Alo --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 05:38:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA18905 for dynarec-outgoing; Fri, 19 May 2000 05:38:48 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <39253543.6E47ED3F@eurocopter.de> Date: Fri, 19 May 2000 14:36:19 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) References: <39250416.FCC72418@eurocopter.de> <000367f7a7f1c50b_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >I'm more of a cider person though. But the beer over here in Germany is > >really great... > > Good for you that you admit that ;-) Is it? ;) > BTW, the Bergkirchweih (the 245th, therefore the oldes beer festival of the > world AFAIK) will be in Erlangen from the 8th to the 19th of June. Maybe > you're interested: > http://www.der-berg-ruft.de/ Sounds interesting. :) > Hmm, my Asus P2B died about 3 months after I bought it, but it took some time > till I could identify it to be the cause of the problems I had with my PCI > cards... Asus P2B eh? So... you weren't thinking of overclocking were you? :o > >Hehe! Probably. Damn, there's no KFC's over here... Well, 13 in the entire > >*country* - and none in Munich. ARGH! :o > > KFC? Kentucky Fried Chicken. Think along the lines of McDonalds or Burger King - but it's actually nice. Oh, and usually related to chicken. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 07:23:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA19026 for dynarec-outgoing; Fri, 19 May 2000 07:23:35 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <39253543.6E47ED3F@eurocopter.de> Message-ID: <000367f8dc905d98_mailit@mail.dynarec.com> References: <39250416.FCC72418@eurocopter.de> <000367f7a7f1c50b_mailit@mail.dynarec.com> <39253543.6E47ED3F@eurocopter.de> Date: Fri, 19 May 2000 15:38:00 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Good for you that you admit that ;-) >Is it? ;) Yes, good for your health ;-) >> http://www.der-berg-ruft.de/ >Sounds interesting. :) So if you want to visit it and need a place for the night I'm sure I could arrange that ;-) >Asus P2B eh? So... you weren't thinking of overclocking were you? :o Certainly not! The one I got for exchange runs very fine. >Kentucky Fried Chicken. Think along the lines of McDonalds or Burger King - >but it's actually nice. Heard of it. In a German comedy show they had a running gag "Kentucky schreit ficken" ;-) >Oh, and usually related to chicken. :) Really? But if you want pigeons you can also get them in Erlangen. Sometimes I think we have even more than Venice! >Neil. -- M.I.K.e A citizen of America will cross the ocean to fight for democracy, but won't cross the street to vote in a national election. -- Bill Vaughan --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 08:00:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA19080 for dynarec-outgoing; Fri, 19 May 2000 08:00:55 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <39255717.16A32A1E@eurocopter.de> Date: Fri, 19 May 2000 17:00:39 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) References: <39250416.FCC72418@eurocopter.de> <000367f7a7f1c50b_mailit@mail.dynarec.com> <39253543.6E47ED3F@eurocopter.de> <000367f8dc905d98_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >> http://www.der-berg-ruft.de/ > >Sounds interesting. :) > > So if you want to visit it and need a place for the night I'm sure I could > arrange that ;-) That may be an offer I may take you up on... ;) > >Asus P2B eh? So... you weren't thinking of overclocking were you? :o > > Certainly not! The one I got for exchange runs very fine. Ah, okay - it just seems that every person I know with a P2B uses it to overclock (because it can all be done from the BIOS setup screen). > >Kentucky Fried Chicken. Think along the lines of McDonalds or Burger King - > >but it's actually nice. > > Heard of it. In a German comedy show they had a running gag "Kentucky schreit > ficken" ;-) Er... I can't translate that. "Kentucky screamed..." Ooh, don't know. You've got me there! > >Oh, and usually related to chicken. :) > > Really? But if you want pigeons you can also get them in Erlangen. Sometimes > I think we have even more than Venice! I think Venice would be hard pushed to have as many as London. Mind you, they've been disappearing from London. I seem to remember a ban put on killing them (or removing them from Trafalgar Square) about 2 years ago... :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 08:47:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA19138 for dynarec-outgoing; Fri, 19 May 2000 08:47:08 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <39255717.16A32A1E@eurocopter.de> Message-ID: <000367fa9a574560_mailit@mail.dynarec.com> References: <39250416.FCC72418@eurocopter.de> <000367f7a7f1c50b_mailit@mail.dynarec.com> <39253543.6E47ED3F@eurocopter.de> <000367f8dc905d98_mailit@mail.dynarec.com> <39255717.16A32A1E@eurocopter.de> Date: Fri, 19 May 2000 17:42:39 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >That may be an offer I may take you up on... ;) I thought this could be the right bait to get you going since the last meeting didn't work ;-) >Ah, okay - it just seems that every person I know with a P2B uses it to >overclock (because it can all be done from the BIOS setup screen). I thought that's only Abit and the newer Asus boards. Never noticed anything like that. Maybe I was fiddling around in the wrong part of the BIOS all the time? >Er... I can't translate that. "Kentucky screamed..." Ooh, don't know. >You've got me there! "Kentucky screams fuck." It was just a joke because in those scetches they the always exchanged parts of following words, like "gefickt eingeschädelt" instead of "geschickt eingefädelt". >I think Venice would be hard pushed to have as many as London. Mind you, >they've been disappearing from London. I seem to remember a ban put on >killing them (or removing them from Trafalgar Square) about 2 years ago... >:)) Hehe. >Neil. -- M.I.K.e If they can make penicillin out of moldy bread, they can sure make something out of you. -- Muhammad Ali --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 09:03:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA19167 for dynarec-outgoing; Fri, 19 May 2000 09:03:06 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <392565A4.83853F6F@eurocopter.de> Date: Fri, 19 May 2000 18:02:44 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) References: <39250416.FCC72418@eurocopter.de> <000367f7a7f1c50b_mailit@mail.dynarec.com> <39253543.6E47ED3F@eurocopter.de> <000367f8dc905d98_mailit@mail.dynarec.com> <39255717.16A32A1E@eurocopter.de> <000367fa9a574560_mailit@mail.dynarec.com> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >That may be an offer I may take you up on... ;) > > I thought this could be the right bait to get you going since the last > meeting didn't work ;-) ;p Actually, how about a meeting next weekend? Considering a Wochende ticket costs 35DM all day then I could pay you a visit on Sunday. Then you can decide if it's worth inviting me to the beerfest. ;) > >Ah, okay - it just seems that every person I know with a P2B uses it to > >overclock (because it can all be done from the BIOS setup screen). > > I thought that's only Abit and the newer Asus boards. Never noticed anything > like that. Maybe I was fiddling around in the wrong part of the BIOS all the > time? Wherever you set up your CPU you'll find all sorts of options. Clock speed, bus speed, power - everything you need to overclock. And no jumpers. And I've just seen a post from you in comp.emulators.misc - king_of_pain indeed. ;) Yes, I'm officially bored. I'm at work waiting for my supervisor to get back so I can show him that I've finished my work completely - and then I can go home. Still, I'm getting overtime. But I'm bored. So I'm browsing the newsgroups. No Internet access - but I do have mail and access to ONE newsgroup server... > >Er... I can't translate that. "Kentucky screamed..." Ooh, don't know. > >You've got me there! > > "Kentucky screams fuck." Ah... I wasn't sure if it was perfect (present) tense or past tense. > It was just a joke because in those scetches they the always exchanged parts > of following words, like "gefickt eingeschädelt" instead of "geschickt > eingefädelt". Heh! I would guess that means "Go fuck ..." Bah! Yet another word I don't know! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 10:08:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA19247 for dynarec-outgoing; Fri, 19 May 2000 10:08:11 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <392565A4.83853F6F@eurocopter.de> Message-ID: <000367fbdcc9fec0_mailit@mail.dynarec.com> References: <39250416.FCC72418@eurocopter.de> <000367f7a7f1c50b_mailit@mail.dynarec.com> <39253543.6E47ED3F@eurocopter.de> <000367f8dc905d98_mailit@mail.dynarec.com> <39255717.16A32A1E@eurocopter.de> <000367fa9a574560_mailit@mail.dynarec.com> <392565A4.83853F6F@eurocopter.de> Date: Fri, 19 May 2000 19:12:48 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Actually, how about a meeting next weekend? Considering a Wochende ticket >costs 35DM all day then I could pay you a visit on Sunday. Why not? Do you mean 21st or 28th? Although it doesn't make much difference. >Then you can >decide if it's worth inviting me to the beerfest. ;) Inviting? I though you would pay! ;-) >Wherever you set up your CPU you'll find all sorts of options. Clock speed, >bus speed, power - everything you need to overclock. And no jumpers. I have jumpers on my board so I guess you mean a different one. >And I've just seen a post from you in comp.emulators.misc - king_of_pain >indeed. ;) Ahhrg, you've disguised me! Which posting was it? >Yes, I'm officially bored. I'm at work waiting for my supervisor to get >back so I can show him that I've finished my work completely - and then I >can go home. Still, I'm getting overtime. But I'm bored. So I'm browsing >the newsgroups. No Internet access - but I do have mail and access to ONE >newsgroup server... Uh, that's hard indeed! >Ah... I wasn't sure if it was perfect (present) tense or past tense. I thought so. It's even tricky in that case because it's an irregular verb: schreien - schrie - geschrien >> like "gefickt eingeschädelt" instead of "geschickt >> eingefädelt". >Heh! I would guess that means "Go fuck ..." Bah! Yet another word I don't >know! :o "geschickt eingefädelt" means something like "well done", and the other one is hard to translate. >Neil. -- M.I.K.e Are you a turtle? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 12:54:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA19446 for dynarec-outgoing; Fri, 19 May 2000 12:54:38 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Fri, 19 May 2000 13:01:12 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Software development Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Remember the argument I was having with the guy who was happy doing things "good enough"? http://www.fastcompany.com/online/06/writestuff.html -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 15:22:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA19630 for dynarec-outgoing; Fri, 19 May 2000 15:22:44 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <001701bfc1e9$6dc60d20$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Software development Date: Sat, 20 May 2000 00:23:00 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Remember the argument I was having with the guy who was happy doing things > "good enough"? Heh, yes. He never did reply to me did he? :) It's so true though... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 15:27:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA19646 for dynarec-outgoing; Fri, 19 May 2000 15:27:09 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <001801bfc1ea$0b25d500$0100a8c0@lion> From: "Neil Griffiths" To: References: <39250416.FCC72418@eurocopter.de> <000367f7a7f1c50b_mailit@mail.dynarec.com> <39253543.6E47ED3F@eurocopter.de> <000367f8dc905d98_mailit@mail.dynarec.com> <39255717.16A32A1E@eurocopter.de> <000367fa9a574560_mailit@mail.dynarec.com> <392565A4.83853F6F@eurocopter.de> <000367fbdcc9fec0_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Okay, idea time. :) Date: Sat, 20 May 2000 00:28:55 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Why not? Do you mean 21st or 28th? Although it doesn't make much difference. 28th - I've got to fix this computer this weekend. > Inviting? I though you would pay! ;-) I'm not coming! ;p > I have jumpers on my board so I guess you mean a different one. ASUS P2B? You may have jumpers, but it still has the softCPU menu thing. It's known as the "overclockers motherboard". :) >>And I've just seen a post from you in comp.emulators.misc - king_of_pain >>indeed. ;) > >Ahhrg, you've disguised me! Which posting was it? Can't remember now. Oops! >>Heh! I would guess that means "Go fuck ..." Bah! Yet another word I don't >>know! :o > >"geschickt eingefädelt" means something like "well done", and the other one >is hard to translate. I bet. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Fri May 19 15:43:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA19677 for dynarec-outgoing; Fri, 19 May 2000 15:43:20 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <001801bfc1ea$0b25d500$0100a8c0@lion> Message-ID: <000368008aabf342_mailit@mail.dynarec.com> References: <39250416.FCC72418@eurocopter.de> <000367f7a7f1c50b_mailit@mail.dynarec.com> <39253543.6E47ED3F@eurocopter.de> <000367f8dc905d98_mailit@mail.dynarec.com> <39255717.16A32A1E@eurocopter.de> <000367fa9a574560_mailit@mail.dynarec.com> <392565A4.83853F6F@eurocopter.de> <000367fbdcc9fec0_mailit@mail.dynarec.com> <001801bfc1ea$0b25d500$0100a8c0@lion> Date: Sat, 20 May 2000 00:47:45 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >28th - I've got to fix this computer this weekend. Oops, forgot about that one :-( I think the 28th should be fine. >> Inviting? I though you would pay! ;-) >I'm not coming! ;p Shit! Who else could donate me a Mass? ;-) >ASUS P2B? You may have jumpers, but it still has the softCPU menu thing. >It's known as the "overclockers motherboard". :) I'll have a look, but I don't think I'll use it because I'm certainly the overclocker type and I heard the BeOS doesn't like overclocking anyway. >>Ahhrg, you've disguised me! Which posting was it? >Can't remember now. Oops! You should take a look at the Be newsgroups. You'll find plenty of my posts there... >Neil. -- M.I.K.e It looks like blind screaming hedonism won out. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Sun May 21 23:40:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA25287 for dynarec-outgoing; Sun, 21 May 2000 23:40:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f From: Victor Moya del Barrio Message-Id: <200005220642.IAA28984@pons.ac.upc.es> Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <39255717.16A32A1E@eurocopter.de> "from Neil Griffiths at May 19, 2000 05:00:39 pm" To: dynarec@dynarec.com Date: Mon, 22 May 2000 08:42:41 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >Asus P2B eh? So... you weren't thinking of overclocking were you? :o > > > > Certainly not! The one I got for exchange runs very fine. > > Ah, okay - it just seems that every person I know with a P2B uses it to > overclock (because it can all be done from the BIOS setup screen). > Welll I have a P2B and I have a P-II 300 Mhz overclocked to 350 Mhz. But my P2B don't have a BIOS setup screen for overclocking. I made all from jumpers. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 22 00:09:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA25320 for dynarec-outgoing; Mon, 22 May 2000 00:09:10 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <3928DD34.AD79CB98@eurocopter.de> Date: Mon, 22 May 2000 09:09:40 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) References: <39250416.FCC72418@eurocopter.de> <000367f7a7f1c50b_mailit@mail.dynarec.com> <39253543.6E47ED3F@eurocopter.de> <000367f8dc905d98_mailit@mail.dynarec.com> <39255717.16A32A1E@eurocopter.de> <000367fa9a574560_mailit@mail.dynarec.com> <392565A4.83853F6F@eurocopter.de> <000367fbdcc9fec0_mailit@mail.dynarec.com> <001801bfc1ea$0b25d500$0100a8c0@lion> <000368008aabf342_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I think the 28th should be fine. Good, good. :) > >I'm not coming! ;p > > Shit! Who else could donate me a Mass? ;-) Sorry! ;) > >ASUS P2B? You may have jumpers, but it still has the softCPU menu thing. > >It's known as the "overclockers motherboard". :) > > I'll have a look, but I don't think I'll use it because I'm certainly the > overclocker > type and I heard the BeOS doesn't like overclocking anyway. Can't see why BeOS would have more of a problem than anything else. Overclocking isn't a great idea - unless you're a poor student (like I was and will be again in a couple of months). I have a Celeron 300A o/c'ed to 450. Runs like a dream. It was a good deal - but overclocking isn't really for the faint-hearted... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 22 06:31:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA25807 for dynarec-outgoing; Mon, 22 May 2000 06:31:53 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <3928DD34.AD79CB98@eurocopter.de> Message-ID: <000368352bb63299_mailit@mail.dynarec.com> References: <39250416.FCC72418@eurocopter.de> <000367f7a7f1c50b_mailit@mail.dynarec.com> <39253543.6E47ED3F@eurocopter.de> <000367f8dc905d98_mailit@mail.dynarec.com> <39255717.16A32A1E@eurocopter.de> <000367fa9a574560_mailit@mail.dynarec.com> <392565A4.83853F6F@eurocopter.de> <000367fbdcc9fec0_mailit@mail.dynarec.com> <001801bfc1ea$0b25d500$0100a8c0@lion> <000368008aabf342_mailit@mail.dynarec.com> <3928DD34.AD79CB98@eurocopter.de> Date: Mon, 22 May 2000 15:35:06 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >> I think the 28th should be fine. >Good, good. :) My mother asked why you don't want to come on Saturday, because one day could be a bit short and it would be no problem for us. Since we now use the old room of my sister for guests you'd have your own bathroom and even a kitchen - not that you'd have to use it ;-) >Can't see why BeOS would have more of a problem than anything else. I think they have some timing dependent stuff which might screw up when the processor is faster than the CPUID says. >Overclocking isn't a great idea - unless you're a poor student (like I was >and will be again in a couple of months). I have a Celeron 300A o/c'ed to >450. Runs like a dream. It was a good deal - but overclocking isn't really >for the faint-hearted... Well, someone told me that overclocking can even lead to the simple calculator of Windows producing wrong results ;-) >Neil. -- M.I.K.e It's a very *__UN*lucky week in which to be took dead. -- Churchy La Femme --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 22 06:32:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA25816 for dynarec-outgoing; Mon, 22 May 2000 06:32:02 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <200005220642.IAA28984@pons.ac.upc.es> Message-ID: <00036835323aa2b3_mailit@mail.dynarec.com> References: <200005220642.IAA28984@pons.ac.upc.es> Date: Mon, 22 May 2000 15:36:55 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >Welll I have a P2B and I have a P-II 300 Mhz overclocked to 350 Mhz. But >my P2B don't have a BIOS setup screen for overclocking. I made all from >jumpers. I think the newer Asus boards don't need jumpers but the P2B certainly is jumpered. Thanks for supporting me in that point. I was getting worried that Neil might know my board better than I do. >Victor Moya -- M.I.K.e "Even the best of friends cannot attend each other's funeral." -- Kehlog Albran, "The Profit" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 22 13:42:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA26306 for dynarec-outgoing; Mon, 22 May 2000 13:41:30 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <003701bfc436$cf708880$0100a8c0@lion> From: "Neil Griffiths" To: References: <200005220642.IAA28984@pons.ac.upc.es> <00036835323aa2b3_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Okay, idea time. :) Date: Mon, 22 May 2000 22:07:18 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Welll I have a P2B and I have a P-II 300 Mhz overclocked to 350 Mhz. But > >my P2B don't have a BIOS setup screen for overclocking. I made all from > >jumpers. > > I think the newer Asus boards don't need jumpers but the P2B certainly is > jumpered. > Thanks for supporting me in that point. I was getting worried that Neil might > know my board better than I do. I was thinking "But I built a computer with a P2B board" so I just went to the Asus website. I now know why we're finding this. There's at least 12 motherboards with the name "P2B" in them. :)) http://www.asus.com.tw/products/motherboard/indexnew.html So you both have jumpered ones - but there is at least one board that is jumperless. That's good, I was thinking I was going mad there! Well... getting even worse. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 22 13:42:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA26305 for dynarec-outgoing; Mon, 22 May 2000 13:41:28 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Message-ID: <003601bfc436$cdab58e0$0100a8c0@lion> From: "Neil Griffiths" To: References: <39250416.FCC72418@eurocopter.de> <000367f7a7f1c50b_mailit@mail.dynarec.com> <39253543.6E47ED3F@eurocopter.de> <000367f8dc905d98_mailit@mail.dynarec.com> <39255717.16A32A1E@eurocopter.de> <000367fa9a574560_mailit@mail.dynarec.com> <392565A4.83853F6F@eurocopter.de> <000367fbdcc9fec0_mailit@mail.dynarec.com> <001801bfc1ea$0b25d500$0100a8c0@lion> <000368008aabf342_mailit@mail.dynarec.com> <3928DD34.AD79CB98@eurocopter.de> <000368352bb63299_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Okay, idea time. :) Date: Mon, 22 May 2000 22:04:24 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > My mother asked why you don't want to come on Saturday, because one day could > be a bit short and it would be no problem for us. Since we now use the old > room of my sister for guests you'd have your own bathroom and even a kitchen > - not that you'd have to use it ;-) I hadn't thought about it to be honest. Er... it's a cool offer. I just wouldn't want to cause problems - if I'm to come up and stay for the beerfest maybe it could be too much... It's a lot to ask, I wouldn't want to impose. :) I'm not sure if I'm doing anything next Saturday or not. I don't think I am so this could be a possibility. Tell you what, I'll let you know on Wednesday if my Saturday is free. :) My plan on coming up for one day though comes from me being a student - I can buy one Wochendende and go to Nuernburg and back again for 35DM. :) > >Can't see why BeOS would have more of a problem than anything else. > > I think they have some timing dependent stuff which might screw up when the > processor is faster than the CPUID says. CPUID shouldn't have the speed in. At least... I haven't ever noticed it - and I read the CPUID in in things like S3Tweak! But yes, it's possible for timing dependant stuff to screw up - I just haven't found it yet. :) > >Overclocking isn't a great idea - unless you're a poor student (like I was > >and will be again in a couple of months). I have a Celeron 300A o/c'ed to > >450. Runs like a dream. It was a good deal - but overclocking isn't really > >for the faint-hearted... > > Well, someone told me that overclocking can even lead to the simple > calculator of Windows producing wrong results ;-) Yes, but that may not be a side effect of overclocking. ;) I actually have seen Calculator get completely wrong results. There are some buttons to press and if you press them in a certain order then it all goes wrong. Not sure when I saw that though. That could even go back to Windows 3.1 you know. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 22 15:19:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA26431 for dynarec-outgoing; Mon, 22 May 2000 15:18:53 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <003601bfc436$cdab58e0$0100a8c0@lion> Message-ID: <0003683c505ec9ad_mailit@mail.dynarec.com> References: <39250416.FCC72418@eurocopter.de> <000367f7a7f1c50b_mailit@mail.dynarec.com> <39253543.6E47ED3F@eurocopter.de> <000367f8dc905d98_mailit@mail.dynarec.com> <39255717.16A32A1E@eurocopter.de> <000367fa9a574560_mailit@mail.dynarec.com> <392565A4.83853F6F@eurocopter.de> <000367fbdcc9fec0_mailit@mail.dynarec.com> <001801bfc1ea$0b25d500$0100a8c0@lion> <000368008aabf342_mailit@mail.dynarec.com> <3928DD34.AD79CB98@eurocopter.de> <000368352bb63299_mailit@mail.dynarec.com> <003601bfc436$cdab58e0$0100a8c0@lion> Date: Tue, 23 May 2000 00:06:25 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >I hadn't thought about it to be honest. Er... it's a cool offer. Cool as the wheather or cool as great? ;-) >I just wouldn't want to cause problems - You don't cause problems... you *are* a problem! ;-) >if I'm to come up and stay for the >beerfest maybe it could be too much... It's a lot to ask, I wouldn't want to >impose. :) Ah, those polite Englishmen! >I'm not sure if I'm doing anything next Saturday or not. I don't think I am >so this could be a possibility. Tell you what, I'll let you know on >Wednesday if my Saturday is free. :) OK, that's a deal. >My plan on coming up for one day though comes from me being a student - I >can buy one Wochendende and go to Nuernburg and back again for 35DM. :) I know, but when you come on Saturday and go back on Sunday it's still the same price ;-) BTW, you have to stay on the train a bit longer because Erlangen is North of Nürnberg. >CPUID shouldn't have the speed in. OK, maybe it's not the CPUID, but I bet that BeOS reads out some encoded value from the CPU to know the speed, because the speed it lists is too exact to be calculated. >But yes, it's possible for >timing dependant stuff to screw up - I just haven't found it yet. :) Run a Soundblaster Live on a P3-700MHz with the bundled drivers and you'll get a blue screen every time you want to play a sound! The newer drivers work... >> Well, someone told me that overclocking can even lead to the simple >> calculator of Windows producing wrong results ;-) >Yes, but that may not be a side effect of overclocking. ;) You mean it's a typical Pentium bug? ;-) >I actually have seen Calculator get completely wrong results. There are some >buttons to press and if you press them in a certain order then it all goes >wrong. Not sure when I saw that though. That could even go back to Windows >3.1 you know. :) How much has the calculator changed since then anyway? ;-) >Neil. -- M.I.K.e "I didn't know it was impossible when I did it." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 22 15:19:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA26440 for dynarec-outgoing; Mon, 22 May 2000 15:19:17 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <003701bfc436$cf708880$0100a8c0@lion> Message-ID: <0003683c582f3d90_mailit@mail.dynarec.com> References: <200005220642.IAA28984@pons.ac.upc.es> <00036835323aa2b3_mailit@mail.dynarec.com> <003701bfc436$cf708880$0100a8c0@lion> Date: Tue, 23 May 2000 00:08:36 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >I was thinking "But I built a computer with a P2B board" so I just went to >the Asus website. I now know why we're finding this. There's at least 12 >motherboards with the name "P2B" in them. :)) Yeah, but I think the main difference is what kind of additional hardware (SCSI, sound, Ethernet) they have. >So you both have jumpered ones - but there is at least one board that is >jumperless. Don't know. Ask Van Halen! ;-) >That's good, I was thinking I was going mad there! Well... I think you are already mad... >getting even worse. :) Is that possible? >Neil. -- M.I.K.e "The eleventh commandment was `Thou Shalt Compute' or `Thou Shalt Not Compute' -- I forget which." -- Epigrams in Programming, ACM SIGPLAN Sept. 1982 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 22 15:24:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA26453 for dynarec-outgoing; Mon, 22 May 2000 15:23:59 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 22 May 2000 15:31:22 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <003601bfc436$cdab58e0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >Can't see why BeOS would have more of a problem than anything else. > > I think they have some timing dependent stuff which might screw up when > > processor is faster than the CPUID says. > CPUID shouldn't have the speed in. At least... I haven't ever noticed it - > and I read the CPUID in in things like S3Tweak! But yes, it's possible for > timing dependant stuff to screw up - I just haven't found it yet. :) CPUID Doesn't have the speed in it. > > Well, someone told me that overclocking can even lead to the simple > > calculator of Windows producing wrong results ;-) > Yes, but that may not be a side effect of overclocking. ;) That's a bug in Windows' calculator. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 22 15:49:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA26495 for dynarec-outgoing; Mon, 22 May 2000 15:49:32 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: Message-ID: <0003683cfe193565_mailit@mail.dynarec.com> References: Date: Tue, 23 May 2000 00:55:00 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >CPUID Doesn't have the speed in it. Is there any other special register which might contain the clock rate? Otherwise Be must have a pretty exact algorithm to calculate it... >-->Neil -- M.I.K.e User n.: A programmer who will believe anything you tell him. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 22 15:52:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA26509 for dynarec-outgoing; Mon, 22 May 2000 15:52:09 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 22 May 2000 15:59:32 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <0003683cfe193565_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > >CPUID Doesn't have the speed in it. > Is there any other special register which might contain the clock rate? > Otherwise Be must have a pretty exact algorithm to calculate it... No, there isn't. It's not tough to calculate. You shut off all interrupts (except for a regular interval interrupt like the 18.32ms clock), read the RDTSC at the start of an interrupt, and read the TSC at the start o fthe next interrupt. That'll tell you how many cycles have passed. Divide by a million and you've got your speed. Quite simple! -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 22 16:10:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA26549 for dynarec-outgoing; Mon, 22 May 2000 16:10:07 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: Message-ID: <0003683d47afb421_mailit@mail.dynarec.com> References: Date: Tue, 23 May 2000 01:15:35 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >No, there isn't. It's not tough to calculate. You shut off all interrupts >(except for a regular interval interrupt like the 18.32ms clock), read the >RDTSC at the start of an interrupt, and read the TSC at the start of the >next interrupt. That'll tell you how many cycles have passed. Divide by a >million and you've got your speed. Quite simple! Thanks. Sometimes it can be really useful to have a Intel employee on the list. BTW, what kind of work do you do at Intel, or is that top secret? I guess with that method it's even easier for an OS to calculate the speed than it is for any application since those normally aren't allowed to shut off the interrupts. >-->Neil -- M.I.K.e Lewis's Law of Travel: The first piece of luggage out of the chute doesn't belong to anyone, ever. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 22 16:17:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA26567 for dynarec-outgoing; Mon, 22 May 2000 16:17:34 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 22 May 2000 16:24:57 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <0003683d47afb421_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > BTW, what kind of work do you do at Intel, or is that top secret? That would've been two years ago (the "top secret" part of things). I was one of the validators on the 450NX chipset (I had nothing to do with 810, 820 or 840 or BX - they were all done in Folsom). I had written a 4 CPU OS that was designed to stress the various facets of the chipset. The 450NX is way solid. So what do I do today? All of Intel's multiprocessor servers have microcontrollers (BMC - Baseboard Micro Controller) that monitor system health, such as power supply health, CPU temperature, fan operation, chassis intrusion, remote operation, and paging. My responsibility is the firmware architecture, network access, and anything else that touches the serial port (panging or remote access). As an example, when a given "event" happens, such as a power supply failure, I page you, via the network or a standard pager. ;-) You would'nt think there's much going on, but consider it's about 700,000 lines of code. ;-) It does a lot! My latest task was writing a UDP/IP driver and the interface code to glue it in to the command subsystem. > I guess with that method it's even easier for an OS to calculate the speed > than it is for any application since those normally aren't allowed to shut > off the interrupts. It's mind-numbingly simple for an OS to calculate the CPU speed - especially if it's a Pentium. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 22 17:56:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA26666 for dynarec-outgoing; Mon, 22 May 2000 17:56:36 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: Message-ID: <0003683ec0ea631f_mailit@mail.dynarec.com> References: Date: Tue, 23 May 2000 03:01:03 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com >That would've been two years ago (the "top secret" part of things). I was >one of the validators on the 450NX chipset (I had nothing to do with 810, >820 or 840 or BX - they were all done in Folsom). I had written a 4 CPU OS >that was designed to stress the various facets of the chipset. The 450NX >is way solid. Really not bad! I never wrote an OS and certainly not for a multi- processor... >So what do I do today? All of Intel's multiprocessor servers have >microcontrollers (BMC - Baseboard Micro Controller) that monitor system >health, such as power supply health, CPU temperature, fan operation, >chassis intrusion, remote operation, and paging. My responsibility is the >firmware architecture, network access, and anything else that touches the >serial port (panging or remote access). As an example, when a given >"event" happens, such as a power supply failure, I page you, via the >network or a standard pager. ;-) Cool: "Panic, server is on fire!" ;-) What happens when this BMC has a defect? >You would'nt think there's much going on, but consider it's about 700,000 >lines of code. ;-) Uh, that's much! Is that C or assembly? >It does a lot! My latest task was writing a UDP/IP >driver and the interface code to glue it in to the command subsystem. Sounds like a lot of work... >It's mind-numbingly simple for an OS to calculate the CPU speed - >especially if it's a Pentium. Thanks. I think I again learned something new about the Pentium. >-->Neil -- M.I.K.e Miksch's Law: If a string has one end, then it has another end. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 22 22:37:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA26873 for dynarec-outgoing; Mon, 22 May 2000 22:37:17 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 22 May 2000 22:44:44 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <0003683ec0ea631f_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com > >820 or 840 or BX - they were all done in Folsom). I had written a 4 CPU OS > >that was designed to stress the various facets of the chipset. The 450NX > >is way solid. > Really not bad! I never wrote an OS and certainly not for a multi- > processor... It's not that hard once you figure out how to do it. It had paging and the whole shebang, process interlocking, etc... It did some nasty stuff and was capable of generating all kinds of traffic to stress different areas of the chipset. > >So what do I do today? All of Intel's multiprocessor servers have > >microcontrollers (BMC - Baseboard Micro Controller) that monitor system > >health, such as power supply health, CPU temperature, fan operation, > Cool: "Panic, server is on fire!" ;-) > What happens when this BMC has a defect? *SMILE* The board is hosed. Ever wonder why I'm so militant about coding "properly" so there are no bugs in the finished product? We can't have in-field failures of the micro (at least not in the firmware itself). Also if the BMC goes out to lunch, you can't turn power on or off, either, since it does the monitoring of the front panel pushbutton for power, reset, and sleep. > >You would'nt think there's much going on, but consider it's about 700,000 > >lines of code. ;-) > Uh, that's much! Is that C or assembly? 99% C, 1% in assembly. The assembly is mostly bootstrapping and hardware level interface code. > >It does a lot! My latest task was writing a UDP/IP > >driver and the interface code to glue it in to the command subsystem. > Sounds like a lot of work... It's a lot of meticulous work. There's a million things to check, such as checksums, and they have to be done in the proper order. We also have network authentication layers that deal with MD2 hashing and other fun stuff. ;-) If even one byte is off, the packet gets dropped. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@synthcom.com Mon May 22 23:08:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA26905 for dynarec-outgoing; Mon, 22 May 2000 23:08:48 -0700 (PDT) (envelope-from owner-dynarec@synthcom.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@synthcom.com using -f Date: Mon, 22 May 2000 23:16:15 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Forgot to mention... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@synthcom.com Precedence: bulk Reply-To: dynarec@dynarec.com Minor brag, but what the hell? I just got my damn near mint The Addams Family pinball machine today. It kicks so much ass! You can imagine what I'll be doing for the next 24-48 hours. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 23 03:19:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA27291 for dynarec-outgoing; Tue, 23 May 2000 03:19:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Forgot to mention... From: "M.I.K.e" In-Reply-To: Message-ID: <00036846704e6dad_mailit@mail.dynarec.com> References: Date: Tue, 23 May 2000 12:11:11 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I just got my damn near mint The Addams Family pinball machine today. It >kicks so much ass! You can imagine what I'll be doing for the next 24-48 >hours. ;-) Have fun ;-) >-->Neil -- M.I.K.e Prof: So the American government went to IBM to come up with a data encryption standard and they came up with ... Student: EBCDIC!" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 23 14:22:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA28066 for dynarec-outgoing; Tue, 23 May 2000 14:22:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003601bfc505$b242e4e0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Okay, idea time. :) Date: Tue, 23 May 2000 23:17:11 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > You would'nt think there's much going on, but consider it's about 700,000 > lines of code. ;-) It does a lot! My latest task was writing a UDP/IP > driver and the interface code to glue it in to the command subsystem. That's really impressive! What size is your stub when you've compiled it? I imagine you've got some sort of size limit - very impressive! As for the UDP/IP thing, why did you need to implement that? Is the NX for servers or something and has network capability built in? I imagine I'm right - but then why would you go for UDP - an essentially lossy transfer protocol. I know quite a lot about TCP/IP in general, BTW. My university project last year was an ICS - Internet Client Suite. E-mail, Telnet, Ping, Finger and Whois - all written in Delphi because I was sick when I chose the language. All written from scratch - including everything for TCP/IP. I was extremely gutted to upgrade to Delphi3 and find all the components (or equivalent) that I'd written came with it! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 23 14:22:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA28065 for dynarec-outgoing; Tue, 23 May 2000 14:22:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003501bfc505$b1164bc0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Okay, idea time. :) Date: Tue, 23 May 2000 23:12:47 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > No, there isn't. It's not tough to calculate. You shut off all interrupts > (except for a regular interval interrupt like the 18.32ms clock), read the > RDTSC at the start of an interrupt, and read the TSC at the start o fthe > next interrupt. That'll tell you how many cycles have passed. Divide by a > million and you've got your speed. Quite simple! And then you do it under Windows, find that you can't (it doesn't work properly), swear a lot - and do something entirely different. And the scary thing is that I can't remember exactly what the solution was either because I did it over a year ago - but it works fine, even now. I think that sometimes it is 1MHz off - but that's pretty good going really. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 23 14:22:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA28068 for dynarec-outgoing; Tue, 23 May 2000 14:22:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003701bfc505$b30c4f60$0100a8c0@lion> From: "Neil Griffiths" To: References: <39250416.FCC72418@eurocopter.de> <000367f7a7f1c50b_mailit@mail.dynarec.com> <39253543.6E47ED3F@eurocopter.de> <000367f8dc905d98_mailit@mail.dynarec.com> <39255717.16A32A1E@eurocopter.de> <000367fa9a574560_mailit@mail.dynarec.com> <392565A4.83853F6F@eurocopter.de> <000367fbdcc9fec0_mailit@mail.dynarec.com> <001801bfc1ea$0b25d500$0100a8c0@lion> <000368008aabf342_mailit@mail.dynarec.com> <3928DD34.AD79CB98@eurocopter.de> <000368352bb63299_mailit@mail.dynarec.com> <003601bfc436$cdab58e0$0100a8c0@lion> <0003683c505ec9ad_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Okay, idea time. :) Date: Tue, 23 May 2000 23:20:56 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Cool as the wheather or cool as great? ;-) Cool as in... me. ;p >>I just wouldn't want to cause problems - > >You don't cause problems... you *are* a problem! ;-) True, true. And I don't care either. Haha! ;)) >>if I'm to come up and stay for the >>beerfest maybe it could be too much... It's a lot to ask, I wouldn't want to >>impose. :) > >Ah, those polite Englishmen! Where? I don't know any! ;) Seriously, the one thing I won't understand is Germans calling me polite just because I offer to pay for them. I don't know, I'm out with two girls and offer to pay for their Ice Creams - and they wouldn't let me! :o >>I'm not sure if I'm doing anything next Saturday or not. I don't think I am >>so this could be a possibility. Tell you what, I'll let you know on >>Wednesday if my Saturday is free. :) > >OK, that's a deal. That'd be tomorrow wouldn't it? Argh! Okay, I'll have to work on that one! >My plan on coming up for one day though comes from me being a student - I >>can buy one Wochendende and go to Nuernburg and back again for 35DM. :) > >I know, but when you come on Saturday and go back on Sunday it's still the >same price ;-) Yah, but 35DM on *both* days. :) >BTW, you have to stay on the train a bit longer because Erlangen is North of >Nürnberg. I'm sure I've heard of Erlangen as well. It's probably some mad person living there. Who could that be? Ah... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 23 14:22:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA28069 for dynarec-outgoing; Tue, 23 May 2000 14:22:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003801bfc505$b418dd60$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Forgot to mention... Date: Tue, 23 May 2000 23:23:09 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Minor brag, but what the hell? > > I just got my damn near mint The Addams Family pinball machine today. It > kicks so much ass! You can imagine what I'll be doing for the next 24-48 > hours. ;-) You lucky b@$$t@rd! ;)) I'd buy an arcade machine or pinball machine myself. It's just that there'd be nowhere to put it. So, all in all, that's not such a great plan. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 23 14:22:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA28064 for dynarec-outgoing; Tue, 23 May 2000 14:22:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003401bfc505$b01a86a0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Okay, idea time. :) Date: Tue, 23 May 2000 23:10:44 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > CPUID shouldn't have the speed in. At least... I haven't ever noticed it - > > and I read the CPUID in in things like S3Tweak! But yes, it's possible for > > timing dependant stuff to screw up - I just haven't found it yet. :) > > CPUID Doesn't have the speed in it. Which is a good thing considering the time I put in to do a pretty good CPU speed thing. You can never get it exactly correct - and have it run on all CPUs. I'd normally use RDTSC but that seems to not work as expected on K6-2s (apparently, I don't have one to see this!). Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 23 14:33:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA28122 for dynarec-outgoing; Tue, 23 May 2000 14:33:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 23 May 2000 14:40:52 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <003601bfc505$b242e4e0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > You would'nt think there's much going on, but consider it's about 700,000 > > lines of code. ;-) It does a lot! My latest task was writing a UDP/IP > > driver and the interface code to glue it in to the command subsystem. > That's really impressive! What size is your stub when you've compiled it? I > imagine you've got some sort of size limit - very impressive! It's about 140K of code/static data. > As for the UDP/IP thing, why did you need to implement that? Because our micro didn't have UDP/IP capabilities built in. ;-) We're talknig to the onboard ethernet chip over a "service" port designed to do exactly what we're doing (out of band system management). > Is the NX for > servers or something and has network capability built in? What do you mean by "NX"? Each one of our servers has a built in 82559 chip for doing network traffic. > I imagine I'm > right - but then why would you go for UDP - an essentially lossy transfer > protocol. UDP Port 623 is reserved as being an "AUX bus shunt", or in other words, a service port for out of band management. UDP Is about a hundred times easier to implement than TCP/IP, and since these baseboard micros don't have a lot of resources, port 623 was chosen. It's also a limitation of the ethernet chip itself. It only passes us port 623 packets bound for our MAC address. It's an I2C interface (100kbps serial bus) to the ethernet chip so we can't be sniffing each packet as it comes through. On a moderately loaded network, we'd drop all kinds of packets, so the ethernet chip does the discrimination for us. Besides, our serivce data going back and forth doesn't need guaranteed delivery, retransmission, or defragmentation as TCP/IP provides. It's well understood that the client will just retransmit in 2 seconds if it didn't get it the first time. ;-) > I know quite a lot about TCP/IP in general, BTW. My university project last > year was an ICS - Internet Client Suite. E-mail, Telnet, Ping, Finger and > Whois - all written in Delphi because I was sick when I chose the language. You're right. You were sick. I wouldn't use Delphi for anything. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 23 14:34:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA28132 for dynarec-outgoing; Tue, 23 May 2000 14:34:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 23 May 2000 14:41:51 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <003401bfc505$b01a86a0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Which is a good thing considering the time I put in to do a pretty good CPU > speed thing. You can never get it exactly correct - and have it run on all > CPUs. You can if there's no OS underneath you to get in the way. > I'd normally use RDTSC but that seems to not work as expected on K6-2s > (apparently, I don't have one to see this!). Uh... no, it works correctly on K6/K6-2 and K7s without issue. At least the code that I developed did. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 23 14:34:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA28142 for dynarec-outgoing; Tue, 23 May 2000 14:34:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 23 May 2000 14:42:32 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <003501bfc505$b1164bc0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > next interrupt. That'll tell you how many cycles have passed. Divide by a > > million and you've got your speed. Quite simple! > And then you do it under Windows, find that you can't (it doesn't work > properly), swear a lot - and do something entirely different. Or round to the nearest known CPU speed. You can't expect to have perfect timing under a preemptive pseudo-realitime OS. -->Neil ------------------------------------------------------------------------------- Neil Bradley Horror is: A duet with Poison and Michael Bolt- Synthcom Systems, Inc. on, musical composition by Philip Glass, performed by ICQ # 29402898 Kenny G., lyrics by Alanis Morissette --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 23 15:04:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA28198 for dynarec-outgoing; Tue, 23 May 2000 15:04:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <003701bfc505$b30c4f60$0100a8c0@lion> Message-ID: <0003685076337893_mailit@mail.dynarec.com> References: <39250416.FCC72418@eurocopter.de> <000367f7a7f1c50b_mailit@mail.dynarec.com> <39253543.6E47ED3F@eurocopter.de> <000367f8dc905d98_mailit@mail.dynarec.com> <39255717.16A32A1E@eurocopter.de> <000367fa9a574560_mailit@mail.dynarec.com> <392565A4.83853F6F@eurocopter.de> <000367fbdcc9fec0_mailit@mail.dynarec.com> <001801bfc1ea$0b25d500$0100a8c0@lion> <000368008aabf342_mailit@mail.dynarec.com> <3928DD34.AD79CB98@eurocopter.de> <000368352bb63299_mailit@mail.dynarec.com> <003601bfc436$cdab58e0$0100a8c0@lion> <0003683c505ec9ad_mailit@mail.dynarec.com> <003701bfc505$b30c4f60$0100a8c0@lion> Date: Wed, 24 May 2000 00:08:39 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Cool as in... me. ;p Hey, how can you put "cool" into "me" when "cool" has four letters and "me" only two?? >>You don't cause problems... you *are* a problem! ;-) >True, true. And I don't care either. Haha! ;)) Somehow I expected that reaction... >>Ah, those polite Englishmen! >Where? I don't know any! ;) Just a prejudice... >Seriously, the one thing I won't understand is Germans calling me polite >just because I offer to pay for them. Hey, why don't you want to buy me a Maß then? >I don't know, I'm out with two girls >and offer to pay for their Ice Creams - and they wouldn't let me! :o You should be lucky that you didn't have to pay ;-) But if you want to know the reason, it's what they call "Emanzipation"... >>OK, that's a deal. >That'd be tomorrow wouldn't it? Or on my clock today now ;-) >Argh! Okay, I'll have to work on that one! Oh, such a difficult decision. You're just afraid that I could have enough time for a brainwash ;-) >Yah, but 35DM on *both* days. :) What! You have to pay for both days? Why is it called Wochenende-Ticket then? >I'm sure I've heard of Erlangen as well. Good. We have only one train station anyway... >It's probably some mad person living there. Person? Why are you talking in singular? ;-) >Who could that be? Ah... ;) I don't know... >Neil. -- M.I.K.e Actors will happen even in the best-regulated families. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 24 12:50:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA29626 for dynarec-outgoing; Wed, 24 May 2000 12:50:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004501bfc5c2$12f5f720$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Okay, idea time. :) Date: Wed, 24 May 2000 21:37:02 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > That's really impressive! What size is your stub when you've compiled it? I > > imagine you've got some sort of size limit - very impressive! > > It's about 140K of code/static data. Ooh, that's quite tight! > > As for the UDP/IP thing, why did you need to implement that? > > Because our micro didn't have UDP/IP capabilities built in. ;-) :p > > Is the NX for > > servers or something and has network capability built in? > > What do you mean by "NX"? Each one of our servers has a built in 82559 > chip for doing network traffic. I was under the impression that the NX was a new motherboard chipset. You know - FX, VX, TX, BX and so on... That's where I got that impression. > Besides, our serivce data going back and forth doesn't need guaranteed > delivery, retransmission, or defragmentation as TCP/IP provides. It's well > understood that the client will just retransmit in 2 seconds if it didn't > get it the first time. ;-) Ah, good. Okay, I'm quite used to that sort of thing. :) > > I know quite a lot about TCP/IP in general, BTW. My university project last > > year was an ICS - Internet Client Suite. E-mail, Telnet, Ping, Finger and > > Whois - all written in Delphi because I was sick when I chose the language. > > You're right. You were sick. I wouldn't use Delphi for anything. Although I can now say to new programmers that want to learn a new language to learn Delphi. Give them a couple of days of that and they'll WANT to use another language! Ooh, how I hate it now... Trouble was that I had the choice between C++ Builder (1) and Delphi 3. One could do threading - and one couldn't. But, with hindsight, I should have gone for Builder. Nothing can be worse than Delphi... :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 24 12:50:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA29627 for dynarec-outgoing; Wed, 24 May 2000 12:50:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004601bfc5c2$13e89480$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Okay, idea time. :) Date: Wed, 24 May 2000 21:41:49 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > And then you do it under Windows, find that you can't (it doesn't work > > properly), swear a lot - and do something entirely different. > > Or round to the nearest known CPU speed. You can't expect to have perfect > timing under a preemptive pseudo-realitime OS. Or you could do this: ---------- //=========================[ Routine Declaration ]==========================// // Function: FindCpuSpeed( ) // // Purpose: Calculate the speed of the CPU using the Time Stamp Counter // register. Unfortunately, that means this will only work // on a Pentium or Pentium-clone chip that supports RDTSC. // // Parameters: // dwDuration Number of milliseconds to use for sampling. // In theory, the longer this is, the more accurate // we'll be, but the more chance we'll overflow the // 32-bit counter we're using. // Returns: // Approximate number of machine cycles in a second for this system, // based on a sampling duration of roughly 500 milliseconds. //-------------------------------------------------------------------------- -- extern "C" float WINAPI FindCpuSpeed( DWORD dwDuration ) { DWORD dwStartMsec, dwEndMsec; DWORD dwStartTSC, dwEndTSC; DWORD dwDiff, dwMsecs; dwStartMsec = timeGetTime(); // Loop until the time counter actually changes, then start calculation while ( dwStartMsec == timeGetTime() ); dwEndMsec = dwStartMsec = timeGetTime(); /* _asm { mov eax,0 cpuid ; Ensure in-order instruction processing rdtsc mov dwStartTSC,eax } */ // The above _asm block is basically what GetTSC() does. // RDTSC returns a 64-bit number, but we're only using half of it. dwStartTSC = GetTSC(); while (( dwEndMsec - dwStartMsec ) < dwDuration ) { dwEndMsec = timeGetTime(); } dwEndTSC = GetTSC(); dwDiff = dwEndTSC - dwStartTSC; dwMsecs = dwEndMsec - dwStartMsec; // Return number of machine cycles actually counted in // dwMsecs millseconds, rounded up. return( (float) (ceil( ((float) dwDiff ) / ( 1000.0 * (float) dwMsecs ) ) )); } -------- Which generally works quite nicely. I haven't found a CPU where it hasn't worked pretty damn well. I have seen it be out by 1MHz once though... Still, a very nice algorithm that works quite nicely. :) And yes, I *know* that the comments are C++ style even though the code is all in C. I just find it easier to read! This code will probably only work under VC, BTW - but you could always use the ASM that's commented out... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 24 12:50:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA29630 for dynarec-outgoing; Wed, 24 May 2000 12:50:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004701bfc5c2$14ebfac0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Okay, idea time. :) Date: Wed, 24 May 2000 21:42:14 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > I'd normally use RDTSC but that seems to not work as expected on K6-2s > > (apparently, I don't have one to see this!). > > Uh... no, it works correctly on K6/K6-2 and K7s without issue. At least > the code that I developed did. My bad. Got confused. The speed code worked fine - it was the CPUID. AMD return an extended CPUID which caused crashing and all sorts of things when the program didn't actual read the rest of the data. Ah well, that was fixed quite quickly - it's just a pain when you don't have an AMD system to test it on! :o BTW, Neil - how's the pinball machine? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 24 13:11:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA29687 for dynarec-outgoing; Wed, 24 May 2000 13:11:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002501bfc5bc$a9adb3c0$0100a8c0@nibble> From: "Kieron Wilkinson" To: References: <004501bfc5c2$12f5f720$0100a8c0@lion> Subject: Re: DYNAREC: Okay, idea time. :) Date: Wed, 24 May 2000 21:14:17 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi everyone... > Although I can now say to new programmers that want to learn a new language > to learn Delphi. Give them a couple of days of that and they'll WANT to use > another language! Ooh, how I hate it now... Trouble was that I had the > choice between C++ Builder (1) and Delphi 3. One could do threading - and > one couldn't. But, with hindsight, I should have gone for Builder. Nothing > can be worse than Delphi... :o > > Neil. Oh, I dunno. I used to use Borland Turbo Pascal 4... And you use Ada Neil! (and you looove it) :) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 24 13:18:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA29709 for dynarec-outgoing; Wed, 24 May 2000 13:18:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006c01bfc5c5$fdcc0a20$0100a8c0@lion> From: "Neil Griffiths" To: References: <004501bfc5c2$12f5f720$0100a8c0@lion> <002501bfc5bc$a9adb3c0$0100a8c0@nibble> Subject: Re: DYNAREC: Okay, idea time. :) Date: Wed, 24 May 2000 22:21:11 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Oh, I dunno. I used to use Borland Turbo Pascal 4... So did I. But they made me. THEY MADE ME! ;) > And you use Ada Neil! (and you looove it) Oh yes. Lots. :-/ Ada takes Pascal and C++. It takes the good bits - and then puts them in the bin. And then it takes what is left - and makes it worse. :-/ And I have to use this piece of crap language *every day*! AARGH! I could go insane before I finish this work placement! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 24 13:49:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA29756 for dynarec-outgoing; Wed, 24 May 2000 13:49:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <004501bfc5c2$12f5f720$0100a8c0@lion> Message-ID: <00036863515f855a_mailit@mail.dynarec.com> References: <004501bfc5c2$12f5f720$0100a8c0@lion> Date: Wed, 24 May 2000 22:38:26 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Although I can now say to new programmers that want to learn a new language >to learn Delphi. Give them a couple of days of that and they'll WANT to use >another language! Ooh, how I hate it now... Trouble was that I had the >choice between C++ Builder (1) and Delphi 3. One could do threading - and >one couldn't. But, with hindsight, I should have gone for Builder. Nothing >can be worse than Delphi... :o I bet you haven't tried Clarion for Windows yet... >Neil. -- M.I.K.e Too often I find that the volume of paper expands to fill the available briefcases. -- Governor Jerry Brown --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 24 14:09:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA29803 for dynarec-outgoing; Wed, 24 May 2000 14:09:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 24 May 2000 14:17:20 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <004501bfc5c2$12f5f720$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Is the NX for > > > servers or something and has network capability built in? > > What do you mean by "NX"? Each one of our servers has a built in 82559 > > chip for doing network traffic. > I was under the impression that the NX was a new motherboard chipset. You > know - FX, VX, TX, BX and so on... That's where I got that impression. Well, it's the 450NX chipset, but you mentioned it in context of networking, to which the chipset does'nt have networking capabilities built in. > > You're right. You were sick. I wouldn't use Delphi for anything. > Although I can now say to new programmers that want to learn a new language > to learn Delphi. Give them a couple of days of that and they'll WANT to use I tell them learn C. Period. > one couldn't. But, with hindsight, I should have gone for Builder. Nothing > can be worse than Delphi... :o MFC. Visual BASIC. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 24 14:10:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA29816 for dynarec-outgoing; Wed, 24 May 2000 14:10:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 24 May 2000 14:18:20 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <004701bfc5c2$14ebfac0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > BTW, Neil - how's the pinball machine? It kicks major ass! The playfield is absolutely beautiful and everything works/plays exactly as it should. I've got new balls on order because the ones in the game are starting to have rust deposits. I'll post a picture of my mini arcade tonight sometime. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 24 14:53:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA29889 for dynarec-outgoing; Wed, 24 May 2000 14:53:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008e01bfc5d3$31521ee0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Okay, idea time. :) Date: Wed, 24 May 2000 23:52:37 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Well, it's the 450NX chipset, but you mentioned it in context of > networking, to which the chipset does'nt have networking capabilities > built in. That's okay, I just misunderstood. :) > > Although I can now say to new programmers that want to learn a new language > > to learn Delphi. Give them a couple of days of that and they'll WANT to use > > I tell them learn C. Period. So do I. After that (painful) 8 or 9 months (no, not a pregnancy!) there's no way I'd *ever* advise someone to use Delphi! > > one couldn't. But, with hindsight, I should have gone for Builder. Nothing > > can be worse than Delphi... :o > > MFC. Visual BASIC. Visual BASIC was a no-no because I only had VB3 at the time. Could have used MFC - but I hate it. But I hate it less than Delphi now... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 24 14:53:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA29899 for dynarec-outgoing; Wed, 24 May 2000 14:53:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008f01bfc5d3$376069e0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Okay, idea time. :) Date: Wed, 24 May 2000 23:54:59 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > It kicks major ass! The playfield is absolutely beautiful and everything > works/plays exactly as it should. I've got new balls on order because > the ones in the game are starting to have rust deposits. You lucky so-and-so... ;) > I'll post a picture of my mini arcade tonight sometime. So we might get to see something other than "BIG TITS!" then? ;)) Not that I'd complain about seeing "BIG TITS!" but... that's a different story! :) Seriously, looking forward to it. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 24 14:53:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA29904 for dynarec-outgoing; Wed, 24 May 2000 14:53:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009001bfc5d3$392d3aa0$0100a8c0@lion> From: "Neil Griffiths" To: References: <004501bfc5c2$12f5f720$0100a8c0@lion> <00036863515f855a_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Okay, idea time. :) Date: Wed, 24 May 2000 23:55:20 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I bet you haven't tried Clarion for Windows yet... You'd be right - and I've never heard of it before either! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 24 15:32:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA29977 for dynarec-outgoing; Wed, 24 May 2000 15:32:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Okay, idea time. :) From: "M.I.K.e" In-Reply-To: <009001bfc5d3$392d3aa0$0100a8c0@lion> Message-ID: <00036864fbae4c91_mailit@mail.dynarec.com> References: <004501bfc5c2$12f5f720$0100a8c0@lion> <00036863515f855a_mailit@mail.dynarec.com> <009001bfc5d3$392d3aa0$0100a8c0@lion> Date: Thu, 25 May 2000 00:37:38 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> I bet you haven't tried Clarion for Windows yet... >You'd be right - and I've never heard of it before either! It's a 4GL and a strange mixture between Modula-2, Basic, Cobol, and Fortran. Yes, it is as odd as it sounds. For more info see: http://www.topspeed.com/ >Neil. -- M.I.K.e District of Columbia pedestrians who leap over passing autos to escape injury, and then strike the car as they come down, are liable for any damage inflicted on the vehicle. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 24 21:42:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA30287 for dynarec-outgoing; Wed, 24 May 2000 21:41:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 24 May 2000 21:49:54 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Arcade Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I promised photos of my arcade... http://www.synthcom.com/~neil/arcade.jpg -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 24 22:10:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA30324 for dynarec-outgoing; Wed, 24 May 2000 22:10:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002b01bfc5d3$4fad44f0$0100a8c0@nibble> From: "Kieron Wilkinson" To: References: <004501bfc5c2$12f5f720$0100a8c0@lion> <00036863515f855a_mailit@mail.dynarec.com> <009001bfc5d3$392d3aa0$0100a8c0@lion> <00036864fbae4c91_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Okay, idea time. :) Date: Wed, 24 May 2000 23:55:52 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Any of you guys seen REBOL? It looks fantastic, it is a "client side network scripting language"... See if a webpage has updated and mail it to an address - 10 lines of code A webserver(!) - 30 lines of code www.rebol.com Looks a bit wierd though... Made by Carl Sana...th, the guy who developed the famous pre-emptive multitasking in the Amiga. Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 25 00:49:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA30453 for dynarec-outgoing; Thu, 25 May 2000 00:49:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 25 May 2000 00:57:53 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <008f01bfc5d3$376069e0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > It kicks major ass! The playfield is absolutely beautiful and everything > > works/plays exactly as it should. I've got new balls on order because > > the ones in the game are starting to have rust deposits. > You lucky so-and-so... ;) Well, fork out big bucks for it an you can have one, too! ;-) > > I'll post a picture of my mini arcade tonight sometime. > So we might get to see something other than "BIG TITS!" then? ;)) Hey, I like Big tits! > Not that I'd complain about seeing "BIG TITS!" but... that's a different > story! :) > Seriously, looking forward to it. Here they are: http://www.synthcom.com/~neil/studio1.jpg http://www.synthcom.com/~neil/studio2.jpg http://www.synthcom.com/~neil/studio3.jpg http://www.synthcom.com/~neil/studio4.jpg Kinda big, but you get the idea. Still a few things to clean up, like putting the lid on the computer and picking up spools of blank CDs... I sold the other half of my gear (about 2X what you see in the photos) because I couldn't possibly use it all. I started collecting synths in 1993 and it's like a disease. You get one, the house is suddenly filled with them. ;-) But I'm down to just my main few boards now. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 25 01:54:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA30541 for dynarec-outgoing; Thu, 25 May 2000 01:54:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200005250856.KAA05024@pons.ac.upc.es> Subject: DYNAREC: DRFAQ In-Reply-To: "from Neil Bradley at May 25, 2000 00:57:53 am" To: dynarec@dynarec.com Date: Thu, 25 May 2000 10:56:08 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I have read the last version of the DRFAQ and seems it's pointing to subjects I'm actually working on. Well, I'm using a VIP and I'm working in the translation of PowerPC code. I don't like the PowerPC, it has some strange instructions and this people of IBM is a maniac with shift/rotate and masked instructions. The bits in a word are numbered in the wrong way (0 is high, 63 is low). They have the more strange condition registers I have never seen. And I can't make work the translation of the Spec95 099.go!!! I'm frustated. And the worst is I'm building translations from PowerPC and using a Power as test processor, so becomes more difficult. About VIP, the system I'm working is really an static translator (although some problems with Power AIX Shared Libraries perhaps will make it become somekind of dynarec). But for portability, well, it's really portable, we have good translation of Alpha and Mips and somekind of x86, Convex and PowerPc. And the system also works in different systems (mainly alpha and 64 bit architectures) but there is almost ported to linux and 32 bits architectures (another guy is working in this). But it's as slow as hell. Perhaps it isn't thought for speed but I can't see how can be made more efficient. Another part of the system is a kind of dynarec that build translations from the VIP (which is now interpreted) code to native code and perhaps then (I haven't tested it because is still in beta) will be a bit more fast. In fact for being an static translator works well because you don't need a great speed. But a dynarec is designed for speed so a VIP (although is really very simple) perhaps goes against the main purpose of dynarec. The speed of porting the system and building translators for new architectures (we use special tools and description files) is a bit more difficult that the original purpose of the system but still works. This make me thing if really it would be so good to use a VIP for portability, if the things work well, and the VIP and system is well thought perhaps it could work ... But there are a lot of problems that can make it so difficult as building a new dynarec. Victor Moya P.S. Well, I thought it was too much time since I post a mail to the list, and ... ;) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 25 08:39:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA31116 for dynarec-outgoing; Thu, 25 May 2000 08:39:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.6.32.20000525104251.007f84f0@mail.ala.net> X-Sender: threerd@mail.ala.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.6 (32) Date: Thu, 25 May 2000 10:42:51 -0500 To: dynarec@dynarec.com From: John Syers Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: References: <008f01bfc5d3$376069e0$0100a8c0@lion> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 12:57 AM 5/25/00 +0000, you wrote: >> > It kicks major ass! The playfield is absolutely beautiful and everything >> > works/plays exactly as it should. I've got new balls on order because >> > the ones in the game are starting to have rust deposits. >> You lucky so-and-so... ;) > >Well, fork out big bucks for it an you can have one, too! ;-) > >> > I'll post a picture of my mini arcade tonight sometime. >> So we might get to see something other than "BIG TITS!" then? ;)) > >Hey, I like Big tits! > >> Not that I'd complain about seeing "BIG TITS!" but... that's a different >> story! :) >> Seriously, looking forward to it. > >Here they are: > >http://www.synthcom.com/~neil/studio1.jpg >http://www.synthcom.com/~neil/studio2.jpg >http://www.synthcom.com/~neil/studio3.jpg >http://www.synthcom.com/~neil/studio4.jpg > >Kinda big, but you get the idea. Still a few things to clean up, like >putting the lid on the computer and picking up spools of blank CDs... > >I sold the other half of my gear (about 2X what you see in the >photos) because I couldn't possibly use it all. I started collecting >synths in 1993 and it's like a disease. You get one, the house is suddenly >filled with them. ;-) But I'm down to just my main few boards now. So you have a synth room and a pinball room? Your house must be HUGE! I've always wanted to have an arcade room...well now that consoles are so good I can play pretty much arcade quality games on my TV without having a bulky cabinet. But I still want some pins--but I won't have room for those any time soon... Hmm...I thought I'd seen the name Neil Bradley before...how long have you been posting to rec.games.pinball? js 3 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 25 13:31:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA31448 for dynarec-outgoing; Thu, 25 May 2000 13:31:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" In-Reply-To: <200005250856.KAA05024@pons.ac.upc.es> Message-ID: <0003687767e0423a_mailit@mail.dynarec.com> References: <200005250856.KAA05024@pons.ac.upc.es> Date: Thu, 25 May 2000 22:36:23 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I have read the last version of the DRFAQ and seems it's pointing >to subjects I'm actually working on. Pointing is the right word since it's far from finished... You might have noticed that I moved the zero-register example from the optimisation to the translation section because of your comment. I'm always open to suggestions ;-) >Well, I'm using a VIP and I'm working in the translation of >PowerPC code. Spooky coincidence! >I don't like the PowerPC, Calling it RISC is almost as mad as calling a crow a singing bird... >it has some strange >instructions and this people of IBM is a maniac with shift/rotate >and masked instructions. Ah, you mean "rlwnm" (Rotate Left Word and AND with Mask) - I don't like these either. My favourite is "Enforce In-order Execution of I/O": EIEIO ;-) I think those IBM guys must have been stoned when they wrote down the mnemonics! >The bits in a word are numbered in the >wrong way (0 is high, 63 is low). Correct big-endian numbering. But although PowerPC and 68K are big-endian the latter numbers the bits like a little-endian processor. >They have the more strange condition registers I have never seen. Yeah, the combination of eight 4-bit condition fields and the XER can be a bit confusing, not to forget the branch instructions which test these. I assume that there are about 300 to 400 branch condition combinations! >About VIP, the system I'm working is really an static translator >(although some problems with Power AIX Shared Libraries perhaps >will make it become somekind of dynarec). But for portability, >well, it's really portable, we have good translation of Alpha and >Mips and somekind of x86, Convex and PowerPc. Isn't the Convex from SGI and therefore uses MIPS as well? >And the system >also works in different systems (mainly alpha and 64 bit architectures) >but there is almost ported to linux and 32 bits architectures >(another guy is working in this). But it's as slow as hell. Perhaps >it isn't thought for speed but I can't see how can be made more >efficient. Seems to be quite typical for static binary translators. >Another part of the system is a kind of dynarec that >build translations from the VIP (which is now interpreted) code to >native code and perhaps then (I haven't tested it because is still >in beta) will be a bit more fast. In fact for being an static >translator works well because you don't need a great speed. But >a dynarec is designed for speed so a VIP (although is really very >simple) perhaps goes against the main purpose of dynarec. It might depend on how you handle the VIP. I thought of it as having linked lists of VIP "instructions" just as Neil has linked lists of analysed opcodes. There isn't too much difference. I just (while reading this message) thought of a different method of using a VIP to improve retargetability of a dynarec. The "original" traget layer could be a translator to VIP instructions, which then is transformed into a native code translator by a special VIP-to-native translator prior to runtime. That way you'd get a native code traget layer, which should be hand- optimised before the dynarec is compiled, but you wouldn't have to write the whole target layer manually. >The speed of porting the system and building translators for new >architectures (we use special tools and description files) is a bit >more difficult that the original purpose of the system but still >works. This make me thing if really it would be so good to use >a VIP for portability, if the things work well, and the VIP and >system is well thought perhaps it could work ... But there are a >lot of problems that can make it so difficult as building a new >dynarec. The main problem is how to design the VIP to equally support source translation and target code generation. And you'll notice that, although I liked the idea of having a VIP, I don't have to positive comments on that topic. Even the VIP-to-naive generator has the problem that a very well-designed VIP is needed to fulfill such a task. >Victor Moya >P.S. Well, I thought it was too much time since I post a mail >to the list, and ... ;) And as always your thoughts have been very inspiring! -- M.I.K.e "The Right Honorable Gentleman is indebted to his memory for his jests and to his imagination for his facts." -- Sheridan --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 25 14:07:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA31514 for dynarec-outgoing; Thu, 25 May 2000 14:07:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006a01bfc696$01b9a180$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Okay, idea time. :) Date: Thu, 25 May 2000 23:07:55 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > You lucky so-and-so... ;) > > Well, fork out big bucks for it an you can have one, too! ;-) Yeah, but I have to earn big bucks first. ;) > > > I'll post a picture of my mini arcade tonight sometime. > > So we might get to see something other than "BIG TITS!" then? ;)) > > Hey, I like Big tits! Well so do I - but we'd best finish this conversation before some woman who reads this gets offended and kills me. :) > I sold the other half of my gear (about 2X what you see in the > photos) because I couldn't possibly use it all. I started collecting > synths in 1993 and it's like a disease. You get one, the house is suddenly > filled with them. ;-) But I'm down to just my main few boards now. Which boards? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 25 15:52:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA31654 for dynarec-outgoing; Thu, 25 May 2000 15:52:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001101bfc69c$5cd89980$0100a8c0@nibble> From: "Kieron Wilkinson" To: References: <200005250856.KAA05024@pons.ac.upc.es> <0003687767e0423a_mailit@mail.dynarec.com> Subject: Re: DYNAREC: DRFAQ Date: Thu, 25 May 2000 23:55:26 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >The bits in a word are numbered in the > >wrong way (0 is high, 63 is low). > > Correct big-endian numbering. But although PowerPC and 68K are big-endian the > latter numbers the bits like a little-endian processor. Well, I could be wrong here, but I have always been under the impression that the PowerPC was either little endian or big endian, depending on how you (the operating systems designer) wanted it... ? Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 25 17:55:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA31775 for dynarec-outgoing; Thu, 25 May 2000 17:55:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" In-Reply-To: <001101bfc69c$5cd89980$0100a8c0@nibble> Message-ID: <0003687b12d1ffe1_mailit@mail.dynarec.com> References: <200005250856.KAA05024@pons.ac.upc.es> <0003687767e0423a_mailit@mail.dynarec.com> <001101bfc69c$5cd89980$0100a8c0@nibble> Date: Fri, 26 May 2000 02:58:56 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well, I could be wrong here, but I have always been under the impression >that the PowerPC was either little endian or big endian, depending on how >you (the operating systems designer) wanted it... ? The PowerPC can operate in both modes like most other RISC processors, but the default mode is big-endian, just like the default mode of the ARM is little-endian. I have to admit that I never heard of a system using a little-endian PowerPC... >Kieron -- M.I.K.e "The climate of Bombay is such that its inhabitants have to live elsewhere." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 25 23:52:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA32034 for dynarec-outgoing; Thu, 25 May 2000 23:52:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 26 May 2000 00:00:26 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <3.0.6.32.20000525104251.007f84f0@mail.ala.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I sold the other half of my gear (about 2X what you see in the > >photos) because I couldn't possibly use it all. I started collecting > >synths in 1993 and it's like a disease. You get one, the house is suddenly > >filled with them. ;-) But I'm down to just my main few boards now. > So you have a synth room and a pinball room? Your house must be HUGE! 6 Bedroom house - I occupy 3 rooms, much to the chargin of my wife. ;-) > I've always wanted to have an arcade room...well now that consoles are so > good I can play pretty much arcade quality games on my TV without having a > bulky cabinet. But I still want some pins--but I won't have room for those > any time soon... I really want a basement so I can have a zillion of them. In fact, my wife said that if we buy a house with a basement that I can get more pins! ;-) > Hmm...I thought I'd seen the name Neil Bradley before...how long have you > been posting to rec.games.pinball? Many, many months... -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 25 23:55:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA32047 for dynarec-outgoing; Thu, 25 May 2000 23:55:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 26 May 2000 00:03:34 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Okay, idea time. :) In-Reply-To: <006a01bfc696$01b9a180$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > photos) because I couldn't possibly use it all. I started collecting > > synths in 1993 and it's like a disease. You get one, the house is suddenly > > filled with them. ;-) But I'm down to just my main few boards now. > Which boards? You've seen the photo! ;-) Here's the list: Nord Modular Roland JP-8000 Roland Juno 106 Roland D-50 Akai S6000 Emu Vintage Keys + Alesis D4 (drum module) Oberheim Matrix 1000 Oberheim Matrix 12 Oberheim OB-8 And some effects thrown in for good measure. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 26 02:01:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA32324 for dynarec-outgoing; Fri, 26 May 2000 02:01:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200005260903.LAA13032@pons.ac.upc.es> Subject: Re: DYNAREC: DRFAQ In-Reply-To: <0003687767e0423a_mailit@mail.dynarec.com> "from M.I.K.e at May 25, 2000 10:36:23 pm" To: dynarec@dynarec.com Date: Fri, 26 May 2000 11:03:37 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Calling it RISC is almost as mad as calling a crow a singing bird... > Someone is calling it RISC? I think is more CISC than a x86. ;) > >it has some strange > >instructions and this people of IBM is a maniac with shift/rotate > >and masked instructions. > > Ah, you mean "rlwnm" (Rotate Left Word and AND with Mask) - I don't like > these either. It is a knightmare to build the translation. What is the purpose of those intructions? You can use a simple shift operation and later an and. > My favourite is "Enforce In-order Execution of I/O": EIEIO ;-) > I think those IBM guys must have been stoned when they wrote down the > mnemonics! > As we only translate user code I think we haven't emulated it. The mnemonics are really a bit unreadable for a guy who only has worked with x86. > >The bits in a word are numbered in the > >wrong way (0 is high, 63 is low). > > Correct big-endian numbering. But although PowerPC and 68K are big-endian the > latter numbers the bits like a little-endian processor. > I didn't know that, I thought it was only one way of numbering the bits in a word. :o > >They have the more strange condition registers I have never seen. > > Yeah, the combination of eight 4-bit condition fields and the XER can be a > bit confusing, not to forget the branch instructions which test these. I > assume that there are about 300 to 400 branch condition combinations! > > Isn't the Convex from SGI and therefore uses MIPS as well? > Perhaps because I can't find the MIPS related stuff. ;) Well I started only two months ago and I don't know about other architectures than x86 so you will see me making more mistakes like that. ;) > I just (while reading this message) thought of a different method of using a > VIP to improve retargetability of a dynarec. The "original" traget layer > could be a translator to VIP instructions, which then is transformed into a > native code translator by a special VIP-to-native translator prior to > runtime. That way you'd get a native code traget layer, which should be hand- > optimised before the dynarec is compiled, but you wouldn't have to write the > whole target layer manually. > I think I don't understand that. You mean build from a source to VIP translator a source to target translator with somekind of automatic tool? In a normal VIP you make two translations: source code to VIP and VIP to target code. This implies (theorically) a double overhead. The VIP can also be interpreted if you haven't implemented the target layer (as the people of Ardi does). Where are the optimizations done? In the source layer you could do machine independant optimizations, and in the target layer machine dependant optimizations. I think the best VIP could be somelike as a RISC ISA, making it as simple as you can. Mainly all common operations (add,sub,mul, etc), simple load and store instructions and a large number of virtual registers. > > The main problem is how to design the VIP to equally support source > translation and target code generation. And you'll notice that, although I > liked the idea of having a VIP, I don't have to positive comments on that > topic. The problem is ever the overhead of two translations. If the VIP could be handled as an intermediate representation (IR) like in compilers ... Something like a three-address code. The problem is to know if it would be faster or not than an interpreter. The source to VIP layer could work with templates generating a fast non-optimized translation. Perhaps then optimizing the VIP code. In the VIP to target layer you don't use templates but somekind of code analysis to generate good code. I don't know, perhaps this also should be studied. This is the main problems too many question and few answers. ;) > >Victor Moya > > >P.S. Well, I thought it was too much time since I post a mail > >to the list, and ... ;) > > And as always your thoughts have been very inspiring! > Inspiring, really? :) Well, It makes me happy be useful. ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 26 12:14:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA33035 for dynarec-outgoing; Fri, 26 May 2000 12:14:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" In-Reply-To: <200005260903.LAA13032@pons.ac.upc.es> Message-ID: <0003688a7586011a_mailit@mail.dynarec.com> References: <200005260903.LAA13032@pons.ac.upc.es> Date: Fri, 26 May 2000 21:20:16 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Someone is calling it RISC? I think is more CISC than a x86. ;) According to one author you have to interpret the acronym as "Reduced Instruction Set Complexity" then... >The mnemonics are really a bit unreadable for a guy who only has worked >with x86. I new some RISC processors before and even I had problem in the beginning. Now I know what "subfic" means, but I still don't like those strange rotation instructions. >Well I started only two months ago and I don't know about other architectures >than x86 so you will see me making more mistakes like that. ;) My problem is that I took a look at so many instruction sets that I mix them sometimes... >I think I don't understand that. You mean build from a source to VIP >translator a source to target translator with some kind of automatic tool? Right, although it doesn't have to be a VIP, it could also be some kinf od semantic description. >In a normal VIP you make two translations: source code to VIP and VIP to >target code. This implies (theorically) a double overhead. Agreed. >The VIP can also be interpreted if you haven't implemented the target layer That's the nice side-effect. >(as the people of Ardi does). Actually they use threaded code and not a VIP. They only use Syn68 during compile time. >Where are the optimizations done? In the source layer you could >do machine independant optimizations, and in the target layer machine >dependant optimizations. Yes. >I think the best VIP could be somelike as a RISC >ISA, making it as simple as you can. Mainly all common operations >(add,sub,mul, etc), simple load and store instructions and a large >number of virtual registers. That's what I thought at first. But that way translations from source to VIP can be very complex even for RISC processors, just think of PowerPC or PA- RISC. And without very sophisticated optimisation algorithms the target code will be very sub-optimal. >The problem is ever the overhead of two translations. If the VIP could be >handled as an intermediate representation (IR) like in compilers ... >Something like a three-address code. If I were to ue a VIP it surely would be as IR only! >The problem is to know if it would be faster >or not than an interpreter. Isn't that always the problem? >The source to VIP layer could work with templates generating a fast >non-optimized translation. Perhaps then optimizing the VIP code. In >the VIP to target layer you don't use templates but somekind of >code analysis to generate good code. I don't know, perhaps this also >should be studied. This is the main problems too many question and few >answers. ;) Another problem is that we get too many hiding places for bugs... >Inspiring, really? :) Yes, honestly! >Well, It makes me happy be useful. ;) I still think that you can be very helpful for dynarec.com, even if that only means that you check our theories and ask the right questions! But I bet we can something more productive for you... >Victor Moya -- M.I.K.e Parsley is gharsley. -- Ogden Nash --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 29 00:43:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA38828 for dynarec-outgoing; Mon, 29 May 2000 00:42:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200005290745.JAA06555@pons.ac.upc.es> Subject: Re: DYNAREC: DRFAQ In-Reply-To: <0003688a7586011a_mailit@mail.dynarec.com> "from M.I.K.e at May 26, 2000 09:20:16 pm" To: dynarec@dynarec.com Date: Mon, 29 May 2000 09:45:25 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > My problem is that I took a look at so many instruction sets that I mix them > sometimes... > My problem is I don't know enough ;) > That's what I thought at first. But that way translations from source to VIP > can be very complex even for RISC processors, just think of PowerPC or PA- > RISC. And without very sophisticated optimisation algorithms the target code > will be very sub-optimal. > I haven't thought about it so many time as you but I can't agree with making a complex VIP. I think is better to make a simple VIP and handle the problems you would find with it. Making a complex VIP will become in a VIP too complex, difficult to implement and with a lot of other problems, if it has features for all the architectures. And if it has features only for an special architecture it will be architecture dependant and this is against the purpose of using a VIP. I think the best way is to build a VIP as simple as we can but supporting all the usual features of all architectures (a kind of virtual REAL! RISC architecture) and then let the source and target layer handle the problems in the translation. It's sure it will be ever slower than a well-done machine specific dynarec but a complex VIP wouldn't help us with this. > > Another problem is that we get too many hiding places for bugs... > Well another reason for use a simple VIP. And the source layer is reused any port will have to work with the target layer. > >Well, It makes me happy be useful. ;) > > I still think that you can be very helpful for dynarec.com, even if that only > means that you check our theories and ask the right questions! But I bet we > can something more productive for you... > Well, next week I have two final exams so this week and next I won't have time to do nothing. But I will have a lot of time in the next weeks and I plan to start working in my final university project and spend some time working in things related to the dynarec list. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 29 05:06:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA39211 for dynarec-outgoing; Mon, 29 May 2000 05:06:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" In-Reply-To: <200005290745.JAA06555@pons.ac.upc.es> Message-ID: <000368c0d42dbe3d_mailit@mail.dynarec.com> References: <200005290745.JAA06555@pons.ac.upc.es> Date: Mon, 29 May 2000 14:12:12 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >My problem is I don't know enough ;) This might be the reason why you think that a simple VIP would be good. I thought that too some time ago, but after having studied so many architectures I'm not so sure anymore. >I haven't thought about it so many time as you but I can't agree with making >a complex VIP. A complex VIP is bad as well since no-one would use it. You'd just have too much to implement on the target platform, so nobody would port it. >I think is better to make a simple VIP and handle the >problems you would find with it. Then you end up with a large amount of VIP "code" which might be hard to optimise on the target platform even if source and target processors are identical. >Making a complex VIP will become in a >VIP too complex, difficult to implement and with a lot of other problems, if >it has features for all the architectures. That's why a good compromise would be needed, but I don't think that one person alone can decide on such a compromise. >And if it has features only >for an special architecture it will be architecture dependant and this is >against the purpose of using a VIP. Yeah, but what about BCD instructions? Would you add these? Maybe not, because they aren't that common anymore. But when both processors involved have BCD instructions very bad code would be produced on the host because the VIP would be using workarounds and the target translator couldn't identify these as BCD operations. On the other hand, when you include BCD operations in the VIP then it's harder to port to most newer architectures apart from IA-32 and PA-RISC. This is just one small example and there would be even more questions to decide on... >I think the best way is to build a >VIP as simple as we can but supporting all the usual features of all >architectures (a kind of virtual REAL! RISC architecture) That was my original idea with the goal that a translation with the same processor on both sides via a VIP should lead to the target code being very similar as the source code. It even seems to be possible when you take a look at RISC architecture surveys like the one done by Hennessy and Patterson. But the problem is that those surveys don't cover the exotic stuff and it gets very complicated when you think of some PowerPC instructions, the BCD and other stuff in PA-RISC, the VAX compatibility of Alpha, just to name a few. >and then let the >source and target layer handle the problems in the translation. It's sure >it will be ever slower than a well-done machine specific dynarec but >a complex VIP wouldn't help us with this. I'm not sure if a simple VIP helps... E.g. which logical instructions do you want to include: and, or, not? What about xor, nor, bic, equ, ... ? Don't get me wrong, I'm not criticizing you. It's just that I was very fond of the VIP idea myself and then ran into a wall of problems. >Victor Moya -- M.I.K.e Never try to outstubborn a cat. -- Lazarus Long, "Time Enough for Love" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 29 10:58:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA39605 for dynarec-outgoing; Mon, 29 May 2000 10:58:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 29 May 2000 11:07:27 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: DRFAQ In-Reply-To: <000368c0d42dbe3d_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >My problem is I don't know enough ;) > This might be the reason why you think that a simple VIP would be good. I > thought that too some time ago, but after having studied so many > architectures I'm not so sure anymore. Forgive me... what's a VIP? Virtual Intermediate Processor? -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 29 11:47:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA39670 for dynarec-outgoing; Mon, 29 May 2000 11:47:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" In-Reply-To: Message-ID: <000368c6698f895c_mailit@mail.dynarec.com> References: Date: Mon, 29 May 2000 20:51:53 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Forgive me... Yeah, I'll forgive you that you haven't read the FAQ yet ;-) >what's a VIP? Virtual Intermediate Processor? But you certainly are very good at guessing! BTW, when we were walking around in Erlangen yesterday Neil told me that he wants to reuse your photo from the Retrocade pages for Dynarec.com and adding the caption: "He's the sane one!" I think that's a great idea ;-) >-->Neil -- M.I.K.e "The bland leadeth the bland and they both shall fall into the kitsch." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 29 12:20:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA39719 for dynarec-outgoing; Mon, 29 May 2000 12:20:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 29 May 2000 12:29:33 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: DRFAQ In-Reply-To: <000368c6698f895c_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >what's a VIP? Virtual Intermediate Processor? > But you certainly are very good at guessing! Is that really what it is? > BTW, when we were walking around in Erlangen yesterday Neil told me that he > wants to reuse your photo from the Retrocade pages for Dynarec.com and adding > the caption: "He's the sane one!" You might say "He's the most sane of the group!". ;-) I can give you new pictures if you'd like... -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 29 12:30:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA39740 for dynarec-outgoing; Mon, 29 May 2000 12:30:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" In-Reply-To: Message-ID: <000368c70aa90f3f_mailit@mail.dynarec.com> References: Date: Mon, 29 May 2000 21:36:56 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> >what's a VIP? Virtual Intermediate Processor? >Is that really what it is? Yes, I came up with that term and acronym some time ago so I might not be an official one. >You might say "He's the most sane of the group!". ;-) I can give you new >pictures if you'd like... Only if these are as ... "exceptional" as the one on Retrocade otherwise the effect wouldn't be the same ;-) I already guessed that you'd like that idea ;-) >-->Neil -- M.I.K.e The cost of living hasn't affected its popularity. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 29 14:23:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA39876 for dynarec-outgoing; Mon, 29 May 2000 14:23:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005301bfc9bc$eb8108c0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: DRFAQ Date: Mon, 29 May 2000 23:26:18 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > BTW, when we were walking around in Erlangen yesterday Neil told me that he > > wants to reuse your photo from the Retrocade pages for Dynarec.com and adding > > the caption: "He's the sane one!" > > You might say "He's the most sane of the group!". ;-) I can give you new > pictures if you'd like... The scary thing is how near you are to what I actually said. I was thinking about the picture from Retrocade and told Mike that I thought I should take that picture, add it to the "About us" section and write (next to the picture) "This is Neil Bradley. He's the sane one from our group." - I can't believe how close you are! :o New pictures might be good. I suppose I should get a good one of me too. It's always good to scare more people. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 29 14:38:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA39906 for dynarec-outgoing; Mon, 29 May 2000 14:37:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" In-Reply-To: <005301bfc9bc$eb8108c0$0100a8c0@lion> Message-ID: <000368c8d05535f7_mailit@mail.dynarec.com> References: <005301bfc9bc$eb8108c0$0100a8c0@lion> Date: Mon, 29 May 2000 23:43:48 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >New pictures might be good. I suppose I should get a good one of me too. >It's always good to scare more people. :)) I think that's true now that I know you in real life ;-) >Neil. -- M.I.K.e Hire the morally handicapped. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 29 23:14:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA40379 for dynarec-outgoing; Mon, 29 May 2000 23:14:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39335C7E.F30DF357@eurocopter.de> Date: Tue, 30 May 2000 08:15:26 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: DRFAQ References: <005301bfc9bc$eb8108c0$0100a8c0@lion> <000368c8d05535f7_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I think that's true now that I know you in real life ;-) Hey! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 30 02:28:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA40689 for dynarec-outgoing; Tue, 30 May 2000 02:28:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" In-Reply-To: <39335C7E.F30DF357@eurocopter.de> Message-ID: <000368d294af1b38_mailit@mail.dynarec.com> References: <005301bfc9bc$eb8108c0$0100a8c0@lion> <000368c8d05535f7_mailit@mail.dynarec.com> <39335C7E.F30DF357@eurocopter.de> Date: Tue, 30 May 2000 11:22:57 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Hey! ;) So, what did you expect? Oops, I forgot that you train jiu-jitsu now - AHHRG! >Neil. -- M.I.K.e Hacking's just another word for nothing left to kludge. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 30 14:26:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA41492 for dynarec-outgoing; Tue, 30 May 2000 14:26:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006701bfca86$7c854380$0100a8c0@lion> From: "Neil Griffiths" To: References: <005301bfc9bc$eb8108c0$0100a8c0@lion> <000368c8d05535f7_mailit@mail.dynarec.com> <39335C7E.F30DF357@eurocopter.de> <000368d294af1b38_mailit@mail.dynarec.com> Subject: Re: DYNAREC: DRFAQ Date: Tue, 30 May 2000 23:29:11 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > So, what did you expect? > Oops, I forgot that you train jiu-jitsu now - AHHRG! Yeah, I've been there tonight. And although I suspected it before, I think tomorrow I'll have the proof that women are more violent than men. My god, I'll have bruises tomorrow. If I can walk... :o Mind you, I now have a date set up to meet two girls, so it was quite a good night really. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 30 23:33:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA41950 for dynarec-outgoing; Tue, 30 May 2000 23:33:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200005310635.IAA13634@pons.ac.upc.es> Subject: Re: DYNAREC: DRFAQ In-Reply-To: <000368c0d42dbe3d_mailit@mail.dynarec.com> "from M.I.K.e at May 29, 2000 02:12:12 pm" To: dynarec@dynarec.com Date: Wed, 31 May 2000 08:35:47 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I haven't thought about it so many time as you but I can't agree with making > >a complex VIP. > > A complex VIP is bad as well since no-one would use it. You'd just have too > much to implement on the target platform, so nobody would port it. > Another point against a complex VIP. ;) > >I think is better to make a simple VIP and handle the > >problems you would find with it. > > Then you end up with a large amount of VIP "code" which might be hard to > optimise on the target platform even if source and target processors are > identical. > But a real compiler works that way. An IR isn't a complex VIP. Perhaps we couldn't make so many optimizations than in a real compiler but this ever happens in all dynarec. > >Making a complex VIP will become in a > >VIP too complex, difficult to implement and with a lot of other problems, if > >it has features for all the architectures. > > That's why a good compromise would be needed, but I don't think that one > person alone can decide on such a compromise. > Compromise? Well I think a RISC basic VIP and perhaps a few more very common instructions. But only add instructions that are simple and not add complex instructions. > >And if it has features only > >for an special architecture it will be architecture dependant and this is > >against the purpose of using a VIP. > > Yeah, but what about BCD instructions? Would you add these? Maybe not, > because they aren't that common anymore. But when both processors involved > have BCD instructions very bad code would be produced on the host because the > VIP would be using workarounds and the target translator couldn't identify > these as BCD operations. Well the same problem happens in a common dynarec when translating from Z80 code to x86 code. The Z80 doesn't have a MUL instruction and multiplications are performed with shifts, adds and loops. If you could know that a block of code is a multiplication you could use a x86 MUL instruction, but this is nearly imposible for a common compiler and still harder for a dynarec. You can never produce the better code with a dynarec. And it isn't the purpose of a dynarec. A dynarec translate on the fly native code to target code to provide a fast emulation. > On the other hand, when you include BCD operations in the VIP then it's > harder to port to most newer architectures apart from IA-32 and PA-RISC. > This is just one small example and there would be even more questions to > decide on... > Perhaps a few, but a very few, of special instruction could be added. Only the ones more simple and most common. You can't add a SIMD or MMX kind instruction. > >I think the best way is to build a > >VIP as simple as we can but supporting all the usual features of all > >architectures (a kind of virtual REAL! RISC architecture) > > That was my original idea with the goal that a translation with the same > processor on both sides via a VIP should lead to the target code being very > similar as the source code. It even seems to be possible when you take a look > at RISC architecture surveys like the one done by Hennessy and Patterson. But > the problem is that those surveys don't cover the exotic stuff and it gets > very complicated when you think of some PowerPC instructions, the BCD and > other stuff in PA-RISC, the VAX compatibility of Alpha, just to name a few. > Well. I think in a VIP as an extension of a IR (Intermediate Representation). We have to study what kind of IR there are. Are they really so complex or are they simple? I think we have to follow the way a real compiler analyses the code and builds an IR and produces real code from this IR. In a dynarec perhaps you can't do so many analysis but in fact you don't want that a dynarec produces as good code as a real compiler. > >and then let the > >source and target layer handle the problems in the translation. It's sure > >it will be ever slower than a well-done machine specific dynarec but > >a complex VIP wouldn't help us with this. > > I'm not sure if a simple VIP helps... > E.g. which logical instructions do you want to include: and, or, not? > What about xor, nor, bic, equ, ... ? > Well, the same it has the x86: and, or, not, xor. I think they are the most common. Xor can be implemented with or,and,not and OR can be implemented with and and not, but as I think a lot of CPUs already have those instructions it's silly. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 03:45:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA42319 for dynarec-outgoing; Wed, 31 May 2000 03:45:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" In-Reply-To: <200005310635.IAA13634@pons.ac.upc.es> Message-ID: <000368e7f02353b3_mailit@mail.dynarec.com> References: <200005310635.IAA13634@pons.ac.upc.es> Date: Wed, 31 May 2000 12:51:45 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Another point against a complex VIP. ;) Indeed, but it also won't be used when it's too simply and therefore makes the source to VIP translator too complicated... That seems to be a vicious cricle... >But a real compiler works that way. An IR isn't a complex VIP. But compilers don't have to cover things like BCD (at least if it's not Cobol) or have to deal with condition flags in the IR. >Compromise? Well I think a RISC basic VIP and perhaps a few more very >common instructions. But only add instructions that are simple and not add >complex instructions. So what is too complex and what isn't? That's very hard to decide, believe me. >Well the same problem happens in a common dynarec when translating from >Z80 code to x86 code. The Z80 doesn't have a MUL instruction and >multiplications are performed with shifts, adds and loops. If you could >know that a block of code is a multiplication you could use a x86 MUL >instruction, but this is nearly imposible for a common compiler and >still harder for a dynarec. You can never produce the better code >with a dynarec. And it isn't the purpose of a dynarec. A dynarec >translate on the fly native code to target code to provide a fast >emulation. That's actually a different problem. What I mean is when you use DAA in Z80 you won't be able to simply use DAA in x86 since it wouldn't be supported in a simple VIP. Another example: Would you include division or not? I know of at least two architectures which have no interger division at all, Alpha and ARM. If you want to include it, how should it work? Some processors calculate the division result and the remainder at the same time (e.g. MIPS). The PowerPC on the other hand doesn't calculate the remainder and doesn't even have an instruction to do that, so it needs a multiplication and a subtraction to compute the remainder. Some architectures (like PA-RISC, SuperH, TriCore) don't have one division instruction but compute the result in several smaller steps. How to find a common ground for all this? Should the VIP include FP or not? >Perhaps a few, but a very few, of special instruction could be added. Only >the ones more simple and most common. You can't add a SIMD or MMX kind >instruction. The main problem is really where to stop while selecting instructions that should be included... >Well, the same it has the x86: and, or, not, xor. I think they are the >most common. Xor can be implemented with or,and,not and OR can be >implemented >with and and not, but as I think a lot of CPUs already have those >instructions it's silly. I think it's not so silly since you often have combinations of logical instructions in the code and combining them would help to produce better code on the target processor without having to do that with the peephole optimiser. Don't count on x86 having the common list of instructions since it only has two address code. In three address code this can be totally different, e.g. there often is no NOT since it can be done by NOR. Here are the logical instructions in some of the other architectues: * ARM: - and - eor (= xor) - or - bic (= and not) - mvn (= not) * Alpha - and - bis (= or) - xor - bic (= and not) - ornot - eqv (= not xor) * PowerPC - and - andc (= and not) - eqv (= not xor) - nand (= not and) - nor (= not or) - or - orc (= or not, or a goblin ;-) - xor * MIPS - and - or - xor - nor This is quite a long list and apart from some strange instructions of the PowerPC everything else is covered at least twice and there are several which are not available in IA-32... So which should be included and which not? I really *did* some research on that topic... >Victor Moya -- M.I.K.e Mr. Cole's Axiom: The sum of the intelligence on the planet is a constant; the population is growing. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 04:47:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA42390 for dynarec-outgoing; Wed, 31 May 2000 04:47:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200005311149.NAA16303@pons.ac.upc.es> Subject: Re: DYNAREC: DRFAQ In-Reply-To: <000368e7f02353b3_mailit@mail.dynarec.com> "from M.I.K.e at May 31, 2000 12:51:45 pm" To: dynarec@dynarec.com Date: Wed, 31 May 2000 13:49:22 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >But a real compiler works that way. An IR isn't a complex VIP. > > But compilers don't have to cover things like BCD (at least if it's not > Cobol) or have to deal with condition flags in the IR. > But when they translate from IR to machine code they must work with condition flags and they must decide if using BDC instructions. Perhaps it isn't the best way, but a simple RISC could be understood as a degeneration of the machine code, returning to IR the real compiler made. Well, this is a bit unbeliable ;) > >Compromise? Well I think a RISC basic VIP and perhaps a few more very > >common instructions. But only add instructions that are simple and not add > >complex instructions. > > So what is too complex and what isn't? That's very hard to decide, believe > me. > Too complex are some kind of polynomic instructions I have heared about VAX ;) Well too complex is something than in all common architectures will be too hard to implement. Too hard to implement means, oh, well, ... it doesn't matter ... > > That's actually a different problem. What I mean is when you use DAA in Z80 > you won't be able to simply use DAA in x86 since it wouldn't be supported in > a simple VIP. > Well It's reasonable that when you use a VIP or IR you lose a bit of information. It's inside the nature of a VIP, you have to work with that problem. And I think it isn't so problematic. > Another example: Would you include division or not? I know of at least two > architectures which have no interger division at all, Alpha and ARM. > If you want to include it, how should it work? Some processors calculate the > division result and the remainder at the same time (e.g. MIPS). The PowerPC > on the other hand doesn't calculate the remainder and doesn't even have an > instruction to do that, so it needs a multiplication and a subtraction to > compute the remainder. Some architectures (like PA-RISC, SuperH, TriCore) > don't have one division instruction but compute the result in several smaller > steps. > How to find a common ground for all this? > Minimum common divisor ;) The most similar common choice. What are the most used architectures and what kind of implementation they have. The choice should be the easier to implement for the most common ISAs and perhaps it isn't so hard for all others. > Should the VIP include FP or not? > FP is a real problem because I think there isn't a unique standard for FP representation. Converting between representations could be really expensive. Well if you want to emulate FP you need some FP. And at this stage a lot of CPUs have FP. This remember another problem: big endian vs little endian. You support only one or you sopport both. > >Well, the same it has the x86: and, or, not, xor. I think they are the > >most common. Xor can be implemented with or,and,not and OR can be > >implemented > >with and and not, but as I think a lot of CPUs already have those > >instructions it's silly. > > I think it's not so silly since you often have combinations of logical > instructions in the code and combining them would help to produce better code > on the target processor without having to do that with the peephole > optimiser. But in fact when using a VIP what you are doing is a trade between performance and portability. Try to build a VIP based dynarec as fast as a normal dynarec is impossible. You don't want the best translated code possible but the best you can get manteining portability. > - orc (= or not, or a goblin ;-) It's a goblin the same as an orc? > This is quite a long list and apart from some strange instructions of the > PowerPC everything else is covered at least twice and there are several which > are not available in IA-32... > So which should be included and which not? > I saied: MCD. ;) Perhaps the problem is the kind of VIP you are thinking is too big as a concept to be real. A VIP for ALL the existing ISAs, perhaps it's a good idea but a more practical idea could be a VIP for the ISAs with I will want to working. And of course, in those kind of problems my solution is to make work the VIP to target translator/compiler. If it can't handle all the work it doesn't matter, the translation will be a bit (or a lot) worst, but it is the price for portability. Making the VIP artificially complex is moving the problem from the VIP to target module, where I think it must be handled, and creating new problems in the VIP design (an perhaps without resolving all the problems form the VIP to target module). > I really *did* some research on that topic... > I know, I know :) But the discussion helps me to learn about that topic. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 05:18:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA42438 for dynarec-outgoing; Wed, 31 May 2000 05:18:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <393502F3.2F8A2EBD@eurocopter.de> Date: Wed, 31 May 2000 14:17:55 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: DRFAQ References: <200005311149.NAA16303@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > - orc (= or not, or a goblin ;-) > It's a goblin the same as an orc? No. Someone with a greater imagination than I may be able to tell you the exact definition of one or the other. But basically, an orc is a big bugger - and a goblin is a small bugger. Er... orc = big thing, goblin = small thing. --- I was going to add more to this topic but I haven't got time at the moment so I've just cut it. Does anyone else think that what you're talking about is remarkably similar to the way in which Java does it? I know that I do. :) > > I really *did* some research on that topic... > > > I know, I know :) But the discussion helps me to learn about that topic. I also did research on this for a research paper I had to write last year - about the JVM. It sounds remarkably similar in fact. It also doesn't sound too different to what the Pentium (and above) processors do when converting CISC -> RISC - but I could be wrong here... Anyway, if you don't hear from me again today then you won't until Monday now. I'm off to Prague at some unholy hour tomorrow morning and I won't be back until Sunday. And you won't be getting any dinner if you don't write a dynarec core by Sunday! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 05:43:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA42476 for dynarec-outgoing; Wed, 31 May 2000 05:43:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 31 May 2000 13:50:48 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: DRFAQ Message-ID: <20000531135047.A815@boris.quns.cam.ac.uk> References: <000368e7f02353b3_mailit@mail.dynarec.com> <200005311149.NAA16303@pons.ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: <200005311149.NAA16303@pons.ac.upc.es>; from Victor Moya del Barrio on Wed, May 31, 2000 at 01:49:22PM +0200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, May 31, 2000 at 01:49:22PM +0200, Victor Moya del Barrio wrote: > > > Should the VIP include FP or not? > > > FP is a real problem because I think there isn't a unique standard > for FP representation. Converting between representations could be > really expensive. Well if you want to emulate FP you need some FP. > And at this stage a lot of CPUs have FP. > This remember another problem: big endian vs little endian. You support > only one or you sopport both. FP - something I know a tiny bit about, for a change! :-) FP is, or at least should be, fairly standard for 'most' processors - the standards in question are IEEE 754 (and 854) iirc. At least the x86 and ARM (software emulated most of the time) both claim to adhere to it to some extent... can't say about other RISC chips. From what I remember of various courses, old IBM mainframes and Cray supercomputers used a different FP representation. I think if I were to rewrite any of my dynarec (which I might, or might not, depends how I feel after exams), I'd change my VIP code slightly. I stuck to mostly simplified versions of ARM instructions (that being my source processor), rewritten as a kind of register transfer language with side-effect information added. I think a cleaner way of doing things might have been to use an explicit predicate buffer a bit like IA-64, and not rely on the implicit ordering of instructions to handle condition codes, etc. As it was, the conversion from source code to intermediate code was fairly easy, that change though would make things slightly more complicated. But I'm supposed to be revising, so I'm not going to think too hard about it... Oh yeah, something else: I was tempted originally to try to keep my intermediate code as simple (few instructions) as possible. That is, rather than having an "add-with-carry" instruction, r0 = adc(r1,r2,carry_flag) split to two instructions like: r0 = add(r1,r2) r0 = add(r0,carry_flag) even though my destination processor had a real ADC instruction. As it turned out I didn't do that and added the ADC instruction to the intermediate code, just because everything was kept simpler that way. Oh yeah, and I couldn't decide what to do with the condition codes set by the original instruction if I split it in half. Maybe that's relevent to what you're doing, I'm not sure... See you, Jules -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 05:52:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA42497 for dynarec-outgoing; Wed, 31 May 2000 05:52:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" In-Reply-To: <200005311149.NAA16303@pons.ac.upc.es> Message-ID: <000368e9908a5465_mailit@mail.dynarec.com> References: <200005311149.NAA16303@pons.ac.upc.es> Date: Wed, 31 May 2000 14:48:11 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >But when they translate from IR to machine code they must work with >condition flags and they must decide if using BDC instructions. But only in translations from IR to target machine code and not from source code to IR, as would be the case in a VIP. >Too complex are some kind of polynomic instructions I have heared about >VAX ;) Well, I don't want to have any Cray-like vector operations as well ;-) >Well It's reasonable that when you use a VIP or IR you lose a bit of >information. It's inside the nature of a VIP, you have to work with that >problem. And I think it isn't so problematic. It would be ok when translating code which only was generated by compilers, but we are not talking about very clean code but emulation of programs hacked by geeks. >Minimum common divisor ;) I think the right term is "smallest common divisor", but I could be wrong. At least I know what you mean. >The most similar common choice. What are the >most used architectures and what kind of implementation they have. The >choice should be the easier to implement for the most common ISAs and perhaps >it isn't so hard for all others. But what is the "smallest common divisor"? The architectures don't even agree which condition flags they should have or if any! I took a look at over a dozen architectures and I haven't found a SCD yet... To be honest, I don't think that a VIP designed by me would have any condition flags at all! >FP is a real problem because I think there isn't a unique standard >for FP representation. Converting between representations could be >really expensive. I think most of the architectures have the IEEE standard now, but since we are nostalgic beings we have to consider the problem of incompatible FP formats as well... Another problem is that the format might be the same but the precision could be different, which sometimes leads to different results as well. >Well if you want to emulate FP you need some FP. >And at this stage a lot of CPUs have FP. That's the problem! And I have to admit that I always skipped the FP chapter in all my books so far, so I still have to do some research on that topic... >This remember another problem: big endian vs little endian. You support >only one or you sopport both. Both of course. Since we both agree on the idea of having a RISC-like VIP we'd have a load/store architecture as well. There surely need to be instructions which specify if the memory access is little- or big-endian. Immediates should be pre-converted anyway. The question is which side should handle the conversions, the source or the target? Also the arithmetic operations need to be available in different widths since you cannot know which width the target processor will have. This differs a bit from the RISC ISA since those normally have operations which cover the whole register only. >But in fact when using a VIP what you are doing is a trade between >performance and portability. Try to build a VIP based dynarec as >fast as a normal dynarec is impossible. You don't want the best translated >code possible but the best you can get manteining portability. Agreed, but it should be tried to get as much performance as possible anyway. >It's a goblin the same as an orc? Quoted from The Hobbit: "'Orc' is not an English word. It occurs in or two places but is usually translated 'goblin' (or 'hobgoblin' for the larger kinds). 'Orc' is the hobbits' form of the name at that time to these creatures..." So 'orc' and 'goblin' are synonymous, at least according to Tolkien himself. >Perhaps the problem is the kind of VIP you are thinking >is too big as a concept to be real. A VIP for ALL the existing ISAs, >perhaps it's a good idea but a more practical idea could be a VIP for the >ISAs with I will want to working. The work needed to develop a VIP is only worth it when the VIP can be used for as many architectures as possible, otherwise it would be easier to do direct translations. If you want to limit it to certain architectures you have the next question, which architectures should be considered? >And of course, in those kind of problems my solution is to make work the >VIP to target translator/compiler. I still haven't spend too much thought on my original idea, but it might be worth it... >I know, I know :) But the discussion helps me to learn about that topic. And it helps me to understand why I originally dropped the idea of having a VIP which I enjoyed for so long... >Victor Moya -- M.I.K.e Old age is the most unexpected of things that can happen to a man. -- Trotsky --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 08:08:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA42665 for dynarec-outgoing; Wed, 31 May 2000 08:08:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39352A2C.73B8C67B@eurocopter.de> Date: Wed, 31 May 2000 17:05:16 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: DRFAQ References: <200005311149.NAA16303@pons.ac.upc.es> <000368e9908a5465_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > "'Orc' is not an English word. It occurs in or two places but is usually > translated 'goblin' (or 'hobgoblin' for the larger kinds). 'Orc' is the > hobbits' form of the name at that time to these creatures..." > So 'orc' and 'goblin' are synonymous, at least according to Tolkien himself. Okay. But in all fantasy since Tolkien they are in fact different races - with completely different characteristics. Like orc's being big. And goblin's being small. Anyway, on this happy note, I shall be leaving you. Unless I decide to check my mail before I leave then I shall bid you all a farewell until next Monday! Have fun! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 10:55:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA42858 for dynarec-outgoing; Wed, 31 May 2000 10:55:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 31 May 2000 18:58:18 +0100 (BST) From: Kieron Wilkinson To: dynarec@dynarec.com Subject: Re: DYNAREC: DRFAQ In-Reply-To: <393502F3.2F8A2EBD@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I was going to add more to this topic but I haven't got time at the moment > so I've just cut it. Does anyone else think that what you're talking about > is remarkably similar to the way in which Java does it? I know that I do. > :) Actually, yes. I was going to say something about the JVM but the decided not to, but now seeing your message Neil I was going to say it again, but I can't think strait now after two finals in one day. Basically, I was going to say that I thought it seemed familier. Perhaps looking how the JVM works would be a good starting point? Perhaps even using Java bytecodes as the VIP instructions? Or is Java a bit too "new processor" centric and would not be able to handle things like the Z80 and CPUs with non IEEE FP's? I just thought that seeing as Sun worked it, perhaps this is a good way to go.... ? -- Kieron. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 11:19:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA42894 for dynarec-outgoing; Wed, 31 May 2000 11:19:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 31 May 2000 19:27:30 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: DRFAQ Message-ID: <20000531192730.A1243@boris.quns.cam.ac.uk> References: <393502F3.2F8A2EBD@eurocopter.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: ; from Kieron Wilkinson on Wed, May 31, 2000 at 06:58:18PM +0100 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, May 31, 2000 at 06:58:18PM +0100, Kieron Wilkinson wrote: > > > I was going to add more to this topic but I haven't got time at the moment > > so I've just cut it. Does anyone else think that what you're talking about > > is remarkably similar to the way in which Java does it? I know that I do. > > :) > > Actually, yes. I was going to say something about the JVM but the decided > not to, but now seeing your message Neil I was going to say it again, but > I can't think strait now after two finals in one day. > > Basically, I was going to say that I thought it seemed familier. Perhaps > looking how the JVM works would be a good starting point? Perhaps even > using Java bytecodes as the VIP instructions? Umm... people who know more about this than me tell me the Java JVM is broken in that it's stack-based, whereas a register-based VM would usually be more efficient (it's hard to do any sort of optimisation on a stack-based processor apparently). Plus, the JVM doesn't let you do things at a low enough level to be useful in a dynarec environment AFAIK. Something which might be more useful is to look at the VIP code used by TAOS/Elate, though I don't know if any information is publically available. From a document I read about it years ago, it's 'similar' to ARM code, though I guess that's subjective. Jules -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 11:32:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA42918 for dynarec-outgoing; Wed, 31 May 2000 11:32:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 31 May 2000 19:35:18 +0100 (BST) From: Kieron Wilkinson To: dynarec@dynarec.com Subject: Re: DYNAREC: DRFAQ In-Reply-To: <20000531192730.A1243@boris.quns.cam.ac.uk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Umm... people who know more about this than me tell me the Java JVM is > broken in that it's stack-based, whereas a register-based VM would usually > be more efficient (it's hard to do any sort of optimisation on a > stack-based processor apparently). Plus, the JVM doesn't let you do things > at a low enough level to be useful in a dynarec environment AFAIK. Oh really? Okay, I didn't know that. Okay how about the JVM in Java 1.3 - HotSpot. This uses Dynamic Compilation. -- Kieron. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 11:43:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA42939 for dynarec-outgoing; Wed, 31 May 2000 11:43:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 31 May 2000 19:51:31 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: DRFAQ Message-ID: <20000531195130.A1283@boris.quns.cam.ac.uk> References: <20000531192730.A1243@boris.quns.cam.ac.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: ; from Kieron Wilkinson on Wed, May 31, 2000 at 07:35:18PM +0100 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, May 31, 2000 at 07:35:18PM +0100, Kieron Wilkinson wrote: > > > Umm... people who know more about this than me tell me the Java JVM is > > broken in that it's stack-based, whereas a register-based VM would usually > > be more efficient (it's hard to do any sort of optimisation on a > > stack-based processor apparently). Plus, the JVM doesn't let you do things > > at a low enough level to be useful in a dynarec environment AFAIK. > > Oh really? Okay, I didn't know that. > > Okay how about the JVM in Java 1.3 - HotSpot. > > This uses Dynamic Compilation. I don't deny it's possible - but then, HotSpot starts out with Java code, yeah? I'm only half paying attention though, were you talking about using JVM code as an intermediate representation for other dynamic recompilers, or just about making JVMs go at a reasonable speed using dynarec? I think the latter is probably doomed to failure actually, since my impression of Java was that it forced you into programming in an inefficient way. It's been a while since I programmed in it though, so I can't really remember why I came to that conclusion... Jules -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 12:53:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA43022 for dynarec-outgoing; Wed, 31 May 2000 12:53:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00b901bfcb3a$cdf6aba0$c8128cd4@daves> From: "David Sharp" To: References: Subject: RE: JVM, was (DYNAREC: DRFAQ) Date: Wed, 31 May 2000 19:56:44 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Basically, I was going to say that I thought it seemed familier. Perhaps > looking how the JVM works would be a good starting point? Perhaps even > using Java bytecodes as the VIP instructions? NOOOoooo! (possibly not the best way to start my first posting to a mailing list but...) JVM is a bit uselss for our purposes as far as the instruction set design is concerned; * non-orthogonal and limited instruction set * stack-based design so no registers * either very complex or very basic instructions (newarray, monitorenter/exit) * kind of OO-based and works with objects etc. etc. > Or is Java a bit too "new processor" centric and would not be able to > handle things like the Z80 and CPUs with non IEEE FP's? Everything included in JVM conforms to IEEE 754 (which is apparently FP comparisons or something). > I just thought that seeing as Sun worked it, perhaps this is a good way to > go.... It was a fair assumption and java is very very cool, unfortunately the JVM's not designed for our needs. Has anyone looked at Mite (Mike had the URL, I seem to have lost it) or the Transmeta instruction set? Just to introduce myself, I'm not full of this sort of information, I've just stopped researching a VM type 3rd year project in favour of a dynarec one. :o) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 14:33:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA43141 for dynarec-outgoing; Wed, 31 May 2000 14:33:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: RE: JVM, was (DYNAREC: DRFAQ) From: "M.I.K.e" In-Reply-To: <00b901bfcb3a$cdf6aba0$c8128cd4@daves> Message-ID: <000368f0fd7fdd37_mailit@mail.dynarec.com> References: <00b901bfcb3a$cdf6aba0$c8128cd4@daves> Date: Wed, 31 May 2000 23:39:44 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >NOOOoooo! (possibly not the best way to start my first posting to a mailing >list but...) But quite typical for you ;-) >JVM is a bit uselss for our purposes as far as the instruction set design is >concerned; >* non-orthogonal and limited instruction set Absolutely correct! >* stack-based design so no registers I think there are some local variables, but I'm not really sure how these work. Anyway this doesn't change the fact that it is stack-based, as are all other VMs for programming languages, BTW. >* either very complex or very basic instructions (newarray, >monitorenter/exit) >* kind of OO-based and works with objects >etc. etc. It's long since I ditched the idea to use JVM as VIP but I bet you're right. >It was a fair assumption and java is very very cool, unfortunately the JVM's >not designed for our needs. I even doubt that it is the perfect VM for Java, or at least not that useful for JIT compiling as Sun always claimed! >Has anyone looked at Mite (Mike had the URL, I seem to have lost it) What I don't like about Mite is that Reuben still uses condition flags and I think he uses some queer register allocation stack, but it certainly no stack machine and it's quite low-level. BTW, here's the URL: http://www.cl.cam.ac.uk/users/rrt1001/research.html >or the Transmeta instruction set? They actually released some information about Crusoe's native instruction set? Where? >Dave -- M.I.K.e "He's just a politician trying to save both his faces ..." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 14:33:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA43154 for dynarec-outgoing; Wed, 31 May 2000 14:33:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" In-Reply-To: <20000531135047.A815@boris.quns.cam.ac.uk> Message-ID: <000368f087d895db_mailit@mail.dynarec.com> References: <000368e7f02353b3_mailit@mail.dynarec.com> <200005311149.NAA16303@pons.ac.upc.es> <20000531135047.A815@boris.quns.cam.ac.uk> Date: Wed, 31 May 2000 23:06:50 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >FP - something I know a tiny bit about, for a change! :-) Not that you know anything else ;-) >FP is, or at least should be, fairly standard for 'most' processors - the >standards in question are IEEE 754 (and 854) iirc. At least the x86 and >ARM (software emulated most of the time) both claim to adhere to it to >some extent... Actually x86 and ARM are very similar in using 80 bits internally while most other architectures only have the 64 bits which are necessary for double precision. >can't say about other RISC chips. From what I remember of >various courses, old IBM mainframes and Cray supercomputers used a >different FP representation. Most RISCs use IEEE754, but Alpha has some instructions for compatibility with the older VAX FP format. >I think if I were to rewrite any of my dynarec (which I might, or might >not, depends how I feel after exams), I'd change my VIP code slightly. I >stuck to mostly simplified versions of ARM instructions (that being my >source processor), rewritten as a kind of register transfer language with >side-effect information added. I think a cleaner way of doing things might >have been to use an explicit predicate buffer a bit like IA-64, and not >rely on the implicit ordering of instructions to handle condition codes, >etc. Yes, I also would eliminate everything connected to condition flags, but I think I'd use branch instructions which include the comparison of two registers. >As it was, the conversion from source code to intermediate code was fairly >easy, that change though would make things slightly more complicated. Yes, finding the right instruction which computes the bits needed in a predication could slow down things a bit. >Oh yeah, something else: I was tempted originally to try to keep my >intermediate code as simple (few instructions) as possible. That is, >rather than having an "add-with-carry" instruction, > r0 = adc(r1,r2,carry_flag) >split to two instructions like: > r0 = add(r1,r2) > r0 = add(r0,carry_flag) >even though my destination processor had a real ADC instruction. As it >turned out I didn't do that and added the ADC instruction to the >intermediate code, just because everything was kept simpler that way. Oh >yeah, and I couldn't decide what to do with the condition codes set by the >original instruction if I split it in half. >Maybe that's relevent to what you're doing, I'm not sure... It is! I thought about that case some time ago and at that time I wanted to handle add-adc-sequences by a 64-bit addition, but that might be a bit complicated to track down. Maybe dedicated instructions like in PowerPC "addc" and "adde" would be better. -- M.I.K.e Overload -- core meltdown sequence initiated. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 14:34:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA43158 for dynarec-outgoing; Wed, 31 May 2000 14:34:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" In-Reply-To: <39352A2C.73B8C67B@eurocopter.de> Message-ID: <000368f08e3c9254_mailit@mail.dynarec.com> References: <200005311149.NAA16303@pons.ac.upc.es> <000368e9908a5465_mailit@mail.dynarec.com> <39352A2C.73B8C67B@eurocopter.de> Date: Wed, 31 May 2000 23:08:37 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Okay. But in all fantasy since Tolkien they are in fact different races - >with completely different characteristics. Like orc's being big. And >goblin's being small. I think that could be to Gary Gygax needing more and more monsters for Dungeos and Dragons and thus making goblins and orcs two different types of monsters... Hey, why are we off topic again?? >Neil. -- M.I.K.e Gnagloot, n.: A person who leaves all his ski passes on his jacket just to impress people. -- Rich Hall, "Sniglets" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 14:34:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA43166 for dynarec-outgoing; Wed, 31 May 2000 14:34:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" In-Reply-To: Message-ID: <000368f0b4ec3503_mailit@mail.dynarec.com> References: Date: Wed, 31 May 2000 23:19:26 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Actually, yes. I was going to say something about the JVM but the decided >not to, but now seeing your message Neil I was going to say it again, but >I can't think strait now after two finals in one day. Oh no! >Basically, I was going to say that I thought it seemed familier. Perhaps >looking how the JVM works would be a good starting point? Perhaps even >using Java bytecodes as the VIP instructions? First of all a VIP is just hypothetical, you don't create any binary code for it. I've come up with two different methods of using it: 1. Either as an intermediate representation during runtime translation, which would be a linked list of structures, with each structure representing a VIP "instruction" with opcode and parameter fields. If you'd use a bytecode representation in that case you'd have to decode it again which isn't really what we want. 2. As some kind of assembly language in which the transalation of the source code is described. This VIP assembly can then be turned into native code generation on the target system with an automatic VIP to target translator. Also in this case there is no bytecode since we only have "assembly code" prior to compilation of the dynarec. >Or is Java a bit too "new processor" centric and would not be able to >handle things like the Z80 and CPUs with non IEEE FP's? Well, the JVM is just too high-level to be of any use for us. It doesn't have bytes and words, it has chars and ints. It's stack based (yuk!) and some other weird stuff for object handling... >I just thought that seeing as Sun worked it, perhaps this is a good way to >go.... Ok, it works, but who said it works good? ;-) >Kieron. -- M.I.K.e No man in the world has more courage than the man who can stop after eating one peanut. -- Channing Pollock --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 14:34:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA43177 for dynarec-outgoing; Wed, 31 May 2000 14:34:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" In-Reply-To: <20000531192730.A1243@boris.quns.cam.ac.uk> Message-ID: <000368f0d6e56314_mailit@mail.dynarec.com> References: <393502F3.2F8A2EBD@eurocopter.de> <20000531192730.A1243@boris.quns.cam.ac.uk> Date: Wed, 31 May 2000 23:28:56 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Umm... people who know more about this than me tell me the Java JVM is >broken in that it's stack-based, whereas a register-based VM would usually >be more efficient (it's hard to do any sort of optimisation on a >stack-based processor apparently). Did you quote me or anyone else? The main problem of the stack is that it's good for tree structures. But we don't have any trees, we have flat binary code. When we use a stack machine as a VIP we'd have to transform the source code into a tree just to flatten it out in the target code shortly later, which is slow and simply nonsense. The advantage of having many registers is that you have flat code as well and you can even do much faster register allocation. >Plus, the JVM doesn't let you do things >at a low enough level to be useful in a dynarec environment AFAIK. Indeed! >Something which might be more useful is to look at the VIP code used by >TAOS/Elate, though I don't know if any information is publically >available. I'd really like to have some information on VP and VP2, but apart from the fact that it's little-endian I didn't find out anything :-( >From a document I read about it years ago, it's 'similar' to >ARM code, though I guess that's subjective. Well, maybe we should even take a look at all that stuff because those bytecode based VIPs since they share one limitation with normal processors: due to their relatively fixed size compromises have to be made what can be encoded in one instruction. Since we'd either use it in structures or as assembly language we can do about anything we want! >Jules -- M.I.K.e Why does man kill? He kills for food. And not only food: frequently there must be a beverage. -- Woody Allen, "Without Feathers" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 14:34:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA43180 for dynarec-outgoing; Wed, 31 May 2000 14:34:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" In-Reply-To: Message-ID: <000368f0dd8f0e5c_mailit@mail.dynarec.com> References: Date: Wed, 31 May 2000 23:30:48 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Okay how about the JVM in Java 1.3 - HotSpot. >This uses Dynamic Compilation. True, but only after extensive profiling to find out which parts of the application should be compiled and how they can be optimised. And while the profiler runs only the interpreter is executing the bytecode... >Kieron. -- M.I.K.e We are confronted with insurmountable opportunities. -- Walt Kelly, "Pogo" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 14:52:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA43211 for dynarec-outgoing; Wed, 31 May 2000 14:52:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004f01bfcb4b$21fcbae0$0100a8c0@nibble> From: "Kieron Wilkinson" To: References: <00b901bfcb3a$cdf6aba0$c8128cd4@daves> Subject: Re: JVM, was (DYNAREC: DRFAQ) Date: Wed, 31 May 2000 22:56:52 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Okay okay, I get the idea. :) Java bytecode is not a good way to start. Fair enough. I have no idea about the internals of Java really, I just program in it. :) I didn't even know it was a stack system! >I don't deny it's possible - but then, HotSpot starts out with Java code, >yeah? I'm only half paying attention though, were you talking about using >JVM code as an intermediate representation for other dynamic recompilers, Yeah, that was what I was _trying_ to say. I just thought it would be a good starting point since it is so abstract. Now I realise that it is not as abstract as I thought. I thought that "in theory" you could compile any language to Java bytecode. So therefore I saw no problem with it. Ah well. Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 15:06:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA43246 for dynarec-outgoing; Wed, 31 May 2000 15:06:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 31 May 2000 23:14:13 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: JVM, was (DYNAREC: DRFAQ) Message-ID: <20000531231412.A1537@boris.quns.cam.ac.uk> References: <00b901bfcb3a$cdf6aba0$c8128cd4@daves> <004f01bfcb4b$21fcbae0$0100a8c0@nibble> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: <004f01bfcb4b$21fcbae0$0100a8c0@nibble>; from Kieron Wilkinson on Wed, May 31, 2000 at 10:56:52PM +0100 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, May 31, 2000 at 10:56:52PM +0100, Kieron Wilkinson wrote: > > Yeah, that was what I was _trying_ to say. I just thought it would be a good > starting point since it is so abstract. Now I realise that it is not as > abstract as I thought. I thought that "in theory" you could compile any > language to Java bytecode. So therefore I saw no problem with it. 'k, I'll admit it's a good idea in theory at least then... A couple of people in my year tried to write Scheme to Java bytecode compilers, one of whom hit problems early on with the bytecode not being expressive enough to represent everything he needed, the other of whom didn't do much work on the project at all and ended up with a plain Scheme interpreter in Java AFAIK. Someone else I know (a supervisor) had more luck compiling ML to Java bytecode, but that's just sick and perverse really... well, at least it's possible to compile some other languages to Java bytecode anyway. I even have a URL for that one: http://research.microsoft.com/~nick/mlj.htm Not that that's useful or related to the list, or anything. Jules -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 16:46:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA43365 for dynarec-outgoing; Wed, 31 May 2000 16:46:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002701bfcb5b$5a3ef0c0$1b128cd4@daves> From: "David Sharp" To: References: <00b901bfcb3a$cdf6aba0$c8128cd4@daves> <000368f0fd7fdd37_mailit@mail.dynarec.com> Subject: Re: JVM, was (DYNAREC: DRFAQ) Date: Thu, 1 Jun 2000 00:38:00 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > But quite typical for you ;-) :o) > They actually released some information about Crusoe's native instruction > set? Where? Oh, sorry, probably not - wishful thinking on my part. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 16:46:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA43364 for dynarec-outgoing; Wed, 31 May 2000 16:46:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002601bfcb5b$58615720$1b128cd4@daves> From: "David Sharp" To: References: <00b901bfcb3a$cdf6aba0$c8128cd4@daves> <004f01bfcb4b$21fcbae0$0100a8c0@nibble> <20000531231412.A1537@boris.quns.cam.ac.uk> Subject: Re: JVM, was (DYNAREC: DRFAQ) Date: Thu, 1 Jun 2000 00:36:22 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > luck compiling ML to Java bytecode, but that's just sick and perverse > really... well, at least it's possible to compile some other languages to > Java bytecode anyway. Yeah that weird MLj crap, one of the twisted guys in my year is planning to implement a chess program for it! As a matter of (off-topic) interest, this URL has over 130 languages implemented on the JVM, some interpreted, many compiled. http://grunge.cs.tu-berlin.de/~tolk/vmlanguages.html Getting back on track, is the mailing list of the general opinion that intermediate representations are a good thing for as fast as possible dynarecs when the source processor is fixed and the target is unlikely to change. BTW, Thanks for the email Julian will reply soon when more time - exams coming up. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 31 18:13:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA43470 for dynarec-outgoing; Wed, 31 May 2000 18:13:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: VIP, was (DYNAREC: DRFAQ) From: "M.I.K.e" In-Reply-To: <002701bfcb5b$5a3ef0c0$1b128cd4@daves> Message-ID: <000368f403e58f52_mailit@mail.dynarec.com> References: <00b901bfcb3a$cdf6aba0$c8128cd4@daves> <000368f0fd7fdd37_mailit@mail.dynarec.com> <002701bfcb5b$5a3ef0c0$1b128cd4@daves> Date: Thu, 01 Jun 2000 03:16:16 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> They actually released some information about Crusoe's native instruction >> set? Where? >Oh, sorry, probably not - wishful thinking on my part. Hmm, didn't find anything new on Transmeta's pages, so I guess they still want to sell it through "we have Linus Torvalds with us" instead of giving us the specs for the thing... But back to the our VIP topic: Did any of you take a look at MMIX, the new virtual processor by Donald Knuth? http://www-cs-faculty.stanford.edu/~knuth/mmix.html Even DLX is interesting, but then we could also take MIPS... >Dave -- M.I.K.e "I'd love to go out with you, but I'm attending the opening of my garage door." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 1 01:53:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA43808 for dynarec-outgoing; Thu, 1 Jun 2000 01:53:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006010855.KAA27511@pons.ac.upc.es> Subject: Re: VIP, was (DYNAREC: DRFAQ) In-Reply-To: <000368f403e58f52_mailit@mail.dynarec.com> "from M.I.K.e at Jun 1, 2000 03:16:16 am" To: dynarec@dynarec.com Date: Thu, 1 Jun 2000 10:55:09 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> They actually released some information about Crusoe's native instruction > >> set? Where? > >Oh, sorry, probably not - wishful thinking on my part. > > Hmm, didn't find anything new on Transmeta's pages, so I guess they still > want to sell it through "we have Linus Torvalds with us" instead of giving us > the specs for the thing... > It remembers me that when I had a bit of free time I have to write a page against them. ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 1 09:51:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA44494 for dynarec-outgoing; Thu, 1 Jun 2000 09:51:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: VIP, was (DYNAREC: DRFAQ) From: "M.I.K.e" In-Reply-To: <200006010855.KAA27511@pons.ac.upc.es> Message-ID: <0003690128dd9f4a_mailit@mail.dynarec.com> References: <200006010855.KAA27511@pons.ac.upc.es> Date: Thu, 01 Jun 2000 18:57:11 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [Transmeta] >It remembers me that when I had a bit of free time I have to write a page >against them. ;) Good idea ;-) BTW, it seems you started a very interesting discussion again! >Victor Moya -- M.I.K.e Peace, n.: In international affairs, a period of cheating between two periods of fighting. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 2 00:27:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA45374 for dynarec-outgoing; Fri, 2 Jun 2000 00:27:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006020730.JAA32015@pons.ac.upc.es> Subject: Re: VIP, was (DYNAREC: DRFAQ) In-Reply-To: <0003690128dd9f4a_mailit@mail.dynarec.com> "from M.I.K.e at Jun 1, 2000 06:57:11 pm" To: dynarec@dynarec.com Date: Fri, 2 Jun 2000 09:30:01 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > [Transmeta] > >It remembers me that when I had a bit of free time I have to write a page > >against them. ;) > > Good idea ;-) > > BTW, it seems you started a very interesting discussion again! > Indeed. :) Unluckly I couldn't spend as many time as I would want. A question I thought about yesterday. What are the difference between a VIP and a Virtual Machine (VM)?. If a VIP would be a VM then I think there is a lot of research already done out there. If not it will be interesting to see what VM topics are useful for VIPs. I also thought in Java VM (and I'm working with another VM) but now I think perhaps a VIP isn't exactly a VM. And my thoughts about VIP has been biased because I was thinking about it as a VM. For example a VM executes usually bytecode, but a VIP will be, as you have pointed, an already decode structure. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 2 03:04:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA45664 for dynarec-outgoing; Fri, 2 Jun 2000 03:04:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: VIP, was (DYNAREC: DRFAQ) From: "M.I.K.e" In-Reply-To: <200006020730.JAA32015@pons.ac.upc.es> Message-ID: <0003690f90a6b8a6_mailit@mail.dynarec.com> References: <200006020730.JAA32015@pons.ac.upc.es> Date: Fri, 02 Jun 2000 12:08:22 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> BTW, it seems you started a very interesting discussion again! >Indeed. :) And you thought you'd be useless for this list! >A question I thought about yesterday. What are the difference between >a VIP and a Virtual Machine (VM)?. Good question. Well, the term VIP isn't very official since I started to use it some time ago and I don't know if anyone else uses it. But I think a VM is more designed for a special language, like JVW for Java, WAM (Warren Abstract Machine) for Prolog, P-machine for Pascal, Machine- Forth... Also all the VMs I know seem to use a stack instead of registers, which isn't that good for our purpose. >If a VIP would be a VM then I think >there is a lot of research already done out there. Well, I wouldn't call that research really. Those VMs were designed to provide faster execution of a specific language, that's all. Either the VM is very primitive with about two dozen instructions (eg. P-code and WAM) or it's very specific (JVM). >If not it will be >interesting to see what VM topics are useful for VIPs. I took a look at P-code and it was just too stripped down, and Machine-Forth is too much stack oriented. JVM seemed to be too specific for me and you'd have to filter much, maybe just to notice that you don't have anything interesting left. I did my inspection of the JVM some time ago so I don't know about the details anymore. Probably Dave knows more about it than me now. Comments, Dave? >I also thought >in Java VM (and I'm working with another VM) but now I think perhaps a >VIP isn't exactly a VM. The differences are a bit blurred but I think the prototypical implemetations would be quite different. I guess the other VM is for your university work. >And my thoughts about VIP has been biased because >I was thinking about it as a VM. I should have expected that because no-one knows the term VIP and VMs are quite popular at the moment. Probably my fault... >For example a VM executes usually bytecode, >but a VIP will be, as you have pointed, an already decode structure. I'm not sure if all VMs have bytecode. I know that most Prolog systems with a WAM compile the source after loading, but I don't know how the iternal structure looks. P-code looks like bytecode, but it's so primitive that it can be decoded very fast. I think most systems for funtional languages have an inbuilt VM nowadays, and Miranda even has a separate compiler but I don't know what kind of VM it uses. I mean, you could use bytecode for a VIP as well, but I guess it would be slower and using a structure has the advatange that we could have additional information like "this is a branch target, don't optimise". Also bytecode has a variable instruction length or it is limited because of a fixed size. A double-linked list of structures would ease navigation in the sequence of instructions (which can be very useful for optimisation) while having quite some freedom what information to include in the instruction. BTW, I just thought of another decision problem I had with VIP: Include rotations or not? That question maysound weird, but some modern CPUs like MIPS or Alpha don't have any rotation instructions, but you can simulate the behaviour with two shifts and one OR. I wonder why NB didn't post any comments on the topic. Maybe he's just too busy at the moment... [Pager: "Hey, the board's on fire!" ;-)] >Victor Moya -- M.I.K.e Now and then an innocent person is sent to the legislature. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 2 03:55:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA45718 for dynarec-outgoing; Fri, 2 Jun 2000 03:55:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000601bfcc81$fda8aa40$40308cd4@daves> From: "David Sharp" To: References: <200006020730.JAA32015@pons.ac.upc.es> <0003690f90a6b8a6_mailit@mail.dynarec.com> Subject: Re: VIP, was (DYNAREC: DRFAQ) Date: Fri, 2 Jun 2000 12:01:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I took a look at P-code and it was just too stripped down, and Machine-Forth > is too much stack oriented. JVM seemed to be too specific for me and you'd > have to filter much, maybe just to notice that you don't have anything > interesting left. I did my inspection of the JVM some time ago so I don't > know about the details anymore. Probably Dave knows more about it than me > now. > Comments, Dave? Eh, what? Me? I'm afraid your right Mike, VMs are very much designed for the purpose of the single language that targets them. Even when they are targetted by other languages, it's still clear that they're not designed for them. Furthermore, although some are JIT'd, even those instruction sets are primarily designed for interpretation (short instruction length, CISC-like instructions) rather than nice RISC sets that would be better for compilation. I'm afraid the VM direction for dynarecs would be purely for academic curiosity and where performance is concerned we're going to have to have something purpose-built. > BTW, I just thought of another decision problem I had with VIP: Include > rotations or not? That question maysound weird, but some modern CPUs like > MIPS or Alpha don't have any rotation instructions, but you can simulate the > behaviour with two shifts and one OR. I'd say yes include them for the simple fact that many CPUs do have rotations and it's not as high level/CISCy as something like BCD that's been discussed previously. Imagine targetting an ARM for a program with rotates without having an explicit rotate in the VIP. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 2 04:14:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA45755 for dynarec-outgoing; Fri, 2 Jun 2000 04:14:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: VIP, was (DYNAREC: DRFAQ) From: "M.I.K.e" In-Reply-To: <000601bfcc81$fda8aa40$40308cd4@daves> Message-ID: <0003691093f2c11f_mailit@mail.dynarec.com> References: <200006020730.JAA32015@pons.ac.upc.es> <0003690f90a6b8a6_mailit@mail.dynarec.com> <000601bfcc81$fda8aa40$40308cd4@daves> Date: Fri, 02 Jun 2000 13:20:52 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Comments, Dave? >Eh, what? Me? No, your sister ;-) Ok, you couldn't kow that you're the only Dave on this list, at least in the non-lukers section. >I'm afraid your right Mike, VMs are very much designed for the purpose of >the single language that targets them. Even when they are targetted by other >languages, it's still clear that they're not designed for them. Just as I thought... >Furthermore, although some are JIT'd, even those instruction sets are >primarily designed for interpretation (short instruction length, CISC-like >instructions) rather than nice RISC sets that would be better for >compilation. Indeed. I still doubt that Sun had JIT compilation in mind when they designed the JVM, althought they claimed it for some time. >I'm afraid the VM direction for dynarecs would be purely for >academic curiosity and where performance is concerned we're going to have to >have something purpose-built. So do we want to do some theoretical stuff or just try to build our own VIP? >I'd say yes include them for the simple fact that many CPUs do have >rotations and it's not as high level/CISCy as something like BCD that's been >discussed previously. Agreed. I just wanted to note that there are still many compromises to be taken in that topic... >Imagine targetting an ARM for a program with rotates >without having an explicit rotate in the VIP. Hehe, that would be no fun ;-) Well, at least you could precalculate all rotations used in literals. >Dave -- M.I.K.e There are three ways to get something done: do it yourself, hire someone, or forbid your kids to do it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 2 11:06:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA46245 for dynarec-outgoing; Fri, 2 Jun 2000 11:06:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000001bfccbe$428db920$a8068cd4@daves> From: "David Sharp" To: References: <200006020730.JAA32015@pons.ac.upc.es> <0003690f90a6b8a6_mailit@mail.dynarec.com> <000601bfcc81$fda8aa40$40308cd4@daves> <0003691093f2c11f_mailit@mail.dynarec.com> Subject: Re: VIP, was (DYNAREC: DRFAQ) Date: Fri, 2 Jun 2000 15:25:17 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Indeed. I still doubt that Sun had JIT compilation in mind when they designed > the JVM, althought they claimed it for some time. I suspect it occurred to them but they had to get the thing off the ground and interpretation had to be the easiest way to do that. For embedded systems and the like which java's partially designed for IIRC you don't want a JIT anyway. > So do we want to do some theoretical stuff or just try to build our own VIP? I think for my third year project I'm going to have to design a dedicated intermediate representation as for what everyone else is doing, who knows? My main concern is whether to try and make the dynarec retargetable or not as I think the problems could be significant. > Hehe, that would be no fun ;-) > Well, at least you could precalculate all rotations used in literals. True. As a matter of interest (and as I'm new to the list) what sort of things is everyone else interested/working on at the moment? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 3 10:45:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA49802 for dynarec-outgoing; Sat, 3 Jun 2000 10:45:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: VIP definition From: "M.I.K.e" Message-ID: <0003692a23ce2ac9_mailit@mail.dynarec.com> Date: Sat, 03 Jun 2000 19:50:40 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Ok, I thought we need some more prices material to discuss, so I'll "simply" try to define a VIP in the next few postings... Organisation ************ Ok, the caches... oops, it's a virtual processor, so we don't have any organisation ;-) Architecture *********** I think we all agree that is should be rather simple and therefore RISC-like: * 3-address code * load/store architecture * no immediate operands; literals will be loaded into registers by LEA or CLR (only zero, just because of the high frequency it is needed); I actually had the idea to do it that way before I noticed that Mite and ARMphetamine work the same way, because you spare a lot of instructions... * huge set of GPRs (256? no I'm not influenced by MMIX ;-), but no special registers since only simulated registers are needed anyway * the register width is most likely 32 bit; originally I planned 64 bit, but that might be a bit difficult to handle? We'll see what I come up with eventually... Since we'll deal with different sized operations from various architectures a suffix will be attached to almost all instructions to specify the size. I'll stick with Donald Knuths terms used for MMIX, since "word" is always differently interpreted according to the architecture: 1 byte (= 8 bit), suffix '.B' 1 wyde (= 2 bytes), suffix '.W' 1 tetra (= 4 bytes), suffix '.T' 1 octa (= 8 bytes), suffix '.O' Alternatively instructions for sign and zero extension could be applied to the results. The nice thing then would be that we didn't need an difference between signed and unsigned loads. Logical Operations ***************** Since we recently discussed the logical operations I'll start with these: AND Rd, Rs, Rt : Rd = Rs n Rt OR Rd, Rs, Rt : Rd = Rs v Rt XOR Rd, Rs, Rt : Rd = Rs o Rt BIC Rd, Rs, Rt : Rd = Rs n ~Rt NOR Rd, Rs, Rt : Rd = ~(Rs v Rd) NOT Rd, Rs : Rd = ~Rs Arithmetic Operations ********************* ADD Rd, Rs, Rt : Rd = Rs + Rt SUB Rd, Rs, Rt : Rd = Rs - Rt NEG Rd, Rs : Rd = -Rs LSL Rd, Rs, Rt : Rd = Rs << Rt LSR Rd, Rs, Rt : Rd = Rs >> Rt ASR Rd, Rs, Rt : Rd = Rs >>> Rt ROL Rd, Rs, Rt : Rd = (Rs << Rd) v (Rs >> -Rd) ROR Rd, Rs, Rt : Rd = (Rs >> Rd) v (Rs << -Rd) Maybe ADDC, ADDE, SUBC, and SUBE should be added to ease the hanling of those common sequences. I'm not so sure about the following ones: MUL Rd, Rs, Rt : Rd = Rs * Rt DIV Rd, Rs, Rt : Rd = Rs / Rt REM Rd, Rs, Rt : Rd = remainder(Rs / Rt) The problem is that some architectures have special unsigned and signed versions of these, also some define a MUL like this (Rd1,Rd2) = Rs * Rt ... It might be really a good idea to have instructions like EXTS.X and EXTZ.X for sign and zero extension instead of having size extensions in any instruction. Simple Data Transfer ******************* MOV Rd, Rs : Rd = Rs LEA Rd, addr : Rd = addr CLR Rd : Rd = 0 Still to be covered are: *loads and stores * compares and other tests (keep in mind that the VIP has no condition register) * jumps and branches I hope there are not too many errors in here... Just tell me your opinions. I guess this could heat up the discussion a bit ; -) -- M.I.K.e Worst Response To A Crisis, 1985: From a readers' Q and A column in TV GUIDE: "If we get involved in a nuclear war, would the electromagnetic pulses from exploding bombs damage my videotapes?" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 3 10:50:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA49818 for dynarec-outgoing; Sat, 3 Jun 2000 10:50:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 3 Jun 2000 11:01:03 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: VIP definition In-Reply-To: <0003692a23ce2ac9_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Ok, the caches... oops, it's a virtual processor, so we don't have any > organisation ;-) Are you guys really going through with a virtual processor for purposes of dynarec? I think you already know my views on it. A two stage recompiler is far better, and gives the opportunity for the target to generate source specific code and take advantage of things like flags and whatnot. All of that is completely lost with an intermediate "fake" CPU, and it really doesn't help! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 3 11:23:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA49867 for dynarec-outgoing; Sat, 3 Jun 2000 11:23:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: VIP definition From: "M.I.K.e" In-Reply-To: Message-ID: <0003692aa4016c81_mailit@mail.dynarec.com> References: Date: Sat, 03 Jun 2000 20:26:31 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Are you guys really going through with a virtual processor for purposes of >dynarec? I think you already know my views on it. I guess you also know me opinion about it! >A two stage recompiler >is far better, and gives the opportunity for the target to generate source >specific code and take advantage of things like flags and whatnot. All of >that is completely lost with an intermediate "fake" CPU, and it really >doesn't help! It seems that no-one believes us without a real experience. You know it because you're a processor wiz, I learned it the hard way (by analyzing about a dozen architectures just to find out that it's impossible to find a basic common instruction set), but they seem to need some practical stuff as well to realize what we both already know. I thought defining a VIP as they imagine it and showing them how it fails in real translations could enforce our arguments. >-->Neil -- M.I.K.e Have you ever noticed that the people who are always trying to tell you, "There's a time for work and a time for play," never find the time for play? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 5 00:41:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA52096 for dynarec-outgoing; Mon, 5 Jun 2000 00:41:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006050744.JAA10460@pons.ac.upc.es> Subject: Re: DYNAREC: VIP definition In-Reply-To: "from Neil Bradley at Jun 3, 2000 11:01:03 am" To: dynarec@dynarec.com Date: Mon, 5 Jun 2000 09:44:21 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Ok, the caches... oops, it's a virtual processor, so we don't have any > > organisation ;-) > > Are you guys really going through with a virtual processor for purposes of > dynarec? I think you already know my views on it. A two stage recompiler > is far better, and gives the opportunity for the target to generate source > specific code and take advantage of things like flags and whatnot. All of > that is completely lost with an intermediate "fake" CPU, and it really > doesn't help! > Well, I see the VIP as an alternative for getting an "easy" (ehem!... ;) way for building portable dynarecs. You know I like a lot your approach, actually I think is the best. Sure the best I have seen. The two layer approach seems to help to portability, but in what degree? Do you think, for example, your DRMZ80 could be easily ported? And the discussion helps to know about a new topic. Perhaps we could get also new ideas to use in normal dynarecs. If not we are talking about dynarecs (a fact that happens rarely here ;) that it's the purpose of the list and new people is getting active into the list. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 5 00:53:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA52112 for dynarec-outgoing; Mon, 5 Jun 2000 00:53:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006050756.JAA18132@pons.ac.upc.es> Subject: Re: DYNAREC: VIP definition In-Reply-To: <0003692aa4016c81_mailit@mail.dynarec.com> "from M.I.K.e at Jun 3, 2000 08:26:31 pm" To: dynarec@dynarec.com Date: Mon, 5 Jun 2000 09:56:17 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Are you guys really going through with a virtual processor for purposes of > >dynarec? I think you already know my views on it. > > I guess you also know me opinion about it! > He should know it after all those mails when the dynarec list started. ;) > It seems that no-one believes us without a real experience. You know it > because you're a processor wiz, I learned it the hard way (by analyzing about > a dozen architectures just to find out that it's impossible to find a basic > common instruction set), but they seem to need some practical stuff as well > to realize what we both already know. > I thought defining a VIP as they imagine it and showing them how it fails in > real translations could enforce our arguments. I can see that a VIP perhaps doesn't help so much about portability and it's hard to design it. But what I can't see is why a VIP based dynarec is imposible (or difficult) to implement. I'm not really very interested in portability in emulation. Portability means usually very low performance - see MAME - and emulation, I think, needs a good performance. So for me discussing about a VIP is more a theorical issue :o than a practical one. And the main good point a saw about VIP is that if you don't have a real VIP to target for an specific architecture you can use an interpreter instead. This doesn't helps about performance (I think it will be slower than a normal interpreter) but helps with portability. And university professors likes a lot portability (and usually don't care about performance) and perhaps a VIP is the kind of idea they like. ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 5 00:58:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA52125 for dynarec-outgoing; Mon, 5 Jun 2000 00:58:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 5 Jun 2000 01:08:53 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: VIP definition In-Reply-To: <200006050744.JAA10460@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > specific code and take advantage of things like flags and whatnot. All of > > that is completely lost with an intermediate "fake" CPU, and it really > > doesn't help! > Well, I see the VIP as an alternative for getting an "easy" (ehem!... ;) way > for building portable dynarecs. You know I like a lot your approach, > actually I think is the best. Sure the best I have seen. The two layer > approach seems to help to portability, but in what degree? Do you think, > for example, your DRMZ80 could be easily ported? Sure - why not? I'm assuming that you mean ported to another target. Absolutely. The only thing that needs to be written is the target layer. It's more work than writing a back end to a generic intermediate processor, but it sure opens up opportunities for optimizations that would get lost in an intermediate translation. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 5 01:07:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA52148 for dynarec-outgoing; Mon, 5 Jun 2000 01:07:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006050810.KAA31886@pons.ac.upc.es> Subject: Re: DYNAREC: VIP definition In-Reply-To: "from Neil Bradley at Jun 5, 2000 01:08:53 am" To: dynarec@dynarec.com Date: Mon, 5 Jun 2000 10:10:15 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Well, I see the VIP as an alternative for getting an "easy" (ehem!... ;) way > > for building portable dynarecs. You know I like a lot your approach, > > actually I think is the best. Sure the best I have seen. The two layer > > approach seems to help to portability, but in what degree? Do you think, > > for example, your DRMZ80 could be easily ported? > > Sure - why not? I'm assuming that you mean ported to another > target. Absolutely. The only thing that needs to be written is the target > layer. It's more work than writing a back end to a generic intermediate > processor, but it sure opens up opportunities for optimizations that would > get lost in an intermediate translation. > I asked you about this because you know more about it than all others on the list (is your emu!). I didn't want to say that I think it isn't portable (in fact in the doc I *WAS* writing about your approach I wrote that the two layer approach should help with portability), but just ask about how difficult could be port it. For example, it would be harder or easier than porting MZ80?. What amount of work is already done in the source layer?, it needs some (small) modifications? The two layer approach really helps portability or it will be almost as difficult as building a full new dynarec? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 5 02:35:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA52384 for dynarec-outgoing; Mon, 5 Jun 2000 02:35:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006050938.LAA10954@pons.ac.upc.es> Subject: DYNAREC: SI project In-Reply-To: <200006050810.KAA31886@pons.ac.upc.es> "from Victor Moya del Barrio at Jun 5, 2000 10:10:15 am" To: dynarec@dynarec.com Date: Mon, 5 Jun 2000 11:38:57 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Well, this is a mail about SI project in MUL8 list. I post it here (as I posted some others some ago) mainly because NG is usually reading the list (perhaps he is still in Prague?). And perhaps NB would say something too. ;) But now I have seen so many people from the project here that it really doesn't matter. Perhaps it still keeps those mails from the more beginners.:p Well, to everyone interested. What will happen with the project? These week I won't do anything (because I have two exams) but from next week I will have a lot of free time and I would like to continue it. The problem is I don't see the interest or the collaboration level required in the list. Javi saied he will post a context, but I think he didn't have enough time last weekend (he got Snatcher from MegaCD ;). In any case if he is the only beginneer who will do anything the full thing has no sense. He lives 1 minute far from my house and use a mail server in Portland to help it about emulation is a waste of time. I think perhaps the purpose of the SI will have to change. If there isn't beginners doing the project perhaps will be better build another kind of tutorial. For example write a kind of lessons about emulation using a Space Invader emulator as an example for the lessons. Any comments? Victor Moya P.S. I wouldn't post this mail if I wasn't so bored, but I don't have much work today and I don't want to begin studying yet. :o --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 5 06:16:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA52626 for dynarec-outgoing; Mon, 5 Jun 2000 06:16:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 5 Jun 2000 14:19:07 +0100 (BST) From: Kieron Wilkinson To: dynarec@dynarec.com Subject: Re: DYNAREC: VIP definition In-Reply-To: <200006050756.JAA18132@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Mon, 5 Jun 2000, Victor Moya del Barrio wrote: > I can see that a VIP perhaps doesn't help so much about portability and it's > hard to design it. But what I can't see is why a VIP based dynarec is > imposible (or difficult) to implement. I'm not really very interested in > portability in emulation. Portability means usually very low performance > - see MAME - and emulation, I think, needs a good performance. So for me > discussing about a VIP is more a theorical issue :o than a practical one. > And the main good point a saw about VIP is that if you don't have a real > VIP to target for an specific architecture you can use an interpreter instead. > This doesn't helps about performance (I think it will be slower than a > normal interpreter) but helps with portability. And university professors > likes a lot portability (and usually don't care about performance) and > perhaps a VIP is the kind of idea they like. ;) Well, I think that portability is more important than performance to some extent (probably not the best thing to say in a dynarec list! :) purely because I see emulation as making a system in a sense "timeless". If it is not portable, then if the general target platform changed we would lose the emu if the author did not want to work on it anymore. I don't think that this is too far off either, say Intel starts pushing IA64 into the mainstream home market in say 5 years from now because they get fed up with trying to push the crappy x86 architecture (sorry Neil B - IMHO) any faster. All those dynarec (& closed source) emulators are going to have to be interpreted again via the x86 emulator that Intel would probably provide for legacy applications. Where would your performance be then? :) -- Kieron. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 5 08:33:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA52782 for dynarec-outgoing; Mon, 5 Jun 2000 08:33:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: VIP definition From: "M.I.K.e" In-Reply-To: <200006050756.JAA18132@pons.ac.upc.es> Message-ID: <000369501c753c8c_mailit@mail.dynarec.com> References: <200006050756.JAA18132@pons.ac.upc.es> Date: Mon, 05 Jun 2000 17:08:45 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> I guess you also know me opinion about it! >He should know it after all those mails when the dynarec list started. ;) Yeah, I think so ;-) >I can see that a VIP perhaps doesn't help so much about portability and it's >hard to design it. But what I can't see is why a VIP based dynarec is >imposible (or difficult) to implement. It's not impossible to implement when the VIP has a simple RISC-like design, of course you could add all the features of all known processors and you'd end up with a monster nobody would like to implement, but the real problem is to design and implement it "right". I mean a VIP must be precise enough to describe about any semantics on very many architectures, but on the other hand it should be possible to create a more or less optimized code from it, and it's very hard to combine both issues in one design. It's bad that I kept the reasearched material mainly in my brain and didn't keep any of my scrap papers, otherwise I might have an easy access to lots of examples which are very hard to do in a VIP. Either you'd have to include special instructions and every porter would kill you or just say "do your sh* t alone", or you'd need to generate several VIP "instructions", which are very hard to identify as a special feature later on and this leads to sub- optimal code, which might be even slower than interpretive emulation and this is certainly what we don't want! >I'm not really very interested in portability in emulation. Why not? >Portability means usually very low performance >- see MAME - Ok, MAME is an example how not to do it... >and emulation, I think, needs a good performance. That's true. >So for me >discussing about a VIP is more a theorical issue :o than a practical one. You tell me that now? I try to define a VIP thinking you'd *implement* it, and now you tell me it's all theory? ;-) >And the main good point a saw about VIP is that if you don't have a real >VIP to target for an specific architecture you can use an interpreter >instead. Well, in that case threaded code would be faster, and Executor uses threaded code, the "VIP" is only used during compile time, at least that's how I understood it. >This doesn't helps about performance (I think it will be slower than a >normal interpreter) but helps with portability. And university professors >likes a lot portability (and usually don't care about performance) and >perhaps a VIP is the kind of idea they like. ;) You're still too much of a student, aren't you? ;-) >Victor Moya -- M.I.K.e The early bird who catches the worm works for someone who comes in late and owns the worm farm. -- Travis McGee --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 5 08:33:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA52790 for dynarec-outgoing; Mon, 5 Jun 2000 08:33:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: VIP definition From: "M.I.K.e" In-Reply-To: <200006050810.KAA31886@pons.ac.upc.es> Message-ID: <00036950627ec468_mailit@mail.dynarec.com> References: <200006050810.KAA31886@pons.ac.upc.es> Date: Mon, 05 Jun 2000 17:28:20 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I asked you about this because you know more about it than all others >on the list (is your emu!). I didn't want to say that I think it isn't >portable (in fact in the doc I *WAS* writing about your approach I wrote >that the two layer approach should help with portability), but just ask >about how difficult could be port it. Even though I don't know so much about the source as Neil does I'll try to answer that question... >For example, it would be harder or easier than porting MZ80? MZ80 is written in assembly, right? In that case I think it shouldn't be harder maybe even easier to port. When porting MZ80 you need to translate the x86 code but also need a good knowledge of Z80 to get it right. When porting DMZ80 you only have to have some knowledge of Z80 because you get it in pre-analyzed bites. The x86 can be only a slight reference, but you won't really translate it because you might want to use a different register allocation, and so on. Basically you have to rewrite almost the whole target layer but you won't have to translate it. That way you mainly need to have knowledge of the processor in the source layer but not of both processors as would be the case with MZ80. Is that at least partly right, or am I totally wrong? Comments NB? >What amount of work is already done in the source layer? The whole decode currently, later maybe some peephole optimisation, redundant flag removal. Have I forgotten anything? >, it needs some (small) modifications? If it's done correctly, and I bet Neil planned it that way from the beginning (unlike my first approach) you won't have to make any changes to the source layer when porting it! >The two layer approach really >helps portability or it will be almost as difficult as building a full new >dynarec? It surely helps, since you don't have to write your own decoder or do the translations directly in the decoder (which is a very common approch at the moment, yuk!) but you work with predecoded (optionally preoptimised) structures, which adds quite an amount of abstraction, which should simplify not only porting but also traget code optimisation. I hope I have presented NB's ideas correctly... >Victor Moya -- M.I.K.e It is illegal to drive more than two thousand sheep down Hollywood Boulevard at one time. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 5 08:33:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA52798 for dynarec-outgoing; Mon, 5 Jun 2000 08:33:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: VIP definition From: "M.I.K.e" In-Reply-To: Message-ID: <000369508b030e42_mailit@mail.dynarec.com> References: Date: Mon, 05 Jun 2000 17:39:40 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well, I think that portability is more important than performance to some >extent (probably not the best thing to say in a dynarec list! :) purely >because I see emulation as making a system in a sense "timeless". If it is >not portable, then if the general target platform changed we would lose >the emu if the author did not want to work on it anymore. A very good argument indeed! The first thing I thought of when I heard of dynamic recompilation was, "How could you make that portable?" Since then I'm still on the quest... Portability is a great goal, but if this makes a dynarec slower than an interpreter we've failed our mission. And even faster vast reasearch I haven't found a good method yet. That's why I might sound a bit weird about that topic... >I don't think that this is too far off either, say Intel starts pushing >IA64 into the mainstream home market in say 5 years from now I don't think that it will happen this soon but I might be wrong... >because they >get fed up with trying to push the crappy x86 architecture (sorry Neil B - >IMHO) any faster. I guess Neil knows the limitations of that architecture better than anyone else on the list... >All those dynarec (& closed source) emulators are going >to have to be interpreted again via the x86 emulator that Intel would >probably provide for legacy applications. Erm, Itanium includes hardware emulation of IA-32! It might be slower than compared to the newest Pentium III but it cerainly is there and if the OS permits it you're able to execute that code. You cannot run an IA-32 OS though since all interrupts switch back to the IA-64 mode. BTW, this is an idea that Intel dopted from ARM... >Kieron. -- M.I.K.e The faster we go, the rounder we get. -- The Grateful Dead --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 5 11:08:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA52987 for dynarec-outgoing; Mon, 5 Jun 2000 11:08:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 5 Jun 2000 11:19:37 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: VIP definition In-Reply-To: <200006050756.JAA18132@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I can see that a VIP perhaps doesn't help so much about portability and it's > hard to design it. But what I can't see is why a VIP based dynarec is > imposible (or difficult) to implement. I'm not really very interested in > portability in emulation. Portability means usually very low performance > - see MAME - and emulation, I think, needs a good performance. Portability doesn't necessarily mean low performance. Retrocade was ported to the E100, to OS/2, to the Mac and the Acorn - all of which run 2-3X faster than their MAME counterparts. MAME's Slowness is due to the architecture - not because it's portable. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 5 11:12:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA53002 for dynarec-outgoing; Mon, 5 Jun 2000 11:12:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 5 Jun 2000 11:23:09 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: VIP definition In-Reply-To: <200006050810.KAA31886@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > that the two layer approach should help with portability), but just ask > about how difficult could be port it. For example, it would be harder or > easier than porting MZ80?. MZ80 Is pure x86 assembly, so it's an apples to oranges comparison. In that case for another target it may even be a complete rewrite. > What amount of work is already done in the source > layer? You can do simple optimizations in the source layer (on the Z80 code for example) in addition to the code that handles the flag handling. It passes hints to the target layer as to what it should (or should not) do WRT flags. >, it needs some (small) modifications? The source layer doesn't need any modifications - only the target layer needs to be written. > The two layer approach really > helps portability or it will be almost as difficult as building a full new > dynarec? It's as difficult as building half a dynarec. All the control logic and information about the source stay the same from target to target. It's the actual emitted code on the target side of things that would have to be written for each target. However, in the case of the x86, I have a module called opx86.c. It just emits x86 opcodes. It's not really a "layer" per se, but one could also write a 6502 specific target layer that uses opx86.c as well. So it's not a total loss/rewrite. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 5 11:12:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA53012 for dynarec-outgoing; Mon, 5 Jun 2000 11:12:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 5 Jun 2000 11:23:35 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: SI project In-Reply-To: <200006050938.LAA10954@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well, this is a mail about SI project in MUL8 list. I post it here Except you posted it to Dynarec. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 6 06:16:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA54247 for dynarec-outgoing; Tue, 6 Jun 2000 06:15:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <393C9CF3.216555F6@eurocopter.de> Date: Tue, 06 Jun 2000 08:40:51 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: SI project References: <200006050938.LAA10954@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Well, this is a mail about SI project in MUL8 list. I post it here > (as I posted some others some ago) mainly because NG is usually > reading the list (perhaps he is still in Prague?). Hehehe. Don't ask. But I never made it to Prague. I did write the complete disaster story into a book and sent it to my friends. I could send it here but I doubt you'd all be interested (though it WOULD be something to laugh about). The shortened version is: train late to train station, caught train in time, friend got thrown off train, paniced, went to Stuttgart, went to Frankfurt, disaster, disaster, disaster, yet another disaster, came home. Tired. :) And that's why there was no mail from me yesterday, I didn't want to answer anything that actually involved thought. :) > Well, to everyone interested. What will happen with the project? These > week I won't do anything (because I have two exams) but from next week > I will have a lot of free time and I would like to continue it. The > problem is I don't see the interest or the collaboration level required > in the list. No, that was my feeling as well. Ah well, if we do it your way (document everything) then at least there are documents out there. If people want to do it, they will. > Javi saied he will post a context, but I think he didn't have > enough time last weekend (he got Snatcher from MegaCD ;). In any case > if he is the only beginneer who will do anything the full thing has no > sense. He lives 1 minute far from my house and use a mail server in > Portland to help it about emulation is a waste of time. I *was* going to write the CPU context but I think he said that he'd do it. I'm still waiting. I guess I'll write to the list in a while and see what people have done. My bet is that the answer will be "nothing". The thing is that I don't want to write the context. It could easily end up that I end up writing the thing myself and that's no good for anybody! Certainly not me because I'll just optimise it and then no-one will understand it (out of the beginners at least!). > I think perhaps the purpose of the SI will have to change. If there isn't > beginners doing the project perhaps will be better build another kind > of tutorial. For example write a kind of lessons about emulation using > a Space Invader emulator as an example for the lessons. Any comments? We'll see how it goes. If it carries on the way you're doing it (writing documentation) then I'd say that your lesson-based thing is already being done! Anyway, I agree - but I say we wait and see what happens. > P.S. I wouldn't post this mail if I wasn't so bored, but I don't have > much work today and I don't want to begin studying yet. :o Heh, I know the feeling! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 00:21:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA55244 for dynarec-outgoing; Wed, 7 Jun 2000 00:21:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004501bfd051$773edc80$a33b5393@a5s111pc16.fib.upc.es> From: "Victor Moya del Barrio" To: Subject: RE: DYNAREC: SI project Date: Wed, 7 Jun 2000 09:24:43 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3612.1700 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3612.1700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Well, this is a mail about SI project in MUL8 list. I post it here > >Except you posted it to Dynarec. ;-) > Well, I wanted to post it to Dynarec. ;) I have used Dynarec to show my frustation. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 00:33:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA55264 for dynarec-outgoing; Wed, 7 Jun 2000 00:33:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004c01bfd053$37e3c440$a33b5393@a5s111pc16.fib.upc.es> From: "Victor Moya del Barrio" To: Subject: RE: DYNAREC: VIP definition Date: Wed, 7 Jun 2000 09:37:21 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3612.1700 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3612.1700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well, I think that portability is more important than performance to some >extent (probably not the best thing to say in a dynarec list! :) purely >because I see emulation as making a system in a sense "timeless". If it is >not portable, then if the general target platform changed we would lose >the emu if the author did not want to work on it anymore. > Well it´s a good point but my view is a bit different. If you want to build an emulator for business portability it is really needed if not, if you do it for fun you can worry about portability or not, focusing more in the performance aspect. But something really important and necessary in emulator, more in high-end emulators as PlayStation or N64 are, is performance. You can mantein somekind of portability but never going against the performance. If you implement an emulator portable but two slow for work properly, why do you need then portability? >I don't think that this is too far off either, say Intel starts pushing >IA64 into the mainstream home market in say 5 years from now because they >get fed up with trying to push the crappy x86 architecture (sorry Neil B - >IMHO) any faster. All those dynarec (& closed source) emulators are going >to have to be interpreted again via the x86 emulator that Intel would >probably provide for legacy applications. > I think x86 isn´t crappy at all. The main fault I see is the lack of registers. With some more register and perhaps ... ;). You can use an emulator to run another emulator. It could be fun. ;) We could try some emulators for Play in VGS to see how they work ... >Where would your performance be then? > I think that isn´t really a problem. Take in care that emulators can be built faster than new machines created so if you begin write emulators you will end without new work to do someday. But then as your target architecture change also you can work in porting your emulators. ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 00:59:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA55289 for dynarec-outgoing; Wed, 7 Jun 2000 00:59:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 7 Jun 2000 01:11:09 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: RE: DYNAREC: VIP definition In-Reply-To: <004c01bfd053$37e3c440$a33b5393@a5s111pc16.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by dynarec.com id AAA55286 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >IA64 into the mainstream home market in say 5 years from now because they > >get fed up with trying to push the crappy x86 architecture (sorry Neil B - > >IMHO) any faster. All those dynarec (& closed source) emulators are going > >to have to be interpreted again via the x86 emulator that Intel would > >probably provide for legacy applications. > I think x86 isn´t crappy at all. The main fault I see is the lack of > registers. With some more register and perhaps ... ;). Yeah. The x86 isn't anywhere near as bad as everyone makes it out to be. As Victor correctly pointed out, the real deficiency of the x86 is the lack of registers. A great many features of the Pentium line are actually quite nice and usable. One must use one of the lousy 8 bit Motorola parts (especially the 68332 chip) to appreciate a crappy chip design. > will end without new work to do someday. But then as your target > architecture change also you can work in porting your emulators. ;) Yeah - just write another target layer! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 06:47:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA55875 for dynarec-outgoing; Wed, 7 Jun 2000 06:47:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004d01bfd087$8f9da960$0100a8c0@nibble> From: "Kieron Wilkinson" To: References: Subject: Re: DYNAREC: VIP definition Date: Wed, 7 Jun 2000 14:51:02 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yeah. The x86 isn't anywhere near as bad as everyone makes it out to >be. As Victor correctly pointed out, the real deficiency of the x86 is the >lack of registers. A great many features of the Pentium line are actually >quite nice and usable. Well as I said it is my opinion. The lack of registers was the main thing, but what about segmented memory? (or is that the PC architecture's fault?) And the worst thing, which has nothing to do with bad design, is it being Little-Endian. Coming from a 68k background, I find it confusing, but then that is just me. (sorry I am not trying to start _that_ argument up!) I also get the feeling a lot of the features of the x86 line feel "bolted on" and inconsistent, but I have used it only a little so I could be wrong here. Besides, no matter how bad something is, if you know it inside and out - you are probably not going to notice as much as the next person. Resigned to it? I will admit, as with a lot of things I suppose, it depends on where you are coming from. >One must use one of the lousy 8 bit Motorola parts (especially the 68332 >chip) to appreciate a crappy chip design. What is the 68332 for? I know what you mean though - just look at the 68230 PI/T and the 68564 Serial IO controller. These are proving to be a bit nasty, but MESS should have them soon. :) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 09:44:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA56083 for dynarec-outgoing; Wed, 7 Jun 2000 09:44:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 7 Jun 2000 09:56:15 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: VIP definition In-Reply-To: <004d01bfd087$8f9da960$0100a8c0@nibble> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Yeah. The x86 isn't anywhere near as bad as everyone makes it out to > >be. As Victor correctly pointed out, the real deficiency of the x86 is the > >lack of registers. A great many features of the Pentium line are actually > >quite nice and usable. > Well as I said it is my opinion. You probably wouldn't say the same thing if you've worked with a wide spread of CPUs. > The lack of registers was the main thing, > but what about segmented memory? Nothing wrong with segmented memory at all. 16 Bit segments, yeah, they sucked. But no one has had to deal with them in over 15 years now, so why even bring it up? Are they still teaching that rubbish in school? 32 Bit segments are great, actually. Makes it really simple to multitask, and there's no need to carry around the baggage of relocation tables where there is with the 68K series. > (or is that the PC architecture's fault?) The PC architecture has *NOTHING* to do with it. It was IBM's fault for mapping things the way they did. > And the worst thing, which has nothing to do with bad design, is it being > Little-Endian. Coming from a 68k background, I find it confusing, but > then that is just me. (sorry I am not trying to start _that_ argument up!) Consider that at the time when the 68K came out, it was the odd man out. All CPUs up until then were little endian (for the prior 20 years before that). > I also get the feeling a lot of the features of the x86 line feel "bolted > on" and > inconsistent, but I have used it only a little so I could be wrong here. Yes, you're wrong, here. ;-) > Besides, no matter how bad something is, if you know it inside and out - you > are probably not going to notice as much as the next person. Resigned to it? Nope. I know many CPUs inside and out. I've been to "completely screwed up design" and back again and have had to deal with CPUs with *REALLY* bad instruction sets (the Motorola 8 bit series is the worst). > I will admit, as with a lot of things I suppose, it depends on where you are > coming from. Lesse, from memory I've had experience with the 68xx series, 68HC11, Z80, all x86, Sparc, 68K, 6502, 34010, MCS-51 series of chips (8051 family), and the AVR 8535. The absolute worst by far is the 68332, followed very closely by the 68HC11. I can't understand why the 68HC11 is even popular! It's horrible! It's really common for people who don't understand the x86 to whine about how hard it is. It is NOT that difficult. Almost everything is orthogonal in terms of register usage (with the exception of ins/outs and the movsb instruction) since the introduction of the 386. But if all you've done is 16 bit programming, yeah, it's hell. But that's outdated by 15 years now. > >One must use one of the lousy 8 bit Motorola parts (especially the 68332 > >chip) to appreciate a crappy chip design. > What is the 68332 for? It's a chip designed to drive fuel injection and ignition for automotive purposes. The feature set is quite rich, actually. It can do pulse width outputs and handle all kinds of rotational velocities. The problem is the manuals are a foot thick and it's a bitch to program, and the tools for it are far less than adequate. FWIW, I'm in the process of designing a car computer for a race car. It uses a Philips XA-G49 and an Atmel 8535. It's designed to run to 15,000 RPM, drive 9 fuel injectors and 6 spark plugs (this is for a 3 rotor rotary engine). The engine we're going to have it on, with its turbos, pushes around 600 horsepower. ;-p I'll post pictures when things are far enough along where we have something to show. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 09:48:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA56098 for dynarec-outgoing; Wed, 7 Jun 2000 09:48:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 7 Jun 2000 10:00:04 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: VIP definition In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Lesse, from memory I've had experience with the 68xx series, 68HC11, Z80, > all x86, Sparc, 68K, 6502, 34010, MCS-51 series of chips (8051 family), > and the AVR 8535. The absolute worst by far is the 68332, followed very > closely by the 68HC11. I can't understand why the 68HC11 is even > popular! It's horrible! I left out the ARM 7 in my list above (which I program in daily). -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 10:47:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA56173 for dynarec-outgoing; Wed, 7 Jun 2000 10:47:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: VIP definition From: "M.I.K.e" In-Reply-To: Message-ID: <0003697aa58ea39d_mailit@mail.dynarec.com> References: Date: Wed, 07 Jun 2000 19:53:34 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Nothing wrong with segmented memory at all. 16 Bit segments, yeah, they >sucked. But no one has had to deal with them in over 15 years now, so why >even bring it up? Are they still teaching that rubbish in school? The problem is that all books and all introductions still only feature or at least start with that damn limited 16 bit mode... >32 Bit segments are great, actually. Makes it really simple to multitask, >and there's no need to carry around the baggage of relocation tables where >there is with the 68K series. Hey, relocation tables were fun ;-) >The PC architecture has *NOTHING* to do with it. It was IBM's fault for >mapping things the way they did. The 64K segments were Intels fault, but the 640K limit was IBM's fault. >Consider that at the time when the 68K came out, it was the odd man >out. All CPUs up until then were little endian (for the prior 20 years >before that). Ah, wait! The IBM 360 is big-endian! And that thing was released back in 1964, which was some time before the first Intel chip! >Nope. I know many CPUs inside and out. I've been to "completely screwed up >design" and back again and have had to deal with CPUs with *REALLY* bad >instruction sets (the Motorola 8 bit series is the worst). I think that the 6800 has a clearer design than the 8080, and especially the 6809 is my favourite 8 bit processor. But I have to damit that I haven't programmed any 8 bit processor yet, so this just my impression from looking at the instruction set. >I left out the ARM 7 in my list above (which I program in daily). How could you even forget that one?!? No, I'm absolutely no ARM fan ;-) Actually my favourite embedded processor at the moment is the SH-5. >FWIW, I'm in the process of designing a car computer for a race car. It >uses a Philips XA-G49 and an Atmel 8535. It's designed to run to 15,000 >RPM, drive 9 fuel injectors and 6 spark plugs (this is for a 3 rotor >rotary engine). The engine we're going to have it on, with its turbos, >pushes around 600 horsepower. ;-p I'll post pictures when things are far >enough along where we have something to show. Hey, you're surely a man with many talents! >-->Neil -- M.I.K.e Whether you can hear it or not The Universe is laughing behind your back -- National Lampoon, "Deteriorata" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 11:30:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA56237 for dynarec-outgoing; Wed, 7 Jun 2000 11:30:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003101bfd0b7$685ed060$0100a8c0@lion> From: "Neil Griffiths" To: References: <0003697aa58ea39d_mailit@mail.dynarec.com> Subject: Re: DYNAREC: VIP definition Date: Wed, 7 Jun 2000 20:31:16 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > The problem is that all books and all introductions still only feature or at > least start with that damn limited 16 bit mode... Agreed, they very often don't mention anything about protected mode (or any other form of 32-bit memory access). > >The PC architecture has *NOTHING* to do with it. It was IBM's fault for > >mapping things the way they did. > > The 64K segments were Intels fault, but the 640K limit was IBM's fault. I also agree, this was in the 8080 and certainly in the Z80 (yeah, the Z80 was Zilog - but that was formed by 2 people from Intel). > >Nope. I know many CPUs inside and out. I've been to "completely screwed up > >design" and back again and have had to deal with CPUs with *REALLY* bad > >instruction sets (the Motorola 8 bit series is the worst). > > I think that the 6800 has a clearer design than the 8080, and especially the > 6809 is my favourite 8 bit processor. But I have to damit that I haven't > programmed any 8 bit processor yet, so this just my impression from looking > at the instruction set. Z80 rU13z m4n! ;) > >FWIW, I'm in the process of designing a car computer for a race car. It > >uses a Philips XA-G49 and an Atmel 8535. It's designed to run to 15,000 > >RPM, drive 9 fuel injectors and 6 spark plugs (this is for a 3 rotor > >rotary engine). The engine we're going to have it on, with its turbos, > >pushes around 600 horsepower. ;-p I'll post pictures when things are far > >enough along where we have something to show. > > Hey, you're surely a man with many talents! And I'm working on a system which... well, basically, is the defence for Germany and France in the future. And it goes in the air and so I beat you! ;p Sorry, had to say that. I've had a bad day and so I'm trying to amuse myself. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 12:46:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA56326 for dynarec-outgoing; Wed, 7 Jun 2000 12:45:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002d01bfd0ba$0e8a43a0$030b8cd4@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: VIP definition Date: Wed, 7 Jun 2000 18:55:05 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I left out the ARM 7 in my list above (which I program in daily). I was just about to say, if you'd not seen ARM code take a look - true beauty. :o) Just as a matter of interest, I seem to remember reading somewhere a while ago that on an x86 you couldn't put a value from an 8 bit reg directly into a 16 bit reg which seemed a bit weird. Just say no if I'm wrong. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 13:25:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA56379 for dynarec-outgoing; Wed, 7 Jun 2000 13:25:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 7 Jun 2000 13:37:24 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: VIP definition In-Reply-To: <0003697aa58ea39d_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >sucked. But no one has had to deal with them in over 15 years now, so why > >even bring it up? Are they still teaching that rubbish in school? > The problem is that all books and all introductions still only feature or at > least start with that damn limited 16 bit mode... And what's odd about it is that it hasn't been used in at least a decade! > >32 Bit segments are great, actually. Makes it really simple to multitask, > >and there's no need to carry around the baggage of relocation tables where > >there is with the 68K series. > Hey, relocation tables were fun ;-) Back when code bloat was a big deal. > >The PC architecture has *NOTHING* to do with it. It was IBM's fault for > >mapping things the way they did. > The 64K segments were Intels fault, but the 640K limit was IBM's fault. But you said PC Architecture, which is purely IBM's fault. 64K Segments in the 8088 != PC Architecture. > >Consider that at the time when the 68K came out, it was the odd man > >out. All CPUs up until then were little endian (for the prior 20 years > >before that). > 1964, which was some time before the first Intel chip! But all the DEC VAXs were little endian and were more prevalent in the "user" sector. I knew of tons of VAXs. Very little 360's. And there are tons of 8 bit micros (even from Motorola) that are little endian. > I think that the 6800 has a clearer design than the 8080, and especially the I don't know how you can say that. The 6800's design was almost a blatant rip of the 6502. > 6809 is my favourite 8 bit processor. But I have to damit that I haven't > programmed any 8 bit processor yet, so this just my impression from looking > at the instruction set. I've written a 6800 and 6809 emulator core. Beleve me, those CPUs stink almost as bad as the 6502. The Z80 and 8080 are *FAR* easier to program and the instruction sets are far better. > >I left out the ARM 7 in my list above (which I program in daily). > How could you even forget that one?!? No, I'm absolutely no ARM fan ;-) What I find so funny about it is that all the assembly instructions are *SEVERE* not-invented-here syndrome. When I saw "bl" for the first time, I was like "WTF?" They should've just called it jump like every other stupid CPU on the market (except BSR). > Actually my favourite embedded processor at the moment is the SH-5. I haven't poked much at it, but I do know that I don't like the R4000 much. > >RPM, drive 9 fuel injectors and 6 spark plugs (this is for a 3 rotor > >rotary engine). The engine we're going to have it on, with its turbos, > >pushes around 600 horsepower. ;-p I'll post pictures when things are far > >enough along where we have something to show. > Hey, you're surely a man with many talents! No, just one with too many hobbies. ;-) I'm a closet case mechanic. Used to race cars eons ago - specifically rotary motors (the best engine design in terms of pure physics, IMHO). -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 13:27:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA56391 for dynarec-outgoing; Wed, 7 Jun 2000 13:27:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 7 Jun 2000 13:38:36 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: VIP definition In-Reply-To: <003101bfd0b7$685ed060$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > And I'm working on a system which... well, basically, is the defence for > Germany and France in the future. And it goes in the air and so I beat you! > ;p That kicks ass! Just make sure you put in a statement: "if (france) { while (1); } " ;-) Seriously, I think that's great. I'd love to have the responsibility of something like that. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 13:28:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA56400 for dynarec-outgoing; Wed, 7 Jun 2000 13:28:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 7 Jun 2000 13:39:44 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: VIP definition In-Reply-To: <002d01bfd0ba$0e8a43a0$030b8cd4@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I left out the ARM 7 in my list above (which I program in daily). > I was just about to say, if you'd not seen ARM code take a look - true > beauty. :o) > Just as a matter of interest, I seem to remember reading somewhere a while > ago that on an x86 you couldn't put a value from an 8 bit reg directly into > a 16 bit reg which seemed a bit weird. Just say no if I'm wrong. Um....: movzx bx, bl You couldn't on the 8086/286, but on 386 or newer this instruction was added. You can also do promotion to 32 bits as well. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 14:39:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA56491 for dynarec-outgoing; Wed, 7 Jun 2000 14:39:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001b01bfd0d1$c630ea60$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: VIP definition Date: Wed, 7 Jun 2000 23:43:08 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > That kicks ass! ...except I have to do it all in Ada. Seriously, Ada sucks major ass. I really detest this language and all of its predecessors. > Just make sure you put in a statement: > > "if (france) > { > while (1); > } > " > > ;-) Heh. :) > Seriously, I think that's great. I'd love to have the responsibility of > something like that. Well, I'm mainly responsible for checking that the networks connecting all components is working properly, but I seem to be testing all the other parts at the moment. No matter. Heh, it's great fun looking at some code and just thinking "Christ, I could do this MANY times better!". Especially when they're trying to cram all the code onto a small amount of memory. In some cases I could easily halve or more procedures - but I'm not going to because that isn't my job. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 14:39:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA56492 for dynarec-outgoing; Wed, 7 Jun 2000 14:39:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001a01bfd0d1$c4d07000$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: DYNAREC: OT (just for once): MS Date: Wed, 7 Jun 2000 23:40:03 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Just reading the rulings right now. What do you guys think? Sure, I didn't like their practices. But if America is all about building businesses from nothing all the way up then how can they do this? Anyway, I'll go read some news pages now and make up my own mind. Scary! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 14:45:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA56516 for dynarec-outgoing; Wed, 7 Jun 2000 14:45:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 7 Jun 2000 14:56:45 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: OT (just for once): MS In-Reply-To: <001a01bfd0d1$c4d07000$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Just reading the rulings right now. What do you guys think? Sure, I didn't > like their practices. But if America is all about building businesses from > nothing all the way up then how can they do this? Anyway, I'll go read some > news pages now and make up my own mind. Scary! Won't make a damn bit of difference. If anything, we'll have two Microsofts to deal with - not just one. The "OS/app" 'advantage' they speak of died in 1994. Back in the DOS and Windows 3.x days, it was prevalent for the apps to have special hooks into the OS that only MS published. Now everything's bloody there (far more than anyone would ever want). Basically, the ruling is based on things that were true 10 years ago but aren't today. I cannot believe how out of touch that "Finding of facts" doc was. 90% of it was pure shit. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 15:01:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56547 for dynarec-outgoing; Wed, 7 Jun 2000 15:01:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006801bfd0cc$940d2b20$0100a8c0@nibble> From: "Kieron Wilkinson" To: References: Subject: Re: DYNAREC: VIP definition Date: Wed, 7 Jun 2000 23:06:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hmm, seems this did not get sent the first (or second!) time, I think I fixed the problem but eternal apologies if it comes up three times! > You probably wouldn't say the same thing if you've worked with a wide > spread of CPUs. Yes, you are probably right. And yes, you guessed that I have only really used the old 16-bit 68K, which yes is still taught at my Uni. :) I feel inadequate! Well, I am learning. Sorry for the silly questions then, but if I don't ask, I won't learn. I guess that knowledge of err, like more than one CPU would be rather helpful in this list, but dynarec is really interesting, obviously being why I joined. > Consider that at the time when the 68K came out, it was the odd man > out. All CPUs up until then were little endian (for the prior 20 years > before that). I suppose everything is going pretty much big-endian now (?) It seems most RISC developers use the big endian features of these processors... Is IA64 pretty much RISC? > I left out the ARM 7 in my list above (which I program in daily). Oh yeah? Is that the Thumb architecture or the "older" one. I was thinking about applying for a job there (at ARM). Are they relatively nice to program? Program in it daily? What do you use them for? One last question Neil, You are subscribed (moderator for all of them?) to 50 newsgroups and get 400+ messages a day, you are into emulation, write CPU's cores, wrote Retrocade, make music with your synth's, have 3 pins etc. etc. Doesn't your wife feel a little left out? :)) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 15:03:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56559 for dynarec-outgoing; Wed, 7 Jun 2000 15:03:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: VIP definition From: "M.I.K.e" In-Reply-To: Message-ID: <0003697e3c73a5a9_mailit@mail.dynarec.com> References: Date: Thu, 08 Jun 2000 00:10:31 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >But you said PC Architecture, which is purely IBM's fault. 64K Segments in >the 8088 != PC Architecture. Actually it was Kieron who said the thing about PC architecture, I only corrected which limitation was due to which firm. >But all the DEC VAXs were little endian and were more prevalent in the >"user" sector. True but the VAX is much newer (1978). >I knew of tons of VAXs. Very little 360's. VAXen were cheaper but not that much used nowadays. The IBM 360 and its successors are still around. >And there are tons of 8 bit micros (even from Motorola) that are little endian. Could you given an example because I don't know any little-endian Motorolas. >I don't know how you can say that. The 6800's design was almost a blatant >rip of the 6502. Sorry when I have to correct you, but the 6800 was designed shortly after the 8080 and is older than the 6502. Actually the 6502 was designed by some former Motorola engineers who went to MOS Technology. Therefore the 6502 is a ripped 6800: accumulator B dropped, stack pointer stripped from 16 to 8 bit, same thing about the index register. The only thing they added was the second index register and a few more addressing modes. >I've written a 6800 and 6809 emulator core. Beleve me, those CPUs stink >almost as bad as the 6502. The 6800 is quite limited, but it doesn't have the short stack pointer of the 6502. The great thing about the 6809 are the addressing modes, which remind me of the 68000. Even better was the Hitachi built 6309, which added two more accumulators to a total of four which then could be combined to two 16-bit pairs or one large 32-bit register. It also added division to the multiplication the 6809 already had. >The Z80 and 8080 are *FAR* easier to program >and the instruction sets are far better. I wouldn't be that sure about it unless I haven't tried by myself... >What I find so funny about it is that all the assembly instructions are >*SEVERE* not-invented-here syndrome. When I saw "bl" for the first time, I >was like "WTF?" They should've just called it jump like every other >stupid CPU on the market (except BSR). First of all it's quite common to call relative PC changes a branch and absolute changes a jump, not only Motorola or ARM do it this way. Since BL * is* relative it's quite abvious to call it a branch. The jump instruction is performed by a MOV to R15 in ARM. Actually even the IBM 360 already had an instruction called BAL (branch and link)! You surely are a much better assembly programmer than me, but you won't beat me in computer architecture history! BTW, you should take a look at IA-64, it has lots of branches as well. And those "branch/jump exchange" instructions which are used to switch between IA -64 and IA-32 mode were inspired by ARM's BX (branch exchange) used to switch between the normal and Thumb mode. >I haven't poked much at it, but I do know that I don't like the R4000 >much. I liked the R3000, but I think later MIPS CPUs were changed for worse. With the SuperH architecture it's actually the other way round. >No, just one with too many hobbies. ;-) I know that problem... I'm an architecture freak just in case you haven't noticed yet ;-) >I'm a closet case mechanic. Use to race cars eons ago - You must be older than you told us then! ;-) >specifically rotary motors (the best engine design >in terms of pure physics, IMHO). I'm not into motors really, so you could tell me about anything... >-->Neil -- M.I.K.e Jone's Law: The man who smiles when things go wrong has thought of someone to blame it on. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 15:05:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56575 for dynarec-outgoing; Wed, 7 Jun 2000 15:05:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002301bfd0cd$944842e0$a40e8cd4@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: OT (just for once): MS Date: Wed, 7 Jun 2000 23:13:11 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Won't make a damn bit of difference. If anything, we'll have two > Microsofts to deal with - not just one. The "OS/app" 'advantage' they > speak of died in 1994. Back in the DOS and Windows 3.x days, it was > prevalent for the apps to have special hooks into the OS that only MS > published. Now everything's bloody there (far more than anyone would ever > want). I have to say I do agree, but what are the other options? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 15:11:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56589 for dynarec-outgoing; Wed, 7 Jun 2000 15:11:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: VIP definition From: "M.I.K.e" In-Reply-To: <003101bfd0b7$685ed060$0100a8c0@lion> Message-ID: <0003697e569a4976_mailit@mail.dynarec.com> References: <0003697aa58ea39d_mailit@mail.dynarec.com> <003101bfd0b7$685ed060$0100a8c0@lion> Date: Thu, 08 Jun 2000 00:17:49 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >And I'm working on a system which... well, basically, is the defence for >Germany and France in the future. And it goes in the air and so I beat you! >;p Erm, you should be careful when you translate that to German since the literal translation of "it goes in the air" would be "es geht in die Luft", which has basically the same meaning but also the secondary meaning of "it explodes" ;-) >Neil. -- M.I.K.e You're at the end of the road again. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 15:13:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56601 for dynarec-outgoing; Wed, 7 Jun 2000 15:13:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 7 Jun 2000 15:24:40 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: VIP definition In-Reply-To: <006801bfd0cc$940d2b20$0100a8c0@nibble> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > You probably wouldn't say the same thing if you've worked with a wide > > spread of CPUs. > Yes, you are probably right. And yes, you guessed that I have only really > used the old 16-bit 68K, which yes is still taught at my Uni. :) I didn't get in to the x86 until the early 90's. My first CPU was the 6502, followed by the 8080 and then the Z80. I dealt a bit with the 6809, but not too much. > I feel inadequate! Well, I am learning. Sorry for the silly questions then, > but if I don't ask, I won't learn. I guess that knowledge of err, like more > than one CPU would be rather helpful in this list, but dynarec is really > interesting, obviously being why I joined. You REALLY get a handle on this crap when you write a dynarec. It's sort of a trial by fire! > > Consider that at the time when the 68K came out, it was the odd man > > out. All CPUs up until then were little endian (for the prior 20 years > > before that). > I suppose everything is going pretty much big-endian now (?) It seems most > RISC developers use the big endian features of these processors... Is IA64 > much RISC? Heh. Another fun topic. Define "RISC". ;-) The ARM is little endian, and it's modern. I think the IA64 stuff can be both. But the IA64 is PA-RISC. > > I left out the ARM 7 in my list above (which I program in daily). > Oh yeah? Is that the Thumb architecture or the "older" one. I was thinking > about applying for a job there (at ARM). Are they relatively nice to > program? Program in it daily? What do you use them for? Thumb mode. No comment on what I'm doing with it, though. ;-) But yes, I work on it daily. Not only in assembly, but also in C with a buggy C compiler. One of my other pet peeves about "RISC" CPUs is that they cannot deal with unaligned dword reads/writes. The ARM core we're using won't even throw an exception when it occurs, so we've got to make sure our compiler is handling things right in all cases! > You are subscribed (moderator for all of them?) to 50 newsgroups and get > 400+ messages a day, you are into emulation, write CPU's cores, wrote > Retrocade, make music with your synth's, have 3 pins etc. etc. I said 25 mailing lists. And yes, I get around 400+ a day. But I don't write CPU cores, write Retrocade or do music as of late because I've been too busy with other crap. > Doesn't your wife feel a little left out? :)) Notreally, because she's just as busy as I am. ;-) But suffice to say our marriage couldn't be any better. We both love being occupied but still find time for eachother. We haven't missed a dinner together in months. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 15:17:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56615 for dynarec-outgoing; Wed, 7 Jun 2000 15:17:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 7 Jun 2000 15:29:11 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: VIP definition In-Reply-To: <0003697e3c73a5a9_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >But all the DEC VAXs were little endian and were more prevalent in the > >"user" sector. > True but the VAX is much newer (1978). Okay, PDP-11. ;-) Circa 1972 I believe? > >I knew of tons of VAXs. Very little 360's. > VAXen were cheaper but not that much used nowadays. The IBM 360 and its > successors are still around. I haven't seen one in years. Lots of VAXs though. > >And there are tons of 8 bit micros (even from Motorola) that are little > endian. > Could you given an example because I don't know any little-endian Motorolas. I'll check my books at home before speaking any further. The 6808 I believe was little endian. > >I don't know how you can say that. The 6800's design was almost a blatant > >rip of the 6502. > Sorry when I have to correct you, but the 6800 was designed shortly after the > 8080 and is older than the 6502. Actually the 6502 was designed by some Sorry - change 6800 to 6808. The 6800 is older than 1975 (6502 days?)? I'll check my books at home > Therefore the 6502 is a ripped 6800: accumulator B dropped, stack pointer > stripped from 16 to 8 bit, same thing about the index register. The only > thing they added was the second index register and a few more addressing > modes. And that fucked up zero page thing. > >*SEVERE* not-invented-here syndrome. When I saw "bl" for the first time, I > >was like "WTF?" They should've just called it jump like every other > >stupid CPU on the market (except BSR). > First of all it's quite common to call relative PC changes a branch and > absolute changes a jump, not only Motorola or ARM do it this way. Since BL * > is* relative it's quite abvious to call it a branch. The jump instruction is > performed by a MOV to R15 in ARM. > Actually even the IBM 360 already had an instruction called BAL (branch and > link)! > You surely are a much better assembly programmer than me, but you won't beat > me in computer architecture history! Maybe not, but when you're talking about a world of microprocessors and there are terms that are common and widespread, using less common obscure terms is just flat arrogance. > >I'm a closet case mechanic. Use to race cars eons ago - > You must be older than you told us then! ;-) Turned 31 last month. > >specifically rotary motors (the best engine design > >in terms of pure physics, IMHO). > I'm not into motors really, so you could tell me about anything... Felix Wankel - a noted German. ;-) That man had a vision. Makes piston engines look stupid. A 4 cylinder engine has 33 moving parts. A rotary engine has *THREE* moving parts. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 15:33:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56645 for dynarec-outgoing; Wed, 7 Jun 2000 15:33:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 7 Jun 2000 15:44:42 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: OT (just for once): MS In-Reply-To: <002301bfd0cd$944842e0$a40e8cd4@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Won't make a damn bit of difference. If anything, we'll have two > > Microsofts to deal with - not just one. The "OS/app" 'advantage' they > > speak of died in 1994. Back in the DOS and Windows 3.x days, it was > I have to say I do agree, but what are the other options? Options for... punishment? The problem is the damage has long since been done. Fines, say 25% of their gross profit for a year must go t a federal education fund. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 15:38:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56660 for dynarec-outgoing; Wed, 7 Jun 2000 15:38:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005101bfd0d2$2db66160$a40e8cd4@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: OT (just for once): MS Date: Wed, 7 Jun 2000 23:45:58 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Options for... punishment? The problem is the damage has long since been > done. Fines, say 25% of their gross profit for a year must go t a federal > education fund. Like you say the damage has been done, I'm not too bothered about punishment but I guess anything to truly make amends would mean the destruction of MS. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 15:41:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56675 for dynarec-outgoing; Wed, 7 Jun 2000 15:41:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 7 Jun 2000 15:53:08 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: OT (just for once): MS In-Reply-To: <005101bfd0d2$2db66160$a40e8cd4@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > done. Fines, say 25% of their gross profit for a year must go t a federal > > education fund. > Like you say the damage has been done, I'm not too bothered about punishment > but I guess anything to truly make amends would mean the destruction of MS. And that wouldn't be a good thing for the industry. The last thing we need is fragmentation. We had that in the computer nidustry 20 years ago and it sucked! It doesn't matter anyway. Whatever the "big guy" is, we'll bitch and complain about it. As Devo said, Freedom of choice is what we've got, Freedom from choice is what you want. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 16:16:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA56711 for dynarec-outgoing; Wed, 7 Jun 2000 16:16:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: VIP definition From: "M.I.K.e" In-Reply-To: <006801bfd0cc$940d2b20$0100a8c0@nibble> Message-ID: <0003697ef4c971b9_mailit@mail.dynarec.com> References: <006801bfd0cc$940d2b20$0100a8c0@nibble> Date: Thu, 08 Jun 2000 01:02:03 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I suppose everything is going pretty much big-endian now (?) Nope, nowaday almost any processor can run in both modes. >It seems most >RISC developers use the big endian features of these processors... ARM was little-endian in the beginning but can be big-endian as well since ARM6. I think Alpha is little-endian only. >Is IA64 pretty much RISC? Actually it's VLIW (very long instruction word) with 3 instructions in one 128-bit bundle, but the instructions are very RISC-like. >Oh yeah? Is that the Thumb architecture or the "older" one. Erm, there is no Thumb architecture per se! Thumb is an additional mode with 16-bit instructions in contrast to the normal ARM instructions. But it cannot exist on its own since the startup code has to be ARM and the processor switches back to the ARM mode on exceptions. The same is true for Itanium: when it runs in IA-32 mode and an exception occurs it switches back to IA-64. That's why no IA-32 OSes will run on Itanium, but it is possible to write operating systems that run the older IA- 32 software. >I was thinking >about applying for a job there (at ARM). Are they relatively nice to >program? I think of all RISC processors ARM might be the best to program in assembly. >Kieron -- M.I.K.e Toilet Toup'ee, n.: Any shag carpet that causes the lid to become top-heavy, thus creating endless annoyance to male users. -- Rich Hall, "Sniglets" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 16:16:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA56722 for dynarec-outgoing; Wed, 7 Jun 2000 16:16:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: VIP definition From: "M.I.K.e" In-Reply-To: Message-ID: <0003697f203367db_mailit@mail.dynarec.com> References: Date: Thu, 08 Jun 2000 01:14:12 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I didn't get in to the x86 until the early 90's. Wow, I would have bet it was much earlier! This means there is still chance for me to catch up a bit... >Heh. Another fun topic. Define "RISC". ;-) According to David Patterson: * simple instructions that can be executed in one cycle using a pipeline * load/store architecture * fixed instruction length * large set of general purpose registers * and the original Berkeley-RISC also had register windows, which are only used by Sparc now. >The ARM is little endian, and it's modern. The first ARM's were little-endian, from the ARM6 on it could be both. >I think the IA64 stuff can be both. Not sure about that one... >But the IA64 is PA-RISC. The IA-64 was designed by Intel and HP but it is *not* PA-RISC! Apart from the fact that it is a load/store architecture it has almost no similarites with PA-RISC and is certainly not compatible to it. Originally IA-64 should include x86 and PA modes but only IA-32 was added, therefore HP is likely to be using dynamic recompilation techniques for older software. >Thumb mode. No comment on what I'm doing with it, though. ;-) Either NDA or it's a secret emulator ;-) >One of my other pet peeves about "RISC" CPUs is that they cannot deal with >unaligned dword reads/writes. PowerPC can and MIPS has special instructions for it. I think the reason for not having unaligned memory access is that you cannot hit page boundaries and don't have the potential of two MMU accesses in one memory access, but that's just my speculation. >-->Neil -- M.I.K.e "APL is a write-only language. I can write programs in APL, but I can't read any of them." -- Roy Keir --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 16:16:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA56729 for dynarec-outgoing; Wed, 7 Jun 2000 16:16:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: VIP definition From: "M.I.K.e" In-Reply-To: Message-ID: <0003697f3e7ed851_mailit@mail.dynarec.com> References: Date: Thu, 08 Jun 2000 01:22:40 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Okay, PDP-11. ;-) Circa 1972 I believe? You could even go back to the first real hit by DEC, the first minicomputer, namely PDP-8, which is still newer than the IBM 360 (1965). >I haven't seen one in years. Lots of VAXs though. I think they are used by governments and insurance firms to deal with a large amount of data. The computers caused the main problems during the Y2K fixings. >I'll check my books at home before speaking any further. The 6808 I >believe was little endian. I think the 6808 is compatible to the 6800 and should be big-endian, but I might be wrong... >Sorry - change 6800 to 6808. The 6800 is older than 1975 (6502 >days?)? I'll check my books at home I think the 6800 is 1974 and the 6502 is 1975, but I'll have to check that too. >And that fucked up zero page thing. The 6809 changed that to direct page access which is a good thing because it makes programs smaller and instructions faster. >Maybe not, but when you're talking about a world of microprocessors and >there are terms that are common and widespread, using less common obscure >terms is just flat arrogance. Well, acording to most computer architecture books I know a branch is relative and a jump is absolute. >Turned 31 last month. Yeah, I think it was the 6th, right? This is one day before mine ;-) What I meant is that you could be much older having done all that stuff! >Felix Wankel - a noted German. ;-) That man had a vision. Makes piston >engines look stupid. I'm sure you mentioned that name before! >A 4 cylinder engine has 33 moving parts. A rotary engine has *THREE* >moving parts. Uh, that's cool! Less parts, less problems! >-->Neil -- M.I.K.e The first duty of a revolutionary is to get away with it. -- Abbie Hoffman --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 19:43:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA56884 for dynarec-outgoing; Wed, 7 Jun 2000 19:43:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006701bfd0a6$3572d590$0100a8c0@nibble> From: "Kieron Wilkinson" To: References: Subject: Re: DYNAREC: VIP definition Date: Wed, 7 Jun 2000 18:31:25 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You probably wouldn't say the same thing if you've worked with a wide > spread of CPUs. Yes, you are probably right. And yes, you guessed that I have only really used the old 16-bit 68K, which yes is still taught at Uni. :) I feel inadequate! Well, I am learning. Sorry for the silly questions then, but if I don't ask, I won't learn. I guess that knowledge of err, like more than one CPU would be rather helpfull in this list, but dynarec is really interesting to me. > Consider that at the time when the 68K came out, it was the odd man > out. All CPUs up until then were little endian (for the prior 20 years > before that). I suppose everything is going pretty much big-endian now (?) It seems most RISC users use the big endian features of these processors... Is IA64 pretty much RISC? > I left out the ARM 7 in my list above (which I program in daily). Oh yeah? Is that the Thumb architecture or the "older" one. I was thinking about applying for a job there. Are they reletively nice to program? Daily? What do you use them for? One last question Neil, You are subscribed (moderator for all of them?) to 50 newsgroups and get 400+ messages a day, you are into emulation, write CPU's cores, wrote Retrocade, make music with your synth's, have 3 pins etc. etc. Doesn't your wife feel a little left out? :)) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 7 22:18:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA57001 for dynarec-outgoing; Wed, 7 Jun 2000 22:18:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 7 Jun 2000 22:30:18 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: VIP definition In-Reply-To: <0003697ef4c971b9_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I was thinking > >about applying for a job there (at ARM). Are they relatively nice to > >program? > I think of all RISC processors ARM might be the best to program in assembly. ARM Tools *SUCK*. The debugger, which hadn't seen an update in 1.5 years, is the biggest piece of shit ever made. The debugger will go out to lunch and you have to switch to another application and come back to it to get it to respond. It often will orphan itself when you close it, and when you bring up a fresh copy of it, the orphaned image will cause you all sorts of strange debuggability problems. The compiler is worse. You can't individually turn on/off warnings, and when you enable additional warnings, you get additional bogus warnings in addition to the good ones. It also doesn't properly handle unaligned members within a structure when referenced as a packed array (as a pointer it works OK), and will magically just do word size fetches (or dword size) on the same word instead of across them. So I've grown to hate ARM, their lousy tools, and shoddy support of their products. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 8 04:33:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA57511 for dynarec-outgoing; Thu, 8 Jun 2000 04:33:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002401bfd0c5$0683f830$0100a8c0@nibble> From: "Kieron Wilkinson" To: References: Subject: Re: DYNAREC: VIP definition Date: Wed, 7 Jun 2000 22:12:00 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hmm, seems this did not get sent the first time, apologies if it comes up twice... > You probably wouldn't say the same thing if you've worked with a wide > spread of CPUs. Yes, you are probably right. And yes, you guessed that I have only really used the old 16-bit 68K, which yes is still taught at my Uni. :) I feel inadequate! Well, I am learning. Sorry for the silly questions then, but if I don't ask, I won't learn. I guess that knowledge of err, like more than one CPU would be rather helpfull in this list, but dynarec is really interesting, obviously being why I joined. > Consider that at the time when the 68K came out, it was the odd man > out. All CPUs up until then were little endian (for the prior 20 years > before that). I suppose everything is going pretty much big-endian now (?) It seems most RISC developers use the big endian features of these processors... Is IA64 pretty much RISC? > I left out the ARM 7 in my list above (which I program in daily). Oh yeah? Is that the Thumb architecture or the "older" one. I was thinking about applying for a job there (at ARM). Are they reletively nice to program? Program in it daily? What do you use them for? One last question Neil, You are subscribed (moderator for all of them?) to 50 newsgroups and get 400+ messages a day, you are into emulation, write CPU's cores, wrote Retrocade, make music with your synth's, have 3 pins etc. etc. Doesn't your wife feel a little left out? :)) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 8 11:22:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA57963 for dynarec-outgoing; Thu, 8 Jun 2000 11:21:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: OT (just for once): MS From: "M.I.K.e" In-Reply-To: <001a01bfd0d1$c4d07000$0100a8c0@lion> Message-ID: <0003698f3f9c9128_mailit@mail.dynarec.com> References: <001a01bfd0d1$c4d07000$0100a8c0@lion> Date: Thu, 08 Jun 2000 20:28:18 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com The "true" story about the Microsoft spilt is available on BeDope: http://www.bedope.com/stories/0110.html I for my part think that this is going to change nothing! Only when third parties stop producing Windows specific hardware (softmodems, GDI printer, etc) and when they don't have any contracts with Microsoft which don't let them give other OS producers the necessary information to write * good* drivers the position of Microsoft won't change in any way! -- M.I.K.e "If value corrupts then absolute value corrupts absolutely" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 9 02:28:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA58946 for dynarec-outgoing; Fri, 9 Jun 2000 02:28:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006090932.LAA06011@pons.ac.upc.es> Subject: DYNAREC: I'm free!! In-Reply-To: <0003698f3f9c9128_mailit@mail.dynarec.com> "from M.I.K.e at Jun 8, 2000 08:28:18 pm" To: dynarec@dynarec.com Date: Fri, 9 Jun 2000 11:32:03 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Finally! I ended my exams!. :) Let see if I can now end some of the docs I started and post it to the list. I got an idea. If you want I could write a brief history of the subjects discussed on the list. It could help to know what has been discussed for the newcomers and also help remember us what subjects have been studied or need further study. A real brief of the discussions could be interesting aswell but will be harder to do. Who knows, if I get bored ... ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 9 02:37:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA58966 for dynarec-outgoing; Fri, 9 Jun 2000 02:37:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3940BAD2.6A89CD8C@eurocopter.de> Date: Fri, 09 Jun 2000 11:37:22 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: I'm free!! References: <200006090932.LAA06011@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Finally! I ended my exams!. :) Congrats! Good luck with the results! :) > I got an idea. If you want I could write a brief history of the subjects > discussed on the list. It could help to know what has been discussed for the > newcomers and also help remember us what subjects have been studied or > need further study. A real brief of the discussions could be interesting > aswell but will be harder to do. Who knows, if I get bored ... ;) Could always just collate all the e-mails into one giant file. That'd confuse people. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 9 02:46:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA58983 for dynarec-outgoing; Fri, 9 Jun 2000 02:46:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006090949.LAA07306@pons.ac.upc.es> Subject: Re: DYNAREC: I'm free!! In-Reply-To: <3940BAD2.6A89CD8C@eurocopter.de> "from Neil Griffiths at Jun 9, 2000 11:37:22 am" To: dynarec@dynarec.com Date: Fri, 9 Jun 2000 11:49:54 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > Finally! I ended my exams!. :) > > Congrats! Good luck with the results! :) > If I'm lucky they will be the last exams in a long long time. I have ended all my university subjects now. :) > > I got an idea. If you want I could write a brief history of the subjects > > discussed on the list. It could help to know what has been discussed for the > > newcomers and also help remember us what subjects have been studied or > > need further study. A real brief of the discussions could be interesting > > aswell but will be harder to do. Who knows, if I get bored ... ;) > > Could always just collate all the e-mails into one giant file. That'd > confuse people. :) > Well, all this off topic mails could really confuse everybody. ;) But this will be easy to NB. I think a ZIP file with all the mails should be around 500K-1MB now. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 9 02:57:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA58999 for dynarec-outgoing; Fri, 9 Jun 2000 02:57:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3940BF1F.1FFB512@eurocopter.de> Date: Fri, 09 Jun 2000 11:55:43 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: I'm free!! References: <200006090949.LAA07306@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Could always just collate all the e-mails into one giant file. That'd > > confuse people. :) > > > Well, all this off topic mails could really confuse everybody. ;) > But this will be easy to NB. I think a ZIP file with all the mails > should be around 500K-1MB now. And if you snip all the off-topic stuff (like this vaguely is though it's slightly on-topic too!) then we could get it down to under 150k compressed. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 9 02:57:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA59014 for dynarec-outgoing; Fri, 9 Jun 2000 02:57:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: I'm free!! From: "M.I.K.e" In-Reply-To: <200006090932.LAA06011@pons.ac.upc.es> Message-ID: <0003699c26a89558_mailit@mail.dynarec.com> References: <200006090932.LAA06011@pons.ac.upc.es> Date: Fri, 09 Jun 2000 11:51:54 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Finally! I ended my exams!. :) Well done! >Let see if I can now end some of the docs I started and post it to the >list. When Neil creates an account for you on the dynarec server you could also put the docs there. >I got an idea. If you want I could write a brief history of the subjects >discussed on the list. Sounds like a good idea. >It could help to know what has been discussed for the >newcomers and also help remember us what subjects have been studied or >need further study. We discussed something? ;-) >A real brief of the discussions could be interesting >aswell but will be harder to do. Who knows, if I get bored ... ;) I hope you get very bored! ;-) >Victor Moya -- M.I.K.e "The sooner all the animals are dead, the sooner we'll find their money." -- Ed Bluestone, "The National Lampoon" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 9 02:57:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA59017 for dynarec-outgoing; Fri, 9 Jun 2000 02:57:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: I'm free!! From: "M.I.K.e" In-Reply-To: <3940BAD2.6A89CD8C@eurocopter.de> Message-ID: <0003699c2ba40587_mailit@mail.dynarec.com> References: <200006090932.LAA06011@pons.ac.upc.es> <3940BAD2.6A89CD8C@eurocopter.de> Date: Fri, 09 Jun 2000 11:53:18 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Could always just collate all the e-mails into one giant file. That'd >confuse people. :) And leaving all the off-topic stuff in of course! ;-) BTW, the file would be 7.6 MB big! >Neil. -- M.I.K.e Any clod can have the facts, but having an opinion is an art. -- Charles McCabe --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 9 08:53:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA59388 for dynarec-outgoing; Fri, 9 Jun 2000 08:53:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39411340.60275540@eurocopter.de> Date: Fri, 09 Jun 2000 17:54:40 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: I'm free!! References: <200006090932.LAA06011@pons.ac.upc.es> <3940BAD2.6A89CD8C@eurocopter.de> <0003699c2ba40587_mailit@mail.dynarec.com> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Could always just collate all the e-mails into one giant file. That'd > >confuse people. :) > > And leaving all the off-topic stuff in of course! ;-) > BTW, the file would be 7.6 MB big! Quite impressive. BTW all, there is a beer festival on in Mike's town this weekend. I'm sure he'd invite you all - but I think it's quite far for you all to come, but I'm going. It will be interesting to see what an alchohol-induced brain can in fact come up with when talking about processors. Who knows, maybe we can invent a new dynarec technique! Or... better words. Like "Shnurfl" for no other reason than it just sounds cool. :) And yes, it will be quite funny. While other people around us will be talking about their beer (and food, that's quite likely too), we'll be talking about processors. Damn, I'm becoming geeky! Still... beer. German beer. Niiiiice. :) A maß of beer = 1 litre. Alchoholic content is typically 5.2% or above. Does anybody else think that Germans like their beer? :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 9 18:15:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA60008 for dynarec-outgoing; Fri, 9 Jun 2000 18:15:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001901bfd27a$0f810520$0100a8c0@nibble> From: "Kieron Wilkinson" To: References: <200006090932.LAA06011@pons.ac.upc.es> Subject: Re: DYNAREC: I'm free!! Date: Sat, 10 Jun 2000 02:20:26 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I tell you what Victor, I got your message about finihsing exams (well done!) walking out of my last exam (I get them on my phone).... For the subject of SI: Please lay off the context for a bit... Cos now I have rthe chance to write one! Sorry for any speliing mistakes - I am soooo pissed right now... :) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 10 02:28:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA60546 for dynarec-outgoing; Sat, 10 Jun 2000 02:28:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001901bfd2c7$2a1e0ac0$0100a8c0@lion> From: "Neil Griffiths" To: References: <200006090932.LAA06011@pons.ac.upc.es> <001901bfd27a$0f810520$0100a8c0@nibble> Subject: Re: DYNAREC: I'm free!! Date: Sat, 10 Jun 2000 11:32:13 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I tell you what Victor, I got your message about finihsing exams (well > done!) walking out of my last exam (I get them on my phone).... Well done to you too! Just think, I'd be exactly the same right now if I wasn't in Germany... :o > For the subject of SI: Please lay off the context for a bit... Cos now I > have rthe chance to write one! Okay then. :) > Sorry for any speliing mistakes - I am soooo pissed right now... :) So long as you don't e-mail lots of people saying "I love you!" then that's fine. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 10 14:37:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA63430 for dynarec-outgoing; Sat, 10 Jun 2000 14:37:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 10 Jun 2000 14:49:57 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: OT (just for once): MS In-Reply-To: <0003698f3f9c9128_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The "true" story about the Microsoft spilt is available on BeDope: > http://www.bedope.com/stories/0110.html > I for my part think that this is going to change nothing! Agreed. > Only when third parties stop producing Windows specific hardware (softmodems, Yeuck. Winmodems. Belugh. The fortunate thing is that they are dying. People have caught wind that they're bad news on a large scale. > GDI printer, etc) and when they don't have any contracts with Microsoft which > don't let them give other OS producers the necessary information to write * > good* drivers the position of Microsoft won't change in any way! The problem with writing *GOOD* drivers has nothing to do with Microsoft, it has to do with the inability of hardware companies to produce the drivers (speaking as a driver author myself). -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 11 04:34:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA64289 for dynarec-outgoing; Sun, 11 Jun 2000 04:34:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006701bfd39a$1be24060$d1098cd4@daves> From: "David Sharp" To: References: <200006090932.LAA06011@pons.ac.upc.es> <001901bfd27a$0f810520$0100a8c0@nibble> Subject: Re: DYNAREC: I'm free!! Date: Sun, 11 Jun 2000 12:42:19 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Please stop talking about exams and them being over, I've 11 starting tomorrow and totalling 23 hours of exams between then and the 23rd.... Cheers Dave PS: 2nd year CompSci and Warwick, England - and hating it at the moment > I tell you what Victor, I got your message about finihsing exams (well > done!) walking out of my last exam (I get them on my phone).... > > For the subject of SI: Please lay off the context for a bit... Cos now I > have rthe chance to write one! > > Sorry for any speliing mistakes - I am soooo pissed right now... :) > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 12 14:07:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA66392 for dynarec-outgoing; Mon, 12 Jun 2000 14:07:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001d01bd964f$0c1dbc20$0100a8c0@lion> From: "Neil Griffiths" To: References: <200006090932.LAA06011@pons.ac.upc.es> <001901bfd27a$0f810520$0100a8c0@nibble> <006701bfd39a$1be24060$d1098cd4@daves> Subject: Re: DYNAREC: I'm free!! Date: Fri, 12 Jun 1998 23:10:14 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Please stop talking about exams and them being over, I've 11 starting > tomorrow and totalling 23 hours of exams between then and the 23rd.... I can still beat that, I've got to go into work tomorrow and program in Ada. ;) Seriously, good luck! > PS: 2nd year CompSci and Warwick, England - and hating it at the moment Computer Science, that's fair enough. But Warwick? I mean... Warwick? Any place within 30 miles of Rugby and Coventry can't be a good place! Besides, didn't you see the scenery in Dangerfield? Warwick indeed! ;) Speaking of which, at least you had the year to do that. I did a HND in Computer Science in Wrexham (so I can't really complain about Warwick!) and then went to Stafford, did the 2nd year Computer Science in 3 months (yes, really!) and I'm currently in Germany doing 9 months work placement. I didn't have 11 exams though, so you've beaten me on that score. Mind you, I'm betting you don't actually WANT to beat me on that score! Warwick! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 12 23:17:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA66900 for dynarec-outgoing; Mon, 12 Jun 2000 23:17:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3945D240.1CE3BE36@eurocopter.de> Date: Tue, 13 Jun 2000 08:18:40 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: I'm free!! References: <200006090932.LAA06011@pons.ac.upc.es> <001901bfd27a$0f810520$0100a8c0@nibble> <006701bfd39a$1be24060$d1098cd4@daves> <001d01bd964f$0c1dbc20$0100a8c0@lion> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Grr, that's annoying. Somebody has set the clock on my PC back by 2 years (so if your mail-software sorts by date then there'll be a message at the bottom of the list from me. I know that it will have been 1 of 2 people, time to go kick arse! GRR! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 12 23:23:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA66913 for dynarec-outgoing; Mon, 12 Jun 2000 23:23:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006130627.IAA18193@pons.ac.upc.es> Subject: Re: DYNAREC: I'm free!! In-Reply-To: <3945D240.1CE3BE36@eurocopter.de> "from Neil Griffiths at Jun 13, 2000 08:18:40 am" To: dynarec@dynarec.com Date: Tue, 13 Jun 2000 08:27:43 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > Grr, that's annoying. Somebody has set the clock on my PC back by 2 years > (so if your mail-software sorts by date then there'll be a message at the > bottom of the list from me. I know that it will have been 1 of 2 people, > time to go kick arse! > > GRR! > Yes. I was deleting old messages today and only by luck I haven't deleted it. You have to watch your PC. ;) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 12 23:38:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA66933 for dynarec-outgoing; Mon, 12 Jun 2000 23:38:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3945D73F.CDB439BE@eurocopter.de> Date: Tue, 13 Jun 2000 08:39:59 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: I'm free!! References: <200006130627.IAA18193@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > You have to watch your PC. ;) Ah, but I was with Mike this weekend at this strange beer festival in his town. Strange because it's on what they call a hill. I wouldn't mind, but I have difficulty grasping the concept of something you walk over in one step is a hill. :) Anyway, that's the end of it. I'm now protecting every part of my PC. It isn't going to happen again! Whether they say "Oh, but we want to watch a DVD" or not, I don't care. If they can't be trusted... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 13 00:00:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA66962 for dynarec-outgoing; Tue, 13 Jun 2000 00:00:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3945DC27.E2F7FD33@eurocopter.de> Date: Tue, 13 Jun 2000 09:00:55 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: Dynarec project References: <200006130627.IAA18193@pons.ac.upc.es> <3945D73F.CDB439BE@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, I've been considering writing a dynamically compiling CPU for when I go back to University as I have to pick a project. However, I've sent a preliminary plan off to my project tutor about a completely different project because of problems I can forsee. These are: - Why is it useful (in a commercial environment)? - Why is it better? - How can I demonstrate it? - How can I demonstrate that it is better than other methods? - Will it be impressive to show a future employer? I still have time to change my mind about it because our projects aren't set until September. However, I'm not sure that I will change it because I can see no good way to get around those problems. Can anyone else? The project idea I've come up with is something similar to Klik'n'play (if you know it - if not, think of a games creation tool). This will be a GUI language-type thing with simple scripts. This will output C or C++ code (not an important consideration yet) and will be as optimised as I can get it. The problem is that in both cases, it's code I'd write anyway - for the emulator I'm writing with Andrew. The CPU core (needs writing!) but also graphical, sound and networking routines. I think the clincher is the fact that at some point, NB, Andy and me are meant to get together to write a good 68k dynarec core anyway so I'll probably do the game creation thing. It's better than repeating code I suppose. Besides, I want to end up working with 3D graphics so it's probably best that I do things relating to graphics. Although it would make more sense to do something in 3D - but I can't think of anything that I could do well in the 7 months or so that I'll have in 3D! Whatever I choose to write, I've got a name for it. "Hard light". Why? Well, I know that Mike will be laughing about now. :)) Neil. PS Hard light! Lalalalaaaaa... Hard light! ;) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 13 00:02:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA66978 for dynarec-outgoing; Tue, 13 Jun 2000 00:02:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006130706.JAA30315@pons.ac.upc.es> Subject: Re: DYNAREC: I'm free!! In-Reply-To: <0003699c26a89558_mailit@mail.dynarec.com> "from M.I.K.e at Jun 9, 2000 11:51:54 am" To: dynarec@dynarec.com Date: Tue, 13 Jun 2000 09:06:49 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I got an idea. If you want I could write a brief history of the subjects > >discussed on the list. > > Sounds like a good idea. > Now I have taken a look to the mails it didn't seem a so good idea. Do you know how off-topic we were? > >It could help to know what has been discussed for the > >newcomers and also help remember us what subjects have been studied or > >need further study. > > We discussed something? ;-) > Yes about music, language, SF and Fantasy books, girls and perhaps French. ;) We will have to change the name of the list. > >A real brief of the discussions could be interesting > >aswell but will be harder to do. Who knows, if I get bored ... ;) > > I hope you get very bored! ;-) Unluckily this weekend I spent all my time resting and playing videogames. I didn't feel with energy to begin nothing. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 13 00:12:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA66994 for dynarec-outgoing; Tue, 13 Jun 2000 00:12:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 13 Jun 2000 00:16:16 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec project In-Reply-To: <3945DC27.E2F7FD33@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > preliminary plan off to my project tutor about a completely different > project because of problems I can forsee. These are: > - Why is it useful (in a commercial environment)? Who cares why it's useful in a *COMMERCIAL* environment?!?! I can think of one very good reason. In a lot of cases, embedded systems wind up with an executable to a device. Software engineer leaves the company and takes source with him (yes, it's *REALLY* common). Now supplier of said CPU is now discontinuing it. Now the company is faced with a rewrite... but not if they've got a dynarec! > - Why is it better? Better than... interpreted code? It's faster! > - How can I demonstrate it? Simple game of Space Invaders, Targ, etc... would demonstrate it - one emulated, one not. Make sure you log the results of the recompilation! > - How can I demonstrate that it is better than other methods? Use my emulator core (which IMHO is the fastest Z80 emulator out there) to demonstrate that it operates faster. > - Will it be impressive to show a future employer? Yes. Absolutely! It'll differentiate you between the average Joe out of college who "worked on a C project 2 years ago" and practically wrote a compiler. Speaking as a potential hire, if someone did something like that and showed it to me on their resume, I'd be impressed as hell, and it'd certainly show that they are REALLY interested in what they're doing and would also give me a great insight to their thought process. > set until September. However, I'm not sure that I will change it because I > can see no good way to get around those problems. Can anyone else? I'm confused... are you changing it *TO* recompilation or *AWAY* from? I'd go for it! It's a unique topic and it's sure to impress! > The problem is that in both cases, it's code I'd write anyway - for the > emulator I'm writing with Andrew. The CPU core (needs writing!) but also > graphical, sound and networking routines. I think the clincher is the fact > that at some point, NB, Andy and me are meant to get together to write a > good 68k dynarec core anyway so I'll probably do the game creation thing. Mark my words - we *WILL* do a 68K dynarec core. I promise! I'll also get back to my Z80 core as soon as I've been able to flatten out my synthesizer upgrade project. It'll be a couple of months, though. > working with 3D graphics so it's probably best that I do things relating to > graphics. Although it would make more sense to do something in 3D - but I > can't think of anything that I could do well in the 7 months or so that > I'll have in 3D! 3D Graphics is fine, but you won't learn 3D concepts in a 2D world. > Whatever I choose to write, I've got a name for it. "Hard light". Why? > Well, I know that Mike will be laughing about now. :)) I hope this isn't a reference to lighting one's own flatulence. ;-) Speaking of flatulence, I have a really cool patch on one of my synthesizers that emits farts. There's a "wetness" knob, too. My wife and I were in tears laughing! Want me to record an mp3 or two for your amusement? What's really interesting about it is that it's a modular synthesizer "emulator" of sorts that behaves in the same fashion (and is configurable just like) as a modular synthesizer of the early 70's. Check out www.nordmodular.com. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 13 00:46:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA67105 for dynarec-outgoing; Tue, 13 Jun 2000 00:46:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3945E665.E4434DD0@eurocopter.de> Date: Tue, 13 Jun 2000 09:44:37 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec project References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Who cares why it's useful in a *COMMERCIAL* environment?!?! I can think of > one very good reason. In a lot of cases, embedded systems wind up with an > executable to a device. Software engineer leaves the company and takes > source with him (yes, it's *REALLY* common). Now supplier of said CPU is > now discontinuing it. Now the company is faced with a rewrite... but not > if they've got a dynarec! That's a very good point. Hmm... > > - Why is it better? > > Better than... interpreted code? It's faster! Yes, I know that - and so do all of you on the list. But the project tutors won't know this... > > - How can I demonstrate it? > > Simple game of Space Invaders, Targ, etc... would demonstrate it - one > emulated, one not. Make sure you log the results of the recompilation! Hmm. By this, I assume that you mean one interpreted and one recompiled? > > - How can I demonstrate that it is better than other methods? > > Use my emulator core (which IMHO is the fastest Z80 emulator out there) to > demonstrate that it operates faster. Okay, this is looking more and more likely now... :) > > - Will it be impressive to show a future employer? > > Yes. Absolutely! It'll differentiate you between the average Joe out of > college who "worked on a C project 2 years ago" and practically wrote a > compiler. Speaking as a potential hire, if someone did something like that > and showed it to me on their resume, I'd be impressed as hell, and it'd > certainly show that they are REALLY interested in what they're doing and > would also give me a great insight to their thought process. You have a point here. The problem here is that the other idea also involves a sort of optimisation/transformation process which is also difficult. However, I'm thinking that dynamic recompilation could be more impressive. I guess I should sit down this weekend and try out some code on each one and see which one feels the best... > > set until September. However, I'm not sure that I will change it because I > > can see no good way to get around those problems. Can anyone else? > > I'm confused... are you changing it *TO* recompilation or *AWAY* from? I'd > go for it! It's a unique topic and it's sure to impress! To recompilation, I've currently suggested this games creation package. > Mark my words - we *WILL* do a 68K dynarec core. I promise! I'll also get > back to my Z80 core as soon as I've been able to flatten out my > synthesizer upgrade project. It'll be a couple of months, though. That's better for me anyway - I really don't have much free time at all at the moment. By the time I've got home, had something to eat and answered e-mail, I'm lucky if I get 6 hours sleep! Heh, I'm looking forward to going back to Uni so I can get some sleep! :)) > > working with 3D graphics so it's probably best that I do things relating to > > graphics. Although it would make more sense to do something in 3D - but I > > can't think of anything that I could do well in the 7 months or so that > > I'll have in 3D! > > 3D Graphics is fine, but you won't learn 3D concepts in a 2D world. I agree, but I already have a reasonable concept of 3D. I'd like to demonstrate that but I can't think of anything I'd want to write other than a 3D engine - and I just do *not* have the time for that! But I'm thinking that if I use DirectDraw and OpenGL for 2D then it's still quite impressive - though not nearly as much... > > Whatever I choose to write, I've got a name for it. "Hard light". Why? > > Well, I know that Mike will be laughing about now. :)) > > I hope this isn't a reference to lighting one's own flatulence. ;-) No, though after the Chile Con Carne we had yesterday it could have been! :) It's to do with the Germans at this beer festival singing. The songs were all in English - but the Germans were singing in Swedish (or any language that isn't, in fact, English). I can't remember the song title now, but the chorus has the words "hard life" in it. However, not one German actually sang that and they sang many other words instead. "Hard light", "hard like", "hard drive" and "United States of America". :)) > Speaking of flatulence, I have a really cool patch on one of my > synthesizers that emits farts. There's a "wetness" knob, too. My wife and > I were in tears laughing! Want me to record an mp3 or two for your > amusement? Why not? I need all the amusement I can get when I'm working with Ada! :o > What's really interesting about it is that it's a modular synthesizer > "emulator" of sorts that behaves in the same fashion (and is configurable > just like) as a modular synthesizer of the early 70's. Check out > www.nordmodular.com. Cool. Is this a digital synth or an analog? I can't check at the moment as I have no 'net access! :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 13 02:49:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA67372 for dynarec-outgoing; Tue, 13 Jun 2000 02:49:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: I'm free!! From: "M.I.K.e" In-Reply-To: <3945D240.1CE3BE36@eurocopter.de> Message-ID: <000369ec9a216af3_mailit@mail.dynarec.com> References: <200006090932.LAA06011@pons.ac.upc.es> <001901bfd27a$0f810520$0100a8c0@nibble> <006701bfd39a$1be24060$d1098cd4@daves> <001d01bd964f$0c1dbc20$0100a8c0@lion> <3945D240.1CE3BE36@eurocopter.de> Date: Tue, 13 Jun 2000 11:50:49 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Grr, that's annoying. Somebody has set the clock on my PC back by 2 years >(so if your mail-software sorts by date then there'll be a message at the >bottom of the list from me. Actually I noticed that before but I thought it could be a bug of my mail software since it only happened to some mails... Wait, maybe you sent the others from Eurocopter? >I know that it will have been 1 of 2 people, time to go kick arse! French guy kicking, sounds like your new favourite sport ;-) >Neil. -- M.I.K.e fortune: cpu time/usefulness ratio too high -- core dumped. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 13 12:24:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA67990 for dynarec-outgoing; Tue, 13 Jun 2000 12:24:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 13 Jun 2000 12:28:57 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec project In-Reply-To: <3945E665.E4434DD0@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Better than... interpreted code? It's faster! > Yes, I know that - and so do all of you on the list. But the project tutors > won't know this... But you can prove it to them (by demonstration) > > Simple game of Space Invaders, Targ, etc... would demonstrate it - one > > emulated, one not. Make sure you log the results of the recompilation! > Hmm. By this, I assume that you mean one interpreted and one recompiled? Yup. > > > - How can I demonstrate that it is better than other methods? > > Use my emulator core (which IMHO is the fastest Z80 emulator out there) to > > demonstrate that it operates faster. > Okay, this is looking more and more likely now... :) You can argue, "Hey, this thing is coded in tight x86 assembly and the dynarec core is 3X faster!" > You have a point here. The problem here is that the other idea also > involves a sort of optimisation/transformation process which is also > difficult. Just get it working, and you can start putting the optimization in. > However, I'm thinking that dynamic recompilation could be more > impressive. I guess I should sit down this weekend and try out some code on > each one and see which one feels the best... Dynarec, dynarec.... ;-) > that isn't, in fact, English). I can't remember the song title now, but the > chorus has the words "hard life" in it. However, not one German actually > sang that and they sang many other words instead. "Hard light", "hard Might've been Kenny Loggin's "Heartlight"? > > synthesizers that emits farts. There's a "wetness" knob, too. My wife and > > I were in tears laughing! Want me to record an mp3 or two for your > > amusement? > Why not? I need all the amusement I can get when I'm working with Ada! :o I'll see what I can come up with... > > "emulator" of sorts that behaves in the same fashion (and is configurable > > just like) as a modular synthesizer of the early 70's. Check out > > www.nordmodular.com. > Cool. Is this a digital synth or an analog? I can't check at the moment as > I have no 'net access! :-/ It's an analog modeling digital synth. The UI for it is amazingly cool. You should download the demo version. You grab virtual wires and connect them to various inputs/outputs - just like a real modular. And it sounds great, too! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 14 00:12:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA68661 for dynarec-outgoing; Wed, 14 Jun 2000 00:12:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39473024.7E2BDEB7@eurocopter.de> Date: Wed, 14 Jun 2000 09:11:32 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec project References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Okay, this is looking more and more likely now... :) > > You can argue, "Hey, this thing is coded in tight x86 assembly and the > dynarec core is 3X faster!" Heh, and if I couldn't get the dynarec faster than your code then I can just use one of the other Z80 cores. ;)) > > You have a point here. The problem here is that the other idea also > > involves a sort of optimisation/transformation process which is also > > difficult. > > Just get it working, and you can start putting the optimization in. That was the other project I was thinking about (the games one). > > However, I'm thinking that dynamic recompilation could be more > > impressive. I guess I should sit down this weekend and try out some code on > > each one and see which one feels the best... > > Dynarec, dynarec.... ;-) Yeeeeesssss maaaaaassssssttttteeeeerrrrr... ;) > > that isn't, in fact, English). I can't remember the song title now, but the > > chorus has the words "hard life" in it. However, not one German actually > > sang that and they sang many other words instead. "Hard light", "hard > > Might've been Kenny Loggin's "Heartlight"? No idea, but it better not have been else I was wrong! :o I'll see if I've got the song here (quite possible) and find out! > > Why not? I need all the amusement I can get when I'm working with Ada! :o > > I'll see what I can come up with... Cool. Done yet? > > Cool. Is this a digital synth or an analog? I can't check at the moment as > > I have no 'net access! :-/ > > It's an analog modeling digital synth. The UI for it is amazingly > cool. You should download the demo version. You grab virtual wires and > connect them to various inputs/outputs - just like a real modular. And it > sounds great, too! If it's not too big then I'll give it a go! I'll have to let my friend know about that though - he's really into synths (the anolog ones, he doesn't like the digital so much). He quite likes the Rebirth program thing as well... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 14 04:37:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA69072 for dynarec-outgoing; Wed, 14 Jun 2000 04:37:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec project From: "M.I.K.e" In-Reply-To: <3945E665.E4434DD0@eurocopter.de> Message-ID: <00036a025234c400_mailit@mail.dynarec.com> References: <3945E665.E4434DD0@eurocopter.de> Date: Wed, 14 Jun 2000 13:45:31 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >No, though after the Chile Con Carne we had yesterday it could have been! >:) I'm quite surprised that you survived my chili, not to mention that monster garlic the day before ;-) I certainly can tell you now that Neil is not a vampire! ;-) >It's to do with the Germans at this beer festival singing. I thought you wanted to keep that a secret... >Neil. -- M.I.K.e Goldenstern's Rules: (1) Always hire a rich attorney (2) Never buy from a rich salesman. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 14 05:05:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA69119 for dynarec-outgoing; Wed, 14 Jun 2000 05:05:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <394774B7.722E926A@eurocopter.de> Date: Wed, 14 Jun 2000 14:04:07 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec project References: <3945E665.E4434DD0@eurocopter.de> <00036a025234c400_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I'm quite surprised that you survived my chili, not to mention that monster > garlic the day before ;-) As I told you, the British have stomachs made of steel. Really, we're used to hot food. Right guys (given that about half of this list is made up of people from Britain!)? Indian food is in fact the #1 food in Britain right now. We have, in fact, invented Indian meals that have made their way back to India. The actual #1 food is "Chicken Tikka Masala" - which was also created in Britain! :) > I certainly can tell you now that Neil is not a vampire! ;-) Maybe, but when I'm at Uni I almost certainly evolve a sleeping pattern similar to one. :) > >It's to do with the Germans at this beer festival singing. > > I thought you wanted to keep that a secret... I did - and then I realised that I wasn't one of those guys singing! :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 01:45:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA79917 for dynarec-outgoing; Tue, 20 Jun 2000 01:45:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <394F2D8B.A6D5CC8E@eurocopter.de> Date: Tue, 20 Jun 2000 10:38:35 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: Diner wreck :) References: <3945E665.E4434DD0@eurocopter.de> <00036a025234c400_mailit@mail.dynarec.com> <394774B7.722E926A@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, So, I have good and bad news. The bad news is that I won't actually be able to do my dynarec at Uni because my tutor has accepted the one I suggested and I (apparently) cannot change. Bugger. However, this does leave me with slightly more free time and so I can still work on one in my own time anyway - so it's probably for the best. Besides, I'm not legally able to release the dynarec afterwards if I wrote it for my Uni project - because the University owns 50% of the copyright. And that's the same for every Uni in the UK - don't know about the US. So, all in all, it's probably a blessing in disguise. Anyway, as promised, I sat down this weekend to think about a dynarec. I think I've come up with a rather strange approach that may in fact work quite well. I haven't started to implement it, I just got some ideas together - which I find is most of my normal programming tasks anyway. One thing I found myself doing at the start is writing a static recompiler - that certainly isn't what I wanted to write, but I do think I'll be doing some research into this area next year. It's possible I may have discovered a good method but I'll wait and see what happens when I actually implement it... Okay, so it's clear that you need a code emitter. This is the thing that outputs the code for the destination CPU - a x86 CPU in my case. It's also in the emitter where I thought I would optimise - maybe not the best place to put it but it struck me as the most obvious place. Thinking back at it, it isn't the best place at all. Let's say that register A contains 56h. My optimiser knows this and so doesn't bother to change register A to make sure it *does* contain 56h. A simple optimisation. But what happens if I'm in a loop and the next time around register A doesn't contain 56h? I'd get some screwy results because my generated code would be correct and wouldn't be marked for recompilation. So I've scrapped that idea and I'll think more about optimisation at some later point. Anyway, I've discovered most code layers will remain the same between different CPUs. The only layers that would need changing would be the translation and emitting layers - and these can be merged into the same layer quite easily. This would work quite nicely. My main problem now is this: Let's say I generate a block of code. I need to execute that code so I jump into it. How do I get back into the dynarec core afterwards? This is the one thing I haven't sorted out in my head yet - I haven't found a good way to do it. So there we go. A nice, both thoughtful and relaxing, weekend. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 02:19:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA80103 for dynarec-outgoing; Tue, 20 Jun 2000 02:19:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 02:24:49 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Diner wreck :) In-Reply-To: <394F2D8B.A6D5CC8E@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > So, I have good and bad news. The bad news is that I won't actually be able > to do my dynarec at Uni because my tutor has accepted the one I suggested > and I (apparently) cannot change. That blows the donkey. ;-( > anyway - so it's probably for the best. Besides, I'm not legally able to > release the dynarec afterwards if I wrote it for my Uni project - because > the University owns 50% of the copyright. And that's the same for every Uni > in the UK - don't know about the US. So, all in all, it's probably a > blessing in disguise. That's fucked. In the US, what you do is yours. > One thing I found myself doing at the start is writing a static recompiler > - that certainly isn't what I wanted to write, but I do think I'll be doing > some research into this area next year. It's possible I may have discovered > a good method but I'll wait and see what happens when I actually implement > it... Really, a static recompiler is just a dynamic recompiler with preinformation about what's going on. ;-) Or depth traversal! > in the emitter where I thought I would optimise - maybe not the best place > to put it but it struck me as the most obvious place. Thinking back at it, > it isn't the best place at all. Let's say that register A contains 56h. My > optimiser knows this and so doesn't bother to change register A to make > sure it *does* contain 56h. A simple optimisation. But what happens if I'm > in a loop and the next time around register A doesn't contain 56h? You're screwed! ;-) > I'd get > some screwy results because my generated code would be correct and wouldn't > be marked for recompilation. So I've scrapped that idea and I'll think more > about optimisation at some later point. Yes, probably a good idea. It'll be tough to optimize the X86 code unless it's big time sloppy. But you may want to put your efforts in to optimizing the input. That might yield better results initially. > My main problem now is this: Let's say I generate a block of code. I need > to execute that code so I jump into it. How do I get back into the dynarec > core afterwards? This is the one thing I haven't sorted out in my head yet > - I haven't found a good way to do it. Well, remember my approach of storing the PC or return address when it's time to exit? I also check timing after every instruction (or later on at the end of every terminal). If I'm out of time to execute, I bail out and store the returning PC. That way I can jump back to the point where I left off. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 02:24:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA80116 for dynarec-outgoing; Tue, 20 Jun 2000 02:24:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006200928.LAA26039@pons.ac.upc.es> Subject: Re: DYNAREC: Diner wreck :) In-Reply-To: <394F2D8B.A6D5CC8E@eurocopter.de> "from Neil Griffiths at Jun 20, 2000 10:38:35 am" To: dynarec@dynarec.com Date: Tue, 20 Jun 2000 11:28:34 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > So, I have good and bad news. The bad news is that I won't actually be able > to do my dynarec at Uni because my tutor has accepted the one I suggested > and I (apparently) cannot change. Bugger. However, this does leave me with > slightly more free time and so I can still work on one in my own time > anyway - so it's probably for the best. Besides, I'm not legally able to > release the dynarec afterwards if I wrote it for my Uni project - because > the University owns 50% of the copyright. And that's the same for every Uni > in the UK - don't know about the US. So, all in all, it's probably a > blessing in disguise. > The same in Spain (or I think so). But what is the problem? if you don't sell it you shouldn't have any problem. And I'm sure nor the University nor my director will say nothing about what I do with my project. In any case you still have the 50% of the copyright so it's not only Uni decision. > Anyway, as promised, I sat down this weekend to think about a dynarec. I > think I've come up with a rather strange approach that may in fact work > quite well. I haven't started to implement it, I just got some ideas > together - which I find is most of my normal programming tasks anyway. > I feel afraid about what you can have invented. ;) > One thing I found myself doing at the start is writing a static recompiler > - that certainly isn't what I wanted to write, but I do think I'll be doing > some research into this area next year. It's possible I may have discovered > a good method but I'll wait and see what happens when I actually implement > it... > A static recompiler? Ummm! An easy way is extend a bit the idea of NG, just compile as many code as you can at start. I think he calls it 'depth traversal'. Then at execution time compile the unresolved jump address. > My main problem now is this: Let's say I generate a block of code. I need > to execute that code so I jump into it. How do I get back into the dynarec > core afterwards? This is the one thing I haven't sorted out in my head yet > - I haven't found a good way to do it. > You have checkpoints somewhere in your block (one at the end of the block or more than one to check timing) that jump out to the core. You also check for address if they are translated or not. > So there we go. A nice, both thoughtful and relaxing, weekend. :) > Well I was playing FF Tactics, so I can say the same ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 02:39:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA80139 for dynarec-outgoing; Tue, 20 Jun 2000 02:39:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006200937.LAA26259@pons.ac.upc.es> Subject: Re: DYNAREC: Diner wreck :) In-Reply-To: "from Neil Bradley at Jun 20, 2000 02:24:49 am" To: dynarec@dynarec.com Date: Tue, 20 Jun 2000 11:37:45 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > anyway - so it's probably for the best. Besides, I'm not legally able to > > release the dynarec afterwards if I wrote it for my Uni project - because > > the University owns 50% of the copyright. And that's the same for every Uni > > in the UK - don't know about the US. So, all in all, it's probably a > > blessing in disguise. > > That's fucked. In the US, what you do is yours. > You are right, but it has a bit of sense if you think theorically you are using the Uni resources (although you also pay for them) and sometimes your project it's part of a greater university project. But when you do all the work by yourself and it isn't related to the university it has no sense. > > One thing I found myself doing at the start is writing a static recompiler > > - that certainly isn't what I wanted to write, but I do think I'll be doing > > some research into this area next year. It's possible I may have discovered > > a good method but I'll wait and see what happens when I actually implement > > it... > > Really, a static recompiler is just a dynamic recompiler with > preinformation about what's going on. ;-) Or depth traversal! > It seems I hit the point ;) > Yes, probably a good idea. It'll be tough to optimize the X86 code unless > it's big time sloppy. But you may want to put your efforts in to > optimizing the input. That might yield better results initially. > Mainly optimizing flag evaluation that usually means a lot of emitted and not useful code. The other optimizations come later in my thoughts. BTW. Has NG the DRMZ80 code? I can't remember if he was on the list at that time. Or perhaps it's better he doesn't have it so he can work his own ideas and later take a look at it. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 02:43:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA80152 for dynarec-outgoing; Tue, 20 Jun 2000 02:43:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <394F3C9F.1386AFAB@eurocopter.de> Date: Tue, 20 Jun 2000 11:42:55 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Diner wreck :) References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > So, I have good and bad news. The bad news is that I won't actually be able > > to do my dynarec at Uni because my tutor has accepted the one I suggested > > and I (apparently) cannot change. > > That blows the donkey. ;-( And donkey blowing is bad, m'kay? :) > That's fucked. In the US, what you do is yours. That's better. I can see why they do it - it stops people from making money out of - what they consider to be - university work. And then they can take the project, if it's good, and research it or just generally try and make money. While I can see *why* they do it, I don't actually like it. That's why this is probably a blessing in disguise. I'd have released what I did anyway, it just wouldn't be legal - and they could definitely sue if I made money out of it. Yes, it's crap - but you have to agree to it when you enrol on the course. It's on the enrolement form - I prefer to say "contract". :-/ > Really, a static recompiler is just a dynamic recompiler with > preinformation about what's going on. ;-) Or depth traversal! Yes, I agree. It just enables the opportunity for some really cool optimisation tricks! That's basically my whole plan. :) > > in the emitter where I thought I would optimise - maybe not the best place > > to put it but it struck me as the most obvious place. Thinking back at it, > > it isn't the best place at all. Let's say that register A contains 56h. My > > optimiser knows this and so doesn't bother to change register A to make > > sure it *does* contain 56h. A simple optimisation. But what happens if I'm > > in a loop and the next time around register A doesn't contain 56h? > > You're screwed! ;-) Yeah, I know, but let's get back to the code. Oh, you were talking about the code. Ah... ;) > > I'd get > > some screwy results because my generated code would be correct and wouldn't > > be marked for recompilation. So I've scrapped that idea and I'll think more > > about optimisation at some later point. > > Yes, probably a good idea. It'll be tough to optimize the X86 code unless > it's big time sloppy. But you may want to put your efforts in to > optimizing the input. That might yield better results initially. That's an option I'd thought of but hadn't looked into. It just means you have to have more knowledge of the CPU you're emulating, but that's probably no bad thing. Yes, I'll look into this more this week. I love Germany for one reason. Religious. And they pick great days for holidays. Not a Monday or a Friday (although they have those too), but Tuesdays and Thursdays. I've got one this Thursday and because my company knows that people won't work on the Friday, we've got that off too. So a long weekend - and some things to research into. Sounds like I know what I'll be doing! Oh yes, and drinking. There's quite a high possibility of that too! :o > Well, remember my approach of storing the PC or return address when it's > time to exit? I also check timing after every instruction (or later on at > the end of every terminal). If I'm out of time to execute, I bail out and > store the returning PC. That way I can jump back to the point where I left > off. Okay, that just means inserting timing code into the emitted code. That's possible, but is that the best way? Hmm, I guess so - I certainly can't think of anything better right now. Of course, another way would be to know how many cycles WOULD have passed - that would mean you don't have to do anything with the emitted code, you just know when you'd have to break out. But I'm sure that idea would break horribly when I'm looping... Hmm, again, I need more research. It's times like now when you want a skeleton dynarec CPU core just so you can try out new ideas! Neil. PS Definitely off-topic, but I'm interested. In Britain, the thing you turn on to get water out of (think bath, sink, shower) is called a "tap". I've been told that it's not called that in America, but I've got no idea what it actually IS called. So... what is it actually called? :o --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 02:56:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA80174 for dynarec-outgoing; Tue, 20 Jun 2000 02:56:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <394F3FB2.891E28A8@eurocopter.de> Date: Tue, 20 Jun 2000 11:56:02 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Diner wreck :) References: <200006200928.LAA26039@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > The same in Spain (or I think so). But what is the problem? if you don't sell > it you shouldn't have any problem. And I'm sure nor the University nor my > director will say nothing about what I do with my project. In any case you > still have the 50% of the copyright so it's not only Uni decision. No, but by the same token, 50% of it isn't yours - so if you want to release it, you have to ask. And they can, legally, say no. I'd rather not get into that situation, so I'm probably best off as I am. Besides, it'll probably take me less time so I can do my dynarec stuff anyway. And I had to write the routines anyway, so I'm not really losing out... :) > > Anyway, as promised, I sat down this weekend to think about a dynarec. I > > think I've come up with a rather strange approach that may in fact work > > quite well. I haven't started to implement it, I just got some ideas > > together - which I find is most of my normal programming tasks anyway. > > I feel afraid about what you can have invented. ;) I'd be afraid too if I was me. Hang on, I am me. AARGH! ;)) > A static recompiler? Ummm! An easy way is extend a bit the idea of NG, just > compile as many code as you can at start. I think he calls it 'depth traversal'. > Then at execution time compile the unresolved jump address. This is certainly the idea I had, though the good thing is that if I know what changes when a loop is called, it means I can optimise more. Yes, I think about optimisations a lot. That comes from the Z80 you know. :) > You have checkpoints somewhere in your block (one at the end of the block or > more than one to check timing) that jump out to the core. You also check for > address if they are translated or not. Thought of that, this can cause problems with timing. Not sure that it's so important with the 8-bit CPUs - but it certainly could be with the more modern ones... > > So there we go. A nice, both thoughtful and relaxing, weekend. :) > > Well I was playing FF Tactics, so I can say the same ;) Well I didn't do a lot at all, so I sort of laid on my bed (my computer is next to it, I've got my priorities straight!) and either programmed or played games (which I haven't done in such a looooong time it's unbelievable - it's certainly 9 months since I've played a game for more than 1/2 hour!)... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 02:59:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA80184 for dynarec-outgoing; Tue, 20 Jun 2000 02:59:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <394F40A5.2E19E85A@eurocopter.de> Date: Tue, 20 Jun 2000 12:00:05 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Diner wreck :) References: <200006200937.LAA26259@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, My god, activity on the list again! It's been... almost a week now. Mummy, I'm scared! ;) > You are right, but it has a bit of sense if you think theorically you are > using the Uni resources (although you also pay for them) and sometimes your > project it's part of a greater university project. But when you do all > the work by yourself and it isn't related to the university it has no sense. I agree, but what can you do? And no, not going to University is not a valid answer... ;) > Mainly optimizing flag evaluation that usually means a lot of emitted and > not useful code. The other optimizations come later in my thoughts. Agreed, but you have to decide whether to do that on the input (original) or output (emitted) code. I'd do it on the input code myself... > BTW. Has NG the DRMZ80 code? I can't remember if he was on the list at > that time. Or perhaps it's better he doesn't have it so he can work > his own ideas and later take a look at it. No idea, all my e-mails are at home. But I agree, it's best that I don't look. I don't want to look. And that's if I have it. I'd rather see what I come up with myself - and then you can all laugh at the code. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 03:09:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA80209 for dynarec-outgoing; Tue, 20 Jun 2000 03:09:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006201013.MAA02610@pons.ac.upc.es> Subject: Re: DYNAREC: Diner wreck :) In-Reply-To: <394F40A5.2E19E85A@eurocopter.de> "from Neil Griffiths at Jun 20, 2000 12:00:05 pm" To: dynarec@dynarec.com Date: Tue, 20 Jun 2000 12:13:55 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > My god, activity on the list again! It's been... almost a week now. Mummy, > I'm scared! ;) > Yes, it was incredible a full week without off topic mails ;) How could you stand with out post something? ;)) > > BTW. Has NG the DRMZ80 code? I can't remember if he was on the list at > > that time. Or perhaps it's better he doesn't have it so he can work > > his own ideas and later take a look at it. > > No idea, all my e-mails are at home. But I agree, it's best that I don't > look. I don't want to look. And that's if I have it. I'd rather see what I > come up with myself - and then you can all laugh at the code. ;) > I like more vampirize the ideas from others and perhaps add my owns, but was the matter!, not everyone is like me. ;) So for my own interest keep us well informed of your progress. ;) BTW I have begun to move things to start a MegaCD emu (mainly demanding information). I hope I will find enough time to work on it. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 03:24:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA80235 for dynarec-outgoing; Tue, 20 Jun 2000 03:24:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006201023.MAA10486@pons.ac.upc.es> Subject: Re: DYNAREC: Diner wreck :) In-Reply-To: <394F3FB2.891E28A8@eurocopter.de> "from Neil Griffiths at Jun 20, 2000 11:56:02 am" To: dynarec@dynarec.com Date: Tue, 20 Jun 2000 12:23:19 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > So there we go. A nice, both thoughtful and relaxing, weekend. :) > > > > Well I was playing FF Tactics, so I can say the same ;) > > Well I didn't do a lot at all, so I sort of laid on my bed (my computer is > next to it, I've got my priorities straight!) and either programmed or > played games (which I haven't done in such a looooong time it's > unbelievable - it's certainly 9 months since I've played a game for more > than 1/2 hour!)... > I usually spend more time playing than this, but last weeks I didn't played so much and now I have time I can't stop. It's making me difficult to continue with the work I wanted to do about dynarec. But it is that I have to kill all those Holy Stone Knights!!! ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 04:44:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA80338 for dynarec-outgoing; Tue, 20 Jun 2000 04:43:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000901bfdaad$e5810ae0$3c6c8cd4@daves> From: "David Sharp" To: References: Subject: DYNAREC: my project (was RE: diner wrecker) Date: Tue, 20 Jun 2000 12:45:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > anyway - so it's probably for the best. Besides, I'm not legally able to > > release the dynarec afterwards if I wrote it for my Uni project - because > > the University owns 50% of the copyright. And that's the same for every Uni > > in the UK - don't know about the US. So, all in all, it's probably a > > blessing in disguise. > That's fucked. In the US, what you do is yours. Thought now would be a good time to fill everyone in on my plans. I am doing a dynamic recompiler as my 3rd year project next year. My title is submitted and a supervisor found. I'm intending to focus on the CPU dynarec side of things, developing this for another emulator already in existence. At the moment I have 3 main possible areas to focus on (I'll probably only pursue one): 1) ARM -> x86 dynarec for use with Archie (Acorn RISC OS computer emulator) the author has agreed to support me as much as he can though for various reasons I can't have access to the actual source so would have to develop in some kind of test harness. An alternative would be to use the Linux based open source ArcEm which is less compatible but still pretty good. Julian's is very good but I hope to develop on his intermediate representation and implement some kind of memory management and self-modifying code handling as well as handling the other modes of the processor so that it can be used for a real system. 2) MIPS -> x86 dynarec for use with FPSE (PlayStation emulator) the author has agreed to support me with latest code and as much help as possible. Given that apparently it's just started running Tomb Raider 3 the compatability looks pretty good and their current dynarec is pretty primitive and in need of development. 3) 6502/Z80 -> ARM dynarec for use with emus based on Marat's cores particularly those under RISC OS and Psion palmtops and also my own interpretive Gameboy emulator which is nearing completion. All are pretty appealing and I need to make a decision soon. I have a meeting with my supervisor sometime early next week when my exams are (finally) over. Any comments would be appreciated. As for copyright of the project, it didn't seem to hurt Generator which was written at Warwick 3 years back or V2600 which was done a few years before that so I don't see any problems. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 05:45:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA80418 for dynarec-outgoing; Tue, 20 Jun 2000 05:45:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: my project (was RE: diner wrecker) From: "M.I.K.e" In-Reply-To: <000901bfdaad$e5810ae0$3c6c8cd4@daves> Message-ID: <00036a7bf29f366e_mailit@mail.dynarec.com> References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> Date: Tue, 20 Jun 2000 14:51:54 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Thought now would be a good time to fill everyone in on my plans. I am doing >a dynamic recompiler as my 3rd year project next year. My title is submitted >and a supervisor found. Great! >1) ARM -> x86 dynarec for use with Archie (Acorn RISC OS computer emulator) >the author has agreed to support me as much as he can though for various >reasons I can't have access to the actual source so would have to develop in >some kind of test harness. That could complicate things a bit, but I really like to see a faster Archie emulator! >An alternative would be to use the Linux based >open source ArcEm which is less compatible but still pretty good. Have you tried it? Somehow I was even unable to compile it and I think no-one ever tested RISC OS on ArcEm! The author only uses it to emulate ARMLinux, but I don't get the idea of emulating Linux on Linux... >Julian's >is very good but I hope to develop on his intermediate representation and >implement some kind of memory management and self-modifying code handling as >well as handling the other modes of the processor so that it can be used for >a real system. Sounds like a good idea, especially when used in Archie ;-) >2) MIPS -> x86 dynarec for use with FPSE (PlayStation emulator) the author >has agreed to support me with latest code and as much help as possible. IMHO the R3000A will be the easiest to do and you could work with the real source since it's open source. >Given that apparently it's just started running Tomb Raider 3 the >compatability looks pretty good Indeed. I think of the freeware emulators it's the most promissing one. >and their current dynarec is pretty >primitive and in need of development. Agreed, Neil's two layer approach with opcode structure passing would lead to much cleaner and better optimised code. >3) 6502/Z80 -> ARM dynarec for use with emus based on Marat's cores I'm not sure if you'll find that many fans of Marat's cores on this list... >particularly those under RISC OS and Psion palmtops and also my own >interpretive Gameboy emulator which is nearing completion. That might be the easier start for you since you already wrote a 6502 interpretive emulator in ARM code, but the Z80 will be much more complicated. >All are pretty appealing and I need to make a decision soon. I have a >meeting with my supervisor sometime early next week when my exams are >(finally) over. Any comments would be appreciated. OK, here are my comments: * 6502->ARM should be the easiest task for you since you know both processors well. * Z80->ARM is more complicated than it might seem at first. * MIPS->x86 should be "fairly easy" once you know enough about both processors and use a clean approach. * ARM->x86 surely is the most complicated one, at least in my opinion. If you really want to do more than one then I'd recommend 6502->ARM and MIPS- >x86. If you want to do just one and compare different emulation methods as you once wrote I'd recommend MIPS->x86. I hope the others write some comments too... >Dave -- M.I.K.e You will be Told about it Tomorrow. Go Home and Prepare Thyself. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 06:15:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA80457 for dynarec-outgoing; Tue, 20 Jun 2000 06:14:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <394F6E4D.7B9C6FDE@eurocopter.de> Date: Tue, 20 Jun 2000 15:14:53 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Diner wreck :) References: <200006201013.MAA02610@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > BTW I have begun to move things to start a MegaCD emu (mainly demanding > information). I hope I will find enough time to work on it. Ah, so yet another person who requires a good 68k CPU core, eh? :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 06:43:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA80496 for dynarec-outgoing; Tue, 20 Jun 2000 06:43:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <394F74C1.2EFB47B@eurocopter.de> Date: Tue, 20 Jun 2000 15:42:25 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > That's fucked. In the US, what you do is yours. > > Thought now would be a good time to fill everyone in on my plans. I am doing > a dynamic recompiler as my 3rd year project next year. Grr! And after I've just found out I can't... ;-/ > My title is submitted > and a supervisor found. I'm intending to focus on the CPU dynarec side of > things, developing this for another emulator already in existence. At the > moment I have 3 main possible areas to focus on (I'll probably only pursue > one): It's best just to concentrate on one. After me sitting (well, okay... more horizontal... okay, I was lying down!) and giving some thought, it's going to take one hell of a time to create a dynarec for anything more complex than a Z80. And, having said that, even a Z80 is going to take some time. Heh, and here's me - wanting to write a 68k dynarec. :) > 1) ARM -> x86 dynarec for use with Archie (Acorn RISC OS computer emulator) > the author has agreed to support me as much as he can though for various > reasons I can't have access to the actual source so would have to develop in > some kind of test harness. An alternative would be to use the Linux based > open source ArcEm which is less compatible but still pretty good. Julian's > is very good but I hope to develop on his intermediate representation and > implement some kind of memory management and self-modifying code handling as > well as handling the other modes of the processor so that it can be used for > a real system. I know one person who'd like this. He's on this mailing list - and he's German. Can anybody guess who this could be? ;) > 2) MIPS -> x86 dynarec for use with FPSE (PlayStation emulator) the author > has agreed to support me with latest code and as much help as possible. > Given that apparently it's just started running Tomb Raider 3 the > compatability looks pretty good and their current dynarec is pretty > primitive and in need of development. This could be cool though. I don't own a PSX - nor any PSX games - but this could be very nice. I have seen Bleem! running on my own machine (although *I* don't have a PSX, my friends do!) and I'm not impressed. Speed is pathetic (it'd be brilliant if it ran at one speed, not a range from 25%->175% of the original machines speed!) and compatibility is poor. I've only heard good things about VGS and I have seen that running on somebody elses machine - it seemed to work pretty nicely. But the PSX CPU is still a 33MHz RISC CPU and that takes a lot of the performance away from a PC. So this could be nice. > 3) 6502/Z80 -> ARM dynarec for use with emus based on Marat's cores > particularly those under RISC OS and Psion palmtops and also my own > interpretive Gameboy emulator which is nearing completion. Although very nice, I'm not sure that we actually need the extra speed this provides. You'd have a harder time justifying these processors than you would the others. I will try to write a Z80 dynarec core myself soon, I think. Just so I have something to work with and to try out new ideas. But I can't say that I believe it'll be worth releasing... > All are pretty appealing and I need to make a decision soon. I have a > meeting with my supervisor sometime early next week when my exams are > (finally) over. Any comments would be appreciated. As for copyright of the > project, it didn't seem to hurt Generator which was written at Warwick 3 > years back or V2600 which was done a few years before that so I don't see > any problems. Yes, but neither of those projects were new technologies. Dynarec is a new, and mostly under-explored, technology. It's a more risky area. Universities have taken students projects before. One example I can think of is what the police use now for fingerprint analysis. That was based on a students project. Or that could be complete crap and it's actually something else. Heh, I know that some technology the police use now (maybe the face modelling stuff?) was taken by a University from a student. Anyway, I'm not going to say it *will* happen. I'm just saying that it's a possibility and, as such, it's probably a blessing that I don't do it for them. I'd say that 99.9% of the time, Universities don't do anything. But there *is* that 0.01% chance that they do something I don't like. Mind you, I can't think what. Anyway, I'm just trying to cheer myself up because I've been told I can't do it now... :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 07:01:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA80520 for dynarec-outgoing; Tue, 20 Jun 2000 06:59:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 15:08:07 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) Message-ID: <20000620150806.A1041@boris.quns.cam.ac.uk> References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <00036a7bf29f366e_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: <00036a7bf29f366e_mailit@mail.dynarec.com>; from M.I.K.e on Tue, Jun 20, 2000 at 02:51:54PM +0200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Tue, Jun 20, 2000 at 02:51:54PM +0200, M.I.K.e wrote: > > >An alternative would be to use the Linux based > >open source ArcEm which is less compatible but still pretty good. > > Have you tried it? Somehow I was even unable to compile it and I think no-one > ever tested RISC OS on ArcEm! The author only uses it to emulate ARMLinux, > but I don't get the idea of emulating Linux on Linux... I've certainly tried RISC OS on ArcEm - it works fine, albeit a little slowly. Actually I have a half-finished hack of ArcEm which uses the SDL library rather than X for graphics, which speeds it up a tiny bit... but the mouse doesn't work properly yet. I'll probably release it somewhere when it's done, or send some patches back to Dave Gilbert or something. I'm not sure if compiling it works straight off, I think I had to hack something a bit... can't remember what exactly though. To get RISC OS running you just have to switch the bundled ARM Linux ROM for a RISC OS 3.1 image. If you read the documentation (carefully ;-)) it's blatantly obvious that ArcEm was written to run RISC OS... Oh, and I've fixed a bug or two in ARMphetamine and rewritten some of the interpretive emulator in assembly language - it now goes, ooh, about 1% faster with recompilation turned off and it's a tiny bit more stable with recompilation turned on. Which is nice. Updates on my dynarec.com page. Jules -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 07:06:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA80541 for dynarec-outgoing; Tue, 20 Jun 2000 07:06:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <394F7A56.2B803801@eurocopter.de> Date: Tue, 20 Jun 2000 16:06:14 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <00036a7bf29f366e_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >and their current dynarec is pretty > >primitive and in need of development. > > Agreed, Neil's two layer approach with opcode structure passing would lead to > much cleaner and better optimised code. And more to the point - why try it any other way? In my mind, not only is this the most obvious way to do it (I can't think of another way to do it!), it also makes writing another core so much easier! > >3) 6502/Z80 -> ARM dynarec for use with emus based on Marat's cores > > I'm not sure if you'll find that many fans of Marat's cores on this list... Agreed. We like compatibility and speed. I, for one, prefer compatibility. Speed can come later. And, AFAIK, NB's MZ80 core is the fastest and most compatible CPU core out there! > That might be the easier start for you since you already wrote a 6502 > interpretive emulator in ARM code, but the Z80 will be much more complicated. I agree, but even the Z80 is simpler than the other suggested CPUs... > * ARM->x86 surely is the most complicated one, at least in my opinion. I actually reckon x86 -> 6502 is the most difficult... ;) > If you really want to do more than one then I'd recommend 6502->ARM and MIPS- > >x86. If you want to do just one and compare different emulation methods as > you once wrote I'd recommend MIPS->x86. Why not write two CPU cores? One dynarec and one interpreted? > I hope the others write some comments too... I have! I have! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 07:42:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA80591 for dynarec-outgoing; Tue, 20 Jun 2000 07:41:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002301bfdac6$c0c0bde0$5f0b063e@daves> From: "David Sharp" To: References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <00036a7bf29f366e_mailit@mail.dynarec.com> Subject: Re: DYNAREC: my project (was RE: diner wrecker) Date: Tue, 20 Jun 2000 15:37:42 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Have you tried it? Somehow I was even unable to compile it and I think no-one > ever tested RISC OS on ArcEm! The author only uses it to emulate ARMLinux, > but I don't get the idea of emulating Linux on Linux... I know the author has has 65Host (BBC emu for you poor RISCOS-less folk) running on RISC OS 3 on his Alpha. I don't know whether Elite would work though. As for porting it to Windows I've never tried... yet. > IMHO the R3000A will be the easiest to do and you could work with the real > source since it's open source. Yeah it is tempting and is a fairly long running project which bodes well. I know nothing about MIPS though (again, yet) and will be looking at getting that book you mentioned to me previously Mike. > Agreed, Neil's two layer approach with opcode structure passing would lead to > much cleaner and better optimised code. On that subject, is there any chance I could get hold of a copy of the DRMZ80 that was sent out on the list before? > I'm not sure if you'll find that many fans of Marat's cores on this list... Probably not! :o) I agree they're a bit shite but they are easy to use and pretty portable. > That might be the easier start for you since you already wrote a 6502 > interpretive emulator in ARM code, but the Z80 will be much more complicated. I've been looking at an interpretive ARM asm Z80-alike emu for my GB emu and it is a bit nasty dynarec could only be worse. > If you really want to do more than one then I'd recommend 6502->ARM and MIPS- > >x86. If you want to do just one and compare different emulation methods as > you once wrote I'd recommend MIPS->x86. ARM is where the heart is which tempts me to do the ARM->x86 but a playstation emulator would be cool too (I need to research MIPS architecture) and from an academic point of view if I only do one I need to be able to demonstrate as many dynarec features on it as possible i.e. redundant flag removal on an ARM would be silly with the optional flag setting natively but I think there's a similar problem under MIPS too. 6502->ARM could be the way to go for that kind of thing but then again if I spent this Summer doing a 6502->ARM I may not have time to do the MIPS/ARM->x86. Decisions, decisions... > I hope the others write some comments too... Me too! :o) Back to revision, concurrent processes and formal methods tomorrow, should be a laugh a minute! As an aside, does anyone know of an emulator written to take advantage of a multiprocessor machine? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 07:42:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA80587 for dynarec-outgoing; Tue, 20 Jun 2000 07:41:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002401bfdac6$c3030cc0$5f0b063e@daves> From: "David Sharp" To: References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <394F74C1.2EFB47B@eurocopter.de> Subject: Re: DYNAREC: my project (was RE: diner wrecker) Date: Tue, 20 Jun 2000 15:48:49 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Grr! And after I've just found out I can't... ;-/ Well after some other guy was doing a NES emu in Java I thought sod it to the other dull stuff on offer, I have to dump on his project from a height. > It's best just to concentrate on one. After me sitting (well, okay... more > horizontal... okay, I was lying down!) and giving some thought, it's going > to take one hell of a time to create a dynarec for anything more complex > than a Z80. And, having said that, even a Z80 is going to take some time. > Heh, and here's me - wanting to write a 68k dynarec. :) 6502 will be nice for rehearsing simple stuff but then I want something impressive to demonstrate! :o) > I know one person who'd like this. He's on this mailing list - and he's > German. Can anybody guess who this could be? ;) RISC OS rules! Well, used to about 5 years back. :o( > Although very nice, I'm not sure that we actually need the extra speed this > provides. You'd have a harder time justifying these processors than you > would the others. Not really, I think the simplicity of instructions is a strength in some ways in that it would allow me to investigate all the different methods (threading a la generator, different IRs, multistage translation as well as many different optimisations) without masses of complex instructions getting in the way. These methods could then be applied to more complex and speed-needing projects later. > Yes, but neither of those projects were new technologies. Maybe, but V2600 was from 96 and I don't know what state Stella was in back then but it can't have been too good? Generator is also pretty much unique in it's approach (I maybe wrong on this one)? > it's a > possibility and, as such, it's probably a blessing that I don't do it for > them. Possibly, but by that argument you don't want to do anything useful or potentially sellable as the uni might rip you off! :o) The way I figured it I'm never again likely to get the chance to spend 3-4 months of my life working on a project I want to do regardless of whether it's profitable or good for my business/company. >Anyway, I'm just trying to cheer myself up because I've > been told I can't do it now... :-/ I know what you mean, I was turned down initially but refused to do cache block analysis or microlanguages for mobile devices, made up my own project and brief and went round most of the department until I found someone who agreed. Felt really good. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 07:52:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA80613 for dynarec-outgoing; Tue, 20 Jun 2000 07:52:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003901bfdac8$3702ada0$5f0b063e@daves> From: "David Sharp" To: References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <00036a7bf29f366e_mailit@mail.dynarec.com> <20000620150806.A1041@boris.quns.cam.ac.uk> Subject: Re: DYNAREC: my project (was RE: diner wrecker) Date: Tue, 20 Jun 2000 16:00:00 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've certainly tried RISC OS on ArcEm - it works fine, albeit a little > slowly. Actually I have a half-finished hack of ArcEm which uses the SDL > library rather than X for graphics, which speeds it up a tiny bit... but > the mouse doesn't work properly yet. I'll probably release it somewhere > when it's done, or send some patches back to Dave Gilbert or something. Glad to hear it, that's two people have had it working then! ;o) I'll give it a go after exams. I get the distinct impression that I'm going to have to install Linux sooner or later, call me a cowardy-custard if you like, but I'm scared! :o) > If you read the documentation (carefully ;-)) it's blatantly obvious that > ArcEm was written to run RISC OS... Definitely! David was just covering his back, he wouldn't give me a screenshot of it running RISC OS when i wanted one for my Acorn Emulation page so I've got a naff picture of ARMLinux booting instead! :o) > Oh, and I've fixed a bug or two in ARMphetamine and rewritten some of the > interpretive emulator in assembly language - it now goes, ooh, about 1% > faster with recompilation turned off and it's a tiny bit more stable with > recompilation turned on. Which is nice. Updates on my dynarec.com page. Cool! Every bit counts. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 11:46:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA80876 for dynarec-outgoing; Tue, 20 Jun 2000 11:46:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: my project (was RE: diner wrecker) From: "M.I.K.e" In-Reply-To: <394F74C1.2EFB47B@eurocopter.de> Message-ID: <00036a80765a557a_mailit@mail.dynarec.com> References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <394F74C1.2EFB47B@eurocopter.de> Date: Tue, 20 Jun 2000 20:15:04 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Grr! And after I've just found out I can't... ;-/ That's a pitty :-( >It's best just to concentrate on one. After me sitting (well, okay... more >horizontal... okay, I was lying down!) and giving some thought, it's going >to take one hell of a time to create a dynarec for anything more complex >than a Z80. And, having said that, even a Z80 is going to take some time. >Heh, and here's me - wanting to write a 68k dynarec. :) This is the proof: anybody on this list must be totally nuts - oops, that includes me... >I know one person who'd like this. He's on this mailing list - and he's >German. A German on this British dominated list? That must be a real madman! >Can anybody guess who this could be? ;) How many guesses do I get? ;-) >But the PSX CPU is still a >33MHz RISC CPU and that takes a lot of the performance away from a PC. So >this could be nice. And it is ideal for dynamic recompilation because it's so simple. [6502, Z80] >Although very nice, I'm not sure that we actually need the extra speed this >provides. You'd have a harder time justifying these processors than you >would the others. Probably right. Isn't there someone working on a Z80 dynarec? ;-) >Neil. -- M.I.K.e "The eleventh commandment was `Thou Shalt Compute' or `Thou Shalt Not Compute' -- I forget which." -- Epigrams in Programming, ACM SIGPLAN Sept. 1982 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 11:46:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA80881 for dynarec-outgoing; Tue, 20 Jun 2000 11:46:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: my project (was RE: diner wrecker) From: "M.I.K.e" In-Reply-To: <394F7A56.2B803801@eurocopter.de> Message-ID: <00036a80a0fa3913_mailit@mail.dynarec.com> References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <00036a7bf29f366e_mailit@mail.dynarec.com> <394F7A56.2B803801@eurocopter.de> Date: Tue, 20 Jun 2000 20:26:59 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >And more to the point - why try it any other way? In my mind, not only is >this the most obvious way to do it (I can't think of another way to do >it!), it also makes writing another core so much easier! Well, most of the code I've seen so far (excluding Neil's DMZ80 of course) is simply a modfied interpreter with code generation right in the decoder - yuk! It's sure that opcode structures lead to a cleaner and better maitainable code and also better optimisation in the generated code. >I agree, but even the Z80 is simpler than the other suggested CPUs... I guess you don't know much about the MIPS, do you? The MIPS I is probably one of the simplest architectures I know. Later generations are more complicated, but the R3000A used in the PSX is really simple and doesn't even have an FPU. I think MIPS has flags for FP operations but all integer stuff works without any condition codes which makes the dynarec easier. >I actually reckon x86 -> 6502 is the most difficult... ;) Oh shit! How do you compile a PADDD with just one 8-bit accumulator? ;-) >> I hope the others write some comments too... >I have! I have! Typical reaction for you ;-) >Neil. -- M.I.K.e What the large print giveth, the small print taketh away. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 11:46:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA80896 for dynarec-outgoing; Tue, 20 Jun 2000 11:46:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: my project (was RE: diner wrecker) From: "M.I.K.e" In-Reply-To: <002301bfdac6$c0c0bde0$5f0b063e@daves> Message-ID: <00036a80da915fda_mailit@mail.dynarec.com> References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <00036a7bf29f366e_mailit@mail.dynarec.com> <002301bfdac6$c0c0bde0$5f0b063e@daves> Date: Tue, 20 Jun 2000 20:43:05 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yeah it is tempting and is a fairly long running project which bodes well. I >know nothing about MIPS though (again, yet) and will be looking at getting >that book you mentioned to me previously Mike. Just in case you forgot the details or others are interested: For a first impression of MIPS check chapter 3 of "Computer Organization & Design" by David Patterson and John Hennessy. One of the best books about MIPS (at least according to John Hennessy, one of the designers of MIPS) is "See MIPS Run" by Dominic Sweetman. If you go for the ARM you should try to get "ARM System Architecture" by Steve Furber, but wait till the end of August since the 2nd edition should be available then. >I've been looking at an interpretive ARM asm Z80-alike emu for my GB emu and >it is a bit nasty dynarec could only be worse. I'm afraid so... >ARM is where the heart is which tempts me to do the ARM->x86 Understandable... >but a playstation emulator would be cool too Indeed, and if Bero is willing to cooperate this would be really cool! >(I need to research MIPS architecture) It's relatively easy. The cache handling is a bit weird but I'm not sure if that is needed in the PSX. I think I also read that the R3000A doesn't include the MMU, but I might be wrong. >and from an academic point of view if I only do one I need to >be able to demonstrate as many dynarec features on it as possible i.e. >redundant flag removal on an ARM would be silly with the optional flag >setting natively but I think there's a similar problem under MIPS too. Yeah, MIPS doesn't have any flags at least not for integer. >6502->ARM could be the way to go for that kind of thing but then again if I >spent this Summer doing a 6502->ARM I may not have time to do the >MIPS/ARM->x86. Decisions, decisions... I know it's hard... >As an aside, does anyone know of an emulator written to take advantage of a >multiprocessor machine? I'm not sure. Do you plan to buy a dual board or is it for your project? ;-) I think NB wrote something about that topic on the list some time ago, concluding that you could handle different things like processor, graphics and sound in separate threads but the emulation of all processors should be in one thread due to the coordination between these. Did I remember that correctly or am I just writing crap? >Dave -- M.I.K.e "Now this is a totally brain damaged algorithm. Gag me with a smurfette." -- P. Buhr, Computer Science 354 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 11:46:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA80900 for dynarec-outgoing; Tue, 20 Jun 2000 11:46:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: my project (was RE: diner wrecker) From: "M.I.K.e" In-Reply-To: <003901bfdac8$3702ada0$5f0b063e@daves> Message-ID: <00036a80e94c11e6_mailit@mail.dynarec.com> References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <00036a7bf29f366e_mailit@mail.dynarec.com> <20000620150806.A1041@boris.quns.cam.ac.uk> <003901bfdac8$3702ada0$5f0b063e@daves> Date: Tue, 20 Jun 2000 20:47:12 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I get the distinct impression that I'm going to have to install Linux sooner >or later, call me a cowardy-custard if you like, but I'm scared! :o) And you haven't even installed BeOS yet! What really scares me is installing Windows ;-) >Definitely! David was just covering his back, he wouldn't give me a >screenshot of it running RISC OS when i wanted one for my Acorn Emulation >page so I've got a naff picture of ARMLinux booting instead! :o) Maybe he didn't want to provide any proof that his emulator can run illegal ROM copies? ;-) >Dave -- M.I.K.e "... all the modern inconveniences ..." -- Mark Twain --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 12:04:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA80930 for dynarec-outgoing; Tue, 20 Jun 2000 12:04:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 12:10:32 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Diner wreck :) In-Reply-To: <200006200928.LAA26039@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > some research into this area next year. It's possible I may have discovered > > a good method but I'll wait and see what happens when I actually implement > A static recompiler? Ummm! An easy way is extend a bit the idea of NG, just I think you mean NB... ;-) > compile as many code as you can at start. I think he calls it 'depth > traversal'. Then at execution time compile the unresolved jump > address. Yep. When you hit a conditional terminal, you call the recompiler with that virtual address, and by the time you're done, every address has been recompiled. Of course it doesn't cover the case where jump tables are used, but that winds up falling out of the execution (the dynamic aspect). You can also pass hints to the recompiler as well. If you know the entry points of all the jump table addresses, just tell the recompiler to compile it up front. I'm also working on a way to save off the recompiled code in a generic form so that the original source material won't necessarily need to be used. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 12:07:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA80944 for dynarec-outgoing; Tue, 20 Jun 2000 12:07:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 12:13:12 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Diner wreck :) In-Reply-To: <200006200937.LAA26259@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > That's fucked. In the US, what you do is yours. > You are right, but it has a bit of sense if you think theorically you are > using the Uni resources (although you also pay for them) and sometimes your Not necessarily. As an example, I went through compiler design theory (2 semesters) and used nothing but my own computers for the project. I also paid tuition and I didn't work with anyone else. If you're working on it with someone else that's one thing, but entirely different if you're on your own. That's just plain stupid! > > Yes, probably a good idea. It'll be tough to optimize the X86 code unless > > it's big time sloppy. But you may want to put your efforts in to > > optimizing the input. That might yield better results initially. > Mainly optimizing flag evaluation that usually means a lot of emitted and > not useful code. The other optimizations come later in my thoughts. You can do a lot of pre-flag evaluation on the source layer side of things. That's where the optimization is better spent. > BTW. Has NG the DRMZ80 code? I can't remember if he was on the list at > that time. Or perhaps it's better he doesn't have it so he can work > his own ideas and later take a look at it. I'll find the code and let everyone download it again. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 12:10:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA80959 for dynarec-outgoing; Tue, 20 Jun 2000 12:10:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 12:16:47 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Diner wreck :) In-Reply-To: <394F3C9F.1386AFAB@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > money out of it. Yes, it's crap - but you have to agree to it when you > enrol on the course. It's on the enrolement form - I prefer to say > "contract". :-/ Then it's probably good that you didn't do a dynarec. > > Yes, probably a good idea. It'll be tough to optimize the X86 code unless > > it's big time sloppy. But you may want to put your efforts in to > > optimizing the input. That might yield better results initially. > That's an option I'd thought of but hadn't looked into. It just means you > have to have more knowledge of the CPU you're emulating, but that's > probably no bad thing. Yes, I'll look into this more this week. You might want to check out DRMZ80's source like you promised to do eons ago. ;-) > long weekend - and some things to research into. Sounds like I know what > I'll be doing! Oh yes, and drinking. There's quite a high possibility of > that too! :o Damnit... you guys are getting me excited about Dynarec stuff again and I'm not done with my existing project! Grrr..... But I think I want to start over again and do a 68K core. > > Well, remember my approach of storing the PC or return address when it's > > time to exit? I also check timing after every instruction (or later on at > > the end of every terminal). If I'm out of time to execute, I bail out and > > store the returning PC. That way I can jump back to the point where I left > Okay, that just means inserting timing code into the emitted code. That's > possible, but is that the best way? Hmm, I guess so - I certainly can't > think of anything better right now. Of course, another way would be to know > how many cycles WOULD have passed - that would mean you don't have to do > anything with the emitted code, you just know when you'd have to break out. You'l lhave to know how much time has passed though. You could do checks at various terminal points, or you could spawn off some other thread and multitask it, but just drop in a check here and there. you'll have to keep track of timing anyway. > on to get water out of (think bath, sink, shower) is called a "tap". I've > been told that it's not called that in America, but I've got no idea what > it actually IS called. So... what is it actually called? :o Faucet. A "tap" is what you put in to a beer keg t oserver beer. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 12:12:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA80970 for dynarec-outgoing; Tue, 20 Jun 2000 12:12:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 12:18:47 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Diner wreck :) In-Reply-To: <394F3FB2.891E28A8@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > You have checkpoints somewhere in your block (one at the end of the block or > > more than one to check timing) that jump out to the core. You also check for > > address if they are translated or not. > Thought of that, this can cause problems with timing. Not sure that it's so > important with the 8-bit CPUs - but it certainly could be with the more > modern ones... Trust me - it's a problem with 8 bit CPUs, too. Games do some very strange things if timing is wrong. For example, Berzerk will very quickly scroll between levels. And Galaga will cause some of the aliens to get stuck spinning in circles. Space Invaders will cause aliens to keep scrolling off the right of the screen. Consider that this is from memory on games I did 1.5 years ago. ;-) It's still quite prevalent! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 12:13:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA80980 for dynarec-outgoing; Tue, 20 Jun 2000 12:13:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 12:19:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Diner wreck :) In-Reply-To: <394F40A5.2E19E85A@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > BTW. Has NG the DRMZ80 code? I can't remember if he was on the list at > > that time. Or perhaps it's better he doesn't have it so he can work > > his own ideas and later take a look at it. > No idea, all my e-mails are at home. But I agree, it's best that I don't > look. I don't want to look. And that's if I have it. I'd rather see what I > come up with myself - and then you can all laugh at the code. ;) Personall I'd rather you DO look so you can see ways to better it. We're all working together on this, right? If so, we shouldn't be spinning our wheels off in our own respective corners. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 12:16:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA80993 for dynarec-outgoing; Tue, 20 Jun 2000 12:16:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 12:22:13 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <000901bfdaad$e5810ae0$3c6c8cd4@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Thought now would be a good time to fill everyone in on my plans. I am doing > a dynamic recompiler as my 3rd year project next year. My title is submitted > and a supervisor found. I'm intending to focus on the CPU dynarec side of > things, developing this for another emulator already in existence. Just tell us you're not doing this for MAME... its problems aren't exclusive to CPU cores. ;-) > open source ArcEm which is less compatible but still pretty good. Julian's > is very good but I hope to develop on his intermediate representation and > implement some kind of memory management and self-modifying code handling as > well as handling the other modes of the processor so that it can be used for > a real system. Intermediate representation = bad idea. Hope you've been on the list for a while so you know why. > 2) MIPS -> x86 dynarec for use with FPSE (PlayStation emulator) the author > has agreed to support me with latest code and as much help as possible. > Given that apparently it's just started running Tomb Raider 3 the > compatability looks pretty good and their current dynarec is pretty > primitive and in need of development. Now this I'd personally like to see! > 3) 6502/Z80 -> ARM dynarec for use with emus based on Marat's cores > particularly those under RISC OS and Psion palmtops and also my own > interpretive Gameboy emulator which is nearing completion. Bleugh. Marat's cores are horrible. > (finally) over. Any comments would be appreciated. As for copyright of the > project, it didn't seem to hurt Generator which was written at Warwick 3 > years back or V2600 which was done a few years before that so I don't see > any problems. I'd give the Playstation emulator a good go. That CPU is fairly straightforward and would probably recompile nicely. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 12:19:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA81004 for dynarec-outgoing; Tue, 20 Jun 2000 12:19:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 12:25:33 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <394F74C1.2EFB47B@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > things, developing this for another emulator already in existence. At the > > moment I have 3 main possible areas to focus on (I'll probably only pursue > > one): > It's best just to concentrate on one. After me sitting (well, okay... more > horizontal... okay, I was lying down!) and giving some thought, it's going > to take one hell of a time to create a dynarec for anything more complex > than a Z80. And, having said that, even a Z80 is going to take some time. > Heh, and here's me - wanting to write a 68k dynarec. :) Yes, even the Z80 takes some time. However, the big amount of time is getting all the target instructions generated like you'd like them. Once you have your "bag of tools", doing other processors would be fairly straightforward. > I will try to write a Z80 dynarec core myself soon, I think. Just so I have > something to work with and to try out new ideas. But I can't say that I > believe it'll be worth releasing... Make sure you look at DRMZ80 first... -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 12:23:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA81020 for dynarec-outgoing; Tue, 20 Jun 2000 12:23:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 12:29:07 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <394F7A56.2B803801@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Agreed, Neil's two layer approach with opcode structure passing would lead to > > much cleaner and better optimised code. > And more to the point - why try it any other way? In my mind, not only is > this the most obvious way to do it (I can't think of another way to do > it!), it also makes writing another core so much easier! What I don't understand about other "dynarecs" is the following: * Use of a middleware approach. This completely kills off any possibility of doing source->target optimizations where you can do quite a bit of fudging to gain that extra speed. * Use of a precompiled block approach. This doesn't given any sort of dynamic approach to allow one to dynamically create instructions. Doesn't anyone think outside the box? -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 12:26:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA81034 for dynarec-outgoing; Tue, 20 Jun 2000 12:26:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 12:31:53 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <002301bfdac6$c0c0bde0$5f0b063e@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Agreed, Neil's two layer approach with opcode structure passing would lead > > much cleaner and better optimised code. > On that subject, is there any chance I could get hold of a copy of the > DRMZ80 that was sent out on the list before? http://www.synthcom.com/~neil/dynarec.zip > Probably not! :o) I agree they're a bit shite but they are easy to use and > pretty portable. And dog slow and impossible to read. No thanks. There are other cores that are better. > As an aside, does anyone know of an emulator written to take advantage of a > multiprocessor machine? In what fashion? The problem with emulation is that synchronizatino is a real bitch. Timing on most multiprocessor games is so tight that attempting to split them apart would just slow everything down. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 12:28:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA81045 for dynarec-outgoing; Tue, 20 Jun 2000 12:28:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 12:34:50 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <00036a80da915fda_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >As an aside, does anyone know of an emulator written to take advantage of a > >multiprocessor machine? > I'm not sure. Do you plan to buy a dual board or is it for your project? ;-) > I think NB wrote something about that topic on the list some time ago, > concluding that you could handle different things like processor, graphics > and sound in separate threads but the emulation of all processors should be > in one thread due to the coordination between these. You can handle sound in a separate thread because it's a slave to anything going on. However, graphics and everything else pretty much have to be in line. Emulation requires a fair bit of synchronization, and in some cases incredibly tight amounts of synchronization. > Did I remember that correctly or am I just writing crap? Well, you're always writing crap, but you are remembering correctly. ;-) But we like your crap! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 12:40:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA81069 for dynarec-outgoing; Tue, 20 Jun 2000 12:40:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 12:46:04 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Shall we get started? Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com The flames have been reignited IMHO. So who all is interested in doing a 68K Dynarec core? I have some recommendations that I'd like to make, and I'd like to get others aboard. * Architecture is written purely in C, initially targeted to 32 bit x86, but coding provisions would allow for additional targets. * API Should be compatible with Neil Corlett's Starscream 68K core. There are three reasons for this: His APIs are quite clean (guess where he got a lot of the ideas? ;-)) and well proven. There are many emulators out there that are already using it, and it's the most well debugged and we can run it side by side to compare the output of the dynarec with a known good emulation. * We need a project coordinator (I nominate me. ;-)). Comments? I suggest that we proceed in the following sequential fashion: * Download DRMZ80 and Starscream and have a look, and let's discuss the general direction and architecture. * I'll start by creating the basic framework, such as the memory management, API wrappers, code emitters, disassembler, etc... since I already have a lot of that done (I have a 68K disassembler I can use - with permission from the author). This might take a few weeks, though. ;-( * Let's pick something to recompile first. I nominate Atari's Food Fight. The graphics and hardware are quite simple. Let the discussion begin! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 14:31:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA81197 for dynarec-outgoing; Tue, 20 Jun 2000 14:31:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005201bfdb00$18bbb160$b909063e@daves> From: "David Sharp" To: References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <00036a7bf29f366e_mailit@mail.dynarec.com> <002301bfdac6$c0c0bde0$5f0b063e@daves> <00036a80da915fda_mailit@mail.dynarec.com> Subject: Re: DYNAREC: my project (was RE: diner wrecker) Date: Tue, 20 Jun 2000 22:33:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Just in case you forgot the details or others are interested: Thanks Mike, those sound like the books. > Indeed, and if Bero is willing to cooperate this would be really cool! Apparently the FPSE core at the moment is very similar to the one written by Bero. Who is this Bero anyway? > It's relatively easy. The cache handling is a bit weird but I'm not sure if > that is needed in the PSX. I think I also read that the R3000A doesn't > include the MMU, but I might be wrong. Sounds better all the time, I'm just looking forward to getting down to it now. > I'm not sure. Do you plan to buy a dual board or is it for your project? ;-) > I think NB wrote something about that topic on the list some time ago, > concluding that you could handle different things like processor, graphics > and sound in separate threads but the emulation of all processors should be > in one thread due to the coordination between these. > Did I remember that correctly or am I just writing crap? I was just thinking about it from the perspective of all the concurrency stuff I was revising and wondering if multiple processors could be taken advantage of easily, but I expect that the amount of synchronisation would kill any potential speed gain and then some. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 14:31:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA81211 for dynarec-outgoing; Tue, 20 Jun 2000 14:31:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005501bfdb00$1fcd62a0$b909063e@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: my project (was RE: diner wrecker) Date: Tue, 20 Jun 2000 22:39:00 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > http://www.synthcom.com/~neil/dynarec.zip Thanks. > > Probably not! :o) I agree they're a bit shite but they are easy to use and > > pretty portable. > And dog slow and impossible to read. No thanks. There are other cores that > are better. Can you point me in the direction of one written in C? > In what fashion? The problem with emulation is that synchronizatino is a > real bitch. Timing on most multiprocessor games is so tight that > attempting to split them apart would just slow everything down. As I thought. You're right, forget it. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 14:31:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA81215 for dynarec-outgoing; Tue, 20 Jun 2000 14:31:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005401bfdb00$1d372760$b909063e@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: my project (was RE: diner wrecker) Date: Tue, 20 Jun 2000 22:37:17 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Just tell us you're not doing this for MAME... its problems aren't > exclusive to CPU cores. ;-) Not bloody likely. > Intermediate representation = bad idea. Hope you've been on the list for a > while so you know why. I forget if I was on it for that debate or not. Damnit Mike where's your FAQ when I need it? :o) > > 2) MIPS -> x86 dynarec for use with FPSE (PlayStation emulator) the author > Now this I'd personally like to see! Well when you put it that way.... I'll see what I can do. > I'd give the Playstation emulator a good go. That CPU is fairly > straightforward and would probably recompile nicely. Will take a look once I get the latest source to FPSE and some decent docs on MIPS are there any online that I can use before shelling out for a book, Mike? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 14:38:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA81231 for dynarec-outgoing; Tue, 20 Jun 2000 14:38:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: my project (was RE: diner wrecker) From: "M.I.K.e" In-Reply-To: Message-ID: <00036a836628b8c2_mailit@mail.dynarec.com> References: Date: Tue, 20 Jun 2000 23:45:17 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Just tell us you're not doing this for MAME... its problems aren't >exclusive to CPU cores. ;-) Hehe ;-) I bet Dave knows that! [better FPSE dynarec] >Now this I'd personally like to see! Me too! >Bleugh. Marat's cores are horrible. I already warned him that he won't get too reactions about Marat's cores on this list. >I'd give the Playstation emulator a good go. That CPU is fairly >straightforward and would probably recompile nicely. Just what I said. We might not be of the same opinion all of the time (otherwise discussions would be a bit boring anyway), but we certainly agreen on that point. >-->Neil -- M.I.K.e A neighbor came to Nasrudin, asking to borrow his donkey. "It is out on loan," the teacher replied. At that moment, the donkey brayed loudly inside the stable. "But I can hear it bray, over there." "Whom do you believe," asked Nasrudin, "me or a donkey?" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 15:02:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA81269 for dynarec-outgoing; Tue, 20 Jun 2000 15:02:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 15:08:06 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <005201bfdb00$18bbb160$b909063e@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > concluding that you could handle different things like processor, graphics > > and sound in separate threads but the emulation of all processors should > > in one thread due to the coordination between these. > > Did I remember that correctly or am I just writing crap? > I was just thinking about it from the perspective of all the concurrency > stuff I was revising and wondering if multiple processors could be taken > advantage of easily, but I expect that the amount of synchronisation would > kill any potential speed gain and then some. It's game dependent, really. I can think of a few games that would benefit from it and could run concurrently - especially those having a master/slave relationship such as a master CPU and slave sound board (like the Williams games). But most games require a very high degree of interaction. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 15:03:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA81280 for dynarec-outgoing; Tue, 20 Jun 2000 15:03:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 15:09:00 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <005501bfdb00$1fcd62a0$b909063e@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > And dog slow and impossible to read. No thanks. There are other cores that > > are better. > Can you point me in the direction of one written in C? ftp://ftp.synthcom.com/pub/emulators/cpu/makez80.zip Use the -c option to emit a C core. (This is my core, BTW). The C section of it is fully implemented but not fully debugged. It's healthy enough to run quite a few games. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 15:04:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA81289 for dynarec-outgoing; Tue, 20 Jun 2000 15:04:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 15:10:44 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <005401bfdb00$1d372760$b909063e@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Intermediate representation = bad idea. Hope you've been on the list for a > > while so you know why. > I forget if I was on it for that debate or not. Damnit Mike where's your FAQ > when I need it? :o) The basic gist of it is that ahead of time you can do things (like on the x86) like flag handling. The x86's flags compared to a Z80's flags are very, very similar. So by knowing this you can play all kinds of tricks in the emitted code, where you'd lose this knowledge if you went to an intermediate step. > > > 2) MIPS -> x86 dynarec for use with FPSE (PlayStation emulator) the > author > > Now this I'd personally like to see! > Well when you put it that way.... I think you'll find the MIPS an easier target than the Z80 or any other CPU. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 15:20:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA81321 for dynarec-outgoing; Tue, 20 Jun 2000 15:20:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Shall we get started? From: "M.I.K.e" In-Reply-To: Message-ID: <00036a83f8b49b73_mailit@mail.dynarec.com> References: Date: Wed, 21 Jun 2000 00:26:15 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The flames have been reignited IMHO. I can almost hear the fire ;-) >So who all is interested in doing a 68K Dynarec core? Well, we all know that NG wants one. I think Victor is also interested. And as a former ST hacker I should be able to join as well. I think a 68K dynarec should be more impressive than a Z80 dynarec! >I have some recommendations that I'd like to make, and I'd like to get >others aboard. Asking for permission to come aboard, Captain. >* Architecture is written purely in C, initially targeted to 32 bit x86, >but coding provisions would allow for additional targets. As long as I can work on BeOS and don't have to use Windows that's ok with me. >* API Should be compatible with Neil Corlett's Starscream 68K core. There >are three reasons for this: His APIs are quite clean (guess where he got a >lot of the ideas? ;-)) Marat? Sorry, just teasing ;-) >and well proven. There are many emulators out there >that are already using it, and it's the most well debugged and we can run >it side by side to compare the output of the dynarec with a known good >emulation. Yeah, if you didn't recommend it already I would have done it. >* We need a project coordinator (I nominate me. ;-)). Since you should have the most experience with larger projects I guess you would be a good choice: 1 vote for you! >* I'll start by creating the basic framework, such as the memory >management, API wrappers, code emitters, disassembler, etc... since I >already have a lot of that done (I have a 68K disassembler I can use - >with permission from the author). This might take a few weeks, though. ;-( Well, we all have to take a look at the code so we surely need some time as well. >* Let's pick something to recompile first. I nominate Atari's Food >Fight. The graphics and hardware are quite simple. I don't know the game neither the hardware... >-->Neil -- M.I.K.e "OK, now let's look at four dimensions on the blackboard." -- Dr. Joy --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 15:20:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA81330 for dynarec-outgoing; Tue, 20 Jun 2000 15:20:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: my project (was RE: diner wrecker) From: "M.I.K.e" In-Reply-To: <005201bfdb00$18bbb160$b909063e@daves> Message-ID: <00036a839d7f4074_mailit@mail.dynarec.com> References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <00036a7bf29f366e_mailit@mail.dynarec.com> <002301bfdac6$c0c0bde0$5f0b063e@daves> <00036a80da915fda_mailit@mail.dynarec.com> <005201bfdb00$18bbb160$b909063e@daves> Date: Wed, 21 Jun 2000 00:00:45 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Apparently the FPSE core at the moment is very similar to the one written by >Bero. FPSE is written by Bero, but most of the code released recently was compiled by a second guy, AFAIK. >Who is this Bero anyway? I think he's from Japan... >Sounds better all the time, I'm just looking forward to getting down to it >now. I think you'll like the MIPS because it's really simple, and the R3000 certainly doesn't have some of the strange instructions which were added later. >Dave -- M.I.K.e A New York City ordinance prohibits the shooting of rabbits from the rear of a Third Avenue street car -- if the car is in motion. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 15:20:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA81338 for dynarec-outgoing; Tue, 20 Jun 2000 15:20:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: my project (was RE: diner wrecker) From: "M.I.K.e" In-Reply-To: <005401bfdb00$1d372760$b909063e@daves> Message-ID: <00036a83bff2f5ac_mailit@mail.dynarec.com> References: <005401bfdb00$1d372760$b909063e@daves> Date: Wed, 21 Jun 2000 00:10:23 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I forget if I was on it for that debate or not. Damnit Mike where's your FAQ >when I need it? :o) Usual location: http://www.dynarec.com/~mike/drfaq.html I also have a section about intermediate representations which mainly caused the discussion about VIP et al... >> Now this I'd personally like to see! >Well when you put it that way.... >I'll see what I can do. You can now tell that guy at university that at least two well known members of the dynarec list (including the founder!) have asked for the MIPS dynarec ;-) >Will take a look once I get the latest source to FPSE and some decent docs >on MIPS are there any online that I can use before shelling out for a book, >Mike? EPR has some info on the PSX and its CPU: http://classicgaming.com/epr/ Dextrose has a nice offical doc about MIPS IV: http://www.dextrose.com/info/0601lfc-r4ki.htm You will only need a small part of this doc since the R3000A is only MIPS I and therefore lacks some of the instructions listed especially 64-bit and FP. It's a bit strange that MIPS don't seem to have docs on their own site anymore, but that doc should be a good start. There is also a documentation of the PSX somewhere, but I'm not sure how well it covers the CPU. Hope that helps ;-) >Dave -- M.I.K.e America may be unique in being a country which has leapt from barbarism to decadence without touching civilization. -- John O'Hara --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 15:20:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA81346 for dynarec-outgoing; Tue, 20 Jun 2000 15:20:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: my project (was RE: diner wrecker) From: "M.I.K.e" In-Reply-To: Message-ID: <00036a83cf5784b8_mailit@mail.dynarec.com> References: Date: Wed, 21 Jun 2000 00:14:42 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What I don't understand about other "dynarecs" is the following: Let me assure you, you are not alone! >* Use of a middleware approach. This completely kills off any possibility >of doing source->target optimizations where you can do quite a bit of >fudging to gain that extra speed. Most seem to think that the quick hack of turning an interpreter into a dynarec is easier, but IMHO that code is very hard to maintain not to mention that peephole optimisation will always be easier in the two layer approach. >* Use of a precompiled block approach. This doesn't given any sort of >dynamic approach to allow one to dynamically create instructions. Don't even mention it! When I first saw that I thought this copy-paste-patch method must be a bad joke I just don't understand... >Doesn't anyone think outside the box? Is there any proof that they think? >-->Neil -- M.I.K.e That secret you've been guarding, isn't. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 15:20:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA81353 for dynarec-outgoing; Tue, 20 Jun 2000 15:20:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: my project (was RE: diner wrecker) From: "M.I.K.e" In-Reply-To: Message-ID: <00036a83da8980c3_mailit@mail.dynarec.com> References: Date: Wed, 21 Jun 2000 00:17:49 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You can handle sound in a separate thread because it's a slave to anything >going on. However, graphics and everything else pretty much have to be in >line. Emulation requires a fair bit of synchronization, and in some cases >incredibly tight amounts of synchronization. Ah, one thread for sound and one for the rest. Thanks for correcting me. >Well, you're always writing crap, Hey, I'm used to NG teasing me, but now even NB does it - AHHHH! ;-) >but you are remembering correctly. ;-) At least my storage seems to work even when it only stores crap ;-) >But we like your crap! That's ok then ;-) >-->Neil -- M.I.K.e We're only in it for the volume. -- Black Sabbath --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 15:33:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA81378 for dynarec-outgoing; Tue, 20 Jun 2000 15:33:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 15:39:27 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? In-Reply-To: <00036a83f8b49b73_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >So who all is interested in doing a 68K Dynarec core? > Well, we all know that NG wants one. I think Victor is also interested. And > as a former ST hacker I should be able to join as well. > I think a 68K dynarec should be more impressive than a Z80 dynarec! Sure. And a lot more usable. I don't know of many Z80 based emulators that are slow, but the 68K stuff would benefit from it. I wrote the Z80 stuff as a proof of concept, and I realized that I didn't need to complete it to prove the concepts. They are already living and working. The only thing the DRMZ80 doesn't do is the full instruction set, but all the basic execution stuff works as expected. > >I have some recommendations that I'd like to make, and I'd like to get > >others aboard. > Asking for permission to come aboard, Captain. Permission granted, #1. ;-) > >* Architecture is written purely in C, initially targeted to 32 bit x86, > >but coding provisions would allow for additional targets. > As long as I can work on BeOS and don't have to use Windows that's ok with > me. I was thinking ANSI C, so I'd break down and use DJGPP even though I hate it (and crank up the warning levels until it bleeds). That'll make it gccable fairly easily since they're the same assembler. I'll make sure the platform specific crap is broken out into its own arena so we can share as much as we can. The big challenge will be "how do we break it into manageable chunks"? Let's think about that! > >* API Should be compatible with Neil Corlett's Starscream 68K core. There > >are three reasons for this: His APIs are quite clean (guess where he got a > >lot of the ideas? ;-)) > Marat? Sorry, just teasing ;-) Hehehe. Me! Dumbass... ;-) > >* I'll start by creating the basic framework, such as the memory > >management, API wrappers, code emitters, disassembler, etc... since I > >already have a lot of that done (I have a 68K disassembler I can use - > >with permission from the author). This might take a few weeks, though. ;-( > Well, we all have to take a look at the code so we surely need some time as > well. Provided you trust my direction, I don't think it'll be a big deal. Lots of them are already represented in the DRMZ80 (like the memory management stuff). > >* Let's pick something to recompile first. I nominate Atari's Food > >Fight. The graphics and hardware are quite simple. > I don't know the game neither the hardware... The game kicks ass. The hardware is mind numbingly simple. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 15:34:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA81393 for dynarec-outgoing; Tue, 20 Jun 2000 15:34:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 15:40:47 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? (fwd) Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Sorry -should've gone to the whole list. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder ---------- Forwarded message ---------- Date: Tue, 20 Jun 2000 15:40:29 +0000 (GMT) From: Neil Bradley To: M.I.K.e Subject: Re: DYNAREC: Shall we get started? One thing I forgot - it'd be cool to have someone document this as we go. That way I don't have to spend hours sending email to people on how it works. Any volunteers? (That means I don't want to do it...) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 17:27:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA81525 for dynarec-outgoing; Tue, 20 Jun 2000 17:27:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Shall we get started? (fwd) From: "M.I.K.e" In-Reply-To: Message-ID: <00036a85bbf99c62_mailit@mail.dynarec.com> References: Date: Wed, 21 Jun 2000 02:32:27 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >One thing I forgot - it'd be cool to have someone document this as we >go. That way I don't have to spend hours sending email to people on how it >works. Any volunteers? (That means I don't want to do it...) Isn't Victor already our unofficial documentor? ;-) >-->Neil -- M.I.K.e "Now is the time for all good men to come to." -- Walt Kelly --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 17:27:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA81533 for dynarec-outgoing; Tue, 20 Jun 2000 17:27:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Shall we get started? From: "M.I.K.e" In-Reply-To: Message-ID: <00036a85b733a022_mailit@mail.dynarec.com> References: Date: Wed, 21 Jun 2000 02:31:06 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Sure. And a lot more usable. I don't know of many Z80 based emulators that >are slow, but the 68K stuff would benefit from it. Indeed. That's why I'm not a great fan of 8-bit dynarecs because it's hard to find a PC on which such a machine cannot be interpreted at full speed nowadays. But the 68K is a totally different story and there are several emulators which could benefit from such a dynarec. >I wrote the Z80 stuff >as a proof of concept, and I realized that I didn't need to complete it to >prove the concepts. They are already living and working. The only thing >the DRMZ80 doesn't do is the full instruction set, but all the basic >execution stuff works as expected. I guess that's why your development slowed down a bit. You got the results you wanted but you knew that there isn't much need for a Z80 dynarec. A 68K dynarec should be more motivating though! And since NG wanted to write one anyway and I know more about the 68K than the Z80 you should be able to get more support for that project. >Permission granted, #1. ;-) Aye aye, sir! I hope I don't get sea sick! ;-) >I was thinking ANSI C, so I'd break down and use DJGPP even though I hate >it (and crank up the warning levels until it bleeds). That'll make it >gccable fairly easily since they're the same assembler. I'll make sure the >platform specific crap is broken out into its own arena so we can share as >much as we can. Thanks, I really apreciate that! I'd hate having to reboot to Windows just to use another C compiler when I have one in BeOS. >The big challenge will be "how do we break it into manageable >chunks"? Let's think about that! Good question! I never wrote an emulator so it's hard for me to make any recommendations. >Hehehe. Me! You? How come? ;-) >Dumbass... ;-) You are so polite today ;-) >Provided you trust my direction, I don't think it'll be a big deal. Lots >of them are already represented in the DRMZ80 (like the memory management >stuff). Yeah, but now that I really have to work with the code I have to take a deeper look at it again. [Food Fight] >The game kicks ass. I'll have to test it myself... >The hardware is mind numbingly simple. Quite typical for Atari. >-->Neil -- M.I.K.e "Well, if you can't believe what you read in a comic book, what *___can* you believe?!" -- Bullwinkle J. Moose [Jay Ward] --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 17:43:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA81559 for dynarec-outgoing; Tue, 20 Jun 2000 17:43:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Jun 2000 17:49:17 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? In-Reply-To: <00036a85b733a022_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Sure. And a lot more usable. I don't know of many Z80 based emulators that > >are slow, but the 68K stuff would benefit from it. > Indeed. That's why I'm not a great fan of 8-bit dynarecs because it's hard to > find a PC on which such a machine cannot be interpreted at full speed > nowadays. Except MAME (God, what a horrid name) on a 486 with a 3 CPU game like Galaga. ;-) > >The big challenge will be "how do we break it into manageable > >chunks"? Let's think about that! > Good question! I never wrote an emulator so it's hard for me to make any > recommendations. In this case, it's like 5 people writing a CPU core. yuck! It also semi-requires people to understand x86 assembly, too. Do you? -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 18:08:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA81600 for dynarec-outgoing; Tue, 20 Jun 2000 18:08:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Shall we get started? From: "M.I.K.e" In-Reply-To: Message-ID: <00036a86504916d1_mailit@mail.dynarec.com> References: Date: Wed, 21 Jun 2000 03:13:55 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Except MAME (God, what a horrid name) Maybe they meant "maimed emulator" but got the wrong spelling? ;-) For MESS the spelling is correct of course ;-) >on a 486 with a 3 CPU game like Galaga. ;-) Well, I guess there are only one or two emulators which can do that at full speed. >In this case, it's like 5 people writing a CPU core. yuck! Sounds like a big project... >It also semi-requires people to understand x86 assembly, too. Do you? Erm, I didn't really program it yet, but I now have a book with a nice instruction reference. Combined with the fact that I turned into a processor maniac in the last few years I *might* perform better than a part time assembly programmer. I'll surely won't be nearly as good as Victor or you, but if I can interpret the "semi" literally I should be able to get some things done. >-->Neil -- M.I.K.e Bizoos, n.: The millions of tiny individual bumps that make up a basketball. -- Rich Hall, "Sniglets" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 23:20:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA81845 for dynarec-outgoing; Tue, 20 Jun 2000 23:20:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006210625.IAA02976@pons.ac.upc.es> Subject: Re: DYNAREC: Diner wreck :) In-Reply-To: <394F6E4D.7B9C6FDE@eurocopter.de> "from Neil Griffiths at Jun 20, 2000 03:14:53 pm" To: dynarec@dynarec.com Date: Wed, 21 Jun 2000 08:25:21 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > BTW I have begun to move things to start a MegaCD emu (mainly demanding > > information). I hope I will find enough time to work on it. > > Ah, so yet another person who requires a good 68k CPU core, eh? :) > Well, as I have saied many times I WANT to build a 68k CPU core. The problem I have is that as my university project is also a 68k dynarec I don't know if get involved into the list effort or not. o: BTW, now there is really heavy traffic and on topic! Really impresive. ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 23:30:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA81876 for dynarec-outgoing; Tue, 20 Jun 2000 23:30:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006210635.IAA10394@pons.ac.upc.es> Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <394F74C1.2EFB47B@eurocopter.de> "from Neil Griffiths at Jun 20, 2000 03:42:25 pm" To: dynarec@dynarec.com Date: Wed, 21 Jun 2000 08:35:53 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > > That's fucked. In the US, what you do is yours. > > > > Thought now would be a good time to fill everyone in on my plans. I am doing > > a dynamic recompiler as my 3rd year project next year. > > Grr! And after I've just found out I can't... ;-/ > How many dynarec projectist there are now in the list? ;P Julian, David, Seddon, me, anyone else? > This could be cool though. I don't own a PSX - nor any PSX games - but this > could be very nice. I have seen Bleem! running on my own machine (although > *I* don't have a PSX, my friends do!) and I'm not impressed. Speed is > pathetic (it'd be brilliant if it ran at one speed, not a range from > 25%->175% of the original machines speed!) and compatibility is poor. I've > only heard good things about VGS and I have seen that running on somebody > elses machine - it seemed to work pretty nicely. But the PSX CPU is still a > 33MHz RISC CPU and that takes a lot of the performance away from a PC. So > this could be nice. > I have to admit I'm using VGS although I haven't buied it (but as soon as I see it on Spanish shop I would want to buy it). :( I have tested it with two dozens of games and the emulation is really near to perfection, I think it has the same compatability (in comparision) than ZSNES o SNES9X or even better. As a bit slow (sometimes with a big number of polygons or light effects slowdowns a lot in my 350) but all the graphic and sound hardware is really perfect. Bleem is shit compared, the only point it has is that it is a bit faster and perhaps the Direct3D enhaced mode. > Yes, but neither of those projects were new technologies. Dynarec is a new, > and mostly under-explored, technology. It's a more risky area. Universities > have taken students projects before. One example I can think of is what the > police use now for fingerprint analysis. That was based on a students > project. Or that could be complete crap and it's actually something else. > Heh, I know that some technology the police use now (maybe the face > modelling stuff?) was taken by a University from a student. > It isn't so new. Shade and Embra have some years now. And there are now a lot of people involved in dynarec out there: Transmeta (grrr!!) and all the people building PSX emulators. And the people in university charges are usually too sillies to see something useful. For example if I do a Mega Drive dynarec emulator my project will be known only by director and perhaps by my tribunal (who will forget about it really early). Perhaps in your university would be different but here I wouldn't care about copyright issues. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 23:39:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA81890 for dynarec-outgoing; Tue, 20 Jun 2000 23:39:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006210644.IAA03945@pons.ac.upc.es> Subject: Re: DYNAREC: Shall we get started? (fwd) In-Reply-To: "from Neil Bradley at Jun 20, 2000 03:40:47 pm" To: dynarec@dynarec.com Date: Wed, 21 Jun 2000 08:44:29 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > One thing I forgot - it'd be cool to have someone document this as we > go. That way I don't have to spend hours sending email to people on how it > works. Any volunteers? (That means I don't want to do it...) > You can count on me, you should know I like write dynarec and emulation docs (if I'm not playing FF Tactics :(, argh!! this games is going to avoid me to become an emu author!! ;)) Problems the same of ever: no mail connection (when Mrs. thecnology minister we will have plain telephone quote!), and my poor english ;). But neither of them will stop me anyway. Victor Moya P.S.: What will happen with Space8 if everyone get involved in this new project! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 20 23:47:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA81906 for dynarec-outgoing; Tue, 20 Jun 2000 23:47:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006210652.IAA13677@pons.ac.upc.es> Subject: Re: DYNAREC: Shall we get started? (fwd) In-Reply-To: <00036a85bbf99c62_mailit@mail.dynarec.com> "from M.I.K.e at Jun 21, 2000 02:32:27 am" To: dynarec@dynarec.com Date: Wed, 21 Jun 2000 08:52:42 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >One thing I forgot - it'd be cool to have someone document this as we > >go. That way I don't have to spend hours sending email to people on how it > >works. Any volunteers? (That means I don't want to do it...) > > Isn't Victor already our unofficial documentor? ;-) > Unofficial you say? ;) Well, I nomine myself official documentor of the list (and I will have to hide the FF Tactics CD). If any one has problems with that he can come to Spain an try to change my mind. ;)) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 00:58:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA81975 for dynarec-outgoing; Wed, 21 Jun 2000 00:58:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00b501bfdb57$12eb2020$a33b5393@a5s111pc16.fib.upc.es> From: "Victor Moya del Barrio" To: Subject: RE: DYNAREC: Shall we get started? Date: Wed, 21 Jun 2000 10:02:40 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3612.1700 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3612.1700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The flames have been reignited IMHO. So who all is interested in doing a >68K Dynarec core? > >I have some recommendations that I'd like to make, and I'd like to get >others aboard. > >* Architecture is written purely in C, initially targeted to 32 bit x86, >but coding provisions would allow for additional targets. > Same as DRMZ80. It sounds well. I usually like more fully asm progs but in a dynarec this means more work and not better peformance. >* API Should be compatible with Neil Corlett's Starscream 68K core. There >are three reasons for this: His APIs are quite clean (guess where he got a >lot of the ideas? ;-)) and well proven. There are many emulators out there >that are already using it, and it's the most well debugged and we can run >it side by side to compare the output of the dynarec with a known good >emulation. > Who, who? ;) When I was beginning to learn about emulation programming my main two examples were MZ80 and Starscream (I thought sometime they were from the same guy becuase they were so similar). But Starscream asm output it is a bit (or very) unreadeable, but perhaps a 68k is more difficult than a Z80. >* We need a project coordinator (I nominate me. ;-)). > >Comments? > Perhaps the better we could ever find. >I suggest that we proceed in the following sequential fashion: > >* Download DRMZ80 and Starscream and have a look, and let's discuss the >general direction and architecture. > We'll I made so long ago. ;) >* Let's pick something to recompile first. I nominate Atari's Food >Fight. The graphics and hardware are quite simple. > Well for me is ok (I don´t know the machine though). But I have another way (which is nearer to my interests ;). We could use a Mega Drive open source emulator as DGEN and we don´t have to worry with errors on hardware emulation, it uses Starscream as core as well as MZ80 (or perhaps he changed to a new, I can´t remember). And I think the author will agree. Perhaps it could be made in parallel. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:18:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82005 for dynarec-outgoing; Wed, 21 Jun 2000 01:18:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3950760B.C65E0661@eurocopter.de> Date: Wed, 21 Jun 2000 10:00:11 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Diner wreck :) References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > No idea, all my e-mails are at home. But I agree, it's best that I don't > > look. I don't want to look. And that's if I have it. I'd rather see what I > > come up with myself - and then you can all laugh at the code. ;) > > Personall I'd rather you DO look so you can see ways to better it. We're > all working together on this, right? If so, we shouldn't be spinning our > wheels off in our own respective corners. Okay, I'll look at it. But I do like to try and come up with my own ideas first, so I'll try and do both at the same time. And probably confuse myself. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:18:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82015 for dynarec-outgoing; Wed, 21 Jun 2000 01:18:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <395075B5.60FA4AB1@eurocopter.de> Date: Wed, 21 Jun 2000 09:58:45 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Diner wreck :) References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > That's an option I'd thought of but hadn't looked into. It just means you > > have to have more knowledge of the CPU you're emulating, but that's > > probably no bad thing. Yes, I'll look into this more this week. > > You might want to check out DRMZ80's source like you promised to do eons > ago. ;-) Me? Promise? Naah! ;) > > long weekend - and some things to research into. Sounds like I know what > > I'll be doing! Oh yes, and drinking. There's quite a high possibility of > > that too! :o > > Damnit... you guys are getting me excited about Dynarec stuff again and > I'm not done with my existing project! Grrr..... But I think I want to > start over again and do a 68K core. What is your current project again, BTW? And as for the 68k core - I won't argue. :) > You'l lhave to know how much time has passed though. You could do checks > at various terminal points, or you could spawn off some other thread and > multitask it, but just drop in a check here and there. you'll have to keep > track of timing anyway. Yep, that is a big problem with real dynarecs - as in the way that we think of them. I guess this could be the one reason why all the others do strange dynarecs that look like intepreters. Just an idea - but it could explain it... > > on to get water out of (think bath, sink, shower) is called a "tap". I've > > been told that it's not called that in America, but I've got no idea what > > it actually IS called. So... what is it actually called? :o > > Faucet. A "tap" is what you put in to a beer keg t oserver beer. ;-) For us a tap is *also* what you use to get beer out of a keg. Ah, so now I know. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:18:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82024 for dynarec-outgoing; Wed, 21 Jun 2000 01:18:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <395078CC.7654F0CE@eurocopter.de> Date: Wed, 21 Jun 2000 10:11:56 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > The flames have been reignited IMHO. So who all is interested in doing a > 68K Dynarec core? Uh... ;) I can think of one person. :) > I have some recommendations that I'd like to make, and I'd like to get > others aboard. > > * Architecture is written purely in C, initially targeted to 32 bit x86, > but coding provisions would allow for additional targets. I recommend that we all code in Java so that it's completely platform compatible... ...No, I don't recommend that at all. :) No, I agree with what you're saying. But I'll be using VC as my main compiler because I'm not putting DJGPP back on. Or Cygwin. Or any of the others... Mike *may* have a problem with this, though - he's a BeOS user and I'm not sure if he can write straight C in that. You *should* be able to, admittedly, but there's a possibility that BeOS forces you to use OO... > * API Should be compatible with Neil Corlett's Starscream 68K core. There > are three reasons for this: His APIs are quite clean (guess where he got a > lot of the ideas? ;-)) and well proven. There are many emulators out there > that are already using it, and it's the most well debugged and we can run > it side by side to compare the output of the dynarec with a known good > emulation. I also agree, this is something that both Andrew and myself had agreed on when we were to write our own core. > * We need a project coordinator (I nominate me. ;-)). I second that. Partly because I think you'll be good at it, but mainly because I don't want to do it. ;) > * Download DRMZ80 and Starscream and have a look, and let's discuss the > general direction and architecture. Okay, sure. Er, is Starscream freely available now? I thought it wasn't - you had to e-mail Neill himself to get it. Having said that, I know I've got it somewhere. :) > * I'll start by creating the basic framework, such as the memory > management, API wrappers, code emitters, disassembler, etc... since I > already have a lot of that done (I have a 68K disassembler I can use - > with permission from the author). This might take a few weeks, though. ;-( Yes, this is a time consuming task. Still, it's a necessary evil. I guess that work can progress quite quickly from there on. > * Let's pick something to recompile first. I nominate Atari's Food > Fight. The graphics and hardware are quite simple. You surely know more about the hardware for this machine than I do. What does it use (yes, I know, it uses a 68K)? > Let the discussion begin! Okay. Once you've done the framework, how are we going to split up the tasks? And another thing, though hardly important - can anyone think of a good name for it? And no, DRM68K isn't a good name. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:21:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82036 for dynarec-outgoing; Wed, 21 Jun 2000 01:20:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39507B06.35ECCF6C@eurocopter.de> Date: Wed, 21 Jun 2000 10:21:26 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <00036a7bf29f366e_mailit@mail.dynarec.com> <20000620150806.A1041@boris.quns.cam.ac.uk> <003901bfdac8$3702ada0$5f0b063e@daves> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I get the distinct impression that I'm going to have to install Linux sooner > or later, call me a cowardy-custard if you like, but I'm scared! :o) Psst... Don't mention "Linux" on this list. You're likely to get Neil Bradley to shout "FreeBSD" at you! ;) As it is, I should be pretty good with those now. I use UNIX every day at work now and have discovered some horrible things. It's probably my own fault that they're horrible though! Don't bother going to either Linux or FreeBSD if you have modern hardware - it'll be a pain to get it all to work. I've discovered that the hard way! :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:25:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82049 for dynarec-outgoing; Wed, 21 Jun 2000 01:25:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 01:31:50 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? (fwd) In-Reply-To: <200006210644.IAA03945@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > P.S.: What will happen with Space8 if everyone get involved in this new > project! What's Space8? -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:27:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82059 for dynarec-outgoing; Wed, 21 Jun 2000 01:27:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39507C76.5C286C00@eurocopter.de> Date: Wed, 21 Jun 2000 10:27:34 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > >I have some recommendations that I'd like to make, and I'd like to get > > >others aboard. > > Asking for permission to come aboard, Captain. > > Permission granted, #1. ;-) I'd come aboard too, but she cannae tak' more, Jim! If I give her anymore, she's goin' ta blow! Er... sorry. Anyway, I'd just like to make sure I'm in on this project (even though I think *everyone* know I want to be!). :) > > As long as I can work on BeOS and don't have to use Windows that's ok with > > me. > > I was thinking ANSI C, so I'd break down and use DJGPP even though I hate > it (and crank up the warning levels until it bleeds). That'll make it > gccable fairly easily since they're the same assembler. I'll make sure the > platform specific crap is broken out into its own arena so we can share as > much as we can. Nooooooooooooooooo! I *hate* DJGPP. But I guess you're right that we should use it. Be prepared for me to moan and complain about it. ;) I'm *still* going to use the IDE from VC though. :) > The big challenge will be "how do we break it into manageable > chunks"? Let's think about that! And then we have to think about how we can share those chunks... > Provided you trust my direction, I don't think it'll be a big deal. Lots > of them are already represented in the DRMZ80 (like the memory management > stuff). So I guess I'd better look at it, eh? :) > > I don't know the game neither the hardware... > > The game kicks ass. The hardware is mind numbingly simple. Mind numbingly simply is good, m'kay? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:28:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82068 for dynarec-outgoing; Wed, 21 Jun 2000 01:28:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 01:34:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: RE: DYNAREC: Shall we get started? In-Reply-To: <00b501bfdb57$12eb2020$a33b5393@a5s111pc16.fib.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by dynarec.com id BAA82065 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >* Architecture is written purely in C, initially targeted to 32 bit x86, > >but coding provisions would allow for additional targets. > Same as DRMZ80. It sounds well. I usually like more fully asm progs > but in dynarec this means more work and not better peformance. Um... Okay, but writing a dynarec in ASM would be a major bitch and a half. The dynarec is going to emit assembly code anyway - it's just that the dynarec itself is written in pure C. > Who, who? ;) When I was beginning to learn about emulation programming my > main two examples were MZ80 and Starscream (I thought sometime they were > from the same guy becuase they were so similar). I influenced Neill a couple of years ago and he tweaked Starscream's APIs to be very similar to my cores. > But Starscream asm output > it is a bit (or very) unreadeable, but perhaps a 68k is more difficult than > a Z80. No, it's tough to read and follow it because he purposely left out all the whitespace he could. Yes, it's way hard to read. At one time I even created a version of Starscream that would emit proper spacing/tabbing. He did it to speed up compilation. > >* Let's pick something to recompile first. I nominate Atari's Food > >Fight. The graphics and hardware are quite simple. > Well for me is ok (I don´t know the machine though). But I have another way > (which is nearer to my interests ;). We could use a Mega Drive open source > DGEN and we don´t have to worry with errors on hardware emulation, I'd rather not incur someone else's code in this for now. Food Fight is so simple (and I know it really, really well) and the graphics are even straightforward (unlike the Genesis). > Starscream as core as well as MZ80 (or perhaps he changed to a new, I can´t > remember). He's using MZ80. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:29:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82077 for dynarec-outgoing; Wed, 21 Jun 2000 01:29:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39507D3E.6B1F9E7F@eurocopter.de> Date: Wed, 21 Jun 2000 10:30:54 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Good question! I never wrote an emulator so it's hard for me to make any > > recommendations. > > In this case, it's like 5 people writing a CPU core. yuck! It also > semi-requires people to understand x86 assembly, too. Do you? The groupwork can be difficult. The x86 is certainly not, I'm definitely fine with this. That's got to be one good thing coming from a Z80 background - most of the instructions are very, very similar. And, in some cases, even the hex for the opcodes is the same. The worrying thing is that I can remember some Z80 instructions in hex - like C3, CD, C9, 90 and so on. And I know what they do too. Yep, that's scary... Anyway, getting back on topic, I understand x86 assembly fine. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:30:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82089 for dynarec-outgoing; Wed, 21 Jun 2000 01:30:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 01:36:23 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Diner wreck :) In-Reply-To: <3950760B.C65E0661@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Personall I'd rather you DO look so you can see ways to better it. We're > > all working together on this, right? If so, we shouldn't be spinning our > > wheels off in our own respective corners. > Okay, I'll look at it. But I do like to try and come up with my own ideas > first, so I'll try and do both at the same time. And probably confuse > myself. :) Well, you have to trust your circle of influence. The transmap idea probably wouldn't have popped into your head, nor would the middle CPU idea being a bad idea have ever presented itself as a bad idea. It's not like we're going to taint you. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:31:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82102 for dynarec-outgoing; Wed, 21 Jun 2000 01:31:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 01:37:14 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Diner wreck :) In-Reply-To: <395075B5.60FA4AB1@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Damnit... you guys are getting me excited about Dynarec stuff again and > > I'm not done with my existing project! Grrr..... But I think I want to > > start over again and do a 68K core. > What is your current project again, BTW? MIDI Upgrade for a Roland Jupiter 6. Firmware written in 8051 assembly. Lots of it. Fortunately I'm way ahead of my partner so I have some breathing room. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:31:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82113 for dynarec-outgoing; Wed, 21 Jun 2000 01:31:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39507D9F.84EF7B8C@eurocopter.de> Date: Wed, 21 Jun 2000 10:32:31 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <394F74C1.2EFB47B@eurocopter.de> <00036a80765a557a_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > A German on this British dominated list? That must be a real madman! I think he probably is, yes. :) > >Can anybody guess who this could be? ;) > > How many guesses do I get? ;-) None. ;p > >But the PSX CPU is still a > >33MHz RISC CPU and that takes a lot of the performance away from a PC. So > >this could be nice. > > And it is ideal for dynamic recompilation because it's so simple. I don't know the CPU, but difficulties could appear if it does any flag manipulation. That's a pain to do and keep fast... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:32:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82120 for dynarec-outgoing; Wed, 21 Jun 2000 01:32:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006210836.KAA08269@pons.ac.upc.es> Subject: Re: DYNAREC: Shall we get started? In-Reply-To: <395078CC.7654F0CE@eurocopter.de> "from Neil Griffiths at Jun 21, 2000 10:11:56 am" To: dynarec@dynarec.com Date: Wed, 21 Jun 2000 10:36:08 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Okay. Once you've done the framework, how are we going to split up the > tasks? And another thing, though hardly important - can anyone think of a > good name for it? And no, DRM68K isn't a good name. ;) Why not? It is simple and easy to understand: MultiCPU Dynamic Recompiler 68k emulator. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:33:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82129 for dynarec-outgoing; Wed, 21 Jun 2000 01:33:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 01:39:16 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? In-Reply-To: <395078CC.7654F0CE@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Mike *may* have a problem with this, though - he's a BeOS user and I'm not > sure if he can write straight C in that. You *should* be able to, > admittedly, but there's a possibility that BeOS forces you to use OO... You mean C++, not OO. ;-) But he has GCC on BeOS, which he can use. > > lot of the ideas? ;-)) and well proven. There are many emulators out there > > that are already using it, and it's the most well debugged and we can run > > it side by side to compare the output of the dynarec with a known good > > emulation. > I also agree, this is something that both Andrew and myself had agreed on > when we were to write our own core. I envision the context to be an extension of Starscream's. > > * Download DRMZ80 and Starscream and have a look, and let's discuss the > > general direction and architecture. > Okay, sure. Er, is Starscream freely available now? I thought it wasn't - > you had to e-mail Neill himself to get it. Having said that, I know I've > got it somewhere. :) Yes, it's freely available. I don't have the URL, but I can send you a copy if you need it. > > already have a lot of that done (I have a 68K disassembler I can use - > > with permission from the author). This might take a few weeks, though. ;-( > Yes, this is a time consuming task. Still, it's a necessary evil. I guess > that work can progress quite quickly from there on. When the initial framework gets going - yup. > > * Let's pick something to recompile first. I nominate Atari's Food > > Fight. The graphics and hardware are quite simple. > You surely know more about the hardware for this machine than I do. What > does it use (yes, I know, it uses a 68K)? I'll document it in an upcoming email message. > > Let the discussion begin! > Okay. Once you've done the framework, how are we going to split up the > tasks? No friggin' clue. Let's figure it out as we go along. I'm sure there'll be some sort of partitioning that can occur. > And another thing, though hardly important - can anyone think of a > good name for it? And no, DRM68K isn't a good name. ;) I'm tapped on snappy comebacks. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:35:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82149 for dynarec-outgoing; Wed, 21 Jun 2000 01:35:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 01:41:26 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <39507B06.35ECCF6C@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I get the distinct impression that I'm going to have to install Linux sooner > > or later, call me a cowardy-custard if you like, but I'm scared! :o) > Psst... Don't mention "Linux" on this list. You're likely to get Neil > Bradley to shout "FreeBSD" at you! ;) Yes, Beavis. Ahem... : [DYNAREC->neilb: 427] uptime 1:34AM up 42 days, 2:04, 3 users, load averages: 0.03, 0.03, 0.00 ;-) > Don't bother going to either Linux or FreeBSD if you have modern hardware - > it'll be a pain to get it all to work. I've discovered that the hard way! > :-/ Yeah. UNIX Is a shitty desktop OS - always has been and will be for quite some time (please, don't get into it with me. X Sucks major ass as a UI even with fvwm and all the others). -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:37:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82161 for dynarec-outgoing; Wed, 21 Jun 2000 01:37:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39507E7A.E28240EB@eurocopter.de> Date: Wed, 21 Jun 2000 10:36:10 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <00036a7bf29f366e_mailit@mail.dynarec.com> <394F7A56.2B803801@eurocopter.de> <00036a80a0fa3913_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Well, most of the code I've seen so far (excluding Neil's DMZ80 of course) is > simply a modfied interpreter with code generation right in the decoder - yuk! > It's sure that opcode structures lead to a cleaner and better maitainable > code and also better optimisation in the generated code. I wonder whether my idea is correct - they've done it that way because of timing issues? > >I agree, but even the Z80 is simpler than the other suggested CPUs... > > I guess you don't know much about the MIPS, do you? The MIPS I is probably > one of the simplest architectures I know. Later generations are more > complicated, but the R3000A used in the PSX is really simple and doesn't even > have an FPU. I think MIPS has flags for FP operations but all integer stuff > works without any condition codes which makes the dynarec easier. You be right, I don't know about this CPU. The lack of flags for integer stuff sounds cool actually. :) > >> I hope the others write some comments too... > >I have! I have! > > Typical reaction for you ;-) Damn, I hate being predictable. ;-p Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:38:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82170 for dynarec-outgoing; Wed, 21 Jun 2000 01:38:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 01:44:03 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? In-Reply-To: <39507C76.5C286C00@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Asking for permission to come aboard, Captain. > > Permission granted, #1. ;-) > I'd come aboard too, but she cannae tak' more, Jim! If I give her anymore, > she's goin' ta blow! But captain! The toilets are backing up into the warp drive! It'll take time to make repairs! > > I was thinking ANSI C, so I'd break down and use DJGPP even though I hate > > it (and crank up the warning levels until it bleeds). That'll make it > > gccable fairly easily since they're the same assembler. I'll make sure the > > platform specific crap is broken out into its own arena so we can share as > > much as we can. > Nooooooooooooooooo! > I *hate* DJGPP. But I guess you're right that we should use it. Be prepared > for me to moan and complain about it. ;) You won't have to use it. DJGPP Is a least common denominator because it's repackaged GCC. That means the C code will compile nicely in MSVC or anything else, and I can maintain DSP/DSWs for Win32 (if you want to give them to me). What I expect is that we're all building it on slightly different platforms, we can adjust our specific builds and environments and just keep it in the master source. I'd be happy to handle the DSW/DSP drop updating (but someone needs to update the DSW/DSPs) > I'm *still* going to use the IDE from VC though. :) Use MSVC all you want. Using DJGPP(gcc) will make Mike happy. > > The big challenge will be "how do we break it into manageable > > chunks"? Let's think about that! > And then we have to think about how we can share those chunks... Yeah. Start thinking. > > Provided you trust my direction, I don't think it'll be a big deal. Lots > > of them are already represented in the DRMZ80 (like the memory management > > stuff). > So I guess I'd better look at it, eh? :) Yeah. Get off your limey ass and get lookin'! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:38:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82177 for dynarec-outgoing; Wed, 21 Jun 2000 01:38:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006210841.KAA00913@pons.ac.upc.es> Subject: Re: DYNAREC: Shall we get started? (fwd) In-Reply-To: "from Neil Bradley at Jun 21, 2000 01:31:50 am" To: dynarec@dynarec.com Date: Wed, 21 Jun 2000 10:41:13 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > P.S.: What will happen with Space8 if everyone get involved in this new > > project! > > What's Space8? > The non-used name of the SI tutorial in MUL8 list which Neil and me theorically are doing. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:39:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82186 for dynarec-outgoing; Wed, 21 Jun 2000 01:39:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 01:45:01 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? (fwd) In-Reply-To: <200006210841.KAA00913@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > What's Space8? > The non-used name of the SI tutorial in MUL8 list which Neil and me > theorically are doing. It seems everyone's gone flaccid on the idea anyway. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:42:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82198 for dynarec-outgoing; Wed, 21 Jun 2000 01:42:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39507FEC.55DEE7BF@eurocopter.de> Date: Wed, 21 Jun 2000 10:42:20 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) References: <00036a83da8980c3_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Hey, I'm used to NG teasing me, but now even NB does it - AHHHH! ;-) Me? Tease you? Me? Never, I'm an angel, I am! ;-p It's all in the name. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:48:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82211 for dynarec-outgoing; Wed, 21 Jun 2000 01:46:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006210850.KAA28635@pons.ac.upc.es> Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <39507D9F.84EF7B8C@eurocopter.de> "from Neil Griffiths at Jun 21, 2000 10:32:31 am" To: dynarec@dynarec.com Date: Wed, 21 Jun 2000 10:50:48 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > A German on this British dominated list? That must be a real madman! > > I think he probably is, yes. :) > Well he can get some help from a Spanish guy to stop the British domination. ;) Hehehe! With this heavy traffic day the newcomers will know how was the list when started. Fifty or more mails in a day (and my mail account went to hell). But it is fun. And by chance we are really on topic. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 01:55:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82224 for dynarec-outgoing; Wed, 21 Jun 2000 01:54:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006210859.KAA27498@pons.ac.upc.es> Subject: Re: DYNAREC: Shall we get started? (fwd) In-Reply-To: "from Neil Bradley at Jun 21, 2000 01:45:01 am" To: dynarec@dynarec.com Date: Wed, 21 Jun 2000 10:59:08 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > What's Space8? > > The non-used name of the SI tutorial in MUL8 list which Neil and me > > theorically are doing. > > It seems everyone's gone flaccid on the idea anyway. > It is sad but true. I will want to continue it though because it is a really interesting idea. I hope changing a bit the objective could help, there are some people interested in help, Brian and Kieron for example, but they are few for the original purpose. It's also a bit my fault because I have espended the last two weeks mainly playing FF Tactics. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:04:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82398 for dynarec-outgoing; Wed, 21 Jun 2000 02:03:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 02:09:25 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Welcome to Food Fight Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Keep this message handy. It'll come in quite useful during the process! FWIW, I hope it's OK that I just militantly chose this game. I figure it's one of the best and most simple for our purposes. Food Fight was created by Atari in 1982. It's a kickass little game where you throw food at various chefs and they throw food back at you. It uses a single 68000 running at 6MHZ. The graphics engine is a simple tile and sprite layer. It uses 256 colors (fits nicely in a full palette). It uses 3 Atari Pokey chips for sound. Basically, the chips pull clock signals off the system's bus and modulate them to make noise. Simple sound chips (we can handle them later, but we'll need it for the emulation). Food Fight triggers an int 1 four times per frame, or once every 6000000/(4*60)=25000 clocks, or once every 4.16 milliseconds. It also creates an interrupt 2 once per frame (or 1/60 of a second, or 16.64 milliseconds) Here's the memory map: Description Address R/W ---------------------------------------------------------------- Program ROMs 000000-00ffff R Program RAM 014000-01bfff R/W Motion object RAM 01c000-01cfff R/W (details of the MOB RAM omitted for now) Playfield RAM (character RAM) 800000-8007ff R/W (details of the playfield RAM omitted for now) NVRAM 900000-9001ff R/W Analog in (joystick X/Y read) 940000-940007 R Analog out (joystick X/Y select)944000-944007 W Coin/start/throw buttons 948000 R Color (palette) RAM 950000-9503ff W Watchdog 958000 W Pokey 0 a40000-a4001f R/W Pokey 1 a80000-a8001f R/W Pokey 2 ac0000-ac001f R/W Note that the pokey really only uses up 16 registers, but you do word writes and it just accesses the lower 8 bits of the data. We'll unleash the details of this later on once we get that far (which will be a while). Some of the other devices only use the lower 8 bits, too, but it seems that word reads/writes are done a word at a time regardless. Notice that all we'll have to recompile is the program ROM area, so we can have a transmap for that region that's only 32K entries. ;-) You'll find that most games have a fairly small region that's ROM (that can be recompiled and transmapped just fine). Even some of the larger 68K games like Toobin' (which has 512K of game ROM) Questions? Comments? -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:13:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82415 for dynarec-outgoing; Wed, 21 Jun 2000 02:12:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 02:18:46 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Register usage Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I have a few suggestions as to how we should allocate x86 registers (to the 68K equivalents): EAX = General purpose (flags in AH in x86 format) EBX = D0 ECX = D1 EDX = A0 EBP = A1 ESI = General purposes EDI = Time remaining (number of cycles) until DRm68000Exec() finishes I've noticed that code has a tendency to use A0/A1 D0/D1 a *LOT* and I think we'd gain quite a bit by having them in x86 registers. Thoughts? Does this jive with the rest of your experiences? We'd store the flags in native x86 format and convert them whenever we entered or exited DRm68000Exec() by way of running out of things to execute or when we actually call a memory handler. I'll give a quickie Starscream tutorial tomorrow when I'm more awake. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:17:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82428 for dynarec-outgoing; Wed, 21 Jun 2000 02:17:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <395083A0.5FF00FBE@eurocopter.de> Date: Wed, 21 Jun 2000 10:58:08 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? References: <200006210836.KAA08269@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Why not? It is simple and easy to understand: MultiCPU Dynamic Recompiler > 68k emulator. Okay, but try *saying* it. Something that sounds like "drum-68k" is not a good name. ;) And D-R-M-68-K is much too long. We need a really good name for it. Well, okay, we don't actually NEED a good name for it - but it would be nice. :) I recommend we call it "transmeta". :)) Actually, if we call it "transmatter" then that'd be funny. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:17:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82438 for dynarec-outgoing; Wed, 21 Jun 2000 02:17:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39508459.781A6AE5@eurocopter.de> Date: Wed, 21 Jun 2000 11:01:14 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > You mean C++, not OO. ;-) But he has GCC on BeOS, which he can use. I actually meant "objects" but even then, yes. I mean C++. And good, I didn't know BeOS had GCC... > > Okay, sure. Er, is Starscream freely available now? I thought it wasn't - > > you had to e-mail Neill himself to get it. Having said that, I know I've > > got it somewhere. :) > > Yes, it's freely available. I don't have the URL, but I can send you a > copy if you need it. If you would then I'd appreciate it. I only have 1 hour of 'net time (between 12 and 1pm) and I can't guarantee that I either won't be busy - or that it'll work! :o > > You surely know more about the hardware for this machine than I do. What > > does it use (yes, I know, it uses a 68K)? > > I'll document it in an upcoming email message. Okay, cool. > > > Let the discussion begin! > > Okay. Once you've done the framework, how are we going to split up the > > tasks? > > No friggin' clue. Let's figure it out as we go along. I'm sure there'll be > some sort of partitioning that can occur. Okay. Maybe we'll all find different parts of the CPU interesting or something... > > And another thing, though hardly important - can anyone think of a > > good name for it? And no, DRM68K isn't a good name. ;) > > I'm tapped on snappy comebacks. ITOSC. I like that. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:20:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82450 for dynarec-outgoing; Wed, 21 Jun 2000 02:20:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 02:26:09 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? In-Reply-To: <395083A0.5FF00FBE@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I recommend we call it "transmeta". :)) > Actually, if we call it "transmatter" then that'd be funny. :) Transdump Dynadump Transplatter Transplop I dunno. As long as it insults Transmeta (who just got their asses kicked by Intel's latest mobile Pentium III line in terms of performance and power consumption - their one and only selling point), I'm all for it! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:22:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82463 for dynarec-outgoing; Wed, 21 Jun 2000 02:22:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 02:28:44 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Dung spitting! Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I would've expected this from France, but from the UK? Man, you guys are sickos. ;-) http://www.cnn.com/2000/WORLD/europe/06/17/dungspitting.champ/index.html -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:22:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82472 for dynarec-outgoing; Wed, 21 Jun 2000 02:22:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <395089BD.461F39F0@eurocopter.de> Date: Wed, 21 Jun 2000 11:24:13 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Don't bother going to either Linux or FreeBSD if you have modern hardware - > > it'll be a pain to get it all to work. I've discovered that the hard way! > > :-/ > > Yeah. UNIX Is a shitty desktop OS - always has been and will be for quite > some time (please, don't get into it with me. X Sucks major ass as a UI > even with fvwm and all the others). I won't get into this - I agree. But I have to use it at work. But I refuse to do so at home! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:26:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82484 for dynarec-outgoing; Wed, 21 Jun 2000 02:26:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39508ADC.6A36DB00@eurocopter.de> Date: Wed, 21 Jun 2000 11:29:00 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > I *hate* DJGPP. But I guess you're right that we should use it. Be prepared > > for me to moan and complain about it. ;) > > You won't have to use it. DJGPP Is a least common denominator because it's > repackaged GCC. That means the C code will compile nicely in MSVC or > anything else, and I can maintain DSP/DSWs for Win32 (if you want to give > them to me). I had to think for a moment there what DSP and DSWs were (because of sound engineering friends, DSP is something else!) but I can certainly give them to you. > What I expect is that we're all building it on slightly different > platforms, we can adjust our specific builds and environments and just > keep it in the master source. I'd be happy to handle the DSW/DSP drop > updating (but someone needs to update the DSW/DSPs) That'll be me then - because I'm using VC. I didn't get it just so that I can use GCC. :)) > > I'm *still* going to use the IDE from VC though. :) > > Use MSVC all you want. Using DJGPP(gcc) will make Mike happy. Okay, I'll use VC. If we start getting problems then, and only then, will I swap to GCC. :) > > > The big challenge will be "how do we break it into manageable > > > chunks"? Let's think about that! > > And then we have to think about how we can share those chunks... > > Yeah. Start thinking. I have done! :o > > So I guess I'd better look at it, eh? :) > > Yeah. Get off your limey ass and get lookin'! ;-) Oh god, do I have to? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:31:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82501 for dynarec-outgoing; Wed, 21 Jun 2000 02:31:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006210936.LAA22665@pons.ac.upc.es> Subject: Re: DYNAREC: Register usage In-Reply-To: "from Neil Bradley at Jun 21, 2000 02:18:46 am" To: dynarec@dynarec.com Date: Wed, 21 Jun 2000 11:36:14 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I have a few suggestions as to how we should allocate x86 registers (to > the 68K equivalents): > > EAX = General purpose (flags in AH in x86 format) > EBX = D0 > ECX = D1 > EDX = A0 > EBP = A1 > ESI = General purposes > EDI = Time remaining (number of cycles) until DRm68000Exec() finishes > > I've noticed that code has a tendency to use A0/A1 D0/D1 a *LOT* and I > think we'd gain quite a bit by having them in x86 registers. Thoughts? > Does this jive with the rest of your experiences? > If you say that it must be true. It think that mantein all the 68k registers we could in x86 registers is good (and now I would want to have all those IA-64 registers), more if they are really more used than the others. But I think if we can't get into trouble when translating somekind of heavy instructions. With only two general purpose registers we will have to make some register movement to save registers (or push/pop them). Another issue I was thinking about 68K. It's little endian (or it is big endian, argh!! my memory again!). Well anyway. We will load the data in memory byte swapped or we will byte swap the byte reads and writes. I think the best in this case (in all) is the second. In an interpreter we will have to bit complement the last address bit but in a dynarec we haven't, just translate the propper memory address (if direct addressing of course). > We'd store the flags in native x86 format and convert them whenever we > entered or exited DRm68000Exec() by way of running out of things to > execute or when we actually call a memory handler. > It's a good decision as the x86 flags and 68K flags are pretty similar. I have to take a look also to the 68k specifications. I think it has a special carry bit ... or perhaps not. We will see. If my memory wasn't so bad. > I'll give a quickie Starscream tutorial tomorrow when I'm more awake. > I think I will have to read the Starscream doc for tomorrow then. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:32:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82509 for dynarec-outgoing; Wed, 21 Jun 2000 02:32:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006210926.LAA07304@pons.ac.upc.es> Subject: Re: DYNAREC: Shall we get started? In-Reply-To: <395083A0.5FF00FBE@eurocopter.de> "from Neil Griffiths at Jun 21, 2000 10:58:08 am" To: dynarec@dynarec.com Date: Wed, 21 Jun 2000 11:25:59 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > Why not? It is simple and easy to understand: MultiCPU Dynamic Recompiler > > 68k emulator. > > Okay, but try *saying* it. Something that sounds like "drum-68k" is not a > good name. ;) > In Spanish doesn't sound so bad. > And D-R-M-68-K is much too long. We need a really good name for it. Well, > okay, we don't actually NEED a good name for it - but it would be nice. :) > Too loong!! Perhaps we can call it "It". ;) > I recommend we call it "transmeta". :)) > > Actually, if we call it "transmatter" then that'd be funny. :) > No!! If you call it this way I would have to go to Germany and kill you. You have to understand, it's nothing personal but I would have to do it. ;)) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:35:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82521 for dynarec-outgoing; Wed, 21 Jun 2000 02:35:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006210940.LAA17643@pons.ac.upc.es> Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <395089BD.461F39F0@eurocopter.de> "from Neil Griffiths at Jun 21, 2000 11:24:13 am" To: dynarec@dynarec.com Date: Wed, 21 Jun 2000 11:40:09 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > > Don't bother going to either Linux or FreeBSD if you have modern hardware - > > > it'll be a pain to get it all to work. I've discovered that the hard way! > > > :-/ > > > > Yeah. UNIX Is a shitty desktop OS - always has been and will be for quite > > some time (please, don't get into it with me. X Sucks major ass as a UI > > even with fvwm and all the others). > > I won't get into this - I agree. But I have to use it at work. But I refuse > to do so at home! :) > BTW I have to say something: DOS FOREVER!!!! ;) Well I actually use W9X and a DOS box as usually as I can. The program explorer is useful though. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:36:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82531 for dynarec-outgoing; Wed, 21 Jun 2000 02:36:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39508D3D.330FFA2E@eurocopter.de> Date: Wed, 21 Jun 2000 11:39:09 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Dynadump I like this one. It sounds kind of sick too. :) > Transplop This one is twisted. I like this too. :) > I dunno. As long as it insults Transmeta (who just got their asses kicked > by Intel's latest mobile Pentium III line in terms of performance and > power consumption - their one and only selling point), I'm all for it! Yep, I read about that (the Intel mobile) yesterday. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:36:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82540 for dynarec-outgoing; Wed, 21 Jun 2000 02:36:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39508CE2.4BC6DCD7@eurocopter.de> Date: Wed, 21 Jun 2000 11:37:38 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Register usage References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I have a few suggestions as to how we should allocate x86 registers (to > the 68K equivalents): > > EAX = General purpose (flags in AH in x86 format) > EBX = D0 > ECX = D1 > EDX = A0 > EBP = A1 > ESI = General purposes > EDI = Time remaining (number of cycles) until DRm68000Exec() finishes > > I've noticed that code has a tendency to use A0/A1 D0/D1 a *LOT* and I > think we'd gain quite a bit by having them in x86 registers. Thoughts? > Does this jive with the rest of your experiences? This sounds fine to me. We may end up PUSHing and POPing a lot though - especially with BX and DX... It jives with me, though. I always allocate registers. That's why I hate the x86 chips not having enough... > We'd store the flags in native x86 format and convert them whenever we > entered or exited DRm68000Exec() by way of running out of things to > execute or when we actually call a memory handler. Okay, this sounds best. :) > I'll give a quickie Starscream tutorial tomorrow when I'm more awake. Okay. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:38:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82549 for dynarec-outgoing; Wed, 21 Jun 2000 02:38:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39508DAC.4237C9A8@eurocopter.de> Date: Wed, 21 Jun 2000 11:41:00 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? (fwd) References: <200006210859.KAA27498@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > It seems everyone's gone flaccid on the idea anyway. > > > It is sad but true. I will want to continue it though because it is > a really interesting idea. I hope changing a bit the objective could > help, there are some people interested in help, Brian and Kieron for > example, but they are few for the original purpose. We'll have to see... > It's also a bit my fault because I have espended the last two weeks > mainly playing FF Tactics. I don't agree with that - it's certainly nothing to do with you. If they were actually interested then they'd be asking questions, trying to do stuff. But they're not. And I'm getting sick of it now... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:44:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82562 for dynarec-outgoing; Wed, 21 Jun 2000 02:44:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39508F19.5DC9FF0E@eurocopter.de> Date: Wed, 21 Jun 2000 11:47:05 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? References: <00b501bfdb57$12eb2020$a33b5393@a5s111pc16.fib.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I usually like more fully asm progs but in a dynarec this means more work > and not better peformance. And with 5 or so people working on it, it sounds like a personal nightmare to work with. Even C will be difficult, but if we were to go for ASM... Fun! I can just imagine: --- "mov [d0], ax" "No! You should put: mov d0, ax" "But it makes no difference!" "It does to me!" "I'm going to kill you!" "AARGH!" --- Or maybe not. But still, it'd be a nightmare. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:50:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82578 for dynarec-outgoing; Wed, 21 Jun 2000 02:50:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3950903A.96563FB8@eurocopter.de> Date: Wed, 21 Jun 2000 11:51:54 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? References: <200006210926.LAA07304@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Okay, but try *saying* it. Something that sounds like "drum-68k" is not a > > good name. ;) > > > In Spanish doesn't sound so bad. But it does in all the languages I know. I know very little Spanish. And even the little that I do know, I don't know how to spell. Gracias? > > And D-R-M-68-K is much too long. We need a really good name for it. Well, > > okay, we don't actually NEED a good name for it - but it would be nice. :) > > Too loong!! Perhaps we can call it "It". ;) ThE Dynarec Destroys You - TEDDY :)) > > Actually, if we call it "transmatter" then that'd be funny. :) > > > No!! If you call it this way I would have to go to Germany and kill you. > You have to understand, it's nothing personal but I would have to do it. ;)) Okay, I'm rather attached to my life - so I won't. ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:52:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82588 for dynarec-outgoing; Wed, 21 Jun 2000 02:52:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006210956.LAA17329@pons.ac.upc.es> Subject: Re: DYNAREC: Shall we get started? (fwd) In-Reply-To: <39508DAC.4237C9A8@eurocopter.de> "from Neil Griffiths at Jun 21, 2000 11:41:00 am" To: dynarec@dynarec.com Date: Wed, 21 Jun 2000 11:56:15 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > > It seems everyone's gone flaccid on the idea anyway. > > > > > It is sad but true. I will want to continue it though because it is > > a really interesting idea. I hope changing a bit the objective could > > help, there are some people interested in help, Brian and Kieron for > > example, but they are few for the original purpose. > > We'll have to see... > We will have to discuss about it and post something to MUL8 someday. > > It's also a bit my fault because I have espended the last two weeks > > mainly playing FF Tactics. > > I don't agree with that - it's certainly nothing to do with you. If they > were actually interested then they'd be asking questions, trying to do > stuff. But they're not. And I'm getting sick of it now... > Yes, in the last months MUL8 is becoming more and more defuncted(dead). Six months ago, when I started (I think in october 99) there wasn't so much traffic as it seem it was at the start of the list, but there was traffic. Now there isn't. And I don't know how it can get alive again because who has to keep a list this list are the beginners and the people who is beginning in the emu scene. It's very sad because I'm not the oldest member of the list it helps me a lot. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 02:58:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA82602 for dynarec-outgoing; Wed, 21 Jun 2000 02:58:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39509210.C0C0DADF@eurocopter.de> Date: Wed, 21 Jun 2000 11:59:44 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) References: <200006210940.LAA17643@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > BTW I have to say something: DOS FOREVER!!!! ;) I'm a big DOS user - and I use it at home. But I still use Windows to do certain things - and there are things that I actually like in UNIX that aren't in DOS. A simple example is directory name completion. In UNIX, I can type 'cd bl' and press a key and it will either complete it to 'cd blah' or give me a list of possible directories which I can then choose. That's cool. Being able to protect directories or change user rights is also quite handy if you have people sharing your machine - but DOS wasn't designed for that, I know. Still, it's something I'd like! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 03:04:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA82622 for dynarec-outgoing; Wed, 21 Jun 2000 03:04:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006211006.MAA01496@pons.ac.upc.es> Subject: Re: DYNAREC: Shall we get started? In-Reply-To: <3950903A.96563FB8@eurocopter.de> "from Neil Griffiths at Jun 21, 2000 11:51:54 am" To: dynarec@dynarec.com Date: Wed, 21 Jun 2000 12:06:04 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > > Okay, but try *saying* it. Something that sounds like "drum-68k" is not a > > > good name. ;) > > > > > In Spanish doesn't sound so bad. > > But it does in all the languages I know. I know very little Spanish. And > even the little that I do know, I don't know how to spell. Gracias? > Spanish is really easy to spell because different from other languages as English or German you spell as you read/write and you read/write as you spell. Each letter it's a different sound (and the most cases, there are only a few exceptions) and ever is spelled in the same way. For example this means we have only five vowels: a, e, i, o, u. And we don't have to bother about how it will be spelled in this word on in that other as in english. This makes, or it makes for me, that learn english could be difficult to Spanish. The problem for learning Spanish is that the sound are different (mainly vowels, but also other letters) from english. It also could be difficult all verb issue, plural and singular, etc. As I can't use a fonetic alphabet in this mail I can't tell you how is really spelled. Well, a bit off topic perhaps. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 03:11:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA82638 for dynarec-outgoing; Wed, 21 Jun 2000 03:11:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006211013.MAA14158@pons.ac.upc.es> Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <39509210.C0C0DADF@eurocopter.de> "from Neil Griffiths at Jun 21, 2000 11:59:44 am" To: dynarec@dynarec.com Date: Wed, 21 Jun 2000 12:13:24 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > BTW I have to say something: DOS FOREVER!!!! ;) > > I'm a big DOS user - and I use it at home. But I still use Windows to do > certain things - and there are things that I actually like in UNIX that > aren't in DOS. A simple example is directory name completion. In UNIX, I > can type 'cd bl' and press a key and it will either complete it to 'cd > blah' or give me a list of possible directories which I can then choose. > That's cool. > Yes really cool, but lately everytime I'm in DOS I push TAB and I think what happens, what!... ;) Well, I don't have it by I know there are some DOS extensions that provide some useful stuff as directory name completition, an examples is 4DOS (by the people of QEMM I think). You can also use bash from DJGPP or cygwin. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 04:47:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA82732 for dynarec-outgoing; Wed, 21 Jun 2000 04:47:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Register usage From: "M.I.K.e" In-Reply-To: Message-ID: <00036a8e44d8e96b_mailit@mail.dynarec.com> References: Date: Wed, 21 Jun 2000 12:43:23 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >EAX = General purpose (flags in AH in x86 format) Obvious choice since we want to use the SAHF/LAHF trick you already used in DMZ80. >EBX = D0 >ECX = D1 >EDX = A0 >EBP = A1 >ESI = General purposes >EDI = Time remaining (number of cycles) until DRm68000Exec() finishes >I've noticed that code has a tendency to use A0/A1 D0/D1 a *LOT* and I >think we'd gain quite a bit by having them in x86 registers. Thoughts? >Does this jive with the rest of your experiences? Well, you know that I'd prefer dynamic register allocation for the 68K but since we deal with one special game that will be ok with me. Just as a reminder: programming books for the Atari ST recommend not to use D0-D2 and A0-A2 in applications because those are heavily used by TOS. I almost wanted to ask if we should reserve one register for the PC because of often used PC relative addressing, but then I realised that this not likely to be the case for a ROM. >We'd store the flags in native x86 format and convert them whenever we >entered or exited DRm68000Exec() by way of running out of things to >execute or when we actually call a memory handler. Sounds like a good idea. I guess the biggest problem will be the extended flag. >I'll give a quickie Starscream tutorial tomorrow when I'm more awake. Good idea ;-) I had too less sleep as well... >-->Neil -- M.I.K.e "I'd love to go out with you, but the last time I went out, I never came back." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 04:48:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA82740 for dynarec-outgoing; Wed, 21 Jun 2000 04:48:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Welcome to Food Fight From: "M.I.K.e" In-Reply-To: Message-ID: <00036a8e1ebd2d97_mailit@mail.dynarec.com> References: Date: Wed, 21 Jun 2000 12:32:43 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Food Fight was created by Atari in 1982. >It uses a single 68000 running at 6MHZ. >The graphics engine is a simple tile and sprite layer. It uses 256 colors >(fits nicely in a full palette). >It uses 3 Atari Pokey chips for sound. I found that out this morning by launching my copy of MAME32 (yuk!), but strangely enough it didn't get past the self test due to an NVRAM error... >Notice that all we'll have to recompile is the program ROM area, so we can >have a transmap for that region that's only 32K entries. ;-) Nice ;-) >-->Neil -- M.I.K.e "All my life I wanted to be someone; I guess I should have been more specific." -- Jane Wagner --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 05:11:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA82782 for dynarec-outgoing; Wed, 21 Jun 2000 05:11:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3950B148.8A882528@eurocopter.de> Date: Wed, 21 Jun 2000 14:12:57 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? (fwd) References: <200006210956.LAA17329@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > We will have to discuss about it and post something to MUL8 someday. Agreed. Mail me whenever you have time. Me? I have *plenty* of time for the next 4 days. :) > Yes, in the last months MUL8 is becoming more and more defuncted(dead). Six > months ago, when I started (I think in october 99) there wasn't so much > traffic as it seem it was at the start of the list, but there was > traffic. Now there isn't. And I don't know how it can get alive again > because who has to keep a list this list are the beginners and the > people who is beginning in the emu scene. It's very sad because I'm not > the oldest member of the list it helps me a lot. Yep, it's bad. What can we do? I've done my best. I'm not going to put any more method into something which I don't particularly find rewarding anyway. If they don't want to help themselves then I'm not going to help them - and that's it. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 05:19:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA82798 for dynarec-outgoing; Wed, 21 Jun 2000 05:19:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3950B2DC.2D853584@eurocopter.de> Date: Wed, 21 Jun 2000 14:19:40 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Welcome to Food Fight References: <00036a8e1ebd2d97_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I found that out this morning by launching my copy of MAME32 (yuk!), but > strangely enough it didn't get past the self test due to an NVRAM error... It's quite likely that one of the function keys will let you pass that error. I've had that sort of thing before and I just hit random function keys until I got something to work. :) > >Notice that all we'll have to recompile is the program ROM area, so we can > >have a transmap for that region that's only 32K entries. ;-) > > Nice ;-) That's true. So okay, we'll optimise the CPU core for this game. But don't we want to write a more general one to run anything at high speeds without former knowledge of what it is going to execute? Or, alternatively, are we going to write the generator so that you can make the generated code be more specifically optimised. That could be a cool option (if you see what I mean)... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 05:43:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA82838 for dynarec-outgoing; Wed, 21 Jun 2000 05:43:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Heavy Traffic From: "M.I.K.e" Message-ID: <00036a8f87d6d2ad_mailit@mail.dynarec.com> Date: Wed, 21 Jun 2000 14:13:42 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Wow! After a week of silence we finally have as much traffic as in the good old days and it's even mostly on-topic! I don't even know to which message I should reply first! Very impressive! -- M.I.K.e Real programmers disdain structured programming. Structured programming is for compulsive neurotics who were prematurely toilet- trained. They wear neckties and carefully line up pencils on otherwise clear desks. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 05:43:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA82848 for dynarec-outgoing; Wed, 21 Jun 2000 05:43:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Register usage From: "M.I.K.e" In-Reply-To: <200006210936.LAA22665@pons.ac.upc.es> Message-ID: <00036a9001efe012_mailit@mail.dynarec.com> References: <200006210936.LAA22665@pons.ac.upc.es> Date: Wed, 21 Jun 2000 14:47:50 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Another issue I was thinking about 68K. It's little endian (or it is >big endian, argh!! my memory again!). It's big endian. >Well anyway. We will load the >data in memory byte swapped or we will byte swap the byte reads and writes. >I think the best in this case (in all) is the second. In an interpreter >we will have to bit complement the last address bit but in a dynarec we >haven't, just translate the propper memory address (if direct addressing >of course). Hm, I think NB is the specialist for such questions. >It's a good decision as the x86 flags and 68K flags are pretty similar. >I have to take a look also to the 68k specifications. I think it has >a special carry bit ... or perhaps not. We will see. If my memory wasn't >so bad. It has the extended flag used by ADDX, SUBX, NEGX instructions. It's basically the same as the carry flag, but I think there are some exceptions. >Victor -- M.I.K.e It was one of those perfect summer days -- the sun was shining, a breeze was blowing, the birds were singing, and the lawn mower was broken ... -- James Dent --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 05:43:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA82859 for dynarec-outgoing; Wed, 21 Jun 2000 05:43:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Shall we get started? (fwd) From: "M.I.K.e" In-Reply-To: <200006210644.IAA03945@pons.ac.upc.es> Message-ID: <00036a8f8d7dede5_mailit@mail.dynarec.com> References: <200006210644.IAA03945@pons.ac.upc.es> Date: Wed, 21 Jun 2000 14:15:16 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You can count on me, you should know I like write dynarec and emulation docs That's what I assumed ;-) >(if I'm not playing FF Tactics :(, argh!! this games is going to avoid me >to become an emu author!! ;)) What is this FF Tactics anyway? >Problems the same of ever: no mail connection (when Mrs. thecnology minister >we will have plain telephone quote!), and my poor english ;). But neither >of them will stop me anyway. Hehe. >Victor Moya -- M.I.K.e "Contrariwise," continued Tweedledee, "if it was so, it might be, and if it were so, it would be; but as it isn't, it ain't. That's logic!" -- Lewis Carroll, "Through the Looking Glass" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 05:43:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA82867 for dynarec-outgoing; Wed, 21 Jun 2000 05:43:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Shall we get started? (fwd) From: "M.I.K.e" In-Reply-To: <200006210652.IAA13677@pons.ac.upc.es> Message-ID: <00036a8f9157d1df_mailit@mail.dynarec.com> References: <200006210652.IAA13677@pons.ac.upc.es> Date: Wed, 21 Jun 2000 14:16:21 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Unofficial you say? ;) Well, I nomine myself official documentor of the list >(and I will have to hide the FF Tactics CD). If any one has problems with >that he can come to Spain an try to change my mind. ;)) I had to be mad to do that! Well, I'm mad but not *that* mad ;-) >Victor Moya -- M.I.K.e Death is life's way of telling you you've been fired. -- R. Geis --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 05:43:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA82872 for dynarec-outgoing; Wed, 21 Jun 2000 05:43:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Shall we get started? From: "M.I.K.e" In-Reply-To: <395078CC.7654F0CE@eurocopter.de> Message-ID: <00036a8faa9c1a8b_mailit@mail.dynarec.com> References: <395078CC.7654F0CE@eurocopter.de> Date: Wed, 21 Jun 2000 14:23:25 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I recommend that we all code in Java so that it's completely platform >compatible... Oh no! >...No, I don't recommend that at all. :) Well done! Otherwise I'd recommend that you write the Ada port ;-) >Mike *may* have a problem with this, though - he's a BeOS user and I'm not >sure if he can write straight C in that. You *should* be able to, >admittedly, but there's a possibility that BeOS forces you to use OO... The BeOS API is designed for C++ but it has the GCC and is quite POSIX compatible (although not fully), so I should only get some problems when I have to display some graphics because I don't know how to do that yet. >I also agree, this is something that both Andrew and myself had agreed on >when we were to write our own core. How about Andy joining as well? >Okay. Once you've done the framework, how are we going to split up the >tasks? And another thing, though hardly important - can anyone think of a >good name for it? And no, DRM68K isn't a good name. ;) Maybe Mach68, but that might be to primitive. Isn't there an N64 emulator called Mach64? That could lead to some confusion. >Neil. -- M.I.K.e With all the fancy scientists in the world, why can't they just once build a nuclear balm? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 05:43:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA82881 for dynarec-outgoing; Wed, 21 Jun 2000 05:43:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Shall we get started? From: "M.I.K.e" In-Reply-To: <39507D3E.6B1F9E7F@eurocopter.de> Message-ID: <00036a8fb7c35f03_mailit@mail.dynarec.com> References: <39507D3E.6B1F9E7F@eurocopter.de> Date: Wed, 21 Jun 2000 14:27:06 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The groupwork can be difficult. Yes I surely don't want to cooperate with all those Brits ;-) >The x86 is certainly not, I'm definitely >fine with this. That's got to be one good thing coming from a Z80 >background - most of the instructions are very, very similar. Well, I still have to learn many things about the x86 but I think I have a relaticely good base to start from. >And, in some >cases, even the hex for the opcodes is the same. The worrying thing is that >I can remember some Z80 instructions in hex - like C3, CD, C9, 90 and so >on. And I know what they do too. Yep, that's scary... I know that for some 68K opcodes: 3F3C0007 = move.w #7, -(sp) 4E41 = trap #1 ... >Neil. -- M.I.K.e When Marriage is Outlawed, Only Outlaws will have Inlaws. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 05:43:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA82888 for dynarec-outgoing; Wed, 21 Jun 2000 05:43:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Shall we get started? From: "M.I.K.e" In-Reply-To: <395083A0.5FF00FBE@eurocopter.de> Message-ID: <00036a8ff057373a_mailit@mail.dynarec.com> References: <200006210836.KAA08269@pons.ac.upc.es> <395083A0.5FF00FBE@eurocopter.de> Date: Wed, 21 Jun 2000 14:42:55 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Okay, but try *saying* it. Something that sounds like "drum-68k" is not a >good name. ;) Don't say anything against drums or I will put your head into my bass drum and play with double bass pedals! ;-) >And D-R-M-68-K is much too long. We need a really good name for it. Well, >okay, we don't actually NEED a good name for it - but it would be nice. :) Well, my favourite is still Mach68 until someone comes up with something better... >I recommend we call it "transmeta". :)) That's registered... >Actually, if we call it "transmatter" then that'd be funny. :) Hehe. NB's recommendation "Transplatter" is even better ;-) >Neil. -- M.I.K.e The Crown is full of it! -- Nate Harris, 1775 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 05:43:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA82895 for dynarec-outgoing; Wed, 21 Jun 2000 05:43:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: my project (was RE: diner wrecker) From: "M.I.K.e" In-Reply-To: <39507D9F.84EF7B8C@eurocopter.de> Message-ID: <00036a8fc1c6add6_mailit@mail.dynarec.com> References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <394F74C1.2EFB47B@eurocopter.de> <00036a80765a557a_mailit@mail.dynarec.com> <39507D9F.84EF7B8C@eurocopter.de> Date: Wed, 21 Jun 2000 14:29:54 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> A German on this British dominated list? That must be a real madman! >I think he probably is, yes. :) And if he wasn't before he surely became mad while on the list ;-) >> How many guesses do I get? ;-) >None. ;p You're so mean! >I don't know the CPU, but difficulties could appear if it does any flag >manipulation. That's a pain to do and keep fast... That's the cool thing about the MIPS: the integer unit doesn't have *any* flags at all! I think the FPU has flags (Alpha is more orthogonal in that case) but you don't have an FPU in the PSX. >Neil. -- M.I.K.e Real Time, adj.: Here and now, as opposed to fake time, which only occurs there and then. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 05:44:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA82903 for dynarec-outgoing; Wed, 21 Jun 2000 05:44:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: my project (was RE: diner wrecker) From: "M.I.K.e" In-Reply-To: <39507E7A.E28240EB@eurocopter.de> Message-ID: <00036a8fe2934fe5_mailit@mail.dynarec.com> References: <000901bfdaad$e5810ae0$3c6c8cd4@daves> <00036a7bf29f366e_mailit@mail.dynarec.com> <394F7A56.2B803801@eurocopter.de> <00036a80a0fa3913_mailit@mail.dynarec.com> <39507E7A.E28240EB@eurocopter.de> Date: Wed, 21 Jun 2000 14:39:04 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You be right, I don't know about this CPU. The lack of flags for integer >stuff sounds cool actually. :) It's the same case for Alpha, which was largely influenced by MIPS. Both have branches with integrated register compare and there are special instructions to compare two registers and set a third one according to the result. SuperH (used in Saturn and Dreamcast) and MCore (embedded processor by Motorola) work similar. The only difference is that they cannot set and test any register but have just one condition register, which is really only one bit and in one case is the lowest bit in the PC. >> Typical reaction for you ;-) >Damn, I hate being predictable. ;-p You are! ;-) >Neil. -- M.I.K.e Is it possible that software is not like anything else, that it is meant to be discarded: that the whole point is to always see it as a soap bubble? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 05:44:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA82911 for dynarec-outgoing; Wed, 21 Jun 2000 05:44:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: my project (was RE: diner wrecker) From: "M.I.K.e" In-Reply-To: <200006210850.KAA28635@pons.ac.upc.es> Message-ID: <00036a8fe798c438_mailit@mail.dynarec.com> References: <200006210850.KAA28635@pons.ac.upc.es> Date: Wed, 21 Jun 2000 14:40:28 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well he can get some help from a Spanish guy to stop the British domination. >;) Thanks for support ;-) We also have one American as well... >Hehehe! With this heavy traffic day the newcomers will know how was the >list when started. Fifty or more mails in a day (and my mail account >went to hell). Indeed! >But it is fun. And by chance we are really on topic. It's great, isn't it? >Victor Moya -- M.I.K.e The new Congressmen say they're going to turn the government around. I hope I don't get run over again. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 05:44:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA82919 for dynarec-outgoing; Wed, 21 Jun 2000 05:44:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: my project (was RE: diner wrecker) From: "M.I.K.e" In-Reply-To: <200006210940.LAA17643@pons.ac.upc.es> Message-ID: <00036a900c22674e_mailit@mail.dynarec.com> References: <200006210940.LAA17643@pons.ac.upc.es> Date: Wed, 21 Jun 2000 14:50:41 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >BTW I have to say something: DOS FOREVER!!!! ;) Since I had broken memory which was only identified by HIMEM.SYS I always have DOS on my PC! Otherwise BeOS rules and I spend about 90% of the time in it. I use Windows for games and emulators and Linux for LaTeX, but everything else is on BeOS now. >Victor Moya -- M.I.K.e Armadillo: To provide weapons to a Spanish pickle --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 06:08:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA82960 for dynarec-outgoing; Wed, 21 Jun 2000 06:08:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: Subject: Re: DYNAREC: Register usage From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Wed, 21 Jun 2000 15:27:53 +0200 Message-ID: <1eckzz9.1ly837bm2gyy6M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id GAA82957 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I have a few suggestions as to how we should allocate x86 registers (to > the 68K equivalents): Why not dynamically allocate registers ? When I was also thinking of a m68k dynarec, I once coded a simple register allocator with sort of "history" in order to know which ones are likely to be spilled. There is also sort of register locking/unlocking mechanism if some host instructions require specific registers (e.g. EAX/EDX in a MUL for x86 architectures ?) You may find the code at: File: regalloc.tar.gz I haven't really mesured its performance [*], but some improvements can be made: - Currently, I tagged a host register as either a Data Register or as an Address Register. I think we can (I should) get rid of this. - Some silly tests can be removed as they are unlikely to occur, or they would never happen... [*] Roughly, this was only ~1.6 million allocs/sec on a K6-2/300 running Linux kernel 2.2.5 :-( -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 06:11:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA82974 for dynarec-outgoing; Wed, 21 Jun 2000 06:11:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <1eckzz9.1ly837bm2gyy6M@[192.168.0.2]> Subject: Re: DYNAREC: Register usage From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Wed, 21 Jun 2000 15:30:23 +0200 Message-ID: <1ecl1p4.8mffk71m8f0zkM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id GAA82971 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > You may find the code at: > > File: regalloc.tar.gz Sorry, that's . -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 06:12:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA82984 for dynarec-outgoing; Wed, 21 Jun 2000 06:12:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3950BFA6.A5005828@eurocopter.de> Date: Wed, 21 Jun 2000 15:14:14 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? (fwd) References: <200006210652.IAA13677@pons.ac.upc.es> <00036a8f9157d1df_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >(and I will have to hide the FF Tactics CD). If any one has problems with > >that he can come to Spain an try to change my mind. ;)) > > I had to be mad to do that! Well, I'm mad but not *that* mad ;-) Mike has a point. You'd have to be mad to go to Spain. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 06:17:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA82999 for dynarec-outgoing; Wed, 21 Jun 2000 06:17:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3950C077.14A7A59E@eurocopter.de> Date: Wed, 21 Jun 2000 15:17:43 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? References: <395078CC.7654F0CE@eurocopter.de> <00036a8faa9c1a8b_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >...No, I don't recommend that at all. :) > > Well done! Otherwise I'd recommend that you write the Ada port ;-) I actually wrote "Ada" originally until I re-read it and realised that just wasn't funny. At all. :) > >Mike *may* have a problem with this, though - he's a BeOS user and I'm not > >sure if he can write straight C in that. You *should* be able to, > >admittedly, but there's a possibility that BeOS forces you to use OO... > > The BeOS API is designed for C++ but it has the GCC and is quite POSIX > compatible (although not fully), so I should only get some problems when I > have to display some graphics because I don't know how to do that yet. Use OpenGL! :) I have no idea - but OpenGL is really quite a good option when I think about it... > >I also agree, this is something that both Andrew and myself had agreed on > >when we were to write our own core. > > How about Andy joining as well? Andy? What say you, Mr. Andy sir? :) > >Okay. Once you've done the framework, how are we going to split up the > >tasks? And another thing, though hardly important - can anyone think of a > >good name for it? And no, DRM68K isn't a good name. ;) > > Maybe Mach68, but that might be to primitive. Isn't there an N64 emulator > called Mach64? That could lead to some confusion. No idea. Probably. There's so many of them now! I also like that. Hmm, maybe we should have a vote? Yeah - let's make use of the Dynarec server! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 06:27:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA83019 for dynarec-outgoing; Wed, 21 Jun 2000 06:27:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3950C2EE.294ECEFF@eurocopter.de> Date: Wed, 21 Jun 2000 15:28:14 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? References: <200006211006.MAA01496@pons.ac.upc.es> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Spanish is really easy to spell because different from other languages as > English or German you spell as you read/write and you read/write as you > spell. Each letter it's a different sound (and the most cases, there are > only a few exceptions) and ever is spelled in the same way. For example > this means we have only five vowels: a, e, i, o, u. And we don't have to > bother about how it will be spelled in this word on in that other as in > english. This makes, or it makes for me, that learn english could be > difficult to Spanish. The problem for learning Spanish is that the > sound are different (mainly vowels, but also other letters) from english. > It also could be difficult all verb issue, plural and singular, etc. Porcierto sabes que pueola hablar un espanòl perfecto. Maybe. :) > As I can't use a fonetic alphabet in this mail I can't tell you how is > really spelled. I know what you mean (I'll explain when you've replied to this e-mail!). Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 06:30:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA83033 for dynarec-outgoing; Wed, 21 Jun 2000 06:30:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3950C3DF.CEA730A1@eurocopter.de> Date: Wed, 21 Jun 2000 15:32:15 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? References: <39507D3E.6B1F9E7F@eurocopter.de> <00036a8fb7c35f03_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >The groupwork can be difficult. > > Yes I surely don't want to cooperate with all those Brits ;-) Yeag. Being German, you can't co-operate well with other countries can you? ;) Ooh, wait - I meant French. You're okay. ;) > Well, I still have to learn many things about the x86 but I think I have a > relaticely good base to start from. I've also got a good base to start from. About 3 years of x86 asm programming. :) > >And, in some > >cases, even the hex for the opcodes is the same. The worrying thing is that > >I can remember some Z80 instructions in hex - like C3, CD, C9, 90 and so > >on. And I know what they do too. Yep, that's scary... > > I know that for some 68K opcodes: > 3F3C0007 = move.w #7, -(sp) > 4E41 = trap #1 > ... That beats me. Though I'll probably know some more when we've finished this project! Neil. PS Will we build a debugger into the project as well? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 06:34:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA83045 for dynarec-outgoing; Wed, 21 Jun 2000 06:34:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Register usage From: "M.I.K.e" In-Reply-To: <1eckzz9.1ly837bm2gyy6M@[192.168.0.2]> Message-ID: <00036a90c64185ca_mailit@mail.dynarec.com> References: <1eckzz9.1ly837bm2gyy6M@[192.168.0.2]> Date: Wed, 21 Jun 2000 15:42:44 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Hi, Are you new to the list or have you been lurking for some time? >Why not dynamically allocate registers ? Well, I guess that answers the question above since I don't keep my favour for dynamic register allocation a secret. But NB (Neil Bradley) prefers to have task specific allocation which is static of course. Both apraoches have their advantages and since he is the project leader I'll accept his decision to use static allocation. >When I was also thinking of a >m68k dynarec, I once coded a simple register allocator with sort of >"history" in order to know which ones are likely to be spilled. Isn't that a bit too slow? The algorithm I once designed was mainly inspired by the "second chance" page replacement algorithm, but I never tested it. Especially for x86 it's also a good idea to only cache destination registers as Jules does it in ARMphetamine, because those registers will be reused soon for certain. >There is >also sort of register locking/unlocking mechanism if some host >instructions require specific registers (e.g. EAX/EDX in a MUL for x86 >architectures ?) I thought there wan't such a limitation since the 386... What can be a problem is the use of registers inaddressing modes. >You may find the code at: > Does that mean that I might get a faster Basilisk II soon? ;-) >- Currently, I tagged a host register as either a Data Register or as an >Address Register. I think we can (I should) get rid of this. I'm not sure if x86 could have problems with some registers combinations in addressing modes... >- Some silly tests can be removed as they are unlikely to occur, or they >would never happen... What kind of tests? >Gwenolé Beauchesne -- M.I.K.e What does it mean if there is no fortune for you? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 06:35:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA83061 for dynarec-outgoing; Wed, 21 Jun 2000 06:35:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3950C4D5.FEAB86B@eurocopter.de> Date: Wed, 21 Jun 2000 15:36:21 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Register usage References: <1eckzz9.1ly837bm2gyy6M@[192.168.0.2]> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, A new person to the list! It's always nice to have someone new - welcome aboard! :) BTW, is your name Spanish? It just seems that way to me - I've never heard of that name before! > Why not dynamically allocate registers ? When I was also thinking of a > m68k dynarec, I once coded a simple register allocator with sort of > "history" in order to know which ones are likely to be spilled. There is > also sort of register locking/unlocking mechanism if some host > instructions require specific registers (e.g. EAX/EDX in a MUL for x86 > architectures ?) Agreed - that was what I was thinking about before when I mentioned about PUSHing and POPing - some instructions use registers. To this end, it could be worth using AX and DX as generic registers - and having something else in SI. As far as dynamically allocating, this is something we need to research. For the purposes of the one game, however, we know which registers are used the most - so we can just allocate those. Neil --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 06:53:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA83088 for dynarec-outgoing; Wed, 21 Jun 2000 06:53:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Register usage From: "M.I.K.e" In-Reply-To: <3950C4D5.FEAB86B@eurocopter.de> Message-ID: <00036a9106bc5efc_mailit@mail.dynarec.com> References: <1eckzz9.1ly837bm2gyy6M@[192.168.0.2]> <3950C4D5.FEAB86B@eurocopter.de> Date: Wed, 21 Jun 2000 16:00:45 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >BTW, is your name Spanish? It just seems that way to me - I've never heard >of that name before! I think he's French... >Neil -- M.I.K.e "An anthropologist at Tulane has just come back from a field trip to New Guinea with reports of a tribe so primitive that they have Tide but not new Tide with lemon-fresh Borax." -- David Letterman --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 06:53:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA83096 for dynarec-outgoing; Wed, 21 Jun 2000 06:53:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Shall we get started? (fwd) From: "M.I.K.e" In-Reply-To: <3950BFA6.A5005828@eurocopter.de> Message-ID: <00036a90df892347_mailit@mail.dynarec.com> References: <200006210652.IAA13677@pons.ac.upc.es> <00036a8f9157d1df_mailit@mail.dynarec.com> <3950BFA6.A5005828@eurocopter.de> Date: Wed, 21 Jun 2000 15:49:48 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Mike has a point. You'd have to be mad to go to Spain. ;) I meant it would be mad trying to change his mind because otherwise one of us had to do the work! But I'm sure you got the idea ;-) >Neil. -- M.I.K.e There cannot be a crisis next week. My schedule is already full. -- Henry Kissinger --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 06:53:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA83104 for dynarec-outgoing; Wed, 21 Jun 2000 06:53:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Shall we get started? From: "M.I.K.e" In-Reply-To: <3950C077.14A7A59E@eurocopter.de> Message-ID: <00036a90f6d26915_mailit@mail.dynarec.com> References: <395078CC.7654F0CE@eurocopter.de> <00036a8faa9c1a8b_mailit@mail.dynarec.com> <3950C077.14A7A59E@eurocopter.de> Date: Wed, 21 Jun 2000 15:56:18 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I actually wrote "Ada" originally until I re-read it and realised that just >wasn't funny. At all. :) One of my cousins has the name Ada ;-) >Use OpenGL! :) >I have no idea - but OpenGL is really quite a good option when I think >about it... OpenGL for 2D graphics? BTW, the new OpenGL implementation for BeOS should kick ass! I think in the API I found two classes for game programming BWindowScreen and BDirectWindw. The first should plot directly to the screen. The latter is more compilcated since it runs in a window, but you only have to change one class variable to switch to full screen IIRC. BTW, how about using SDL? It's available for Windows, Linux, BeOS, ... >Andy? What say you, Mr. Andy sir? :) Is he still alive? >No idea. Probably. There's so many of them now! I also like that. Hmm, >maybe we should have a vote? Yeah - let's make use of the Dynarec server! >:) Using the dynarec server for something useful? How dare you! Well, I nominate the name Mach68. >Neil. -- M.I.K.e Q: How did you get into artificial intelligence? A: Seemed logical -- I didn't have any real intelligence. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 06:53:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA83112 for dynarec-outgoing; Wed, 21 Jun 2000 06:53:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Shall we get started? From: "M.I.K.e" In-Reply-To: <3950C3DF.CEA730A1@eurocopter.de> Message-ID: <00036a910374ddde_mailit@mail.dynarec.com> References: <39507D3E.6B1F9E7F@eurocopter.de> <00036a8fb7c35f03_mailit@mail.dynarec.com> <3950C3DF.CEA730A1@eurocopter.de> Date: Wed, 21 Jun 2000 15:59:50 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yeag. Being German, you can't co-operate well with other countries can you? >;) Indeed, and I also hate all foreign food, especially Italian food ;-) >I've also got a good base to start from. About 3 years of x86 asm >programming. :) How does that compare to my 3 minutes? ;-) >That beats me. Though I'll probably know some more when we've finished this >project! I know even a bit more... >Neil. >PS Will we build a debugger into the project as well? I think Neil mentioned that he has a debugger he is allowed to use, or was it a disassembler? -- M.I.K.e Reality is a cop-out for people who can't handle drugs. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 07:10:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA83146 for dynarec-outgoing; Wed, 21 Jun 2000 07:10:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Starscream & SDL From: "M.I.K.e" Message-ID: <00036a912cbb136b_mailit@mail.dynarec.com> Date: Wed, 21 Jun 2000 16:11:23 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil already mentioned that his DMZ80 is available here: http://www.synthcom.com/~neil/dynarec.zip You'll find the official Starscream page here: http://www4.ncsu.edu/~nscorlet/star/ If we want to use SDL for compatability everything about it can be found here: http://www.devolution.com/~slouken/SDL/ -- M.I.K.e When a fellow says, "It ain't the money but the principle of the thing," it's the money. -- Kim Hubbard --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 07:12:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA83158 for dynarec-outgoing; Wed, 21 Jun 2000 07:12:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3950CDD6.AB858D33@eurocopter.de> Date: Wed, 21 Jun 2000 16:14:46 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? References: <395078CC.7654F0CE@eurocopter.de> <00036a8faa9c1a8b_mailit@mail.dynarec.com> <3950C077.14A7A59E@eurocopter.de> <00036a90f6d26915_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > One of my cousins has the name Ada ;-) Give her my sincere apologies. ;)) > >Use OpenGL! :) > >I have no idea - but OpenGL is really quite a good option when I think > >about it... > > OpenGL for 2D graphics? Yep. Why not? OpenGL isn't just for 3D you know (and if you didn't know, you do now)! > BTW, the new OpenGL implementation for BeOS should kick ass! If it uses hardware acceleration then yes. :) > I think in the API I found two classes for game programming BWindowScreen and > BDirectWindw. The first should plot directly to the screen. The latter is > more compilcated since it runs in a window, but you only have to change one > class variable to switch to full screen IIRC. Okay, but that means you *have* to write the graphical code yourself. > BTW, how about using SDL? It's available for Windows, Linux, BeOS, ... SDL is a wrapper. Guess what it uses? Yep - OpenGL! ;) > >Andy? What say you, Mr. Andy sir? :) > > Is he still alive? I think it's around now where those women cycle around naked on bikes - that'd explain why he's disappeared. And no, I'm not joking about the naked women on bikes. :) > >No idea. Probably. There's so many of them now! I also like that. Hmm, > >maybe we should have a vote? Yeah - let's make use of the Dynarec server! > >:) > > Using the dynarec server for something useful? How dare you! > Well, I nominate the name Mach68. Okay, I'll do something later on... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 07:28:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA83185 for dynarec-outgoing; Wed, 21 Jun 2000 07:28:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3950D183.ED829377@eurocopter.de> Date: Wed, 21 Jun 2000 16:30:27 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Register usage References: <1eckzz9.1ly837bm2gyy6M@[192.168.0.2]> <3950C4D5.FEAB86B@eurocopter.de> <00036a9106bc5efc_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >BTW, is your name Spanish? It just seems that way to me - I've never heard > >of that name before! > > I think he's French... If so then my comment about France can't have gone down too well! :o Anyway, in case you ARE French, let me just say that I live with 2 French guys - and so you basically *have* to insult them. It's required. ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 07:30:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA83199 for dynarec-outgoing; Wed, 21 Jun 2000 07:30:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Shall we get started? From: "M.I.K.e" In-Reply-To: <3950CDD6.AB858D33@eurocopter.de> Message-ID: <00036a918b77a797_mailit@mail.dynarec.com> References: <395078CC.7654F0CE@eurocopter.de> <00036a8faa9c1a8b_mailit@mail.dynarec.com> <3950C077.14A7A59E@eurocopter.de> <00036a90f6d26915_mailit@mail.dynarec.com> <3950CDD6.AB858D33@eurocopter.de> Date: Wed, 21 Jun 2000 16:37:52 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> One of my cousins has the name Ada ;-) >Give her my sincere apologies. ;)) I think she even lices in Munich now so you could do that directly ;-) >> OpenGL for 2D graphics? >Yep. Why not? OpenGL isn't just for 3D you know (and if you didn't know, >you do now)! I'm really not into graphics standards... >If it uses hardware acceleration then yes. :) Yep, the test might be still on BeNews... >Okay, but that means you *have* to write the graphical code yourself. Yeah, don't mention it! >I think it's around now where those women cycle around naked on bikes - >that'd explain why he's disappeared. >And no, I'm not joking about the naked women on bikes. :) He's in Munich too? Or is there something else like the English Garden? >Okay, I'll do something later on... Do you have the rights to do CGI? >Neil. -- M.I.K.e Blessed are the young for they shall inherit the national debt. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 07:50:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA83230 for dynarec-outgoing; Wed, 21 Jun 2000 07:50:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Shall we get started? From: "M.I.K.e" In-Reply-To: <3950CDD6.AB858D33@eurocopter.de> Message-ID: <00036a91d1a3c506_mailit@mail.dynarec.com> References: <395078CC.7654F0CE@eurocopter.de> <00036a8faa9c1a8b_mailit@mail.dynarec.com> <3950C077.14A7A59E@eurocopter.de> <00036a90f6d26915_mailit@mail.dynarec.com> <3950CDD6.AB858D33@eurocopter.de> Date: Wed, 21 Jun 2000 16:57:30 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >SDL is a wrapper. Guess what it uses? Yep - OpenGL! ;) Oops, I stripped that line in the original reply, maybe I was distracted by the naked women ;-) You might be right that SDL is something like a OpenGL wrapper. I just don't know enough about both libs. But the good thing is that SDL also includes sound which should make things much easier if Neil really wants to add emulation of the 3 Pokeys later. >Neil. -- M.I.K.e When a Banker jumps out of a window, jump after him -- that's where the money is. -- Robespierre --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 08:02:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA83256 for dynarec-outgoing; Wed, 21 Jun 2000 08:02:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3950D962.F8793B88@eurocopter.de> Date: Wed, 21 Jun 2000 17:04:02 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? References: <395078CC.7654F0CE@eurocopter.de> <00036a8faa9c1a8b_mailit@mail.dynarec.com> <3950C077.14A7A59E@eurocopter.de> <00036a90f6d26915_mailit@mail.dynarec.com> <3950CDD6.AB858D33@eurocopter.de> <00036a918b77a797_mailit@mail.dynarec.com> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Give her my sincere apologies. ;)) > > I think she even lices in Munich now so you could do that directly ;-) Heh... Du wieß Mike? Ja? Ah, okay. So, Ada, bekümmert für diene name... :) > >Yep. Why not? OpenGL isn't just for 3D you know (and if you didn't know, > >you do now)! > > I'm really not into graphics standards... You'd never guess that I was though. :) > >If it uses hardware acceleration then yes. :) > > Yep, the test might be still on BeNews... Ah, the site I check every day for news. ;p > >Okay, but that means you *have* to write the graphical code yourself. > > Yeah, don't mention it! So using OpenGL or SDL (which, according to my memory, should also include sound support so this could be the way to go!) could be a good thing then... > >I think it's around now where those women cycle around naked on bikes - > >that'd explain why he's disappeared. > >And no, I'm not joking about the naked women on bikes. :) > > He's in Munich too? Or is there something else like the English Garden? Sorry? Women ride bikes naked in Munich or in the English Garden? WHY DIDN'T YOU TELL ME THIS BEFORE! Okay, I won't be working on the dynarec this weekend. I think I'm going to be relaxing in the English Garden this weekend. :)) And the best thing is... The English Garten is right by the University. Hmm... Young female women... Hey, sorry, I must stop this line of thought else I'll go home now. Hmm... That's an option. :)) > >Okay, I'll do something later on... > > Do you have the rights to do CGI? I think so. But there's one way to find out - to try it! I'll do my CGI in C or C++ though, can't be bothered with Perl. I just hope GCC or EGCS is installed on the server! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 08:05:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA83271 for dynarec-outgoing; Wed, 21 Jun 2000 08:05:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3950D9F1.BF4C7B43@eurocopter.de> Date: Wed, 21 Jun 2000 17:06:25 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? References: <395078CC.7654F0CE@eurocopter.de> <00036a8faa9c1a8b_mailit@mail.dynarec.com> <3950C077.14A7A59E@eurocopter.de> <00036a90f6d26915_mailit@mail.dynarec.com> <3950CDD6.AB858D33@eurocopter.de> <00036a91d1a3c506_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >SDL is a wrapper. Guess what it uses? Yep - OpenGL! ;) > > Oops, I stripped that line in the original reply, maybe I was distracted by > the naked women ;-) As I am now. Mmmmmmmmmm... No, must stop dribbling on the keyboard. Hey, fancy a big dynarec party in Munich? We can hold it in the English Garden - which certainly has some nice scenery for us to look at as we discuss dynamic recompilation. :)) > You might be right that SDL is something like a OpenGL wrapper. I just don't > know enough about both libs. But the good thing is that SDL also includes > sound which should make things much easier if Neil really wants to add > emulation of the 3 Pokeys later. Ah, my memory was correct! Yes, I thought SDL supported sound. So yes - SDL could well be the way forward. I think I've downloaded it as well - I'll have to look at one of my download CDs. Yes, I have download CDs. 13 if I'm not mistaken. Yes, I've spent too much time downloading stuff. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 08:26:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA83300 for dynarec-outgoing; Wed, 21 Jun 2000 08:26:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <011601bfdb96$4b9e34e0$b60d8cd4@daves> From: "David Sharp" To: Subject: DYNAREC: various thankyous and questions Date: Wed, 21 Jun 2000 16:34:34 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Just got back from 2 exams to find my inbox was in a worse state than my formal methods. :o) Thanks for the MIPS docs and the Z80 in C emulation Mike and NB. As for Unix/Linux/FreeBSD I get the impression I won't be able to get ArcEm running too easily in Windows so might have to try them but if I do FPSE that won't matter anyway. Other than that I'm just looking for a nice stable development environment that I can use, possibly BeOS. I have MSVC++ v5 but am not sure as to whether there's anything much better out there and I desperately need a nicer email client (Outlook express sucks). I won't get involved with the 68k dynarec at this stage as I have more than enough on my plate with a degree/gb emu/3rd year project/job/girlfriend (in no particular order!) though I may try porting it to ARM at a later stage when you've got it up and running. Can I suggest another transformer name (a la Starscream)? As for register allocation, are you sure you want to statically allocate registers, yep that's fine for food fight, but say you want to adjust the dynarec later to go into say DGen (which would rock) it might be better to write it more generically. On the other hand static Vs dynamic might have a negligible difference in which case who cares (will think about this more when I come to my project) any opinions? One last exam on Friday.... now all I have to do is learn the ins and outs of data comms and networking in around 36 hours, from information theory to OSI model and TCP/IP to DNS to routing, kerberos, huffman, CRC, how JPEG works (I can hardly say discrete cosine transform let alone understand it) and everything inbetween........... Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 08:30:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA83315 for dynarec-outgoing; Wed, 21 Jun 2000 08:30:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <011901bfdb96$e7067280$b60d8cd4@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: Dung spitting! Date: Wed, 21 Jun 2000 16:38:55 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I would've expected this from France, but from the UK? Man, you guys are > sickos. ;-) Only from CNN! ;o) Cheers Dave PS: what no new messages? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 08:58:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA83352 for dynarec-outgoing; Wed, 21 Jun 2000 08:58:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <00036a90c64185ca_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Register usage From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Wed, 21 Jun 2000 18:17:21 +0200 Message-ID: <1ecl640.15xt8xq11ogmaxM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id IAA83349 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Are you new to the list or have you been lurking for some time? I have been lurking for nearly two months now. And yes, I am French. ;-) > >When I was also thinking of a > >m68k dynarec, I once coded a simple register allocator with sort of > >"history" in order to know which ones are likely to be spilled. > > Isn't that a bit too slow? Unfortunately, this seems to be the case, indeed. I re-benchmarked the thing by activating the compiler optimizations: 3.2 Maps. (allocations per second). The way I "benchmark" is also questionable, though. see test_registers.cpp in src/ directory. > The algorithm I once designed was mainly inspired by the "second chance" page > replacement algorithm, but I never tested it. At that time, I was not aware of that algorithm. I only saw it this last semester. Actually, the algorithm I implemented is a LRU as a linked list of host registers allocated. > Especially for x86 it's also a good idea to only cache destination registers > as Jules does it in ARMphetamine, because those registers will be reused soon > for certain. Yes, this sounds good to me as well. > Does that mean that I might get a faster Basilisk II soon? ;-) I still plan a dynarec core for BasiliskII but for starters, this would only be a dynarec to TCI (threaded code instructions), see. Syn68k. I am currently working on the disassembler and hence the decoder (file: gencpu-XXX.tar.gz). BTW, I also have a testsuite generator for m68k disassemblers. Next, when everything looks good, I will start to code the instruction handlers. I intend to write those in a C-like syntax and then generate several experimental cores from the abstract syntax tree, namely Direct Threaded Code and Token Threaded Code for compilers that don't support GCC's "Labels as Values" extension. Finally, maybe I could tune the code generator to generate native code generators instead of C++ code. BTW, I would have liked a PPC dynarec. Bill Huey (from vMac) is working on it but I don't know his progress though. > >- Currently, I tagged a host register as either a Data Register or as an > >Address Register. I think we can (I should) get rid of this. > > I'm not sure if x86 could have problems with some registers combinations in > addressing modes... Well, I did so because I got an odd idea: a m68k backend for the DR_m68k. Don't ask me why as this occured months ago ;-) > >- Some silly tests can be removed as they are unlikely to occur, or they > >would never happen... > > What kind of tests? For example, when locking a host register, I first check that this register is used, i.e. connected to a m68k register. This should not happen since, as I intended to be the only user of the allocator, I would have known to first allocate the register. Another example: when freeing a host register, I check that it was really used. i.e. is the host register really linked to a m68k register and that m68k register linked to the host register ? In fact: I maintain a table of m68k registers plus some "virtual" ones. Each register has a possible link to a host register. On the other hand, I have a table of host registers, which can have a link to the m68k register it caches. The checks I was telling you about are checks for internal structures coherency: has the allocator got mad with all those "inter-"links ? -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 09:05:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA83376 for dynarec-outgoing; Wed, 21 Jun 2000 09:05:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Shall we get started? From: "M.I.K.e" In-Reply-To: <3950D9F1.BF4C7B43@eurocopter.de> Message-ID: <00036a92e0a921bb_mailit@mail.dynarec.com> References: <395078CC.7654F0CE@eurocopter.de> <00036a8faa9c1a8b_mailit@mail.dynarec.com> <3950C077.14A7A59E@eurocopter.de> <00036a90f6d26915_mailit@mail.dynarec.com> <3950CDD6.AB858D33@eurocopter.de> <00036a91d1a3c506_mailit@mail.dynarec.com> <3950D9F1.BF4C7B43@eurocopter.de> Date: Wed, 21 Jun 2000 18:13:17 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Hey, fancy a big dynarec party in Munich? We can hold it in the English >Garden - which certainly has some nice scenery for us to look at as we >discuss dynamic recompilation. :)) Hehe ;-) >Ah, my memory was correct! Yes, I thought SDL supported sound. So yes - SDL >could well be the way forward. I think I've downloaded it as well - I'll >have to look at one of my download CDs. Yes, I have download CDs. 13 if I'm >not mistaken. Yes, I've spent too much time downloading stuff. :)) I think the newest version is 1.1.3 and now is even available for FreeBSD and IRIX. The other platfors are Win32, Linux, BeOS, Mac, Solaris. I think that would be optimal portability of graphics and sound. But we'll have to wait what our project leader has to say about it. >Neil. -- M.I.K.e The problem with people who have no vices is that generally you can be pretty sure they're going to have some pretty annoying virtues. -- Elizabeth Taylor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 09:12:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA83393 for dynarec-outgoing; Wed, 21 Jun 2000 09:12:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <013a01bfdb9c$cb2d7bc0$b60d8cd4@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: my project (was RE: diner wrecker) Date: Wed, 21 Jun 2000 17:20:52 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Use the -c option to emit a C core. (This is my core, BTW). The C section > of it is fully implemented but not fully debugged. It's healthy enough to > run quite a few games. BTW, is the C version of mZ80 significantly faster than Marat's core? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 09:16:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA83407 for dynarec-outgoing; Wed, 21 Jun 2000 09:16:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3950EAEF.D6EC722@eurocopter.de> Date: Wed, 21 Jun 2000 18:18:55 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Register usage References: <1ecl640.15xt8xq11ogmaxM@[192.168.0.2]> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I have been lurking for nearly two months now. And yes, I am French. ;-) Hey, Neil, we have to be careful with our French jokes! ;)) > > Especially for x86 it's also a good idea to only cache destination registers > > as Jules does it in ARMphetamine, because those registers will be reused soon > > for certain. > > Yes, this sounds good to me as well. You'd have to be more explicit though. An instruction may change two registers - and you might allocate both of those but only one register gets used. And if the one that you've just deallocated is the next instruction... Still, it may be a price worth paying. > Finally, maybe I could tune the code generator to generate native code > generators instead of C++ code. This is where your main speed increase is going to come in. BTW, I did download Basilisk II the other day (2 days ago or so). I haven't tried it yet but I will. Just so I know what speed increases you've got from dynamic recompilation! ;) Hmm, Macintoshes. My introduction to the world of CD-ROMs (my first CD-ROM was for a Macintosh) which was cool. I still remember Bolo fondly - my first real time network game. Nothing else was particularly memorable for me though. ClarisWorks was cool though... ...And HyperCard - that was fun! And so was pressing the left shift so that all the protection that had been installed on the Macs got disabled. And pressing that strange triangular marked button at the top of the LCII keyboards that played scary music when you pressed it on bootup... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 09:22:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA83422 for dynarec-outgoing; Wed, 21 Jun 2000 09:22:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3950EC22.F69961F3@eurocopter.de> Date: Wed, 21 Jun 2000 18:24:02 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: various thankyous and questions References: <011601bfdb96$4b9e34e0$b60d8cd4@daves> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I won't get involved with the 68k dynarec at this stage as I have more than > enough on my plate with a degree/gb emu/3rd year project/job/girlfriend (in > no particular order!) though I may try porting it to ARM at a later stage > when you've got it up and running. Can I suggest another transformer name (a > la Starscream)? Okay, we'll let you off for not helping. ;) And as for the name - something like "Optimus"? > As for register allocation, are you sure you want to statically allocate > registers, yep that's fine for food fight, but say you want to adjust the > dynarec later to go into say DGen (which would rock) it might be better to > write it more generically. On the other hand static Vs dynamic might have a > negligible difference in which case who cares (will think about this more > when I come to my project) any opinions? Okay, we all seem to share this opinion. :) > One last exam on Friday.... now all I have to do is learn the ins and outs > of data comms and networking in around 36 hours, from information theory to > OSI model and TCP/IP to DNS to routing, kerberos, huffman, CRC, how JPEG > works (I can hardly say discrete cosine transform let alone understand it) > and everything inbetween........... That's nasty - but something I'm good at. My last project WAS an entire Internet Client Suite - written from the ground up. If you need a hand then give me a shout! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 09:37:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA83448 for dynarec-outgoing; Wed, 21 Jun 2000 09:37:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 09:43:53 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Register usage In-Reply-To: <200006210936.LAA22665@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > think we'd gain quite a bit by having them in x86 registers. Thoughts? > > Does this jive with the rest of your experiences? > If you say that it must be true. I'm just saying it because that's what I've witnessed when stumbling through 68K code. Throughout all kinds of games. > I think if we can't get into trouble when translating somekind of heavy > instructions. With only two general purpose registers we will have to > make some register movement to save registers (or push/pop them). Or xchg instructions: xchg edx, [a3] ... do stuff here xchg edx, [a3] As an example. > Another issue I was thinking about 68K. It's little endian (or it is > big endian, argh!! my memory again!). Well anyway. We will load the > data in memory byte swapped or we will byte swap the byte reads and writes. right - that was my thinking as well. Load the even/odd data as odd/even and just xor the address when we do byte reads/writes. Fortunately we just do a big assed rotate on a DWORD read/write. > we will have to bit complement the last address bit but in a dynarec we > haven't, just translate the propper memory address (if direct addressing > of course). Right. > > entered or exited DRm68000Exec() by way of running out of things to > > execute or when we actually call a memory handler. > It's a good decision as the x86 flags and 68K flags are pretty similar. I think it's good because there's only 5 total "operational" flags in the 68K anyway, and we can find homes for each in the x86's. > I have to take a look also to the 68k specifications. I think it has > a special carry bit ... or perhaps not. We will see. If my memory wasn't > so bad. It has an "x" bit, though I'm not yet sure of its significance. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 09:40:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA83462 for dynarec-outgoing; Wed, 21 Jun 2000 09:40:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 09:46:30 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Register usage In-Reply-To: <00036a8e44d8e96b_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well, you know that I'd prefer dynamic register allocation for the 68K but > since we deal with one special game that will be ok with me. Just as a > reminder: programming books for the Atari ST recommend not to use D0-D2 and > A0-A2 in applications because those are heavily used by TOS. What we should do I think is have some way to program up what the 4 "use in x86 register" 68K registers are. But throughout the code, we can't have a mix, otherwise we need some sort of history kept on every single location and what registers are in what. Yuck! > I almost wanted to ask if we should reserve one register for the PC because > of often used PC relative addressing, but then I realised that this not > likely to be the case for a ROM. We don't need it, actually. When we recompile the instruction, we already know what the PC is! We can do any relative addressing via an instruction that takes the static PC and subtracts (or adds) to it, looks the target address up in the transmap and jumps to it. Pretty simple, actually. > >We'd store the flags in native x86 format and convert them whenever we > >entered or exited DRm68000Exec() by way of running out of things to > >execute or when we actually call a memory handler. > Sounds like a good idea. I guess the biggest problem will be the extended > flag. We can stick that in the AUX flag in the x86. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 09:41:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA83472 for dynarec-outgoing; Wed, 21 Jun 2000 09:41:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 09:47:08 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Welcome to Food Fight In-Reply-To: <00036a8e1ebd2d97_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >(fits nicely in a full palette). > >It uses 3 Atari Pokey chips for sound. > I found that out this morning by launching my copy of MAME32 (yuk!), but > strangely enough it didn't get past the self test due to an NVRAM error... Hit ctrl to get past it. That's the "throw" button on the real game, and yup - the real game does it, too. > >Notice that all we'll have to recompile is the program ROM area, so we can > >have a transmap for that region that's only 32K entries. ;-) > Nice ;-) Of course, we'll make the transmap adjust itself to how large the ROMmed region is. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 09:43:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA83482 for dynarec-outgoing; Wed, 21 Jun 2000 09:43:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 09:49:27 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Welcome to Food Fight In-Reply-To: <3950B2DC.2D853584@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >Notice that all we'll have to recompile is the program ROM area, so we can > > >have a transmap for that region that's only 32K entries. ;-) > > Nice ;-) > That's true. So okay, we'll optimise the CPU core for this game. But don't > we want to write a more general one to run anything at high speeds without > former knowledge of what it is going to execute? Of course the code will adjust. If you look at Starscream's API, you'll see there's an "execute" structure that lists all possible ranges of addresses where things can execute from. The transmap will have to be created based on this, and will be as big as (size/2)*4 bytes. > Or, alternatively, are we going to write the generator so that you can make > the generated code be more specifically optimised. That could be a cool > option (if you see what I mean)... That's the idea, yes. We'll have some way of passing in "hints" to the recopmiler to get it to generate optimal code. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 10:05:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA83525 for dynarec-outgoing; Wed, 21 Jun 2000 10:05:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 10:11:09 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Register usage In-Reply-To: <1eckzz9.1ly837bm2gyy6M@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I have a few suggestions as to how we should allocate x86 registers (to > > the 68K equivalents): > Why not dynamically allocate registers ? When I was also thinking of a > m68k dynarec, I once coded a simple register allocator with sort of > "history" in order to know which ones are likely to be spilled. Think of it this way - You need to, at any point, know what 68K registers are allocated in the x86 registers. And you need to be able to jump to any address in the execution code. You'll very quickly find that doing this sort of thing is impossible unless you want to incur massive overhead. It's faster to just do it with statically allocated registers. > There is > also sort of register locking/unlocking mechanism if some host > instructions require specific registers (e.g. EAX/EDX in a MUL for x86 > architectures ?) Um... not that I'm aware of. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 10:08:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA83536 for dynarec-outgoing; Wed, 21 Jun 2000 10:08:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 10:14:32 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Register usage In-Reply-To: <00036a90c64185ca_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Why not dynamically allocate registers ? > Well, I guess that answers the question above since I don't keep my favour > for dynamic register allocation a secret. But NB (Neil Bradley) prefers to > have task specific allocation which is static of course. Both apraoches have > their advantages and since he is the project leader I'll accept his decision > to use static allocation. In the case of the x86 where you don't have dick for registers, you'd wind up swapping so much that it'd wind up being slower. I've actually mapped it out, and the real problem comes when another piece of code tries to jump in to the middle of the block of code that has dynamic register allocation. It's the equivalent of using 64MB of RAM when you've only got 16 with no memory unit support to help you out. Lots of thrashing. > Especially for x86 it's also a good idea to only cache destination registers > as Jules does it in ARMphetamine, because those registers will be reused soon > for certain. In the case of another CPU with lots of registers, one could just put all 68K registers in the host processor's registers. So register allocation really isn't necessary - ever - when talking about dynarec. > >- Currently, I tagged a host register as either a Data Register or as an > >Address Register. I think we can (I should) get rid of this. > I'm not sure if x86 could have problems with some registers combinations in > addressing modes... I'm not aware of any. You can use any register for anything (except IN/OUT/STOSB/LODSB). -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 10:10:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA83550 for dynarec-outgoing; Wed, 21 Jun 2000 10:10:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 10:16:55 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Register usage In-Reply-To: <3950C4D5.FEAB86B@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > PUSHing and POPing - some instructions use registers. To this end, it could > be worth using AX and DX as generic registers - and having something else > in SI. We'll still have to do 8, 16, and 32 bit accesses to these registers which would indicate we should have them in the EAX/AH/AL/AX styles of registers. > As far as dynamically allocating, this is something we need to research. > For the purposes of the one game, however, we know which registers are used > the most - so we can just allocate those. In any case, I think we should make it configurable, where we can tell the recompiler up front what registers to use (and what not to). -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 10:11:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA83560 for dynarec-outgoing; Wed, 21 Jun 2000 10:11:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 10:17:50 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? In-Reply-To: <00036a910374ddde_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >PS Will we build a debugger into the project as well? > I think Neil mentioned that he has a debugger he is allowed to use, or was it > a disassembler? It was a disassembler. Alternately, I can put up a copy of Retrocade that has the debugger enabled so we can step through things, but I've just been doing logging for DRMZ80 and I don't see why we couldn't use the same approach for DR68K. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 10:12:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA83569 for dynarec-outgoing; Wed, 21 Jun 2000 10:12:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 10:18:26 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Shall we get started? In-Reply-To: <3950CDD6.AB858D33@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I think in the API I found two classes for game programming BWindowScreen and > > BDirectWindw. The first should plot directly to the screen. The latter is > > more compilcated since it runs in a window, but you only have to change one > > class variable to switch to full screen IIRC. > Okay, but that means you *have* to write the graphical code yourself. Actually, you'll just have to write a routine that blits a chunk of data to the screen. All the graphics will be handled on a virtual page in the game itself. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 10:14:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA83579 for dynarec-outgoing; Wed, 21 Jun 2000 10:14:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 10:20:07 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: various thankyous and questions In-Reply-To: <011601bfdb96$4b9e34e0$b60d8cd4@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > As for register allocation, are you sure you want to statically allocate > registers, yep that's fine for food fight, but say you want to adjust the > dynarec later to go into say DGen (which would rock) it might be better to > write it more generically. On the other hand static Vs dynamic might have a > negligible difference in which case who cares (will think about this more > when I come to my project) any opinions? With dynamic allocation, the big problem is when you try to jump in to the middle of a routine. How do you know what registers are currently cached? The amount of extra data you'd need to keep around for such a thing would be horiffic, and God help you in the case of a jump instruction carried out by the value in a register. I think we should explore other (better) alternatives. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 10:16:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA83592 for dynarec-outgoing; Wed, 21 Jun 2000 10:16:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 10:22:12 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Register usage In-Reply-To: <1ecl640.15xt8xq11ogmaxM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Another example: when freeing a host register, I check that it was > really used. i.e. is the host register really linked to a m68k register > and that m68k register linked to the host register ? This is fine for compilers where you're going forward and never going backward, but in a recompiler code tends to have an issue with doubling back on itself and jumping in to the middle of blocks of data. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 10:16:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA83602 for dynarec-outgoing; Wed, 21 Jun 2000 10:16:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 10:22:29 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <013a01bfdb9c$cb2d7bc0$b60d8cd4@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Use the -c option to emit a C core. (This is my core, BTW). The C section > > of it is fully implemented but not fully debugged. It's healthy enough to > > run quite a few games. > BTW, is the C version of mZ80 significantly faster than Marat's core? Over 3X - yes. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 10:21:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA83616 for dynarec-outgoing; Wed, 21 Jun 2000 10:21:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 10:28:02 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: various thankyous and questions In-Reply-To: <3950EC22.F69961F3@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > And as for the name - something like "Optimus"? If it wasnt a crappy Radio Shack brand name, I'd be all for it. How about "WarpCore"? -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 10:42:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA83661 for dynarec-outgoing; Wed, 21 Jun 2000 10:42:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Register usage From: "M.I.K.e" In-Reply-To: <1ecl640.15xt8xq11ogmaxM@[192.168.0.2]> Message-ID: <00036a94365461bc_mailit@mail.dynarec.com> References: <1ecl640.15xt8xq11ogmaxM@[192.168.0.2]> Date: Wed, 21 Jun 2000 19:48:49 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I have been lurking for nearly two months now. I wonder how many lurkers we still have ;-) Well, welcome aboard! >And yes, I am French. ;-) Uh-oh, yousa in big dudu dis time, Neil ;-) >> Isn't that a bit too slow? >Unfortunately, this seems to be the case, indeed. I re-benchmarked the >thing by activating the compiler optimizations: 3.2 Maps. (allocations >per second). The way I "benchmark" is also questionable, though. see >test_registers.cpp in src/ directory. I already downloaded and extracted it but I still have to take a deeper look. >At that time, I was not aware of that algorithm. I only saw it this last >semester. Actually, the algorithm I implemented is a LRU as a linked >list of host registers allocated. LRU seems to be the obvious pick at first, but you need more complicated structures (linked lists) and you have to change reference counters for all registers every "instruction cycle". Second chance can be implemented with an array which is made cyclic with a modulo operation and only the registers involved in the current instruction get the reference bit set. My idea was, keep it simple and fast, so I came up with that solution. The results might not be as good as those for LRU but should be very close. [only destination registers cached] >Yes, this sounds good to me as well. Especially for a target architecture with few registers this sounds like a good idea. >I still plan a dynarec core for BasiliskII but for starters, BTW, doesn't Basilisk II use the UAE core, which now has a dynarec? >Next, when everything looks good, I will start to code the instruction >handlers. I intend to write those in a C-like syntax and then generate >several experimental cores from the abstract syntax tree, namely Direct >Threaded Code and Token Threaded Code for compilers that don't support >GCC's "Labels as Values" extension. Sound interesting. >Finally, maybe I could tune the code generator to generate native code >generators instead of C++ code. Should be faster ;-) >BTW, I would have liked a PPC dynarec. Bill Huey (from vMac) is working >on it but I don't know his progress though. PPC as source or as target? That processor is a real bitch! >For example, when locking a host register, I first check that this >register is used, i.e. connected to a m68k register. This should not >happen since, as I intended to be the only user of the allocator, I >would have known to first allocate the register. Well, when register locking isn't used then such tests wouldn't be necessary of course. >Another example: when freeing a host register, I check that it was >really used. i.e. is the host register really linked to a m68k register >and that m68k register linked to the host register ? Well, I tested if the register was modified which means that the value has to be written back to the appropriate memory location. I think no other test is performed. But I have two parallel arrays: one which holds the information about the simulated register and the other for the hardware register. If you are interested I could post the code, but it might be very buggy because I never ran it through a compiler... >In fact: I maintain a table of m68k registers plus some "virtual" ones. >Each register has a possible link to a host register. On the other hand, >I have a table of host registers, which can have a link to the m68k >register it caches. Sounds just like my two array approach. >The checks I was telling you about are checks for >internal structures coherency: has the allocator got mad with all those >"inter-"links ? I have no links but only register numbers and array indices. No checks were performed. >Gwenolé Beauchesne -- M.I.K.e Aleph-null bottles of beer on the wall, Aleph-null bottles of beer, You take one down, and pass it around, Aleph-null bottles of beer on the wall. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 10:43:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA83672 for dynarec-outgoing; Wed, 21 Jun 2000 10:43:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <015101bfdba9$6c29d4e0$b60d8cd4@daves> From: "David Sharp" To: References: <011601bfdb96$4b9e34e0$b60d8cd4@daves> <3950EC22.F69961F3@eurocopter.de> Subject: Re: DYNAREC: various thankyous and questions Date: Wed, 21 Jun 2000 18:52:05 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Okay, we'll let you off for not helping. ;) Thanks. :o) > And as for the name - something like "Optimus"? It is the obvious choice isn't it. > That's nasty - but something I'm good at. My last project WAS an entire > Internet Client Suite - written from the ground up. If you need a hand then > give me a shout! None of it's really hard there's just so much to learn from such diverse areas in so little time. The exams schedule's been really shitty and not given any space to brush up on things. Thanks anyway but no one can help me now... Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 11:32:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA83739 for dynarec-outgoing; Wed, 21 Jun 2000 11:32:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <017001bfdbb0$4fc4fc60$b60d8cd4@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: various thankyous and questions Date: Wed, 21 Jun 2000 18:59:54 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > If it wasnt a crappy Radio Shack brand name, I'd be all for it. Ok. Damnit all my transformer comics are at home. :o( > How about "WarpCore"? Why? Or is that a silly question? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 11:32:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA83744 for dynarec-outgoing; Wed, 21 Jun 2000 11:32:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <017101bfdbb0$51996e40$b60d8cd4@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: my project (was RE: diner wrecker) Date: Wed, 21 Jun 2000 19:40:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Over 3X - yes. wow. Erm I don't suppose you could point out how - I need to speed up the CPU emulation for my GB emu from the ground up and could do with some hints, here are a few ideas I'd had previously but I'm wondering if there's anything I've missed that you used in mZ80: 1) using whole integers and ANDing and shifting rather than union structs is faster 2) braces round every switch case to localise rubbish left in variables between instructions 3) LUTs for flags (I notice you have a few more than me) 4) I like the *pc++ bit but I dismissed that previously as I didn't think it'd work too well with memory paging? That's about it. I don't quite follow how you're handling the access of 8 bit regs and the 16 bit combined versions with things like cpu.z80BC and cpu.z80C? Thanks Dave PS: sorry to take it off topic into those disgusting interpretive cores. :o) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 11:54:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA83782 for dynarec-outgoing; Wed, 21 Jun 2000 11:54:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 12:00:37 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <017101bfdbb0$51996e40$b60d8cd4@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Erm I don't suppose you could point out how - I need to speed up the CPU I could point out how... if I knew how you were doing it. ;-) > emulation for my GB emu from the ground up and could do with some hints, > here are a few ideas I'd had previously but I'm wondering if there's > anything I've missed that you used in mZ80: Can you ship me a copy of your Z80 core (privately) so I can have a look? > 1) using whole integers and ANDing and shifting rather than union structs is > faster unioned structures are fine if used "properly". Make sure you align everything on 4 byte boundaries. > 2) braces round every switch case to localise rubbish left in variables > between instructions This doesn't do anything unless you have autovariables inside the case construct. > 3) LUTs for flags (I notice you have a few more than me) Yes - big help. Combine where possible. > 4) I like the *pc++ bit but I dismissed that previously as I didn't think > it'd work too well with memory paging? There are other alternatives to doing bank switching (like keeping an image of all 4 64K possibilites in memory and just changing your base pointer). Let me have a look at your Z80 core. > I don't quite follow how you're handling the access of 8 bit regs and the 16 > bit combined versions with things like cpu.z80BC and cpu.z80C? Take a look in mz80.h. They're unions. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 11:54:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA83793 for dynarec-outgoing; Wed, 21 Jun 2000 11:54:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 12:01:04 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: various thankyous and questions In-Reply-To: <017001bfdbb0$4fc4fc60$b60d8cd4@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > How about "WarpCore"? > Why? Or is that a silly question? Nope! How about WarpCore? I think that'd be a good name. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 12:00:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA83816 for dynarec-outgoing; Wed, 21 Jun 2000 12:00:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006701bfdbbc$11c7bae0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: various thankyous and questions Date: Wed, 21 Jun 2000 21:05:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MIMEOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Why? Or is that a silly question? > > Nope! How about WarpCore? I think that'd be a good name. May I suggest a slight alteration to that name - to become Warp10? If you're any sort of Star Trek fan (or you're friends with one - as in my case) then you'll know why. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 12:02:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA83828 for dynarec-outgoing; Wed, 21 Jun 2000 12:02:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 12:08:29 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: various thankyous and questions In-Reply-To: <006701bfdbbc$11c7bae0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Why? Or is that a silly question? > > Nope! How about WarpCore? I think that'd be a good name. > May I suggest a slight alteration to that name - to become Warp10? If you're > any sort of Star Trek fan (or you're friends with one - as in my case) then > you'll know why. :) Um... I think you mean Warp 9.6, but having a number in the name tends to screw up what it is if it has no relevance. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 12:11:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA83847 for dynarec-outgoing; Wed, 21 Jun 2000 12:11:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: various thankyous and questions From: "M.I.K.e" In-Reply-To: Message-ID: <00036a9574175ce2_mailit@mail.dynarec.com> References: Date: Wed, 21 Jun 2000 21:17:40 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Nope! How about WarpCore? I think that'd be a good name. Hmm, I prefer the hyper drive ;-) The problem I have with "WarpCore" (and also with Starscream) is that you get no hint what it is, which is why I'd still prefer something like "Mach68" although it isn't that subtle. >-->Neil -- M.I.K.e Adore, v.: To venerate expectantly. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 12:23:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA83869 for dynarec-outgoing; Wed, 21 Jun 2000 12:23:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: various thankyous and questions From: "M.I.K.e" In-Reply-To: Message-ID: <00036a9591eb64f0_mailit@mail.dynarec.com> References: Date: Wed, 21 Jun 2000 21:26:00 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Um... I think you mean Warp 9.6 What he means is the maximum Warp speed. I think 9.6 is the fastest speed of the Enterprise but the Voyager should be capable of 9.7 IIRC... >, but having a number in the name tends to screw up what it is if it has no relevance. Indeed, and Warp68 sounds a bit odd ;-) >-->Neil -- M.I.K.e "We demand rigidly defined areas of doubt and uncertainty!" -- Vroomfondel --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 12:27:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA83884 for dynarec-outgoing; Wed, 21 Jun 2000 12:27:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 12:33:45 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: various thankyous and questions In-Reply-To: <00036a9591eb64f0_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Um... I think you mean Warp 9.6 > What he means is the maximum Warp speed. I think 9.6 is the fastest speed of > the Enterprise but the Voyager should be capable of 9.7 IIRC... Well, the Enterprise in "All good things" does Warp 13, so we know it's possible. ;-) That's why the Warp 10 didn't make sense to me. Turns out thye're not as much of a Star trek fan as Neil G once thought! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 12:34:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA83901 for dynarec-outgoing; Wed, 21 Jun 2000 12:34:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Welcome to Food Fight From: "M.I.K.e" In-Reply-To: Message-ID: <00036a95c8eccd08_mailit@mail.dynarec.com> References: Date: Wed, 21 Jun 2000 21:41:23 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [Food Fight] >Hit ctrl to get past it. That's the "throw" button on the real game, and >yup - the real game does it, too. Thanks, now it works! >-->Neil -- M.I.K.e Pascal, n.: A programming language named after a man who would turn over in his grave if he knew about it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 12:37:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA83915 for dynarec-outgoing; Wed, 21 Jun 2000 12:37:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 12:43:33 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Welcome to Food Fight In-Reply-To: <00036a95c8eccd08_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Hit ctrl to get past it. That's the "throw" button on the real game, and > >yup - the real game does it, too. > Thanks, now it works! It's a really great game. I was thinking that it's probably best I get the game glue code working first before trying to toss it against the recompiler. It'd be lots easier knowing that we have no problem with the glue and something with the recompiler, rather than having to guess where the problem is... -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 12:51:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA83939 for dynarec-outgoing; Wed, 21 Jun 2000 12:51:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001901bfdbbb$4753ba20$010f063e@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: my project (was RE: diner wrecker) Date: Wed, 21 Jun 2000 20:59:54 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I could point out how... if I knew how you were doing it. ;-) > Can you ship me a copy of your Z80 core (privately) so I can have a look? Sure I'll send it over in a few days once I've had a chance to detangle it from the rest of the GB emulation. > unioned structures are fine if used "properly". Make sure you align > everything on 4 byte boundaries. Hmm and on an ARM it has to be 4 byte aligned, guess that's not it. > There are other alternatives to doing bank switching (like keeping an > image of all 4 64K possibilites in memory and just changing your base > pointer). Let me have a look at your Z80 core. Hmm, not a bad one that, fairly obvious too, silly me. :o) > Take a look in mz80.h. They're unions. Ok thanks will do. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 12:53:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA83950 for dynarec-outgoing; Wed, 21 Jun 2000 12:53:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 12:59:56 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: my project (was RE: diner wrecker) In-Reply-To: <001901bfdbbb$4753ba20$010f063e@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > There are other alternatives to doing bank switching (like keeping an > > image of all 4 64K possibilites in memory and just changing your base > > pointer). Let me have a look at your Z80 core. > Hmm, not a bad one that, fairly obvious too, silly me. :o) It saves you from having to do indirection after every instruction, which is probably what you're doing now. I'd recommend doing the normalized PC to a pointer approach to get things really crankin'. When I did this in my original cores, I got over 2X improvement. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 13:04:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA83975 for dynarec-outgoing; Wed, 21 Jun 2000 13:04:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: various thankyous and questions From: "M.I.K.e" In-Reply-To: Message-ID: <00036a9635d715fa_mailit@mail.dynarec.com> References: Date: Wed, 21 Jun 2000 22:11:51 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well, the Enterprise in "All good things" does Warp 13, so we know it's >possible. ;-) That's why the Warp 10 didn't make sense to me. Turns out >thye're not as much of a Star trek fan as Neil G once thought! ;-) I'll translate a small passage from Lawrence Krauss' "The Physics of Star Trek" (translate because I have the German translation): "The rules of warp speed seem to be exchangable. Between the classic series and The Next Generation Gene Roddenberry decided to define the warp speed anew: He set warp 10 as upper border, where warp 10 is 2^10 = 1024x light speed. According to the "Next Generation Technical Manual" the 'normal' top speed of the Enterprise-D is warp 9.6 (1909x light speed). Warp 10 is assumed as unfinite. Nevertheless there sometimes are reports of objects that are faster than warp 10, eg. the Brog cubes. Therefore you shouldn't try to understand any tiny little bit." >-->Neil -- M.I.K.e Every program has two purposes -- one for which it was written and another for which it wasn't. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 13:13:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA83996 for dynarec-outgoing; Wed, 21 Jun 2000 13:13:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Welcome to Food Fight From: "M.I.K.e" In-Reply-To: Message-ID: <00036a96563fbc47_mailit@mail.dynarec.com> References: Date: Wed, 21 Jun 2000 22:20:54 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It's a really great game. It seems to be funny, but either MAME is more crap than I thought or BeMAME has some problems with the controls, because it's quite hard to control. >I was thinking that it's probably best I get the game glue code working >first before trying to toss it against the recompiler. It'd be lots easier >knowing that we have no problem with the glue and something with the >recompiler, rather than having to guess where the problem is... Very good idea indeed! We all know why we elected you to be the project leader ;-) BTW, I'm not sure if you missed that discussion or not, but I thought if we could use SDL for graphics and sound output (if you want to do that) since we should then have a very good portability and every team member can work with his favourite PC system. I haven't used SDL yet so I wanted to know what you think about that idea. >-->Neil -- M.I.K.e Excess on occasion is exhilarating. It prevents moderation from acquiring the deadening effect of a habit. -- W. Somerset Maugham --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 13:57:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA84053 for dynarec-outgoing; Wed, 21 Jun 2000 13:57:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 14:03:35 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Welcome to Food Fight In-Reply-To: <00036a96563fbc47_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >It's a really great game. > It seems to be funny, but either MAME is more crap than I thought or BeMAME > has some problems with the controls, because it's quite hard to control. It's MAME. Retrocade doesn't have those weird control problems like MAME does. It's really sloppy and slow to respond, right? > BTW, I'm not sure if you missed that discussion or not, but I thought if we > could use SDL for graphics and sound output (if you want to do that) since we > should then have a very good portability and every team member can work with > his favourite PC system. I really don't care. I don't plan on using it because I'd rather not learn yet (another) API for this task. However, the project will be structured so you can use whatever you bloody well feel like. I imagine there being a Win32 version that uses DirectX, the DOS version that uses INT 13h calls and we can create platform specific extensions for whatever OS we want to target it on. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 13:58:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA84065 for dynarec-outgoing; Wed, 21 Jun 2000 13:58:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: New Record? From: "M.I.K.e" Message-ID: <00036a96ee598c71_mailit@mail.dynarec.com> Date: Wed, 21 Jun 2000 23:03:26 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Wow, with only 6 people writing mails we had over 120 messages in less than 24 hours! I guess that's a new record even on this list! -- M.I.K.e Life is like an analogy --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 14:13:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA84094 for dynarec-outgoing; Wed, 21 Jun 2000 14:13:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Welcome to Food Fight From: "M.I.K.e" In-Reply-To: Message-ID: <00036a972b507be2_mailit@mail.dynarec.com> References: Date: Wed, 21 Jun 2000 23:20:29 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It's MAME. Retrocade doesn't have those weird control problems like MAME >does. It's really sloppy and slow to respond, right? Yeah, and sometimes it seems as if the character is moving without me doing anything! >However, the project will be structured so you can use whatever you bloody >well feel like. I imagine there being a Win32 version that uses DirectX, >the DOS version that uses INT 13h calls and we can create platform >specific extensions for whatever OS we want to target it on. I guess I have to learn how to use the BWindowsScreen class... >-->Neil -- M.I.K.e "... all the modern inconveniences ..." -- Mark Twain --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 14:37:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA84134 for dynarec-outgoing; Wed, 21 Jun 2000 14:37:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 14:43:52 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Welcome to Food Fight In-Reply-To: <00036a972b507be2_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >It's MAME. Retrocade doesn't have those weird control problems like MAME > >does. It's really sloppy and slow to respond, right? > Yeah, and sometimes it seems as if the character is moving without me doing > anything! The original game had an analog style joystick. When you released the joystick, it'd snap back to the center stopping Charlie Chuck. MAME Is taking the arrow inputs and positioning a fake analog joystick. There's no auto recentering, so if you went to the upper left hand corner and released the keys, it would just keep going up and left. Retrocade recognizes this and centers the joystick (as it should). -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 15:00:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA84174 for dynarec-outgoing; Wed, 21 Jun 2000 15:00:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 15:06:32 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: OT: Water springs found on Mars Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm not sure if any of you are big fans of space travel and everything space, but this just totally rocks: http://www.cnn.com/2000/TECH/space/06/21/mars.water/index.html If I had the opportunity, I'd be first in line. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 15:35:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA84222 for dynarec-outgoing; Wed, 21 Jun 2000 15:35:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 23:45:19 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: Register usage Message-ID: <20000621234518.A9662@boris.quns.cam.ac.uk> References: <1eckzz9.1ly837bm2gyy6M@[192.168.0.2]> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: ; from Neil Bradley on Wed, Jun 21, 2000 at 10:11:09AM +0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, Jun 21, 2000 at 10:11:09AM +0000, Neil Bradley wrote: > > > I have a few suggestions as to how we should allocate x86 registers (to > > > the 68K equivalents): > > Why not dynamically allocate registers ? When I was also thinking of a > > m68k dynarec, I once coded a simple register allocator with sort of > > "history" in order to know which ones are likely to be spilled. > > Think of it this way - You need to, at any point, know what 68K registers > are allocated in the x86 registers. And you need to be able to jump to any > address in the execution code. You'll very quickly find that doing this > sort of thing is impossible unless you want to incur massive > overhead. It's faster to just do it with statically allocated registers. ...unless there are too many source registers for your target architecture, in which case you're obliged to allocate them dynamically. I've probably mentioned before the approach I took, which is just to disallow branches to the middle of translated translation units, but to allow translation units to overlap. This may be more sensible on the ARM than other source architectures, due to predicated execution often being used instead of forward branching. I thought the 68k had more registers than the x86 (8+8 data/address registers), or am I wrong? Maybe they're 16 bit, so you can double them up in 32-bit x86 registers? I'm probably not paying enough attention though... > > There is > > also sort of register locking/unlocking mechanism if some host > > instructions require specific registers (e.g. EAX/EDX in a MUL for x86 > > architectures ?) > > Um... not that I'm aware of. AFAIR, there are (older?) MUL variations which must use specific registers? I think someone else said that already. I think register-specified shifts must use the 'cl' register for the shift amount even now though. Jules -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 15:46:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA84242 for dynarec-outgoing; Wed, 21 Jun 2000 15:46:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 15:52:13 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Register usage In-Reply-To: <20000621234518.A9662@boris.quns.cam.ac.uk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > address in the execution code. You'll very quickly find that doing this > > sort of thing is impossible unless you want to incur massive > > overhead. It's faster to just do it with statically allocated registers. > ...unless there are too many source registers for your target > architecture, in which case you're obliged to allocate them > dynamically. No, you aren't, and that was the crux of my note above. You can use a small subset of them in the target's registers (a predictable instead of dynamic list) and just swap the others in and out of RAM. Or are we saying the same thing, here? > I've probably mentioned before the approach I took, which > is just to disallow branches to the middle of translated translation > units, Yuck. If you have C code then stuff like that's possible, but if it's in assembly or it has any oddball branching, you can't do that. > but to allow translation units to overlap. So do multiple passes depending upon the calling routine's register allocation? Seems like a hell of a lot of work and it'd certainly use up more cache (and memory). > I thought the 68k had more registers than the x86 (8+8 data/address > registers), or am I wrong? Maybe they're 16 bit, so you can double > them up in 32-bit x86 registers? I'm probably not paying enough > attention though... It does. It's really 8 data, 7 address (1 stack), and they're all 32 bit (the 68K). The x86 has: EAX/EBX/ECX/EDX/EDI/ESI/EBP As general purposes registers - address or data. > > > instructions require specific registers (e.g. EAX/EDX in a MUL for x86 > > > architectures ?) > > Um... not that I'm aware of. > AFAIR, there are (older?) MUL variations which must use specific > registers? The original one would only allow AX and something. With the advent of the 386, it allows any register with any other register. > I think someone else said that already. I think > register-specified shifts must use the 'cl' register for the shift > amount even now though. If you want to do a register specified shift, yes, but I've yet to have to do one in all my works of emulation. But you don't have to do: mov cl, 3 shl eax, cl You can do: shl eax, 3 It's amazing how few people know this. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 16:09:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA84276 for dynarec-outgoing; Wed, 21 Jun 2000 16:09:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 22 Jun 2000 00:19:22 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: Register usage Message-ID: <20000622001921.A9714@boris.quns.cam.ac.uk> References: <20000621234518.A9662@boris.quns.cam.ac.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: ; from Neil Bradley on Wed, Jun 21, 2000 at 03:52:13PM +0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, Jun 21, 2000 at 03:52:13PM +0000, Neil Bradley wrote: > > > address in the execution code. You'll very quickly find that doing this > > > sort of thing is impossible unless you want to incur massive > > > overhead. It's faster to just do it with statically allocated registers. > > > ...unless there are too many source registers for your target > > architecture, in which case you're obliged to allocate them > > dynamically. > > No, you aren't, and that was the crux of my note above. You can use a > small subset of them in the target's registers (a predictable instead of > dynamic list) and just swap the others in and out of RAM. Or are we saying > the same thing, here? Oh OK, I get you now. I guess the problem is then choosing which registers to use for your fixed set... which gets me up to somewhere yesterday in the discussion I think ;-) > > I've probably mentioned before the approach I took, which > > is just to disallow branches to the middle of translated translation > > units, > > Yuck. If you have C code then stuff like that's possible, but if it's in > assembly or it has any oddball branching, you can't do that. Oh yes you can :-P > > but to allow translation units to overlap. > > So do multiple passes depending upon the calling routine's register > allocation? Seems like a hell of a lot of work and it'd certainly use up > more cache (and memory). The memory thing is a problem, but not as much as you might think - the way I did it in ARMphetamine was to store all target registers in memory between translation units. Code within a translation unit can branch to the start of another translation unit (in which case all registers must be spilled to memory beforehand), to within the same translation unit (where the register allocation can be "shuffled" into the destination context, which is only stored during translation), or else the program counter can be set and control can drop back down to an interpretive emulator (which might then "boomerang" straight back into recompiled code). Sorry if that's not explained very well... I haven't done any real tests of how inefficient the overlapping translation unit thing is - I suspect that although there are probably degenerate cases where it will be fairly horrendous most of the time it won't be too bad. > > I thought the 68k had more registers than the x86 (8+8 data/address > > registers), or am I wrong? Maybe they're 16 bit, so you can double > > them up in 32-bit x86 registers? I'm probably not paying enough > > attention though... > > It does. It's really 8 data, 7 address (1 stack), and they're all 32 bit > (the 68K). The x86 has: > > EAX/EBX/ECX/EDX/EDI/ESI/EBP As general purposes registers - address or > data. OK... > > AFAIR, there are (older?) MUL variations which must use specific > > registers? > > The original one would only allow AX and something. With the advent of the > 386, it allows any register with any other register. I figured it went something like that... > > I think someone else said that already. I think > > register-specified shifts must use the 'cl' register for the shift > > amount even now though. > > If you want to do a register specified shift, yes, but I've yet to have to > do one in all my works of emulation. But you don't have to do: > > mov cl, 3 > shl eax, cl > > You can do: > > shl eax, 3 > > It's amazing how few people know this. I knew that :-) The ARM uses all manner of shifts all over the place though, I assure you... the register-specified shift amount thing is quite annoying really, since it's one of the only register non-orthogonalities I had to concern myself with for my project. Well, that and generating procedure calls back to C code... Jules -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 16:52:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA84331 for dynarec-outgoing; Wed, 21 Jun 2000 16:52:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 16:58:44 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Dynarec approach Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This is review for some of you, but for the newcomers I'll reiterate some concepts that I've successfully used in DRMZ80. Typical recompiler approaches from others would create "covers" - blocks of x86 code for each translated instruction. So all it really does is take preassembled blocks and glue them in, and fix them up. There's no allowance of doing anything really dynamic. They're just assembling blocks. Instead, my approach creates a linked list of target instructions for each emulated instruction, but it uses code to create the target instructions. So the actual cover can make intelligent decisions about what it's being handed. For example, the source layer can tell the target layer to not generate any flag restoration preamble because the source layer knows that it's going to be clobbered in the next instruction. The same holds true for the flag calculation. If the source layer knows that the instruction following the current instruction is just going to clobber the flags, the current instruction shouldn't calculate the flags at all! So each cover can adjust itself based on information passed to it. This can include (but isn't limited to) short/long jumps/calls. In some cases the recompiler will already know the translated address for a given jump. So instead of generating code to look it up in the list conditionally, it can just pull the address out of the transmap and put a jump directly to it. It makes it easy to make one minor exception for a variation of a command rather than having to keep another precompiled block. The other benefit is peephole optimization when the block has been fully created/translated. Higher level optimization can occur to spot code that could potentially be collapsed, or optimized. It's sure a hell of a lot easier to do that than to try to kludge precompiled block covers. Anyway, here's what I call a sTargetOp structure. It's the state the target opcode exists in before final "Assembling" into a real block. Another advantage here is that if there are relative jumps, they can be adjusted easily: struct sTargetOp { void *vpOpcodeAddr; // Where is the opcode located? UINT8 u8OpcodeSize; // How big is this opcode? UINT32 u32SourceAddr; // The emulated address of this opcode UINT8 u8Opcode[MAXOP]; // The actual opcode data itself UINT8 u8Timing; // Is this timing code? UINT8 u8OpType; // NORMAL, BRANCH_VIRTUAL void *vpBranchAddr; // Where do we branch to? struct sHostOp *psNextLink; // Next instruction struct sHostOp *psPriorLink; // Prior instruction }; And here's a blow by blow description of each field: vpOpcodeAddr - The final resting place in memory where this opcode goes. This is used so that the emitter can figure out fixups quite easily when branches are to other sTargetOp structures. u8OpcodeSize - This is the size of this opcode (in bytes). It indicates how many bytes are present in the u8Opcode array to be copied to its final resting place. u32SourceAddr - What source address does this instruction cover? Meaning, if we're recompiling something at 0x00157c in the source processor, it cotains 0x00157c. If it's "in between" code, it's set to 0xffffffff. u8Timing - Is this timing postamble? TRUE Or FALSE. This is so the opcode emitter/optimizer routine won't do something stupid like delete it (or know where and when it can collapse groups of timing instructions) u8OpType - There are several kinds of instructions this could be: NORMAL - Instruction is just a regular, nonbranching instruction or an instruction that needs no fixup. For example, it could be a call to a memory handler routine where the memory handler address is already known, so there's no need to fix it up. BRANCH_TARGET - This means that it's a jump instruction to a sTargetOp structure, and that the address should be filled in later on. This allows the recompiler to handle jumps within blocks, so if you've got a loop where it jumps back a few instructions, you won't know the physical address of it because it hasn't been emitted yet, but you've got the sTargetOp structure so you can have the emitter fix it up at code emission time. BRANCH_VIRTUAL - Means it's supposed to jump to an emulated address that has not yet been recompiled (but it's in the block currently being compiled). vpBranchAddr - Depends upon the prior field. If BRANCH_VIRTUAL, then vpBranchAddr is the source address to jump to. If BRANCH_TARGET, then vpBranchAddr is a sTargetOp structure to connect to. If NORMAL, this field is ignored/unused. So when a recompiler hits a block to recompile (and I don't consider a conditional terminal an end of block), it hands a different linked list of source instructions to recompile to the target layer. For each instruction, the target layer emits connected lists of sTargetOp structures. By the time a terminal is reached, the target layer goes off and emits the code, returning a pointer to the address where the block begins and filling in the transmap as it goes. And it deallocates the linked list, too, since after the recompile it's no longer needed. Another cool aspect of this approach is that if a target address has not been recompiled, the recompiler can call itself with that target address to have code emitted. When it's all finished, it winds up with this big, huge linked list of code to emit. This is nice because the recompiler won't have to write code to look the address up in the transmap. It can just jump to it! I call this depth traversal, because it's traversing the depth of the source processor's code. Does your brain hurt yet? -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 17:18:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA84373 for dynarec-outgoing; Wed, 21 Jun 2000 17:18:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 17:24:46 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Register usage In-Reply-To: <20000622001921.A9714@boris.quns.cam.ac.uk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > No, you aren't, and that was the crux of my note above. You can use a > > small subset of them in the target's registers (a predictable instead of > > dynamic list) and just swap the others in and out of RAM. Or are we saying > > the same thing, here? > Oh OK, I get you now. I guess the problem is then choosing which registers > to use for your fixed set... which gets me up to somewhere yesterday in > the discussion I think ;-) Right. There's "what fixed set do we use with what" (which I wasn't calling dynamic register allocation) and "during this piece of code, what registers do we swap out?". I was speaking of the former - not the latter. > > Yuck. If you have C code then stuff like that's possible, but if it's in > > assembly or it has any oddball branching, you can't do that. > Oh yes you can :-P Unless you want to use a bunch more memory and keep records of *HOW* that region of the code was recompiled. It's still more work than it's worth. It might be wise to defer this conversation until we actually see some recompiled code (or source code). I can disassemble Food Fight if you're interested in taking a look. But it appears that A0/A1 D0/D1 are used a lot and NOT just in Food Fight! > > The original one would only allow AX and something. With the advent of the > > 386, it allows any register with any other register. > I figured it went something like that... That limitation was removed in 1985. ;-) > The ARM uses all manner of shifts all over the place though, I assure > you... the register-specified shift amount thing is quite annoying really, > since it's one of the only register non-orthogonalities I had to concern > myself with for my project. Well, that and generating procedure calls back > to C code... I'd say one special case isn't all that bad (I've written a few compilers m'self - one for the 386). -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 17:18:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA84382 for dynarec-outgoing; Wed, 21 Jun 2000 17:18:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Register usage From: "M.I.K.e" In-Reply-To: <20000621234518.A9662@boris.quns.cam.ac.uk> Message-ID: <00036a99980704d0_mailit@mail.dynarec.com> References: <1eckzz9.1ly837bm2gyy6M@[192.168.0.2]> <20000621234518.A9662@boris.quns.cam.ac.uk> Date: Thu, 22 Jun 2000 02:14:03 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I thought the 68k had more registers than the x86 (8+8 data/address >registers), or am I wrong? Yep, D0-D7 + A0-A7 + A7' + PSR + PC. >Maybe they're 16 bit, so you can double them up in 32-bit x86 >registers? I'm probably not paying enough attention though... Nope, apart from PSR (16-bit) all registers are 32-bit. Since I seem to be the only former 68K hacker I'll try to write a small article about that processor tomorrow. >AFAIR, there are (older?) MUL variations which must use specific registers? I >think someone else said that already. I think register-specified shifts must >use the 'cl' register for the shift amount even now though. I don't know about that letter thing but I think most of the other limitations were abandoned since the 386. >Jules -- M.I.K.e "The climate of Bombay is such that its inhabitants have to live elsewhere." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 23:18:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA84680 for dynarec-outgoing; Wed, 21 Jun 2000 23:18:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006220623.IAA04800@pons.ac.upc.es> Subject: Re: DYNAREC: Heavy Traffic In-Reply-To: <00036a8f87d6d2ad_mailit@mail.dynarec.com> "from M.I.K.e at Jun 21, 2000 02:13:42 pm" To: dynarec@dynarec.com Date: Thu, 22 Jun 2000 08:23:11 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Wow! After a week of silence we finally have as much traffic as in the good > old days and it's even mostly on-topic! > I don't even know to which message I should reply first! Very impressive! > Impressive? Yes. But it is 8 morning, I'm in the job and I have more than 80 mails to read. My chief will kill me. ;) I think I should buy a modem soon. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 23:28:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA84696 for dynarec-outgoing; Wed, 21 Jun 2000 23:28:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006220633.IAA10669@pons.ac.upc.es> Subject: Re: DYNAREC: Shall we get started? In-Reply-To: <3950C2EE.294ECEFF@eurocopter.de> "from Neil Griffiths at Jun 21, 2000 03:28:14 pm" To: dynarec@dynarec.com Date: Thu, 22 Jun 2000 08:33:15 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-MIME-Autoconverted: from 8bit to quoted-printable by pons.ac.upc.es id IAA10669 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id XAA84693 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Porcierto sabes que pueola hablar un espanòl perfecto. > > Maybe. :) > ?? It is: Por cierto sabes que puedo hablar un espanyol perfecto. (* ny replaces another letter I dont't have in my keyboards because it is an english keyboard, is used in some other languages for the same sound *) > > As I can't use a fonetic alphabet in this mail I can't tell you how is > > really spelled. > > I know what you mean (I'll explain when you've replied to this e-mail!). > ?? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 23:31:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA84718 for dynarec-outgoing; Wed, 21 Jun 2000 23:31:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Jun 2000 23:37:34 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Heavy Traffic In-Reply-To: <200006220623.IAA04800@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > old days and it's even mostly on-topic! > > I don't even know to which message I should reply first! Very impressive! > Impressive? Yes. But it is 8 morning, I'm in the job and I have more than > 80 mails to read. My chief will kill me. ;) I think I should buy a modem > soon. Uh... well, you could just pop in to dynarec.com. You've got an account there. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 23:47:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA84738 for dynarec-outgoing; Wed, 21 Jun 2000 23:47:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006220652.IAA10678@pons.ac.upc.es> Subject: Re: DYNAREC: Heavy Traffic In-Reply-To: "from Neil Bradley at Jun 21, 2000 11:37:34 pm" To: dynarec@dynarec.com Date: Thu, 22 Jun 2000 08:52:30 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > old days and it's even mostly on-topic! > > > I don't even know to which message I should reply first! Very impressive! > > Impressive? Yes. But it is 8 morning, I'm in the job and I have more than > > 80 mails to read. My chief will kill me. ;) I think I should buy a modem > > soon. > > Uh... well, you could just pop in to dynarec.com. You've got an account > there. ;-) > I have enough space in my work (but I should unsubscribe my other student address, sure it's now bouncing). The real problem is that I have to read them!! Well I have almost finished. :) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 21 23:52:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA84751 for dynarec-outgoing; Wed, 21 Jun 2000 23:51:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006220657.IAA15640@pons.ac.upc.es> Subject: Re: DYNAREC: Shall we get started? (fwd) In-Reply-To: <00036a8f8d7dede5_mailit@mail.dynarec.com> "from M.I.K.e at Jun 21, 2000 02:15:16 pm" To: dynarec@dynarec.com Date: Thu, 22 Jun 2000 08:57:11 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >(if I'm not playing FF Tactics :(, argh!! this games is going to avoid me > >to become an emu author!! ;)) > > What is this FF Tactics anyway? > A PSX RPG from Square (a Japanese company, FF is Final Fantasy). Perhaps you know Shining Force (MegaDrive), it's the same kind. The battles resemble a board rol games, some warriors fighting in a limited ground. It's different from usual FF games. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 00:06:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA84778 for dynarec-outgoing; Thu, 22 Jun 2000 00:06:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006220711.JAA04183@pons.ac.upc.es> Subject: DYNAREC: Some comments In-Reply-To: <00036a96ee598c71_mailit@mail.dynarec.com> "from M.I.K.e at Jun 21, 2000 11:03:26 pm" To: dynarec@dynarec.com Date: Thu, 22 Jun 2000 09:11:28 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Well, let me see if I can remember what I have read. First, about the static vs dynamic allocation question. I think the static would be best mainly because makes the things easier and because I think that dynamic doesn't provide real better performance, it makes to add too much useless code while going in and out of translation units. And NB approach will mainly use the smallest translation unit, a single instruction. Other good point against dynamic allocation is that I think a direct memory register mapping isn't as slow now. All the registers will always be in L1 cache! I'm not sure now (I don't have the numbers) but this means is almost as fast as a register access (perhaps only 1 or 2 more cycles). How many register access will be needed to make dynamic allocation useful? About beginning to work. I think we must begin to think in somekind of file that stores all the information about the 68K instructions that will be parsed for generate the different tables we will use in decode and translation. Something similar as Generator does, an ISA definition. We can't build the tables at hand as in DRMZ80 (65536 is a lot of more bigger than 256!!). So we will have to discuss the format of the instruction definition, what info will store. And later build the definition file and the parser. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 00:25:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA84800 for dynarec-outgoing; Thu, 22 Jun 2000 00:25:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 22 Jun 2000 00:31:30 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Some comments In-Reply-To: <200006220711.JAA04183@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > First, about the static vs dynamic allocation question. I think the static > would be best mainly because makes the things easier and because I think > that dynamic doesn't provide real better performance, it makes to add too > much useless code while going in and out of translation units. You're talking about register allocation, right? > And NB > approach will mainly use the smallest translation unit, a single instruction. The nice thing about this approach is that you can do pre work on the source side and it still doesn't change the abilities of the target! > About beginning to work. I think we must begin to think in somekind of > file that stores all the information about the 68K instructions that will > be parsed for generate the different tables we will use in decode and > translation. Yes. That's part of the job of the source layer. Have you downloaded DRMZ80? Something very, very similar to that. > Something similar as Generator does, an ISA definition. We > can't build the tables at hand as in DRMZ80 (65536 is a lot of more bigger > than 256!!). Then you create a table that handles a masked set. For example: EORI 00001010ssmmmaaa ss = Size mmm= Mode aaa= Address So 0a00-0bff would be handled by one routine. We create a list that has a handler for each meta instruction that handles a given cover. Very simple! I already did this for the emitter I wrote for the 34010. > definition, what info will store. And later build the definition file and > the parser. Not necessary. We don't need to prefeed anything, nor generate some huge table. Unlike the Z80, the 68K's instructions are fairly orthogonal (there are some exceptions which is why I say *FAIRLY*). -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 00:30:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA84817 for dynarec-outgoing; Thu, 22 Jun 2000 00:30:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006220732.JAA12872@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec approach In-Reply-To: "from Neil Bradley at Jun 21, 2000 04:58:44 pm" To: dynarec@dynarec.com Date: Thu, 22 Jun 2000 09:32:49 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Does your brain hurt yet? > Why? I have been working/thinking about it some months now. ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 00:40:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA84849 for dynarec-outgoing; Thu, 22 Jun 2000 00:40:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006220745.JAA32711@pons.ac.upc.es> Subject: Re: DYNAREC: Some comments In-Reply-To: "from Neil Bradley at Jun 22, 2000 00:31:30 am" To: dynarec@dynarec.com Date: Thu, 22 Jun 2000 09:45:05 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > First, about the static vs dynamic allocation question. I think the static > > would be best mainly because makes the things easier and because I think > > that dynamic doesn't provide real better performance, it makes to add too > > much useless code while going in and out of translation units. > > You're talking about register allocation, right? > Yes. > > About beginning to work. I think we must begin to think in somekind of > > file that stores all the information about the 68K instructions that will > > be parsed for generate the different tables we will use in decode and > > translation. > > Yes. That's part of the job of the source layer. Have you downloaded > DRMZ80? Something very, very similar to that. > If I continue working with DRMZ80 I will can write it from memory in a few days. ;) BTW, have you changed something in DRMZ80 since the first discussion? > > Something similar as Generator does, an ISA definition. We > > can't build the tables at hand as in DRMZ80 (65536 is a lot of more bigger > > than 256!!). > > Then you create a table that handles a masked set. For example: > > EORI > > 00001010ssmmmaaa > > ss = Size > mmm= Mode > aaa= Address > > So 0a00-0bff would be handled by one routine. We create a list that has a > handler for each meta instruction that handles a given cover. Very > simple! I already did this for the emitter I wrote for the 34010. > > > definition, what info will store. And later build the definition file and > > the parser. > > Not necessary. We don't need to prefeed anything, nor generate some huge > table. Unlike the Z80, the 68K's instructions are fairly orthogonal (there > are some exceptions which is why I say *FAIRLY*). > So we won't use large decode tables? How will we decode the instruction then? How you use a mask to access in a table of functions? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 00:46:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA84866 for dynarec-outgoing; Thu, 22 Jun 2000 00:46:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 22 Jun 2000 00:52:35 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Some comments In-Reply-To: <200006220745.JAA32711@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > If I continue working with DRMZ80 I will can write it from memory in a few > days. ;) BTW, have you changed something in DRMZ80 since the first > discussion? Hm... I'm not sure, but I don't think so. > > EORI > > 00001010ssmmmaaa > > ss = Size > > mmm= Mode > > aaa= Address > > table. Unlike the Z80, the 68K's instructions are fairly orthogonal (there > > are some exceptions which is why I say *FAIRLY*). > So we won't use large decode tables? How will we decode the > instruction then? How you use a mask to access in a table of > functions? No, we don't need to. We'll have an entry like the following (for the above example): {0x0a00, 0xffc0, EORIByte, 2}, {0x0a40, 0xffc0, EORIWord, 3}, {0x0a80, 0xffc0, EORIDword, 5}, In the first example, 0xa00 is our match, 0xffc0 is our mask, and we call EORIByte when we match it and it's 2 bytes in length. So when we hit an instruction, we can do a quickie scan of the list to find our instruction emitter cover. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 00:58:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA84907 for dynarec-outgoing; Thu, 22 Jun 2000 00:58:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006220803.KAA06865@pons.ac.upc.es> Subject: Re: DYNAREC: Some comments In-Reply-To: "from Neil Bradley at Jun 22, 2000 00:52:35 am" To: dynarec@dynarec.com Date: Thu, 22 Jun 2000 10:03:25 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > If I continue working with DRMZ80 I will can write it from memory in a few > > days. ;) BTW, have you changed something in DRMZ80 since the first > > discussion? > > Hm... I'm not sure, but I don't think so. > > > > EORI > > > 00001010ssmmmaaa > > > ss = Size > > > mmm= Mode > > > aaa= Address > > > table. Unlike the Z80, the 68K's instructions are fairly orthogonal (there > > > are some exceptions which is why I say *FAIRLY*). > > > So we won't use large decode tables? How will we decode the > > instruction then? How you use a mask to access in a table of > > functions? > > No, we don't need to. We'll have an entry like the following (for the > above example): > > {0x0a00, 0xffc0, EORIByte, 2}, > {0x0a40, 0xffc0, EORIWord, 3}, > {0x0a80, 0xffc0, EORIDword, 5}, > > In the first example, 0xa00 is our match, 0xffc0 is our mask, and we call > EORIByte when we match it and it's 2 bytes in length. > > So when we hit an instruction, we can do a quickie scan of the list to > find our instruction emitter cover. > It won't be as quick as that. The table will have more than a hundred of entries easily. But perhaps we don't need such speed, the large table approach comes from interpreters (where you can stop scanning a list of instruction). In a dynarec the translation is made only once (hopefully) so we don't need to be so fast then. A thought only: a large table will speed up or not? We don't need to save memory. My first thought was it will speed up, but now I think the speed up is really poor because the translation while be (theorically only a bit of the execution time). If we made the dynarec in that way (with those small tables) while use a lot of less memory/code than StarScream!! Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 01:02:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA84935 for dynarec-outgoing; Thu, 22 Jun 2000 01:02:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 22 Jun 2000 01:09:14 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Some comments In-Reply-To: <200006220803.KAA06865@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > In the first example, 0xa00 is our match, 0xffc0 is our mask, and we call > > EORIByte when we match it and it's 2 bytes in length. > > So when we hit an instruction, we can do a quickie scan of the list to > > find our instruction emitter cover. > It won't be as quick as that. The table will have more than a hundred of > entries easily. And dwarfed by the time it takes to recompile and do memory block allocation for the emission. You're worrying about something that isn't a problem. If we want to speed it up later on, we'll just do a binary search or something else. There are *ALWAYS* solutions. You can take the upper byte and use that as a key to get you in the ballpark. > A thought only: a large table will speed up or not? We don't need to > save memory. My first thought was it will speed up, but now I think > the speed up is really poor because the translation while be (theorically > only a bit of the execution time). Well, considering that the array is 9 bytes minimum, 9*65536=really fucking big number. Really excessive and that's a shload of typing. > If we made the dynarec in that way (with those small tables) while use a > lot of less memory/code than StarScream!! Precisely! But Starscream is done that way for speed since it must interpret them on the fly. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 05:27:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA85339 for dynarec-outgoing; Thu, 22 Jun 2000 05:26:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: 68K info From: "M.I.K.e" Message-ID: <00036aa3ee54b6fa_mailit@mail.dynarec.com> Date: Thu, 22 Jun 2000 14:34:00 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com To quote Duke Nukem: "Come get some!" - In this case some information about the MC68000: ENDIANNESS First of all the 68K is big-endian while the x86 is little-endian, ie.: 68K = 0x11223344 x86 = 0x44332211 SIZE Unlike the 8086 the 68000 isn't a real 16-bit processor but a 32-bit processor with smaller busses. Just in case you are interested, these are the variants: * 68000: 16-bit data, 24-bit address * 68008: 8-bit data, 24-bit address * 68010: like 68000 but with a few additional instructions * 68020: 32-bit data, 32-bit address * 68030: adds on-chip cache and MMU * 68040: adds on-chip FPU I think will deal with the standard 68000 in the beginning so I'll deal with that one. BTW, the 68K uses DEC names for data sizes: byte, word, longword; instruction suffixes are '.b', '.w', '.l'. REGISTERS The 68K has 8 data registers (D0 to D7) and 8 address registers (A0 to A7). Most operations are faster when executed on data registers while some addressing modes can only work with address registers. The address register A7 is used as the stack pointer (SP) and there is a shadow registers A7' to function as the system stack pointer (SSP) in the supervisor mode. The remaining registers are the program counter (PC) and the status register (SR). All registers apart from SR are 32-bit. STATUS REGISTER The upper half of the status registers is the system byte containung the following information: Bit 15: Tracer Mode (whatever that is...) Bit 13: Supervisor State Bit 10-8: Interrupt Mask CCR The lower half is the condition code register with these flags: Bit 4: eXtended Bit 3: Negative (= S in x86) Bit 2: Zero (= Z in x86) Bit 1: oVerflow (= O in x86) Bit 0: Carry (= C in x86) The only flag unique to the 68K is the extended flag, which is mainly handled just like the carry flag. It is almost exclusively used in instructions like ADDX, which operate on multiword values. Because of this some instructions don't touch that bit although they modify the carry, eg. move instructions clear the carry but preserve X, rotations use the carry but don't change the extended flag. ENCODING All instructions are encoded in an even amount of bytes, which also leads to code always being word aligned and the lowest bit of the PC being cleared. ADDRESSING MODES (Instructions are processed from left to right, ie. the location on the right is the destination.) Data Register Direct: "move.w d0, d3" Address Register Direct: "movea.l d3, a1" Status Register Direct: "move.w d3, sr" Absolute Short: "move.w $1000, $2000" Absolute Long: "move.l $100000, $200000" Immediate Addressing: "addi #$20, d6" Address Register Indirect: "move.w (a0), d0" with post-increment: "move.w (a4)+, $2000" with pre-decrement: "move.w -(a3), $4000" with displacement: "move.w 256(a0), $3000" with index: "move.w 100(a0,d0), 200(a1,a2)" PC relative: "move.w d0, 100(pc)" with index: "move.w 10(pc, a1), 100(pc, d1)" The instruction set is quite orthogonal, meaning that most instructions can use all these addressing modes, but there are exceptions of course. Eg. MOVEQ is only able to transfer an 8-bit constant to a data register, but it does that very quickly (4 cycles) and the instruction is short (2 bytes). ADDX is only available in two modes: "addx dy, dx" or "addx -(ay), -(ax)". THE END? I hope this helps you to understand what we will be working with. I bet there will be some unclear points so feel free to ask. -- M.I.K.e "The two most common things in the universe are hydrogen and stupidity." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 08:49:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA85529 for dynarec-outgoing; Thu, 22 Jun 2000 08:49:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000201bfdc6a$92f16180$0100a8c0@lion> From: "Neil Griffiths" To: References: <200006220633.IAA10669@pons.ac.upc.es> Subject: Re: DYNAREC: Shall we get started? Date: Thu, 22 Jun 2000 12:00:51 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Porcierto sabes que pueola hablar un espanòl perfecto. > > Maybe. :) > > ?? It is: Por cierto sabes que puedo hablar un espanyol perfecto. > (* ny replaces another letter I dont't have in my keyboards because > it is an english keyboard, is used in some other languages for the > same sound *) Damn - I couldn't read the writing! :o > > As I can't use a fonetic alphabet in this mail I can't tell you how is > > really spelled. > > I know what you mean (I'll explain when you've replied to this e-mail!). > > ?? A guy I work with is Spanish - so I got him to translate that for me ("BTW, did you know I can speak Spanish" is a bad translation). I thought you would find it funny. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 08:49:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA85545 for dynarec-outgoing; Thu, 22 Jun 2000 08:49:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000401bfdc6a$973c0380$0100a8c0@lion> From: "Neil Griffiths" To: References: <1eckzz9.1ly837bm2gyy6M@[192.168.0.2]> <20000621234518.A9662@boris.quns.cam.ac.uk> Subject: Re: DYNAREC: Register usage Date: Thu, 22 Jun 2000 13:39:30 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > ...unless there are too many source registers for your target architecture, in > which case you're obliged to allocate them dynamically. No, I'm siding with Neil B here. The effort it would take to find out which register you need to allocate - along with the pain of having to re-reference the old register - would just make it too slow to be useful. So long as when we write the core we can create a way that the end user can allocate registers, I think that static allocation is the way to go. > I thought the 68k had more registers than the x86 (8+8 data/address registers), > or am I wrong? Maybe they're 16 bit, so you can double them up in 32-bit x86 > registers? I'm probably not paying enough attention though... It does. Lots. Many. More. Why? :o > AFAIR, there are (older?) MUL variations which must use specific registers? I > think someone else said that already. I think register-specified shifts must > use the 'cl' register for the shift amount even now though. Eh? Not that I know! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 08:49:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA85537 for dynarec-outgoing; Thu, 22 Jun 2000 08:49:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000301bfdc6a$953cd820$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: OT: Water springs found on Mars Date: Thu, 22 Jun 2000 12:22:19 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I'm not sure if any of you are big fans of space travel and everything > space, but this just totally rocks: You're right, that's really cool news! > If I had the opportunity, I'd be first in line. Second, actually. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 08:49:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA85561 for dynarec-outgoing; Thu, 22 Jun 2000 08:49:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000501bfdc6a$99213e40$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Register usage Date: Thu, 22 Jun 2000 13:41:43 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > No, you aren't, and that was the crux of my note above. You can use a > small subset of them in the target's registers (a predictable instead of > dynamic list) and just swap the others in and out of RAM. Or are we saying > the same thing, here? I agree. So long as, as mentioned before, the end-user (the emu author) can decide which registers get allocated. > EAX/EBX/ECX/EDX/EDI/ESI/EBP As general purposes registers - address or > data. And it even has 2 or 3 more hidden registers - but I'm not going to touch those with a bargepole. I've got no idea what will happen if we use those - so I won't. :) > If you want to do a register specified shift, yes, but I've yet to have to > do one in all my works of emulation. But you don't have to do: > > mov cl, 3 > shl eax, cl > > You can do: > > shl eax, 3 > > It's amazing how few people know this. I've always used the latter. I never did understand (up until last year) why people did the former. I guess this is one good thing of starting quite late on with the instruction set... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 08:49:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA85565 for dynarec-outgoing; Thu, 22 Jun 2000 08:49:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000601bfdc6a$9a81b8a0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Some comments Date: Thu, 22 Jun 2000 13:44:29 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > So we won't use large decode tables? How will we decode the > > instruction then? How you use a mask to access in a table of > > functions? > > No, we don't need to. We'll have an entry like the following (for the > above example): > > {0x0a00, 0xffc0, EORIByte, 2}, > {0x0a40, 0xffc0, EORIWord, 3}, > {0x0a80, 0xffc0, EORIDword, 5}, > > In the first example, 0xa00 is our match, 0xffc0 is our mask, and we call > EORIByte when we match it and it's 2 bytes in length. Okay. So we just use some sort of jump table (that's not the correct definition) where we can just jump into the 0x0a section and work from there - a small speed increase. I hope. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 10:14:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA85661 for dynarec-outgoing; Thu, 22 Jun 2000 10:14:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K info From: "M.I.K.e" In-Reply-To: <00036aa3ee54b6fa_mailit@mail.dynarec.com> Message-ID: <00036aa7da0df010_mailit@mail.dynarec.com> References: <00036aa3ee54b6fa_mailit@mail.dynarec.com> Date: Thu, 22 Jun 2000 19:14:40 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Sorry, forgot to mention an important thing: ADDX D0, D1 calculates D1 = D1 + D0 + X which is very similar to what ADC does. But SUBX D0, D1 calculates D1 = D1 - D0 - X while SBB does D1 = D1 - D0 + C ! Also ADDA and SUBA (calculation with an address register being the destination) don't modify *any* flags! I hope that someone really reads this... -- M.I.K.e Real computer scientists don't comment their code. The identifiers are so long they can't afford the disk space. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 11:05:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA85733 for dynarec-outgoing; Thu, 22 Jun 2000 11:05:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 22 Jun 2000 11:12:04 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K info In-Reply-To: <00036aa3ee54b6fa_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > To quote Duke Nukem: "Come get some!" - In this case some information about > the MC68000: Actually, that quote is from the movie called Army Of Darkness - Duke Nukem ripped it off. ;-) > SIZE > Unlike the 8086 the 68000 isn't a real 16-bit processor but a 32-bit > processor with smaller busses. Just in case you are interested, these are the Um... no, it's a 16 bit CPU. The "bitness" of a processor is determined by the data bus width, not the register sizes. That includes the 386EX, which is 16 bit. > * 68010: like 68000 but with a few additional instructions And more importantly, some timing changes in several of the instructions. We should probably account for this in our dynarec. > BTW, the 68K uses DEC names for data sizes: byte, word, longword; instruction > suffixes are '.b', '.w', '.l'. I call 'em UINT8, UINT16, and UINT32. There's no mistaking what they mean! > The only flag unique to the 68K is the extended flag, which is mainly handled > just like the carry flag. We can simulate this in the AUX register in the x86. Real simple. > Status Register Direct: "move.w d3, sr" > Absolute Short: "move.w $1000, $2000" > Absolute Long: "move.l $100000, $200000" > Immediate Addressing: "addi #$20, d6" Another thing to note: The opcode source/destinations are backwards. It's not algebraic! > THE END? > I hope this helps you to understand what we will be working with. I bet there > will be some unclear points so feel free to ask. Glad we have you here to bounce things off of. ;-) I did some 68K work a LONG time ago, but haven't in years, so it's good. Thanks for the refresher! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 11:08:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA85744 for dynarec-outgoing; Thu, 22 Jun 2000 11:08:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 22 Jun 2000 11:14:58 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Register usage In-Reply-To: <000501bfdc6a$99213e40$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > dynamic list) and just swap the others in and out of RAM. Or are we saying > > the same thing, here? > I agree. So long as, as mentioned before, the end-user (the emu author) can > decide which registers get allocated. I figure that we'll just set up a default of D0/D1 A0/A1 and if they want to override it, they can! There'll be some sort of interface where you can set various options, and we can get really crazy with it. We can also do things like indicate that sloppy timing is OK so we don't generate a sub edi, xxxx after every emulated instruction. > > EAX/EBX/ECX/EDX/EDI/ESI/EBP As general purposes registers - address or > > data. > And it even has 2 or 3 more hidden registers - but I'm not going to touch > those with a bargepole. I've got no idea what will happen if we use those - > so I won't. :) The debug registers? Don't go there... > > mov cl, 3 > > shl eax, cl > > You can do: > > shl eax, 3 > > It's amazing how few people know this. > I've always used the latter. I never did understand (up until last year) why > people did the former. I guess this is one good thing of starting quite late > on with the instruction set... And what's really annoying is that people bitch and gripe about things like the above and blame the x86 for being a shitty chip when they themselves don't even realize that you can do it any other way and have been able to since 1985! The x86 has only a minor few register specific operations and the lack of registers as its transgressions. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 11:09:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA85754 for dynarec-outgoing; Thu, 22 Jun 2000 11:09:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 22 Jun 2000 11:15:58 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Some comments In-Reply-To: <000601bfdc6a$9a81b8a0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > In the first example, 0xa00 is our match, 0xffc0 is our mask, and we call > > EORIByte when we match it and it's 2 bytes in length. > Okay. So we just use some sort of jump table (that's not the correct > definition) where we can just jump into the 0x0a section and work from > there - a small speed increase. I hope. :) Let's go with the search method first. Keep in mind that the time it takes to search the table will be completely dwarfed by the amount of time it'll take to allocate memory and do the recompilation. I'm still puzzled why so many of you are worried about it. Compare how much time it's spending there to the rest of the recompilation process! It's insignificant! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 14:01:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA85957 for dynarec-outgoing; Thu, 22 Jun 2000 14:01:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K info From: "M.I.K.e" In-Reply-To: Message-ID: <00036aab20f9aee2_mailit@mail.dynarec.com> References: Date: Thu, 22 Jun 2000 23:09:15 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Actually, that quote is from the movie called Army Of Darkness - Duke >Nukem ripped it off. ;-) Ah, I only have the dubbed version of Army Of Darkness (quite a funny film ;- ) so I didn't know that, but I stand corrected. So it was a quote by Ash and not by Duke. >Um... no, it's a 16 bit CPU. The "bitness" of a processor is determined by >the data bus width, not the register sizes. Hmm, hard to decide nowadays. Would you call the Pentium a 64-bit processor just because it has a 64-bit data bus? Strangely enough the SH-4 is often referred to as an 128-bit processor, although it has 32-bit integer registers, a 64-bit data bus, and only the vector FP is capable of 128-bit operations... >That includes the 386EX, which is 16 bit. Hmm, then the first IBM PC is an 8-bit computer because it only had the 8088... >> * 68010: like 68000 but with a few additional instructions >And more importantly, some timing changes in several of the >instructions. I don't have too much information about that variations or any timing changes. I just wanted to mention it for completeness. >We should probably account for this in our dynarec. If we have to ;-) >I call 'em UINT8, UINT16, and UINT32. There's no mistaking what they mean! Sure, but when dealing with 68K instructions or documentation we will be confronted with words and longwords. >We can simulate this in the AUX register in the x86. Real simple. If you say that I'll take it as a fact. Isn't the AUX flag originally for BCD operations? >Another thing to note: The opcode source/destinations are backwards. It's >not algebraic! I think I mentioned that the destination is on the right hand side, but does't do any harm to emphasize that. >Glad we have you here to bounce things off of. ;-) Well, with all those speculations about register size and numbers on this list I just couldn't resist. >I did some 68K work a LONG time ago, but haven't in years, so it's good. I think the last time I really programmed 68K assembly was back in 1993... >Thanks for the refresher! Well, you sent me a quick introduction to the 386 so it was just fair that I wrote a little bit about the 68K. >-->Neil -- M.I.K.e Decision maker, n.: The person in your office who was unable to form a task force before the music stopped. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 14:01:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA85961 for dynarec-outgoing; Thu, 22 Jun 2000 14:01:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Register usage From: "M.I.K.e" In-Reply-To: Message-ID: <00036aaaf1c04226_mailit@mail.dynarec.com> References: Date: Thu, 22 Jun 2000 22:56:03 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I figure that we'll just set up a default of D0/D1 A0/A1 and if they want >to override it, they can! There'll be some sort of interface where you can >set various options, and we can get really crazy with it. Nice idea! >We can also do >things like indicate that sloppy timing is OK so we don't generate a sub >edi, xxxx after every emulated instruction. Also a good idea that should be quite easy to implement. >-->Neil -- M.I.K.e Today is the tomorrow you worried about yesterday --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 14:19:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA85996 for dynarec-outgoing; Thu, 22 Jun 2000 14:19:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 22 Jun 2000 14:26:15 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K info In-Reply-To: <00036aab20f9aee2_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Um... no, it's a 16 bit CPU. The "bitness" of a processor is determined by > >the data bus width, not the register sizes. > Hmm, hard to decide nowadays. Would you call the Pentium a 64-bit processor > just because it has a 64-bit data bus? Um... well, uh, yes, I would because it's 64 bit internal, too. But at the same time by your definition, the Z80 is a 16 bit processor, but it's not! > >That includes the 386EX, which is 16 bit. > Hmm, then the first IBM PC is an 8-bit computer because it only had the > 8088... Correct. What's more correct is to say it's 8 bit external, 16 bit internal. > >> * 68010: like 68000 but with a few additional instructions > >And more importantly, some timing changes in several of the > >instructions. > I don't have too much information about that variations or any timing > changes. I just wanted to mention it for completeness. I've got a book that's fairly extensive about it. There are some notable differences (and when you try to use a 68010 in place of a 68K, bad things happen). > >We can simulate this in the AUX register in the x86. Real simple. > If you say that I'll take it as a fact. Isn't the AUX flag originally for BCD > operations? It's a half carry out of bit 3 into bit 4, so it's not exclusive to BCD but can be used as such. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 14:28:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA86021 for dynarec-outgoing; Thu, 22 Jun 2000 14:28:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <00036a94365461bc_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Register usage From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Thu, 22 Jun 2000 23:47:55 +0200 Message-ID: <1eclfh4.169vuui1hui9rjM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id OAA86014 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Well, welcome aboard! Thanks. > BTW, doesn't Basilisk II use the UAE core, which now has a dynarec? UAE has a 68000 dynarec but support for 68020+ instructions is missing or incorrect. Lauri (author of the BasiliskII Windows port) made some provisions for 68020 support and was able to boot up to the startup logo. > >BTW, I would have liked a PPC dynarec. Bill Huey (from vMac) is working > >on it but I don't know his progress though. > > PPC as source or as target? That processor is a real bitch! I meant PPC as source, for emulating a PowerMac ;-) ["second chance" register allocation] > If you are interested I could post the code, but it might be very buggy > because I never ran it through a compiler... I am interested, thanks. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 14:28:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA86022 for dynarec-outgoing; Thu, 22 Jun 2000 14:28:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: Subject: Re: DYNAREC: Some comments From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Thu, 22 Jun 2000 23:47:56 +0200 Message-ID: <1ecnilv.44t5bb12uzllpM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id OAA86018 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > No, we don't need to. We'll have an entry like the following (for the > above example): > > {0x0a00, 0xffc0, EORIByte, 2}, > {0x0a40, 0xffc0, EORIWord, 3}, > {0x0a80, 0xffc0, EORIDword, 5}, Should we also keep a mask of CPU id that support that kind of instruction ? What I mean is that there are some instructions available on say 68020 but not on any other kind of CPU. e.g. callm but I don't quite see its purpose or practical presence in common 68k programs. Other examples are FPU instructions only available on 68881/2 but not on an integral 68040, IIRC. But well, a dynarec FPU would be hellish ;-) > In the first example, 0xa00 is our match, 0xffc0 is our mask, and we call > EORIByte when we match it and it's 2 bytes in length. I am sorry but I don't quite understand here as some EA modes require extension words (indexed modes, namely). BTW, isn't the EORI.B taking, at the minimum, 4 bytes ? two for the core instruction: two for the immediate value. > So when we hit an instruction, we can do a quickie scan of the list to > find our instruction emitter cover. You are right: scanning the entire lis/table should not be that expensive. My current description file counts around 240 "variants" of integer instructions. Besides, if speed is really needed for finding the right instruction info, one may first sort the table/list on the 4 most significant bits, as this is done in the GNU (dis)assembler [*]. Another way would be to keep only the 10 upper bits as the 6 lower bits are generally used as EA mode specifiers. [*] see in the binutils package: opcodes/m68k-{dis,opc}.c -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 15:41:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA86133 for dynarec-outgoing; Thu, 22 Jun 2000 15:41:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001f01bfdca4$0618d060$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036aab20f9aee2_mailit@mail.dynarec.com> Subject: Re: DYNAREC: 68K info Date: Fri, 23 Jun 2000 00:42:59 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Hmm, hard to decide nowadays. Would you call the Pentium a 64-bit processor > just because it has a 64-bit data bus? Sure! :) > Hmm, then the first IBM PC is an 8-bit computer because it only had the > 8088... Absolutely, yes. The final 8 stood for 8-bit bus. The final 6 in 8086 stood for 16 bit bus. I think they got a bit lost when they came to the 386DX. :) I've just been thinking too - Intel is going to have to rename their newer chips very, very soon. They can't carry on with the Pentium series (as a name). Why? Well, PII, PIII, PIV would look crap - and you can't use PV or P5 because that was what the original Pentium was! Anyway, completely off-topic - but WTF. :) > >Another thing to note: The opcode source/destinations are backwards. It's > >not algebraic! > > I think I mentioned that the destination is on the right hand side, but > does't do any harm to emphasize that. I've been reading a little about the CPU today. That's going to confuse me. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 15:41:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA86132 for dynarec-outgoing; Thu, 22 Jun 2000 15:41:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002001bfdca4$0791b4c0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Some comments Date: Fri, 23 Jun 2000 00:44:10 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Okay. So we just use some sort of jump table (that's not the correct > > definition) where we can just jump into the 0x0a section and work from > > there - a small speed increase. I hope. :) > > Let's go with the search method first. Keep in mind that the time it takes > to search the table will be completely dwarfed by the amount of time it'll > take to allocate memory and do the recompilation. I'm still puzzled why so > many of you are worried about it. Compare how much time it's spending > there to the rest of the recompilation process! It's insignificant! I'm not worried - I'm trying to figure out how your method works! :o Anyway, a speed-up like the one I was thinking about is certainly for the end. It's certainly not important to us right now... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 22 15:53:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA86159 for dynarec-outgoing; Thu, 22 Jun 2000 15:53:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 22 Jun 2000 15:59:31 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Some comments In-Reply-To: <1ecnilv.44t5bb12uzllpM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > {0x0a00, 0xffc0, EORIByte, 2}, > > {0x0a40, 0xffc0, EORIWord, 3}, > > {0x0a80, 0xffc0, EORIDword, 5}, > Should we also keep a mask of CPU id that support that kind of > instruction ? What I mean is that there are some instructions available > on say 68020 but not on any other kind of CPU. e.g. callm but I don't > quite see its purpose or practical presence in common 68k programs. Well, the 68020 is enough of a departure from the 68K itself that a different dynarec probably makes more sense, but the 68010/68K itself may be something that indicates if it's enablable or not. We also need entires in the table that indicate if it uses flags on entry or alters flags on exit, and whether it's a terminal, conditional terminal or nonterminal. > > In the first example, 0xa00 is our match, 0xffc0 is our mask, and we call > > EORIByte when we match it and it's 2 bytes in length. > I am sorry but I don't quite understand here as some EA modes require > extension words (indexed modes, namely). Won't matter, because you'll know this from the first 16 bits of the instruction. > BTW, isn't the EORI.B taking, at the minimum, 4 bytes ? two for the core > instruction: two for the immediate value. Yes, it is. My mistake - as is the word. > Besides, if speed is really needed for finding the right instruction > info, one may first sort the table/list on the 4 most significant bits, > as this is done in the GNU (dis)assembler [*]. Another way would be to > keep only the 10 upper bits as the 6 lower bits are generally used as EA > mode specifiers. But we can defer this conversation until the end when things are up and going and we've found the recompilation to be a problem. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 00:40:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA86598 for dynarec-outgoing; Fri, 23 Jun 2000 00:40:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 23 Jun 2000 00:47:21 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Welcome to Starscream Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Some history - Starscream had a similar API to MZ80 eons ago. After much cajoling to Neill Corlett (and begging on our part so the APIs could be similar to our own cores), he tweaked them to match Retrocade's CPU cores. So the interface you'll see below is what you've seen in DRMZ80 and elsewhere in the cores I've released. ;-) By now I'm assuming that you all know what a context is. For those who don't, it's a "snapshot" or an image of an emulated processor's state. By swapping contexts in and out, you can execute bits of many cpus in succession. Starscream's context looks like this: struct S68000CONTEXT { struct STARSCREAM_MEMORYFETCH *memoryfetch; struct STARSCREAM_MEMORYIO *memoryreadbyte; struct STARSCREAM_MEMORYIO *memoryreadword; struct STARSCREAM_MEMORYIO *memorywritebyte; struct STARSCREAM_MEMORYIO *memorywriteword; void(*resethandler)(void); unsigned dreg[8]; unsigned areg[8]; unsigned asp; unsigned pc; unsigned odometer; unsigned short sr; unsigned char stopped; unsigned long cyclesneeded; unsigned char xflag; }; The fields should be fairly obvious what they do and what they are. Starscream breaks out the x flag into its own byte probably for purposes of speed and easy access. The d & a registers are taken care of above, as is the asp and program counter. The odometer is an ever increasing clock cycle count. So if you executed 10 instructions of 8 clocks each, it'd increase by 80. Starscream defines memory in three basic areas: * Execute region The execute region is where all the code fetching comes from. The memory fetch structure looks like this: struct STARSCREAM_MEMORYFETCH { unsigned lowaddr; unsigned highaddr; unsigned off; }; "off" Is really a void *, not a 32 bit offset. It points to a region where code will be executed FROM. Here's an example: UINT8 u8Region1[0x10000]; // 000000-00ffff UINT8 u8Region2[0x08000]; // 488000-48ffff UINT8 u8Region3[0x18000]; // 500000-517fff The structure for an execution memory map like above would look like this: struct STARSCREAM_MEMORYFETCH sExecMem[] = { {0x000000, 0x00ffff, (unsigned) u8Region1}, {0x488000, 0x48ffff, (unsigned) u8Region2}, {0x500000, 0x517fff, (unsigned) u8Region3}, {0xffffff, 0xffffff, NULL} // Terminator }; Whenever a fetch occcurs, this table is examined and it's fetched from the region/offset needed. * Read/write byte region This is used and accessed when a read/write byte instruction occurs. Its format is as follows: struct STARSCREAM_MEMORYIO { unsigned lowaddr; unsigned highaddr; void *memorycall; void *userdata; }; A memory map that is comprised in this fashion would look something like this: struct STARSCREAM_MEMORYIO sMemIoByteRead[] = { {0x000000, 0x00ffff, NULL, u8Region1}, {0x010000, 0x0107ff, Pokey0}, {0x018000, 0x0187ff, Pokey1}, {0xffffff, 0xffffff, NULL} // Terminator }; This is how byte read/write handlers are defined when an instruction accesses them via data access methods (and *NOT* execution). Note the first structure - because the memorycall field is set to NULL, it says "Yes, this is the proper region. However, instead of calling the function, look at userdata for the base address of memory to access." So in this case, a memory access to address 0x0007ff would access u8Region1[0x7ff]. Otherwise, in case of the pokey examples above, if an access to the region of 0x10000 and 0x107ff, the procedure Pokey0 is called to obtain the data. * Read/write word region This is identical to the read/write byte, but is a separate table that's accessed when word accesses are done. This is to eliminate dual byte calls to subordinate handlers. Dwords are just dual word reads/writes since that's how they'd appear on the 68K bus. That's it for the context and data structures. Here's a quickie introduction to the API: s68Kinit() - Initializes Starscream internally - only called once. s68Kreset() - Causes the 68K under emulation to go through a reset s68Kexec(clocks) - Causes the emulator to execute "clocks" worth of instruction time and return. 0x80000000 is returned if successful, otherwise the address where an invalid instruction or problem occurred. s68Kinterrupt(intnum) - Causes an interrupt s68KGetContextSize() - How big is the 68k's context? s68KGetContext() - Get the context structure currently being executed. s68KSetContext() - Set a new 68K context to execute s68KreadOdometer() - Reads the currently elapsed clock ticks s68KtripOdometer() - Resets the odometer ** NOTE: The above I'd call GetElapsedTicks() and have it take TRUE/FALSE as a parameter to indicate whether or not the elapsed ticks should be reset. s68KReleasetimeslice() - Causes the 68K to give up the execution cycle entirely and get out. This is handy to put in handlers to get the emulator core to stop what it's doing. So that's about it. Any immediate feedback or ideas on this? We'd just extend the context to be another structure pointer that would contain all the recompiled data. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 00:49:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA86611 for dynarec-outgoing; Fri, 23 Jun 2000 00:49:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 23 Jun 2000 00:56:09 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: 68K Optimizations? Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com One of the things that might make more sense is just to have the dynarec core allocate 16 megabytes of RAM and use that linear address for things and be done with it. It'll make the code much simpler than having sparse regions like Starscream has, and it'll also make things much, much faster. Comments? The other option is to just have it scan the tables each time it's about ready to do something. ;-( I guess it won't matter because it has to do that anyway. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 01:06:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA86640 for dynarec-outgoing; Fri, 23 Jun 2000 01:06:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006230810.KAA18307@pons.ac.upc.es> Subject: Re: DYNAREC: 68K Optimizations? In-Reply-To: "from Neil Bradley at Jun 23, 2000 00:56:09 am" To: dynarec@dynarec.com Date: Fri, 23 Jun 2000 10:10:30 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > One of the things that might make more sense is just to have the dynarec > core allocate 16 megabytes of RAM and use that linear address for things > and be done with it. It'll make the code much simpler than having sparse > regions like Starscream has, and it'll also make things much, much > faster. > I don't understand it well. Do you mean to make handle memory mallocs and frees ourselves? I thought yesterday about it, because each time you have to recompile something you have to malloc new memory, and making a call to C malloc can (I think) mean also a system call, and that can be really expensive. I would be better, as you say, to get enough memory at the start and work ourselves with it. Of course if the memory isn't enough (but this will be rare, perhaps it could be a parameter in the API) our memory functions will allocate more memory. > Comments? The other option is to just have it scan the tables each time > it's about ready to do something. ;-( I guess it won't matter because it > has to do that anyway. Here I don't understand nothing. :( What tables are you talking about? (perhaps it is a silly question) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 01:11:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA86653 for dynarec-outgoing; Fri, 23 Jun 2000 01:11:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006230816.KAA19665@pons.ac.upc.es> Subject: Re: DYNAREC: Welcome to Starscream In-Reply-To: "from Neil Bradley at Jun 23, 2000 00:47:21 am" To: dynarec@dynarec.com Date: Fri, 23 Jun 2000 10:16:22 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > So that's about it. Any immediate feedback or ideas on this? We'd just > extend the context to be another structure pointer that would contain all > the recompiled data. > You have avoided the supervisor and user memory maps. But I don't know why are they needed? I haven't found anything about them in my 68K documentation, perhaps is something about laters models? How we can extend the context and be fully StarScream compatible? And of course why the user of the core will need to handle the information about the dynamic recompilation?. Perhaps it will be better to have separate structure and API functions. Some functions specific for the dynarec would be, for example, a memory map for self-modifying regions (if we finally handle this problem), or a special function for flushing (delete) all or part of the recompiled code. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 01:14:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA86663 for dynarec-outgoing; Fri, 23 Jun 2000 01:14:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 23 Jun 2000 01:21:15 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Optimizations? In-Reply-To: <200006230810.KAA18307@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > core allocate 16 megabytes of RAM and use that linear address for things > > and be done with it. It'll make the code much simpler than having sparse > > regions like Starscream has, and it'll also make things much, much > > faster. > I don't understand it well. Do you mean to make handle memory mallocs and > frees ourselves? No. Take a look at the introduction to startscream and it should make sense. Right now with the Starscream API, the entire 16MB of address space for the 68K must have memory placed in it by way of the read/write structures. I was thinking it'd be easier (and faster) if we just had 16MB of memory to work with. Then we wouldn't have to scan the handlers. > I thought yesterday about it, because each time you > have to recompile something you have to malloc new memory, and making > a call to C malloc can (I think) mean also a system call, and that can be > really expensive. Potentially, yes, but we're locally allocating a bunch of stuff and then deleting it all - leaving only a single block. The direction you took above with your question is not what I was trying to get at. > > Comments? The other option is to just have it scan the tables each time > > it's about ready to do something. ;-( I guess it won't matter because it > > has to do that anyway. > Here I don't understand nothing. :( What tables are you talking about? > (perhaps it is a silly question) Look at the read/write memory handler tables in the "Introduction to Starscream" email I just sent. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 01:17:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA86676 for dynarec-outgoing; Fri, 23 Jun 2000 01:17:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 23 Jun 2000 01:23:43 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Welcome to Starscream In-Reply-To: <200006230816.KAA19665@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You have avoided the supervisor and user memory maps. Eh? How so? The memory maps are the same for the supervisor and user - only the "supervisor" bit gets thrown in the SR. That's all internal and has nothing to do with the context. > How we can extend the context and be fully StarScream compatible? We'll be starscream *API* compatible! If we add a field in the structure at the end that Starscream (the emulator) ignores and only we know about it, it'll be no problem. > And of > course why the user of the core will need to handle the information about > the dynamic recompilation?. Perhaps it will be better to have separate > structure and API functions. Then how do you connect the two? Each context will need its own recompilation information! What if you have 3 68000's? You want to be able to recompile and generate code for each processor. > Some functions specific for the dynarec would be, for example, a memory > map for self-modifying regions (if we finally handle this problem), or > a special function for flushing (delete) all or part of the recompiled code. That sounds like an API thing to me - yes. We certainly don't want to autodetect such a thing, as it'd just slow everything down. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 01:28:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA86692 for dynarec-outgoing; Fri, 23 Jun 2000 01:28:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006230832.KAA12668@pons.ac.upc.es> Subject: Re: DYNAREC: Welcome to Starscream In-Reply-To: "from Neil Bradley at Jun 23, 2000 01:23:43 am" To: dynarec@dynarec.com Date: Fri, 23 Jun 2000 10:32:07 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > You have avoided the supervisor and user memory maps. > > Eh? How so? The memory maps are the same for the supervisor and user - > only the "supervisor" bit gets thrown in the SR. That's all internal and > has nothing to do with the context. > Well I'm reading the Starscream doc (0.26a): struct STARSCREAM_PROGRAMREGION *s_fetch; struct STARSCREAM_DATAREGION *s_readbyte; struct STARSCREAM_DATAREGION *s_readword; struct STARSCREAM_DATAREGION *s_writebyte; struct STARSCREAM_DATAREGION *s_writeword; struct STARSCREAM_PROGRAMREGION *u_fetch; struct STARSCREAM_DATAREGION *u_readbyte; struct STARSCREAM_DATAREGION *u_readword; struct STARSCREAM_DATAREGION *u_writebyte; struct STARSCREAM_DATAREGION *u_writeword; * "s_fetch", "s_readbyte", "s_readword", "s_writebyte", and "s_writeword" are used to define the supervisor address space. "u_fetch", etc. are used to define the user address space. (see section 3.3) I can't either understand why they are needed. > > How we can extend the context and be fully StarScream compatible? > > We'll be starscream *API* compatible! If we add a field in the structure > at the end that Starscream (the emulator) ignores and only we know about > it, it'll be no problem. > Of course, you must mean the last bytes used for alignment. > > And of > > course why the user of the core will need to handle the information about > > the dynamic recompilation?. Perhaps it will be better to have separate > > structure and API functions. > > Then how do you connect the two? Each context will need its own > recompilation information! What if you have 3 68000's? You want to be able > to recompile and generate code for each processor. > We can have two sets of functions/structures. One related with the CPU (the old Starscream context) and other related with the dynarec. It will be the programmer that will have to load properly the two sets when he wants to execute something. > > Some functions specific for the dynarec would be, for example, a memory > > map for self-modifying regions (if we finally handle this problem), or > > a special function for flushing (delete) all or part of the recompiled code. > > That sounds like an API thing to me - yes. We certainly don't want to > autodetect such a thing, as it'd just slow everything down. > So it won't be a recompiler at all, just a compiler then. ;) No problem, we can let the self-modifying code problem to be handled later. The idea of letting the emu programmer handle the self-modifying code is the easier way to us. But it would be the better? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 01:35:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA86712 for dynarec-outgoing; Fri, 23 Jun 2000 01:35:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 23 Jun 2000 01:42:30 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Welcome to Starscream In-Reply-To: <200006230832.KAA12668@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Eh? How so? The memory maps are the same for the supervisor and user - > > only the "supervisor" bit gets thrown in the SR. That's all internal and > > has nothing to do with the context. > Well I'm reading the Starscream doc (0.26a): > * "s_fetch", "s_readbyte", "s_readword", "s_writebyte", and "s_writeword" > are used to define the supervisor address space. "u_fetch", etc. are > used to define the user address space. (see section 3.3) > I can't either understand why they are needed. I've never seen this. This isn't in the Starscream I'm using. It might be 68020 support. > > > How we can extend the context and be fully StarScream compatible? > > We'll be starscream *API* compatible! If we add a field in the structure > > at the end that Starscream (the emulator) ignores and only we know about > > it, it'll be no problem. > Of course, you must mean the last bytes used for alignment. No, I mean we'll just tack a void * at the end of the context and we'll be good to go. > > Then how do you connect the two? Each context will need its own > > recompilation information! What if you have 3 68000's? You want to be able > > to recompile and generate code for each processor. > We can have two sets of functions/structures. Yuck! The idea is to make it simple and easy on the programmer! Just tack a void * at the end of the context structure and have it point off to whatever dynarec junk we want it to, and only the recompiler will realize it's there. The Starscream core will still be able to use it (though it'll ignore the void *). > One related with the CPU > (the old Starscream context) and other related with the dynarec. It will > be the programmer that will have to load properly the two sets when > he wants to execute something. That's only half baked. Include a void * that contains that information in the context and internally the core can choose to ignore it or use it - depending upon whether or not we're calling the emulator or the dynarec. If we have this, then the APIs will be *IDENTICAL* between the two. Having yet another set of APIs to load and unload which dynarec stuff is going on is just wasteful. Let that be handled underneath the scene. > > That sounds like an API thing to me - yes. We certainly don't want to > > autodetect such a thing, as it'd just slow everything down. > So it won't be a recompiler at all, just a compiler then. ;) No problem, > we can let the self-modifying code problem to be handled later. The > idea of letting the emu programmer handle the self-modifying code is the > easier way to us. But it would be the better? I think so. Because it gives the opportunity for the programmer to build in a bit of smarts to call the recompiler with that information. If you happen to know, for example, that a piece of code gets written at a region, you can trap it and call the recompiler with that information. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 01:46:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA86730 for dynarec-outgoing; Fri, 23 Jun 2000 01:46:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006230847.KAA11052@pons.ac.upc.es> Subject: Re: DYNAREC: Welcome to Starscream In-Reply-To: "from Neil Bradley at Jun 23, 2000 01:42:30 am" To: dynarec@dynarec.com Date: Fri, 23 Jun 2000 10:47:40 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > That sounds like an API thing to me - yes. We certainly don't want to > > > autodetect such a thing, as it'd just slow everything down. > > So it won't be a recompiler at all, just a compiler then. ;) No problem, > > we can let the self-modifying code problem to be handled later. The > > idea of letting the emu programmer handle the self-modifying code is the > > easier way to us. But it would be the better? > > I think so. Because it gives the opportunity for the programmer to build > in a bit of smarts to call the recompiler with that information. If you > happen to know, for example, that a piece of code gets written at a > region, you can trap it and call the recompiler with that information. > The problem is that not all of the emulator authors has as many experience or knowledge as (let's call them) a core author. Some will know about self-modifying code and how to handle it and others not. A default self-modifying code handler in the dynarec would be useful. Perhaps it would be slower but what the hell it will be then the emu author problem. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 01:48:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA86740 for dynarec-outgoing; Fri, 23 Jun 2000 01:48:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 23 Jun 2000 01:55:17 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Welcome to Starscream In-Reply-To: <200006230847.KAA11052@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > in a bit of smarts to call the recompiler with that information. If you > > happen to know, for example, that a piece of code gets written at a > > region, you can trap it and call the recompiler with that information. > The problem is that not all of the emulator authors has as many experience > or knowledge as (let's call them) a core author. Some will know about > self-modifying code and how to handle it and others not. A default > self-modifying code handler in the dynarec would be useful. Perhaps it > would be slower but what the hell it will be then the emu author problem. We'll have the basic functionality in the Dynarec core to say "Chuck this entire region". How we hook it up later on in the project is irrelevant. I don't want to put this in now, and don't want it in by default - period - as most recompiled code that's going to be used is static anyway (ROM IMAGES!). -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 01:58:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA86755 for dynarec-outgoing; Fri, 23 Jun 2000 01:58:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006230902.LAA29543@pons.ac.upc.es> Subject: Re: DYNAREC: Welcome to Starscream In-Reply-To: "from Neil Bradley at Jun 23, 2000 01:55:17 am" To: dynarec@dynarec.com Date: Fri, 23 Jun 2000 11:02:50 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > We'll have the basic functionality in the Dynarec core to say "Chuck this > entire region". How we hook it up later on in the project is irrelevant. I > don't want to put this in now, and don't want it in by default - period - > as most recompiled code that's going to be used is static anyway (ROM > IMAGES!). > Well. Of course it will be silly to talk about such advance topics before having a simple dynarec built. Perhaps first we make it as you want and later we will see what we can add or extend (for example paged transmap which won't be needed in an usual arcade). > -->Neil Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 02:02:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA86925 for dynarec-outgoing; Fri, 23 Jun 2000 02:02:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <200006230810.KAA18307@pons.ac.upc.es> Subject: Re: DYNAREC: 68K Optimizations? From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Fri, 23 Jun 2000 11:21:38 +0200 Message-ID: <1ecoe2o.opvqpi1fm416uM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id CAA86922 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I don't understand it well. Do you mean to make handle memory mallocs and > frees ourselves? No, I think he meant to hold all the 68000 address space at once, in a big chunk of memory. 68000 data bus is 24 bits, hence 16 MB addressable. No memory banking will be needed, and the translation from virtual to physical host address will just require an offset. On the other hand, we definitively exclude 68020+ processors. Besides, allocating 16 MB may look too big but as on most systems, only pages that are really accessed reside in RAM, this won't be a problem. > I thought yesterday about it, because each time you have to recompile > something you have to malloc new memory, and making a call to C malloc can > (I think) mean also a system call, and that can be really expensive. This is another problem that can be solved with "lazy (de)allocation". I mean, when a block is no longer needed, just keep it in a stack of blocks. Then, next time we need a new block, pick up one. If the size is not enough, call realloc() and reajust the internal block size of the structure. System-dependant routines could also be used: mmap(), mremap(), etc. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 03:08:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA87002 for dynarec-outgoing; Fri, 23 Jun 2000 03:08:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006230851.KAA12009@pons.ac.upc.es> Subject: Re: DYNAREC: 68K Optimizations? In-Reply-To: "from Neil Bradley at Jun 23, 2000 01:21:15 am" To: dynarec@dynarec.com Date: Fri, 23 Jun 2000 10:51:28 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > No. Take a look at the introduction to startscream and it should make > sense. Right now with the Starscream API, the entire 16MB of address space > for the 68K must have memory placed in it by way of the read/write > structures. I was thinking it'd be easier (and faster) if we just had 16MB > of memory to work with. Then we wouldn't have to scan the handlers. > I'm lost, sorry. I don't understand a bit. You mean all the memory map must be defined in memory? It musn't because it will be imposible. What happens with memory mapped IO? Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 03:20:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA87023 for dynarec-outgoing; Fri, 23 Jun 2000 03:20:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006231021.MAA08237@pons.ac.upc.es> Subject: Re: DYNAREC: 68K Optimizations? In-Reply-To: <1ecoe2o.opvqpi1fm416uM@[192.168.0.2]> "from Gwenole Beauchesne at Jun 23, 2000 11:21:38 am" To: dynarec@dynarec.com Date: Fri, 23 Jun 2000 12:21:09 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com It seems my mails are being delayed somewhere ... BTW a teacher (an a program in TV I saw last week) tell me about the amount of "personal" info there are in the net. It seems you can get info about everyone. I tried it and I found, well or perhaps not. Griffiths and Koenig seem really common names and I don't have much time. But a newcomer seem more easy: http://wwwusers.imaginet.fr/~clairer/pages/tronches/atoh.html (or perhaps not) I haven't tried with myself (I think it will be harder though). Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 03:23:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA87033 for dynarec-outgoing; Fri, 23 Jun 2000 03:23:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006230920.LAA26129@pons.ac.upc.es> Subject: Re: DYNAREC: 68K Optimizations? In-Reply-To: <1ecoe2o.opvqpi1fm416uM@[192.168.0.2]> "from Gwenole Beauchesne at Jun 23, 2000 11:21:38 am" To: dynarec@dynarec.com Date: Fri, 23 Jun 2000 11:20:08 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > I don't understand it well. Do you mean to make handle memory mallocs and > > frees ourselves? > > No, I think he meant to hold all the 68000 address space at once, in a > big chunk of memory. 68000 data bus is 24 bits, hence 16 MB addressable. > No memory banking will be needed, and the translation from virtual to > physical host address will just require an offset. > But this is against memory maps. If we are using memory maps we can't have all the memory in our own buffer. And it's a waste of memory (well perhaps it isn't as bad as this). Ummm... I can't see any sense in this for data, perhaps for code, but it will be accessed only inside the dynarec, not in the recompiled code. I must have a really bad day with this subject, it seems some of my neurons have gone holiday. ;) > On the other hand, we definitively exclude 68020+ processors. Besides, > allocating 16 MB may look too big but as on most systems, only pages > that are really accessed reside in RAM, this won't be a problem. > Well 68020+ procs will come later. > > I thought yesterday about it, because each time you have to recompile > > something you have to malloc new memory, and making a call to C malloc can > > (I think) mean also a system call, and that can be really expensive. > > This is another problem that can be solved with "lazy (de)allocation". I > mean, when a block is no longer needed, just keep it in a stack of > blocks. Then, next time we need a new block, pick up one. If the size is > not enough, call realloc() and reajust the internal block size of the > structure. > I think it can be also useful to separate the memory allocation for recompiled blocks and for translation structures. The recompiled blocks will be created once (an most of cases) never deallocated. The translation structures will be allocated and deallocated a lot of time, everytime a new block of code is translated. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 04:52:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA87116 for dynarec-outgoing; Fri, 23 Jun 2000 04:52:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Register usage From: "M.I.K.e" In-Reply-To: <1eclfh4.169vuui1hui9rjM@[192.168.0.2]> Message-ID: <00036ab783521cd2_mailit@mail.dynarec.com> References: <1eclfh4.169vuui1hui9rjM@[192.168.0.2]> Date: Fri, 23 Jun 2000 13:55:44 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Mail-It_--335000660" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --Mail-It_--335000660 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit >UAE has a 68000 dynarec but support for 68020+ instructions is missing >or incorrect. Lauri (author of the BasiliskII Windows port) made some >provisions for 68020 support and was able to boot up to the startup >logo. I didn't know that. I only read somewhere that it was using the UAE core. I have to admit that I'm more interested in BeBasilisk, but that doesn't seem to use the dynarec, maybe due to PPC compatibility. >I meant PPC as source, for emulating a PowerMac ;-) Ah, that could be hard! But it should be possible of course. >> If you are interested I could post the code, but it might be very buggy >> because I never ran it through a compiler... >I am interested, thanks. It should be attached. I hope I don't have too many errors in it... But it's relatively well documented so you shouldn't have too much problems to catch the basic idea. When taking a look at it after all that time I wondered why I didn't cache only destination registers like Jules does it in ARMphetamine. But it's quite obvious: I wanted to generate code for the ARM (a load/store architecture) so I need a hardware register for each simulated register during the operation anyway. This also shows that we need an alternative dynamic register allocation for RISC architectures since the static allocation would produce too many loads and stores (unless you have one hardware register for almost each simulated one) which kills the power of RISC! >Gwenolé Beauchesne -- M.I.K.e "Every morning, I get up and look through the 'Forbes' list of the richest people in America. If I'm not there, I go to work" -- Robert Orben --Mail-It_--335000660 Content-Type: text/x-source-code; name="regalloc.c" Content-Transfer-Encoding: base64 Content-Disposition: Attachment; filename="regalloc.c" LyogRFlOQVJFQyAgICAgICAgICAgICAgICAqLwovKiByZWdpc3RlciBhbGxvY2F0aW9uICAgICov Ci8qIGJ5IE0uSS5LLmUsIDE5OTktMDgtMjcgKi8KCiNpbmNsdWRlICJyZWdhbGxvYy5oIgojaW5j bHVkZSAiZ2VuYXJtLmgiCiNpbmNsdWRlICJiaW50cmFucy5oIgoKdHlwZWRlZiBzdHJ1Y3QgSGFy ZFJlZ2lzdGVyCnsKICBpbnQgaG9sZHM7ICAgLyogaG9sZHMgU29mdFJlZywgLTE9ZnJlZSAgICAg ICAgICAgICAgICAgICAgKi8KICBpbnQgcmVmOyAgICAgLyogcmVnaXN0ZXIgaGFzIGJlZW4gcmVm ZXJlbmNlZCByZWNlbnRseSAgICAgKi8KICBpbnQgZGlydHk7ICAgLyogcmVnaXN0ZXIgaXMgbW9k aWZpZWQgYW5kIG11c3QgYmUgc3RvcmVkICAgKi8KICBpbnQgbG9hZGVkOyAgLyogdmFsdWUgb2Yg dGhlIHNpbXVsYXRlZCByZWdpc3RlciBpcyBjYWNoZWQgKi8KfTsKCkhhcmRSZWdpc3RlciBIYXJk UmVnW0hBUkRSRUdTXTsKaW50IFNpbVJlZ0NhY2hlW1NJTVJFR1NdOwoKaW50IHJlZ19jbG9jayA9 IDA7ICAgICAvKiByZWdpc3RlciBwb2ludGVyIGZvciBzZWNvbmQgY2hhbmNlIGFsZ29yaXRobSAq LwppbnQgbWF4X3JlZ191c2VkID0gMDsgIC8qIGZlYXR1cmUgbm90IHV0aWxpemVkIHlldCAgICAg ICAgICAgICAgICAgICAgICovCgp2b2lkIGluaXRfcmVnYWxsb2MoKQp7CiAgaW50IGk7CiAgZm9y IChpID0gMDsgaSA8IEhBUkRSRUdTOyBpKyspICAvKiBpbml0IGhhcmR3YXJlIHJlZ2lzdGVycyAq LwogIHsKICAgIEhhcmRSZWdbaV0uaG9sZHMgID0gLTE7ICAvKiBob2xkcyBub3RoaW5nICAgICAg ICAgICAgICAgICovCiAgICBIYXJkUmVnW2ldLnJlZiAgICA9ICAwOyAgLyogd2Fzbid0IHJlZmVy ZW5jZWQgICAgICAgICAgICAqLwogICAgSGFyZFJlZ1tpXS5kaXJ0eSAgPSAgMDsgIC8qIHdhc24n dCBtb2RpZmllZCAgICAgICAgICAgICAgKi8KICAgIEhhcmRSZWdbaV0ubG9hZGVkID0gIDA7ICAv KiBkb2Vzbid0IGNvbnRhaW4gbG9hZGVkIHZhbHVlICovCiAgfQogIGZvciAoaSA9IDA7IGkgPCBT SU1SRUdTOyBpKyspICAvKiBpbml0IHNpbXVsYXRlZCByZWdpc3RlcnMgKi8KICAgIFNpbVJlZ0Nh Y2hlW2ldID0gLTE7ICAgICAgICAgLyogbm90IGNhY2hlZCB5ZXQgICAgICAgICAgICovCiAgcmVn X2Nsb2NrID0gMDsgIC8qIHNldCByZWdpc3RlciBjbG9jayB0byBmaXJzdCByZWdpc3RlciAqLwp9 CgovKiBjYWNoZSBzaW11bGF0ZWQgcmVnaXN0ZXIgc3JlZyBhbmQgcmV0dXJuIGhhcmR3YXJlIHJl Z2lzdGVyICovCmludCBjYWNoZV9yZWdpc3RlcihpbnQgc3JlZykKewogIGludCBmb3VuZCA9IDA7 CiAgaWYgKFNpbVJlZ0NhY2hlW3NyZWddID49IDApICAgICAgICAgICAgLyogcmVnaXN0ZXIgYWxy ZWFkeSBjYWNoZWQgKi8KICAgIEhhcmRSZWdbU2ltUmVnQ2FjaGVbc3JlZ11dLnJlZiA9IDE7ICAv KiByZWdpc3RlciBpcyByZWZlcmVuY2VkICAqLwogIGVsc2UgIC8qIGFsbG9jYXRlIG5ldyByZWdp c3RlciAqLwogIHsKICAgIHdoaWxlICghZm91bmQpCiAgICB7CiAgICAgIGlmIChIYXJkUmVnW3Jl Z19jbG9ja10ucmVmID09IDApICAvKiBMZWFzdCBSZWNlbnRseSBVc2VkICovCiAgICAgIHsKICAg ICAgICBpZiAoSGFyZFJlZ1tyZWdfY2xvY2tdLmhvbGRzID49IDAgJiYgSGFyZFJlZ1tyZWdfY2xv Y2tdLmRpcnR5ICE9IDApCiAgICAgICAgICBnZW5TVE9SRVJFRyhyZWdfY2xvY2ssIEhhcmRSZWdb cmVnX2Nsb2NrXS5ob2xkcyk7CiAgICAgICAgLyogaG9sZHMgZGlydHkgcmVnaXN0ZXIgd2hpY2gg bXVzdCBiZSBzdG9yZWQgKi8KICAgICAgICBTaW1SZWdDYWNoZVtzcmVnXSA9IHJlZ19jbG9jazsg ICAgLyogcmVnaXN0ZXIgYWxsb2NhdGVkICovCiAgICAgICAgSGFyZFJlZ1tyZWdfY2xvY2tdLmhv bGRzICA9IHNyZWc7CiAgICAgICAgSGFyZFJlZ1tyZWdfY2xvY2tdLnJlZiAgICA9IDE7CiAgICAg ICAgSGFyZFJlZ1tyZWdfY2xvY2tdLmRpcnR5ICA9IDA7CiAgICAgICAgSGFyZFJlZ1tyZWdfY2xv Y2tdLmxvYWRlZCA9IDA7CiAgICAgICAgZm91bmQgPSAxOwogICAgICB9CiAgICAgIGVsc2UgIC8q IHNlY29uZCBjaGFuY2UgYWxnb3JpdGhtICovCiAgICAgIHsKICAgICAgICBpZiAoSGFyZFJlZ1ty ZWdfY2xvY2tdLmhvbGRzID49IDApICAvKiBjYWNoZWQgcmVnaXN0ZXIgICAgICAgICAqLwogICAg ICAgICAgSGFyZFJlZ1tyZWdfY2xvY2tdLnJlZiA9IDA7ICAgICAgIC8qIGdpdmUgaXQgYSBzZWNv bmQgY2hhbmNlICovCiAgICAgIH0KICAgICAgcmVnX2Nsb2NrID0gKHJlZ19jbG9jaysrKSAlIEhB UkRSRUdTOyAgLyogY3ljbGUgdGhyb3VnaCByZWdpc3RlciBjYWNoZXMgKi8KICAgIH0KICB9CiAg cmV0dXJuIFNpbVJlZ0NhY2hlW3NyZWddOwp9CgovKiBjYWNoZSB2YWx1ZSBvZiBzaW11bGF0ZWQg cmVnaXN0ZXIgc3JlZyBhbmQgcmV0dXJuIGhhcmR3YXJlIHJlZ2lzdGVyICovCmludCBzb3VyY2Vf cmVnaXN0ZXIoaW50IHNyZWcpCnsKICBpbnQgY2FjaGUgPSBjYWNoZV9yZWdpc3RlcihzcmVnKTsg IC8qIGNhY2hlIHJlZ2lzdGVyIHNyZWcgKi8KICBpZiAoSGFyZFJlZ1tjYWNoZV0ubG9hZGVkID09 IDAgJiYgSGFyZFJlZ1tjYWNoZV0uZGlydHkgPT0gMCkgIC8qIG5vIHByaW9yIGxvYWQgKi8KICB7 CiAgICBnZW5MT0FEUkVHKGNhY2hlLCBzcmVnKTsgICAgLyogZ2VuZXJhdGUgaW5zdHJ1Y3Rpb24g d2hpY2ggbG9hZHMgdmFsdWUgaW50byByZWdpc3RlciAqLwogICAgSGFyZFJlZ1tjYWNoZV0ubG9h ZGVkID0gMTsgIC8qIHZhbHVlIGhhcyBiZWVuIGxvYWRlZCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKi8KICB9CiAgcmV0dXJuIGNhY2hlOyAgLyogcmV0dXJuIG51bWJlciBvZiBoYXJk d2FyZSByZWdpc3RlciAqLwp9CgovKiBjYWNoZSBkZXN0aW5hdGlvbiByZWdpc3RlciBvZiBhbiBv cGVyYXRpb24gKi8KaW50IGRlc3RfcmVnaXN0ZXIoaW50IHNyZWcpCnsKICBpbnQgY2FjaGUgPSBj YWNoZV9yZWdpc3RlcihzcmVnKTsgIC8qIGNhY2hlIHJlZ2lzdGVyIHNyZWcgICAgICAgICAgICAg ICAgICAqLwogIEhhcmRSZWdbY2FjaGVdLmRpcnR5ID0gMTsgICAgICAgICAgLyogZGVzdGluYXRp b24gcmVnaXN0ZXIgd2lsbCBiZSBjaGFuZ2VkICovCiAgcmV0dXJuIGNhY2hlOwp9CgovKiBmcmVl IGFsbCBhbGxvY2F0ZWQgcmVnaXN0ZXJzICovCnZvaWQgZmluYWxpemVfcmVnYWxsb2MoKQp7CiAg aW50IGk7CiAgZm9yIChpID0gMDsgaSA8IEhBUkRSRUdTOyBpKyspCiAgICBpZiAoSGFyZFJlZ1tp XS5ob2xkcyA+PSAwICYmIEhhcmRSZWdbaV0uZGlydHkgIT0gMCkKICAgICAgZ2VuU1RPUkVSRUco aSwgSGFyZFJlZ1tpXS5ob2xkcyk7CiAgLyogb25seSBkaXJ0eSByZWdpc3RlcnMgbmVlZCB0byBi ZSBzdG9yZWQ7IGFycmF5cyBhcmUgaW5pdGlhbGl6ZWQgaW4gbmV4dCBibG9jayAqLwp9CgovKiBF T0YgKi8K --Mail-It_--335000660-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 10:36:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA87396 for dynarec-outgoing; Fri, 23 Jun 2000 10:34:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <200006231021.MAA08237@pons.ac.upc.es> Subject: Re: DYNAREC: 68K Optimizations? From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Fri, 23 Jun 2000 19:53:44 +0200 Message-ID: <1ecoydp.u9axqi1bt2b28M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id KAA87393 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Griffiths and Koenig seem really common names and I don't have much time. Have you ever heard of the "Koenig lookup" ? I am sorry but don't count on me to explain what this thing is... > But a newcomer seem more easy: > http://wwwusers.imaginet.fr/~clairer/pages/tronches/atoh.html In fact I agreed to, and my photograph did not appear by magical powers. ;-) In France, one cannot put up any personal data without the consent of the person concerned. Furthermore, "any" list of names shall be registered to the CNIL (Commission Nationale de l'Informatique et des Libertés). I don't have the official translation into English but this is close to a watchdog committee that supervises the application of data protection legislation. For example: say company X has a mailing containing my full name and address. One day they decide to send me unsolicited {snail, e, whatsoever} mail, if friendly arrangements could not be made, I can tell the CNIL about the problem and they would do the rest. A short story: I once went on the Microsoft website. I downloaded something and made sure to tick the box telling "no, I don't want to receive information from Microsoft". Guess what ? Later, I received mail from them. First, I tried to "unsubscribe" by following their directions. This did not work. A few weeks later, I received again some mail from them. I was fed up, in my return mail, I "threatened" them to contact the CNIL about that if they didn't remove me from their list within the next XXX days. I don't know if any physical person read that mail, since I thought a robot was probably in charge of unsubscriptions, but I did not receive any mail any longer... Coincidence ? Maybe. BTW, how did you get with that address ? Did you just type my name in your favorite search engine ? Are you undergoing investigations about any newcomer ? ;-) Last note: I think it is now public knowledge that Intelligence Agencies (e.g. NSA in the USA, DGSE in France, etc.) have a bunch of tools in charge of retrieving as many information as possible about anything. For example: there is a program (Taïga) that is able to scan newgroups, websites about certain words: not only related to keywords but to the full semantic of a sentence as well. Another program is able to build a big graph of a site with statistics about certain keywords appearing in various colors on the graph. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 14:14:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA87557 for dynarec-outgoing; Fri, 23 Jun 2000 14:14:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 23 Jun 2000 14:20:54 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Optimizations? In-Reply-To: <1ecoe2o.opvqpi1fm416uM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I don't understand it well. Do you mean to make handle memory mallocs and > > frees ourselves? > No, I think he meant to hold all the 68000 address space at once, in a > big chunk of memory. 68000 data bus is 24 bits, hence 16 MB addressable. > No memory banking will be needed, and the translation from virtual to > physical host address will just require an offset. Yes, precisely. This would greatly improve memory region access, but alas, when we do this we'll have to scan the table anyway to look for handlers. It's not that much extra work for the CPU, so forget I even brought it up. ;-( > > I thought yesterday about it, because each time you have to recompile > > something you have to malloc new memory, and making a call to C malloc can > > (I think) mean also a system call, and that can be really expensive. > This is another problem that can be solved with "lazy (de)allocation". I > mean, when a block is no longer needed, just keep it in a stack of > blocks. Then, next time we need a new block, pick up one. If the size is > not enough, call realloc() and reajust the internal block size of the > structure. Very good idea. Having a very quick opcode structure allocation routine would be quite nice. So when we get rid of an opcode structure, it would take that allocated opcode structure and add it to the beginning of a linked list of free opcode blocks. Quite snappy. > System-dependant routines could also be used: mmap(), mremap(), etc. I don't like using system dependent routines if I can avoid it. You never know what you're getting into. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 14:15:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA87570 for dynarec-outgoing; Fri, 23 Jun 2000 14:15:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 23 Jun 2000 14:22:06 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Optimizations? In-Reply-To: <200006230851.KAA12009@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > No. Take a look at the introduction to startscream and it should make > > sense. Right now with the Starscream API, the entire 16MB of address space > > for the 68K must have memory placed in it by way of the read/write > > structures. I was thinking it'd be easier (and faster) if we just had 16MB > > of memory to work with. Then we wouldn't have to scan the handlers. > I'm lost, sorry. I don't understand a bit. You mean all the memory map > must be defined in memory? It musn't because it will be imposible. What > happens with memory mapped IO? I was talking about the case where there were no handlers for a specific region. It would be very easy to just have a piece of code do a quick move into the memory location (when it's RAM) if it's a contiguous 16 megabyte chunk, but scanning those tables isn't exactly a hard thing to do. Forget that I brought it up. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 14:17:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA87579 for dynarec-outgoing; Fri, 23 Jun 2000 14:17:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 23 Jun 2000 14:24:31 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Optimizations? In-Reply-To: <200006230920.LAA26129@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > No memory banking will be needed, and the translation from virtual to > > physical host address will just require an offset. > But this is against memory maps. If we are using memory maps we can't > have all the memory in our own buffer. And it's a waste of memory (well It's a serious waste of memory. For example, Food Fight only has about 32K of RAM, and allocating 16 megabyte for it is just silly. But I thought it might give us a huge speed advantage, but it gives us a minimal one at best. It would allow the code that's doing the write to just write to an address + offset rather than having to scan the memory map, but I've found the memory map will have to be scanned regardless. > > On the other hand, we definitively exclude 68020+ processors. Besides, > > allocating 16 MB may look too big but as on most systems, only pages > > that are really accessed reside in RAM, this won't be a problem. > Well 68020+ procs will come later. It really deserves a different Dynarec. The 68K and the 68020 are very, very different beasts. > I think it can be also useful to separate the memory allocation for recompiled > blocks and for translation structures. The recompiled blocks will be created > once (an most of cases) never deallocated. The translation structures will > be allocated and deallocated a lot of time, everytime a new block of code > is translated. Yep - I agree wholeheartedly. I'll include this in the dynarec core. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 16:31:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA87711 for dynarec-outgoing; Fri, 23 Jun 2000 16:31:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003601bfdd74$2e8869e0$0100a8c0@lion> From: "Neil Griffiths" To: References: <1ecoydp.u9axqi1bt2b28M@[192.168.0.2]> Subject: Re: DYNAREC: 68K Optimizations? Date: Sat, 24 Jun 2000 01:36:02 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >BTW, how did you get with that address ? >Did you just type my name in your favorite search engine ? >Are you undergoing investigations about any newcomer ? ;-) Heh. I didn't look but I reckon I can find info on most things pretty quickly. It's especially true when the person has a rare name. You'd have one hell of a time trying to find out about me because both of my names are popular. However, it's much more likely because I'm fairly well known in the 3D graphics card business. You'll certainly find stuff on me. Though I doubt (and hope!) that you won't find any pictures - I don't know of any that are online. :) >Last note: I think it is now public knowledge that Intelligence Agencies >(e.g. NSA in the USA, DGSE in France, etc.) have a bunch of tools in >charge of retrieving as many information as possible about anything. For >example: there is a program (Taïga) that is able to scan newgroups, >websites about certain words: not only related to keywords but to the >full semantic of a sentence as well. Another program is able to build a >big graph of a site with statistics about certain keywords appearing in >various colors on the graph. The scary thing is that some are available for public use. Like this one! http://www.bpent.com/fbi Just don't over-use it. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 16:34:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA87723 for dynarec-outgoing; Fri, 23 Jun 2000 16:34:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 23 Jun 2000 16:41:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Skeleton! Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com The initial skeleton for DR68K (for lack of a better name) is available: http://www.synthcom.com/~neil/dr68k062300.zip Some notes: * This is just to give you all an idea of how I think things should be laid out * Don't try to compile anything yet (though the memory.c and dynarec.c modules compile with no errors or warnings) * Makefiles have not been created, but we've got separate directories for each platform Here's the description of all the subdirs /platform - Place where the platform extensions should go (for Food Fight in this case) /osdep - Place where OS dependent code goes /objs - Place where object files go /sources - Place where source layer code goes /targets - Place where target layer emitters go /disasm - Place where the disassemblers go I'll work up the dr68k core API sometime tonight and begin working on the core code itself (including getting a makefile going for DJGPP - or gcc). Hey Neil, want to work on a DSW/DSP file set for this project? The directory hierarchy should be obvious where things go. And Mike, you can do the BeOS version if you'd like. Let's rock on this! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 23 21:31:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA87944 for dynarec-outgoing; Fri, 23 Jun 2000 21:31:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 23 Jun 2000 21:38:05 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Hehehehehehe Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I guess I scared the hell out of you guys. The only one who really piped up was Victor. ;-) Or are you all out getting pissed or laid or something? -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 24 07:08:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA90622 for dynarec-outgoing; Sat, 24 Jun 2000 07:08:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K Optimizations? From: "M.I.K.e" In-Reply-To: <1ecoydp.u9axqi1bt2b28M@[192.168.0.2]> Message-ID: <00036acd7caeeccb_mailit@mail.dynarec.com> References: <1ecoydp.u9axqi1bt2b28M@[192.168.0.2]> Date: Sat, 24 Jun 2000 16:08:42 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Have you ever heard of the "Koenig lookup" ? Sure, this always happens when I'm acting like bookworm again ;-) >I am sorry but don't count on me to explain what this thing is... Why not? >In fact I agreed to, and my photograph did not appear by magical powers. >;-) Damn! Yet another of these mortal creatures! ;-) >Are you undergoing investigations about any newcomer ? ;-) Sure! Remember Big Brother is watching you! ;-) >Gwenolé Beauchesne -- M.I.K.e "All my life I wanted to be someone; I guess I should have been more specific." -- Jane Wagner --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 24 14:10:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA90942 for dynarec-outgoing; Sat, 24 Jun 2000 14:08:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003f01bfde29$7162f7c0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Hehehehehehe Date: Sat, 24 Jun 2000 23:10:42 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I guess I scared the hell out of you guys. The only one who really piped > up was Victor. ;-) Or are you all out getting pissed or laid or something? Mummmmmmmy! I'm scaaaaared! ;) Actually, you're pretty much correct. I was out last night - definitely doing the former and doing my best to do the latter. :)) The worrying thing is that I sent a message last night to the list. I don't actually remember sending that. That's quite worrying! Was cool last night. Met two girls interested in graphics (one of them into 3D - wahey!) and another girl who is the editor (or co-editor, I'm not quite sure) of a computer magazine over here. Which led talk onto viruses (why the F**K are people so worried?!) and stuff for a while. I now feel the obligation to write an OS that executes anything... executable without the user wanting to. The OS will execute everything it can. That way we can be sure that if a virus exists, it'll start working. Oh yes, I've got to execute all e-mail attachments - and I've got to find some way of executing text files. Yes. Because, obviously, viruses can be contained in text files. Although, now I've said that, I can see a reply saying "But .vbs files are a text file!". But I mean something with a .txt extension. *sigh* I'm glad I've said that. I can't believe how much the media hypes up these things. If you are a moderately security concious computer user, you shouldn't really be at much risk from getting a virus. People at the most risk are office workers (IMO, of course). But the best quote has got to be from a British newspaper - "The only people who are safe from being affected by the ILOVEYOU virus are users of the Lycos Operating System". Yes, "Lycos Operating System". National journalists eh? I won't say anything about computer journalists because I'm hoping that they actually know something about the topic. It can't be guaranteed, but it would be nice to think so... ... Oh yes, had a guy from a Japanese computer magazine write the other day. Want to put some software that I co-wrote on their CD - and then have an article in the magazine describing how to use it. How cool is that? Well... I'm impressed anyway! Oops, completely off-topic. Sorry. :) Getting back to dynarec topics, I'll download the skeleton in a few seconds - then I'll look at it and see what I can come up with. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 24 14:10:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA90943 for dynarec-outgoing; Sat, 24 Jun 2000 14:08:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004001bfde29$7298b8a0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Skeleton! Date: Sat, 24 Jun 2000 23:12:41 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I'll work up the dr68k core API sometime tonight and begin working on the > core code itself (including getting a makefile going for DJGPP - or > gcc). Hey Neil, want to work on a DSW/DSP file set for this project? The > directory hierarchy should be obvious where things go. And Mike, you can > do the BeOS version if you'd like. I'll get the project file sorted ASAP. I guess I should put VC back on. :) > Let's rock on this! Yeah! Everybody in the house, let's paaaaaaarty! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 24 14:24:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA90968 for dynarec-outgoing; Sat, 24 Jun 2000 14:24:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000901bfde2b$8831fa80$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Skeleton! Date: Sat, 24 Jun 2000 23:27:44 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Let's rock on this! Well, I've just done a little rocking (well... more of a slight tremble really) and had a look. I take it that some of this stuff you had before? There seems to be quite a bit in the food fight PE (I knew being on the retrobeta mailing list would be good for something!) - I take it this is from Retrocade? If not then my, you *have* been a busy boy haven't you? ;) Okay, now we need to discuss how we're going to split the tasks between us. Given that there's 5 of us and given how complex this can be then there's plenty to do. The best way, IMO, is to create a list of what needs doing and then volunteer for each task. I know that there's 2 x86 asm coders on this (2 x Neil!) so I guess it's pretty obvious which parts we'll end up doing. Is anybody else good with x86 asm? Although I'd like to do this part, I don't want it to be my *sole* part! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 24 15:13:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA91025 for dynarec-outgoing; Sat, 24 Jun 2000 15:13:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 24 Jun 2000 15:20:55 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Skeleton! In-Reply-To: <000901bfde2b$8831fa80$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Let's rock on this! > Well, I've just done a little rocking (well... more of a slight tremble > really) and had a look. I take it that some of this stuff you had before? Yes. Things like the memory allocation routines and the basic initialization (and disassemblers) don't need to change. > There seems to be quite a bit in the food fight PE (I knew being on the > retrobeta mailing list would be good for something!) - I take it this is > from Retrocade? If not then my, you *have* been a busy boy haven't you? ;) Yes, it's from Retrocade. We'll have to hack it up for the sake of the dynarec. > Okay, now we need to discuss how we're going to split the tasks between us. > Given that there's 5 of us and given how complex this can be then there's > plenty to do. The best way, IMO, is to create a list of what needs doing and > then volunteer for each task. I know that there's 2 x86 asm coders on this > (2 x Neil!) so I guess it's pretty obvious which parts we'll end up doing. I had some thoughts on this. First of all, I think I should just go ahead and get the basic infrastructure working since I already know this stuff. I see the tasks being split up to: * Creating x86 opcode generators (I.E. things like X86MovReg32Imm(), X86PushReg32(), etc..) * Creating covers for each of the 68K opcodes I imagine that step #1 above will just happen as a matter of course. As we need more obscure instructions, we'll just start adding new ones in. Personally, I didn't like the way I did the Genx86Op() call in the DRMZ80 stuff. We should just have separate APIs for each type of instruction rather than the first formal parameter indicate what the instruction is. It'll certainly make recompilation faster. The last step is the biggest amount of work, and I would anticipate that we'd all be working on it. The nice thing about it is that we can do it in parallel and help eachother in the process. Another thing we should also think about - Starscream loads up the images in even/odd form (instead of odd/even form) so that things can be loaded up natively. Also, whenever a byte address read occurs, it is XOR'd with 1. This will speed up the internal accesses of the dynarec. Think we should still do it this way? -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 02:27:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA91664 for dynarec-outgoing; Sun, 25 Jun 2000 02:27:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 25 Jun 2000 02:34:27 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Progress! Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I got the sTargetOp allocation/deallocation routines written and working. Per Victor's recommendation, when you free a sTargetOp structure, it just returns it to a heap of sTargetOp structures used in later allocation. This'll make things speed up drastically during the allocation process. I'm way ahead of schedule on my 8051 project, so I'm setting it aside for an entire week to get cranking on DR68K. I've sent out so much email and you guys are all so damned quiet! What's with that anyway? ;-) So tomorrow I'll get a makefile going. Say Neil, how's that DSW/DSP stuff coming? ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 04:35:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA91795 for dynarec-outgoing; Sun, 25 Jun 2000 04:35:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002a01bfdea2$7532e080$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Skeleton! Date: Sun, 25 Jun 2000 13:31:44 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Yes. Things like the memory allocation routines and the basic > initialization (and disassemblers) don't need to change. Good, anything that makes less work has *got* to be a good thing! > > There seems to be quite a bit in the food fight PE (I knew being on the > > retrobeta mailing list would be good for something!) - I take it this is > > from Retrocade? If not then my, you *have* been a busy boy haven't you? ;) > > Yes, it's from Retrocade. We'll have to hack it up for the sake of the > dynarec. Of course. > I had some thoughts on this. First of all, I think I should just go ahead > and get the basic infrastructure working since I already know this > stuff. I see the tasks being split up to: > > * Creating x86 opcode generators (I.E. things like X86MovReg32Imm(), > X86PushReg32(), etc..) > * Creating covers for each of the 68K opcodes > > I imagine that step #1 above will just happen as a matter of course. As we > need more obscure instructions, we'll just start adding new ones in. > Personally, I didn't like the way I did the Genx86Op() call in the DRMZ80 > stuff. We should just have separate APIs for each type of instruction > rather than the first formal parameter indicate what the instruction is. > It'll certainly make recompilation faster. Okay, I'll definitely trust your judgement on this one. :) > The last step is the biggest amount of work, and I would anticipate that > we'd all be working on it. The nice thing about it is that we can do it in > parallel and help eachother in the process. That's what I wanted. I was scared that we might get given one task and not have the chance to do other things - that's certainly not something that interests me. As I expect everyone feels, I want to work with the whole picture! > Another thing we should also think about - Starscream loads up the images > in even/odd form (instead of odd/even form) so that things can be loaded > up natively. Also, whenever a byte address read occurs, it is XOR'd with > 1. This will speed up the internal accesses of the dynarec. Think we > should still do it this way? This is actually what I was going to suggest. Apart from the XORing - which I never thought of. But keeping things native seems to make sense - unless it makes things more difficult for us (ie we can't INC something but have to do something more complex). But it makes sense... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 04:35:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA91796 for dynarec-outgoing; Sun, 25 Jun 2000 04:35:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002b01bfdea2$763646c0$0100a8c0@lion> From: "Neil Griffiths" To: References: <1ecoydp.u9axqi1bt2b28M@[192.168.0.2]> <00036acd7caeeccb_mailit@mail.dynarec.com> Subject: Re: DYNAREC: 68K Optimizations? Date: Sun, 25 Jun 2000 13:35:26 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> Are you undergoing investigations about any newcomer ? ;-) > > Sure! Remember Big Brother is watching you! ;-) Or, in this case, it's Victor. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 04:35:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA91797 for dynarec-outgoing; Sun, 25 Jun 2000 04:35:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002c01bfdea2$772a6ac0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Progress! Date: Sun, 25 Jun 2000 13:36:34 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I got the sTargetOp allocation/deallocation routines written and > working. Per Victor's recommendation, when you free a sTargetOp structure, > it just returns it to a heap of sTargetOp structures used in later > allocation. This'll make things speed up drastically during the allocation > process. And if it doesn't then we can just blame Victor. Sounds like a good deal. ;) > I'm way ahead of schedule on my 8051 project, so I'm setting it aside for > an entire week to get cranking on DR68K. I've sent out so much email and > you guys are all so damned quiet! What's with that anyway? ;-) I don't know! I seem to be the only other one responding this weekend! With Victor I can understand (e-mail access only on weekdays) but what's up with you others? :o My excuse for being quiet yesterday is that I was out on Friday. I think it's a good - and valid - excuse! > So tomorrow I'll get a makefile going. Say Neil, how's that DSW/DSP stuff > coming? ;-) Er... You think I should maybe install VC? :)) Okay, okay, I'll install it now and get working on it. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 05:29:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA91856 for dynarec-outgoing; Sun, 25 Jun 2000 05:29:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Progress! From: "M.I.K.e" In-Reply-To: Message-ID: <00036ae0554db0b3_mailit@mail.dynarec.com> References: Date: Sun, 25 Jun 2000 14:37:46 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I got the sTargetOp allocation/deallocation routines written and >working. Per Victor's recommendation, when you free a sTargetOp structure, >it just returns it to a heap of sTargetOp structures used in later >allocation. This'll make things speed up drastically during the allocation >process. Wasn't it Gwenolé's suggestion to do that or have I missed something? >I'm way ahead of schedule on my 8051 project, so I'm setting it aside for >an entire week to get cranking on DR68K. Nice. >I've sent out so much email and >you guys are all so damned quiet! What's with that anyway? ;-) Nothing against you, but I'm so exhausted at the moment (either I'm beginning to get ill or I need more sleep) that I can barely think and I didn't want to post more crap than usual... I also try to learn a bit more about x86 assembly, which I surely need for this project. >-->Neil -- M.I.K.e "Might as well be frank, monsieur. It would take a miracle to get you out of Casablanca and the Germans have outlawed miracles." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 05:29:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA91864 for dynarec-outgoing; Sun, 25 Jun 2000 05:29:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Skeleton! From: "M.I.K.e" In-Reply-To: Message-ID: <00036ae02f1b9e4a_mailit@mail.dynarec.com> References: Date: Sun, 25 Jun 2000 14:27:05 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yes. Things like the memory allocation routines and the basic >initialization (and disassemblers) don't need to change. Yeah, we don't need to reinvent the wheel ;-) >Yes, it's from Retrocade. We'll have to hack it up for the sake of the >dynarec. Good imitation is better than bad inovation! >I had some thoughts on this. First of all, I think I should just go ahead >and get the basic infrastructure working since I already know this >stuff. I see the tasks being split up to: >* Creating x86 opcode generators (I.E. things like X86MovReg32Imm(), > X86PushReg32(), etc..) >* Creating covers for each of the 68K opcodes Seems like the obvious split. I guess the covers should be written in assembly first that the emitter team knows what emitters are needed. I think we also need addressing mode covers since I don't want to program each mode for every instruction. When the static register allocation is to be configurable we need a quick solution to find out which registers is cached and when we need to access the simulated register in the memory location. >I imagine that step #1 above will just happen as a matter of course. As we >need more obscure instructions, we'll just start adding new ones in. >Personally, I didn't like the way I did the Genx86Op() call in the DRMZ80 >stuff. We should just have separate APIs for each type of instruction >rather than the first formal parameter indicate what the instruction is. >It'll certainly make recompilation faster. That would be the best solution. Even for a MIPS code emitter I would have at least three different emitters (R, I, J), but in the case od the x86 it's more complicated. Having more specific emitters makes the translation task much easier of those of us who didn't program x86 assembly before. I almost fear that it's just me... >The last step is the biggest amount of work, and I would anticipate that >we'd all be working on it. The nice thing about it is that we can do it in >parallel and help eachother in the process. Is Gwenolé in the team or not? Otherwise I guess you (NB) and me are the only ones in the group with prior 68K programming experience. Taken into account that I never really programmed x86 assembly I would be a bad choice for the code emitters, but with some refreshment I should be quite well at 68K again, I have several books on it (just ask NG) and if in doubt I can power up my Mega STE to check it on the real machine. I guess all this qualifies me mainly for work on covers I guess. >Another thing we should also think about - Starscream loads up the images >in even/odd form (instead of odd/even form) so that things can be loaded >up natively. Also, whenever a byte address read occurs, it is XOR'd with >1. This will speed up the internal accesses of the dynarec. Think we >should still do it this way? Having everything byteswapped would speed up the dynarec and speed is what we want! We should only design the loader that it works with big-endian systems as well but I guess that I didn't have to mention that. >-->Neil -- M.I.K.e All I want is a warm bed and a kind word and unlimited power -- Ashleigh Brilliant --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 07:38:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA91970 for dynarec-outgoing; Sun, 25 Jun 2000 07:38:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000601bfdeb4$56b5d560$a6268cd4@daves> From: "David Sharp" To: References: <00036ae0554db0b3_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Progress! Date: Sun, 25 Jun 2000 15:47:14 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I also try to learn a bit more about x86 assembly, which I surely need for > this project. Can anyone suggest a good resource from which to learn x86 asm, online or book? Are Mike and I the only ones who aren't too hot on it? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 08:36:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA92027 for dynarec-outgoing; Sun, 25 Jun 2000 08:36:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000f01bfdec4$3bff3300$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Progress! Date: Sun, 25 Jun 2000 17:41:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > So tomorrow I'll get a makefile going. Say Neil, how's that DSW/DSP stuff > coming? ;-) If you check out http://www.dynarec.com/~neilg/foodfight.zip then you'll find out! :) Yep, I've finished it. You'll need to change the include directory for wherever you place your own files (default is "C:\Windows\Desktop\Dynarec\FoodFight") - but everything else will work straight away. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 08:59:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA92075 for dynarec-outgoing; Sun, 25 Jun 2000 08:59:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001701bfdec7$59cb0a00$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036ae0554db0b3_mailit@mail.dynarec.com> <000601bfdeb4$56b5d560$a6268cd4@daves> Subject: Re: DYNAREC: Progress! Date: Sun, 25 Jun 2000 18:03:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Can anyone suggest a good resource from which to learn x86 asm, online or > book? Are Mike and I the only ones who aren't too hot on it? Probably the best book was "Mastering Turbo Assembler" - but I've got no idea who wrote it. Can certainly find it on Amazon. Er... as for online stuff, there's quite a few good places. I'll try and find a couple of good links. :) http://www.halcyon.com/rhsmith/assembly.html http://www.easystreet.com/~jkirwan/pcassembly.html Be warned though - these were taken straight from my "Favourites" folder and so everything might not work - I've got no idea how long I've had the links (I have checked all of the pages that I've included here work - but if they link then those might be broken)! :o I guess, if we feel it's needed, that I can knock up some sort of short - but useful - x86 tutorial... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 09:25:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA92108 for dynarec-outgoing; Sun, 25 Jun 2000 09:24:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Progress! From: "M.I.K.e" In-Reply-To: <001701bfdec7$59cb0a00$0100a8c0@lion> Message-ID: <00036ae39fb16468_mailit@mail.dynarec.com> References: <00036ae0554db0b3_mailit@mail.dynarec.com> <000601bfdeb4$56b5d560$a6268cd4@daves> <001701bfdec7$59cb0a00$0100a8c0@lion> Date: Sun, 25 Jun 2000 18:33:19 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Probably the best book was "Mastering Turbo Assembler" - but I've got no >idea who wrote it. Can certainly find it on Amazon. I'm not sure about that book but so far I had the experience that almost every recommended book about x86 assembly programming is out of print... >http://www.halcyon.com/rhsmith/assembly.html >http://www.easystreet.com/~jkirwan/pcassembly.html There is also "Art of Assembly Language Programming": http://webster.cs.ucr.edu/index.html >I guess, if we feel it's needed, that I can knock up some sort of short - >but useful - x86 tutorial... Why not? ;-) >Neil. -- M.I.K.e "Good-bye. I am leaving because I am bored." -- George Saunders' dying words --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 11:00:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA92193 for dynarec-outgoing; Sun, 25 Jun 2000 11:00:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000c01bfded0$86a09d20$e2228cd4@daves> From: "David Sharp" To: References: <00036ae0554db0b3_mailit@mail.dynarec.com> <000601bfdeb4$56b5d560$a6268cd4@daves> <001701bfdec7$59cb0a00$0100a8c0@lion> Subject: Re: DYNAREC: Progress! Date: Sun, 25 Jun 2000 19:09:23 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Probably the best book was "Mastering Turbo Assembler" - but I've got no > idea who wrote it. Can certainly find it on Amazon. >[snip] Thanks for the links, will take a look. > I guess, if we feel it's needed, that I can knock up some sort of short - > but useful - x86 tutorial... I don't know about anyone else, I'd certainly find it very useful... Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 11:29:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA92219 for dynarec-outgoing; Sun, 25 Jun 2000 11:29:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 25 Jun 2000 11:36:56 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Skeleton! In-Reply-To: <00036ae02f1b9e4a_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by dynarec.com id LAA92216 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Yes, it's from Retrocade. We'll have to hack it up for the sake of the > >dynarec. > Good imitation is better than bad inovation! I'll have to do a good bit of hacking to get it to "fit", though, since there's a lot of infrastructure stuff that's missing. > >I had some thoughts on this. First of all, I think I should just go ahead > >and get the basic infrastructure working since I already know this > >stuff. I see the tasks being split up to: > >* Creating x86 opcode generators (I.E. things like X86MovReg32Imm(), > > X86PushReg32(), etc..) > >* Creating covers for each of the 68K opcodes > Seems like the obvious split. > I guess the covers should be written in assembly first that the emitter team > knows what emitters are needed. I think they should be written out in the source code if that's what you mean, but I don't think they should be written using NASM or any other assembler and linked in for testing purposes. That'd be harder to do than to just write it in the first place! Like this: static struct sHostOp *CallHandler(struct sZ80Opcode *psOp, UINT8 u8GenInFlags, UINT8 u8GenOutFlags, UINT8 u8GenTimingInfo, UINT32 u32Timing) { struct sHostOp *psOpHead = NULL; struct sHostOp *psOpPtr; UINT32 u32Addr; u32Addr = psOp->u8OpData[1] | ((UINT32) psOp->u8OpData[2] << 8); // For regular calls, emit this: // // mov esi, [psCpu->z80sp] // sub esi, 2 // mov [psCpu->z80sp], esi // add esi, ebp // mov [esi], word xxxxh ; Return address // sub edi, timing // js noMoreExec // if (0xcd == psOp->u8OpData[0]) { psOpPtr = GenX86Op(NULL, MOV, REG_ESI, MEM32, (UINT32) &psCpu->z80sp, INVALID); psOpHead = psOpPtr; psOpPtr = GenX86Op(psOpPtr, SUB, REG_ESI, IMM8, 2, 0); psOpPtr = GenX86Op(psOpPtr, MOV, MEM32, (UINT32) &psCpu->z80sp, REG_ESI, INVALID); psOpPtr = GenX86Op(psOpPtr, ADD, REG_ESI, REG_EBP, 0, 0); psOpPtr = GenX86Op(psOpPtr, MOV, MEMREG32, REG_ESI, IMM16, psOp->u32Addr + psOp->psOpcode->u8OpcodeLen); psOpPtr->psNextLink = TimeGen(psOp, u8GenTimingInfo, u32Addr, u32Timing); psOpPtr = FindLastOp(psOpPtr); DRASSERT(psOpPtr); GenBranchSequence(psOpPtr, TRUE, u32Addr); } else { DRASSERT(0); // Unknown call } return(psOpHead); } So we write out the assembly in comments and give an idea of what we're doing. Then we write code to generate the output. That way an onlooker will understand quickly what's going on and we can say "Dude, there's a better/easier way to do this!". ;-) > I think we also need addressing mode covers since I don't want to program > each mode for every instruction. Don't blame you one bit. They'll have to be quite flexible, though. > When the static register allocation is to be configurable we need a quick > solution to find out which registers is cached and when we need to access the > simulated register in the memory location. That smarts will probably have to be a call in the cover generator itself. Let me think about this. It's becoming more clear to me each day I think about it. ;-) > Having more specific emitters makes the translation task much easier of those > of us who didn't program x86 assembly before. I almost fear that it's just > me... At least you won't have to worry about jump fixups or anything like that. A lot of the hard work will be done for you. You've just got to figure out how the instructions are going together. ;-) > >The last step is the biggest amount of work, and I would anticipate that > >we'd all be working on it. The nice thing about it is that we can do it in > >parallel and help eachother in the process. > Is Gwenolé in the team or not? Dunno! > Otherwise I guess you (NB) and me are the only ones in the group with prior > 68K programming experience. It has been so long since I've done 68K work that it's almost as if I've never seen it. But I've worked with so damn many chips in assembly that nothing scares me. ;-) > Taken into account that I never really programmed > x86 assembly I would be a bad choice for the code emitters, but with some > refreshment I should be quite well at 68K again, I have several books on it > (just ask NG) and if in doubt I can power up my Mega STE to check it on the > real machine. I guess all this qualifies me mainly for work on covers I > guess. I don't agree with the aspect that you're a bad choice for code emitters. The idea here is for us to learn a bit about the "other" CPU. I can eat, sleep, and breathe x86 so there's no shortage of help in this department. > >Another thing we should also think about - Starscream loads up the images > >in even/odd form (instead of odd/even form) so that things can be loaded > >up natively. Also, whenever a byte address read occurs, it is XOR'd with > >1. This will speed up the internal accesses of the dynarec. Think we > >should still do it this way? > Having everything byteswapped would speed up the dynarec and speed is what we > want! Yup! > We should only design the loader that it works with big-endian systems as > well but I guess that I didn't have to mention that. I'm assuming that you mean for other target processors, right? Surely we won't be generating x86 code on another big endian system... -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 11:32:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA92233 for dynarec-outgoing; Sun, 25 Jun 2000 11:32:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 25 Jun 2000 11:39:26 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Progress! In-Reply-To: <00036ae0554db0b3_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by dynarec.com id LAA92230 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >working. Per Victor's recommendation, when you free a sTargetOp structure, > >it just returns it to a heap of sTargetOp structures used in later > >allocation. This'll make things speed up drastically during the allocation > >process. > Wasn't it Gwenolé's suggestion to do that or have I missed something? Yep - Sorry Gwenole... Victor brought up the issue, Gwenole suggested the solution - a good one! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 11:34:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA92243 for dynarec-outgoing; Sun, 25 Jun 2000 11:34:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 25 Jun 2000 11:41:51 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Progress! In-Reply-To: <001701bfdec7$59cb0a00$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Can anyone suggest a good resource from which to learn x86 asm, online or > > book? Are Mike and I the only ones who aren't too hot on it? > Probably the best book was "Mastering Turbo Assembler" - but I've got no > idea who wrote it. Can certainly find it on Amazon. The problem is those books only cover 16 bit assembly! > I guess, if we feel it's needed, that I can knock up some sort of short - > but useful - x86 tutorial... Yes... please do. For 32 bit, please. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 11:46:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA92270 for dynarec-outgoing; Sun, 25 Jun 2000 11:46:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 25 Jun 2000 11:53:22 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: 386 Tutorial Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I think I posted this once before (maybe not) but this might be helpful to people: Welcome to the 386 (and newer) processors from Intel. I'll be covering flat/protected model (32 bit) modes of the CPU and the real mode operation briefly for some history that becomes relevant. Depending upon how you want to look at it, the 8086/8088 (and real mode in the 286 and later processors) was plagued with what's called "real mode". It could address 1 megabyte of memory through 64K windows - called segments. Segmented architectures (in 1977) allowed for common code to switch between tasks simply by reloading a segment register to point to a different 64K window. The granularity of a segment is 16 bytes. The pre-386 CPUs had the following segment registers: SS - Stack segment DS - Data segment ES - Extra segment CS - Code segment You might've seen something like 9a11:0000. This is physical address 9a110h. How did I come up with this? Take the segment address and shift left by 4. Add the offset. This is called a segment:offset pair. You could also call the address 9000:a110 - it's the same physical address! So if you did a push/pop or any other stack modifying operation, it would be placed at SS:SP. The code being executed would be at CS:IP. Any data you accessed in your own code's segment(s) would be accessed through DS:register. All in 64K blocks. ;-( The big downside to this is that it's limited to 64K, unless you wanted to do all kinds of segment register munging to make it larger (and store all your addresses as 32 bits). With protected mode (Windows, any multitasking OS) and flat model mode (DOS), we no longer have this limitation/irritation. Now the segment registers point to selectors (I'll use segment and selectors interchangeably). The same rules apply to execution, stack storage, and the data area, but the operating system now sets the selectors up for you and you just access things in the regions you need to access them in. The selectors are as big as the operating system makes them. Under DOS, CS, SS, ES, and DS are all set to be based at physical offset 0 with a size of 4 gigabytes - the entire 32 bit address space. So effectively you access the CPU as a flat 32 bit memory space and you never have to worry about putting the right segment overrides on your instructions. Having the selectors can allow the CPU to map any physical address space to any virtual address space it chooses (on a 4Kbyte granularity). So if I wanted to, I could say that the address at 80000000h is really address 000a0000h (video card compatability RAM). It's handy for swapping in and out pages. The operating system can set things in protected mode do things like set the code segment to read only. This will prevent you from writing over your own code (you get a protection fault!) or to the stack segment directly, and keep you out of memory that isn't owned by your segment. I'm just telling you this so you know it. It rarely comes into play when you're doing x86 assembly programming. The OS sets everything up for you, and by the time you're doing assembly, you never have to worry about segmentation. THE REGISTER SET The 386 and higher CPUs have the following registers: eax - General purpose - some specialized instructions ebx - General purpose ecx - General purpose - has some specialized counting instructions edx - General purpose ebp - General purpose - most commonly used as a base pointer in stack calling conventions by compilers esp - Stack pointer edi - General purpose - used as a destination pointer in some opcodes esi - General purpose - used as a source pointer in some opcodes The 8086/8088/80286 had the following 16 bit registers ax bx cx dx bp sp di si See a pattern? When the 386 came along, Intel just extended the registers to 32 bits - leaving the existing registers intact. "ax" Is the lower 16 bits of "eax", as "bx" is the lower 16 bits of "ebx", etc... you get the idea. The same is true for all 8 registers. ax-dx Are unique, in that they also have "high" and "low" access methods. AL=Bits 0-7 of eax, AH=Bits 8-15 of eax. The same holds true for ebx, ecx, and edx. This does *NOT* apply to ebp, esp, edi, or esi. They can only be accessed by their lower 16 bits or the entire 32 bits. So EAX (or ebx/ecx/edx) can be viewed as follows: Bit 31 Bit 24 Bit 16 Bit 8 Bit 0 |<------------------------EAX----------------------->| | <-----------AX------------>| | <-----AH-----><----AL----->| So: EBX - BX = BH/BL ECX - CX = CH/CL EDX - DX = DH/DL Some things to keep in mind: You want to avoid using 16 bit accesses if you can. It creates an additional opcode prefix (value of 66h) before any instruction that uses it and causes an execution pipe stall on the Pentium. Avoid it if you can! There is no penalty for using all 32 bits or the individual bytes. There is a minor speed advantage for using AL/AH when needed individually. In most types of operations that use AH/AL, the opcodes are 1 byte shorter than when used with the other registers. FLAG IT The x86 has a fairly extensive flag register that's not directly accessible: Bit 0 - Carry Bit 1 - Always 1 (unused) Bit 2 - Parity Bit 3 - Always 0 (unused) Bit 4 - Aux flag (carry for bit 4 - used for BCD) Bit 5 - Always 0 (unused) Bit 6 - Zero flag Bit 7 - Sign flag Bit 8 - Trap flag (debugging) Bit 9 - Interrupt enable Bit 10 - Direction flag Bit 11 - Overflow flag Bit 12/13 - IO Privelege flag (long story - don't ask) Bit 14 - Nested task flag Bit 15 - 0 (unused) Note that bits 0-7 are shockingly similar to the Z80. That's because the designers of the Z80 were X Intel employees who copied the flag mapping directly. The only difference is that Intel moved the overflow flag to bit 11 (the Z80 and 8080's parity flag was shared with the overflow flag). But everything else, including operation of the flags, are the same. Makes it quite handy! There are instructions to test the first 8 bits (and bit 11 - overflow) when doing jumps, stores, etc... LET'S MOVE The first thing you'll want to know about is the move instruction. There are several examples I can give: mov al, 1 - Set AL to 1 mov al, [10000h] - Set AL to the contents of address 10000h mov al, [ebx] - Set AL to the contents of addr in EBX mov al, [ebx+500h] - Set AL to the contents of addr in EBX+500h mov al, [ebx*4] - Set AL to the contents of addr in EBX*4 mov al, [500h+ebx*4]- Set AL to the contents of addr in (EBX*4)+500h mov al, [ebp+ecx] - Set AL to the contents of addr EBP+ECX mov [10000h], al - Set contents of address 10000h to AL mov [ebx], al - Set contents of addr in EBX to AL mov [ebx+500h], al - Set contents of addr in EBX+500h to AL mov [ebx*4], al - Set contents of addr in EBX*4 to AL mov [500h+ebx*4], al- Set contents of addr in (EBX*4)+500h to AL mov [ebp+edx], al - Set contents of addr in EBP+EDX to AL Note that any 32 bit register can be used as an offset for a memory reference. Any register - 32, 16 or 8 bit can be used as a target value or a source value. AL Can be replaced with EBX, BH, DX, EDX - whatever. Accesses do *NOT* have to be aligned. If they aren't, though, you may pay a penalty for a memory stall. It still works - it's just slower. Read all the static values above as memory locations or offsets. It makes no difference. They just wind up being addresses in memory space somewhere. Also, the multiplies can be *2, *4, or *8 for word, dword or qword lookups respectively. Now here's where the fun begins: mov [ebx+500h], dword 12345678h mov [ebx+500h], word 1234h mov [ebx+500h], byte 12h You can do direct loads of values into memory locations. All the above addressing modes apply. That means you can do "mov [ebx*4+500h], 123456h" and it'll work! Just remember, if it has brackets around it, it's a memory access. If not, it's a direct load. PUSH IT! You'll need an ability to save registers - you have the ability to push/pop registers. You can push 32 or 16 bit registers only. You cannot push 8 bit registers: push eax pop ebx push ecx pop edi You can even pop the stack pointer if you want (if you're nuts enough). There's also the pushd/popd instruction which pushes *ALL* registers on the stack (and pops them all back off). Unfortunately, there's no way to get the entire 16 bits of flag mapping other than doing a "pushf" and "pop dx". That'll put the flags in DX for further fun. ;-( BRANCHING Present in the 386 (and newer) are a bunch of branching options: jmp esi - Jump to address in ESI jmp [esi] - Jump to address in the location pointed to by ESI jmp [ebp+esi*4] - Jump to the address in the location pointed to by ebp+esi*4 jmp 123948h - Jump to location 123948h There are others, but I think you get the idea. You can replace "jmp" above with "call" and those modes will work as well. Now there are a ton of conditional branches: jz xxx - Jump if zero jnz xxx - Jump if nonzero jc/jb xxx - Jump if carry/jump if below jnc/jnb xxx - Jump if no carry/jump if not below jpo xxx - Jump if parity odd jpe xxx - Jump if parity even js xxx - Jump if signed (negative) jns xxx - Jump if not signed (positive) jo xxx - Jump if overflow jno xxx - Jump if no overflow There are more, but these are the most often used. OTHER USEFUL INSTRUCTIONS dec ecx - Decrement register dec [ecx] - Decrement memory location pointed to by register dec [off+ecx*4] - Decrement memory locaiton pointed to by off+ecx*4 The same works for "inc", "add", "sub", "sbc", "adc", "and", "or", "cmp", and "xor" - everything you'd expect. EXAMPLE CODE Hopefully this will shed some light. Let's take an example from my emulated Z80 core: mov edi, [cyclesRemaining] ; EDI=cyclesRemaining variable xor edx, edx ; Zero out edx (edx xor'd with itself) sub edi, byte 15 ; Subtract 15 from EDI js noMoreExec ; If we've gone negative (signed), jump! mov dl, [esi] ; AL=Byte at [ESI] inc esi ; Increment ESI jmp dword [z80regular+edx*4] ; Jump to handler for this instruction ; (table of dwords) Let me know if this helps you out! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 12:47:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA92322 for dynarec-outgoing; Sun, 25 Jun 2000 12:47:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Skeleton! From: "M.I.K.e" In-Reply-To: Message-ID: <00036ae66f98bf14_mailit@mail.dynarec.com> References: Date: Sun, 25 Jun 2000 21:54:37 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think they should be written out in the source code if that's what you >mean, but I don't think they should be written using NASM or any other >assembler and linked in for testing purposes. No certainly not! Sorry I was a bit sloppy. What I meant was that we write the covers in assembly source that the emitter team knows which instructions are needed. > That'd be harder to do than >to just write it in the first place! Like this: [snip] >So we write out the assembly in comments and give an idea of what we're >doing. Then we write code to generate the output. That way an onlooker >will understand quickly what's going on and we can say "Dude, there's a >better/easier way to do this!". ;-) Yes, I know that from DMZ80. I think it would be even more readable with more instruction specific emitters, as you suggested. BTW, what is the assumed target architecture, 486 or Pentium? >That smarts will probably have to be a call in the cover generator >itself. Let me think about this. It's becoming more clear to me each >day I think about it. ;-) That was my first thought since the type of register allocation could be changed more easily. But since the target layer is also architecture specific it could be in there as well, although it might make the translations slightly more complex. >At least you won't have to worry about jump fixups or anything like >that. A lot of the hard work will be done for you. You've just got to >figure out how the instructions are going together. ;-) That's the good news of course! And what is the bad news? ;-) >It has been so long since I've done 68K work that it's almost as if I've >never seen it. But I've worked with so damn many chips in assembly that >nothing scares me. ;-) Well, I surely haven't programmed as much as you have but I studied quite some architectures so I bet after some time I will understand the 68K better than I did at the time when I really programmed it. >I don't agree with the aspect that you're a bad choice for code >emitters. You seem to have more faith in me than I have... >I'm assuming that you mean for other target processors, right? Indeed. In your project announcement you mentioned probable ports to other architectures. The eventual port would be much easier when we plan that right from the beginning. >Surely we won't be generating x86 code on another big endian system... Nope, we just wait till Intel produces a big-endian IA-32 ;-) >-->Neil -- M.I.K.e "For an adequate time call 555-3321" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 13:16:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA92356 for dynarec-outgoing; Sun, 25 Jun 2000 13:16:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 386 Tutorial From: "M.I.K.e" In-Reply-To: Message-ID: <00036ae6c6c1601e_mailit@mail.dynarec.com> References: Date: Sun, 25 Jun 2000 22:18:59 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think I posted this once before (maybe not) You sent this to me shortly before you created this list... >-->Neil -- M.I.K.e Entropy isn't what it used to be. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 13:33:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA92380 for dynarec-outgoing; Sun, 25 Jun 2000 13:33:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 25 Jun 2000 13:40:18 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Progress! In-Reply-To: <000f01bfdec4$3bff3300$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yep, I've finished it. You'll need to change the include directory for > wherever you place your own files (default is > "C:\Windows\Desktop\Dynarec\FoodFight") - but everything else will work > straight away. Um... I took a look at this and you haven't taken advantage of the subdirectory capability of MSVC. I'll go create one... -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 13:41:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA92396 for dynarec-outgoing; Sun, 25 Jun 2000 13:41:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 25 Jun 2000 13:48:12 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Skeleton! In-Reply-To: <00036ae66f98bf14_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >mean, but I don't think they should be written using NASM or any other > >assembler and linked in for testing purposes. > No certainly not! Sorry I was a bit sloppy. What I meant was that we write > the covers in assembly source that the emitter team knows which instructions > are needed. You don't mean covers - you mean target opcode emitters. ;-) "Covers" are the name of the grouping of instruction for each source instruction! > BTW, what is the assumed target architecture, 486 or Pentium? At this point I don't think it really matters. We don't need to use any Pentium specific opcodes, and Pentium pipelining doesn't have any negative effects on 486's execution. > >That smarts will probably have to be a call in the cover generator > >itself. Let me think about this. It's becoming more clear to me each > >day I think about it. ;-) > That was my first thought since the type of register allocation could be > changed more easily. But since the target layer is also architecture specific > it could be in there as well, although it might make the translations > slightly more complex. I think we should have the source layer have some API that can configure/control it, but how it's used is up to the target layer. > >I don't agree with the aspect that you're a bad choice for code > >emitters. > You seem to have more faith in me than I have... If you learn one assembly, you've learned them all. Every assembly is just the same story told a different way. > >I'm assuming that you mean for other target processors, right? > Indeed. In your project announcement you mentioned probable ports to other > architectures. The eventual port would be much easier when we plan that right > from the beginning. I'll include something like this in the makefile I'm working on. > >Surely we won't be generating x86 code on another big endian system... > Nope, we just wait till Intel produces a big-endian IA-32 ;-) Heh. Never. I've got the makefile for DJGPP working and everything seems to be compiling without errors or warnings. I'll make up an MSVC version of it and give everyone a drop. Mike, then you can create an appropriate makefile for BeOS and give it back to me, and I'll include it in the master drop. Sound good? -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 14:16:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA92435 for dynarec-outgoing; Sun, 25 Jun 2000 14:16:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Skeleton! From: "M.I.K.e" In-Reply-To: Message-ID: <00036ae7b17a4663_mailit@mail.dynarec.com> References: Date: Sun, 25 Jun 2000 23:24:37 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You don't mean covers - you mean target opcode emitters. ;-) "Covers" are >the name of the grouping of instruction for each source instruction! I think I meant covers. When we know how to translate the first few 68K instructions then we know which opcode emitters we need first. >If you learn one assembly, you've learned them all. Every assembly is just >the same story told a different way. If you say that ;-) >Heh. Never. I know. I originally wanted to write "and wait and wait and ..." but decided against it. >I've got the makefile for DJGPP working and everything seems to be >compiling without errors or warnings. Good news. >I'll make up an MSVC version of it and give everyone a drop. I hope NG has his VC installed by now ;-) >Mike, then you can create an appropriate >makefile for BeOS and give it back to me, and I'll include it in the >master drop. Sound good? Just send me the DJGPP makefile since the GCC one shouldn't be too different I guess. If I have to do any changes I'll send you another makefile for GCC. BTW, I had to convert all the filenames to lowercase since all source files seem to use lowercase references but due to DOS all files are in uppercase. That's not much of a problem for me because I have a Tracker addon which can convert the filenames and I configured it in a way that I can convert all the files in one directory by pressing Ctrl-A and Crtl-Win-L. I just wanted to mention that. Maybe I should create the "finale" snapshots because Linux also should have the problem and DOS and Windows don't care about lowercase filenames. >-->Neil -- M.I.K.e Stop searching. Happiness is right next to you. Now, if they'd only take a bath ... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 14:25:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA92457 for dynarec-outgoing; Sun, 25 Jun 2000 14:25:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006801bfdef4$ddd259c0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Progress! Date: Sun, 25 Jun 2000 23:13:13 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Um... I took a look at this and you haven't taken advantage of the > subdirectory capability of MSVC. I'll go create one... How do you mean? I just used the directories that already existed! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 14:25:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA92458 for dynarec-outgoing; Sun, 25 Jun 2000 14:25:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006901bfdef4$deefb0a0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Skeleton! Date: Sun, 25 Jun 2000 23:16:50 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > BTW, what is the assumed target architecture, 486 or Pentium? > > At this point I don't think it really matters. We don't need to use any > Pentium specific opcodes, and Pentium pipelining doesn't have any negative > effects on 486's execution. I'd be surprised if we used any instructions that won't work on a 386. I don't know why we'd need to! > If you learn one assembly, you've learned them all. Every assembly is just > the same story told a different way. Heh. I learnt Z80 asm and x86 asm is very similar. Wonder why that is? ;) > > >Surely we won't be generating x86 code on another big endian system... > > Nope, we just wait till Intel produces a big-endian IA-32 ;-) > > Heh. Never. Although if it's RISC then there's no reason why someone couldn't MAKE it big endian. But I don't want it big endian. As per NB's argument - do you say "x = 5" or "5 = x" when you program and want "x" to be equal to 5? > I've got the makefile for DJGPP working and everything seems to be > compiling without errors or warnings. I'll make up an MSVC version of it > and give everyone a drop. Mike, then you can create an appropriate > makefile for BeOS and give it back to me, and I'll include it in the > master drop. Sound good? Sounds good so far. I'm wondering what you're going to do that's so different to what I did! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 14:28:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA92472 for dynarec-outgoing; Sun, 25 Jun 2000 14:28:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 25 Jun 2000 14:35:45 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Progress! In-Reply-To: <006801bfdef4$ddd259c0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Um... I took a look at this and you haven't taken advantage of the > > subdirectory capability of MSVC. I'll go create one... > How do you mean? I just used the directories that already existed! :) Yes, you did, but the DSW/DSP files are located in the root - not in OSDEP/WIN32... and when you put the DSW/DSP files in the win32 directory it can't find any files to compile. Plus, I've added a few things. No problem - I've got it all created and I'll post it here shortly. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 14:30:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA92485 for dynarec-outgoing; Sun, 25 Jun 2000 14:30:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 25 Jun 2000 14:37:40 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Skeleton! In-Reply-To: <00036ae7b17a4663_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >You don't mean covers - you mean target opcode emitters. ;-) "Covers" are > >the name of the grouping of instruction for each source instruction! > I think I meant covers. When we know how to translate the first few 68K > instructions then we know which opcode emitters we need first. Right. We need lots of preamble, too, like the memory region handlers and things that'll do byte/word/dword reads/writes. Plus the standard 68kexec() glue. > Just send me the DJGPP makefile since the GCC one shouldn't be too different > I guess. If I have to do any changes I'll send you another makefile for GCC. It'll be in the drop. I'll call it "makefile.djp" and you can tweak it and call it "makefile.gcc" or whatever. > BTW, I had to convert all the filenames to lowercase since all source files > seem to use lowercase references but due to DOS all files are in uppercase. Well, sheeeit. I'll try and use Winzip to see if I can make them all lower case. > That's not much of a problem for me because I have a Tracker addon which can > convert the filenames and I configured it in a way that I can convert all the > files in one directory by pressing Ctrl-A and Crtl-Win-L. I just wanted to > mention that. Maybe I should create the "finale" snapshots because Linux also > should have the problem and DOS and Windows don't care about lowercase > filenames. Yup. You can specify -L (or something like that) to the unzipper to get it to give you lowercase filenames. I do that on my UNIX box, too. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 14:36:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA92498 for dynarec-outgoing; Sun, 25 Jun 2000 14:36:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com Subject: DYNAREC: Reversed Address Space From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Sun, 25 Jun 2000 23:56:27 +0200 Message-ID: <1ecsz36.13e18vrtn4n0uM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id OAA92495 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, I had started to work on that thing for BasiliskII. In short, the idea consisted in having the complete address space reversed. However, the problem I came up with BasiliskII is that some operations, like sound feeding, would have required to reverse back the chunk of data needed, because in Basilisk II, a whole block of memory is copied at once. It is not copied word by word through the different memory handlers. e.g. memcpy() is used. In other words, the data in the emulated address space is in the big endian format and the sound driver needs data that is in that "format": a raw copy can occur. 1) For starters, I will recall that BasiliskII uses the UAE core. The memory system used is an array of "memory banks". A memory bank can be described as follows: struct mem_bank { mem_get_func lget, wget, bget; mem_put_func lput, wput, bput; xlate_func xlate_addr; } Basically, a mem_get_func will work that way: - Fix the incoming address by adding a base Offset - Do fetch the byte, word or long word. The Base Offset is determined for example for a ROM as: ROMBaseDiff = (uint32)ROMBaseHost - (uint32)ROMBaseVirtual Thus, for fetching a word in the ROM space, I will have: uint16 rom_wget(uint32 virtual_addr) { uint16 * real_addr = (uint16 *)(ROMBaseDiff + virtual_addr); return do_fetch_word(real_addr); // will byteswap } 2) What do I mean with reversed address space ? Let us have [ 0 .. MAX_ADDRESS ] as the valid address space range. For any byte at position P, exchange it with the byte at position MAX_ADDRESS - P. 3) Accessors have to be changed a bit Say, I have the following footprint in the native M68K byte order: Data: 0x01 0x23 0x45 0x67 0x89 0xAB Addr: 0x00 0x01 0x02 0x03 0x04 0x05 (virtual address) With the classical accesors, I would get: - get byte @ 0x03 : 0x67 - get word @ 0x01 : 0x2345 - get long @ 0x02 : 0x456789AB Now, reversing this address space, I would get: Data: 0xAB 0x89 0x67 0x45 0x23 0x01 Addr: 0x05 0x04 0x03 0x02 0x01 0x00 (virtual address) We have to find a mechanism so that requiring the word at virtual address 0x01 still yields the value 0x2345. The trick here, is to have not one Base Offset, but three for each size. Obviously, for a byte fetch, I would like to do a as simple operation as real_addr = ROMBaseByteDiff - virtual_addr. Having said that, I think it's clear that I will have to have: ROMBaseByteDiff = (uint32)ROMBaseHost + (uint32)ROMBaseVirtual + (ROMSize - 1); Then: ROMBaseWordDiff = ROMBaseByteDiff - 1; ROMBaseLongDiff = ROMBaseByteDiff - 3; And finally, the word fetcher will be: uint16 rom_wget(uint32 virtual_addr) { uint16 * real_addr = (uint16 *)(ROMBaseWordDiff - virtual_addr); return do_fetch_word_unswapped(real_addr); // will _not_ byteswap } That is: - no extra XOR is needed - no byteswap is needed 4) Problems - The frame buffer shall not be reversed. - Sound feeding can't go with directly copying the big-endian data that was in the unreversed form, since it is now reversed (in a little-endian format). I hope I was clear enough ;-) I would recommend one to take a sheet of paper and do some experiments to make things clear. BTW, this method is used in Softmac, another Macintosh emulator. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 16:58:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA92604 for dynarec-outgoing; Sun, 25 Jun 2000 16:58:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Skeleton! From: "M.I.K.e" In-Reply-To: <006901bfdef4$deefb0a0$0100a8c0@lion> Message-ID: <00036ae9f041ab1a_mailit@mail.dynarec.com> References: <006901bfdef4$deefb0a0$0100a8c0@lion> Date: Mon, 26 Jun 2000 02:05:20 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Although if it's RISC then there's no reason why someone couldn't MAKE it >big endian. But I don't want it big endian. As per NB's argument - do you >say "x = 5" or "5 = x" when you program and want "x" to be equal to 5? Erm, you are mixing up endianness and operand order! Different operand order of register = 7: mov eax, 7 move.l #7, D0 ; or better moveq #7, D0 ;-) only 2 bytes and 4 cycles needed... Endianness: big-endian: 0x11223344 little-endian: 0x44332211 >Neil. -- M.I.K.e Scrubbing floors and emptying bedpans has as much dignity as the Presidency. -- Richard Nixon --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 17:19:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA92631 for dynarec-outgoing; Sun, 25 Jun 2000 17:19:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 25 Jun 2000 17:26:45 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Skeleton! In-Reply-To: <00036ae9f041ab1a_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Different operand order of register = 7: > mov eax, 7 Actually, the above compiles down to 2 bytes. ;-) There are two forms of the "mov eax" instruction - one that's 32 bits and one that's 8. I've got the Windows version and the DOS version building now. I'm in the process of putting in Starscream to BOTH build processes. Everyone: Get a copy of NASM 0.97 (or later). You'll need it! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 21:11:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA92850 for dynarec-outgoing; Sun, 25 Jun 2000 21:11:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 25 Jun 2000 21:18:18 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: New buildable drop is up Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com The new buildable drop is up! http://www.dynarec.com/~neilb/dr68k062500.zip This includes: * A buildable DJGPP makefile and MSVC DSW/DSP project files * Starscream built in * Disassemblers built * All files and a good amount of the framework is complete That being said, I redid the MSVC stuff because *I HATE* having to specify absolute pathnames. The setup was also extremely tricky since there are a couple of custom build steps in the process. If you're using the Windows version, NASMW.EXE is required (version 0.98 or newer - if there is one newer) for this build to work. If something doesn't build properly, DON'T JUST GO IN AND HACK IT! Everything should build 100% and if it doesn't, we need to fix the build! Please post your results on the list. The same goes for proceeding - let's chat about it on the list before we go in and tweak any .C files or anything else. This avoids us from duplicating work or stepping on eachother. Mike - snag the makefile in the root. Get that sucker to build via BeOS and let me know when you've got it working, then pass the makefile back to me. Check it out! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 23:42:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA92984 for dynarec-outgoing; Sun, 25 Jun 2000 23:42:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006260647.IAA06483@pons.ac.upc.es> Subject: Re: DYNAREC: 68K Optimizations? In-Reply-To: <1ecoydp.u9axqi1bt2b28M@[192.168.0.2]> "from Gwenole Beauchesne at Jun 23, 2000 07:53:44 pm" To: dynarec@dynarec.com Date: Mon, 26 Jun 2000 08:47:02 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-MIME-Autoconverted: from 8bit to quoted-printable by pons.ac.upc.es id IAA06483 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id XAA92981 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > Griffiths and Koenig seem really common names and I don't have much time. > > Have you ever heard of the "Koenig lookup" ? > I am sorry but don't count on me to explain what this thing is... > What means the "Koenig lookup"? > > But a newcomer seem more easy: > > http://wwwusers.imaginet.fr/~clairer/pages/tronches/atoh.html > > In fact I agreed to, and my photograph did not appear by magical powers. > ;-) > > In France, one cannot put up any personal data without the consent of > the person concerned. Furthermore, "any" list of names shall be > registered to the CNIL (Commission Nationale de l'Informatique et des > Libertés). I don't have the official translation into English but this > is close to a watchdog committee that supervises the application of data > protection legislation. > The same happens in Spain but it's more difficult to go against companies here. Perhaps it is the way we thought in Spain, everyone is convinced that it is too hard to go against them. And the Spanish government employees and Spanish justice aren't the best to help the common people. Well it must be my "communist" way of thinking again. > BTW, how did you get with that address ? > Did you just type my name in your favorite search engine ? Altavista. > Are you undergoing investigations about any newcomer ? ;-) > Ermm ... Well, I didn't want to do it, I didn't, but they force me. ;) > Last note: I think it is now public knowledge that Intelligence Agencies > (e.g. NSA in the USA, DGSE in France, etc.) have a bunch of tools in > charge of retrieving as many information as possible about anything. For > example: there is a program (Taïga) that is able to scan newgroups, > websites about certain words: not only related to keywords but to the > full semantic of a sentence as well. Another program is able to build a > big graph of a site with statistics about certain keywords appearing in > various colors on the graph. Sure and there is also that Echelon australian project to track down everything in the world. So seems that we have some more lurkers outside. And Neil doesn't know about them. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 25 23:43:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA92994 for dynarec-outgoing; Sun, 25 Jun 2000 23:43:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006260648.IAA16566@pons.ac.upc.es> Subject: Re: DYNAREC: Hehehehehehe In-Reply-To: "from Neil Bradley at Jun 23, 2000 09:38:05 pm" To: dynarec@dynarec.com Date: Mon, 26 Jun 2000 08:48:42 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I guess I scared the hell out of you guys. The only one who really piped > up was Victor. ;-) Or are you all out getting pissed or laid or something? > Grrr!! You have been playing with me. ;) I wondered way you were talking about it. > -->Neil > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 00:04:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA93023 for dynarec-outgoing; Mon, 26 Jun 2000 00:04:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 00:12:13 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Reversed Address Space In-Reply-To: <1ecsz36.13e18vrtn4n0uM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > problem I came up with BasiliskII is that some operations, like sound > feeding, would have required to reverse back the chunk of data needed, > because in Basilisk II, a whole block of memory is copied at once. It is > not copied word by word through the different memory handlers. e.g. > memcpy() is used. In other words, the data in the emulated address space > is in the big endian format and the sound driver needs data that is in > that "format": a raw copy can occur. Think of which will occur more often - code executing and writing to RAM or writing to the sound buffer. I *REALLY* don't want to have to put it through glue logic if I don't have to because it'll just slow things down. If we need to prepare things for the sound buffer, that should be just a simple copy and swap. I don't like anything sitting between me and the RAM it writes to if I can avoid it. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 00:35:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA93063 for dynarec-outgoing; Mon, 26 Jun 2000 00:35:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <200006260647.IAA06483@pons.ac.upc.es> Subject: Re: DYNAREC: 68K Optimizations? From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Mon, 26 Jun 2000 09:54:44 +0200 Message-ID: <1ecttou.wkjpzriyqhozM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id AAA93057 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > What means the "Koenig lookup"? Basically, this is connected to C++ and name resolution of arguments passed to functions, more precisely, if types come from other namespaces. The rules are under section 3.4.2 of the C++ standard. > Sure and there is also that Echelon australian project to track down > everything in the world. Wasn't that an NSA project. Think of it: if they disclosed the information, this is probably because they have now better means to get information. e.g. I heard that the US government diclosed two years ago, their high-precision radar that can map underground facilities... -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 00:35:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA93064 for dynarec-outgoing; Mon, 26 Jun 2000 00:35:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: Subject: Re: DYNAREC: New buildable drop is up From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Mon, 26 Jun 2000 09:54:45 +0200 Message-ID: <1ectuf1.4focvq1uyo9asM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id AAA93060 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > The new buildable drop is up! > http://www.dynarec.com/~neilb/dr68k062500.zip The unzip's -L option rules ;-) > * Starscream built in Hmm, are there other alternatives ? I mean, if other targets were to be made (e.g. SPARC :), Starscream won't be of any use. BTW, is the Musashi 68000 core API compatible with Starscream's ? > If something doesn't build properly, DON'T JUST GO IN AND HACK > IT! Everything should build 100% and if it doesn't, we need to fix the > build! A unix directory would be great too. BTW, I have a few questions about your types.h file. What does UINTXX represent: an unsigned integer with exactly XX bits, or an unsigned int big enough to hold at least XX bits of data ? If this is the former you meant, I afraid this is not always true. Possible solutions: 1) A configure script, generated by autoconf. It will test for integer size types. I can do that if you wish, though I am not an autoconf expert. e.g. I never played with installation directives after having compiled the package. 2) Do something like: #if __STDC_VERSION__ >= 199901L #include // or #define UINT32 uint32_t #define UINT16 uint16_t //... #include #define TRUE true #define FALSE false #else //... #endif 3) Just check if the compiler knows about , but not about the current definition of the C language. If the latter was meant, i.e. an integer large enough to hold at least XX bits of data, one can play with Example: #include #if UINT_MAX == 0xFFFFFFFF #define UINT32 unsigned int #define INT32 signed int #elif ULONG_MAX == 0xFFFFFFFF #define UINT32 unsigned long #define INT32 signed long #else #error "Sorry, you don't have an integer type at least 32 bits long" #endif //... There is another problem: sizeof(void *) is not necessarily equal to sizeof(uint32). This is why, IMHO, the configure script solution sounds good because I can test for the sizeof(void *). Makefiles can also be generated from a template. I don't know if (ba)sh (for configure scripts) is available with DJPP, though. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 00:45:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA93083 for dynarec-outgoing; Mon, 26 Jun 2000 00:45:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 00:53:06 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New buildable drop is up In-Reply-To: <1ectuf1.4focvq1uyo9asM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > * Starscream built in > Hmm, are there other alternatives ? I mean, if other targets were to be > made (e.g. SPARC :), Starscream won't be of any use. BTW, is the Musashi > 68000 core API compatible with Starscream's ? Since we're working with x86 right now, we'll use Starscream as an execution reference. Once we get the dynarec working, we have no need for it. ;-) I didn't even know there was a Musashi 68K core. But Starscream is *REALLY* well debugged, so using it as a reference would be a good thing. > > If something doesn't build properly, DON'T JUST GO IN AND HACK > > IT! Everything should build 100% and if it doesn't, we need to fix the > > build! > A unix directory would be great too. Are you going to do a UNIX version, too, like FreeBSD or some other x86 UNIX? ;-) > BTW, I have a few questions about > your types.h file. What does UINTXX represent: an unsigned integer with > exactly XX bits, or an unsigned int big enough to hold at least XX bits > of data ? If this is the former you meant, I afraid this is not always > true. The latter. Forgive my personal rant about "int" and "short" and "long" - those are *HORRIBLE* constructs that should be stricken from the C language. Off my soapbox... Anyway, it needs to be a value that is at least that size. Forgive me, but what machine on earth that we'd actually use this recompiler one *WOULDN'T* have the ability to define a specific size? Even IA-64 C has the ability to do so. > There is another problem: sizeof(void *) is not necessarily equal to > sizeof(uint32). If someone said sizeof(UINT32) when they meant sizeof(void *), they should be smacked. If you see anything in the code like that, please point it out, as it shouldn't be that way! > good because I can test for the sizeof(void *). Makefiles can also be > generated from a template. I don't know if (ba)sh (for configure > scripts) is available with DJPP, though. Doesn't work for things like MSVC that doesn't use a makefile. I think we can hand job it for the targets we need to use. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 00:58:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA93099 for dynarec-outgoing; Mon, 26 Jun 2000 00:58:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: Subject: Re: DYNAREC: Reversed Address Space From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Mon, 26 Jun 2000 10:18:07 +0200 Message-ID: <1ectvo7.16wht4m1ukmbc5M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id AAA93096 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > If we need to prepare things for the sound buffer, that should be > just a simple copy and swap. If I understand well the "XOR'ing method", every word is byteswapped, right ? i.e. If I had this M68K footprint: 0x01 0x02 0x03 0x04 ..., it would become: 0x02 0x01 0x04 0x03 ... (reversed address space: ... 0x04 0x03 0x02 0x01) With reversed address space, there are two solutions: 1) copy-reverse: copy the block then reverse it 2) map-reverse: nothing is copied, we can sit and use directly the chunk of memory to feed in the sound driver. But first, it will have to be reversed. Then, when the sound driver has finished with that, the block shall be reversed back. What is more costly: Byteswapping every word, or reversing a block of memory ? Let us use the copy-{swap,reverse} in both cases. Let us have a block of memory N bytes long where N = 4 * M. If I am not wrong: - Byte swapping every word: 2 * M 16-bit word swaps. (1 temp register required) - Reversing the block : M 32-bit word swaps + M 32-bit words exchanges. (2 temp registers required) -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 01:02:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA93119 for dynarec-outgoing; Mon, 26 Jun 2000 01:02:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 01:10:02 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Reversed Address Space In-Reply-To: <1ectvo7.16wht4m1ukmbc5M@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > If we need to prepare things for the sound buffer, that should be > > just a simple copy and swap. > If I understand well the "XOR'ing method", every word is byteswapped, > right ? Correct. > If I had this M68K footprint: 0x01 0x02 0x03 0x04 ..., > it would become: 0x02 0x01 0x04 0x03 ... > (reversed address space: ... 0x04 0x03 0x02 0x01) Yes. > With reversed address space, there are two solutions: > 1) copy-reverse: copy the block then reverse it Um... a load out of or into memory on the x86 would reverse it automatically. A dword load would require a rol reg, 16. Most code in the 68K deals in 16 bit quantities anyway. > What is more costly: > Byteswapping every word, or reversing a block of memory ? If we didn't pre byte swap it, we'd still have to swap it when we got it out of memory, as it would be wrong. Adding an additional XOR to an address to swap it for a byte write, doing nothing for a word, and doing an ROL reg, 16 for a dword is sure better than nothing for a byte write, swapping a word, and ROL reg,16 *AND* swapping the dword! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 01:19:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA93141 for dynarec-outgoing; Mon, 26 Jun 2000 01:19:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 01:26:55 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Got it loaded Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I have the memory map for Food Fight worked out and the code now loads up the ROM images, sets up Starscream's context, resets Starscream and gets it up to the point of being ready to run. Tomorrow I'll put some time into getting Food Fight totally running under emulation. Might be kinda tricky to get right since I'll have to hack in all kinds of other junk like the sprite/tile draw routines. ;-( -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 01:21:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA93156 for dynarec-outgoing; Mon, 26 Jun 2000 01:21:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: Subject: Re: DYNAREC: New buildable drop is up From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Mon, 26 Jun 2000 10:40:46 +0200 Message-ID: <1ectwrb.kzki9czu3dfM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id BAA93153 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Since we're working with x86 right now, we'll use Starscream as an > execution reference. Once we get the dynarec working, we have no need for > it. ;-) OK, this is the key thing I did not catch: the only emulation core will be the dynarec one. i.e. every block will be translated and executed thereafter even if they happen only once. Right ? > I didn't even know there was a Musashi 68K core. But Starscream is > *REALLY* well debugged, so using it as a reference would be a good thing. Musashi is the C core from MAME (Karl Stenerud). DGen either uses it or uses Starscream. > Are you going to do a UNIX version, too, like FreeBSD or some other x86 > UNIX? ;-) My IA-32 machine runs under Linux. I have currently one week free before I start my (mandatory) two-month training period. Fortunately, I managed to take one in the field of register allocation. ;-) It won't be useful for JIT compilers though (bkoz: use of graph coloring algorithms and similar things), but this will enable me to learn many things on that matter. BTW, I think I will wait a bit before considering a Linux/x86 port. And at a bigger extent: a Solaris/SPARC port! > Forgive me, but what machine on earth that we'd actually use this > recompiler one *WOULDN'T* have the ability to define a specific size? Even > IA-64 C has the ability to do so. The point was sizeof(long) could be 8 like on the Sun Ultra 10 with Solaris I have at school, or even DEC Alphas ;-) > If someone said sizeof(UINT32) when they meant sizeof(void *), they should > be smacked. If you see anything in the code like that, please point it > out, as it shouldn't be that way! You are right, I did not see such things but the point would be not to use UINT32 instead of say a UINTPTR type where appropriate. Anyway, only base addresses of recompiled blocks will be used for exact matching, in my opinion. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 01:22:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA93163 for dynarec-outgoing; Mon, 26 Jun 2000 01:22:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006260826.KAA02686@pons.ac.upc.es> Subject: Re: DYNAREC: 68K Optimizations? In-Reply-To: <1ecttou.wkjpzriyqhozM@[192.168.0.2]> "from Gwenole Beauchesne at Jun 26, 2000 09:54:44 am" To: dynarec@dynarec.com Date: Mon, 26 Jun 2000 10:26:14 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Sure and there is also that Echelon australian project to track down > > everything in the world. > > Wasn't that an NSA project. Think of it: if they disclosed the > information, this is probably because they have now better means to get > information. e.g. I heard that the US government diclosed two years ago, > their high-precision radar that can map underground facilities... > Sure. Perhaps it is being a bit paranoic but I wonder what can be done by the security agencies of USA and other big countries (sure not by the Spanish security agency which makes laugh everyone). One example could be the antimissile tests. I think if they are public is because they want to hide something else. Have you hear about Aurora? It seems it is a new brand secret space airship. ;) Just talking a bit about "the government is controlling us" mithology. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 01:25:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA93175 for dynarec-outgoing; Mon, 26 Jun 2000 01:25:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 01:32:26 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New buildable drop is up In-Reply-To: <1ectwrb.kzki9czu3dfM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Since we're working with x86 right now, we'll use Starscream as an > > execution reference. Once we get the dynarec working, we have no need for > > it. ;-) > OK, this is the key thing I did not catch: the only emulation core will > be the dynarec one. i.e. every block will be translated and executed > thereafter even if they happen only once. Right ? Correct. We're just using Starscream to validate our own core. > > I didn't even know there was a Musashi 68K core. But Starscream is > > *REALLY* well debugged, so using it as a reference would be a good thing. > Musashi is the C core from MAME (Karl Stenerud). DGen either uses it or > uses Starscream. Oh. DGen uses Starscream. > BTW, I think I will wait a bit before considering a Linux/x86 port. And > at a bigger extent: a Solaris/SPARC port! How come? ;-) FWIW, The BeOS port should also work directly on FreeBSD and other UNIXen since it's GCC based. ;-) > > Forgive me, but what machine on earth that we'd actually use this > > recompiler one *WOULDN'T* have the ability to define a specific size? Even > > IA-64 C has the ability to do so. > The point was sizeof(long) could be 8 like on the Sun Ultra 10 with > Solaris I have at school, or even DEC Alphas ;-) Then we'd just declare it for whatever would make up a UINT32. That does argue strongly to have the basic types be something platform specific. > > If someone said sizeof(UINT32) when they meant sizeof(void *), they should > > be smacked. If you see anything in the code like that, please point it > > out, as it shouldn't be that way! > You are right, I did not see such things but the point would be not to > use UINT32 instead of say a UINTPTR type where appropriate. Anyway, only > base addresses of recompiled blocks will be used for exact matching, in > my opinion. Yep. And if someone does that, we can smack them good. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 02:23:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA93385 for dynarec-outgoing; Mon, 26 Jun 2000 02:23:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3957044C.40548548@eurocopter.de> Date: Mon, 26 Jun 2000 09:20:44 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Progress! References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Probably the best book was "Mastering Turbo Assembler" - but I've got no > > idea who wrote it. Can certainly find it on Amazon. > > The problem is those books only cover 16 bit assembly! Most do, I agree. But this book certainly had details on flat-mode memory models. > > I guess, if we feel it's needed, that I can knock up some sort of short - > > but useful - x86 tutorial... > > Yes... please do. For 32 bit, please. ;-) No, I like 64k segments! ;) Do we still need it after what NB sent to the list? This is very much like what I was going to write - except that I was going to give some small code examples... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 02:23:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA93394 for dynarec-outgoing; Mon, 26 Jun 2000 02:23:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3956FF29.26D1FEB2@eurocopter.de> Date: Mon, 26 Jun 2000 08:58:49 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Skeleton! References: <006901bfdef4$deefb0a0$0100a8c0@lion> <00036ae9f041ab1a_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Although if it's RISC then there's no reason why someone couldn't MAKE it > >big endian. But I don't want it big endian. As per NB's argument - do you > >say "x = 5" or "5 = x" when you program and want "x" to be equal to 5? > > Erm, you are mixing up endianness and operand order! How am I doing that exactly? > Different operand order of register = 7: > mov eax, 7 > move.l #7, D0 ; or better moveq #7, D0 ;-) only 2 bytes and 4 cycles > needed... Exactly my point. Look: x=5 mov x, 5 x=5 moveq #5, x Just replace x with a register. Which seems more natural? It's certainly little endianess. I'm used to x=5, not 5=x. > Endianness: > big-endian: 0x11223344 > little-endian: 0x44332211 Really? ;p Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 02:24:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA93403 for dynarec-outgoing; Mon, 26 Jun 2000 02:24:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <395703DB.7E398C3E@eurocopter.de> Date: Mon, 26 Jun 2000 09:18:51 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: New buildable drop is up References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > That being said, I redid the MSVC stuff because *I HATE* having to specify > absolute pathnames. The setup was also extremely tricky since there are a > couple of custom build steps in the process. I also hate it. The pathname before was actually "." but I found a couple of things that didn't work (such as right-clicking a variable name and visiting it) when I did that. They went away when I used an absolute pathname - which is why I kept it that way... > If something doesn't build properly, DON'T JUST GO IN AND HACK > IT! You're taking all the fun away! ;) > Everything should build 100% and if it doesn't, we need to fix the > build! Please post your results on the list. The same goes for proceeding > - let's chat about it on the list before we go in and tweak any .C files > or anything else. This avoids us from duplicating work or stepping on > eachother. I'll check it tonight when I'm at home. Hey, I could check it out here and see if works on UNIX you know... :) > Check it out! Will do! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 02:26:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA93415 for dynarec-outgoing; Mon, 26 Jun 2000 02:26:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006260931.LAA28676@pons.ac.upc.es> Subject: Re: DYNAREC: Got it loaded In-Reply-To: "from Neil Bradley at Jun 26, 2000 01:26:55 am" To: dynarec@dynarec.com Date: Mon, 26 Jun 2000 11:31:14 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I have the memory map for Food Fight worked out and the code now loads up > the ROM images, sets up Starscream's context, resets Starscream and gets > it up to the point of being ready to run. > > Tomorrow I'll put some time into getting Food Fight totally running under > emulation. Might be kinda tricky to get right since I'll have to hack in > all kinds of other junk like the sprite/tile draw routines. ;-( > It's good to see the project working. This week (until thursday or friday) I can't help in anything because I have my last exam. Last weekend I couldn't study and now I'm more busy than I thought. But I will be watching the emulator. > -->Neil Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 03:02:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA93464 for dynarec-outgoing; Mon, 26 Jun 2000 03:02:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: Subject: Re: DYNAREC: Reversed Address Space From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Mon, 26 Jun 2000 12:22:21 +0200 Message-ID: <1ectxu5.1kwrt241cc0h5qM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id DAA93458 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > What is more costly: > > Byteswapping every word, or reversing a block of memory ? > > If we didn't pre byte swap it, we'd still have to swap it when we got it > out of memory, as it would be wrong. Agreed. > Adding an additional XOR to an address to swap it for a byte write, doing > nothing for a word, and doing an ROL reg, 16 for a dword is sure better > than nothing for a byte write, swapping a word, and ROL reg,16 *AND* > swapping the dword! But, > > If I had this M68K footprint: 0x01 0x02 0x03 0x04 ..., > > it would become: 0x02 0x01 0x04 0x03 ... > > (reversed address space: ... 0x04 0x03 0x02 0x01) What about unaligned access ? Does the 68000 always throw an Exception_3 or does it actually honor the unaligned read/write request ? How does the pre-byte-swapped method cope with that ? Do we expect unaligned access to never occur ? ;-) -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 03:02:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA93465 for dynarec-outgoing; Mon, 26 Jun 2000 03:02:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <200006260826.KAA02686@pons.ac.upc.es> Subject: Re: DYNAREC: 68K Optimizations? From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Mon, 26 Jun 2000 12:22:22 +0200 Message-ID: <1ectza4.11i10af3j7gxlM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id DAA93461 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > One example could be the antimissile tests. I think if they are public is > because they want to hide something else. Think of it: any new weapon requires another deterrent and so on, before anyone could know about the existence of that weapon or its concepts. This makes sense. BTW, you probably meant: kinetic weapons. US army invented the term "direct-to-hit" for not saying "direct-to-kill", I assume... > Have you hear about Aurora? It seems > it is a new brand secret space airship. ;) Yes, in the USA there are FOIA: Freedom Of Information Acts that, for what I understood, can help in seeking "secret" information. About the Aurora, a previous FOIA failed because it is still top secret matters. Their response shall not be interpreted as a proof of existence, nor a proof of inexistence. I am sure it exists just because I don't think the SR-71 is the fastest plane out there since the late sixties. I think military knowledge is far beyond public knowledge. Look at the Tacit Blue (another plane) for example, it was disclosed because the public technology is now able to accomplish this. > Just talking a bit about "the government is controlling us" mithology. Hmm, we are becoming off-topic here. Do you know how to dynamically recompile government's information into their hidden truths. ;-) -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 03:12:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA93487 for dynarec-outgoing; Mon, 26 Jun 2000 03:12:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: VICTOR MOYA DEL BARRIO Message-Id: <200006261016.MAA31255@alabi.fib.upc.es> Subject: Re: DYNAREC: Reversed Address Space In-Reply-To: <1ectxu5.1kwrt241cc0h5qM@[192.168.0.2]> from Gwenole Beauchesne at "Jun 26, 0 12:22:21 pm" To: dynarec@dynarec.com Date: Mon, 26 Jun 2000 12:16:58 +0200 (MET DST) MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > But, > > > > If I had this M68K footprint: 0x01 0x02 0x03 0x04 ..., > > > it would become: 0x02 0x01 0x04 0x03 ... > > > (reversed address space: ... 0x04 0x03 0x02 0x01) > > What about unaligned access ? Does the 68000 always throw an Exception_3 > or does it actually honor the unaligned read/write request ? > How does the pre-byte-swapped method cope with that ? > Do we expect unaligned access to never occur ? ;-) > But what I know 68000 don´t accept unaligned access. Wait a minute ... I will take a look to doc ... Yes my doc says all word accesses must be at even addresses or there will be a fault. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 03:35:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA93517 for dynarec-outgoing; Mon, 26 Jun 2000 03:35:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: New buildable drop is up From: "M.I.K.e" In-Reply-To: Message-ID: <00036af2d350c50d_mailit@mail.dynarec.com> References: Date: Mon, 26 Jun 2000 12:41:30 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Musashi is the C core from MAME (Karl Stenerud). DGen either uses it or >> uses Starscream. >Oh. DGen uses Starscream. I think Megasis uses Musashi. >How come? ;-) FWIW, The BeOS port should also work directly on FreeBSD and >other UNIXen since it's GCC based. ;-) And if I use SDL for graphics and sound output (which is quite likely, otherwise I had to mess around with the C++ API of BeOS) it should work on Linux and BeOS without any change. BTW, does anyone know what causes the following make error: makefile:9: *** commands commence before first target. Stop. >-->Neil -- M.I.K.e When the Ngdanga tribe of West Africa hold their moon love ceremonies, the men of the tribe bang their heads on sacred trees until they get a nose bleed, which usually cures them of ____that. -- Mike Harding, "The Armchair Anarchist's Almanac" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 05:24:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA93619 for dynarec-outgoing; Mon, 26 Jun 2000 05:24:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39574B2F.E08FBCAF@eurocopter.de> Date: Mon, 26 Jun 2000 14:23:11 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: New buildable drop is up References: <00036af2d350c50d_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Oh. DGen uses Starscream. > > I think Megasis uses Musashi. DGen can also use a different 68k core. Can't remember which one though. Probably a custom one by the DGen author. Or... is that GENS that I'm thinking of? :o > >How come? ;-) FWIW, The BeOS port should also work directly on FreeBSD and > >other UNIXen since it's GCC based. ;-) > > And if I use SDL for graphics and sound output (which is quite likely, > otherwise I had to mess around with the C++ API of BeOS) it should work on > Linux and BeOS without any change. I have quite a choice of things to use. I can either use DirectDraw (great, create a buffer and write to it - then copy to video RAM!), OpenGL (should be the same, not 100% sure) or SDL (which uses OpenGL - so OpenGL better bloody had work!). I guess it makes sense to use SDL. That way we can write one set of code to work on Win32, Linux and BeOS. Although I may, afterwards, port the code to use DirectDraw. But if we can all work together, it makes more sense... > BTW, does anyone know what causes the following make error: > makefile:9: *** commands commence before first target. Stop. Yes. There's commands before the makefile declares what the target is. ;) Er... you might want to try getting hold of a more recent MAKE. Unless, of course, the problem is with the makefile. I'll try it here and see how Solaris likes it. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 05:26:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA93632 for dynarec-outgoing; Mon, 26 Jun 2000 05:25:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39574C68.507838EC@eurocopter.de> Date: Mon, 26 Jun 2000 14:28:24 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: New buildable drop is up References: <00036af2d350c50d_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, No, it doesn't work with Solaris. For a very good reason. It uses Allegro. Apparently. :o I'll take a look at the stuff later when I've got a bit more time... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 05:35:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA93655 for dynarec-outgoing; Mon, 26 Jun 2000 05:35:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: New buildable drop is up From: "M.I.K.e" In-Reply-To: <39574B2F.E08FBCAF@eurocopter.de> Message-ID: <00036af48528e2c3_mailit@mail.dynarec.com> References: <00036af2d350c50d_mailit@mail.dynarec.com> <39574B2F.E08FBCAF@eurocopter.de> Date: Mon, 26 Jun 2000 14:42:48 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >DGen can also use a different 68k core. Can't remember which one though. >Probably a custom one by the DGen author. Or... is that GENS that I'm >thinking of? :o Don't ask me I haven't even tried GENS yet! My favourite emulator for that system is Megasis because it has the best sound emulation. >I guess it makes sense to use SDL. That way we can write one set of code to >work on Win32, Linux and BeOS. Although I may, afterwards, port the code to >use DirectDraw. But if we can all work together, it makes more sense... That would be cool. I bet you have much more experience working with such API than I have! >Yes. There's commands before the makefile declares what the target is. ;) Really? I think I can understand *that* much English but I was wondering why it doesn't work with my make when it works with the DJGPP one... >Er... you might want to try getting hold of a more recent MAKE. The question is where I shall get it if not stealing... >No, it doesn't work with Solaris. For a very good reason. It uses Allegro. >Apparently. :o Well, I bet BeOS won't like Allegro as well. I think Allegro is only available for DOS, right? >Neil. -- M.I.K.e A child of five could understand this! Fetch me a child of five. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 05:53:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA93679 for dynarec-outgoing; Mon, 26 Jun 2000 05:53:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <395751B5.65F87D01@eurocopter.de> Date: Mon, 26 Jun 2000 14:51:01 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: New buildable drop is up References: <00036af2d350c50d_mailit@mail.dynarec.com> <39574B2F.E08FBCAF@eurocopter.de> <00036af48528e2c3_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Don't ask me I haven't even tried GENS yet! My favourite emulator for that > system is Megasis because it has the best sound emulation. Try Gens. I think you'll be impressed by the sound emulation. And I'll try Megasis. > >I guess it makes sense to use SDL. That way we can write one set of code to > >work on Win32, Linux and BeOS. Although I may, afterwards, port the code to > >use DirectDraw. But if we can all work together, it makes more sense... > > That would be cool. I bet you have much more experience working with such API > than I have! Not really - but I've worked with MeTaL (S3's native format) and DirectX before now. But I've got to get into OpenGL - because I'll be using it next year. > >Yes. There's commands before the makefile declares what the target is. ;) > > Really? Yes. ;p > I think I can understand *that* much English but I was wondering why > it doesn't work with my make when it works with the DJGPP one... Because not every MAKE is compatible with other MAKEs. I've found that out here - I can't compile MAME for instance. And I can't upgrade either because I don't have the user rights. > >Er... you might want to try getting hold of a more recent MAKE. > > The question is where I shall get it if not stealing... If it's GCC then anywhere. I guess. > >No, it doesn't work with Solaris. For a very good reason. It uses Allegro. > >Apparently. :o > > Well, I bet BeOS won't like Allegro as well. I think Allegro is only > available for DOS, right? And Linux. But I think that's about it... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 06:22:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA93712 for dynarec-outgoing; Mon, 26 Jun 2000 06:22:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Makefile From: "M.I.K.e" In-Reply-To: <00036af48528e2c3_mailit@mail.dynarec.com> Message-ID: <00036af52f0d10c8_mailit@mail.dynarec.com> References: <00036af2d350c50d_mailit@mail.dynarec.com> <39574B2F.E08FBCAF@eurocopter.de> <00036af48528e2c3_mailit@mail.dynarec.com> Date: Mon, 26 Jun 2000 15:30:19 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Ok, I downloaded a new version of make (a monster distribution with docs in dvi, ps, html, info, and man formats!). Strangely enough it's the same version I already have (GNU Make version 3.77) although the binary is much larger; maybe they left all the debugging info in it. The error message "makefile:9: *** commands commence before first target. Stop." is quite misleading because all the CRs at the end of the lines were causing the problem! Now that I stripped these I get the error message from Allegro, so I have to eliminate that one. BTW, I think when I compiled the 'star.c' a few days ago I had to add a semicolon in one loop for it to be compiled correctly by GCC, but I'll check that... -- M.I.K.e Maybe you can't buy happiness, but these days you can certainly charge it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 07:14:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA93773 for dynarec-outgoing; Mon, 26 Jun 2000 07:14:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 22 Jun 2000 20:32:43 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K info Message-ID: <20000622203242.A2085@boris.quns.cam.ac.uk> References: <00036aa3ee54b6fa_mailit@mail.dynarec.com> <00036aa7da0df010_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: <00036aa7da0df010_mailit@mail.dynarec.com>; from M.I.K.e on Thu, Jun 22, 2000 at 07:14:40PM +0200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, Jun 22, 2000 at 07:14:40PM +0200, M.I.K.e wrote: > Sorry, forgot to mention an important thing: > > ADDX D0, D1 calculates D1 = D1 + D0 + X which is very similar to what ADC > does. > But SUBX D0, D1 calculates D1 = D1 - D0 - X while SBB does D1 = D1 - D0 + C > ! Ack, careful with the bracketing there, SBB does dest := dest - (src+cf) which is slightly different to what you said... dunno about the 68k one though. Jules -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 08:02:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA93844 for dynarec-outgoing; Mon, 26 Jun 2000 08:02:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 08:10:13 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New buildable drop is up In-Reply-To: <395703DB.7E398C3E@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > That being said, I redid the MSVC stuff because *I HATE* having to specify > > absolute pathnames. The setup was also extremely tricky since there are a > > couple of custom build steps in the process. > I also hate it. The pathname before was actually "." but I found a couple > of things that didn't work (such as right-clicking a variable name and > visiting it) when I did that. They went away when I used an absolute > pathname - which is why I kept it that way... Huh? Sounds like your MSVC installation is on crack! It works OK here... > > build! Please post your results on the list. The same goes for proceeding > > - let's chat about it on the list before we go in and tweak any .C files > > or anything else. This avoids us from duplicating work or stepping on > > eachother. > I'll check it tonight when I'm at home. Hey, I could check it out here and > see if works on UNIX you know... :) I can guarantee that it won't... I tried it. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 08:03:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA93856 for dynarec-outgoing; Mon, 26 Jun 2000 08:03:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <395770B4.70CB9CED@eurocopter.de> Date: Mon, 26 Jun 2000 17:03:16 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Makefile References: <00036af2d350c50d_mailit@mail.dynarec.com> <39574B2F.E08FBCAF@eurocopter.de> <00036af48528e2c3_mailit@mail.dynarec.com> <00036af52f0d10c8_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > The error message "makefile:9: *** commands commence before first target. > Stop." is quite misleading because all the CRs at the end of the lines were > causing the problem! Oh yeah, it could have been that. I had the same problem eventually - but I'm so used to my command line unzip that I forgot about that... > Now that I stripped these I get the error message from Allegro, so I have to > eliminate that one. Okay, we're in the same boat. :) > BTW, I think when I compiled the 'star.c' a few days ago I had to add a > semicolon in one loop for it to be compiled correctly by GCC, but I'll check > that... There's a good chance of that. GCC can be more strict (and also less strict as well!) in things like that. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 08:03:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA93864 for dynarec-outgoing; Mon, 26 Jun 2000 08:03:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K info From: "M.I.K.e" In-Reply-To: <20000622203242.A2085@boris.quns.cam.ac.uk> Message-ID: <00036af6995ad3db_mailit@mail.dynarec.com> References: <00036aa3ee54b6fa_mailit@mail.dynarec.com> <00036aa7da0df010_mailit@mail.dynarec.com> <20000622203242.A2085@boris.quns.cam.ac.uk> Date: Mon, 26 Jun 2000 17:11:37 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Ack, careful with the bracketing there, SBB does dest := dest - (src+cf) >which is slightly different to what you said... dunno about the 68k one >though. One of my books says something different, but that seems to be an error. The 68K SUBX works like this: dest = dest - src - X And ARM's SBC does: dest = src1 - src2 + C - 1 >Jules -- M.I.K.e The debate rages on: Is PL/I Bachtrian or Dromedary? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 08:04:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA93876 for dynarec-outgoing; Mon, 26 Jun 2000 08:04:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 08:12:16 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Reversed Address Space In-Reply-To: <1ectxu5.1kwrt241cc0h5qM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > If I had this M68K footprint: 0x01 0x02 0x03 0x04 ..., > > > it would become: 0x02 0x01 0x04 0x03 ... > > > (reversed address space: ... 0x04 0x03 0x02 0x01) > What about unaligned access ? That's a no-no. > Does the 68000 always throw an Exception_3 > or does it actually honor the unaligned read/write request ? > How does the pre-byte-swapped method cope with that ? > Do we expect unaligned access to never occur ? ;-) Yup. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 08:13:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA93894 for dynarec-outgoing; Mon, 26 Jun 2000 08:13:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 08:20:28 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New buildable drop is up In-Reply-To: <39574B2F.E08FBCAF@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > otherwise I had to mess around with the C++ API of BeOS) it should work on > > Linux and BeOS without any change. > I have quite a choice of things to use. I can either use DirectDraw (great, > create a buffer and write to it - then copy to video RAM!), You make it sound like a bad thing! Actually, the backbuffer will already be created, so all you'll have to do is: * Initialize an 8 bit video mode (256x256 or bigger) * Set palette entries * Blit from main memory to the display Not a hell of a lot going on there. > Er... you might want to try getting hold of a more recent MAKE. Unless, of > course, the problem is with the makefile. I'll try it here and see how > Solaris likes it. :) Did I mention how much I hate makefiles? It's like a standard that no one can agree on. I've yet to see a makefile work on 2 completely different makes. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 08:13:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA93904 for dynarec-outgoing; Mon, 26 Jun 2000 08:13:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 08:21:01 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New buildable drop is up In-Reply-To: <39574C68.507838EC@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > No, it doesn't work with Solaris. For a very good reason. It uses Allegro. > Apparently. :o You have to get rid of Allegro for any version other than DOS, silly... -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 08:15:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA93917 for dynarec-outgoing; Mon, 26 Jun 2000 08:15:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 08:22:49 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Makefile In-Reply-To: <00036af52f0d10c8_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The error message "makefile:9: *** commands commence before first target. > Stop." is quite misleading because all the CRs at the end of the lines were > causing the problem! > Now that I stripped these I get the error message from Allegro, so I have to > eliminate that one. This is the idea behind someone else "doing the BeOS" port. It's not going to just be a slam dunk! You will have to put some brain power in to making it work on anything other than DOS. ;-) > BTW, I think when I compiled the 'star.c' a few days ago I had to add a > semicolon in one loop for it to be compiled correctly by GCC, but I'll check > that... It was for a switch/case statement, and I fixed that. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 08:16:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA93926 for dynarec-outgoing; Mon, 26 Jun 2000 08:16:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 08:23:28 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Makefile In-Reply-To: <395770B4.70CB9CED@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Now that I stripped these I get the error message from Allegro, so I have to > > eliminate that one. > Okay, we're in the same boat. :) Does it actually make everything else OK, though? -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 08:47:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA93966 for dynarec-outgoing; Mon, 26 Jun 2000 08:47:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Makefile From: "M.I.K.e" In-Reply-To: <395770B4.70CB9CED@eurocopter.de> Message-ID: <00036af739391c8f_mailit@mail.dynarec.com> References: <00036af2d350c50d_mailit@mail.dynarec.com> <39574B2F.E08FBCAF@eurocopter.de> <00036af48528e2c3_mailit@mail.dynarec.com> <00036af52f0d10c8_mailit@mail.dynarec.com> <395770B4.70CB9CED@eurocopter.de> Date: Mon, 26 Jun 2000 17:56:19 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Oh yeah, it could have been that. I had the same problem eventually - but >I'm so used to my command line unzip that I forgot about that... I used Expander, a BeOS frontend to unzip. But now that I found out the options "-a -L" it's much easier. I didn't even know that unzip is capable of do such things ;-) >Okay, we're in the same boat. :) In the same boat with *you*? Oh no! ;-) >There's a good chance of that. GCC can be more strict (and also less strict >as well!) in things like that. The funny thing is that the file in NB's archive compiles just fine... OK, report: * I've eliminated Allegro from the OS depended stuff and from the makefile. * I changed the object path. * I renamed 'star.exe' to simply 'star'. * nasm now generates ELF and not COFF. But now I get the following error message: objs/beos/test.o: In function `TestBegin': objs/beos/test.o(.text+0xe): undefined reference to `s68000init' According to stardoc.txt this should be defined in starcpu.h but it isn't! I only find "int SN##init (void);" - strange... >Neil. -- M.I.K.e In 1750 Issac Newton became discouraged when he fell up a flight of stairs. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 08:53:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA93983 for dynarec-outgoing; Mon, 26 Jun 2000 08:53:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Makefile From: "M.I.K.e" In-Reply-To: Message-ID: <00036af74b63aac8_mailit@mail.dynarec.com> References: Date: Mon, 26 Jun 2000 18:01:24 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >This is the idea behind someone else "doing the BeOS" port. It's not going >to just be a slam dunk! You will have to put some brain power in to making >it work on anything other than DOS. ;-) Hehe. And you tell me that now? ;-) >It was for a switch/case statement, and I fixed that. Now I remember. It was an empty default, right? >-->Neil -- M.I.K.e I'm a Lisp variable -- bind me! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 09:04:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA94010 for dynarec-outgoing; Mon, 26 Jun 2000 09:04:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39577F3B.A1980661@eurocopter.de> Date: Mon, 26 Jun 2000 18:05:15 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: New buildable drop is up References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > You make it sound like a bad thing! Actually, the backbuffer will already > be created, so all you'll have to do is: No, I made it sound like a good thing. I think it is! :) > * Blit from main memory to the display Exactly. That's why it's good. I'm worried that I can't do it with OpenGL or SDL... > > Er... you might want to try getting hold of a more recent MAKE. Unless, of > > course, the problem is with the makefile. I'll try it here and see how > > Solaris likes it. :) > > Did I mention how much I hate makefiles? It's like a standard that no one > can agree on. I've yet to see a makefile work on 2 completely different > makes. I hate them for the same reason. But then... MS don't even use them! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 09:30:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA94065 for dynarec-outgoing; Mon, 26 Jun 2000 09:30:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3957856D.B14EDF9E@eurocopter.de> Date: Mon, 26 Jun 2000 18:31:41 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Makefile References: <00036af2d350c50d_mailit@mail.dynarec.com> <39574B2F.E08FBCAF@eurocopter.de> <00036af48528e2c3_mailit@mail.dynarec.com> <00036af52f0d10c8_mailit@mail.dynarec.com> <395770B4.70CB9CED@eurocopter.de> <00036af739391c8f_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I used Expander, a BeOS frontend to unzip. But now that I found out the > options "-a -L" it's much easier. I didn't even know that unzip is capable of > do such things ;-) I always use -a as a matter of course. I never used -L before today though... > >Okay, we're in the same boat. :) > > In the same boat with *you*? Oh no! ;-) Don't worry. We've got oranges and lemons so you won't get scurvy. You landlubber. ;) > According to stardoc.txt this should be defined in starcpu.h but it isn't! > I only find "int SN##init (void);" - strange... I'll work on it here tomorrow. When I have a little more time to mess around with it... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 11:39:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA94224 for dynarec-outgoing; Mon, 26 Jun 2000 11:39:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 11:46:45 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Makefile In-Reply-To: <00036af74b63aac8_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >It was for a switch/case statement, and I fixed that. > Now I remember. It was an empty default, right? Yup, which is why I was surprised that DJGPP let it go... It's unusually anal about things. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 13:08:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA94335 for dynarec-outgoing; Mon, 26 Jun 2000 13:08:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Makefile From: "M.I.K.e" In-Reply-To: <3957856D.B14EDF9E@eurocopter.de> Message-ID: <00036afadbf9a21f_mailit@mail.dynarec.com> References: <00036af2d350c50d_mailit@mail.dynarec.com> <39574B2F.E08FBCAF@eurocopter.de> <00036af48528e2c3_mailit@mail.dynarec.com> <00036af52f0d10c8_mailit@mail.dynarec.com> <395770B4.70CB9CED@eurocopter.de> <00036af739391c8f_mailit@mail.dynarec.com> <3957856D.B14EDF9E@eurocopter.de> Date: Mon, 26 Jun 2000 22:16:35 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com The problem with the symbol "s68000init" seems to be due to the ELF object format, because it is listed as "_s68000init" so the loader won't find it. When I rewrite test.c to use "_s68000init" everything seems to work correctly. It's a bit strange because according to the doc Starscream was also tested with Linux and that should use ELF as well... I wonder if there is some nasm option to work around that problem... -- M.I.K.e "Benson, you are so free of the ravages of intelligence" -- Time Bandits --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 13:09:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA94345 for dynarec-outgoing; Mon, 26 Jun 2000 13:09:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 13:17:10 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Makefile In-Reply-To: <00036afadbf9a21f_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > format, because it is listed as "_s68000init" so the loader won't find it. > When I rewrite test.c to use "_s68000init" everything seems to work > correctly. > It's a bit strange because according to the doc Starscream was also tested > with Linux and that should use ELF as well... Hm... I thought it said coff, not elf. > I wonder if there is some nasm option to work around that problem... Can you link with COFF? If it's GCC, you ought to be able to. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 13:18:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA94363 for dynarec-outgoing; Mon, 26 Jun 2000 13:18:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003701bfdfb4$c115c540$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Makefile Date: Mon, 26 Jun 2000 22:23:17 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Now I remember. It was an empty default, right? > > Yup, which is why I was surprised that DJGPP let it go... It's unusually > anal about things. Agreed. BTW, I can't get the VC thing to compile right now. I'll work on it and see what the problem is. Oh yeah - and if you're on the mul8 mailing list, be careful. I've just been royally p**sed off by some "Minion" character. Liberal use of the '*' character was required. Honestly, I don't know why I even bother to give up my time... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 13:50:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA94415 for dynarec-outgoing; Mon, 26 Jun 2000 13:50:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Makefile From: "M.I.K.e" In-Reply-To: Message-ID: <00036afb3a3f52fc_mailit@mail.dynarec.com> References: Date: Mon, 26 Jun 2000 22:42:56 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Hm... I thought it said coff, not elf. It's COFF for DJGPP, but Linux and BeOS use ELF. When I use COFF output I get the following loader error: objs/beos/m68000.o: file not recognized: Bad file descriptor >Can you link with COFF? If it's GCC, you ought to be able to. It seems that it doesn't want to link with COFF. When I use ELF the file is linked but the init call in the test isn't resolved. But Neill writes in the doc that it was tested with GCC under Linux, which uses ELF as well. Just call nasm with "-hf"... >-->Neil -- M.I.K.e That woman speaks eight languages and can't say "no" in any of them. -- Dorothy Parker --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 14:15:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA94454 for dynarec-outgoing; Mon, 26 Jun 2000 14:15:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 14:22:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Makefile In-Reply-To: <003701bfdfb4$c115c540$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Now I remember. It was an empty default, right? > > Yup, which is why I was surprised that DJGPP let it go... It's unusually > > anal about things. > Agreed. > BTW, I can't get the VC thing to compile right now. I'll work on it and see > what the problem is. Error codes? Do you not have NASMW.EXE in your path somewhere? > Oh yeah - and if you're on the mul8 mailing list, be careful. I've just been > royally p**sed off by some "Minion" character. Liberal use of the '*' > character was required. Honestly, I don't know why I even bother to give up > my time... You should be putting your energies into DR68K - not that crap! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 14:27:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA94475 for dynarec-outgoing; Mon, 26 Jun 2000 14:27:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 14:34:48 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Makefile In-Reply-To: <00036afb3a3f52fc_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > But Neill writes in the doc that it was tested with GCC under Linux, which > uses ELF as well. Just call nasm with "-hf"... Okay... so, now it links OK? -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 14:32:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA94494 for dynarec-outgoing; Mon, 26 Jun 2000 14:32:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000d01bfdfbf$1fc1b7c0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Makefile Date: Mon, 26 Jun 2000 23:37:31 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > BTW, I can't get the VC thing to compile right now. I'll work on it and see > > what the problem is. > > Error codes? Do you not have NASMW.EXE in your path somewhere? That was it, yep. Solved it before. That's better. :) > > Oh yeah - and if you're on the mul8 mailing list, be careful. I've just been > > royally p**sed off by some "Minion" character. Liberal use of the '*' > > character was required. Honestly, I don't know why I even bother to give up > > my time... > > You should be putting your energies into DR68K - not that crap! I am doing. I'm forgetting it now. And that Minion character can have the blame. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 14:34:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA94505 for dynarec-outgoing; Mon, 26 Jun 2000 14:34:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Makefile From: "M.I.K.e" In-Reply-To: Message-ID: <00036afc0ef90d18_mailit@mail.dynarec.com> References: Date: Mon, 26 Jun 2000 23:42:25 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Okay... so, now it links OK? It links and I can launch the executable without problems, but only when I change the API call in test.c to "_s68000init();" ... Either my loader is just crap or Linux will have the same problems... >-->Neil -- M.I.K.e Receiving a million dollars tax free will make you feel better than being flat broke and having a stomach ache. -- Dolph Sharp, "I'm O.K., You're Not So Hot" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 14:43:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA94526 for dynarec-outgoing; Mon, 26 Jun 2000 14:43:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 14:51:14 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Makefile In-Reply-To: <00036afc0ef90d18_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Okay... so, now it links OK? > It links and I can launch the executable without problems, but only when I > change the API call in test.c to "_s68000init();" ... > Either my loader is just crap or Linux will have the same problems... I hate that manufacturers can't agree on whether C callable functions are preceded/suffixed with underscores (or are eliminated altogether). I think the correct solution is to tweak Starscream a bit so that it emits: _s68000init: s68000init_: s68000init: As the same label. I've had to do this many times before. I'll make the fix tonight. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 14:45:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA94539 for dynarec-outgoing; Mon, 26 Jun 2000 14:45:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 14:52:33 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Makefile In-Reply-To: <000d01bfdfbf$1fc1b7c0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Error codes? Do you not have NASMW.EXE in your path somewhere? > That was it, yep. Solved it before. That's better. :) So it builds OK for you now? Do you now see what I was getting at with regard to the relative paths? ;-) Also, you ought to be able to put "DRASSERT(0);" in TestBegin() and run it and have a nice little message box pop up. Let me know if it works OK for you. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 14:48:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA94550 for dynarec-outgoing; Mon, 26 Jun 2000 14:48:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 14:55:44 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Well...? Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com So dr68k has been out for 24 hours now. ;-) Anyone perused the code and took a look at things? Comments? Questions? Concerns? Hopefully the direction that I'm going with this is clear. Also - last night I got Food Fight to load up properly, and Starscream actually resets and fetches the correct vector. Tonight I'll work on getting it to actually run the game code. I'll give you all a drop when I hit a stopping point. I'm also hoping that at some point others will take the dynarec core and do something other than Food Fight with it. Maybe a simultaneous development curve would be in order? Someone else pick a project (or something simple to emulate/model) and start filling in the pieces as things get more well defined? I think that would be useful for all of us. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 14:54:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA94566 for dynarec-outgoing; Mon, 26 Jun 2000 14:54:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Makefile From: "M.I.K.e" In-Reply-To: Message-ID: <00036afc593a9b72_mailit@mail.dynarec.com> References: Date: Tue, 27 Jun 2000 00:03:11 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I hate that manufacturers can't agree on whether C callable functions are >preceded/suffixed with underscores (or are eliminated altogether). Let's found a club ;-( >I think the correct solution is to tweak Starscream a bit so that it >emits: >_s68000init: >s68000init_: >s68000init: I think it already generates the first two, and there aren't much options left... >As the same label. I've had to do this many times before. I'll make the >fix tonight. If you've done that before then you might find the location to patch faster than me, otherwise I could do that too. I only hope that this is somewhat global and not local for every label! >-->Neil -- M.I.K.e Avoid reality at all costs. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 15:03:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA94591 for dynarec-outgoing; Mon, 26 Jun 2000 15:03:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 15:11:03 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Makefile In-Reply-To: <00036afc593a9b72_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >As the same label. I've had to do this many times before. I'll make the > >fix tonight. > If you've done that before then you might find the location to patch faster > than me, otherwise I could do that too. I only hope that this is somewhat > global and not local for every label! It's only for the global labels. Feel free to do the mods. In fact, it may just be a single procedure that produces them all. Have a look at star.c if you dare... -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 15:09:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA94607 for dynarec-outgoing; Mon, 26 Jun 2000 15:09:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Makefile From: "M.I.K.e" In-Reply-To: Message-ID: <00036afc8c6f2f0b_mailit@mail.dynarec.com> References: Date: Tue, 27 Jun 2000 00:17:30 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Mail-It_--335000660" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --Mail-It_--335000660 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit >I think the correct solution is to tweak Starscream a bit so that it >emits: >_s68000init: >s68000init_: >s68000init: >As the same label. I've had to do this many times before. I'll make the >fix tonight. I've added the lines emit("global %s%s\n", sourcename, fname); emit("%s%s:\n", sourcename, fname); to 'begin_source_proc'. Now it compiles and links just fine. The makefile and the osdepended main are attached. >-->Neil -- M.I.K.e "I've seen, I SAY, I've seen better heads on a mug of beer" -- Senator Claghorn --Mail-It_--335000660 Content-Type: text/plain; name="makefile.beos" Content-Transfer-Encoding: base64 Content-Disposition: Attachment; filename="makefile.beos" IwojIER5bmFyZWMgTWFrZWZpbGUgZm9yIEdDQyAvIEJlT1MgeDg2CiMKCkFSCQkJPSBhcgpDQwkJ CT0gZ2NjCkxECQkJPSBnY2MKQ0ZMQUdTCQk9IC1JLiAtYyAtV2FsbCAtV2Vycm9yIC1PMyAtZm9t aXQtZnJhbWUtcG9pbnRlciAtZnN0cmljdC1hbGlhc2luZyBcCgkJCSAgLVd1bnVzZWQgLVdiYWQt ZnVuY3Rpb24tY2FzdCAtV3N0cmljdC1wcm90b3R5cGVzIFwKCQkJICAtV25vLXNpZ24tY29tcGFy ZQpBU00JCT0gbmFzbQpPQkpESVIJCT0gb2Jqcy9iZW9zCldJTkRJUgkJPSBvYmpzL3dpbjMyCkJF T1NESVIJPSBvYmpzL2Jlb3MKT1NERVBESVIJPSBvc2RlcC9iZW9zClRBUkdFVEVYRQk9ICQoT0JK RElSKS9keW5hcmVjCiNIT1NUTElCUwk9IGFsbGVnCkxERkxBR1MJPSAtcwoKIyBEWU5BT1BUUyAt CiMKIyBNRU1DSEsJLSBNZW1vcnkgY2hlY2tpbmcgcm91dGluZXMgY29tcGlsZWQgaW4KIyBBU1NF UlRTCS0gQXNzZXJ0cyBjb21waWxlZCBpbgojIERSTE9HCS0gRW5hYmxlIHJlY29tcGlsZXIgbG9n Z2luZy9kaXNhc3NlbWJseQojIAoKRFlOQU9QVAk9IC1ETUVNQ0hLIC1EQVNTRVJUUyAtRERSTE9H CgojIER5bmFyZWMgY29yZSBmaWxlcwoKRFlOQVJFQ09CSlM9ICQoT0JKRElSKS9keW5hcmVjLm8g XAoJCQkgICQoT0JKRElSKS9tZW1vcnkubyBcCgkJCSAgJChPQkpESVIpL3RhcmdldG9wLm8KCiMg RGlzYXNzZW1ibGVyIGZpbGVzCgpESVNBU01PQkpTCT0gJChPQkpESVIpL2RpczQ4Ni5vIFwKCQkJ ICAkKE9CSkRJUikvbTY4a2Rhc20ubyBcCgkJCSAgJChPQkpESVIpL2luc25zZC5vIFwKCQkJICAk KE9CSkRJUikvc3luYy5vCgojIFNvdXJjZSBDUFVzCgpTT1VSQ0VPQkpTCT0gJChPQkpESVIpL3Ny YzY4ay5vCgojIFRhcmdldCBDUFVzCgpUQVJHRVRPQkpTCT0gJChPQkpESVIpL3g4Nm9wZ2VuLm8K CiMgU3RhcnNjcmVhbSBmaWxlcwoKU1RBUlNDUkVBTSA9ICQoT0JKRElSKS9tNjgwMDAubwoKIyBI b3N0IHNwZWNpZmljIGdsdWUgZmlsZXMKCkhPU1RPQkpTCT0gJChPQkpESVIpL2Jlb3MubwoKIyBU ZXN0IGZpbGUgdGhhdCBkcml2ZXMgdGhlIHdob2xlIHRoaW5nCgpURVNUT0JKUwk9ICQoT0JKRElS KS90ZXN0Lm8KCiMgQWxsIG9iamVjdHMgY29ubmVjdGVkIHRvZ2V0aGVyCgpBTExPQkpTCT0gJChI T1NUT0JKUykgJChESVNBU01PQkpTKSAkKERZTkFSRUNPQkpTKSAkKFNUQVJTQ1JFQU0pIFwKCQkJ ICAkKFNPVVJDRU9CSlMpICQoVEFSR0VUT0JKUykgJChURVNUT0JKUykKCmFsbDoJJChUQVJHRVRF WEUpCgokKFRBUkdFVEVYRSk6CSQoQUxMT0JKUykKCSQoTEQpICQoTERGTEFHUykgJChBTExPQkpT KSAtbyAkQAojLWwkKEhPU1RMSUJTKQoKIyBEeW5hcmVjIGNvcmUgZmlsZXMKCiQoT0JKRElSKS9k eW5hcmVjLm86IGNvcmUvZHluYXJlYy5jIGNvcmUvZHluYXJlYy5oIGNvcmUvdHlwZXMuaAoJJChD QykgJChEWU5BT1BUKSAkKENGTEFHUykgLWMgLW8gJEAgY29yZS9keW5hcmVjLmMKCiQoT0JKRElS KS9tZW1vcnkubzogY29yZS9tZW1vcnkuYyBjb3JlL2R5bmFyZWMuaCBjb3JlL3R5cGVzLmggY29y ZS9tZW1vcnkuaAoJJChDQykgJChEWU5BT1BUKSAkKENGTEFHUykgLWMgLW8gJEAgY29yZS9tZW1v cnkuYwoKJChPQkpESVIpL3RhcmdldG9wLm86IGNvcmUvdGFyZ2V0b3AuYyBjb3JlL2R5bmFyZWMu aCBjb3JlL3R5cGVzLmggY29yZS90YXJnZXRvcC5oCgkkKENDKSAkKERZTkFPUFQpICQoQ0ZMQUdT KSAtYyAtbyAkQCBjb3JlL3RhcmdldG9wLmMKCiMgRGlzYXNzZW1ibGVyIGZpbGVzCgokKE9CSkRJ UikvZGlzNDg2Lm86IGRpc2FzbS9kaXM0ODYuYyBjb3JlL3R5cGVzLmgKCSQoQ0MpICQoRFlOQU9Q VCkgJChDRkxBR1MpIC1jIC1vICRAIGRpc2FzbS9kaXM0ODYuYwoKJChPQkpESVIpL202OGtkYXNt Lm86IGRpc2FzbS9tNjhrZGFzbS5jIGNvcmUvdHlwZXMuaAoJJChDQykgJChEWU5BT1BUKSAkKENG TEFHUykgLWMgLW8gJEAgZGlzYXNtL202OGtkYXNtLmMKCiQoT0JKRElSKS9pbnNuc2QubzogZGlz YXNtL2luc25zZC5jIGNvcmUvdHlwZXMuaAoJJChDQykgJChEWU5BT1BUKSAkKENGTEFHUykgLWMg LW8gJEAgZGlzYXNtL2luc25zZC5jCgokKE9CSkRJUikvc3luYy5vOiBkaXNhc20vc3luYy5jIGNv cmUvdHlwZXMuaAoJJChDQykgJChEWU5BT1BUKSAkKENGTEFHUykgLWMgLW8gJEAgZGlzYXNtL3N5 bmMuYwoKIyBQbGF0Zm9ybSBzcGVjaWZpYyBmaWxlcwoKJChPQkpESVIpL2Jlb3Mubzogb3NkZXAv YmVvcy9iZW9zLmMgY29yZS90eXBlcy5oCgkkKENDKSAkKERZTkFPUFQpICQoQ0ZMQUdTKSAtYyAt byAkQCBvc2RlcC9iZW9zL2Jlb3MuYwoKIyBTb3VyY2UgQ1BVIHR5cGUgc2VjdGlvbgoKJChPQkpE SVIpL3NyYzY4ay5vOiBzb3VyY2VzLzY4MDAwL3NyYzY4ay5jCgkkKENDKSAkKERZTkFPUFQpICQo Q0ZMQUdTKSAtYyAtbyAkQCBzb3VyY2VzLzY4MDAwL3NyYzY4ay5jCgojIFRhcmdldCBDUFUgdHlw ZSBzZWN0aW9uCgokKE9CSkRJUikveDg2b3BnZW4ubzogdGFyZ2V0cy94ODYveDg2b3BnZW4uYwoJ JChDQykgJChEWU5BT1BUKSAkKENGTEFHUykgLWMgLW8gJEAgdGFyZ2V0cy94ODYveDg2b3BnZW4u YwoKIyBUZXN0IGZpbGUgdGhhdCBkcml2ZXMgaXQhCgokKE9CSkRJUikvdGVzdC5vOiB0ZXN0LmMK CSQoQ0MpICQoRFlOQU9QVCkgJChDRkxBR1MpIC1jIC1vICRAIHRlc3QuYwoKIyBTdGFyc2NyZWFt IHNwZWNpZmljIHNlY3Rpb24KCiQoT0JKRElSKS9zdGFyOiA2OGtlbXUvc3RhcmNwdS5oCgkkKEND KSAtcyAtbyAkQCA2OGtlbXUvc3Rhci5jCgokKE9CSkRJUikvbTY4MDAwLm86ICQoT0JKRElSKS9z dGFyCgkkKE9CSkRJUikvc3RhciAkKE9CSkRJUikvbTY4MDAwLmFzbQoJJChBU00pIC1mIGVsZiAk KE9CSkRJUikvbTY4MDAwLmFzbQoKIyBDbGVhbnVwIQoKY2xlYW46CQoJCXJtICQoT0JKRElSKS8q LioKCQlybSAkKFdJTkRJUikvKi4qCgkJcm0gb3NkZXAvd2luMzIvKi5uY2IKCQlybSAkKEJFT1NE SVIpLyouKgo= --Mail-It_--335000660 Content-Type: text/x-source-code; name="beos.c" Content-Transfer-Encoding: base64 Content-Disposition: Attachment; filename="beos.c" I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgImNvcmUvZHlu YXJlYy5oIgojaW5jbHVkZSAib3NkZXAvb3NkZXAuaCIKCnZvaWQgSG9zdEFzc2VydChVSU5UOCAq cHU4QXNzZXJ0U3RyaW5nKQp7CglmcHJpbnRmKHN0ZGVyciwgKGNoYXIgKikgcHU4QXNzZXJ0U3Ry aW5nKTsKCWV4aXQoMSk7Cn0KCmludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKewoJVGVz dEJlZ2luKCk7CglwcmludGYoInRlc3QgZG9uZS5cbiIpOwoJcmV0dXJuKDApOwp9Cg== --Mail-It_--335000660-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 15:11:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA94622 for dynarec-outgoing; Mon, 26 Jun 2000 15:11:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 15:18:32 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Makefile In-Reply-To: <00036afc8c6f2f0b_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >s68000init: > >As the same label. I've had to do this many times before. I'll make the > >fix tonight. > I've added the lines > emit("global %s%s\n", sourcename, fname); > emit("%s%s:\n", sourcename, fname); > to 'begin_source_proc'. > Now it compiles and links just fine. > The makefile and the osdepended main are attached. Great! Does it run - I.E. not crash? ;-) I'll include in the source drop tonight. Glad to see it's more than me working on this! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 15:12:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA94632 for dynarec-outgoing; Mon, 26 Jun 2000 15:12:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Makefile From: "M.I.K.e" In-Reply-To: Message-ID: <00036afc9750d485_mailit@mail.dynarec.com> References: Date: Tue, 27 Jun 2000 00:20:33 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It's only for the global labels. Feel free to do the mods. In fact, it may >just be a single procedure that produces them all. Have a look at star.c >if you dare... Who dares wins ;-) >-->Neil -- M.I.K.e One cannot make an omelette without breaking eggs -- but it is amazing how many eggs one can break without making a decent omelette. -- Professor Charles P. Issawi --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 15:19:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA94648 for dynarec-outgoing; Mon, 26 Jun 2000 15:19:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Makefile From: "M.I.K.e" In-Reply-To: Message-ID: <00036afcb0db72b0_mailit@mail.dynarec.com> References: Date: Tue, 27 Jun 2000 00:27:41 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Great! Does it run - I.E. not crash? ;-) I added a printf to the main to see that it actually does something and it displays the message and no crash, yes! ;-) >I'll include in the source drop tonight. The makefile is the important thing because I don't have any specific BeOS stuff in the source file. >Glad to see it's more than me working on this! ;-) Hehe, and I even thought of putting nasm into my bin directory before I launched the compiler ;-) I'm not used to porting software, especially not to BeOS, and it was some kind of fight to get it running, but now I'm quite satisfied! >-->Neil -- M.I.K.e Committees have become so important nowadays that subcommittees have to be appointed to do the work. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 18:02:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA94833 for dynarec-outgoing; Mon, 26 Jun 2000 18:02:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 18:09:47 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Welcome a newcomer.... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Please welcome Alex Pasadyn. He is a man worth of our worship. He successfully got a TMS 34010 emulator up and running and working and will have lots to contribute to our little foray. Time permitting of course. Welcome Alex! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 18:51:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA94888 for dynarec-outgoing; Mon, 26 Jun 2000 18:51:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Welcome a newcomer.... From: "M.I.K.e" In-Reply-To: Message-ID: <00036affa64f8e71_mailit@mail.dynarec.com> References: Date: Tue, 27 Jun 2000 03:59:29 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Please welcome Alex Pasadyn. He is a man worth of our worship. He >successfully got a TMS 34010 emulator up and running and working and will >have lots to contribute to our little foray. Time permitting of course. Welcome aboard Alex! Any contributions will be appeciated! >-->Neil -- M.I.K.e "There are three principal ways to lose money: wine, women, and engineers. While the first two are more pleasant, the third is by far the more certain." -- Baron Rothschild, ca. 1800 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 19:42:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA94966 for dynarec-outgoing; Mon, 26 Jun 2000 19:42:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 26 Jun 2000 19:49:59 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: New drop up Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Things are continuing! http://www.dynarec.com/~neilb/dr68k062600.zip This includes: * BeOS make files, appropriate starscream mods, and MSVC/DJGPP builds * Food Fight ROMs * Starscream init stuff YOU MUST RUN THE EXECUTABLE ONE LEVEL UP FROM THE /ROMS DIRECTORY SO IT'LL FIND THE FOOD FIGHT ROMS! After running the executable, it should emit a drlog.txt that looks like this: ------------ Food Fight initialize: Loaded file foodf.8c @ address 000000 - 2000 bytes Loaded file foodf.9c @ address 002000 - 2000 bytes Loaded file foodf.8d @ address 004000 - 2000 bytes Loaded file foodf.9d @ address 006000 - 2000 bytes Loaded file foodf.8e @ address 008000 - 2000 bytes Loaded file foodf.9e @ address 00a000 - 2000 bytes Loaded file foodf.8f @ address 00c000 - 2000 bytes Loaded file foodf.9f @ address 00e000 - 2000 bytes Starscream reset - returned 00000000 Reset vector = 0000008c ------------ Let me know if this works. If so, this is a big step towards cross platform! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 20:41:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA95017 for dynarec-outgoing; Mon, 26 Jun 2000 20:41:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <395819D3.A3436731@mail.utexas.edu> Date: Mon, 26 Jun 2000 22:04:51 -0500 From: Alex Pasadyn Organization: none X-Mailer: Mozilla 4.72 [en] (Win95; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Welcome a newcomer.... References: <00036affa64f8e71_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com "M.I.K.e" wrote: > > Welcome aboard Alex! > Any contributions will be appeciated! > Thanks! I'm going to spend a little bit of time catching up on all the mail I missed on this list up until now, but I've got lots of ideas and code coming. I suppose I should clean up my 34010 DR code sometime soon and post a buildable version, eh? I haven't touched my DR code in a few months now (been really busy), so I need to be sure it still works! Alex --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 23:26:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA95182 for dynarec-outgoing; Mon, 26 Jun 2000 23:26:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3958498B.9C37EC08@eurocopter.de> Date: Tue, 27 Jun 2000 08:28:27 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Makefile References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > > Error codes? Do you not have NASMW.EXE in your path somewhere? > > That was it, yep. Solved it before. That's better. :) > > So it builds OK for you now? It was doing last night. Mind you, I did install SP3 for it afterwards so I've got no idea if it _still_ works! :o > Do you now see what I was getting at with regard to the relative > paths? ;-) Yep. Remarkably similar to what I had. Only I had "." as my directory. Except it didn't work to well. The annoying thing is that your "../../" does work - and it shouldn't be any different! > Also, you ought to be able to put "DRASSERT(0);" in TestBegin() and run it > and have a nice little message box pop up. Let me know if it works OK for > you. I'll do that tonight if I can. There's a new student arriving today who I have to pick up from the airport. He'll be sleeping in my room until he gets his own place sorted (it's asking too much of this company to actually help out...) and so I don't know exactly what I'll be doing tonight. Besides, I've got to go kick some ass... I mean Ju-jitsu tonight. Nah, I'm sure I'll do it when I get in. Yep, I'll let you know ASAP :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 23:29:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA95194 for dynarec-outgoing; Mon, 26 Jun 2000 23:29:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39584A8C.EFB1E403@eurocopter.de> Date: Tue, 27 Jun 2000 08:32:44 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Welcome a newcomer.... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Please welcome Alex Pasadyn. He is a man worth of our worship. He > successfully got a TMS 34010 emulator up and running and working and will > have lots to contribute to our little foray. Time permitting of course. Cool. Welcome on board! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 23:30:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA95205 for dynarec-outgoing; Mon, 26 Jun 2000 23:30:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39584A4C.132CC86F@eurocopter.de> Date: Tue, 27 Jun 2000 08:31:40 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Well...? References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > So dr68k has been out for 24 hours now. ;-) Anyone perused the code and > took a look at things? Comments? Questions? Concerns? Hopefully the > direction that I'm going with this is clear. I did look at the code last night - honest! Things seem pretty clear at this point. We'll see if they still do later. ;) > Also - last night I got Food Fight to load up properly, and Starscream > actually resets and fetches the correct vector. Tonight I'll work on > getting it to actually run the game code. I'll give you all a drop when I > hit a stopping point. Cool! That's definitely good news! > I'm also hoping that at some point others will take the dynarec core and > do something other than Food Fight with it. Maybe a simultaneous > development curve would be in order? Someone else pick a project (or > something simple to emulate/model) and start filling in the pieces as > things get more well defined? I think that would be useful for all of us. I know I will do this... eventually. I wasn't planning on starting until August time though. Mind you, that's only just over a month. We'll see... I agree, it would be useful. What could be useful is getting some open source Genesis emulators and swapping the CPU cores. That could be very cool... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 26 23:51:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA95235 for dynarec-outgoing; Mon, 26 Jun 2000 23:51:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006270656.IAA22781@pons.ac.upc.es> Subject: Re: DYNAREC: Well...? In-Reply-To: <39584A4C.132CC86F@eurocopter.de> "from Neil Griffiths at Jun 27, 2000 08:31:40 am" To: dynarec@dynarec.com Date: Tue, 27 Jun 2000 08:56:28 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I'm also hoping that at some point others will take the dynarec core and > > do something other than Food Fight with it. Maybe a simultaneous > > development curve would be in order? Someone else pick a project (or > > something simple to emulate/model) and start filling in the pieces as > > things get more well defined? I think that would be useful for all of us. > > I know I will do this... eventually. I wasn't planning on starting until > August time though. Mind you, that's only just over a month. We'll see... > > I agree, it would be useful. What could be useful is getting some open > source Genesis emulators and swapping the CPU cores. That could be very > cool... We can use DGEN as it uses Starscream. And I'm interested with it because I haven't decided yet if I will build the MegaCD emulator from scratch or I will use an open source MegaDrive emulator. We could ask Dave if he is interested we put our hands in its emulator. ;) He realeases the source of an old version of his emulator. We could ask him for the last or not. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 00:05:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA95267 for dynarec-outgoing; Tue, 27 Jun 2000 00:05:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006270711.JAA14584@pons.ac.upc.es> Subject: DYNAREC: Comments about DR68k In-Reply-To: <39584A8C.EFB1E403@eurocopter.de> "from Neil Griffiths at Jun 27, 2000 08:32:44 am" To: dynarec@dynarec.com Date: Tue, 27 Jun 2000 09:11:27 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > Please welcome Alex Pasadyn. He is a man worth of our worship. He > > successfully got a TMS 34010 emulator up and running and working and will > > have lots to contribute to our little foray. Time permitting of course. > > Cool. Welcome on board! > Well welcome. The dynarec family is increasing really quickly. :) Some comments about the emulator. I was thinking in the name. For me DR68K is just fine but if you want to change for another I vote for "Optimus". We will have to decide how we will implement the Transmap. We can't just have a 16Mx4 table. It's too big and useless. I can see two solutions: use paged transmap or use the fetch memory map. I like more paged transmap (you can understand why ;). With paged transmap we will have , for example, 4 Kb pages and a page map table of 8Kx4. Then we will have as much space for the transmap as pages with code we have. If we use the fetch memory map we will have transmap tables for every memory region in the fetch map. I get an idea about timing this morning. We can avoid to check after every instruction the number of cycles executed and have the same accuracy. Let me try explain me. When we call execute68k (or whatever its name) we will always call for a great number of cycles usually (more than I thousand I hope). So why check everytime for the number of cycles remaining after an instruction if we still have so many cycles. I thought that we could write a checkpoint at the begining of each block (block is a group of instructions). It will check if we have enough cycles to execute all the block. If we have, we call a version of the translated block without per instruction check, the time is updated at each exit point of the block. If not we call a version of the translation with the per instruction check. We will have two versions of the translation. If the execute68k function is called with good numbers of cycles we will be avoiding the time wasteful per instruction versions of the translation until the very end of the execution, and we will improve the performance. It has sure some problems, mainly loops inside blocks, but I think we can avoid them without lossing a better performance. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 00:18:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA95288 for dynarec-outgoing; Tue, 27 Jun 2000 00:18:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 27 Jun 2000 00:26:22 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: <200006270711.JAA14584@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I was thinking in the name. For me DR68K is just fine but if you want > to change for another I vote for "Optimus". The problem with Optimus is that it's the name of a really cheap brand of speakers at Radio Shack. Much the same that one wouldn't call it Maxipad, Massengil, Depends, or Summer's Eve as it evokes negative feelings. ;-) > We will have to decide how we will implement the Transmap. We can't just > have a 16Mx4 table. It's too big and useless. I can see two solutions: > use paged transmap or use the fetch memory map. There is a fetch memory map already, to which we create a transmap of size/2 entries (no need to recompile the odd addresses as that would never happen) > transmap (you can understand why ;). With paged transmap we will have > , for example, 4 Kb pages and a page map table of 8Kx4. Then we will > have as much space for the transmap as pages with code we have. If > we use the fetch memory map we will have transmap tables for every > memory region in the fetch map. Then every time we need to look up an address in the code execution form, we'll need to scan and look for it. I already hate having to look it up in the transmap. This just makes it (unfortunately) worse! It'll be needed at runtime - not only recompile time. > accuracy. Let me try explain me. When we call execute68k (or whatever > its name) we will always call for a great number of cycles usually > (more than I thousand I hope). So why check everytime for the number > of cycles remaining after an instruction if we still have so many > cycles. I thought that we could write a checkpoint at the begining > of each block (block is a group of instructions). It will check if > we have enough cycles to execute all the block. That's the plan after we get all the timing locked down and working 100%. I don't want to be fighting problems with timing only to discover that the "sloppy" approach induces problems that we think are translation. However, the source layer will pass info as to when to create timing pragmas so later on we can create an interface that says "It's safe to create sloppy timing from address x-y". That gives the implementor a bit of flexibility and a good boost in the arm of performance. So by a simple flip of an API's "switch", we can enable/disable regions (or the whole thing) with this. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 00:36:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA95321 for dynarec-outgoing; Tue, 27 Jun 2000 00:36:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006270739.JAA08361@pons.ac.upc.es> Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: "from Neil Bradley at Jun 27, 2000 00:26:22 am" To: dynarec@dynarec.com Date: Tue, 27 Jun 2000 09:39:05 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I was thinking in the name. For me DR68K is just fine but if you want > > to change for another I vote for "Optimus". > > The problem with Optimus is that it's the name of a really cheap brand of > speakers at Radio Shack. Much the same that one wouldn't call it Maxipad, > Massengil, Depends, or Summer's Eve as it evokes negative feelings. ;-) > Well I don't know about speakers so for me is fine. ;) > > transmap (you can understand why ;). With paged transmap we will have > > , for example, 4 Kb pages and a page map table of 8Kx4. Then we will > > have as much space for the transmap as pages with code we have. If > > we use the fetch memory map we will have transmap tables for every > > memory region in the fetch map. > > Then every time we need to look up an address in the code execution form, > we'll need to scan and look for it. I already hate having to look it up in > the transmap. This just makes it (unfortunately) worse! It'll be needed at > runtime - not only recompile time. > Ummm ... Indirect jumps? I think it is the only case were it is needed. I don't think it is so common we have to worry about it. And paged transmap adds more flexibility to the emulator. > > That's the plan after we get all the timing locked down and working > 100%. I don't want to be fighting problems with timing only to discover > that the "sloppy" approach induces problems that we think are translation. > > However, the source layer will pass info as to when to create timing > pragmas so later on we can create an interface that says "It's safe to > create sloppy timing from address x-y". That gives the implementor a bit > of flexibility and a good boost in the arm of performance. So by a simple > flip of an API's "switch", we can enable/disable regions (or the whole > thing) with this. > But I think that with this solution it will be always safe. You do the accurated timing but only when you need it, at the end of the execution slot. You have two versions of the translation but who cares about a bit more of memory wasted. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 00:56:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA95350 for dynarec-outgoing; Tue, 27 Jun 2000 00:56:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 27 Jun 2000 01:03:45 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: <200006270739.JAA08361@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Then every time we need to look up an address in the code execution form, > > we'll need to scan and look for it. I already hate having to look it up in > > the transmap. This just makes it (unfortunately) worse! It'll be needed at > > runtime - not only recompile time. > Ummm ... Indirect jumps? I think it is the only case were it is needed. No, it's more than that. Anytime someone does a return (quite common) or jumps to an address that wasn't known at recompile time. We will have to worry about it. > I don't think it is so common we have to worry about it. And paged > transmap adds more flexibility to the emulator. How is it more "flexible" other than just using less memory and slowing things down? > > However, the source layer will pass info as to when to create timing > > pragmas so later on we can create an interface that says "It's safe to > > create sloppy timing from address x-y". That gives the implementor a bit > > of flexibility and a good boost in the arm of performance. So by a simple > > flip of an API's "switch", we can enable/disable regions (or the whole > > thing) with this. > But I think that with this solution it will be always safe. You do the > accurated timing but only when you need it, at the end of the execution > slot. Not if you need accurate timing to the point of a few clocks - and believe me *THIS IS REQUIRED*. This is what we went over a thousand times in email and no one seems to listen to me on! If you tell it you want to execute 20 cycles, and sloppy timing causes it to execute 50, well, then you've just blown your interrupt timing and other things that rely on it. Then you watch your sprites and bitmaps flicker and disappear because of it. In any case, the default needs to be tight-assed timing so that people can get things running. IF they want to speed it up, they can start marking regions as regions that can be sloppliy timed. Regardless, both methods are still possible. > You have two versions of the translation but who cares about a bit > more of memory wasted. You don't need two versions of the translation! You precharge the recompiler with information on the regions where it can (and can't) do sloppy timing. There is *ABSOLUTELY NO NEED* to have two versions! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 01:21:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA95392 for dynarec-outgoing; Tue, 27 Jun 2000 01:21:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006270826.KAA04145@pons.ac.upc.es> Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: "from Neil Bradley at Jun 27, 2000 01:03:45 am" To: dynarec@dynarec.com Date: Tue, 27 Jun 2000 10:26:12 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I don't think it is so common we have to worry about it. And paged > > transmap adds more flexibility to the emulator. > > How is it more "flexible" other than just using less memory and slowing > things down? > Well it is more "flexible" because it doesn't matter the size or the situation of the code. And yes it is a bit more slow. > > > However, the source layer will pass info as to when to create timing > > > pragmas so later on we can create an interface that says "It's safe to > > > create sloppy timing from address x-y". That gives the implementor a bit > > > of flexibility and a good boost in the arm of performance. So by a simple > > > flip of an API's "switch", we can enable/disable regions (or the whole > > > thing) with this. > > But I think that with this solution it will be always safe. You do the > > accurated timing but only when you need it, at the end of the execution > > slot. > > Not if you need accurate timing to the point of a few clocks - and believe > me *THIS IS REQUIRED*. This is what we went over a thousand times in email > and no one seems to listen to me on! If you tell it you want to execute 20 > cycles, and sloppy timing causes it to execute 50, well, then you've just > blown your interrupt timing and other things that rely on it. Then you > watch your sprites and bitmaps flicker and disappear because of it. > You aren't understand me. I'm not talking about sloppy timing. I'm talking about accurate block timing. I will try to explain it with an example: you call exec68K with 40 cycles to be executed. If you aren't in the beginning of a block you jump to a per instruction timing translation (the one it is in the transmap). You execute for example 10 cycles and you find the begining of a block. Here you know how many cycles are needed for ending the full block (you know it while recompiling, I don't care about loops inside the block, assume we haven't them now). It is 20, you have 30 more cycles to execute so you jump to the translated version without per instruction timing. Every point inside this version that goes out the block updates ACCURATEDLY the timing, but it isn't updated after each instruction. Finally you arrive to another block, this block needs 15 to end it, but you only have 10 so you jump to the translated version with per instruction updates which works as usually. If you call exec68K with 5 cycles you will execute ever per instruction update versions. In the transmap you will have always the address for the translated version WITH per instruction updates. But each entry of the table which is a block start address points to the code which decides if you will execute per block update version or the per instruction update version. Loops inside blocks is a real problem we have to handle still but I think there are solution for this. For example one easy will be apply this solution only if the block doesn't have loops inside. > In any case, the default needs to be tight-assed timing so that people can > get things running. IF they want to speed it up, they can start marking > regions as regions that can be sloppliy timed. Regardless, both methods > are still possible. > I agree with that. But I say it is that my solution is still very accurated timing and it could provide some speed up. In any case I think it must be studied if it is useful. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 01:31:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA95414 for dynarec-outgoing; Tue, 27 Jun 2000 01:31:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 27 Jun 2000 01:38:59 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: <200006270826.KAA04145@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > How is it more "flexible" other than just using less memory and slowing > > things down? > Well it is more "flexible" because it doesn't matter the size or the > situation of the code. And yes it is a bit more slow. But we already know the region of the recompilable area when the dynarec is called (when SetContext() is called). > > Not if you need accurate timing to the point of a few clocks - and believe > > me *THIS IS REQUIRED*. This is what we went over a thousand times in email > You aren't understand me. I'm not talking about sloppy timing. I'm talking We're saying the same thing. If your block takes 30 clocks to execute and you tell it to execute 10, and it only checks timing at the terminals, it'll execute 20 clocks past where you want it to go. > call exec68K with 40 cycles to be executed. If you aren't in the beginning > of a block you jump to a per instruction timing translation (the one it The transmap doesn't contain timing information - only virtual->actual address mappings. > is in the transmap). You execute for example 10 cycles and you find > the begining of a block. Here you know how many cycles are needed for > ending the full block (you know it while recompiling, I don't care about > loops inside the block, assume we haven't them now). Um... this is *REALLY* common to have. That's like say "ignore calls/ret". ;-) > It is 20, you have > 30 more cycles to execute so you jump to the translated version without > per instruction timing. Every point inside this version that goes out > the block updates ACCURATEDLY the timing, but it isn't updated after each > instruction. And you wind up using a bunch more memory and spend more time recompiling. > > regions as regions that can be sloppliy timed. Regardless, both methods > > are still possible. > I agree with that. But I say it is that my solution is still very accurated > timing and it could provide some speed up. In any case I think it must > be studied if it is useful. In either case you still have to tell the dynarec core what regions are (and aren't) timing important. My approach doesn't generate a bunch more code. It instead changes the behavior of the code on a per region basis when the recompilation happens instead of using a bunch more memory (and time) recompiling two versions of the same code. This would require two transmaps, too, for each type of code. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 01:46:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA95440 for dynarec-outgoing; Tue, 27 Jun 2000 01:46:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006270851.KAA19810@pons.ac.upc.es> Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: "from Neil Bradley at Jun 27, 2000 01:38:59 am" To: dynarec@dynarec.com Date: Tue, 27 Jun 2000 10:51:51 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Not if you need accurate timing to the point of a few clocks - and believe > > > me *THIS IS REQUIRED*. This is what we went over a thousand times in email > > You aren't understand me. I'm not talking about sloppy timing. I'm talking > > We're saying the same thing. If your block takes 30 clocks to execute and > you tell it to execute 10, and it only checks timing at the terminals, > it'll execute 20 clocks past where you want it to go. > But you will never execute a block that takes 30 clocks and check timing at terminals when you only have 10!! If this happen you will execute the per instruction version. > > call exec68K with 40 cycles to be executed. If you aren't in the beginning > > of a block you jump to a per instruction timing translation (the one it > > The transmap doesn't contain timing information - only virtual->actual > address mappings. > I haven't saied something different. What happens is that the transmap points to the translation with per instruction timing not to the the the translation with per block timing. > > is in the transmap). You execute for example 10 cycles and you find > > the begining of a block. Here you know how many cycles are needed for > > ending the full block (you know it while recompiling, I don't care about > > loops inside the block, assume we haven't them now). > > Um... this is *REALLY* common to have. That's like say "ignore > calls/ret". ;-) > I know but for simplicity I ignore it now. We can work on it later. It's being already enough hard to explain. > > It is 20, you have > > 30 more cycles to execute so you jump to the translated version without > > per instruction timing. Every point inside this version that goes out > > the block updates ACCURATEDLY the timing, but it isn't updated after each > > instruction. > > And you wind up using a bunch more memory and spend more time recompiling. > You double the size of the translated code, but it is so important?. If we can speedup the translation enough I won't care about a bit more memory used. We are already using a lot of less memory than Starscream. And I don't think it will slow the translation, the code generated is the same for the two version but time checkings and the only think you have to calculate is the total time of the block. Every optimization you put in the recompiler will mean a slower recompiler. What's the problem with it. > > > regions as regions that can be sloppliy timed. Regardless, both methods > > > are still possible. > > I agree with that. But I say it is that my solution is still very accurated > > timing and it could provide some speed up. In any case I think it must > > be studied if it is useful. > > In either case you still have to tell the dynarec core what regions are > (and aren't) timing important. My approach doesn't generate a bunch more > code. It instead changes the behavior of the code on a per region basis > when the recompilation happens instead of using a bunch more memory (and > time) recompiling two versions of the same code. This would require two > transmaps, too, for each type of code. > I doesn't mean to have two transmaps. With only one transmap you have enough. In the transmap it will be the address for the translated code with the per instruction check. This for the instruction that are inside a block. For the instruction which is the start of the block the transmap points to check code which decides which version to execute. > -->Neil > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 02:22:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA95649 for dynarec-outgoing; Tue, 27 Jun 2000 02:22:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: New drop up From: "M.I.K.e" In-Reply-To: Message-ID: <00036b05ec72fa17_mailit@mail.dynarec.com> References: Date: Tue, 27 Jun 2000 11:28:36 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Things are continuing! >Let me know if this works. If so, this is a big step towards cross >platform! Builds fine, no crash on execution, and my drlog.txt looks just like yours! ; -) >-->Neil -- M.I.K.e He had that rare weird electricity about him -- that extremely wild and heavy presence that you only see in a person who has abandoned all hope of ever behaving "normally." -- Hunter S. Thompson, "Fear and Loathing '72" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 02:33:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA95674 for dynarec-outgoing; Tue, 27 Jun 2000 02:33:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006270938.LAA29634@pons.ac.upc.es> Subject: Re: DYNAREC: 68K info In-Reply-To: <00036aa3ee54b6fa_mailit@mail.dynarec.com> "from M.I.K.e at Jun 22, 2000 02:34:00 pm" To: dynarec@dynarec.com Date: Tue, 27 Jun 2000 11:38:28 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > M.I.K.e > > "The two most common things in the universe are hydrogen and > stupidity." > Oh yes! The hydrogen created the universe and now the stupidity is trying to destroy it. Hehehe. :) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 07:08:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA96002 for dynarec-outgoing; Tue, 27 Jun 2000 07:08:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3958B5B0.B807093F@eurocopter.de> Date: Tue, 27 Jun 2000 16:09:52 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > The problem with Optimus is that it's the name of a really cheap brand of > speakers at Radio Shack. Much the same that one wouldn't call it Maxipad, > Massengil, Depends, or Summer's Eve as it evokes negative feelings. ;-) Really? Never heard of them (Optimus). But I vote for Maxipad. ;) Actually, I do have a good suggestion. How about "Deep thought"? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 09:14:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA96148 for dynarec-outgoing; Tue, 27 Jun 2000 09:14:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 27 Jun 2000 09:21:52 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: An idea Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Alex has an idea that I think is really cool. He has created this file to handle all the x86 opcodes that are possible. From this we can generate code that actually emits the x86 opcodes. Have a look, think about it, and let's discuss! ; earlier instructions have precedence in this table xxxx xxxx xxxx xxxx |invalid|DB|NCZV|NCZV|-1 -1 1 } ; control operations 1001 0000 |NOP|NULL|-|-|1 1 0 ; nop 1100 0011 |RET|NULL|-|-|1 1 0 ; ret 1001 1111 |LAHF|NULL|-|-|1 1 0 ; lahf 1001 1110 |SAHF|NULL|-|-|2 2 0 ; sahf 0000 1111 1001 0000 |SETO|RM8|-|-|2 2 0 ; seto r/m8 0110 0110 1111 1111 XX01 0XXX |CALL|NOREG RM16|-|-|1 1 0 ; call r/m16 1111 1111 XX01 0XXX |CALL|NOREG RM32|-|-|1 1 0 ; call r/m32 ; 0110 1000 |PUSH|IMM32|-|-|1 1 0 ; push immediate32 ; move instructions 1000 1000 |MOV|RM8 R8|-|-|1 1 0 ; mov r/m8, r8 0110 0110 1000 1001 |MOV|RM16 R16|-|-|1 1 0 ; mov r/m16, r16 1000 1001 |MOV|RM32 R32|-|-|1 1 0 ; mov r/m32, r32 1000 1010 |MOV|R8 RM8|-|-|1 1 0 ; mov r8, r/m8 0110 0110 1000 1011 |MOV|R16 RM16|-|-|1 1 0 ; mov r16, r/m16 1000 1011 |MOV|R32 RM32|-|-|1 1 0 ; mov r32, r/m32 1010 0000 |MOV|AL MOFFS|-|-|1 1 0 ; mov al, [moffs] 0110 0110 1010 0001 |MOV|AX MOFFS|-|-|1 1 0 ; mov ax, [moffs] 1010 0001 |MOV|EAX MOFFS|-|-|1 1 0 ; mov eax, [moffs] 1010 0010 |MOV|MOFFS AL|-|-|1 1 0 ; mov [moffs], al 0110 0110 1010 0011 |MOV|MOFFS AX|-|-|1 1 0 ; mov [moffs], ax 1010 0011 |MOV|MOFFS EAX|-|-|1 1 0 ; mov [moffs], eax 1011 0DDD |MOV|RB IMM8|-|-|1 1 0 ; mov reg8, imm8 0110 0110 1011 1DDD |MOV|RW IMM16|-|-|1 1 0 ; mov reg16, imm16 1011 1DDD |MOV|RD IMM32|-|-|1 1 0 ; mov reg32, imm32 1100 0110 XX00 0XXX |MOV|NOREG RM8 IMM8|-|-|1 1 0 ; mov r/m8, imm8 0110 0110 1100 0111 XX00 0XXX |MOV|NOREG RM16 IMM16|-|-|1 1 0 ; mov r/m16, imm16 1100 0111 XX00 0XXX |MOV|NOREG RM32 IMM32|-|-|1 1 0 ; mov r/m32, imm32 ; add/adc instructions 0000 0100 |ADD|AL IMM8|-|-|1 1 0 ; add al, imm8 0110 0110 0000 0101 |ADD|AX IMM16|-|-|1 1 0 ; add ax, imm16 0000 0101 |ADD|EAX IMM32|-|-|1 1 0 ; add eax, imm32 1000 0000 XX00 0XXX |ADD|NOREG RM8 IMM8|-|-|1 1 0 ; add r/m8, imm8 0110 0110 1000 0001 XX00 0XXX |ADD|NOREG RM16 IMM16|-|-|1 1 0 ; add r/m16, imm16 1000 0001 XX00 0XXX |ADD|NOREG RM32 IMM32|-|-|1 1 0 ; add r/m32, imm32 0110 0110 1000 0011 XX00 0XXX |ADD|NOREG RM16 IMM8|-|-|1 1 0 ; add r/m16, (signed) imm8 1000 0011 XX00 0XXX |ADD|NOREG RM32 IMM8|-|-|1 1 0 ; add r/m32, (signed) imm8 0000 0000 |ADD|RM8 R8|-|-|1 1 0 ; add r/m8, r8 0110 0110 0000 0001 |ADD|RM16 R16|-|-|1 1 0 ; add r/m16, r16 0000 0001 |ADD|RM32 R32|-|-|1 1 0 ; add r/m32, r32 0000 0010 |ADD|R8 RM8|-|-|1 1 0 ; add r8, r/m8 0110 0110 0000 0011 |ADD|R16 RM16|-|-|1 1 0 ; add r16, r/m16 0000 0011 |ADD|R32 RM32|-|-|1 1 0 ; add r32, r/m32 0001 0100 |ADC|AL IMM8|-|-|1 1 0 ; adc al, imm8 0110 0110 0001 0101 |ADC|AX IMM16|-|-|1 1 0 ; adc ax, imm16 0001 0101 |ADC|EAX IMM32|-|-|1 1 0 ; adc eax, imm32 1000 0000 XX01 0XXX |ADC|NOREG RM8 IMM8|-|-|1 1 0 ; adc r/m8, imm8 0110 0110 1000 0001 XX01 0XXX |ADC|NOREG RM16 IMM16|-|-|1 1 0 ; adc r/m16, imm16 1000 0001 XX01 0XXX |ADC|NOREG RM32 IMM32|-|-|1 1 0 ; adc r/m32, imm32 0110 0110 1000 0011 XX01 0XXX |ADC|NOREG RM16 IMM8|-|-|1 1 0 ; adc r/m16, (signed) imm8 1000 0011 XX01 0XXX |ADC|NOREG RM32 IMM8|-|-|1 1 0 ; adc r/m32, (signed) imm8 0001 0000 |ADC|RM8 R8|-|-|1 1 0 ; adc r/m8, r8 0110 0110 0001 0001 |ADC|RM16 R16|-|-|1 1 0 ; adc r/m16, r16 0001 0001 |ADC|RM32 R32|-|-|1 1 0 ; adc r/m32, r32 0001 0010 |ADC|R8 RM8|-|-|1 1 0 ; adc r8, r/m8 0110 0110 0001 0011 |ADC|R16 RM16|-|-|1 1 0 ; adc r16, r/m16 0001 0011 |ADC|R32 RM32|-|-|1 1 0 ; adc r32, r/m32 ; sub instructions 0010 1100 |SUB|AL IMM8|-|-|1 1 0 ; sub al, imm8 0110 0110 0010 1101 |SUB|AX IMM16|-|-|1 1 0 ; sub ax, imm16 0010 1101 |SUB|EAX IMM32|-|-|1 1 0 ; sub eax, imm32 1000 0000 XX10 1XXX |SUB|NOREG RM8 IMM8|-|-|1 1 0 ; sub r/m8, imm8 0110 0110 1000 0001 XX10 1XXX |SUB|NOREG RM16 IMM16|-|-|1 1 0 ; sub r/m16, imm16 1000 0001 XX10 1XXX |SUB|NOREG RM32 IMM32|-|-|1 1 0 ; sub r/m32, imm32 0110 0110 1000 0011 XX10 1XXX |SUB|NOREG RM16 IMM8|-|-|1 1 0 ; sub r/m16, (signed) imm8 1000 0011 XX10 1XXX |SUB|NOREG RM32 IMM8|-|-|1 1 0 ; sub r/m32, (signed) imm8 0010 1000 |SUB|RM8 R8|-|-|1 1 0 ; sub r/m8, r8 0110 0110 0010 1001 |SUB|RM16 R16|-|-|1 1 0 ; sub r/m16, r16 0010 1001 |SUB|RM32 R32|-|-|1 1 0 ; sub r/m32, r32 0010 1010 |SUB|R8 RM8|-|-|1 1 0 ; sub r8, r/m8 0110 0110 0010 1011 |SUB|R16 RM16|-|-|1 1 0 ; sub r16, r/m16 0010 1011 |SUB|R32 RM32|-|-|1 1 0 ; sub r32, r/m32 ; cmp instructions 0011 1100 |CMP|AL IMM8|-|-|1 1 0 ; cmp al, imm8 0110 0110 0011 1101 |CMP|AX IMM16|-|-|1 1 0 ; cmp ax, imm16 0011 1101 |CMP|EAX IMM32|-|-|1 1 0 ; cmp eax, imm32 1000 0000 XX11 1XXX |CMP|NOREG RM8 IMM8|-|-|1 1 0 ; cmp r/m8, imm8 0110 0110 1000 0001 XX11 1XXX |CMP|NOREG RM16 IMM16|-|-|1 1 0 ; cmp r/m16, imm16 1000 0001 XX11 1XXX |CMP|NOREG RM32 IMM32|-|-|1 1 0 ; cmp r/m32, imm32 0110 0110 1000 0011 XX11 1XXX |CMP|NOREG RM16 IMM8|-|-|1 1 0 ; cmp r/m16, (signed) imm8 1000 0011 XX11 1XXX |CMP|NOREG RM32 IMM8|-|-|1 1 0 ; cmp r/m32, (signed) imm8 0011 1000 |CMP|RM8 R8|-|-|1 1 0 ; cmp r/m8, r8 0110 0110 0011 1001 |CMP|RM16 R16|-|-|1 1 0 ; cmp r/m16, r16 0011 1001 |CMP|RM32 R32|-|-|1 1 0 ; cmp r/m32, r32 0011 1010 |CMP|R8 RM8|-|-|1 1 0 ; cmp r8, r/m8 0110 0110 0011 1011 |CMP|R16 RM16|-|-|1 1 0 ; cmp r16, r/m16 0011 1011 |CMP|R32 RM32|-|-|1 1 0 ; cmp r32, r/m32 ; and instructions 0010 0100 |AND|AL IMM8|-|-|1 1 0 ; and al, imm8 0110 0110 0010 0101 |AND|AX IMM16|-|-|1 1 0 ; and ax, imm16 0010 0101 |AND|EAX IMM32|-|-|1 1 0 ; and eax, imm32 1000 0000 XX10 0XXX |AND|NOREG RM8 IMM8|-|-|1 1 0 ; and r/m8, imm8 0110 0110 1000 0001 XX10 0XXX |AND|NOREG RM16 IMM16|-|-|1 1 0 ; and r/m16, imm16 1000 0001 XX10 0XXX |AND|NOREG RM32 IMM32|-|-|1 1 0 ; and r/m32, imm32 0110 0110 1000 0011 XX10 0XXX |AND|NOREG RM16 IMM8|-|-|1 1 0 ; and r/m16, (signed) imm8 1000 0011 XX10 0XXX |AND|NOREG RM32 IMM8|-|-|1 1 0 ; and r/m32, (signed) imm8 0010 0000 |AND|RM8 R8|-|-|1 1 0 ; and r/m8, r8 0110 0110 0010 0001 |AND|RM16 R16|-|-|1 1 0 ; and r/m16, r16 0010 0001 |AND|RM32 R32|-|-|1 1 0 ; and r/m32, r32 0010 0010 |AND|R8 RM8|-|-|1 1 0 ; and r8, r/m8 0110 0110 0010 0011 |AND|R16 RM16|-|-|1 1 0 ; and r16, r/m16 0010 0011 |AND|R32 RM32|-|-|1 1 0 ; and r32, r/m32 ; or instructions 0000 1100 |OR|AL IMM8|-|-|1 1 0 ; or al, imm8 0110 0110 0000 1101 |OR|AX IMM16|-|-|1 1 0 ; or ax, imm16 0000 1101 |OR|EAX IMM32|-|-|1 1 0 ; or eax, imm32 1000 0000 XX00 1XXX |OR|NOREG RM8 IMM8|-|-|1 1 0 ; or r/m8, imm8 0110 0110 1000 0001 XX00 1XXX |OR|NOREG RM16 IMM16|-|-|1 1 0 ; or r/m16, imm16 1000 0001 XX00 1XXX |OR|NOREG RM32 IMM32|-|-|1 1 0 ; or r/m32, imm32 0110 0110 1000 0011 XX00 1XXX |OR|NOREG RM16 IMM8|-|-|1 1 0 ; or r/m16, (signed) imm8 1000 0011 XX00 1XXX |OR|NOREG RM32 IMM8|-|-|1 1 0 ; or r/m32, (signed) imm8 0000 1000 |OR|RM8 R8|-|-|1 1 0 ; or r/m8, r8 0110 0110 0000 1001 |OR|RM16 R16|-|-|1 1 0 ; or r/m16, r16 0000 1001 |OR|RM32 R32|-|-|1 1 0 ; or r/m32, r32 0000 1010 |OR|R8 RM8|-|-|1 1 0 ; or r8, r/m8 0110 0110 0000 1011 |OR|R16 RM16|-|-|1 1 0 ; or r16, r/m16 0000 1011 |OR|R32 RM32|-|-|1 1 0 ; or r32, r/m32 ; xor instructions 0011 0100 |XOR|AL IMM8|-|-|1 1 0 ; xor al, imm8 0110 0110 0011 0101 |XOR|AX IMM16|-|-|1 1 0 ; xor ax, imm16 0011 0101 |XOR|EAX IMM32|-|-|1 1 0 ; xor eax, imm32 1000 0000 XX11 0XXX |XOR|NOREG RM8 IMM8|-|-|1 1 0 ; xor r/m8, imm8 0110 0110 1000 0001 XX11 0XXX |XOR|NOREG RM16 IMM16|-|-|1 1 0 ; xor r/m16, imm16 1000 0001 XX11 0XXX |XOR|NOREG RM32 IMM32|-|-|1 1 0 ; xor r/m32, imm32 0110 0110 1000 0011 XX11 0XXX |XOR|NOREG RM16 IMM8|-|-|1 1 0 ; xor r/m16, (signed) imm8 1000 0011 XX11 0XXX |XOR|NOREG RM32 IMM8|-|-|1 1 0 ; xor r/m32, (signed) imm8 0011 0000 |XOR|RM8 R8|-|-|1 1 0 ; xor r/m8, r8 0110 0110 0011 0001 |XOR|RM16 R16|-|-|1 1 0 ; xor r/m16, r16 0011 0001 |XOR|RM32 R32|-|-|1 1 0 ; xor r/m32, r32 0011 0010 |XOR|R8 RM8|-|-|1 1 0 ; xor r8, r/m8 0110 0110 0011 0011 |XOR|R16 RM16|-|-|1 1 0 ; xor r16, r/m16 0011 0011 |XOR|R32 RM32|-|-|1 1 0 ; xor r32, r/m32 ; not instructions 1111 0110 XX01 0XXX |NOT|NOREG RM8|-|-|1 1 0 ; not r/m8 0110 0110 1111 0111 XX01 0XXX |NOT|NOREG RM16|-|-|1 1 0 ; not r/m16 1111 0111 XX01 0XXX |NOT|NOREG RM32|-|-|1 1 0 ; not r/m32 ; shift/rotate instructions 1100 0000 XX10 1XXX |SHR|NOREG RM8 IMM8|-|-|1 1 0 ;shr r/m8,imm8 0110 0110 1100 0001 XX10 1XXX |SHR|NOREG RM16 IMM8|-|-|1 1 0 ;shr r/m16,imm8 1100 0001 XX10 1XXX |SHR|NOREG RM32 IMM8|-|-|1 1 0 ;shr r/m32,imm8 1101 0000 XX10 1XXX |SHR|NOREG RM8 1|-|-|1 1 0 ;shr r/m8,1 0110 0110 1101 0001 XX10 1XXX |SHR|NOREG RM16 1|-|-|1 1 0 ;shr r/m16,1 1101 0001 XX10 1XXX |SHR|NOREG RM32 1|-|-|1 1 0 ;shr r/m32,1 1101 0010 XX10 1XXX |SHR|NOREG RM8 CL|-|-|1 1 0 ;shr r/m8,cl 0110 0110 1101 0011 XX10 1XXX |SHR|NOREG RM16 CL|-|-|1 1 0 ;shr r/m16,cl 1101 0011 XX10 1XXX |SHR|NOREG RM32 CL|-|-|1 1 0 ;shr r/m32,cl 1100 0000 XX11 1XXX |SAR|NOREG RM8 IMM8|-|-|1 1 0 ;sar r/m8,imm8 0110 0110 1100 0001 XX11 1XXX |SAR|NOREG RM16 IMM8|-|-|1 1 0 ;sar r/m16,imm8 1100 0001 XX11 1XXX |SAR|NOREG RM32 IMM8|-|-|1 1 0 ;sar r/m32,imm8 1101 0000 XX11 1XXX |SAR|NOREG RM8 1|-|-|1 1 0 ;sar r/m8,1 0110 0110 1101 0001 XX11 1XXX |SAR|NOREG RM16 1|-|-|1 1 0 ;sar r/m16,1 1101 0001 XX11 1XXX |SAR|NOREG RM32 1|-|-|1 1 0 ;sar r/m32,1 1101 0010 XX11 1XXX |SAR|NOREG RM8 CL|-|-|1 1 0 ;sar r/m8,cl 0110 0110 1101 0011 XX11 1XXX |SAR|NOREG RM16 CL|-|-|1 1 0 ;sar r/m16,cl 1101 0011 XX11 1XXX |SAR|NOREG RM32 CL|-|-|1 1 0 ;sar r/m32,cl 1100 0000 XX00 1XXX |ROR|NOREG RM8 IMM8|-|-|1 1 0 ;ror r/m8,imm8 0110 0110 1100 0001 XX00 1XXX |ROR|NOREG RM16 IMM8|-|-|1 1 0 ;ror r/m16,imm8 1100 0001 XX00 1XXX |ROR|NOREG RM32 IMM8|-|-|1 1 0 ;ror r/m32,imm8 1101 0000 XX00 1XXX |ROR|NOREG RM8 1|-|-|1 1 0 ;ror r/m8,1 0110 0110 1101 0001 XX00 1XXX |ROR|NOREG RM16 1|-|-|1 1 0 ;ror r/m16,1 1101 0001 XX00 1XXX |ROR|NOREG RM32 1|-|-|1 1 0 ;ror r/m32,1 1101 0010 XX00 1XXX |ROR|NOREG RM8 CL|-|-|1 1 0 ;ror r/m8,cl 0110 0110 1101 0011 XX00 1XXX |ROR|NOREG RM16 CL|-|-|1 1 0 ;ror r/m16,cl 1101 0011 XX00 1XXX |ROR|NOREG RM32 CL|-|-|1 1 0 ;ror r/m32,cl ; inc/dec instructions 1111 1110 XX00 0XXX |INC|NOREG RM8|-|-|1 1 0 ;inc r/m8 0110 0110 1111 1111 XX00 0XXX |INC|NOREG RM16|-|-|1 1 0 ;inc r/m16 1111 1111 XX00 0XXX |INC|NOREG RM32|-|-|1 1 0 ;inc r/m32 0110 0110 0100 0DDD |INC|RW|-|-|1 1 0 ; inc reg16 0100 0DDD |INC|RD|-|-|1 1 0 ; inc reg32 1111 1110 XX00 1XXX |DEC|NOREG RM8|-|-|1 1 0 ;dec r/m8 0110 0110 1111 1111 XX00 1XXX |DEC|NOREG RM16|-|-|1 1 0 ;dec r/m16 1111 1111 XX00 1XXX |DEC|NOREG RM32|-|-|1 1 0 ;dec r/m32 0110 0110 0100 1DDD |DEC|RW|-|-|1 1 0 ; dec reg16 0100 1DDD |DEC|RD|-|-|1 1 0 ; dec reg32 -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 10:02:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA96214 for dynarec-outgoing; Tue, 27 Jun 2000 10:02:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 27 Jun 2000 10:10:13 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: <200006270851.KAA19810@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > We're saying the same thing. If your block takes 30 clocks to execute and > > you tell it to execute 10, and it only checks timing at the terminals, > > it'll execute 20 clocks past where you want it to go. > But you will never execute a block that takes 30 clocks and check timing > at terminals when you only have 10!! If this happen you will execute > the per instruction version. How would you know in advance *WHICH* version you'd run? > > > per instruction timing. Every point inside this version that goes out > > > the block updates ACCURATEDLY the timing, but it isn't updated after each > > > instruction. > > And you wind up using a bunch more memory and spend more time recompiling. > You double the size of the translated code, but it is so important?. If When you start getting in to multiple 68000s, yes, size is important. Starscream's saving grace is that the code doing the emulation is stored in the CPUs cache. > same for the two version but time checkings and the only think you have > to calculate is the total time of the block. Every optimization you put > in the recompiler will mean a slower recompiler. What's the problem with > it. I don't see an advantage to your suggested approach over precharging the recompiler with information about where it can and can't do aggregate timing (which is a better name than "sloppy" timing). -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 10:03:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA96224 for dynarec-outgoing; Tue, 27 Jun 2000 10:03:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 27 Jun 2000 10:11:04 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New drop up In-Reply-To: <00036b05ec72fa17_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Let me know if this works. If so, this is a big step towards cross > >platform! > Builds fine, no crash on execution, and my drlog.txt looks just like yours! ; > -) Awesome! It'll be Wednesday evening before I can get back to the Dynarec code. My partner on the 8051 project needs me to do some work for him so he can become "unblocked". But I'm happy to continue discussion. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 10:39:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA96269 for dynarec-outgoing; Tue, 27 Jun 2000 10:39:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000001bfe05f$fba0d640$6a028cd4@daves> From: "David Sharp" To: References: <3958B5B0.B807093F@eurocopter.de> Subject: Re: DYNAREC: Comments about DR68k Date: Tue, 27 Jun 2000 16:56:45 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > The problem with Optimus is that it's the name of a really cheap brand of > > speakers at Radio Shack. Much the same that one wouldn't call it Maxipad, > > Massengil, Depends, or Summer's Eve as it evokes negative feelings. ;-) Ok if optimus is cheap and tacky (damn radio shack) then what about some other transformer names, a few suggestions: Prime Shockwave Jetfire UltraMagnus Rodimus Prime Cyclonus Galvatron Arcee Metroplex Grimlock Scorponok Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 11:53:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA96359 for dynarec-outgoing; Tue, 27 Jun 2000 11:53:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Comments about DR68k From: "M.I.K.e" In-Reply-To: <3958B5B0.B807093F@eurocopter.de> Message-ID: <00036b0ddbcc6c89_mailit@mail.dynarec.com> References: <3958B5B0.B807093F@eurocopter.de> Date: Tue, 27 Jun 2000 20:56:36 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Actually, I do have a good suggestion. How about "Deep thought"? That wouldn't answer any questions and it's only product will be destroyed by Vogons! >Neil. -- M.I.K.e Genetics explains why you look like your father, and if you don't, why you should. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 11:53:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA96368 for dynarec-outgoing; Tue, 27 Jun 2000 11:53:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Comments about DR68k From: "M.I.K.e" In-Reply-To: <000001bfe05f$fba0d640$6a028cd4@daves> Message-ID: <00036b0de7306aa2_mailit@mail.dynarec.com> References: <3958B5B0.B807093F@eurocopter.de> <000001bfe05f$fba0d640$6a028cd4@daves> Date: Tue, 27 Jun 2000 20:59:47 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Ok if optimus is cheap and tacky (damn radio shack) then what about some >other transformer names, a few suggestions: Why does it have to be a transformers' name? Sorry, I'm really not into transformers... I'd still prefer a name that says what it is (eg. Mach68), but if it has to be one of those transformers names then I'd probably vote for "Shockwave" or "Grimlock". Maybe I can find some nice Tolkien names... -- M.I.K.e E Pluribus Unix --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 11:54:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA96375 for dynarec-outgoing; Tue, 27 Jun 2000 11:54:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: New drop up From: "M.I.K.e" In-Reply-To: Message-ID: <00036b0dec5f28de_mailit@mail.dynarec.com> References: Date: Tue, 27 Jun 2000 21:01:14 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Builds fine, no crash on execution, and my drlog.txt looks just like yours! >Awesome! All due to your good design! ;-) >It'll be Wednesday evening before I can get back to the Dynarec code. My >partner on the 8051 project needs me to do some work for him so he can >become "unblocked". Hehe... >But I'm happy to continue discussion. ;-) So am I. >-->Neil -- M.I.K.e Joe's sister puts spaghetti in her shoes! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 12:57:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA96454 for dynarec-outgoing; Tue, 27 Jun 2000 12:57:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 27 Jun 2000 13:05:06 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Well...? In-Reply-To: <200006270656.IAA22781@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I agree, it would be useful. What could be useful is getting some open > > source Genesis emulators and swapping the CPU cores. That could be very > > cool... > We can use DGEN as it uses Starscream. And I'm interested with it because > I haven't decided yet if I will build the MegaCD emulator from scratch > or I will use an open source MegaDrive emulator. We could ask Dave if he > is interested we put our hands in its emulator. ;) He realeases the source > of an old version of his emulator. We could ask him for the last or not. This could be a "good thing". The genesis recompiler would allow us to try a wide variety of code to get things to work properly, and having a living, breathing system to bounce it against would be most excellent. Let's contact Dave when we've actually got things up and running. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Devo was exquisitely stupid. But we knew we were being Synthcom Systems, Inc. stupid, whereas a lot of people are stupid and don't ICQ # 29402898 realize it." - Gerald Casale - DEVO Cofounder --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 15:36:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA96659 for dynarec-outgoing; Tue, 27 Jun 2000 15:36:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39592DC8.8195CE2F@mail.utexas.edu> Date: Tue, 27 Jun 2000 17:42:16 -0500 From: Alex Pasadyn Organization: none X-Mailer: Mozilla 4.72 [en] (Win95; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: An idea References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > Alex has an idea that I think is really cool. He has created this file to > handle all the x86 opcodes that are possible. From this we can generate > code that actually emits the x86 opcodes. Have a look, think about it, and > let's discuss! I actually use that file, and the aforementioned code in my 34010 emulator. Basically, that file gets read by a helper program which spits out a bunch of header files. They contain a bunch of #defines and function prototypes that let me generate x86 code as if I was writing assembly. Here is one of my 34010 opcode to x86 handlers: struct sHostOp* emit_add_rs_rd(struct sInstructionInstance* psInstInst) { struct sHostOp* psOp = &sOpsStart; // mov eax, [SRCREG] GenX86Op1(psOp, INSX86_MOV_EAX_MOFFS, SRCDATA); // add [DSTREG], eax GenX86Op3(psOp, INSX86_ADD_RM32_R32, RM_AT_DISP32, DSTDATA, REG_EAX); if (!psInstInst->dwNoFlags) { // set flags by current x86 flags Set_NCZV_nosetup(); } return sOpsStart.psNextLink; } Those INSX86_*, RM_AT_DISP, REG_*, etc #defines were made from that table. GenX86Op knows all the different addressing modes, etc, and builds the real x86 code. To use X86 opcodes that I didn't use already, you just add them to the text file, write the emitter code following the naming convention, and "make all". The real beauty of it, though, is that I have the same file for the 34010, which is actually used by the recompiler. In addition to generating the prototypes and defines necessary to make code for a CPU, the helper program also generates prototypes and #defines for translating the CPU's code to something else. It sets up prototypes automagically for all the emit_(random 34010 opcode)_reg_etc stuff. As an added bonus, it can optionally spit out a blank template .c file for each emulated CPU with all the translator functions defined and waiting for someone to fill them in. Alex --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 23:21:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA97237 for dynarec-outgoing; Tue, 27 Jun 2000 23:21:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3959997A.B09A2F20@eurocopter.de> Date: Wed, 28 Jun 2000 08:21:46 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: An idea References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Alex has an idea that I think is really cool. He has created this file to > handle all the x86 opcodes that are possible. From this we can generate > code that actually emits the x86 opcodes. Have a look, think about it, and > let's discuss! You're right - that is *very* cool! All we have to do is hope that each instruction can be matched by 1 x86 instruction and we'd be laughing! Would it work if it took 2 or more x86 instructions to match 1 68k instruction? If so then... wahey! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 23:21:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA97238 for dynarec-outgoing; Tue, 27 Jun 2000 23:21:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39599A24.81468089@eurocopter.de> Date: Wed, 28 Jun 2000 08:24:36 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k References: <3958B5B0.B807093F@eurocopter.de> <00036b0ddbcc6c89_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Actually, I do have a good suggestion. How about "Deep thought"? > > That wouldn't answer any questions and it's only product will be destroyed by > Vogons! You have a point. ;) Yep, I've just finished reading all the books in "The Hitchhikers Guide To The Galaxy". Very, very funny. It's quite bad when you're sitting on a train reading a book and you laugh out loud. And then everyone around you looks at you. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 23:30:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA97257 for dynarec-outgoing; Tue, 27 Jun 2000 23:30:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 27 Jun 2000 23:38:32 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: An idea In-Reply-To: <3959997A.B09A2F20@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Alex has an idea that I think is really cool. He has created this file to > > handle all the x86 opcodes that are possible. From this we can generate > > code that actually emits the x86 opcodes. Have a look, think about it, and > > let's discuss! > You're right - that is *very* cool! All we have to do is hope that each > instruction can be matched by 1 x86 instruction and we'd be laughing! That's not the point of it, actually. It's designed so that the actual code can be generated to handle target emission or create source tables - not to handle the smarts of the covers themselves. That still needs to be code. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 23:31:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA97268 for dynarec-outgoing; Tue, 27 Jun 2000 23:31:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006280637.IAA10089@pons.ac.upc.es> Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: "from Neil Bradley at Jun 27, 2000 10:10:13 am" To: dynarec@dynarec.com Date: Wed, 28 Jun 2000 08:37:03 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > We're saying the same thing. If your block takes 30 clocks to execute and > > > you tell it to execute 10, and it only checks timing at the terminals, > > > it'll execute 20 clocks past where you want it to go. > > But you will never execute a block that takes 30 clocks and check timing > > at terminals when you only have 10!! If this happen you will execute > > the per instruction version. > > How would you know in advance *WHICH* version you'd run? > You know how many cycles are needed for executing a block because you can calculate it at recompile time. And in execution time you know how many cycles you have still to execute. You just compare them!. > > > > per instruction timing. Every point inside this version that goes out > > > > the block updates ACCURATEDLY the timing, but it isn't updated after each > > > > instruction. > > > And you wind up using a bunch more memory and spend more time recompiling. > > You double the size of the translated code, but it is so important?. If > > When you start getting in to multiple 68000s, yes, size is > important. Starscream's saving grace is that the code doing the emulation > is stored in the CPUs cache. > Really? But what is the problem with that? Perhaps if you execute a hundred of 68000s this will be important. With a couple of them executing perhaps 100KB of code each I can't see ANY problem. > > same for the two version but time checkings and the only think you have > > to calculate is the total time of the block. Every optimization you put > > in the recompiler will mean a slower recompiler. What's the problem with > > it. > > I don't see an advantage to your suggested approach over precharging the > recompiler with information about where it can and can't do aggregate > timing (which is a better name than "sloppy" timing). > The only advantage of course is that it is accurated and you can implement it transparently for the user of the core. If you don't want to be accurated of course is better your solution. And perhaps it could be even faster (but I'm not sure) than your solution if you still have a lot of code without aggregated timing. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 23:39:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA97280 for dynarec-outgoing; Tue, 27 Jun 2000 23:39:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39599DEB.CCBF7526@eurocopter.de> Date: Wed, 28 Jun 2000 08:40:43 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: An idea References: <39592DC8.8195CE2F@mail.utexas.edu> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I actually use that file, and the aforementioned code in my 34010 > emulator. Basically, that file gets read by a helper program which > spits out a bunch of header files. They contain a bunch of #defines and > function prototypes that let me generate x86 code as if I was writing > assembly. Here is one of my 34010 opcode to x86 handlers: Will you make the source for that available to this group? > struct sHostOp* emit_add_rs_rd(struct sInstructionInstance* psInstInst) > { > struct sHostOp* psOp = &sOpsStart; > // mov eax, [SRCREG] > GenX86Op1(psOp, INSX86_MOV_EAX_MOFFS, SRCDATA); > // add [DSTREG], eax > GenX86Op3(psOp, INSX86_ADD_RM32_R32, RM_AT_DISP32, DSTDATA, REG_EAX); > if (!psInstInst->dwNoFlags) > { > // set flags by current x86 flags > Set_NCZV_nosetup(); > } > return sOpsStart.psNextLink; > } > > Those INSX86_*, RM_AT_DISP, REG_*, etc #defines were made from that > table. GenX86Op knows all the different addressing modes, etc, and > builds the real x86 code. To use X86 opcodes that I didn't use already, > you just add them to the text file, write the emitter code following the > naming convention, and "make all". I think I understand what you're doing here. What I don't understand is how you know which instructions will be generated. Unless you've cut out some code (like a case statement or lots of IF statements) then that code looks like it will generate... No, forget that. I now see *exactly* how it works. Ah! add_rs_rd is obviously one instruction that... Cunning! I like that idea! Yes, that's a particularly brilliant idea! Neil. > The real beauty of it, though, is that I have the same file for the > 34010, which is actually used by the recompiler. In addition to > generating the prototypes and defines necessary to make code for a CPU, > the helper program also generates prototypes and #defines for > translating the CPU's code to something else. It sets up prototypes > automagically for all the emit_(random 34010 opcode)_reg_etc stuff. As > an added bonus, it can optionally spit out a blank template .c file for > each emulated CPU with all the translator functions defined and waiting > for someone to fill them in. > > Alex > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 23:39:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA97292 for dynarec-outgoing; Tue, 27 Jun 2000 23:39:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 27 Jun 2000 23:47:47 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: <200006280637.IAA10089@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > But you will never execute a block that takes 30 clocks and check timing > > > at terminals when you only have 10!! If this happen you will execute > > > the per instruction version. > > How would you know in advance *WHICH* version you'd run? > You know how many cycles are needed for executing a block because you can > calculate it at recompile time. And in execution time you know how many > cycles you have still to execute. You just compare them!. If you told the core to execute 1000 cycles and it spent those 1000 cycles in a 10 instruction loop (which happens a lot, and don't say "Let's put that aside right now" because it's VERY VERY COMMON and you can't just move forward without figuring out that problem!) how would you know where in the middle to come out of it? You can't predict where you're going to be inserted in a block. > > When you start getting in to multiple 68000s, yes, size is > > important. Starscream's saving grace is that the code doing the emulation > > is stored in the CPUs cache. > Really? But what is the problem with that? Perhaps if you execute a hundred > of 68000s this will be important. With a couple of them executing perhaps > 100KB of code each I can't see ANY problem. Cache misses are a big deal. But consider there are 68K games out there with >256K code (Toobin' has 512K and games like Marble Madness has 2 megabytes!). There are multi-68K games, too. If it's 512K of original opcodes the code generated is going to be way bigger than that, and much, much worse if there are mulitple copies of the same code - not to mention the additional recompilation time. > > I don't see an advantage to your suggested approach over precharging the > > recompiler with information about where it can and can't do aggregate > > timing (which is a better name than "sloppy" timing). > The only advantage of course is that it is accurated and you can implement > it transparently for the user of the core. If you don't want to > be accurated of course is better your solution. My approach is still 100% accurate. It's just that the implementor (after everything runs) passes hints to the recompiler. By default it generates timing code after each and every instruction. If the block is set to aggregate timing, it just adjusts the timing at the end of a conditional terminal or a terminal. There's no need to keep two copies of the same thing (with different timing approaches) around at all! > And perhaps it could be > even faster (but I'm not sure) than your solution if you still have a lot > of code without aggregated timing. It can't be faster. It uses more code. If someone properly sets up the aggregate timing blocks, my approach will unquestionably be as fast or faster than the approach you're suggesting. Don't underestimate cache evictions. They are killers! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 23:40:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA97302 for dynarec-outgoing; Tue, 27 Jun 2000 23:40:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39599E4E.DFD27C83@eurocopter.de> Date: Wed, 28 Jun 2000 08:42:22 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: An idea References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > You're right - that is *very* cool! All we have to do is hope that each > > instruction can be matched by 1 x86 instruction and we'd be laughing! > > That's not the point of it, actually. It's designed so that the actual > code can be generated to handle target emission or create source tables - > not to handle the smarts of the covers themselves. That still needs to be > code. Yep. Now I've seen the code from Alex I now understand. I wrote that before I'd read the mail from Alex. So yes, I understand perfectly (or I hope I do!) now. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 23:41:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA97311 for dynarec-outgoing; Tue, 27 Jun 2000 23:41:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39599E7B.6DCC63A7@eurocopter.de> Date: Wed, 28 Jun 2000 08:43:07 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k References: <3958B5B0.B807093F@eurocopter.de> <000001bfe05f$fba0d640$6a028cd4@daves> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Ok if optimus is cheap and tacky (damn radio shack) then what about some > other transformer names, a few suggestions: If it had to be a Transformer name then I'd vote for the following: > Shockwave > Jetfire > Cyclonus Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 27 23:54:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA97326 for dynarec-outgoing; Tue, 27 Jun 2000 23:54:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 28 Jun 2000 00:02:06 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: An idea In-Reply-To: <39599DEB.CCBF7526@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I think I understand what you're doing here. What I don't understand is how > you know which instructions will be generated. Unless you've cut out some > code (like a case statement or lots of IF statements) then that code looks > like it will generate... No, forget that. I now see *exactly* how it works. > Ah! add_rs_rd is obviously one instruction that... Cunning! I like that > idea! Yes, that's a particularly brilliant idea! There's one thing Alex and I spewed about over IRC tonight. The x86 has some weirdnesses. You'd think that the instructions: mov al, [memory] mov bl, [memory] mov cl, [memory] mov dl, [memory] (note that these examples are only examples so the numbers might be wrong but the ideas are the same) Would have some form like: 85 7x tt uu vv ww Where "x" is the destination register and tt/uu/vv/ww is the address of the memory containing the byte to load, right? Well, the x86 works like this, but "al" has a short form instruction that doesn't match this: 8a tt uu vv ww The former would allow you to use al as a destination register too, but it's a less optimal instruction because it has one extra byte in the opcode. It does the same thing as the shorter form but takes up an additional byte. The current implementation in the target file dictates there'd be two different calls - one for the "long" form and one for the short form specific to AL: GenOpx86MovAlMem32() GenOpx86MovReg8Mem32() As an implementor, you want the target code generator to always generate the best instruction for a given operation. All assemblers (except NASM) do this. So with the current approach you'd have two different APIs exposed and you as the implementor would need to know which to call. The other option is to have the optimization phase come through and shorten the instruction, but that's like blasting holes through a bottom of a boat and patching them up later. You'd also have to know about all the weird short forms for every instruction in existence and keep them in your head when you're developing. I don't like that one bit. In fact, the oddball things should be private and not publicly callable. The only thing the implementor should have to know is: GenOpx86MovReg8Mem32() And it will always generate the best instruction it can based on the input. Alex is probably thinking about this a bit more, but I recommended a modification to the script - an extension really - to classify those instructions. For example: class "GenOpx86SubReg32Imm32" { 0010 1101 |SUB|EAX IMM32|-|-|1 1 0 ; sub eax, imm32 1000 0001 XX10 1XXX |SUB|NOREG RM32 IMM32|-|-|1 1 0 ; sub r/m32, imm32 } So the actual code generator (the one that generates the target C code) would spit out three procedure calls - one to handle each of the covers (and both would be declared static so they wouldn't be externally callable). It would create "GenOpx86SubReg32Imm32" as the only public, and that procedure would internally figure out which of the two instructions is best to call based upon the input criteria. Comments? Or am I just confusing the hell out of you all? ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 00:00:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA97345 for dynarec-outgoing; Wed, 28 Jun 2000 00:00:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006280705.JAA16472@pons.ac.upc.es> Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: "from Neil Bradley at Jun 27, 2000 11:47:47 pm" To: dynarec@dynarec.com Date: Wed, 28 Jun 2000 09:05:03 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > But you will never execute a block that takes 30 clocks and check timing > > > > at terminals when you only have 10!! If this happen you will execute > > > > the per instruction version. > > > How would you know in advance *WHICH* version you'd run? > > You know how many cycles are needed for executing a block because you can > > calculate it at recompile time. And in execution time you know how many > > cycles you have still to execute. You just compare them!. > > If you told the core to execute 1000 cycles and it spent those 1000 cycles > in a 10 instruction loop (which happens a lot, and don't say "Let's put > that aside right now" because it's VERY VERY COMMON and you can't just > move forward without figuring out that problem!) how would you know where > in the middle to come out of it? You can't predict where you're going to > be inserted in a block. > I told you about it yesterday. In the transmap you have the address for the code with the translation with per instruction timing, so you start with the "secure" version. And in your example if we have compiled the ten instruction the same block for example you will start at any point, execute the per instruction timing version until it ends the block. Then it jumps to the block start (which is also the start of the loop), here you decide which version. Now you are executing the per block timing version N times. The last time the check code at the block start will detect it doesn't have enough cycle so it will execute the per instruction timing version. So you are doing block update timing all around the execution but the first time and the last. > > > When you start getting in to multiple 68000s, yes, size is > > > important. Starscream's saving grace is that the code doing the emulation > > > is stored in the CPUs cache. > > Really? But what is the problem with that? Perhaps if you execute a hundred > > of 68000s this will be important. With a couple of them executing perhaps > > 100KB of code each I can't see ANY problem. > > Cache misses are a big deal. But consider there are 68K games out there > with >256K code (Toobin' has 512K and games like Marble Madness has 2 > megabytes!). There are multi-68K games, too. If it's 512K of original > opcodes the code generated is going to be way bigger than that, and much, > much worse if there are mulitple copies of the same code - not to mention > the additional recompilation time. > Do really know about cache or what happens. Of course it will be better to have all the code in cache, and better if it is L1 cache. But this is imposible. Do I have to tell you why and how it works a cache? Not because it has all the code or the data on it but because pieces of code and data are locally, spatial and temporal, used. You won't be executing the full 512KB of code everytime but only a small part of it. > > > I don't see an advantage to your suggested approach over precharging the > > > recompiler with information about where it can and can't do aggregate > > > timing (which is a better name than "sloppy" timing). > > The only advantage of course is that it is accurated and you can implement > > it transparently for the user of the core. If you don't want to > > be accurated of course is better your solution. > > My approach is still 100% accurate. It's just that the implementor (after > everything runs) passes hints to the recompiler. By default it generates > timing code after each and every instruction. If the block is set to > aggregate timing, it just adjusts the timing at the end of a conditional > terminal or a terminal. There's no need to keep two copies of the same > thing (with different timing approaches) around at all! > First it isn't transparent. Why has to worry the emulator author about it. And you can assure perfect timing because you can execute more cycles than you want. Something that doesn't happens with my approach. > > And perhaps it could be > > even faster (but I'm not sure) than your solution if you still have a lot > > of code without aggregated timing. > > It can't be faster. It uses more code. If someone properly sets up the > aggregate timing blocks, my approach will unquestionably be as fast or > faster than the approach you're suggesting. Don't underestimate cache > evictions. They are killers! > My approach could be faster than your approach if executes a lot of code with per instruction timing because you can't avoid them I will always avoid it but the first and last block executed. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 00:12:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA97366 for dynarec-outgoing; Wed, 28 Jun 2000 00:12:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3959A5C6.410F247F@eurocopter.de> Date: Wed, 28 Jun 2000 09:14:14 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: An idea References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I don't like that one bit. In fact, the oddball things should be private > and not publicly callable. The only thing the implementor should have to > know is: > > GenOpx86MovReg8Mem32() > > And it will always generate the best instruction it can based on the > input. I agree. You can't start making changes to the way you'd call something. Otherwise the emu author will need to know all of the functions like this. And once you make this change, what's to stop you from creating GenOpx86MovRegAX16Mem32()? > So the actual code generator (the one that generates the target C > code) would spit out three procedure calls - one to handle each of the > covers (and both would be declared static so they wouldn't be externally > callable). It would create "GenOpx86SubReg32Imm32" as the only public, and > that procedure would internally figure out which of the two instructions > is best to call based upon the input criteria. > > Comments? Or am I just confusing the hell out of you all? ;-) Seems the best way. Besides, it's easier to let the dynarec sort out which instruction to emit than for the emu author to know. And it should be faster too (maybe not execution time, but faster development time) - and definitely more understandable. I can't believe this. A night out heavy drinking, speaking German all night (not an easy task for me) and hardly any sleep - and I can understand all of this! I have learnt something now. Depriving your brain of sleep and killing it with alchohol is the best way to handle writing dynarecs. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 00:16:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA97379 for dynarec-outgoing; Wed, 28 Jun 2000 00:16:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 28 Jun 2000 00:24:14 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: <200006280705.JAA16472@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > in a 10 instruction loop (which happens a lot, and don't say "Let's put > > that aside right now" because it's VERY VERY COMMON and you can't just > > move forward without figuring out that problem!) how would you know where > > in the middle to come out of it? You can't predict where you're going to > > be inserted in a block. > I told you about it yesterday. In the transmap you have the address for the > code with the translation with per instruction timing, so you start with > the "secure" version. And in your example if we have compiled the ten > instruction the same block for example you will start at any point, execute > the per instruction timing version until it ends the block. So then you'd just have to insert other code that would predict whether or not it should execute the aggregate version or the "timing tight" version. But you'd have to check at the end of every block anyway (and at the begining, too). I'm saying that the addition of this (plus the increase in the code size) isn't worth it. > > Cache misses are a big deal. But consider there are 68K games out there > > with >256K code (Toobin' has 512K and games like Marble Madness has 2 > > megabytes!). There are multi-68K games, too. If it's 512K of original > > opcodes the code generated is going to be way bigger than that, and much, > > much worse if there are mulitple copies of the same code - not to mention > > the additional recompilation time. > Do really know about cache or what happens. Um... yes, I was one of the three people who validated the 450NX chipset and I focused on the cache module of the P6 bus. ;-) So you could say I have a unique perspective on things. ;-) > have all the code in cache, and better if it is L1 cache. But this is > imposible. Do I have to tell you why and how it works a cache? Not because > it has all the code or the data on it but because pieces of code and data > are locally, spatial and temporal, used. You won't be executing the full > 512KB of code everytime but only a small part of it. Consider the target of this emulator: * Lower MHZ CPUs (I.E. Pentium 200 and under or even 486s) * CPUs with much smaller caches (256K and under typically) * You can expect code bloat to at least quadruple * An inner loop of a regular video game hits about 30-40% of the overall code - sometimes as much as 50-60% (this is from what I've personally witnessed with the game emulation I've done) So if you take all of this into consideration, in addition to the fact that there's more code running than just the recompiled code, you want to keep code size as small as possible. > > timing code after each and every instruction. If the block is set to > > aggregate timing, it just adjusts the timing at the end of a conditional > > terminal or a terminal. There's no need to keep two copies of the same > > thing (with different timing approaches) around at all! > First it isn't transparent. True - it won't work for any random image you throw at it. But consider the target of what it's going to be used for most often. Game emulators, which have static execution regions! > Why has to worry the emulator author about > it. And you can assure perfect timing because you can execute more cycles > than you want. Something that doesn't happens with my approach. My approach will have perfect timing for the games/code that needs it without the added code bloat. > > It can't be faster. It uses more code. If someone properly sets up the > > aggregate timing blocks, my approach will unquestionably be as fast or > > faster than the approach you're suggesting. Don't underestimate cache > > evictions. They are killers! > My approach could be faster than your approach if executes a lot of code > with per instruction timing because you can't avoid them I will always > avoid it but the first and last block executed. Ah - but I advocate that the larger cache usage will offset any missed opportunities for optimization that my approach The one thing that your approach will still not work properly with is if a piece of code tries to jump in to the middle of a block of code (this does occur, so how would you account for it with your method?). With my approach, you tell it to not do aggregate timing if you know that region has a middle block branch. With your approach, you might have 10,000 cycle left to go, so it'd pick the aggregate version, jump in to the middle of a block, and now your timing gets screwed up. We're not dealing with an easy thing to solve... -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 01:08:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA97431 for dynarec-outgoing; Wed, 28 Jun 2000 01:08:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006280807.KAA01028@pons.ac.upc.es> Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: "from Neil Bradley at Jun 28, 2000 00:24:14 am" To: dynarec@dynarec.com Date: Wed, 28 Jun 2000 10:07:09 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The one thing that your approach will still not work properly with is if a > piece of code tries to jump in to the middle of a block of code (this does > occur, so how would you account for it with your method?). With my > approach, you tell it to not do aggregate timing if you know that region > has a middle block branch. > Now I have understood something different. If you mean a block jumping in the middle of another block there isn't and there won't be any problem. You jump using the transmap (or if is "wired" the original info in the transmap). And I have saied many times the transmap has the addresses for the not aggregated version of the code. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 01:14:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA97444 for dynarec-outgoing; Wed, 28 Jun 2000 01:14:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 28 Jun 2000 01:22:26 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: <200006280807.KAA01028@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > approach, you tell it to not do aggregate timing if you know that region > > has a middle block branch. > Now I have understood something different. If you mean a block jumping > in the middle of another block there isn't and there won't be any problem. > You jump using the transmap (or if is "wired" the original info in the > transmap). And I have saied many times the transmap has the addresses for > the not aggregated version of the code. But you had mentioned that it would check at the beginning of a block and at a conditional or terminal whether or not it should jump to the aggregate recompiled version or the per instruction code based upon how much time is left to execute. In the case where it's something like 10,000 cycles, it'd choose the aggregated version. If it jumps in to the middle of an aggregated block, you've just blown the timing. It will be subtracting time that it doesn't actually deserve to be taken away from the master clock count! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 01:21:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA97462 for dynarec-outgoing; Wed, 28 Jun 2000 01:21:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006280826.KAA30602@pons.ac.upc.es> Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: "from Neil Bradley at Jun 28, 2000 01:22:26 am" To: dynarec@dynarec.com Date: Wed, 28 Jun 2000 10:26:40 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > approach, you tell it to not do aggregate timing if you know that region > > > has a middle block branch. > > Now I have understood something different. If you mean a block jumping > > in the middle of another block there isn't and there won't be any problem. > > You jump using the transmap (or if is "wired" the original info in the > > transmap). And I have saied many times the transmap has the addresses for > > the not aggregated version of the code. > > But you had mentioned that it would check at the beginning of a block and > at a conditional or terminal whether or not it should jump to the > aggregate recompiled version or the per instruction code based upon how > much time is left to execute. > > In the case where it's something like 10,000 cycles, it'd choose the > aggregated version. If it jumps in to the middle of an aggregated block, > you've just blown the timing. It will be subtracting time that it doesn't > actually deserve to be taken away from the master clock count! > No you and misunderstand me. The check for the version is only made at the beginning of each block not in terminals. When there is a jump in a block there are two case: you jump at the beginning of a block or you jump in the middle of a block. In both you read the transmap. But the transmap has for the beginning of a block the address of the check code. For an instruction in the middle of a block it has the address of the instruction in the version without agreggated timing (per instruction timing). BTW. It seems we have lost a mail, I sent one before this. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 01:28:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA97475 for dynarec-outgoing; Wed, 28 Jun 2000 01:28:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006280740.JAA02682@pons.ac.upc.es> Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: "from Neil Bradley at Jun 28, 2000 00:24:14 am" To: dynarec@dynarec.com Date: Wed, 28 Jun 2000 09:40:22 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I told you about it yesterday. In the transmap you have the address for the > > code with the translation with per instruction timing, so you start with > > the "secure" version. And in your example if we have compiled the ten > > instruction the same block for example you will start at any point, execute > > the per instruction timing version until it ends the block. > > So then you'd just have to insert other code that would predict whether or > not it should execute the aggregate version or the "timing > tight" version. But you'd have to check at the end of every block anyway > (and at the begining, too). I'm saying that the addition of this (plus the > increase in the code size) isn't worth it. > A sub/cmp and a jump doesn't seem so many code if you avoid to execute almost the same amount of code for EVERY instruction translated. And it will be only at the start of the block. At the ends of the block it will what all kind of approach need to have: the update of the timing, so I'm not adding NOTHING. > Um... yes, I was one of the three people who validated the 450NX chipset > and I focused on the cache module of the P6 bus. ;-) So you could say I > have a unique perspective on things. ;-) > Sure but you seemed to have forgotten it (just a joke). ;) > > have all the code in cache, and better if it is L1 cache. But this is > > imposible. Do I have to tell you why and how it works a cache? Not because > > it has all the code or the data on it but because pieces of code and data > > are locally, spatial and temporal, used. You won't be executing the full > > 512KB of code everytime but only a small part of it. > > Consider the target of this emulator: > > * Lower MHZ CPUs (I.E. Pentium 200 and under or even 486s) > * CPUs with much smaller caches (256K and under typically) Oh well I can't fight against this, so we will have to optimize the code for a Pentium, for a 486 or for a P-II?. Because they are a lot of different. > * You can expect code bloat to at least quadruple > * An inner loop of a regular video game hits about 30-40% of the overall > code - sometimes as much as 50-60% (this is from what I've personally > witnessed with the game emulation I've done) > And this is true also for a game with 512KB of code? It's incredible the amount of code they are executing!! How they compiled it, with VC? > > > timing code after each and every instruction. If the block is set to > > > aggregate timing, it just adjusts the timing at the end of a conditional > > > terminal or a terminal. There's no need to keep two copies of the same > > > thing (with different timing approaches) around at all! > > First it isn't transparent. > > True - it won't work for any random image you throw at it. But consider > the target of what it's going to be used for most often. Game emulators, > which have static execution regions! > I think there a lot of computers and consoles that use also the 68K. Perhaps you are only interested in arcade emulation but other people aren't. Think about MegaDrive, X68000, NeoGeo. And a MegaCD has TWO 68000. > > Why has to worry the emulator author about > > it. And you can assure perfect timing because you can execute more cycles > > than you want. Something that doesn't happens with my approach. > > My approach will have perfect timing for the games/code that needs it > without the added code bloat. > How you can grant that if you hit a block with aggregated code and you update it at the end will you have executed the number of cycles passed to the recompiler. > The one thing that your approach will still not work properly with is if a > piece of code tries to jump in to the middle of a block of code (this does > occur, so how would you account for it with your method?). With my > approach, you tell it to not do aggregate timing if you know that region > has a middle block branch. > You can split the block in two blocks. If it makes the block too small you can then only create a per instruction timing version. > With your approach, you might have 10,000 cycle left to go, so it'd pick > the aggregate version, jump in to the middle of a block, and now your > timing gets screwed up. > > We're not dealing with an easy thing to solve... > Isn't it easy? And I'm sure there are better solutions. > -->Neil > Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 01:58:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA97507 for dynarec-outgoing; Wed, 28 Jun 2000 01:58:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006280901.LAA15574@pons.ac.upc.es> Subject: Re: DYNAREC: An idea In-Reply-To: <3959A5C6.410F247F@eurocopter.de> "from Neil Griffiths at Jun 28, 2000 09:14:14 am" To: dynarec@dynarec.com Date: Wed, 28 Jun 2000 11:01:24 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I can't believe this. A night out heavy drinking, speaking German all night > (not an easy task for me) and hardly any sleep - and I can understand all > of this! I have learnt something now. Depriving your brain of sleep and > killing it with alchohol is the best way to handle writing dynarecs. :)) > I can't agree with that. ;) I never drink alcohol and I need to sleep 8 hours every day. (But I spend too many hours playing games I'm not perfect). I advice you that you are endangering your brain for the future. ;) > Neil. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 02:01:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA97681 for dynarec-outgoing; Wed, 28 Jun 2000 02:01:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 28 Jun 2000 02:08:52 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: <200006280740.JAA02682@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > tight" version. But you'd have to check at the end of every block anyway > > (and at the begining, too). I'm saying that the addition of this (plus the > > increase in the code size) isn't worth it. > A sub/cmp and a jump doesn't seem so many code if you avoid to execute > almost the same amount of code for EVERY instruction translated. You haven't examined a lot of loops have you? Sometimes they do this, sometimes they execute a *LOT* of code. > > * Lower MHZ CPUs (I.E. Pentium 200 and under or even 486s) > > * CPUs with much smaller caches (256K and under typically) > Oh well I can't fight against this, so we will have to optimize the code > for a Pentium, for a 486 or for a P-II?. Because they are a lot of > different. No, they aren't a lot different. The Pentium has pipelining that the 486 doesn't have, so you can optimize for a Pentium in terms of instructions and have zero adverse effect on a 486. The big issues are cache amounts and memory size. > > * An inner loop of a regular video game hits about 30-40% of the overall > > code - sometimes as much as 50-60% (this is from what I've personally > > witnessed with the game emulation I've done) > And this is true also for a game with 512KB of code? It's incredible > the amount of code they are executing!! Yup. In some of these games, there's a *LOT* going on. > How they compiled it, with VC? Nah. Gcc. ;-) > > True - it won't work for any random image you throw at it. But consider > > the target of what it's going to be used for most often. Game emulators, > > which have static execution regions! > I think there a lot of computers and consoles that use also the 68K. > Perhaps you are only interested in arcade emulation but other people > aren't. Think about MegaDrive, X68000, NeoGeo. And a MegaCD has TWO > 68000. Megadrive and NeoGeo are cartridge based systems that would effectively have you blow away the entire recompiled code and just recompile it when a cartridge has changed. Not a lot of recompilation nor changes occuring in any of those systems. These are not arbitrary systems that have things loaded up off floppy. The problem is you're thinking that highly modified code blocks should be the main concern. Consider what's out there and what people would want to be emulated. Almost all popular emulated systems are totally or almost totally static. > > My approach will have perfect timing for the games/code that needs it > > without the added code bloat. > How you can grant that if you hit a block with aggregated code and you > update it at the end will you have executed the number of cycles passed > to the recompiler. In that case, the author of the emulator should better tell the recompiler where the critical timing points are so that aggregate timing isn't generated for that block of code. ;-) > > occur, so how would you account for it with your method?). With my > > approach, you tell it to not do aggregate timing if you know that region > > has a middle block branch. > You can split the block in two blocks. If it makes the block too small you > can then only create a per instruction timing version. Now you've fragmented the code with exterraneous jumps. But if you've already recompiled it, do you ditch the block and recompile it in to two blocks? What you're proposing is a nightmare of overhead management. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 02:06:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA97697 for dynarec-outgoing; Wed, 28 Jun 2000 02:06:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 28 Jun 2000 02:14:38 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: <200006280826.KAA30602@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > aggregated version. If it jumps in to the middle of an aggregated block, > > you've just blown the timing. It will be subtracting time that it doesn't > > actually deserve to be taken away from the master clock count! > No you and misunderstand me. The check for the version is only made at > the beginning of each block not in terminals. When there is a jump in a > block there are two case: you jump at the beginning of a block or you > jump in the middle of a block. In both you read the transmap. But > the transmap has for the beginning of a block the address of the check > code. Okay, now you've got to have two transmaps - one for each code region. Now you've got to have some other way of indicating that it's the beginning of a block (or not). so you either have to keep a linked list or some other ordered list to figure it out (or some form of indirection which just slows things down even more), or else you have to make your transmap bigger. If we add a single byte, we've just knocked the performance access to the transmap in half (unaligned accesses are expensive - even moreso on 486s). So you can increase it to 8 bytes to keep it aligned, and well, you've now got a really huge transmap to deal with and you're using even more cache. One is a performance drop because of the scan of the table, the other hinders performance by using so much cache and memory that it makes it infeasible. So the workaround is just making it slower. In short, what you're proposing has so much overhead and uses so much memory (and cache) that you'd kill anything you'd gain by the algorithm itself. It's really hard for me to get across to you that your approach, while novel, will not yield the performance increase you think it will. > BTW. It seems we have lost a mail, I sent one before this. Your mail server delivered them out of order. (sendmail logs don't lie!). l) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 02:22:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA97717 for dynarec-outgoing; Wed, 28 Jun 2000 02:22:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006280927.LAA16086@pons.ac.upc.es> Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: "from Neil Bradley at Jun 28, 2000 02:14:38 am" To: dynarec@dynarec.com Date: Wed, 28 Jun 2000 11:27:48 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > aggregated version. If it jumps in to the middle of an aggregated block, > > > you've just blown the timing. It will be subtracting time that it doesn't > > > actually deserve to be taken away from the master clock count! > > No you and misunderstand me. The check for the version is only made at > > the beginning of each block not in terminals. When there is a jump in a > > block there are two case: you jump at the beginning of a block or you > > jump in the middle of a block. In both you read the transmap. But > > the transmap has for the beginning of a block the address of the check > > code. > > Okay, now you've got to have two transmaps - one for each code region. Now No!! Why you are talking again about two transmaps? I never have talked about two transmap nor modified transmap. All the algorithm is transparent with the transmap. The transmap doesn't care about it. It is how you store things and what things you store on it. Let's try it again. The transmap stores the addresses for every instruction in the version without agregated timing (per instruction timing). Exactly as it works now. With the exception of the instructions that are block leaders (instructions in the beginning of a block). For these instructions the transmap points to a check code that decides if it will execute the agreggated version or the non agreggated version. When you make a jump using the transmap you don't have to care about what kind of instruction it is. If is the first type there isn't any problem. If it is the second is the check code you have added who has to worry about it. > > In short, what you're proposing has so much overhead and uses so much > memory (and cache) that you'd kill anything you'd gain by the algorithm > itself. It's really hard for me to get across to you that your approach, > while novel, will not yield the performance increase you think it > will. > I could agree with this. I don't know if it will have so many impact in the cache or not. Perhaps if I build some code and I try it I can convice you or convince myself that I'm wrong. But now I can't, in fact I should be studying. ;) > > BTW. It seems we have lost a mail, I sent one before this. > > Your mail server delivered them out of order. (sendmail logs don't lie!). > l) > But it isn't my fault. I will make a call to the system administrator. ;) > -->Neil > Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 02:41:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA97743 for dynarec-outgoing; Wed, 28 Jun 2000 02:41:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006280938.LAA03215@pons.ac.upc.es> Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: "from Neil Bradley at Jun 28, 2000 02:08:52 am" To: dynarec@dynarec.com Date: Wed, 28 Jun 2000 11:38:31 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > How they compiled it, with VC? > > Nah. Gcc. ;-) > Hehehe ;) > > > My approach will have perfect timing for the games/code that needs it > > > without the added code bloat. > > How you can grant that if you hit a block with aggregated code and you > > update it at the end will you have executed the number of cycles passed > > to the recompiler. > > In that case, the author of the emulator should better tell the recompiler > where the critical timing points are so that aggregate timing isn't > generated for that block of code. ;-) > But I think this is too hard to be demanded. If you build a core you should help the author, making easier his job. Not worrying him about something like critical timing regions that perhaps he doesn't understand what they are. How do you decide what a critical region it is? > > > occur, so how would you account for it with your method?). With my > > > approach, you tell it to not do aggregate timing if you know that region > > > has a middle block branch. > > You can split the block in two blocks. If it makes the block too small you > > can then only create a per instruction timing version. > > Now you've fragmented the code with exterraneous jumps. But if you've > already recompiled it, do you ditch the block and recompile it in to two > blocks? > Forget it I didn't understand the question. I answered in the previous/next mail. ;) > What you're proposing is a nightmare of overhead management. > It will add more management sure. A nightmare? I don't know perhaps if I try to code it I will find it is. About the cache problem. I have thought a point that helps my point of view. If you call the core for 1000 or more cycles the code you will be more commonly executing will be agreggated code. Only some of the blocks of code without agreggation will be executed (the first and the last in a slot) so you don't need to have the two version all in cache at a time. You will have the agreggated version always in cache and perhaps some unagreggated blocks going in and out of the cache. The code more frequently executed, the agreggated blocks, while be already in cache. So the amount of code you are using isn't so great as you were talking about. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 02:52:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA97759 for dynarec-outgoing; Wed, 28 Jun 2000 02:52:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006280938.LAA03215@pons.ac.upc.es> Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: "from Neil Bradley at Jun 28, 2000 02:08:52 am" To: dynarec@dynarec.com Date: Wed, 28 Jun 2000 11:38:31 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > How they compiled it, with VC? > > Nah. Gcc. ;-) > Hehehe ;) > > > My approach will have perfect timing for the games/code that needs it > > > without the added code bloat. > > How you can grant that if you hit a block with aggregated code and you > > update it at the end will you have executed the number of cycles passed > > to the recompiler. > > In that case, the author of the emulator should better tell the recompiler > where the critical timing points are so that aggregate timing isn't > generated for that block of code. ;-) > But I think this is too hard to be demanded. If you build a core you should help the author, making easier his job. Not worrying him about something like critical timing regions that perhaps he doesn't understand what they are. How do you decide what a critical region it is? > > > occur, so how would you account for it with your method?). With my > > > approach, you tell it to not do aggregate timing if you know that region > > > has a middle block branch. > > You can split the block in two blocks. If it makes the block too small you > > can then only create a per instruction timing version. > > Now you've fragmented the code with exterraneous jumps. But if you've > already recompiled it, do you ditch the block and recompile it in to two > blocks? > Forget it I didn't understand the question. I answered in the previous/next mail. ;) > What you're proposing is a nightmare of overhead management. > It will add more management sure. A nightmare? I don't know perhaps if I try to code it I will find it is. About the cache problem. I have thought a point that helps my point of view. If you call the core for 1000 or more cycles the code you will be more commonly executing will be agreggated code. Only some of the blocks of code without agreggation will be executed (the first and the last in a slot) so you don't need to have the two version all in cache at a time. You will have the agreggated version always in cache and perhaps some unagreggated blocks going in and out of the cache. The code more frequently executed, the agreggated blocks, while be already in cache. So the amount of code you are using isn't so great as you were talking about. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 12:19:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA98331 for dynarec-outgoing; Wed, 28 Jun 2000 12:19:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 28 Jun 2000 12:27:34 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: <200006280927.LAA16086@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > code. > > Okay, now you've got to have two transmaps - one for each code region. Now > No!! Why you are talking again about two transmaps? I never have talked > about two transmap nor modified transmap. All the algorithm is transparent > with the transmap. The transmap doesn't care about it. It is how you > store things and what things you store on it. Let's try it again. The > transmap stores the addresses for every instruction in the version > without agregated timing (per instruction timing). Exactly as it works > now. With the exception of the instructions that are block leaders > (instructions in the beginning of a block). For these instructions the Okay, lemme see if I have this straight. When a block is recompiled, it compiles two blocks - one that has per instruction timing and one that has aggregate timing. At the beginning of the block, it checks to see if there's enough time through that entire block to execute the aggregate version, and does so if there is. If there isn't, it looks up the address in the transmap and jumps to the per instruction timing. Once it hits the per instruction timing, how would it know how to get back to the aggregate version? The same holds true when someone does an m68kexec(). Does it jump to the aggregate version or the per instruction version? If it's the former, how does it know where to jump? If it's the latter, how does it get out of the per instruction version back in to the aggregate version? > > memory (and cache) that you'd kill anything you'd gain by the algorithm > > itself. It's really hard for me to get across to you that your approach, > > while novel, will not yield the performance increase you think it > > will. > I could agree with this. I don't know if it will have so many impact in > the cache or not. Perhaps if I build some code and I try it I can > convice you or convince myself that I'm wrong. But now I can't, in > fact I should be studying. ;) Think about that you're going to see at least a 4X in code size *MINIMUM*, so code that's 64K will magically become 256K. And code that's 512K is going to be at least 2 megabytes if not LOTS more. Then you begin to see that the samller you keep the code the better. > > > BTW. It seems we have lost a mail, I sent one before this. > > Your mail server delivered them out of order. (sendmail logs don't lie!). > But it isn't my fault. I will make a call to the system administrator. ;) Heh. It probably got hung up and put it in the "wait 30 minutes and try again" queue in sendmail. When you sent the second, it went through OK. This kind of stuff happens all the time. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 12:23:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA98345 for dynarec-outgoing; Wed, 28 Jun 2000 12:23:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 28 Jun 2000 12:31:37 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: <200006280938.LAA03215@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > In that case, the author of the emulator should better tell the recompiler > > where the critical timing points are so that aggregate timing isn't > > generated for that block of code. ;-) > But I think this is too hard to be demanded. If you build a core you > should help the author, making easier his job. Not worrying him about > something like critical timing regions that perhaps he doesn't understand > what they are. How do you decide what a critical region it is? Trial an error or examination of the code. In fact, most often it'll just be an all or nothing - where they just indicate that the whole thing isn't timing critical or it is. The author may just get lucky and have it work. > About the cache problem. I have thought a point that helps my point of view. > If you call the core for 1000 or more cycles the code you will be more > commonly executing will be agreggated code. Only some of the blocks of code > without agreggation will be executed (the first and the last in a slot) so > you don't need to have the two version all in cache at a time. But remember that each time you exit, you can't know where it's going to exit from. > have the agreggated version always in cache and perhaps some unagreggated > blocks going in and out of the cache. The code more frequently executed, > the agreggated blocks, while be already in cache. So the amount of code > you are using isn't so great as you were talking about. It actually is. The problem is you don't know where you're going to exit from, which means on exit you'll always hit your per instruction timing code even if it's only executed once. You *WILL* use more cache, and the breadth of the code being as typically large as it is, it'll use more cache than you think. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 12:27:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA98360 for dynarec-outgoing; Wed, 28 Jun 2000 12:27:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 28 Jun 2000 12:35:38 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Direct jumps Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com One optimization we're planning on is creating a direct jump when we know the address of a block that has already been recompiled. So instead of having code do a transmap lookup and then a jump to that address, it'll just create an absolute jump to that location. Good optimization, but there's a problem with using this and being able tell the recompiler to ditch blocks of recompiled code because we could potentially ditch a recompiled block that another block jumps to - with the optimized jump instruction. So we have a few choices: 1) Try to keep a list of all addresses and blocks that reference the target (yuck) 2) Completely ditch all recompiled blocks 3) Allow an option to be able to turn off this optimization when the implementor is going to be doing a lot of recompiling. #3 Sounds the most feasible, #2 is kinda kludgy but would work, and #1 I don't even want to think about. Comments? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 23:26:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA98982 for dynarec-outgoing; Wed, 28 Jun 2000 23:26:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006290631.IAA01169@pons.ac.upc.es> Subject: Re: DYNAREC: Direct jumps In-Reply-To: "from Neil Bradley at Jun 28, 2000 12:35:38 pm" To: dynarec@dynarec.com Date: Thu, 29 Jun 2000 08:31:36 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > One optimization we're planning on is creating a direct jump when we know > the address of a block that has already been recompiled. So instead of > having code do a transmap lookup and then a jump to that address, it'll > just create an absolute jump to that location. Good optimization, but > there's a problem with using this and being able tell the recompiler to > ditch blocks of recompiled code because we could potentially ditch a > recompiled block that another block jumps to - with the optimized > jump instruction. > > So we have a few choices: > > 1) Try to keep a list of all addresses and blocks that reference the > target (yuck) > > 2) Completely ditch all recompiled blocks > > 3) Allow an option to be able to turn off this optimization when the > implementor is going to be doing a lot of recompiling. > > #3 Sounds the most feasible, #2 is kinda kludgy but would work, and #1 I > don't even want to think about. > > Comments? > I'm with #3. In all other "academical" dynarecs I studied the lack of a transmap made the flush of the translated code a real nightmare. In fact they all had to flush all the recompiled blocks, which I think isn't the best choice. The transmap helps to deal with flushing code so why are we going to stop using it? So allowing an option to turn on/off this kind optimization will be ok. If they aren't going to flush the code they could build a more optimized version. > -->Neil > Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 23:35:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA98999 for dynarec-outgoing; Wed, 28 Jun 2000 23:35:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006290641.IAA14670@pons.ac.upc.es> Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: "from Neil Bradley at Jun 28, 2000 12:27:34 pm" To: dynarec@dynarec.com Date: Thu, 29 Jun 2000 08:41:23 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > code. > > > Okay, now you've got to have two transmaps - one for each code region. Now > > No!! Why you are talking again about two transmaps? I never have talked > > about two transmap nor modified transmap. All the algorithm is transparent > > with the transmap. The transmap doesn't care about it. It is how you > > store things and what things you store on it. Let's try it again. The > > transmap stores the addresses for every instruction in the version > > without agregated timing (per instruction timing). Exactly as it works > > now. With the exception of the instructions that are block leaders > > (instructions in the beginning of a block). For these instructions the > > Okay, lemme see if I have this straight. > > When a block is recompiled, it compiles two blocks - one that has per > instruction timing and one that has aggregate timing. At the beginning of > the block, it checks to see if there's enough time through that entire > block to execute the aggregate version, and does so if there > is. If there isn't, it looks up the address in the transmap and jumps to > the per instruction timing. Once it hits the per instruction timing, how > would it know how to get back to the aggregate version? > It doesn't have to look up the transmap. The address for the first instruction of the block in the per instruction timing is "wired" in the check code, it isn't in the transmap. It returns when it founds a jump to a block start instruction because in the transmap the block start instructions point to the check code not to the per instruction timing version. > The same holds true when someone does an m68kexec(). Does it jump to the > aggregate version or the per instruction version? If it's the former, how > does it know where to jump? If it's the latter, how does it get out of the > per instruction version back in to the aggregate version? > It doesn't matter, it access the transmap and jumps to the address pointed on it. All the problem is handled at the start of each block and because in the transmap the first instruction of a block points to the check code, not to the per instruction timing code. So we only have to wait until a block ends and jump to another block. Of course we have to build the blocks so the jumps in the middle of other blocks would be the least possible. > -->Neil > Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 28 23:38:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA99010 for dynarec-outgoing; Wed, 28 Jun 2000 23:38:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006290644.IAA29161@pons.ac.upc.es> Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: "from Neil Bradley at Jun 28, 2000 12:31:37 pm" To: dynarec@dynarec.com Date: Thu, 29 Jun 2000 08:44:07 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > About the cache problem. I have thought a point that helps my point of view. > > If you call the core for 1000 or more cycles the code you will be more > > commonly executing will be agreggated code. Only some of the blocks of code > > without agreggation will be executed (the first and the last in a slot) so > > you don't need to have the two version all in cache at a time. > > But remember that each time you exit, you can't know where it's going to > exit from. > Of course what is the problem then? > > have the agreggated version always in cache and perhaps some unagreggated > > blocks going in and out of the cache. The code more frequently executed, > > the agreggated blocks, while be already in cache. So the amount of code > > you are using isn't so great as you were talking about. > > It actually is. The problem is you don't know where you're going to exit > from, which means on exit you'll always hit your per instruction timing > code even if it's only executed once. You *WILL* use more cache, and the > breadth of the code being as typically large as it is, it'll use more > cache than you think. > It will use some more cache not a lot of more cache. Of course you will miss two (or so) blocks, but all other will be already on cache. > -->Neil > Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 29 10:44:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA99824 for dynarec-outgoing; Thu, 29 Jun 2000 10:44:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 29 Jun 2000 10:52:30 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Direct jumps In-Reply-To: <200006290631.IAA01169@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > 3) Allow an option to be able to turn off this optimization when the > > implementor is going to be doing a lot of recompiling. > I'm with #3. In all other "academical" dynarecs I studied the lack of a > transmap made the flush of the translated code a real nightmare. In fact FWIW, I'm with #3, too. > they all had to flush all the recompiled blocks, which I think isn't the > best choice. The transmap helps to deal with flushing code so why are we > going to stop using it? Um... we're not. We are using a transmap. Or were you slamming the other dynarecs? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 29 11:34:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA99889 for dynarec-outgoing; Thu, 29 Jun 2000 11:34:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Direct jumps From: "M.I.K.e" In-Reply-To: Message-ID: <00036b35e38fd95a_mailit@mail.dynarec.com> References: Date: Thu, 29 Jun 2000 20:42:05 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >One optimization we're planning on is creating a direct jump when we know >the address of a block that has already been recompiled. So instead of >having code do a transmap lookup and then a jump to that address, it'll >just create an absolute jump to that location. Yeah, you call it depth-traversal and Shade calls it chaining. >Good optimization, but >there's a problem with using this and being able tell the recompiler to >ditch blocks of recompiled code because we could potentially ditch a >recompiled block that another block jumps to - with the optimized >jump instruction. Yes indeed, I almost forgot about that problem. Good that I have you and Victor to do the thinkning when I'm braindead again ;-) >1) Try to keep a list of all addresses and blocks that reference the >target (yuck) Too slooow, also sounds like a lot of storekeeping... >2) Completely ditch all recompiled blocks Oh no! That's how many other dyarecs do it and it really kills performance. >3) Allow an option to be able to turn off this optimization when the >implementor is going to be doing a lot of recompiling. Probably the best way. Since we do dynamic code generation it's not much of a problem for us and we will still be using the method from DMZ80 that the recompiled code checks if the target block has already been recompiled which is much faster than having to return to the dispatcher. >Comments? I'll take a look what Shade writes about it, but I don't think that it has anything practical about that topic. Otherwise I vote for #3. >-->Neil -- M.I.K.e Ideas don't stay in some minds very long because they don't like solitary confinement. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 29 12:45:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA99980 for dynarec-outgoing; Thu, 29 Jun 2000 12:45:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 29 Jun 2000 12:54:08 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Direct jumps In-Reply-To: <00036b35e38fd95a_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >having code do a transmap lookup and then a jump to that address, it'll > >just create an absolute jump to that location. > Yeah, you call it depth-traversal and Shade calls it chaining. Chaining is a really bad name. Actually a better name would be "call tree traversal". You're really going down the entire call tree looking for all possible branches. > >1) Try to keep a list of all addresses and blocks that reference the > >target (yuck) > Too slooow, also sounds like a lot of storekeeping... And you'd have to go look it up, too. Yuk. > I'll take a look what Shade writes about it, but I don't think that it has > anything practical about that topic. Otherwise I vote for #3. Yeah, the more I think about it #3 sounds like the best approach. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 29 14:15:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA00208 for dynarec-outgoing; Thu, 29 Jun 2000 14:15:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Direct jumps From: "M.I.K.e" In-Reply-To: Message-ID: <00036b382854fb0f_mailit@mail.dynarec.com> References: Date: Thu, 29 Jun 2000 23:24:29 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Chaining is a really bad name. Actually a better name would be "call tree >traversal". You're really going down the entire call tree looking for all >possible branches. I think we've had the discussion before that's why I also mentioned your preferred term ;-) >> >1) Try to keep a list of all addresses and blocks that reference the >> >target (yuck) >> Too slooow, also sounds like a lot of storekeeping... >And you'd have to go look it up, too. Yuk. That's what I meant by slow. >Yeah, the more I think about it #3 sounds like the best approach. Sorry, didn't take a look yet if the Shade document says something about it, so I still favour #3. I guess we want to have a relatively configurable dynarec anyway and one option more or less doesn't matter that much I guess. And it surely doesn't make the code generator more complicated. >-->Neil -- M.I.K.e Everything should be built top-down, except the first time. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 29 14:19:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA00220 for dynarec-outgoing; Thu, 29 Jun 2000 14:19:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 29 Jun 2000 14:27:23 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: <200006290644.IAA29161@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > But remember that each time you exit, you can't know where it's going to > > exit from. > Of course what is the problem then? You need to know how to get *BACK* to that point when the exec function is called again! > > It actually is. The problem is you don't know where you're going to exit > > from, which means on exit you'll always hit your per instruction timing > > code even if it's only executed once. You *WILL* use more cache, and the > > breadth of the code being as typically large as it is, it'll use more > > cache than you think. > It will use some more cache not a lot of more cache. Of course you will > miss two (or so) blocks, but all other will be already on cache. It'll double the amount of cache actually used. See my (yet to be typed) message about it coming up in a few minutes... -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 29 14:31:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA00244 for dynarec-outgoing; Thu, 29 Jun 2000 14:31:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 29 Jun 2000 14:39:15 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: <200006290641.IAA14670@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > When a block is recompiled, it compiles two blocks - one that has per > > instruction timing and one that has aggregate timing. At the beginning of > It doesn't have to look up the transmap. The address for the first > instruction of the block in the per instruction timing is "wired" in the > check code, it isn't in the transmap. It returns when it founds a jump > to a block start instruction because in the transmap the block start > instructions point to the check code not to the per instruction timing > version. Okay, so the transmap points to the aggregate timing version. With that in mind, let's assume this example: loop: ld a, (hl) ld (de), a inc bc inc de djnz loop Remember that the exec() call must be able to look up the address to jump to in the transmap. Now during this example, let's say that the "inc bc" instruction is the instruction that causes the exec() call to run out of time. This means the aggregate version would execute through the loop until the ld a,(hl) instruction, and see it doesn't have time left, and execute the per-byte instruction. Now the program counter is sitting at the "inc bc". Now I tell it to execute 5 cycles (which puts us at "inc de"), but since the transmap is pointing to the aggregate version, it'd execute inc de and the djnz - putting us over the amount of time we asked for. FWIW, This isn't uncommon. Read/write handlers typically control whether or not a CPU should stop execution by altering the time left to execute. So for this approach to work, we'd need to have two transmaps - one for aggregate and one for individual timing. Either that or else we'd wind up not being able to predict just how far the recompiled will execute until it's called. > > does it know where to jump? If it's the latter, how does it get out of the > > per instruction version back in to the aggregate version? > It doesn't matter, it access the transmap and jumps to the address pointed > on it. All the problem is handled at the start of each block and because > in the transmap the first instruction of a block points to the check code, > not to the per instruction timing code. So we only have to wait until a > block ends and jump to another block. Which means you now blow your timing accuracy. > Of course we have to build the > blocks so the jumps in the middle of other blocks would be the least > possible. That's fine, but how would you handle jumps that aren't absolute - to those pointed to by a register? Jumps wouldn't necessarily jump to the beginning of a recompiled block. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 29 14:40:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA00264 for dynarec-outgoing; Thu, 29 Jun 2000 14:40:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001901bfe21b$b5442680$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Direct jumps Date: Thu, 29 Jun 2000 23:44:20 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > #3 Sounds the most feasible, #2 is kinda kludgy but would work, and #1 I > don't even want to think about. > > Comments? I did write a mail from work before - but it doesn't seem to have made it. Anyway, I don't want to rewrite it again, but I went for option #3 - sounds better! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 29 23:34:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA00685 for dynarec-outgoing; Thu, 29 Jun 2000 23:33:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006300639.IAA21728@pons.ac.upc.es> Subject: Re: DYNAREC: Direct jumps In-Reply-To: <00036b35e38fd95a_mailit@mail.dynarec.com> "from M.I.K.e at Jun 29, 2000 08:42:05 pm" To: dynarec@dynarec.com Date: Fri, 30 Jun 2000 08:39:22 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >One optimization we're planning on is creating a direct jump when we know > >the address of a block that has already been recompiled. So instead of > >having code do a transmap lookup and then a jump to that address, it'll > >just create an absolute jump to that location. > > Yeah, you call it depth-traversal and Shade calls it chaining. > Really? I thought depth-traversal and Shade's chaining were different things. Shade's chaining is to join blocks with absolute jumps so it doesn't have to return to the dispatch path. Depth-traversal seemed for me the way Neil wants to analyze and recompile the code going depth into the code. > I'll take a look what Shade writes about it, but I don't think that it has > anything practical about that topic. Otherwise I vote for #3. I haven't take a look at Shade but from what I remember it just says it will drop all the code because of chaining. It's too hard track of the blocks affected by chaining. > M.I.K.e > Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 29 23:42:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA00701 for dynarec-outgoing; Thu, 29 Jun 2000 23:42:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006300648.IAA16140@pons.ac.upc.es> Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: "from Neil Bradley at Jun 29, 2000 02:39:15 pm" To: dynarec@dynarec.com Date: Fri, 30 Jun 2000 08:48:00 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > When a block is recompiled, it compiles two blocks - one that has per > > > instruction timing and one that has aggregate timing. At the beginning of > > It doesn't have to look up the transmap. The address for the first > > instruction of the block in the per instruction timing is "wired" in the > > check code, it isn't in the transmap. It returns when it founds a jump > > to a block start instruction because in the transmap the block start > > instructions point to the check code not to the per instruction timing > > version. > > Okay, so the transmap points to the aggregate timing version. With that in > mind, let's assume this example: > > loop: > ld a, (hl) > ld (de), a > inc bc > inc de > djnz loop > > Remember that the exec() call must be able to look up the address to jump > to in the transmap. > > Now during this example, let's say that the "inc bc" instruction is the > instruction that causes the exec() call to run out of time. This means > the aggregate version would execute through the loop until the ld > a,(hl) instruction, and see it doesn't have time left, and execute the > per-byte instruction. > > Now the program counter is sitting at the "inc bc". Now I tell it to > execute 5 cycles (which puts us at "inc de"), but since the transmap is > pointing to the aggregate version, it'd execute inc de and the djnz - > putting us over the amount of time we asked for. FWIW, This isn't > uncommon. Read/write handlers typically control whether or not a CPU > should stop execution by altering the time left to execute. > You are wrong if "inc bc" isn't the start instruction of a block it will jump to the per instruction version so it is stored in the transmap. It won't be problems then. But if "inc bc" is the start of a block it will read at the transmap the address for the check code and this code will see it doesn't have the time to execute code. About memory handlers and time modification I tell you that at each out point of the block we will update the timing. These includes when you jump to memory handlers. We could also jump back to the per instruction version when returning from the handler (using the info in the transmap). > > Of course we have to build the > > blocks so the jumps in the middle of other blocks would be the least > > possible. > > That's fine, but how would you handle jumps that aren't absolute - to > those pointed to by a register? Jumps wouldn't necessarily jump to the > beginning of a recompiled block. > Then it will execute the per instruction version or the check code of a start block that will find for this address in the transmap. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 29 23:52:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA00717 for dynarec-outgoing; Thu, 29 Jun 2000 23:52:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 30 Jun 2000 00:00:44 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: <200006300648.IAA16140@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > putting us over the amount of time we asked for. FWIW, This isn't > > uncommon. Read/write handlers typically control whether or not a CPU > > should stop execution by altering the time left to execute. > You are wrong if "inc bc" isn't the start instruction of a block it will > jump to the per instruction version so it is stored in the transmap. It Okay - I think I've got you cornered on this one. ;-) You mentioned that the transmap only covers the aggregate block version, but above you mention that it'll jump to the per instruction version stored in the transmap. I'm VERY confused now... now you need two transmaps! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 29 23:59:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA00730 for dynarec-outgoing; Thu, 29 Jun 2000 23:59:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006300705.JAA20270@pons.ac.upc.es> Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: "from Neil Bradley at Jun 30, 2000 00:00:44 am" To: dynarec@dynarec.com Date: Fri, 30 Jun 2000 09:05:22 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > putting us over the amount of time we asked for. FWIW, This isn't > > > uncommon. Read/write handlers typically control whether or not a CPU > > > should stop execution by altering the time left to execute. > > You are wrong if "inc bc" isn't the start instruction of a block it will > > jump to the per instruction version so it is stored in the transmap. It > > Okay - I think I've got you cornered on this one. ;-) > > You mentioned that the transmap only covers the aggregate block version, > but above you mention that it'll jump to the per instruction version > stored in the transmap. I'm VERY confused now... now you need two > transmaps! > And you are confusing me. ;) Well let see. I always said that the transmap holds two different contents: - for an instruction that is the start of a block => the address of the check code - for an instruction that isn't the start of a block => the address of the instruction in the per instruction version In the check code there is "hardwired" the address for the aggregated block and for the first instruction of the block in the per instruction version (which is also the beginning of the per instruction version block). BTW. In fact I always have the doubt about if it could work because usually complicate something leads to nowhere. ;) But I still think is an interesting idea. Now I see some lacks that it has and I didn't think about. > -->Neil --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 00:05:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA00754 for dynarec-outgoing; Fri, 30 Jun 2000 00:05:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006300710.JAA12483@pons.ac.upc.es> Subject: DYNAREC: Can I start work? In-Reply-To: <00036b382854fb0f_mailit@mail.dynarec.com> "from M.I.K.e at Jun 29, 2000 11:24:29 pm" To: dynarec@dynarec.com Date: Fri, 30 Jun 2000 09:10:42 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I want to start some coding. I see we have some task to do: build the 68K ISA definition table, build the x86 ISA definition (or we will take it from Alex?) and begin to build the scheleton of the recompiler, perhaps addapting the code from DRMZ80. I would want some homework for the weekend now the dynarec flame is inside me. If not I will begin again with FF Tactics. :o So, your orders, my lord? ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 00:16:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA00770 for dynarec-outgoing; Fri, 30 Jun 2000 00:16:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 30 Jun 2000 00:25:01 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Comments about DR68k In-Reply-To: <200006300705.JAA20270@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well let see. I always said that the transmap holds two different contents: > - for an instruction that is the start of a block => the address of the > check code > - for an instruction that isn't the start of a block => the address of > the instruction in the per instruction version Okay, so the transmap is a hybrid. Lemme think about this a bit... -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 00:35:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA00796 for dynarec-outgoing; Fri, 30 Jun 2000 00:35:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 30 Jun 2000 00:44:16 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Can I start work? In-Reply-To: <200006300710.JAA12483@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I want to start some coding. I see we have some task to do: build the > 68K ISA definition table, build the x86 ISA definition (or we will > take it from Alex?) At this point I think any dynarec specific coding is premature. We still have some things to sort out first, and before we can really start plugging things in, we want a working emulation going, right? That's something that we have to decide. We have already discussed that we need to tweak it a bit to handle higher level functions, like Genx86MovReg32Mem32() instead of having the specific and one for EAX. ;-) But I see that more as an extension of the existing format. We will need a utility of sorts that will take the script and emit C code that will be able to emit the instructions that the target layer will call. I think we have general consensus that Alex's idea is the way to go. Even if we don't use the exact format, the idea is quite sound. I'll follow up this message with another message about it. > and begin to build the scheleton of the recompiler, > perhaps addapting the code from DRMZ80. I'd say we should learn from DRMZ80, but we shouldn't just pull code from it (with the exception of the stuff that has already been pulled that is really libraryizable). Have you downloaded the source code to the drop? The one that inits Food Fight? That should give you an idea of where/how things are progressing. It has a BeOS, DOS (DJGPP) and MSVC buildable version in the source drop. Please tell me you have... ;-) > I would want some homework for the weekend now the dynarec flame is inside > me. If not I will begin again with FF Tactics. :o > So, your orders, my lord? ;) Hehehehe. Money - send lots of it. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 00:45:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA00812 for dynarec-outgoing; Fri, 30 Jun 2000 00:45:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200006300750.JAA06748@pons.ac.upc.es> Subject: Re: DYNAREC: Can I start work? In-Reply-To: "from Neil Bradley at Jun 30, 2000 00:44:16 am" To: dynarec@dynarec.com Date: Fri, 30 Jun 2000 09:50:52 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Have you downloaded the source code to the drop? The one that inits Food > Fight? That should give you an idea of where/how things are progressing. > > It has a BeOS, DOS (DJGPP) and MSVC buildable version in the source > drop. Please tell me you have... ;-) > I have but yesterday I couldn't try it because I was writing a doc for the SI project in mul8. I think I will test the DJGPP and MSVC versions. > > I would want some homework for the weekend now the dynarec flame is inside > > me. If not I will begin again with FF Tactics. :o > > So, your orders, my lord? ;) > > Hehehehe. Money - send lots of it. ;-) > Unluckily don't have much. ; ( Are you trying to impose me abusive taxes? This has brought many wars. I will have to change of land lord. Your adviced my lord. ;) > -->Neil > Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 01:23:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA00850 for dynarec-outgoing; Fri, 30 Jun 2000 01:23:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 30 Jun 2000 01:31:37 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Can I start work? In-Reply-To: <200006300750.JAA06748@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Hehehehe. Money - send lots of it. ;-) > Unluckily don't have much. ; ( > Are you trying to impose me abusive taxes? This has brought many wars. > I will have to change of land lord. Your adviced my lord. ;) Hehehehe. Well, we told the English to pound sand WRT taxes, but they are still the king if stupidity in that department. Television tax? Come on! Sorry Neil. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 02:27:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA01066 for dynarec-outgoing; Fri, 30 Jun 2000 02:27:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Can I start work? Date: Fri, 30 Jun 2000 11:31:06 +0200 Message-ID: <01bfe275$ea52a900$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Hehehehe. Well, we told the English to pound sand WRT taxes, but they are >still the king if stupidity in that department. Television tax? Come on! Okay, we have Television tax. But that also covers radios (legally you *should* have a license for a radio too - but I don't think it matters anymore) and gives us 2 fairly good TV channels (well... they WERE good once) without adverts. But still... yeah, I don't like them. >Sorry Neil. ;-) No, I agree. But it *is* fairly ironic that the tax rates you chucked Britian out of America for are what you have now. Or possibly higher. Sorry Neil. ;-) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 04:03:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA01174 for dynarec-outgoing; Fri, 30 Jun 2000 04:03:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Can I start work? From: "M.I.K.e" In-Reply-To: <200006300710.JAA12483@pons.ac.upc.es> Message-ID: <00036b43b273abfb_mailit@mail.dynarec.com> References: <200006300710.JAA12483@pons.ac.upc.es> Date: Fri, 30 Jun 2000 13:10:31 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I want to start some coding. I see we have some task to do: build the >68K ISA definition table, Take a look at the source code of the emulator Generator (you'll find a link on the DRFAQ), because it has such a definition table. >I would want some homework for the weekend now the dynarec flame is inside >me. If not I will begin again with FF Tactics. :o Hehe... >So, your orders, my lord? ;) M.I.K.e: "Listen to me slave..." NB: "Thou shall not have any other Lords beside me!" M.I.K.e: "Oh shit!" ... >Victor Moya -- M.I.K.e How much does it cost to entice a dope-smoking UNIX system guru to Dayton? -- Brian Boyle, UNIX/WORLD's First Annual Salary Survey --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 04:14:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA01196 for dynarec-outgoing; Fri, 30 Jun 2000 04:14:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002401bfe285$b00664c0$860f8cd4@daves> From: "David Sharp" To: References: <01bfe275$ea52a900$35901a17@turkey> Subject: Re: DYNAREC: Can I start work? Date: Fri, 30 Jun 2000 12:23:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Okay, we have Television tax. But that also covers radios (legally you > *should* have a license for a radio too - but I don't think it matters > anymore) and gives us 2 fairly good TV channels (well... they WERE good > once) without adverts. But still... yeah, I don't like them. Oh come on, we get brilliant value for money :- 2 quality terrestrial TV channels with quality programs made for them (not much bought in stuff from the U.S.) an example of the quality is that all weather presenters are fully qualified meteorologists. Plus on cable you get News24 a superb channel, BBC parliament, and all the UK living/play/choice channels. You also get is it 5 radio stations covering popular music through to sport. Also bbc.co.uk, one of the best and biggest UK web sites around. And all this with absolutely no adverts at all, for those who've never experienced something like this, you'd be surprised the difference in quality made with no commercial breaks or product placement and commercial bias. Also, over 75s get free licenses and there are cut price black and white licenses. If you don't have a TV you don't pay for the license and still get all the website and radio for free! All this for just 100 quid a year. All you brits, think how piss poor british TV would be without the beeb. > No, I agree. But it *is* fairly ironic that the tax rates you chucked > Britian out of America for are what you have now. Or possibly higher. Sorry > Neil. ;-) :o) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 05:30:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA01296 for dynarec-outgoing; Fri, 30 Jun 2000 05:30:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Can I start work? Date: Fri, 30 Jun 2000 14:31:50 +0200 Message-ID: <01bfe28f$29d9bf00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Oh come on, we get brilliant value for money :- >2 quality terrestrial TV channels with quality programs made for them (not >much bought in stuff from the U.S.) an example of the quality is that all >weather presenters are fully qualified meteorologists. No, I don't agree anymore. It *used* to be quality. Now it isn't. They say that "because of the unique way in which we're paid for, we try to cover everyones tastes"! Fair enough. Please tell me where the computer programs are. There's certainly enough of us out there. I'm trying to think of one quality program I saw in December that wasn't: a) a repeat b) a repeat or c) a repeat Oh yeah, and d) was made by the BBC Er... "Have I got news for you" That's it. That's the only one I can think of. They used to have quality childrens programs - no more. They didn't use to have the same program with different presenters before (all of these change the house/room/garden thing). Things like Eastenders weren't on 3 or more times a week, we had something different. There used to be lots of good comedy. They used to have sci-fi. THEY DON'T ANYMORE. Not that I feel let down by the BBC at all. :) Yes, they used to have quality stuff. They don't have much of any "quality" anymore. And I still have to pay for it. If I were to pay 5p for every half-hour that I watched, they'd be lucky to get 20 pounds off me. Even at 20p/half hour, they'd still be lucky to get 50 pounds off me. But I still have to pay the full thing. Oh yes, and I've been away for 9 months. But guess what? I still had to pay for those 9 months I'm not using it. Great, huh? >Plus on cable you get News24 a superb channel, BBC parliament, and all the >UK living/play/choice channels. Okay, but that's extra. Say, for example (and this isn't true in my case) that I've subscribed to Sky and I don't watch BBC1 or BBC2. Why should I pay? And, in my particular case, I very, very, very rarely watch TV (maybe once, twice a week - I used to watch it more but there's a reason why I don't now). But I *do* use my TV for TV-Out, DVD and watching videos. >You also get is it 5 radio stations covering popular music through to sport. 2 Radio stations covering popular music, 3 radio stations covering unpopular music - one of them covers sport. >Also bbc.co.uk, one of the best and biggest UK web sites around. Not for me! Completely pointless and useless to me when I'm over here (except, of course, for the news)! >And all this with absolutely no adverts at all, for those who've never >experienced something like this, you'd be surprised the difference in >quality made with no commercial breaks or product placement and commercial >bias. Like we have with the other 3 channels? :) >Also, over 75s get free licenses and there are cut price black and white >licenses. If you don't have a TV you don't pay for the license and still get >all the website and radio for free! You shouldn't, you should *still* buy a license for the radio. Go to the post office and ask for a radio licence. They'll have them. It's not free. Except, of course, it's quite difficult to enforce that... >All this for just 100 quid a year. All you brits, think how piss poor >british TV would be without the beeb. 100? It's gone DOWN?! I doubt that highly. It was 125 last time I checked. As a student, 25 quid *is* important to me. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 06:53:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA01395 for dynarec-outgoing; Fri, 30 Jun 2000 06:53:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Dynamic Code on BeOS From: "M.I.K.e" Message-ID: <00036b461634f4e7_mailit@mail.dynarec.com> Date: Fri, 30 Jun 2000 16:01:34 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Mail-It_--335000660" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --Mail-It_--335000660 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Since Jules once mentioned that he wasn't able to run ARMphetamine on BeOS without crashing I was a bit afraid that BeOS might not permit dynamic code at all. Therefore I wrote a small test program which is attached. I hope that this proves that I can work with dynamic code under BeOS. What do you think? -- M.I.K.e Scientists are people who build the Brooklyn Bridge and then buy it. -- William Buckley --Mail-It_--335000660 Content-Type: text/x-source-code; name="dyncode.c" Content-Transfer-Encoding: base64 Content-Disposition: Attachment; filename="dyncode.c" LyogdGVzdCBjYWxsIG9mIGR5bmFtaWMgY29kZSAqLwovKiAoYykgTS5JLksuZSAgICAgICAgICAg ICAgICovCi8qIExhc3QgbW9kaWZpZWQ6IDIwMDAtMDYtMzAgKi8KCmludCAoKmR5bmNvZGUpKGlu dCBpKTsgIC8qIHByb3RvdHlwZSBmb3IgY2FsbCBvZiBkeW5hbWljIGNvZGUgKi8KCnVuc2lnbmVk IGNoYXIgY29kZVtdID0gezB4OEIsMHg0NCwweDI0LDB4MDQsICAvKiBtb3YgZWF4LCBbZXNwKzRd ICovCiAgICAgICAgICAgICAgICAgICAgICAgIDB4NDAsICAgICAgICAgICAgICAgICAvKiBpbmMg ZWF4ICAgICAgICAgICovCiAgICAgICAgICAgICAgICAgICAgICAgIDB4QzMsICAgICAgICAgICAg ICAgICAvKiByZXQgICAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICAgICAgICAgIDB4OTAg ICAgICAgICAgICAgICAgICAvKiBub3AgICAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICAg ICAgICAgfTsKCnVuc2lnbmVkIGNoYXIgY29kZTJbMTBdOwp1bnNpZ25lZCBjaGFyIGNvZGUzWzEw XTsKCiNpbmNsdWRlIDxzdGRpby5oPgoKaW50IG1haW4odm9pZCkKewogIGludCBpOwogIAogIGR5 bmNvZGUgPSAoaW50KCopKGludCkpIGNvZGU7ICAgICAgICAgICAgICAgLyogc2V0IGFkZHJlc3Mg ICAqLwogIHByaW50ZigicmV0dmFsICAgPSAlZFxuIiwgKCpkeW5jb2RlKSg0MSkpOyAgLyogY2Fs bCB0aGUgY29kZSAqLwoKICBmb3IgKGkgPSAwOyBjb2RlW2ldICE9IDB4OTA7IGkrKykKICB7CiAg CWNvZGUyW2ldID0gY29kZVtpXTsKICAJcHJpbnRmKCJjb2RlMlslZF0gPSAweCUyeFxuIiwgaSwg Y29kZTJbaV0pOwogIH0KICBkeW5jb2RlID0gKGludCgqKShpbnQpKSBjb2RlMjsgICAgICAgICAg ICAgIC8qIHNldCBhZGRyZXNzICAgKi8KICBwcmludGYoInJldHZhbDIgID0gJWRcbiIsICgqZHlu Y29kZSkoNDEpKTsgIC8qIGNhbGwgdGhlIGNvZGUgKi8KCiAgY29kZTNbMF0gPSAweDhiOwogIGNv ZGUzWzFdID0gMHg0NDsKICBjb2RlM1syXSA9IDB4MjQ7CiAgY29kZTNbM10gPSAweDA0OwogIGNv ZGUzWzRdID0gMHg0MDsKICBjb2RlM1s1XSA9IDB4YzM7CiAgZHluY29kZSA9IChpbnQoKikoaW50 KSkgY29kZTM7ICAgICAgICAgICAgICAvKiBzZXQgYWRkcmVzcyAgICovCiAgcHJpbnRmKCJyZXR2 YWwyICA9ICVkXG4iLCAoKmR5bmNvZGUpKDQxKSk7ICAvKiBjYWxsIHRoZSBjb2RlICovCiAgCiAg cmV0dXJuIDA7Cn0K --Mail-It_--335000660-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 07:57:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA01464 for dynarec-outgoing; Fri, 30 Jun 2000 07:57:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Dynamic Code on BeOS Date: Fri, 30 Jun 2000 16:58:34 +0200 Message-ID: <01bfe2a3$a9718900$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Since Jules once mentioned that he wasn't able to run ARMphetamine on BeOS >without crashing I was a bit afraid that BeOS might not permit dynamic code >at all. That shouldn't be possible. Maybe he tried it in a different way to you (quite likely)? >Therefore I wrote a small test program which is attached. I hope that this >proves that I can work with dynamic code under BeOS. What do you think? Seems like it would work to me. But I can't test it for 2 reasons. a) It contains x86 asm - and I'm using a SPARC b) I can't even get a simple "Hello World!" program to compile here because something is fecked... But to my eye, it seems like it works as you meant it to. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 08:20:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA01496 for dynarec-outgoing; Fri, 30 Jun 2000 08:20:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 30 Jun 2000 16:31:12 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynamic Code on BeOS Message-ID: <20000630163111.A968@boris.quns.cam.ac.uk> References: <01bfe2a3$a9718900$35901a17@turkey> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: <01bfe2a3$a9718900$35901a17@turkey>; from Neil Griffiths on Fri, Jun 30, 2000 at 04:58:34PM +0200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Fri, Jun 30, 2000 at 04:58:34PM +0200, Neil Griffiths wrote: > Hi, > > > >Since Jules once mentioned that he wasn't able to run ARMphetamine on BeOS > >without crashing I was a bit afraid that BeOS might not permit dynamic code > >at all. > > That shouldn't be possible. Maybe he tried it in a different way to you > (quite likely)? I think it was probably more a problem of different calling conventions, relocatable code (?), or something. I was only trying it as a quick hack to see if it'd work straight off really - and it didn't :-/ Jules -- Julian Brown, Queens' College Cambridge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 08:31:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA01518 for dynarec-outgoing; Fri, 30 Jun 2000 08:31:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 30 Jun 2000 08:40:19 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynamic Code on BeOS In-Reply-To: <00036b461634f4e7_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Since Jules once mentioned that he wasn't able to run ARMphetamine on BeOS > without crashing I was a bit afraid that BeOS might not permit dynamic code > at all. > Therefore I wrote a small test program which is attached. I hope that this > proves that I can work with dynamic code under BeOS. What do you think? I'd make a tweak to your program: void (*blah)(void); blah = (void (*)(void)) malloc(sizeof(code2)); memcpy(blah, code2, sizeof(code2)); dyncode = blah(41); printf("retval2 = %d\n", (*dyncode)(41)); /* call the code */ Just copy it to RAM and make sure you can run out of your local heap. Give that a shot. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 08:34:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA01529 for dynarec-outgoing; Fri, 30 Jun 2000 08:34:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Dynamic Code on BeOS Date: Fri, 30 Jun 2000 17:35:40 +0200 Message-ID: <01bfe2a8$d83e2e00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> That shouldn't be possible. Maybe he tried it in a different way to you >> (quite likely)? > >I think it was probably more a problem of different calling conventions, >relocatable code (?), or something. I was only trying it as a quick hack >to see if it'd work straight off really - and it didn't :-/ I thought it would be something like this. So I'll forgive you. Have you got your doctors note or a letter from your parents? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 08:51:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA01559 for dynarec-outgoing; Fri, 30 Jun 2000 08:51:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynamic Code on BeOS From: "M.I.K.e" In-Reply-To: <01bfe2a3$a9718900$35901a17@turkey> Message-ID: <00036b47a0a8b311_mailit@mail.dynarec.com> References: <01bfe2a3$a9718900$35901a17@turkey> Date: Fri, 30 Jun 2000 17:51:52 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That shouldn't be possible. Maybe he tried it in a different way to you >(quite likely)? Maybe. >Seems like it would work to me. All three calls return the desired 42 ;-) >But I can't test it for 2 reasons. >a) It contains x86 asm - and I'm using a SPARC Bad luck! >b) I can't even get a simple "Hello World!" program to compile here because >something is fecked... Just when you think it couldn't be worse... >But to my eye, it seems like it works as you meant it to. I just modified a program I wrote for ARM, but that had only the first case. Since I didn't know if already compiled data as in this first case is differently handled to really dynamic code I added the two other methods to be completely sure. It runs correctly so there shouldn't be any problems with a dynarec on BeOS ; -) >Neil. -- M.I.K.e If time heals all wounds, how come the belly button stays the same? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 08:52:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA01568 for dynarec-outgoing; Fri, 30 Jun 2000 08:52:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynamic Code on BeOS From: "M.I.K.e" In-Reply-To: <20000630163111.A968@boris.quns.cam.ac.uk> Message-ID: <00036b47a8601bc7_mailit@mail.dynarec.com> References: <01bfe2a3$a9718900$35901a17@turkey> <20000630163111.A968@boris.quns.cam.ac.uk> Date: Fri, 30 Jun 2000 17:54:01 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think it was probably more a problem of different calling conventions, I wanted to have simple calling conventions and therefore used the option "- fomit-frame-pointer" for GCC. >relocatable code (?), Hmm, that might be a problem. But will we use relocatable code? >or something. I was only trying it as a quick hack >to see if it'd work straight off really - and it didn't :-/ That's sometimes the problem with quick hacks... >Jules -- M.I.K.e 7:30, Channel 5: The Bionic Dog (Action/Adventure) The Bionic Dog gets a hormonal short-circuit and violates the Mann Act with an interstate Greyhound bus. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 09:09:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA01598 for dynarec-outgoing; Fri, 30 Jun 2000 09:09:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynamic Code on BeOS From: "M.I.K.e" In-Reply-To: Message-ID: <00036b47efd21b72_mailit@mail.dynarec.com> References: Date: Fri, 30 Jun 2000 18:14:00 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'd make a tweak to your program: >Just copy it to RAM and make sure you can run out of your local heap. Give >that a shot. Good hint! I added: dyncode = (int (*)(int)) malloc(sizeof(code2)); memcpy(dyncode, code2, sizeof(code2)); printf("retval4 = %d\n", (*dyncode)(41)); /* call the code */ Fortunately retval4 is als 42 ;-) I guess that's the final proof! >-->Neil -- M.I.K.e "That boy's about as sharp as a pound of wet liver" -- Foghorn Leghorn --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 15:46:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA02036 for dynarec-outgoing; Fri, 30 Jun 2000 15:46:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01bfe2e6$5ee9cf80$85178cd4@daves> From: "David Sharp" To: References: <01bfe28f$29d9bf00$35901a17@turkey> Subject: Re: DYNAREC: Can I start work? Date: Fri, 30 Jun 2000 18:33:47 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com What you rate as quality is very subjective. So you don't rate the quality, ok. > have to pay the full thing. Oh yes, and I've been away for 9 months. But > guess what? I still had to pay for those 9 months I'm not using it. Great, > huh? Erm, sorry mate, we bought a TV licence for use in a rented house last Summer and got a refund after 3 months for the unused quarters. It's on the back of the TV licence IIRC! :o) > Okay, but that's extra. Say, for example (and this isn't true in my case) > that I've subscribed to Sky and I don't watch BBC1 or BBC2. Why should I > pay? And, in my particular case, I very, very, very rarely watch TV (maybe > once, twice a week - I used to watch it more but there's a reason why I > don't now). But I *do* use my TV for TV-Out, DVD and watching videos. That comes down to the entire, 'why should I pay any tax on any national service' debate... > 2 Radio stations covering popular music, 3 radio stations covering unpopular > music subjective, though I'd have to agree with you! :o) > Not for me! Completely pointless and useless to me when I'm over here > (except, of course, for the news)! So you'd rather have pay per view on the website so you don't accidentally pay for anything but the news! :o) (joke) > Like we have with the other 3 channels? :) Which channels are you watching? ITV/C4/5 are littered with ads. > 100? It's gone DOWN?! I doubt that highly. It was 125 last time I checked. > As a student, 25 quid *is* important to me. :) Maybe you should get the refund on the other 80ish quid then! :o) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 16:34:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA02095 for dynarec-outgoing; Fri, 30 Jun 2000 16:34:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 30 Jun 2000 16:43:21 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Progress Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com My feature adding and bug fixing on the 8051 project is now complete, so I've got a full week in which to bang on Dynarec. We've got a holiday in the US (July 4th - you English know what I'm talking about. ;-) ) and I'm off work until the 5th of July, so hopefully I can crank on this! The first order of business is the issue of the scripts that generate both the target opcode generator and the source layer opcode table. As Alex mentioned, you can use the scripts to generate both. I don't think there's anyone who doesn't think this is a good idea. The question is, how do we proceed? The actual script itself that Alex has is most of the solution, but it doesn't solve the problem of grouping. And I'd like the procedure names to be in the form of x86OpMovReg8Mem32 (meaning mov eax, [blah]) and somehow have the script have the info. Maybe like this perhaps (the registers are wrong, but you get the idea: prefix = "Opx86"; // Note: The values here aren't right - they're here for example only group REG { REG_EAX = 000; REG_EBX = 001; REG_ECX = 010; REG_EDX = 011; }; ; Assume MEM32 is a hardcode meaning 32 bit memory ; address. IMM8/IMM16/IMM32 are also hardcodes. class MovReg32Mem32(REG, MEM32) { 10100001 IMM32 |RegEAXMEM32|REG_EAX MEM32|1 1; //mov eax, [mem32] 10001011 1011aaa0 IMM32 |RegReg32Mem32|REG MEM32|1 1; // mov reg32, [mem32] }; 10011111 |Lahf||1 1; // lahf 10011110 |Sahf||1 1; // sahf ------------- What this means is that a procedure will be called x86OpMovReg32. It in turn will look for two forms of instructions - one with REG_EAX as the first parameter (and generate the 10100001 instruction sequence followed by the MEM32 value given on input). If it matches anything in the REG group, it'll generate the second instruction. So it'll create a wrapper of x86OpMovreg32Mem32, and based on the inputs will call one of two private procedures - one called Opx86RegEAXMEM32 and OpX86RegReg32Mem32. It will also create Opx86Lahf and Opx86Sahf. One thing about the second variant of the mov instruction: 10001011 1011aaa0 IMM32 |RegReg32Mem32|REG MEM32|1 1; // mov reg32, [mem32] This says that it will take one of "REG" as its first parameter. When generating the instruction: a (or multiple) = First option in the third column (separated by |) b = Second... c = Third... This has the added advantage of the code automatically taking the input and shifting it in to the opcode's position, plus being able to check if something is wrong and the value you're trying to place there won't fit. So if you had multiple (like mov eax, [ebp+ebx+mem]) 10001011 0bbbaaa0 0ccc0010 IMM32 |Reg32Reg32PlusReg32PlusMEM32|REG REG REG MEM32|1 1; bbb Would be the second incoming option, aaa would be the first, and ccc would be the third. Also the last two numbers before the end of the line are timing #1 and timing #2. Neither are required, however. This is useful if an instruction has two possible timing outcomes (like a conditional branch). On the x86 side of things, since we're only generating target opcode generation code, we just don't list the timing. If you execute the utility with the -target option, it'd generate all the x86op procedures. If you execute the utility with the -source option, it can generate the source table that the recompiler uses plus the target covers! This seems to solve the x86 case of things. Would someone like to try an example using this approach on a 68000 or some other CPU? Before we can really begin coding the recompiler, we've got to figure this out! Get at it! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 17:59:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA02163 for dynarec-outgoing; Fri, 30 Jun 2000 17:59:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 30 Jun 2000 18:08:00 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Can I start work? In-Reply-To: <01bfe275$ea52a900$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > *should* have a license for a radio too - but I don't think it matters A license to *RECEIVE* radio? Gimme a break! > >Sorry Neil. ;-) > No, I agree. But it *is* fairly ironic that the tax rates you chucked > Britian out of America for are what you have now. Or possibly higher. Sorry > Neil. ;-) Um... I think the UK's tax rates are far higher across the board. But we don't have dumb tax like TV tax. I can imagine taxes on road usage, sales, and income, but jeez *TV* tax? Come on! And I know you brits just love your TV and think that it's the best on earth but frankly almost all of it sucks major ass (but then again, so does US television). I might mention Benny Hill... ;-) (actually, I like Benny Hill, Don't Forget Your Toothbrush, and Whose Line Is It Anyway? - the UK versions). -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 18:02:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA02180 for dynarec-outgoing; Fri, 30 Jun 2000 18:02:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 30 Jun 2000 18:10:40 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Can I start work? In-Reply-To: <000b01bfe2e6$5ee9cf80$85178cd4@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > that I've subscribed to Sky and I don't watch BBC1 or BBC2. Why should I > > pay? And, in my particular case, I very, very, very rarely watch TV (maybe > > once, twice a week - I used to watch it more but there's a reason why I > > don't now). But I *do* use my TV for TV-Out, DVD and watching videos. > That comes down to the entire, 'why should I pay any tax on any national > service' debate... I think that's the crux of it right there. The government owns all TV stations. At least the US is smart enough to lump national services together under one shelter (income tax or property tax) instead of having a separate, dumbass tax. > > Like we have with the other 3 channels? :) > Which channels are you watching? ITV/C4/5 are littered with ads. Really? then why would you have to pay for them? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 30 21:17:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA02325 for dynarec-outgoing; Fri, 30 Jun 2000 21:17:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 30 Jun 2000 21:25:45 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Hehehehehe Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I just bought Diablo II and The Sims tonight so I know what I'll be doing... ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 02:23:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA02755 for dynarec-outgoing; Sat, 1 Jul 2000 02:23:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004401bfe347$22545ac0$0100a8c0@lion> From: "Neil Griffiths" To: References: <01bfe28f$29d9bf00$35901a17@turkey> <000b01bfe2e6$5ee9cf80$85178cd4@daves> Subject: Re: DYNAREC: Can I start work? Date: Sat, 1 Jul 2000 11:11:54 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > What you rate as quality is very subjective. So you don't rate the quality, > ok. Okay, but then you can't say "2 quality terrestrial TV channels with quality programs made for them" either, OK? ;) > > have to pay the full thing. Oh yes, and I've been away for 9 months. But > > guess what? I still had to pay for those 9 months I'm not using it. Great, > > huh? > > Erm, sorry mate, we bought a TV licence for use in a rented house last > Summer and got a refund after 3 months for the unused quarters. It's on the > back of the TV licence IIRC! :o) Yes, I thought about doing that. It's quite likely that my Mum actually did that. I just never asked! :o > > Okay, but that's extra. Say, for example (and this isn't true in my case) > > that I've subscribed to Sky and I don't watch BBC1 or BBC2. Why should I > > pay? And, in my particular case, I very, very, very rarely watch TV (maybe > > once, twice a week - I used to watch it more but there's a reason why I > > don't now). But I *do* use my TV for TV-Out, DVD and watching videos. > > That comes down to the entire, 'why should I pay any tax on any national > service' debate... Not really, but I do see your point. > > 2 Radio stations covering popular music, 3 radio stations covering > unpopular > > music > > subjective, though I'd have to agree with you! :o) Heh. ;) > > Not for me! Completely pointless and useless to me when I'm over here > > (except, of course, for the news)! > > So you'd rather have pay per view on the website so you don't accidentally > pay for anything but the news! :o) (joke) Something like that yes - because most of it is quite useless when I'm over here. :) > > Like we have with the other 3 channels? :) > > Which channels are you watching? ITV/C4/5 are littered with ads. That's what I meant - the other 3 channels have adverts. > > 100? It's gone DOWN?! I doubt that highly. It was 125 last time I checked. > > As a student, 25 quid *is* important to me. :) > > Maybe you should get the refund on the other 80ish quid then! :o) You have a point. I'm going to get my parents on that right now. Because I can't do anything about it while I'm over here! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 02:23:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA02757 for dynarec-outgoing; Sat, 1 Jul 2000 02:23:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004a01bfe347$24a77280$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Can I start work? Date: Sat, 1 Jul 2000 11:27:56 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Um... I think the UK's tax rates are far higher across the board. But we > don't have dumb tax like TV tax. I can imagine taxes on road usage, sales, > and income, but jeez *TV* tax? Come on! I think our taxes are pretty similar now from what I've seen, but I'm not 100% sure of that. > And I know you brits just love your TV and think that it's the best on > earth but frankly almost all of it sucks major ass (but then again, so > does US television). I might mention Benny Hill... ;-) (actually, I like > Benny Hill, Don't Forget Your Toothbrush, and Whose Line Is It Anyway? - > the UK versions). You didn't read what I wrote did you? I hate(!) most TV here. Don't Forget Your Toothbrush was funny (Chris Evans, right?) but that stopped about 3 or 4 years ago. And Whose Line Is It Anyway? is cool. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 02:24:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA02750 for dynarec-outgoing; Sat, 1 Jul 2000 02:23:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004301bfe347$21941800$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Hehehehehe Date: Sat, 1 Jul 2000 11:07:07 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I just bought Diablo II and The Sims tonight so I know what I'll be > doing... ;-) Working on the Dynarec? :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 02:23:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA02756 for dynarec-outgoing; Sat, 1 Jul 2000 02:23:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004501bfe347$239ae480$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Progress Date: Sat, 1 Jul 2000 11:25:57 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > My feature adding and bug fixing on the 8051 project is now complete, so > I've got a full week in which to bang on Dynarec. We've got a holiday in > the US (July 4th - you English know what I'm talking about. ;-) ) and I'm > off work until the 5th of July, so hopefully I can crank on this! July 4th... July 4th... Nope, is that important then? ;)) Do you know that in Britain we don't learn about things like that in school? We don't learn about the British empire, America and the independance war - or anything. We just don't learn it. Whether that's because we lost I just don't know. > The actual script itself that Alex has is most of the solution, but it > doesn't solve the problem of grouping. And I'd like the procedure names to > be in the form of x86OpMovReg8Mem32 (meaning mov eax, [blah]) and somehow > have the script have the info. Maybe like this perhaps (the registers are > wrong, but you get the idea: Surely x86OpMovReg8Mem32 is a misnomer? I read that as x86 operation, 8-bit register, 32-bit memory. I'd go with those procedure names - but I'd prefer it if we made them slightly more readable. For mov eax, [mem] then I'd suggest we go for: x86OpMovReg32Mem32 We could also have: x86OpMovReg32Mem8 x86OpMovReg32Mem16 But we probably won't. :) > class MovReg32Mem32(REG, MEM32) Scary! Now you use my suggested name (and I hadn't read that far down)! :o > This has the added advantage of the code automatically taking the input > and shifting it in to the opcode's position, plus being able to check if > something is wrong and the value you're trying to place there won't > fit. So if you had multiple (like mov eax, [ebp+ebx+mem]) Yep, this looks good to me! > If you execute the utility with the -target option, it'd generate all the > x86op procedures. If you execute the utility with the -source option, it > can generate the source table that the recompiler uses plus the target > covers! Yes, that would be cool. > This seems to solve the x86 case of things. Would someone like to try an > example using this approach on a 68000 or some other CPU? No. ;) Actually, I'm not joking. :) Unless you want it for the Z80 - and then we'd be screwed when it got to 32-bit. :) > Before we can really begin coding the recompiler, we've got to figure this > out! Get at it! ;-) I'm out today but I *will* be thinking about it. Let's see what I come up with today, eh? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 02:43:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA02800 for dynarec-outgoing; Sat, 1 Jul 2000 02:43:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 1 Jul 2000 02:51:56 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Progress In-Reply-To: <004501bfe347$239ae480$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Do you know that in Britain we don't learn about things like that in school? Of course not. The English got their asses kicked. ;-) > We don't learn about the British empire, America and the independance war - > or anything. We just don't learn it. Whether that's because we lost I just > don't know. And what I find really weird is that there is still a class of people in England who are bitter about it. Even though it happened many generations before they were born. Much like the north/south wars we had here. Go figger. > > be in the form of x86OpMovReg8Mem32 (meaning mov eax, [blah]) and somehow > > have the script have the info. Maybe like this perhaps (the registers are > > wrong, but you get the idea: > Surely x86OpMovReg8Mem32 is a misnomer? I read that as x86 operation, 8-bit > register, 32-bit memory. That's right. It's an 8 bit load out of 32 bit memory > I'd go with those procedure names - but I'd prefer > it if we made them slightly more readable. For mov eax, [mem] then I'd > suggest we go for: The idea here is to get the scripting right so we can do whatever naming convention we feel like. > > class MovReg32Mem32(REG, MEM32) > Scary! Now you use my suggested name (and I hadn't read that far down)! :o That's because it's a 32 bit register load out of memory - not an 8 bit one. ;-) > > This seems to solve the x86 case of things. Would someone like to try an > > example using this approach on a 68000 or some other CPU? > No. ;) > Actually, I'm not joking. :) > > Unless you want it for the Z80 - and then we'd be screwed when it got to > 32-bit. :) Huh? I also said in my script that MEM16 existed, in addition to REG8 and REG16. You can create other classes - nothing will prevent you from doing so. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 02:45:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA02814 for dynarec-outgoing; Sat, 1 Jul 2000 02:45:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 1 Jul 2000 02:53:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Can I start work? In-Reply-To: <004a01bfe347$24a77280$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Don't Forget Your Toothbrush was funny (Chris Evans, right?) but that > stopped about 3 or 4 years ago. And Whose Line Is It Anyway? is cool. :) What's really funny is that Don't Forget Your Toothbrush and Whose Line Is It Anyway? now have US versions of them. We've got Ryan Stiles from WLIIA? and a few of the other guys from the English version. I used to watch them both. I actually think that WLIIA? is identical in humor factor over here to the original (which I watch daily, BTW) and Don't Forget Your Toothbrush just started a couple of days ago. We'll see how well it pans out. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 02:45:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA02823 for dynarec-outgoing; Sat, 1 Jul 2000 02:45:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 1 Jul 2000 02:54:31 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Hehehehehe In-Reply-To: <004301bfe347$21941800$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I just bought Diablo II and The Sims tonight so I know what I'll be > > doing... ;-) > Working on the Dynarec? :o I just woke up with a nightmare of me throwing fireballs at demons and I'm answering email to calm myself down. Man, do not play that game right before you go to bed! Answer some Dynarec email first or something else equally useless... -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 09:56:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA05333 for dynarec-outgoing; Sat, 1 Jul 2000 09:56:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003801bfe386$5b0d8a00$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Progress Date: Sat, 1 Jul 2000 18:52:14 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Do you know that in Britain we don't learn about things like that in school? > > Of course not. The English got their asses kicked. ;-) Okay, but most Americans don't know who discovered their country. Here's a hint - it wasn't Christopher Columbus. Even though this is who most Americans will name... > > We don't learn about the British empire, America and the independance war - > > or anything. We just don't learn it. Whether that's because we lost I just > > don't know. > > And what I find really weird is that there is still a class of people in > England who are bitter about it. Even though it happened many generations > before they were born. Much like the north/south wars we had here. Go > figger. Don't know about that - I don't know anybody bitter about that. I'm just bitter that you get better weather than I do. ;) > > > be in the form of x86OpMovReg8Mem32 (meaning mov eax, [blah]) and somehow > > > have the script have the info. Maybe like this perhaps (the registers are > > > wrong, but you get the idea: > > Surely x86OpMovReg8Mem32 is a misnomer? I read that as x86 operation, 8-bit > > register, 32-bit memory. > > That's right. It's an 8 bit load out of 32 bit memory Okay, but your example was EAX - certainly a 32-bit register. > > I'd go with those procedure names - but I'd prefer > > it if we made them slightly more readable. For mov eax, [mem] then I'd > > suggest we go for: > > The idea here is to get the scripting right so we can do whatever naming > convention we feel like. Okay, we need to sort this one out then. Er... any suggestions? > > > class MovReg32Mem32(REG, MEM32) > > Scary! Now you use my suggested name (and I hadn't read that far down)! :o > > That's because it's a 32 bit register load out of memory - not an 8 bit > one. ;-) Yes, but you said EAX above - this is the one you would have meant! ;p > > > This seems to solve the x86 case of things. Would someone like to try an > > > example using this approach on a 68000 or some other CPU? > > No. ;) > > Actually, I'm not joking. :) > > > > Unless you want it for the Z80 - and then we'd be screwed when it got to > > 32-bit. :) > > Huh? I also said in my script that MEM16 existed, in addition to REG8 and > REG16. You can create other classes - nothing will prevent you from doing > so. I meant that I couldn't do it with the Z80 as the destination CPU. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 09:56:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA05335 for dynarec-outgoing; Sat, 1 Jul 2000 09:56:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003a01bfe386$5d376ee0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Hehehehehe Date: Sat, 1 Jul 2000 18:55:28 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > > I just bought Diablo II and The Sims tonight so I know what I'll be > > > doing... ;-) > > Working on the Dynarec? :o > > I just woke up with a nightmare of me throwing fireballs at demons and I'm > answering email to calm myself down. Man, do not play that game right > before you go to bed! Answer some Dynarec email first or something else > equally useless... That could be bad too. You could end up dreaming that you have to recompile the SH4 for the 6502... :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 09:56:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA05334 for dynarec-outgoing; Sat, 1 Jul 2000 09:56:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003901bfe386$5c1a1800$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Can I start work? Date: Sat, 1 Jul 2000 18:54:07 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Don't Forget Your Toothbrush was funny (Chris Evans, right?) but that > > stopped about 3 or 4 years ago. And Whose Line Is It Anyway? is cool. :) > > What's really funny is that Don't Forget Your Toothbrush and Whose Line Is > It Anyway? now have US versions of them. We've got Ryan Stiles from > WLIIA? and a few of the other guys from the English version. Yeah? Cool. It's a funny program. It's good to see other people be as spontaneous as I am. ;)) > I used to watch them both. I actually think that WLIIA? is identical in > humor factor over here to the original (which I watch daily, BTW) and > Don't Forget Your Toothbrush just started a couple of days ago. We'll see > how well it pans out. ;-) I'll warn you know - "Don't Forget Your Toothbrush" has a French version. It's possible it actually WAS a French program that the British stole! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 10:18:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA05369 for dynarec-outgoing; Sat, 1 Jul 2000 10:18:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 1 Jul 2000 10:26:51 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Progress In-Reply-To: <003801bfe386$5b0d8a00$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Do you know that in Britain we don't learn about things like that in > school? > > Of course not. The English got their asses kicked. ;-) > Okay, but most Americans don't know who discovered their country. Here's a > hint - it wasn't Christopher Columbus. Even though this is who most > Americans will name... Uh... most of us *DO* know that. CC Was the guy who got famous for it but I think it was Leif Erickson... If you can believe it, I was taught that in our public school system. ;-) > > And what I find really weird is that there is still a class of people in > > England who are bitter about it. Even though it happened many generations > > before they were born. Much like the north/south wars we had here. Go > > figger. > Don't know about that - I don't know anybody bitter about that. I'm just > bitter that you get better weather than I do. ;) Do we? The skies here are very similar to the UK. > > > > have the script have the info. Maybe like this perhaps (the registers > > > > wrong, but you get the idea: > > > Surely x86OpMovReg8Mem32 is a misnomer? I read that as x86 operation, > > > register, 32-bit memory. > > That's right. It's an 8 bit load out of 32 bit memory > Okay, but your example was EAX - certainly a 32-bit register. Well *BPBPBPBPBPBPBPBPBPBPPBPBPT*! > > The idea here is to get the scripting right so we can do whatever naming > > convention we feel like. > Okay, we need to sort this one out then. Er... any suggestions? The big question is does the scripting that I proposed work in both the source case and the target case?As far as I can see it does, but I'm looking for an outside opinion! > > > 32-bit. :) > > Huh? I also said in my script that MEM16 existed, in addition to REG8 and > > REG16. You can create other classes - nothing will prevent you from doing > I meant that I couldn't do it with the Z80 as the destination CPU. ;) You could if you were really a sick puppy. That'd be fun - a x86 to Z80 CPU recompiler. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 10:23:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA05384 for dynarec-outgoing; Sat, 1 Jul 2000 10:23:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701bfe38a$2298e260$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Progress Date: Sat, 1 Jul 2000 19:28:18 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Okay, but most Americans don't know who discovered their country. Here's a > > hint - it wasn't Christopher Columbus. Even though this is who most > > Americans will name... > > Uh... most of us *DO* know that. CC Was the guy who got famous for it but > I think it was Leif Erickson... If you can believe it, I was taught that > in our public school system. ;-) No, it was the Vikings. ;)) > > Don't know about that - I don't know anybody bitter about that. I'm just > > bitter that you get better weather than I do. ;) > > Do we? The skies here are very similar to the UK. Okay, but as a country (the US) you do. You can also get worse as well - but I'm overlooking that one. :) > > Okay, but your example was EAX - certainly a 32-bit register. > > Well *BPBPBPBPBPBPBPBPBPBPPBPBPT*! Wrong answer? :) > > Okay, we need to sort this one out then. Er... any suggestions? > > The big question is does the scripting that I proposed work in both the > source case and the target case?As far as I can see it does, but I'm > looking for an outside opinion! As far as I can see it does too. Anyone want to disagree? > > > Huh? I also said in my script that MEM16 existed, in addition to REG8 and > > > REG16. You can create other classes - nothing will prevent you from doing > > I meant that I couldn't do it with the Z80 as the destination CPU. ;) > > You could if you were really a sick puppy. That'd be fun - a x86 to Z80 > CPU recompiler. ;-) I'm a sick puppy - but even I'm not *that* ill. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 11:02:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA05424 for dynarec-outgoing; Sat, 1 Jul 2000 11:02:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 1 Jul 2000 11:11:33 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Progress In-Reply-To: <000701bfe38a$2298e260$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I think it was Leif Erickson... If you can believe it, I was taught that > > in our public school system. ;-) > No, it was the Vikings. ;)) Leif Erickson was a Viking, dumbass. ;-) > > Do we? The skies here are very similar to the UK. > Okay, but as a country (the US) you do. You can also get worse as well - but > I'm overlooking that one. :) You mean like the shitload of tornadoes we get each year? I actually think they're cool, as they only touch down in trailer parks. There's a running theory that trailer parks actually cause tornadoes. ;-) > > The big question is does the scripting that I proposed work in both the > > source case and the target case?As far as I can see it does, but I'm > > looking for an outside opinion! > As far as I can see it does too. Anyone want to disagree? I want someone to disagree... otherwise, I'll just have to implement it! > > > I meant that I couldn't do it with the Z80 as the destination CPU. ;) > > You could if you were really a sick puppy. That'd be fun - a x86 to Z80 > > CPU recompiler. ;-) > I'm a sick puppy - but even I'm not *that* ill. :)) You may be English, but you're certainly not French! ;-) FWIW - I'm a bit in a silly mood because I just found out I'm going to be a daddy... -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 11:53:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA05475 for dynarec-outgoing; Sat, 1 Jul 2000 11:53:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <395E4023.1F87212A@mail.utexas.edu> Date: Sat, 01 Jul 2000 14:01:55 -0500 From: Alex Pasadyn Organization: none X-Mailer: Mozilla 4.72 [en] (Win95; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Progress References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com FWIW, the header files I've been using for code generation are attached. The first, dx86.h, is the operand list. When you see an operand like "IMM32" in my script, the code refers to P_IMM32. The second header file contains the encodings for all the registers and memory access stuff. For example, This code works in the following way: GenX86Op2(psOp, INSX86_MOV_RD_IMM32, RD_EAX, 0x78787878); The corresponding line in the script is 1011 1DDD |MOV|RD IMM32|-|-|1 1 0 ; mov reg32, imm32 So, the x86 generation code knows that the opcode has two operands, a P_RD (from dx86.h), and a P_IMM32. The opcode is INSX86_MOV_RD_IMM32 (this gets us the sequence of bytes we need to emit). The first argument, RD_EAX, is interpreted as a P_RD, and the second, 0x78787878, is interpreted as a P_IMM32, so the instruction gets built correctly. I'll clean up and upload some of my code this weekend. I've been tied up all week trying to finish up some real work! :-( > The actual script itself that Alex has is most of the solution, but it > doesn't solve the problem of grouping. And I'd like the procedure names to > be in the form of x86OpMovReg8Mem32 (meaning mov eax, [blah]) and somehow > have the script have the info. Maybe like this perhaps (the registers are > wrong, but you get the idea: I still like the way I did it where there is only one "real" GenX86Op function, and I think I found a way to make us all happy. Instead of just putting the grouping of classes in the script, I want the rules there as well. For instance, inside the class {} structure, put lines that say "if REG=REG_EAX: use MOV_EAX_MEM32" for example. There are reasons I'm so stuck to this: I use that same table for many tasks. It can be used by both the source and target layers, as well as for disassembly. That's why I am such a stickler for the naming scheme I use in it and the fact that all the instruction forms be there. There is another big advantage to my way, though. Say, for instance, that I did not have the "OR" instructions in my x86 table (at one point I didn't, when I was just starting). I was writing my 34010 handlers, which spit out x86 code, and I decided I needed The x86 or instructions. So, I added them to the insx86.txt script, wrote the code in the 34010 handler file as if they were already there (using OR_RD_IMM32 like stuff, for example, aince I knew the syntax already), recompiled, and it all just worked. I did not have to change the x86.c opcode generation file AT ALL, becauae it already knew how to make x86 instructions (I just have one function that does this, and it knows all the addressing modes, operand formats, etc from dx86.h), and I had just added the bits and operands for another one. > class MovReg32Mem32(REG, MEM32) > { > 10100001 IMM32 |RegEAXMEM32|REG_EAX MEM32|1 1; //mov eax, [mem32] > 10001011 1011aaa0 IMM32 |RegReg32Mem32|REG MEM32|1 1; // mov reg32, [mem32] > }; > I do not like this because you removed my ability to use this file in disassembling. The way I originally had it, you could still make your function naming convention (MovReg32Mem32 instead of my MOV_REG32_MEM32) just by changing the helper program. All the information needed to make those names was in the file. But my way had the advantage that the MOV part was separate, so that my disassembler picked that up and filled in the operands appropriately. Just some food for thought... Alex --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 12:11:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA05505 for dynarec-outgoing; Sat, 1 Jul 2000 12:11:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <395E4466.34D8B6A9@mail.utexas.edu> Date: Sat, 01 Jul 2000 14:20:06 -0500 From: Alex Pasadyn Organization: none X-Mailer: Mozilla 4.72 [en] (Win95; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Progress References: <395E4023.1F87212A@mail.utexas.edu> Content-Type: multipart/mixed; boundary="------------D6FC86D6D2CDE8F9F5D7D95A" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This is a multi-part message in MIME format. --------------D6FC86D6D2CDE8F9F5D7D95A Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Alex Pasadyn wrote: > > FWIW, the header files I've been using for code generation are > attached. The first, dx86.h, is the operand list. When you see an Um, dangit, I forgot the attachment: It should be there now. Alex --------------D6FC86D6D2CDE8F9F5D7D95A Content-Type: application/x-unknown-content-type-hfile; name="x86.h" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="x86.h" I2lmbmRlZiBfWDg2X0hfDQojZGVmaW5lIF9YODZfSF8NCg0KI2luY2x1ZGUgInR5cGVzLmgi DQojaW5jbHVkZSAiZHJjb3JlLmgiDQojaW5jbHVkZSAiaW5zWDg2LmgiDQojaW5jbHVkZSA8 c3RkaW8uaD4NCiNpbmNsdWRlIDxzdGRsaWIuaD4NCg0KDQojZGVmaW5lIFJCX0FMIDANCiNk ZWZpbmUgUkJfQ0wgMQ0KI2RlZmluZSBSQl9ETCAyDQojZGVmaW5lIFJCX0JMIDMNCiNkZWZp bmUgUkJfQUggNA0KI2RlZmluZSBSQl9DSCA1DQojZGVmaW5lIFJCX0RIIDYNCiNkZWZpbmUg UkJfQkggNw0KDQojZGVmaW5lIFJXX0FYIDANCiNkZWZpbmUgUldfQ1ggMQ0KI2RlZmluZSBS V19EWCAyDQojZGVmaW5lIFJXX0JYIDMNCiNkZWZpbmUgUldfU1AgNA0KI2RlZmluZSBSV19C UCA1DQojZGVmaW5lIFJXX1NJIDYNCiNkZWZpbmUgUldfREkgNw0KDQojZGVmaW5lIFJEX0VB WCAwDQojZGVmaW5lIFJEX0VDWCAxDQojZGVmaW5lIFJEX0VEWCAyDQojZGVmaW5lIFJEX0VC WCAzDQojZGVmaW5lIFJEX0VTUCA0DQojZGVmaW5lIFJEX0VCUCA1DQojZGVmaW5lIFJEX0VT SSA2DQojZGVmaW5lIFJEX0VESSA3DQoNCiNkZWZpbmUgUkVHX0VBWCAweDAwDQojZGVmaW5l IFJFR19FQ1ggMHgwOA0KI2RlZmluZSBSRUdfRURYIDB4MTANCiNkZWZpbmUgUkVHX0VCWCAw eDE4DQojZGVmaW5lIFJFR19FU1AgMHgyMA0KI2RlZmluZSBSRUdfRUJQIDB4MjgNCiNkZWZp bmUgUkVHX0VTSSAweDMwDQojZGVmaW5lIFJFR19FREkgMHgzOA0KI2RlZmluZSBSRUdfQVgg MHgwMA0KI2RlZmluZSBSRUdfQ1ggMHgwOA0KI2RlZmluZSBSRUdfRFggMHgxMA0KI2RlZmlu ZSBSRUdfQlggMHgxOA0KI2RlZmluZSBSRUdfU1AgMHgyMA0KI2RlZmluZSBSRUdfQlAgMHgy OA0KI2RlZmluZSBSRUdfU0kgMHgzMA0KI2RlZmluZSBSRUdfREkgMHgzOA0KI2RlZmluZSBS RUdfQUwgMHgwMA0KI2RlZmluZSBSRUdfQ0wgMHgwOA0KI2RlZmluZSBSRUdfREwgMHgxMA0K I2RlZmluZSBSRUdfQkwgMHgxOA0KI2RlZmluZSBSRUdfQUggMHgyMA0KI2RlZmluZSBSRUdf Q0ggMHgyOA0KI2RlZmluZSBSRUdfREggMHgzMA0KI2RlZmluZSBSRUdfQkggMHgzOA0KDQoj ZGVmaW5lIFJNX1JNX01BU0sgMHgwNw0KI2RlZmluZSBSTV9NT0RfTUFTSyAweGMwDQoNCiNk ZWZpbmUgUk1fQVRfRUFYIDB4MDANCiNkZWZpbmUgUk1fQVRfRUNYIDB4MDENCiNkZWZpbmUg Uk1fQVRfRURYIDB4MDINCiNkZWZpbmUgUk1fQVRfRUJYIDB4MDMNCiNkZWZpbmUgUk1fQVRf U0lCIDB4MDQNCiNkZWZpbmUgUk1fQVRfRUJQIDB4MDUNCiNkZWZpbmUgUk1fQVRfRElTUDMy IDB4MDUNCiNkZWZpbmUgUk1fQVRfRVNJIDB4MDYNCiNkZWZpbmUgUk1fQVRfRURJIDB4MDcN Cg0KI2RlZmluZSBSTV9ESVNQOF9NT0QgIDB4NDANCiNkZWZpbmUgUk1fRElTUDMyX01PRCAw eDgwDQoNCiNkZWZpbmUgUk1fRUFYIDB4YzANCiNkZWZpbmUgUk1fRUNYIDB4YzENCiNkZWZp bmUgUk1fRURYIDB4YzINCiNkZWZpbmUgUk1fRUJYIDB4YzMNCiNkZWZpbmUgUk1fRVNQIDB4 YzQNCiNkZWZpbmUgUk1fRUJQIDB4YzUNCiNkZWZpbmUgUk1fRVNJIDB4YzYNCiNkZWZpbmUg Uk1fRURJIDB4YzcNCiNkZWZpbmUgUk1fQVggMHhjMA0KI2RlZmluZSBSTV9DWCAweGMxDQoj ZGVmaW5lIFJNX0RYIDB4YzINCiNkZWZpbmUgUk1fQlggMHhjMw0KI2RlZmluZSBSTV9TUCAw eGM0DQojZGVmaW5lIFJNX0JQIDB4YzUNCiNkZWZpbmUgUk1fU0kgMHhjNg0KI2RlZmluZSBS TV9ESSAweGM3DQojZGVmaW5lIFJNX0FMIDB4YzANCiNkZWZpbmUgUk1fQ0wgMHhjMQ0KI2Rl ZmluZSBSTV9ETCAweGMyDQojZGVmaW5lIFJNX0JMIDB4YzMNCiNkZWZpbmUgUk1fQUggMHhj NA0KI2RlZmluZSBSTV9DSCAweGM1DQojZGVmaW5lIFJNX0RIIDB4YzYNCiNkZWZpbmUgUk1f QkggMHhjNw0KDQoNCiNkZWZpbmUgU0lCX0JfRUFYIDB4MDANCiNkZWZpbmUgU0lCX0JfRUNY IDB4MDENCiNkZWZpbmUgU0lCX0JfRURYIDB4MDINCiNkZWZpbmUgU0lCX0JfRUJYIDB4MDMN CiNkZWZpbmUgU0lCX0JfRVNQIDB4MDQNCiNkZWZpbmUgU0lCX0JfRUJQIDB4MDUNCiNkZWZp bmUgU0lCX0JfTk9OIDB4MDUNCiNkZWZpbmUgU0lCX0JfRVNJIDB4MDYNCiNkZWZpbmUgU0lC X0JfRURJIDB4MDcNCg0KI2RlZmluZSBTSUJfSU5EX0VBWCAweDAwDQojZGVmaW5lIFNJQl9J TkRfRUNYIDB4MDgNCiNkZWZpbmUgU0lCX0lORF9FRFggMHgxMA0KI2RlZmluZSBTSUJfSU5E X0VCWCAweDE4DQojZGVmaW5lIFNJQl9JTkRfRUJQIDB4MjgNCiNkZWZpbmUgU0lCX0lORF9F U0kgMHgzMA0KI2RlZmluZSBTSUJfSU5EX0VESSAweDM4DQoNCiNkZWZpbmUgU0lCX01VTF8x ICAgMHgwMA0KI2RlZmluZSBTSUJfTVVMXzIgICAweDQwDQojZGVmaW5lIFNJQl9NVUxfNCAg IDB4ODANCiNkZWZpbmUgU0lCX01VTF84ICAgMHhjMA0KDQpzdHJ1Y3Qgc0hvc3RPcCogTWFr ZVg4Nkhvc3RPcChVSU5UMzIgZHdPcEluZGV4LCBVSU5UMzIgZHdBcmcxLCBVSU5UMzIgZHdB cmcyLCBVSU5UMzIgZHdBcmczLCBVSU5UMzIgZHdBcmc0KTsNCg0KI2RlZmluZSBHZW5YODZP cDQob3V0cHV0LCBpbmRleCwgYXJnMSwgYXJnMiwgYXJnMywgYXJnNCkgICBcDQoJb3V0cHV0 LT5wc05leHRMaW5rID0gTWFrZVg4Nkhvc3RPcChpbmRleCwgYXJnMSwgYXJnMiwgYXJnMywg YXJnNCk7ICAgXA0KCW91dHB1dCA9IG91dHB1dC0+cHNOZXh0TGluazsgICBcDQoJaWYgKCEo b3V0cHV0KSkgIFwNCgl7ICBcDQoJCXByaW50ZigiZXJyb3IgaW4gR1hPOiAlbGQsICVsZCwg JWxkLCAlbGQsICVsZFxuIiwgKFVJTlQzMikgaW5kZXgsIChVSU5UMzIpIGFyZzEsIChVSU5U MzIpIGFyZzIsIChVSU5UMzIpIGFyZzMsIChVSU5UMzIpIGFyZzQpOyAgXA0KCQlleGl0KDEp OyAgXA0KCX07ICAgIFwNCg0KI2RlZmluZSBHZW5YODZPcDMob3V0cHV0LCBpbmRleCwgYXJn MSwgYXJnMiwgYXJnMykgICBcDQoJb3V0cHV0LT5wc05leHRMaW5rID0gTWFrZVg4Nkhvc3RP cChpbmRleCwgYXJnMSwgYXJnMiwgYXJnMywgMCk7ICAgXA0KCW91dHB1dCA9IG91dHB1dC0+ cHNOZXh0TGluazsgICBcDQoJaWYgKCEob3V0cHV0KSkgIFwNCgl7ICBcDQoJCXByaW50Zigi ZXJyb3IgaW4gR1hPOiAlbGQsICVsZCwgJWxkLCAlbGRcbiIsIChVSU5UMzIpIGluZGV4LCAo VUlOVDMyKSBhcmcxLCAoVUlOVDMyKSBhcmcyLCAoVUlOVDMyKSBhcmczKTsgIFwNCgkJZXhp dCgxKTsgIFwNCgl9OyAgICBcDQoNCiNkZWZpbmUgR2VuWDg2T3AyKG91dHB1dCwgaW5kZXgs IGFyZzEsIGFyZzIpICAgXA0KCW91dHB1dC0+cHNOZXh0TGluayA9IE1ha2VYODZIb3N0T3Ao aW5kZXgsIGFyZzEsIGFyZzIsIDAsIDApOyAgIFwNCglvdXRwdXQgPSBvdXRwdXQtPnBzTmV4 dExpbms7ICAgXA0KCWlmICghKG91dHB1dCkpICBcDQoJeyAgXA0KCQlwcmludGYoImVycm9y IGluIEdYTzogJWxkLCAlbGQsICVsZFxuIiwgKFVJTlQzMikgaW5kZXgsIChVSU5UMzIpIGFy ZzEsIChVSU5UMzIpIGFyZzIpOyAgXA0KCQlleGl0KDEpOyAgXA0KCX07ICAgIFwNCg0KI2Rl ZmluZSBHZW5YODZPcDEob3V0cHV0LCBpbmRleCwgYXJnMSkgICBcDQoJb3V0cHV0LT5wc05l eHRMaW5rID0gTWFrZVg4Nkhvc3RPcChpbmRleCwgYXJnMSwgMCwgMCwgMCk7ICAgXA0KCW91 dHB1dCA9IG91dHB1dC0+cHNOZXh0TGluazsgICBcDQoJaWYgKCEob3V0cHV0KSkgIFwNCgl7 ICBcDQoJCXByaW50ZigiZXJyb3IgaW4gR1hPOiAlbGQsICVsZFxuIiwgKFVJTlQzMikgaW5k ZXgsIChVSU5UMzIpIGFyZzEpOyAgXA0KCQlleGl0KDEpOyAgXA0KCX07ICAgIFwNCg0KI2Rl ZmluZSBHZW5YODZPcDAob3V0cHV0LCBpbmRleCkgICBcDQoJb3V0cHV0LT5wc05leHRMaW5r ID0gTWFrZVg4Nkhvc3RPcChpbmRleCwgMCwgMCwgMCwgMCk7ICAgXA0KCW91dHB1dCA9IG91 dHB1dC0+cHNOZXh0TGluazsgICBcDQoJaWYgKCEob3V0cHV0KSkgIFwNCgl7ICBcDQoJCXBy aW50ZigiZXJyb3IgaW4gR1hPOiAlbGRcbiIsIChVSU5UMzIpIGluZGV4KTsgIFwNCgkJZXhp dCgxKTsgIFwNCgl9OyAgICBcDQoNCg0KDQovKiBfWDg2X0hfICovDQojZW5kaWYNCg== --------------D6FC86D6D2CDE8F9F5D7D95A Content-Type: application/x-unknown-content-type-hfile; name="dX86.h" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="dX86.h" I2luY2x1ZGUgInR5cGVzLmgiDQojaW5jbHVkZSAiZHJjb3JlLmgiDQoNCg0KZW51bQ0Kew0K CVBfTlVMTD0wLA0KCVBfREIsDQoJUF9SRCwgUF9SVywgUF9SQiwNCglQX0lNTTMyLCBQX0lN TTE2LCBQX0lNTTgsDQoJUF9NT0ZGUywNCglQX0FMLCBQX0FYLCBQX0VBWCwgUF9DTCwgUF8x LA0KCVBfUk04LCBQX1JNMTYsIFBfUk0zMiwNCglQX1I4LCBQX1IxNiwgUF9SMzIsIFBfTk9S RUcsDQp9Ow0K --------------D6FC86D6D2CDE8F9F5D7D95A-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 13:28:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA05592 for dynarec-outgoing; Sat, 1 Jul 2000 13:28:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000201bfe3a4$064e4e00$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Progress Date: Sat, 1 Jul 2000 22:31:40 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > No, it was the Vikings. ;)) > > Leif Erickson was a Viking, dumbass. ;-) Gosh! ;)) > > Okay, but as a country (the US) you do. You can also get worse as well - but > > I'm overlooking that one. :) > > You mean like the shitload of tornadoes we get each year? I actually think > they're cool, as they only touch down in trailer parks. There's a running > theory that trailer parks actually cause tornadoes. ;-) Sort of like natures way of sorting itself out? > > As far as I can see it does too. Anyone want to disagree? > > I want someone to disagree... otherwise, I'll just have to implement it! Okay, I'll disagree - but I haven't got an alternative. So there. > > I'm a sick puppy - but even I'm not *that* ill. :)) > > You may be English, but you're certainly not French! ;-) No, that's very true! I'm just being silly because I'm... me. Bugger. :) > FWIW - I'm a bit in a silly mood because I just found out I'm going to be > a daddy... Congratulations! Yep, my best congratulations go to you and your wife! You know, you're taking dynamic recompilation a touch too seriously there... ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 17:18:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA05822 for dynarec-outgoing; Sat, 1 Jul 2000 17:17:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 1 Jul 2000 17:26:45 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Progress In-Reply-To: <395E4023.1F87212A@mail.utexas.edu> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > FWIW, the header files I've been using for code generation are > attached. The first, dx86.h, is the operand list. When you see an > operand like "IMM32" in my script, the code refers to P_IMM32. The > second header file contains the encodings for all the registers and > memory access stuff. Does the dx86.h file get created from running the utility on the script? I would assume that it does. > GenX86Op2(psOp, INSX86_MOV_RD_IMM32, RD_EAX, 0x78787878); > The corresponding line in the script is > 1011 1DDD |MOV|RD IMM32|-|-|1 1 0 ; mov reg32, imm32 > > So, the x86 generation code knows that the opcode has two operands, a > P_RD (from dx86.h), and a P_IMM32. The opcode is INSX86_MOV_RD_IMM32 > (this gets us the sequence of bytes we need to emit). The first > argument, RD_EAX, is interpreted as a P_RD, and the second, 0x78787878, > is interpreted as a P_IMM32, so the instruction gets built correctly. What is "RD"? > > doesn't solve the problem of grouping. And I'd like the procedure names to > > be in the form of x86OpMovReg8Mem32 (meaning mov eax, [blah]) and somehow > > have the script have the info. Maybe like this perhaps (the registers are > > wrong, but you get the idea: > I still like the way I did it where there is only one "real" GenX86Op > function, and I think I found a way to make us all happy. Heh. I influenced you in that department. ;-) That's the way I did DRMZ80 and I don't like it one bit. It's lots harder to read and you've got to make sure you don't forget an option in the formal parameter list. Or worse yet, there's no way to have the compiler actually spew at you that you've got a typing problem. You'd have to do that at runtime. It's also easier to remember: mov eax, [mem32] By the name you can infer: x86OpMovReg32Mem32(xxxx); Just by the instruction you want. Of course that's one level above the actual implementation since it should be flexible to support any kind of naming convention so I don't think it'll really matter. > Instead of > just putting the grouping of classes in the script, I want the rules > there as well. For instance, inside the class {} structure, put lines > that say "if REG=REG_EAX: use MOV_EAX_MEM32" for example. Hm... that's not a bad idea. It also causes some of the logic to flow better. Can you give me a script example of the above so I'm totally syncing with you? > There are reasons I'm so stuck to this: I use that same table for many > tasks. It can be used by both the source and target layers, as well as > for disassembly. You mean stuck with the script idea? Yeah, it's the way to go. I'm convinced. > That's why I am such a stickler for the naming scheme > I use in it and the fact that all the instruction forms be there. Disassembly... now you've got me thinking... > There is another big advantage to my way, though. Say, for instance, > that I did not have the "OR" instructions in my x86 table (at one point > I didn't, when I was just starting). I was writing my 34010 handlers, > which spit out x86 code, and I decided I needed The x86 or > instructions. So, I added them to the insx86.txt script, wrote the code > in the 34010 handler file as if they were already there (using > OR_RD_IMM32 like stuff, for example, aince I knew the syntax already), > recompiled, and it all just worked. I did not have to change the x86.c > opcode generation file AT ALL, becauae it already knew how to make x86 > instructions (I just have one function that does this, and it knows all > the addressing modes, operand formats, etc from dx86.h), and I had just > added the bits and operands for another one. Oh yeah. The script idea kicks total ass. > > class MovReg32Mem32(REG, MEM32) > > { > > 10100001 IMM32 |RegEAXMEM32|REG_EAX MEM32|1 1; //mov eax, [mem32] > > 10001011 1011aaa0 IMM32 |RegReg32Mem32|REG MEM32|1 1; // mov reg32, [mem32] > > }; > I do not like this because you removed my ability to use this file in > disassembling. The way I originally had it, you could still make your > function naming convention (MovReg32Mem32 instead of my MOV_REG32_MEM32) > just by changing the helper program. All the information needed to make > those names was in the file. But my way had the advantage that the MOV > part was separate, so that my disassembler picked that up and filled in > the operands appropriately. In this case I was trying to get it to fit in 80 columns. Perhaps we could do away with the name of the procedure entirely and just have REG_EAX automatically turn in to Reg32Mem32 since the parameters are really what the instruction is. In its place, we can stick in the proper disassembly instruction. Really, from this script, it has the ability to do target, source, and disassembly. I see the advantage of having the disassembly ability of things. That would also make it so we don't have to rely on third party disassemblers to do the trick. Damn. Yeah. Okay, you've convinced me. ;-) Keep talking... I'd like to hear more! I'm swimming around with ideas now... -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 17:19:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA05833 for dynarec-outgoing; Sat, 1 Jul 2000 17:19:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 1 Jul 2000 17:28:00 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Progress In-Reply-To: <000201bfe3a4$064e4e00$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > You mean like the shitload of tornadoes we get each year? I actually think > > they're cool, as they only touch down in trailer parks. There's a running > > theory that trailer parks actually cause tornadoes. ;-) > Sort of like natures way of sorting itself out? Like nature's way of taking out the white trash! ;-) > > > I'm a sick puppy - but even I'm not *that* ill. :)) > > You may be English, but you're certainly not French! ;-) > No, that's very true! I'm just being silly because I'm... me. Bugger. :) You still need to get off your ass and comment on all the email flying about. ;-) > > FWIW - I'm a bit in a silly mood because I just found out I'm going to be > > a daddy... > Congratulations! Yep, my best congratulations go to you and your wife! Thanks! I still have to keep reminding myself every couple of hours. It hasn't sunk in yet... > You know, you're taking dynamic recompilation a touch too seriously there... > ;)) For once the list is on topic and you're whining. Weiner! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 21:24:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA06014 for dynarec-outgoing; Sat, 1 Jul 2000 21:24:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <395EC5F4.7299EF79@mail.utexas.edu> Date: Sat, 01 Jul 2000 23:32:52 -0500 From: Alex Pasadyn Organization: none X-Mailer: Mozilla 4.72 [en] (Win95; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Progress References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > Heh. I influenced you in that department. ;-) That's the way I did DRMZ80 > and I don't like it one bit. It's lots harder to read and you've got to > make sure you don't forget an option in the formal parameter list. Or > worse yet, there's no way to have the compiler actually spew at you that > you've got a typing problem. You'd have to do that at runtime. Absolutely not so!!! Yes, in my current implementation I did it with macros, but in our new one I had something better planned. The actual GenX86Op function I have will be private. Instead of accessing it through macros like this: GenX86Op2(psOp, INSX86_MOV_RD_IMM32, RD_EAX, 0x78787878); (RD is "Register Double" by the way. I am using the nomenclature from the Intel x86 instruction set reference. On the 34010 script file I used the nomenclature from the TI 34010 programmers reference. There is a pattern.....) You will access it like this: x86OpMovRdImm32(RD_EAX, 0x78787878); Where x86OpMovRdImm32 and all the other functions like it are generated automatically (so you get type checking at compile time), and call GenX86Op to do the dirty work. > It's also easier to remember: > mov eax, [mem32] > By the name you can infer: > x86OpMovReg32Mem32(xxxx); Exactly! :) But gotten at in a different way. > Hm... that's not a bad idea. It also causes some of the logic to flow > better. Can you give me a script example of the above so I'm totally > syncing with you? Sure: something like this: class SUB RM32=dwA IMM32=dwB { ; first rule to match takes precedence !when dwA==REG_EAX use (SUB EAX IMM32) (dwB) !when 1 use (SUB NOREG REM32 IMM32) (dwA dwB) 0010 1101 |SUB|EAX IMM32|-|-|1 1 0 ; sub eax, imm32 1000 0001 XX10 1XXX |SUB|NOREG RM32 IMM32|-|-|1 1 0 ; sub r/m32, imm32 } This would make three functions: HiddenX86OpSubEaxImm32(UINT32) private, calls GenX86Op HiddenX86OpSubRm32Imm32(UINT32, UINT32) private, calls GenX86Op X86OpSubRm32Imm32(UINT32 dwA, UINT32 dwB) global, looks like this: { if (dwA == REG_EAX) { HiddenX86OpSubEaxImm32(dwB); return; } if (1) { HiddenX86OpSubRm32Imm32(dwA, dwB); return; } } All created magically, of course. Is all good? :-) Alex --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 1 21:36:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA06034 for dynarec-outgoing; Sat, 1 Jul 2000 21:36:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <395EC8AB.3101A1D7@mail.utexas.edu> Date: Sat, 01 Jul 2000 23:44:27 -0500 From: Alex Pasadyn Organization: none X-Mailer: Mozilla 4.72 [en] (Win95; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Progress References: <395EC5F4.7299EF79@mail.utexas.edu> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Addendum: The reason the names of the types of the instruction operands may appear inconsistent is because the "operand type" specifies the actual opcode encoding: ie EDX can be used in several ways, but P_RD is encoded differently from P_RM32 or P_R32. If this is confusing, a class grouping like I used in my last message could group them all together under "P_REG32" Alex --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 2 06:05:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA06601 for dynarec-outgoing; Sun, 2 Jul 2000 06:05:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Hehehehehe From: "M.I.K.e" In-Reply-To: Message-ID: <00036b6d5d6dab45_mailit@mail.dynarec.com> References: Date: Sun, 02 Jul 2000 14:53:13 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I just bought Diablo II and The Sims tonight so I know what I'll be >doing... ;-) Really? ;-) Well, have fun! BTW, I was a bit quiet because I played through Metal Gear Solid... >-->Neil -- M.I.K.e Bare feet magnetize sharp metal objects so they point upward from the floor -- especially in the dark. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 2 06:05:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA06612 for dynarec-outgoing; Sun, 2 Jul 2000 06:05:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Hehehehehe From: "M.I.K.e" In-Reply-To: Message-ID: <00036b6d7cddafe6_mailit@mail.dynarec.com> References: Date: Sun, 02 Jul 2000 15:02:00 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I just woke up with a nightmare of me throwing fireballs at demons and I'm >answering email to calm myself down. Man, do not play that game right >before you go to bed! You must be doing something wrong. I even had no nightmares when playing Half -Life or Resident Evil before going to bed. >Answer some Dynarec email first or something else equally useless... Useless? TTYF! BTW, that's a spell ("Take that you fiend") from the second oldest RPG (1975). Yeah, I'm not into computer RPG because I think the old ones with dice, pencils, and paper are more fun. >-->Neil -- M.I.K.e Five is a sufficiently close approximation to infinity. -- Robert Firth --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 2 06:05:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA06619 for dynarec-outgoing; Sun, 2 Jul 2000 06:05:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Hehehehehe From: "M.I.K.e" In-Reply-To: <003a01bfe386$5d376ee0$0100a8c0@lion> Message-ID: <00036b6da4c96c39_mailit@mail.dynarec.com> References: <003a01bfe386$5d376ee0$0100a8c0@lion> Date: Sun, 02 Jul 2000 15:13:10 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That could be bad too. You could end up dreaming that you have to recompile >the SH4 for the 6502... :o Hehe, let's introduce the first DC emulator for the C64 with the following astonishing features: * SH4 dynarec - This rocks! Only the 128-bit VFP instructions are a bit slow. * Ultra fast loading of GD-ROM images from the datasette, but check the length of your beards after loading is completed. * Lightspeed swapping on the 1541 since 64K RAM is a bit too small, but eight floppy drives are enough. * Sound emulation can be sped up by serial connecting a Psion 5 and using it's ARM processor. * Graphics are scaled down and polygones transformed to 2D graphics by a very sophisticated routine. Now Sonic Adventure looks like Bruce Lee and Soul Calibur like Barbarian, isn't that kewl? >Neil. -- M.I.K.e When someone says "I want a programming language in which I need only say what I wish done," give him a lollipop. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 3 00:19:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA07548 for dynarec-outgoing; Mon, 3 Jul 2000 00:19:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007030711.JAA02179@pons.ac.upc.es> Subject: Re: DYNAREC: Hehehehehe In-Reply-To: <00036b6d5d6dab45_mailit@mail.dynarec.com> "from M.I.K.e at Jul 2, 2000 02:53:13 pm" To: dynarec@dynarec.com Date: Mon, 3 Jul 2000 09:11:27 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I just bought Diablo II and The Sims tonight so I know what I'll be > >doing... ;-) > > Really? ;-) > Well, have fun! BTW, I was a bit quiet because I played through Metal Gear > Solid... > So you all were playing videogames and I was, I was ... Well I was also playing videogames. ;) BTW, Metal Gear Solid is really an incredible game from the best game company, Konami. Do you know that the MSX version has the same game capabilities (but in 2D and only with a few colours) than the PSX game? > > -- > M.I.K.e Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 3 04:08:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA07919 for dynarec-outgoing; Mon, 3 Jul 2000 04:07:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Hehehehehe From: "M.I.K.e" In-Reply-To: <200007030711.JAA02179@pons.ac.upc.es> Message-ID: <00036b7fcdd74ff6_mailit@mail.dynarec.com> References: <200007030711.JAA02179@pons.ac.upc.es> Date: Mon, 03 Jul 2000 12:53:08 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >So you all were playing videogames and I was, I was ... Well I was >also playing videogames. ;) "You too my son Victor?" ;-) Let ma guess: FF-Tactics? >BTW, Metal Gear Solid is really an incredible game from the best game >company, Konami. I just know that they did some very good arcade games, but MGS is very cool for sure! I guess the only other games with equally unique graphics and depth of gameplay is Outcast. BTW, have you seen any of the MGS2 screenshots? Astonishing! >Do you know that the MSX version has the same game >capabilities (but in 2D and only with a few colours) than the PSX game? The problem I have with the MSX version is that I don't know the controlls, but just yesterday I showed MG and MG2 to a PSX freak (the one who lend me his MGS copy) that he knows the beginning of the whole story. It seems that MG doesn't have the solitone radar yet, but MG2 has the radar and even the same radio frequency to communicate with the Colonel. >Victor Moya -- M.I.K.e Ah say, son, you're about as sharp as a bowlin' ball. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 3 12:53:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA08403 for dynarec-outgoing; Mon, 3 Jul 2000 12:52:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 3 Jul 2000 13:02:15 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Progress In-Reply-To: <395EC5F4.7299EF79@mail.utexas.edu> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > (RD is "Register Double" by the way. I am using the nomenclature from > the Intel x86 instruction set reference. Intel should have their weiners slapped for that. It's almost like saying: movl $234234234, %%eax Where EAX in and of itself is already a 4 byte quantity - no need for the "l" on the end of mov! > used the nomenclature from the TI 34010 programmers reference. There is > a pattern.....) You think TI lifted the nomenclature? ;-) > You will access it like this: > x86OpMovRdImm32(RD_EAX, 0x78787878); I like: x86OpMovReg32Imm32(EAX, 0x78787878); better. ;-) > Where x86OpMovRdImm32 and all the other functions like it are generated > automatically (so you get type checking at compile time), and call > GenX86Op to do the dirty work. So in your case you'll just be using wrapper functions rather than the individual ones. > > Hm... that's not a bad idea. It also causes some of the logic to flow > > better. Can you give me a script example of the above so I'm totally > > syncing with you? > Sure: something like this: Instead of using assembly style comments, let's use C++ style instead (makes it easier to parse and I can use ; as a terminal!). A minor nit, but easier to implement and I can see us using the semicolon for other things. > class SUB RM32=dwA IMM32=dwB { So in this example (and I wouldn't ever use RM as it's just flatly annoying), it would generate a public function called: x86OpGenSubReg32Imm32(); > ; first rule to match takes precedence > !when dwA==REG_EAX use (SUB EAX IMM32) (dwB) > !when 1 use (SUB NOREG REM32 IMM32) (dwA dwB) > 0010 1101 |SUB|EAX IMM32|-|-|1 1 0 ; sub eax, imm32 > 1000 0001 XX10 1XXX |SUB|NOREG RM32 IMM32|-|-|1 1 0 ; sub r/m32, One question here: How are you lining up the "XX" and "XXX" with what goes there? It's not always left to right in the way they appear. > imm32 > } I don't see the need for "when 1" as it's the fallthrough case. > All created magically, of course. > Is all good? :-) Yes. Let's nail down some specifics above so I completely understand what's going on and once we've hit an agreement we can move forward! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 3 12:59:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA08423 for dynarec-outgoing; Mon, 3 Jul 2000 12:59:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3960F284.CD282107@mail.utexas.edu> Date: Mon, 03 Jul 2000 15:07:32 -0500 From: Alex Pasadyn Organization: none X-Mailer: Mozilla 4.72 [en] (Win95; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: D34010 source References: <39592DC8.8195CE2F@mail.utexas.edu> <39599DEB.CCBF7526@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Howdy all, As I promised a couple days ago, I have some of the D34010 source code available for comments. All of the X86 code generation stuff is available at this URL: http://www.dynarec.com/~alex/x86test.zip You should be able to unzip and make on either DJGPP/DOS or Linux. It first makes outdr.exe which parses the scripts and spits out the required header files, then it makes the main executable. The resulting file that gets made, x86test.exe, is a simple test program that creates some X86 code and runs it, all while you watch. You can experiment with different things by changing the main functiuon around (it's in x86test.c). There are several other interesting things included in the zip file: It's got the insX86.txt and ins34010.txt script files the emulator uses. These are much more full-featured than the ones that were posted to this list a few days ago. Also, emt34010.c is included. This is where the guts of the recopiling goes on in the emulator. This file contains handlers for all the 34010 opcodes which spit out X86 code. If you read this file, you'll notice a lot of emit_UseCHandler calls. Those are instructions that I deemed painful to write in assembly (at least on a first pass at the emulator -- if you want your brain fried, read up on the 34010's memory access capabilities). There are C handlers for these functions which get included in the output stream. If you want to see how it works, look at the X86 code that emit_UseCHandler spits out. I got the idea for the C handlers from the way the Generator 68k emulator works. In a nutshell, 34010 instructions are decoded once only, and values like "source register" (coming from a few bits in the opcode) are placed conveniently in an instruction instance structure so that subsequent executions of that instruction (even if it's a C handler) don't have to mask and shift bits around to figure out what to do. For opcodes that actually get recompiled into X86, this is wasted effort, as the code could be created directly, but my profiler says I'm spending almost neglibigle time recompiling compared to running the code and blitting the screen, so I haven't worried about cleaning that up yet. Anyway, I'm still working on cleaning up the emulator itself so it will build for everyone and be understandable to read. I hope to have that up by the end of the day, though. In the meantime, read my x86 code generation stuff if you're interested. I hope it will make my postings on the subject all the more understandable. Alex --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 3 20:27:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA08807 for dynarec-outgoing; Mon, 3 Jul 2000 20:27:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 3 Jul 2000 20:36:34 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Food Fight progress Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Food Fight is coming along. The graphics now properly decode and I'm in the process of porting some of the routines necessary to do the actual graphics. Shouldn't be too horribly difficult. Just a matter of farting around with it until it works. ;-) Alex and I are currently hashing out script ideas and trying to solve the problem of source layers, target layers, and disassemblers all in one shot. Rather than polluting the list with our discussions and banter, we took it offline today with a phone conversation. So the plan is to get everything up and documented (since he and I are probably the biggest loudmouths on the project for this topic) and present it. If no holes are found, we'll proceed from there. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 3 23:15:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA08934 for dynarec-outgoing; Mon, 3 Jul 2000 23:15:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007040621.IAA21760@pons.ac.upc.es> Subject: Re: DYNAREC: Hehehehehe In-Reply-To: <00036b7fcdd74ff6_mailit@mail.dynarec.com> "from M.I.K.e at Jul 3, 2000 12:53:08 pm" To: dynarec@dynarec.com Date: Tue, 4 Jul 2000 08:21:08 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >So you all were playing videogames and I was, I was ... Well I was > >also playing videogames. ;) > > "You too my son Victor?" ;-) > Let ma guess: FF-Tactics? > Yes, yes. 65 hours and counting up. > >BTW, Metal Gear Solid is really an incredible game from the best game > >company, Konami. > > I just know that they did some very good arcade games, but MGS is very cool > for sure! I guess the only other games with equally unique graphics and depth > of gameplay is Outcast. > BTW, have you seen any of the MGS2 screenshots? Astonishing! > Some. Interesting but I don't have the Play 2. :( Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 3 23:37:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA08957 for dynarec-outgoing; Mon, 3 Jul 2000 23:37:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007040643.IAA16985@pons.ac.upc.es> Subject: Re: DYNAREC: Food Fight progress In-Reply-To: "from Neil Bradley at Jul 3, 2000 08:36:34 pm" To: dynarec@dynarec.com Date: Tue, 4 Jul 2000 08:43:06 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Food Fight is coming along. The graphics now properly decode and I'm in > the process of porting some of the routines necessary to do the actual > graphics. Shouldn't be too horribly difficult. Just a matter of farting > around with it until it works. ;-) > > Alex and I are currently hashing out script ideas and trying to solve the > problem of source layers, target layers, and disassemblers all in one > shot. Rather than polluting the list with our discussions and banter, we > took it offline today with a phone conversation. So the plan is to get > everything up and documented (since he and I are probably the biggest > loudmouths on the project for this topic) and present it. If no holes are > found, we'll proceed from there. > Well. I couldn't follow the discussion last weekend and I'm a bit lost. I will wait until you get some specification. As soon as you have some work to do just let me know, I have nothing better to do in afternoons. BTW, now I'm working on the SI docs (and with FF Tactics ;) and still I have to study the MegaCD specifications. It won't be a boring summer. :) > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 4 08:15:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA09520 for dynarec-outgoing; Tue, 4 Jul 2000 08:14:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004a01bfe5d3$a30f1cc0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Progress Date: Tue, 4 Jul 2000 17:16:44 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, And to you Americans on this list, happy independance day (or something like that)! > Where EAX in and of itself is already a 4 byte quantity - no need for the > "l" on the end of mov! I agree. The destination already tells you that it's 32-bit - you shouldn't need to explicitly declare it in the instruction. > > You will access it like this: > > x86OpMovRdImm32(RD_EAX, 0x78787878); > > I like: > > x86OpMovReg32Imm32(EAX, 0x78787878); > > better. ;-) And I think I've said before that I prefer this too. > Yes. Let's nail down some specifics above so I completely understand > what's going on and once we've hit an agreement we can move forward! Keep us informed! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 4 08:15:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA09521 for dynarec-outgoing; Tue, 4 Jul 2000 08:14:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004b01bfe5d3$a4128300$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Food Fight progress Date: Tue, 4 Jul 2000 17:18:42 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Food Fight is coming along. The graphics now properly decode and I'm in > the process of porting some of the routines necessary to do the actual > graphics. Shouldn't be too horribly difficult. Just a matter of farting > around with it until it works. ;-) Cool plan. Fart around with it until it works. I like that plan! ;) > Alex and I are currently hashing out script ideas and trying to solve the > problem of source layers, target layers, and disassemblers all in one > shot. Rather than polluting the list with our discussions and banter, we > took it offline today with a phone conversation. So the plan is to get > everything up and documented (since he and I are probably the biggest > loudmouths on the project for this topic) and present it. If no holes are > found, we'll proceed from there. Just keep us informed. I think I can see the way it's heading anyway... And as far as the phone call goes, seeing that you're both in America (aren't you?) then that's understandable - and more affordable! The rest of us are all in Europe. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 4 11:50:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA09724 for dynarec-outgoing; Tue, 4 Jul 2000 11:50:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000e01bfe5ea$283f2c80$40188cd4@daves> From: "David Sharp" To: References: <01bfe28f$29d9bf00$35901a17@turkey> <000b01bfe2e6$5ee9cf80$85178cd4@daves> <004401bfe347$22545ac0$0100a8c0@lion> Subject: Re: DYNAREC: Can I start work? Date: Mon, 3 Jul 2000 19:08:31 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > What you rate as quality is very subjective. So you don't rate the > quality, > > ok. > Okay, but then you can't say "2 quality terrestrial TV channels with quality > programs made for them" either, OK? ;) Nah, you can say it, it's just meaningless. :o) > You have a point. I'm going to get my parents on that right now. Because I > can't do anything about it while I'm over here! I don't know if you'll be able to get it if you've already used up the time on the license. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 5 00:38:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA10343 for dynarec-outgoing; Wed, 5 Jul 2000 00:37:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007050743.JAA17883@pons.ac.upc.es> Subject: Re: DYNAREC: Progress In-Reply-To: <004a01bfe5d3$a30f1cc0$0100a8c0@lion> "from Neil Griffiths at Jul 4, 2000 05:16:44 pm" To: dynarec@dynarec.com Date: Wed, 5 Jul 2000 09:43:55 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > You will access it like this: > > > x86OpMovRdImm32(RD_EAX, 0x78787878); > > > > I like: > > > > x86OpMovReg32Imm32(EAX, 0x78787878); > > > > better. ;-) > > And I think I've said before that I prefer this too. > I prefer 'mov eax, 0x78787878' it's more clear. ;) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 5 01:26:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA10390 for dynarec-outgoing; Wed, 5 Jul 2000 01:26:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Progress Date: Wed, 5 Jul 2000 10:28:30 +0200 Message-ID: <01bfe65a$ffa34b00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >I prefer 'mov eax, 0x78787878' it's more clear. ;) Yeah, but that would mean a lot of functions. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 5 15:52:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA11277 for dynarec-outgoing; Wed, 5 Jul 2000 15:52:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 5 Jul 2000 16:02:28 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Script neraly nailed Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com We're almost completely finished with the script idea. From this script we can generate a source table, a target layer (to emit opcodes), and a disassembler. I'm working on the x86 one, Alex is working on the 34010 - can we get some other kind soul to do the 68000 script? Mike? You up to it? Of course we need to publish the script for consumption. At this point, Alex and I have done so much debating and pontificating on the topic that at this point I think it's quite solid. We'll post an example script later on today sometime and answer questions about how it works (if it isn't obvious from the script itself). -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 5 23:06:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA11588 for dynarec-outgoing; Wed, 5 Jul 2000 23:06:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007060612.IAA24003@pons.ac.upc.es> Subject: Re: DYNAREC: Script neraly nailed In-Reply-To: "from Neil Bradley at Jul 5, 2000 04:02:28 pm" To: dynarec@dynarec.com Date: Thu, 6 Jul 2000 08:12:30 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > We're almost completely finished with the script idea. From this script we > can generate a source table, a target layer (to emit opcodes), and a > disassembler. > Good! > I'm working on the x86 one, Alex is working on the 34010 - can we get some > other kind soul to do the 68000 script? Mike? You up to it? > If he can't perhaps I could, I'm beginning to be a bit tired of SI docs. ;) > -->Neil Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 5 23:13:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA11601 for dynarec-outgoing; Wed, 5 Jul 2000 23:13:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 5 Jul 2000 23:23:23 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Script neraly nailed In-Reply-To: <200007060612.IAA24003@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I'm working on the x86 one, Alex is working on the 34010 - can we get some > > other kind soul to do the 68000 script? Mike? You up to it? > If he can't perhaps I could, I'm beginning to be a bit tired of SI docs. ;) Do you know the 68K? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 5 23:18:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA11614 for dynarec-outgoing; Wed, 5 Jul 2000 23:18:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007060624.IAA07447@pons.ac.upc.es> Subject: Re: DYNAREC: Script neraly nailed In-Reply-To: "from Neil Bradley at Jul 5, 2000 11:23:23 pm" To: dynarec@dynarec.com Date: Thu, 6 Jul 2000 08:24:42 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > I'm working on the x86 one, Alex is working on the 34010 - can we get some > > > other kind soul to do the 68000 script? Mike? You up to it? > > If he can't perhaps I could, I'm beginning to be a bit tired of SI docs. ;) > > Do you know the 68K? > Did I know the 8080 or the Z80? I have the full ISA (with timings although they are a bit confusing) and I have read it many times (always thinking in a 68K emulator ;). It's needed a good knowledge? Of course if Mike wants it would be better because it seems he is who has more knowledge about it. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 5 23:24:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA11627 for dynarec-outgoing; Wed, 5 Jul 2000 23:24:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 5 Jul 2000 23:34:06 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Script neraly nailed In-Reply-To: <200007060624.IAA07447@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Do you know the 68K? > Did I know the 8080 or the Z80? I have the full ISA (with timings although > they are a bit confusing) and I have read it many times (always thinking > in a 68K emulator ;). It's needed a good knowledge? Of course if Mike > wants it would be better because it seems he is who has more knowledge > about it. Well, if you're that enthusiastic about it, then why not? ;-) We'll get you an instruction definition file sometime tonight... -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 5 23:38:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA11647 for dynarec-outgoing; Wed, 5 Jul 2000 23:38:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Script neraly nailed Date: Thu, 6 Jul 2000 08:41:55 +0200 Message-ID: <01bfe715$46557b80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >We're almost completely finished with the script idea. From this script we >can generate a source table, a target layer (to emit opcodes), and a >disassembler. Which is very cool indeed. >I'm working on the x86 one, Alex is working on the 34010 - can we get some >other kind soul to do the 68000 script? Mike? You up to it? I'd offer except that I don't know much about the 68k. I know the Z80 and x86 pretty damn well though. The thing is that you, NB, certainly know more than me (having got a 100% compatible Z80 CPU core)! :) >Of course we need to publish the script for consumption. At this point, >Alex and I have done so much debating and pontificating on the topic that >at this point I think it's quite solid. We'll post an example script later >on today sometime and answer questions about how it works (if it isn't >obvious from the script itself). Okay, I'm looking forward to it. I'd like to begin work on this ASAP. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 00:46:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA11712 for dynarec-outgoing; Thu, 6 Jul 2000 00:45:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 00:55:50 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Example script! In-Reply-To: <01bfe715$46557b80$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I'm working on the x86 one, Alex is working on the 34010 - can we get some > >other kind soul to do the 68000 script? Mike? You up to it? > I'd offer except that I don't know much about the 68k. I know the Z80 and > x86 pretty damn well though. The thing is that you, NB, certainly know more > than me (having got a 100% compatible Z80 CPU core)! :) Wanna pick a processor that you do know? The more styles of CPUs we have the better we can create it! > >on today sometime and answer questions about how it works (if it isn't > >obvious from the script itself). > Okay, I'm looking forward to it. I'd like to begin work on this ASAP. :) Here it is! This is an example script for a bunch of the x86 instructions. Please examine closely and do ask questions. It *SHOULD* be straightforward. We intend on having this generate the source, target, and disassemblers for use in the dynarec. This will save us *LOTS* of work. IT'll also generate the cover templates with all the operands handed to us to make it damned easy. So get started! I'm working on the script parser right now. Alex will pick up the ball with the actual pooping out of the code. ------------------ // CPU description file for "X86" // AJP 20000705 // this one is a real pain // the file for a "well-behaved" CPU is considerably shorter // FIXME: convert all the RM32 stuff to RM32_R, RM32_ATR, etc [cpuinfo] Name = X86; // all instructions are multiples of this many bits InstructionGranularity = 8; [operands] // this section defines the types of operands this CPU understands // the "text strings" for the dasm need to be added to this section // operand {A, B, C, D} // A = operand size (bits) // B = type (numeric/keys/fixed) // C = how to process the data when assembling // D = how to process the data when disassembling // examples: // NOFFSET {32, numeric, ~X, ~X }; // a 32-bit offset that is stored bit-flipped // ATREG {2, keys = {RA = 0, RB = 2, RC = 3, RD = 4} }; // indirect memory reference // operands denoted "fixed" are not variable // they denote a special instruction encoding for a particular argument // and are only present to aid in disassembly // // for example // mov al, [moffs] ---> xxxx xxxx xxxx (32xM) |MOV|AL MOFFS=M| // only al is allowed as the register in this instruction DB { 8, numeric }; RD { 3, keys = {EAX=0, ECX=1, EDX=2, EBX=3, ESP=4, EBP=5, ESI=6, EDI=7} }; RW { 3, keys = {AX=0, CX=1, DX=2, BX=3, SP=4, BP=5, SI=6, DI=7} }; RB { 3, keys = {AL=0, CL=1, DL=2, BL=3, AH=4, CH=5, DH=6, BH=7} }; IMM32 {32, numeric}; IMM16 {16, numeric}; IMM8 { 8, numeric}; RM8_DISP8 { 8, numeric}; RM8_DISP32 {32, numeric}; RM16_DISP8 { 8, numeric}; RM16_DISP32 {32, numeric}; RM32_DISP8 { 8, numeric}; RM32_DISP32 {32, numeric}; MOFFS {32, numeric}; AL { 0, fixed}; AX { 0, fixed}; EAX { 0, fixed}; CL { 0, fixed}; 1 { 0, fixed}; R8 { 3, keys = {AL=0, CL=1, DL=2, BL=3, AH=4, CH=5, DH=6, BH=7} }; R16 { 3, keys = {AX=0, CX=1, DX=2, BX=3, SP=4, BP=5, SI=6, DI=7} }; R32 { 3, keys = {EAX=0, ECX=1, EDX=2, EBX=3, ESP=4, EBP=5, ESI=6, EDI=7} }; CC { 4, keys = { A=0x07, AE=0x03, B=0x02, BE=0x06, C=0x02, E=0x04, G=0x0f, GE=0x0d, L=0x0c, LE=0x0e, NA=0x06, NAE=0x02, NB=0x03, NBE=0x07, NC=0x03, NE=0x05, NG=0x0e, NGE=0x0c, NL=0x0d, NLE=0x0f, NO=0x01, NP=0x0b, NS=0x09, NZ=0x05, O=0x00, P=0x0a, PE=0x0a, PO=0x0b, S=0x08, Z=0x04, } }; REL8 { 8, numeric }; REL32 {32, numeric }; RM8_R { 3, keys = {AL=0, CL=1, DL=2, BL=3, AH=4, CH=5, DH=6, BH=7} }; // rm8 is reg8 RM16_R { 3, keys = {AX=0, CX=1, DX=2, BX=3, SP=4, BP=5, SI=6, DI=7} }; // rm16 is reg16 RM32_R { 3, keys = {EAX=0, ECX=1, EDX=2, EBX=3, ESP=4, EBP=5, ESI=6, EDI=7} }; // rm32 is reg32 RM8_ATR { 3, keys = {EAX=0, ECX=1, EDX=2, EBX=3, ESI=6, EDI=7} }; // rm8 is 8@reg RM8_ATRD { 3, keys = {EAX=0, ECX=1, EDX=2, EBX=3, EBP=5, ESI=6, EDI=7} }; // rm8 is 8@reg+disp RM16_ATR { 3, keys = {EAX=0, ECX=1, EDX=2, EBX=3, ESI=6, EDI=7} }; // rm16 is 16@reg RM16_ATRD { 3, keys = {EAX=0, ECX=1, EDX=2, EBX=3, EBP=5, ESI=6, EDI=7} }; // rm16 is 16@reg+disp RM32_ATR { 3, keys = {EAX=0, ECX=1, EDX=2, EBX=3, ESI=6, EDI=7} }; // rm32 is 32@reg RM32_ATRD { 3, keys = {EAX=0, ECX=1, EDX=2, EBX=3, EBP=5, ESI=6, EDI=7} }; // rm32 is 32@reg+disp SCL {2, keys = {MUL1=0, MUL2=1, MUL4=2, MUL8=3} }; // FIXME: temporary hack RM8 {2, numeric}; RM16 {2, numeric}; RM32 {2, numeric}; [flags] // this section defines the flags for this CPU // these should just result in #defines like FLAG_X86_N=0x0080, FLAG_X86_C0x0001, etc N = { 0x0080, "sign" }; C = { 0x0001, "carry" }; Z = { 0x0040, "zero" }; V = { 0x0100, "overflow" }; [instructions] // this section defines the instruction set // each line contains: // AAAA AAAA AAAA AAAA |BBBB|CC CC CC|DD|EE|F G H // A = instruction bits -- only 0 and 1 are literal // // (nxC), eg (8xD) means "insert n C's" // all other characters can match either way // the operands will specify position by the characters here // // B = instruction name, eg MOV // C = operands (as defined in [operands] section) // these look like OperandName=CoverChar, eg REG32=R or IMM32=I // D = flags written (as defined in [flags] section, eg NCV // E = flags read (as defined in [flags] section // F = cache hit timing // G = cache miss timing // H = does this instruction force the source layer to end a block? // C, D, and E can be left out completely // earlier instructions have precedence in this table // control operations 1001 0000 |NOP||||1 1 0; // nop 1100 0011 |RET||||1 1 0; // ret 1001 1111 |LAHF||||1 1 0; // lahf 1001 1110 |SAHF||||2 2 0; // sahf 1111 1000 |CLC||||1 1 0; // clc 0000 1111 1001 0000 XXYY YMMM |SETO|RM8=X|||2 2 0; // seto r/m8 0000 1111 1001 CCCC XXYY YMMM |SET~|CC=C RM8=X|||2 2 0; // setcc r/m8 0110 0110 1111 1111 XX01 0RRR |CALL|RM16=X|||1 1 0; // call r/m16 1111 1111 XX01 0RRR |CALL|RM32=X|||1 1 0; // call r/m32 0110 1000 (32xI) |PUSH|IMM32=I|||1 1 0; // push immediate32 // jump instructions 0111 CCCC |J(J%s 0x%08lx)|CC=C REL8 |||1 1 0; // jcc rel8 0000 1111 1000 CCCC |J~|CC REL32 |||1 1 0; // jcc rel32 1110 1011 |JMP|REL8 |||1 1 0; // jmp rel8 1110 1001 |JMP|REL32 |||1 1 0; // jmp rel32 1111 1111 XX10 0YYY |JMP|RM32=X |||1 1 0; // jmp rm32 (abs) // sign extend instructions 1001 1001 |CDQ||||1 1 0; // cdq (eax --> edx:eax) // bit manipulation 0000 1111 1010 0011 XXRR RMMM |BT|RM32=X R32=R |||1 1 0; // bit test rm32 (bit in r32) --> CF 0000 1111 1011 1010 XX10 0MMM (8xI) |BT|RM32=X IMM8=I |||1 1 0; // bit test rm32 (bit in imm8) --> CF 0000 1111 1011 1100 XXRR RMMM |BSC|R32=R RM32=X |||1 1 0; // bit scan forward on rm32 --> r32 0000 1111 1011 1101 XXRR RMMM |BSR|R32=R RM32=X |||1 1 0; // bit scan reverse on rm32 --> r32 // move instructions 1000 1000 XXRR RMMM |MOV|RM8=X R8=R |||1 1 0; // mov r/m8, r8 0110 0110 1000 1001 XXRR RMMM |MOV|RM16=X R16=R |||1 1 0; // mov r/m16, r16 1000 1001 XXRR RMMM |MOV|RM32=X R32=R |||1 1 0; // mov r/m32, r32 1000 1010 XXRR RMMM |MOV|R8=R RM8=X |||1 1 0; // mov r8, r/m8 0110 0110 1000 1011 XXRR RMMM |MOV|R16=R RM16=X |||1 1 0; // mov r16, r/m16 1000 1011 XXRR RMMM |MOV|R32=R RM32=X |||1 1 0; // mov r32, r/m32 1010 0000 (32xM) |MOV|AL MOFFS=M |||1 1 0; // mov al, [moffs] 0110 0110 1010 0001 (32xM) |MOV|AX MOFFS=M |||1 1 0; // mov ax, [moffs] 1010 0001 (32xM) |MOV|EAX MOFFS=M |||1 1 0; // mov eax, [moffs] 1010 0010 (32xM) |MOV|MOFFS=M AL |||1 1 0; // mov [moffs], al 0110 0110 1010 0011 (32xM) |MOV|MOFFS=M AX |||1 1 0; // mov [moffs], ax 1010 0011 (32xM) |MOV|MOFFS=M EAX |||1 1 0; // mov [moffs], eax 1011 0RRR (8xI) |MOV|RB=R IMM8=I |||1 1 0; // mov reg8, imm8 0110 0110 1011 1RRR (16xI) |MOV|RW=R IMM16=I |||1 1 0; // mov reg16, imm16 1011 1RRR (32xI) |MOV|RD=R IMM32=I |||1 1 0; // mov reg32, imm32 1100 0110 XX00 0MMM (8xI) |MOV|RM8=X IMM8=I |||1 1 0; // mov r/m8, imm8 0110 0110 1100 0111 XX00 0MMM (16xI) |MOV|RM16=X IMM16=I|||1 1 0; // mov r/m16, imm16 1100 0111 XX00 0MMM (32xI) |MOV|RM32=X IMM32=I|||1 1 0; // mov r/m32, imm32 // add/adc instructions 0000 0100 (8xI) |ADD|AL IMM8=I |||1 1 0; // add al, imm8 0110 0110 0000 0101 (16xI) |ADD|AX IMM16=I|||1 1 0; // add ax, imm16 0000 0101 (32xI) |ADD|EAX IMM32=I|||1 1 0; // add eax, imm32 1000 0000 XX00 0MMM (8xI) |ADD|RM8=X IMM8=I |||1 1 0; // add r/m8, imm8 0110 0110 1000 0001 XX00 0MMM (16xI) |ADD|RM16=X IMM16=I|||1 1 0; // add r/m16, imm16 1000 0001 XX00 0MMM (32xI) |ADD|RM32=X IMM32=I|||1 1 0; // add r/m32, imm32 0110 0110 1000 0011 XX00 0MMM (8xI) |ADD|RM16=X IMM8=I |||1 1 0; // add r/m16, (signed) imm8 1000 0011 XX00 0MMM (8xI) |ADD|RM32=X IMM8=I |||1 1 0; // add r/m32, (signed) imm8 0000 0000 XXRR RMMM |ADD|RM8=X R8=R |||1 1 0; // add r/m8, r8 0110 0110 0000 0001 XXRR RMMM |ADD|RM16=X R16=R |||1 1 0; // add r/m16, r16 0000 0001 XXRR RMMM |ADD|RM32=X R32=R |||1 1 0; // add r/m32, r32 0000 0010 XXRR RMMM |ADD|R8=R RM8=X |||1 1 0; // add r8, r/m8 0110 0110 0000 0011 XXRR RMMM |ADD|R16=R RM16=X |||1 1 0; // add r16, r/m16 0000 0011 XXRR RMMM |ADD|R32=R RM32=X |||1 1 0; // add r32, r/m32 0001 0100 (8xI) |ADC|AL IMM8=I |||1 1 0; // adc al, imm8 0110 0110 0001 0101 (16xI) |ADC|AX IMM16=I |||1 1 0; // adc ax, imm16 0001 0101 (32xI) |ADC|EAX IMM32=I |||1 1 0; // adc eax, imm32 1000 0000 XX01 0MMM (8xI) |ADC|RM8=X IMM8=I |||1 1 0; // adc r/m8, imm8 0110 0110 1000 0001 XX01 0MMM (16xI) |ADC|RM16=X IMM16=I|||1 1 0; // adc r/m16, imm16 1000 0001 XX01 0MMM (32xI) |ADC|RM32=X IMM32=I|||1 1 0; // adc r/m32, imm32 0110 0110 1000 0011 XX01 0MMM (8xI) |ADC|RM16=X IMM8=I |||1 1 0; // adc r/m16, (signed) imm8 1000 0011 XX01 0MMM (8xI) |ADC|RM32=X IMM8=I |||1 1 0; // adc r/m32, (signed) imm8 0001 0000 XXRR RMMM |ADC|RM8=X R8=R |||1 1 0; // adc r/m8, r8 0110 0110 0001 0001 XXRR RMMM |ADC|RM16=X R16=R |||1 1 0; // adc r/m16, r16 0001 0001 XXRR RMMM |ADC|RM32=X R32=R |||1 1 0; // adc r/m32, r32 0001 0010 XXRR RMMM |ADC|R8=R RM8=X |||1 1 0; // adc r8, r/m8 0110 0110 0001 0011 XXRR RMMM |ADC|R16=R RM16=X |||1 1 0; // adc r16, r/m16 0001 0011 XXRR RMMM |ADC|R32=R RM32=X |||1 1 0; // adc r32, r/m32 -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 01:14:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA11744 for dynarec-outgoing; Thu, 6 Jul 2000 01:14:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007060820.KAA10567@pons.ac.upc.es> Subject: Re: DYNAREC: Example script! In-Reply-To: "from Neil Bradley at Jul 6, 2000 00:55:50 am" To: dynarec@dynarec.com Date: Thu, 6 Jul 2000 10:20:45 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > [operands] > > // this section defines the types of operands this CPU understands > > // the "text strings" for the dasm need to be added to this section > > // operand {A, B, C, D} > // A = operand size (bits) > // B = type (numeric/keys/fixed) > // C = how to process the data when assembling > // D = how to process the data when disassembling > This section OK. > [flags] > > // this section defines the flags for this CPU > > // these should just result in #defines like FLAG_X86_N=0x0080, FLAG_X86_C0x0001, etc > > N = { 0x0080, "sign" }; > C = { 0x0001, "carry" }; > Z = { 0x0040, "zero" }; > V = { 0x0100, "overflow" }; > > OK. > [instructions] > > // this section defines the instruction set > // each line contains: > > // AAAA AAAA AAAA AAAA |BBBB|CC CC CC|DD|EE|F G H > > // A = instruction bits -- only 0 and 1 are literal > // > // (nxC), eg (8xD) means "insert n C's" > // all other characters can match either way > // the operands will specify position by the characters here > // > // B = instruction name, eg MOV > // C = operands (as defined in [operands] section) > // these look like OperandName=CoverChar, eg REG32=R or IMM32=I > // D = flags written (as defined in [flags] section, eg NCV > // E = flags read (as defined in [flags] section OK. > // F = cache hit timing > // G = cache miss timing Cache miss timing? It must be very accurated. ;) BTW. A doubt about 68K timing what could mean 4(1/0) for NOP instruction. All the instruction timings has this format but the format isn't explained! (I have the ISA at hand). Luckily I have a new pdf with the full 68K doc and I hope it will be explained there. 4 sure is 4 clock cycles but what could be (1/0)? > // H = does this instruction force the source layer to end a block? > OK. > 0111 CCCC |J(J%s 0x%08lx)|CC=C REL8 |||1 1 0; // jcc rel8 I don't know how works this instruction name. You can add prinft format commands to the name? I don't see now another problem. > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 01:53:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA11782 for dynarec-outgoing; Thu, 6 Jul 2000 01:53:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 02:03:28 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <200007060820.KAA10567@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, 6 Jul 2000, Victor Moya del Barrio wrote: > > // this section defines the instruction set > > // each line contains: > > // AAAA AAAA AAAA AAAA |BBBB|CC CC CC|DD|EE|F G H > > // F = cache hit timing > > // G = cache miss timing > Cache miss timing? It must be very accurated. ;) Actually, F and G are "timing 1" and "timing 2". For example, let's say the CPU takes 21 clocks to jump if the condition is met, but only 16 if it isn't met. The cache thing is a throwover from the 34010 stuff. So ignore the words "cache hit/miss". ;-) > BTW. A doubt about 68K timing what could mean 4(1/0) for NOP instruction. > All the instruction timings has this format but the format isn't explained! Isn't it wonderful? ;-) 4(1/0) Means that the instruction takes 4 clock cycles, there's 1 bus read cycle and 0 bus write cycles. In other words, just look at the 4 - not what's in the parenthesis becuase those timings are irrelevant and are already covered in the overall cycle time (4 in this case). > > 0111 CCCC |J(J%s 0x%08lx)|CC=C REL8 |||1 1 0; // jcc rel8 > I don't know how works this instruction name. You can add prinft format > commands to the name? For the sake of the disassembler. For the source and target emitters, it's not used. Basically, anything in parenthesis means "Use me instead of using the name to the left of me". So it'll use the CC as its argument for %s, so you'll get "jc", "ja", "jnb" since the condition codes are listed in the CC grouping. Make sense? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 01:59:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA11901 for dynarec-outgoing; Thu, 6 Jul 2000 01:59:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007060905.LAA30603@pons.ac.upc.es> Subject: Re: DYNAREC: Example script! In-Reply-To: "from Neil Bradley at Jul 6, 2000 02:03:28 am" To: dynarec@dynarec.com Date: Thu, 6 Jul 2000 11:05:36 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Cache miss timing? It must be very accurated. ;) > > Actually, F and G are "timing 1" and "timing 2". For example, let's say > the CPU takes 21 clocks to jump if the condition is met, but only 16 if it > isn't met. The cache thing is a throwover from the 34010 stuff. So ignore > the words "cache hit/miss". ;-) > Oh, I should have know that. :o > > BTW. A doubt about 68K timing what could mean 4(1/0) for NOP instruction. > > All the instruction timings has this format but the format isn't explained! > > Isn't it wonderful? ;-) > Do you know Osborne books? They are some books that recopilate in a very big book (thousand of pages) the datasheets of old 8 and 16 bit CPUs. But it seems they usually forget some data. I get the ISA from one of them. > 4(1/0) Means that the instruction takes 4 clock cycles, there's 1 bus > read cycle and 0 bus write cycles. In other words, just look at the 4 - > not what's in the parenthesis becuase those timings are irrelevant and are > already covered in the overall cycle time (4 in this case). > Ok. > > > 0111 CCCC |J(J%s 0x%08lx)|CC=C REL8 |||1 1 0; // jcc rel8 > > I don't know how works this instruction name. You can add prinft format > > commands to the name? > > For the sake of the disassembler. For the source and target emitters, it's > not used. Basically, anything in parenthesis means "Use me instead of > using the name to the left of me". So it'll use the CC as its argument for > %s, so you'll get "jc", "ja", "jnb" since the condition codes are listed > in the CC grouping. > > Make sense? > It makes, yes. ;) Let's see what I could do for tomorrow. > -->Neil > Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 02:01:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA11964 for dynarec-outgoing; Thu, 6 Jul 2000 02:01:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Example script! Date: Thu, 6 Jul 2000 10:56:36 +0200 Message-ID: <01bfe728$16fc3a00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >So get started! I'm working on the script parser right now. Alex will pick >up the ball with the actual pooping out of the code. Just wondering, what are you using to write the parser in? In my opinion, one of the major setbacks of C and C++ is the string handling. As in it's crap... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 02:02:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA11974 for dynarec-outgoing; Thu, 6 Jul 2000 02:02:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Example script! Date: Thu, 6 Jul 2000 10:52:29 +0200 Message-ID: <01bfe727$83c30480$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> I'd offer except that I don't know much about the 68k. I know the Z80 and >> x86 pretty damn well though. The thing is that you, NB, certainly know more >> than me (having got a 100% compatible Z80 CPU core)! :) > >Wanna pick a processor that you do know? The more styles of CPUs we have >the better we can create it! As I say, I'd go for the x86 or Z80 - but you've covered the x86. I have a suggestion though. If Mike doesn't want to do the 68k core (we need an answer from you Mike!) then maybe Victor and myself can work on the 68k. Mike could then try his hand at one of the RISC processors he likes so much. That way we also cover processors of a different endianness and CISC and RISC. I think that's covering pretty much all the bases. How about it? Is that a good plan or what? Of course, if Mike *does* want to do the 68k then I'll let him because he certainly has more experience with it than I do. If that's the case then I'll go for the Z80. Heh, I can nick half of the stuff from your x86 stuff Neil. ;) >> Okay, I'm looking forward to it. I'd like to begin work on this ASAP. :) > >Here it is! This is an example script for a bunch of the x86 >instructions. Please examine closely and do ask questions. It *SHOULD* be >straightforward. I've looked and I do have some questions. I'll put them in later on in this mail... >We intend on having this generate the source, target, and disassemblers >for use in the dynarec. This will save us *LOTS* of work. IT'll also >generate the cover templates with all the operands handed to us to make it >damned easy. I agree, the script idea is a *really* cool... well, idea. It saves work, means that the source, target and disassembler is written for us - and it means that creating a dynarec for a new CPU is really quick and easy. How cool is that? Well done Alex! :) >So get started! I'm working on the script parser right now. Alex will pick >up the ball with the actual pooping out of the code. Looking now... >// all instructions are multiples of this many bits >InstructionGranularity = 8; That confused me for a moment but I'm with you now... >// operand {A, B, C, D} >// A = operand size (bits) >// B = type (numeric/keys/fixed) >// C = how to process the data when assembling >// D = how to process the data when disassembling I take it that you don't need all 4 parameters though - your ATREG example doesn't for example. >// examples: >// NOFFSET {32, numeric, ~X, ~X }; // a 32-bit offset that is stored bit-flipped This one I can read. >// ATREG {2, keys = {RA = 0, RB = 2, RC = 3, RD = 4} }; // indirect memory reference This one I can't. How do I know this is an indirect memory reference (or a memory reference at all)? >// operands denoted "fixed" are not variable >// they denote a special instruction encoding for a particular argument >// and are only present to aid in disassembly >// >// for example >// mov al, [moffs] ---> xxxx xxxx xxxx (32xM) |MOV|AL MOFFS=M| moffs = memory offset? >RD { 3, keys = {EAX=0, ECX=1, EDX=2, EBX=3, ESP=4, EBP=5, ESI=6, EDI=7} }; >RW { 3, keys = {AX=0, CX=1, DX=2, BX=3, SP=4, BP=5, SI=6, DI=7} }; >RB { 3, keys = {AL=0, CL=1, DL=2, BL=3, AH=4, CH=5, DH=6, BH=7} }; What does the "R" stand for? Real? Read? Register? I'd guess at "register" but I'm not sure... >IMM32 {32, numeric}; >IMM16 {16, numeric}; >IMM8 { 8, numeric}; IMM = immediate? >RM8_DISP8 { 8, numeric}; >RM8_DISP32 {32, numeric}; >RM16_DISP8 { 8, numeric}; >RM16_DISP32 {32, numeric}; >RM32_DISP8 { 8, numeric}; >RM32_DISP32 {32, numeric}; Again, without knowing what the "R" is I'm stuck. I'm guessing that the "M" is memory though. :) >CC { 4, keys = { > A=0x07, AE=0x03, B=0x02, BE=0x06, C=0x02, E=0x04, G=0x0f, GE=0x0d, > L=0x0c, LE=0x0e, NA=0x06, NAE=0x02, NB=0x03, NBE=0x07, NC=0x03, NE=0x05, > NG=0x0e, NGE=0x0c, NL=0x0d, NLE=0x0f, NO=0x01, NP=0x0b, NS=0x09, NZ=0x05, > O=0x00, P=0x0a, PE=0x0a, PO=0x0b, S=0x08, Z=0x04, } }; I was confused here, now I get it. NB = Not Below. NG = Not Greater. Z = True/False. Okay, I'm with you know. But what does the "CC" actually stand for? Surely "FLAGS" would be a better name? >// this section defines the flags for this CPU > >// these should just result in #defines like FLAG_X86_N=0x0080, FLAG_X86_C0x0001, etc > >N = { 0x0080, "sign" }; >C = { 0x0001, "carry" }; >Z = { 0x0040, "zero" }; >V = { 0x0100, "overflow" }; Shouldn't CC be under here? The rest of it seemed pretty self-explanatory though. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 07:06:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA12213 for dynarec-outgoing; Thu, 6 Jul 2000 07:06:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: DYNAREC: OT but interesting... Date: Thu, 6 Jul 2000 16:09:42 +0200 Message-ID: <01bfe753$d4505700$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Went to the Deutches Museum (one of the biggest museums in the world) last Sunday. They've got a computer section there - so I was kind of drawn to it. Anyway, apart from other things (like one of the original CRAYs), they've got lots of processors there. They had two 4004 and one 8008. One of the 4004 was open and the other... wasn't. Anyway, they also had a 486 opened up. It was impressive to see the difference over the years. Very impressive. And I can't imagine that there's too many people who have seen a 4004 (and know what it is) - so that's quite impressive. Completely off topic, but I thought it might interest some of you. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 10:08:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA12348 for dynarec-outgoing; Thu, 6 Jul 2000 10:08:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 10:18:45 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <01bfe728$16fc3a00$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >So get started! I'm working on the script parser right now. Alex will pick > >up the ball with the actual pooping out of the code. > Just wondering, what are you using to write the parser in? In my opinion, > one of the major setbacks of C and C++ is the string handling. As in it's > crap... C Of course. If you mean that it "doesn't have any built in features to help you do strings", you'd be right, but I'd rather manage my own string collection rather than let a standard library function handle it. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 10:15:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA12364 for dynarec-outgoing; Thu, 6 Jul 2000 10:15:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 10:25:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <01bfe727$83c30480$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > As I say, I'd go for the x86 or Z80 - but you've covered the x86. The x86 won't be used as a source, but only as a disassembler and an opcode generator. The source for the 68K will generate target cover procedures for us to fill in. > suggestion though. If Mike doesn't want to do the 68k core (we need an > answer from you Mike!) then maybe Victor and myself can work on the 68k. > Mike could then try his hand at one of the RISC processors he likes so much. > That way we also cover processors of a different endianness and CISC and > RISC. I think that's covering pretty much all the bases. How about it? Is Not a bad idea, as long as someone other than me is doing something. ;-) > >We intend on having this generate the source, target, and disassemblers > >for use in the dynarec. This will save us *LOTS* of work. IT'll also > >generate the cover templates with all the operands handed to us to make it > >damned easy. > I agree, the script idea is a *really* cool... well, idea. It saves work, > means that the source, target and disassembler is written for us Actually the target is just going to be covers for the source, but it'll emit the opcode generator for us. > >// all instructions are multiples of this many bits > >InstructionGranularity = 8; > That confused me for a moment but I'm with you now... This allows the script parser to be smart and figure out if you've left a bit off here and there in your definition. The basic size of any instruction will be 8, 16, or 32 bits (or bigger). Doesn't mean it *WILL* be this size, but a multiple of it. > >// B = type (numeric/keys/fixed) > >// C = how to process the data when assembling > >// D = how to process the data when disassembling > I take it that you don't need all 4 parameters though - your ATREG example > doesn't for example. Correct. > >// ATREG {2, keys = {RA = 0, RB = 2, RC = 3, RD = 4} }; // indirect memory > reference > This one I can't. How do I know this is an indirect memory reference (or a > memory reference at all)? It's commented out - ignore it. ;-) > >// for example > >// mov al, [moffs] ---> xxxx xxxx xxxx (32xM) |MOV|AL MOFFS=M| > moffs = memory offset? Yes. > >RD { 3, keys = {EAX=0, ECX=1, EDX=2, EBX=3, ESP=4, EBP=5, ESI=6, > EDI=7} }; > >RW { 3, keys = {AX=0, CX=1, DX=2, BX=3, SP=4, BP=5, SI=6, DI=7} }; > >RB { 3, keys = {AL=0, CL=1, DL=2, BL=3, AH=4, CH=5, DH=6, BH=7} }; > What does the "R" stand for? Real? Read? Register? I'd guess at "register" > but I'm not sure... Well, the RD/RW/RB is register dword, register word, etc... I flatly don't like that nomenclature. It's misleading. I'd just call it REG8, REG16, and REG32. But in your questions you seem to be focusing on the arbitrary names we've given it. These are not hardcoded. You can call them whatever makes the most sense. > >IMM32 {32, numeric}; >IMM16 {16, numeric}; >IMM8 { 8, numeric}; > IMM = immediate? Yes. > >RM8_DISP8 { 8, numeric}; > >RM8_DISP32 {32, numeric}; > >RM16_DISP8 { 8, numeric}; > >RM16_DISP32 {32, numeric}; > >RM32_DISP8 { 8, numeric}; > >RM32_DISP32 {32, numeric}; > Again, without knowing what the "R" is I'm stuck. I'm guessing that the "M" > is memory though. :) I don't like it either. Don't call it RM8_xxxx. Call it M8_DISP8 (for 8 bit memory displacement), though I think two 8's are redundant. > > A=0x07, AE=0x03, B=0x02, BE=0x06, C=0x02, E=0x04, G=0x0f, GE=0x0d, > > L=0x0c, LE=0x0e, NA=0x06, NAE=0x02, NB=0x03, NBE=0x07, NC=0x03, NE=0x05, > > NG=0x0e, NGE=0x0c, NL=0x0d, NLE=0x0f, NO=0x01, NP=0x0b, NS=0x09, NZ=0x05, > > O=0x00, P=0x0a, PE=0x0a, PO=0x0b, S=0x08, Z=0x04, } }; > I was confused here, now I get it. NB = Not Below. NG = Not Greater. Z = > True/False. Well, zero/nonzero. > Okay, I'm with you know. But what does the "CC" actually stand > for? Surely "FLAGS" would be a better name? Condition Code. It's very, very common to be called condition codes. > >// these should just result in #defines like FLAG_X86_N=0x0080, > FLAG_X86_C0x0001, etc > > > >N = { 0x0080, "sign" }; > >C = { 0x0001, "carry" }; > >Z = { 0x0040, "zero" }; > >V = { 0x0100, "overflow" }; > Shouldn't CC be under here? Nope. This section here defines what flags the CPU has so you can put it in the "uses flags" and "modifies flags" fields - not for use by the instructions themselves. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 10:17:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA12374 for dynarec-outgoing; Thu, 6 Jul 2000 10:17:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: <01bfe727$83c30480$35901a17@turkey> Message-ID: <00036bc1a3e1e89a_mailit@mail.dynarec.com> References: <01bfe727$83c30480$35901a17@turkey> Date: Thu, 06 Jul 2000 19:25:52 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >As I say, I'd go for the x86 or Z80 - but you've covered the x86. I have a >suggestion though. If Mike doesn't want to do the 68k core (we need an >answer from you Mike!) then maybe Victor and myself can work on the 68k. I could do the 68K, but I'd suggest that we 3 work on it together since it isn't that small. How about that? >Mike could then try his hand at one of the RISC processors he likes so much. Nice idea! I could do MIPS for sure, ARM is a bit more complicated but should be managable, maybe even Alpha and PowerPC ;-) >That way we also cover processors of a different endianness Hmm, I think the endianness is missing in the cpuinfo section... >and CISC and >RISC. I think that's covering pretty much all the bases. How about it? Is >that a good plan or what? I think that's a good idea and I will do some RISCs if we want to add some and Neil lets me do it. BTW, in the current format the description how the immediate encoding in ARM works would be very difficult because it's "imm8 ROR (imm4 * 2)"... >Of course, if Mike *does* want to do the 68k then >I'll let him because he certainly has more experience with it than I do. I have to take a look at my 68K books as well, since I never really was down to all the possible addressing modes and encoding. I could identfy dozens of instructions by their hex code, but I never worked with 68K instructions on the bit surface. Since Neil and Alex worked on the x86 definition (thanks guys!) we could coordinate on the 68K as well, I guess. >If >that's the case then I'll go for the Z80. Heh, I can nick half of the stuff >from your x86 stuff Neil. ;) Hey, you are just so lazy! ;-) >I agree, the script idea is a *really* cool... well, idea. It saves work, >means that the source, target and disassembler is written for us - and it >means that creating a dynarec for a new CPU is really quick and easy. How >cool is that? Well done Alex! :) I agree totally! >>// all instructions are multiples of this many bits >>InstructionGranularity = 8; >That confused me for a moment but I'm with you now... This is needed because it would be 16 for 68K and 32 for almost all RISCs and that's also aligned. Maybe we should add info about alignment as well? >>RD { 3, keys = {EAX=0, ECX=1, EDX=2, EBX=3, ESP=4, EBP=5, ESI=6, >EDI=7} }; >>RW { 3, keys = {AX=0, CX=1, DX=2, BX=3, SP=4, BP=5, SI=6, DI=7} }; >>RB { 3, keys = {AL=0, CL=1, DL=2, BL=3, AH=4, CH=5, DH=6, BH=7} }; >What does the "R" stand for? Real? Read? Register? I'd guess at "register" >but I'm not sure... I'd say Register Byte, Reg Word, Reg Double... >>IMM32 {32, numeric}; >IMM = immediate? Yep. >I was confused here, now I get it. NB = Not Below. NG = Not Greater. Z = >True/False. Okay, I'm with you know. But what does the "CC" actually stand >for? Condition Codes. >Surely "FLAGS" would be a better name? Nope, FLAGS is the name of the register. >Neil. -- M.I.K.e The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense. -- E. W. Dijkstra --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 10:17:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA12382 for dynarec-outgoing; Thu, 6 Jul 2000 10:17:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Food Fight progress From: "M.I.K.e" In-Reply-To: Message-ID: <00036bc0d6136c38_mailit@mail.dynarec.com> References: Date: Thu, 06 Jul 2000 18:28:19 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Food Fight is coming along. The graphics now properly decode and I'm in >the process of porting some of the routines necessary to do the actual >graphics. Shouldn't be too horribly difficult. Just a matter of farting >around with it until it works. ;-) Good news, but I guess it needs more than just farting to get it running on BeOS... >Alex and I are currently hashing out script ideas and trying to solve the >problem of source layers, target layers, and disassemblers all in one >shot. Wow, that's already a large part of the project! >Rather than polluting the list with our discussions and banter, we >took it offline today with a phone conversation. So the plan is to get >everything up and documented (since he and I are probably the biggest >loudmouths on the project for this topic) and present it. If no holes are >found, we'll proceed from there. Well, since I'm still a x86 beginner I wouldn't be of much help during the discussion anyway. >-->Neil -- M.I.K.e Documentation is the castor oil of programming. Managers know it must be good because the programmers hate it so much. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 10:17:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA12390 for dynarec-outgoing; Thu, 6 Jul 2000 10:17:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Script neraly nailed From: "M.I.K.e" In-Reply-To: Message-ID: <00036bc0dcc78b67_mailit@mail.dynarec.com> References: Date: Thu, 06 Jul 2000 18:30:12 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm working on the x86 one, Alex is working on the 34010 - can we get some >other kind soul to do the 68000 script? Mike? You up to it? How about the script from Generator? Is that what we need? I really don't want to reinvent the wheel. >-->Neil -- M.I.K.e To be sure of hitting the target, shoot first and, whatever you hit, call it the target. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 10:18:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA12399 for dynarec-outgoing; Thu, 6 Jul 2000 10:18:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Sorry From: "M.I.K.e" Message-ID: <00036bc0c69080e5_mailit@mail.dynarec.com> Date: Thu, 06 Jul 2000 18:23:59 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Sorry guy I was a bit busy... That's why I wasn't able to reply to the truely interesting messages yet :-( -- M.I.K.e All Finagle Laws may be bypassed by learning the simple art of doing without thinking. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 10:19:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA12409 for dynarec-outgoing; Thu, 6 Jul 2000 10:19:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 10:29:26 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Script neraly nailed In-Reply-To: <00036bc0dcc78b67_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I'm working on the x86 one, Alex is working on the 34010 - can we get some > >other kind soul to do the 68000 script? Mike? You up to it? > How about the script from Generator? Is that what we need? I really don't > want to reinvent the wheel. It's not general enough. We're emitting source, destination, and disassembly fromour script. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 10:21:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA12421 for dynarec-outgoing; Thu, 6 Jul 2000 10:21:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 10:31:53 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bc1a3e1e89a_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >That way we also cover processors of a different endianness > Hmm, I think the endianness is missing in the cpuinfo section... Not needed. The bytes from left to right as they appear in memory and each specific layer figures it out properly. > BTW, in the current format the description how the immediate encoding in ARM > works would be very difficult because it's "imm8 ROR (imm4 * 2)"... What does the opcode look like in a binary fashion? > >>// all instructions are multiples of this many bits > >>InstructionGranularity = 8; > >That confused me for a moment but I'm with you now... > This is needed because it would be 16 for 68K and 32 for almost all RISCs and > that's also aligned. Maybe we should add info about alignment as well? This is an alignment. I'd actually call it "alignment" rather than "granularity". > >>RW { 3, keys = {AX=0, CX=1, DX=2, BX=3, SP=4, BP=5, SI=6, DI=7} }; > >>RB { 3, keys = {AL=0, CL=1, DL=2, BL=3, AH=4, CH=5, DH=6, BH=7} }; > >What does the "R" stand for? Real? Read? Register? I'd guess at "register" > I'd say Register Byte, Reg Word, Reg Double... Yucky names. I'd just call it REG8, REG16, and REG32. > >Surely "FLAGS" would be a better name? > Nope, FLAGS is the name of the register. Uh.... -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 10:30:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA12437 for dynarec-outgoing; Thu, 6 Jul 2000 10:30:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036bc1d61a4c00_mailit@mail.dynarec.com> References: Date: Thu, 06 Jul 2000 19:39:55 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [RISC and CISC] >Not a bad idea, as long as someone other than me is doing something. ;-) Well, since I seem to be the RISC freak on the list I can do some of those. Especially MIPS should be quite straight forward. >Well, the RD/RW/RB is register dword, register word, etc... I flatly don't >like that nomenclature. It's misleading. I'd just call it REG8, REG16, and >REG32. I'd prefer that as well, because for 68K and DEC it's not dword but longword and for most RISCs a word is 32 bit and a double word (Alpha quad word) is 64 bit. Knuth uses: byte, wyde, tetra, octa, which is also clear, but R8, R16, R32, R64 is ok for me. Anything is a better idea than using the term "word", which can be interpreted in so many ways! >Condition Code. It's very, very common to be called condition codes. Yes, condition codes are something like EQ/NE or Z/NZ when you do the tests. The register is called flag register, processor status register or condition code register and holds the condition flags. So much for the terms... >-->Neil -- M.I.K.e Condense soup, not books! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 10:37:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA12452 for dynarec-outgoing; Thu, 6 Jul 2000 10:37:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 10:47:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: SEe ya, Transmeta Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com http://www.theregister.co.uk/content/1/11792.html This, and with Intel's announcement of the chips that outperform the Transmeta in both performance and in power consumption, Transmeta is going to have serious trouble in the marketplace. Yipee! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 10:48:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA12468 for dynarec-outgoing; Thu, 6 Jul 2000 10:48:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000901bfe773$dd3ed100$e9148cd4@daves> From: "David Sharp" To: References: <00b901bfcb3a$cdf6aba0$c8128cd4@daves> <004f01bfcb4b$21fcbae0$0100a8c0@nibble> <20000531231412.A1537@boris.quns.cam.ac.uk> Subject: DYNAREC: learning x86 asm Date: Thu, 6 Jul 2000 18:58:36 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Julian, I've decided to go for a MIPS -> x86 dynarec for my 3rd year project, I've got a good book on MIPS on the way but I'm hoping you can point me in the direction of some decent docs/books for a beginner with x86 asm and reference tables for later on. Most of the stuff I've found has all been 8086 only.... Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 10:55:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA12484 for dynarec-outgoing; Thu, 6 Jul 2000 10:55:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <01bfe728$16fc3a00$35901a17@turkey> Subject: Re: DYNAREC: Example script! From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Thu, 6 Jul 2000 20:16:22 +0200 Message-ID: <1edd3ue.1625o3y15e664gM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id KAA12481 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Sorry but I didn't follow the discussion that much. > Just wondering, what are you using to write the parser in? In my opinion, > one of the major setbacks of C and C++ is the string handling. As in it's > crap... As far as C++ is concerned, one can't say that string handling is crap or would you please be more specific ? -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 11:02:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA12502 for dynarec-outgoing; Thu, 6 Jul 2000 11:02:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036bc2434f9b2d_mailit@mail.dynarec.com> References: Date: Thu, 06 Jul 2000 20:10:27 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Not needed. The bytes from left to right as they appear in memory and each >specific layer figures it out properly. Does that mean that we have to encode the 68K instructions backwards? >> BTW, in the current format the description how the immediate encoding in >ARM >> works would be very difficult because it's "imm8 ROR (imm4 * 2)"... >What does the opcode look like in a binary fashion? I thought you programmed the ARM? ;-) Eg. the instruction MOV R0, #00FF0000 would be encoded as Bits 31-28: 1110 (condition always) Bits 27-25: 00 Bit 25: 1 (2nd operand is immediate) Bits 24-21: 1101 (opcode for MOV) Bit 20: 0 (no status flags set) Bits 19-16: 0000 (1st operand, not needed for MOV) Bits 15-12: 0000 (destination register R0) Bits 11-8: 1000 (rotation of 16 shifted right by 1 bit because 4 bits wouldn't be enough to cover the whole 32 bit register) Bits 7-0: 11111111 (the actual 8 bit immediate 255) Everything combined gives: 0xE3A008FF ARM is nice but the encoding of immediates in 12 bits is shit especially when you only have a real 8 bit immediate value which is rotated right in 2 bit steps... >This is an alignment. I'd actually call it "alignment" rather than >"granularity". Hmm, I think there is an embedded RISC which has 16 bit instructions but the branch targets have to be 32 bit aligned because the offset is encoded shifted right 2 bits because they wanted to have a wider branch range, but I'd have to check that. The issue about alignment becomes a bit tricky when you cover ARM/Thumb or MIPS32/MIPS16 anyway... >Yucky names. I'd just call it REG8, REG16, and REG32. I agree! >> Nope, FLAGS is the name of the register. >Uh.... Have I said something wrong? I thought that the name of the flag register in x86 is FLAGS or EFLAGS. Please correct me if I should be wrong. >-->Neil -- M.I.K.e Your conscience never stops you from doing anything. It just stops you from enjoying it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 11:07:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA12516 for dynarec-outgoing; Thu, 6 Jul 2000 11:07:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 11:17:11 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bc2434f9b2d_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Not needed. The bytes from left to right as they appear in memory and each > >specific layer figures it out properly. > Does that mean that we have to encode the 68K instructions backwards? No! The source layer takes care of any endianness reversal that's required. As the bytes appear in normal CPU memory, that's the way you define them in the script. > >> BTW, in the current format the description how the immediate encoding in > >ARM > >> works would be very difficult because it's "imm8 ROR (imm4 * 2)"... > >What does the opcode look like in a binary fashion? > I thought you programmed the ARM? ;-) I do. But 99.9999% of the time it's in C, and I never have gone to the opcode level. > Eg. the instruction MOV R0, #00FF0000 would be encoded as > Bits 31-28: 1110 (condition always) > Bits 27-25: 00 > Bit 25: 1 (2nd operand is immediate) > Bits 24-21: 1101 (opcode for MOV) > Bit 20: 0 (no status flags set) > Bits 19-16: 0000 (1st operand, not needed for MOV) > Bits 15-12: 0000 (destination register R0) > Bits 11-8: 1000 (rotation of 16 shifted right by 1 bit because 4 bits > wouldn't be enough to cover the whole 32 bit register) > Bits 7-0: 11111111 (the actual 8 bit immediate 255) > Everything combined gives: 0xE3A008FF Okay, I'm still not seeing what the problem is and how the script wouldn't handle it. > >> Nope, FLAGS is the name of the register. > >Uh.... > Have I said something wrong? I thought that the name of the flag register in > x86 is FLAGS or EFLAGS. Please correct me if I should be wrong. It meant I didn't understand what you had written. Now I do. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 11:24:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA12540 for dynarec-outgoing; Thu, 6 Jul 2000 11:24:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036bc297b1ba87_mailit@mail.dynarec.com> References: Date: Thu, 06 Jul 2000 20:34:02 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >No! The source layer takes care of any endianness reversal that's >required. As the bytes appear in normal CPU memory, that's the way you >define them in the script. Ah, it seems that I have a long line today... >I do. But 99.9999% of the time it's in C, and I never have gone to the >opcode level. I haven't programmed much ARM assembly yet, but when I thought about writing an ARM code generator that immediate encoding pissed me off... >Okay, I'm still not seeing what the problem is and how the script wouldn't >handle it. IIRC then I'll have to mention how the disassembler and the generator should interpret the codes. It's a bit difficult to write that 0x...8FF decodes to "#16711680". Or do you think that "#255 ROR 16" is enough? It would be even more complicated for the code generator... >It meant I didn't understand what you had written. Now I do. ;-) Ok, well what I meant is that naming that special entry FLAGS instead of CC is a bad idea because it lists the condition codes which test the bits stored in (E)FLAGS. >-->Neil -- M.I.K.e People who are funny and smart and return phone calls get much better press than people who are just funny and smart. -- Howard Simons, "The Washington Post" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 11:50:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA12580 for dynarec-outgoing; Thu, 6 Jul 2000 11:50:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 12:00:38 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bc297b1ba87_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Okay, I'm still not seeing what the problem is and how the script wouldn't > >handle it. > IIRC then I'll have to mention how the disassembler and the generator should > interpret the codes. It's a bit difficult to write that 0x...8FF decodes to > "#16711680". Or do you think that "#255 ROR 16" is enough? It would be even > more complicated for the code generator... I see what you mean. I have a feeling that we'll need to extend the script a bit for disassembly's sake, as tehre are bound to be oddball stuf like this. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 11:53:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA12599 for dynarec-outgoing; Thu, 6 Jul 2000 11:52:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: <00036bc297b1ba87_mailit@mail.dynarec.com> Message-ID: <00036bc2fd14b74b_mailit@mail.dynarec.com> References: <00036bc297b1ba87_mailit@mail.dynarec.com> Date: Thu, 06 Jul 2000 21:02:23 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com // D = flags written (as defined in [flags] section, eg NCV // E = flags read (as defined in [flags] section {D} is ok, but especially fro the 68K it would be good to have a way to define that a an instruction always sets or clears a specific flag. Eg. move always clears V and C. -- M.I.K.e Goldenstern's Rules: (1) Always hire a rich attorney (2) Never buy from a rich salesman. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 11:57:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA12615 for dynarec-outgoing; Thu, 6 Jul 2000 11:57:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 12:07:51 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bc2fd14b74b_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > // D = flags written (as defined in [flags] section, eg NCV > // E = flags read (as defined in [flags] section > {D} is ok, but especially fro the 68K it would be good to have a way to > define that a an instruction always sets or clears a specific flag. Eg. move > always clears V and C. You've got that already. It's just not labeled as such. D = Flags instruction uses (on entry) E = Flags instruciton modifies (on exit) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 12:46:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA12684 for dynarec-outgoing; Thu, 6 Jul 2000 12:46:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: <00036bc2fd14b74b_mailit@mail.dynarec.com> Message-ID: <00036bc3bbf7ea2a_mailit@mail.dynarec.com> References: <00036bc297b1ba87_mailit@mail.dynarec.com> <00036bc2fd14b74b_mailit@mail.dynarec.com> Date: Thu, 06 Jul 2000 21:55:46 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com // C = how to process the data when assembling // D = how to process the data when disassembling // examples: // NOFFSET {32, numeric, ~X, ~X }; // a 32-bit offset that is stored bit- flipped What kind of expressions are possible here? I need the expression (X=0 ? 8 : X) for the 3 bit quick immediates in 68K. -- M.I.K.e "And what will you do when you grow up to be as big as me?" asked the father of his little son. "Diet." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 12:49:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA12695 for dynarec-outgoing; Thu, 6 Jul 2000 12:49:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 12:59:52 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bc3bbf7ea2a_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > // C = how to process the data when assembling > // D = how to process the data when disassembling > // examples: > // NOFFSET {32, numeric, ~X, ~X }; // a 32-bit offset that is stored bit- > flipped > What kind of expressions are possible here? > I need the expression (X=0 ? 8 : X) for the 3 bit quick immediates in 68K. Not supposed to use it for that. ;-) Here's how. Let's take look at an example instruction (I don't know one, I'm just using this as an example): 0101 1101 0111 1000 |.... 0101 1101 0111 1xxx |.... You'd have one for the 0 case, then if that didn't match, it'd fall through to the opcode below it. Make sense? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 13:16:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA12735 for dynarec-outgoing; Thu, 6 Jul 2000 13:15:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036bc424d7ce7c_mailit@mail.dynarec.com> References: Date: Thu, 06 Jul 2000 22:25:06 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Not supposed to use it for that. ;-) Damn, I thought I could do something tricky ;-) >Here's how. Let's take look at an >example instruction (I don't know one, I'm just using this as an example): >0101 1101 0111 1000 |.... >0101 1101 0111 1xxx |.... >You'd have one for the 0 case, then if that didn't match, it'd fall >through to the opcode below it. >Make sense? I see. It's just like functional programming or Prolog (Do you read this NG?): first check the special case otherwise go for the general case. Still sounds like a lot of work, but much better then writing the decoder on my own... I don't have much yet though: [cpuinfo] Name = 68K; InstructionGranularity = 16; [operands] MODE { 3, keys = {DREG=0, AREG=1, AREG_IND=2, POSTINC=3, PREDEC=4, AREG_OFF=5, AREG_INDX=6} }; EFF_ADR { 6, keys = {ABS_SHORT=0x38, ABS_LONG=0x39, PC_REL=0x3a, PC_INDX= 0x3b, IMM=0x3c} }; IMM8 { 8, numeric}; IMM16 {16, numeric}; IMM32 {32, numeric}; QIMM3 { 3, numeric}; [flags] C = { 0x0001, "carry" }; V = { 0x0002, "overflow" }; Z = { 0x0004, "zero" }; N = { 0x0008, "negative" }; X = [ 0x0010, "extend" }; Damn, this needs a lot more work! BTW, who else is working on it? >-->Neil -- M.I.K.e Anything that is good and useful is made of chocolate. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 13:40:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA12770 for dynarec-outgoing; Thu, 6 Jul 2000 13:40:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 13:50:19 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bc424d7ce7c_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I see. It's just like functional programming or Prolog (Do you read this > NG?): first check the special case otherwise go for the general case. Yes. This is how the table is going to be generated so it lends itself to doing it this way. > [cpuinfo] > Name = 68K; > InstructionGranularity = 16; > [operands] > MODE { 3, keys = {DREG=0, AREG=1, AREG_IND=2, POSTINC=3, PREDEC=4, > AREG_OFF=5, > AREG_INDX=6} }; > EFF_ADR { 6, keys = {ABS_SHORT=0x38, ABS_LONG=0x39, PC_REL=0x3a, PC_INDX= > 0x3b, IMM=0x3c} }; Um... you can't do this. Here's a bit of info: Your addressing modes, meaning each variant of every operand, will have to be listed separately. There is *NO* way to expand a single instruction into 10 different covers based on a list. Alex and I looked for a nice & easy way to do it, and no matter what we came up with it was way harder than just listing the variants of each instruction. So the rule of thumb is that if it's a different addressing mode, it'll have to be listed separately. Also, if the length of the instruction varies, you'll have to list it separately as well. It's either that or we spend weeks just trying to get even the most basic emitter working. Also, keys are 0 based - not absolute position based. So if you have: 1xxx 1111 0101 1000 The value of "x" would be 0-7, not 0-70. > X = [ 0x0010, "extend" }; Using the wrong braces. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 13:43:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA12781 for dynarec-outgoing; Thu, 6 Jul 2000 13:43:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 13:53:13 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > AREG_OFF=5, > > AREG_INDX=6} }; > > EFF_ADR { 6, keys = {ABS_SHORT=0x38, ABS_LONG=0x39, PC_REL=0x3a, PC_INDX= > > 0x3b, IMM=0x3c} }; Also, you are forgetting the registers. ;-) DREGS {3, keys = (D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7)}; AREGS {3, keys = (A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, SP=7)}; -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 14:00:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA12811 for dynarec-outgoing; Thu, 6 Jul 2000 14:00:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006301bfe796$3cedeec0$0100a8c0@lion> From: "Neil Griffiths" To: References: <1edd3ue.1625o3y15e664gM@[192.168.0.2]> Subject: Re: DYNAREC: Example script! Date: Thu, 6 Jul 2000 22:43:40 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> Just wondering, what are you using to write the parser in? In my opinion, >> one of the major setbacks of C and C++ is the string handling. As in it's >> crap... > >As far as C++ is concerned, one can't say that string handling is crap >or would you please be more specific ? One can say that. One did! Okay, without using a pointer, please create a string that you don't know the length of beforehand. Oh yes - you can't! Please don't start me on this, string handling is diabolical and was *definitely* added on as an afterthought and not an integral part of the language - as is the case with the majority of the others... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 14:01:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA12824 for dynarec-outgoing; Thu, 6 Jul 2000 14:01:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006f01bfe796$80022c80$0100a8c0@lion> From: "Neil Griffiths" To: References: <1edd3ue.1625o3y15e664gM@[192.168.0.2]> Subject: Re: DYNAREC: Example script! Date: Thu, 6 Jul 2000 23:05:23 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >As far as C++ is concerned, one can't say that string handling is crap >or would you please be more specific ? I've got a better one now - how long is the string? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 14:02:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA12834 for dynarec-outgoing; Thu, 6 Jul 2000 14:02:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 14:12:55 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <006301bfe796$3cedeec0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > One can say that. One did! Okay, without using a pointer, please create a > string that you don't know the length of beforehand. Oh yes - you can't! > Please don't start me on this, string handling is diabolical and was > *definitely* added on as an afterthought and not an integral part of the > language - as is the case with the majority of the others... Oh come on, Neil. There's a function called strlen() in the standard C libraries in addition to everything else. In any basic form or any other language, they're all going to boil down to the level of individual array of char accesses anyway, in addition to having to allocate memory for a heap. There's a happy little function called strdup() that has been there for hundreds of years now that will satisfy you. And if you think that it was added as an afterhtought, you're greener than I had imagined. ;-) All one must do is look backward at Pascal. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 14:03:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA12843 for dynarec-outgoing; Thu, 6 Jul 2000 14:03:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 14:13:54 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <006f01bfe796$80022c80$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >As far as C++ is concerned, one can't say that string handling is crap > >or would you please be more specific ? > I've got a better one now - how long is the string? strlen(). Real tough. Would you mind telling us what is a *GOOD* string handling language? Don't say BASIC or Perl, because they both allocate strings from a common pool of memory -just like you'd do in C! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 14:06:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA12857 for dynarec-outgoing; Thu, 6 Jul 2000 14:06:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036bc4dbee9b86_mailit@mail.dynarec.com> References: Date: Thu, 06 Jul 2000 23:16:17 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Your addressing modes, meaning each variant of every operand, will have to >be listed separately. There is *NO* way to expand a single instruction >into 10 different covers based on a list. Alex and I looked for a nice & >easy way to do it, and no matter what we came up with it was way harder >than just listing the variants of each instruction. Oh yes, then it is really hell of a lot of typing! Victor and Neil, I need you!!! >Also, keys are 0 based - not absolute position based. So if you have: >1xxx 1111 0101 1000 >The value of "x" would be 0-7, not 0-70. I assumed that. >> X = [ 0x0010, "extend" }; >Using the wrong braces. ;-) Oops! Good to have an corrector, or you have to make your parser more intelligent ;-) >Also, you are forgetting the registers. ;-) I added these shortly after I sent the message. >DREGS {3, keys = (D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7)}; >AREGS {3, keys = (A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, SP=7)}; Now you are using the wrong braces? Here is what I have now: [operands] DATAREG { 3, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7} }; ADRREG { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=7} }; CC { 4, keys = {T=0, F=1, HI=2, LS=3, CC=4, CS=5, NE=6, EQ=7, VC=8, VS= 9, PL=10, MI=11, GE=12, LT=13, GT=14, LE=15} }; IMM8 { 8, numeric}; IMM16 {16, numeric}; IMM32 {32, numeric}; IMM4 { 4, numeric}; QIMM3 { 3, numeric}; [flags] C = { 0x0001, "carry" }; V = { 0x0002, "overflow" }; Z = { 0x0004, "zero" }; N = { 0x0008, "negative" }; X = { 0x0010, "extend" }; [instructions] // 0000 Bit Manipulation/MOVEP/Immediate // 0001 Move Byte // 0010 Move Long // 0011 Move Word // 0100 Miscellaneous 0100111001110001 |NOP||||4 4 0; 0100101011111100 |ILLEGAL||||34 34 1; 0100111001110000 |RESET||||132 132 0; 0100111001110011 |RTE||CVZNX||20 20 1; 0100111001110111 |RTR||CVZNX||20 20 1; 0100111001110101 |RTS||||16 16 1; 0100111001110010 (16xI) |STOP|IMM16=I|CVZNX||4 4 1; 010011100100VVVV |TRAP|IMM4=V||CVZNX|38 38 1; 0100111001110110 |TRAPV|||CVZNX|34 4 1; // 0101 ADDQ/SUBQ/Scc/DBcc // 0110 Bcc/BSR // 0111 MOVEQ // 1000 OR/DIV/SBCD // 1001 SUB/SUBX // 1010 (Line-A) // 1011 CMP/EOR // 1100 AND/MUL/ABCD/EXG // 1101 ADD/ADDX // 1110 Shift/Rotate // 1111 (Line-F) BTW, in the definition above I assumed that instructions that cause an exception or halt the machine end a basic block. I also assumed that when an instruction saves the status register it reads all the bits, e.g. TRAPV only checks V but like TRAP it saves the whole SR onto the stack. I hope these asumptions are correct! >-->Neil -- M.I.K.e A countryman between two lawyers is like a fish between two cats. -- Ben Franklin --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 14:11:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA12872 for dynarec-outgoing; Thu, 6 Jul 2000 14:11:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 14:21:35 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bc4dbee9b86_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >easy way to do it, and no matter what we came up with it was way harder > >than just listing the variants of each instruction. > Oh yes, then it is really hell of a lot of typing! Victor and Neil, I need > you!!! It's either you type a lot, or I spend weeks screaming about the code. ;-) > >> X = [ 0x0010, "extend" }; > >Using the wrong braces. ;-) > Oops! Good to have an corrector, or you have to make your parser more > intelligent ;-) It'll spew at yo if you blow it. ;-) > >DREGS {3, keys = (D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7)}; > >AREGS {3, keys = (A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, SP=7)}; > Now you are using the wrong braces? Probably. This is from memory. check the reference. ;-) > [operands] > DATAREG { 3, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7} }; > ADRREG { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=7} }; Don't we want to call A7 SP? > 0100111001110001 |NOP||||4 4 0; > 0100101011111100 |ILLEGAL||||34 34 1; > 0100111001110000 |RESET||||132 132 0; I would think that this'd be a terminal. ;-) It's effectively a jump to 0. > 0100111001110011 |RTE||CVZNX||20 20 1; > 0100111001110111 |RTR||CVZNX||20 20 1; > 0100111001110101 |RTS||||16 16 1; > 0100111001110010 (16xI) |STOP|IMM16=I|CVZNX||4 4 1; > 010011100100VVVV |TRAP|IMM4=V||CVZNX|38 38 1; > 0100111001110110 |TRAPV|||CVZNX|34 4 1; Looks good! Great start! > BTW, in the definition above I assumed that instructions that cause an > exception or halt the machine end a basic block. I also assumed that > when an instruction saves the status register it reads all the bits, > e.g. TRAPV only checks V but like TRAP it saves the whole SR onto the > stack. Yes, but the only thing you're actually indicating is if the instruction uses the flags (meaning relies on the incoming values, which in the case of storing the flags would mean all of them) or modifies them on the way out. So as long as you think that, we're in good shape. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 14:13:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA12885 for dynarec-outgoing; Thu, 6 Jul 2000 14:13:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036bc4f45275f8_mailit@mail.dynarec.com> References: Date: Thu, 06 Jul 2000 23:23:06 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >strlen(). Real tough. Would you mind telling us what is a *GOOD* string >handling language? SNOBOL? BTW, I changed DATAREG to DREG and ADRREG to AREG. I only had the other names because I used AREG and DREG for the addressing modes before and forgot to rename the register lists... >-->Neil -- M.I.K.e Noncombatant, n.: A dead Quaker. -- Ambrose Bierce --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 14:17:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA12901 for dynarec-outgoing; Thu, 6 Jul 2000 14:17:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008901bfe798$ba1448c0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Example script! Date: Thu, 6 Jul 2000 23:22:50 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > strlen(). Real tough. Would you mind telling us what is a *GOOD* string > handling language? Don't say BASIC or Perl, because they both allocate > strings from a common pool of memory -just like you'd do in C! Okay, bad example - I thought about that after I'd sent it. But given that you need to define a length beforehand unless you use a pointer (which is crap because it's a linked list), C is crap when handling strings. I've so many problems that I shudder to think about. Everything else I like about C - but string handling is crap. C++ makes it better - but it's still crap. I use a string class now which makes my life easier. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 14:19:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA12913 for dynarec-outgoing; Thu, 6 Jul 2000 14:19:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 14:29:30 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <008901bfe798$ba1448c0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Okay, bad example - I thought about that after I'd sent it. But given that > you need to define a length beforehand unless you use a pointer (which is > crap because it's a linked list), C is crap when handling strings. I've so > many problems that I shudder to think about. Everything else I like about > C - but string handling is crap. C++ makes it better - but it's still crap. > I use a string class now which makes my life easier. All it does is hide the fact that it's a pointer from you and calls C++ libraries to do the dirty work. Frankly, C is much better in this regard because I can program how I want strings to be dealt with rather than leaving it up to a general purpose string manager. This is extremely critical when dealing with compilers (gee, does this ring a bell? ;-) ) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 14:21:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA12925 for dynarec-outgoing; Thu, 6 Jul 2000 14:21:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009501bfe799$34188d20$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Example script! Date: Thu, 6 Jul 2000 23:26:15 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > One can say that. One did! Okay, without using a pointer, please create a > > string that you don't know the length of beforehand. Oh yes - you can't! > > Please don't start me on this, string handling is diabolical and was > > *definitely* added on as an afterthought and not an integral part of the > > language - as is the case with the majority of the others... > > Oh come on, Neil. There's a function called strlen() in the standard C > libraries in addition to everything else. And your point is? How does that help you create a string when you don't know what the length will be beforehand? For instance, you may need someone to input a line. You can either use a pointer - or you can limit the length of the character array. That's poor. Dynamic string handling is good - but can't be done in C. > In any basic form or any other > language, they're all going to boil down to the level of individual array > of char accesses anyway, in addition to having to allocate memory for a > heap. Yes, but the difference is that it's dynamic. > There's a happy little function called strdup() that has been there > for hundreds of years now that will satisfy you. Not for my example it doesn't. ;P > And if you think that it was added as an afterhtought, you're greener than > I had imagined. ;-) All one must do is look backward at Pascal. There's no doubt about it, it WAS added as an afterthought. Just call me "The Incredible Hulk" from now on. ;)) And at least Pascal (I can't believe I'm defending it!) actually has a string type. And can dynamically handle strings. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 14:24:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA12937 for dynarec-outgoing; Thu, 6 Jul 2000 14:24:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036bc51a94b40d_mailit@mail.dynarec.com> References: Date: Thu, 06 Jul 2000 23:33:48 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It's either you type a lot, or I spend weeks screaming about the code. ;-) Then I'd vote for the latter case ;-) >It'll spew at yo if you blow it. ;-) Are you related to a llama? ;-) >Probably. This is from memory. check the reference. ;-) RTFM... >Don't we want to call A7 SP? Why? Ok, why not. >> 0100111001110000 |RESET||||132 132 0; >I would think that this'd be a terminal. ;-) It's effectively a jump to 0. That's a missnomer, it resets external devices and the CPU only waits for 124 cycles and continues with the next instruction. The problem is, it's a previleged instruction and causes an exception in user mode, so I count that as an instruction that ends a basic block or not? >Looks good! Great start! Thanks ;-) >Yes, but the only thing you're actually indicating is if the instruction >uses the flags (meaning relies on the incoming values, which in the case >of storing the flags would mean all of them) or modifies them on the way >out. I simply thought that when the SR is saved all flags should be be calculated when the instruction is reached, so I said it reads all flags. >So as long as you think that, we're in good shape. ;-) Good. >-->Neil -- M.I.K.e Ed Sullivan will be around as long as someone else has talent. -- Fred Allen --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 14:29:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA12952 for dynarec-outgoing; Thu, 6 Jul 2000 14:29:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 14:39:28 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <009501bfe799$34188d20$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Now you're getting in to my area of expertise... interpreters/compilers. ;-) > > > *definitely* added on as an afterthought and not an integral part of the > > > language - as is the case with the majority of the others... > > Oh come on, Neil. There's a function called strlen() in the standard C > > libraries in addition to everything else. > And your point is? How does that help you create a string when you don't > know what the length will be beforehand? For instance, you may need someone > to input a line. You can either use a pointer - or you can limit the length > of the character array. That's poor. Dynamic string handling is good - but > can't be done in C. You do what any other language that handles strings does - deallocate your current string, figure out what the combined length of the two is, and reallocate a bigger block. This is *EXACTLY* what BASIC or any other language with built in string types does! > > And if you think that it was added as an afterhtought, you're greener than > > I had imagined. ;-) All one must do is look backward at Pascal. > There's no doubt about it, it WAS added as an afterthought. Just call me > "The Incredible Hulk" from now on. ;)) No, it wasn't added as an afterthought. There was nothing "added". It was never part of the language to begin with! The problem with having a built in string type is that it requires there be a library that go along with with every piece of code written for that language. That, and consider that a string is not a basic type to a computer. Strings are arrays of chars at the basic level, which is exactly where C puts it. The point is that string handling is an application specific thing. In most cases one can predict how big strings are going to be and allocate them as needed. More to the point, it's important that a piece of code proactively use a string int he way most optimal rather than relying on a general purpose string heap. > And at least Pascal (I can't believe I'm defending it!) actually has a > string type. And can dynamically handle strings. No, it can't. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 14:30:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA12969 for dynarec-outgoing; Thu, 6 Jul 2000 14:30:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 14:40:51 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bc51a94b40d_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> 0100111001110000 |RESET||||132 132 0; > >I would think that this'd be a terminal. ;-) It's effectively a jump to 0. > That's a missnomer, it resets external devices and the CPU only waits for 124 > cycles and continues with the next instruction. The problem is, it's a > previleged instruction and causes an exception in user mode, so I count that > as an instruction that ends a basic block or not? No, because it's a runtime check. > >uses the flags (meaning relies on the incoming values, which in the case > >of storing the flags would mean all of them) or modifies them on the way > I simply thought that when the SR is saved all flags should be be calculated > when the instruction is reached, so I said it reads all flags. Yes, that's exactly what it should do. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 14:49:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA12995 for dynarec-outgoing; Thu, 6 Jul 2000 14:49:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <006301bfe796$3cedeec0$0100a8c0@lion> Subject: Re: DYNAREC: Example script! From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Fri, 7 Jul 2000 00:10:05 +0200 Message-ID: <1eddgv8.19077ut1w5heg1M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id OAA12992 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > One can say that. One did! Okay, without using a pointer, please create a > string that you don't know the length of beforehand. Oh yes - you can't! std::string. _You_ don't use a pointer, the std::string implementation does! > Please don't start me on this, string handling is diabolical and was > *definitely* added on as an afterthought and not an integral part of the > language - as is the case with the majority of the others... Sure, this is not in the core language, but this is part of the standard library that _is_ part of the C++ language. std::string handles allocation itself. You can even provide your specialised allocator (with std::basic_string) that would handle memory allocation lazily. What does trouble you ? Just the fact that std::string is not a primitive type such as int, float ? -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 15:20:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA13041 for dynarec-outgoing; Thu, 6 Jul 2000 15:20:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: <1eddgv8.19077ut1w5heg1M@[192.168.0.2]> Message-ID: <00036bc5d6743e4d_mailit@mail.dynarec.com> References: <1eddgv8.19077ut1w5heg1M@[192.168.0.2]> Date: Fri, 07 Jul 2000 00:26:20 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com How do I define that an immediate is sign extended? I need that for MOVEQ, which only has an 8 bit immediate, but that is sign extended to the whole 32-bit data register. About the string discussion: * The definition files are parsed during compile time not runtime! So what? * If you think that language X handles the whole thing faster than Neil's approach with C, then write a much faster version to impress us! I doubt that this works because most language parsers are written in C just because you don't work with strlen() and the C approach is much faster for the other stuff! * Note, if you should be able to come up with a faster solution in a different language that should run on BeOS as well of course! ;-) -- M.I.K.e Horse sense is the thing a horse has which keeps it from betting on people. -- W. C. Fields --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 15:46:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA13078 for dynarec-outgoing; Thu, 6 Jul 2000 15:46:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 15:57:03 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bc5d6743e4d_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > How do I define that an immediate is sign extended? > I need that for MOVEQ, which only has an 8 bit immediate, but that is sign > extended to the whole 32-bit data register. Do you need to indicate this for anything other than disassembly? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 17:21:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA13173 for dynarec-outgoing; Thu, 6 Jul 2000 17:21:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036bc793495c66_mailit@mail.dynarec.com> References: Date: Fri, 07 Jul 2000 02:30:43 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> How do I define that an immediate is sign extended? >> I need that for MOVEQ, which only has an 8 bit immediate, but that is sign >> extended to the whole 32-bit data register. >Do you need to indicate this for anything other than disassembly? Since we don't have any semantics in the definition file it would be for disassembly only, but it should be done because it makes a big difference if I copy 255 or -128 into a 32 bit register. We need this signed displacement for PC relative branches anyway. This also means that we should be able to decode such a displacement as (PC + 2 + disp) or we'd have to perform all branch calculations in our heads. Another problem is noticed is that DBcc has *3* different timings for one addressing mode: * condition true and branch taken: 10 * condition true and branch not taken: 12 * condition not true and branch not taken: 14 >-->Neil -- M.I.K.e Do something unusual today. Pay a bill. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 17:54:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA13203 for dynarec-outgoing; Thu, 6 Jul 2000 17:54:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Jul 2000 18:04:28 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bc793495c66_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> extended to the whole 32-bit data register. > >Do you need to indicate this for anything other than disassembly? > Since we don't have any semantics in the definition file it would be for > disassembly only, but it should be done because it makes a big difference if > I copy 255 or -128 into a 32 bit register. Right. I think that that's in the works and we can sort that out later. Alex has ideas in this department. > We need this signed displacement for PC relative branches anyway. This also > means that we should be able to decode such a displacement as (PC + 2 + disp) > or we'd have to perform all branch calculations in our heads. Yep. There's a way to do that, though I can't remember what it is off the top of my head. > Another problem is noticed is that DBcc has *3* different timings for one > addressing mode: > * condition true and branch taken: 10 > * condition true and branch not taken: 12 > * condition not true and branch not taken: 14 Just put the first two in, and when the cover is coded, that's where the brains goes that figures out which is correct. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 23:26:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA13443 for dynarec-outgoing; Thu, 6 Jul 2000 23:26:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007070633.IAA32154@pons.ac.upc.es> Subject: Re: DYNAREC: SEe ya, Transmeta In-Reply-To: "from Neil Bradley at Jul 6, 2000 10:47:41 am" To: dynarec@dynarec.com Date: Fri, 7 Jul 2000 08:33:02 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > http://www.theregister.co.uk/content/1/11792.html > > This, and with Intel's announcement of the chips that outperform the > Transmeta in both performance and in power consumption, Transmeta is going > to have serious trouble in the marketplace. Yipee! > HaHaHaHa!! (Satanic laugh) ;) > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 6 23:38:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA13460 for dynarec-outgoing; Thu, 6 Jul 2000 23:38:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007070644.IAA30897@pons.ac.upc.es> Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bc793495c66_mailit@mail.dynarec.com> "from M.I.K.e at Jul 7, 2000 02:30:43 am" To: dynarec@dynarec.com Date: Fri, 7 Jul 2000 08:44:33 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Type: multipart/mixed; boundary=ELM962952273-21400-0_ Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --ELM962952273-21400-0_ Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII How could I handle the different address modes in 68K? 68K address modes: Addressing Mode | Mode/Register | [EXT] | Additional Clock Cycles (An) | 010rrr | ---------- | 0 (An)+ | 011rrr | ---------- | 0 -(An) | 100rrr | ---------- | 2 d16(An) | 101rrr | xxxx | 5 d8(An,i) | 110rrr | aiii w000 xx | 7 addr-16-bit | 111000 | pppp | 5 addr-32-bit | 111001 | pppp qqqq | 10 label | 111010 | xxxx | 5 label(i) | 111011 | aiii w000 xx | 7 =========================================================================== rrr => address register x a => 0 = data register | 1 = address register iii => register x w => 0 = sign extend low-order integer in index register 1 = long value in index register xx => displacement (8 bits) xxxx => 16 bit displacement pppp => 16 bit address pppp qqqq => 32 bit address * label means relative to the PC =========================================================================== Other modes that are coded directly at the ISA description: Addressing Mode | Mode/Register | [EXT] | Additional Clock Cycles Dn | 000rrr | ------------ | - An | 001rrr | ------------ | - imm8/imm16/imm32 | 111100 | 00 xx / xxxx / xxxx yyyy | - =========================================================================== =========================================================================== The harder to describe is the d8(An,i). The others seem easy. I will expand the dadr/sadr/jadr... instruction formats into the different address mode. See the example file. How could I describe d8(An,I)? With three operands? Something like AR_MDI8 / AR_MDI16 / AR_MD32 and IREG16 / IREG32 perhaps? AR_MDIxx would mean something like "indexed register indirect for xx bits" and IREGxx will mean "xx bit sign extended index register". I attach an example file. In the descriptions I have changed the order of the operands to Intel order. Can I do that or I should have to write them in the same order that the 68K assembly standard (source, target). Victor Moya --ELM962952273-21400-0_ Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=ISO-8859-1 Content-Disposition: attachment; filename=cpum68k.def // CPU description file for "M68K" // 06052000 [cpuinfo] Name = m68k; InstructionGranularity = 16; [operands] // register Dn 8 bits DR8 { 3, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7} }; // register Dn 16 bits DR16 { 3, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7} }; // register Dn 32 bits DR32 { 3, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7} }; // REG16 { 4, keys = {D0=0x0, D1=0x1, D2=0x2, D3=0x3, D4=0x4, D5=0x5, D6=0x6, D7=0x7, A0=0x8, A1=0x9, A2=0xA, A3=0xB, A4=0xC, A5=0xD, A6=0xE, A7=0xF} }; // register An/Dn 16 bits REG16 { 4, keys = {D0=0x0, D1=0x1, D2=0x2, D3=0x3, D4=0x4, D5=0x5, D6=0x6, D7=0x7, A0=0x8, A1=0x9, A2=0xA, A3=0xB, A4=0xC, A5=0xD, A6=0xE, A7=0xF} }; // register An/Dn 32 bits REG32 { 4, keys = {D0=0x0, D1=0x1, D2=0x2, D3=0x3, D4=0x4, D5=0x5, D6=0x6, D7=0x7, A0=0x8, A1=0x9, A2=0xA, A3=0xB, A4=0xC, A5=0xD, A6=0xE, A7=0xF} }; IMM3 { 3, numeric }; // immediate data 3 bits IMM8 { 8, numeric }; // immediate data 8 bits IMM16 { 16, numeric}; // immediate data 16 bits IMM32 { 32, numeric}; // immediate data 32 bits // register An 16 bits AR16 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // register An 32(24) bits AR32 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // -(An) 8 bits AR_PDM8 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // -(An) 16 bits AR_PDM16 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // -(An) 32 bits AR_PDM32 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // (An) 8 bits AR_M8 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // (An) 16 bits AR_M16 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // (An) 32 bits AR_M32 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // (An)+ 8 bits AR_PIM8 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // (An)+ 16 bits AR_PIM16 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // (An)+ 32 bits AR_PIM32 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // d16(An) 8 bits AR_MD8 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // d16(An) 16 bits AR_MD16 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // d16(An) 32 bits AR_MD32 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // d8(An,i) 8 bits AR_MDI8 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // d8(An,i) 16 bits AR_MDI16 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; // d8(An,i) 32 bits AR_MDI32 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; ADDR16_M8 { 16, mumeric }; // addr-16-bit 8 bits ADDR16_M16 { 16, mumeric }; // addr-16-bit 16 bits ADDR16_M32 { 16, mumeric }; // addr-16-bit 32 bits ADDR32_M8 { 32, numeric }; // addr-32-bit 8 bits ADDR32_M16 { 32, numeric }; // addr-32-bit 16 bits ADDR32_M32 { 32, numeric }; // addr-32-bit 32 bits LABEL { 16, numeric }; [flags] C = { 0x0001, "carry" }; V = { 0x0002, "overflow" }; Z = { 0x0004, "zero" }; N = { 0x0008, "negative" }; X = { 0x0010, "extend" }; IM = { 0x0700, "interrupMask" }; S = { 0x2000, "supervisorMode" }; T = { 0x8000, "traceMode" }; [instructions] // ABCD 1100 DDD1 0000 1SSS | ABCD | AR_DM8=D AR_DM8=S | XNZVC | X | 19 19 0; // abcd -(sAn),-(dAn) 1100 DDD1 0000 0SSS | ABCD | DR8=D DR8=S | XNZVC | X | 6 6 0; // abcd sDn,dDn // ADD.B // add.b data8,dadr 0000 0110 0001 0RRR (8x0) (8xI) | ADDB | AR_M8=R IMM8=I | XNZVC | 13 13 0; // add.b data8, (An) 0000 0110 0001 1RRR (8x0) (8xI) | ADDB | AR_PIM8=R IMM8=I | XNZVC | 13 13 0; // add.b data8, (An)+ 0000 0110 0010 0RRR (8x0) (8xI) | ADDB | AR_PDM8=R IMM8=I | XNZVC | 15 15 0; // add.b data8, -(An) 0000 0110 0010 1RRR (8x0) (8xI) (16xO) | ADDB | AR_MD8=R IMM8=I | XNZVC | 18 18 0; // add.b data8, d16(An) 0000 0110 0011 0RRR (8x0) (8xI) (16xO) | ADDB | AR_MDI8=R IMM8=I | XNZVC | 20 20 0; // add.b data8, d8(An,i) 0000 0110 0011 1000 (8x0) (8xI) (16xO) | ADDB | ADDR16=O IMM8=I | XNZVC | 18 18 0; // add.b data8, addr-16-bit 0000 0110 0011 1001 (8x0) (8xI) (32xO) | ADDB | ADDR32=R IMM8=I | XNZVC | 23 23 0; // add.b data8, addr-32-bit 0000 0110 0000 0DDD (8x0) (8xI) | ADDB | DR8=D IMM8=I | XNZVC | 8 8 0; // add.b data8,Dn // add.b Dn,dadr // add.b sadr,Dn 1101 DDD0 0000 0SSS | ADDB | DR8=D DR8=S | XNZVC | X | 4 4 0; // add.b sDn,dDn // ADD.L 1101 DDD1 1111 1100 (32xI) | ADDL | AR32=D IMM32=I | | | 16 16 0; // add.l data32,An // add.l data32,dadr 0000 0110 1000 0DDD (32xI) | ADDL | DR32=D IMM32=I | XNZVC | | 16 16 0; // add.l data32,Dn // add.l Dn,dadr 1101 DDD1 1100 SSSS | ADDL | AR32=D REG32=S | | | 8 8 0; // add.l rs,An 1101 DDD1 0100 SSSS | ADDL | DR32=D REG32=S | XNZVC | | 8 8 0; // add.l rs,Dn // add.l sadr,An // add.l sadr,Dn // ADD.W 1101 DDD0 1111 1100 (16xI) | ADDW | AR16=D IMM16=I | | | 8 8 0; // add.w data16,An // add.w data16,dadr 0000 0110 0100 0DDD (16xI) | ADDW | DR16=D IMM16=1 | XNZVC | | 8 8 0; // add.w data16,Dn // add.w Dn,dadr 1101 DDD0 1100 SSSS | ADDW | AR16=D REG16=S | | | 8 8 0; // add.w rs,An 1101 DDD0 0100 SSSS | ADDW | DR16=D REG16=S | XNZVC | | 4 4 0; // add.w rs,Dn // add.w sadr,Dn // add.w sadr,Dn // ADDQ.B // addq.b data3,dadr 0101 BBB0 0000 0DDD | ADDQB | DR8=D IMM3=B | XNZVC | | 4 4 0; // addq.b data3,Dn // ADDQ.L 0101 BBB0 1000 1DDD | ADDQL | AR32=D IMM3=B | | | 8 8 0; // addq.l data3,An // addq.l data3,dadr 0101 BBB0 1000 0DDD | ADDQL | DR32=D IMM3=B | XNZVC | | 8 8 0; // addq.l data3,Dn // ADDQ.W 0101 BBB0 0100 1DDD | ADDQW | AR16=D IMM3=B | | | 8 8 0; // addq.w data3,An // addq.w data3,dadr 0101 BBB0 0100 0DDD | ADDQW | DR16=D IMM3=B | XNZVC | 4 4 0; // addq.l data3,Dn // ADDX.B 1101 DDD1 0000 1SSS | ADDXB | AR_DM8=D AR_DM8=S | | | 19 19 0; // addx.b -(sAn),-(dAn) 1101 DDD1 0000 0SSS | ADDXB | DR8=D DR8=S | XNZVC | X | 4 4 0; // addx.b sDn,dDn // ADDX.L 1101 DDD1 1000 1SSS | ADDXL | AR_DM32=D AR_DM32=S | | | 32 32 0; // addx.l -(sAn),-(dAn) 1101 DDD1 1000 0SSS | ADDXL | DR32=D DR32=S | XNZVC | X | 8 8 0; // addx.l sDn,dDn // ADDX.W 1101 DDD1 0100 1SSS | ADDXL | AR_DM16=D AR_DM16=S | | | 19 19 0; // addx.l -(sAn),-(dAn) 1101 DDD1 0100 0SSS | ADDXL | DR16=D DR16=S | XNZVC | X | 4 4 0; // addx.l sDn,dDn --ELM962952273-21400-0_-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 00:07:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA13496 for dynarec-outgoing; Fri, 7 Jul 2000 00:07:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007070713.JAA26217@pons.ac.upc.es> Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bc4dbee9b86_mailit@mail.dynarec.com> "from M.I.K.e at Jul 6, 2000 11:16:17 pm" To: dynarec@dynarec.com Date: Fri, 7 Jul 2000 09:13:36 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Your addressing modes, meaning each variant of every operand, will have to > >be listed separately. There is *NO* way to expand a single instruction > >into 10 different covers based on a list. Alex and I looked for a nice & > >easy way to do it, and no matter what we came up with it was way harder > >than just listing the variants of each instruction. > > Oh yes, then it is really hell of a lot of typing! Victor and Neil, I need > you!!! > Hehe! We should have to share the same "terminology" (operands names) and split the instructions, perhaps alphabetically. For example I could have A-C, you D-N and Neil O-U. Or we will get doing all the same work. ;) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 00:21:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA13515 for dynarec-outgoing; Fri, 7 Jul 2000 00:21:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Example script! Date: Fri, 7 Jul 2000 09:24:11 +0200 Message-ID: <01bfe7e4$58521f80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Now you're getting in to my area of expertise... interpreters/compilers. >;-) Cunningly also one of mine. I may not have done as much as you - but I have written a compiler and I have a very good idea about how *I* would do things - and how they're done. I like my way. ;) >> And your point is? How does that help you create a string when you don't >> know what the length will be beforehand? For instance, you may need someone >> to input a line. You can either use a pointer - or you can limit the length >> of the character array. That's poor. Dynamic string handling is good - but >> can't be done in C. > >You do what any other language that handles strings does - deallocate your >current string, figure out what the combined length of the two is, and >reallocate a bigger block. This is *EXACTLY* what BASIC or any other >language with built in string types does! Yes, but the other languages do it all for you (hide it from the user). That's the point. >> > And if you think that it was added as an afterhtought, you're greener than >> > I had imagined. ;-) All one must do is look backward at Pascal. >> There's no doubt about it, it WAS added as an afterthought. Just call me >> "The Incredible Hulk" from now on. ;)) > >No, it wasn't added as an afterthought. There was nothing "added". It was >never part of the language to begin with! Okay... If it wasn't there to start with - but it's there now then it *has* been added! Nyah! ;p >The problem with having a built >in string type is that it requires there be a library that go along with >with every piece of code written for that language. That, and consider >that a string is not a basic type to a computer. Strings are arrays of >chars at the basic level, which is exactly where C puts it. I know they're not a basic type. But the fact is that when I'm handling strings that I'd much rather not have to do everything manually. I had all sorts of problems when writing CGI in C. I eventually swapped to C++ and used a string class which did everything I needed it to. >The point is that string handling is an application specific thing. In >most cases one can predict how big strings are going to be and allocate >them as needed. More to the point, it's important that a piece of code >proactively use a string int he way most optimal rather than relying on a >general purpose string heap. Yes, but the language CAN use a string in the most optimal way - and still hide it from the user. How about when you create one string (using pointers) and then try to re-use it? It's stuck at that length. That's not great. That sucks. Yes, I know why it acts like that - but that's because string handling was added on as an afterthought. >> And at least Pascal (I can't believe I'm defending it!) actually has a >> string type. And can dynamically handle strings. > >No, it can't. Yes it can. How do you think it can't? If I was to declare temp : string; Then I can say in the code: temp="Poo!"; And later on I can say: temp="Who's a pretty boy then?"; And it'll work. Because it can dynamically handle strings. Although I must point out that I actually hate Pascal now. I merely disliked it before I used Delphi for my project last year. I now hate it with a passion. :) I see what you're saying but nothing will change the fact that string handling is comparitively poor in C than in other languages. I'm used to it now - but I don't have to like it. While you can still handle strings in C, it's poor for CGI handling - it does make life more difficult. Nothing can change that! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 00:26:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA13528 for dynarec-outgoing; Fri, 7 Jul 2000 00:26:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007070733.JAA22858@pons.ac.upc.es> Subject: Re: DYNAREC: Example script! In-Reply-To: <01bfe7e4$58521f80$35901a17@turkey> "from Neil Griffiths at Jul 7, 2000 09:24:11 am" To: dynarec@dynarec.com Date: Fri, 7 Jul 2000 09:33:01 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> And your point is? How does that help you create a string when you don't > >> know what the length will be beforehand? For instance, you may need > someone > >> to input a line. You can either use a pointer - or you can limit the > length > >> of the character array. That's poor. Dynamic string handling is good - > but > >> can't be done in C. > > > >You do what any other language that handles strings does - deallocate your > >current string, figure out what the combined length of the two is, and > >reallocate a bigger block. This is *EXACTLY* what BASIC or any other > >language with built in string types does! > > > Yes, but the other languages do it all for you (hide it from the user). > That's the point. > I vote for code the scripts in asm so we will have to manage strings as absolutely raw data. ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 00:27:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA13538 for dynarec-outgoing; Fri, 7 Jul 2000 00:27:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Example script! Date: Fri, 7 Jul 2000 09:27:47 +0200 Message-ID: <01bfe7e4$d9111b80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> One can say that. One did! Okay, without using a pointer, please create a >> string that you don't know the length of beforehand. Oh yes - you can't! > >std::string. _You_ don't use a pointer, the std::string implementation >does! Okay, but I was really thinking more specifically about C. C++ makes it better but it's still not perfect. >What does trouble you ? Just the fact that std::string is not a >primitive type such as int, float ? A little bit, maybe. It's more that if I create a char * pointer when I create a string, I need to free the pointer to use it again - otherwise I'll be stuck using the length of the previous string. I can either have lots of char pointers - or I can keep freeing it. I just find that a really nasty way of doing things. As I say, C++ makes it better - but it still isn't perfect. I'm trying to think exactly what problems I came across so you can see exactly why I hate it - but I think I'm making my point clear anyway! I hope I am anyway. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 00:27:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA13547 for dynarec-outgoing; Fri, 7 Jul 2000 00:27:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Example script! Date: Fri, 7 Jul 2000 09:30:09 +0200 Message-ID: <01bfe7e5$2db49680$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >* The definition files are parsed during compile time not runtime! So what? Eh? Nothing to do with me. I haven't seen that yet. >* If you think that language X handles the whole thing faster than Neil's >approach with C, then write a much faster version to impress us! I doubt that >this works because most language parsers are written in C just because you >don't work with strlen() and the C approach is much faster for the other >stuff! No-one has said anything about speed either. I complained about the way they're handled because it's quite poor. >* Note, if you should be able to come up with a faster solution in a >different language that should run on BeOS as well of course! ;-) I've got my own solution which will almost certainly beat VC++ in a console app. Because it's a console app. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 00:30:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA13559 for dynarec-outgoing; Fri, 7 Jul 2000 00:30:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Example script! Date: Fri, 7 Jul 2000 09:32:42 +0200 Message-ID: <01bfe7e5$88e68900$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> Oh yes, then it is really hell of a lot of typing! Victor and Neil, I need >> you!!! >> >Hehe! We should have to share the same "terminology" (operands names) and >split the instructions, perhaps alphabetically. For example I could >have A-C, you D-N and Neil O-U. Or we will get doing all the same work. ;) That seems okay with me. But if I go to the 68k manual across the room and find out that there's only 3 instructions starting with A-C but 200 O-U then I'm going to come to Spain and hit you. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 00:35:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA13573 for dynarec-outgoing; Fri, 7 Jul 2000 00:35:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007070741.JAA23985@pons.ac.upc.es> Subject: Re: DYNAREC: Example script! In-Reply-To: <01bfe7e5$88e68900$35901a17@turkey> "from Neil Griffiths at Jul 7, 2000 09:32:42 am" To: dynarec@dynarec.com Date: Fri, 7 Jul 2000 09:41:17 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > >> Oh yes, then it is really hell of a lot of typing! Victor and Neil, I > need > >> you!!! > >> > >Hehe! We should have to share the same "terminology" (operands names) and > >split the instructions, perhaps alphabetically. For example I could > >have A-C, you D-N and Neil O-U. Or we will get doing all the same work. ;) > > That seems okay with me. But if I go to the 68k manual across the room and > find out that there's only 3 instructions starting with A-C but 200 O-U then > I'm going to come to Spain and hit you. ;) > I have selected this as an example but in my ISA doc A-C are 2.5 pages and so on D-N and O-U. It isn't a matter of instructions names but instruction cases. > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 00:55:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA13599 for dynarec-outgoing; Fri, 7 Jul 2000 00:55:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Jul 2000 01:05:26 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <01bfe7e4$58521f80$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Now you're getting in to my area of expertise... interpreters/compilers. > >;-) > Cunningly also one of mine. I may not have done as much as you - but I have > written a compiler and I have a very good idea about how *I* would do > things - and how they're done. I like my way. ;) It's one thing to want a language to have some features built in but it's entirely another thing to call it "poor" when there isn't a ton of convenience built in for you. C Has all the basic tools needed to do string handling - tools that your favorite "high level" language use to accomplish string handling. And saying it's an "afterthought" is just stupid, man! String handling was purposely left out of the language because C was designed to be runnable with *NO* additional libraries. Any high level function like string handling will require you link in whatever libraries do the low level handling that you're glossing over. ;-) > >You do what any other language that handles strings does - deallocate your > >current string, figure out what the combined length of the two is, and > >reallocate a bigger block. This is *EXACTLY* what BASIC or any other > >language with built in string types does! > Yes, but the other languages do it all for you (hide it from the user). > That's the point. Yes, that point *SUCKS*. I don't want a general purpose string manager managing my strings for me. I want to manage them myself. I know how they're going to be accessed and can write a much better (faster) performing string handler than the default one coming with the compiler. C Gives me those tools. Other higher level languages don't give me a choice. > >No, it wasn't added as an afterthought. There was nothing "added". It was > >never part of the language to begin with! > Okay... If it wasn't there to start with - but it's there now then it *has* > been added! Nyah! ;p The same argument can be made for printf, scanf, fread, fwrite, etc... and it's a pointless argument, Neil. So now I can whine that "Gee, file handling in C *SUCKS* because it was an *AFTERTHOUGHT*!" because any library that was added to the base language is an afterthought in C. > I know they're not a basic type. But the fact is that when I'm handling > strings that I'd much rather not have to do everything manually. I had all > sorts of problems when writing CGI in C. I eventually swapped to C++ and > used a string class which did everything I needed it to. Which means you didn't gather the basic discipline required for the tool, you got frustrated with it and went to something else. That's taking the easy (lazy) way out of it. > >them as needed. More to the point, it's important that a piece of code > >proactively use a string int he way most optimal rather than relying on a > >general purpose string heap. > Yes, but the language CAN use a string in the most optimal way - and still > hide it from the user. No, it can't possibly know how string variables are going to be used. That's why having it in the tools available to you is an advantage, not a detriment. > How about when you create one string (using pointers) > and then try to re-use it? It's stuck at that length. That's not great. That > sucks. Yes, I know why it acts like that - but that's because string > handling was added on as an afterthought. You're really sounding ignorant, Neil. It was not an afterthought, and you should probably take in to consideration that everyone here who is disagreeing with you. With this line of thinking, I can also say that C++ added string handling for the people who are too stupid or lazy to learn how to do it manually. > >> And at least Pascal (I can't believe I'm defending it!) actually has a > >> string type. And can dynamically handle strings. > >No, it can't. > Yes it can. How do you think it can't? If I was to declare > temp : string; Depends upon *WHICH* variant of Pascal. All that I used in school required them to be an array of char. And those that did handle strings just defined the first byte to be the length, and a static 255 byte buffer for each string created. Not exactly a good way of doing it. > Then I can say in the code: > temp="Poo!"; > And later on I can say: > temp="Who's a pretty boy then?"; Big whoop: UINT8 *pbString; pbString = "Poo!"; pbString = "Who's a pretty boy then?"; > I see what you're saying but nothing will change the fact that string > handling is comparitively poor in C than in other languages. I'm used to it > now - but I don't have to like it. While you can still handle strings in C, > it's poor for CGI handling - it does make life more difficult. Nothing can > change that! Funny, in all the CGI coding I ever did, the string handling was never an issue or a problem with me. You're welcome to say that C handles strings at a much lower level, but "poor" is a relative term which is not applicable here. "Java gives poor performance for video game emulation" Is a proper use of the word poor. You're just using the word "poor" to make something sound far worse than it is. Come on man, you're smarter than that. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 01:02:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA13619 for dynarec-outgoing; Fri, 7 Jul 2000 01:02:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Jul 2000 01:12:50 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <200007070644.IAA30897@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > How could I handle the different address modes in 68K? You will have to list each addressing mode of each variant of instruction separately. It's either that or we'd have to implement some pretty serious (and not straightforward) script parsing. Alex and I decided to avoid that because we'd be stuck on it for quite some time. > How could I describe d8(An,I)? With three operands? What exactly does this addressing mode do? > Something like AR_MDI8 / AR_MDI16 / AR_MD32 and IREG16 / IREG32 perhaps? > AR_MDIxx would mean something like "indexed register indirect for xx bits" > and IREGxx will mean "xx bit sign extended index register". I don't think it'll matter. The actual opcode cover will handle the gorey details. Of course, for the disassembler, that's another story. I'll wait for Alex to figure that one out because he has his head around the disassembler (and I don't). > In the descriptions I have changed the order of the operands to Intel > order. Can I do that or I should have to write them in the same order > that the 68K assembly standard (source, target). NO! Just order them the way they'd appear in the source system's memory! The endianness will be taken care of in the code that actually reads and translates it. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 01:08:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA13633 for dynarec-outgoing; Fri, 7 Jul 2000 01:08:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Jul 2000 01:18:27 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <01bfe7e4$d9111b80$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > A little bit, maybe. It's more that if I create a char * pointer when I > create a string, I need to free the pointer to use it again - otherwise I'll > be stuck using the length of the previous string. I can either have lots of > char pointers - or I can keep freeing it. I just find that a really nasty > way of doing things. It's a lower level way of doing things. So if you want to make a new string in the place of the old: char *MakeNewString(char *oldstring, char *newValue) { char *newString; if (strlen(oldstring) >= strlen(newValue)) { strcpy(oldstring, newValue); return(oldstring); } free(oldstring); newString = malloc(strlen(newValue) + 1); strcpy(newString, newValue); return(newString); } Now you've got that in your library. ;-) This is *EXACTLY* what any high level language does. > As I say, C++ makes it better - but it still isn't perfect. I'm trying to > think exactly what problems I came across so you can see exactly why I hate > it - but I think I'm making my point clear anyway! I hope I am anyway. :) I see your point. You don't like to have to deal with the low level aspects of string handling. But that doesn't make it "poor". If it lacked an ability, either by aggregation or explicitly, to handle strings it could be construed as such, but you can accomplish any amount of string handling in C that you can in any other language - in some cases far better because you have the granular flexilbility. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 01:24:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA13652 for dynarec-outgoing; Fri, 7 Jul 2000 01:24:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Jul 2000 01:34:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Does anyone... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ...see the need for me to make wrapper functions for fopen, fclose, fgetc, etc...? I needed it for Retrocade when doing some file I/O under Windows CE, but I'm not certain that it'd be needed here. Comments before I go too far? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 01:44:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA13678 for dynarec-outgoing; Fri, 7 Jul 2000 01:44:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Jul 2000 01:54:35 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Status Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com The lexer's string table manager is working and is qutie fast. We can easily expand it to a larger hash size if needed. The code will adjust. Even Neil G would like it! ;-) Next up is the lexical analyzer itself (which uses the snot out of the string table manager). I'm off the project tomorrow, but I'll be back on it on Saturday. Keep the discussions (hopefully on dynarec and not on string handling coming!) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 01:51:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA13694 for dynarec-outgoing; Fri, 7 Jul 2000 01:51:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Example script! Date: Fri, 7 Jul 2000 10:54:23 +0200 Message-ID: <01bfe7f0$f21fc980$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >And saying it's an "afterthought" is just stupid, man! String handling was >purposely left out of the language because C was designed to be runnable >with *NO* additional libraries. Any high level function like string >handling will require you link in whatever libraries do the low level >handling that you're glossing over. ;-) Hmm. I'm going to give this one up right now because now I'm thinking that I can't win this argument. Pascal, Java, Ada and all the other high-level languages are the same. You have to include libraries to do it. Heh, but at least STRING is a recognised type in Pascal and Ada. ;) >> Yes, but the other languages do it all for you (hide it from the user). >> That's the point. > >Yes, that point *SUCKS*. I don't want a general purpose string manager >managing my strings for me. I want to manage them myself. I know how >they're going to be accessed and can write a much better (faster) >performing string handler than the default one coming with the compiler. C >Gives me those tools. Other higher level languages don't give me a choice. Okay, but when I had to do a lot of string handling (CGI), I also had a strict time limit. I couldn't afford the time to write a string manager. I needed to be able to concentrate on actually writing the thing - and that's why I really don't like it. >> Okay... If it wasn't there to start with - but it's there now then it *has* >> been added! Nyah! ;p > >The same argument can be made for printf, scanf, fread, fwrite, etc... and >it's a pointless argument, Neil. So now I can whine that "Gee, file >handling in C *SUCKS* because it was an *AFTERTHOUGHT*!" because any >library that was added to the base language is an afterthought in C. You're right - the same can be said for the others. But at least with those I didn't have to write my own functions to handle the strings. C is a great language - but sometimes you just need to get something done quickly. And yes, any library would be an afterthought. And the same is true for most high-level languages. So I'm giving up. But I still don't like it. ;) >Which means you didn't gather the basic discipline required for the tool, >you got frustrated with it and went to something else. That's taking the >easy (lazy) way out of it. No, that's taking the bloody quick(tm) way out. Tight timeline! >> Yes, but the language CAN use a string in the most optimal way - and still >> hide it from the user. > >No, it can't possibly know how string variables are going to be used. >That's why having it in the tools available to you is an advantage, not a >detriment. Yes, but there's nothing to stop you from doing that in other languages too! >You're really sounding ignorant, Neil. It was not an afterthought, and you >should probably take in to consideration that everyone here who is >disagreeing with you. With this line of thinking, I can also say that C++ >added string handling for the people who are too stupid or lazy to learn >how to do it manually. My point was that the string handling wasn't good. Seeing as you've written your own string handling routines, you must agree with me. We went off at some tangent somewhere along the way but the fact remains that it isn't always easy to do. Admittedly I don't mind it so much when I've actually got time - but when time is an issue then I hate it. Especially when time is more of an issue than speed. Speed is important - but sometimes it's not the #1 priority. And yes, C++ added string handling for the people who are too stupid or lazy to learn how to do it manually. Or those with a tight deadline. :) >> Yes it can. How do you think it can't? If I was to declare >> temp : string; > >Depends upon *WHICH* variant of Pascal. All that I used in school required >them to be an array of char. And those that did handle strings just >defined the first byte to be the length, and a static 255 byte buffer for >each string created. Not exactly a good way of doing it. No, that's quite bad. >> Then I can say in the code: >> temp="Poo!"; >> And later on I can say: >> temp="Who's a pretty boy then?"; > >Big whoop: > > UINT8 *pbString; > > pbString = "Poo!"; > pbString = "Who's a pretty boy then?"; Okay, but I did say earlier "without using pointers". You can't (can you?!), for instance, use a pointer with scanf(). So you have to use: char tempString[]; scanf(&tempString); Damn. You probably can use a pointer because the & tells me it's taking an address. Damn. Okay, if I'm right now then I'm going to stop arguing. :) >Funny, in all the CGI coding I ever did, the string handling was never an >issue or a problem with me. You're welcome to say that C handles strings >at a much lower level, but "poor" is a relative term which is not >applicable here. "Java gives poor performance for video game emulation" Is >a proper use of the word poor. You're just using the word "poor" to make >something sound far worse than it is. Come on man, you're smarter than >that. I had to do lots of parsing and I didn't find that simple in C. Yes, I could have written the functions - but I didn't have time! That really was the issue. I guess I've got a hatred of C's string handling from then. The fact that I couldn't do whatever it was I wanted to do (I've forgotten!) annoyed me because I was under a strict time schedule. So okay, C string handling isn't poor. I just don't like it. Reasonably or not - though I think anybody under the same duress as me at that time would feel the same! :) BTW, I didn't even use the string class provided with C++ - I used somebodies custom-written class called "CString" - I can remember that much! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 01:57:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA13707 for dynarec-outgoing; Fri, 7 Jul 2000 01:57:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Does anyone... Date: Fri, 7 Jul 2000 10:55:36 +0200 Message-ID: <01bfe7f1$1e3b4a80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >...see the need for me to make wrapper functions for fopen, fclose, fgetc, >etc...? I needed it for Retrocade when doing some file I/O under Windows >CE, but I'm not certain that it'd be needed here. Yeah, because it's not part of the langauge and was just an afterthought... ;) Joke! It's a joke! No, I have no need for it. Anybody else? >Comments before I go too far? How's Food Fight coming along? Are the graphics displaying okay yet? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 02:00:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA13874 for dynarec-outgoing; Fri, 7 Jul 2000 01:59:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036bce6183b1b9_mailit@mail.dynarec.com> References: Date: Fri, 07 Jul 2000 10:37:53 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [signed - unsigned values] >Right. I think that that's in the works and we can sort that out >later. Alex has ideas in this department. Good, because we'll need that for more architectures. [PC relative addressing] >Yep. There's a way to do that, Well, then I only have to find out how it works... >though I can't remember what it is off the top of my head. Maybe you need a memory upgarde? ;-) >> Another problem is noticed is that DBcc has *3* different timings for one >> addressing mode: >Just put the first two in, and when the cover is coded, that's where the >brains goes that figures out which is correct. I'll do that. What I still need is something like: ... |MOVE|DREG=S DREG=D|NZV=0C=0|... To show that V and C are always cleared. Also is it allowed to have some format output in the operand field? Eg.: |MOVEQ|#IMM4=I, DREG=D| To produce the following output: MOVEQ #100, D0 This would also be handy to copy with: MOVE #10, 20(PC, A4) >-->Neil -- M.I.K.e The fortune program is supported, in part, by user contributions and by a major grant from the National Endowment for the Inanities. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 02:00:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA13888 for dynarec-outgoing; Fri, 7 Jul 2000 02:00:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036bce70d6725c_mailit@mail.dynarec.com> References: Date: Fri, 07 Jul 2000 10:42:10 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> How could I describe d8(An,I)? With three operands? >What exactly does this addressing mode do? effective address = d8 + An + Rn >> In the descriptions I have changed the order of the operands to Intel >> order. Can I do that or I should have to write them in the same order >> that the 68K assembly standard (source, target). >NO! Just order them the way they'd appear in the source system's >memory! The endianness will be taken care of in the code that actually >reads and translates it. I think he doesn't mean endianness (like I did), but operand order, as in: MOVEQ #42, D7 opposed to: MOV EAX, 42 I'd recommend that we stick to the defined 68K operand order since otherwise at least I will get very confused... >-->Neil -- M.I.K.e "His super power is to turn into a scotch terrier." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 02:00:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA13892 for dynarec-outgoing; Fri, 7 Jul 2000 02:00:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: <200007070644.IAA30897@pons.ac.upc.es> Message-ID: <00036bce9e82b541_mailit@mail.dynarec.com> References: <200007070644.IAA30897@pons.ac.upc.es> Date: Fri, 07 Jul 2000 10:54:56 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >How could I handle the different address modes in 68K? I wanted to do something tricky as well but then Neil told me that we'll have to handle all addressing modes separately... >68K address modes: >Addressing Mode | Mode/Register | [EXT] | Additional Clock Cycles >(An) | 010rrr | ---------- | 0 I think you did a lot of additional work not used in the definition file... >How could I describe d8(An,I)? With three operands? Write down the whole instruction encoding. I hope that we can write something like this: |MOVE|#IMM8=I, DISP8=D(AREG=A, REG=R)| >In the descriptions I have changed the order of the operands to Intel >order. Can I do that or I should have to write them in the same order >that the 68K assembly standard (source, target). I'd still with the normal 68K order source->destination, since otherwise I'll get very confused and you might as well... >// register Dn 8 bits >DR8 { 3, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7} }; >// register Dn 16 bits >DR16 { 3, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7} }; >// register Dn 32 bits >DR32 { 3, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7} }; You only need the registers once because the widthh is handeled by the addressing mode and unlike the x86 you don't have a name difference like AL, AX, EAX... >// register An/Dn 32 bits >REG32 { 4, keys = {D0=0x0, D1=0x1, D2=0x2, D3=0x3, D4=0x4, D5=0x5, D6=0x6, > D7=0x7, A0=0x8, A1=0x9, A2=0xA, A3=0xB, A4=0xC, A5=0xD, A6=0xE, > A7=0xF} }; I'm still not sure if we need such a combination of both register types or not... >IMM3 { 3, numeric }; // immediate data 3 bits If you take a look at my prior postings you'll see that this type is slightly problematic because 0 is interpreted as 8... You also forgot: IMM4 {4, numeric}; Used in MOVEQ eg. >IMM8 { 8, numeric }; // immediate data 8 bits >IMM16 { 16, numeric}; // immediate data 16 bits >IMM32 { 32, numeric}; // immediate data 32 bits >// register An 16 bits >AR16 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; Adress registers are always addressed with their full 32 bit width. >// -(An) 32 bits >AR_PDM32 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; We'll have to handle such things in separate opcodes so only the standard AREG list is needed. Here is my list: // CPU description file for "68K" // M.I.K.e 2000-07-07 [cpuinfo] Name = 68K; InstructionGranularity = 16; [operands] DREG { 3, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7} }; AREG { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, SP=7} }; CC { 4, keys = {T=0, F=1, HI=2, LS=3, CC=4, CS=5, NE=6, EQ=7, VC=8, VS=9, PL=10, MI=11, GE=12, LT=13, GT=14, LE=15} }; IMM8 { 8, numeric}; IMM16 {16, numeric}; IMM32 {32, numeric}; IMM4 { 4, numeric}; IMM3 { 3, numeric}; [flags] C = { 0x0001, "carry" }; V = { 0x0002, "overflow" }; Z = { 0x0004, "zero" }; N = { 0x0008, "negative" }; X = { 0x0010, "extend" }; [instructions] // 0000 Bit Manipulation/MOVEP/Immediate // 0001 Move Byte // 0010 Move Long // 0011 Move Word // 0100 Miscellaneous 0100111001110001 |NOP||||4 4 0; 0100101011111100 |ILLEGAL||||34 34 1; 0100111001110000 |RESET||||132 132 0; 0100111001110011 |RTE||CVZNX||20 20 1; 0100111001110111 |RTR||CVZNX||20 20 1; 0100111001110101 |RTS||||16 16 1; 0100111001110010 (16xI) |STOP|IMM16=I|CVZNX||4 4 1; 010011100100VVVV |TRAP|IMM4=V||CVZNX|38 38 1; 0100111001110110 |TRAPV|||CVZNX|34 4 1; 0100111001010AAA |LINK|AREG=A|||18 18 0; 0100111001011AAA |UNLK|AREG=A|||12 12 0; 0100100001000DDD |SWAP|DREG=D|NZVC||4 4 0; // 0101 ADDQ/SUBQ/Scc/DBcc // 0110 Bcc/BSR // 0111 MOVEQ 0111DDD0IIIIIIII |MOVEQ|IMM8=I|NZVC||4 4 0; // 1000 OR/DIV/SBCD // 1001 SUB/SUBX // 1010 (Line-A) // 1011 CMP/EOR // 1100 AND/MUL/ABCD/EXG // 1101 ADD/ADDX // 1110 Shift/Rotate // 1111 (Line-F) // EOF -- M.I.K.e A public debt is a kind of anchor in the storm; but if the anchor be too heavy for the vessel, she will be sunk by that very weight which was intended for her preservation. -- Colton --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 02:00:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA13899 for dynarec-outgoing; Fri, 7 Jul 2000 02:00:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: <200007070741.JAA23985@pons.ac.upc.es> Message-ID: <00036bceb0a25c3d_mailit@mail.dynarec.com> References: <200007070741.JAA23985@pons.ac.upc.es> Date: Fri, 07 Jul 2000 11:00:00 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> >Hehe! We should have to share the same "terminology" (operands names) and >> >split the instructions, perhaps alphabetically. For example I could >> >have A-C, you D-N and Neil O-U. Or we will get doing all the same work. >> That seems okay with me. But if I go to the 68k manual across the room and >> find out that there's only 3 instructions starting with A-C but 200 O-U >>then I'm going to come to Spain and hit you. ;) >I have selected this as an example but in my ISA doc A-C are 2.5 pages and >so on D-N and O-U. It isn't a matter of instructions names but instruction >cases. Well, we also have to take into account that we have to handle all addressing modes separately. Due to this there are 96 (12*8) different opcodes for each MOVE (move.b, move.w, move.l)! >Victor -- M.I.K.e "If once a man indulges himself in murder, very soon he comes to think little of robbing; and from robbing he next comes to drinking and Sabbath-breaking, and from that to incivility and procrastination." -- Thomas De Quincey (1785 - 1859) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 02:03:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA13913 for dynarec-outgoing; Fri, 7 Jul 2000 02:03:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007070909.LAA29119@pons.ac.upc.es> Subject: Re: DYNAREC: Example script! In-Reply-To: "from Neil Bradley at Jul 7, 2000 01:12:50 am" To: dynarec@dynarec.com Date: Fri, 7 Jul 2000 11:09:22 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > What exactly does this addressing mode do? > (An+Reg+d8) => a base register An, an index register which could be 16 sign extended or 32 bit, and a 8 bit signed displacement. > > In the descriptions I have changed the order of the operands to Intel > > order. Can I do that or I should have to write them in the same order > > that the 68K assembly standard (source, target). > > NO! Just order them the way they'd appear in the source system's > memory! The endianness will be taken care of in the code that actually > reads and translates it. > No I don't mean the order of the data but the order in the description. For example XXXX XXXX ..... | MOV | MEM DN | ...... // mov mem,dn (mem->Dn) or (the same instruction) XXXX XXXX ..... | MOV | DN MEM | ...... // mov mem,d (mem->Dn) Another problem I can see. If we will byteswap the memory for 68K emulation the description masks should be byteswaped or not? For example change (in the ISA definition) AAAA AAAA BBBB BBBB | .................. with BBBB BBBB AAAA AAAA | ................... > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 02:09:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA13926 for dynarec-outgoing; Fri, 7 Jul 2000 02:09:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Status Date: Fri, 7 Jul 2000 11:13:37 +0200 Message-ID: <01bfe7f3$a1f63680$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >The lexer's string table manager is working and is qutie fast. We can >easily expand it to a larger hash size if needed. The code will adjust. >Even Neil G would like it! ;-) Next up is the lexical analyzer itself >(which uses the snot out of the string table manager). Ooh! String handling in C which is fast! Gosh! ;)) >I'm off the project tomorrow, but I'll be back on it on Saturday. Keep the >discussions (hopefully on dynarec and not on string handling coming!) Damn, you're no fun anymore... ;) I'm thinking that I may do a little work on the website this weekend. Any ideas as to what I should add? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 02:18:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA13942 for dynarec-outgoing; Fri, 7 Jul 2000 02:18:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007070922.LAA12075@pons.ac.upc.es> Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bce9e82b541_mailit@mail.dynarec.com> "from M.I.K.e at Jul 7, 2000 10:54:56 am" To: dynarec@dynarec.com Date: Fri, 7 Jul 2000 11:22:44 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >How could I handle the different address modes in 68K? > > I wanted to do something tricky as well but then Neil told me that we'll have > to handle all addressing modes separately... > > >68K address modes: > >Addressing Mode | Mode/Register | [EXT] | Additional Clock Cycles > >(An) | 010rrr | ---------- | 0 > > I think you did a lot of additional work not used in the definition file... > This is only two show everyone the 68k addressing modes. > >How could I describe d8(An,I)? With three operands? > > Write down the whole instruction encoding. I hope that we can write something > like this: > |MOVE|#IMM8=I, DISP8=D(AREG=A, REG=R)| > Seems good. Let's see what says Neil or Alex. > >In the descriptions I have changed the order of the operands to Intel > >order. Can I do that or I should have to write them in the same order > >that the 68K assembly standard (source, target). > > I'd still with the normal 68K order source->destination, since otherwise I'll > get very confused and you might as well... > Perhaps. But I like more Intel dest <- source. > >// register Dn 8 bits > >DR8 { 3, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7} }; > >// register Dn 16 bits > >DR16 { 3, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7} }; > >// register Dn 32 bits > >DR32 { 3, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7} }; > > You only need the registers once because the widthh is handeled by the > addressing mode and unlike the x86 you don't have a name difference like AL, > AX, EAX... > But they can be accessed in three sizes ... > >// register An/Dn 32 bits > >REG32 { 4, keys = {D0=0x0, D1=0x1, D2=0x2, D3=0x3, D4=0x4, D5=0x5, D6=0x6, > > D7=0x7, A0=0x8, A1=0x9, A2=0xA, A3=0xB, A4=0xC, A5=0xD, A6=0xE, > > A7=0xF} }; > > I'm still not sure if we need such a combination of both register types or > not... > This happens because sometimes in my ISA definition the bit description for register is "trrr", where "t" means Data (0) or Address (1). But usually they explicataly sepparate them in two different opcode formats: 0ddd and 1ddd. It isn't important just to not duplicate too much definitions. > >IMM3 { 3, numeric }; // immediate data 3 bits > > If you take a look at my prior postings you'll see that this type is slightly > problematic because 0 is interpreted as 8... > This will be solved later I think. > You also forgot: > IMM4 {4, numeric}; > Used in MOVEQ eg. > I haven't scanned yet all the 68k ISA I just wrote the ones I found. > >IMM8 { 8, numeric }; // immediate data 8 bits > >IMM16 { 16, numeric}; // immediate data 16 bits > >IMM32 { 32, numeric}; // immediate data 32 bits > > >// register An 16 bits > >AR16 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; > > Adress registers are always addressed with their full 32 bit width. > I think you are wrong: ADD.W xx,An. > >// -(An) 32 bits > >AR_PDM32 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; > > We'll have to handle such things in separate opcodes so only the standard > AREG list is needed. > But I think we have to tell the script what kind of operand is using, just take a look at the example Neil posted. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 02:28:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA13959 for dynarec-outgoing; Fri, 7 Jul 2000 02:28:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: 68K definition From: "M.I.K.e" Message-ID: <00036bcf361f1c65_mailit@mail.dynarec.com> Date: Fri, 07 Jul 2000 11:37:20 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Oops, I made an error in my 68K definition file and forgot the immediate operand for LINK... While speaking about immediates: I think all rename all types to ABSn and RELn to make a difference between absolute (unsigned) and relative (signed) addressing that I only have to change the "numeric" to whatever Alex comes up with. I'll be using these definitions for immediates and addresses because it's basically only the same data type in different addressing modes. // CPU description file for "68K" // M.I.K.e 2000-07-07 [cpuinfo] Name = 68K; InstructionGranularity = 16; [operands] DREG { 3, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7} }; AREG { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, SP=7} }; CC { 4, keys = {T=0, F=1, HI=2, LS=3, CC=4, CS=5, NE=6, EQ=7, VC=8, VS=9, PL=10, MI=11, GE=12, LT=13, GT=14, LE=15} }; ABS3 { 3, numeric}; ABS4 { 4, numeric}; ABS8 { 8, numeric}; ABS16 {16, numeric}; ABS32 {32, numeric}; REL8 { 8, numeric}; REL16 {16, numeric}; REL32 {32, numeric}; [flags] C = { 0x0001, "carry" }; V = { 0x0002, "overflow" }; Z = { 0x0004, "zero" }; N = { 0x0008, "negative" }; X = { 0x0010, "extend" }; [instructions] // 0000 Bit Manipulation/MOVEP/Immediate // 0001 Move Byte // 0010 Move Long // 0011 Move Word // 0100 Miscellaneous 0100111001110001 |NOP||||4 4 0; // nop 0100101011111100 |ILLEGAL||||34 34 1; // illegal 0100111001110000 |RESET||||132 132 0; // reset 0100111001110011 |RTE||CVZNX||20 20 1; // rte 0100111001110111 |RTR||CVZNX||20 20 1; // rtr 0100111001110101 |RTS||||16 16 1; // rts 0100111001110010 (16xI) |STOP|ABS16=I|CVZNX||4 4 1; // stop #const 010011100100VVVV |TRAP|ABS4=V||CVZNX|38 38 1; // trap #vec 0100111001110110 |TRAPV|||CVZNX|34 4 1; // trapv 0100111001010AAA (16xO) |LINK|AREG=A REL16=O|||18 18 0; // link An, #dist 0100111001011AAA |UNLK|AREG=A|||12 12 0; // unlk An 0100100001000DDD |SWAP|DREG=D|NZVC||4 4 0; // swap Dn // 0101 ADDQ/SUBQ/Scc/DBcc // 0110 Bcc/BSR // 0111 MOVEQ 0111DDD0IIIIIIII |MOVEQ|REL8=I|NZVC||4 4 0; // moveq #signed, Dn // 1000 OR/DIV/SBCD // 1001 SUB/SUBX // 1010 (Line-A) // 1011 CMP/EOR // 1100 AND/MUL/ABCD/EXG // 1101 ADD/ADDX // 1110 Shift/Rotate // 1111 (Line-F) // EOF -- M.I.K.e "I can't complain, but sometimes I still do." -- Joe Walsh --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 02:49:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA13986 for dynarec-outgoing; Fri, 7 Jul 2000 02:49:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: <200007070922.LAA12075@pons.ac.upc.es> Message-ID: <00036bcf7fa4065f_mailit@mail.dynarec.com> References: <200007070922.LAA12075@pons.ac.upc.es> Date: Fri, 07 Jul 2000 11:57:53 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> I'd still with the normal 68K order source->destination, since otherwise >>I'll get very confused and you might as well... >Perhaps. But I like more Intel dest <- source. I know, but just like the GCC output confuses us it will be a bit wierd to have "moveq D0, #7" in the disassembler and "moveq #7, D0" in *all* books and references! >> You only need the registers once because the width is handeled by the >> addressing mode and unlike the x86 you don't have a name difference like >>AL, AX, EAX... >But they can be accessed in three sizes ... True, but that's handled in the opcode and you don't have any difference in register naming: 0x2F3C0007 : move.l #7, -(SP) 0x3F3C0007 : move.w #7, -(SP) BTW, the SP/A7 is 32 bit in both operations. This is mainly to how large the values are but not with which part of the register we are working. >This happens because sometimes in my ISA definition the bit description >for register is "trrr", where "t" means Data (0) or Address (1). But >usually they explicataly sepparate them in two different opcode formats: > 0ddd and 1ddd. It isn't important just to not duplicate too much >definitions. Hmm, I think I saw that occasionally, but eg. ABCD has 1100YYY10000MXXX, where M specifies if both X and Y are either used as Dn or (An)+ ... >This will be solved later I think. Actually Neil said that the 0=8 case should get a special entry. >> You also forgot: >> IMM4 {4, numeric}; >> Used in MOVEQ eg. >I haven't scanned yet all the 68k ISA I just wrote the ones I found. Erm, MOVEQ has an 8 bit immediate, mea culpa... I'm currently not sure for what I defined IMM4, but I'm sure we'll need it. >> Adress registers are always addressed with their full 32 bit width. >I think you are wrong: ADD.W xx,An. Oops, you're right I was wrong... but actually it has to be ADDA.W xx, An ;-) But that still only specifies the width of the operation and not of the register. For x86 it's essential to make a difference because the registers are named differently (AL, AX, EAX), but since the name is the same for 68K we can use just one definition. >> >// -(An) 32 bits >> >AR_PDM32 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; >> We'll have to handle such things in separate opcodes so only the standard >> AREG list is needed. >But I think we have to tell the script what kind of operand is using, just >take a look at the example Neil posted. Hmm, I wonder how that works for "d16(PC, Rn)" then! That approach isn't possible for 68K I guess. >Victor -- M.I.K.e It's not an optical illusion, it just looks like one. -- Phil White --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 03:31:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA14037 for dynarec-outgoing; Fri, 7 Jul 2000 03:31:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: <00036bcf7fa4065f_mailit@mail.dynarec.com> Message-ID: <00036bd0109da77d_mailit@mail.dynarec.com> References: <200007070922.LAA12075@pons.ac.upc.es> <00036bcf7fa4065f_mailit@mail.dynarec.com> Date: Fri, 07 Jul 2000 12:38:26 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >0x2F3C0007 : move.l #7, -(SP) I made an error again :-( It should be this of course: 0x2F3C00000007: move.l #7, -(SP) -- M.I.K.e "This is lemma 1.1. We start a new chapter so the numbers all go back to one." -- Prof. Seager, C&O 351 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 04:43:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA14102 for dynarec-outgoing; Fri, 7 Jul 2000 04:43:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K definition From: "M.I.K.e" In-Reply-To: <00036bcf361f1c65_mailit@mail.dynarec.com> Message-ID: <00036bd11bc4fe11_mailit@mail.dynarec.com> References: <00036bcf361f1c65_mailit@mail.dynarec.com> Date: Fri, 07 Jul 2000 13:53:08 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Yet another update... // CPU description file for "68K" // M.I.K.e 2000-07-07 [cpuinfo] Name = 68K; InstructionGranularity = 16; [operands] DREG { 3, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7} }; AREG { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, SP=7} }; REG { 4, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7, A0=8, A1=9, A2=10, A3=11, A4=12, A5=13, A6=14, SP=15} }; CC { 4, keys = {T=0, F=1, HI=2, LS=3, CC=4, CS=5, NE=6, EQ=7, VC=8, VS=9, PL=10, MI=11, GE=12, LT=13, GT=14, LE=15} }; ABS3 { 3, numeric}; // unsigned 3 bit value ABS4 { 4, numeric}; // unsigned 4 bit value ABS8 { 8, numeric}; // unsigned 8 bit value ABS16 {16, numeric}; // unsigned 16 bit value ABS32 {32, numeric}; // unsigned 32 bit value REL8 { 8, numeric}; // signed 8 bit value REL16 {16, numeric}; // signed 16 bit value REL32 {32, numeric}; // signed 32 bit value OFF8 { 8, numeric, PC+2+X, PC+2+X}; // 8 bit offset OFF16 {16, numeric, PC+2+X, PC+2+X}; // 16 bit offset [flags] C = { 0x0001, "carry" }; V = { 0x0002, "overflow" }; Z = { 0x0004, "zero" }; N = { 0x0008, "negative" }; X = { 0x0010, "extend" }; [instructions] // 0000 Bit Manipulation/MOVEP/Immediate // 0001 Move Byte // 0010 Move Long // 0011 Move Word // 0100 Miscellaneous 0100111001110001 |NOP||||4 4 0; // nop 0100101011111100 |ILLEGAL||||34 34 1; // illegal 0100111001110000 |RESET||||132 132 0; // reset 0100111001110011 |RTE||CVZNX||20 20 1; // rte 0100111001110111 |RTR||CVZNX||20 20 1; // rtr 0100111001110101 |RTS||||16 16 1; // rts 0100111001110010 (16xI) |STOP|ABS16=I|CVZNX||4 4 1; // stop #const 010011100100VVVV |TRAP|ABS4=V||CVZNX|38 38 1; // trap #vec 0100111001110110 |TRAPV|||CVZNX|34 4 1; // trapv 0100111001010AAA (16xO) |LINK|AREG=A REL16=O|||18 18 0; // link An, #dist 0100111001011AAA |UNLK|AREG=A|||12 12 0; // unlk An 0100100001000DDD |SWAP|DREG=D|NZVC||4 4 0; // swap Dn // 0101 ADDQ/SUBQ/Scc/DBcc // 0110 Bcc/BSR 0110000000000000 (16xO) |BRA.L|OFF16=O|||10 10 1; // bra.l offset 01100000OOOOOOOO |BRA.S| OFF8=O|||10 10 1; // bra.s offset 0110000100000000 (16xO) |BSR.L|OFF16=O|||18 18 1; // bsr.l offset 01100001OOOOOOOO |BSR.S| OFF8=O|||18 18 1; // bsr.s offset 0110010000000000 (16xO) |BCC.L|OFF16=O||C|10 12 1; // bcc.l offset 0110010100000000 (16xO) |BCS.L|OFF16=O||C|10 12 1; // bcs.l offset 0110011100000000 (16xO) |BEQ.L|OFF16=O||Z|10 12 1; // beq.l offset 0110110000000000 (16xO) |BGE.L|OFF16=O||NV|10 12 1; // bge.l offset 0110111000000000 (16xO) |BGT.L|OFF16=O||NVZ|10 12 1; // bgt.l offset 0110001000000000 (16xO) |BHI.L|OFF16=O||CZ|10 12 1; // bhi.l offset 0110111100000000 (16xO) |BLE.L|OFF16=O||ZNV|10 12 1; // ble.l offset 0110001100000000 (16xO) |BLS.L|OFF16=O||CZ|10 12 1; // bls.l offset 0110110100000000 (16xO) |BLT.L|OFF16=O||NV|10 12 1; // blt.l offset 0110101100000000 (16xO) |BMI.L|OFF16=O||N|10 12 1; // bmi.l offset 0110011000000000 (16xO) |BNE.L|OFF16=O||Z|10 12 1; // bne.l offset 0110101000000000 (16xO) |BPL.L|OFF16=O||N|10 12 1; // bpl.l offset 0110100000000000 (16xO) |BVC.L|OFF16=O||V|10 12 1; // bvc.l offset 0110100100000000 (16xO) |BVS.L|OFF16=O||V|10 12 1; // bvs.l offset 01100100OOOOOOOO |BCC.S| OFF8=O||C|10 12 1; // bcc.s offset 01100101OOOOOOOO |BCS.S| OFF8=O||C|10 12 1; // bcs.s offset 01100111OOOOOOOO |BEQ.S| OFF8=O||Z|10 12 1; // beq.s offset 01101100OOOOOOOO |BGE.S| OFF8=O||NV|10 12 1; // bge.s offset 01101110OOOOOOOO |BGT.S| OFF8=O||NVZ|10 12 1; // bgt.s offset 01100010OOOOOOOO |BHI.S| OFF8=O||CZ|10 12 1; // bhi.s offset 01101111OOOOOOOO |BLE.S| OFF8=O||ZNV|10 12 1; // ble.s offset 01100011OOOOOOOO |BLS.S| OFF8=O||CZ|10 12 1; // bls.s offset 01101101OOOOOOOO |BLT.S| OFF8=O||NV|10 12 1; // blt.s offset 01101011OOOOOOOO |BMI.S| OFF8=O||N|10 12 1; // bmi.s offset 01100110OOOOOOOO |BNE.S| OFF8=O||Z|10 12 1; // bne.s offset 01101010OOOOOOOO |BPL.S| OFF8=O||N|10 12 1; // bpl.s offset 01101000OOOOOOOO |BVC.S| OFF8=O||V|10 12 1; // bvc.s offset 01101001OOOOOOOO |BVS.S| OFF8=O||V|10 12 1; // bvs.s offset // 0111 MOVEQ 0111DDD0IIIIIIII |MOVEQ|REL8=I|NZVC||4 4 0; // moveq #signed, Dn // 1000 OR/DIV/SBCD // 1001 SUB/SUBX // 1010 (Line-A) // 1011 CMP/EOR // 1100 AND/MUL/ABCD/EXG // 1101 ADD/ADDX // 1110 Shift/Rotate // 1111 (Line-F) // EOF -- M.I.K.e "If that makes any sense to you, you have a big problem." -- C. Durance, Computer Science 234 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 09:35:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA14326 for dynarec-outgoing; Fri, 7 Jul 2000 09:35:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000401bfe832$d23bb380$18358cd4@daves> From: "David Sharp" To: References: <00036bc1d61a4c00_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Example script! Date: Thu, 6 Jul 2000 20:38:12 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well, since I seem to be the RISC freak on the list I can do some of those. > Especially MIPS should be quite straight forward. Yep, I vote for Mike to target MIPS v3! :o) Busy...... Cheers Dave PS: recall - I'm doing a MIPS v3 -> x86 dynarec eventually. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 10:58:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA14408 for dynarec-outgoing; Fri, 7 Jul 2000 10:58:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Jul 2000 11:08:26 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <01bfe7f0$f21fc980$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >with *NO* additional libraries. Any high level function like string > >handling will require you link in whatever libraries do the low level > >handling that you're glossing over. ;-) > Hmm. I'm going to give this one up right now because now I'm thinking that I > can't win this argument. Nope. You can't. ;-) It's clear that you have a personal grudge against the fact that there's no string handling built in to the language, and have elevated it to "poor" instead of "inconvenient". Poor is the wrong word to use. > Pascal, Java, Ada and all the other high-level > languages are the same. You have to include libraries to do it. Heh, but at > least STRING is a recognised type in Pascal and Ada. ;) Depends upon the pascal. Most don't. Borland's might, because they actually did Pascal right. But all that goes out the window when you've got to deal with unicode. > >Yes, that point *SUCKS*. I don't want a general purpose string manager > >managing my strings for me. I want to manage them myself. I know how > Okay, but when I had to do a lot of string handling (CGI), I also had a > strict time limit. I couldn't afford the time to write a string manager. I > needed to be able to concentrate on actually writing the thing - and that's > why I really don't like it. Then it has nothing to do with being "poor", it has to do with it being less convenient than languages that have it built in. > >The same argument can be made for printf, scanf, fread, fwrite, etc... and > >it's a pointless argument, Neil. So now I can whine that "Gee, file > >handling in C *SUCKS* because it was an *AFTERTHOUGHT*!" because any > >library that was added to the base language is an afterthought in C. > You're right - the same can be said for the others. But at least with those > I didn't have to write my own functions to handle the strings. C is a great > language - but sometimes you just need to get something done quickly. Maybe C wasn't the best language to do your project in. ;-) > >No, it can't possibly know how string variables are going to be used. > >That's why having it in the tools available to you is an advantage, not a > >detriment. > Yes, but there's nothing to stop you from doing that in other languages too! But I also don't want to be forced to take "features" that cost me in other ways (such as a linked library). In the embedded world, we flatly don't use C++ at all because it REQUIRES that you link in extra crap in with it. I consider it o be a major advantage that we do NOT have it built in to the C language! > >You're really sounding ignorant, Neil. It was not an afterthought, and you > >should probably take in to consideration that everyone here who is > My point was that the string handling wasn't good. "Good" is a relative term. String handling is just fine in C. It's less convenient, but all the tools are there that you need to do the job are still there. > Seeing as you've written > your own string handling routines, you must agree with me. I agree it's less convenint, but I don't consider it poor. You made it sound like some sort of ugly kludge hack - which it's not. > some tangent somewhere along the way but the fact remains that it isn't > always easy to do. Admittedly I don't mind it so much when I've actually got > time - but when time is an issue then I hate it. Especially when time is > more of an issue than speed. Speed is important - but sometimes it's not the > #1 priority. Then you should consider using another tool for the job. > > UINT8 *pbString; > > pbString = "Poo!"; > > pbString = "Who's a pretty boy then?"; > Okay, but I did say earlier "without using pointers". You can't (can you?!), > for instance, use a pointer with scanf(). So you have to use: > char tempString[]; > scanf(&tempString); > Damn. You probably can use a pointer because the & tells me it's taking an > address. Damn. Okay, if I'm right now then I'm going to stop arguing. :) Yes, that's what scanf takes - a pointer. ;-) There is no such thing as a string in C. And when there is, it's a pointer! > >issue or a problem with me. You're welcome to say that C handles strings > >at a much lower level, but "poor" is a relative term which is not > >applicable here. "Java gives poor performance for video game emulation" Is > I had to do lots of parsing and I didn't find that simple in C. Yes, I could > have written the functions - but I didn't have time! That really was the > issue. Then you were using the wrong language from the start! > I guess I've got a hatred of C's string handling from then. The fact > that I couldn't do whatever it was I wanted to do (I've forgotten!) annoyed > me because I was under a strict time schedule. So okay, C string handling > isn't poor. I just don't like it. Reasonably or not - though I think anybody > under the same duress as me at that time would feel the same! :) I'd agree that string handling under C isn't always convenient, but "poor" and "afterthought" should be reserved for those things that REALLY suck. > BTW, I didn't even use the string class provided with C++ - I used > somebodies custom-written class called "CString" - I can remember that much! Aha! So you're using a library... just like I do. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 10:59:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA14418 for dynarec-outgoing; Fri, 7 Jul 2000 10:59:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Jul 2000 11:09:20 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Does anyone... In-Reply-To: <01bfe7f1$1e3b4a80$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Comments before I go too far? > How's Food Fight coming along? Are the graphics displaying okay yet? Not yet - but the graphics are decoded. I took a detour to get the lexer/grammar working so Alex could get cracking on the emitter. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 11:01:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA14434 for dynarec-outgoing; Fri, 7 Jul 2000 11:01:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Jul 2000 11:11:47 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bce6183b1b9_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > [PC relative addressing] > >Yep. There's a way to do that, > Well, then I only have to find out how it works... Me too. ;-) Alex has a lot of this in hs head. I focused on everything *BUT* the disassembler. Let's wait until he gets back. > >though I can't remember what it is off the top of my head. > Maybe you need a memory upgarde? ;-) Nah. A new DIMM would be good, though. ;-) > What I still need is something like: > ... |MOVE|DREG=S DREG=D|NZV=0C=0|... > To show that V and C are always cleared. You don't need to show that. All the recompiler needs to know is whether or not they're changed. The point of those fields are to indicate whether or not the instruction uses or alters the flags - not *HOW* they alter them. > Also is it allowed to have some format output in the operand field? Eg.: > |MOVEQ|#IMM4=I, DREG=D| > To produce the following output: MOVEQ #100, D0 You mean for disassembly? I think numeric fields are already printed as such, but you'll have to ask Alex on that one. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 11:03:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA14446 for dynarec-outgoing; Fri, 7 Jul 2000 11:03:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Jul 2000 11:13:24 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bce70d6725c_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> How could I describe d8(An,I)? With three operands? > >What exactly does this addressing mode do? > effective address = d8 + An + Rn That's crack induced. > >NO! Just order them the way they'd appear in the source system's > >memory! The endianness will be taken care of in the code that actually > >reads and translates it. > I think he doesn't mean endianness (like I did), but operand order, as in: > MOVEQ #42, D7 > opposed to: > MOV EAX, 42 > I'd recommend that we stick to the defined 68K operand order since otherwise > at least I will get very confused... I agree that we should use the nomenclature defined for the source processor to avoid mass confusion. All one must do is change the order of the operands since the assignment references still work. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 11:06:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA14459 for dynarec-outgoing; Fri, 7 Jul 2000 11:06:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Jul 2000 11:16:57 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <200007070909.LAA29119@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > No I don't mean the order of the data but the order in the description. > For example > XXXX XXXX ..... | MOV | MEM DN | ...... // mov mem,dn (mem->Dn) > or (the same instruction) > XXXX XXXX ..... | MOV | DN MEM | ...... // mov mem,d (mem->Dn) Keep it the same as the source processor, so in the case of the 68K, it's the crack induced source->dest. ;-) > Another problem I can see. If we will byteswap the memory for 68K emulation > the description masks should be byteswaped or not? No, they absolutely should not be byteswapped! They should appear as they natively appear in the source processor's memory space - that means big endian in the 68K. Whether or not we do byteswapping in the actual code that looks at the source processor opcodes is left as an exercise to the interpreter - not the script itself. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 11:07:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA14469 for dynarec-outgoing; Fri, 7 Jul 2000 11:07:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Jul 2000 11:17:38 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Status In-Reply-To: <01bfe7f3$a1f63680$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I'm thinking that I may do a little work on the website this weekend. Any > ideas as to what I should add? How about starting to document what we're currently up to? Maybe document the steps we're going through, or maybe even a document describing the script format? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 11:08:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA14485 for dynarec-outgoing; Fri, 7 Jul 2000 11:08:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: Subject: Re: DYNAREC: Does anyone... From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Fri, 7 Jul 2000 20:29:37 +0200 Message-ID: <1edf16r.1c5y1b1pyk9siM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id LAA14478 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > ...see the need for me to make wrapper functions for fopen, fclose, fgetc, > etc...? I needed it for Retrocade when doing some file I/O under Windows > CE, but I'm not certain that it'd be needed here. No, I really don't see any need to that. Any conforming hosted implementation shall have those functions defined. BTW, you could also provide an option to generate files for a target different of the one the generator is run on. That way, the expected files generated would be present. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 11:08:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA14484 for dynarec-outgoing; Fri, 7 Jul 2000 11:08:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <01bfe7e4$58521f80$35901a17@turkey> Subject: Re: DYNAREC: Example script! From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Fri, 7 Jul 2000 20:29:38 +0200 Message-ID: <1edf1f6.1av7fnxkdl7wgM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id LAA14481 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Yes it can. How do you think it can't? If I was to declare > > temp : string; "If". In practise, you can't declare that thing. Standard (Extended) Pascal defines two string types: 1. Fixed-string-types of the form packed array [ 1 .. N ] of char where N is an integral constant. 2. Variable-string-types of the form string(N) where N is an integral constant and represents the capacity. In other words string is a schema that requires the parameter that represents the string capacity. There is no possibility to a default initializer as in C++ ;-) -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 11:12:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA14501 for dynarec-outgoing; Fri, 7 Jul 2000 11:12:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Jul 2000 11:22:59 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <200007070922.LAA12075@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >// register An 16 bits > > >AR16 { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, A7=6} }; > > Adress registers are always addressed with their full 32 bit width. > I think you are wrong: ADD.W xx,An. That may be the case, but to the script (and the shell it emits), we do not care HOW a field or register is accessed, only that the pertinent information is passed on to the target layer so it'll be able to deal with it sentiently. For example, when we have: 0100111001010AAA (16xO) |LINK|AREG=A REL16=O|||18 18 0; // link An, #dist When the source scanner is run, it'll call a function called(as an example): Cpu68K(struct sOpcode *psOpcodeInfo, UINT32 u32AREG, UINT16 u16REL16) { .. put cover code to emit things here } So you'll have everything laid out for you in the order you defined it with the type that you need. So all the decoding of the instruction will be done for you and just handed to you - ready to use. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 12:09:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14563 for dynarec-outgoing; Fri, 7 Jul 2000 12:09:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: <000401bfe832$d23bb380$18358cd4@daves> Message-ID: <00036bd717a93500_mailit@mail.dynarec.com> References: <00036bc1d61a4c00_mailit@mail.dynarec.com> <000401bfe832$d23bb380$18358cd4@daves> Date: Fri, 07 Jul 2000 21:01:29 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yep, I vote for Mike to target MIPS v3! :o) Oh no... >Busy...... You're just too lazy to do it by yourself ;-) >PS: recall - I'm doing a MIPS v3 -> x86 dynarec eventually. Nope, you will do the R3000, which is MIPS I. MIPS III would be 64 bit! -- M.I.K.e You may have heard that a dean is to faculty as a hydrant is to a dog. -- Alfred Kahn --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 12:09:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14579 for dynarec-outgoing; Fri, 7 Jul 2000 12:09:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036bd748219300_mailit@mail.dynarec.com> References: Date: Fri, 07 Jul 2000 21:15:02 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Me too. ;-) Alex has a lot of this in his head. Nurse, hand me the chainsaw... >I focused on everything >*BUT* the disassembler. Let's wait until he gets back. OK, I'll stop working on the script till he gets back since I don't want to do the complicated stuff when I don't know if I'm doing it correctly. >Nah. A new DIMM would be good, though. ;-) Me too! >> To show that V and C are always cleared. >You don't need to show that. All the recompiler needs to know is whether >or not they're changed. The point of those fields are to indicate whether >or not the instruction uses or alters the flags - not *HOW* they alter >them. I thought it good for the optimizer to know that specific flags are always set or cleared. In that case the flags won't have to be calculated for, say long move sequences, because the optimiser knows that each move clears V and C anyway. While speaking about flags. Alex seems to use a trick for the condition codes: 0000 1111 1000 CCCC |J~|CC REL32 |||1 1 0; // jcc rel32 As you might have noticed I didn't use it because I didn't know how to define which flags are checked, so I defined all variations separately: 0110010100000000 (16xO) |BCS.L|OFF16=O||C|10 12 1; // bcs.l offset 0110011100000000 (16xO) |BEQ.L|OFF16=O||Z|10 12 1; // beq.l offset >> To produce the following output: MOVEQ #100, D0 >You mean for disassembly? I think numeric fields are already printed as >such, but you'll have to ask Alex on that one. Yes in disassembly, and the problem is that 68K and Intel differ a bit in that respect: move.l #42, D0 = mov eax, 42 move.l $100, D0 = mov eax, [0x100] And I also meant the comma between the two operands. >-->Neil -- M.I.K.e f u cn rd ths, itn tyg h myxbl cd. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 12:09:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14583 for dynarec-outgoing; Fri, 7 Jul 2000 12:09:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036bd752066108_mailit@mail.dynarec.com> References: Date: Fri, 07 Jul 2000 21:17:48 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >0100111001010AAA (16xO) |LINK|AREG=A REL16=O|||18 18 0; // link An, #dist >When the source scanner is run, it'll call a function called(as an >example): > >Cpu68K(struct sOpcode *psOpcodeInfo, > UINT32 u32AREG, > UINT16 u16REL16) >{ > .. put cover code to emit things here >} Actually REL16 should be SINT16, but I cannot define that yet... >-->Neil -- M.I.K.e 'Tis the dream of each programmer, Before his life is done, To write three lines of APL, And make the damn things run. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 12:09:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14586 for dynarec-outgoing; Fri, 7 Jul 2000 12:09:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Status From: "M.I.K.e" In-Reply-To: Message-ID: <00036bd755011deb_mailit@mail.dynarec.com> References: Date: Fri, 07 Jul 2000 21:18:38 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> I'm thinking that I may do a little work on the website this weekend. Any >> ideas as to what I should add? >How about starting to document what we're currently up to? Maybe document >the steps we're going through, or maybe even a document describing the >script format? That sounds like a nice idea. My reply would have been: More content ;-) >-->Neil -- M.I.K.e He looked at me as if I was a side dish he hadn't ordered. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 13:22:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA14650 for dynarec-outgoing; Fri, 7 Jul 2000 13:21:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: R3000 definition From: "M.I.K.e" Message-ID: <00036bd858a685c2_mailit@mail.dynarec.com> Date: Fri, 07 Jul 2000 22:31:14 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Dave called for it, so here is the first part of the R3000 definition: // CPU description file for "R3000" // M.I.K.e 2000-07-07 [cpuinfo] Name = R3000; InstructionGranularity = 32; [operands] REG = { 5, keys = {ZERO=0, R1=1, R2=2, R3=3, R4=4, R5=5, R6=6, R7=7, R8=8, R9=9, R10=10, R11=11, R12=12, R13=13, R14=14, R15=15, R16=16, R17=17, R18=18, R19=19, R20=20, R21=21, R22=22, R23=23, R24=24, R25=25, R26=26, R27=27, R28=28, R29=29, R30=30, RA=31} }; SHAMT = { 5, numeric}; IMM = {16, numeric}; OFF = {16, numeric}; ADR = {26, numeric}; CODE20 = {20, numeric}; CODE10 = {10, numeric}; [flags] // none [instructions] 000000 00000 00000 00000 00000 000000 |NOP||||1 1 0; // nop 000000 00000 WWWWW DDDDD SSSSS 000000 |SLL|REG=D REG=W SHAMT=S|||1 1 0; // sll d, w, sh 000000 00000 WWWWW DDDDD SSSSS 000010 |SRL|REG=D REG=W SHAMT=S|||1 1 0; // srl d, w, sh 000000 00000 WWWWW DDDDD SSSSS 000011 |SRA|REG=D REG=W SHAMT=S|||1 1 0; // sra d, w, sh 000000 SSSSS TTTTT DDDDD 00000 000100 |SLLV|REG=D REG=T REG=S|||1 1 0; // sllv d, t, s 000000 SSSSS TTTTT DDDDD 00000 000110 |SRLV|REG=D REG=T REG=S|||1 1 0; // srlv d, t, s 000000 SSSSS TTTTT DDDDD 00000 000111 |SRAV|REG=D REG=T REG=S|||1 1 0; // srav d, t, s 000000 SSSSS 00000 00000 00000 001000 |JR|REG=S|||? ? 1; // jr s 000000 SSSSS 00000 11111 00000 001001 |JALR|REG=S|||? ? 1; // jalr s 000000 SSSSS 00000 DDDDD 00000 001001 |JALR|REG=D REG=S|||? ? 1; // jalr d, s 000000 CCCCC CCCCC CCCCC CCCCC 001100 |SYSCALL|CODE=C|||? ? 1; // syscall code 000000 CCCCC CCCCC 00000 00000 001101 |BREAK|CODE=C|||? ? 1; // break code 000000 00000 00000 DDDDD 00000 010000 |MFHI|REG=D|||? ? 0; // mfhi d 000000 SSSSS 00000 00000 00000 010001 |MTHI|REG=S|||? ? 0; // mthi s 000000 00000 00000 DDDDD 00000 010010 |MFLO|REG=D|||? ? 0; // mflo d 000000 SSSSS 00000 00000 00000 010011 |MTLO|REG=S|||? ? 0; // mtlo s 000000 SSSSS TTTTT 00000 00000 011000 |MULT|REG=S REG=T|||? ? 0; // mult s, t 000000 SSSSS TTTTT 00000 00000 011001 |MULTU|REG=S REG=T|||? ? 0; // multu s, t 000000 SSSSS TTTTT 00000 00000 011010 |DIV|REG=S REG=T|||? ? 0; // div s, t 000000 SSSSS TTTTT 00000 00000 011011 |DIVU|REG=S REG=T|||? ? 0; // divu s, t 000000 SSSSS TTTTT DDDDD 00000 100000 |ADD|REG=D REG=S REG=T|||1 1 0; // add d, s, t 000000 SSSSS TTTTT DDDDD 00000 100001 |ADDU|REG=D REG=S REG=T|||1 1 0; // addu d, s, t 000000 SSSSS TTTTT DDDDD 00000 100010 |SUB|REG=D REG=S REG=T|||1 1 0; // sub d, s, t 000000 SSSSS TTTTT DDDDD 00000 100011 |SUBU|REG=D REG=S REG=T|||1 1 0; // subu d, s, t 000000 SSSSS TTTTT DDDDD 00000 100100 |AND|REG=D REG=S REG=T|||1 1 0; // and d, s, t 000000 SSSSS TTTTT DDDDD 00000 100101 |OR|REG=D REG=S REG=T|||1 1 0; // or d, s, t 000000 SSSSS TTTTT DDDDD 00000 100110 |XOR|REG=D REG=S REG=T|||1 1 0; // xor d, s, t 000000 SSSSS TTTTT DDDDD 00000 100111 |NOR|REG=D REG=S REG=T|||1 1 0; // nor d, s, t 000000 SSSSS TTTTT DDDDD 00000 101010 |SLT|REG=D REG=S REG=T|||1 1 0; // slt d, s, t 000000 SSSSS TTTTT DDDDD 00000 101011 |SLTU|REG=D REG=S REG=T|||1 1 0; // sltu d, s, t 000001 SSSSS 00000 OOOOO OOOOO OOOOOO |BLTZ|REG=S OFF=O|||? ? 1; // bltz s, off 000001 SSSSS 00001 OOOOO OOOOO OOOOOO |BGEZ|REG=S OFF=O|||? ? 1; // bgez s, off 000001 SSSSS 10000 OOOOO OOOOO OOOOOO |BLTZAL|REG=S OFF=O|||? ? 1; // bltzal s, off 000001 SSSSS 10001 OOOOO OOOOO OOOOOO |BGEZAL|REG=S OFF=O|||? ? 1; // bgezal s, off 000010 TTTTT TTTTT TTTTT TTTTT TTTTTT |J|ADR=T|||? ? 1; // j target 000011 TTTTT TTTTT TTTTT TTTTT TTTTTT |JAL|ADR=T|||? ? 1; // jal target 000100 SSSSS TTTTT OOOOO OOOOO OOOOOO |BEQ|REG=S REG=T OFF=O|||? ? 1; // beq s, t, off 000101 SSSSS TTTTT OOOOO OOOOO OOOOOO |BNE|REG=S REG=T OFF=O|||? ? 1; // bne s, t, off 000110 SSSSS 00000 OOOOO OOOOO OOOOOO |BLEZ|REG=S OFF=O|||? ? 1; // blez s, off 000111 SSSSS 00000 OOOOO OOOOO OOOOOO |BGTZ|REG=S OFF=O|||? ? 1; // bgtz s, off 001000 SSSSS DDDDD IIIII IIIII IIIIII |ADDI|REG=D REG=S OFF=I|||1 1 0; // addi d, s, imm 001001 SSSSS DDDDD IIIII IIIII IIIIII |ADDIU|REG=D REG=S OFF=I|||1 1 0; // addiu d, s, imm 001010 SSSSS DDDDD IIIII IIIII IIIIII |SLTI|REG=D REG=S OFF=I|||1 1 0; // slti d, s, imm 001011 SSSSS DDDDD IIIII IIIII IIIIII |SLTIU|REG=D REG=S OFF=I|||1 1 0; // sltiu d, s, imm 001100 SSSSS DDDDD IIIII IIIII IIIIII |ANDI|REG=D REG=S IMM=I|||1 1 0; // andi d, s, imm 001101 SSSSS DDDDD IIIII IIIII IIIIII |ORI|REG=D REG=S IMM=I|||1 1 0; // ori d, s, imm 001110 SSSSS DDDDD IIIII IIIII IIIIII |XORI|REG=D REG=S IMM=I|||1 1 0; // xori d, s, imm 001111 00000 DDDDD IIIII IIIII IIIIII |LUI|REG=D IMM=I|||1 1 0; // lui d, imm // EOF -- M.I.K.e "To be responsive at this time, though I will simply say, and therefore this is a repeat of what I said previously, that which I am unable to offer in response is based on information available to make no such statement." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 13:32:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA14670 for dynarec-outgoing; Fri, 7 Jul 2000 13:32:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ab01bfe85b$86111e40$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Example script! Date: Fri, 7 Jul 2000 22:30:51 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Hmm. I'm going to give this one up right now because now I'm thinking that I > > can't win this argument. > > Nope. You can't. ;-) It's clear that you have a personal grudge against > the fact that there's no string handling built in to the language, and > have elevated it to "poor" instead of "inconvenient". Poor is the wrong > word to use. Maybe the wrong word - but it's shorter to type than "inconvenient". ;) > > Pascal, Java, Ada and all the other high-level > > languages are the same. You have to include libraries to do it. Heh, but at > > least STRING is a recognised type in Pascal and Ada. ;) > > Depends upon the pascal. Most don't. Borland's might, because they > actually did Pascal right. But all that goes out the window when you've > got to deal with unicode. I've used 3 different versions of Pascal (excluding Delphi which is just a crap version!), only one being written by Borland. They all had it. Maybe the earlier versions didn't - or they all wanted to be Borland compliant? > > You're right - the same can be said for the others. But at least with those > > I didn't have to write my own functions to handle the strings. C is a great > > language - but sometimes you just need to get something done quickly. > > Maybe C wasn't the best language to do your project in. ;-) It wasn't, but given that I didn't know much Perl at the time but there was a C and C++ compiler on the machine... > > Yes, but there's nothing to stop you from doing that in other languages too! > > But I also don't want to be forced to take "features" that cost me in > other ways (such as a linked library). In the embedded world, we flatly > don't use C++ at all because it REQUIRES that you link in extra crap in > with it. I consider it o be a major advantage that we do NOT have it built > in to the C language! It should do it how I did it in my compiler. Only link in the functions that get used. Nothing extra gets added. I seriously had some good ideas with TAW (the compiler) but I actually stopped working on it. I will definitely go back to that - probably use some of the techniques with my project next year... > > >You're really sounding ignorant, Neil. It was not an afterthought, and you > > >should probably take in to consideration that everyone here who is > > My point was that the string handling wasn't good. > > "Good" is a relative term. String handling is just fine in C. It's less > convenient, but all the tools are there that you need to do the job are > still there. Again, "Good" is shorter to type than "convenient". ;) > > some tangent somewhere along the way but the fact remains that it isn't > > always easy to do. Admittedly I don't mind it so much when I've actually got > > time - but when time is an issue then I hate it. Especially when time is > > more of an issue than speed. Speed is important - but sometimes it's not the > > #1 priority. > > Then you should consider using another tool for the job. I did - but I didn't have time to learn something new! :-/ > > Damn. You probably can use a pointer because the & tells me it's taking an > > address. Damn. Okay, if I'm right now then I'm going to stop arguing. :) > > Yes, that's what scanf takes - a pointer. ;-) There is no such thing as a > string in C. And when there is, it's a pointer! Stop rubbing it in. ;) > > I had to do lots of parsing and I didn't find that simple in C. Yes, I could > > have written the functions - but I didn't have time! That really was the > > issue. > > Then you were using the wrong language from the start! Yes, I was. It probably would have been simpler to use Perl - but I didn't know it at the time. I'm still not much good with it but I'm okay with Perl now. My main problem with Perl is that it's interpreted - but there ARE compilers out there for it. Somewhere. Never bothered to look! > I'd agree that string handling under C isn't always convenient, but > "poor" and "afterthought" should be reserved for those things that REALLY > suck. WinG for example? ;) > > BTW, I didn't even use the string class provided with C++ - I used > > somebodies custom-written class called "CString" - I can remember that much! > > Aha! So you're using a library... just like I do. ;-) Yes, but a library that contained things that should - IMO - have been in the language to begin with. Just because I didn't have time to write them. :o Okay, so I'll admit that C string handling isn't poor. So long as you concede the point that you can't always write things quickly (because of writing a custom library) when using strings with C. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 13:32:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA14681 for dynarec-outgoing; Fri, 7 Jul 2000 13:32:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ac01bfe85b$87ff80c0$0100a8c0@lion> From: "Neil Griffiths" To: References: <1edf1f6.1av7fnxkdl7wgM@[192.168.0.2]> Subject: Re: DYNAREC: Example script! Date: Fri, 7 Jul 2000 22:33:31 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >In other words string is a schema that requires the parameter that >represents the string capacity. There is no possibility to a default >initializer as in C++ ;-) Oh well, I've been able to do it with the last 3 Pascal compilers I've ever used. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 13:32:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA14688 for dynarec-outgoing; Fri, 7 Jul 2000 13:32:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ad01bfe85b$89cc5180$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036bd755011deb_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Status Date: Fri, 7 Jul 2000 22:35:24 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >How about starting to document what we're currently up to? Maybe document > >the steps we're going through, or maybe even a document describing the > >script format? > > That sounds like a nice idea. > My reply would have been: More content ;-) I'll write up some documention on what we're up to (and the script format). As far as content goes I have to have help for that. I haven't got time to do it all by myself! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 14:02:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA14730 for dynarec-outgoing; Fri, 7 Jul 2000 14:02:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Jul 2000 14:13:12 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bd748219300_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >*BUT* the disassembler. Let's wait until he gets back. > OK, I'll stop working on the script till he gets back since I don't want to > do the complicated stuff when I don't know if I'm doing it correctly. You guys are going to have a bajillion of them ready to before I even get the parser sucking up the first token! > >or not they're changed. The point of those fields are to indicate whether > >or not the instruction uses or alters the flags - not *HOW* they alter > >them. > I thought it good for the optimizer to know that specific flags are always > set or cleared. In that case the flags won't have to be calculated for, say > long move sequences, because the optimiser knows that each move clears V and > C anyway. All it needs to know is that it gets modified. It doesn't need to know *HOW* it gets modified. > Yes in disassembly, and the problem is that 68K and Intel differ a bit in > that respect: > move.l #42, D0 = mov eax, 42 > move.l $100, D0 = mov eax, [0x100] > And I also meant the comma between the two operands. Right. You can just reverse the order of the operands. But the issue of $100 vs #42, etc... is one that I'm sure Alex wil be happy to address. ;-) > f u cn rd ths, itn tyg h myxbl cd. Fuckin' read this, it not gum xable cd? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 14:03:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA14740 for dynarec-outgoing; Fri, 7 Jul 2000 14:03:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Jul 2000 14:14:00 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bd752066108_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Cpu68K(struct sOpcode *psOpcodeInfo, > > UINT32 u32AREG, > > UINT16 u16REL16) > >{ > > .. put cover code to emit things here > >} > Actually REL16 should be SINT16, but I cannot define that yet... No, actually, you'll do any sign conversion you need in the cover itself, as many processors do signedness differently. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 14:09:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA14754 for dynarec-outgoing; Fri, 7 Jul 2000 14:09:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036bd904251aa8_mailit@mail.dynarec.com> References: Date: Fri, 07 Jul 2000 23:19:11 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Actually REL16 should be SINT16, but I cannot define that yet... >No, actually, you'll do any sign conversion you need in the cover itself, >as many processors do signedness differently. But what about the disassembler? >-->Neil -- M.I.K.e "Calvin Coolidge looks as if he had been weaned on a pickle." -- Alice Roosevelt Longworth --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 14:12:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA14768 for dynarec-outgoing; Fri, 7 Jul 2000 14:12:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <00ac01bfe85b$87ff80c0$0100a8c0@lion> Subject: Re: DYNAREC: Example script! From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Fri, 7 Jul 2000 23:33:25 +0200 Message-ID: <1edf9sa.10s4wy9w2a2ruM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id OAA14765 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >In other words string is a schema that requires the parameter that > >represents the string capacity. There is no possibility to a default > >initializer as in C++ ;-) > > Oh well, I've been able to do it with the last 3 Pascal compilers I've ever > used. ;) Hmmm, you can safely throw them to the fire ;-) Seriously, Turbo Pascal, Delphi et al are _not_ Pascal. Borland showed pretty well that they could do exactly the same as Microsoft: create their own closed "standard". BTW, look at RealBasic (for MacOS). The name would tell me that to be a Visual Basic clone. This is true in concept but the language is said not to be BASIC at all. Borland did not have a Pascal compiler, they had a Turbo Pascal compiler. ;-) For reference only, there are two Pascal standards: * ISO/IEC 7185:1990 - Pascal * ISO/IEC 10206:1990 - Extended Pascal Only the latter defines the string schema type. Otherwise, a fixed-size array of char is used. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 7 14:12:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA14778 for dynarec-outgoing; Fri, 7 Jul 2000 14:12:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Jul 2000 14:23:07 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036bd904251aa8_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> Actually REL16 should be SINT16, but I cannot define that yet... > >No, actually, you'll do any sign conversion you need in the cover itself, > >as many processors do signedness differently. > But what about the disassembler? I think we've got to ask Alex on that one. If it's the disassembler, Alex is our man. He has ideas in this area. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 8 02:25:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA15473 for dynarec-outgoing; Sat, 8 Jul 2000 02:24:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com Subject: DYNAREC: About my 68k definition From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Sat, 8 Jul 2000 11:45:45 +0200 Message-ID: <1edg810.19amzluf7ddg0M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id CAA15470 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, See what you can make out of: File: emu68k-20000708.tar.gz I am now coding the indexed modes for the disassembler. Notes: - You need an UNIX platform with a decent C++ compiler. gcc-2.95.2 will be fine since I am using it ;-) - I am using various Assembler Generators because depending on the output, I need to have either the GNU-MIT like syntax (for the generated testsuite) or the Motorola-like syntax (for disassembler output). - I am also experimenting various kinds of decoding schemes. See the InstructionCompare.hpp file for different sorting methods of the table. BTW, the one I opted for the disassembler looks good, at least for the disassembler. Compilation notes: ./configure make gencpu Then, to play with: cd out make build_testsuite # disassembler testsuite make dasm # disassembler tables make clobber # which instructions are supposed to clobber # each other if I were to keep, for example, # the top 10 bits of the instruction Have fun ;-) -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 8 11:58:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA18091 for dynarec-outgoing; Sat, 8 Jul 2000 11:58:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 8 Jul 2000 12:09:08 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: About my 68k definition In-Reply-To: <1edg810.19amzluf7ddg0M@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > See what you can make out of: > > File: emu68k-20000708.tar.gz What exactly am I look at here? Is it just a parser of some sort? > - You need an UNIX platform with a decent C++ compiler. gcc-2.95.2 will > be fine since I am using it ;-) And you'll need bison, too. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 8 12:11:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA18119 for dynarec-outgoing; Sat, 8 Jul 2000 12:11:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: 68K definition From: "M.I.K.e" Message-ID: <00036beb7902b910_mailit@mail.dynarec.com> Date: Sat, 08 Jul 2000 21:20:21 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Quite silent on the list... All busy? I hope so! ;-) I have my now CPU now (P3-550/512K; upgraded from P2-350) ;-) I already tried a P3-500, but that didn't work correctly - strange! Anyway, I put some more work into the 68K definition, well about as much as I can do without additional information from Alex... I hope that Victor doesn't work on the same definitions as I since it's a bit hard to coordinate with him on the weekend... Ok, enough chatting, here's the new list: // CPU description file for "68K" // M.I.K.e 2000-07-07 [cpuinfo] Name = 68K; InstructionGranularity = 16; [operands] DREG { 3, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7} }; AREG { 3, keys = {A0=0, A1=1, A2=2, A3=3, A4=4, A5=5, A6=6, SP=7} }; REG { 4, keys = {D0=0, D1=1, D2=2, D3=3, D4=4, D5=5, D6=6, D7=7, A0=8, A1=9, A2=10, A3=11, A4=12, A5=13, A6=14, SP=15} }; CC { 4, keys = {T=0, F=1, HI=2, LS=3, CC=4, CS=5, NE=6, EQ=7, VC=8, VS=9, PL=10, MI=11, GE=12, LT=13, GT=14, LE=15} }; ABS3 { 3, numeric}; // unsigned 3 bit value ABS4 { 4, numeric}; // unsigned 4 bit value ABS8 { 8, numeric}; // unsigned 8 bit value ABS16 {16, numeric}; // unsigned 16 bit value ABS32 {32, numeric}; // unsigned 32 bit value REL8 { 8, numeric}; // signed 8 bit value REL16 {16, numeric}; // signed 16 bit value REL32 {32, numeric}; // signed 32 bit value OFF8 { 8, numeric, PC+2+X, PC+2+X}; // 8 bit offset OFF16 {16, numeric, PC+2+X, PC+2+X}; // 16 bit offset [flags] C = { 0x0001, "carry" }; V = { 0x0002, "overflow" }; Z = { 0x0004, "zero" }; N = { 0x0008, "negative" }; X = { 0x0010, "extend" }; [instructions] // 0000 Bit Manipulation/MOVEP/Immediate // 0001 Move Byte // 0010 Move Long // 0011 Move Word // 0100 Miscellaneous 0100111001110001 |NOP||||4 4 0; // nop 0100101011111100 |ILLEGAL||||34 34 1; // illegal 0100111001110000 |RESET||||132 132 0; // reset 0100111001110011 |RTE||CVZNX||20 20 1; // rte 0100111001110111 |RTR||CVZNX||20 20 1; // rtr 0100111001110101 |RTS||||16 16 1; // rts 0100111001110010 (16xI) |STOP|ABS16=I|CVZNX||4 4 1; // stop #const 010011100100VVVV |TRAP|ABS4=V||CVZNX|38 38 1; // trap #vec 0100111001110110 |TRAPV|||CVZNX|34 4 1; // trapv 0100111001010AAA (16xO) |LINK|AREG=A REL16=O|||18 18 0; // link An, #dist 0100111001011AAA |UNLK|AREG=A|||12 12 0; // unlk An 0100100001000DDD |SWAP|DREG=D|NZVC||4 4 0; // swap Dn // 0101 ADDQ/SUBQ/Scc/DBcc 0101000011001DDD (16xO) |DBF|DREG=D OFF16=O|||10 12 1; // dbf Dn, offset 0101000111001DDD (16xO) |DBRA|DREG=D OFF16=O|||10 12 1; // dbra Dn, offset 0101010011001DDD (16xO) |DBCC|DREG=D OFF16=O||C|10 12 1; // dbcc Dn, offset 0101010111001DDD (16xO) |DBCS|DREG=D OFF16=O||C|10 12 1; // dbcs Dn, offset 0101011111001DDD (16xO) |DBEQ|DREG=D OFF16=O||Z|10 12 1; // dbeq Dn, offset 0101110011001DDD (16xO) |DBGE|DREG=D OFF16=O||NV|10 12 1; // dbge Dn, offset 0101111011001DDD (16xO) |DBGT|DREG=D OFF16=O||NVZ|10 12 1; // dbgt Dn, offset 0101001011001DDD (16xO) |DBHI|DREG=D OFF16=O||CZ|10 12 1; // dbhi Dn, offset 0101111111001DDD (16xO) |DBLE|DREG=D OFF16=O||ZNV|10 12 1; // dble Dn, offset 0101001111001DDD (16xO) |DBLS|DREG=D OFF16=O||CZ|10 12 1; // dbls Dn, offset 0101110111001DDD (16xO) |DBLT|DREG=D OFF16=O||NV|10 12 1; // dblt Dn, offset 0101101111001DDD (16xO) |DBMI|DREG=D OFF16=O||N|10 12 1; // dbmi Dn, offset 0101011011001DDD (16xO) |DBNE|DREG=D OFF16=O||Z|10 12 1; // dbne Dn, offset 0101101011001DDD (16xO) |DBPL|DREG=D OFF16=O||N|10 12 1; // dbpl Dn, offset 0101100011001DDD (16xO) |DBVC|DREG=D OFF16=O||V|10 12 1; // dbvc Dn, offset 0101100111001DDD (16xO) |DBVS|DREG=D OFF16=O||V|10 12 1; // dbvs Dn, offset // 0110 Bcc/BSR 0110000000000000 (16xO) |BRA.L|OFF16=O|||10 10 1; // bra.l offset 01100000OOOOOOOO |BRA.S| OFF8=O|||10 10 1; // bra.s offset 0110000100000000 (16xO) |BSR.L|OFF16=O|||18 18 1; // bsr.l offset 01100001OOOOOOOO |BSR.S| OFF8=O|||18 18 1; // bsr.s offset 0110010000000000 (16xO) |BCC.L|OFF16=O||C|10 12 1; // bcc.l offset 0110010100000000 (16xO) |BCS.L|OFF16=O||C|10 12 1; // bcs.l offset 0110011100000000 (16xO) |BEQ.L|OFF16=O||Z|10 12 1; // beq.l offset 0110110000000000 (16xO) |BGE.L|OFF16=O||NV|10 12 1; // bge.l offset 0110111000000000 (16xO) |BGT.L|OFF16=O||NVZ|10 12 1; // bgt.l offset 0110001000000000 (16xO) |BHI.L|OFF16=O||CZ|10 12 1; // bhi.l offset 0110111100000000 (16xO) |BLE.L|OFF16=O||ZNV|10 12 1; // ble.l offset 0110001100000000 (16xO) |BLS.L|OFF16=O||CZ|10 12 1; // bls.l offset 0110110100000000 (16xO) |BLT.L|OFF16=O||NV|10 12 1; // blt.l offset 0110101100000000 (16xO) |BMI.L|OFF16=O||N|10 12 1; // bmi.l offset 0110011000000000 (16xO) |BNE.L|OFF16=O||Z|10 12 1; // bne.l offset 0110101000000000 (16xO) |BPL.L|OFF16=O||N|10 12 1; // bpl.l offset 0110100000000000 (16xO) |BVC.L|OFF16=O||V|10 12 1; // bvc.l offset 0110100100000000 (16xO) |BVS.L|OFF16=O||V|10 12 1; // bvs.l offset 01100100OOOOOOOO |BCC.S| OFF8=O||C|10 12 1; // bcc.s offset 01100101OOOOOOOO |BCS.S| OFF8=O||C|10 12 1; // bcs.s offset 01100111OOOOOOOO |BEQ.S| OFF8=O||Z|10 12 1; // beq.s offset 01101100OOOOOOOO |BGE.S| OFF8=O||NV|10 12 1; // bge.s offset 01101110OOOOOOOO |BGT.S| OFF8=O||NVZ|10 12 1; // bgt.s offset 01100010OOOOOOOO |BHI.S| OFF8=O||CZ|10 12 1; // bhi.s offset 01101111OOOOOOOO |BLE.S| OFF8=O||ZNV|10 12 1; // ble.s offset 01100011OOOOOOOO |BLS.S| OFF8=O||CZ|10 12 1; // bls.s offset 01101101OOOOOOOO |BLT.S| OFF8=O||NV|10 12 1; // blt.s offset 01101011OOOOOOOO |BMI.S| OFF8=O||N|10 12 1; // bmi.s offset 01100110OOOOOOOO |BNE.S| OFF8=O||Z|10 12 1; // bne.s offset 01101010OOOOOOOO |BPL.S| OFF8=O||N|10 12 1; // bpl.s offset 01101000OOOOOOOO |BVC.S| OFF8=O||V|10 12 1; // bvc.s offset 01101001OOOOOOOO |BVS.S| OFF8=O||V|10 12 1; // bvs.s offset // 0111 MOVEQ 0111DDD0IIIIIIII |MOVEQ|REL8=I|NZVC||4 4 0; // moveq #signed, Dn // 1000 OR/DIV/SBCD // 1001 SUB/SUBX // 1010 (Line-A) // 1011 CMP/EOR // 1100 AND/MUL/ABCD/EXG 1100XXX101000YYY |EXG|DREG=X DREG=Y|||6 6 0; // exg Dx, Dy 1100XXX101001YYY |EXG|AREG=X AREG=Y|||6 6 0; // exg Ax, Ay 1100XXX110001YYY |EXG|DREG=X AREG=Y|||6 6 0; // exg Dx, Ay // 1101 ADD/ADDX // 1110 Shift/Rotate // 1111 (Line-F) // EOF -- M.I.K.e An American's a person who isn't afraid to criticize the President but is always polite to traffic cops. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 8 12:19:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA18136 for dynarec-outgoing; Sat, 8 Jul 2000 12:18:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K definition From: "M.I.K.e" In-Reply-To: <00036beb7902b910_mailit@mail.dynarec.com> Message-ID: <00036beb9515a682_mailit@mail.dynarec.com> References: <00036beb7902b910_mailit@mail.dynarec.com> Date: Sat, 08 Jul 2000 21:28:12 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >0101000011001DDD (16xO) |DBF|DREG=D OFF16=O|||10 12 1; // dbf Dn, offset Oops, just noticed that this should be DBT instead of DBF (since DBRA is DBF), but the encoding is correct. -- M.I.K.e Niklaus Wirth has lamented that, whereas Europeans pronounce his name correctly (Ni-klows Virt), Americans invariably mangle it into (Nick-les Worth). Which is to say that Europeans call him by name, but Americans call him by value. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 8 12:24:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA18153 for dynarec-outgoing; Sat, 8 Jul 2000 12:24:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Terminals definition From: "M.I.K.e" Message-ID: <00036beba7d461f7_mailit@mail.dynarec.com> Date: Sat, 08 Jul 2000 21:33:27 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Forgot to ask: How are terminals defined? Only unconditional control flow changes or conditional changes as well? If it's the first case then I have to adjust my definitions... -- M.I.K.e Every journalist has a novel in him, which is an excellent place for it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 8 12:59:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA18202 for dynarec-outgoing; Sat, 8 Jul 2000 12:59:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 8 Jul 2000 13:09:38 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Terminals definition In-Reply-To: <00036beba7d461f7_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Forgot to ask: How are terminals defined? Only unconditional control flow > changes or conditional changes as well? > If it's the first case then I have to adjust my definitions... Let's take your example: >0101000011001DDD (16xO) |DBF|DREG=D OFF16=O|||10 12 1; // dbf Dn, offset ^ 0 = Nonterminal 1 = Conditional terminal 2 = Hard terminal -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 8 13:29:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA18247 for dynarec-outgoing; Sat, 8 Jul 2000 13:29:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Terminals definition From: "M.I.K.e" In-Reply-To: Message-ID: <00036bec8f737cad_mailit@mail.dynarec.com> References: Date: Sat, 08 Jul 2000 22:38:13 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Let's take your example: >>0101000011001DDD (16xO) |DBF|DREG=D OFF16=O|||10 12 1; // dbf Dn, offset > ^ >0 = Nonterminal >1 = Conditional terminal >2 = Hard terminal Ok, I corrected the definitions. >-->Neil -- M.I.K.e Shaw's Principle: Build a system that even a fool can use, and only a fool will want to use it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 8 15:54:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA18426 for dynarec-outgoing; Sat, 8 Jul 2000 15:54:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: Subject: Re: DYNAREC: About my 68k definition From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Sun, 9 Jul 2000 01:15:29 +0200 Message-ID: <1edh7t0.9559fa1dfqscoM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id PAA18423 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > See what you can make out of: > > > > File: emu68k-20000708.tar.gz > > What exactly am I look at here? - CpuTable.def for mask, match, flag usage. If we found the same thing, then it's likely to be correct. Otherwise, someone got wrong ;-) - In that file, I threw an idea about having sort of "reduced flags usage" information. Indeed, keeping flags used/set would require at least 10 bits. I might be possible to strip those down to only 6 bits. - Note: the table doesn't contain information about clock timings as BasiliskII doesn't need them. - The generated DasmTable.cpp file could be interesting. The table is sorted by increasing top 4 bits of the match then, by decreasing number of bits set to one in the mask seen as a 32-bit value then, by decreasing mask value and finaly, by increasing match on the remaining 28-bits. That's for the table of instructions that don't require an extension word to match. There is also a hash table based on the top four bits of the match. Extended instructions are dealt as an escape mechanism. Here, the name field is set to zero indicating that I need to complete the search in the table of instructions that require an extension word. - There are toys to see what instructions would clobber if we keep only the 10 (or other number) most significant bits of the instructions. In other words, how many instructions could potentially match according to their 10 most significant bits ? > > - You need an UNIX platform with a decent C++ compiler. gcc-2.95.2 will > > be fine since I am using it ;-) > > And you'll need bison, too. ;-) flex++/bison++ in fact. Don't blame me, I just wanted to learn how this works ;-) BTW, for the disasm testsuite, you will also need a m68k cross-assembler. Actually, I am using GNU as and objcopy to convert *.o into raw binary files containing only the code. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 01:22:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA18853 for dynarec-outgoing; Sun, 9 Jul 2000 01:22:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 9 Jul 2000 01:33:34 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Status Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I've got the lexer spitting back tokens as expected and the string manager is kicking some ass. Even DJGPP and MSVC are happy with it. ;-) I'm now starting in on the parser aspect of things. It's a fairly simple grammar. It'll also have a bunch of error codes in there so if you do something stupid then it'll let you know what line it's on rather than telling you at the end of the definition. ;-) Basically, the internal structures being made from the script will be linked arrays of structures which will make the emission of the various layers easier. I'll have to complete this before I get Food Fight up and running under emulation. Man, you guys whipping up those scripts are making me get my ass in gear. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 01:57:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA18890 for dynarec-outgoing; Sun, 9 Jul 2000 01:56:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 9 Jul 2000 02:06:48 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: About my 68k definition In-Reply-To: <1edh7t0.9559fa1dfqscoM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > - Note: the table doesn't contain information about clock timings as > BasiliskII doesn't need them. Hm... What kind of emulator is BasiliskII? > - The generated DasmTable.cpp file could be interesting. The table is > sorted by increasing top 4 bits of the match then, by decreasing number > of bits set to one in the mask seen as a 32-bit value then, by This might work for the 68K, but for the x86 pretty much a linear scan is all we can expect. ;-( -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 01:58:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA18896 for dynarec-outgoing; Sun, 9 Jul 2000 01:57:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 9 Jul 2000 02:07:54 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Terminals definition In-Reply-To: <00036bec8f737cad_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >>0101000011001DDD (16xO) |DBF|DREG=D OFF16=O|||10 12 1; // dbf Dn, offset > >0 = Nonterminal > >1 = Conditional terminal > >2 = Hard terminal > Ok, I corrected the definitions. We probably ought to come up with something a bit more "obvious". My whole goal for this script was to make it so that one could read it and very quickly come up to speed on its operation. Using things like 0, 1, and 2 aren't too obvious. ;-( But that'll be an easy correction once we think about something sentient to put there. But the definition line is getting awfully long... -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 02:25:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA19084 for dynarec-outgoing; Sun, 9 Jul 2000 02:25:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000301bfe989$10528ca0$452d8cd4@daves> From: "David Sharp" To: References: <00036bc1d61a4c00_mailit@mail.dynarec.com> <000401bfe832$d23bb380$18358cd4@daves> <00036bd717a93500_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Example script! Date: Sun, 9 Jul 2000 02:16:54 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You're just too lazy to do it by yourself ;-) No fair, I am busy. Too many things to do before I settle down to look at dynarecs, I'm happy sitting here in the background observing until I have something useful to say. I could also do with a primer until see MIPS run gets delivered. > Nope, you will do the R3000, which is MIPS I. MIPS III would be 64 bit! Shit. Must read more. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 02:46:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA19110 for dynarec-outgoing; Sun, 9 Jul 2000 02:46:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: Subject: Re: DYNAREC: About my 68k definition From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Sun, 9 Jul 2000 12:07:02 +0200 Message-ID: <1edi3g5.539zjb6h5z7yM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id CAA19107 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > - Note: the table doesn't contain information about clock timings as > > BasiliskII doesn't need them. > > Hm... What kind of emulator is BasiliskII? A macintosh emulator. In fact, the host triggers an interrupt at something like 60 Hz, in the main thread. Then, after each instruction is executed, the UAE core checks if the related spcflag is set. If so, it handles that. When the target (68k) interrupt handler is reached, the EMUL_OP is run, switching into native drivers that will refresh the screen, send audio data, etc. Notes: - an EMUL_OP is of the form 0x71.., an m68k illegal instruction. - BasiliskII patches the ROM and MacOS so that EMUL_OPs got inserted at the right places. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 02:46:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA19120 for dynarec-outgoing; Sun, 9 Jul 2000 02:46:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: Subject: Re: DYNAREC: Terminals definition From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Sun, 9 Jul 2000 12:07:21 +0200 Message-ID: <1edi3k7.1xgi8af1cn9iv4M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id CAA19117 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > We probably ought to come up with something a bit more "obvious". My whole > goal for this script was to make it so that one could read it and very I am using something like: * - specialties * two letters, combination of * - nothing * T the instruction may trap or cause an exception * B a branch instruction (PC is incremented) * P PC is fully altered (a new PC is set: JMP, etc.) * R return instruction (end block marker) Well, 'J' in place of 'P' would probably have been better for understanding (?). -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 04:53:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA19232 for dynarec-outgoing; Sun, 9 Jul 2000 04:53:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: <000301bfe989$10528ca0$452d8cd4@daves> Message-ID: <00036bf978e9f575_mailit@mail.dynarec.com> References: <00036bc1d61a4c00_mailit@mail.dynarec.com> <000401bfe832$d23bb380$18358cd4@daves> <00036bd717a93500_mailit@mail.dynarec.com> <000301bfe989$10528ca0$452d8cd4@daves> Date: Sun, 09 Jul 2000 14:02:29 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >No fair, I am busy. Too many things to do before I settle down to look at >dynarecs, I'm happy sitting here in the background observing until I have >something useful to say. Aha. >I could also do with a primer until see MIPS run gets delivered. So you ordered that book, very nice ;-) >> Nope, you will do the R3000, which is MIPS I. MIPS III would be 64 bit! >Shit. Must read more. Well, I'm not really a MIPS expert, but I'm quite close... >Dave -- M.I.K.e A language that doesn't have everything is actually easier to program in than some that do. -- Dennis M. Ritchie --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 04:58:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA19248 for dynarec-outgoing; Sun, 9 Jul 2000 04:58:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Status From: "M.I.K.e" In-Reply-To: Message-ID: <00036bf971f022ba_mailit@mail.dynarec.com> References: Date: Sun, 09 Jul 2000 14:00:32 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I've got the lexer spitting back tokens as expected and the string manager >is kicking some ass. Even DJGPP and MSVC are happy with it. ;-) That must be a hell of a hack ;-) >I'm now starting in on the parser aspect of things. It's a fairly simple >grammar. It'll also have a bunch of error codes in there so if you do >something stupid then it'll let you know what line it's on rather than >telling you at the end of the definition. ;-) Damn, no more fun searching for errors! >Man, you guys whipping up those scripts are making me get my ass in >gear. ;-) That's how it should be, isn't it? ;-) >-->Neil -- M.I.K.e It is better to kiss an avocado than to get in a fight with an aardvark --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 04:58:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA19256 for dynarec-outgoing; Sun, 9 Jul 2000 04:58:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Terminals definition From: "M.I.K.e" In-Reply-To: Message-ID: <00036bf934a40e2b_mailit@mail.dynarec.com> References: Date: Sun, 09 Jul 2000 13:43:24 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >We probably ought to come up with something a bit more "obvious". My whole >goal for this script was to make it so that one could read it and very >quickly come up to speed on its operation. Using things like 0, 1, and 2 >aren't too obvious. ;-( True. How about something like: N non-terminal C conditional T terminal I also thought of E for exceptions, traps, and subroutine calls, but those could be conditional as well, so that wouldn't be the best idea... >But that'll be an easy correction once we think >about something sentient to put there. But the definition line is getting >awfully long... Tell me about it... >-->Neil -- M.I.K.e Due to circumstances beyond your control, you are master of your fate and captain of your soul. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 11:22:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA19628 for dynarec-outgoing; Sun, 9 Jul 2000 11:22:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3968C4E4.26EAF4A0@mail.utexas.edu> Date: Sun, 09 Jul 2000 13:31:00 -0500 From: Alex Pasadyn Organization: none X-Mailer: Mozilla 4.72 [en] (Win95; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Status References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hey all, I had to skip out of town the last few days to go be in a wedding, but I'm back now. So, I'm just now catching up on these messages... I had a few comments to add. Alex --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 11:37:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA19649 for dynarec-outgoing; Sun, 9 Jul 2000 11:37:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 9 Jul 2000 11:47:52 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: About my 68k definition In-Reply-To: <1edi3g5.539zjb6h5z7yM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Hm... What kind of emulator is BasiliskII? > A macintosh emulator. In fact, the host triggers an interrupt at > something like 60 Hz, in the main thread. Then, after each instruction > is executed, the UAE core checks if the related spcflag is set. If so, > it handles that. When the target (68k) interrupt handler is reached, the > EMUL_OP is run, switching into native drivers that will refresh the > screen, send audio data, etc. Looks like a fairly specific emulator. I'd guess they put in EMUL_OP in strategic places so they can handle things natively. Of course, that'll give you your biggest speed boost. > - BasiliskII patches the ROM and MacOS so that EMUL_OPs got inserted at > the right places. Yep. Just as I suspected. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 11:38:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA19660 for dynarec-outgoing; Sun, 9 Jul 2000 11:38:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 9 Jul 2000 11:49:16 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Terminals definition In-Reply-To: <00036bf934a40e2b_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >goal for this script was to make it so that one could read it and very > >quickly come up to speed on its operation. Using things like 0, 1, and 2 > >aren't too obvious. ;-( > True. How about something like: > N non-terminal > C conditional > T terminal I hate to say this, but why don't you change the script to be this? Makes quite a bit more sense. I'm just getting in to the parsing, so now would be a good time. ;-) > I also thought of E for exceptions, traps, and subroutine calls, but those > could be conditional as well, so that wouldn't be the best idea... Yeah. Those are either conditional terminals or terminals. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 11:39:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA19669 for dynarec-outgoing; Sun, 9 Jul 2000 11:39:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3968C8F5.AB45D811@mail.utexas.edu> Date: Sun, 09 Jul 2000 13:48:21 -0500 From: Alex Pasadyn Organization: none X-Mailer: Mozilla 4.72 [en] (Win95; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! References: <00036bc297b1ba87_mailit@mail.dynarec.com> <00036bc2fd14b74b_mailit@mail.dynarec.com> <00036bc3bbf7ea2a_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com "M.I.K.e" wrote: > > // C = how to process the data when assembling > // D = how to process the data when disassembling > // examples: > // NOFFSET {32, numeric, ~X, ~X }; // a 32-bit offset that is stored bit- > flipped > > What kind of expressions are possible here? > I need the expression (X=0 ? 8 : X) for the 3 bit quick immediates in 68K. I did not see a problem with that at all. I had this in the 34010 definition: K { 5, numeric, X&0x1f, X?X:32 }; // 5-bit immediate constant 1-32 Alex --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 12:03:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA19698 for dynarec-outgoing; Sun, 9 Jul 2000 12:03:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000709120159.007b43c0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 09 Jul 2000 12:01:59 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: DYNAREC: Disassembler/Debugger Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I'm the new subscriber, so I'm still trying to get up to speed, hopefully I'll get there ;) If you need any info about me, feel free to swing by http://www.powernet.net/~trzy > - The generated DasmTable.cpp file could be interesting. The table is Would the above indicate that this 68K project will have support for spitting out a disassembler similarly to how Generator does this (by parsing the opcode definitions file I believe, it can spit out a disassembler.) If so, then that gets one crucial step out of the way for writing a debugger which pretty much is the basis of my question: will a debugger (perhaps similar to Starscream's interactive debugger) be a part of the package? I'm very unhappy with Starscream's debugger, since it lacks many key features (simple features) that I'd like to see. For example, I think it only disassembles and dumps data from the areas defined in the program fetch region (it should also go through the other parts of the memory map to provide a useful dumping facility IMO) and it doesn't support altering memory locations (a feature that could really be used.) If it hasn't been started yet, and is still up for grabs now or later on in the project, I'd be more than willing to help out. I've written a crumby little 6502 debugger/emulator and am currently working on an SH-2 emulator and a debugger package to use for testing. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 13:02:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA19752 for dynarec-outgoing; Sun, 9 Jul 2000 13:02:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 9 Jul 2000 13:12:58 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <3.0.5.32.20000709120159.007b43c0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > - The generated DasmTable.cpp file could be interesting. The table is > Would the above indicate that this 68K project will have support for > spitting out a disassembler similarly to how Generator does this (by > parsing the opcode definitions file I believe, it can spit out a > disassembler.) Yes. > If so, then that gets one crucial step out of the way for writing a > debugger which pretty much is the basis of my question: will a debugger > (perhaps similar to Starscream's interactive debugger) be a part of the > package? There are currently no plans for a debugger. The disassembler will of course be part of the package. I've always viewed debuggers as a separate entity since they are built on top of the emulator (or recompiler in this case) and was surprised that Neill even included one with Starscream. Main loops are usually so radically different from emulation to emulation that making something generic would always require hacking on the code to make it work properly. But don't let that discourage you. ;-) > I'm very unhappy with Starscream's debugger, since it lacks many > key features (simple features) that I'd like to see. For example, I think > it only disassembles and dumps data from the areas defined in the program > fetch region (it should also go through the other parts of the memory map > to provide a useful dumping facility IMO) and it doesn't support altering > memory locations (a feature that could really be used.) There are a few things I'd like to add to each CPU emulation core that I've written that: * Return the value of any register * Have a method to peruse *ALL* registers * Allow read/writing bytes, words, and dwords * Settable breakpoints that would cause emulation/recompilation to halt So I intend on having the above in the DR68K core at some point. This will be quite useful to the debugger implementor. > If it hasn't been started yet, and is still up for grabs now or later on in > the project, I'd be more than willing to help out. I've written a crumby > little 6502 debugger/emulator and am currently working on an SH-2 emulator > and a debugger package to use for testing. You're the man! I don't think we're far enough along to have enough to support a debugger just yet, but we will in a few weeks. IT'll give you time to sort out how you want things to be done. IMHO, A debugger with a nice Windows interface would rule. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 13:39:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA19794 for dynarec-outgoing; Sun, 9 Jul 2000 13:39:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000709133822.007ae970@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 09 Jul 2000 13:38:22 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: References: <3.0.5.32.20000709120159.007b43c0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >There are currently no plans for a debugger. The disassembler will of >course be part of the package. I've always viewed debuggers as a separate >entity since they are built on top of the emulator (or recompiler in this >case) and was surprised that Neill even included one with Starscream. Main >loops are usually so radically different from emulation to emulation that >making something generic would always require hacking on the code to make >it work properly. > >But don't let that discourage you. ;-) I think there are still some good reasons for including one. For example, it would make a good example implementation to include with the CPU core, it would demonstrate usage of all the CPU emulator functions. If it's flexible enough, it could be in theory implemented with any emulator. I was thinking of having some sort of a set of callbacks implemented which would allow the user to add commands to the debugger that would be innapropriate for it to initially support (such as VRAM dumping, graphics hardware register displays, etc.) By the way, will the disassembler work by copying the final disassembled line to a string buffer which would allow software to display the string as it sees fit? Something like (assuming the app was running under DOS or UNIX): printf("%s\n", Disasm68K()); or in the case of Win32, outputting to a listbox: SendMessage(foobar_listbox, LB_ADDSTRING, 0, (LPARAM) Disasm68K()); or whatever... >There are a few things I'd like to add to each CPU emulation core that >I've written that: > >* Return the value of any register >* Have a method to peruse *ALL* registers >* Allow read/writing bytes, words, and dwords >* Settable breakpoints that would cause emulation/recompilation to halt > >So I intend on having the above in the DR68K core at some point. This will >be quite useful to the debugger implementor. Definitely, especially the breakpoints. >You're the man! I don't think we're far enough along to have enough to >support a debugger just yet, but we will in a few weeks. IT'll give you >time to sort out how you want things to be done. > >IMHO, A debugger with a nice Windows interface would rule. ;-) In a few weeks I should be deep in my SH-2 core thus having my SH-2 debugger pretty much finished up, and that will give me plenty of ideas to think over. I'm not a Win32 man, I'm actually in the process of learning it, but I think I might be able to come up with something. One thing I like about Starscream's debugger is the ability to specify input and output functions which make it possible to use the debugger in practically any environment. I think I would try something like this, and even a little more robust as I mentioned earlier with optional user callbacks for adding support for additional commands. Since I need this sort of a debugger in my Genesis/Sega CD emulator (the need is growing every day ;)) I would definitely put effort into this ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 14:09:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA19839 for dynarec-outgoing; Sun, 9 Jul 2000 14:09:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 9 Jul 2000 14:20:02 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <3.0.5.32.20000709133822.007ae970@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >But don't let that discourage you. ;-) > I think there are still some good reasons for including one. For example, > it would make a good example implementation to include with the CPU core, > it would demonstrate usage of all the CPU emulator functions. Including a sample game (like Food Fight) is a good way, too. > By the way, will the disassembler work by copying the final disassembled > line to a string buffer which would allow software to display the string as > it sees fit? Something like (assuming the app was running under DOS or UNIX): > printf("%s\n", Disasm68K()); > or in the case of Win32, outputting to a listbox: > SendMessage(foobar_listbox, LB_ADDSTRING, 0, (LPARAM) Disasm68K()); Very similar, but they'd be in several separate columns in string form: * Address * Opcode dump * Instruction * Arguments You'll have to connect them yourself by doing something like: printf("%s %-12s %s\t%s\n", pu8AddrStr, pu8OpStr, pu8Instruction, pu8Args); Or the sprintf/fprintf of your choice. ;-) Hell, you could even do it with strcats if you want. > >IMHO, A debugger with a nice Windows interface would rule. ;-) > In a few weeks I should be deep in my SH-2 core thus having my SH-2 > debugger pretty much finished up, and that will give me plenty of ideas to > think over. I'm not a Win32 man, I'm actually in the process of learning > it, but I think I might be able to come up with something. Whatever you do *DON'T USE MFC*! It's big, bloated garbage and helps very little in programming over the equivalent Win32 functions. > One thing I like about Starscream's debugger is the ability to specify > input and output functions which make it possible to use the debugger in > practically any environment. Then when you start getting into more and more CPUs, the feasibility of it becomes much less unfortunately. > callbacks for adding support for additional commands. Since I need this > sort of a debugger in my Genesis/Sega CD emulator (the need is growing > every day ;)) I would definitely put effort into this ;) Knock yourself out. Be thinking about how you want to do it, and by the time you figure everything out, we'll be ready. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 14:15:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA19854 for dynarec-outgoing; Sun, 9 Jul 2000 14:15:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003a01bfe9f3$ce093d60$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000709120159.007b43c0@powernet.net> Subject: Re: DYNAREC: Disassembler/Debugger Date: Sun, 9 Jul 2000 23:13:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Hello, I'm the new subscriber, so I'm still trying to get up to speed, > hopefully I'll get there ;) If you need any info about me, feel free to > swing by http://www.powernet.net/~trzy Welcome! You'll probably notice the increase in mail coming to your inbox now you've joined this group. ;) Hang on, I know you. You're the author of that debatably named Genesis/Megadrive emulator. :) > Would the above indicate that this 68K project will have support for > spitting out a disassembler similarly to how Generator does this (by > parsing the opcode definitions file I believe, it can spit out a > disassembler.) Already answered by the other Neil. Yes. ;) > If it hasn't been started yet, and is still up for grabs now or later on in > the project, I'd be more than willing to help out. I've written a crumby > little 6502 debugger/emulator and am currently working on an SH-2 emulator > and a debugger package to use for testing. Sounds good to me. Rest of the group: Damn, I meant to work on the website this weekend. But I decided to be ill instead - so I didn't. Maybe later this week (tomorrow actually - seeing as it's my birthday next Saturday and my family come over this week)! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 14:17:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA19869 for dynarec-outgoing; Sun, 9 Jul 2000 14:17:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 9 Jul 2000 14:28:33 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <003a01bfe9f3$ce093d60$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Rest of the group: Damn, I meant to work on the website this weekend. But I > decided to be ill instead - so I didn't. Maybe later this week (tomorrow > actually - seeing as it's my birthday next Saturday and my family come over > this week)! That's OK. We know the power of guilt, and when you're the only bonehead not doing anything, it'll motivate you for sure! ;-) ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 14:28:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA19889 for dynarec-outgoing; Sun, 9 Jul 2000 14:28:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Terminals definition From: "M.I.K.e" In-Reply-To: Message-ID: <00036c0183ae5f16_mailit@mail.dynarec.com> References: Date: Sun, 09 Jul 2000 23:38:10 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Mail-It_--335000660" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --Mail-It_--335000660 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit >> N non-terminal >> C conditional >> T terminal >I hate to say this, but why don't you change the script to be this? Makes >quite a bit more sense. I'm just getting in to the parsing, so now would >be a good time. ;-) OK, I guess you want to have some test data for your parser, so I did a quick change and the new definition is attached. >-->Neil -- M.I.K.e No problem is so formidable that you can't just walk away from it. --Mail-It_--335000660 Content-Type: text/x-source-code; name="68K.def" Content-Transfer-Encoding: base64 Content-Disposition: Attachment; filename="68K.def" Ly8gQ1BVIGRlc2NyaXB0aW9uIGZpbGUgZm9yICI2OEsiCi8vIE0uSS5LLmUgMjAwMC0wNy0wOQoK W2NwdWluZm9dCk5hbWUgPSA2OEs7Ckluc3RydWN0aW9uR3JhbnVsYXJpdHkgPSAxNjsKCltvcGVy YW5kc10KRFJFRyAgeyAzLCBrZXlzID0ge0QwPTAsIEQxPTEsIEQyPTIsIEQzPTMsIEQ0PTQsIEQ1 PTUsIEQ2PTYsIEQ3PTd9IH07CkFSRUcgIHsgMywga2V5cyA9IHtBMD0wLCBBMT0xLCBBMj0yLCBB Mz0zLCBBND00LCBBNT01LCBBNj02LCBTUD03fSB9OwpSRUcgICB7IDQsIGtleXMgPSB7RDA9MCwg RDE9MSwgRDI9MiwgRDM9MywgRDQ9NCwgRDU9NSwgRDY9NiwgRDc9NywKICAgICAgICAgICAgICAg ICAgIEEwPTgsIEExPTksIEEyPTEwLCBBMz0xMSwgQTQ9MTIsIEE1PTEzLCBBNj0xNCwgU1A9MTV9 IH07CkNDICAgIHsgNCwga2V5cyA9IHtUPTAsIEY9MSwgSEk9MiwgTFM9MywgQ0M9NCwgQ1M9NSwg TkU9NiwgRVE9NywgVkM9OCwKICAgICAgICAgICAgICAgICAgIFZTPTksIFBMPTEwLCBNST0xMSwg R0U9MTIsIExUPTEzLCBHVD0xNCwgTEU9MTV9IH07CkFCUzMgIHsgMywgbnVtZXJpY307ICAvLyB1 bnNpZ25lZCAzIGJpdCB2YWx1ZQpBQlM0ICB7IDQsIG51bWVyaWN9OyAgLy8gdW5zaWduZWQgNCBi aXQgdmFsdWUKQUJTOCAgeyA4LCBudW1lcmljfTsgIC8vIHVuc2lnbmVkIDggYml0IHZhbHVlCkFC UzE2IHsxNiwgbnVtZXJpY307ICAvLyB1bnNpZ25lZCAxNiBiaXQgdmFsdWUKQUJTMzIgezMyLCBu dW1lcmljfTsgIC8vIHVuc2lnbmVkIDMyIGJpdCB2YWx1ZQpSRUw4ICB7IDgsIG51bWVyaWN9OyAg Ly8gc2lnbmVkIDggYml0IHZhbHVlClJFTDE2IHsxNiwgbnVtZXJpY307ICAvLyBzaWduZWQgMTYg Yml0IHZhbHVlClJFTDMyIHszMiwgbnVtZXJpY307ICAvLyBzaWduZWQgMzIgYml0IHZhbHVlCk9G RjggIHsgOCwgbnVtZXJpYywgUEMrMitYLCBQQysyK1h9OyAgLy8gOCBiaXQgb2Zmc2V0Ck9GRjE2 IHsxNiwgbnVtZXJpYywgUEMrMitYLCBQQysyK1h9OyAgLy8gMTYgYml0IG9mZnNldAoKW2ZsYWdz XQpDID0geyAweDAwMDEsICJjYXJyeSIgfTsKViA9IHsgMHgwMDAyLCAib3ZlcmZsb3ciIH07Clog PSB7IDB4MDAwNCwgInplcm8iIH07Ck4gPSB7IDB4MDAwOCwgIm5lZ2F0aXZlIiB9OwpYID0geyAw eDAwMTAsICJleHRlbmQiIH07CgpbaW5zdHJ1Y3Rpb25zXQovLyAwMDAwIEJpdCBNYW5pcHVsYXRp b24vTU9WRVAvSW1tZWRpYXRlCi8vIDAwMDEgTW92ZSBCeXRlCi8vIDAwMTAgTW92ZSBMb25nCi8v IDAwMTEgTW92ZSBXb3JkCi8vIDAxMDAgTWlzY2VsbGFuZW91cwowMTAwMTExMDAxMTEwMDAxIHxO T1B8fHx8NCA0IE47ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBub3AKMDEwMDEwMTAx MTExMTEwMCB8SUxMRUdBTHx8fHwzNCAzNCBUOyAgICAgICAgICAgICAgICAgICAgICAgLy8gaWxs ZWdhbAowMTAwMTExMDAxMTEwMDAwIHxSRVNFVHx8fHwxMzIgMTMyIE47ICAgICAgICAgICAgICAg ICAgICAgICAvLyByZXNldAowMTAwMTExMDAxMTEwMDExIHxSVEV8fENWWk5YfHwyMCAyMCBUOyAg ICAgICAgICAgICAgICAgICAgICAvLyBydGUKMDEwMDExMTAwMTExMDExMSB8UlRSfHxDVlpOWHx8 MjAgMjAgVDsgICAgICAgICAgICAgICAgICAgICAgLy8gcnRyCjAxMDAxMTEwMDExMTAxMDEgfFJU U3x8fHwxNiAxNiBUOyAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHJ0cwowMTAwMTExMDAx MTEwMDEwICgxNnhJKSB8U1RPUHxBQlMxNj1JfENWWk5YfHw0IDQgVDsgICAgICAgICAvLyBzdG9w ICNjb25zdAowMTAwMTExMDAxMDBWVlZWIHxUUkFQfEFCUzQ9Vnx8Q1ZaTlh8MzggMzggVDsgICAg ICAgICAgICAgICAvLyB0cmFwICN2ZWMKMDEwMDExMTAwMTExMDExMCB8VFJBUFZ8fHxDVlpOWHwz NCA0IEM7ICAgICAgICAgICAgICAgICAgICAgLy8gdHJhcHYKMDEwMDExMTAwMTAxMEFBQSAoMTZ4 TykgfExJTkt8QVJFRz1BIFJFTDE2PU98fHwxOCAxOCBOOyAgICAgLy8gbGluayBBbiwgI2Rpc3QK MDEwMDExMTAwMTAxMUFBQSB8VU5MS3xBUkVHPUF8fHwxMiAxMiBOOyAgICAgICAgICAgICAgICAg ICAgLy8gdW5sayBBbgowMTAwMTAwMDAxMDAwREREIHxTV0FQfERSRUc9RHxOWlZDfHw0IDQgTjsg ICAgICAgICAgICAgICAgICAvLyBzd2FwIERuCi8vIDAxMDEgQUREUS9TVUJRL1NjYy9EQmNjCjAx MDEwMDAwMTEwMDFEREQgKDE2eE8pIHxEQlR8RFJFRz1EIE9GRjE2PU98fHwxMCAxMiBOOyAgICAg IC8vIGRidCBEbiwgb2Zmc2V0CjAxMDEwMDAxMTEwMDFEREQgKDE2eE8pIHxEQlJBfERSRUc9RCBP RkYxNj1PfHx8MTAgMTIgQzsgICAgIC8vIGRicmEgRG4sIG9mZnNldAowMTAxMDEwMDExMDAxRERE ICgxNnhPKSB8REJDQ3xEUkVHPUQgT0ZGMTY9T3x8Q3wxMCAxMiBDOyAgICAvLyBkYmNjIERuLCBv ZmZzZXQKMDEwMTAxMDExMTAwMURERCAoMTZ4TykgfERCQ1N8RFJFRz1EIE9GRjE2PU98fEN8MTAg MTIgQzsgICAgLy8gZGJjcyBEbiwgb2Zmc2V0CjAxMDEwMTExMTEwMDFEREQgKDE2eE8pIHxEQkVR fERSRUc9RCBPRkYxNj1PfHxafDEwIDEyIEM7ICAgIC8vIGRiZXEgRG4sIG9mZnNldAowMTAxMTEw MDExMDAxREREICgxNnhPKSB8REJHRXxEUkVHPUQgT0ZGMTY9T3x8TlZ8MTAgMTIgQzsgICAvLyBk YmdlIERuLCBvZmZzZXQKMDEwMTExMTAxMTAwMURERCAoMTZ4TykgfERCR1R8RFJFRz1EIE9GRjE2 PU98fE5WWnwxMCAxMiBDOyAgLy8gZGJndCBEbiwgb2Zmc2V0CjAxMDEwMDEwMTEwMDFEREQgKDE2 eE8pIHxEQkhJfERSRUc9RCBPRkYxNj1PfHxDWnwxMCAxMiBDOyAgIC8vIGRiaGkgRG4sIG9mZnNl dAowMTAxMTExMTExMDAxREREICgxNnhPKSB8REJMRXxEUkVHPUQgT0ZGMTY9T3x8Wk5WfDEwIDEy IEM7ICAvLyBkYmxlIERuLCBvZmZzZXQKMDEwMTAwMTExMTAwMURERCAoMTZ4TykgfERCTFN8RFJF Rz1EIE9GRjE2PU98fENafDEwIDEyIEM7ICAgLy8gZGJscyBEbiwgb2Zmc2V0CjAxMDExMTAxMTEw MDFEREQgKDE2eE8pIHxEQkxUfERSRUc9RCBPRkYxNj1PfHxOVnwxMCAxMiBDOyAgIC8vIGRibHQg RG4sIG9mZnNldAowMTAxMTAxMTExMDAxREREICgxNnhPKSB8REJNSXxEUkVHPUQgT0ZGMTY9T3x8 TnwxMCAxMiBDOyAgICAvLyBkYm1pIERuLCBvZmZzZXQKMDEwMTAxMTAxMTAwMURERCAoMTZ4Tykg fERCTkV8RFJFRz1EIE9GRjE2PU98fFp8MTAgMTIgQzsgICAgLy8gZGJuZSBEbiwgb2Zmc2V0CjAx MDExMDEwMTEwMDFEREQgKDE2eE8pIHxEQlBMfERSRUc9RCBPRkYxNj1PfHxOfDEwIDEyIEM7ICAg IC8vIGRicGwgRG4sIG9mZnNldAowMTAxMTAwMDExMDAxREREICgxNnhPKSB8REJWQ3xEUkVHPUQg T0ZGMTY9T3x8VnwxMCAxMiBDOyAgICAvLyBkYnZjIERuLCBvZmZzZXQKMDEwMTEwMDExMTAwMURE RCAoMTZ4TykgfERCVlN8RFJFRz1EIE9GRjE2PU98fFZ8MTAgMTIgQzsgICAgLy8gZGJ2cyBEbiwg b2Zmc2V0Ci8vIDAxMTAgQmNjL0JTUgowMTEwMDAwMDAwMDAwMDAwICgxNnhPKSB8QlJBLkx8T0ZG MTY9T3x8fDEwIDEwIFQ7ICAgICAgICAgICAvLyBicmEubCBvZmZzZXQKMDExMDAwMDBPT09PT09P TyAgICAgICAgfEJSQS5TfCBPRkY4PU98fHwxMCAxMCBUOyAgICAgICAgICAgLy8gYnJhLnMgb2Zm c2V0CjAxMTAwMDAxMDAwMDAwMDAgKDE2eE8pIHxCU1IuTHxPRkYxNj1PfHx8MTggMTggVDsgICAg ICAgICAgIC8vIGJzci5sIG9mZnNldAowMTEwMDAwMU9PT09PT09PICAgICAgICB8QlNSLlN8IE9G Rjg9T3x8fDE4IDE4IFQ7ICAgICAgICAgICAvLyBic3IucyBvZmZzZXQKMDExMDAxMDAwMDAwMDAw MCAoMTZ4TykgfEJDQy5MfE9GRjE2PU98fEN8MTAgMTIgQzsgICAgICAgICAgLy8gYmNjLmwgb2Zm c2V0CjAxMTAwMTAxMDAwMDAwMDAgKDE2eE8pIHxCQ1MuTHxPRkYxNj1PfHxDfDEwIDEyIEM7ICAg ICAgICAgIC8vIGJjcy5sIG9mZnNldAowMTEwMDExMTAwMDAwMDAwICgxNnhPKSB8QkVRLkx8T0ZG MTY9T3x8WnwxMCAxMiBDOyAgICAgICAgICAvLyBiZXEubCBvZmZzZXQKMDExMDExMDAwMDAwMDAw MCAoMTZ4TykgfEJHRS5MfE9GRjE2PU98fE5WfDEwIDEyIEM7ICAgICAgICAgLy8gYmdlLmwgb2Zm c2V0CjAxMTAxMTEwMDAwMDAwMDAgKDE2eE8pIHxCR1QuTHxPRkYxNj1PfHxOVlp8MTAgMTIgQzsg ICAgICAgIC8vIGJndC5sIG9mZnNldAowMTEwMDAxMDAwMDAwMDAwICgxNnhPKSB8QkhJLkx8T0ZG MTY9T3x8Q1p8MTAgMTIgQzsgICAgICAgICAvLyBiaGkubCBvZmZzZXQKMDExMDExMTEwMDAwMDAw MCAoMTZ4TykgfEJMRS5MfE9GRjE2PU98fFpOVnwxMCAxMiBDOyAgICAgICAgLy8gYmxlLmwgb2Zm c2V0CjAxMTAwMDExMDAwMDAwMDAgKDE2eE8pIHxCTFMuTHxPRkYxNj1PfHxDWnwxMCAxMiBDOyAg ICAgICAgIC8vIGJscy5sIG9mZnNldAowMTEwMTEwMTAwMDAwMDAwICgxNnhPKSB8QkxULkx8T0ZG MTY9T3x8TlZ8MTAgMTIgQzsgICAgICAgICAvLyBibHQubCBvZmZzZXQKMDExMDEwMTEwMDAwMDAw MCAoMTZ4TykgfEJNSS5MfE9GRjE2PU98fE58MTAgMTIgQzsgICAgICAgICAgLy8gYm1pLmwgb2Zm c2V0CjAxMTAwMTEwMDAwMDAwMDAgKDE2eE8pIHxCTkUuTHxPRkYxNj1PfHxafDEwIDEyIEM7ICAg ICAgICAgIC8vIGJuZS5sIG9mZnNldAowMTEwMTAxMDAwMDAwMDAwICgxNnhPKSB8QlBMLkx8T0ZG MTY9T3x8TnwxMCAxMiBDOyAgICAgICAgICAvLyBicGwubCBvZmZzZXQKMDExMDEwMDAwMDAwMDAw MCAoMTZ4TykgfEJWQy5MfE9GRjE2PU98fFZ8MTAgMTIgQzsgICAgICAgICAgLy8gYnZjLmwgb2Zm c2V0CjAxMTAxMDAxMDAwMDAwMDAgKDE2eE8pIHxCVlMuTHxPRkYxNj1PfHxWfDEwIDEyIEM7ICAg ICAgICAgIC8vIGJ2cy5sIG9mZnNldAowMTEwMDEwME9PT09PT09PICAgICAgICB8QkNDLlN8IE9G Rjg9T3x8Q3wxMCAxMiBDOyAgICAgICAgICAvLyBiY2MucyBvZmZzZXQKMDExMDAxMDFPT09PT09P TyAgICAgICAgfEJDUy5TfCBPRkY4PU98fEN8MTAgMTIgQzsgICAgICAgICAgLy8gYmNzLnMgb2Zm c2V0CjAxMTAwMTExT09PT09PT08gICAgICAgIHxCRVEuU3wgT0ZGOD1PfHxafDEwIDEyIEM7ICAg ICAgICAgIC8vIGJlcS5zIG9mZnNldAowMTEwMTEwME9PT09PT09PICAgICAgICB8QkdFLlN8IE9G Rjg9T3x8TlZ8MTAgMTIgQzsgICAgICAgICAvLyBiZ2UucyBvZmZzZXQKMDExMDExMTBPT09PT09P TyAgICAgICAgfEJHVC5TfCBPRkY4PU98fE5WWnwxMCAxMiBDOyAgICAgICAgLy8gYmd0LnMgb2Zm c2V0CjAxMTAwMDEwT09PT09PT08gICAgICAgIHxCSEkuU3wgT0ZGOD1PfHxDWnwxMCAxMiBDOyAg ICAgICAgIC8vIGJoaS5zIG9mZnNldAowMTEwMTExMU9PT09PT09PICAgICAgICB8QkxFLlN8IE9G Rjg9T3x8Wk5WfDEwIDEyIEM7ICAgICAgICAvLyBibGUucyBvZmZzZXQKMDExMDAwMTFPT09PT09P TyAgICAgICAgfEJMUy5TfCBPRkY4PU98fENafDEwIDEyIEM7ICAgICAgICAgLy8gYmxzLnMgb2Zm c2V0CjAxMTAxMTAxT09PT09PT08gICAgICAgIHxCTFQuU3wgT0ZGOD1PfHxOVnwxMCAxMiBDOyAg ICAgICAgIC8vIGJsdC5zIG9mZnNldAowMTEwMTAxMU9PT09PT09PICAgICAgICB8Qk1JLlN8IE9G Rjg9T3x8TnwxMCAxMiBDOyAgICAgICAgICAvLyBibWkucyBvZmZzZXQKMDExMDAxMTBPT09PT09P TyAgICAgICAgfEJORS5TfCBPRkY4PU98fFp8MTAgMTIgQzsgICAgICAgICAgLy8gYm5lLnMgb2Zm c2V0CjAxMTAxMDEwT09PT09PT08gICAgICAgIHxCUEwuU3wgT0ZGOD1PfHxOfDEwIDEyIEM7ICAg ICAgICAgIC8vIGJwbC5zIG9mZnNldAowMTEwMTAwME9PT09PT09PICAgICAgICB8QlZDLlN8IE9G Rjg9T3x8VnwxMCAxMiBDOyAgICAgICAgICAvLyBidmMucyBvZmZzZXQKMDExMDEwMDFPT09PT09P TyAgICAgICAgfEJWUy5TfCBPRkY4PU98fFZ8MTAgMTIgQzsgICAgICAgICAgLy8gYnZzLnMgb2Zm c2V0Ci8vIDAxMTEgTU9WRVEKMDExMURERDBJSUlJSUlJSSB8TU9WRVF8UkVMOD1JfE5aVkN8fDQg NCBOOyAgICAgICAgICAgICAgICAgLy8gbW92ZXEgI3NpZ25lZCwgRG4KLy8gMTAwMCBPUi9ESVYv U0JDRAovLyAxMDAxIFNVQi9TVUJYCi8vIDEwMTAgKExpbmUtQSkKLy8gMTAxMSBDTVAvRU9SCi8v IDExMDAgQU5EL01VTC9BQkNEL0VYRwoxMTAwWFhYMTAxMDAwWVlZIHxFWEd8RFJFRz1YIERSRUc9 WXx8fDYgNiBOOyAgICAgICAgICAgICAgICAvLyBleGcgRHgsIER5CjExMDBYWFgxMDEwMDFZWVkg fEVYR3xBUkVHPVggQVJFRz1ZfHx8NiA2IE47ICAgICAgICAgICAgICAgIC8vIGV4ZyBBeCwgQXkK MTEwMFhYWDExMDAwMVlZWSB8RVhHfERSRUc9WCBBUkVHPVl8fHw2IDYgTjsgICAgICAgICAgICAg ICAgLy8gZXhnIER4LCBBeQovLyAxMTAxIEFERC9BRERYCi8vIDExMTAgU2hpZnQvUm90YXRlCi8v IDExMTEgKExpbmUtRikKCi8vIEVPRgo= --Mail-It_--335000660-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 17:11:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA20033 for dynarec-outgoing; Sun, 9 Jul 2000 17:11:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000709171011.007b2b50@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 09 Jul 2000 17:10:11 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <003a01bfe9f3$ce093d60$0100a8c0@lion> References: <3.0.5.32.20000709120159.007b43c0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Welcome! You'll probably notice the increase in mail coming to your inbox >now you've joined this group. ;) > >Hang on, I know you. You're the author of that debatably named >Genesis/Megadrive emulator. :) Yep, that's the one! BTW, I forgot to ask last time, what are the performance expectations for the 68K emulator? I'm running a Pentium 166MHz (no MMX) so I'm naturally a bit curious ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 19:41:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA20145 for dynarec-outgoing; Sun, 9 Jul 2000 19:41:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 9 Jul 2000 19:52:24 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <3.0.5.32.20000709171011.007b2b50@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Hang on, I know you. You're the author of that debatably named > >Genesis/Megadrive emulator. :) > BTW, I forgot to ask last time, what are the performance expectations for > the 68K emulator? I'm running a Pentium 166MHz (no MMX) so I'm naturally a > bit curious ;) Based on initial on-paper caluclations, I'm guessing about 2-3X that of Starscream. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 19:43:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA20155 for dynarec-outgoing; Sun, 9 Jul 2000 19:43:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 9 Jul 2000 19:54:03 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > BTW, I forgot to ask last time, what are the performance expectations for > > the 68K emulator? I'm running a Pentium 166MHz (no MMX) so I'm naturally a > > bit curious ;) > Based on initial on-paper caluclations, I'm guessing about 2-3X that of > Starscream. Also forgot to mention - we've got to ween you off of RAZE and use MZ80 instead... ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 21:05:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA20224 for dynarec-outgoing; Sun, 9 Jul 2000 21:05:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000709210348.007b0460@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 09 Jul 2000 21:03:48 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Based on initial on-paper caluclations, I'm guessing about 2-3X that of > Starscream. Wow, that should easily get Genital running at full speed on a P166 w/out frameskipping! >Also forgot to mention - we've got to ween you off of RAZE and use MZ80 >instead... ;-) I'll get to it one of these days ;) I haven't been using the Z80 emulation at all though, I run it with -noz80. I suppose when I get around to implementing sound I'll spend time getting that portion of the system emulated properly. Bart Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 22:16:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA20284 for dynarec-outgoing; Sun, 9 Jul 2000 22:16:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 9 Jul 2000 22:27:24 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <3.0.5.32.20000709210348.007b0460@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Based on initial on-paper caluclations, I'm guessing about 2-3X that of > > Starscream. > Wow, that should easily get Genital running at full speed on a P166 w/out > frameskipping! Provided that the CPU core is the bottleneck. Most often it's not. Or do you know otherwise? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 23:13:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA20335 for dynarec-outgoing; Sun, 9 Jul 2000 23:13:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007100620.IAA19113@pons.ac.upc.es> Subject: Re: DYNAREC: 68K definition In-Reply-To: <00036beb7902b910_mailit@mail.dynarec.com> "from M.I.K.e at Jul 8, 2000 09:20:21 pm" To: dynarec@dynarec.com Date: Mon, 10 Jul 2000 08:20:36 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Quite silent on the list... All busy? I hope so! ;-) > I have my now CPU now (P3-550/512K; upgraded from P2-350) ;-) > I already tried a P3-500, but that didn't work correctly - strange! > Grr!! Now you have a powerful PC than mine. ;) > Anyway, I put some more work into the 68K definition, well about as much as I > can do without additional information from Alex... I hope that Victor doesn't > work on the same definitions as I since it's a bit hard to coordinate with > him on the weekend... Hehehe! I realised that and I spent the weekend doing another work: I finally finished FF Tactics, it was taking too much time. ;) How should we share now the opcodes so I could do some work?. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 23:25:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA20357 for dynarec-outgoing; Sun, 9 Jul 2000 23:25:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000709232350.007b19a0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 09 Jul 2000 23:23:50 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: References: <3.0.5.32.20000709210348.007b0460@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Provided that the CPU core is the bottleneck. Most often it's not. Or do >you know otherwise? The graphics engine is the major bottleneck, it does need optimizing. It's in C and I can't yet use the compiler's optimization switches because of something in there that causes it to behave erratically. It needs a rewrite, probably in assembly now that I have a good idea of how the thing should be structured. The CPU is, however, the next thing on the list using up cycles, I did some rudimentary profiling a while back. BTW, one final question... a bit OT, sorry for taking your coding time away :/ I'll make this as brief as possible. My initial SH-2 emulator is a C-based interpretive deal, and I'm using a function pointer table. This is a performance problem on the X86 because of the branch prediction mechanism (and other things I'm probably not aware of) and I hear it's even worse on other architectures (PPC, SPARC, etc.) I'm not planning on using it myself under anything besides X86 though. I'm not very far yet, and I was wondering if perhaps I should change my method while I still can? switch () jump tables are faster, but do you think the performance gain will be very significant or should I stick w/ my current method? Currently, the emulator does about 3MHz on a P166 (and the complex instructions and instructions which will need memory handlers haven't even been implemented yet) which is kind of pathetic... Thanks a bunch, Bart Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 9 23:33:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA20374 for dynarec-outgoing; Sun, 9 Jul 2000 23:33:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007100640.IAA23325@pons.ac.upc.es> Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <3.0.5.32.20000709133822.007ae970@powernet.net> "from Bart Trzynadlowski at Jul 9, 2000 01:38:22 pm" To: dynarec@dynarec.com Date: Mon, 10 Jul 2000 08:40:04 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > callbacks for adding support for additional commands. Since I need this > sort of a debugger in my Genesis/Sega CD emulator (the need is growing > every day ;)) I would definitely put effort into this ;) > > Mega CD emulator? Hey! I'm interested on this. Have you done some progress? A friend and me are planning to try to implement a Mega CD emulator (it is the Snatcher call ;). It will be interesting me with "so many" experience in emulation and my friend which knows about nothing. ;) Anyway, welcome to this list. The list with more traffic with less people writing I think. ;) > Bart Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 00:11:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA20419 for dynarec-outgoing; Mon, 10 Jul 2000 00:11:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Disassembler/Debugger Date: Mon, 10 Jul 2000 09:15:34 +0200 Message-ID: <01bfea3e$a3676f00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >That's OK. We know the power of guilt, and when you're the only bonehead >not doing anything, it'll motivate you for sure! ;-) ;-) Uh... thanks. I think. ;) I'll try and do something tonight. I know I've got a new logo (more readable) to try out so I can put that up at the same time. I think everyone is happy with the look so far so I'll keep that one. So I'll try and create a page that describes how to create a script for the parser - but as far as other things go, I can't do it all! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 01:10:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA20479 for dynarec-outgoing; Mon, 10 Jul 2000 01:10:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 01:21:33 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <3.0.5.32.20000709232350.007b19a0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > something in there that causes it to behave erratically. It needs a > rewrite, probably in assembly now that I have a good idea of how the thing > should be structured. The CPU is, however, the next thing on the list using > up cycles, I did some rudimentary profiling a while back. Hehehehe... what else is there that uses up cycles other than CPU emulation and graphics? ;-) ;-) Genesis hardware is tough to do in the 2D realm since you get *NO* hardware assist. > :/ I'll make this as brief as possible. My initial SH-2 emulator is a > C-based interpretive deal, and I'm using a function pointer table. How many possible instructions does the SH-2 have? > other architectures (PPC, SPARC, etc.) I'm not planning on using it myself > under anything besides X86 though. I'm not very far yet, and I was > wondering if perhaps I should change my method while I still can? switch () > jump tables are faster, but do you think the performance gain will be very > significant or should I stick w/ my current method? There's a silver lining. You should stick them in switch/case statements for two reasons: 1: The compiler can optimize better because it's within all one procedure. If you break them up, then the compiler will ditch all register based expressions. This is a big deal on large regsiter machines. 2: The compiler may have some tricky way to do instruction fetching/jumping > does about 3MHz on a P166 (and the complex instructions and instructions > which will need memory handlers haven't even been implemented yet) which is > kind of pathetic... Can you email me (privately) a copy of your C core? I'd like to have a look. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 01:11:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA20497 for dynarec-outgoing; Mon, 10 Jul 2000 01:11:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 01:22:55 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Hehehehehe Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Slightly off topic, but dynarec.com has now been up for 61 days - right after I installed the OS and rebooted to have the DNS changes take effect. Let's see how long it'll stay up! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 01:21:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA20514 for dynarec-outgoing; Mon, 10 Jul 2000 01:21:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007100826.KAA21006@pons.ac.upc.es> Subject: Re: DYNAREC: Hehehehehe In-Reply-To: "from Neil Bradley at Jul 10, 2000 01:22:55 am" To: dynarec@dynarec.com Date: Mon, 10 Jul 2000 10:26:59 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Slightly off topic, but dynarec.com has now been up for 61 days - right > after I installed the OS and rebooted to have the DNS changes take > effect. Let's see how long it'll stay up! > Years? ;) > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 01:25:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA20527 for dynarec-outgoing; Mon, 10 Jul 2000 01:25:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 01:36:39 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Hehehehehe In-Reply-To: <200007100826.KAA21006@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Slightly off topic, but dynarec.com has now been up for 61 days - right > > after I installed the OS and rebooted to have the DNS changes take > > effect. Let's see how long it'll stay up! > Years? ;) Well, it *IS* FreeBSD. ;-) I think our record is a bit over 4.4 years with FreeBSD 1.1.5 on a router we've had up forever. Barring any hardware or power failures with this machine, there's no reason it'll die. My personal record for a machine was 147 days (on FreeBSD 3.2) and I took it down to install a new hard drive array. ;-( -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 01:56:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA20562 for dynarec-outgoing; Mon, 10 Jul 2000 01:56:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007100854.KAA18272@pons.ac.upc.es> Subject: Re: DYNAREC: Hehehehehe In-Reply-To: "from Neil Bradley at Jul 10, 2000 01:36:39 am" To: dynarec@dynarec.com Date: Mon, 10 Jul 2000 10:54:10 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Slightly off topic, but dynarec.com has now been up for 61 days - right > > > after I installed the OS and rebooted to have the DNS changes take > > > effect. Let's see how long it'll stay up! > > Years? ;) > > Well, it *IS* FreeBSD. ;-) I think our record is a bit over 4.4 years with > FreeBSD 1.1.5 on a router we've had up forever. Barring any hardware or > power failures with this machine, there's no reason it'll die. My personal > record for a machine was 147 days (on FreeBSD 3.2) and I took it down to > install a new hard drive array. ;-( > Hehehe. I know you like to talk about your favourite OS. ;) > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 03:01:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA20783 for dynarec-outgoing; Mon, 10 Jul 2000 03:01:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007100854.KAA18272@pons.ac.upc.es> Subject: Re: DYNAREC: Hehehehehe In-Reply-To: "from Neil Bradley at Jul 10, 2000 01:36:39 am" To: dynarec@dynarec.com Date: Mon, 10 Jul 2000 10:54:10 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Slightly off topic, but dynarec.com has now been up for 61 days - right > > > after I installed the OS and rebooted to have the DNS changes take > > > effect. Let's see how long it'll stay up! > > Years? ;) > > Well, it *IS* FreeBSD. ;-) I think our record is a bit over 4.4 years with > FreeBSD 1.1.5 on a router we've had up forever. Barring any hardware or > power failures with this machine, there's no reason it'll die. My personal > record for a machine was 147 days (on FreeBSD 3.2) and I took it down to > install a new hard drive array. ;-( > Hehehe. I know you like to talk about your favourite OS. ;) > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 05:01:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA20894 for dynarec-outgoing; Mon, 10 Jul 2000 05:01:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <04c301bfea67$b41f8980$3bb401d5@nibble> From: "Kieron Wilkinson" To: References: <01bfe7f0$f21fc980$35901a17@turkey> Subject: Re: DYNAREC: Example script! Date: Mon, 10 Jul 2000 12:58:13 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hmm. I'm going to give this one up right now because now I'm thinking that I > can't win this argument. Pascal, Java, Ada and all the other high-level > languages are the same. You have to include libraries to do it. Heh, but at > least STRING is a recognised type in Pascal and Ada. ;) Err, and a String class is recognised in Java, you do not have to include any libraries to do that... In fact, you can use the '+' operator for string concatenation just about anywhere... But that is just a convenience put in by the Java designers since many people do it so often. BTW Neil G, You know my 68K system emulator project that I just did in my final year? I just got the marks back for it, and I got the highest in the year! I am getting an award for it on graduation day! How cool is that?! :))) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 05:22:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA20916 for dynarec-outgoing; Mon, 10 Jul 2000 05:22:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Example script! Date: Mon, 10 Jul 2000 14:24:44 +0200 Message-ID: <01bfea69$d410ce00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Err, and a String class is recognised in Java, you do not have to include >any libraries to do that... No, but I could see people talking about the "string" class and so I realised I was losing. :) >In fact, you can use the '+' operator for string concatenation just about >anywhere... But that is just a convenience put in by the Java designers >since many people do it so often. You could with the CStr class that I eventually used in C++ too. It was useful at the time... >BTW Neil G, You know my 68K system emulator project that I just did in my >final year? I just got the marks back for it, and I got the highest in the >year! I am getting an award for it on graduation day! How cool is that?! >:))) Well done - great news! I'm happy for you! :) Now all we have to do is wait for you to implement it into MESS. ;) Or you could give up on that and help us out with the dynarec(s)! ;-P Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 05:56:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA20952 for dynarec-outgoing; Mon, 10 Jul 2000 05:56:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K definition From: "M.I.K.e" In-Reply-To: <200007100620.IAA19113@pons.ac.upc.es> Message-ID: <00036c0e62f5659d_mailit@mail.dynarec.com> References: <200007100620.IAA19113@pons.ac.upc.es> Date: Mon, 10 Jul 2000 14:59:35 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Grr!! Now you have a powerful PC than mine. ;) That was the only reason why I bought it! ;-) No, actually my board only supports up to 600MHz and I wanted to upgrade before I'd have to buy a new board because I wouldn't get any CPUs that work with my board. The 550MHz combined with 512K L2 cache should also provide a nice speed for emulation, and a complete make of our project only takes 31 seconds instead of 46 as before. >Hehehe! I realised that and I spent the weekend doing another work: >I finally finished FF Tactics, it was taking too much time. ;) Hehe, I played a bit of Syphon Filter ;-) >How should we share now the opcodes so I could do some work?. Good question. I think I'll take Line-A and Line-F instructions - easy work for me because those have to be implemented by the operating system ;-) Honestly, I think that we need more information how we should handle the more complicated addressing modes since I now have all the primitive stuff. How about some more info Alex? And before we can decide who wants to do which instructions we'll have to know how many people will be working on the definition. I guess NB and Alex will do the programming and traget code generation stuff, which should keep them busy for some time. There is you (Victor) and me working on the definition, but I think we could need at least one or two more helpers if this should be finished ASAP, otherwise it'll take ages. What about NG? Do you focus on the web design or do you still want to do some work on the definition file? Who else wants to be a part of the famous Dynarec Group? ;-) >Victor Moya -- M.I.K.e Equal bytes for women. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 05:56:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA20966 for dynarec-outgoing; Mon, 10 Jul 2000 05:56:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Disassembler/Debugger From: "M.I.K.e" In-Reply-To: Message-ID: <00036c0e126644c0_mailit@mail.dynarec.com> References: Date: Mon, 10 Jul 2000 14:37:04 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >How many possible instructions does the SH-2 have? According to the SH7604 Product Brief there are 61 instruction types, but SuperH has plenty of addressing modes for a RISC chip. >-->Neil -- M.I.K.e America was discovered by Amerigo Vespucci and was named after him, until people got tired of living in a place called "Vespuccia" and changed its name to "America". -- Mike Harding, "The Armchair Anarchist's Almanac" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 05:56:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA20973 for dynarec-outgoing; Mon, 10 Jul 2000 05:56:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Disassembler/Debugger From: "M.I.K.e" In-Reply-To: <3.0.5.32.20000709210348.007b0460@powernet.net> Message-ID: <00036c0e3641cfb1_mailit@mail.dynarec.com> References: <3.0.5.32.20000709210348.007b0460@powernet.net> Date: Mon, 10 Jul 2000 14:47:05 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'll get to it one of these days ;) I haven't been using the Z80 emulation >at all though, I run it with -noz80. I suppose when I get around to >implementing sound I'll spend time getting that portion of the system >emulated properly. One of my friends who ported DGen to RISC OS told me that adding Z80 emulation increases compatibility even without sound emulation. >Bart -- M.I.K.e Honk if you love peace and quiet. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 05:57:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA20977 for dynarec-outgoing; Mon, 10 Jul 2000 05:57:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Disassembler/Debugger From: "M.I.K.e" In-Reply-To: <3.0.5.32.20000709232350.007b19a0@powernet.net> Message-ID: <00036c0e77863fae_mailit@mail.dynarec.com> References: <3.0.5.32.20000709210348.007b0460@powernet.net> <3.0.5.32.20000709232350.007b19a0@powernet.net> Date: Mon, 10 Jul 2000 15:05:20 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >My initial SH-2 emulator [...] >does about 3MHz on a P166 (and the complex instructions and instructions >which will need memory handlers haven't even been implemented yet) which is >kind of pathetic... Hmm, do you plan to make a Sega Saturn emulator? I'm not sure what else could be driven by that CPU, apart from some boring embedded systems. In that case 3MHz is a bit slow because you'll need two SH-2 running at 28MHz... BTW, since SuperH was largely influenced by MIPS and doesn't have normal condition flags it should be about as easy to write a dynarec for it as it is for MIPS. >Bart -- M.I.K.e Every program has two purposes -- one for which it was written and another for which it wasn't. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 06:57:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA21030 for dynarec-outgoing; Mon, 10 Jul 2000 06:57:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 68K definition Date: Mon, 10 Jul 2000 16:01:03 +0200 Message-ID: <01bfea77$489e3980$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >The 550MHz combined with 512K L2 cache should also provide a nice speed for >emulation, and a complete make of our project only takes 31 seconds instead >of 46 as before. Cool. I'll be going for the AMD Athlon 750 either next month or the month after - I'll keep my current machine (450MHz) as a backup/server machine. I may even install FreeBSD on it. Gosh, NB would be proud. ;) >Good question. I think I'll take Line-A and Line-F instructions - easy work >for me because those have to be implemented by the operating system ;-) Uh, can I have those? ;-p >And before we can decide who wants to do which instructions we'll have to >know how many people will be working on the definition. 3 so far. >I guess NB and Alex will do the programming and traget code generation stuff, >which should keep them busy for some time. If you mean the intermediate stuff (the parser for instance) then yes, it's them. If you mean the end then that *should* be generated by the scripts. So everyone who works on the CPU definitions should take part in that. >There is you (Victor) and me >working on the definition, but I think we could need at least one or two more >helpers if this should be finished ASAP, otherwise it'll take ages. And me! Don't forget me! Never forget me! ;) >What about NG? Do you focus on the web design or do you still want to do some >work on the definition file? I'll work on the website, but I don't want to focus on it. I joined this list so that I can program, not do pretty HTML layouts. Of course, the layouts are much easier... ;) No, I want to be working on the 68k definition file too. Or, if not that, then some CPU. But I think the 68k would be a wise choice - we want to get it done quickly! >Who else wants to be a part of the famous Dynarec Group? ;-) Speak now - or forever hold your peace. Or pieces if you're a zombie... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 08:08:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA21091 for dynarec-outgoing; Mon, 10 Jul 2000 08:08:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ff01bfea81$c432fd60$2e3c073e@nibble> From: "Kieron Wilkinson" To: References: <01bfea69$d410ce00$35901a17@turkey> Subject: Re: DYNAREC: Example script! Date: Mon, 10 Jul 2000 15:18:33 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well done - great news! I'm happy for you! :) Hehe, cheers. :) > Now all we have to do is wait for you to implement it into MESS. ;) It's getting there, I got some gfx up, but it is a case of getting round, up and over the MAME API, which is constantly giving me jip - but then I am only really learning it atm... > Or you could give up on that and help us out with the dynarec(s)! ;-P I really wish I could, but I got a lot of projects on the go atm and I don't really have time for any of them! Hopefully it should settle down when I start work, and I can help out. Especially since I love the 68K, even most of you guys don't seem to care for it that much! (I'm talking about operator order, endian-ness and instruction naming). But I guess it is a case of what experience you have and what you have used before... Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 08:31:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA21117 for dynarec-outgoing; Mon, 10 Jul 2000 08:31:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K definition From: "M.I.K.e" In-Reply-To: <01bfea77$489e3980$35901a17@turkey> Message-ID: <00036c109b0c9ab8_mailit@mail.dynarec.com> References: <01bfea77$489e3980$35901a17@turkey> Date: Mon, 10 Jul 2000 17:38:26 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Cool. I'll be going for the AMD Athlon 750 either next month or the month >after - I'll keep my current machine (450MHz) as a backup/server machine. I >may even install FreeBSD on it. Gosh, NB would be proud. ;) Damn, just a few days old and my CPU is outdated again! >>Good question. I think I'll take Line-A and Line-F instructions - easy work >>for me because those have to be implemented by the operating system ;-) >Uh, can I have those? ;-p Hey, I said that first! BTW, I even programmed with Line-A on TOS ;-) >>And before we can decide who wants to do which instructions we'll have to >>know how many people will be working on the definition. >3 so far. And then there were three... (Now guess what album it is, and why it is named that way...) >If you mean the intermediate stuff (the parser for instance) then yes, it's >them. If you mean the end then that *should* be generated by the scripts. So >everyone who works on the CPU definitions should take part in that. Well, only decoder and disassembler, maybe even the code genrator can be built form these definition files, all the covers have to be done manually. >And me! Don't forget me! Never forget me! ;) Neil Griffiths? Have I heard that name before? Hmm, I don't think so... ;-) >I'll work on the website, but I don't want to focus on it. I joined this >list so that I can program, not do pretty HTML layouts. Of course, the >layouts are much easier... ;) Depends. I guess you and Jules seem to have the most experience with web design. I only use HTML very similar to LaTeX... >No, I want to be working on the 68k definition file too. Or, if not that, >then some CPU. But I think the 68k would be a wise choice - we want to get >it done quickly! Ok, you can do the PowerPC definition ;-) No, I think the 68K is a very good start! >>Who else wants to be a part of the famous Dynarec Group? ;-) >Speak now - or forever hold your peace. Or pieces if you're a zombie... Come get some! Hey, I just mean opcode definitions ;-) >Neil. -- M.I.K.e One learns to itch where one can scratch. -- Ernest Bramah --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 08:31:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA21126 for dynarec-outgoing; Mon, 10 Jul 2000 08:31:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: <00ff01bfea81$c432fd60$2e3c073e@nibble> Message-ID: <00036c1080d89562_mailit@mail.dynarec.com> References: <01bfea69$d410ce00$35901a17@turkey> <00ff01bfea81$c432fd60$2e3c073e@nibble> Date: Mon, 10 Jul 2000 17:31:07 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Especially since I love the 68K, even most >of you guys don't seem to care for it that much! (I'm talking about operator >order, endian-ness and instruction naming). But I guess it is a case of what >experience you have and what you have used before... I hope you don't mean me because I learned assembly programming on the 68K and I surely know the advantages of big-endian and the telling mnemonics! >Kieron -- M.I.K.e Any clod can have the facts, but having opinions is an art. -- Charles McCabe --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 09:11:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA21166 for dynarec-outgoing; Mon, 10 Jul 2000 09:11:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 09:22:17 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036c1080d89562_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >order, endian-ness and instruction naming). But I guess it is a case of what > >experience you have and what you have used before... > I hope you don't mean me because I learned assembly programming on the 68K > and I surely know the advantages of big-endian and the telling mnemonics! Oh yeah - such *BIG* advantages! ;-) And mnemonics that mathematically don't make sense! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 09:48:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA21199 for dynarec-outgoing; Mon, 10 Jul 2000 09:48:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 68K definition Date: Mon, 10 Jul 2000 18:52:53 +0200 Message-ID: <01bfea8f$49db6080$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Damn, just a few days old and my CPU is outdated again! Sorry! ;) No, it's got to last me at least the 9 months. I'm reckoning that even the 450MHz would be fine, but I'll only spend the money on other things (like going out, going out and... I think you get the picture) so it's best that I spend it on something useful. Me. :)) >And then there were three... >(Now guess what album it is, and why it is named that way...) 10 Green Bottles There we go, there's my guess. ;) >>If you mean the intermediate stuff (the parser for instance) then yes, it's >>them. If you mean the end then that *should* be generated by the scripts. So >>everyone who works on the CPU definitions should take part in that. > >Well, only decoder and disassembler, maybe even the code genrator can be >built form these definition files, all the covers have to be done manually. The covers can be helped tremendously, in my mind, using these files. It's possible to generate a skeleton for example. >>And me! Don't forget me! Never forget me! ;) > >Neil Griffiths? Have I heard that name before? Hmm, I don't think so... ;-) Well I *have* been to your house before... ;) >>I'll work on the website, but I don't want to focus on it. I joined this >>list so that I can program, not do pretty HTML layouts. Of course, the >>layouts are much easier... ;) > >Depends. I guess you and Jules seem to have the most experience with web >design. I only use HTML very similar to LaTeX... HTML was my job last year. Given that I made 3000 quid doing it, I'm quite happy. :) >>No, I want to be working on the 68k definition file too. Or, if not that, >>then some CPU. But I think the 68k would be a wise choice - we want to get >>it done quickly! > >Ok, you can do the PowerPC definition ;-) Okay, I *could*. But I actually *won't*. ;) >No, I think the 68K is a very good start! Yeah, but you would. You big-endian person, you! >Come get some! It's amazing what happens with a bit of text snipping. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 09:57:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA21215 for dynarec-outgoing; Mon, 10 Jul 2000 09:57:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000710095621.007b44f0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 10 Jul 2000 09:56:21 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <00036c0e3641cfb1_mailit@mail.dynarec.com> References: <3.0.5.32.20000709210348.007b0460@powernet.net> <3.0.5.32.20000709210348.007b0460@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 02:47 PM 7/10/2000 +0200, you wrote: >>I'll get to it one of these days ;) I haven't been using the Z80 emulation >>at all though, I run it with -noz80. I suppose when I get around to >>implementing sound I'll spend time getting that portion of the system >>emulated properly. > >One of my friends who ported DGen to RISC OS told me that adding Z80 >emulation increases compatibility even without sound emulation. That's true. When I added Z80 emulation the compatibility jumped greatly. It is a slight slowdown though, and I run it without the Z80. If a game won't work, chances are toggling Z80 emulation will get it running. Bart Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 10:01:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA21231 for dynarec-outgoing; Mon, 10 Jul 2000 10:01:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036c11e4692e7d_mailit@mail.dynarec.com> References: Date: Mon, 10 Jul 2000 19:10:32 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Oh yeah - such *BIG* advantages! ;-) That's why it's called big-endian ;-) >And mnemonics that mathematically >don't make sense! ;-) Actually you mean the operand order and not the mnemonics! And at least for move it makes more sense because you can read it as "move source to destination", but "mov destination from source" doesn't make much sense to me... But we had that discussion before, and no matter how much we discuss about it we won't change that operand order each firm took, so we just have to live with that... >-->Neil -- M.I.K.e "Nondeterminism means never having to say you are wrong." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 10:01:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA21242 for dynarec-outgoing; Mon, 10 Jul 2000 10:01:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000710100026.007aee60@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 10 Jul 2000 10:00:26 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <00036c0e77863fae_mailit@mail.dynarec.com> References: <3.0.5.32.20000709232350.007b19a0@powernet.net> <3.0.5.32.20000709210348.007b0460@powernet.net> <3.0.5.32.20000709232350.007b19a0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 03:05 PM 7/10/2000 +0200, you wrote: >>My initial SH-2 emulator [...] >>does about 3MHz on a P166 (and the complex instructions and instructions >>which will need memory handlers haven't even been implemented yet) which is >>kind of pathetic... > >Hmm, do you plan to make a Sega Saturn emulator? I'm not sure what else could >be driven by that CPU, apart from some boring embedded systems. The 32X uses 2 SH-2s at 25MHz each. That explains the sluggishness of AGES and Vegas :) It'll be a tough system to emulate, but unlike the Sega CD the documentation for it is much better. >In that case 3MHz is a bit slow because you'll need two SH-2 running at >28MHz... >BTW, since SuperH was largely influenced by MIPS and doesn't have normal >condition flags it should be about as easy to write a dynarec for it as it is >for MIPS. Yeah, I don't know much about the technique but I was looking at it and it seems like SH-2 would be a nice way to start considering the fairly simple nature of the opcodes and workings of the processor itself. It will be a nice test bed, and plus if I do it and it yields a significant speed increase... all the better for my 32X emulator (assuming it ever gets done ;)) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 10:11:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA21262 for dynarec-outgoing; Mon, 10 Jul 2000 10:11:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 10:22:27 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036c11e4692e7d_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >And mnemonics that mathematically > >don't make sense! ;-) > > Actually you mean the operand order and not the mnemonics! And at > least for move it makes more sense because you can read it as "move > source to destination", but "mov destination from source" doesn't make > much sense to me... And as we've said before: 5=a; Does not make sense where: a=5; Does. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 10:13:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA21273 for dynarec-outgoing; Mon, 10 Jul 2000 10:13:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000710101223.007abad0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 10 Jul 2000 10:12:23 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <200007100640.IAA23325@pons.ac.upc.es> References: <3.0.5.32.20000709133822.007ae970@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 08:40 AM 7/10/2000 +0200, you wrote: >> callbacks for adding support for additional commands. Since I need this >> sort of a debugger in my Genesis/Sega CD emulator (the need is growing >> every day ;)) I would definitely put effort into this ;) >> >> >Mega CD emulator? Hey! I'm interested on this. Have you done some >progress? A friend and me are planning to try to implement a Mega CD >emulator (it is the Snatcher call ;). It will be interesting me with >"so many" experience in emulation and my friend which knows about >nothing. ;) I've made some progress, it is a little further than the last public VGen release. Although now, the private VGen2000 builds are a little bit farther along than Genital. It shows the BIOS screen and the main-68K gets stuck in some stupid loop: 16D2: btst #$06, ($A1200F) 16DA: beq ($0016D2) It's waiting for the sub-68K on the Sega CD to respond through the communication register $A1200F. Of course, the sub-68K is also doing something stupid: 5E8: btst #$00, ($5EA4) 5EE: bne ($0005E8) Although I suppose it's my fault. I'm pretty sure it has something to do with the CDD or CDC registers since they are pretty much undocumented (applications are supposed to use the BIOS calls... but I can't boot applications until I get the BIOS running!) I tried patching the BIOS, faking registers, the works! But until I find a way to email Sanyo and ask for the CD drive documentation, I'm stuck. If you want to help out, that would be great, or if you are starting your own, I'd be glad to help out and let you know what I've got working so far. I can give anyone who wants the current build, although it isn't too exciting with just the BIOS screen showing. You _can_ debug both CPUs with Starscream's lame debugger, but that gets stale ;) >Anyway, welcome to this list. The list with more traffic with less >people writing I think. ;) Hmm, people use a lot of winky faces on this list, I've been using them a lot too. Perhaps too much....... ;) ..D'OH! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 11:15:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA21345 for dynarec-outgoing; Mon, 10 Jul 2000 11:14:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001301bfea9b$d1412080$9870073e@nibble> From: "Kieron Wilkinson" To: References: Subject: Re: DYNAREC: Example script! Date: Mon, 10 Jul 2000 19:22:29 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Oh yeah - such *BIG* advantages! ;-) And mnemonics that mathematically > don't make sense! ;-) > > -->Neil Hehe, you see, I would have said that about little endian systems, but I really don't want to get into this.... :) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 11:24:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA21365 for dynarec-outgoing; Mon, 10 Jul 2000 11:24:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002b01bfea9d$1e02ac80$9870073e@nibble> From: "Kieron Wilkinson" To: References: Subject: Re: DYNAREC: Example script! Date: Mon, 10 Jul 2000 19:31:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > And as we've said before: > > 5=a; > > Does not make sense where: > > a=5; > > Does. ;-) > > -->Neil Well, I have got to say it. Because I can't help myself, you started this again Neil! I just said that I was used to 68K. :p What you say above would be correct, it is just the fact that it is MOV. If it was EQL for "equals" then I would agree with you, but it is not. It is MOV. Move one to the other, MOVE src,dest. or one equals another, EQL dest, src You see? Little endian systems just don't make sense! Your a=5, 5=a argument just clarifies that MOV was the wrong mnemonic to use! And Mike, no, I didn't mean you. I did say MOST. :) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 11:30:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA21383 for dynarec-outgoing; Mon, 10 Jul 2000 11:30:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 11:41:34 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <002b01bfea9d$1e02ac80$9870073e@nibble> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > 5=a; > > Does not make sense where: > > a=5; > What you say above would be correct, it is just the fact that it is MOV. If > it was EQL for "equals" then I would agree with you, but it is not. It is > MOV. Equals/Move is the same here. Registers are variables. Mathematically, a=5 (or mov eax,5) makes sense. mov 5, eax doesn't. Sorry, but you'll never, ever get me to agree that something that doesn't follow mathematical notation is correct when it comes to assembly languages. > Move one to the other, MOVE src,dest. > or > one equals another, EQL dest, src > You see? Little endian systems just don't make sense! Well, this has nothing to do with endianness, but I think you know that. ;-) > Your a=5, 5=a argument > just clarifies that MOV was the wrong mnemonic to use! That may be so, but the changing of the order of operands was pure arrogance considering that no other microprocessor at the time did it that way. It was the typical "not invented here" syndrome of Motorola at the time. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 11:31:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA21393 for dynarec-outgoing; Mon, 10 Jul 2000 11:31:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 11:42:47 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <3.0.5.32.20000710095621.007b44f0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >One of my friends who ported DGen to RISC OS told me that adding Z80 > >emulation increases compatibility even without sound emulation. > That's true. When I added Z80 emulation the compatibility jumped greatly. > It is a slight slowdown though, and I run it without the Z80. If a game > won't work, chances are toggling Z80 emulation will get it running. Maybe you should use MZ80. I know several Genesis emulator authors (this also includes one very large game corporation) who are using it with excellent success, where RAZE gives them grief. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 11:38:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA21407 for dynarec-outgoing; Mon, 10 Jul 2000 11:38:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 11:49:51 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition In-Reply-To: <00036c0e62f5659d_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >How should we share now the opcodes so I could do some work?. > Good question. I think I'll take Line-A and Line-F instructions - easy work > for me because those have to be implemented by the operating system ;-) I was thinking it might make more sense for us to do those instructions in the 68K that Food Fight initially uses. It'd be great to have 50 variants of an instruction implemented, but CPU emulation has taught me that this is the wrong way to go about it - you should debug as you go, not get it all coded and then debug it. You'll have to go over the code more than once anyway and it'll be much shorter development time if we do it as we run into them. > Honestly, I think that we need more information how we should handle the more > complicated addressing modes since I now have all the primitive stuff. How > about some more info Alex? You can still do the instruction covers and just focus on the opcodes. We can go back and deal with the disassembly aspect of things first. > I guess NB and Alex will do the programming and traget code generation stuff, > which should keep them busy for some time. Very busy. I had to tweak the lexer last night because of context sensitivity. Meaning, that "1001011" means a binary 101011 and not decimal 43, and vice versa when defining the keys. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 11:39:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA21417 for dynarec-outgoing; Mon, 10 Jul 2000 11:39:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 11:50:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <00036c0e126644c0_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >How many possible instructions does the SH-2 have? > According to the SH7604 Product Brief there are 61 instruction types, but > SuperH has plenty of addressing modes for a RISC chip. What I meant was how big are the instructions (without the operands)? 16 Bit like the 68K? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 11:44:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA21431 for dynarec-outgoing; Mon, 10 Jul 2000 11:44:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 11:55:34 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition In-Reply-To: <01bfea77$489e3980$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >The 550MHz combined with 512K L2 cache should also provide a nice speed for > >emulation, and a complete make of our project only takes 31 seconds instead > >of 46 as before. > Cool. I'll be going for the AMD Athlon 750 either next month or the month > after - I'll keep my current machine (450MHz) as a backup/server machine. I > may even install FreeBSD on it. Gosh, NB would be proud. ;) Not with an Asslon I wouldn't. ;-) Seriously, though, why the 750? It's 15-20% slower than its Pentium counterpart at the same clock rate. Is pricing varied widely in Europe - meaning is the delta between the two chips really that much? > If you mean the intermediate stuff (the parser for instance) then yes, it's > them. If you mean the end then that *should* be generated by the scripts. So > everyone who works on the CPU definitions should take part in that. In the case of the opcode generator (the one generating the target opcodes), that's automatically generated. For the target cover generator, the emitter will give you a template in which to work from but you'll have to fill in the gorey details. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 11:45:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA21444 for dynarec-outgoing; Mon, 10 Jul 2000 11:45:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 11:56:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00ff01bfea81$c432fd60$2e3c073e@nibble> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Now all we have to do is wait for you to implement it into MESS. ;) > It's getting there, I got some gfx up, but it is a case of getting round, up > and over the MAME API, which is constantly giving me jip - but then I am > only really learning it atm... If you really want to be frightened, go look at the assembly 68K emulator in MAME and take a look at the amount of crap the memory handlers must go through. Quite frightening! > of you guys don't seem to care for it that much! (I'm talking about operator > order, endian-ness and instruction naming). But I guess it is a case of what > experience you have and what you have used before... We don't care for the 68K? Whoever said that? It's a great chip! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 11:52:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA21458 for dynarec-outgoing; Mon, 10 Jul 2000 11:52:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000710115059.007b5100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 10 Jul 2000 11:50:59 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: References: <00036c0e126644c0_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What I meant was how big are the instructions (without the operands)? 16 >Bit like the 68K? They are 16-bit with and without operands. They have no trailing immediate data, everything is encoded within that 16-bits. Basically, you pick any word-aligned code area offset and you are guaranteed an instruction will be there, it rocks :) Bart Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 11:53:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA21469 for dynarec-outgoing; Mon, 10 Jul 2000 11:53:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 12:05:02 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <3.0.5.32.20000710115059.007b5100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >What I meant was how big are the instructions (without the operands)? 16 > >Bit like the 68K? > They are 16-bit with and without operands. They have no trailing immediate > data, everything is encoded within that 16-bits. Basically, you pick any > word-aligned code area offset and you are guaranteed an instruction will be > there, it rocks :) And with no flags it ought to be braindead simple to create a dynarec for. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 12:38:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA21525 for dynarec-outgoing; Mon, 10 Jul 2000 12:38:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004d01bfeaa7$75285a00$9870073e@nibble> From: "Kieron Wilkinson" To: References: Subject: Re: DYNAREC: Example script! Date: Mon, 10 Jul 2000 20:45:17 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > We don't care for the 68K? Whoever said that? It's a great chip! > > -->Neil Hehe, okay fair enough. I got the wrong impression. I think that I meant programming in it more than anything else, but hey, I coould be wrong... :)) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 13:03:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA21576 for dynarec-outgoing; Mon, 10 Jul 2000 13:03:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036c14668e4261_mailit@mail.dynarec.com> References: Date: Mon, 10 Jul 2000 22:10:05 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> You see? Little endian systems just don't make sense! >Well, this has nothing to do with endianness, but I think you know >that. ;-) Too true ;-) >That may be so, but the changing of the order of operands was pure >arrogance considering that no other microprocessor at the time did it that >way. It was the typical "not invented here" syndrome of Motorola at the >time. Sorry if I have to correct you here but I think it was actually DEC who used that operand order much earlier! >-->Neil -- M.I.K.e I used to work in a fire hydrant factory. You couldn't park anywhere near the place. -- Steven Wright --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 13:03:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA21570 for dynarec-outgoing; Mon, 10 Jul 2000 13:03:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Disassembler/Debugger From: "M.I.K.e" In-Reply-To: Message-ID: <00036c14459202bc_mailit@mail.dynarec.com> References: Date: Mon, 10 Jul 2000 22:00:52 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >And with no flags it ought to be braindead simple to create a dynarec for. Yep, just my thought! Actually it has one general condition bit but that is used like the comparision result registers in MIPS, but with only 16 registers in SuperH it seems they didn't want to use GPRs for the condition and invented that single bit, otherwise it's just the same. >-->Neil -- M.I.K.e The truth is what is; what should be is a dirty lie. -- Lenny Bruce --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 13:03:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA21574 for dynarec-outgoing; Mon, 10 Jul 2000 13:03:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Disassembler/Debugger From: "M.I.K.e" In-Reply-To: Message-ID: <00036c145da1c4b2_mailit@mail.dynarec.com> References: Date: Mon, 10 Jul 2000 22:07:36 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What I meant was how big are the instructions (without the operands)? 16 >Bit like the 68K? It's a RISC with a fixed instruction length, which is 16 bit. The SH-5 will add 32-bit instructions (called SHmedia and the 16-bit ones are called SHcompact then) and you can switch between two modes just like ARM/ Thumb, MIPS/MIPS16, or IA-64/IA-32. BTW, I forgot to mention: Since SHcompact instructions have only two operands they should be even easier to translate to x86 than MIPS! But I certainly don't want to do a dynarec for SH-5. The extended the GPRs to 64-bit and increased the number from 16 to 64. The FPRs are still 32-bit but there are also 64. In SHcompact mode the SH-5 just looks like a fast SH-4 (only 16 32-bit registers), but in SHmedia mode it should really rock! >-->Neil -- M.I.K.e "That must be wonderful! I don't understand it at all." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 13:07:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA21597 for dynarec-outgoing; Mon, 10 Jul 2000 13:07:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005401bfeab3$960f64a0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: 68K definition Date: Mon, 10 Jul 2000 21:44:45 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Cool. I'll be going for the AMD Athlon 750 either next month or the month > > after - I'll keep my current machine (450MHz) as a backup/server machine. I > > may even install FreeBSD on it. Gosh, NB would be proud. ;) > > Not with an Asslon I wouldn't. ;-) Seriously, though, why the 750? It's > 15-20% slower than its Pentium counterpart at the same clock rate. Is > pricing varied widely in Europe - meaning is the delta between the two > chips really that much? As far as the speed go, look at the benchmarks at places like AnandTech, Tom's Hardware and the like. The Athlon beats the P3 all the way up until 750MHz where it's very, very close. 800MHz and upwards is where the P3 trashes the Athlon (the T-Bird should put pay to that) - which is why I'm choosing the 750. Besides, can you run a P3-750 at 1050MHz? No, thought not. But there's a high chance that I can with the Athlon. Not that I condone overclocking of course (I've not been doing this since 486 days - honest!). And yes, the difference in price is astounding. I can get an Athlon 750 for £140 now - whereas a P3 (same speed) would cost me a little under £200. That's $96 difference. That's half a decent motherboard. I like Intel chips - but the price difference is too high. Besides, the Athlon has a nicer FPU. ;) You're going to do your nut at that last comment. ;)) > > If you mean the intermediate stuff (the parser for instance) then yes, it's > > them. If you mean the end then that *should* be generated by the scripts. So > > everyone who works on the CPU definitions should take part in that. > > In the case of the opcode generator (the one generating the target > opcodes), that's automatically generated. For the target cover generator, > the emitter will give you a template in which to work from but you'll have > to fill in the gorey details. Cool, that's how I thought it'd work. Good. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 13:10:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA21613 for dynarec-outgoing; Mon, 10 Jul 2000 13:10:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 13:21:36 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036c14668e4261_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >That may be so, but the changing of the order of operands was pure > >arrogance considering that no other microprocessor at the time did it that > >way. It was the typical "not invented here" syndrome of Motorola at the > >time. > Sorry if I have to correct you here but I think it was actually DEC who used > that operand order much earlier! Like I said - "NO OTHER *MICROPROCESSOR* *AT* *THE* *TIME*" - even Motorola's chips had the backwrads mnemonics! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 13:17:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA21628 for dynarec-outgoing; Mon, 10 Jul 2000 13:17:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 13:28:51 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition In-Reply-To: <005401bfeab3$960f64a0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > 15-20% slower than its Pentium counterpart at the same clock rate. Is > > pricing varied widely in Europe - meaning is the delta between the two > > chips really that much? > As far as the speed go, look at the benchmarks at places like AnandTech, > Tom's Hardware and the like. The Athlon beats the P3 all the way up until > 750MHz where it's very, very close. If you believe benchmarks and Tom's Hardware, sure. Be my guest. That site's arrogance is far worse than mine and wouldn't and couldn't post an unbiased story if their lives depended on it. But also consider that Tom's Hardware has always favored AMD and even finds a way to sting Intel when Intel has good news or better performance (nary a word on the latest Pentium laptop CPUs as an example). I wouldn't believe a fucking thing they say. Besides, the odds of you actually noticing a difference in performance personally would be psychological, even at 20% difference. > choosing the 750. Besides, can you run a P3-750 at 1050MHz? No, thought not. > But there's a high chance that I can with the Athlon. Not that I condone > overclocking of course (I've not been doing this since 486 days - honest!). Forget it. The Athlons are hardly (if at all) overclockable. > That's $96 difference. That's half a decent motherboard. I like Intel > chips - but the price difference is too high. Besides, the Athlon has a > nicer FPU. ;) Um... no, it doesn't. Quake 3 framerates prove it, and according to many people using MAX and other rendering packages, the AMD stuff (including the K7) is considerably slower at rendering (extreme cases of 40% I've seen personally using Animation Master). Many people in the 3D realm say it bluntly - Go Intel. Forget AMD. Personally, I'd spend the extra $96. Athlons are nothing more than cheaper near alternatives of the Pentium chips. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 14:45:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21733 for dynarec-outgoing; Mon, 10 Jul 2000 14:45:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001901bfeac1$32c4a8c0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: 68K definition Date: Mon, 10 Jul 2000 23:50:03 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > As far as the speed go, look at the benchmarks at places like AnandTech, > > Tom's Hardware and the like. The Athlon beats the P3 all the way up until > > 750MHz where it's very, very close. > > If you believe benchmarks and Tom's Hardware, sure. Be my guest. That > site's arrogance is far worse than mine and wouldn't and couldn't post an > unbiased story if their lives depended on it. But also consider that Tom's > Hardware has always favored AMD and even finds a way to sting Intel when > Intel has good news or better performance (nary a word on the latest > Pentium laptop CPUs as an example). I wouldn't believe a fucking thing > they say. Well, I'm glad that you also hate Tom's Hardware. I can't stand the man (Tom Pabst) myself as I believe him to be an anal-retentive arsehole who has his head stuck up his arse. But I tend to read the posts by the public. Although I *do* trust Anand, I must admit. Yep, Tom Pabst and most of the people on their site wouldn't know an unbiased story if it jumped up and bit them on the arse (got an arse thing going on tonight). The thing that has *REALLY* gotten on my tits was Tom declaring himself master of all things 3D and basically saying that no-one except him knows as much. Er, my arsehole knows more than him about 3D. For years and years now I've seen such fucking stupid things by him that you couldn't believe. I remember when he was a 3Dfx lover and hated anything else. Now he's an nVidea monkey. Whatever. Why can't he be unbiased? > Besides, the odds of you actually noticing a difference in performance > personally would be psychological, even at 20% difference. In most applications I'd agree. Not in 3D - I'd certainly notice a 20% difference! Hell, if it's under 30fps then I can spot a 1fps difference! I can't do that when it gets much higher though... > > choosing the 750. Besides, can you run a P3-750 at 1050MHz? No, thought not. > > But there's a high chance that I can with the Athlon. Not that I condone > > overclocking of course (I've not been doing this since 486 days - honest!). > > Forget it. The Athlons are hardly (if at all) overclockable. Except with a little modification they can be - though I agree that they're not overclockable as default. I've been doing my research - something I always like to do before I spend my readies! :) > > That's $96 difference. That's half a decent motherboard. I like Intel > > chips - but the price difference is too high. Besides, the Athlon has a > > nicer FPU. ;) > > Um... no, it doesn't. Quake 3 framerates prove it, and according to many > people using MAX and other rendering packages, the AMD stuff (including > the K7) is considerably slower at rendering (extreme cases of 40% I've > seen personally using Animation Master). Many people in the 3D realm say > it bluntly - Go Intel. Forget AMD. I've seen the Athlon trounce the P3 in Q3. Which benchmarks have you seen? I'm getting these benchmarks from different people - even the hardware section at S3 (which is hardly anything to shout about admittedly). Everyone I know in the 3D realm are telling me to go Athlon! Okay, maybe not everybody. Maybe just the people I've asked. ;) Hmm, I've just seem some interesting figures. Maybe I'll look at getting a P3 instead. Say, Neil, do you get a discount from work? ;) > Personally, I'd spend the extra $96. Athlons are nothing more than cheaper > near alternatives of the Pentium chips. I'm thinking. No, really, I can do that. The stuff was probably optimised for the Athlon. As in the drivers. That's very, very likely. I know that the Athlon was winning in 3DMark 2000. Probably not the best test. I'm going to go back out and do more research - stop asking people and just see what I can find. It's a difficult decision. It's very much 50/50. For example, read this page: http://www.gforces.net/hardware/components/athlonvsp3/page8.shtml Shows the Athlon to be better and worse in different things. But look - it beats the P3 in the FPU test! ;p Old review, but shows the Athlon to be better in Q3. http://www.hartware.de/review.html?id=57&page=5 It's all much of a muchness. Hmm... :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 14:45:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21744 for dynarec-outgoing; Mon, 10 Jul 2000 14:45:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: Subject: Re: DYNAREC: Example script! From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Tue, 11 Jul 2000 00:06:52 +0200 Message-ID: <1edkvk8.1v5bl0l1aju7uoM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id OAA21741 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Equals/Move is the same here. Registers are variables. Mathematically, a=5 > (or mov eax,5) makes sense. mov 5, eax doesn't. Sorry, but you'll never, > ever get me to agree that something that doesn't follow mathematical > notation is correct when it comes to assembly languages. For example: f : R -> R x -> x^2 ;-) Another one: proving implications (=>) you certainly start from the left predicate and come to prove the right one. Well, actually, I haven't done real maths for two years now. I pretty liked integral calculus and developments into series. Maybe because I could handle plenty of them directly from my head during supervised practical work. ;-) -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 14:55:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21764 for dynarec-outgoing; Mon, 10 Jul 2000 14:55:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K definition From: "M.I.K.e" In-Reply-To: Message-ID: <00036c15efc66f93_mailit@mail.dynarec.com> References: Date: Tue, 11 Jul 2000 00:00:03 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Many people in the 3D realm say >it bluntly - Go Intel. Forget AMD. Not to mention compatibility. Try running Win NT 4.0 on a AMD, you'll surely need lots of patches and if that's true for an operating system I don't know what might happen to all the application software which maybe isn't ever tested on AMDs. I the firm where I work I might be one of the few who still have an AMD (K6-3 /366, damn slow with WinNT!). Those were bought due to their cheapness for some time, but all newer systems have a P6 because they cause fewer problems. >-->Neil -- M.I.K.e Bringing computers into the home won't change either one, but may revitalize the corner saloon. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 14:55:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21770 for dynarec-outgoing; Mon, 10 Jul 2000 14:55:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Example script! From: "M.I.K.e" In-Reply-To: Message-ID: <00036c15df56b20c_mailit@mail.dynarec.com> References: Date: Mon, 10 Jul 2000 23:55:27 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Like I said - "NO OTHER *MICROPROCESSOR* *AT* *THE* *TIME*" - Sorry, I overlooked your emphasize on microprocessors. >even Motorola's chips had the backwrads mnemonics! My point was that it wasn't Motorola who invented that operand order. I have only some examples in my Alpha book which show that PDP-11 and VAX use that operand order, and since this seems to be a linear scheme I guess that all the other DEC machines after the accumulator stage share that operand order, but those were all minicomputers of course... >-->Neil -- M.I.K.e Liberty is always dangerous, but it is the safest thing we have. -- Harry Emerson Fosdick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 14:57:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21781 for dynarec-outgoing; Mon, 10 Jul 2000 14:57:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 15:08:55 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition In-Reply-To: <001901bfeac1$32c4a8c0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The thing that has *REALLY* gotten on my tits was Tom declaring himself > master of all things 3D and basically saying that no-one except him knows as > much. Er, my arsehole knows more than him about 3D. For years and years now > I've seen such fucking stupid things by him that you couldn't believe. Like a hardware reviewer would really know *ANYTHING* about the internals of hardware. > I remember when he was a 3Dfx lover and hated anything else. Now he's an > nVidea monkey. Whatever. Why can't he be unbiased? Because he's being toked by hardware vendors. Plain and simple! Everyone is someone else's bitch - to a point. > > Um... no, it doesn't. Quake 3 framerates prove it, and according to many > > people using MAX and other rendering packages, the AMD stuff (including > > the K7) is considerably slower at rendering (extreme cases of 40% I've > > seen personally using Animation Master). Many people in the 3D realm say > > it bluntly - Go Intel. Forget AMD. > I've seen the Athlon trounce the P3 in Q3. Which benchmarks have you seen? Uh... my own two eyes. I can go back and get you the info if you're really interested. But my PII/550 was outdoing a friend's K7/650 - both with 100MHZ memory buses and the same RIVA TNT 2 based video card. > section at S3 (which is hardly anything to shout about admittedly). Everyone > I know in the 3D realm are telling me to go Athlon! Okay, maybe not > everybody. Maybe just the people I've asked. ;) Depends upon what you mean by "3D Realm"? I'm speaking of renderings (as in 3D graphics/animation), not necessarily by game players, though Q3 seems to do nicely. > Hmm, I've just seem some interesting figures. Maybe I'll look at getting a > P3 instead. Say, Neil, do you get a discount from work? ;) Unfortunately, no. ;-( So I have just as much interest in having AMD around as anyone else does - to keep Intel's prices down! ;-) > I'm thinking. No, really, I can do that. The stuff was probably optimised > for the Athlon. As in the drivers. That's very, very likely. If you're seeing it trouncing the P3, it's unquestionably the issue. But that's also like comparing MMX/non-MMX. Not exactly apples/oranges comparison. Where it really matters is apps that are not taking advantage of a feature that another chip doesn't have. > Athlon was winning in 3DMark 2000. Probably not the best test. I'm going to > go back out and do more research - stop asking people and just see what I > can find. Benchmarks aren't ever good tests. > Shows the Athlon to be better and worse in different things. But look - it > beats the P3 in the FPU test! ;p By a whopping 3.2%!! ;-) And I would be willing to bet that AMD tweaked things to make the Athlon look better for the FPU Mark. Besuides, when rendering folk are seeing 25-40% difference in render times, I have no faith in that FPU mark. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 14:58:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21790 for dynarec-outgoing; Mon, 10 Jul 2000 14:58:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 15:10:05 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Example script! In-Reply-To: <00036c15df56b20c_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >even Motorola's chips had the backwrads mnemonics! > My point was that it wasn't Motorola who invented that operand order. Yup. I know that. But they were the ones who started doing it mid stream while everyone else around them had dest, source. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 21:53:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA22101 for dynarec-outgoing; Mon, 10 Jul 2000 21:53:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <00036c15efc66f93_mailit@mail.dynarec.com> Subject: Re: DYNAREC: 68K definition From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Tue, 11 Jul 2000 07:14:22 +0200 Message-ID: <1edlfy4.1j6l57q1a0e688M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id VAA22098 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Not to mention compatibility. Try running Win NT 4.0 on a AMD, you'll surely > need lots of patches and if that's true for an operating system I don't know Why ? I didn't install lots of patches: only the traditional SP3 at that time. I have a poor AMD K6-2/300. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 23:17:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA22171 for dynarec-outgoing; Mon, 10 Jul 2000 23:17:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 68K definition Date: Tue, 11 Jul 2000 08:22:20 +0200 Message-ID: <01bfeb00$5e0b7600$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >>Many people in the 3D realm say >>it bluntly - Go Intel. Forget AMD. > >Not to mention compatibility. Try running Win NT 4.0 on a AMD, you'll surely >need lots of patches and if that's true for an operating system I don't know >what might happen to all the application software which maybe isn't ever >tested on AMDs. Eh? Now it's one thing to tell me to go Intel and not AMD - but this is just a daft thing to say. They use the same instruction sets (apart from things like SIMD and so on) and so they will both work. Where you MAY see a difference would be the motherboards because the majority of Athlon motherboards use Via chipsets. It's possible you may need to install drivers for the new motherboard. But this is also the case for people with new motherboards (such as the BX). AMD would *never* be able to sell any of their chips if they weren't 100% Intel compatible. What works on one (so long as it isn't a special feature) will work on the other. >I the firm where I work I might be one of the few who still have an AMD (K6-3 >/366, damn slow with WinNT!). Those were bought due to their cheapness for >some time, but all newer systems have a P6 because they cause fewer problems. Don't know why that'd be. But I'd bet money on it being a Via issue. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 23:33:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA22191 for dynarec-outgoing; Mon, 10 Jul 2000 23:33:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 10 Jul 2000 23:44:16 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition In-Reply-To: <01bfeb00$5e0b7600$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >>Many people in the 3D realm say > >>it bluntly - Go Intel. Forget AMD. > >Not to mention compatibility. Try running Win NT 4.0 on a AMD, you'll > >need lots of patches and if that's true for an operating system I don't > >what might happen to all the application software which maybe isn't ever > >tested on AMDs. > Eh? Now it's one thing to tell me to go Intel and not AMD - but this is just > a daft thing to say. They use the same instruction sets (apart from things > like SIMD and so on) and so they will both work. Uh.. well, Mike is right. I heard this same thing (required BIOS update to do a microcode patch on the AMD K7) and I didn't believe it myself. These are microcode patches, not motherboard "issues". I'll see if I can dig up the info on it. I was just told about this over the weekend and I thought it was BS. But my experience with the K6/2 CPUs has been excellent, albeit slower than the Intel counterparts. In the case of Retrocade, the K6/2 was 30% slower than the PII/350 at the same speed (both running 100MHZ memory buses and the same AGP card). > AMD would *never* be able to sell any of their chips if they weren't 100% > Intel compatible. What works on one (so long as it isn't a special feature) > will work on the other. They aren't 100% Intel compatible. They're 99.9999% compatible. Off the top of my head, they won't address 16 gigs of RAM like the Pentiums will (AMD line limited to 4 gigs) so they'll never go in servers. I'm sure I can find a few other discrepencies, but for the most part the K7 is a Pentium clone. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 23:51:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA22213 for dynarec-outgoing; Mon, 10 Jul 2000 23:51:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 68K definition Date: Tue, 11 Jul 2000 08:56:03 +0200 Message-ID: <01bfeb05$13d8c380$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> Eh? Now it's one thing to tell me to go Intel and not AMD - but this is just >> a daft thing to say. They use the same instruction sets (apart from things >> like SIMD and so on) and so they will both work. > >Uh.. well, Mike is right. I heard this same thing (required BIOS update to >do a microcode patch on the AMD K7) and I didn't believe it myself. These >are microcode patches, not motherboard "issues". I'll see if I can dig up >the info on it. I was just told about this over the weekend and I thought >it was BS. Yes, but he said "AMD" and not "Athlon" or "K7". I don't know about this K7 issue (but I'm thinking that maybe I will go P3 after all) - but you can't say it won't work on an AMD. The K5, K6 and K6-2 (I'm ignoring the K6-3 which was a K6-2 with more cache) were good CPUs which worked. :) If you can dig up more info then please let me know! >But my experience with the K6/2 CPUs has been excellent, albeit slower >than the Intel counterparts. In the case of Retrocade, the K6/2 was 30% >slower than the PII/350 at the same speed (both running 100MHZ memory >buses and the same AGP card). Yep, the K6-2 was slower than the PII - can't argue with that. It's only when you can use things like 3DNow! (which I would have liked to use except that the FPU isn't accurate enough) that you'll see speed increases. Again, that's specific optimising... >> AMD would *never* be able to sell any of their chips if they weren't 100% >> Intel compatible. What works on one (so long as it isn't a special feature) >> will work on the other. > >They aren't 100% Intel compatible. They're 99.9999% compatible. Off the >top of my head, they won't address 16 gigs of RAM like the Pentiums will >(AMD line limited to 4 gigs) so they'll never go in servers. I'm sure I >can find a few other discrepencies, but for the most part the K7 is a >Pentium clone. Really? I didn't know that. Okay, I'll now say 99.9% Intel compatible. ;) BTW, if you have the benchmarks for the PII-550 vs. the K7-650 then could you send them along? I'm definitely interested! But I'm very surprised by that - Nvidea have been optimising their drivers for the K7. What drivers were they as well? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 23:52:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA22223 for dynarec-outgoing; Mon, 10 Jul 2000 23:52:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 68K definition Date: Tue, 11 Jul 2000 08:57:16 +0200 Message-ID: <01bfeb05$3f5bae00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Why ? I didn't install lots of patches: only the traditional SP3 at that >time. I have a poor AMD K6-2/300. And I've used it on a K6-2/350 as well with no problems (though it was SP4). I knew that as soon as NT was mentioned that you'd comment. Your emulator only works properly in NT. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 23:59:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA22241 for dynarec-outgoing; Mon, 10 Jul 2000 23:59:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <396AC749.5BF45C24@dial.oleane.com> Date: Tue, 11 Jul 2000 09:05:45 +0200 From: Gwenole Beauchesne Organization: IRISA, Campus de Beaulieu, 35042 Rennes Cedex, FRANCE X-Mailer: Mozilla 4.73 [en] (X11; I; SunOS 5.5 sun4m) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition References: <01bfeb05$13d8c380$35901a17@turkey> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Yes, but he said "AMD" and not "Athlon" or "K7". I don't know about this K7 > issue (but I'm thinking that maybe I will go P3 after all) Or maybe would you want to wait for the P4 ? I heard that it was really better than the P3, some unofficial benchs showed that. > - but you can't say it won't work on an AMD. The K5, K6 and K6-2 Hmmm, last time I said something like "you can't say" [...], you know ;-) Gwenolé --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 10 23:59:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA22235 for dynarec-outgoing; Mon, 10 Jul 2000 23:58:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007110704.JAA15539@pons.ac.upc.es> Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <3.0.5.32.20000710101223.007abad0@powernet.net> "from Bart Trzynadlowski at Jul 10, 2000 10:12:23 am" To: dynarec@dynarec.com Date: Tue, 11 Jul 2000 09:04:25 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Mega CD emulator? Hey! I'm interested on this. Have you done some > >progress? A friend and me are planning to try to implement a Mega CD > >emulator (it is the Snatcher call ;). It will be interesting me with > >"so many" experience in emulation and my friend which knows about > >nothing. ;) > > I've made some progress, it is a little further than the last public VGen > release. Although now, the private VGen2000 builds are a little bit farther > along than Genital. It shows the BIOS screen and the main-68K gets stuck in > some stupid loop: > > 16D2: btst #$06, ($A1200F) > 16DA: beq ($0016D2) > > It's waiting for the sub-68K on the Sega CD to respond through the > communication register $A1200F. Of course, the sub-68K is also doing > something stupid: > > 5E8: btst #$00, ($5EA4) > 5EE: bne ($0005E8) > > Although I suppose it's my fault. I'm pretty sure it has something to do > with the CDD or CDC registers since they are pretty much undocumented > (applications are supposed to use the BIOS calls... but I can't boot > applications until I get the BIOS running!) I tried patching the BIOS, > faking registers, the works! But until I find a way to email Sanyo and ask > for the CD drive documentation, I'm stuck. > Errm!! Well I should have to begin study the MegaCD seriously. ;) I have thought in start adding another 68K to an open source Genesis emulator (I thought in DGEN because it was the first it remembered about, but it seems there are some others ... ) and see what happens with the BIOS. I think now I know what will happen. > If you want to help out, that would be great, or if you are starting your > own, I'd be glad to help out and let you know what I've got working so far. > I can give anyone who wants the current build, although it isn't too > exciting with just the BIOS screen showing. You _can_ debug both CPUs with > Starscream's lame debugger, but that gets stale ;) > I'm starting the start. ;) Actually I'm waiting a friend who has to end his exams. And last weeks I didn't do the Mega CD homework. :( I was playing FF Tactics. I just searched for info at Eidolons and read a bit. I was wondering why noone has emulated it. I supposed because the lack of information. BTW, Christian Schiller (or Eidolon) says it has the MegaCD devolopment tools. Our main problem is that we have very few experience in emulation (I have the most experience). And building the full emulator from scratch, including Genesis hardware, will take a lot of time. I will take your word and demand for helping. ;) In any case if some day I can help you I will be also glad. ;) > >Anyway, welcome to this list. The list with more traffic with less > >people writing I think. ;) > > Hmm, people use a lot of winky faces on this list, I've been using them a > lot too. Perhaps too much....... ;) ..D'OH! It seems so. :o Who started with that? Sure I wasn't, I didn't usually use them. Perhaps Neil Griffits ... ;) > > Bart Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 00:01:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA22264 for dynarec-outgoing; Tue, 11 Jul 2000 00:01:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 68K definition Date: Tue, 11 Jul 2000 09:05:11 +0200 Message-ID: <01bfeb06$5a7aed80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Just call me "backwards boy" because I'm answering my e-mail backwards. Oops! >Like a hardware reviewer would really know *ANYTHING* about the internals >of hardware. Yep. I've seen laughable things from him and his site. He was trying to be clever and throw in words like "trilinear filtering" but didn't know what it meant. Oh yes, he didn't like AGP either. I remember that. :)) >Because he's being toked by hardware vendors. Plain and simple! Everyone >is someone else's bitch - to a point. There comes a point when you have to draw the line. Tom hasn't found it yet - he just licks arse instead. Anand, for instance, is pretty much unbiased. Yes, you can sometimes see some bias come into his reviews (everyone is biased in some ways) but generally speaking it's quite unbiased. I respect the site for that. >> I've seen the Athlon trounce the P3 in Q3. Which benchmarks have you seen? > >Uh... my own two eyes. I can go back and get you the info if you're really >interested. But my PII/550 was outdoing a friend's K7/650 - both with >100MHZ memory buses and the same RIVA TNT 2 based video card. I'm always interested in this kind of thing! :) >> section at S3 (which is hardly anything to shout about admittedly). Everyone >> I know in the 3D realm are telling me to go Athlon! Okay, maybe not >> everybody. Maybe just the people I've asked. ;) > >Depends upon what you mean by "3D Realm"? I'm speaking of renderings (as >in 3D graphics/animation), not necessarily by game players, though Q3 >seems to do nicely. The *best* benchmark should actually be UT and not Q3. UT is *definitely* CPU-limited and not fillrate limited. So you should see a bigger difference with that. Q3 is also a good test but it could become fillrate limited a whole lot sooner! >> Hmm, I've just seem some interesting figures. Maybe I'll look at getting a >> P3 instead. Say, Neil, do you get a discount from work? ;) > >Unfortunately, no. ;-( So I have just as much interest in having AMD >around as anyone else does - to keep Intel's prices down! ;-) No discount! I'd complain! ;) >> I'm thinking. No, really, I can do that. The stuff was probably optimised >> for the Athlon. As in the drivers. That's very, very likely. > >If you're seeing it trouncing the P3, it's unquestionably the issue. But >that's also like comparing MMX/non-MMX. Not exactly apples/oranges >comparison. Where it really matters is apps that are not taking advantage >of a feature that another chip doesn't have. That's true enough. But you'll have problems with the nVidea drivers then because they've been optimising them for the K7. Apparently. I haven't seen a TNT2 or GeForce in a while so I don't know how much faster they are now. >> Athlon was winning in 3DMark 2000. Probably not the best test. I'm going to >> go back out and do more research - stop asking people and just see what I >> can find. > >Benchmarks aren't ever good tests. They're good to get you into the ballpark. But they're only guidance and not the bible on the subject I agree. >> Shows the Athlon to be better and worse in different things. But look - it >> beats the P3 in the FPU test! ;p > >By a whopping 3.2%!! ;-) And I would be willing to bet that AMD tweaked >things to make the Athlon look better for the FPU Mark. Besuides, when >rendering folk are seeing 25-40% difference in render times, I have no >faith in that FPU mark. Yes, that's kind of worrying... Well, I'll look out for the PIII prices today and see how much more I have to pay... I may consider buying from the US - could work out cheaper... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 00:15:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA22283 for dynarec-outgoing; Tue, 11 Jul 2000 00:15:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007110722.JAA00229@pons.ac.upc.es> Subject: Re: DYNAREC: 68K definition In-Reply-To: <00036c0e62f5659d_mailit@mail.dynarec.com> "from M.I.K.e at Jul 10, 2000 02:59:35 pm" To: dynarec@dynarec.com Date: Tue, 11 Jul 2000 09:22:11 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Hehehe! I realised that and I spent the weekend doing another work: > >I finally finished FF Tactics, it was taking too much time. ;) > > Hehe, I played a bit of Syphon Filter ;-) > Perhaps I will start with Metal Gear. ;) > >How should we share now the opcodes so I could do some work?. > > Good question. I think I'll take Line-A and Line-F instructions - easy work > for me because those have to be implemented by the operating system ;-) Hehehe! So you want the easiest work. ;) > Honestly, I think that we need more information how we should handle the more > complicated addressing modes since I now have all the primitive stuff. How > about some more info Alex? But we can start with opcode definition. > And before we can decide who wants to do which instructions we'll have to > know how many people will be working on the definition. I think we are now three. All the other people seems still a bit busy. Perhaps later. > I guess NB and Alex will do the programming and traget code generation stuff, > which should keep them busy for some time. There is you (Victor) and me > working on the definition, but I think we could need at least one or two more > helpers if this should be finished ASAP, otherwise it'll take ages. If I would want I could spend a good amount of time with this (I'm only working four hours) if we need to do some work fast. > What about NG? Do you focus on the web design or do you still want to do some > work on the definition file? > Who else wants to be a part of the famous Dynarec Group? ;-) > The credits section of the Dynarec will end being really large. Good! ;) > M.I.K.e > Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 00:20:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA22296 for dynarec-outgoing; Tue, 11 Jul 2000 00:20:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Disassembler/Debugger Date: Tue, 11 Jul 2000 09:23:06 +0200 Message-ID: <01bfeb08$db3ae900$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> Hmm, people use a lot of winky faces on this list, I've been using them a >> lot too. Perhaps too much....... ;) ..D'OH! >It seems so. :o Who started with that? Sure I wasn't, I didn't usually >use them. Perhaps Neil Griffits ... ;) Me? Surely not! I deny that! I *never* use smilies! What are you trying to say, eh? ;)) Damn! :) Damn! :)) This could go on for a long time, but it won't because I'll stop it now... Neil. ========================================= Look here, this toy cow in my hands is very small. But the cows in that field are very far away... ========================================= --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 00:22:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA22306 for dynarec-outgoing; Tue, 11 Jul 2000 00:22:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 68K definition Date: Tue, 11 Jul 2000 09:26:55 +0200 Message-ID: <01bfeb09$63b98980$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Or maybe would you want to wait for the P4 ? I heard that it was really >better than the P3, some unofficial benchs showed that. It's an option but it'll be expensive when it comes out - and I want two machines to develop on when I go back to Uni. Besides, the prices strangely get higher as we approach Christmas, so it's always a good time to buy stuff around now... >> - but you can't say it won't work on an AMD. The K5, K6 and K6-2 > >Hmmm, last time I said something like "you can't say" [...], you know >;-) Yes, okay, okay. But you can't say "Llanfairpwllgwyngyllgogerychllandrobwlllantysyliogogerychgoch" - but I can. ;) And yes, that is a real place name in Wales. AFAIK it's the longest place name in Europe - but there's a place in Africa which is longer and that one is the longest in the world... And no, I'm not translating it. It's old Welsh and I don't understand all of it. Apart from "the house by the lake sylio". And there's a chapel (church) mentioned in there too... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 01:47:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA22381 for dynarec-outgoing; Tue, 11 Jul 2000 01:47:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 11 Jul 2000 01:58:24 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Status Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I busted something big time in the lexer. Grr.... Now, right after a file is opened, feof() returns an end of file condition. I don't get it! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 02:03:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA22558 for dynarec-outgoing; Tue, 11 Jul 2000 02:03:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007110908.LAA09843@pons.ac.upc.es> Subject: Re: DYNAREC: Status In-Reply-To: "from Neil Bradley at Jul 11, 2000 01:58:24 am" To: dynarec@dynarec.com Date: Tue, 11 Jul 2000 11:08:06 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I busted something big time in the lexer. Grr.... Now, right after a file > is opened, feof() returns an end of file condition. I don't get it! > Strange. Well, I also have had many problems with eofs sometimes. And you must be opening a file with content ... > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 02:04:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA22568 for dynarec-outgoing; Tue, 11 Jul 2000 02:04:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007110911.LAA22363@pons.ac.upc.es> Subject: Re: DYNAREC: Status In-Reply-To: "from Neil Bradley at Jul 11, 2000 01:58:24 am" To: dynarec@dynarec.com Date: Tue, 11 Jul 2000 11:11:01 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I busted something big time in the lexer. Grr.... Now, right after a file > is opened, feof() returns an end of file condition. I don't get it! > I have found a clearerr() function which clear the error indicator and the EOF indicator for the stream. > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 02:05:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA22580 for dynarec-outgoing; Tue, 11 Jul 2000 02:05:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Status Date: Tue, 11 Jul 2000 11:07:33 +0200 Message-ID: <01bfeb17$72a73880$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >I busted something big time in the lexer. Grr.... Now, right after a file >is opened, feof() returns an end of file condition. I don't get it! Do you want to send me what you've done so far and I can look and see if I can spot anything? Neil. ========================================= Look here, this toy cow in my hands is very small. But the cows in that field are very far away... ========================================= --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 02:39:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA22612 for dynarec-outgoing; Tue, 11 Jul 2000 02:39:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Status Date: Tue, 11 Jul 2000 11:41:37 +0200 Message-ID: <01bfeb1c$34f8de80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> I busted something big time in the lexer. Grr.... Now, right after a file >> is opened, feof() returns an end of file condition. I don't get it! > >Strange. Well, I also have had many problems with eofs sometimes. And you >must be opening a file with content ... That is normally when you have something strange (like a 0x0d) in there - or a strange code higher than 127. Then I see that. But straight after fopen()? Maybe he's run out of file handles (in Windows '9X I doubt it though)... Strange! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 03:19:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA22653 for dynarec-outgoing; Tue, 11 Jul 2000 03:19:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007111026.MAA21288@pons.ac.upc.es> Subject: DYNAREC: A bit about testing To: dynarec@dynarec.com Date: Tue, 11 Jul 2000 12:26:26 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm a bit bored today so I will explain how I'm doing the testing of an emulated ISA (is my work). I'm working in an university project related with static binary translation. Its name is Dixie. It's retargetable, multiplataform, ... Actually there are translators for MIPS, Alpha, X86 and PPC. The system works on various 64 and now also 32 bit architectures. I usually use Alpha. The systems works this way: there is a compiler which is build from a "definition" file; the compiler translate a native binary into a virtual machine language which is later executed in a virtual machine, in fact we are interpreting. There are also compilers that translate from Dixie code to target code. But they are still in its early stages. The definition file just associates for each opcode format the Dixie code that translate the opcode. It has some helps for the programmer. Then the definition file is parsed and a C file is builded and compiled. There are also definition files for system calls (OS related) and to read the binary. My work is to end or correct the translator for the PPC. He! The problem is I'm using a Power2 for testing so I can't test many PPC instructions. I started or may be continued the testing (the PPC was already being developed when I started) using mainly the dbx, a debugger, and the debug mode of our virtual machine and executing sample binaries (we use Spec programs). It was a nightmare, it's really hard to find errors this way. Not first errors of course, they should be easy to find in previous development. But I started when the translation was working well and only there were a few bugs left. At the same time there was in development a PFC (a project from a student) that was trying to help with this. Two new tools where developed and a trace mode where added to the DVM. The tools were an special trace tool for the native machine which dumps registers in the same format we were using for the virtual machine, and another tool which generates from a "test" pattern file assembly code for the native architecture. How it works now? The tester or the programmer of the translator just build a very simple test file which test a single or multiple instructions. The tool, called ATPG, admits random data and register generation and repeats the sample code X times generating a wonderful test assembly program. Then this assembly file is compiled in the native machine and passed through the tool (dtrace) which produces a dump (trace) of the registers while executing. On the other side the compiled file is translated into Dixie code and executed in the Virtual Machine generating also a dump of the registers. As both dump files are in the same format the only thing you have to do is diff them and you will found if there are errors or not. Really fast and easy. I spent more than a month following a single error in an executable (go) which executed millions of instructions using the debuggger. In last weeks I could discover many errors easily this new way. Just wondering, why the people from this project (which has now a few years) didn't started to work this way? Perhaps this could be useful for us, perhaps not. I was just bored. ;) In fact isn't directly applicable for dynarecs because many times when you translate the code you lose the native instruction unit. But with our approach could be used when hiper accurated timing enabled. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 03:24:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA22666 for dynarec-outgoing; Tue, 11 Jul 2000 03:24:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 68K definition Date: Tue, 11 Jul 2000 12:22:34 +0200 Message-ID: <01bfeb21$ed755100$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ...although I *could* be going for an Athlon. See these prices? Athlon 750Mhz Slot A 512Kb £139.87 Duron 750Mhz Socket A £134.00 Pentium III 750E socket370 £277.99 Pentium III 750E slot1 £259.88 http://www.gamesxtreme.net/wcpup/ At that price, I have two choices. Either go Intel - but buy from the US. Or I go AMD. But christ, that's extortionate! It's not $96 anymore (which is what I thought it was) - the difference is 120 quid. That's $192! Yes, we get ripped off in the UK... ========================================= Look here, this toy cow in my hands is very small. But the cows in that field are very far away... ========================================= --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 04:09:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA22719 for dynarec-outgoing; Tue, 11 Jul 2000 04:09:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: 3D hardware From: "M.I.K.e" In-Reply-To: <01bfeb06$5a7aed80$35901a17@turkey> Message-ID: <00036c21138509b8_mailit@mail.dynarec.com> References: <01bfeb06$5a7aed80$35901a17@turkey> Date: Tue, 11 Jul 2000 13:17:27 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Just call me "backwards boy" because I'm answering my e-mail backwards. Did you say "backwater boy"? ;-) >That's true enough. But you'll have problems with the nVidea drivers then >because they've been optimising them for the K7. Apparently. I haven't seen >a TNT2 or GeForce in a while so I don't know how much faster they are now. Don't even mention nVidia to me! That firm is like a red cloth to me, and you know that I'm taurus just like NB! Sure nVidia does great hardware, but what do I do with the fastest graphics card without good drivers? In all tests GeForce 2 vs Voodoo 5 the GeForce wins performancewise, although those benchmarks sometimes seem to be tweaked. I noticed that some games got only 20FPS or even less on a Voodoo 5, but those games run fluently on my Voodoo Banshee! The only thing I can think of is that they used OpenGL although some of these games have faster Glide drivers. Only one test I read so far mentioned that the GeForce drivers were less stable than the Voodoo 5 drivers, but it seems that only performance matters nowadays - who cares that you have to reboot more often? The main reason why I'm against nVidia chip sets is that you don't get decent BeOS driveres because Be simply doesn't get the information they need to write these. I think nVidia used open source to write the GeForce Linux drivers but didn't make the driver open source, which could have been used to base the BeOS drivers on. I think the Linux community only doesn't complain because otherwise there wouldn't be any GeForce drivers for Linux. On the other hand I already have a Voodoo 4 driver, which also works with Voodoo 5, for BeOS since the 5.0.1 update. Also when the new OpenGL implementation comes out there will be hardware acceleration for Voodoo (even faster than Windows or Linux), but due to the strange information politics of nVidia there will be no hardware acceleration for nVidia chip sets! Another firm which acts equally strange is Creative. They seem to alter their audio chip sets slightly without marking it or telling anyone about. What this means for BeOS is that the chip set is still identified correctly but it doesn't work as it should and sometimes it's totally mute. But Creative have also some problems with their own drivers. One of my friends had the problem that his SB Live always threw a blue screen when it should play a sound after he upgraded from P3-500 to 700. I told him that this could be timing sensitive code in the driver, which is a bit weird for such a new card, but I was right because a new driver fixed the problem! To make a long story short, I now see two respected hardware firms (nVidia and Creative) in a different light now and I surely won't buy their hardware soon... >Neil. -- M.I.K.e Beware of self-styled experts: an ex is a has-been, and a spurt is a drip under pressure. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 04:09:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA22720 for dynarec-outgoing; Tue, 11 Jul 2000 04:09:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Intel vs AMD From: "M.I.K.e" In-Reply-To: <1edlfy4.1j6l57q1a0e688M@[192.168.0.2]> Message-ID: <00036c20c68b206f_mailit@mail.dynarec.com> References: <1edlfy4.1j6l57q1a0e688M@[192.168.0.2]> Date: Tue, 11 Jul 2000 12:55:55 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Why ? I didn't install lots of patches: only the traditional SP3 at that >time. I have a poor AMD K6-2/300. SP3 isn't Y2K compliant therefore the guy who installed the computer took the newest SP at the time, which was SP5, and NT simply crashed. Then he tried SP4 and the system could boot, but one DLL crashed all the time. I think in the end he used SP4 and one DLL from SP5. That's not how it should work in my opinion. Ok, you could blame Microsoft in that case, but they should have enough resources to test such things, so I really don't want to know what might happen with application software from smaller firms. It's right that fewer firms program assembly nowadays but Outcast and Delta Force rely heavily on MMX, just to name an example. Strangely enough Delta Force 2 still doesn't run as fluently with my new P3 as I want it to, but Outcast simply flies - maybe Appeal has better programmers than Novalogic... >Gwenolé Beauchesne -- M.I.K.e Finagle's fourth Law: Once a job is fouled up, anything done to improve it only makes it worse. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 04:47:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA22762 for dynarec-outgoing; Tue, 11 Jul 2000 04:47:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008f01bfeb2e$d10aeb80$c232073e@nibble> From: "Kieron Wilkinson" To: References: <01bfeb05$13d8c380$35901a17@turkey> Subject: Re: DYNAREC: 68K definition Date: Tue, 11 Jul 2000 12:40:52 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yep, the K6-2 was slower than the PII - can't argue with that. It's only > when you can use things like 3DNow! (which I would have liked to use except > that the FPU isn't accurate enough) that you'll see speed increases. Again, > that's specific optimising... FPU not accurate enough? Are you sure about this? Aren't all CPU's now produced comply with that IEEE standard? Think about this... What about all those delicate scientific software? If the FPU in an AMD was slightly different, the software would not be very portable would it? Scientific software makes care slightly less about accuracy than they do about knowing how inaccurate something is and that it is consistently the same amount of accuracy across CPU's. This is why the IEEE standard was brought into place... Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 04:51:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA22775 for dynarec-outgoing; Tue, 11 Jul 2000 04:51:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Intel vs AMD Date: Tue, 11 Jul 2000 13:55:00 +0200 Message-ID: <01bfeb2e$d721c200$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >That's not how it should work in my opinion. Ok, you could blame Microsoft in >that case, but they should have enough resources to test such things, so I >really don't want to know what might happen with application software from >smaller firms. But I'd have to blame MS for that. It may have done the same on Intel as well... >It's right that fewer firms program assembly nowadays but Outcast and Delta >Force rely heavily on MMX, just to name an example. Strangely enough Delta >Force 2 still doesn't run as fluently with my new P3 as I want it to, but >Outcast simply flies - maybe Appeal has better programmers than Novalogic... But what about MMX? The K6 supported MMX - all of the AMD CPUs from there still do! 3DNow! could be a threat to Intel (it's got a fair bit of support) - but I personally don't like it as it wasn't accurate enough last time I tried to use it (for sound). Anyway, I think SIMD takes most of the instructions from 3DNow! and adds some more. :) Neil. ========================================= Look here, this toy cow in my hands is very small. But the cows in that field are very far away... ========================================= --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 05:13:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA22804 for dynarec-outgoing; Tue, 11 Jul 2000 05:13:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 68K definition Date: Tue, 11 Jul 2000 14:16:42 +0200 Message-ID: <01bfeb31$dfc7c780$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >FPU not accurate enough? Are you sure about this? Yes. :) >Aren't all CPU's now produced comply with that IEEE standard? Yes. Well, it'd be a good idea if they did. :) >Think about this... What about all those delicate scientific software? If >the FPU in an AMD was slightly different, the software would not be very >portable would it? They'd work. For reasons you'll discover in my next paragraph... >Scientific software makes care slightly less about accuracy than they do >about knowing how inaccurate something is and that it is consistently the >same amount of accuracy across CPU's. This is why the IEEE standard was >brought into place... Yes, but you should go back and re-read what I wrote. I was talking about the 3DNow! FPU. In effect, there isn't just one FPU in the AMD CPUs, there's two. One works with normal applications, the other you have to use 3DNow! instructions to use. The reason it's faster is that they give up accuracy. It's certainly good enough for 3D applications (thus the name "3DNow!") but it's not accurate enough for upsampling (which is what I was trying to do). Anyway, that's why I don't like 3DNow! - though I'd probably love it if I was using it for 3D. But I wasn't. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 05:23:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA22821 for dynarec-outgoing; Tue, 11 Jul 2000 05:23:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Intel vs AMD From: "M.I.K.e" In-Reply-To: <01bfeb2e$d721c200$35901a17@turkey> Message-ID: <00036c221fe541fb_mailit@mail.dynarec.com> References: <01bfeb2e$d721c200$35901a17@turkey> Date: Tue, 11 Jul 2000 14:32:29 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >But I'd have to blame MS for that. It may have done the same on Intel as >well... Ok, you can blame MS for it, but that's what I'm saying: AMD isn't as well supported as Intel is and if you want the full compatibility you'll have to pick Intel. >But what about MMX? The K6 supported MMX - all of the AMD CPUs from there >still do! 3DNow! could be a threat to Intel (it's got a fair bit of >support) - but I personally don't like it as it wasn't accurate enough last >time I tried to use it (for sound). Anyway, I think SIMD takes most of the >instructions from 3DNow! and adds some more. :) I think you mean SSE (Streamed SIMD Extension) since SIMD (Single Instruction Multiple Data) is simply a general execution method, which was called vector operation before. The difference between SSE and 3DNow! is that SSE (unlike MMX) has separate registers to work with and AMD uses the same registers for FP, MMX, *and* 3DNow! >Neil. -- M.I.K.e New members urgently required for SUICIDE CLUB, Watford area. -- Monty Python's Big Red Book --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 05:23:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA22832 for dynarec-outgoing; Tue, 11 Jul 2000 05:23:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 3D hardware Date: Tue, 11 Jul 2000 14:23:45 +0200 Message-ID: <01bfeb32$db4fde80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >>Just call me "backwards boy" because I'm answering my e-mail backwards. > >Did you say "backwater boy"? ;-) No. Nor did I say "back alley boy", "backstyle boy" or any other combination which I'm sure you'll try to think up. ;p >Sure nVidia does great hardware, but what do I do with the fastest graphics >card without good drivers? In all tests GeForce 2 vs Voodoo 5 the GeForce >wins performancewise, although those benchmarks sometimes seem to be tweaked. >I noticed that some games got only 20FPS or even less on a Voodoo 5, but >those games run fluently on my Voodoo Banshee! What resolution is that at? >The only thing I can think of is that they used OpenGL They should state it in the benchmarks... >although some of these games have faster Glide drivers. But if you compare, you have to compare like for like. That'd mean either D3D or OpenGL. Besides, 3Dfx lost their speed advantages with Glide with the Voodoo4 and Voodoo5 when they changed their internal architecture. 3Dfx themselves are now creating "wrappers" so that Glide can still be used. Although, because they can be written for the new hardware, it could still be faster than D3D or OpenGL... >Only one test I read so far mentioned that the GeForce drivers were >less stable than the Voodoo 5 drivers, but it seems that only performance >matters nowadays - who cares that you have to reboot more often? I agree on this - I find Nvidia drivers buggy and good for crashing. Well, they were on the TNT, TNT2 and everything else (GeForce) up until December. Don't know how bad they are now because I haven't seen. >The main reason why I'm against nVidia chip sets is that you don't get decent >BeOS driveres because Be simply doesn't get the information they need to >write these. I think nVidia used open source to write the GeForce Linux >drivers but didn't make the driver open source, which could have been used to >base the BeOS drivers on. I think the Linux community only doesn't complain >because otherwise there wouldn't be any GeForce drivers for Linux. S3 are also guilty of this. Though I did help matters. It's great having contacts. :) >On the other hand I already have a Voodoo 4 driver, which also works with >Voodoo 5, for BeOS since the 5.0.1 update. Also when the new OpenGL >implementation comes out there will be hardware acceleration for Voodoo (even >faster than Windows or Linux), but due to the strange information politics of >nVidia there will be no hardware acceleration for nVidia chip sets! I can understand why nVidia take this stance - when you open-source your hardware designs, anybody could look and copy - or criticise - or whatever. Anyway, I can understand it. They'd want to keep it internal (thus the thing with Linux). Maybe they don't think BeOS is big enough yet to be worth the effort? All you need are the specs for the TNT though. Or even the Riva 128. The internal workings haven't changed too much. I don't know if you can get information on those either though... >To make a long story short, I now see two respected hardware firms (nVidia >and Creative) in a different light now and I surely won't buy their hardware >soon... I don't like Creative too much anymore either. I don't like their business practice of supporting one product until a new one comes out to replace it (then all support moves to the new product and the old product is left stranded). I don't like their practice of mis-information ("S3 don't give us the source to their drivers and BIOS anymore!", "I'll just check" and "Oh, sorry, they *do* give us the source - sorry!") and I... that'll do. But given that I've just had a go at nVidia and Creative, I've got to do the same for 3Dfx. What's that with "Look at *OUR* T-Buffer!" and "T-Buffer is a technology we invented!" and "Buy our cards for FSAA - it's great!"? T-Buffer has existed since Silicon Graphics workstations. The official name is "accumulative buffer" and it does *exactly* the same things. So there go lies number #1 and #2. As for #3, people have been able to do FSAA since... well, the first 3D cards.The fact is that it's only now we've got the bandwidth and fillrate to do it effectively. Yes, even the ViRGE has been able to do FSAA. I'll admit that 3Dfx have a nice formula for FSAA - but I truly reckon that I could do the same on the Savage4/Savage2K because of the streams processor. And I'd have more bandwidth available. But I've got too much to do so I won't. Though maybe I'll give the idea to someone who can... :) Neil. ========================================= Look here, this toy cow in my hands is very small. But the cows in that field are very far away... ========================================= --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 05:52:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA22863 for dynarec-outgoing; Tue, 11 Jul 2000 05:52:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Intel vs AMD Date: Tue, 11 Jul 2000 14:55:30 +0200 Message-ID: <01bfeb37$4ac7cd00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >>But I'd have to blame MS for that. It may have done the same on Intel as >>well... > >Ok, you can blame MS for it, but that's what I'm saying: AMD isn't as well >supported as Intel is and if you want the full compatibility you'll have to >pick Intel. No, I won't believe that. The same code *will* work the same on both CPUs. In this case I find it likely that it would have done the same on Intels. I can't and won't believe any different. If AMD has problems like these, people won't buy the CPUs. But, more often than not, problems like these actually come from Via chipsets. Yes, really. >>But what about MMX? The K6 supported MMX - all of the AMD CPUs from there >>still do! 3DNow! could be a threat to Intel (it's got a fair bit of >>support) - but I personally don't like it as it wasn't accurate enough last >>time I tried to use it (for sound). Anyway, I think SIMD takes most of the >>instructions from 3DNow! and adds some more. :) > >I think you mean SSE (Streamed SIMD Extension) since SIMD (Single Instruction >Multiple Data) is simply a general execution method, which was called vector >operation before. You're right, I did mean SSE. But I couldn't remember the acronym so I used SIMD instead. :) >The difference between SSE and 3DNow! is that SSE (unlike MMX) has separate >registers to work with and AMD uses the same registers for FP, MMX, *and* >3DNow! I was quite under the impression that Intel did the same thing. Or is it when you use the FPU? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 08:35:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA22987 for dynarec-outgoing; Tue, 11 Jul 2000 08:35:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000801bfeb4e$ba6faa80$5973073e@nibble> From: "Kieron Wilkinson" To: References: <01bfeb31$dfc7c780$35901a17@turkey> Subject: Re: DYNAREC: 68K definition Date: Tue, 11 Jul 2000 14:36:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yes, but you should go back and re-read what I wrote. I was talking about > the 3DNow! FPU. In effect, there isn't just one FPU in the AMD CPUs, there's Hehe. Ah yes, so you were. Just ignore me then :) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 10:10:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA23067 for dynarec-outgoing; Tue, 11 Jul 2000 10:10:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000711100915.007ba150@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 11 Jul 2000 10:09:15 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: DYNAREC: switch () ? Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, Just for a little change of pace ;)... Does anyone know just when gcc and MSVC top out when handling large switch () statements? If I have to use several thousands of CASEs, is it worth trying or will I end up seeing gcc dying on me? (as in the case with 65536-dword static tables) Thanks! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 10:38:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA23102 for dynarec-outgoing; Tue, 11 Jul 2000 10:38:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 11 Jul 2000 10:49:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Status In-Reply-To: <01bfeb17$72a73880$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I busted something big time in the lexer. Grr.... Now, right after a file > >is opened, feof() returns an end of file condition. I don't get it! > Do you want to send me what you've done so far and I can look and see if I > can spot anything? Nah. It's a braindead feof() implementation (MSVC was happy clams). I just looked at fgetc() to see what it returned. No need to fire off two calls when one will do! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 11:05:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA23145 for dynarec-outgoing; Tue, 11 Jul 2000 11:05:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <01bfeb05$3f5bae00$35901a17@turkey> Subject: Re: DYNAREC: 68K definition From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Tue, 11 Jul 2000 20:26:10 +0200 Message-ID: <1edmcyv.1tlqg9c1qgsohsM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id LAA23139 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I knew that as soon as NT was mentioned that you'd comment. Your emulator > only works properly in NT. ;) Hmmm, I must admit that I haven't used Windows for a long time except when we had to use PowerPoint for our final project presentations. I am definitively UNIX and MacOS oriented ;-) BTW, BasiliskII is not _my_ emulator. Lauri Pesonen is the author of the Windows ports. And yes, he did a big job with NT versions (e.g. direct memory access: no memory banks are needed) as this didn't work on Windows 9X. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 11:05:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA23154 for dynarec-outgoing; Tue, 11 Jul 2000 11:05:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <3.0.5.32.20000711100915.007ba150@powernet.net> Subject: Re: DYNAREC: switch () ? From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Tue, 11 Jul 2000 20:26:11 +0200 Message-ID: <1edmfcq.z8h9ly1hjjws8M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id LAA23151 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Just for a little change of pace ;)... Does anyone know just when gcc and > MSVC top out when handling large switch () statements? If I have to use > several thousands of CASEs, is it worth trying or will I end up seeing gcc > dying on me? (as in the case with 65536-dword static tables) Well, I just know that GCC will generate a jump table for at least 5 cases, preferably linear in the increasing order. Now will it be able to cope with thousands of cases ? Hmm, GCC is very memory-demanding and sometimes, 128 MB won't suffice. Just for fun, I once tried to output the UAE instruction handlers in a big switch. GCC simply could not cope with only 128 MB... -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 11:10:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA23166 for dynarec-outgoing; Tue, 11 Jul 2000 11:10:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 11 Jul 2000 11:21:33 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: switch () ? In-Reply-To: <3.0.5.32.20000711100915.007ba150@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Just for a little change of pace ;)... Does anyone know just when gcc and > MSVC top out when handling large switch () statements? If I have to use > several thousands of CASEs, is it worth trying or will I end up seeing gcc > dying on me? (as in the case with 65536-dword static tables) Seems to be OK with MSVC. Why not create a program to spit out such a test and try it? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 12:14:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA23243 for dynarec-outgoing; Tue, 11 Jul 2000 12:14:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Intel vs AMD From: "M.I.K.e" In-Reply-To: <01bfeb37$4ac7cd00$35901a17@turkey> Message-ID: <00036c26e8cc7935_mailit@mail.dynarec.com> References: <01bfeb37$4ac7cd00$35901a17@turkey> Date: Tue, 11 Jul 2000 20:15:00 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >No, I won't believe that. The same code *will* work the same on both CPUs. >In this case I find it likely that it would have done the same on Intels. I >can't and won't believe any different. If AMD has problems like these, >people won't buy the CPUs. But, more often than not, problems like these >actually come from Via chipsets. Yes, really. I don't think that the snail computer I have at work has a Via chipset (Gigabyte board with only 66MHz). And I also don't think that P6 and K7 behave the same way in every respect, that's just impossible with these complex machines. >You're right, I did mean SSE. But I couldn't remember the acronym so I used >SIMD instead. :) I think it was named ISSE (Internet SSE) at first, but then everyone wondered what that has to do with Internet and now it's only SSE ;-) The reason why I corrected you is that MMX and 3DNow! will use SIMD as well, as is the vector FP unit of the SH-4, but that can work with 128-bit ;-) >I was quite under the impression that Intel did the same thing. Or is it >when you use the FPU? Up to my knowledge the P3 uses the MMX registers as an alias for the FP registers, but SSE have their own register set. Is that correct NB? >Neil. -- M.I.K.e You can make it illegal, but you can't make it unpopular. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 12:14:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA23238 for dynarec-outgoing; Tue, 11 Jul 2000 12:14:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 3D hardware From: "M.I.K.e" In-Reply-To: <01bfeb32$db4fde80$35901a17@turkey> Message-ID: <00036c272af2631d_mailit@mail.dynarec.com> References: <01bfeb32$db4fde80$35901a17@turkey> Date: Tue, 11 Jul 2000 20:33:30 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >No. Nor did I say "back alley boy", "backstyle boy" or any other combination >which I'm sure you'll try to think up. ;p Thanks for these hints, I didn't know these ;-) >>I noticed that some games got only 20FPS or even less on a Voodoo 5, but >>those games run fluently on my Voodoo Banshee! >What resolution is that at? I'd have to check the test, but I normally run 1024x768 (with 16-bit of course). >But if you compare, you have to compare like for like. That'd mean either >D3D or OpenGL. But then they should use D3D because the GeForce is optimised for OpenGL and Voodoo 5 isn't. >Besides, 3Dfx lost their speed advantages with Glide with the Voodoo4 and >Voodoo5 when they changed their internal architecture. 3Dfx themselves are >now creating "wrappers" so that Glide can still be used. Although, because >they can be written for the new hardware, it could still be faster than D3D >or OpenGL... Didn't know that, but I have you for such info ;-) >S3 are also guilty of this. Though I did help matters. It's great having >contacts. :) Does that mean that they write drivers for BeOS now? >I can understand why nVidia take this stance - when you open-source your >hardware designs, anybody could look and copy - or criticise - or whatever. Maybe you could just see how buggy these drivers really are... >Anyway, I can understand it. They'd want to keep it internal (thus the thing >with Linux). But when they are using GPL code to base their drivers on (as I was told) the case is clear I think... >Maybe they don't think BeOS is big enough yet to be worth the effort? Probably, but why don't they give at least Be the info to write decent drivers? I think according to polls about 50% of the BeOS users have a nVidia chipset, and with the current politics I don't think they'll purchase one again... >All you need are the specs for the TNT though. Or even the Riva 128. The >internal workings haven't changed too much. I don't know if you can get >information on those either though... They have 2D drivers for these chipsets but they are not perfect. What I noticed that the TNT driver doesn't support DPMS, eg. I'm not sure what else could be missing. My Banshee runs perfectly and I heard the same about Voodoo 5. 3D is a totally different thing. BeOS 4.5 had experimental hardware acceleration for Glide only. I forgot which chipsets will be supported by the new OpenGL implementation but nVidia chipsets surely weren't on the list! >I don't like Creative too much anymore either. I don't like their business >practice of supporting one product until a new one comes out to replace it >(then all support moves to the new product and the old product is left >stranded). Welcome to the club! But what you don't notice when you work with the native Creative drivers is that they also change the chipset on current cards... >T-Buffer has existed since Silicon Graphics workstations. The official name >is "accumulative buffer" and it does *exactly* the same things. So there go >lies number #1 and #2. Yeah, I already heard that from a friend who is a bit into OpenGL. >As for #3, people have been able to do FSAA since... I haven't heard that before, but what I've read is that you don't notice a difference with FSAA enabled on a GeForce 2, whereas the effect of the Voodoo 5 is said to be quite good. Another problem with Voodoo 5 is that it lacks T&L, but according to one test they couldn't see a difference for the GeForce 2 running Evolva, which seems to rely heavily on T&L. I guess the best thing is to compare them by yourself... I don't think that I need a new graphics card at the moment, but if I have the need and there are still no BeOS drivers for the GeForce it's an easy decision for me... >Neil. -- M.I.K.e Baker's First Law of Federal Geometry: A block grant is a solid mass of money surrounded on all sides by governors. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 12:20:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA23276 for dynarec-outgoing; Tue, 11 Jul 2000 12:20:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 11 Jul 2000 12:32:06 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Intel vs AMD In-Reply-To: <00036c26e8cc7935_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I was quite under the impression that Intel did the same thing. Or is it > >when you use the FPU? > Up to my knowledge the P3 uses the MMX registers as an alias for the FP > registers, but SSE have their own register set. Is that correct NB? Correct. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 14:42:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA23467 for dynarec-outgoing; Tue, 11 Jul 2000 14:42:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007d01bfeb89$f954e2c0$0100a8c0@lion> From: "Neil Griffiths" To: References: <01bfeb32$db4fde80$35901a17@turkey> <00036c272af2631d_mailit@mail.dynarec.com> Subject: Re: DYNAREC: 3D hardware Date: Tue, 11 Jul 2000 23:46:23 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >No. Nor did I say "back alley boy", "backstyle boy" or any other combination > >which I'm sure you'll try to think up. ;p > > Thanks for these hints, I didn't know these ;-) I'm just glad you missed out on the obvious "Backstreet boy". Then I'd have to come and hit you. ;) > >What resolution is that at? > > I'd have to check the test, but I normally run 1024x768 (with 16-bit of > course). How? You have a Banshee which, unless I'm very much mistaken, has a maximum resolution of 800x600x16. And that's because it's based on the Voodoo2. If I'm wrong then I'd be very surprised too! > >But if you compare, you have to compare like for like. That'd mean either > >D3D or OpenGL. > > But then they should use D3D because the GeForce is optimised for OpenGL and > Voodoo 5 isn't. The GeForce just has better OpenGL drivers - it isn't better optimised for it. OpenGL is, after all, just one set of instructions to put an image on the screen. I'm not sure how the D3D part stands up anymore - but it should be pretty good by now given that the GeForce is still based on the TNT. So they've had time to get the drivers working well. :) > Didn't know that, but I have you for such info ;-) 3D is my thang, baby. ;) > >S3 are also guilty of this. Though I did help matters. It's great having > >contacts. :) > > Does that mean that they write drivers for BeOS now? No, but I got them to give the information to a guy who is writing them instead. > >I can understand why nVidia take this stance - when you open-source your > >hardware designs, anybody could look and copy - or criticise - or whatever. > > Maybe you could just see how buggy these drivers really are... Genau. ;) Exactly. I've just been speaking in German and I'm afraid my brain is locked in that mode for the moment. AARGH! :o > But when they are using GPL code to base their drivers on (as I was told) the > case is clear I think... Really? If so then they don't have a leg to stand on. The community *could* demand the code. Though I think you're right - they won't. > >Maybe they don't think BeOS is big enough yet to be worth the effort? > > Probably, but why don't they give at least Be the info to write decent > drivers? I think according to polls about 50% of the BeOS users have a nVidia > chipset, and with the current politics I don't think they'll purchase one > again... Why would 50% of BeOS users use BeOS if their graphics card wasn't supported? > 3D is a totally different thing. BeOS 4.5 had experimental hardware > acceleration for Glide only. I forgot which chipsets will be supported by the > new OpenGL implementation but nVidia chipsets surely weren't on the list! Maybe some S3 cards - but I doubt it. > Welcome to the club! But what you don't notice when you work with the native > Creative drivers is that they also change the chipset on current cards... I don't use any Creative products anymore. I still have my SB16 in my computer though, never bothered to take it out! > I haven't heard that before, but what I've read is that you don't notice a > difference with FSAA enabled on a GeForce 2, whereas the effect of the Voodoo > 5 is said to be quite good. I'd need to compare myself, but you can see a difference in FSAA on the GeForce2. If only because of the speed decrease. ;) > Another problem with Voodoo 5 is that it lacks T&L, but according to one test > they couldn't see a difference for the GeForce 2 running Evolva, which seems > to rely heavily on T&L. Bah, the current T&L generation is crap. The idea is nice - but the current implementation isn't. > I don't think that I need a new graphics card at the moment, but if I have > the need and there are still no BeOS drivers for the GeForce it's an easy > decision for me... ATi? ;p Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 14:42:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA23463 for dynarec-outgoing; Tue, 11 Jul 2000 14:42:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007c01bfeb89$f7d45d40$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Intel vs AMD Date: Tue, 11 Jul 2000 23:09:54 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Up to my knowledge the P3 uses the MMX registers as an alias for the FP > > registers, but SSE have their own register set. Is that correct NB? > > Correct. That's what I thought too. I'm glad we agree. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 15:18:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA23533 for dynarec-outgoing; Tue, 11 Jul 2000 15:18:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 11 Jul 2000 23:29:47 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: 3D hardware Message-ID: <20000711232946.A2965@boris.athome> References: <01bfeb32$db4fde80$35901a17@turkey> <00036c272af2631d_mailit@mail.dynarec.com> <007d01bfeb89$f954e2c0$0100a8c0@lion> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: <007d01bfeb89$f954e2c0$0100a8c0@lion>; from Neil Griffiths on Tue, Jul 11, 2000 at 11:46:23PM +0100 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Tue, Jul 11, 2000 at 11:46:23PM +0100, Neil Griffiths wrote: > I'm just glad you missed out on the obvious "Backstreet boy". Then I'd have > to come and hit you. ;) Bleugh, don't even mention them... actually, The Offspring's live set is quite funny at the point they take a baseball bat to four full-size Backstreet Boy dummies... > > >What resolution is that at? > > > > I'd have to check the test, but I normally run 1024x768 (with 16-bit of > > course). > > How? You have a Banshee which, unless I'm very much mistaken, has a maximum > resolution of 800x600x16. And that's because it's based on the Voodoo2. If > I'm wrong then I'd be very surprised too! Nah, the Banshee is the same as the Voodoo3 but with only one texture unit, isn't it? In which case, it can do much higher resolutions than that. Hmm, don't have anything else off-topic to say, just seeing if I can mail the list again after changing email addresses (I seem to be getting two copies of messages at the moment... does unsubscribing actually work? Has anyone done it before? ;-)) Anyway. I've been trying (rather unsuccessfully, so far) to make some improvements to ARMphetamine over the last couple of weeks. I want to overhaul practically all of my translation method, getting rid of all the dirty and messy bits. In particular, I want to do the flag abstraction thing I might have mentioned before, and maybe 'proper' cross-block register allocation [1]. Whether anything which works will come out of it remains to be seen... I seem to have become sidetracked into learning perl instead [2]. But mostly as a replacement string cruncher from (erm) the C preprocessor when generating tables of things... Jules [1] Probably more as an academic exercise rather than because it'll give any speed increase... [2] It's not very nice. I think I like it. -- Julian Brown, in limbo --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 16:11:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA23613 for dynarec-outgoing; Tue, 11 Jul 2000 16:11:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 11 Jul 2000 16:22:44 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 3D hardware In-Reply-To: <20000711232946.A2965@boris.athome> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I'm just glad you missed out on the obvious "Backstreet boy". Then I'd have > > to come and hit you. ;) > Bleugh, don't even mention them... actually, The Offspring's live set is > quite funny at the point they take a baseball bat to four full-size > Backstreet Boy dummies... You mean the "Backdoor boys". Proof that the music industrcy 9at least in the US) is an abysmal joke. Bands aren't discovered any longer, they're manufactured. And it's the same guy behind the Backdoor boys and N'Stink. What's really funny is to hear them crying to congress about Napster. Waaaaaaaa. Hope those fucker go broke - just like the tobacco industry. > improvements to ARMphetamine over the last couple of weeks. I want to > overhaul practically all of my translation method, getting rid of all the What exactly is ARMphetamine? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 16:17:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA23628 for dynarec-outgoing; Tue, 11 Jul 2000 16:17:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000711161646.007bb5f0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 11 Jul 2000 16:16:46 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: switch () ? In-Reply-To: <1edmfcq.z8h9ly1hjjws8M@[192.168.0.2]> References: <3.0.5.32.20000711100915.007ba150@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Hi, > >> Just for a little change of pace ;)... Does anyone know just when gcc and >> MSVC top out when handling large switch () statements? If I have to use >> several thousands of CASEs, is it worth trying or will I end up seeing gcc >> dying on me? (as in the case with 65536-dword static tables) > >Well, I just know that GCC will generate a jump table for at least 5 >cases, preferably linear in the increasing order. Now will it be able to >cope with thousands of cases ? Hmm, GCC is very memory-demanding and >sometimes, 128 MB won't suffice. Just for fun, I once tried to output >the UAE instruction handlers in a big switch. GCC simply could not cope >with only 128 MB... I've determined to stick with a function table. Heck, this is just a C test core that's supposed to be accurrate. I can build an assembly core or even go straight to learning dynarec after this. There are 6 instructions with 12 variable bits, that automatically creates 24576 different functions to cope with. Now take all the dozens of other instructions with 256 and 16 combinations possible each and you've got a lot of routines. I tried a test switch () with 25000 and gcc (DJGPP) didn't even get a chance to complain before it crashed. Ah well ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 16:26:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA23647 for dynarec-outgoing; Tue, 11 Jul 2000 16:26:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Jul 2000 00:38:40 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: 3D hardware Message-ID: <20000712003840.A3041@boris.athome> References: <20000711232946.A2965@boris.athome> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: ; from Neil Bradley on Tue, Jul 11, 2000 at 04:22:44PM +0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Tue, Jul 11, 2000 at 04:22:44PM +0000, Neil Bradley wrote: > > Bleugh, don't even mention them... actually, The Offspring's live set is > > quite funny at the point they take a baseball bat to four full-size > > Backstreet Boy dummies... > > You mean the "Backdoor boys". Proof that the music industrcy 9at least in > the US) is an abysmal joke. Bands aren't discovered any longer, they're > manufactured. And it's the same guy behind the Backdoor boys and > N'Stink. What's really funny is to hear them crying to congress about > Napster. Waaaaaaaa. Hope those fucker go broke - just like the tobacco > industry. The Offspring's response (as opposed to Metallica's) to the Napster thing was quite funny too really, selling Napster caps and T-shirts from their webpage rather than complaining about their stuff being distributed illegally - especially as they did it unlicenced ;-)... slightly bizarrely, it seems to be official now, looking at the webpage again... > > improvements to ARMphetamine over the last couple of weeks. I want to > > overhaul practically all of my translation method, getting rid of all the > > What exactly is ARMphetamine? Nothing particularly exciting - it's an emulator for a subset of an ARM processor (dynamically-recompiling, of course ;-)). It doesn't do lots of stuff at the moment - exceptions, MMU, processor modes and bug-free operation are currently missing, amongst other things. It produces x86 code via an intermediate representation. I've written heaps about the thing, 'cos it was a university project which demanded a dissertation... it's all on my page on the dynarec server ;-) Jules -- Julian Brown, in limbo --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 16:47:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA23676 for dynarec-outgoing; Tue, 11 Jul 2000 16:47:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 11 Jul 2000 16:59:13 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 3D hardware In-Reply-To: <20000712003840.A3041@boris.athome> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > What exactly is ARMphetamine? > Nothing particularly exciting - it's an emulator for a subset of an ARM > processor (dynamically-recompiling, of course ;-)). It doesn't do lots of Ah! I'm reading it right now. One thing you mention on your "oldinfo" page: Barrel shifter: the ARM allows one operand of any ALU instruction to be shifted in a variety of ways by any amount. The IA does not. Can you give me an example? You can do "shl eax,7" if you really want. IA Has a barrel shifter. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 16:59:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA23696 for dynarec-outgoing; Tue, 11 Jul 2000 16:59:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Jul 2000 01:11:41 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: 3D hardware Message-ID: <20000712011140.A3123@boris.athome> References: <20000712003840.A3041@boris.athome> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.5us In-Reply-To: ; from Neil Bradley on Tue, Jul 11, 2000 at 04:59:13PM +0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Tue, Jul 11, 2000 at 04:59:13PM +0000, Neil Bradley wrote: > > > What exactly is ARMphetamine? > > Nothing particularly exciting - it's an emulator for a subset of an ARM > > processor (dynamically-recompiling, of course ;-)). It doesn't do lots of > Ah! I'm reading it right now. One thing you mention on your > "oldinfo" page: > > Barrel shifter: the ARM allows one operand of any ALU instruction to be > shifted in a variety of ways by any amount. The IA does not. > > Can you give me an example? You can do "shl eax,7" if you really want. IA > Has a barrel shifter. It's a bit different on the ARM though - you can write instructions like: add r0,r1,r2,lsl #7 which will add r2 shifted left by seven places to r1, then put the result in r0, or even use a register shift like: orr r4,r3,r2,ror r5 which does the same thing (or rather than add), but takes the shift amount from the register r5 rather than an immediate value. I just meant you couldn't do that in a single ALU op on IA processors (it's not exactly a fundamental reason the two are incompatible really though, but I wrote that list off the top of my head iirc). The postscript file probably has more information and fewer mistakes, by the way... Jules ps Any idea how I can unsubscribe jtb20@cam.ac.uk, seeing as dynarec-request@dynarec.com doesn't seem to be listening to unsubscribe requests? Getting two copies of things seems a bit extravagant... -- Julian Brown, in limbo --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 18:00:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA23784 for dynarec-outgoing; Tue, 11 Jul 2000 18:00:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 3D hardware From: "M.I.K.e" In-Reply-To: Message-ID: <00036c2c3d74218a_mailit@mail.dynarec.com> References: Date: Wed, 12 Jul 2000 02:36:35 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Barrel shifter: the ARM allows one operand of any ALU instruction to be >shifted in a variety of ways by any amount. The IA does not. >Can you give me an example? You can do "shl eax,7" if you really want. IA >Has a barrel shifter. Yeah, you are right, barrel shifter is simply the term for a unit which can make any shift or rotation on one cycle. The difference between the ARM and most other processors is that in ARM the barrel shifter is not part of the ALU and therefore runs parallel to it. This means when you shift the second operand (it has to be that second, that's why ARM has a reverse subtract to use it on the "first" as well) by a constant value you can do that shift in the same cycle as the main instruction. When the shift amount is in a register the time to execute the whole instruction is increased by one cycle. There are no shift or rotation instructions in ARM, so when you don't find a fancy way to combine the shift with some other instruction you have to use a move: MOV R0, R1, LSL #2 The strange immediates I mentioned before (8-bit values rotated right in 2- bit steps) are also generated by the barrel shifter. I hope that makes things a bit clearer. >-->Neil -- M.I.K.e Alimony is a system by which, when two people make a mistake, one of them keeps paying for it. -- Peggy Joyce --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 18:00:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA23792 for dynarec-outgoing; Tue, 11 Jul 2000 18:00:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 3D hardware From: "M.I.K.e" In-Reply-To: <007d01bfeb89$f954e2c0$0100a8c0@lion> Message-ID: <00036c2cab08b2e8_mailit@mail.dynarec.com> References: <01bfeb32$db4fde80$35901a17@turkey> <00036c272af2631d_mailit@mail.dynarec.com> <007d01bfeb89$f954e2c0$0100a8c0@lion> Date: Wed, 12 Jul 2000 03:07:13 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm just glad you missed out on the obvious "Backstreet boy". That would have been too mean! >Then I'd have to come and hit you. ;) In that case I'd even understand it ;-) >How? You have a Banshee which, unless I'm very much mistaken, has a maximum >resolution of 800x600x16. And that's because it's based on the Voodoo2. If >I'm wrong then I'd be very surprised too! Jules is right, the Banshee is basically a Voodoo 3 with only one texel, but since the second texel is seldom used my Banshee should be about as fast as a Voodoo 3 in most cases and I also can have the same resolutions. BTW, my Banshee has 16MB SGRAM and a Voodoo 2 only has 12MB SDRAM. >3D is my thang, baby. ;) Don't call me baby! ;-) >> Does that mean that they write drivers for BeOS now? >No, but I got them to give the information to a guy who is writing them >instead. That's a compromise ;-) >> Maybe you could just see how buggy these drivers really are... >Genau. ;) Practicing your German? ;-) >Exactly. I've just been speaking in German and I'm afraid my brain is locked >in that mode for the moment. AARGH! :o I know what you mean, I have that mode locked almost all the time - PANIC! >Really? If so then they don't have a leg to stand on. The community *could* >demand the code. Though I think you're right - they won't. I'm not sure if this is truely the case since I'm not into Linux issues but I was told so. Anyway I guess they are glad to have drivers at last... >Why would 50% of BeOS users use BeOS if their graphics card wasn't >supported? Maybe because they used other OSes before? Well, the TNT has a driver, but it seems that it isn't on par with the Voodoo ones. >Maybe some S3 cards - but I doubt it. Probably, I think I sent you the URL of the article about the new OpenGL implementation for BeOS. >I don't use any Creative products anymore. I still have my SB16 in my >computer though, never bothered to take it out! Still the best equipment for DOS games, when you know how to slow down your CPU ;-) The funny thing is that my Yamaha Waveforce seems to run better in BeOS than Windows, apart from MIDI I think. >I'd need to compare myself, Yeah, I bet that's one thing you cannot read about but have to see it with your own 1.5 eyes ;-) >but you can see a difference in FSAA on the >GeForce2. If only because of the speed decrease. ;) Hehe. >Bah, the current T&L generation is crap. The idea is nice - but the current >implementation isn't. As long as environmental bump mapping works, that's a thing my Banshee doesn't do. >ATi? ;p Oh yeah, it's good for my wallet, but I could have bought an AMD too then ;-) >Neil. -- M.I.K.e Weinberg's First Law: Progress is made on alternate Fridays. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 23:41:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA24063 for dynarec-outgoing; Tue, 11 Jul 2000 23:41:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 3D hardware Date: Wed, 12 Jul 2000 08:44:26 +0200 Message-ID: <01bfebcc$9ed0c100$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> I'm just glad you missed out on the obvious "Backstreet boy". Then I'd have >> to come and hit you. ;) > >Bleugh, don't even mention them... actually, The Offspring's live set is >quite funny at the point they take a baseball bat to four full-size >Backstreet Boy dummies... Really? Cool! I haven't seen them live yet, though I'd like to. I have got a fair bit of their music though. Along with many other bands. I like music. :) >> How? You have a Banshee which, unless I'm very much mistaken, has a maximum >> resolution of 800x600x16. And that's because it's based on the Voodoo2. If >> I'm wrong then I'd be very surprised too! > >Nah, the Banshee is the same as the Voodoo3 but with only one texture >unit, isn't it? In which case, it can do much higher resolutions than >that. I thought it was a Voodoo2 with one TMU (and 2D to boot). There's one way to prove it though. Mike, can you switch to 32-bit colour in 3D? If so then it's not a Voodoo2. :) >I seem to have become sidetracked into learning perl instead Perl is an interesting language - but if you intend on using it on a busy site, don't. It's interpreted (compilers exist but I don't know how good they are) and it takes up a fair bit of CPU when running the interpreter. But it *is* handy for small tasks - like news updating for instance. But if you intend on using it to parse pages (like I've done) then it's better to use a non-interpreted language - like C. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 23:47:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA24076 for dynarec-outgoing; Tue, 11 Jul 2000 23:47:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 3D hardware Date: Wed, 12 Jul 2000 08:51:21 +0200 Message-ID: <01bfebcd$962cba80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> Bleugh, don't even mention them... actually, The Offspring's live set is >> quite funny at the point they take a baseball bat to four full-size >> Backstreet Boy dummies... > >You mean the "Backdoor boys". Proof that the music industrcy 9at least in >the US) is an abysmal joke. Bands aren't discovered any longer, they're >manufactured. And it's the same guy behind the Backdoor boys and >N'Stink. What's really funny is to hear them crying to congress about >Napster. Waaaaaaaa. Hope those fucker go broke - just like the tobacco >industry. The music industry is crap everywhere. Although, as a country, the UK has produced a fair number of good bands, the music industry here still produces/manufactures these bands. Like the Spice Girls. Gah! I hate them with a passion. There was only one of them with any singing talent - and that was hardly notable. I would like to see the music industry go through a whole shake-up. I do not like manufactured bands as a rule - mainly because when the band is manufactured, the music is manufactured to try and cater for - what the music industry sees as - the masses. And the masses, to be blunt, suck ass. The music they buy is shit and I don't understand why they buy it. It very rarely is actually by a musician or musicians with any talent. Neil. PS Traffic on this list is likely to go down over the next few days - my family arrive here today for my birthday on Saturday and I can't really see me answering my mail all the time. :o --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 11 23:56:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA24092 for dynarec-outgoing; Tue, 11 Jul 2000 23:56:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 3D hardware Date: Wed, 12 Jul 2000 08:57:41 +0200 Message-ID: <01bfebce$78ac2080$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >>I'm just glad you missed out on the obvious "Backstreet boy". > >That would have been too mean! I know! >>Then I'd have to come and hit you. ;) > >In that case I'd even understand it ;-) We're on the same wavelength then. ;) >>How? You have a Banshee which, unless I'm very much mistaken, has a maximum >>resolution of 800x600x16. And that's because it's based on the Voodoo2. If >>I'm wrong then I'd be very surprised too! > >Jules is right, the Banshee is basically a Voodoo 3 with only one texel, but >since the second texel is seldom used my Banshee should be about as fast as a >Voodoo 3 in most cases and I also can have the same resolutions. BTW, my >Banshee has 16MB SGRAM and a Voodoo 2 only has 12MB SDRAM. Really? As for the texel engines, any 3D game which uses multi-texturing (that's most of them) would use the other texel unit. So while it'll still be fast, it won't ever be as fast - except in single-texturing (which doesn't happen very often now). >>3D is my thang, baby. ;) > >Don't call me baby! ;-) Alright, doll. ;) >>No, but I got them to give the information to a guy who is writing them >>instead. > >That's a compromise ;-) Well they actually wanted *ME* to do it - but I don't have the time! Or, actually, the inclination... >>> Maybe you could just see how buggy these drivers really are... >>Genau. ;) > >Practicing your German? ;-) Ja, genau. ;) >>Exactly. I've just been speaking in German and I'm afraid my brain is locked >>in that mode for the moment. AARGH! :o > >I know what you mean, I have that mode locked almost all the time - PANIC! I'd be really upset if I was stuck in German mode almost all the time. I'd be running for the nearest razorblade! ;)) >>Why would 50% of BeOS users use BeOS if their graphics card wasn't >>supported? > >Maybe because they used other OSes before? Well, the TNT has a driver, but it >seems that it isn't on par with the Voodoo ones. Okay, so maybe most of them are TNT owners. That's a possibility... >>Maybe some S3 cards - but I doubt it. > >Probably, I think I sent you the URL of the article about the new OpenGL >implementation for BeOS. Ah, you did. So yes, some S3 cards. I remember now. :) >>I don't use any Creative products anymore. I still have my SB16 in my >>computer though, never bothered to take it out! > >Still the best equipment for DOS games, when you know how to slow down your >CPU ;-) You want to *slow* down your computer! Infidel! Infidel! ;)) >>I'd need to compare myself, > >Yeah, I bet that's one thing you cannot read about but have to see it with >your own 1.5 eyes ;-) Of course, screenshots can't do this sort of thing justice - though it *should* be able to give you some sort of idea... >>Bah, the current T&L generation is crap. The idea is nice - but the current >>implementation isn't. > >As long as environmental bump mapping works, that's a thing my Banshee >doesn't do. But I can't think of any games (except Expendable) that actually uses it - so I wouldn't be too upset! >>ATi? ;p > >Oh yeah, it's good for my wallet, but I could have bought an AMD too then ;-) Tut, why didn't you? ;p Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 01:11:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA24194 for dynarec-outgoing; Wed, 12 Jul 2000 01:11:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000712011046.007bca90@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 12 Jul 2000 01:10:46 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <200007110704.JAA15539@pons.ac.upc.es> References: <3.0.5.32.20000710101223.007abad0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm starting the start. ;) Actually I'm waiting a friend who has to end >his exams. And last weeks I didn't do the Mega CD homework. :( I was >playing FF Tactics. I just searched for info at Eidolons and read a bit. >I was wondering why noone has emulated it. I supposed because the lack >of information. BTW, Christian Schiller (or Eidolon) says it has the >MegaCD devolopment tools. Yes, I got his CD chock full of official Sega development manuals :) It has all the Sega CD BIOSes and lots of other stuff. It's worth getting. >Our main problem is that we have very few experience in emulation (I have >the most experience). And building the full emulator from scratch, including >Genesis hardware, will take a lot of time. I will take your word and demand >for helping. ;) In any case if some day I can help you I will be also glad. ;) You can use Genital. It may be "impure" but hey! It's public domain software :) >It seems so. :o Who started with that? Sure I wasn't, I didn't usually >use them. Perhaps Neil Griffits ... ;) They're addicting. And evil ;) Aaaah! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 01:12:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA24204 for dynarec-outgoing; Wed, 12 Jul 2000 01:12:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Jul 2000 01:23:54 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Status Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Lexer is almost 100% working again. I had to make some nasty tweaks that caused me no end of grief. But it's all better now. In the process I induced a bunch of bugs and cleaned 'em all up again. We can parse Starscream's assembly output (1.8 megabytes) on a PII/350 in about a half a second. And that includes the string management and "debug" memory routines. So we won't have any performance problems parse-wise. ;-) Didn't get much time to work on it tonight. I have an 8AM meeting tomorrow, and it's already past 1AM. ;-( -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 01:25:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA24222 for dynarec-outgoing; Wed, 12 Jul 2000 01:25:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007120832.KAA29125@pons.ac.upc.es> Subject: Re: DYNAREC: Status In-Reply-To: "from Neil Bradley at Jul 12, 2000 01:23:54 am" To: dynarec@dynarec.com Date: Wed, 12 Jul 2000 10:32:26 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Lexer is almost 100% working again. I had to make some nasty tweaks that > caused me no end of grief. But it's all better now. In the process I > induced a bunch of bugs and cleaned 'em all up again. > > We can parse Starscream's assembly output (1.8 megabytes) on a PII/350 in > about a half a second. And that includes the string management and > "debug" memory routines. So we won't have any performance problems > parse-wise. ;-) > Good! > Didn't get much time to work on it tonight. I have an 8AM meeting > tomorrow, and it's already past 1AM. ;-( > Go sleep! ;) BTW. Someone knows a good 68K disassembler? > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 01:31:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA24238 for dynarec-outgoing; Wed, 12 Jul 2000 01:31:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007120830.KAA10766@pons.ac.upc.es> Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <3.0.5.32.20000712011046.007bca90@powernet.net> "from Bart Trzynadlowski at Jul 12, 2000 01:10:46 am" To: dynarec@dynarec.com Date: Wed, 12 Jul 2000 10:30:41 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I'm starting the start. ;) Actually I'm waiting a friend who has to end > >his exams. And last weeks I didn't do the Mega CD homework. :( I was > >playing FF Tactics. I just searched for info at Eidolons and read a bit. > >I was wondering why noone has emulated it. I supposed because the lack > >of information. BTW, Christian Schiller (or Eidolon) says it has the > >MegaCD devolopment tools. > > Yes, I got his CD chock full of official Sega development manuals :) It has > all the Sega CD BIOSes and lots of other stuff. It's worth getting. > I hope so. When I asked him about more information he talked about it and he saied he will post me the CD. In any case I still don't need it. There are others things I must study yet. > >Our main problem is that we have very few experience in emulation (I have > >the most experience). And building the full emulator from scratch, > including > >Genesis hardware, will take a lot of time. I will take your word and demand > >for helping. ;) In any case if some day I can help you I will be also > glad. ;) > > You can use Genital. It may be "impure" but hey! It's public domain > software :) > Impure? Why? Because of the name? I have downloaded it a few seconds ago. I will take a look. ;) You are using Starscream or your own 68K core? Ops!! I think you talked about Starscream in another mail so you must be using it. Then you are interested in the new dynarec we are building here. > >It seems so. :o Who started with that? Sure I wasn't, I didn't usually > >use them. Perhaps Neil Griffits ... ;) > > They're addicting. And evil ;) Aaaah! > Really? :o It's bad. :( Or it's good?. :) In any case ;) > > Bart Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 01:35:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA24252 for dynarec-outgoing; Wed, 12 Jul 2000 01:35:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Status Date: Wed, 12 Jul 2000 10:36:58 +0200 Message-ID: <01bfebdc$57523100$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Lexer is almost 100% working again. I had to make some nasty tweaks that >caused me no end of grief. But it's all better now. In the process I >induced a bunch of bugs and cleaned 'em all up again. Cool. Ready to make a drop so that we can all try it out on our different platforms? >We can parse Starscream's assembly output (1.8 megabytes) on a PII/350 in >about a half a second. And that includes the string management and >"debug" memory routines. So we won't have any performance problems >parse-wise. ;-) That's pretty damn fast. I'm suitably impressed. >Didn't get much time to work on it tonight. I have an 8AM meeting >tomorrow, and it's already past 1AM. ;-( Ooh, bad. Just think though, you have to get used to that sort of sleep (or less!) when your wife has the baby... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 01:42:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA24265 for dynarec-outgoing; Wed, 12 Jul 2000 01:42:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000712014144.007b9730@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 12 Jul 2000 01:41:44 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <200007120830.KAA10766@pons.ac.upc.es> References: <3.0.5.32.20000712011046.007bca90@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I hope so. When I asked him about more information he talked about it and >he saied he will post me the CD. In any case I still don't need it. >There are others things I must study yet. It's never to early to get it. It has Sega Genesis docs too ;) >Impure? Why? Because of the name? I have downloaded it a few seconds >ago. I will take a look. ;) Oh, no, some people don't like building on other peoples' software since they consider that impure and would rather start from scratch. I wanted to start from scratch when doing Genital, I used a pre-made 68K emulator though ;) Genital v0.3 (last public version uploaded) doesn't contain Sega CD emulation. I've been working privately on the new Genital for about 2 months. If you need a private build of it, I can arrange to send you one. It has better compatibility, shadow/hilight mode, Sega CD emulation, faster ModeX code, and some bugfixes here and there... plus a nifty option that lets you write config files ;) >Ops!! I think you talked about Starscream in another mail so you must >be using it. Then you are interested in the new dynarec we are building >here. Yes, I want to write a debugger for it, and maybe it will be of some use... it will certainly be useful for me. I plan on trying to add the dynarec 68K core once it gets done. Of course... if I can do anything else for the project, let me know ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 01:44:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA24275 for dynarec-outgoing; Wed, 12 Jul 2000 01:44:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Status Date: Wed, 12 Jul 2000 10:47:30 +0200 Message-ID: <01bfebdd$d005bd00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >BTW. Someone knows a good 68K disassembler? DasmX should work well. The one I like by preference (I bought it about a year ago) is IDA Pro. It'll disassemble from *many* CPUs. I'd look now for you but I have no WWW access... so I can't. :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 02:08:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA24458 for dynarec-outgoing; Wed, 12 Jul 2000 02:08:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007120913.LAA08687@pons.ac.upc.es> Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <3.0.5.32.20000712014144.007b9730@powernet.net> "from Bart Trzynadlowski at Jul 12, 2000 01:41:44 am" To: dynarec@dynarec.com Date: Wed, 12 Jul 2000 11:13:11 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I hope so. When I asked him about more information he talked about it and > >he saied he will post me the CD. In any case I still don't need it. > >There are others things I must study yet. > > It's never to early to get it. It has Sega Genesis docs too ;) > Well. It's on Chris and post service hands. ;) > >Impure? Why? Because of the name? I have downloaded it a few seconds > >ago. I will take a look. ;) > > Oh, no, some people don't like building on other peoples' software since > they consider that impure and would rather start from scratch. I wanted to > start from scratch when doing Genital, I used a pre-made 68K emulator > though ;) > Umm ... I think I am usually too lazy so this isn't a problem for me. If there is something already implemented and I don't want to spend time with it why I should have to implement it by myself? In any case if I would want to do something from scratch I would do it, but only because I would want so. The main problem I see with the project of a MegaCD emulator is the lack of time, so starting a Genesis emulator form scratch will made a lot of more difficult. And nowadays there are a lot Genesis emulators out there. The problem with using other people software is that usually the styles of writing code are different and perhaps it could be a bit harder to understand it at the start. > Genital v0.3 (last public version uploaded) doesn't contain Sega CD > emulation. I've been working privately on the new Genital for about 2 > months. If you need a private build of it, I can arrange to send you one. > It has better compatibility, shadow/hilight mode, Sega CD emulation, faster > ModeX code, and some bugfixes here and there... plus a nifty option that > lets you write config files ;) > It could be interesting. I won't say no. > >Ops!! I think you talked about Starscream in another mail so you must > >be using it. Then you are interested in the new dynarec we are building > >here. > > Yes, I want to write a debugger for it, and maybe it will be of some use... > it will certainly be useful for me. I plan on trying to add the dynarec 68K > core once it gets done. Of course... if I can do anything else for the > project, let me know ;) > Do not say that too loud. The credit section of the dynarec will be really large. :) In any case this will be good!. > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 02:43:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA24493 for dynarec-outgoing; Wed, 12 Jul 2000 02:43:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000301bfebe6$ac81dae0$1c5901d5@nibble> From: "Kieron Wilkinson" To: References: <01bfebdd$d005bd00$35901a17@turkey> Subject: Re: DYNAREC: Status Date: Wed, 12 Jul 2000 10:29:39 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >BTW. Someone knows a good 68K disassembler? > > DasmX should work well. The one I like by preference (I bought it about a > year ago) is IDA Pro. It'll disassemble from *many* CPUs. I'd look now for > you but I have no WWW access... so I can't. :-/ If you want a good free one, why not try IRAPC. It is the one that Richard Bush ported over from the Amiga. If you (or anyone else) wants it, just mail me privately. It also includes source. I also have another one here, but I have not tried it so I don't know how good it is. It comes as a .c file, but in actual fact it is a mail message containing a few files and seems some work on before you can compile it... Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 03:28:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA24540 for dynarec-outgoing; Wed, 12 Jul 2000 03:28:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 3D hardware From: "M.I.K.e" In-Reply-To: <01bfebcc$9ed0c100$35901a17@turkey> Message-ID: <00036c34737d1b78_mailit@mail.dynarec.com> References: <01bfebcc$9ed0c100$35901a17@turkey> Date: Wed, 12 Jul 2000 12:24:21 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I thought it was a Voodoo2 with one TMU (and 2D to boot). There's one way to >prove it though. Mike, can you switch to 32-bit colour in 3D? If so then >it's not a Voodoo2. :) It cannot have 32-bit colour in 3D because even the Voodoo 3 doesn't have that. >Neil. -- M.I.K.e i'm living so far beyond my income that we may almost be said to be living apart. -- e. e. cummings --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 03:28:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA24548 for dynarec-outgoing; Wed, 12 Jul 2000 03:28:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 3D hardware From: "M.I.K.e" In-Reply-To: <01bfebce$78ac2080$35901a17@turkey> Message-ID: <00036c349bf51499_mailit@mail.dynarec.com> References: <01bfebce$78ac2080$35901a17@turkey> Date: Wed, 12 Jul 2000 12:35:40 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >We're on the same wavelength then. ;) Well, I don't like *any* boygroup and the Backshit Boys are no exception to that rule! >Really? As for the texel engines, any 3D game which uses multi-texturing >(that's most of them) would use the other texel unit. So while it'll still >be fast, it won't ever be as fast - except in single-texturing (which >doesn't happen very often now). Then it's strange that I don't have much performance problems unless the game is really bad programmed. Ok, I have some problems with 3DMax2000 running with medium and high detail, but I didn't have many problems with games yet. >Alright, doll. ;) "Shut up in there, will ya?" - just a quote from Metal Gear Solid - the demo since I'm still trying to find a fully English version... >Well they actually wanted *ME* to do it - but I don't have the time! Or, >actually, the inclination... You are not supporting BeOS? You... ;-) >Ja, genau. ;) Perfect spelling! How about something more difficult? BTW, do you still know the difference between "schwül" and "schwul"? ;-) >I'd be really upset if I was stuck in German mode almost all the time. I'd >be running for the nearest razorblade! ;)) Thank god that I don't have to shave that often... >You want to *slow* down your computer! Infidel! Infidel! ;)) Well, how do you suppose to play Duke Nukum (or whatever) on an Athlon 750 running at full speed? >But I can't think of any games (except Expendable) that actually uses it - >so I wouldn't be too upset! Hey, even that game ran on my machine! Ok, I didn't have the great looks but it was faster than on a GeForce with everything enabled ;-) >Tut, why didn't you? ;p For the same reason why I don't buy ATI: When the hardware is so cheap there must be something wrong with it! >Neil. -- M.I.K.e It is the business of little minds to shrink. -- Carl Sandburg --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 03:28:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA24556 for dynarec-outgoing; Wed, 12 Jul 2000 03:28:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Status From: "M.I.K.e" In-Reply-To: Message-ID: <00036c346cc7f667_mailit@mail.dynarec.com> References: Date: Wed, 12 Jul 2000 12:22:29 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Lexer is almost 100% working again. I had to make some nasty tweaks that >caused me no end of grief. But it's all better now. In the process I >induced a bunch of bugs and cleaned 'em all up again. Well done. >We can parse Starscream's assembly output (1.8 megabytes) on a PII/350 in >about a half a second. And that includes the string management and >"debug" memory routines. So we won't have any performance problems >parse-wise. ;-) Cool! That's really fast, Perl won't have enough time to start when your lexer has already done all the work! >Didn't get much time to work on it tonight. I have an 8AM meeting >tomorrow, and it's already past 1AM. ;-( Sleep well! >-->Neil -- M.I.K.e The cost of living is going up, and the chance of living is going down. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 03:58:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA24588 for dynarec-outgoing; Wed, 12 Jul 2000 03:58:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 3D hardware Date: Wed, 12 Jul 2000 13:01:37 +0200 Message-ID: <01bfebf0$8c687e80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >It cannot have 32-bit colour in 3D because even the Voodoo 3 doesn't have >that. Good point. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 04:44:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA24637 for dynarec-outgoing; Wed, 12 Jul 2000 04:44:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 3D hardware Date: Wed, 12 Jul 2000 13:46:43 +0200 Message-ID: <01bfebf6$d94f5380$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >>We're on the same wavelength then. ;) > >Well, I don't like *any* boygroup and the Backshit Boys are no exception to >that rule! No, nor me. >Then it's strange that I don't have much performance problems unless the game >is really bad programmed. It'll still be fast. You just won't get double the fillrate when multi-texturing is used! >>Alright, doll. ;) > >"Shut up in there, will ya?" - just a quote from Metal Gear Solid - the demo >since I'm still trying to find a fully English version... Don't think I can help here... :-/ >>Well they actually wanted *ME* to do it - but I don't have the time! Or, >>actually, the inclination... > >You are not supporting BeOS? You... ;-) Sorry, but unless Be give me a free copy then I'm not going to help them! :) >>Ja, genau. ;) > >Perfect spelling! How about something more difficult? Arsch! ;) >BTW, do you still know the difference between "schwül" and "schwul"? ;-) One's gay - and one isn't. ;) >>I'd be really upset if I was stuck in German mode almost all the time. I'd >>be running for the nearest razorblade! ;)) > >Thank god that I don't have to shave that often... True, it could be quite tempting... ;) >>You want to *slow* down your computer! Infidel! Infidel! ;)) > >Well, how do you suppose to play Duke Nukum (or whatever) on an Athlon 750 >running at full speed? I just learn to have quick reaction times. ;) >>But I can't think of any games (except Expendable) that actually uses it - >>so I wouldn't be too upset! > >Hey, even that game ran on my machine! Ok, I didn't have the great looks but >it was faster than on a GeForce with everything enabled ;-) Really? Cool. I'm betting it wouldn't beat a G400 though... >>Tut, why didn't you? ;p > >For the same reason why I don't buy ATI: When the hardware is so cheap there >must be something wrong with it! Or it's stolen. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 06:28:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA24730 for dynarec-outgoing; Wed, 12 Jul 2000 06:28:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 3D hardware From: "M.I.K.e" In-Reply-To: <01bfebf6$d94f5380$35901a17@turkey> Message-ID: <00036c36d1440cad_mailit@mail.dynarec.com> References: <01bfebf6$d94f5380$35901a17@turkey> Date: Wed, 12 Jul 2000 15:13:45 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It'll still be fast. You just won't get double the fillrate when >multi-texturing is used! Aha. >Sorry, but unless Be give me a free copy then I'm not going to help them! :) Hey, I gave you a copy of the personal edition, which is free, and that CD also includes the BeIDE! ;-) >Arsch! ;) Spelling - A Politeness - F Kruzitürken! Jetzt fängt dieser englische Windbeutel auch noch auf Deutsch das Fluchen an! >One's gay - and one isn't. ;) Yeah, but which one is which? ;-) >>Well, how do you suppose to play Duke Nukum (or whatever) on an Athlon 750 >>running at full speed? >I just learn to have quick reaction times. ;) Then you must be really quick... >Really? Cool. I'm betting it wouldn't beat a G400 though... One of my friends had a G400 for a short time. Either the drivers were totally crap or whatever, but I simply didn't why it's said to be that good, because it was so damn slooow... >Or it's stolen. ;) "Von Laster gefallen..." ("Has fallen from the back of the truck...") ;-) >Neil. -- M.I.K.e "I couldn't remember when I had been so disappointed. Except perhaps the time I found out that M&Ms really *do* melt in your hand ..." -- Peter Oakley --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 10:53:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA24939 for dynarec-outgoing; Wed, 12 Jul 2000 10:53:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Jul 2000 11:04:45 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 3D hardware In-Reply-To: <01bfebcd$962cba80$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >N'Stink. What's really funny is to hear them crying to congress about > >Napster. Waaaaaaaa. Hope those fucker go broke - just like the tobacco > >industry. > The music industry is crap everywhere. Although, as a country, the UK has > produced a fair number of good bands, Funnily enough, I was razzing the English a few years ago about the Spice Girls and my statement was something like "The UK has spewed some really gawdawful 'music' in the past - just look at the Spice Girls." and their reply was, "Well, we also produced The Beatles." and mine: "Precisely my point." ;-) (FWIW, the Beatles are the most overrated shite crap on the planet - followed by a close second - Eric Crapton). All that aside, almost all of my musical "idols" are European - either the UK or Germany. (Kraftwerk and Erasure are my top two favories). > the music industry here still > produces/manufactures these bands. Like the Spice Girls. Gah! I hate them > with a passion. There was only one of them with any singing talent - and > that was hardly notable. They look like hookers. As Dennis Miller said, "Geri Halliwel today indicated she's leaving the Spice Girls to pursue a solo career. I don't think she has any idea just how solo that career is going to be!" > I would like to see the music industry go through a whole shake-up. I do not > like manufactured bands as a rule - mainly because when the band is > manufactured, the music is manufactured to try and cater for - what the > music industry sees as - the masses. And the masses, to be blunt, suck ass. It's worse than that. They manufacture bands to cater to little girls and little boys. Don't tell me for a second that Britney Spears or N'Stink would have a record contract if they didn't have the look to go with it. > The music they buy is shit and I don't understand why they buy it. It very > rarely is actually by a musician or musicians with any talent. Well, after seeing so much shit for so long, shit starts looking pretty good. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 10:53:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA24949 for dynarec-outgoing; Wed, 12 Jul 2000 10:53:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Jul 2000 11:05:27 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Status In-Reply-To: <200007120832.KAA29125@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > BTW. Someone knows a good 68K disassembler? It may not be what you're looking for, but the last drop of drm68k had a dissasembler in it (in source form). -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 10:56:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA24964 for dynarec-outgoing; Wed, 12 Jul 2000 10:56:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Jul 2000 11:07:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Status In-Reply-To: <01bfebdc$57523100$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Lexer is almost 100% working again. I had to make some nasty tweaks that > >caused me no end of grief. But it's all better now. In the process I > >induced a bunch of bugs and cleaned 'em all up again. > Cool. Ready to make a drop so that we can all try it out on our different > platforms? No. It's still botching comments occasionally, but it does compile and run under MSVC, too. Can't imagine why it wouldn't work for others. > >We can parse Starscream's assembly output (1.8 megabytes) on a PII/350 in > >about a half a second. And that includes the string management and > >"debug" memory routines. So we won't have any performance problems > >parse-wise. ;-) > That's pretty damn fast. I'm suitably impressed. And it wouldn't be if I was forced to use a default library's string handlers. ;-) > Ooh, bad. Just think though, you have to get used to that sort of sleep (or > less!) when your wife has the baby... ;) I'll be doing Guerilla sleeping. Whenever I can get it! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 10:57:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA24974 for dynarec-outgoing; Wed, 12 Jul 2000 10:57:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Jul 2000 11:08:39 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <3.0.5.32.20000712014144.007b9730@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Genital v0.3 (last public version uploaded) doesn't contain Sega CD > emulation. I've been working privately on the new Genital for about 2 > months. If you need a private build of it, I can arrange to send you one. > It has better compatibility, shadow/hilight mode, Sega CD emulation, faster > ModeX code, and some bugfixes here and there... plus a nifty option that > lets you write config files ;) I've got a site that you may not know about: ftp://romz:idsasucks@archive.synthcom.com Tons of Genesis stuff there in case you need it. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 10:59:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA24985 for dynarec-outgoing; Wed, 12 Jul 2000 10:59:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Jul 2000 11:10:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <200007120913.LAA08687@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > core once it gets done. Of course... if I can do anything else for the > > project, let me know ;) > Do not say that too loud. The credit section of the dynarec will be > really large. :) In any case this will be good!. It will? So far I've only seen about a half dozen people actually contribute. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 11:09:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA25017 for dynarec-outgoing; Wed, 12 Jul 2000 11:09:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00a501bfec2d$d3e755a0$2b208cd4@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: Disassembler/Debugger Date: Wed, 12 Jul 2000 19:20:09 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've got a site that you may not know about: > ftp://romz:idsasucks@archive.synthcom.com > Tons of Genesis stuff there in case you need it. Nice. Why are some areas password protected? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 11:15:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA25036 for dynarec-outgoing; Wed, 12 Jul 2000 11:15:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Jul 2000 11:27:29 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <00a501bfec2d$d3e755a0$2b208cd4@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I've got a site that you may not know about: > > ftp://romz:idsasucks@archive.synthcom.com > > Tons of Genesis stuff there in case you need it. > Nice. > Why are some areas password protected? The whole thing is password protected. If you have a browser that's continuously asking you for a password, it should be shot. You should be able to just enter "idsasucks" as a password. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 11:22:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA25051 for dynarec-outgoing; Wed, 12 Jul 2000 11:22:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00c001bfec2f$9240c6c0$2b208cd4@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: Disassembler/Debugger Date: Wed, 12 Jul 2000 19:32:41 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The whole thing is password protected. If you have a browser that's > continuously asking you for a password, it should be shot. You should be > able to just enter "idsasucks" as a password. Thanks, seems to work now. Netscape 4.6 seems ok for most things but then crashes sporadically so I'm open to suggestions. Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 11:24:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA25062 for dynarec-outgoing; Wed, 12 Jul 2000 11:24:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Jul 2000 11:36:22 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <00c001bfec2f$9240c6c0$2b208cd4@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > The whole thing is password protected. If you have a browser that's > > continuously asking you for a password, it should be shot. You should be > > able to just enter "idsasucks" as a password. > Thanks, seems to work now. > Netscape 4.6 seems ok for most things but then crashes sporadically so I'm > open to suggestions. Hm... well, I run 4.7, and I seem to recall earlier versions of Nutscrape had this problem. Internet Exploder had this problem too, but I think the latest version took care of it. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 11:45:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA25099 for dynarec-outgoing; Wed, 12 Jul 2000 11:45:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000712114446.007bea10@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 12 Jul 2000 11:44:46 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: References: <3.0.5.32.20000712014144.007b9730@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I've got a site that you may not know about: > >ftp://romz:idsasucks@archive.synthcom.com > >Tons of Genesis stuff there in case you need it. And 32X stuff I see, and pretty much everything else under the sun... ooh! Lynx! Hehe, thanks a lot! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 11:52:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA25116 for dynarec-outgoing; Wed, 12 Jul 2000 11:52:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000712115126.007b7100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 12 Jul 2000 11:51:26 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <200007120913.LAA08687@pons.ac.upc.es> References: <3.0.5.32.20000712014144.007b9730@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The problem with using other people software is that usually the >styles of writing code are different and perhaps it could be a bit >harder to understand it at the start. Yeah, my code is becoming ugly, unreadable, and pathetic. I should have split things up into a driver-based system, I had some nice ideas on that, but I was too lazy. I have to fragment the emulator up into more source files, especially for isolation between the Sega CD and Genesis-specific components to make it more readable. Nonetheless, you can get a source snapshot by emailing me trzy@powernet.net, anyone else who wants it is welcome too... I'm probably going to start writing up a 68K debugger soon, I won't be able to implement many of the features, it will be more of a skeleton for the final thing. I want to try out adding the callback support and support for different input/output functions to make it work under different systems. Neil, you mentioned you don't like including debuggers with CPU emulators, I'll try my best to convince you otherwise ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 11:56:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA25131 for dynarec-outgoing; Wed, 12 Jul 2000 11:56:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Jul 2000 12:08:30 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <3.0.5.32.20000712115126.007b7100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Neil, you mentioned you don't like including debuggers with CPU emulators, > I'll try my best to convince you otherwise ;) I never said that. What I said was it's not really the place for it since everyone's emulation loops are so radically different, but I have no objections to one being included. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 23:16:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA25687 for dynarec-outgoing; Wed, 12 Jul 2000 23:16:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007130623.IAA10773@pons.ac.upc.es> Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: "from Neil Bradley at Jul 12, 2000 11:08:39 am" To: dynarec@dynarec.com Date: Thu, 13 Jul 2000 08:23:47 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've got a site that you may not know about: > > ftp://romz:idsasucks@archive.synthcom.com > > Tons of Genesis stuff there in case you need it. > And I thought I had a good collection of Genesis ROMS ... ;) > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 23:24:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA25700 for dynarec-outgoing; Wed, 12 Jul 2000 23:24:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007130631.IAA28324@pons.ac.upc.es> Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <3.0.5.32.20000712115126.007b7100@powernet.net> "from Bart Trzynadlowski at Jul 12, 2000 11:51:26 am" To: dynarec@dynarec.com Date: Thu, 13 Jul 2000 08:31:31 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >The problem with using other people software is that usually the > >styles of writing code are different and perhaps it could be a bit > >harder to understand it at the start. > > Yeah, my code is becoming ugly, unreadable, and pathetic. I should have > split things up into a driver-based system, I had some nice ideas on that, > but I was too lazy. I have to fragment the emulator up into more source > files, especially for isolation between the Sega CD and Genesis-specific > components to make it more readable. It isn't so unreadable. ;) I took a look at your code yesterday and I think I understand it easier that the DGen code (perhaps because DGen has a bit of C++). I really like the main loop, althought I think the keys could be handled with a switch. > Nonetheless, you can get a source > snapshot by emailing me trzy@powernet.net, anyone else who wants it is > welcome too... > I will. > I'm probably going to start writing up a 68K debugger soon, I won't be able > to implement many of the features, it will be more of a skeleton for the > final thing. I want to try out adding the callback support and support for > different input/output functions to make it work under different systems. > Neil, you mentioned you don't like including debuggers with CPU emulators, > I'll try my best to convince you otherwise ;) > > > It's a good idea. BTW I have told you my friend has a MegaCD and I have a CD Rewriter? Perhaps could be useful for do some testing on the same console (waste of CDs though, because I don't think it will read CD Rewriteables). There is a MegaCD debugger out there? ;) > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 23:44:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA25723 for dynarec-outgoing; Wed, 12 Jul 2000 23:44:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007130651.IAA27929@pons.ac.upc.es> Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <200007130623.IAA10773@pons.ac.upc.es> "from Victor Moya del Barrio at Jul 13, 2000 08:23:47 am" To: dynarec@dynarec.com Date: Thu, 13 Jul 2000 08:51:03 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Tons of Genesis stuff there in case you need it. > > > And I thought I had a good collection of Genesis ROMS ... ;) > But I think my Gameboy/CGB collection could beat your. ;) Have I said I like the password? :) > > -->Neil > > > > Victor Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 23:53:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA25739 for dynarec-outgoing; Wed, 12 Jul 2000 23:53:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007130700.JAA14012@pons.ac.upc.es> Subject: Re: DYNAREC: Status In-Reply-To: "from Neil Bradley at Jul 12, 2000 11:05:27 am" To: dynarec@dynarec.com Date: Thu, 13 Jul 2000 09:00:03 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > BTW. Someone knows a good 68K disassembler? > > It may not be what you're looking for, but the last drop of drm68k had a > dissasembler in it (in source form). > Ops! It seems I'm not doing my homeworks. :( Well. Mike, we should have to continue the 68K def file. ;) I haven't done nothing in all the week, every afternoon I have a different thing I must do which keeps me from continue it. :( Hehehe! One of those things is that I finally bought a modem. I'm waiting to get an ISP and subscribe a plain quote in a telephone company. I will be bothering you all more frequently soon. I thought something about static register allocation in consoles. We could, using the def file, create a small parser which at the time the rom is loaded will scan the code (all the code possible, core regions called with indirections won't be scanned) and count what registers are the most used. I think it won't be so slower for an initialization and it could show a good aproximation to the real register allocation (of course the regions more times executed should be the more important). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 12 23:55:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA25752 for dynarec-outgoing; Wed, 12 Jul 2000 23:55:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000712235426.007bc920@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 12 Jul 2000 23:54:26 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <200007130631.IAA28324@pons.ac.upc.es> References: <3.0.5.32.20000712115126.007b7100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It isn't so unreadable. ;) I took a look at your code yesterday and I >think I understand it easier that the DGen code (perhaps because DGen >has a bit of C++). I really like the main loop, althought I think >the keys could be handled with a switch. The current snapshot is a bit hideous, I'm going to make some changes soon, such as isolating the Genesis and Sega CD components and making 1 set of memory read/write routines (currently Genital has memory routines in the 68K files and one outside of them which is used by the VDP DMA.) > >> Nonetheless, you can get a source >> snapshot by emailing me trzy@powernet.net, anyone else who wants it is >> welcome too... >> >I will. I sent you an email with the URL. >It's a good idea. BTW I have told you my friend has a MegaCD and I have >a CD Rewriter? Perhaps could be useful for do some testing on the >same console (waste of CDs though, because I don't think it will read >CD Rewriteables). There is a MegaCD debugger out there? ;) It might read CD-RWs, I don't know. I'm pretty sure it can read CD-Rs though. I haven't seen any Sega CD debuggers, nobody knows how to program the darn thing ;) Hopefully if an emulator is ever made, that will be fixed. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 00:06:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA25776 for dynarec-outgoing; Thu, 13 Jul 2000 00:06:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007130713.JAA07814@pons.ac.upc.es> Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <3.0.5.32.20000712235426.007bc920@powernet.net> "from Bart Trzynadlowski at Jul 12, 2000 11:54:26 pm" To: dynarec@dynarec.com Date: Thu, 13 Jul 2000 09:13:13 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >It's a good idea. BTW I have told you my friend has a MegaCD and I have > >a CD Rewriter? Perhaps could be useful for do some testing on the > >same console (waste of CDs though, because I don't think it will read > >CD Rewriteables). There is a MegaCD debugger out there? ;) > > It might read CD-RWs, I don't know. I'm pretty sure it can read CD-Rs > though. I haven't seen any Sega CD debuggers, nobody knows how to program > the darn thing ;) Hopefully if an emulator is ever made, that will be fixed. > > The most single and double speed CD-ROMS doesn't support the CD-RW format because it was developed later. For example PSX usually can't read them, and Mega CD is older. But I haven't tested it yet. Well I don't thinks it should be so difficult. The 68K has a trace mode and you can also use invalid instructions as breakpoints. Perhaps it is the problem with the two CPUs. If there was a guy with good electronic knowledge it could even create somedevice to connect the MegaCD to the PC. But this would be a bit hard. ;) > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 01:13:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA25836 for dynarec-outgoing; Thu, 13 Jul 2000 01:13:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 13 Jul 2000 01:25:15 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <200007130631.IAA28324@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > has a bit of C++). I really like the main loop, althought I think > the keys could be handled with a switch. Slightly off topic, but why do people insist on *POLLING* for controller input? Under any OS I've found, callbacks are available that take zero CPU time if they aren't being used. You can even fake out joystick callbacks under DOS! Same deal with sound. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 01:24:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA25852 for dynarec-outgoing; Thu, 13 Jul 2000 01:24:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 13 Jul 2000 01:36:31 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <200007130651.IAA27929@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Tons of Genesis stuff there in case you need it. > > And I thought I had a good collection of Genesis ROMS ... ;) > But I think my Gameboy/CGB collection could beat your. ;) By all means - UPLOAD AND ADD TO IT! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 01:26:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA25865 for dynarec-outgoing; Thu, 13 Jul 2000 01:26:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007130832.KAA07194@pons.ac.upc.es> Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: "from Neil Bradley at Jul 13, 2000 01:25:15 am" To: dynarec@dynarec.com Date: Thu, 13 Jul 2000 10:32:43 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > has a bit of C++). I really like the main loop, althought I think > > the keys could be handled with a switch. > > Slightly off topic, but why do people insist on *POLLING* for controller > input? Under any OS I've found, callbacks are available that take zero CPU > time if they aren't being used. You can even fake out joystick callbacks > under DOS! > > Same deal with sound. > I think he isn't polling. It just calls a function which read the last key pressed. He uses his own keyboard handler to read keys and store them somewhere. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 01:26:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA25874 for dynarec-outgoing; Thu, 13 Jul 2000 01:26:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 13 Jul 2000 01:38:28 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Status In-Reply-To: <200007130700.JAA14012@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well. Mike, we should have to continue the 68K def file. ;) I haven't done > nothing in all the week, every afternoon I have a different thing I must > do which keeps me from continue it. :( That's OK. Things aren't progressing here as fast as I'd like either. I keep getting sidetracked by all kinds of things - mostly personally related. > Hehehe! One of those things is that I finally bought a modem. I'm waiting > to get an ISP and subscribe a plain quote in a telephone company. I > will be bothering you all more frequently soon. What's a modem? ;-=) > I thought something about static register allocation in consoles. We could, > using the def file, create a small parser which at the time the rom is loaded > will scan the code (all the code possible, core regions called with > indirections won't be scanned) and count what registers are the most used. > I think it won't be so slower for an initialization and it could show a > good aproximation to the real register allocation (of course the regions > more times executed should be the more important). This could also be done by doing a depth traversal of the code. The problem is that it can be thrown off if the code path isn't analyzed - rather than the instructions and what registers they're using being counted. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 01:27:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA25883 for dynarec-outgoing; Thu, 13 Jul 2000 01:27:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 13 Jul 2000 01:39:33 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <200007130832.KAA07194@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > input? Under any OS I've found, callbacks are available that take zero CPU > > time if they aren't being used. You can even fake out joystick callbacks > > under DOS! > > Same deal with sound. > I think he isn't polling. It just calls a function which read the > last key pressed. He uses his own keyboard handler to read keys and > store them somewhere. That's polling. There's no reason the interrupt service routine (or callback or whatever) can't just tweak the variable that needs modifying directly to simulate that input control. This is how Retrocade does it and it works flawlessly. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 01:33:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA25899 for dynarec-outgoing; Thu, 13 Jul 2000 01:33:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007130837.KAA26579@pons.ac.upc.es> Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: "from Neil Bradley at Jul 13, 2000 01:36:31 am" To: dynarec@dynarec.com Date: Thu, 13 Jul 2000 10:37:40 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > Tons of Genesis stuff there in case you need it. > > > And I thought I had a good collection of Genesis ROMS ... ;) > > But I think my Gameboy/CGB collection could beat your. ;) > > By all means - UPLOAD AND ADD TO IT! ;-) > Hehe! They are at home. Perhaps when my modem will be fully functional. ;) Or perhaps it will be better get the CD and use the faster university connection ... ;) I think it is a bit illegal? ;) > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 02:05:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA26095 for dynarec-outgoing; Thu, 13 Jul 2000 02:05:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007130841.KAA05271@pons.ac.upc.es> Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: "from Neil Bradley at Jul 13, 2000 01:39:33 am" To: dynarec@dynarec.com Date: Thu, 13 Jul 2000 10:41:24 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > input? Under any OS I've found, callbacks are available that take zero CPU > > > time if they aren't being used. You can even fake out joystick callbacks > > > under DOS! > > > Same deal with sound. > > I think he isn't polling. It just calls a function which read the > > last key pressed. He uses his own keyboard handler to read keys and > > store them somewhere. > > That's polling. There's no reason the interrupt service routine (or > callback or whatever) can't just tweak the variable that needs modifying > directly to simulate that input control. This is how Retrocade does it and > it works flawlessly. > Well, people would usually like to do the smallest keyboard rutines ... But I don't think this could be called polling. Polling happens when you STOP and WAIT for the information until the device sends. You aren't stopping, he is using an interrupt!. What's the problem with doing the switch in the main loop? > -->Neil Victor > > ------------------------------------------------------------------------------- > Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me > Synthcom Systems, Inc. ICQ # 29402898 > > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 02:11:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA26105 for dynarec-outgoing; Thu, 13 Jul 2000 02:09:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 13 Jul 2000 02:21:25 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <200007130841.KAA05271@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > That's polling. There's no reason the interrupt service routine (or > > callback or whatever) can't just tweak the variable that needs modifying > > directly to simulate that input control. This is how Retrocade does it and > > it works flawlessly. > Well, people would usually like to do the smallest keyboard rutines ... > But I don't think this could be called polling. Polling happens when > you STOP and WAIT for the information until the device sends. Check your definition of the word "polling". It means to repeatedly check to see if a condition is met - not that it WAITs. That's blocking. > You aren't > stopping, he is using an interrupt!. So it's inside the callback that pressing a key or hitting a controller provides? > What's the problem with doing the > switch in the main loop? It's polling! It's checking for a state change or control change what it's FLATLY unnecessary to do so. The OS provides a mechanism to call you back when something happens rather than for you to have to go check a state of something. The better question is what's the point in doing it in the main loop when you've got a callback that tells you everything you need to know, and it can be done there instead? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 02:27:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA26134 for dynarec-outgoing; Thu, 13 Jul 2000 02:26:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007130932.LAA10135@pons.ac.upc.es> Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: "from Neil Bradley at Jul 13, 2000 02:21:25 am" To: dynarec@dynarec.com Date: Thu, 13 Jul 2000 11:32:36 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > That's polling. There's no reason the interrupt service routine (or > > > callback or whatever) can't just tweak the variable that needs modifying > > > directly to simulate that input control. This is how Retrocade does it and > > > it works flawlessly. > > Well, people would usually like to do the smallest keyboard rutines ... > > But I don't think this could be called polling. Polling happens when > > you STOP and WAIT for the information until the device sends. > > Check your definition of the word "polling". It means to repeatedly check > to see if a condition is met - not that it WAITs. That's blocking. > Ummm... > > What's the problem with doing the > > switch in the main loop? > > It's polling! It's checking for a state change or control change what it's > FLATLY unnecessary to do so. The OS provides a mechanism to call you back > when something happens rather than for you to have to go check a state of > something. The better question is what's the point in doing it in the main > loop when you've got a callback that tells you everything you need to > know, and it can be done there instead? > I was wrong, then. But he isn't checking repeatedly it just checks the variable once every iteration in the main loop. > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 10:14:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA26501 for dynarec-outgoing; Thu, 13 Jul 2000 10:12:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 13 Jul 2000 10:24:49 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: <200007130932.LAA10135@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > FLATLY unnecessary to do so. The OS provides a mechanism to call you back > > when something happens rather than for you to have to go check a state of > > something. The better question is what's the point in doing it in the main > > loop when you've got a callback that tells you everything you need to > > know, and it can be done there instead? > I was wrong, then. But he isn't checking repeatedly it just checks the > variable once every iteration in the main loop. It's doing it through every iteration of the main loop. Anything that's not a callback is polling. It's not so bad with keyboard controls, but when it comes to things like audio and reading streamed data, polling is a bad idea. If you're not taking advantage of a feature the OS provides you, it's bad! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 13:35:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA26707 for dynarec-outgoing; Thu, 13 Jul 2000 13:33:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 13 Jul 2000 13:45:36 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Status & stuff Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com The lexer is now complete. I need to do some minor cleanup on it but I'd like to post it to the list and have you guys scrutinize it for holes/bugs. I'm willing to bet that you won't find any. Consider yourselves challenged! I'll post it sometime this evening. Mike, any updates to the 68k.def file? If not, I'll just use the latest you posted. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 14:12:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA26766 for dynarec-outgoing; Thu, 13 Jul 2000 14:10:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Status & stuff From: "M.I.K.e" In-Reply-To: Message-ID: <00036c5187cdbb8a_mailit@mail.dynarec.com> References: Date: Thu, 13 Jul 2000 23:05:56 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The lexer is now complete. I need to do some minor cleanup on it but I'd >like to post it to the list and have you guys scrutinize it for >holes/bugs. I'm willing to bet that you won't find any. Don't say that too loud or Victor will analyze every code line ;-) >Consider >yourselves challenged! I'll post it sometime this evening. Cool! >Mike, any updates to the 68k.def file? If not, I'll just use the latest >you posted. The last date was 2000-07-09. I think you should have the newest version with the new termination markers. >-->Neil -- M.I.K.e All the taxes paid over a lifetime by the average American are spent by the government in less than a second. -- Jim Fiebig --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 14:24:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA26792 for dynarec-outgoing; Thu, 13 Jul 2000 14:22:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 13 Jul 2000 14:34:52 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Status & stuff In-Reply-To: <00036c5187cdbb8a_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >holes/bugs. I'm willing to bet that you won't find any. > Don't say that too loud or Victor will analyze every code line ;-) Good! Of course, passing in nonvalid nonnull pointers isn't fair, nor is deleting the file out from under the process. ;-) > >Mike, any updates to the 68k.def file? If not, I'll just use the latest > >you posted. > The last date was 2000-07-09. I think you should have the newest version with > the new termination markers. Yep - got it. I'll give everyone a drop tonight. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 23:39:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA27287 for dynarec-outgoing; Thu, 13 Jul 2000 23:37:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007140644.IAA13946@pons.ac.upc.es> Subject: Re: DYNAREC: Status & stuff In-Reply-To: <00036c5187cdbb8a_mailit@mail.dynarec.com> "from M.I.K.e at Jul 13, 2000 11:05:56 pm" To: dynarec@dynarec.com Date: Fri, 14 Jul 2000 08:44:26 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >The lexer is now complete. I need to do some minor cleanup on it but I'd > >like to post it to the list and have you guys scrutinize it for > >holes/bugs. I'm willing to bet that you won't find any. > > Don't say that too loud or Victor will analyze every code line ;-) > What do you mean? Me? I haven't even taken a look to the DRMZ80 code. ;) Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 23:50:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA27318 for dynarec-outgoing; Thu, 13 Jul 2000 23:50:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000713104310.007bcc90@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 13 Jul 2000 10:43:10 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: References: <200007130832.KAA07194@pons.ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That's polling. There's no reason the interrupt service routine (or >callback or whatever) can't just tweak the variable that needs modifying >directly to simulate that input control. This is how Retrocade does it and >it works flawlessly. Yep, that's how Genital does it. Look at djkey.asm. It handles all input emulation. The other keys are stored in the buffer because it makes things easier. I had some problems with calling certain functions when in the ISR. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 23:50:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA27319 for dynarec-outgoing; Thu, 13 Jul 2000 23:50:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000713104110.007bfd90@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 13 Jul 2000 10:41:10 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Disassembler/Debugger In-Reply-To: References: <200007130631.IAA28324@pons.ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Slightly off topic, but why do people insist on *POLLING* for controller >input? Under any OS I've found, callbacks are available that take zero CPU >time if they aren't being used. You can even fake out joystick callbacks >under DOS! Genital uses a bit of both. It installs a keyboard driver that uses a table of masks. If an arrow key or A,S,D,Enter (A,B,C,Start) is pressed, the masks will work on the control pad structure, if the mask is zero, it places the key in a 1-byte buffer. At the end of the main loop, if the key buffer contains data, it is processed. The sort of data that needs to be processed this way is mainly emulator control and option toggling stuff, not the actual Genesis control pad emulation. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 13 23:59:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA27335 for dynarec-outgoing; Thu, 13 Jul 2000 23:59:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007140706.JAA13369@pons.ac.upc.es> Subject: Re: DYNAREC: Status & stuff In-Reply-To: "from Neil Bradley at Jul 13, 2000 02:34:52 pm" To: dynarec@dynarec.com Date: Fri, 14 Jul 2000 09:06:27 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >holes/bugs. I'm willing to bet that you won't find any. > > Don't say that too loud or Victor will analyze every code line ;-) > > Good! Of course, passing in nonvalid nonnull pointers isn't fair, nor is > deleting the file out from under the process. ;-) > I have even crashed systems standing near without doing nothing. ;) BTW. If the list manager hasn't done it yet, delete my address e6706591@est.fib.upc.es from the list. The university has erased all mail accounts until next September. > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 14 03:53:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA27707 for dynarec-outgoing; Fri, 14 Jul 2000 03:53:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Status & stuff From: "M.I.K.e" In-Reply-To: <200007140644.IAA13946@pons.ac.upc.es> Message-ID: <00036c5d37b5f44c_mailit@mail.dynarec.com> References: <200007140644.IAA13946@pons.ac.upc.es> Date: Fri, 14 Jul 2000 13:02:32 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Don't say that too loud or Victor will analyze every code line ;-) >What do you mean? Me? I haven't even taken a look to the DRMZ80 code. ;) What? You even wrote a small documentation about it! BTW, I forget to comment on your idea to adjust the register allocation with information from pre-parsed code: Basically the idea isn't bad, but it has the same problem as static recompilation: how to differ between code and data? Indeed, parsing the whole code to check for register usage is so similar to static recompilation that we could just go one step further and generate code at the same time, in which case we would have a real static recompiler. Since I'm a supporter of dynamic register allocation (although I also see the advantages of static allocation) I welcome any idea to make the static register allocation a bit more flexible, but I guess this method won't help that much... But I might be an idea to have some kind of "profiler" which keeps tracks of register usage in the debug mode of the instruction decoder, first because I'm interested if Neil is right with his asumption about the most frequently used registers, and second because this will help us to pick the right static register allocation for the release. >Victor Moya -- M.I.K.e Predestination was doomed from the start. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 14 09:57:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA28008 for dynarec-outgoing; Fri, 14 Jul 2000 09:57:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: vmoya@eresmas.com To: dynarec@dynarec.com Message-ID: <7dd5c80f98.80f987dd5c@eresmas.com> Date: Fri, 14 Jul 2000 17:03:16 GMT X-Mailer: Netscape Webmail MIME-Version: 1.0 Content-Language: es Subject: RE: Re: DYNAREC: Status & stuff X-Accept-Language: es Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> Don't say that too loud or Victor will analyze every code line > ;-) > >What do you mean? Me? I haven't even taken a look to the DRMZ80 > code. ;) > > What? You even wrote a small documentation about it! > I even planned large documentation about it. ;) But I never finished it. It seems the song of my life. :( > BTW, I forget to comment on your idea to adjust the register > allocation with > information from pre-parsed code: > Basically the idea isn't bad, but it has the same problem as > static > recompilation: how to differ between code and data? Easyly. From the entry point of the code you follow the all the direct branches. You won't analyze all the code but I think most of them. > Indeed, parsing the whole code to check for register usage is so > similar to > static recompilation that we could just go one step further and > generate code > at the same time, in which case we would have a real static > recompiler.Since I'm a supporter of dynamic register allocation > (although I also see the > advantages of static allocation) I welcome any idea to make the > static > register allocation a bit more flexible, but I guess this method > won't help > that much... But what Neil calls depth traversal seems to be very similar or the same than static recompilation. In fact I like the idea of static recompilation as translating as much code at startup as possible. > But I might be an idea to have some kind of "profiler" which keeps > tracks of > register usage in the debug mode of the instruction decoder, first > because A profiler would be really interesting while we are developing the dynarec to know how we can improve it. > I'm interested if Neil is right with his asumption about the most > frequently > used registers, and second because this will help us to pick the > right static > register allocation for the release. > But this could change from one game to another and it's hard to test all of them. Do you would use a database for all the Genesis games for example? I think somekind of research in the code or the Neil's depth traversal idea will be a lot of better. BTW. I'm online at last!!! Now it is a webmail account. Perhaps I will use finally the dynarec account if Neil agrees. > M.I.K.e Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 15 11:38:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA31588 for dynarec-outgoing; Sat, 15 Jul 2000 11:36:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: vmoya@eresmas.com To: dynarec@dynarec.com Message-ID: Date: Sat, 15 Jul 2000 18:42:21 GMT X-Mailer: Netscape Webmail MIME-Version: 1.0 Content-Language: es Subject: DYNAREC: 68K definition and address mode X-Accept-Language: es Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I have just taking a look again to how we will code the definition table and I am not sure about how we should have to define the different address modes. For example: the intruction add.b data8, (An)+ (An)+ mean indirect memory access with postincrement using an address register as offset. My first though, following the x86 example that Neil posted was this. The address mode is indicated by the operand AR_PIM8. 0000 0110 0001 1RRR (8x0) (8xI) | ADDB | ABS8=I AR_PIM8=R | XNZVC | 13 13 0; // add.b data8, (An)+ Another solution (I think was Mike who talked about it) is to point the address mode in the opcode name. Then it should be something like that. 0000 0110 0001 1RRR (8x0) (8xI) | ADDBAPI | ABS8=I AREG=R | XNZVC | 13 13 0; // add.b data8, (An)+ Well, the name it is a bit weird but this could be fixed. Now the operand is only the address register and the address mode is indicated in the opcode name. ADDBAPI should mean somethink like ADD BYTE ABSOLUTE WITH POSTINCREMENT. I think Mike, me, and all others who will write the 68K definition must agree about this kind conventions and begin to build the file. Something a bit different. Bart, you said you where implementing a SH2 interpreter for 32x emulation (or perhaps I read it at Eidolons, I can't remember). Aren't you interested in a dynarec, it will be a lot of faster. ;) You could join up starting with the building of a SH2 definition file. It would be a beginning and the target and source layer could be handled later. With so many people we could work a bit in parallel in different things. Slowly of course, it isn't a course. ;) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 15 11:57:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA31615 for dynarec-outgoing; Sat, 15 Jul 2000 11:57:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 15 Jul 2000 12:09:42 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well, the name it is a bit weird but this could be fixed. Now the > operand is only the address register and the address mode is indicated > in the opcode name. ADDBAPI should mean somethink like ADD BYTE > ABSOLUTE WITH POSTINCREMENT. We shouldn't yet do anything here. Obviously there is some work to be done in the disassembly area. Alex is getting back Sunday night and should be able to put some brain power behind this. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 15 16:23:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA31823 for dynarec-outgoing; Sat, 15 Jul 2000 16:23:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000715162244.007bf1b0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 15 Jul 2000 16:22:44 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Something a bit different. Bart, you said you where implementing a >SH2 interpreter for 32x emulation (or perhaps I read it at Eidolons, >I can't remember). Aren't you interested in a dynarec, it will be >a lot of faster. ;) You could join up starting with the building of a >SH2 definition file. It would be a beginning and the target and source >layer could be handled later. With so many people we could work a bit >in parallel in different things. Slowly of course, it isn't a course. >;) I'll get the interpreter done first, and then of course I have the intention of getting into dynarec with the SH-2. Is a definition file the best way to do it? I think I once looked at the FPSE recompiler and noticed it had everything coded in the source, it was quite small too. I'd like to see how DR68K works though, since it sounds interesting. I wouldn't be completely sure how to do it right off the bat. Timing sounds difficult (what if the code enters an infinite loop, how does it break when the cycle timer expires?). Also, I need to see how you guys are going from a def file to source. I've got some ideas, but they may be odd and probably not how it should be done. Lastly, I don't even know if a def file is necessary for the SH-2. I mean, the addressing modes are so simple I haven't even found the need to code up special routines for them. The interpreter is getting out of hand though... currently 14,582 functions for opcodes, and that's only about half way through the opcode list :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 01:18:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA32223 for dynarec-outgoing; Sun, 16 Jul 2000 01:18:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <397171FD.F9C8CA2A@dynarec.com> Date: Sun, 16 Jul 2000 10:27:41 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode References: <3.0.5.32.20000715162244.007bf1b0@powernet.net> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I'll get the interpreter done first, and then of course I have the > intention of getting into dynarec with the SH-2. Is a definition file the > best way to do it? I think I once looked at the FPSE recompiler and noticed > it had everything coded in the source, it was quite small too. > The definition file is used as a help to build the source decoder, the dissassembler and the target cover functions (the ones are called to produce target code). The recompilation has to be programmed. > I'd like to see how DR68K works though, since it sounds interesting. I > wouldn't be completely sure how to do it right off the bat. Timing sounds > difficult (what if the code enters an infinite loop, how does it break when > the cycle timer expires?). Also, I need to see how you guys are going from > a def file to source. I've got some ideas, but they may be odd and probably > not how it should be done. Umm ... I think we (or me as the "official" documentor ;) should begin to recopile all the mails and docs about the dynarec method we are using. It shouldn't be hard all about it has been already said and it is just a recopilation job. I think it's needed because the new people is coming to the list is getting hard to understand what are we doing. We should have to put this documention in the dynarec site. > The interpreter is getting out of hand though... currently 14,582 functions > for opcodes, and that's only about half way through the opcode list :) > I think if the interpreter is getting too much effort and it will be a lot of slow it doesn't have many sense to develop it. But I admit that the dynarec idea is still a bit green. I any case I just would want to know if you were interested. And I think it will be interesting to apply this dynarec approach to a RISC architecture (SH2 is RISC I think). > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 06:01:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA32623 for dynarec-outgoing; Sun, 16 Jul 2000 06:01:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: RE: Re: DYNAREC: Status & stuff From: "M.I.K.e" In-Reply-To: <7dd5c80f98.80f987dd5c@eresmas.com> Message-ID: <00036c86a9675a3a_mailit@mail.dynarec.com> References: <7dd5c80f98.80f987dd5c@eresmas.com> Date: Sun, 16 Jul 2000 14:29:13 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I even planned large documentation about it. ;) But I never >finished it. It seems the song of my life. :( Hey, that sounds like a top ten hit! Why don't you get together with NB and NG get the song done? ;-) >Easyly. From the entry point of the code you follow the all >the direct branches. You won't analyze all the code but I >think most of them. Well, if you already analyze most of the code you could translate it as well. >But what Neil calls depth traversal seems to be very similar or >the same than static recompilation. No, not really. Neil translates only basic blocks, but everytime he translates a jump he looks up if the target address was translated before and emits a a jump to that code. That's nothing to do with static recompilation. >In fact I like the idea >of static recompilation as translating as much code at startup >as possible. Hmm, that might work for a small arcade game, but what about a NeoGeo game or when the core is to be used in a computer emulation? >But this could change from one game to another and it's hard to >test all of them. Do you would use a database for all the Genesis >games for example? Nope, I don't intend to have such INI-file-cheats as UltraHLE or bleem, but on most machines there is a certain scheme the progrmmers stick to and it would be a good idea to find out that scheme by trying a few games. >BTW. I'm online at last!!! Cool, then we can expect some postings from you on the weekends as well! >Victor -- M.I.K.e The more things change, the more they stay insane. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 06:01:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA32632 for dynarec-outgoing; Sun, 16 Jul 2000 06:01:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K definition and address mode From: "M.I.K.e" In-Reply-To: Message-ID: <00036c86b120e66d_mailit@mail.dynarec.com> References: Date: Sun, 16 Jul 2000 14:31:23 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [addressing modes in definition file] >We shouldn't yet do anything here. Obviously there is some work to be done >in the disassembly area. Alex is getting back Sunday night and should be >able to put some brain power behind this. I totally agree with Neil. I really don't want to do the work on the definition file twice so it's best to wait till Alex decided on the final format since he seem to be the expert for that part of the dynarec. >-->Neil -- M.I.K.e I'll defend to the death your right to say that, but I never said I'd listen to it! -- Tom Galloway with apologies to Voltaire --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 06:01:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA32643 for dynarec-outgoing; Sun, 16 Jul 2000 06:01:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K definition and address mode From: "M.I.K.e" In-Reply-To: Message-ID: <00036c86cb31b237_mailit@mail.dynarec.com> References: Date: Sun, 16 Jul 2000 14:38:40 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I have just taking a look again to how we will code the definition table >and I am not sure about how we should have to define the different >address modes. That's my main problem and also the reason why I stalled work on it. >Another solution (I think was Mike who talked about it) is to point the >address mode in the opcode name. I guess I said that each instruction with each possible addressing mode should be handled separately because Neil told me that the parser would be too complicated otherwise. I surely don't want the mnemonics to be changed because that will be very hard to read in disassembly. >I think Mike, me, and all others who will write the 68K definition must >agree about this kind conventions and begin to build the file. True, and one of the others we need to hear is Alex... >Victor -- M.I.K.e Critic, n.: A person who boasts himself hard to please because nobody tries to please him. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 06:01:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA32647 for dynarec-outgoing; Sun, 16 Jul 2000 06:01:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K definition and address mode From: "M.I.K.e" In-Reply-To: <3.0.5.32.20000715162244.007bf1b0@powernet.net> Message-ID: <00036c86f1f75a3e_mailit@mail.dynarec.com> References: <3.0.5.32.20000715162244.007bf1b0@powernet.net> Date: Sun, 16 Jul 2000 14:49:31 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'll get the interpreter done first, and then of course I have the >intention of getting into dynarec with the SH-2. Is a definition file the >best way to do it? You'll get the disassembler, decoder, and the covers frames generated, which should be much easier than writing that stuff by hand! >I think I once looked at the FPSE recompiler and noticed >it had everything coded in the source, it was quite small too. FPSE is a bad example since they have a rather chaotic ordering of covers, they do a direct translation of each instruction instead of analyzing the whole block first and and using the gathered information for the translation, which would be much better optimisation wise. The code emitters are a joke because they emit hex code directly. It would have been better to use macros instead of hex values at least. Also some of the covers are worse than the much older Pex, eg. SLT is translated as: setl al and eax, 1 while Pex does: xor eax, eax setl al which isn't really faster, but needs far less space! >Lastly, I don't even know if a def file is necessary for the SH-2. It is never really necessary, but everything more complex than a 6502 will be much easier to handle that way. >I mean, the addressing modes are so simple I >haven't even found the need to code up special routines for them. Really? From my point of view SuperH has more addressing modes than any other RISC processor I know. >The interpreter is getting out of hand though... currently 14,582 functions >for opcodes, and that's only about half way through the opcode list :) Uh, that's quite large! >Bart -- M.I.K.e The Roman Rule The one who says it cannot be done should never interrupt the one who is doing it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 08:09:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA32765 for dynarec-outgoing; Sun, 16 Jul 2000 08:09:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3971D220.2A3D3607@dynarec.com> Date: Sun, 16 Jul 2000 17:17:52 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Status & stuff References: <7dd5c80f98.80f987dd5c@eresmas.com> <00036c86a9675a3a_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >I even planned large documentation about it. ;) But I never > >finished it. It seems the song of my life. :( > > Hey, that sounds like a top ten hit! Why don't you get together with NB and > NG get the song done? ;-) > Well, if they don't make me sing it will be ok. ;) > >Easyly. From the entry point of the code you follow the all > >the direct branches. You won't analyze all the code but I > >think most of them. > > Well, if you already analyze most of the code you could translate it as well. > Why not. > >But what Neil calls depth traversal seems to be very similar or > >the same than static recompilation. > > No, not really. Neil translates only basic blocks, but everytime he > translates a jump he looks up if the target address was translated before and > emits a a jump to that code. That's nothing to do with static recompilation. > I can't talk for Neil but I think what he calls depth traversal isn't exactly what was implemented in DRMZ80. Neil, I need your help, I'm confused. ;) > >In fact I like the idea > >of static recompilation as translating as much code at startup > >as possible. > > Hmm, that might work for a small arcade game, but what about a NeoGeo game or > when the core is to be used in a computer emulation? > I don't really know the code size for NeoGeo, it is so large? In any case you could only translate a portion of the code at startup. Static recompilation sound well for everything that it's ROM. This means any arcade or console system, and also some computers based on ROMS (as MSX). Of course for a computer that loads the code into RAM it won't work. Unless you could hide the time spent in initialition compilation inside the load of the code (from disk, tape or whatever). Umm ... it's an interesting idea, could it be possible? > >BTW. I'm online at last!!! > > Cool, then we can expect some postings from you on the weekends as well! > Sure! > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 08:10:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA32778 for dynarec-outgoing; Sun, 16 Jul 2000 08:10:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3971D266.D9332EDC@dynarec.com> Date: Sun, 16 Jul 2000 17:19:02 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode References: <00036c86b120e66d_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > [addressing modes in definition file] > >We shouldn't yet do anything here. Obviously there is some work to be done > >in the disassembly area. Alex is getting back Sunday night and should be > >able to put some brain power behind this. > > I totally agree with Neil. I really don't want to do the work on the > definition file twice so it's best to wait till Alex decided on the final > format since he seem to be the expert for that part of the dynarec. > Let's wait then! :) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 11:49:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA32985 for dynarec-outgoing; Sun, 16 Jul 2000 11:47:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000716114644.007c0de0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 16 Jul 2000 11:46:44 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: <397171FD.F9C8CA2A@dynarec.com> References: <3.0.5.32.20000715162244.007bf1b0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think if the interpreter is getting too much effort and it will be a >lot of >slow it doesn't have many sense to develop it. It isn't too much trouble. It is a _little_ tedious, but it isn't bad. I've been learning a lot about the processor, which is good. :) >But I admit that the >dynarec >idea is still a bit green. I any case I just would want to know if you >were >interested. And I think it will be interesting to apply this dynarec >approach >to a RISC architecture (SH2 is RISC I think). I am interested. Although I still really need the interpretive core for accuracy. I know the interpreter should be solid, I'm sure I'll have lots of bugs in it which will surface as I start emulating the 32X, but in the end it will always be good to have a core to fall back on even if its slow. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 11:58:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA33003 for dynarec-outgoing; Sun, 16 Jul 2000 11:56:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000716115559.007c2100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 16 Jul 2000 11:55:59 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: <00036c86f1f75a3e_mailit@mail.dynarec.com> References: <3.0.5.32.20000715162244.007bf1b0@powernet.net> <3.0.5.32.20000715162244.007bf1b0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You'll get the disassembler, decoder, and the covers frames generated, which >should be much easier than writing that stuff by hand! I have a sort of definition table going already, it's an array of structs, that looks like this: ... { ZERO_F, "sett", 0xffff, 0x18, 0, 0, 1 }, { ZERO_F, "sleep", 0xffff, 0x1b, 0, 0, 3 }, { N_F, "cmp/pl\tr%d", 0xf0ff, 0x4015, 0, 0, 1 }, { N_F, "cmp/pz\tr%d", 0xf0ff, 0x4011, 0, 0, 1 }, { N_F, "dt\tr%d", 0xf0ff, 0x4010, 0, 1, 1 }, ... ANDing the third field with a 16-bit opcode and then checking to see if it equals the fourth field is how instructions are decoded in the disassembler. The other flags are misc. disassembler data and the last flag is the number of clock cycles the instruction eats up. >Really? From my point of view SuperH has more addressing modes than any other >RISC processor I know. But look at the modes... they're easy: @Rn, @-Rn, @Rn+. This is how I handle the MOV.X Rm,@Rn opcodes in my interpreter emitter: ... else if ((i & tab[j].mask) >= 0x2000 && (i & tab[j].mask) <= 0x2002) { char *opr[] = { "Byte", "Word", "Long" }; Emit(" GenitalSH2Write%s(cpu->r[%d], cpu->r[%d]);\n", opr[i & 3], GetNFromNM(i), GetMFromNM(i)); } ... The code shows some of the faults with my method, but I'm determined to get it finished ;) BTW, something about the 68K dynarec... will there be a function or set of functions to facilitate the redefining of a memory map? The function would probably have to mark translated code pages as dirty or something so the emulator would have to recompile them. This is absolutely necessary for systems like the Sega CD and 32X. I think the Get/SetContext() functions would best do this. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 12:10:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA33026 for dynarec-outgoing; Sun, 16 Jul 2000 12:09:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39720A8B.BBBCD95B@dynarec.com> Date: Sun, 16 Jul 2000 21:18:35 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode References: <3.0.5.32.20000715162244.007bf1b0@powernet.net> <3.0.5.32.20000716114644.007c0de0@powernet.net> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I am interested. Although I still really need the interpretive core for > accuracy. I know the interpreter should be solid, I'm sure I'll have lots > of bugs in it which will surface as I start emulating the 32X, but in the > end it will always be good to have a core to fall back on even if its slow. > The approach that NB uses is really as accuratted as an interpreter. > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 12:16:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA33043 for dynarec-outgoing; Sun, 16 Jul 2000 12:15:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39720BD6.BCAFAD06@dynarec.com> Date: Sun, 16 Jul 2000 21:24:06 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode References: <3.0.5.32.20000715162244.007bf1b0@powernet.net> <3.0.5.32.20000715162244.007bf1b0@powernet.net> <3.0.5.32.20000716115559.007c2100@powernet.net> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > BTW, something about the 68K dynarec... will there be a function or set of > functions to facilitate the redefining of a memory map? The function would > probably have to mark translated code pages as dirty or something so the > emulator would have to recompile them. This is absolutely necessary for > systems like the Sega CD and 32X. I think the Get/SetContext() functions > would best do this. > It could have such a table. In fact what we call transmap could be used for erasing single instruction translation. ;) In any case initially we don't want to handle the problem of self-modifying code internally in the dynarec (so it isn't a recompiler NG ;). There are so many self-modifying code in the 32X? The problem with Sega CD is of course that loads the programs from the CD to RAM. But I think that this could be handled pathching CD reads as they were OS exec calls. I don't see any problem. > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 16:04:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA33270 for dynarec-outgoing; Sun, 16 Jul 2000 16:02:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K definition and address mode From: "M.I.K.e" In-Reply-To: <3971D266.D9332EDC@dynarec.com> Message-ID: <00036c8fa639ad60_mailit@mail.dynarec.com> References: <00036c86b120e66d_mailit@mail.dynarec.com> <3971D266.D9332EDC@dynarec.com> Date: Mon, 17 Jul 2000 01:12:35 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Let's wait then! :) We really appreciate your eagerness to get some work done, but think you don't want to do the work twice, do you? ;-) You could use the time to make yourself a bit more familiar with the 68K just as I am studying IA-32. That should help us to work a bit faster eventually. >Victor -- M.I.K.e Surprise due today. Also the rent. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 18:05:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA33386 for dynarec-outgoing; Sun, 16 Jul 2000 18:04:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 16 Jul 2000 18:17:14 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: <3.0.5.32.20000716114644.007c0de0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >idea is still a bit green. I any case I just would want to know if you > >were > >interested. And I think it will be interesting to apply this dynarec > >approach > >to a RISC architecture (SH2 is RISC I think). > I am interested. Although I still really need the interpretive core for > accuracy. By "interpretive core" I'm assuming you mean an emulator, correct? If so, what makes you think the dynarec would be any less "accurate" than the emulator? It'll still be able to give accurate timing and instruction translation. In fact, the actual end result will be the same - just faster. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 18:08:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA33400 for dynarec-outgoing; Sun, 16 Jul 2000 18:07:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 16 Jul 2000 18:20:00 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: <3.0.5.32.20000716115559.007c2100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > BTW, something about the 68K dynarec... will there be a function or set of > functions to facilitate the redefining of a memory map? Well, it wouldn't just increase and decrease. Any system, regardless of what it is, has a fixed memory map. > The function would > probably have to mark translated code pages as dirty or something so the > emulator would have to recompile them. This is absolutely necessary for > systems like the Sega CD and 32X. I think the Get/SetContext() functions > would best do this. I think what you're worrying about is whether or not you could easily tell the recompiler to "recompile this block" because it changed. For this, yes, there'll be a separate API like FlushRegion() to do exactly this. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 18:08:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA33408 for dynarec-outgoing; Sun, 16 Jul 2000 18:07:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 16 Jul 2000 18:20:24 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: <39720A8B.BBBCD95B@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > accuracy. I know the interpreter should be solid, I'm sure I'll have lots > > of bugs in it which will surface as I start emulating the 32X, but in the > > end it will always be good to have a core to fall back on even if its slow. > The approach that NB uses is really as accuratted as an interpreter. I think you meant to say "approach that NB uses is just as accurate as an emulator". ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 18:10:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA33419 for dynarec-outgoing; Sun, 16 Jul 2000 18:09:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 16 Jul 2000 18:21:44 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: <39720BD6.BCAFAD06@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > probably have to mark translated code pages as dirty or something so the > > emulator would have to recompile them. This is absolutely necessary for > > systems like the Sega CD and 32X. I think the Get/SetContext() functions > > would best do this. > It could have such a table. In fact what we call transmap could be used > for erasing single instruction translation. ;) In any case initially we > don't want to handle the problem of self-modifying code internally in > dynarec (so it isn't a recompiler NG ;). There are so many > self-modifying > code in the 32X? Victor is right. The problem of self modifying code (which is what code loaded into emulated system RAM is) is actually quite solvable with the FlushRegion() call. > The problem with Sega CD is of course that loads the > programs from the CD to RAM. But I think that this could be handled > pathching CD reads as they were OS exec calls. I don't see any problem. Me either. Fortunately in an environment like this, you can even use the "chuck everything" approach. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 18:15:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA33432 for dynarec-outgoing; Sun, 16 Jul 2000 18:14:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 16 Jul 2000 18:27:24 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: New idea Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I've been contemplating (very seriously) doing a replacement pinball CPU/Driver board combo. Right now a lot of old pinball machines have two boards: The main CPU and the "driver" board (to drive solenoids and lights). The main CPU is a 6800, and the driver board is full of drive transistors and 6821 PIAs (peripheral interface adapter, but they're more just a Pain In the Ass. ;-)). To make things more reliable, I'd like to make a CPU controlled system that has about half the real estate of the old CPU board and does both driver and CPU board functionality. I have several choices in terms of CPUs to use (and this is how Dynarec is involved in this): * Use an 8051 CPU with built in flash. Game behavior is alterable by a firmware download, but the original 6800 code would need to be translated. * Use a 6800 CPU and external circuitry and many 6821s or equivalents (bad because the 6821s are pieces of garbage and 6800s are spendy and it requires the additional circuitry to go with it) * Use a really powerful CPU and emulate the native code so the native ROMs can be used I'm leaning toward option #1 as being my first choice, but option 2 is still possible (though more expensive because of parts) and option 3 I really don't want to do because it'll take up almost as much real estate. The only downside of option #1 is that I'll have to do a translation for each game out there that uses this board set (there are 19 of them). But I'm thinking that once I've done one, the rest would be fairly simple. Comments? Cuss & discuss. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 23:32:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA33733 for dynarec-outgoing; Sun, 16 Jul 2000 23:31:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007170638.IAA27145@pons.ac.upc.es> Subject: DYNAREC: Project documentation archive In-Reply-To: <00036c8fa639ad60_mailit@mail.dynarec.com> "from M.I.K.e at Jul 17, 2000 01:12:35 am" To: dynarec@dynarec.com Date: Mon, 17 Jul 2000 08:38:37 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com As a start for a full and comprensible documentation about our dynarec project I have uploaded a zip with some files to the dynarec site. The URL is: http://www.dynarec.com/~victor/drarchives.zip The more useful things for the people who isn't in the list from the start should be the mul8 start discussion and the firts dicussion in the dynarec list. They show the new approach for dynarec that invented Neil. There is also the prototype for the DRMZ80 (dynarec.zip). I think if you have the time (there are a lot of mails!) has a lot of sense, since the idea from Neil is different from all others dynarecs out there (from emulation projects to university works). And I think it has a lot of strong points over all others. For people wanting to learn about the actual dynarec project the file UsefulDocsAboutDynarecProject should work. There is also the last 68K def file and the skeleton. In fact it's more than a mail compilation, just raw data for what should be a documentation. ;) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 23:36:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA33748 for dynarec-outgoing; Sun, 16 Jul 2000 23:35:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007170642.IAA23805@pons.ac.upc.es> Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: "from Neil Bradley at Jul 16, 2000 06:20:24 pm" To: dynarec@dynarec.com Date: Mon, 17 Jul 2000 08:42:42 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > accuracy. I know the interpreter should be solid, I'm sure I'll have lots > > > of bugs in it which will surface as I start emulating the 32X, but in the > > > end it will always be good to have a core to fall back on even if its slow. > > The approach that NB uses is really as accuratted as an interpreter. > > I think you meant to say "approach that NB uses is just as accurate as an > emulator". ;-) > Emulator? Perhaps interpreter emulator. I mean a core that works interpreting opcodes. Why you call it emulator? > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 23:40:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA33759 for dynarec-outgoing; Sun, 16 Jul 2000 23:38:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 16 Jul 2000 23:51:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: <200007170642.IAA23805@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > The approach that NB uses is really as accuratted as an interpreter. > > I think you meant to say "approach that NB uses is just as accurate as an > > emulator". ;-) > Emulator? Perhaps interpreter emulator. I mean a core that works interpreting > opcodes. Why you call it emulator? No, that's just an emulator. Interpreter implies aggregation of functions (I.E. printf). An emulator is an "act alike" of the original. You're talking about emulators like my mz80 emulator core, right? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 23:46:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA33773 for dynarec-outgoing; Sun, 16 Jul 2000 23:44:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007170652.IAA26477@pons.ac.upc.es> Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: "from Neil Bradley at Jul 16, 2000 11:51:41 pm" To: dynarec@dynarec.com Date: Mon, 17 Jul 2000 08:52:04 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > The approach that NB uses is really as accuratted as an interpreter. > > > I think you meant to say "approach that NB uses is just as accurate as an > > > emulator". ;-) > > Emulator? Perhaps interpreter emulator. I mean a core that works interpreting > > opcodes. Why you call it emulator? > > No, that's just an emulator. Interpreter implies aggregation of functions > (I.E. printf). An emulator is an "act alike" of the original. You're > talking about emulators like my mz80 emulator core, right? > Yes. But as far as I can remember I have called them interpreter emulators (or only interpreters) because they work "interpreting" opcodes. Umm... everyone calls them this way. Just remember the discussion with NG about emulation terms: intepreter, static compiler, ... > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 16 23:49:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA33786 for dynarec-outgoing; Sun, 16 Jul 2000 23:48:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 17 Jul 2000 00:01:21 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: <200007170652.IAA26477@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > (I.E. printf). An emulator is an "act alike" of the original. You're > > talking about emulators like my mz80 emulator core, right? > Yes. But as far as I can remember I have called them interpreter emulators > (or only interpreters) because they work "interpreting" opcodes. Umm... > everyone calls them this way. Just remember the discussion with NG about > emulation terms: intepreter, static compiler, ... Then you're the oddball. ;-) I've never heard them called "interpreted emulators". I've authored several, and I've been at this damned near 4 years! They're just processor emulators. And they aren't "interpreting", they are "emulating". Interpreting implies aggregation - something that these processor emulators do NOT do. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 00:05:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA33816 for dynarec-outgoing; Mon, 17 Jul 2000 00:04:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007170711.JAA09520@pons.ac.upc.es> Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: "from Neil Bradley at Jul 17, 2000 00:01:21 am" To: dynarec@dynarec.com Date: Mon, 17 Jul 2000 09:11:36 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > (I.E. printf). An emulator is an "act alike" of the original. You're > > > talking about emulators like my mz80 emulator core, right? > > Yes. But as far as I can remember I have called them interpreter emulators > > (or only interpreters) because they work "interpreting" opcodes. Umm... > > everyone calls them this way. Just remember the discussion with NG about > > emulation terms: intepreter, static compiler, ... > > Then you're the oddball. ;-) I've never heard them called "interpreted > emulators". I've authored several, and I've been at this damned near 4 > years! > Are you joking or what? I have written "interpreter" thousand of times. In all the SI docs I say interpreter. Everybody say they are interpreters. Quoting Marat's (not the emulator God ;) (...) What is "interpreting" emulator and how does it differ from "recompiling" emulator? There are three basic schemes which can be used for an emulator. They can be combined for the best result. Interpretation An emulator reads emulated code from memory byte-by-byte, decodes it, and performs appropriate commands on the emulated registers, memory, and I/O. The general algorithm for such emulator is following: (...) BTW. It seems he is still updating his HowTo. So many years and he hasn't ended it!! Umm ... he was at the start of the emulation but lately he's dropping in my list. > They're just processor emulators. And they aren't "interpreting", they are > "emulating". Interpreting implies aggregation - something that these > processor emulators do NOT do. > I have never said they name was the best. Neither it is dynamic recompiler when they aren't neither compiler nor REcompilers. > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 00:12:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA33832 for dynarec-outgoing; Mon, 17 Jul 2000 00:11:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 17 Jul 2000 00:24:05 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: <200007170711.JAA09520@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Then you're the oddball. ;-) I've never heard them called "interpreted > > emulators". I've authored several, and I've been at this damned near 4 > > years! > Are you joking or what? I have written "interpreter" thousand of times. > In all the SI docs I say interpreter. Everybody say they are interpreters. No, everyone doesn't. They just call them "emulators". Jeez dude... it's not like I haven't been around enough to know this. ;-) Like I said 3 times already, interpretation implies aggregation - something that does NOT happen with CPU emulators. > What is "interpreting" emulator and how does it differ from > "recompiling" emulator? A recompiler isn't an emulator. It's no longer acting like the original. It has been translated. In fact, a > BTW. It seems he is still updating his HowTo. So many years and he > hasn't ended it!! Umm ... he was at the start of the emulation but lately > he's dropping in my list. And set many a bad example. The only reason he says "interpreting emulator" is to make a distinction. He refers to his emulator suite as "CPU emulators", not "CPU interpreting emulators". Sorry. You're the oddball if you call it an interpretive emulator. It is NOT called that commonly. In fact, you're the first person I've heard use the term! > > processor emulators do NOT do. > I have never said they name was the best. Neither it is dynamic recompiler > when they aren't neither compiler nor REcompilers. And a recompiler isn't an emulator. It's a translator. Dynamic translator is a better name, but if the translator did a bunch of rearrangement of things to get better code, it could be considered a recompiler. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 00:22:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA33848 for dynarec-outgoing; Mon, 17 Jul 2000 00:21:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007170728.JAA28838@pons.ac.upc.es> Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: "from Neil Bradley at Jul 17, 2000 00:24:05 am" To: dynarec@dynarec.com Date: Mon, 17 Jul 2000 09:28:24 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Then you're the oddball. ;-) I've never heard them called "interpreted > > > emulators". I've authored several, and I've been at this damned near 4 > > > years! > > Are you joking or what? I have written "interpreter" thousand of times. > > In all the SI docs I say interpreter. Everybody say they are interpreters. > > No, everyone doesn't. They just call them "emulators". Jeez dude... it's > not like I haven't been around enough to know this. ;-) > Then you don't have read some of the mails in THIS list becuase has been used. > Like I said 3 times already, interpretation implies aggregation - > something that does NOT happen with CPU emulators. > What is exactly aggregation? How do you call a language that is interpreted as BASIC or Java?. > > What is "interpreting" emulator and how does it differ from > > "recompiling" emulator? > > A recompiler isn't an emulator. It's no longer acting like the > original. It has been translated. In fact, a > Yes, I agree, but it still can be considered and emulator because the final behaviour (althought it is a translation) should be the same. > > > processor emulators do NOT do. > > I have never said they name was the best. Neither it is dynamic recompiler > > when they aren't neither compiler nor REcompilers. > > And a recompiler isn't an emulator. It's a translator. Dynamic translator > is a better name, but if the translator did a bunch of rearrangement of > things to get better code, it could be considered a recompiler. ;-) > I don't want to discuss about it. It doesn't matter the terms for me but the techniques. But I can't agree you haven't heard it, you must be joking. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 00:30:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA33861 for dynarec-outgoing; Mon, 17 Jul 2000 00:29:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 17 Jul 2000 00:42:21 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: <200007170728.JAA28838@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > No, everyone doesn't. They just call them "emulators". Jeez dude... it's > > not like I haven't been around enough to know this. ;-) > Then you don't have read some of the mails in THIS list becuase has been > used. When making a distinction I've heard it used. My point it is not COMMONLY used nor are they called "interpretive emulators". Ever. They're just called CPU emulators. > > Like I said 3 times already, interpretation implies aggregation - > > something that does NOT happen with CPU emulators. > What is exactly aggregation? How do you call a language that is interpreted > as BASIC or Java?. Depends upon the BASIC and Java - some are compiled! Aggregation is when some atomic object (like printf for example) is executed. It's not a native machine instruction, but it's a token to do something else that has a much higher level function than a simple instruction. printf is an aggregation. It employs formatting and a kernel call to display something on the console. > > > What is "interpreting" emulator and how does it differ from > > > "recompiling" emulator? > > A recompiler isn't an emulator. It's no longer acting like the > > original. It has been translated. In fact, a > Yes, I agree, but it still can be considered and emulator because > the final behaviour (althought it is a translation) should be the > same. You can say the outcome is an emulation of the original, but you can't say that the code is being emulated. It was translated and natively executed. > But I can't agree you haven't heard it, you must be joking. Haven't heard it in common usage. You were arguing for the fact that it's a COMMON term. It's not! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 00:39:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA33881 for dynarec-outgoing; Mon, 17 Jul 2000 00:38:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007170745.JAA02137@pons.ac.upc.es> Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: "from Neil Bradley at Jul 17, 2000 00:42:21 am" To: dynarec@dynarec.com Date: Mon, 17 Jul 2000 09:45:38 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Haven't heard it in common usage. You were arguing for the fact that it's > a COMMON term. It's not! > I used it in a context where I think disctintion was needed. ;) In any case perhaps I like to use it more often than usual. ;) I will call them "emulators" my master!! ;)) > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 13:10:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA34653 for dynarec-outgoing; Mon, 17 Jul 2000 13:10:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39736A21.2724114F@dynarec.com> Date: Mon, 17 Jul 2000 22:18:41 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: Emulation tutorial Content-Type: multipart/mixed; boundary="------------1658CFA2C0DFC6347121C22F" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Este es un mensaje multipartes en formato MIME. --------------1658CFA2C0DFC6347121C22F Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit This is somewhat off topic but as these fucking webmail account I have isn't working and I can't send a mail to another mail I will post it here. This mainly a request for advice from you Neil. Perhaps you remember (or more probably not) and guy who called himself TheEmul8r (I hate people who hide his name). Well I said he wrote a console emulation tutorial. Actually he does and I have read it. I think the document has some major mistakes. I'm not so good with english but it remembers me something writing by a fifteen years guy. ;) I see it has good intentions and there chapters that are well (for example about the memory maps). But it says some big ones also. You know I´m interested about documentating the emulation techniques and I find really cool someone else out there who is writing about it. But I can't let someone teach others wrong things. What do you think I should do? I will also want to get a second opinion (perhaps I'm biased) about the document, and more from a more experienced person. If the guy is really interested in document about emulation I would want to help him if he doesn't have enough knowledge. But I don't want either to discourage him. Grr! What a problem ... In any case I don't like hiding. >: ) I attach the doc (the page doesn't work, but perhaps is my server) if someone wants to take a look. Victor PS: If the mentioned guy is reading this, first I don't like hiding, second if you want I help you I will. Just mail me to my usual address (vmoya@ac.upc.es). --------------1658CFA2C0DFC6347121C22F Content-Type: application/x-compressed; name="consemu.zip" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="consemu.zip" UEsDBBQAAgAIADZk7SiujanMXHcAAADKAQAVAAAAQ09OU09MRSBFTVVMQVRJT04uZG9j7V0J YJxF9Z8kbdNSlrbcR4UP5EhhSZNelBYsaZq2gbQpTUopV9lkN8mSzW7Yb7dpOASleCtQbkXl RgEVRBAERRAUlPsUUUEEvKUcKiDQ/++9NzPffHv0AgT9Z+GXznzHfHO+ee/NmzcPPTju2Uuu 3/F3quD3MVWl3lk7So1wrlUCz5rIWKWewz8VwDtr166lS78FngHWDv3+a35/veIOtUyNGqbU yC1vty2LH6489rhSW6iO4zqOe3Xpq0tV0W/UsG3VbkdVqLMOFDz8sCr5q9T/rl07xl4rFza/ o/nvsxXK/uuG6VdXWfzv1k4KJw1b/7/j8e8F+DdaEVyfsbdSN+HfM9H1j8G/f9dDoNy/+44s /e/aCVLyir0lviH/7o5/1+Df15Cf56PIE+J7IL5NiVo15TbfK/xNGMmNWDZ/e+jvLhupiura LZ/5UXxmhdSL+17hv5T+eJ3OdCcdk18Tp/op9ZuD58bj3WOr5N/CfBX+69a3yUfN8CA/n4go dSnS7NtLqaPw7/YEJz+b+jPfM+W5C9+8D//++OXtlp/2h9srCvtb80gZWvfivWnqw/JrbF3Y 1trS5DUtWNLS0N7cujDSns9lsslYyusY9Np7Ek19+dT0bCQSaY91pBJepstrzKRziXTOj0QW LW6a29DYFInMSXQl08lcMpOmBxJ4JUaRyNKeWM5L+sGVWfZSLK2vZrKzIvNifcl0N6XsZ1IJ P9Ikz+NSzOuWe51yT96PZ7xmL51IxCm9RDbhdSK5Zq87kfMG6L7cxDfiXk9mwOvLd/bgnYTv JXNIyM/NirQkulHEpO/ncRV51sk7eW9O+8l4wsv1JAqzgFrx+rOZzoTvZ7JeTeOiJRNMtuQT 8YwuZwxZyya6k34ukfWda12pWDfilFBfoi+THSzzPuppcesCJ9KwwEmlI5nzo1462YGGQaBj MEf/9CZTGR1M5DprneflU14sHs8i6wmdgeaJrV5PLBsfwCPF2WjLxbLcEIOZfNa2WIR6hoeC o07wVlM6noyl00jUaTm6a8vOTcGldp6gqtV1uhpla2pravc68rkcKj+cTFc+3UltEkslc4MF 93JJapvCDyfRRbPZfH/OvbFAqrohlcp0hq60ZGJxkyHUt1eDBk9M8LqSaOz5yHnKeba1n754 Al1ZRlUilz1+DAWNtGXyael5h6G1vCbbn9C5O1N5n4IN/ZlUpnuQLuVinZyTPnQKdKbOTF8f ja2Jx6Nf0mtIsD/RScOxvSeW7sWgW9/PDsoFaBrOSB8FMl0YtFHPT2STmbxPXZqaZSCZSuFa LIsBQqVvpnpLYxhRZugZ5CiekOZD3pBeZzbjI+51JQY4txjyA5ls3D+dak4etGOo1luAweYl u9OUA0qfH9WppVHwfMJLZTK9VANS/Dj124GeJJEavJCVzMfiK1Ar+SyN1TRqKokEMvkckozR n8QgE4D+VGyQv+JTxin39DhdIQqR6evPo3D8na5sIlHrNfjybjwzkE6hC+hvmRqTBIICZbLI Gr/QgW6NdDMoTjqOJInGYLzEUJcoYK9f6y1N5np0JfUnMv2pBL/pdcX8zmSa64bJYjqT7+6h hPpivVxBfd5ALJ2zVxwiSSMDFZNISxaI1GUTsfggPevTIJXr2XyaOn8GH+/IJjt7kV4qVUvD dZCeTyVPSNhaw4OojD6bHT/DhIBSpBqu9RZmUCg0UI4opJSDE0kNenkqOL7rNjfXlU+9JJfl fMVWZJJxqpmORGcs7+ODOd9LMeUFsYkhnKRMeH5PDG0gdR2PZXuJkqAOE6hPyWsSafbEqMLi CeSrmYlhGrXOd6hFucV0FvFlqh6+5BaRL+CzSeSfPhVLocR88fg8qio1SPUkhJZqpz+f7c/4 POXleuianhhrI5gbwpeiSG/QS6yM9dH3MTd0Z2N93JulACCeGGUJGW4d+DebzGE4UtnpS43m FZ5mUrF0dz7WLT1xIJNPIaf9/SmuUXp6IRG3NKZAzJqJ2ZlBO3dRD/HzHaAbyJehZ24FUEUx HfcHQZX7dOLIjw+SloplTc1yxaxIoBGTff2ZbI67JM8i6UEafwM9Ge58PtdC1OkMNG/Uem0Z L9mlxx33q74EHuQM6cqIZ9Krc24nkiFPt2TONASZkkedxnyammPJFAglcikVmU2sSPpCV0xD SBdE7VCvk/rqQ7fI+jR5oApRAcflQZLy/Tzg6dU0xijKSoTZ1LClgjHKPHVsH9/Un0MBI5F6 b07T3OaFzcQxea1zHfbJ9g0/wXOWN6CbPZ70O/O+71JHJu1dyU7OGtOHDOamAZR8huYNYmmq Bu6BQjz163qmDoZe0tfzvEMxcC1SX1vvLZ3f0O41t7mZbC9IjnpidyKdyMZS/FVfyEo2uYKH U+L4PG4gycTKzgRzhugwOZ5D0RrpgLiCvCXSnVRJ1PBxYgvBh+H5pYkOYgQwz89JylxOnIg/ k1IX2kAdS/dLIh2dnYn+XEDN47FcDAzNykQnvhNc1uPGj8qA7uxJJpBj8G2YXFCtaDM/nwLR iRFxkQlFvlHrRSJNQe2lNTOii4GqwcBACUBHAu7H3uZukkz36mKalM19Jrde+BoCeqwRpXDv UfJxdC3Umk98KmUVVZLqlFZEydB1urowljAKe3nm6wqSrUklaZ7wFjVKlii1ZG41pbEg1kkz gd8zIUpNhzJyITCUokVsNXXp2km2pzQs1J2ldfGsSKQh1KfCNWVoHY/sVAJVHa4q07/CdRSU meuKZl3iT6lqwmX1A3kC0y+mbCcrNOVTfXr9xKKisYPRgLsx/hRylHBHXIN3xPQ6h3kvTIyq A70nS8IDhmqS82zSF/6M02RKacmn/ZJQPa87g6cHkADTGho/uhZyruQg3cTmwKZmPleYmJNO rLjvcANgHFHLh8pIhQ4KzPNmzq2dopRoGsmkaY4EbaTXaKhSpmq9RSYdDDgwPRhr6J9mUtME DlVHecyiS00qoJLzGhY0L5znaZmzbf20UstnaJVOEGTKY7jb+lKHlmyijvqTnb7NUmdmBbXl DE0bC94Wokm9j+Yd6gHENhRJnPPBZ9ADzF4W3Y00FKfKVBjRTF+y084tuAY2OxZPWAqkCWcs m/Rl7il8JOqKSMQ8JVJdUWaE0qDOnWBi00L4ECV+Oot6CBrSdL8e6VLSQ8y0XcAYZDN9RtJN RA1/jtbP+XpO9A1BM6Ki+Yi0gGSGip4kPgufJTpDfTGXSNG8ybOrZq500om4mW9NCSEdIfcN +XgyM/EwDEOaGki2lfG8eK5EJ/oDyVxnj3y4VLEpd3k/z7MqhKb4vj0JjCxzl3PRF6NbK2Qk cQqY7cADRtH1sgktbKLa4pCY+GsklggTDvHUiBV9kgcRFMAydcWYzKJH50gm5A90UL10ov6z yXg3pcJN3pnjPi6JxpPdmExT3gouMl+v9bx54Z4eKhWuxJlxxndkfORiSR4fqO1OFCeNjodJ O9lP0iTnMkm0mitgBY1nbvFgujX9jROUuR8B0xPyac3Q62AtMxDC3KHr5dNJ6uRMpvixkiNF z4ppZnUsM2hESJaXMGiF1emjlKU35JxGRvdj/k46m/kQaXyIEom8Kl2QGQQZZpHIZMP5gPY0 FBAhKolLgFzqQ4SQiKUhlalBISicOpjRtKM/SpTVWEm59ZNc5mKCGdPiscP/GZUPKbJkpATE v0gllshaqWcg9F5ExoifMzxkElUSuplyFWHZhFHNZIo1Yl4NsSauJLIknaRR3AZOUGqhoS+B PhaboD8L4SFN2gzi7sHZLFjS1k7lRsVRUxeQcu5TxM4LCdejUwufLrGSfkPUOiOiroxELRRQ gxFX0CGCoDSY7VncO2xS5iVnMpPnTSUyJbMyEB7v4plApmrmvIqETKEMthxRfMLPd2Pk57Se hRn6dLG2hUuhdTiTDdc+pxXvL2xqmjNLePZgpjNdRhqUQpQzVnvmMlJ7bp8BZxWu7xmYuILx 7zIoBdMZVZOMkQKhMcTogZ9uKC3FWpmPcpxYCWGMRYQ4j/laUqJxYxoRIPQ4BD+Z9ok/0ooR vsZjM5kz7AxINivOaKQYXUMw1Ej0J20KSd2GpFi2i+YzTVe4LbuymDSzItpE5iRAV1OJeIkW NtVhsgqyqAeOrktda+6bfg/XXZIUgXGaQUukHusgxZbDsLlfE4Yg0y9KOek1MedpuW/0vNTZ ciBseaLkpKOimyRIhed7qkRiC4JnfNZh8pO4p1PX+nTkDg2ec7TruQIlsihfY8Q7MFkPsh9p T/YJ60wtnhMN1+AAky/OUgxtkM6xRkyUZ4NobF/GsWZXHQFXKGusjyYlHt6kDCK5HwmT8Nmf YAGCZhxUrF0I4Meo2cwg8elB1tzpsRnWdS9Cw1CPrfWW6g4UFrK5ByZi/qB0Zt3I1NM7czrr CSFULOAkstlM1tcKjwGbYqBllMgKzHCs7qOcEmFP5kwWo6JPCn2H1W7cmqIXpSqlfLGSMtsr LUGqi/YN6rrLrI4G7Sg8B1EhoaB67IGr6vctsQlGdmGrE2dkR3Uvae0CPRQYWqM9zeB9nkdY C8jfNg0EQt8xKA05YBLie9RtuT8tbmpoaVlWkKWYW9CgxzEzjDyZq7aErKFzyY9RQ/GYJEaC ReSmxU1eIyTkZm9eU7sWmaV2GhbO8ea3LsVE1zgfpLupzWtuB6PR1q6ptyGWNCn0oLzyoZTo cTW3aBSlq4Wo8wxEdQu5dEVCi2F6GnIqCZQz1CucGZD6DhHWWM6KjaQFwfeFrdYsH5UbzZHy y7CQjYHEz1wk1RwzFuERvPvUujr66u5T6hBgEpHs7mFpUC+bFc0QvhG+O0gbntOsaaYrx8RE WNyoLmwwqngNgFlFyrjwwVRhLPNwnQRl1WkFkw0rOK3aX+vpS2bNUkozV7MQXKYMWcR0PdAK A9fDfqFqAP9J3+rOZOLyCFpGWPsULZRRw2F+nxGJzDl43qJF3nmUNzzGNdE4sXGffbhUoBxE /OY32RgPqTmtbROXLGw+3GrFaiNbefOXLWpa3NK88BCvJ5frnzFx4sDAQG0cX8FgrcXrE+PH dff3T/Qqtl7n/W0ikYUNbQvCOWK+iLpZA6aHvg7mjyU/5T48kOjY18ek5CPp2nzvxHTM75uI lkysrO3J9aXCuVjPw8hSez7bkfEavRWTauvqkbcGqVlbK7MzWbRQvFRuiGGA4JIbrO2Qh7iw fRh8+b6J+tJE03MmtjdOqquvPSHZH+RwExPYRgZCfB2cRbE+QatmUcFdPDUX8I+OaCVCOuQi GqPNMhDknRCTQQuCxBUlWXCmvid0F9xGOjHgd2cz+X4t2hcsEvHSmZTBTqRGddIxaOZpFsdj tNCSi/m9SLsHNI7maB+idDyfksUNpBiPDfrBPCfZ5aHDnMI8rX7lL4kGVWiOkQt4vYonOJqU aOHamTcikWbKGk+DtJbErLsrK/XrmV2GbJ4KmsunYyTpae6NXyEe0k5FTE1l9gL9QE20xPxc ajBaquWEr5XJJaBvso6yLrrr669bGmtIq6GsPBdN9lqa5jW0eM1tbUsw1bTO9YqMOTyM2tb2 phleSMjljsKiXkKrd2iZK5VcQXmnyVvznOXEO938Mm+GWJj+DNkV+NoOpIBNQk48VCXJm9Kz aDLzTYuQXOTrlcwOYucpzeYWKaJctnwFrdEn+5js1uSCnLAeZgLr1YqzT1dSsQESBWmpkRoW RUcT0kpprLN333w/6rp/UDI+GExAlnWh5jY8PTPwmhMSBjBFKyIifBVNPNGwWo9XykW3UtBh 6Ib+hl6FYUGUPyKCus2zm1fm+/jRZa1LvIYWcENzlnmtSxc6rAIqCZM5adqD6itcj0PK0dDX aFaZNAW8Sp40vrEuXvww7/TRTMvr0Eke2rTy15pmrsm32j5OTLc6BQ2DQ3ZErYuWLW6eN7/d a2lY2kYcRv9gFrNkjkUOElxYkkjRsOCORkvrdo0En+jmtUEQEKnLQWITTJXP1MvkWVm7TFDZ Erx+RTYYxDrKl1CfLCxmdPJsHZDsyg1q0aMjMZgRRsPrRMFoFQJN3ZUg3gliRzIl455SRAfK sZ4tSFrilHItr9aSHCrt3dcfSycT1HVAW4k+BEnQYNRJmBqnVIyoloYIjLLjekeC0mJdoOgP TP8iiYMGbJfWVGV7aY5o0Eswun3I/gCjrhNjCNSdjXTQKPxhWXkGKeqeYHtQH/XfmOSCh7oI AXomkm8QXys9SZbHCnQlWhJLSN9F9Tg00dRxpj8ptIa7Dz3MX6TascuzAz00VmSNzlpzEEWc 4jUvbGue08SsUaGer9xagzaeiKV6LavvhYlKkTJPCJeUu5dbDdJH6aUJeZSGpdH6WU0hP+Cb R/AaL/7kcyIrThYNYyeIVzfxYv6MsN2Z71qPFdlxUWXU1nM9LFrc2tjU1ta6WFuqRYzpVk0j GHta8NWrOpR5opkTtI7eLIR1DBYZgUjbWfkksBJg2YqokqMYWsqSLte9VQm6ukCqu8JFKN8q d7SGzbVDSBsNB9reLbU2cyFlH+vBEjGQCunzkmFNLjHga3UNBXo2zKDh2prTOitSYOrnLH5K KYTGERfWn6W1z0CD7XUkeYmblSj8WHeGZ6GsmPw40qBZAk0y70IZDGs7E+Vf5SmROmx3RhRb wSOh9b9w65m2FdsTsqGzzdmRpU6nixCIq9x4VkdKC1yYM+PO6hW1subhZOhzH6C0HaHU3kmy ZYU2S2M2YWUum+gjBXtXjPpTPJnJmY6TFG2RrWWvDwMpyYswpBf2c9k8D2if7DxodGe0/R2b gbCESNRdcxnoH0ZH2mHSRq3PaaWKl3UJw2b01VIBwKAkeG2apu8+6t6xLPPT9fvvX+cYZPFT TMRRI7mePvDAnZyNVKYbIZIUQGkbWpb4E7Q6PJ7RJISWPii/SbYeiic6ZblMzxVGN8zMhmkx P0fUxOa9T7OSacwGyCF1Ot0i9AJ91JoakTllMp30e0z6seCLrA/g/IgyRve/gFfl2U2bVGgr M2PiGXxvUDRefBe9EPJhH6UcWAH52qKxJ9ZPeg1tVNcvxSv+ApmN2vGqbRQaFjd5i5vmNbe1 Ny1um8XEXdYuZCG1pCwfdcxRtcaBBg9NP9QLeWEsyeuNmpD0ZFIyK62IpfQyj6kqPzCi49pl 8YD7iF61p3oeiPlaB5fiDiclpOldJ0hVIh0zkfITrtkIC3CBql0bIjjKXT3hh8nfYls+Fom0 xWGO1h6ISOhhDSqRSJjepE0v2NiLNBNm/S3QoicGRW+GWS7mpclAINC4+v2UTd21AjqJB0iR 6nAbPhpQhrNjEsxaj95EUO9RJ0e+aE0DGkX1zdVsuo+2zyOrENcaNfwBeh0SQGevtyjDJMSr aVs0IWqUOGA683J1UeOEqGVDGjo780ZyqaHsJXgAETmYgJIcTJwvZz3Ib2C34pONZckyFTxj c8oiC8+kBTxEVK8l0cvTyd67wKK6ftq+oYtiICNmiFG74mW7ERUtSEBI7/S6ldOneZ09yX6R pdi+VisMvEWNJE9Rtwwe052dni3MUsN8zlVDyzreqZ8WeslrOFweLrjua4ugeMLSWC83kCmu BTHt7SA7s5IJ4QO8kkcpmQFQIp2CrCNqE9CzPinwMOxo3iTzepaHD7c9Jvhci3kBcmbR85K6 KM1Y1RdFzlA9hum0yxxI2iZZE/4Al8cqrQOOa/KkUGcgGzJSMDU1HE59NtIwv7qhpbr4F8ED +Ef+lHkGT/G6AQ+kfj2QmA2wX5OFKLrlC+kP7zYIJmCdCsmYZIZvms1ejQV6ii6TiBYGtJUk kYM8D/xmmiUMHY3pMUm8JwuNrOly2pgn9nSmkIAIKcwIuRfKHNZWi9kD23mntPFMQeF0xzJ6 V7AYK3Mub6JleiMCiNlp+BFiV4zJKpWwVutYAkKUdKTFvK/Xec0UJXOmHtPIlt6MY6ZxO39O DubPuS0N82juDPMJeuVkQyZuLZ5qlkG/EdUmiU6mRE7NZcByJbtFd59jI4Cg9+jpTL/A5qa+ d0Iim5mguSvZp5DT7IAzMWgLMNpawrO61AhGuJ5j6yntOraz0ZyUUFoaN1HSGdCddIaMllnH yHOIJMdZpM5mJhLKkHzfyquxLE2cxKFwPoInWNLkBq03PIHTRoVcFp6u0wZNNkWThKV/63hf 7APLV7Bu/0ks4yxoWtC6eJl0ce6GBQJNgZ1GCdnMHQR2PbfDztckvWgpEMQ/yhx+sKjUmcx2 5pnzzsa5XbTFqzaRqjVbahIrWS1NaQ5kRBqmhH0jN3OE24YUWtQiixsWmIIWCXZSaJHq9AeM ulhvaXBkAJqQUW20Ji5y6JK2pjncf+xgsNlMGtpGdRWIe6wdI9N6jCc2JWYeOq4pAT9nTYK1 LlNkEghLA4GRgTby6w5soAsUnlGX1eDFY7MIIHkZ7E8UZIjzwYVhO00Wh2kvDK3zoS+x4JxN JUnS6wu1RGARSxWO96m+tZQmxgJp0S2yKNYXox4VDe408B30WKJdtlP3Q6qUOTafpW9nurps GwYGybwLTlNE9KJB1qF6essBFWUxrS+00gyxQPfK2XYp1Rg4yAwiZYoGxhC6QnTm9YIBGY/2 0HKenp6cGreGmCgD14a2t7Y9mKqmcU5U796rlTpJF/J2sgjZ6bC5ZtiwRgrstp1OZJHA1baR ZkgPo44MrYHoGahQWxWwg/oJP1GcfIg/bJzjxcgAkzWrNGvqzLWh1r1FpG3NMcmJem2J7pjX FqN2E86ZL8xBTfd1khQfKMKWCu8uk4a7MySYZ8QA0M64uk14AudWAR2ZJSTaRK0Ql00YcY8a a3bIMMhuFBjQW8OoF+o9WmZjXR9tGzDLsIG5nU3WyQIqFI0WlY5kZsP1ZEiIVfAQfWUR7zI0 C8nMDeLKBK7FJrnZtDIn9kxFT9nhMTkYHg1mePCmDj3U2LZBRovZSbIYX8j0kXxDbIsZKnrB gce6sarvFJufqDYN4iVsYg3cIYNaStr1LF6jswbjtTYT1MuZXWEyry1ERaEQWvtkOz1WbRP1 SGbixqSH9lt1cXLGIinFa4CiG89rAzGt7GZywoNbLH6SrEk07NLGfHZWpJ0ssv0BZm5pH1Kw 6JHhJSPDrfFwNHw4XTCbN2d4Z68jl+fogWEHxICtIW25Q6/xO7FUKngPLT1HFIJ6mUie4yXJ gvWknliqixNEInhtYYYna1la6k0kSKIX+uvn2a5T05cSk3XAvlNDsLiYJDZZ5yQmqYbMqsCd BLkiNTdqjPVcrHAnIzLKqmi/yZY2xznsB9VqtJRUTKuZoTwikYrHpk1ham+3wCHOnzMGm1rm 6eAFjcF9+ZvcEdOGXdMJx0ivh1qN+XZFkQslagbL5ztkH4Vl4sKfkmWCQopu9mCAiPqzjD2r vUs3CvIZC0Zd1rAGZswUlsFZ5KddWP1aO0dL8iGz86hhz0L0WVSOtHWA9JDEYZSoozIb3vWE pw2zhGeiwjh59y1RmhIIGLOb29ui3sLm2bNbmhCYvayd/jmkuaVVB5vaG2u50QcKDMR0hwrz V5r/C7arMhGKOqtMNJnEOsK7U2XfotefZDtIxyq0K6kHlSwnaaNyScgovFivGsigNBsZbkun xI9bKSyd7+sgaaaLVtN5+wOYCDKFTGSFH+eRgFbgPZJEn+IZvTatl+60iGInkKxUiDVeDC0N kEqRVhzyZs0lkaV9AAXSqdOvmJqZJZ3AbN+X/ew6C4ZYZhNdsnISJBxo/uwKhOiapauTVksm uJivTZX9GZEI+oF3ns0EF5akWFJLGpaHKbvMOUl2M5EuscfJ5Z2Zr6W5KpMu1tOmtdRXG5HO V/B1lnlKZ2G93zWqJHQOvDOFfTDURqg/4yOzB3Om/NJ1tDhpc1xUgnByrJRigXSKcetQGzHj xRQi9DKbibqfEtWrJlumkfwStgb+evJSXzdpiriU4Nmonsz5tHqlYC2QVnVqIwua5jXobOoV 42D7i+zkCHJDJJy3C8bYlmcgkejVU7Z9j2V0+h7t4UloDpfIZXeMMsUCSzDwOQ/G+FmesEIq b0biymGrF/RpzboEnVlLbbx4RoOpSOIV2usmXVhT1utGbWRes62J9oxQ6HhsMESh0xltq1ti xuZGzUrFkX16QsrnF+SXtN7dyfIZMplFhtqbFje4Paig4I5+k8ZDGhmLFz4jF2WLU20oFc1o 6+7Hm9gG7ZgqHkmywdxYsaUGhSxq9b10D60jhaBYrmym3L6Z1/AMr2AY9wUsVXUM1uo5aWow J2k1QMOcOYub2tqa2vT0Y2eegdDME9UTts50Vsd5uLjaSRFngvWDNLMthpDKduSuQc8aGzvV a8RRUkLKhGAtvtmU1Rok8/4HTeqN5mVBiGcPr2bFWBmUzfCajgxkNiynRXGu2B5+iLIqNZ7m HqlXr+kBKxcSUTKqTju9GJ2m+1DhxDObVNxmQ2Qgh3YRUyhZCgoTidT1VNf3VE/qqZ7cUz2l p3pqT/W0nur9eqqn91Tv31Pd0FM9u6e6sad6Tk91U0/13J7qai9ST+/gpXq8VY/X6vFePV6s x5v1eLUe79bj5Xq8XY/X6/F+PRKoRwr1lITsqklmSTeiexvxC7qwdT1CVMyqcs6brq9gRGb5 AnJgm53KRWIsrk7vsSSKWsdPJKJF/ndE4OSRRcQBFUTLi5iXNB/BWqYGregXPkerqmThV+ZL s0RkUzXmiXaK1tkzIncqmcvR8kNSu8igjQmFOWNmxxr75/Tkifk1KWvrSbF1cLJkVtV5FAl7 XJxqhq0Fw5s4hHGczEo6Ws6c37B4zlIMVa2fpE4Z3l1SYmAl07S2GmxPcdZERT1FmQ2l4qh5 ZI+wiAhEqzOd+T7WXFnjz5CfCqEHdv0laVjfySGVo1sSUTqWKwTv7eD86y0wuCEK8YzYE+gi aWGT7urpKJjZtC4Ugyn0FXc7X6GsEt7GFezS1R2+PwEWOBt0JveBwFjLbsu07Ls2puONmSUk 0tpwBqXspfchu7NiLMWFDWlz+gIlLggNLx6l7dLR5NqpZCzA6lsSqwPdpl2318yi2UToLBMR I+Ku2wdKU7vXwazXy7iwuzbcfRlscly40Vo2s8hmoLIL+ZoXypWw6bYEpd+qucJ6/oKEjrMr 1cHqfHgJWWejJ2b0z2a4xgvaKthZEp5nIDpGXUcpgVLXeFMp6PidPIexFVAqo6lNIrwtc741 NeoqmYRooMiCVfss0JxpPOn3enHyWqLrkDdNUWukMtpTjPudSGSK19besJh3Bi9rXbLYer0o JZRSjgYL/NiwOojvdiS6Mo4nAVFyWBObgv5siF+UrBBDe5C6E3aks0ZpwPonWNBwSFNot3xA QRtYyUSTB29XGtB7Aov3YpqNTdpcTGxf2XY2k1+9gq6zWyJtxsbjd/37E8JFdjdZigOkTHg/ HdW6Nk2ktbXGVpD6YHXUivBaHc2mrn5gWBhOKuSGLjDPC5b6rf15LnCXk/DdavRlEbEhzWut tAONEwx2PRds2nScjHRJlwip/qypiizukEF8UhdHfz1eaESuX1vtm42djqFSVJYiheYmrJs9 qUPUouN5z/HCJzRJNo6lYuyCJ+bbvZqUxUy2O5ZmaT1YsQoz2rTmZvxqiRxB0kxIsSIcr3wk beukwE7C10ZwIVuIYF97Deu6hGnQ+639ZHeavSKlNU/GCbCsWHiLdOHtyCgL3tXV8+nTrfwZ ulLdglSdaHVddX31pOrJ1VOqp1ZPq96venr1/tUN1bOrG6vnVDdVzwU3OJe6V1Fq1ZOQgw1N YnI2Xvrr9Xi3HpwqGFXwqWBTwaWCSQWPChYVHCoYVPCnYE/BnYI5RVJhBjKYHdl+JFrSKoUZ swHaVJMLM7Zm0i5uCef5VEw/ro2XzZyx2nc6n2jkyE9kAl20j5dOzFKYXVQzS26c58JM0i7u AuOYrDxZcJksHMLv0gpMyhlsdn2K9kKlZIklIe4uuf1kUNj1Dzv7y1oMZzG8K3q9edVjb5Lj VIJGlLVG5F2gbFsRiZReVQ1suLWuQ6ZgnsPMvCb+8bRK1hjlaa2xY+7V3rNui7qZgXdE1pKJ /jKR460j2taF17QcZxRsyarJjojX9Lpe+SVeyJg1kIpN/G6xaxLNk6PCO2Oax7d6auOmij/p GISkYtnuhLsyU2AUUmTowKYh9DYbh9R6bUnav1XCz6gWrnJ52TenPdzRp5z18gGzR8upsgJ3 CH0hp3ianifsvpFCi7qQ5OU7XFeHcVeZ9M0GrMBnASvE4iti7BfBzlmBEljK5fq3KJRajJch Y+JmnfiSMwEzCXH1yqK/ft4UjjZOd+VTplhWyS2KjJzxIOvUorM6YioAVEK0CXPZU5y2QozJ zhdyVBj2vaV5RccGb27Um90Y9eY0yXw3v4UNI90Zn3dt8Mxqaj+c1RmRCNJbTinRv5Qa/Tun UVKk8PwWawhEcxwPcpsHeVu/LP+YJOSfJvlnvvzTEuV+uJx6XFRMd3SYVt7cOC985TtytBiw XOyFalqFcs2bHa4Xuja3yPyQLYIsmz8hErE9v7i0TaHSsvVSUUmj2tg6WM8gpZaRCsVURJvd 014jn7/mXAilGlJwF9uFcia980yVWXWJW6RAIKUuzNp9cPy1kabDGxYsamlCw+LLurgzbXh2 YxCe0xSE57fMjOTTxC5gjFBCXtmG1ZXXVPjCBjZsqFFnytzgOhxiPlf2IK1u006OZy9pbzde GCFr0c5Z41eqyzESthxqPONclZ2Srt880Z/qHZSBS1yeW8hQRKtmWWpztgW4XxY/H+Llwyz2 lJQTA2UOSSp6KtCitPFkYNw+mkVXWldFv9bSgy1VoR2K29bsOJYzuLyzP18zIXJixPN063sH enUr6+tn0hXbSLgYagnEwy2FC6FI3UyTYtsiTnHu3LlN9tqiRvlKXfBYg7x0ciQyl7iqaKBE MES3wBob9MyxAkzyKneSPfuRCU3CkipbnkgbqxmjdnDIJOZbkRDD1Tf+uKXOkci7qoLABhCT Kn/Kd2x0jaUvKXQoaOh+B8TETJ8pNj9Lmw/QRTqMLihIRO+rNLyrfjffr8sfqn3JT6Ftfjfl KqiFQqtbYXLFNaj4qA/MKtOOl5t0sPhHhdXfd1taHGLF/MLamF7QrqY9w41hGjSoWa2ssP5F aFWiz+76JgnIdzVCspivfZ3L3uK0+D7sN8oeyLnkns7ucXaGSPCms+XKSK0k0etRGkzmUqPB 6q50ZmuZp5eDmZP3xcmAK7YWy6jW6bortIZUN3xdM9BTChjouUsWNtKe9YaW5vZlwXbNUKlk jnCdVYUEZ7NtXp4SR89Gj0CMpi86YtElikuBtJ/vM2Yo1s9uT0i9IonyA/iXRFWr5zKqhxCP SDsodErsXEprL+SNeKIj3+1uyXN4PNEbivV0RraH8YdzJbQZiT4/kVohO56F3ENWSNDutEAf YrxMdwxqM6V0vivGZhDMW3dIj6TskjqTvTr3kDsUTcaNviJQGnQZIqQdWAZdnMptF4ZR1axB 18sArHdwy0MubBagw2lzfvt40pEjtWrKOy7f16/3S5D1Lfti1PybTatwf6MfGwyIEPMypC/W fJSToFHbitZBu3k0zkNkaJC7fFmlSnbty7XEtJt99LtqyrSWZJxUwEz4Oe29uU9KCyJjdSpW 12MdZmqnJdpFJG99lA1wQZYL3Z1angk57U2kEjnteCHoA4ETRV13nSkqM2iVjtfIxH6k0MJ9 9jl6wsxR3sSJHu8aK5rimHpm+velvMucTH4+QT/r6mZQDL+Je3vNxPlzk0opIStyT9l7on6m Az2sd6b7en2Z1/lL3qSy79c6fzA1RzRdNLURdYtORfKLy2Q+ojuMmV1k8pMFgEHXKMdsB+HG 0H4OJEHpYrRzkzpB3Djd8tmPEh5hpo4KLI2gN74kXY2i7HTROTLpabfX2hT5rH32WY0h2NeR STldQc9ltOoQ7FJmJzjUh+JxtIGWtugxMUvEnNLNdkqURymCnmJDnQUEe74Z6NqHgFnMHQjO OaBJtgNCnvFOh29aXad9nOhmrJcsG4zNknG7Zl43NE4z/OjIy3XxayjeOdgJ3pH4wVE2upwb hLgbvjkzMgq0JjIKj4zC/+hQrYsaW+c06VGPTjRqVNnO79FbulM2Ns2g7tgwp9HzGqLptLw6 Ktnl1dTITL8Pa5CWSyo1ksqECd7HmKHx9tzT2zVguCbQu6OC+IHE8eGKTunAUknhA8ELM83T lNOZkpOaXfl1SdtygpQ0fcupnH0P9CbxRT10bCGnB4VsiNbMb5mwIaWkxzaimOsqJSVVVMp3 UTAIH7F8KjcjVNaTI6NOFo97Ne67KMAEaoRsgi1opft4+7q9ihl+zVWQ9l93ZD4BxPFvmDQk y3HX73Rdy8UwoyDykRbrDXsjIymQr3WeZFSK9kd/y0rsOr/aphNzIYYQhvV6Ro7sbDMPm0TE yVHIkI7KwdosPJHsZEdOzDVla92Dd0o4Ag/ppoy5nSzM1hZIHFYmov2wrnGl3tpW5F6Vpn7n 645BcQwcxr7iVTGVyfTrWihNIIg+nBiJLNSbn2iGJ39Omuxq9brWfYpvZb+YLNrne+TsH3yx BK1ZF6WJ8AQiGQgkmYCQcvLFkpXpjHb/EG04SND+QdTRCuvmQrg0Xt+yvgNM2o79AWY1cjxt lHm6hxN3kwjW1CRnQtpRznUQyE2mjgWUcSPIYkATHboRohnFBEOThohrF2oq54jpdZAphCJ6 6bRt5xr0vYZ4vEAQDARE4vnYR0k6HYzWYD/fBDJT8O1pH6QH1gmzQT6qlaoM7+7jvBSJtGWi ZiRZnWp4N6DmWpLGMJr4HO2fNVdyR2GsE7whLRWTnzMaBNGiNCCLJCyDU7wTVgTBLJO8hGO5 Tq+5vgNK1IxrhCtLUKZwVoCXbt+W4SN+SONLr9KS02rHJVJB0iX2XzLvFCqvaS9L34KmNBUh ik5Hux1IPraDOEbik4TVFiLq+qnVDaw1EbzUoF8g2wfjYSXol3QgiUOPHKsz3UuCYVdyyi43 7o6USfbodc3XBbN1qaFnkymYq0MzdXieLjFLh0adw+UWrCuAmq3gU8p0J1zPEOUqWP8g1VNp YN03v2XTh2mnPgTRGX+cpsPpF/Y1iuCTNmOhYW7UHUJiSygXiwe4YyZUNMR5sZ5tScpTCmPC tTHFcPMvFmY5CMgrNLVhlt+80OBuPm7uMqsRJALIcUJ4Dv2xfq5r7hRsaNZzG+mCiwcr6k53 S04h3CtJQZsWk8nc+kkCPWYpJfVYoXE8Q/bHxV6D3MZawxRIQMlOY0iWTIe7SClaadzAMMHk za8xM7TFy2WhGVnOOVuBzSq7wrtCbMpisKWzaWylTFZ4Zwl9N1gp0/UYC+gx6VQSJeT8InrP Tiq7tOpuaoHqrr2ZXK3JeS527BpGIhpiWn3LtdLJEgGFQCP09ydixDam8+AxKQWqHZe/LDqU LRFatzX1bI1eguPcBizjZAwEmUclVeQysXwqud+AbOjRFrkTvJoF808ABWVW23WdGSzl13r0 iMNX2e0z2p4yEXcqNzgBqMDVo7uNxzW/kATw8CT+jjFu45V5LWOItm3atGnRadP2C4ZSyC+W 7iMxFJ6sDILxZlQPzjJkJtOr05zsTHI0T83OZkiGj7O/yFxBEehRyqItP+9d4m3pQZbsk24B krRvRzLKujXZlRnTw1K8usveuU6tmQxtM9KPkV5X7+Q80KbnTfQ+SmVExoijopOqVvvuPk7i /6Vq2RysiazkJcFMOnzTmf1nePUTJ9FlVFdtHf+m6g/6Xk3t1BvJe44chkdJyHTlMJTUY80m PvYzYc6tQ81PcpgKXUFizRrwHvU3+uYWu1cSY1iub6m5tCPS9IaS8sTl4yw+ZDGq7dhKbEUJ VPoYkTkttcZyNhmQZDRFlg6L0r5AireKCZFrcDcBRK33RUuc8Jo+sY1WsBLOl0PuBOmAgGSg lQ+eStq6iHvT6nSJTGdqs25VzBKCkcvJDoH7eP1EvGXaTk8I6dCBc+vOouw1krxxF9O7j7lx rSrdHMKGNpllDrhM+sEex9AhMCLl8cpZEVXVbGIy/Z7oyWojgZqszWMP96QFQkHeld5krkiN KLBVczinAhL5jPnG+le0HmVUGsLc2xnK1VkYdzp256UmA2aVy3YKLWbQAalasVFKQbPe6hQm fSChi2E1olZ1IWoDkzczG8gkXVq5kghcz3nxfNYeUcLf18TZydA6NRuiUhhIhPUqpBBxtr7y 1m9UBJvEBV5sC+qQJx06n1I2jIaasUh/pM+AcPXUYT3VcstWxRNWcKR0xUun5Z9i4aEsuTM+ iX29M4V5Ol3RPJ5lG3ypMmjxUR+hZAgprXPxDrsgyw3Wu3E0rJmTXh7aD170FanbRDZcBzKy Hd+l4sZG6KOxNhZNVshoagYzzCQxGoWcXc9xSHh9nctLcfNoLY1L8yfrh0IbmeTWJGfDGnVq NufJkEBEs0vworW5CjUy5lbZeGrGWzpU15CiBo0SM9ww5OwzZrJuU6tJstZqQmASH7fH15Vr VLc2pARJ3vdn7SCCoeR80poilEyWxkdRmprvnVbA9zYvbG9avHjJovaypp7rn1jZ+Z8Ji0wV mmlDNKz8dFvgMsNrTfPGLKMEjFoqKxNWqJiu8W7oPE+iwYZMyMKSnKrLHrNyUTN3OT6UXPvI eIYNDh0n8JqTl75ujiP0tXZEtlIQZaKm67UrjiUaKUxsRKW8jtk5MG21nir1bGqkAZ0WcWN4 UxptWh0ZnnZZYa2I4wCDC1m5J9hOEJKkg0PqeDXQen4gOws+58/somx1F9S0U1u3P8yIOP1D thb0JGi3k+NHx9WQa9f5ri/gkA0GESO/KE12luuc+zQQS5qdY+SVmnwBxUNpmh1iEcl/siA9 tkvThgRhB0u0HJmMhwwfcMfZNpK0lq90JlwmWFtxP5K0mxzjCcc0RPseAQFtdCrJfdFRkhgV f9jVvjXL6XD7WCO7LF+fmBxjvpuVSqDuxojP9ovAN5e728xxCGu4BohLyX7NMurFZ4fTTRuh ku2ryFLc2YxMFN1hNkKGXLWRJoefdffJFPH5kcVas1PgAFfY3LhwBUEpLE3VbhyNOgf0IMnm /WQ9z4eoykJEnz3XLCjDunO+JLgTtjOytwYtPyXtUUtl4Oknox0nBiwVKfGsxURoZU88KDqU 0lFEkVFi8+JDa4St7qqxTxlNKi0eO/rStkX77nu0d6BedJ9Z/mbDOu7NXse9daU5Zx335vLS M1j+psObGpe0NwUzGYboEsxvTVYIKExkn32cRMrem7OOe43ruDd7Hfca1nFPahf/h5tETPGK FoxlTlme6Vouc8ry4C2SvfHGySS+TAlt8tBeE8sdIyAHR2pbp/LHKfrO7nl3M5kzeu2OTF5V NF7FOrV7yv4Ub6+I6/Pt9Il1Zm9Xia15zEDY00nleNuUST7Yss97yZnPId+JDS0trY2hcvMk SzZ1xp6K6HhKXLi6LlGzpDq2PmZsqYnyB37mMnKYBhuUx7JZpBa2l+JNvuHZX+8lK9i7x/71 QtsNWIOmTReJ0Zo25ZDZYV8NrimhLYG4pA+USWFb8L3l7ZkRncqBXk3BAxP6OKmaaVOnTp5G wrE2RIp1ZFYkQmoPYdIhBKVY20lES6fqrn6L9X34I8Yc188wjywFEB8AvOzG27xoIdyolV3T XlogzopPIq6SDuS2t2De0O57KUvmW2fJ7dVi8lobLJjS0pxMwNwUqx0lh+nhsvXeHrOnlxbE lwk3evB1MVPjvUNsE6d9NgY7ZMIbzHkS4GdDbhOcVQuesYpV68wTB46l7F5nnQEkxipkk6BW yNmOywIPpUFdtdOcYyjrfvFEcU80fjtc73MBEzF3rrbN4nqZ2zClUXwOSMvycQCk0kNvDBY7 8NDR2mB6JukB2EuptQ+15Q/emTalbr9p9MqkqVNnsrpbOO2sNioI6ddjOXsWl1nfIQaOxaxk Lrz5Ntj/HE/YYTTodGdu44KlYe0aOElDjI5t0WYRE2YK4ZnktbQ2zDHbJtgP4ryGBU28pW52 c2vbBG9uM53lwn7z+Kg33gxuyJ2xWOa95aHDwALPkqSZz6dn2Ww5ju3wOToPUPsqYu1arbcw E3RssboQZytWJmNujzSIMrBNCibFrmSx2aZZ9gx7RTFvxux7WtPTghuLM301Qmnm4kaaORCq C2/vrn6azLv6D+wih3s1fDvq7Zbt2G0Cr896Nbt29ZO1iZhO9meRZFfNbk10DCn76ONDJuhr 3h7+Uendop58AS8XPt1Iy9DeHv38FBKdqdPUYn49T5ykFozFa/YM+mxdXd3RUa8+Kmb2dfpV 5LmTduXXcMzoEmWHhZlkrd2gVbeFtFA0G7DnKvKonzGKA52S2WxY2t+otaiKadpqFVpBQlY7 SbXD+8vW3SB2/4ajHZR3DTVldYscpc7eEUOJWy1bkBc7I/A3+CwmOSmVtgr1ymQ2ILJnMp3n tQpjTWE9DKD82hMqP+uoZPgkWumMYkaV6fcDFhlldTpYmf7ldK+N6Vjr61ZBhzo5ULiKC9+8 eB/WXoX1yk0JimO6Dtow3xdo6Aw5kK4ocyZLpSwE59hOP/AAxVSNepr0YlO51r0ak529Ap5O zgLkJrEOJ7h9ZTue9HBqEceXxACfB5Hnebwrn0oNOpNsTNxa6ZNh1kkrCoot5zYbVwri5s6+ RaRUH0Jn/EJypRhlElqpm87mJqplng2tkGqOVzSZpUT/0DGVAetLj4u/YnEpWRsk73q35/2x 2kEAO93WlmwySTfOMXxgMqtLIUY7wR45vbvVd5we6yT6YoNiMZeSpXitbydNFx3rVstj26Xf 2qO+tDj3PLLG5wpwa4Rt8LVnJeYSKDPJznwqF8yAehcAbYQQAZ52Y2hfl5SUSd0vcViIXjDX VU6nafJOAd18pCYO1MziTNEcZCb7NMwrwdkeUi/UdcyOmaBBnSPL5bi9qHVr5tpCRW0tSbZF MYXxFg22XcXR1VO08ksV3AnClRDNg9ZH0/qETtGko52s6cWHzkBzZY+lCs/2bOEgdgJsp2D9 1AR6J+NkLZHrNMrHoPDWzZNxYRVM5LKJh2vOumrKhdRt0WCt0L5ghmSh3VlYUVfALQZTlNbA iOeBcB7Yyb3ulLytmmyhcOG/lFHoQmfoxfwfJWo8JdrW1HTI8ramdkpx4sQuYSNQnvlc+Gh9 dHpdVJgFuUdugpcvnJeN9WMU4PaU6cW325MYkbhXPy10b895s5e3g3WgO+Eb8xcub6HsF99p KXunbd7s4ovy+ZLfQIstb0PPL3GnodydOSDiy0t/vrVcvhbE/F586zCuPH0vMmq9MuyChXMX 19g8eiZPE9bDtLX3aLv4tDWCd/fvGdevfICkCJm81dIYmgZPCuVzWfPA8XcsbpYX9ZAoHApC n6174GCPpuvWj7qb9bpvGfSQ4xLmLXjHprUwIpmlbI9dd5dcR48s1yHL9sey3bFUbyzfGcv2 xbJdsXxPLNcR19UPrW2x7o/OfG/P+A0Z+8jsL55anEnMpY3Gws/Io7qrOF8oSJOVVLbjaf8q 3P/NKX25bCztB16jyn5eT+mFCiu709codUzOPOuc2u4dk9Ekj+qhOMEK8ps4XuWcAO31dD7k 6JamxW1sn6Jtq617aeuc0fqmE6ek5kDXQi9sluuL6gUtcQSnZyjeEUpOsIPpdxbbdFmH11aP oP2uinhilA5MQrLBspCzrRbkZ5YX8MhCJQqVpryEneHFxjZj0S0TbIHPS1645pVm8oFu1sOF uxmQ8yDCifPakARlkYMXdMRfj+OaNfArWuAyLuQoM/CIWVACo1vKho7QLnDGZgmkb7KhnUCE Kz5qeSlt00yMc0l/rsVOJYONtO63zTpVMi0si857X6zf9flKtJ5kkeAuejNtFYUkdR5t+pw7 d+6oxROXjhqFqo9oiYxu1Nsbh8mdSbiDp/A/keaDM4OkfuvFjcnmFQTmjsILbTw0G3uS/bjb ZO7O5QTxeuuCSIRt+1gnmgwRIOTPI8Ve6RO+sh4IQbfr9jdwhWFoVqGTDnOmulPH0hnNuHNM roNkfHMaumMKYVSnvHAWR6pxcSmARGrZ0jpWuG7gdbB8Y8wLnTLqE5nJyNBVxxW6Swl23dg7 xGPqvOglMK/G5O0AI1KfdJLNL204mIOqn2AYP60T0vePnlmcBLW0fXxFNtZnHpaOQaqkgrcO PLDwNc77cbqT1Lh8CmtNrWEaq2lYDc/ciFPkYEogBW0nO2AoVsdbNU2htW9B33F0TeFdfewt QHu7CafNKVpFDamlQ+vOYWODWKGr3U1qTatnESkutNYdFNUe52c2TvCo8AN3YuKiwu/PpI3g UzQqnOEgRlddSXk42IZMyfPo5MPQ+RPRDSm52ZQg86hZlRaLgn7rRNVmgOSmd92HN6kLb2QP johmKepo8HgvTzK8bUOUXDFfe1hjsoAoTeBFtK7Wm2Mbxs7qTNj1B4J2MwfyZtIyCowFZ2jt kJmFYKGRqU7eN06SOQtGQwE2ISXuiOQ8NbLa4iUfd82IdSCiPGD2Pe14RiPX1XxQPeYgXgbQ p+vGAvcMTNvQvlowPVsE0yDvXDeorT1WHpU+J2oHAqpaz3dkEGM6mRHJtZNX2VSjT+fhhnAP eEwlCk8yyRWeIq5PuhAb7SBPphn9jF0109rirmR3nskULdAMyo4UUmUxCTGmcKxSJmPP7kDp yMWXxpDDlOmGn5Ezy3g5l4lNyO6qNhJp7WXHIiV4RFnEkqPoOsLH4TjMWhHHl8xZPi/sKFLO NtcGLTx5y5mBhzE7SZoHft5qeBMxY7TOFsJohtygHI0S8g5t9MXJnPUhx3EzO7ImOO6wcuQh R38kONeNxxK9t684YtaJMEEnto3GI2dFviCsnP4Ej1V+zRyI5Ezj/Chr9plxZAv1ohSC5Q+j 0XLna7ZG4efXRdmjBRML1XnZuZssWEYFRhaGxEH0oNfIkEJ6PatvSk/dYgNTmuptQDpEbSfN lU2KbtqT6+pBHaW03EtqbPm4RIE1Os/vS8Mze7hWi5aPuCZ9w5iJvMNcunuURRcu8GYRnlSS ORF19DKPnDdqNiLFHMt1ZJBNaktO866UEEyx4a34dsINTF41vTWyirbpDQ6t0p489IKHect4 2OSxFihD3nVPospmoduszDusJguy/fZ0Y80rEJ9LzRJMMM7oNjaOsspqXBiRPbFZFHSGsKa3 MfGSL/599KypG1TvkeJxGEpPUy/ePM9MgTaP12yNk6OQG33ufIGxeNA+PTzrUtLsZqqbfAbk NDtvGJiAv6HlGfqqY5LK/Inz2TK8Cap8VKTsAA3GQOnRicG5vrFZOol3MTD1opjZWF2gE5TO lxARXL6tm8asq+uFXMxKzgiXo8ZaF9HWwyOs+/YiPUdr4IuLJVvHFl94UZm5XCPljgT53JVt VMZIn1iYAvfhYUsrPnSN3ugilab7LE1AYXOFdIFXcrS7Pso2Jwf2FS8x2g2AZsna7IZyvYaK fXE6wfbh9XUy+AY72J45zb6neENl8X7E4CM2uUL7iEw/bVM4wVoY0z7AZWbdxFAYERysJiSw zw12ntiTJbW3MF7UEnmDcksOkO0pbbwuk81Yy042mtA628RAwjceRKzNORvPkQdzui3nn/PJ 6vpYOyTpuGEJH7rIO+sDX/uaNeAMxYxaMEgp0FVHQyqdoACGgaVXzWoid8AErQommanWPKXJ Pm3how1hoSWsTIcYqms14sqcdacf7AjRdZUt0oFZfyySf5OHYEEyoY8wJaVQNp8IrbVyT+PV Z3LuxNq+tOPr1w94ULIuYBbH7IwmSyHxLBqc52VswcX7U+BSBGn1M/skHYzqyra2zqjzoNni K6rgIp0ZS81kJBByB0gvsfGRXn81tmBsjuzwj9oPumFTNZ9v3Vm5xyawMSYxAtFSJyIX7G6w ncHY9jGp45P7gg8Yh1ihuYesGYiGhRtFGwV0kJMCa6gQw0fIoJ0ekFEvHGs6OFZYDpkx5E3r 2KPc6IbRdCdQ1xbNurBMpGi3UoHJp6l+4/uCvIpo9wPZpKUypXRUvP3SLORa5jYamDca5ahd E5VqNbtg+jPG25md9om+Bwy60NJ+ml3BnRlPxdaCPmw3stRM/lowCdnL2nfEdLHITs+6krc5 CXzK29dIh5H3jTf6aGiDf6xUDbk+Bu1Za7qjFuy1oZpj91J8DjkbB/vGAiOWhVCVS8gRmGaD itR6kYlwbXAiGm8XMVYkrDBk0c6eTMTPGGPgguaW6g+XJmRrmPTFsas1m2BnmUWnVYkBDLod n8dt+LR1FQAEI2cmOdF6O3vOA7PfAV1j4otEjqIjpwjmE82rHZJm6IH1LtqREJpiRTNewLB9 mUvvO70t2CphXDHp1UZ9mGrcPUJHmtocGF/gTV1/QUojn2HJnju+nh9lQcY9nylj/TyQENOd FUk7k8pkwxuWdH2YE+6MSB84CggX3w6PEgPKcaUjW4pYsOqwZ2wHG0/1XikyEs3GBtJyiLcs 5BEfHZV1WEMEZT6xWnNpGlk/sty9JyTebM6NWWVuhjg6u/lE+zFtlVmWXYEUkihmqfSh1lbR HzBwGUfNYywOrShg8kPzW9rxWXFWLpvs7k5kVwfFqGWjR2JDTIkMqS0502lKYEiAHk/6fHu7 m8msX7FuiOfXhFfMKFjnHh5xy3JaNFrXKvGS7ooXt4TlqOVIAGeNh+UlZugKiGd4F6v+otU8 JfXhZ+a8JHPEB3v60GyXsHN6UVafz4vpuzNpXIXQQkhx7t1NB8LPmT7BfVRc0dDJYVQ5JcwJ RfHIVIj1lE6d2uVSXz9GC6Q0DJ0JTLSSGVlsorTNUYJ6yqFua3Mr/tuZZRkMdt3qCcayyWRB ldSKSbGmCJbyCr9gbLrY6Uw9s710fv2AVGepziCHtxkXWFZjFWz800J8aG94WOw3NqdRa3Qq NeUSi1JWm2a3hCUxZvyEdmaAhyNOAC8v52Q3Xu1FrxKBs/LzBKvzkiSX68ookmVHkQvgdSjI ThYDe2k3ruGwvMudPPDPjNrhs15dGUJXFR+oEGwSXVq0byScMO8o5noRDcZAJqSCMtQnpIGi 6jIELbyKIrqtki9xbdr1TsqlLDXopuKcGtVbuSz6GbvZEoSZ9WV0zktnNmOMODoz/clEPOC5 bJWJ2xTj/EY83Jo5nChJ2C23PtFHq1/16A8RFOEUY0ntEPzddq+I5dasIkmWJ5yzGazsINXB fKCWTFgqj+rTa2P2NanhWOj0K+NMyk5l2pCSupKdnWSTuLyuKytea7cmBXuD+KRevY+WqEsM 9wasQtPa0PCg0XRFW3NJxB7Cu2HUVBScMb23tN6dtonzCS9phbqXHDDkbOBxTVLEg5/QKCMu iMdnh2aGqGWuuFzW3WdMDjhiMpbskiUTPQcViz7Wyj6Zc+SOAlnDPZndinbGcENPXGExWHd3 ZwZjpgb8Qh9z5OZYvy5emOhP5JLs/5M8tfrGcjesLaj1lojoXJSGfMWy9e7B4sxFsjGNdSzN yifW0vFretOf2Qxldkp1olXoVCEeDI5Yz4JWTMu/ooqS7WcDQgxX02HlSXHerc84kfRYAmDl Umc25vcE1aRzJFuuVmeZcTefJ99DhaUlwhSjoTGYMVp00JyEtVo05ydFrRaDtMjsUE/fYdmq OGEr7zWlk919Ma853VmLGbDD82W5iEeK1u8EB6QHmqfuTC6cA96S6R4o09a6ZOEc3hHFxjER sXih+juMLZiIvbJazmQ6ziTF0fQcxjqKgh1UZc6nNHvYzAl0xjRqFuTM1b4+WDQVGzQqLrb4 tqSv/TDydXm6rDXyFhjy4AKBxtSR44eBVvV5659zeAXXT3eMO4G2leMiIseHGYszR0DWLp/M 1k+x1SKV+2HGskv7NzDLDo7rPzkiTZ+tFZyaWHgmcK23LMGr1ynDgadYoTYffYf3bkTLtr1Q PT40h8i7SZG7UbAQwhVoBJ0Yr+qIlZBmvwuKYvcP8wJiP+9p0II69yjxCqLtvuypCeEjUKfS 8USNLUvamulIoia7I1n8DyLFQSYorFqQc+QG9AH1IptnEyC+xtaDhXE9ovRpDHSsROANySr4 guM1mq33h6gcj9HNQT71kc4qi4pXAL7o9I4S2mLrXIcPGC/U9WtHIdpJjpHFQk/5enE+n411 DoZP3TBaYyfztpZyjjcfY9XKLcnHIFvF90Av1RTNKkxdBzJZP3F6WJ4UGZl84pujXlKDoVNN +JDXwGWL5KYL7Znzxf9QTLMz2hOMnsNqg81p1pOgLbkpF9MOI/HHgkyFtHT2TAOez2heMR5i 6HR0coanN83iMi9pBF6beHGDz82R1QfSl9TX1eGdfYsXNLTwwPYhTOh5z31W5HRaF+DD0Z21 FOuohuUi0u/ojmKVl2nTb83uH90j5Cz3gu7C38v3s1aFK8AXJ4bUrn6hdSbZmUv1xAK9nFkl pJrtAqPn94R7frR45wmvHSb12lf4i6GEl5pd7GQ5JeRbDwOz65W6kIyhjkSK/Xj0Jez3wqsW nAavggUaqECxMNAz6O6m5a5pCRO9vNKsX9K+Sn0mzGqmHXJmFG1Xiq2wxyAXn1+sz7wgBljO iuLSdyVXyCCicWusn+Rw9H27sskEyOGgLEt0sUlXYX/W1EfvbCMeUcaD2Q8QNRMXG5msSCYG QpMYzwksxGQHNW2j5wNftYPBcYx6McGlacvChxa6baxzRB17QC8SmO3kiURK77MPVFJWi1d6 ju1NDOoNdb4x0+Z1piBVrZ5lUqRbgHgamQ1IweLQabF94BxaNXYmq2lZLM5L2Kv94FwdO3PG M7IeVLwSxi/E2F8hUalYh90NaTLodDdLGzsSOab8KfxrCk5Nb7WYulZ85ygkOshUW5U5HVY7 purWZxdrHS6GbDdbRnONynYNP2Sn75stnBmzepEKJmZ3LC4U0/TQSqhUdtprW9jUpk8f0+ed Z3o124S7DeiKSbnt2p2bOYWpj3YfqOd0tu4jwcFhOOwSm+xKCDGP9lxP4y7puAxZRg5ahU4w kYGDjdd6i4SFYCmok+wyDAeoCY3ZPq1nAeRkmtewqLWldd6yiON3udkYGeuzrGL9mVSmW8uE wvgX9DztOw9cqm1vWwhpESGhwpQtEGmJbBpqvRb6iDB/IkvRZsNgJzRoSgrTXvNqMIX5PrKm JvbJ4TB7ybqXyih8EQkj2ijAPe2dVhHt+p+Yy7l5ZL7fWF3qvaWkcWa9ZBumcq1ITGNchd5E Fe5HHFh7Q6N2t+LNbV2MKwsWNC1sn3jokqY2OhWtjVizWDI1w9vKm79sUdPiluaFh9AcnMpl ZoDmEt82PXtQTyZH12ox2ryKrUte3ybSLEblZDrYEWzVncFzYUnWFdWS56nNJhhpXtzI4lga JOuj1GvjiRX0hF4ObfD7ewZXJmM0oO1LtZGFidyCREL4C7/0Q1QdbYuaGpsbWrz2+Q0LD0HJ 58TSSXxnNirM92pKVEC8g26hlKhtKXrBlW0meOfJNG58MPRZedqotAsPeTGK+GbNerHC3RyW 4fDsbDNC5Eq2si0TARSkllzceN35QZ6PaEhkaT7K+dECzbT5jFb3xgb5KT4nQFhqkUI1meB7 QqhJmmCXY9rDbSzdS7Pl4kQ60U12EFJkMFZc4/n+YNpg/ohdYhB31sy9Wyvfhdtjp6/agTat Z1Bbd5Nzbtpw0GZdJBgX89xN+jI8zTMBJzuYRJYfj0QatKi/rvHuUi0Z8PYohfCAR6lkPMkq HRoiTnWhOaxgUWmqWN0dnAf1F0LRlukzWyuQ+T5eQWC1PUvdpBNkC1jmC02Ws3rbdKFiALlY iJfE8FRWAMwOHPZESk2hE+8hxYKlodoumqi3PiBRRiI/ZSUZhwDHRClDSkNjgshbf/STVB7j p5sJciSihn5Dv6Hf0G9DfsOU2guoAfYGDgDmAu3A0cD04UrNBjqAXmAFcCLwCeDTwCXA5cC3 geuB24AfA3cC9wK/AB4CHgGeBv4KvAVUjlBqC8ADXgXurFbqJ8CDwFPAr4D9QMmmA4cCvwWe AZ4Ffg/8E/gXsNlYpSLAR4HdgaO3VOoY4GTg48AfgOe3VeoFoGI7fBe4EDhrB/wLXA1cA+y7 i1J1QDfwzK74DjBqN6QPjAZqgAnA4cAy4AzgTEC9/aZ67c01Zf9Tb6q3//ri2399/m3Ff17D JY68+Kz+89fn1dPq0acfehr/3KPGVI78RNVxf0PCI0ZWLBlZMazuYJRArip7dZREEKqeOvIT jQdvr6rw72bAx/auoKgaIWEl98cre288mtz83V61Uvtvqdt/gtMHDgSadF84Bjge+BRwHnA9 cAfwOrAj2nIKMB9YBvQBJwOfAS4ErgRuAH4PvO32u3+7kdfLRv7pRl7bsMhLbuTPZSMvbcI7 5SMvuJFnNyyyKe88Gx6+qNbN9qwaPbdSQpU2VGFDikKqAg9XVKgqpap2r1AVGCoVY9B8/4n2 fxtt/fo/XnnpT88+dt9dt37nsvO/dPpgX+zwlnWRpW1HnPXO2rXVVSMr1aiKzSjzo59fu3at Gjfi0uD66H/g0rYjvkVXKp0nv0pPbjvih04KlXT9Z3L94cKUn5aUn3NS/isujRvxzyDl0S/y t8bib3WFvFtF754kaU5yrvO3vibXk851/tbj8q3B4ProFxAeM+Ic/A3eHzPichuv4Pq4pUxK 9zkp/RHhzUY8b95Uw0dQ2sNH/I3//p3+VuKqqqocC6D9t3fH5zvD6btCk/cDmoBFQBY4H7gB uBd4TtPs4aDRuwL1wGt//PVDP7vtusvP+8wJqWMWzZs5UbfiHWuDtuF6uUPq5TdrC9rsN1Ka l4Lroym8UyV6ccWI+W8XFP5jwb3Y20FSw+leOrg34NwbRvdWBffOdu5xU14c3Lv57YJs3x3c +9XbBVn/A/UMufdCcG/0K1xSuf5qkP/Rf6LrW8v1zd4xjUw5QPl3cvrgS9zjou8UZGW81OA8 pxdz0b4s1wec61ysn8v1VYWj4Unq4u+23Q8FjgPywMnApcD1wHeBG4DvATcCNwFvugP8H24k dGeNG/mLG3nxPY38pWx2NjDyu3cbeebdRoiqO9S+0s4AlaFrqsT8wHOG2nFj2/D7wM3ALcAP gFuB24AfAj8Cbgd+DNxRHfB0dwF3Az8FfgbcA9wL/Bz4BXAfcD/wgOb/iJbcdfON3/3Otd+8 8rKLv/rl888560uf/8zpnzzlpMEVfn/fcd3x2DE8943YmunaNvx3W/67Hf/dnv/uwH935L87 8d/x/Pcj/Hdn/rsL//X47678dzf++1H+uzv/3YP/7sl/9+K/Nfx3Av/dm//uw3+j/Hdf/lvL fyfy3zr+W8/j+SCHjo+gcfjxd3h8JpzrTMYuk+t9znUe59fI9ZWFM9FNcv2swpnoQbl+/doC ckcXdv9PtelDwMPAI9UFfOBQZNMir29YpPBn6IHQDjW+sG1I7noamDpaqWmEiMhhJIMtBi4E bgF+4chjRhb79xaQ7YBRY0UuMzLZUVuKXObKZGor3AcagNnAm6/9/Y8vPPfMr5969KH77/7B d6698rKvXXjOGV/47KpTBlcc39t55OEm/zyGx4yYQTzO2IBbOtrGqVibjVhh4mpk5Tg14hma A4ePeJb4I5l5738ZV/jeqn+b0G1v81M/fJtG6xNv09SMq0++be4//44JvWBDf5KU/xykfPA/ +QpxkHqWX44rIyMms2buP95epSxDxuOrZ5mrhnd7MUj5VUn5ojfp+kVv0d+v8t9/8ZOvB08e jstKh5c54SOc8JEI7/qfbPM3N6H/lo9sYGp/3bDIBia9KZLh65uQ2gbmoMyvYpzaXI/ziBqz avqwyE+rK3oqKqYPG8EcQ0ADdiw1FvfbVqnpwO+3Fd2Jqze5C3gWeBtYur1Snwe+AJy5g+hU VgNnA+cA5wLnOTqWV908lo+8/P5FQlL+799t5OUPPGJ+m2s5f1xRa49jOm/ujy28v+P72d7/ Bg7ZUamdd1IqPR597CPIPhDdRfRtPUASOM5Tqhc4f1elLgDeeuOfr6752x+f+9UjP7/z9ttu oQJ+//vqe9++8mvnnXH6qSeuOD7V3eGWXqj0m4YiV71lQsNsaLil4SNsqMGGZlNoSwqdTPLY NpYmR+jaIWv1tTGVVRg7I7cyHJQbryyI8ywUxPEvhSsrSCa//3Wi1g+/QX8feYNmsxHI/Mhx hsMbM+JYG+fvjDjZxmW2u9DGZba7y8SlPEf+m+eJo/5NXxjkvyfw3z14ttjzLcMRq93fTTuR nnTv3ZTaR+tFfwj8CHgR8D+qVA7Yb3f0LeA3uxfwL5vS3V8oG/n9/89IiOKPkzG+TcEY37xK rm9VRBvQt3bclHb8LdCwB+YK4GbgFuBZ4HfAtD3xLPDzvcEvAH8C/gxcuw/kCuCnwJPAL4FX gFeBf//z5b/+4bnf/PLRB+696/Yf3HjdNVdectH5q7/4mdM+PtDXecyydjvGT1pjRux5NnT+ GjN2v4HQyG0tl8XXbrDXgvF8p7km3J/lA0+3octs6HIb2u+fJjTdhr5oQ1+yoRtt6CYbiv7L hPa1oTNt6Cwbmva6/ZoNvWlD/7Sh094woWts6Hob2tZSwkYbmmNDZ9jQEwh5tIZxFnArcJtu 8z8A9WjzScBk4Hgg+1Fp59t0O7+g25ra+AHdztSmv9Ht+mYUnXJf0BSgoU6pZuBq4HrgbmCb aUpNAP68H8Y4UDEd4f0xQwP/Bh6dAb4UeA04/wClvgZcC9w0C/0T+Dlw5UFK7dSAf4FvAjcB fwEOmq3UF4F9G5U6AjhkDvhY4DTgmYNRRqDyEMxjLSgPcDtpohcotWqhUp8FvgzMbcUloAdY uxj325TaDsijN64ETgduWYJxAtwL7LUU5QHagCXA1GVKzQCOAg5djvr4Fy0FvUT//OVPf/mT sv/znxeVe4mvmv8k/nv8V/DI7/Af/lFV8/euGNZIq0T4C86bVoLM6o+sG21RGV5NClaP1LL3 Yzy/EZX2p7bfBfimbvufAj+r+28VuDdwjvqQ5VrZeWHbUrzh+A1pr+MmYd4HpkxGvwb+OBX9 APgz8DdgDfAy8ArwKvAa8A/gn8C/gNeBN4A3gX8DbwFvTy2i+9++6rKLzv3Sp08dzPbGjz6s lfMOOlVVMXyzEVlIwUHMD8VyoVg+FFsRig2EYitDscFQ7IRQ7MRQ7KRQ7GSKVVdVjPg4Avbq J0LPrHrRzjE29Ckb2v9PJjTDhqr+bHlYG7rqLyb0DRu6y4butqHWl0xokQ3lbChvQydiHtz5 /Wzfd4C1gJr2AWnCfjvHiTyt/usj9lc1Tm27e4UC345/ttu9ovK8lBr+xPbDwOSUwsgnRqrK c9Y+Oza6mxo2jhaA6W0a/zsUtlMFUAlUAdXASGAUsDkQAbYAxgFbT5M5fFtgO2B7YAdgR2An YDzwEWBnYBfAA3YFdgPeeOUvzz/79GMP3Xvnj75/3Tev+Nr5Z372kyfm+rqWH37owaFRvyA0 ihaGYq2h2KJQ7NBQbHEo1haKtYdiS0Kxw0KxpaHY4aHYMkMDjnBpwNGhZ44NxWLmjQ73jUTo mS7zTLf7TK+lGylzv8+9nw6lkQnF+kOx4xEbv7Ft/pbbDX/hRu51I3e5kWu2LncnFFnlbdBj d70vZlB7bfBQGi9D6YHd3NfXkjCN36gnhqld1YVq+w1ODvPwOWsfKBiX9Rv8+u5q7Dlrf1jx YtWYEdNHxjb73OY3bPHrscO3qt1m6Xan7vDNnR75yL932X23UU+MRa5C/2kKMvrdjOOPArsD ewB7AnsB97WU6xL/05H38CctM3mDe8AkVUX9cdEO0iPXFvwKe6j0Ulp4pH66Vbl2rNHy2faQ zXYAvgL8aT+R1yohq1UBf9pfZDaS194CHpkhchvJbP8AzjtAZDeS274F3DhL5LdfAPcBVxwk MhzNB7956rEHf373j2+96fprr7r0qxec/aXPrjrlhHx/b1fsqKUFmr57nzYU8NJfW4ndhm62 oVts6I5nTOhOG3rShn5pQ4O/M6ETbOgrNnSRDWWfMyHfhlbZ0Ok21Pu8pdU2tMqGTrehR21o yQsmdJgNNVmKP9dQ/HkuxZ8fourNodjBodghoVgLYt770dbfdrvztf8/I0TFD93gMbxIbUlj +O/j3tpys62332bPbadsN3v7RTscs2NqpxPGf+Yj5+18+S7f9X6868aM8N15hIf/u7Dov63X NzbHN+Ce1q38FfgbMGu26Fi+BJwBRBtF13IkcBRw8BzRuZC+ZRXQOVepOPAMMHfe0PL9f1I3 Ecj/25WU/9+vNr4UaJ6vVFuzUs83i96NdG5VwOdbSup8v3zmp07K9hyzrL01TO97H7ZU1IbO eNhofT/3yNq1I7czxjRybadHzbXh9toej5lrw+y1++y1Knut5nFzLdAin2GvBVrkzZ7Q1zg/ o58wOfvzkyb0Fxv66C9NaHcb2vIpE9rKhhpsaLYNPWNDz9pQ7a9MaKINfcKGPmlDN9vQLTa0 2M6e9yD0kQ1pK9KTngGsBs4FLgC+AnwNuAS4HLgKuBr4FnAdcANwE3CL1rFu4Nrve7sq/Pf/ scgmcZLu2lARDdjhvWrfH2o9+k+AnwG/AB4EHgWeBJ4GnqFx/9rfXnzmlw///Ce33fjtqy6+ cPXnPx0S/VVI/j/7QZdfOT8U+0oo9vVQ7LJQ7KpQ7JpQ7DsP2vWTBzVv9d0HHd7qxtDTN4di t4ZiPwrF7gjF7grFfhaK/TwUuz8UeygUezQUeyIUeyoU+3Uo9kwo9pwt8e8R2mlj2u73wB+A vwAv0ZgG/kVtCqzVaygVwGkLZS3lK8BFwJNup3zcjTzyPxYpX9JNiRSP441QU2yQYkBt/27a talV1smSwHHAO4tlrWz7NsgRwN1Arl3WzD4F3LxE1sx+DvwCuOMwLfs98eA9BQu/g7nMcYlj jzxMFdl5XPZTuzZrQzfa0E029MefmdAbNvSmDX3zHitx3WslLhvK2FC/DQ2739qS2FCNDU2w oUds6FEb+rMN/cWG+uw4TBvKk3Epjx8atQOh2Imh2Cmh2Gmh2KdDsc+HYmcgtst71Y53AvcB 9wO/Af562P9bY9xnTt0ky9xN+m2knrFI/79tubb7G/AS8DLwKvAP4F80XoF/U9sCa4GKpaBP wHCgGhgFjAYiwBbAGGBHYCdgT2DiUuIB1vzpud8++dC9d976vW9d+fULzvrcaSfl08cljjmi raWIB5h/d0h7f7ceK+13O2Nl+d1mLB1r7sfc+52hNBKhWHcolgzFekOxvlAsE4odH4r5oVg+ FBsIxQZDsRNDsZNDsVNCsU+Ycn7SLedZoWcuMc9c6j5zra2rbyE0/r1u6xdWOb3zOfW/Fbne jXxnQ8bnf1KXvymrgVuVGp91wCRgCjANmA7MAA4APgYcBMwG5gBzgfnAwUALsBBYtLTAgPl3 7eVMm0ORn63a+AWg/5rIhslqm9KG72YO2Oa9au9DgcXAkcBxQC+QBo4HcsAAcMLSMvJff7Lj yPYFhTbNhmL96y6Xqr0Zir0diqkQ/asy9G+YS/+2Cj0z3lLDj5ind3af9kJP7xaK7R6K7RmK 1YRie4di0VCsNhSrC8UmhWJTQrFpodj0UGxGKHZAKPYxU85ZFNhpY9ruZOBU4DTgU8BngS8A ZwCrgZ+W7fy3l41c4T53qfovibw/1hj7v9czhVe0ArBDwX9bbki7ngtcAHwFuAj4KtGKZWLj eDRwDPDwURCFgbFHQzYAfgBccoxSVwPXAN8HfgI8CDwNbL4cdGN5IP/d8YMbvnP1FRd/5byz vvDpT5680k8n48uPWLJIxmbHD80oPduGvm5D19jQ923oJzZ0lw3db0Pf+5GVHG3omNvtOp8N fdWGxv7EhMbZ0P42NMOGHr7LyoF36XH26F0OPXkiRK+eCsV+HYo9E4o9F4q9EIr9MRT7Syj2 91Ds5VDsNcR2eb/bN2QvUj7yi/83lgLrtyF4f3jGgpU/TbO2ozYi++STgJOBLx6r1HnA+cA3 gKuB24C3gLExpT4K1AOTgSnAScDJwBeALwJ3AHcCawHVgfvAycCXgDOAM4G3gLeBSCfkBmBB 57r2AGhVULEm6NhbzFiL2dDxNpS1od/a0DM29KwNvWxDr9hQ+gdWE2RD19rQt2zodzb0nA29 bEOv2NCMW01opg0daEOH2NAxNpS1oe/a0F029FMbetKGfmlDv7Ohl2+zebGhj1gquDNCu35g 7T+0avtBGYQ7dEZ9hNr+MN32K+JKnQhcANSvhCwALAQmnKZULdAMjD9dqZ2B8Z9XahegHhj3 BZArYG/gc2einYEbgWe/rtQLwD+Bm69T6ofAb4HL71bqKuAOoPIe8E/AGKDhIcgZwCHAqoeV Oh24GvgucAPwNPBr4DfAK8CrwNmPKHUOcDlwA/A94AngSeCXwB+APwJPP4b3gMceR/97M/j/ 9VCs4P9X1V9e/eOrEnqWQu+9Au/d/mSHxxHDSvkLO6Wq2F8Y7RZxdogcUIoWLwSWAUcA+bj0 C+oTFwJvdENoBw7ogWwItAD9wMnA54HrgB8CdwI/A+4DHgAeBB4C9kRG9jpuaCh+WMb/f6q9 vwJcBNwM/AB4HPgV8Bvg2eM2af4/63ozk51jQxfa0Pds6CYbesSGHrWhed81ofk29LUbrJRh Qxfb0KU2dJUNXWtD19vQj2zo9zb0sg29Y0O7fc+E6mxokg3lbChvQ49/3+7hs6HXbegNG9ra cjTb2JBnQ7sitOuGtM0/gK16laoDUsDHgVOAbwE/AO4BngL+DrwObJtSqg1IAGcDlwDfBX4G PJwaGoYfzHAvOf7Hvx/t+yvgeeCPQFUfJBVgN2B3YA/gceAJ4BXgVeD49CaN/xO/bXrySTZ0 gQ1daEPN3zGhg22oxYaOs6FeG/qUDX3Ohs6xoa/a0FU2dJsN3W9DT9vQqOtMaCcbOtyGVtjQ qTZ0rg1daUPfs6E7bOglG1pjQ5WWtn3Mho60oUEb+hJCu25qe2WBp4FfA/8E3gTeAt4GFmQw pwAx4GTg48DUfvCTwKHAG25T/mso8n5GSoz54eQl5KHKcYAa/27b8nPABcCFwF3AA8BTwIvA 68BaQB0P+RD4InAJcCnFfcSBa4Fv+Zs0/u/8hpV4beg5G7rvajsibeh3NvScDaWvsbK+Da2w oc/Y0Lk2dLENXW1Dj9vQEzb0vA195FrrO8CG9rehNTb0sg1FvmXnaxva1YaOt6GsDeVsaKUN rbahs23oLRt6G6Fd38s2vBeoymEuAWYBhwBHAH1AHlgBTM4XuP79R1mLz39vWOQfG/bYqx94 5APJTplxXzVOyfjfmHabAnwG6FqhVDdwKXAZ8BjwOFC3UvQGC7TeQA3iw8CUE0AzgJ8DvwBe BV4D7j0R14DDTt6k8X/5xaYnX2FDJ1xidzfb0GU2dLkN7X+p1c3ZUN9llibYkHe5HX02dKAN fcyGLrzChL5sQ7+woftsqPpKExppQy/a0IyrrJ7Qhl63oTdsqMJSua1t6KM2NNGGjrShXhu6 wobuQGjX97tdlwI/Ae4CngWeA94+eYg3/7DI/+tqo8qPg2gAI4HxwC6AB8wEDgCOAI4Cjga2 PAX0A5gI1AOTgBuBm4CHgIeB8z+BeQaoOU10ivO1TvGuVZs0/ve40PTkPW2oyYbm2tATX7ba chv66kVW1rehm23oFhs64Kt21NvQLBs60oaOsqFxX7M7PGxoaxuaZEOTbWihDbXa0GIb6rKh pA2lbOh4G/qCDX3Jhq62oWtsaLuvm9D2CO36n27nu4HLTx8aih+W8e+2yevA7E8p9XXgYuCX wFNAzaeVegnY4TNKfRO4C/gN8DrwBrDPZ5WKAvsB+wMLgEVAH/BZ4ArgDuA3wBvAm8Cun4OM CXwMOAJYAawGvg38AngAeB7Y9vP4LrDT52XNgdYbxn5B1hwm6DWH7b6o1PbAROBwYNkXiZ68 9MLTTzx83923Xn/VV8/+7Kc36KeqMC54x9dZZ69dO3LH8K6yq+21YFfZ3fZasKtsyTnmWrCr 7BR7LdhVNvdccy3YVXauuSZezs41Y/UBG3rwXLPzLXoent0hnOYKey1I8+fmmli+n2+pA0JT P4h2L28BuCkeYt9H5vn1//6I/Ibr/V878qg3sR0wpN7vcVj3JTwLXHGGUlcCPwR+dMYQKf6w 0P91tdFTwK+Al4A1wAlnKnUi8NkzZZ2X1nhvAr5+FugGcAtwK/BT4GfAM8BfgPGrIVcCrcBi oA04ATgR+AxwNnAucB5QdzbyAhwMtAALgPHnIKPAXkANMAs4GMgD5wEXA5cClwHnnotrwD0X Qg4BngOeB14C1gAjv6zU1kAT0AOsBE4ETgLOB24EHgPWAKO+otRHgQOBxUAf8GngEuA24HHg ZeAVYOJFyDtwIDAfOBg4BKj9Ku4BzUA38Engy8ANwH3As8CbwFZfAy0F3t7w35tvb9pPDQf1 j1TQXKc6P6h2HhqKH47x/0GNuQ9ZrbyxCXf+W9vf6P64/T8o+jc0FD8c439dc9Fc4BhgEDgB uPTrGO/AM18X2y6y6/oXcMvFSv0A6L9UqeOBzwGXAz8EngZeAV4FRl2u1GbAjMuHmuLD0v7v dzsfAJwC3Ai8ALwK/AP4J/DkFZA1gZFX4nlgNKCuQsaARmAlcBXwDeDZbyj1O2DLb6J/Atte DXkDuOUa5An4J/A6MOZa3Af2BfYDZgCHAu1AHjgF+CRwL/Bz4FHgceAJoOrbSg0DDgJmA43A Rd9R6qvADcBNwAPAk8BTwEvAy8C465TaERgPdACdwLXAt4Abge9fJ/aPZPv4DPCFG5T6InDp jahnYOubldoG+NytG8D/bSrXV4b/+6DaaGgofjjG/wc1Xoaa4j3gTd8D/u+9pF2fB67/kVLf Bf4GvARU3w4eEJgCLAQWAYfePtSwH5bxv7HtNvYOjF+gBVgItAKvAq8BJ/9EqY8Dl90tNv5k 338nUHGP2PmTjf9Y4G/A34E/3avUn4G1P1e8A+yK+5S6ErjpQfQ74KCHZE8A7QdoARYApz0s ewNoX8A1wGvA5o8oNR1IA6sfkT0BtB/gCuDRRyHPAPHHlEoA2z2u1PbAw8AjwKOPy56AdzfJ brjR5Yfh58z/DR9Umw4NxQ/H+P+Pja+hql9HpLzZ2vtEVyp0++/gqYmLPbXLdQ9N9K579sBd rxtZvRvw0TMvHr47sMd1auj3P/37GzDn3Sby0L1/HnzjBw+M+8In1dXqkG+OpvXo7YCdgR6V w3/9aoaaiP8G+L9aFVcJlVIZlVVJhGpVJ8J9uB9Xx6luPN2PMATKgnQPeJfp7VrxPhZ2n7KZ G0CWOtS+ykfmcgj7OoO1Kq968VxaxXCNsptEmIqyEvcorT4UqrgaDnvfvnT8+1lBs4qyLa3U h8ylOcODyEwHt2IKGaUMBi1JT/nIcJ5j4acm4k5GdSGFAVzJ4qmJql01qkmqTtUjjROQen+J ivz4B56jp9/P4bct0I4CJlQTZzalpiMrB+FKhls8hkykbIGKq2cGrpmncnhmxkal9pP3s2hj gbiu8yTqWrLR54z94uLUFhVnfSkM/YZ+Q7+h39Bv6Df0G/oN/YZ+/2O/LdVWajNVoY5UY1Sl vra7Uge9vLaS/lUj1EJmkYlxJgmRnhmm+uaPGjZNVRxUgfg0XBml5oNxjoGhJrmyW3nkwUyN RLojdq84aE98QdzNNB48HlJDJb83veR7k3CVcoL32EZ5M3XQnhX4Ir1Zp6r4zbqSb07mL1bJ Fyvpje1DJT1ANRz0ytpL1AEsGc3B2114P8/CgKcWsZgWQ0r0tx/CgKfmouRp3HV/e6uPIQ+v 4F+lhkMeIiExhbQoNoZ8OapqKmvjwTVKRdXBlN+KKOesDd/qwNPuG2P5DSnd3mo2nt6yYm8u 3Wx8Ow7x08M3SErPcd2PU1KuGrXkoEvVrhU1uiYGkeMEi59UG73cbqju2XtXGmXfYw8HB0RV hI6KMk+UVhIOM5GRwRuUFq4fRfcppfH0nLd2rU4FIelJdK3KXhtmrw2310bYa9X22kh7bZS9 tpm9Ntpe29xei9hrW9hrY+y1sfbaOHttS3ttK3tta3ttG3ttW3ttO3tte3ttB3ttR3ttJ3tt vK3H4aiEB4HdkdHzkHhuF6XOQtNNQGe/b6ZSbU1K3d0KoXaZUmceo9ReXUplj1PqkH6lHl+p 1PxTlFrxKaVu+oJSM1fj+gVKXfJ1jJNvKPXMtUod/AOlYhC3r75f2kap8dx6m3OfmY5mqVJb c1v+hHtdD/ePl/C3Wj3FffMs7kfk0Xoz9U38Hc1jfXPudRH0KaW2UGN4ZH6ChW9q6XH8lS3V n/B3K/VFlG9r9XuEt+H0t+Wes536FrrC9hhVSu2gLsbfHfldXUt4hM6fJx9ktEZAIvcJwNn6 3u/RUW5Cx3gE+AOa7BpUOJ1XTmcWK30eKZ1fR2eY0TlGdJYJnWdAPs3HaL/E5N+S/VB2iB8i 8ndBe95p3yvtfaP9L7QHguygyRaW7CHJJo7sYsg2gtbHaY2M1kkoj2nFW+GVDyAJtQKgLbEn AkhOoanUqcAngdMAJK8+DXwW+DyAJlRfAs4E8Dl1DnAegCZV+LS6CPgaQHV1CXAZgKyoKwAy vUGTcwtdreTAuW/puroSdVWPenoQmI1OfcGuchY7ne9LZzzSOV+f1+e4kM//idqnL9UN+YAi PzDkC4L2g9OeUNoXRnsDyD6M1oip7Bl8ipRWWYB6xoDircDqJIBUadQ3yIU3uqr6DIBqVUhC oWq5h50LnA9cCHwFQDUrdGN2rXsVcA3wzEfQB3dWqgY4HDgTuBV4EZiEcXM88F30818DrwA3 PKDUk8AfHpC+v9XhW6/d5tRyf9GH11zAXW/EGhrHlSPNjKaXRHh8oHZUxZrD8e8kVb2GZsGq YWv/8NufTT1tn8Hrb0qOHt1+xIq16lhNngwtDZ698/69dgSV32azzFHfOHrSjxatVQcXPHuQ 2vnlsRznq+rUU08ltx1jaepbs5qH2Mg1Iw0JHkYDr2pNHQ/AYWtq+PqoNWNLkOxKtRm/RyUa rp+fzcNUrlcM47GMyWj0GtLO315B3/oFU26i3yPVsCrK66yqChnka4Y5Ewj9mlDRLcDDiD/+ MJGQ8YCQ7+BatRKCurlazJNsnP+mMZ218KTarfZQjWqGOkot4EluDq52siY1wVOujzuNqhXM Rxv+tqgmPNOEZ5cg3IApsZnvkd6f3iv/lRn6K0vxxkJ8pRWhNsTbObVFCDXgDdIGLsaXSe+3 gidSypOP1CjmsSbX26D8kHo9PpSfofz8P8nPf2YU/y/Tiu3VToeNVhe8duz8tWMK/1OqI1q7 GWj9MMPPusz5P2pPHz2mzL0n5+2/w3PLj728OM0Kdevc43col+aS6u/tVO7eM3137Vzu3oWR WbuVu/fZ0a9/tNy9RPvZu+/C94rLfv8+2+9b7r325k9P//Mlv/VLvffFORUzy7139dhbG8vd qzvyyAWfrHzl9VJpfvaIhxaWe2/usc+0lWuHx/aKLVnRevCcSlWc5n5TU0eMKVn2CrU4//cj y9XLHzM7xl5f+LHfl7r31D7j/HJ5WVvz3ZWXP3zEsaXeezX6yGC58lWUERFHgQEZs+qGinGr FryzzU+Hq4obKkZMHVkBuTNTY7kp/K3aqBfp6drgq1XDS75Mbozq3uaXH6oMXh6uX64FI2QT qN6IBKqdBGqRlyCRURueyKiCRGrBjTkJjS5OaPqwcavu+TcnNH1YkNDoEgnVopBuYpENTSxS JrFayIKhBMcUJnjx8HGrjn2TE7x4eJDgmHUkWIuaDCc6bsMSHbeeRGtZqySLwIW/0ZxwD/rV BdKveipGtB5coQ4FuEt+f025vqxKvFqps7Ku3h9+w5YiePVd5PP/06ub1CZVpd/YvmrcqkXy xvZVI4bZDlWOoshb92DUjHzH9McRoW5YjpTImz8eMW7VSqEC/SNHjCzqwOVoiLx988hxq/74 Fr/9y1EjNivZ/csRD0nhus3GrTpcUvjG5iM2LzuAylENSeUbm1uqsXLMiC3WOQzLkQtJ6eIt xq2aLik9O3bE2PUO6HJ0QlJ7dqylE9dtNWLLDSAPte8HgZDhfjlePUpevXyjJrvcMPtibtjG Tnb9I+00gw62CZOd07boIZs42a0c43aQdzHZXbeV26LvcrI7dVub2KnbvheT3c07jlv1+uuc 4M07vleT3Zqdx60681+c6Jqd/6OT3Qc+T5aiydLt6zeKIm9Iby9Fjze0k5eixhvTt0vR4o3t 0kWUeOwWIzalJ5eiw5vagUtR4f8yJm2Iag9R7Q+AapfqkFUlunBIXhhihIcY4feOER62KcLr EF0coov/abpYnsRVDnXhoS78PyKQkZkQaf3d12glw42TBt+N00qAG6cVEzdOqxZunFYjSqX/ 2jk5zjqtDLn3aYWiZPzcHHclWvVx79MKihun1Sv3R6sMbpxWlNw4rWi5cVp5cOO0WuTGaRXI jdNKU+j5Ix5a6MZpdcuN02qJG6fVITdOq2ih/K/nVyHESpW6xhYT6P3075bXraqoYNMoub61 Jgrb6OG4re742+kudXjF+r+97t/2m2D+ufagilMr1Be2VozNz89zXr4gtnD238qxjuXfQWQl cpBiUjlv2zPxfGXliKrhw4ZXVg2rKmFByJ1QJXm51leeWoh/B/DvYt5kFWOLqqlIp1INH15R WVE9otLSTNfChYyqVJsaxDu0aYvs0ybvyV8fPWJYJf3Kfr2Bt3iJ/epuqP7jR34GdfUQZpYe fuSTP2ia+8rkeZ/a+TdNPx2vjkEyR6DLV3yL7OgOZ1uaqrG0M/J7eCM5RrHBi0IJ5HfHbkNW xJv+u2LEj6u/p76H5s3WUYPvoOJsK6jUiseU+siW67JPdX9nbaNKmkMp1Vth7D3JZnH9C/Py K28mUP7Of+PvnbXo35tVlrT9ffb0r7/yRmvP2GvOGqn22euGp8gAbVWF4lmyQtswVmrbRRp7 39OWdD/WVnS/ZAtTpZ5nG1NMQWxlirqtIIM0pbavIHtTpaZUKGY2DqpQbLPaUqGYXyCSSPJX vELxdJ+qEJKQqxCyelKFfP/5YbLVnNJsbF3Y1trS5DUtWNLS0N7cuhDttLPpQbi3s5K0F8fy 8Vg+7bVk0t2YI1vtM7i+s873wky2L5ZS3rreoXJPmq74HcrTgmRnNuNnunLe0kw27k2vrWOK ico5vXel0uFc9umZ99xeweHbfrLi9rt0+PnOY077w+3Mso7XaRMlon+JGlUNkYuh39Bv6Df0 G/oN/YZ+Q7+h39Bv6Df0G/q9x/I/Xal8/P7HL6rdaezZ50P+j77xbfLmNLzg2nwIzcO03E7y M+39JFm9X+sAaB/gCK0rGKd1BaQ9v1iJzE/7GUmmv07Lzzcr8Vv1Yy1z36Mk7RdVWNanb8yJ DXR7jZlsv+81pztFPj6+Qv49XMvPpEWif48bO1IZPW+5f3ceK2UorUfYfKzkYGddovZkLpUQ 2ZzyUhXsla7R1xbrPB+h8/JdU69K9B7LFzXPWT5vSfMcvru5uTK/pXnhIW22tA2kiVC0w3R/ Va/mAPuzI7Epal/8nYt/6xGq53t0rQH/TcX1fRGj/6biv8nAFDUNz+yn6nifqqT7mUopD32/ TwX5MJqGKt2Ku+hW21j3WbuoQHdHaR2LK1VaC1TqGx9R78bjWPH3TlGz+N8RZb73wbukK86z j/SrdLhUnt8/P4PFeZmnmkN5KMzLu3Xw6H5v6Df0G/oN/YZ+Q7+h39Bv6Df0G/q9378KLY8S Vz9Mc/YkLdH690gtqW2mZeTNtUy+hZa/x2qZfkstu5O10DZafidpkQySyJKDzN7IBmy8lvB2 1py/B+yqyCZHKbL5Iru2PYA9gb20HD0B2FtLPeRHjWzByJEzSQ9kj0B+5shnHHl/mwJMVewa CnKuYg9z+wPkx5psvsjz24HAx7Tkd5CWgslBDtm0kX6jCZjLko9S84Fm4GDgEKAFWKCl8VZg EXColvPJ5q4dINs58s++VOsglmn5n2z4jgKOBo4hSZ+lYaXINq0D6ATI8oX8wnUB3VqXQr63 jgPIp1uKpWPxQWV8MZEvqixLjeKTyfikIt9MZG9AtnUnsPZA/DSR7P9xFfipIp9NxlcV+W4i f1Xkv+nTWndDfqvIj5PxXUX+nMh/1Rlap0N+nchhEfnsIl9W5OOJ/Fmdr3U95OuJ/FqRvyfy bUU+n8i/1ddV4OOK/D8V+rm6SoV9XZFvKOPv6tust1q7lnRG12u9yg1K7E9uBG7S90mXdAvw A+BW4Dbgh8CPgNu1jukO4E4l3srvAu4Gfgr8TOue7gX0UTbqPuB+nfaD+PchgLwiPQI8CjwG PK7vP6nE/oX8q/1KiaP3XwO/0fff1vidjhv8p39khUfaFLKEImcqWTW4UfRjWzW8wqTFmpZR okv8sdymoaSO/fTix2bcc3vFs6t3WU72Lb/XfU/xmIvhq7FNpl+bqcoKtzwb8g75uTO2hfUY tTGMQPHIuPG/LbRZ58Z8//tUJ9qodSnrSOJFTm029Lcjyj9C0+0N/T79djtK9C7D2S9lH2vT qO2b8fUu6/GTvFVmmN6U+9VsQv0/4NT/8KKSb1x+puP7wzay/p9wvl8Byk+aqX5Q9A6mtBv3 2xLfr9Tz5cbUv/mSfJXcCeUwn2S0ZevGjL8Ktb76N+PO/Fs4/38QdGfo9+H4VaD1qzaTvltI u4l/K7BnnJPpzPcl0jnmCRe00TVc4sFE4Vpzv3a6em3/7x4/xF9/2H//B1BLAQIUABQAAgAI ADZk7SiujanMXHcAAADKAQAVAAAAAAAAAAAAIADAgQAAAABDT05TT0xFIEVNVUxBVElPTi5k b2NQSwUGAAAAAAEAAQBDAAAAj3cAAAAA --------------1658CFA2C0DFC6347121C22F-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 17:44:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA34883 for dynarec-outgoing; Mon, 17 Jul 2000 17:44:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000717174311.007c82d0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 17 Jul 2000 17:43:11 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: References: <3.0.5.32.20000716114644.007c0de0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >By "interpretive core" I'm assuming you mean an emulator, correct? If so, >what makes you think the dynarec would be any less "accurate" than the >emulator? It'll still be able to give accurate timing and instruction >translation. In fact, the actual end result will be the same - just >faster. ;-) The interpreter is so much easier to write. It's nearing completion. I want to get the initial CPU emulator out of the way ASAP so I can focus on 32X emulation. The 32X is a big challenge, and if I don't make any progress, I won't write a dynamic recompiler for the SH-2 since I won't have the need to use it any longer. Certainly you must agree that from my point of view (a person who is not yet experienced with dynarecs) an interpreter is much easier to start with. It will enable me to decide wether or not I wish to continue the 32X project with minimal time lost at the CPU stage. If I can get some games running, I'll definitely undertake a dynarec then. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 17:46:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA34901 for dynarec-outgoing; Mon, 17 Jul 2000 17:46:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000717174549.007cadb0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 17 Jul 2000 17:45:49 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: References: <3.0.5.32.20000716115559.007c2100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think what you're worrying about is whether or not you could easily tell >the recompiler to "recompile this block" because it changed. For this, >yes, there'll be a separate API like FlushRegion() to do exactly this. What is the granularity of a "region"? Will I be able to specify a base and limit and let the CPU emulator handle the rest? Also, I believe you stated that self-modifying code shouldn't be handled by the CPU emulator (or something to that effect), I'm not quite sure what you meant by that... A function to flush all the regions would be very useful, if the FlushRegion() call won't support the ability to specify a base and limit. The Sega CD changes memory maps and the 32X does bankswitching on the 68K side. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 17:46:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA34904 for dynarec-outgoing; Mon, 17 Jul 2000 17:46:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 17 Jul 2000 17:59:42 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: <3.0.5.32.20000717174311.007c82d0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Certainly you must agree that from my point of view (a person who is not > yet experienced with dynarecs) an interpreter is much easier to start with. > It will enable me to decide wether or not I wish to continue the 32X > project with minimal time lost at the CPU stage. If I can get some games > running, I'll definitely undertake a dynarec then. Agreed 100%. From your original message it sounded like the dynarec was less accurate than a regular emulator, which certianly would'nt be the case! And I'm stunned that no one replied to my 6800 dynarec message... -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 17:48:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA34915 for dynarec-outgoing; Mon, 17 Jul 2000 17:48:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000717174723.007cc740@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 17 Jul 2000 17:47:23 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: <39720BD6.BCAFAD06@dynarec.com> References: <3.0.5.32.20000715162244.007bf1b0@powernet.net> <3.0.5.32.20000715162244.007bf1b0@powernet.net> <3.0.5.32.20000716115559.007c2100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >dynarec (so it isn't a recompiler NG ;). There are so many >self-modifying >code in the 32X? The problem with Sega CD is of course that loads the >programs from the CD to RAM. But I think that this could be handled >pathching CD reads as they were OS exec calls. I don't see any problem. The 32X has SDRAM. According to the author of AGES, much game code is loaded into the SDRAM area and run from there. There is some level of self-modifying code involved as well. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 17:55:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA34930 for dynarec-outgoing; Mon, 17 Jul 2000 17:55:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 17 Jul 2000 18:08:48 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: <3.0.5.32.20000717174549.007cadb0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I think what you're worrying about is whether or not you could easily tell > >the recompiler to "recompile this block" because it changed. For this, > >yes, there'll be a separate API like FlushRegion() to do exactly this. > What is the granularity of a "region"? Will I be able to specify a base and > limit and let the CPU emulator handle the rest? You'll be able to specify FlushRegion(BaseAddr, Size);. It'll flush down to the instruction level. When you wind up creating your memory map that you use for the Genesis, you'll just define a region that code is fetched from. > Also, I believe you stated > that self-modifying code shouldn't be handled by the CPU emulator (or > something to that effect), I'm not quite sure what you meant by that... Actually, what I said was self modifying code SHOULD be handled by an emulator and not by a dynarec *IF* the code is continually changing. > A function to flush all the regions would be very useful, if the > FlushRegion() call won't support the ability to specify a base and limit. You'll be able to flush as little or as much as you like. > The Sega CD changes memory maps and the 32X does bankswitching on the 68K > side. Yuk. Recompilers & bankswitching don't mix. You'll just spend all your time recompiling. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 17:56:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA34940 for dynarec-outgoing; Mon, 17 Jul 2000 17:56:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000717175524.007ce910@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 17 Jul 2000 17:55:24 -0700 To: dynarec@dynarec.com From: Bart Trzynadlowski Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <39736A21.2724114F@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I glanced over the document, so I didn't find any errors -- I wasn't thoroughly examining it. One thing that disturbed me was that he described bits and bytes and kilobytes. I don't think combining an emulator how-to and an intro to computer technology works. Has anyone out there with NO programming experience ever sat down to one of these documents and learned enough about computers and programming to write an emulator? I think not ;) IMHO, emulator documents should deal with the theory and implementation of emulation, and not serve as an introduction to computers. A simplistic introduction to emulation is good, and the document should build from there. I would also like to see more documents that talk about "specific" topics which might be beyond the scope of, say, Marat's how-to. I think at this time there have been enough general how-tos on emulation, perhaps something more in-depth detailing not only the theory, but implementation and usage of some more shady topics, like dynarec, would be really cool. There is an unfinished document at dynarec.com, I forget who's it was, but it was very good! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 17:56:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA34949 for dynarec-outgoing; Mon, 17 Jul 2000 17:56:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 17 Jul 2000 18:09:30 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: <3.0.5.32.20000717174723.007cc740@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >code in the 32X? The problem with Sega CD is of course that loads the > >programs from the CD to RAM. But I think that this could be handled > >pathching CD reads as they were OS exec calls. I don't see any problem. > The 32X has SDRAM. According to the author of AGES, much game code is > loaded into the SDRAM area and run from there. There is some level of > self-modifying code involved as well. The big question is "how much"? If it's not too much, just doing a FlushRegion() call would be sufficient. If it's often, it might make more sense to emulate that region rather than having the recompiler go in to endless recompilation. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 23:09:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA35176 for dynarec-outgoing; Mon, 17 Jul 2000 23:09:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007180616.IAA24164@pons.ac.upc.es> Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: "from Neil Bradley at Jul 17, 2000 05:59:42 pm" To: dynarec@dynarec.com Date: Tue, 18 Jul 2000 08:16:51 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > And I'm stunned that no one replied to my 6800 dynarec message... > I'm not an expert about pinball machines. The only topic I could discuss is the first choice and third choice. And although I know the basis of electronic circuits I don't have specific information. What is a 6821? The third is an emulator so I think there isn't much to discuss. What I would want to know is how do you will perform the translation of the code in the first option? Manual translation or automatic translation (it will be static translation!). This perhaps could be interesting. But I can say it will be better or worse than other choices because it's beyond my knowledges. Sorry. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 23:20:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA35195 for dynarec-outgoing; Mon, 17 Jul 2000 23:20:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007180627.IAA30359@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <3.0.5.32.20000717175524.007ce910@powernet.net> "from Bart Trzynadlowski at Jul 17, 2000 05:55:24 pm" To: dynarec@dynarec.com Date: Tue, 18 Jul 2000 08:27:51 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I glanced over the document, so I didn't find any errors -- I wasn't > thoroughly examining it. > Well perhaps it doesn't have so much errors but a bit of ignorance and good scope. The main problem I see it is I can't see he has a lot of knowledge about emulation or perhaps it can't express this knowledge. > One thing that disturbed me was that he described bits and bytes and > kilobytes. I don't think combining an emulator how-to and an intro to > computer technology works. Has anyone out there with NO programming > experience ever sat down to one of these documents and learned enough about > computers and programming to write an emulator? I think not ;) > If it was well structured it could work someway. Of course somekind of knowledge is needed. The problem is you need to explain a lot of things (and someones more important than bits, bytes and so on) before someone could start an emulator. > IMHO, emulator documents should deal with the theory and implementation of > emulation, and not serve as an introduction to computers. A simplistic > introduction to emulation is good, and the document should build from > there. I would also like to see more documents that talk about "specific" > topics which might be beyond the scope of, say, Marat's how-to. > I'm making a tutorial about arcade emulation in the mul8 list (about the Space Invaders). When I write I have the problem how basic knowledge I have to think they have the readers and how complex the information I should write. It's hard and I can't say I'm doing ever the best choice. :p BTW, I would like someone critizes my docs, I'm never sure if I could make them better. :o > I think at this time there have been enough general how-tos on emulation, > perhaps something more in-depth detailing not only the theory, but > implementation and usage of some more shady topics, like dynarec, would be > really cool. There is an unfinished document at dynarec.com, I forget who's > it was, but it was very good! > It should be MIKE's DRFAQ. What you say has a lot of sense, I agree with you. I'm a lot of interested with documentation. There enough general emulation how-to about "emulators" (not interpreters, right Neil ;). There isn't few which goes to optimization or specific informations. There isn't any about assembler emulators. And the worst of all there isn't about sound/video/... hardware emulation!!! Of course I won't talk about dynarec ;). Luckyly MIKE has started his doc, why you don't continue working on it?. > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 23:48:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA35221 for dynarec-outgoing; Mon, 17 Jul 2000 23:47:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 18 Jul 2000 00:01:01 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: <200007180616.IAA24164@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > And I'm stunned that no one replied to my 6800 dynarec message... > I'm not an expert about pinball machines. The only topic I could > discuss is the first choice and third choice. And although I know > the basis of electronic circuits I don't have specific information. > What is a 6821? It's this horrible little shitty 16 channel digital configurable input/output chip (PIA=Peripheral Interface Adapter). Can't take the slightest amount of discharge and was prone to breaking, and is the #1 problem in pinball machines. > What I would want to know is how do you will perform the translation > of the code in the first option? Manual translation or automatic > translation (it will be static translation!). This perhaps could > be interesting. But I can say it will be better or worse than other > choices because it's beyond my knowledges. This would be a combination of both manual and automatic. I'd have to do some cursory looking at the code to figure out where everything is (like jump tables) so I could feed that to the recompiler, which would do everything statically. Of course, emulation would be the most convenient because I would have very little to do get a different game to run. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 17 23:54:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA35234 for dynarec-outgoing; Mon, 17 Jul 2000 23:54:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007180702.JAA18498@pons.ac.upc.es> Subject: Re: DYNAREC: 68K definition and address mode In-Reply-To: "from Neil Bradley at Jul 18, 2000 00:01:01 am" To: dynarec@dynarec.com Date: Tue, 18 Jul 2000 09:02:11 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > What I would want to know is how do you will perform the translation > > of the code in the first option? Manual translation or automatic > > translation (it will be static translation!). This perhaps could > > be interesting. But I can say it will be better or worse than other > > choices because it's beyond my knowledges. > > This would be a combination of both manual and automatic. I'd have to do > some cursory looking at the code to figure out where everything is (like > jump tables) so I could feed that to the recompiler, which would do > everything statically. > A pinball using jump tables! :P Well, is something like what we do in my work. We build a translation and we it finds an untranslated jump address it stops and add the address to a feedback file which is then passed againt the translator. But this won't work with a pinball machine. ;) > Of course, emulation would be the most convenient because I would have > very little to do get a different game to run. > But the hardware will be expensive and perhaps it will be more difficult to emulate all about the pinball, althought I'm just talking without knowing about it. ;) > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 18 04:47:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA35630 for dynarec-outgoing; Tue, 18 Jul 2000 04:47:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <200007180627.IAA30359@pons.ac.upc.es> Message-ID: <00036cae40066458_mailit@mail.dynarec.com> References: <200007180627.IAA30359@pons.ac.upc.es> Date: Tue, 18 Jul 2000 13:43:04 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >If it was well structured it could work someway. Of course somekind >of knowledge is needed. The problem is you need to explain a lot of >things (and someones more important than bits, bytes and so on) before >someone could start an emulator. I think it's very important to mention endiannes since even many full time programmers know what the difference between big- and little-endian is. But otherwise the bits'n'bytes stuff shouldn't be in such a document, I even hardly bear introductory chapters in assembly books... >I'm a lot of interested with documentation. There enough general >emulation how-to about "emulators" (not interpreters, right Neil ;). There >isn't few which goes to optimization or specific informations. There isn't >any about assembler emulators. And the worst of all there isn't about >sound/video/... hardware emulation!!! That's the problem I have: due to these docs and my own research I have decent knowledge of CPU emulation, only few knowledge of video emulation, but absolutely no idea how sound emulation works :-( >Of course I won't talk about dynarec ;). Why not? Isn't that optimization as well? ;-) >Luckyly MIKE has started his doc, why you don't continue working on it?. Me? I was a bit busy and lazy and I still have to research/rethink some of the more complicated topics before I can continue, but I have to admit that I also see the need to complete it... Try writing such a doc by yourself and you'll see that it is a bit more complicated than just presenting "traditional" methods... >Victor -- M.I.K.e The President publicly apologized today to all those offended by his brother's remark, "There's more Arabs in this country than there is Jews!". Those offended include Arabs, Jews, and English teachers. -- Baltimore, Channel 11 News, on Jimmy Carter --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 18 04:47:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA35634 for dynarec-outgoing; Tue, 18 Jul 2000 04:47:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: New idea From: "M.I.K.e" In-Reply-To: Message-ID: <00036cae74ecc524_mailit@mail.dynarec.com> References: Date: Tue, 18 Jul 2000 13:57:51 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I've been contemplating (very seriously) doing a replacement pinball >CPU/Driver board combo. Right now a lot of old pinball machines have two >boards: The main CPU and the "driver" board (to drive solenoids and >lights). The main CPU is a 6800, and the driver board is full of drive >transistors and 6821 PIAs (peripheral interface adapter, but they're more >just a Pain In the Ass. ;-)). Hehe ;-) >To make things more reliable, I'd like to >make a CPU controlled system that has about half the real estate of the >old CPU board and does both driver and CPU board functionality. Well, my knowledge of pinball machines is close to zero... >* Use an 8051 CPU with built in flash. Game behavior is alterable by a >firmware download, but the original 6800 code would need to be translated. I never programmed it, but from what I read about it I know that the 8051 isn't really one of my favourite CPUs... Also translating the 6800 code might be more error prone than emulating it and it would be very annoying to have strange things happen when you're close to beating the high-score... >* Use a 6800 CPU and external circuitry and many 6821s or equivalents (bad >because the 6821s are pieces of garbage and 6800s are spendy and it >requires the additional circuitry to go with it) I guess you're right that these chips are more expensive than most modern ones... >* Use a really powerful CPU and emulate the native code so the native ROMs >can be used Well, you *are* an emulation geek, so that would be a good choice. Then there is still the question which microcontroller you'd choose. >I'm leaning toward option #1 as being my first choice, but option 2 is >still possible (though more expensive because of parts) and option 3 I >really don't want to do because it'll take up almost as much real estate. I'm not that into microcontroller prices... >The only downside of option #1 is that I'll have to do a translation for >each game out there that uses this board set (there are 19 of them). But >I'm thinking that once I've done one, the rest would be fairly simple. I think static translation could lead to more errors than the othermethods, but basically it's your decision. Maybe you could tell us something about static compilation then ;-) >-->Neil -- M.I.K.e Brain, v. [as in "to brain"]: To rebuke bluntly, but not pointedly; to dispel a source of error in an opponent. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 18 09:26:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA35850 for dynarec-outgoing; Tue, 18 Jul 2000 09:26:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3974875C.6EC63A63@dynarec.com> Date: Tue, 18 Jul 2000 18:35:40 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial References: <200007180627.IAA30359@pons.ac.upc.es> <00036cae40066458_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I think it's very important to mention endiannes since even many full time > programmers know what the difference between big- and little-endian is. But > otherwise the bits'n'bytes stuff shouldn't be in such a document, I even > hardly bear introductory chapters in assembly books... > Well he mentions endianess but using high and low as names (umm ... Marat's HowTo uses the same names ...). And I think they are very bad explained and are wrong. > >I'm a lot of interested with documentation. There enough general > >emulation how-to about "emulators" (not interpreters, right Neil ;). There > >isn't few which goes to optimization or specific informations. There isn't > >any about assembler emulators. And the worst of all there isn't about > >sound/video/... hardware emulation!!! > > That's the problem I have: due to these docs and my own research I have > decent knowledge of CPU emulation, only few knowledge of video emulation, but > absolutely no idea how sound emulation works :-( > Hehehe! I think we have the same problem. We both have entered in emulation by the theory entry and we have problems with practice. But I can say you have more knowledge than me. ;) > >Luckyly MIKE has started his doc, why you don't continue working on it?. > > Me? I was a bit busy and lazy and I still have to research/rethink some of > the more complicated topics before I can continue, but I have to admit that I > also see the need to complete it... Try writing such a doc by yourself and > you'll see that it is a bit more complicated than just presenting > "traditional" methods... > I feel a bit the same about the doc I started long ago. Now I don't know how can I continue it. In fact I should have to fully rewrite it. :( The ideas that have arisen from this list have broken many conventions ... Sometimes I feel that everythink done in the academical world about dynamic translation is a so different thing compared with Neil's ideas that it is lameless to compare them. And from what you have talked about dynarecs in the emulator world (which I have less knowledge) it could be say the same. Perhaps the problem is that it is still an non finished topic and you can't just write about something that has been already well tested and proved. It isn't as a document about making a normal compiler or something like this where there is already a good documentation and a lot of investigation made. Now it's the time that this technique is being fully developed so it is hard to write about it. :) Perhaps I'm too phylosophal here. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 18 14:38:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA36102 for dynarec-outgoing; Tue, 18 Jul 2000 14:38:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <3974875C.6EC63A63@dynarec.com> Message-ID: <00036cb6afab435a_mailit@mail.dynarec.com> References: <200007180627.IAA30359@pons.ac.upc.es> <00036cae40066458_mailit@mail.dynarec.com> <3974875C.6EC63A63@dynarec.com> Date: Tue, 18 Jul 2000 23:46:57 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well he mentions endianess but using high and low as names (umm ... >Marat's HowTo uses the same names ...). Then we know where he got it from ;-) >And I think they are very bad explained and are wrong. Haven't taken a look yet. I never had a problem with endianness because I worked on the Atari ST for a long time and it not only has a big-endian CPU but also uses FAT16 with little-endian values. >Hehehe! I think we have the same problem. We both have entered in >emulation by the theory entry and we have problems with practice. Too true... This reminds me of a quote form "Faust" by Johann Wolfgang von Goethe, which could be translated like this: "There I stand, a poor fool! And I know as much as before." >But I can say you have more knowledge than me. ;) I don't think that's true. I guess we have knowledge about different domains, but I certainly wouldn't claim that I know more than you amount-wise. It would be damn boring if we all knew the same things anyway ;-) >I feel a bit the same about the doc I started long ago. Now I don't >know how can I continue it. In fact I should have to fully rewrite it. :( >The ideas that have arisen from this list have broken many conventions ... I know what you mean, I had to add many headings to the document and also theories to my general overview after all those discussions on the list. >Sometimes I feel that everythink done in the academical world about >dynamic translation is a so different thing compared with Neil's ideas that it >is lameless to compare them. Well, the main difference is that the university projects work with clean code with nice structured basic blocks and Neil also wants to be able to get the best speed out of nasty spaghetti assembly code ;-) >And from what you have talked about dynarecs >in the emulator world (which I have less knowledge) it could be say the >same. The difference there is that Neil thought first and then started, whereas the others might have thought "Hey, everyone has a dynarec nowadays, let's do one too" and hacked down a dynarec with no noticable structure at all! >Perhaps the problem is that it is still an non finished topic and you >can't just write about something that has been already well tested and proved. True, but that's also the challanging thing about it, or why else do we work on such a topic? ;-) >Perhaps I'm too phylosophal here. ;) I guess you mean "philosophical" ;-) >Victor -- M.I.K.e Wiker's Law: Government expands to absorb revenue and then some. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 12:54:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA37337 for dynarec-outgoing; Wed, 19 Jul 2000 12:54:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39760990.E491DD6F@dynarec.com> Date: Wed, 19 Jul 2000 22:03:28 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial References: <200007180627.IAA30359@pons.ac.upc.es> <00036cae40066458_mailit@mail.dynarec.com> <3974875C.6EC63A63@dynarec.com> <00036cb6afab435a_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >Well he mentions endianess but using high and low as names (umm ... > >Marat's HowTo uses the same names ...). > > Then we know where he got it from ;-) > Yes. ;) > >Hehehe! I think we have the same problem. We both have entered in > >emulation by the theory entry and we have problems with practice. > > Too true... > This reminds me of a quote form "Faust" by Johann Wolfgang von Goethe, which > could be translated like this: > "There I stand, a poor fool! > And I know as much as before." > You can even quote classic books! ;) > >But I can say you have more knowledge than me. ;) > > I don't think that's true. I guess we have knowledge about different domains, > but I certainly wouldn't claim that I know more than you amount-wise. It > would be damn boring if we all knew the same things anyway ;-) > In any case this way I can learn something from others, althought I don't know if others will learn something from me. ;) > >I feel a bit the same about the doc I started long ago. Now I don't > >know how can I continue it. In fact I should have to fully rewrite it. :( > >The ideas that have arisen from this list have broken many conventions ... > > I know what you mean, I had to add many headings to the document and also > theories to my general overview after all those discussions on the list. > There is a big work to be done about dynarec documentation and I find hard to begin. :( > >Sometimes I feel that everythink done in the academical world about > >dynamic translation is a so different thing compared with Neil's ideas that > it > >is lameless to compare them. > > Well, the main difference is that the university projects work with clean > code with nice structured basic blocks and Neil also wants to be able to get > the best speed out of nasty spaghetti assembly code ;-) > I think I don't like the way university projects work. I work in one of them and I'm beginning to hate it. Do you believe than I'm supposed to implement dynamic translation capabilities into a static binary translator! The full thing is all designed around static and now I will have to program something so it could load dynamic libraries. What a mess ... But they are paying me. :P > >And from what you have talked about dynarecs > >in the emulator world (which I have less knowledge) it could be say the > >same. > > The difference there is that Neil thought first and then started, whereas the > others might have thought "Hey, everyone has a dynarec nowadays, let's do one > too" and hacked down a dynarec with no noticable structure at all! > It seems people doesn't usually spend sometime thoughting. ;) In any case Neil has a lot of more experience than usual programmers. I would like to know what Sardu or they guy from UltraHLE could or have done. BTW, I did something evil, I posted Marat the info about this list and our page. Perhaps is even I reading this. ;) > >Perhaps the problem is that it is still an non finished topic and you > >can't just write about something that has been already well tested and > proved. > > True, but that's also the challanging thing about it, or why else do we work > on such a topic? ;-) > Yeah. I can thought in anything more interesting than this now. :) Perhaps if could spend some minutes. ;) > >Perhaps I'm too phylosophal here. ;) > > I guess you mean "philosophical" ;-) > It seems I'm a bit dislexic, mainly when I write fast and english. ;) > M.I.K.e > Victor PS: About the mistake in my page. I put the other mail address because I read it more usually (this could change now I have Internet access at home). And in any case I should have to rewrite the full thing. Add a page about our actual project and ... How many work there are to be done!! ;) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 13:00:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA37357 for dynarec-outgoing; Wed, 19 Jul 2000 13:00:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39760AF3.11E06F11@dynarec.com> Date: Wed, 19 Jul 2000 22:09:23 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: Searching new links References: <200007180627.IAA30359@pons.ac.upc.es> <00036cae40066458_mailit@mail.dynarec.com> <3974875C.6EC63A63@dynarec.com> <00036cb6afab435a_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com A friend show me a web searcher last day. It is impressive. It seems is used also by Yahoo. Perhaps you know it: www.google.com It even has a cache of documents and pages!! I found some of the docs I wrote for the Space Invaders Tutorial. I thought, why I don't search about dynamic recompilation? In a fast search I found our pages and the other page you have, M.I.K.e in the acorn site. Today I have found something that could be interesting for you: http://www.vmac.org/icecube/main.html I think it could be worth to search a bit on it. I will do when I have more time. And this show another point against the name "dynamic recompilation" because this name is also used, in academical sites, to talk about code that compiles himself at execution time, to make optimized code for example. Related with dynamic code generation. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 13:36:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA37411 for dynarec-outgoing; Wed, 19 Jul 2000 13:36:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39761385.5D3F97ED@dynarec.com> Date: Wed, 19 Jul 2000 22:45:57 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Searching new links References: <200007180627.IAA30359@pons.ac.upc.es> <00036cae40066458_mailit@mail.dynarec.com> <3974875C.6EC63A63@dynarec.com> <00036cb6afab435a_mailit@mail.dynarec.com> <39760AF3.11E06F11@dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This is interesting: http://compilers.iecc.com/comparch/article/95-12-063 Stack based CPUs for the future? Pascal overcoming C? Who knows? ;) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 13:37:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA37421 for dynarec-outgoing; Wed, 19 Jul 2000 13:37:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Jul 2000 13:50:56 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <39760990.E491DD6F@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > The difference there is that Neil thought first and then started, whereas the > > others might have thought "Hey, everyone has a dynarec nowadays, let's do one > > too" and hacked down a dynarec with no noticable structure at all! > It seems people doesn't usually spend sometime thoughting. ;) I find three things prevalent in both the professional and hobbyist industries: * People don't think long term or look at the bigger picture. When they've coded themselves into a corner, instead of a redesign they just hack at it until it kinda works. It's analogous to "fixing" a coolant leak due to a bad head gasket by putting in coolant sealer instead of fixing the bad head gasket. * People are in love with their code. The way they did it is always the best way, even when they've been shown there are much better ways to do it. Over the years I've learned to be seflessly proud of the code I produce. If someone can show me a better way to do it, I'm all for it! Most aren't this way, though. * People often don't weigh options before coding. I've seen programmers go out of their way to support bank switching in their CPU cores when they won't ever use it. The same goes for people who write code to be portable (foregoing performance or readability) but never port it. * Most programmers would rather make it work than do it "right". As an example, a peer project lead did a code release of our firmware that had a register trashing bug - it could trash a single register at *ANY* time, causing very upredictable behavior. But he wanted to make a release schedule so he released it even with this problem. I short circuited it by telling evaluation to not test it because of this problem. One problem I continuosly run into, is that I spend a lot of time thinking about things before implementing them, so by the time I speak up, I've already been down a million paths on the problem. Couple this with the behaviors of the standard programmer listed above, and I wind having to explain things over and over again, and half the time they don't listen. You wouldn't believe how people like to spin doctor their methods into sounding superior. A couple of years ago I called someone in the MAMEDEV team on lack of custom structures to handle certain things (like game definitions, etc...) As an example, they would create an array of UINT32s and array of UINT8 *'s for ROM images instead of a structure that contained them both. Then they'd create macros that'd tuck them in the appropriate place. It was "excused" as a "different way of coding". Go figger. The way I judge the good from the bad is based upon how well others listen to ideas and consciously weigh one alternative to another. I'm blessed with the group of outspoken individuals in this group. Good listeners and good thinkers. We need more of this world wide! Even if we don't agree, we do weigh tradeoffs and options. > Neil has a lot of more experience than usual programmers. I would like > to know what Sardu or they guy from UltraHLE could or have done. > BTW, I did something evil, I posted Marat the info about this list and > page. Perhaps is even I reading this. ;) Jeez... I do'nt think this list has any room for his ego - mine takes up most of the space! ;-) He's not subscribed as of this writing. > > >Perhaps I'm too phylosophal here. ;) > > I guess you mean "philosophical" ;-) > It seems I'm a bit dislexic, mainly when I write fast and english. ;) Well, dyslexic would've caused a reversal of letters - not a replacement of one. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 14:02:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37456 for dynarec-outgoing; Wed, 19 Jul 2000 14:02:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3976197A.8741AE92@dynarec.com> Date: Wed, 19 Jul 2000 23:11:22 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > The difference there is that Neil thought first and then started, whereas the > > > others might have thought "Hey, everyone has a dynarec nowadays, let's do one > > > too" and hacked down a dynarec with no noticable structure at all! > > It seems people doesn't usually spend sometime thoughting. ;) > > I find three things prevalent in both the professional and hobbyist > industries: > > * People don't think long term or look at the bigger picture. When they've > coded themselves into a corner, instead of a redesign they just hack at it > until it kinda works. It's analogous to "fixing" a coolant leak due to a > bad head gasket by putting in coolant sealer instead of fixing the bad > head gasket. > This could be easily seen everywhere, just look how the world is. :P If you have somekind of dangerous garbage just throught it where noone could see it. The next generations will handle the problem. > * People are in love with their code. The way they did it is always the > best way, even when they've been shown there are much better ways to do > it. Over the years I've learned to be seflessly proud of the code I > produce. If someone can show me a better way to do it, I'm all for > it! Most aren't this way, though. > I think I don't have this problem. I always think my code is the worst. ;) In any case in my mind the more important thing is to learn new things and improve. And this can be achivied thinking you are doing the best. > * People often don't weigh options before coding. I've seen programmers go > out of their way to support bank switching in their CPU cores when they > won't ever use it. The same goes for people who write code to be portable > (foregoing performance or readability) but never port it. > Lazyness and topics. If you think portability it's good just made everything portable. Here in my university the departament about software development have such kind of manias. > * Most programmers would rather make it work than do it "right". As an > example, a peer project lead did a code release of our firmware that had a > register trashing bug - it could trash a single register at *ANY* time, > causing very upredictable behavior. But he wanted to make a release > schedule so he released it even with this problem. I short circuited it by > telling evaluation to not test it because of this problem. > We are all short of time. Why worry about a little error. There are a lot of beta tester who will buy and test our program for use. ;) [From the Game Companies Software Development Manual]. > One problem I continuosly run into, is that I spend a lot of time thinking > about things before implementing them, so by the time I speak up, I've > already been down a million paths on the problem. Couple this with the > behaviors of the standard programmer listed above, and I wind having to > explain things over and over again, and half the time they don't listen. You are somethink incredible my poor mind could handle million of paths. ;) In any case there are people who is more likely to think another ways of doing things. But what really hurts me is people who don't want to listen. > You wouldn't believe how people like to spin doctor their methods into > sounding superior. A couple of years ago I called someone in the MAMEDEV > team on lack of custom structures to handle certain things (like game > definitions, etc...) As an example, they would create an array of UINT32s > and array of UINT8 *'s for ROM images instead of a structure that > contained them both. Then they'd create macros that'd tuck them in the > appropriate place. It was "excused" as a "different way of coding". Go > figger. > For me when you get a new idea you should have to study it and see it is better or not than yours. Sometimes could be difficult admit others could do the thinks better than you have to try to avoid this kind of thoughts. I always try to be open minded. > The way I judge the good from the bad is based upon how well others listen > to ideas and consciously weigh one alternative to another. I'm blessed > with the group of outspoken individuals in this group. Good listeners and > good thinkers. We need more of this world wide! Even if we don't agree, we > do weigh tradeoffs and options. > I have to admit there are very interesting people here ... Including myself of course. ;) Ehem!.. I'm with you about what need this world. Good thinkers, open minded people of the world join against the ignorance and the masses!! ;) I'm still waiting you convince my about that strange method of implement timing I thought. ;) Later when we start the to code our dynarec. I have to admit I was very near to surrender. > > Neil has a lot of more experience than usual programmers. I would like > > to know what Sardu or they guy from UltraHLE could or have done. > > BTW, I did something evil, I posted Marat the info about this list and > > page. Perhaps is even I reading this. ;) > > Jeez... I do'nt think this list has any room for his ego - mine takes up > most of the space! ;-) He's not subscribed as of this writing. > You will be in trouble when I get my own working. ;) Just wait I will implement my own emulator or I end my university project. No way I'm feel far from your knowledge and wisdom. ;( And about Marat I think he seems to have better things to do than emulation. He updated his tutorial someday last three months or so but he hasn't released any new thing in years. In any case as I want to get as many different opinions I would like to know someday about of the others "gods" in the emulation world. Perhaps, as Marat, they will become more humans and less gods. > > > >Perhaps I'm too phylosophal here. ;) > > > I guess you mean "philosophical" ;-) > > It seems I'm a bit dislexic, mainly when I write fast and english. ;) > > Well, dyslexic would've caused a reversal of letters - not a replacement > of one. ;-) > Who cares!! It's an excuse. I'm not an expert in linguistic diseases. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 14:02:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37467 for dynarec-outgoing; Wed, 19 Jul 2000 14:02:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <39760990.E491DD6F@dynarec.com> Message-ID: <00036cca51f39c7d_mailit@mail.dynarec.com> References: <200007180627.IAA30359@pons.ac.upc.es> <00036cae40066458_mailit@mail.dynarec.com> <3974875C.6EC63A63@dynarec.com> <00036cb6afab435a_mailit@mail.dynarec.com> <39760990.E491DD6F@dynarec.com> Date: Wed, 19 Jul 2000 23:12:24 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You can even quote classic books! ;) Actually it's a drama, but probably the best piece of German literature ever written. A very large part of todays proverbs are taken from "Faust" but most people don't know. I could also quote Sheakespeare: "I'll chop her into messes!", that's from Othello ;-) >In any case this way I can learn something from others, That's the idea behind it. >althought I don't know if others will learn something from me. ;) Hey, who came up with TransMap, heh? ;-) Also we need someone to question our theories that we know if we're right or wrong. And don't forget that you corrected my paragraph about static recompilation in the DRFAQ! >There is a big work to be done about dynarec documentation and I find >hard to begin. :( Yeah, I took a look at the DRFAQ just to add even more headings... >I think I don't like the way university projects work. I work in one of >them and I'm beginning to hate it. Do you believe than I'm supposed to >implement dynamic translation capabilities into a static binary >translator! Does that mean you have to include a translator in the statically translated binary? >The full thing is all designed around static and now I will have to >program something so it could load dynamic libraries. What a mess ... Normally I don't quote JarJar, but in this case it fits: "Dis gonna be messy!" >It seems people doesn't usually spend sometime thoughting. ;) In any >case Neil has a lot of more experience than usual programmers. Especially more experience than me... >I would like to know what Sardu I'm not sure if Sardu ever thought of doing a dynarec. >or they guy from UltraHLE could have done. You mean RealityMan? I guess UltraHLE is just a hack like the other dynarecs as well, probably even working with preassembled covers, but who knows. At least the translation cache look up is a hack, it's said to be done via an illegal opcode at the beginning of the basic block. >BTW, I did something evil, I posted Marat the info about this list and >our page. Perhaps is even I reading this. ;) Who knows? I think his HowTo is a nice start, but I guess we all are past that introduction stage... >Yeah. I can thought in anything more interesting than this now. :) >Perhaps if could spend some minutes. ;) Catch that traitor! ;-) >It seems I'm a bit dislexic, mainly when I write fast and english. ;) As long as I can identify the meaning that's ok ;-) Often enough I'm really embarassed when I see all my typos and grammar errors afterwards :-( >Victor >PS: About the mistake in my page. I put the other mail address because >I read it more usually (this could change now I have Internet access at >home). Well, it was mainly about the missing "mailto:", but I thought you'd be using your dynarec.com address now so I adjusted that as well. >And in any case I should have to rewrite the full thing. Add >a page about our actual project and ... How many work there are to be >done!! ;) Especially the "I hate Crusoe" page! ;-) -- M.I.K.e Don't change the reason, just change the excuses! -- Joe Cointment --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 14:27:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37500 for dynarec-outgoing; Wed, 19 Jul 2000 14:27:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: Message-ID: <00036ccaaa820dc7_mailit@mail.dynarec.com> References: Date: Wed, 19 Jul 2000 23:37:09 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >* People don't think long term or look at the bigger picture. When they've >coded themselves into a corner, instead of a redesign they just hack at it >until it kinda works. Seems I'm different. The reason why I don't have a MIPS-to-ARM dynarec yet is that I noticed that my first approach was crap and trashed it. Then I did more reasearch, was a bit too lazy to continue, and finally stranded here ;-) >* People are in love with their code. Some of my code is total trash and I'm often surprised to find out what code I wrote just a few weeks ago because I simply don't recognise it anymore. >* People often don't weigh options before coding. I try to do that but sometimes you simply don't have the time to consider all possible options. >* Most programmers would rather make it work than do it "right". I think I do that sometimes, but I know it's wrong :-( >The way I judge the good from the bad is based upon how well others listen >to ideas and consciously weigh one alternative to another. I'm blessed >with the group of outspoken individuals in this group. Good listeners and >good thinkers. Hey, thanks! I can return that praise. >Even if we don't agree, we do weigh tradeoffs and options. We all have our beloved methods, but for such a project we surely have to make compromises to select the methods which fit it the best way and I think we've done well so far. [Marat] >Jeez... I do'nt think this list has any room for his ego - mine takes up >most of the space! ;-) Hehe ;-) >He's not subscribed as of this writing. You *had* to check, didn't you? ;-) >-->Neil -- M.I.K.e Q: Do you know what the death rate around here is? A: One per person. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 14:28:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37513 for dynarec-outgoing; Wed, 19 Jul 2000 14:28:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Jul 2000 14:41:44 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <3976197A.8741AE92@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > coded themselves into a corner, instead of a redesign they just hack at it > > until it kinda works. It's analogous to "fixing" a coolant leak due to a > > bad head gasket by putting in coolant sealer instead of fixing the bad > This could be easily seen everywhere, just look how the world is. :P > If you have somekind of dangerous garbage just throught it where noone > could see it. The next generations will handle the problem. Precisely. I hate people who don't do a job right. > > * People are in love with their code. The way they did it is always the > > best way, even when they've been shown there are much better ways to do > I think I don't have this problem. I always think my code is the worst. > ;) > In any case in my mind the more important thing is to learn new things > and improve. And this can be achivied thinking you are doing the best. Exactly. I don't think you have that problem, either, but then again I've not seen any of your code! ;-) > > * People often don't weigh options before coding. I've seen programmers go > > out of their way to support bank switching in their CPU cores when they > Lazyness and topics. If you think portability it's good just made > portable. Here in my university the departament about software > have such kind of manias. Which is why I have such a low opinion of universities and software development. They're high on concepts. I practically have to retrain people who are straight out of college. Whenever a new college grad is using some construct, I ask them why they're doing it. If the answer is "because that's what we were taught in school", my response is usually "This is phase 1 of unlearning a few things that you learned in school". Like violent aversion to gotos. They have their place and if used properly are advantageous in terms of code flow and bug reduction. But a university will teach you to write convoluted logic to get around using a simple goto. > > * Most programmers would rather make it work than do it "right". As an > > example, a peer project lead did a code release of our firmware that had a > > register trashing bug - it could trash a single register at *ANY* time, > We are all short of time. Why worry about a little error. There are > a lot of beta tester who will buy and test our program for use. ;) In our case it's mission cirtical, and the software shouldn't have been released. In short, our software must be up 24/7. We CANNOT tolerate a failure. It's controlling $60K worth of hardware and if it goes down, they can't power up, power down, etc... the system is dead! > > One problem I continuosly run into, is that I spend a lot of time thinking > > about things before implementing them, so by the time I speak up, I've > You are somethink incredible my poor mind could handle million of paths. > ;) Well, it *IS* spread over time. > In any case there are people who is more likely to think another ways > of doing things. But what really hurts me is people who don't want to > listen. Sometmies I come across that way, but iternally I'm just looking for holes in the design and ways to make it NOT work. I do this to my own designs, too. Isn't that the mark of a true SW engineer - one who comes up with a methodology and pokes holes in it? > > definitions, etc...) As an example, they would create an array of UINT32s > > and array of UINT8 *'s for ROM images instead of a structure that > > contained them both. Then they'd create macros that'd tuck them in the > > appropriate place. It was "excused" as a "different way of coding". Go > For me when you get a new idea you should have to study it and see it > is better or not than yours. Sometimes could be difficult admit others > could do the thinks better than you have to try to avoid this kind of > thoughts. I always try to be open minded. Sometimes one approach is better than the other given different operating requirements. Most arguments I see are based on two guys having two different goals arguing about which is "better". If your goals aren't the same, then no amount of "convincing" the other guy will work. It's like arguing about religion. Unless it's a common base, there can be no winner. > I'm with you about what need this world. Good thinkers, open minded > of the world join against the ignorance and the masses!! ;) > I'm still waiting you convince my about that strange method of implement > timing I thought. ;) Later when we start the to code our dynarec. I > to admit I was very near to surrender. As with anything, I look for flaws or weaknesses in design. Our debate was a combination of not being able to adequately explain the concept to the other guy, in addition to it having a few holes. It might've looked like I didn't think it was a good idea, but I was only looking to figure out where the holes were. > You will be in trouble when I get my own working. ;) Just wait I will > implement my own emulator or I end my university project. No way I'm > feel far from your knowledge and wisdom. ;( And about Marat I think he Hey, use, abuse and improve. Just share the knowledge. ;-) I STILL need to get the lexer out, but I've been sidetracked by my Black Knight 2000 pinball playfield changeover (www.synthcom.com/~neil/bk2k). It's a big job and taking lots longer than I expected, plus I am having to work on the 8051 project again to get flash programming working properly. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 14:31:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37525 for dynarec-outgoing; Wed, 19 Jul 2000 14:31:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Jul 2000 14:44:43 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <00036ccaaa820dc7_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >* People don't think long term or look at the bigger picture. When they've > >coded themselves into a corner, instead of a redesign they just hack at it > >until it kinda works. > Seems I'm different. The reason why I don't have a MIPS-to-ARM dynarec yet is > that I noticed that my first approach was crap and trashed it. Then I did > more reasearch, was a bit too lazy to continue, and finally stranded here ;-) I wouldn't have tolerated any other type of attitude. ;-) > >* People are in love with their code. > Some of my code is total trash and I'm often surprised to find out what code > I wrote just a few weeks ago because I simply don't recognise it anymore. Even code I wrote 3 years ago I wince at. > >* People often don't weigh options before coding. > I try to do that but sometimes you simply don't have the time to consider all > possible options. That's true, but most don't consider *ANY* options even if it's just 5 minutes of time! There is analysis paralysis(sp?) that happens and you never get out of the starting gate. We've had that a few times and I've booted people out of meetings because of it. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 14:57:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37560 for dynarec-outgoing; Wed, 19 Jul 2000 14:56:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <39760AF3.11E06F11@dynarec.com> Subject: Re: DYNAREC: Searching new links From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Thu, 20 Jul 2000 00:18:03 +0200 Message-ID: <1ee1hg5.12y1j49eoc0u8M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id OAA37555 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > http://www.vmac.org/icecube/main.html Nothing done for the moment or at least, publicly "advertised". > And this show another point against the name "dynamic recompilation" > because this name is also used, in academical sites, to talk about > code that compiles himself at execution time, to make optimized > code for example. Related with dynamic code generation. I even came up with dynamic instrumentation! You could try: dynamic "object code translation" "dynamic code generation" "dynamic code generator" BTW, looking at this, I fell on tcc: an implementation of 'C. 'C is an extension to ISO C that enables the user to have dynamically generated code specified by C constructs. It looks interesting but unfortunately, it will probably never run under Linux/x86 as the author has graduated and now works on other projects. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 14:57:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37564 for dynarec-outgoing; Wed, 19 Jul 2000 14:56:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <00036cca51f39c7d_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Thu, 20 Jul 2000 00:18:04 +0200 Message-ID: <1ee1k3c.13lxmqa1xj8g02M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id OAA37561 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > You mean RealityMan? I guess UltraHLE is just a hack like the other dynarecs > as well, probably even working with preassembled covers, but who knows. At > least the translation cache look up is a hack, it's said to be done via an > illegal opcode at the beginning of the basic block. Like MAE then. Reminder: MAE is Macintosh Application Environment that runs under Solaris and some versions of HP/UX, IIRC. It emulates a 68LC040. Still if I remember correctly, recompiled code is not looked up through a hash table or any other "traditional" technique. Rather than that, it just puts an m68k illegal opcode in place of the instruction that would have called the BB that is now compiled. MAE's interpretive core is coded with the classical 64K jump table approach. That way, instead of having an illegal_opcode handler for the selected illegal opcode, a pointer to the newly recompiled code is just set in that slot. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 16:34:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA37660 for dynarec-outgoing; Wed, 19 Jul 2000 16:32:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <1ee1k3c.13lxmqa1xj8g02M@[192.168.0.2]> Message-ID: <00036ccc38b75232_mailit@mail.dynarec.com> References: <1ee1k3c.13lxmqa1xj8g02M@[192.168.0.2]> Date: Thu, 20 Jul 2000 01:28:30 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Like MAE then. Reminder: MAE is Macintosh Application Environment that >runs under Solaris and some versions of HP/UX, IIRC. It emulates a >68LC040. Yeah, that name rings a bell. I always tried to find information about it, but the project/product seems to be discontinued. >Still if I remember correctly, recompiled code is not looked up through >a hash table or any other "traditional" technique. Rather than that, it >just puts an m68k illegal opcode in place of the instruction that would >have called the BB that is now compiled. I read the UltraHLE does it slightly different, the illegal opcode is inserted at the beginning of the block to be called. That way you also have a primitive (although not really failsafe) method to identify self-modifying code. Actually I read that in a discussion thread about self-modifying code on Dave's emulator programming message board, but I'm not sure who posted it. >Gwenolé Beauchesne -- M.I.K.e Brooke's Law: Whenever a system becomes completely defined, some damn fool discovers something which either abolishes the system or expands it beyond recognition. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 16:34:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA37670 for dynarec-outgoing; Wed, 19 Jul 2000 16:32:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Searching new links From: "M.I.K.e" In-Reply-To: <39760AF3.11E06F11@dynarec.com> Message-ID: <00036ccc1cfabbd1_mailit@mail.dynarec.com> References: <200007180627.IAA30359@pons.ac.upc.es> <00036cae40066458_mailit@mail.dynarec.com> <3974875C.6EC63A63@dynarec.com> <00036cb6afab435a_mailit@mail.dynarec.com> <39760AF3.11E06F11@dynarec.com> Date: Thu, 20 Jul 2000 01:20:45 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >A friend show me a web searcher last day. It is impressive. It seems >is used also by Yahoo. Perhaps you know it: > www.google.com I think I heard that before, but I normally use AltaVista and Metacrawler. > http://www.vmac.org/icecube/main.html I found that page some months (years?) ago but didn't include it because it doesn't give much information. Also take a look at the bottom of the page: "This site is copyright ©1997 the vMac/IceCube Group"; I guess we won't see it come to life. >I think it could be worth to search a bit on it. I will do when I >have more time. I used to do regular searches (about weekly) some time ago and always came up with the same pages I either already had or absolutely uninteresting ones of which I knew the URL already by heart! That shouldn't keep you from searching though, I hope you'll find something interesting. >And this show another point against the name "dynamic recompilation" >because this name is also used, in academical sites, to talk about >code that compiles himself at execution time, to make optimized >code for example. Related with dynamic code generation. That's what I've always said! >Stack based CPUs for the future? Pascal overcoming C? >Who knows? ;) Oh no, not stack machines again! >Victor -- M.I.K.e User n.: A programmer who will believe anything you tell him. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 16:34:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA37673 for dynarec-outgoing; Wed, 19 Jul 2000 16:32:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Searching new links From: "M.I.K.e" In-Reply-To: <1ee1hg5.12y1j49eoc0u8M@[192.168.0.2]> Message-ID: <00036ccc28132582_mailit@mail.dynarec.com> References: <1ee1hg5.12y1j49eoc0u8M@[192.168.0.2]> Date: Thu, 20 Jul 2000 01:23:51 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I even came up with dynamic instrumentation! What's that? >You could try: >dynamic "object code translation" >"dynamic code generation" >"dynamic code generator" You forgot "binary translation", which led me to Embra... >BTW, looking at this, I fell on tcc: an implementation of 'C. 'C is an >extension to ISO C that enables the user to have dynamically generated >code specified by C constructs. It looks interesting but unfortunately, >it will probably never run under Linux/x86 as the author has graduated >and now works on other projects. Dawson Engler, the guy who did DCG (Dynamic Code Generation not Definite Clause Grammars!) and VCODE? That's interesting stuff, even though it only covers the code generation part of a dynarec. >Gwenolé Beauchesne -- M.I.K.e "If you have to hate, hate gently" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 22:34:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA37944 for dynarec-outgoing; Wed, 19 Jul 2000 22:33:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <00036ccc28132582_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Searching new links From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Thu, 20 Jul 2000 07:55:31 +0200 Message-ID: <1ee25b5.bo89ir1wuv2yeM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id WAA37937 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >I even came up with dynamic instrumentation! > > What's that? Hmm, sort of "runtime" modification of a program, I think. The modifiable parts are, for example (?), calls to a function. e.g. you can search for a call to printf, in the binary file, and change it with your own, or add other parameters. I am now really sure of what I am telling you here... Well, I think there are plenty of restrictions, though. > Dawson Engler, the guy who did DCG (Dynamic Code Generation not Definite > Clause Grammars!) and VCODE? That's interesting stuff, even though it only > covers the code generation part of a dynarec. Yes but you could code the instruction handlers directly in C because just having VCODE is not really useful for a dynamically recompiling cpu emulator. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 22:34:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA37945 for dynarec-outgoing; Wed, 19 Jul 2000 22:33:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <00036ccc38b75232_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Thu, 20 Jul 2000 07:55:33 +0200 Message-ID: <1ee25py.1rn7r1g19iha1yM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id WAA37941 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Actually I read that in a discussion thread about self-modifying code on > Dave's emulator programming message board, but I'm not sure who posted it. As far as self-modifying code is concerned, why not just checksum the block ? This don't really put a big overhead. On top of that, in the epilogue of the compiled BB you could add optimized code of the checksumer. e.g. taking into account code to first align to say 4-byte word boundaries, then code for the main loop and then code for the remaining bytes. The loop can be unrolled for small blocks. Executor checksums the entire block. UAE just compares the first 4 bytes, IIRC. This is not sufficient, in my opinion. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 23:08:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA37983 for dynarec-outgoing; Wed, 19 Jul 2000 23:07:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007200614.IAA13278@pons.ac.upc.es> Subject: Re: DYNAREC: Searching new links In-Reply-To: <1ee1hg5.12y1j49eoc0u8M@[192.168.0.2]> "from Gwenole Beauchesne at Jul 20, 2000 00:18:03 am" To: dynarec@dynarec.com Date: Thu, 20 Jul 2000 08:14:42 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-MIME-Autoconverted: from 8bit to quoted-printable by pons.ac.upc.es id IAA13278 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id XAA37980 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > http://www.vmac.org/icecube/main.html > > Nothing done for the moment or at least, publicly "advertised". > But M.I.K.e is interested with VIPs. > > And this show another point against the name "dynamic recompilation" > > because this name is also used, in academical sites, to talk about > > code that compiles himself at execution time, to make optimized > > code for example. Related with dynamic code generation. > > I even came up with dynamic instrumentation! > > You could try: > dynamic "object code translation" > "dynamic code generation" > "dynamic code generator" > And binary translation or just in time compilation. I have to spend sometime searching. > BTW, looking at this, I fell on tcc: an implementation of 'C. 'C is an > extension to ISO C that enables the user to have dynamically generated > code specified by C constructs. It looks interesting but unfortunately, > it will probably never run under Linux/x86 as the author has graduated > and now works on other projects. > I think M.I.K.e and me (because I used a lot his page about dynarec links ) know about this C extension (and other similar) sometime ago. ;) If really interest it you only have to port it. > Gwenolé Beauchesne Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 23:18:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA37999 for dynarec-outgoing; Wed, 19 Jul 2000 23:17:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007200624.IAA13663@pons.ac.upc.es> Subject: Re: DYNAREC: Searching new links In-Reply-To: <00036ccc1cfabbd1_mailit@mail.dynarec.com> "from M.I.K.e at Jul 20, 2000 01:20:45 am" To: dynarec@dynarec.com Date: Thu, 20 Jul 2000 08:24:45 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-MIME-Autoconverted: from 8bit to quoted-printable by pons.ac.upc.es id IAA13663 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id XAA37996 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > http://www.vmac.org/icecube/main.html > > I found that page some months (years?) ago but didn't include it because it > doesn't give much information. Also take a look at the bottom of the page: > "This site is copyright ©1997 the vMac/IceCube Group"; I guess we won't see > it come to life. > The usual problem with dead pages in the web. There are too many death links or death pages there. :P People should have to delete their pages time by time. We could even do a bit of arqueology on the web this way. ;) There isn't a way I could find something you not?. ;) > That shouldn't keep you from searching though, I hope you'll find something > interesting. > In any case I could learn more about things that you have filtered in your links. The number of matches was around 7.000. ;) But I supose they will become more useless higher the number. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 23:28:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA38015 for dynarec-outgoing; Wed, 19 Jul 2000 23:27:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007200634.IAA30885@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <1ee25py.1rn7r1g19iha1yM@[192.168.0.2]> "from Gwenole Beauchesne at Jul 20, 2000 07:55:33 am" To: dynarec@dynarec.com Date: Thu, 20 Jul 2000 08:34:35 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-MIME-Autoconverted: from 8bit to quoted-printable by pons.ac.upc.es id IAA30885 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id XAA38012 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > Actually I read that in a discussion thread about self-modifying code on > > Dave's emulator programming message board, but I'm not sure who posted it. > > As far as self-modifying code is concerned, why not just checksum the > block ? This don't really put a big overhead. On top of that, in the > epilogue of the compiled BB you could add optimized code of the > checksumer. e.g. taking into account code to first align to say 4-byte > word boundaries, then code for the main loop and then code for the > remaining bytes. The loop can be unrolled for small blocks. > Why don't you explain this a bit further. When is performed the test of the checksum, after each execution of the BB? But then you should also have to store the initial state. And for loops which aren't really self-modifying could mean a really bad performance. I think it could work but perhaps are better solution. There was a small discussion about self-modifying code sometime ago here but there wasn't any great advance. I even talked about try to investigate a way to translate self-modifying code into self-modyfing translations. ;) I always have such a crazy ideas. > Executor checksums the entire block. Where you have found this information? I think the usual documentation about it doesn't say nothing. > Gwenolé Beauchesne Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 23:46:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA38038 for dynarec-outgoing; Wed, 19 Jul 2000 23:45:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007200652.IAA12344@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: "from Neil Bradley at Jul 19, 2000 02:41:44 pm" To: dynarec@dynarec.com Date: Thu, 20 Jul 2000 08:52:35 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > coded themselves into a corner, instead of a redesign they just hack at it > > > until it kinda works. It's analogous to "fixing" a coolant leak due to a > > > bad head gasket by putting in coolant sealer instead of fixing the bad > > This could be easily seen everywhere, just look how the world is. :P > > If you have somekind of dangerous garbage just throught it where noone > > could see it. The next generations will handle the problem. > > Precisely. I hate people who don't do a job right. > Me too. I don't worry about free programmers. The problem that is happening everywhere and with everything in the world. There are times I feel really sick. > > In any case in my mind the more important thing is to learn new things > > and improve. And this can be achivied thinking you are doing the best. > > Exactly. I don't think you have that problem, either, but then again I've > not seen any of your code! ;-) > You will can see my code when we begin to code the dynarec. ;) > > > * People often don't weigh options before coding. I've seen programmers go > > > out of their way to support bank switching in their CPU cores when they > > Lazyness and topics. If you think portability it's good just made > > portable. Here in my university the departament about software > > have such kind of manias. > > Which is why I have such a low opinion of universities and software > development. They're high on concepts. I practically have to retrain > people who are straight out of college. Whenever a new college grad is > using some construct, I ask them why they're doing it. If the answer is > "because that's what we were taught in school", my response is usually > "This is phase 1 of unlearning a few things that you learned in > school". Like violent aversion to gotos. They have their place and if used > properly are advantageous in terms of code flow and bug reduction. But a > university will teach you to write convoluted logic to get around using a > simple goto. > Don't eve try to use a goto with a professor of the departament I talked about. ;) I don't like it. As in my university you have a great freedom to study the subjects you want I spend my time avoiding the subjects of this departament. So I ended in the Computer Architecture departament which is more related with the hardware, CPUs, OS and so on. > > In any case there are people who is more likely to think another ways > > of doing things. But what really hurts me is people who don't want to > > listen. > > Sometmies I come across that way, but iternally I'm just looking for holes > in the design and ways to make it NOT work. I do this to my own designs, > too. Isn't that the mark of a true SW engineer - one who comes up with a > methodology and pokes holes in it? > Ummm ... althought my studies are called "Computer Science Enginery" a lot of times isn't taught really as a enginery. It has still some of the old "kind of art" flavour programming has at the beginnings of the time. Interesting, try to find holes in a methodology. Should begin to use it. But then I will find to many holes in my methodologies. ;) > > I'm with you about what need this world. Good thinkers, open minded > > of the world join against the ignorance and the masses!! ;) > > I'm still waiting you convince my about that strange method of implement > > timing I thought. ;) Later when we start the to code our dynarec. I > > to admit I was very near to surrender. > > As with anything, I look for flaws or weaknesses in design. Our debate was > a combination of not being able to adequately explain the concept to the > other guy, in addition to it having a few holes. It might've looked like I > didn't think it was a good idea, but I was only looking to figure out > where the holes were. > Well I admit I explained it someway bad, but sometimes I thought you weren't paying enough atention. I had to say some things three times before you get it. ;) I was always thinking that it was this kind of ideas that could sound well but in the real world won't work. It's perhaps too complicated and solutions that are too complicated aren't usually the best. > I STILL need to get the lexer out, but I've been sidetracked by my Black > Knight 2000 pinball playfield changeover (www.synthcom.com/~neil/bk2k). > It's a big job and taking lots longer than I expected, plus I am having to > work on the 8051 project again to get flash programming working properly. > For a guy so lazy as I am, every time you talk about all the projects you have at the same time I feel bad. ;) How do you have such energies? ;) I feel tired only with reading about it!! ;o > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 19 23:51:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA38051 for dynarec-outgoing; Wed, 19 Jul 2000 23:50:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 20 Jul 2000 00:04:03 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <200007200652.IAA12344@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > school". Like violent aversion to gotos. They have their place and if used > > properly are advantageous in terms of code flow and bug reduction. But a > > university will teach you to write convoluted logic to get around using a > > simple goto. > Don't eve try to use a goto with a professor of the departament I talked > about. ;) I don't like it. There's one and only one practical use for a goto, and that's for making something that has error conditions exit at a single point (including deallocation). Makes it easier to trace and far less prone to bugs. But using gotos for control flow or trying to get around using C constructs is way evil. > > other guy, in addition to it having a few holes. It might've looked like I > > didn't think it was a good idea, but I was only looking to figure out > > where the holes were. > Well I admit I explained it someway bad, but sometimes I thought you > weren't paying enough atention. I had to say some things three times > before you get it. ;) We had a language problem. You'd say one thing, then something completely opposite of it - or at least that's the way it came across even if it wasn't your intention. > > Knight 2000 pinball playfield changeover (www.synthcom.com/~neil/bk2k). > > It's a big job and taking lots longer than I expected, plus I am having to > > work on the 8051 project again to get flash programming working properly. > For a guy so lazy as I am, every time you talk about all the projects you > have at the same time I feel bad. ;) How do you have such energies? ;) > I feel tired only with reading about it!! ;o It's either that or I feel like I'm not getting anything done! Couple that with my job, and I've got a real day's full from the time I get up to the time I go to sleep! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 20 00:04:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA38076 for dynarec-outgoing; Thu, 20 Jul 2000 00:02:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Thu, 20 Jul 2000 09:05:58 +0200 Message-ID: <01bff218$f4364f00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, I'm back! And this time... I'm older (it was my birthday last Saturday)! :o >As far as self-modifying code is concerned, why not just checksum the >block ? This don't really put a big overhead. On top of that, in the >epilogue of the compiled BB you could add optimized code of the >checksumer. e.g. taking into account code to first align to say 4-byte >word boundaries, then code for the main loop and then code for the >remaining bytes. The loop can be unrolled for small blocks. I was thinking of doing just this. But I wanted to take this further. We could use this to keep count of how many times we've recompiled an area (don't bother optimising that memory block if it's high) and we could also use it to mark out what is code and what is data (if that's useful). I've been giving things like this some thought! My particular area of interest is handling self-modifying code. But this is a long time in the future and I'm thinking I shouldn't concentrate on this just at the moment... >UAE just compares the first 4 bytes, IIRC. This is not sufficient, in my >opinion. Agreed. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 20 00:07:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA38089 for dynarec-outgoing; Thu, 20 Jul 2000 00:06:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007200714.JAA19782@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: "from Neil Bradley at Jul 20, 2000 00:04:03 am" To: dynarec@dynarec.com Date: Thu, 20 Jul 2000 09:14:08 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > school". Like violent aversion to gotos. They have their place and if used > > > properly are advantageous in terms of code flow and bug reduction. But a > > > university will teach you to write convoluted logic to get around using a > > > simple goto. > > Don't eve try to use a goto with a professor of the departament I talked > > about. ;) I don't like it. > > There's one and only one practical use for a goto, and that's for making > something that has error conditions exit at a single point (including > deallocation). Makes it easier to trace and far less prone to bugs. But > using gotos for control flow or trying to get around using C constructs > is way evil. > I think I have used something similar when I used hosted SQL (I think using SQL over PASCAL ... or was C, I can't remember). > > > other guy, in addition to it having a few holes. It might've looked like I > > > didn't think it was a good idea, but I was only looking to figure out > > > where the holes were. > > Well I admit I explained it someway bad, but sometimes I thought you > > weren't paying enough atention. I had to say some things three times > > before you get it. ;) > > We had a language problem. You'd say one thing, then something completely > opposite of it - or at least that's the way it came across even if it > wasn't your intention. > I should have to return to school an learn more english. ;) Sorry mine english be bad. Me be just learned. ;) > > > Knight 2000 pinball playfield changeover (www.synthcom.com/~neil/bk2k). > > > It's a big job and taking lots longer than I expected, plus I am having to > > > work on the 8051 project again to get flash programming working properly. > > For a guy so lazy as I am, every time you talk about all the projects you > > have at the same time I feel bad. ;) How do you have such energies? ;) > > I feel tired only with reading about it!! ;o > > It's either that or I feel like I'm not getting anything done! Couple that > with my job, and I've got a real day's full from the time I get up to the > time I go to sleep! > Please! Stop! I'm feeling really bad! All the day full!! (And more taking into account how few time you sleep) I couldn't even think on it. ;)) I think if I was a bit different and I was more into programming projects it would happen me the same. But I think is too stressing, somedays that I have spent too many time into emulation (as when I wrote the SI docs) I feel later too excited with new ideas and I couldn't even sleep properly. > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 20 00:15:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA38102 for dynarec-outgoing; Thu, 20 Jul 2000 00:14:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007200721.JAA17507@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff218$f4364f00$35901a17@turkey> "from Neil Griffiths at Jul 20, 2000 09:05:58 am" To: dynarec@dynarec.com Date: Thu, 20 Jul 2000 09:21:26 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > I'm back! And this time... I'm older (it was my birthday last Saturday)! :o > Hello!! I was wondering what was happening with you. ;) Don't you begin to feel yourself too old now, little boy. ;) > >As far as self-modifying code is concerned, why not just checksum the > >block ? This don't really put a big overhead. On top of that, in the > >epilogue of the compiled BB you could add optimized code of the > >checksumer. e.g. taking into account code to first align to say 4-byte > >word boundaries, then code for the main loop and then code for the > >remaining bytes. The loop can be unrolled for small blocks. > > > I was thinking of doing just this. But I wanted to take this further. We > could use this to keep count of how many times we've recompiled an area > (don't bother optimising that memory block if it's high) and we could also > use it to mark out what is code and what is data (if that's useful). > I don't think so. It could be a good idea but I think complicate the things will be bad for performance, no real improvement. I now doubt that internal profiling could be so useful for the scope of our dynarec. If as Neil B says the compilation is performe so fast it won't be necessary to have different optimization levels. > I've been giving things like this some thought! My particular area of > interest is handling self-modifying code. But this is a long time in the > future and I'm thinking I shouldn't concentrate on this just at the > moment... > I'm also interested!!! ;) > > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 20 00:27:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA38121 for dynarec-outgoing; Thu, 20 Jul 2000 00:25:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Searching new links From: "M.I.K.e" In-Reply-To: <200007200624.IAA13663@pons.ac.upc.es> Message-ID: <00036cd30910c191_mailit@mail.dynarec.com> References: <200007200624.IAA13663@pons.ac.upc.es> Date: Thu, 20 Jul 2000 09:36:16 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The usual problem with dead pages in the web. There are too many >death links or death pages there. :P People should have to delete their >pages time by time. We could even do a bit of arqueology on the web >this way. ;) Hehe, let's reserve that title "doctor of web archiology" ;-) >There isn't a way I could find something you not?. ;) You could try ;-) "There is no try." - Oh, shut up Yoda! >In any case I could learn more about things that you have filtered in >your links. The number of matches was around 7.000. ;) But I supose >they will become more useless higher the number. Yeah, searchengines sometimes return strange results. E.g. I once searched for forensic linguistics, but didn't find much useful stuff. One of my friends gave me a hint that some professor from an university in England had given a talk about that topic some time ago. So I searched for the name of the guy and the name of the location and ended up on the page of a rabbit breeders club! >Victor -- M.I.K.e OK, so you're a Ph.D. Just don't touch anything. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 20 02:26:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA38378 for dynarec-outgoing; Thu, 20 Jul 2000 02:25:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007200932.LAA00191@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <00036cca51f39c7d_mailit@mail.dynarec.com> "from M.I.K.e at Jul 19, 2000 11:12:24 pm" To: dynarec@dynarec.com Date: Thu, 20 Jul 2000 11:32:08 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I think I don't like the way university projects work. I work in one of > >them and I'm beginning to hate it. Do you believe than I'm supposed to > >implement dynamic translation capabilities into a static binary > >translator! > > Does that mean you have to include a translator in the statically translated > binary? > No, we are still translating to our VIP and then interpreting it with a VM. What I will have to add is the code so when there is a load system call the VM calls the translator (a different program) which will produce a translated binay which will have to be loaded into the running translated binary, probably having to reallocate all the structures. I don't think we couldn't do it with our VIP to target translator (who are still waiting for real development). > >I would like to know what Sardu > > I'm not sure if Sardu ever thought of doing a dynarec. > I think he implemente something strange with loops to speed up Genecyste (perhaps also Callus). But I don't know if it was a hack or what. > >PS: About the mistake in my page. I put the other mail address because > >I read it more usually (this could change now I have Internet access at > >home). > > Well, it was mainly about the missing "mailto:", but I thought you'd be using > your dynarec.com address now so I adjusted that as well. > I haven't used html or designed webs so there are a lot of things I don't know. > >And in any case I should have to rewrite the full thing. Add > >a page about our actual project and ... How many work there are to be > >done!! ;) > > Especially the "I hate Crusoe" page! ;-) > > -- Well it is beginning to be useless. Who has talked or heard about Crusoe last two months. It seems they have done a jump into the void. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 20 09:15:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA38691 for dynarec-outgoing; Thu, 20 Jul 2000 09:14:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <200007200932.LAA00191@pons.ac.upc.es> Message-ID: <00036cda45bbf48b_mailit@mail.dynarec.com> References: <200007200932.LAA00191@pons.ac.upc.es> Date: Thu, 20 Jul 2000 18:14:18 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >No, we are still translating to our VIP and then interpreting it with >a VM. What I will have to add is the code so when there is a load system >call the VM calls the translator (a different program) which will >produce a translated binay which will have to be loaded into the running >translated binary, probably having to reallocate all the structures. Ugh, that *is* messy! >I think he implemente something strange with loops to speed up >Genecyste (perhaps also Callus). But I don't know if it was a hack >or what. I always wondered what this "initializing 68K emulation" message on startup means, but I thought that could be something like a dynamically generated jump table. >I haven't used html or designed webs so there are a lot of things I don't >know. Ok, currently you have: This tells the server to go up three directories and look for a file "vmoya@ac.upc.es". If you want the browser to open a mail window with the email address inserted you have to write: >> Especially the "I hate Crusoe" page! ;-) >Well it is beginning to be useless. Who has talked or heard about Crusoe >last two months. It seems they have done a jump into the void. Hmm, you're probably right. Or they hit us with "hey we have Linus Torvalds with us" announcements again... >Victor -- M.I.K.e If you don't have a nasty obituary you probably didn't matter. -- Freeman Dyson --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 20 14:41:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA38951 for dynarec-outgoing; Thu, 20 Jul 2000 14:40:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008e01bff29c$3a49d380$0100a8c0@lion> From: "Neil Griffiths" To: References: <200007180627.IAA30359@pons.ac.upc.es> <00036cae40066458_mailit@mail.dynarec.com> <3974875C.6EC63A63@dynarec.com> <00036cb6afab435a_mailit@mail.dynarec.com> <39760AF3.11E06F11@dynarec.com> <00036ccc1cfabbd1_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Searching new links Date: Thu, 20 Jul 2000 23:34:39 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >>A friend show me a web searcher last day. It is impressive. It seems >>is used also by Yahoo. Perhaps you know it: >> www.google.com > >I think I heard that before, but I normally use AltaVista and Metacrawler. Google is currently my #1 search engine. It used to be HotBot but they deleted all their data a while back to start again and it was never quite as good. It should be okay again now, but I'm hooked on Google. Another good search engine should be www.northernlights.com (that may not be correct, that's from memory). If I remember correctly, you can also do a FTP search which searches *inside* files which could be useful. Security risk, but useful nonetheless... >>Stack based CPUs for the future? Pascal overcoming C? >>Who knows? ;) > >Oh no, not stack machines again! Bleh. BTW, I'm taking Microprocessors as one of my options next year. Reasons? Well, I wouldn't be on this list if I wasn't interested. Also, the fact that I only have to do 1 hour/week didn't twist my arm. Much. That leaves me *plenty* of time to get on with silly things like dynarecs. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 20 23:28:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA39325 for dynarec-outgoing; Thu, 20 Jul 2000 23:28:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Searching new links Date: Fri, 21 Jul 2000 08:31:57 +0200 Message-ID: <01bff2dd$5e182c80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Bleh. BTW, I'm taking Microprocessors as one of my options next year. >Reasons? Well, I wouldn't be on this list if I wasn't interested. Also, the >fact that I only have to do 1 hour/week didn't twist my arm. Much. That >leaves me *plenty* of time to get on with silly things like dynarecs. :) BTW, I was doing some reading on the "Turing machine" the other day. Very interesting - but I wonder how possible it would be? I don't know - a perfect computer? :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 20 23:28:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA39335 for dynarec-outgoing; Thu, 20 Jul 2000 23:28:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Fri, 21 Jul 2000 08:29:55 +0200 Message-ID: <01bff2dd$15607380$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Catching up with all the e-mail I missed. Fun! :) >* People don't think long term or look at the bigger picture. When they've >coded themselves into a corner, instead of a redesign they just hack at it >until it kinda works. It's analogous to "fixing" a coolant leak due to a >bad head gasket by putting in coolant sealer instead of fixing the bad >head gasket. I agree. >* People are in love with their code. The way they did it is always the >best way, even when they've been shown there are much better ways to do >it. Over the years I've learned to be seflessly proud of the code I >produce. If someone can show me a better way to do it, I'm all for >it! Most aren't this way, though. Speaking from personal experience, I have to agree. I'm *always* looking for new ways to improve my coding skills and I can look at things I wrote only last year and grimace when I see how I can improve my code. Most people, however, don't want to self-improve. They see themselves as being "perfect" and what they do is perfectly fine and in no need of improvement. I can't see why people are like that myself - I personally appreciate anything that can be done to make my life easier. Never mind. So long as I don't have to deal with people like this too often... >* People often don't weigh options before coding. I've seen programmers go >out of their way to support bank switching in their CPU cores when they >won't ever use it. The same goes for people who write code to be portable >(foregoing performance or readability) but never port it. Ah yes, portability. Well written code will usually be quite easy to port. Much easier than hacks are for example. >* Most programmers would rather make it work than do it "right". As an >example, a peer project lead did a code release of our firmware that had a >register trashing bug - it could trash a single register at *ANY* time, >causing very upredictable behavior. But he wanted to make a release >schedule so he released it even with this problem. I short circuited it by >telling evaluation to not test it because of this problem. Agreed. And remind me never to cross paths with you when programming. ;) >One problem I continuosly run into, is that I spend a lot of time thinking >about things before implementing them, so by the time I speak up, I've >already been down a million paths on the problem. Couple this with the >behaviors of the standard programmer listed above, and I wind having to >explain things over and over again, and half the time they don't listen. Believe me, I know this problem. I am a self-taught programmer. I believe this can make you (though not necessarily) a better programmer. Why? Well, you weren't taught the "right" way to do something, you'll always choose the best way you know of. Also, you're more likely to adapt to new methods as and when you discover them. This is, of course, my opinion - but one I think (and hope!) you'll agree with! >You wouldn't believe how people like to spin doctor their methods into >sounding superior. A couple of years ago I called someone in the MAMEDEV >team on lack of custom structures to handle certain things (like game >definitions, etc...) As an example, they would create an array of UINT32s >and array of UINT8 *'s for ROM images instead of a structure that >contained them both. Then they'd create macros that'd tuck them in the >appropriate place. It was "excused" as a "different way of coding". Go >figger. That's funny. Why? Surely it would be both easier - and faster - to use a structure? In this case this can't be confused as a "different way of coding" because it is, quite simply, a hack. Love the way you say "Go figger" BTW - I think I'm going to spell it that way too. I like that. :) >The way I judge the good from the bad is based upon how well others listen >to ideas and consciously weigh one alternative to another. I'm blessed >with the group of outspoken individuals in this group. Good listeners and >good thinkers. We need more of this world wide! Even if we don't agree, we >do weigh tradeoffs and options. And when people have an unreasonable hatred of string handling in a certain language, everyone can make those people change their minds. ;) No, really, I'm also thankful for this group. I think we all have a certain intelligence level (that's not really what I mean - but it'll do) and we've all got one goal in common. I'm glad we've all got different viewpoints too. I don't think I'd enjoy this list half as much if we all kept agreeing all the time. Being able to argue and discuss things means we have more chance of getting something to work in the best way possible. It would be nice to think that there are many people like this world-wide. Sadly, I don't believe this is the case. Yes, it would be a great thing if there was more of this world-wide! >> It seems I'm a bit dislexic, mainly when I write fast and english. ;) > >Well, dyslexic would've caused a reversal of letters - not a replacement >of one. ;-) Actually, there are different types of dyslexia. There is one type which actually causes the person to see one letter as another one and so could have caused this. One of my friends in high school was afflicted with this type. I don't know enough about it to know the name - but I guarantee it's named after a person. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 20 23:38:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA39351 for dynarec-outgoing; Thu, 20 Jul 2000 23:38:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007210646.IAA12701@pons.ac.upc.es> Subject: Re: DYNAREC: Searching new links In-Reply-To: <01bff2dd$5e182c80$35901a17@turkey> "from Neil Griffiths at Jul 21, 2000 08:31:57 am" To: dynarec@dynarec.com Date: Fri, 21 Jul 2000 08:46:22 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > >Bleh. BTW, I'm taking Microprocessors as one of my options next year. > >Reasons? Well, I wouldn't be on this list if I wasn't interested. Also, the > >fact that I only have to do 1 hour/week didn't twist my arm. Much. That > >leaves me *plenty* of time to get on with silly things like dynarecs. :) > > BTW, I was doing some reading on the "Turing machine" the other day. Very > interesting - but I wonder how possible it would be? I don't know - a > perfect computer? :o > Good option! :) Microprocessors (and related subjects) and Operating Systems are the areas I also studied. About Turing machines. What do you mean about a perfect computer? I think actual computers are Turing machines but perhaps the lack of an infinite memory and infinite process time. ;) I have to admit I haven't studied specially what is a Turing machine, but from what I remember about a subject about algorithm complexity (polynomic, exponential, NP), is nothing more than a tape reader that can performe some operations. It is a kind of extended automat. Perhaps there are also more complicated machines, perhaps someone with stack. It has been a long time since I studied about it (three years!). ;) > Neil. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 20 23:51:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA39370 for dynarec-outgoing; Thu, 20 Jul 2000 23:51:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007210659.IAA08721@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff2dd$15607380$35901a17@turkey> "from Neil Griffiths at Jul 21, 2000 08:29:55 am" To: dynarec@dynarec.com Date: Fri, 21 Jul 2000 08:59:33 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >One problem I continuosly run into, is that I spend a lot of time thinking > >about things before implementing them, so by the time I speak up, I've > >already been down a million paths on the problem. Couple this with the > >behaviors of the standard programmer listed above, and I wind having to > >explain things over and over again, and half the time they don't listen. > > Believe me, I know this problem. I am a self-taught programmer. I believe > this can make you (though not necessarily) a better programmer. Why? Well, > you weren't taught the "right" way to do something, you'll always choose the > best way you know of. Also, you're more likely to adapt to new methods as > and when you discover them. This is, of course, my opinion - but one I think > (and hope!) you'll agree with! > I started by myself but in five years of university studies I think I have been corrupted. ;) I think self-taughting can helps if the person that is self-taughting has enough capacities or intelligence to learn properly. Actually the people that learns by themselves is usually intelligent, the same act of trying to learn shows intelligence. ;) If I compare what I have learn by myself and how bad are teached sometimes things in university (or any other learning institution) I have to admit that self-taughting is a good choice. But perhaps won't work for all people. > No, really, I'm also thankful for this group. I think we all have a certain > intelligence level (that's not really what I mean - but it'll do) and we've > all got one goal in common. I'm glad we've all got different viewpoints too. > I don't think I'd enjoy this list half as much if we all kept agreeing all > the time. Being able to argue and discuss things means we have more chance > of getting something to work in the best way possible. > A bit of arguing is ever fun. ;) > It would be nice to think that there are many people like this world-wide. > Sadly, I don't believe this is the case. Yes, it would be a great thing if > there was more of this world-wide! > Now I have found so easily some in this list I have the hope that there are many of them. The problem is that we don't know each others. ;) > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 21 00:06:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA39397 for dynarec-outgoing; Fri, 21 Jul 2000 00:06:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 21 Jul 2000 00:20:43 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <200007210659.IAA08721@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Believe me, I know this problem. I am a self-taught programmer. I believe > > this can make you (though not necessarily) a better programmer. Why? Well, > > you weren't taught the "right" way to do something, you'll always choose the > > best way you know of. Also, you're more likely to adapt to new methods as > > and when you discover them. This is, of course, my opinion - but one I think > > (and hope!) you'll agree with! Yep. It's absolutely true. I've found that the best programmers we have a are self taught, and for a very simple reason - they're doing it because they love it! > I started by myself but in five years of university studies I think > I have been corrupted. ;) I think self-taughting can helps if the > person that is self-taughting has enough capacities or intelligence > to learn properly. Back in my early computer days (circa 1977), there wasn't even a computer science degree to be had, and there were no programming courses offered in the first place. So what did I do? Taught myself! Books and I subscribed to something called CLOAD magazine. It was a company that had source files distributed on tape from various contributors, and I learned by examples found there. > If I compare what I have learn by myself and how bad are teached > sometimes things in university (or any other learning institution) I have > to admit that self-taughting is a good choice. But perhaps won't work > for all people. True. Some people's worst nightmare is a blank sheet of paper. ;-) The one problem with schooling is that usually that's all the teachers have ever done. And if all you've done is taught on the subject, you're fucking useless. > > It would be nice to think that there are many people like this world-wide. > > Sadly, I don't believe this is the case. Yes, it would be a great thing if > > there was more of this world-wide! > Now I have found so easily some in this list I have the hope that there > are many of them. The problem is that we don't know each others. ;) And what's funny is I don't think of you as a Spaniard, a Brit, a German, and a Frenchman. I think of you as "my buddies on the Dynarec list". ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 21 00:19:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA39413 for dynarec-outgoing; Fri, 21 Jul 2000 00:19:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007210726.JAA15856@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: "from Neil Bradley at Jul 21, 2000 00:20:43 am" To: dynarec@dynarec.com Date: Fri, 21 Jul 2000 09:26:47 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Yep. It's absolutely true. I've found that the best programmers we have a > are self taught, and for a very simple reason - they're doing it because > they love it! > I agree. In fact I think was more happy when I was studying about computers by myself than when I was studying some subjects in the university. I think also that university studies are a lot of useful, but you have to take them as a training for learning and as introduction for a science. It also helps to learn a bit about theory and methodologies that aren't usually learned in the wild. But don't try to apply what you have been taught as it was a law. I have to admit that there also wonderful professor that help you learn something different than the subject they are studying. They teach a way of think. I have found a few of them, unluckily they aren't so common. > > I started by myself but in five years of university studies I think > > I have been corrupted. ;) I think self-taughting can helps if the > > person that is self-taughting has enough capacities or intelligence > > to learn properly. > > Back in my early computer days (circa 1977), there wasn't even a computer > science degree to be had, and there were no programming courses offered in > the first place. So what did I do? Taught myself! Books and I subscribed > to something called CLOAD magazine. It was a company that had source files > distributed on tape from various contributors, and I learned by examples > found there. > I born in 77. ;) This shows that I'm as a baby in front of your experience. I think I get my first computer around 88 or 89. But I didn't started to read some books in my city libraries until 92 or so. You won me in experience by a bunch of years. ;) Actually what kind of computer there were in 77, Apple perhaps? And of course those huge mainframes and some university computers. > > > It would be nice to think that there are many people like this world-wide. > > > Sadly, I don't believe this is the case. Yes, it would be a great thing if > > > there was more of this world-wide! > > Now I have found so easily some in this list I have the hope that there > > are many of them. The problem is that we don't know each others. ;) > > And what's funny is I don't think of you as a Spaniard, a Brit, a German, > and a Frenchman. I think of you as "my buddies on the Dynarec list". ;-) > Neither some as Americans. ;) > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 21 00:24:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA39426 for dynarec-outgoing; Fri, 21 Jul 2000 00:24:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 21 Jul 2000 00:38:38 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <200007210726.JAA15856@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > for a science. It also helps to learn a bit about theory and methodologies > that aren't usually learned in the wild. But don't try to apply what > you have been taught as it was a law. I have to admit that there also > wonderful professor that help you learn something different than the > subject they are studying. They teach a way of think. I have found a > few of them, unluckily they aren't so common. Yes, that's what I've found. The only university courses I've taken that have given me any worth is compiler design theory, OS theory, algorithms and data structures. > > Back in my early computer days (circa 1977), there wasn't even a computer > > science degree to be had, and there were no programming courses offered in > I born in 77. ;) This shows that I'm as a baby in front of your experience. > I think I get my first computer around 88 or 89. But I didn't started to > read some books in my city libraries until 92 or so. You won me in experience > by a bunch of years. ;) Actually what kind of computer there were in 77, > Apple perhaps? And of course those huge mainframes and some university > computers. I had a TRS-80 model 1. It had a real processor in it. Unlike that crappy 6502. ;-) But I had an Apple later on, an Amiga briefly, and tons of PCs and PC clones throughout the years. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 21 00:35:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA39455 for dynarec-outgoing; Fri, 21 Jul 2000 00:35:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Fri, 21 Jul 2000 09:39:14 +0200 Message-ID: <01bff2e6$c4557d00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> > Believe me, I know this problem. I am a self-taught programmer. I believe >> > this can make you (though not necessarily) a better programmer. Why? Well, >> > you weren't taught the "right" way to do something, you'll always choose the >> > best way you know of. Also, you're more likely to adapt to new methods as >> > and when you discover them. This is, of course, my opinion - but one I think >> > (and hope!) you'll agree with! > >Yep. It's absolutely true. I've found that the best programmers we have a >are self taught, and for a very simple reason - they're doing it because >they love it! Yes, that's very true. The other reason is that if they don't know how to do something then they'll go do some research. Most people who are "taught" to program will attempt to hack at it until they get it to work. Okay, this is quite a broad statement to make - but a self-taught person is more likely to do research simply because that's the way they originally learnt! >> I started by myself but in five years of university studies I think >> I have been corrupted. ;) I think self-taughting can helps if the >> person that is self-taughting has enough capacities or intelligence >> to learn properly. > >Back in my early computer days (circa 1977), there wasn't even a computer >science degree to be had, and there were no programming courses offered in >the first place. So what did I do? Taught myself! Books and I subscribed >to something called CLOAD magazine. It was a company that had source files >distributed on tape from various contributors, and I learned by examples >found there. I got my first computer back in 1988 - an Amstrad CPC 464. It wasn't my first introduction to computers - friends of mine had computers and I'd used them at school - and I'd also played on a few arcade machines. But this was *my* computer. I remember that particular Christmas day very well - which is good given that I was only 9! The CPC came with a big thick manual with all the operating instructions. It also came with a full description of all the BASIC commands and it came with some example programs. I remember typing one in on boxing day (the day after Christmas) and was impressed that it worked. And I just learned from those examples - and from trial and error. Also, all the computer magazines normally came with example source code (the one I'd normally buy was "Amstrad Action") and so I would type them in to see what would happen. And then I'd change lines to see what was different. Completely trial and error. It's a slow way to learn programming - but it's a better way in my opinion. It also gives you a better idea of how computers work - which kind of explains how I eventually moved on to Z80 assembly programming. >True. Some people's worst nightmare is a blank sheet of paper. ;-) The one >problem with schooling is that usually that's all the teachers have ever >done. And if all you've done is taught on the subject, you're fucking >useless. I agree. That's the thing about Uni. It can *never* prepare you for the real world. I know what I'm talking about now because that's what I'm currently in! :o >> Now I have found so easily some in this list I have the hope that there >> are many of them. The problem is that we don't know each others. ;) > >And what's funny is I don't think of you as a Spaniard, a Brit, a German, >and a Frenchman. I think of you as "my buddies on the Dynarec list". ;-) That's the great thing about the Internet, isn't it? It removes all boundries and instead of thinking of people as though they are from other countries, you just think of them as people you know. I've met Mike now a few times and because of this list (or maybe not, it could just be due to my way of thinking) I don't think that he's a German - he's just a guy I know. Yes, as you put it - I think of everyone as "my buddies on the dynarec list". I'm glad we're all friends here - it's nice. And the best thing is - no flaming! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 21 00:57:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA39477 for dynarec-outgoing; Fri, 21 Jul 2000 00:57:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Fri, 21 Jul 2000 09:59:24 +0200 Message-ID: <01bff2e9$958cd600$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >I agree. In fact I think was more happy when I was studying about >computers by myself than when I was studying some subjects in the >university. I think also that university studies are a lot of useful, >but you have to take them as a training for learning and as introduction >for a science. Exactly. They only teach you techniques - but they certainly aren't the only techniques you should use. The idea is that you learn to learn - you can go out and learn other techniques. Sadly, this doesn't actually appear to happen... >It also helps to learn a bit about theory and methodologies >that aren't usually learned in the wild. But don't try to apply what >you have been taught as it was a law. I have to admit that there also >wonderful professor that help you learn something different than the >subject they are studying. They teach a way of think. I have found a >few of them, unluckily they aren't so common. I know what you mean and I agree. >I born in 77. ;) This shows that I'm as a baby in front of your experience. >I think I get my first computer around 88 or 89. But I didn't started to >read some books in my city libraries until 92 or so. You won me in experience >by a bunch of years. ;) Actually what kind of computer there were in 77, >Apple perhaps? And of course those huge mainframes and some university >computers. I'm possibly the baby of this group because I was born in '79! But I beat you for computer experience Victor! ;) I'm guessing this would be a ZX81 or maybe a Vic20. If the Vic20 existed at that time, I'm not sure. No idea what it could be! >Neither some as Americans. ;) Them damn yankees! ;) Nope, I'm not a nationalist. I don't think of people as being from a country, I just think of them as people. :) And I use smilies waaaaay too much. :) Damn! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 21 04:38:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA39817 for dynarec-outgoing; Fri, 21 Jul 2000 04:38:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <01bff2e6$c4557d00$35901a17@turkey> Message-ID: <00036ceaaf4be1a4_mailit@mail.dynarec.com> References: <01bff2e6$c4557d00$35901a17@turkey> Date: Fri, 21 Jul 2000 13:49:09 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>And what's funny is I don't think of you as a Spaniard, a Brit, a German, >>and a Frenchman. I think of you as "my buddies on the Dynarec list". ;-) >That's the great thing about the Internet, isn't it? It removes all >boundries and instead of thinking of people as though they are from other >countries, you just think of them as people you know. Sometimes I'm quite aware that we all are quite foreign (especially when I share a discussion with NB in the middle of the night!) but sometimes I'm not even aware that I'm not using my mother tongue because it's just like talking to a couple of friends. >I've met Mike now a >few times and because of this list (or maybe not, it could just be due to my >way of thinking) I don't think that he's a German - he's just a guy I know. Might be due to the fact that I spoke more English (well sort of) then German to you. But I think the fact that we knew before and have a common interest played a big role as well. >Yes, as you put it - I think of everyone as "my buddies on the dynarec >list". I'm glad we're all friends here - it's nice. And the best thing is - >no flaming! :) Who needs flaming when we can tease each other? ;-) Of course this only works because we all seem to share a certain amount of strange humor ;-) >Neil. -- M.I.K.e Philogyny recapitulates erogeny; erogeny recapitulates philogyny. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 21 10:06:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA40071 for dynarec-outgoing; Fri, 21 Jul 2000 10:06:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39788542.399F8197@dynarec.com> Date: Fri, 21 Jul 2000 19:15:46 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial References: <01bff2e6$c4557d00$35901a17@turkey> <00036ceaaf4be1a4_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Sometimes I'm quite aware that we all are quite foreign (especially when I > share a discussion with NB in the middle of the night!) but sometimes I'm not > even aware that I'm not using my mother tongue because it's just like talking > to a couple of friends. > There are days I find myself thinking in english. ;) > >Yes, as you put it - I think of everyone as "my buddies on the dynarec > >list". I'm glad we're all friends here - it's nice. And the best thing is - > >no flaming! :) > > Who needs flaming when we can tease each other? ;-) > Of course this only works because we all seem to share a certain amount of > strange humor ;-) > Or perhaps madness. ;) > M.I.K.e Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 22 06:22:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA43215 for dynarec-outgoing; Sat, 22 Jul 2000 06:22:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <39788542.399F8197@dynarec.com> Message-ID: <00036d003d2e7845_mailit@mail.dynarec.com> References: <01bff2e6$c4557d00$35901a17@turkey> <00036ceaaf4be1a4_mailit@mail.dynarec.com> <39788542.399F8197@dynarec.com> Date: Sat, 22 Jul 2000 15:32:04 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >There are days I find myself thinking in english. ;) You too? ;-) >> Of course this only works because we all seem to share a certain amount of >> strange humor ;-) >Or perhaps madness. ;) Well, that was so obvious that I didn't mention it ;-) >Victor -- M.I.K.e Computer Science is merely the post-Turing decline in formal systems theory. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 22 06:39:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA43239 for dynarec-outgoing; Sat, 22 Jul 2000 06:39:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3979A63B.D84A22B4@dynarec.com> Date: Sat, 22 Jul 2000 15:48:43 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial References: <01bff2e6$c4557d00$35901a17@turkey> <00036ceaaf4be1a4_mailit@mail.dynarec.com> <39788542.399F8197@dynarec.com> <00036d003d2e7845_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >There are days I find myself thinking in english. ;) > > You too? ;-) > It seems so. :o I will begin to worry when I start to talk with my mother in english. ;) > >> Of course this only works because we all seem to share a certain amount of > >> strange humor ;-) > >Or perhaps madness. ;) > > Well, that was so obvious that I didn't mention it ;-) > Yes. ;) I must be really mad because I have spent five minutes trying to answer to your reply. And still I don't know how. Who cares, it must be that I don't have nothing to do. ;) BTW the last is false, I have many things to do, but I'm not doing them. ;O Where is the parser for the def file?!!! Or we will become more mad than we are now. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 22 09:17:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA43371 for dynarec-outgoing; Sat, 22 Jul 2000 09:17:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000201bff401$73310400$0100a8c0@lion> From: "Neil Griffiths" To: References: <01bff2e6$c4557d00$35901a17@turkey> <00036ceaaf4be1a4_mailit@mail.dynarec.com> <39788542.399F8197@dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Sat, 22 Jul 2000 12:09:44 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > There are days I find myself thinking in english. ;) Strangely enough, I find that I have this problem most of the time! Although I *do* have days where I think in either Welsh, French or German. These are generally strange days... :) > > Who needs flaming when we can tease each other? ;-) > > Of course this only works because we all seem to share a certain amount of > > strange humor ;-) > > > Or perhaps madness. ;) Both of these are valid answers - I prefer Victor's though. :) BTW, we should rename this list to the "Psychic Dynarec" mailing list. Why? Well, as we talk about how Transmeta have disappeared into the void, I found this: http://www.theregister.co.uk/content/3/12087.html Bleh. :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 22 10:06:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA43425 for dynarec-outgoing; Sat, 22 Jul 2000 10:06:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <000201bff401$73310400$0100a8c0@lion> Message-ID: <00036d0361960738_mailit@mail.dynarec.com> References: <01bff2e6$c4557d00$35901a17@turkey> <00036ceaaf4be1a4_mailit@mail.dynarec.com> <39788542.399F8197@dynarec.com> <000201bff401$73310400$0100a8c0@lion> Date: Sat, 22 Jul 2000 19:16:59 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Strangely enough, I find that I have this problem most of the time! Uh, I'm sorry for you that surely is hard! >Although I *do* have days where I think in either Welsh, French or German. >These are generally strange days... :) Man, you're queer! Thinking in German is that possible? ;-) >Both of these are valid answers - I prefer Victor's though. :) Typical for you ;-) >BTW, we should rename this list to the "Psychic Dynarec" mailing list. Why? >Well, as we talk about how Transmeta have disappeared into the void, I found >this: I'm not sure what this has to do with Transmeta, but I we know that we all are mad as hell and I don't think we should express that to the rest of the world yet. >http://www.theregister.co.uk/content/3/12087.html >Bleh. :-/ "So what's so cool about Crusoe, apart from keeping you alive long enough to drink your duty frees?" "So there we have it - you can compare different Transmeta machines with each other, but you can't compare them with a conventional notebook, and that's official." Go figger! ;-) >Neil. -- M.I.K.e If you sit down at a poker game and don't see a sucker, get up. You're the sucker. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 22 10:48:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA43467 for dynarec-outgoing; Sat, 22 Jul 2000 10:48:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 22 Jul 2000 11:02:48 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <000201bff401$73310400$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > BTW, we should rename this list to the "Psychic Dynarec" mailing list. Why? > Well, as we talk about how Transmeta have disappeared into the void, I found > this: > http://www.theregister.co.uk/content/3/12087.html Notice they were comparing the Crusoe against Intel's current line of Pentium III mobile processors. Just wait until mid August when Intel releases the Pentium IIIs that consume half the power of Crusoe and outperform it by at least 30%. Basically that's a company that has no product. Intel is going to kick their ass seriously (also consider the mobile PIIIs are cheaper than the Crusoe, perform better, and consume less power). It's obvious from that article that Transmeta is going to go in to spin doctor mode, where anything negative about the chip is easily brushed off by a simple explanation, like "they aren't exercising the right parts of the Crusoe" to explain away their lackluster performance. At least AMD is a decent competitor to Intel. Transmeta just plain sucks. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 22 13:15:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA43592 for dynarec-outgoing; Sat, 22 Jul 2000 13:15:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <397A02C1.EEA6CC57@dynarec.com> Date: Sat, 22 Jul 2000 22:23:29 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial References: <01bff2e6$c4557d00$35901a17@turkey> <00036ceaaf4be1a4_mailit@mail.dynarec.com> <39788542.399F8197@dynarec.com> <000201bff401$73310400$0100a8c0@lion> <00036d0361960738_mailit@mail.dynarec.com> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >BTW, we should rename this list to the "Psychic Dynarec" mailing list. Why? > >Well, as we talk about how Transmeta have disappeared into the void, I found > >this: > > I'm not sure what this has to do with Transmeta, but I we know that we all > are mad as hell and I don't think we should express that to the rest of the > world yet. > Because this list seems a psychiatric/mental hospital? ;) I don't think it will be so bad, perhaps it could prevent some people to not subscribe into the list. But what will think the other people already subscribed to the list? It could be also called ¨The Four Mad's Dynarec List" because the four us are who keep this list interesting the most of the time. :( > >http://www.theregister.co.uk/content/3/12087.html > >Bleh. :-/ > > "So there we have it - you can compare different Transmeta machines with each > other, > but you can't compare them with a conventional notebook, and that's > official." > This really shit. They even have a document talking about why a tipical benchmark doesn't work properly with their x86 emulator and how the test should be performed. Perhaps a big loop with nops inside? This could run really fast with a dynarec. :P I think anything that isn't self-modyfing code and has a loop of code that executes more than half a second must run properly in a good emulator. I think this include all kind of benchmarks released for x86 in the world. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 23 12:46:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA44831 for dynarec-outgoing; Sun, 23 Jul 2000 12:46:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: 2500 Messages From: "M.I.K.e" Message-ID: <00036d19bda8b0cf_mailit@mail.dynarec.com> Date: Sun, 23 Jul 2000 21:57:33 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com We are now past the 2500 messages border! Strangely enough my last post didn'r make it through, let's see if this one does... -- M.I.K.e There are three things I always forget. Names, faces -- the third I can't remember. -- Italo Svevo --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 23 13:49:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA44898 for dynarec-outgoing; Sun, 23 Jul 2000 13:49:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000901bff4f0$9f4830a0$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036d19bda8b0cf_mailit@mail.dynarec.com> Subject: Re: DYNAREC: 2500 Messages Date: Sun, 23 Jul 2000 22:54:44 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > We are now past the 2500 messages border! > Strangely enough my last post didn'r make it through, let's see if this one > does... Never mind 2500, your message made 3155! This makes it 3156 - and it means we're past the 3000 message barrier! Hurrah! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 23 13:57:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA44916 for dynarec-outgoing; Sun, 23 Jul 2000 13:57:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002901bff4f1$b5ea7380$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036d19bda8b0cf_mailit@mail.dynarec.com> <000901bff4f0$9f4830a0$0100a8c0@lion> Subject: Re: DYNAREC: 2500 Messages Date: Sun, 23 Jul 2000 23:02:33 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Never mind 2500, your message made 3155! This makes it 3156 - and it means > we're past the 3000 message barrier! Hurrah! :) ...or it doesn't - for some strange reason, when I go back to anything before 17/04/00 - I have 3 copies of each message! AARGH! Damn Outlook Express to hell! I'll have to go back through that and delete two of each message. Damnit! :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 23 15:16:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA44990 for dynarec-outgoing; Sun, 23 Jul 2000 15:15:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 2500 Messages From: "M.I.K.e" In-Reply-To: <002901bff4f1$b5ea7380$0100a8c0@lion> Message-ID: <00036d1bbed2c1f3_mailit@mail.dynarec.com> References: <00036d19bda8b0cf_mailit@mail.dynarec.com> <000901bff4f0$9f4830a0$0100a8c0@lion> <002901bff4f1$b5ea7380$0100a8c0@lion> Date: Mon, 24 Jul 2000 00:21:03 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Never mind 2500, your message made 3155! This makes it 3156 - and it means >> we're past the 3000 message barrier! Hurrah! :) >...or it doesn't - for some strange reason, when I go back to anything >before 17/04/00 - I have 3 copies of each message! AARGH! Damn Outlook >Express to hell! I'll have to go back through that and delete two of each >message. Damnit! :-/ Well, it will be a bit more than 2500 messages since I deleted a few (mainly doubles), but we're surely across the 2500 mark. Strangely enough my other posting still didn't get through although I resent it... >Neil. -- M.I.K.e It is much easier to suggest solutions when you know nothing about the problem. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 23 17:59:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA45130 for dynarec-outgoing; Sun, 23 Jul 2000 17:58:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000723180734.007ca970@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 23 Jul 2000 18:07:34 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 2500 Messages In-Reply-To: <002901bff4f1$b5ea7380$0100a8c0@lion> References: <00036d19bda8b0cf_mailit@mail.dynarec.com> <000901bff4f0$9f4830a0$0100a8c0@lion> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Never mind 2500, your message made 3155! This makes it 3156 - and it means >> we're past the 3000 message barrier! Hurrah! :) My mailbox has been feeling the toll... Usually I got one email a day with some spam here and there. Now I get like 20 dynarec mailing list messages, one more email, and then some spam ;) >...or it doesn't - for some strange reason, when I go back to anything >before 17/04/00 - I have 3 copies of each message! AARGH! Damn Outlook >Express to hell! I'll have to go back through that and delete two of each >message. Damnit! :-/ Microsoft. What did you expect? ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 23 23:41:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA45378 for dynarec-outgoing; Sun, 23 Jul 2000 23:41:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: 2500 Messages Date: Mon, 24 Jul 2000 08:43:59 +0200 Message-ID: <01bff53a$8bade180$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >My mailbox has been feeling the toll... Usually I got one email a day with >some spam here and there. Now I get like 20 dynarec mailing list messages, >one more email, and then some spam ;) I'm used to this kind of e-mail. I'm subscribed to the emulator mailing list (also hosted by Neil at Synthcom) and the retrobeta mailing list (cunningly also hosted by Neil) - and these used to be very active lists. They've stopped now - though I'm still subscribed on the off-chance something interesting gets posted... >Microsoft. What did you expect? ;) Well, I didn't expect 3 copies of every mail in my Dynrec folder! :o Neil. PS I could be very quiet tonight. I'm going through a complete software removal/restoral. That means a total loss of data (including partitions) which I'll put back on again. Windows annoyed me for the last time yesterday and now I'm removing everything. When I say fresh install, I *mean* a fresh install. Overkill, but hey! :) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 23 23:43:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA45388 for dynarec-outgoing; Sun, 23 Jul 2000 23:43:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007240650.IAA19261@pons.ac.upc.es> Subject: Re: DYNAREC: 2500 Messages In-Reply-To: <00036d19bda8b0cf_mailit@mail.dynarec.com> "from M.I.K.e at Jul 23, 2000 09:57:33 pm" To: dynarec@dynarec.com Date: Mon, 24 Jul 2000 08:50:55 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > We are now past the 2500 messages border! And almost five months now. We started at 25th of February so tomorrow it will be the date. ;) This means 500 mails/month and 16 mails/day. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 23 23:48:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA45405 for dynarec-outgoing; Sun, 23 Jul 2000 23:48:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Jul 2000 00:03:02 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Status Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I kinda got sidetracked on another project (www.synthcom.com/~neil/bk2k). In short, I'm restoring my Black Knight 2000 pinball machine and what I thought would take a week of evenings will wind up taking almost 2 weeks of evenings. Plus, I *HAVE* to be done by Friday evening - mandate from the wife. She doesn't want playfields and parts laying all over the dining room table (gee, I wonder why?) when a friend's baby shower is held on Saturday, so I've got to bust as much ass as possible and get that pecker back together. But I promise, I swear, I *WILL* continue on with the Dynarec stuff! I just had to get a little sidetracked to get this done. BTW, Dynarec.com has an uptime of 75 days and counting. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 00:05:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA45435 for dynarec-outgoing; Mon, 24 Jul 2000 00:05:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Status Date: Mon, 24 Jul 2000 09:08:17 +0200 Message-ID: <01bff53d$f0b70680$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >I kinda got sidetracked on another project (www.synthcom.com/~neil/bk2k). >In short, I'm restoring my Black Knight 2000 pinball machine and what I >thought would take a week of evenings will wind up taking almost 2 weeks >of evenings. Plus, I *HAVE* to be done by Friday evening - mandate from >the wife. She doesn't want playfields and parts laying all over the dining >room table (gee, I wonder why?) when a friend's baby shower is held on >Saturday, so I've got to bust as much ass as possible and get that pecker >back together. Okay, I don't think any of us is brave enough to argue with a wife. Generically speaking, wives are very good at arguing and also good at winning those arguments. So I think we can live with waiting until next weekend. ;) >But I promise, I swear, I *WILL* continue on with the Dynarec stuff! I >just had to get a little sidetracked to get this done. No problem. Speaking personally, the nearer to September it is, the more time I'll have to work on it! >BTW, Dynarec.com has an uptime of 75 days and counting. ;-) That's cool though. I may consider putting FreeBSD on my machine as a second OS. I'll also put BeOS on this time (yes, Mike - you've convinved me!) to see what I really think... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 00:08:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA45445 for dynarec-outgoing; Mon, 24 Jul 2000 00:08:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Jul 2000 00:23:11 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Status In-Reply-To: <01bff53d$f0b70680$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >room table (gee, I wonder why?) when a friend's baby shower is held on > >Saturday, so I've got to bust as much ass as possible and get that pecker > >back together. > Okay, I don't think any of us is brave enough to argue with a wife. > Generically speaking, wives are very good at arguing and also good at > winning those arguments. So I think we can live with waiting until next > weekend. ;) She's supporting me buying more pinball machines, so I don't really have any room to complain. I asked permission to use the dining room table for the changeover, and she agreed on those conditions. ;-) I was originally working off the floor, to which it made my back hurt so bad I couldn't stand it! > >BTW, Dynarec.com has an uptime of 75 days and counting. ;-) > That's cool though. I may consider putting FreeBSD on my machine as a second > OS. I'll also put BeOS on this time (yes, Mike - you've convinved me!) to > see what I really think... :) If we don't have a power failure or hardware failure, I have confidence that it'll just stay running forever. ;-) We had a thunderstorm here a few nights ago. Power flickered and only one machine rebooted. The rest stayed alive - Synthcom will because it's on a UPS, but Dynarec.com 'aint. Though I'm seriously considering moving it to the garage with Synthcom because of the noise/heat. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 00:23:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA45464 for dynarec-outgoing; Mon, 24 Jul 2000 00:23:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Status Date: Mon, 24 Jul 2000 09:25:36 +0200 Message-ID: <01bff540$5c01d800$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >She's supporting me buying more pinball machines, so I don't really have >any room to complain. I asked permission to use the dining room table for >the changeover, and she agreed on those conditions. ;-) I was originally >working off the floor, to which it made my back hurt so bad I couldn't >stand it! That's cool then. More pinball machines? Do you ever find time to play them? >If we don't have a power failure or hardware failure, I have confidence >that it'll just stay running forever. ;-) We had a thunderstorm here a few >nights ago. Power flickered and only one machine rebooted. The rest stayed >alive - Synthcom will because it's on a UPS, but Dynarec.com 'aint. Though >I'm seriously considering moving it to the garage with Synthcom because of >the noise/heat. I'm considering going ADSL when I go back home to the UK - but I'll use another computer as the server. That's why I'm now interested in FreeBSD. I can keep the other computer in a different room - which certainly gives me less noise! You do realise, of course, that if you move Dynarec then you'll go back to day 1? ;) Personally, however, I've got a feeling that moving it to the garage would be a good choice. But then I've never seen how big your house is so... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 00:29:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA45477 for dynarec-outgoing; Mon, 24 Jul 2000 00:29:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Jul 2000 00:44:29 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Status In-Reply-To: <01bff540$5c01d800$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >the changeover, and she agreed on those conditions. ;-) I was originally > >working off the floor, to which it made my back hurt so bad I couldn't > >stand it! > That's cool then. More pinball machines? Do you ever find time to play them? Oh yeah. I've found a new nirvana - *WORKING* on pinball machines. It's like Banzi trees being spiritual. For me, it's pins. There's nothing more rewarding than making it work and work better. ;-) I'll have complete documentation and pictures with a step by step process of swapping playfields with my Black Knight 2000 on to newer and cleaner playfields. > You do realise, of course, that if you move Dynarec then you'll go back to > day 1? ;) Yeah, and seriously, that's one reason I'm considering leaving it where it is. ;-) > Personally, however, I've got a feeling that moving it to the garage would > be a good choice. But then I've never seen how big your house is so... It's 2700 square feet, though my wife and I are thinking about building another house that's lots bigger (and building a basement, which is uncommon in this part of the country, so I can hold all my pinball machines and video games!). But in this room where I am now (my office), I have 3 computers on 24 hours a day and it gets *HOT* in here. Having one less machine in here reduces that. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 01:57:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA45556 for dynarec-outgoing; Mon, 24 Jul 2000 01:57:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Status Date: Mon, 24 Jul 2000 10:59:46 +0200 Message-ID: <01bff54d$83ab6d00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> That's cool then. More pinball machines? Do you ever find time to play them? > >Oh yeah. I've found a new nirvana - *WORKING* on pinball machines. It's >like Banzi trees being spiritual. For me, it's pins. There's nothing more >rewarding than making it work and work better. ;-) I'll have complete >documentation and pictures with a step by step process of swapping >playfields with my Black Knight 2000 on to newer and cleaner playfields. That's cool. You've found your nirvana. :) >> You do realise, of course, that if you move Dynarec then you'll go back to >> day 1? ;) > >Yeah, and seriously, that's one reason I'm considering leaving it where it >is. ;-) Heh! But if it's causing problems, I think setting it back to day 1 is a small price to pay... >> Personally, however, I've got a feeling that moving it to the garage would >> be a good choice. But then I've never seen how big your house is so... > >It's 2700 square feet, though my wife and I are thinking about building >another house that's lots bigger (and building a basement, which is >uncommon in this part of the country, so I can hold all my pinball >machines and video games!). But in this room where I am now (my office), I >have 3 computers on 24 hours a day and it gets *HOT* in here. Having one >less machine in here reduces that. That's pretty big. Certainly beats my parents house to a pulp. As for the new house - heh! That's cool that you would build a new house just so you have enough space for your pinball and arcade machines! ;) As for the heat, I've got a huge bedroom here. And even that gets warm if I leave my computer on long enough. So I can quite easily imagine your problem! Neil. PS Bought myself a nice 10x4x32 CD-RW Sony CRX-145S drive this weekend. It's faaast. PPS Bought Deus Ex as well. So the longer it is before we start, the better. This could be a nice game! :) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 02:05:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA45727 for dynarec-outgoing; Mon, 24 Jul 2000 02:04:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Jul 2000 02:19:38 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <397A02C1.EEA6CC57@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > "So there we have it - you can compare different Transmeta machines with each > > other, > > but you can't compare them with a conventional notebook, and that's > > official." > This really shit. They even have a document talking about why a tipical > benchmark doesn't work properly with their x86 emulator and how the test > should be performed. Perhaps a big loop with nops inside? This could > run really fast with a dynarec. :P Hey Victor, where's that "Crusoe/Transmeta sucks" site? ;-) I feel like ranting today. Put flamesuits on... ;-) I'm really getting tired of stupid people and stupid companies. Round the bastards up and shoot them. First, the people who are following an OS, a computer company, a processor, etc... for the simple fact that they are anti-something else. Companies could compete nicely if everyone would buy based upon the product that best suits their needs instead of having to feel special. The pro-Transmeta/AMD nazis are a prime example of this. This kind of behavior is *STUPID*. If Intel offers a better product, buy it. If AMD offers a better product, buy it. If Transmeta (hahahaha) offers a better product, buy it. In any case, shut the fuck up with rhetorical nonsense and spindoctoring inferior products just to make them sound like they're better than their competitors. As an example, I'm tired of Mac advocates pushing their stupid little shitboxes and acting like their little 450MHZ G4s outperform a 1GHz PIII. Gimme a break! They're like vegans who have a serious vitamin B12 deficiency. Any bad news for Apple of course isn't true and there's some silver lining. And any good news for Apple is enough to throw it in the face of any non-Mac based computer system. Round these fuckers up and shoot them. ;-) They buy their computers because of how they *LOOK* and not how they *PERFORM*. And those that do buy them for performance actually buy in to Apple marketing bullshit into believing they are faster than PC counterparts. Second, to companies that put up bullshit test whinings like this, you should have your business licenses revoked. There should be some *FORCED* perspective. If your piece of shit processor doesn't perform as well as the competition, too fucking bad. You have to print the truth. None of this "The test isn't fair!" crap when it seems to be OK for other competitors. I've seen this type of thing from the inside at another company (not Intel, FWIW). It's the kind of thing you do when you know you're about ready to get your ass seriously kicked by the competition. Market the fuck out of whatever you have. Whenever it's clobbered in comparative tests, claim the tests aren't fair or spin doctor some other useless facet of your product (like who really gives a crap about power consumption on a desktop or server PC). Hire someone who already is well known (Linus Torvalds or whatever his name is) to say how great it is and never really tout the actual product itself. AMD Is at least a decent competitor to Intel. Transmeta is just a big overhyped, overmarketed, fucking joke. I'm done for the night. Hope you had as much fun as I did. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 02:06:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA45740 for dynarec-outgoing; Mon, 24 Jul 2000 02:06:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007240913.LAA10591@pons.ac.upc.es> Subject: Re: DYNAREC: Status In-Reply-To: <01bff54d$83ab6d00$35901a17@turkey> "from Neil Griffiths at Jul 24, 2000 10:59:46 am" To: dynarec@dynarec.com Date: Mon, 24 Jul 2000 11:13:59 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > >> That's cool then. More pinball machines? Do you ever find time to play > them? > > > >Oh yeah. I've found a new nirvana - *WORKING* on pinball machines. It's > >like Banzi trees being spiritual. For me, it's pins. There's nothing more > >rewarding than making it work and work better. ;-) I'll have complete > >documentation and pictures with a step by step process of swapping > >playfields with my Black Knight 2000 on to newer and cleaner playfields. > > > That's cool. You've found your nirvana. :) > I prefer sitting in lazy lotus position and empty my mind a few hours. ;) I also like to try drawing manga kind faces, but seeing how horribles they are I think it musn't to be so relaxing. :( Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 02:07:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA45749 for dynarec-outgoing; Mon, 24 Jul 2000 02:07:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Jul 2000 02:22:05 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Status In-Reply-To: <01bff54d$83ab6d00$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >documentation and pictures with a step by step process of swapping > >playfields with my Black Knight 2000 on to newer and cleaner playfields. > That's cool. You've found your nirvana. :) It used to be sex and porno tapes, but my wife is pregnant now. Must get something else! ;-) ;-) > >It's 2700 square feet, though my wife and I are thinking about building > >another house that's lots bigger (and building a basement, which is > That's pretty big. Certainly beats my parents house to a pulp. As for the > new house - heh! That's cool that you would build a new house just so you > have enough space for your pinball and arcade machines! ;) Heh. Well, the Mrs. wants a basement (she's from the midwest where they're common because of tornadoes) and suggested, "Hey, if we get one, then we can put all your games down there!". Of course, how could I refuse that kind of logic? ;-) > As for the heat, I've got a huge bedroom here. And even that gets warm if I > leave my computer on long enough. So I can quite easily imagine your > problem! I have an air conditioner, but I like to have the house about 10 degrees cooler than my wife. I *HATE* hot weather, because you just can't get away from it! If it's cold, you can put on a sweater or heavier clothing. In hot weather, you can sweat, and that doesn't help much and it's not very efficient. > PS Bought myself a nice 10x4x32 CD-RW Sony CRX-145S drive this weekend. It's > faaast. Cool! I've got a Yamaha 4416 that I love. I'll upgrade when they burn 16X. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 02:37:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA45781 for dynarec-outgoing; Mon, 24 Jul 2000 02:37:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007240944.LAA18462@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: "from Neil Bradley at Jul 24, 2000 02:19:38 am" To: dynarec@dynarec.com Date: Mon, 24 Jul 2000 11:44:46 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hey Victor, where's that "Crusoe/Transmeta sucks" site? ;-) > Oh, well, last days I have felt very lazy (I'm being so lazy I even am not playing nothing!!). And I think perhaps this kind of thing will work as publicity for Crusoe/Transmeta and it will be better no pay attention to them ... Perhaps I'm just joking we need something to go against. ;) > I feel like ranting today. Put flamesuits on... ;-) > > > XML version 1.0? ;) > I'm really getting tired of stupid people and stupid companies. Round the > bastards up and shoot them. > DOOM/QUAKE kind games where you can create your own enemies are really useful. You could add all your hated enemies and shoot them up. ;) Someone could even say this would be a virtual crime. > First, the people who are following an OS, a computer company, a > processor, etc... for the simple fact that they are anti-something else. > Companies could compete nicely if everyone would buy based upon the > product that best suits their needs instead of having to feel special. The > pro-Transmeta/AMD nazis are a prime example of this. This kind of behavior > is *STUPID*. If Intel offers a better product, buy it. If AMD offers a > better product, buy it. If Transmeta (hahahaha) offers a better product, > buy it. In any case, shut the fuck up with rhetorical nonsense and > spindoctoring inferior products just to make them sound like they're > better than their competitors. > One problem I find with this is how you know what is better. ALL companies talk the good for their products and the bad for the others. And for the private user (not a company) is hard to perform tests by himself. You can either follow all what magazines or web sites say because a lot of times their are biased. And even worst, the more of the people doesn't have the knowledge to perform such comparision. A Computer Science engineer with the especifications of and AMD and Intel CPU (if they are available) could have a very good opinion, but what will do a simple user? I'm not trying to say this kind of people isn't guilty but that the kind of society we live where advertisement (and not truth) is the most important doesn't help either. > As an example, I'm tired of Mac advocates pushing their stupid little > shitboxes and acting like their little 450MHZ G4s outperform a 1GHz PIII. > Gimme a break! They're like vegans who have a serious vitamin B12 > deficiency. Any bad news for Apple of course isn't true and there's some > silver lining. And any good news for Apple is enough to throw it in the > face of any non-Mac based computer system. Round these fuckers up and > shoot them. ;-) They buy their computers because of how they *LOOK* and > not how they *PERFORM*. And those that do buy them for performance > actually buy in to Apple marketing bullshit into believing they are faster > than PC counterparts. > Uggh! I don't like Macs and their good looking computers, they are really horrible with really horrible colours. The only thing I would change in clone PCs is change to colour from grey/white to dark black. ;) With such colour they look really evil. And perhaps they won't look so dirty after a couple of years. > Second, to companies that put up bullshit test whinings like this, you > should have your business licenses revoked. There should be some *FORCED* > perspective. If your piece of shit processor doesn't perform as well as > the competition, too fucking bad. You have to print the truth. None of > this "The test isn't fair!" crap when it seems to be OK for other > competitors. > Every company has done this and will do it. I'm sure even Intel does it. It just how the actual market works. You have to strenght your position against all other no matter the way. And if you can say a middle truth better than saying all the truth. It is advertisement which is used and not explanation of the real characteristics. I don't know how US car spots are, but here in Spain they never really talk how are the cars but show beatiful images, beatiful women and so on. The important is getting the attention of the buyers. > > AMD Is at least a decent competitor to Intel. Transmeta is just a big > overhyped, overmarketed, fucking joke. > Transmeta will die early if it continues this way. I'm sure. I think we won't have to pay attention to them a long time. Perhaps it could even be useful if when they have to sell their company someone buys the source of their "Code Morpher" (I hate this name). ;) > I'm done for the night. Hope you had as much fun as I did. ;-) > Hehehe! :)) > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 03:02:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA45814 for dynarec-outgoing; Mon, 24 Jul 2000 03:02:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007241010.MAA04335@pons.ac.upc.es> Subject: DYNAREC: The future of emulation To: dynarec@dynarec.com Date: Mon, 24 Jul 2000 12:10:07 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com As it seems we will stop the development of our dynarec some days we could start some discussions. Or perhaps not. ;) I think one that could be interesting is this: what will be the future of the emulation escene. I have been following the emulation escene for almost five years now. The first where those MSX and Gameboy emulators from Marat. They seemed really impressive that time. A bit slower on my 486 though. ;) In these years almost everything seems have been emulated. From old arcade machines and consoles to some modern, including some calculators and rare computers. ;) Now, or I feel so, almost all old (early than last 90) arcade have been emulated, but perhaps someones doesn't have enough information, or they are really hard to emulate or they are really rare and haven't been found yet. The same happens for all the microcomputers. And the previous, still living, console generation is nearly to be emulated. There are working emulators for PSX and N64. So what will be the next? Dreamcast or PS2 emulation. ;) Perhaps in two or three years. Of course there are some more modern consoles and arcades that haven't been emulation by lack of interest or information, as Saturn or even Mega32X/MegaCD. But people is working on them. And about arcades I'm sure the people of M.A.M.E. will be adding new machines as they become "obsoletes" for the companies. There aren't new computers though. The PC has almost dominated the world of the home computers. So we won't have much fun here. :( I think the future will come in some lines: first dynarec ;), the emulators for new machines must be dynarec or we will have wait to ten years to get them emulated; second the porting of various emulators to new systems, from Win2000/WinMillenium (not os difficult) to Linux and BeOs; and third emulators for consoles, the big companies perhaps will see the potential market of the emulation world (but I prefer they continue with their lameless actitude so we can blame them ;), one example of this is BleemCast (I hope it will be a lot of better than the PC version). Comments? If everything else is lost we could begin to emulate old mainframes. Boring though ... Someone has made a VAX emulator? Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 04:02:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA45871 for dynarec-outgoing; Mon, 24 Jul 2000 04:02:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 2500 Messages From: "M.I.K.e" In-Reply-To: <3.0.5.32.20000723180734.007ca970@powernet.net> Message-ID: <00036d26848144c0_mailit@mail.dynarec.com> References: <00036d19bda8b0cf_mailit@mail.dynarec.com> <000901bff4f0$9f4830a0$0100a8c0@lion> <3.0.5.32.20000723180734.007ca970@powernet.net> Date: Mon, 24 Jul 2000 13:12:09 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >My mailbox has been feeling the toll... Usually I got one email a day with >some spam here and there. Now I get like 20 dynarec mailing list messages, >one more email, and then some spam ;) Seems you weren't subscribed when NB asked us if we wanted to do the 68K dynarec project. I think we had around 100 messages in 24 hours! >Microsoft. What did you expect? ;) The worst! And it always comes even worse! >Bart -- M.I.K.e Why can't you be a non-conformist like everyone else? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 04:02:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA45876 for dynarec-outgoing; Mon, 24 Jul 2000 04:02:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <200007240944.LAA18462@pons.ac.upc.es> Message-ID: <00036d265fdafc69_mailit@mail.dynarec.com> References: <200007240944.LAA18462@pons.ac.upc.es> Date: Mon, 24 Jul 2000 13:01:54 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> >XML version 1.0? ;) Nope, the following should work in SGML as well: Unfortunately they forgot it define it for HTML... >DOOM/QUAKE kind games where you can create your own enemies are really >useful. You could add all your hated enemies and shoot them up. ;) Is there a Microsoft level for Quake with Billy Boy being the end boss? That would be cool! >Uggh! I don't like Macs and their good looking computers, they are really >horrible with really horrible colours. Indeed, I don't really understand how anybody can enjoy that design! >The only thing I would change in >clone PCs is change to colour from grey/white to dark black. ;) Weren't the NeXT cubes quite dark? >With such >colour they look really evil. And perhaps they won't look so dirty after >a couple of years. Sometimes you see the dust on black even better... >Victor -- M.I.K.e Lost interest? It's so bad I've lost apathy. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 04:02:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA45889 for dynarec-outgoing; Mon, 24 Jul 2000 04:02:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Status From: "M.I.K.e" In-Reply-To: <200007240913.LAA10591@pons.ac.upc.es> Message-ID: <00036d2664bacd4e_mailit@mail.dynarec.com> References: <200007240913.LAA10591@pons.ac.upc.es> Date: Mon, 24 Jul 2000 13:03:16 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I prefer sitting in lazy lotus position and empty my mind a few hours. ;) Isn't that your normal state? ;-) >I also like to try drawing manga kind faces, but seeing how horribles >they are I think it musn't to be so relaxing. :( Considering my drawing abilities it would be a bad idea even to think of doing that... >Victor -- M.I.K.e Barometer, n.: An ingenious instrument which indicates what kind of weather we are having. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 04:02:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA45897 for dynarec-outgoing; Mon, 24 Jul 2000 04:02:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Status From: "M.I.K.e" In-Reply-To: <01bff53d$f0b70680$35901a17@turkey> Message-ID: <00036d266e122e28_mailit@mail.dynarec.com> References: <01bff53d$f0b70680$35901a17@turkey> Date: Mon, 24 Jul 2000 13:05:53 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That's cool though. I may consider putting FreeBSD on my machine as a second >OS. I'm not sure if FreeBSD is that good for a desktop, but if I had a small network I'd surely give FreeBSD a try on the server. >I'll also put BeOS on this time (yes, Mike - you've convinved me!) to >see what I really think... :) Really? I thought you forgot about the CD with FreeBe ;-) >Neil. -- M.I.K.e ... indifference is a militant thing ... when it goes away it leaves smoking ruins, where lie citizens bayonetted through the throat. It is not a children's pastime like mere highway robbery. -- Stephen Crane --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 04:02:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA45905 for dynarec-outgoing; Mon, 24 Jul 2000 04:02:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Status From: "M.I.K.e" In-Reply-To: Message-ID: <00036d267c8bcbc3_mailit@mail.dynarec.com> References: Date: Mon, 24 Jul 2000 13:09:55 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It used to be sex and porno tapes, but my wife is pregnant now. Damn, now you have to marry her! Oops, I guess you did that before ;-) >Heh. Well, the Mrs. wants a basement (she's from the midwest where they're >common because of tornadoes) and suggested, "Hey, if we get one, then we >can put all your games down there!". Of course, how could I refuse that >kind of logic? ;-) Well, I wouldn't object to have a whole basement for such stuff ;-) >> PS Bought myself a nice 10x4x32 CD-RW Sony CRX-145S drive this weekend. >>It's faaast. >Cool! I've got a Yamaha 4416 that I love. I'll upgrade when they burn >16X. ;-) I've got an Yamaha 4260 and a double speed HP ShureStore... >-->Neil -- M.I.K.e Support your local police force -- steal!! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 06:07:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA46011 for dynarec-outgoing; Mon, 24 Jul 2000 06:07:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <200007241010.MAA04335@pons.ac.upc.es> Message-ID: <00036d28465454c6_mailit@mail.dynarec.com> References: <200007241010.MAA04335@pons.ac.upc.es> Date: Mon, 24 Jul 2000 15:17:56 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >As it seems we will stop the development of our dynarec some days we >could start some discussions. Or perhaps not. ;) We'll see ;-) >I think one that could be interesting is this: what will be the future >of the emulation scene. Talking about the future of emulation sounds a bit funny because emulation itself always deals with the past ;-) >I have been following the emulation escene for almost five years now. >The first where those MSX and Gameboy emulators from Marat. They >seemed really impressive that time. A bit slower on my 486 though. ;) I started on the Atari ST with a colour emulator (I only had a monochrome monitor and only few games ran in b/w), and more or less good emulators for Sinclair and C64. Since I always wanted to have a C64 but never had one this is the first emulation I get for any new system I have. On RISC OS I tested about any emulator in existence and for the Acorn Emulation Page I tested some emulators on the PC card for the Acorn - I guess that were about 40 emulators in one month, which was my entry into the emulation scene on the PC. When I got my PC I had to shift my interest a bit. The PC card lacked a good sond emulation and I didn't have DirectX under Win95 so I could only use DOS emulators but without sound most of the time. With my PC I seem to be unable to get my sound card running under DOS so I mainly stick with emulators for Windows now. Yet again I have a new playground on BeOS and due to lack of emulators I might be on the productive side this time. What I really like to see is are decent Atari ST and PSX emulators for BeOS... >In these years almost everything seems have been emulated. From old >arcade machines and consoles to some modern, including some calculators >and rare computers. ;) Well, not everything, but close. >Now, or I feel so, almost all old (early than last 90) arcade have been >emulated, but perhaps someones doesn't have enough information, or >they are really hard to emulate or they are really rare and haven't been >found yet. Don't know much about arcades. Does MAME have a T2: Judgement Day driver yet? >The same happens for all the microcomputers. I haven't seen a NeXT emulator yet... >And the previous, still living, console generation is nearly to be >emulated. There are working emulators for PSX and N64. Well, there are no working emulators for Saturn, Jaguar, and 3DO, but that might be due to the lack of interesting games. >So what will be the next? Dreamcast or PS2 emulation. ;) Perhaps in >two or three years. Dreamcast will be a bitch to emulate, but the PS2 will be very hard due to it's 10 parallel FPUs... >There aren't new computers though. The PC has almost dominated the world >of the home computers. So we won't have much fun here. :( Well, I still wait for a good Archimedes emulator. Archie isn't bad, but way too slow. There is no PowerMac emulator yet... >I think the future will come in some lines: first dynarec ;), the >emulators for new machines must be dynarec or we will have wait to ten >years to get them emulated; Indeed, everything without a dynarec will be too slow. >second the porting of various emulators to >new systems, from Win2000/WinMillenium (not os difficult) to Linux >and BeOs; Yes, I want a PSX emulator for BeOS. Maybe I should port FPSE since I cannot get the Windows version to run with CD-ROM suppport... >and third emulators for consoles, the big companies perhaps will >see the potential market of the emulation world (but I prefer they >continue with their lameless actitude so we can blame them ;), one >example of this is BleemCast (I hope it will be a lot of better than >the PC version). I guess they'll have to test much more because on the DC they simply cannot say "Wait for the next release, it'll work then". I didn't buy Bleem (although I saw it in shops and thought of byuing it) becuase in my opinion it's a hack and not a very good one, and since they'll have to focus on BleemCast they won't be able to get any PC updates out soon. But I'd buy VGS if I'd see it because it's an incredible piece of work, unfortunately it seems that they haven't noticed the German marked yet... >If everything else is lost we could begin to emulate old mainframes. Hehe, what about DR360? ;-) >Boring though ... Someone has made a VAX emulator? Erm, VAX is a minicomputer and not a mainframe ;-) I'm not sure if there is one for the PC, but I think there's one for Mac - take a look at emulation.net... >Victor -- M.I.K.e A long-forgotten loved one will appear soon. Buy the negatives at any price. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 10:45:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA46232 for dynarec-outgoing; Mon, 24 Jul 2000 10:45:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Jul 2000 10:59:56 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <200007240944.LAA18462@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > One problem I find with this is how you know what is better. ALL companies > talk the good for their products and the bad for the others. And for Intel doesn't. In fact, there's no mention of their competitors anywhere on the site. ;-) This has long been an Intel policy, and it was extremely aggrivating in the days of the Above Board and other PC enhancement products in a division I worked in abot 10 years ago. We *WOULD NOT* comment on our competitors nor mention them. It's actually smart, as I found out later. Don't acknowledge your competition. It's like the McDonalds/Burger King thing. McDonalds *NEVER* mentions BK, but the reverse is far from true. > I'm not trying to say this kind of people isn't guilty but that the > kind of society we live where advertisement (and not truth) is the most > important doesn't help either. Right. And my point was to try to force them to give proper perspective and don't allow deceptive marketing. If this ever occured, Apple would be out of business. ;-) > > perspective. If your piece of shit processor doesn't perform as well as > > the competition, too fucking bad. You have to print the truth. None of > > this "The test isn't fair!" crap when it seems to be OK for other > > competitors. > Every company has done this and will do it. I'm sure even Intel does > it. It just how the actual market works. You have to strenght your I've not seen it from Intel ... yet. In fact, it's more the opposite - they post #'s and competitors find a way to skew their tests to be slighly better. > which is used and not explanation of the real characteristics. I don't > know how US car spots are, but here in Spain they never really talk how > are the cars but show beatiful images, beatiful women and so on. The > important is getting the attention of the buyers. Here they just show the car driving down the road and tell you how much cash back you can get, etc... ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 10:46:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA46242 for dynarec-outgoing; Mon, 24 Jul 2000 10:46:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Jul 2000 11:01:33 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: The future of emulation In-Reply-To: <200007241010.MAA04335@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I think one that could be interesting is this: what will be the future > of the emulation escene. Kinda boring now, isn't it? > I think the future will come in some lines: first dynarec ;), the Yep. And I intend on being there to help set the standards by which all others are judged. ;-) This is part of the reason I'm moving on to pinball machines. The arcade thing has been done. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 10:47:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA46251 for dynarec-outgoing; Mon, 24 Jul 2000 10:47:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Jul 2000 11:02:24 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Status In-Reply-To: <00036d266e122e28_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >OS. > I'm not sure if FreeBSD is that good for a desktop, but if I had a small > network I'd surely give FreeBSD a try on the server. No UNIXen (not FreeBSD or Linux) is good for the desktop, and anyoen who thinks otherwise is either a power user or an idiot. UNIX Is *NOT* user friendly. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 11:17:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA46284 for dynarec-outgoing; Mon, 24 Jul 2000 11:17:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <397C8A73.128DF4CA@dynarec.com> Date: Mon, 24 Jul 2000 20:26:59 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: The future of emulation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > I think one that could be interesting is this: what will be the future > > of the emulation escene. > > Kinda boring now, isn't it? > Damn! I'm four years late for the fun. ;) > > I think the future will come in some lines: first dynarec ;), the > > Yep. And I intend on being there to help set the standards by which all > others are judged. ;-) > And I will try to be with you there. ;) > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 12:53:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA46371 for dynarec-outgoing; Mon, 24 Jul 2000 12:52:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <397CA0A7.670A982F@retemail.es> Date: Mon, 24 Jul 2000 22:01:43 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: The future of emulation References: <200007241010.MAA04335@pons.ac.upc.es> <00036d28465454c6_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I started on the Atari ST with a colour emulator (I only had a monochrome > monitor and only few games ran in b/w), and more or less good emulators for > Sinclair and C64. I think I heart many years ago (when I was at primary school and I had an Olivetti 8086 compatible) about a PC emulator for Amiga. A friend of my brother asked me for the my boot disk or something like this. > Yet again I have a new playground on BeOS and due to lack of emulators I > might be on the productive side this time. What I really like to see is are > decent Atari ST and PSX emulators for BeOS... > Well, what stops you from make them yourself? ;) > > I haven't seen a NeXT emulator yet... > I haven't seen a NeXT yet ;) > >And the previous, still living, console generation is nearly to be > >emulated. There are working emulators for PSX and N64. > > Well, there are no working emulators for Saturn, Jaguar, and 3DO, but that > might be due to the lack of interesting games. > I'm sure we will have Saturn emulation in a few time. It's hard but there is people working. And it could be my second choice after MegaCD. Jaguar and 3DO will be more difficult though. > >So what will be the next? Dreamcast or PS2 emulation. ;) Perhaps in > >two or three years. > > Dreamcast will be a bitch to emulate, but the PS2 will be very hard due to > it's 10 parallel FPUs... > One day or another PCs will become also multiCPU. I don't think we will have to wait so much. > > I guess they'll have to test much more because on the DC they simply cannot > say "Wait for the next release, it'll work then". I didn't buy Bleem > (although I saw it in shops and thought of byuing it) becuase in my opinion > it's a hack and not a very good one, and since they'll have to focus on > BleemCast they won't be able to get any PC updates out soon. > But I'd buy VGS if I'd see it because it's an incredible piece of work, > unfortunately it seems that they haven't noticed the German marked yet... > I'm also interested in VGS ... I have the cracked version (but it isn't needed, I get the update from their page and I extract a working executable by myself). But I haven't found it yer in Spain. And I'm playing a lot with it. I only have found a game who doesn't work at the start. But it was a good one, perhaps I will send a mail to them. ;) > >Boring though ... Someone has made a VAX emulator? > > Erm, VAX is a minicomputer and not a mainframe ;-) > I'm not sure if there is one for the PC, but I think there's one for Mac - > take a look at emulation.net... > What is the difference? When I started in the university there was still a pair of VAX servers for the students. Well, they were almost the only we had to program. Now there are still some old Alpha servers (200 Mhz or so, far away from actual powerful servers) but it seems next year all will be programmed in PCs. The new student won't know those wonderful text VTs in different colours: blue-grey, orange and green. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 12:59:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA46384 for dynarec-outgoing; Mon, 24 Jul 2000 12:58:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <397CA22E.A8CB5063@retemail.es> Date: Mon, 24 Jul 2000 22:08:14 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Status References: <200007240913.LAA10591@pons.ac.upc.es> <00036d2664bacd4e_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >I prefer sitting in lazy lotus position and empty my mind a few hours. ;) > > Isn't that your normal state? ;-) > Ohh!! Damn!! You know me very well. ;) > >I also like to try drawing manga kind faces, but seeing how horribles > >they are I think it musn't to be so relaxing. :( > > Considering my drawing abilities it would be a bad idea even to think of > doing that... > They can't be worst than mines. ;) When I started to draw faces they were really horribles, I have improved in the last months and now I can copy (but not create) them and still they seem the same picture. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 13:56:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA46434 for dynarec-outgoing; Mon, 24 Jul 2000 13:54:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Status From: "M.I.K.e" In-Reply-To: <397CA22E.A8CB5063@retemail.es> Message-ID: <00036d2ecea178e5_mailit@mail.dynarec.com> References: <200007240913.LAA10591@pons.ac.upc.es> <00036d2664bacd4e_mailit@mail.dynarec.com> <397CA22E.A8CB5063@retemail.es> Date: Mon, 24 Jul 2000 23:05:32 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> >I prefer sitting in lazy lotus position and empty my mind a few hours. ;) >> Isn't that your normal state? ;-) >Ohh!! Damn!! You know me very well. ;) Well, you wouldn't be on the list otherwise, would you? >They can't be worst than mines. ;) Well, my mother and my sister are the artists of my family, but surely not me! >When I started to draw faces they >were really horribles, I have improved in the last months and now >I can copy (but not create) them and still they seem the same picture. I bet that's more than I could achieve. BTW, if you like mangas and also shooters then Shogo could be interesting for you. >Victor -- M.I.K.e Eeny, Meeny, Jelly Beanie, the spirits are about to speak! -- Bullwinkle Moose --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 13:56:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA46441 for dynarec-outgoing; Mon, 24 Jul 2000 13:54:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <397CA0A7.670A982F@retemail.es> Message-ID: <00036d2ea3865936_mailit@mail.dynarec.com> References: <200007241010.MAA04335@pons.ac.upc.es> <00036d28465454c6_mailit@mail.dynarec.com> <397CA0A7.670A982F@retemail.es> Date: Mon, 24 Jul 2000 22:53:29 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think I heart many years ago (when I was at primary school and >I had an Olivetti 8086 compatible) about a PC emulator for Amiga. >A friend of my brother asked me for the my boot disk or something >like this. I know too less about Amiga since I had an Atari ST and between those two raged something like a holy war at that time ;-) There were several PC emulators for the ST: PCditto: A software emulator, which surely was very slow. PCspeed: A 8086 fitted onto the ST board in combination with some software. ATspeed: Same as PCspeed but with 286. Supercharger: An external box with a NEC V30 and it's own RAM, which was connected to the STs DMA I think. My father bought such a thing and it was damn slow... On the RiscPC I got a PC card with a TI 486SXL-33, which I later had upgraded to an AMD 5x86-166. You could even run Win95 on that one but it wasn't very fast then. But Callus eg. ran quite well. >> Yet again I have a new playground on BeOS and due to lack of emulators I >> might be on the productive side this time. What I really like to see is are >> decent Atari ST and PSX emulators for BeOS... >Well, what stops you from make them yourself? ;) Well, before I noticed that there was an ST emulator in the works for the RPC I planned to do one by myself. But when I had some discussion with the author of STem (which I discovered during my search for info) I noticed that I knew far too less about the ST to be able to write an ST emulator... About the same is true for the PSX. Ok, I could port these to BeOS, but then I'll have to learn a bit more about the system first. The next problem will be to find an open source emulator. I think the only ST emulator is STonX in that case, and I think it's not that good and no longer developed. For PSX there are only Sope and FPSE, where Sope has a very bad compatibility and I have problems with FPSE on Windows, anyway I bet I'd try FPSE in the end. >I haven't seen a NeXT yet ;) Take a look at the following site to find even more computers you don't know and which aren't emulated yet: http://www.tardis.ed.ac.uk/~alexios/MACHINE-ROOM/ >I'm sure we will have Saturn emulation in a few time. It's hard >but there is people working. We'll see. >And it could be my second choice after MegaCD. That could be interesting too. >Jaguar and 3DO will be more difficult though. Yeah, very bad info and someone in the video games industry told me that 3DO CDs were hardware encrypted, which could be yet another problem. >One day or another PCs will become also multiCPU. I don't think >we will have to wait so much. Well, BeOS is said to do a very good job with up to 8 CPUs. Actually it's said to support virtually unlimited numbers of CPUs, but they limited it to 8 because so few people have more CPUs. >I'm also interested in VGS ... I have the cracked version Me too, but I'd really buy it if I saw it in a shop somewhere... >(but it >isn't needed, I get the update from their page and I extract a >working executable by myself). Hey, I didn't know that it is this easy! >But I haven't found it yer in Spain. Seems to be the same situation as in Germany. But I know at least two shops in my home town where I could get Bleem, but I think that's only a bad joke compared to VGS. >And I'm playing a lot with it. Did you play FF8 on it or on a real Playstation? >I only have found a game who doesn't >work at the start. But it was a good one, perhaps I will send a mail >to them. ;) Well, the most important game runs quite fine: Metal Gear Solid ;-) >What is the difference? I think mainframes work with channels and minicomputers work with busses, whatever that means... BTW, there even was a MicroVAX ;-) >When I started in the university there was >still a pair of VAX servers for the students. Well, they were almost >the only we had to program. Now there are still some old Alpha >servers (200 Mhz or so, far away from actual powerful servers) but it >seems next year all will be programmed in PCs. I worked mainly on HP workstations, which are more and more replaced by Linux PCs... >The new student >won't know those wonderful text VTs in different colours: blue-grey, >orange and green. ;) Hehe ;-) The new students always think I tell horror stories when I talk about surfing the Internet with NCSA Mosiac where you had to wait till all data (including the images) was loaded before the page could be rendered... >Victor -- M.I.K.e God may be subtle, but He isn't plain mean. -- Albert Einstein --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 15:48:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA46546 for dynarec-outgoing; Mon, 24 Jul 2000 15:47:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000724155550.007cb880@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 24 Jul 2000 15:55:50 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Processor emulation article -- what the? Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com http://gag.retrogames.com/dev01.html Is it just me... or is there something seriously wrong with this article? Most compilers, gcc and MSVC definitely, convert switch () statements to jump tables. Yet, these fellows claim it's the same as if-else. They're bitmask method might be interesting for other applications, but I don't think it is that great for CPU emulation where opcodes can be very complex. What do you guys think? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 16:14:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA46575 for dynarec-outgoing; Mon, 24 Jul 2000 16:13:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Jul 2000 16:28:00 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Dev01-Feedback (fwd) Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Just sent the guy a message... We'll see what happens. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 ---------- Forwarded message ---------- Date: Mon, 24 Jul 2000 16:27:37 +0000 (GMT) From: Neil Bradley To: gag@retrogames.com Subject: Dev01-Feedback I just took a look at your processor emulation page and as someone who has written many emulator cores and tried all the approaches (plus one you haven't listed in your article), I have a few issues with it: First off, in your switch/case, you mention that the compiler compiles it as a if/else grouping of statements. I'm not sure what compiler you're using, but gcc, MSVC, and Watcom all create jump tables. You must make sure, though, that you have all cases accounted for. If you have holes or create holes, you'll get the results you mention. Or perhaps you forgot to turn on optimization. Secondly, having a switch/case gives the advantage of the compiler keeping register usage history and allows registers to be reused much easier rather than having to ditch them when a function call is made. When I went from a big call table for all instructions to doing switch/case, on the R4000 (Windows CE on a Casio E-105) the CPU performance went up by 70%. It generated *FAR* better code (by examining it I found this out). It didn't make much difference on the x86 because of how few registers it has to work with. Thirdly, you forgot to put in the option of having a function call table. This has a distinct disadvantage to the switch/case approach, because each time a function call is made, the compiler must "throw out" the registers it's using and reload them for the function call itself. Lastly, you've got the "bitwise" comparison section's theory correct in CPUs actually doing bitwise comparisons, but it doesn't quite translate, because CPUs have hardware that simultaneously checks the opcodes. When you code it out like this, you've got an and/jmp comparison that looks like: mov al, opcode test al, 80h jz not80 test al, 40h jz not40 test al, 20h etc... So for every instruction you'll have to compare many times whereas a function pointer approach (or switch/case approach) will yield: mov al, opcode jmp JumpTable[eax*4] 2 Instructions is always shorter than even the best case of checking 1 bit. Plus the amount of branch prediction that goes out the window is amazing. You're doing so much branching that the CPU cannot accurately predict where it's going to be next. It just doesn't keep that much info around. For what it's worth... -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 23:42:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA46892 for dynarec-outgoing; Mon, 24 Jul 2000 23:40:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Tue, 25 Jul 2000 08:45:11 +0200 Message-ID: <01bff603$e101f580$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Intel doesn't. In fact, there's no mention of their competitors anywhere >on the site. ;-) This has long been an Intel policy, and it was extremely >aggrivating in the days of the Above Board and other PC enhancement >products in a division I worked in abot 10 years ago. We *WOULD NOT* >comment on our competitors nor mention them. It's actually smart, as I >found out later. Don't acknowledge your competition. It's like the >McDonalds/Burger King thing. McDonalds *NEVER* mentions BK, but the >reverse is far from true. Yes, that's true. I guess all the "small fish" will always mention the big fish and how much better they are. But the big fish knows it's the big fish and doesn't need to worry about the smaller fish. Interesting analogy, eh? :) >Right. And my point was to try to force them to give proper perspective >and don't allow deceptive marketing. If this ever occured, Apple would be >out of business. ;-) Yes, but so would McDonalds and Burger King. "Try our new [whatever] - it tastes great!". No, it tastes like crap. But at least the McDonalds in the US beat the ones in Europe - you can buy Cola or Coffee (or whatever) and get it refilled for free. We can't. If we want another drink, we have to buy it! :-/ >> Every company has done this and will do it. I'm sure even Intel does >> it. It just how the actual market works. You have to strenght your > >I've not seen it from Intel ... yet. In fact, it's more the opposite - >they post #'s and competitors find a way to skew their tests to be slighly >better. Nah, Intel have done it. Think Rambus. They've claimed that normal tests aren't fair because of the way Rambus works. I can't think of another example though - it could be that this was the only time. We'll see. Mind you, I remember how much MMX was going to make things better. Hardly anyone (no-one that I can think of) uses it now except via DirectX and the like. Mind you, the same can now be said for 3DNow! so... :) >Here they just show the car driving down the road and tell you how much >cash back you can get, etc... ;-) Do they actually say things like "We've actually managed to create a car that doesn't guzzle up petrol [gas] for once - unlike every other car that America produces"? ;) Most American cars really do eat up petrol quickly - they're certainly NOT the most economical cars! But then the price of fuel over there is much cheaper than over here. That's why it's rare to find big cars in Europe - the price of fuel is high! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 23:45:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA46900 for dynarec-outgoing; Mon, 24 Jul 2000 23:42:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Status Date: Tue, 25 Jul 2000 08:46:19 +0200 Message-ID: <01bff604$0989ef80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> I'm not sure if FreeBSD is that good for a desktop, but if I had a small >> network I'd surely give FreeBSD a try on the server. > >No UNIXen (not FreeBSD or Linux) is good for the desktop, and anyoen who >thinks otherwise is either a power user or an idiot. UNIX Is *NOT* user >friendly. I was planning on it being for my second machine. So I can leave one machine permanently connected to the Internet and one machine... which uses it. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 24 23:50:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA46915 for dynarec-outgoing; Mon, 24 Jul 2000 23:47:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: The future of emulation Date: Tue, 25 Jul 2000 08:52:14 +0200 Message-ID: <01bff604$dd22a300$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> I think one that could be interesting is this: what will be the future >> of the emulation escene. > >Kinda boring now, isn't it? Yep. Pretty much all the games I used to play in the arcade have been emulated now. All we need now is perfect System16 (and maybe 24!) emulation and I'll be a happy man. :) >> I think the future will come in some lines: first dynarec ;), the > >Yep. And I intend on being there to help set the standards by which all >others are judged. ;-) So do I - but I'd reckon that most of us in this mailing list also think the same! :) >This is part of the reason I'm moving on to pinball machines. The arcade >thing has been done. It would be interesting to get a physicist to examine the physics behind pinball machine. That way you could build a controller and play pinball games just like the real thing. Something I've just thought of that would be *really* cool - and is an extension of my last idea - would be to fit some sort of huge LCD screen or something over the playing area of a real pinball machine. Using the simulation you could then have *every single pinball game ever* played on the one machine. Would that, or would that not, be cool? I also like pinball machines - but it's quite difficult to find them now... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:02:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA46944 for dynarec-outgoing; Tue, 25 Jul 2000 00:00:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007250708.JAA27574@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: <00036d2ea3865936_mailit@mail.dynarec.com> "from M.I.K.e at Jul 24, 2000 10:53:29 pm" To: dynarec@dynarec.com Date: Tue, 25 Jul 2000 09:08:29 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > About the same is true for the PSX. Ok, I could port these to BeOS, but then > I'll have to learn a bit more about the system first. But I think there is a lot of good documentation about PSX out there. > The next problem will be to find an open source emulator. I think the only ST > emulator is STonX in that case, and I think it's not that good and no longer > developed. For PSX there are only Sope and FPSE, where Sope has a very bad > compatibility and I have problems with FPSE on Windows, anyway I bet I'd try > FPSE in the end. > Good luck. ;) > >(but it > >isn't needed, I get the update from their page and I extract a > >working executable by myself). > > Hey, I didn't know that it is this easy! > I only tried to install it. It gave me an error. So I did a fast look up in the recycle bin and in the win/temp directory. And I found it. ;) > >And I'm playing a lot with it. > > Did you play FF8 on it or on a real Playstation? > I don't have a Playstation. I have seen FF8 and others games in a PSX of one of my friends. But in my house I play with VGS (or long ago also Bleem, I finised Castlevania with it). > >I only have found a game who doesn't > >work at the start. But it was a good one, perhaps I will send a mail > >to them. ;) > > Well, the most important game runs quite fine: Metal Gear Solid ;-) > And Castlevania and FF series. I'm waiting a game called Chrono Cross, I think it's time it get released the english version. I don't know enough japanese. ;) > >The new student > >won't know those wonderful text VTs in different colours: blue-grey, > >orange and green. ;) > > Hehe ;-) > The new students always think I tell horror stories when I talk about surfing > the Internet with NCSA Mosiac where you had to wait till all data (including > the images) was loaded before the page could be rendered... > When there was only a few PCs (386) here we commonly used lynx (a text browser) for navegation. It's quite fast. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:02:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA46938 for dynarec-outgoing; Tue, 25 Jul 2000 00:00:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Jul 2000 00:15:14 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff603$e101f580$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yes, that's true. I guess all the "small fish" will always mention the big > fish and how much better they are. But the big fish knows it's the big fish > and doesn't need to worry about the smaller fish. The big fish always keeps an eye on the little fish, that is unless of course the big fish won't mind being eaten or nibbled at. ;-) > >Right. And my point was to try to force them to give proper perspective > >and don't allow deceptive marketing. If this ever occured, Apple would be > >out of business. ;-) > Yes, but so would McDonalds and Burger King. "Try our new [whatever] - it > tastes great!". No, it tastes like crap. But at least the McDonalds in the > US beat the ones in Europe - you can buy Cola or Coffee (or whatever) and > get it refilled for free. We can't. If we want another drink, we have to buy > it! :-/ Used to be that way 10-15 years ago, but it's odd now to find a restaurant that doesn't do this. > >I've not seen it from Intel ... yet. In fact, it's more the opposite - > >they post #'s and competitors find a way to skew their tests to be slighly > >better. > Nah, Intel have done it. Think Rambus. They've claimed that normal tests > aren't fair because of the way Rambus works. I can't think of another > example though - it could be that this was the only time. We'll see. Hm... I didn't follow the Rambus stuff (and I know nothing of the business side of thing), but that was probably a face saving effort. Rambus would've been great 2-3 years ago, but PC-133 SDRAM is bette. > Mind you, I remember how much MMX was going to make things better. Hardly > anyone (no-one that I can think of) uses it now except via DirectX and the > like. Mind you, the same can now be said for 3DNow! so... :) Yep. AMD Had to have a "me too!". > >Here they just show the car driving down the road and tell you how much > >cash back you can get, etc... ;-) > Do they actually say things like "We've actually managed to create a car > that doesn't guzzle up petrol [gas] for once - unlike every other car that > America produces"? ;) Oh that's being too harsh. We have plenty of American tuna cans that get great gas mileage. Mind you, I wouldn't buy one, nor would I buy a rice burner that gets great gas mileage. > Most American cars really do eat up petrol quickly - they're certainly NOT > the most economical cars! But then the price of fuel over there is much > cheaper than over here. That's why it's rare to find big cars in Europe - > the price of fuel is high! It's pretty high here, too, but probably not as bad. But I'm not helping. My wife drives a Dodge Durango (about 12-18 miles per US gallon) and I drive a Mazda RX-7 turbo (about 10-12 miles per US gallon). It's those fucking minivans I can't stand. People have to have one hand up their ass and one hand on the cell phone and most of the time don't even know they're driving a vehicle. Plus, I can't see around them! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:03:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA46961 for dynarec-outgoing; Tue, 25 Jul 2000 00:02:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Jul 2000 00:17:19 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: The future of emulation In-Reply-To: <01bff604$dd22a300$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > It would be interesting to get a physicist to examine the physics behind > pinball machine. That way you could build a controller and play pinball > games just like the real thing. It'll never be that way, because there is the physical aspect of the bang/pop that you will never get on a computer. > Something I've just thought of that would be *really* cool - and is an > extension of my last idea - would be to fit some sort of huge LCD screen or > something over the playing area of a real pinball machine. It's called Pinball 2000, and it was done by Williams. They combine a pinball game with a superimposed video screen, and it's actually quite cool. > Using the > simulation you could then have *every single pinball game ever* played on > the one machine. Would that, or would that not, be cool? Not cool, actually, because the physical aspect would be missing. Now holo-pinball - that would rock! > I also like pinball machines - but it's quite difficult to find them now... Really? They're all over the place here in the US. Plus, Williams stopped making pins - they are now doing "gaming" machines (slot machines). ;-( So I'm collecting them like mad... -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:05:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA46970 for dynarec-outgoing; Tue, 25 Jul 2000 00:04:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Status Date: Tue, 25 Jul 2000 09:09:52 +0200 Message-ID: <01bff607$53c0a000$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >BTW, if you like mangas and also shooters then Shogo could be interesting for >you. Yep, this is quite a cool game. And definitely based on Manga. But it uses the Lithtec engine - hope that you have a good 3D card. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:06:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA46981 for dynarec-outgoing; Tue, 25 Jul 2000 00:05:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: The future of emulation Date: Tue, 25 Jul 2000 09:08:39 +0200 Message-ID: <01bff607$283db580$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >I think I heart many years ago (when I was at primary school and >I had an Olivetti 8086 compatible) about a PC emulator for Amiga. >A friend of my brother asked me for the my boot disk or something >like this. I would have first heard back in 1993. Someone had written a CPC emulator for the Amiga - and someone had ported it to the PC. I took it round to someone I knew who was the secretary for WACCI - a sort of newsletter/fan-club for the CPC. He had just got a (then) top of the range 386 laptop. We managed to get the ROM images from his CPC to the laptop (took us the best part of 3 hours!) and it actually worked. On the disk was also a Spectrum emulator but we had no way of getting that to work - no Spectrum in the house. I decided that the CPC and the Speccy had similar enough hardware that I could write a kind of special emulator. I could use the Z80 fine - I only had to emulate the input (keyboard and tape) and the output (screen). I had a demo coder friend for the Speccy who I managed to get his ROM images from. I eventually figured out how I could read the Speccy tape and managed to transfer his ROM images across. That was my day - I've never been so self-satisfied in my life! Eventually, through much cunning trickery, I managed to create a Speccy with *roughly* 16K. I used my Multiface II (a kind of Action Replay) to help out with that and - well, I could go on and on... Anyway, while Marat may be seen as the granddaddy of emulation, unless he did it on the Amiga then he certainly isn't. Even my Speccy emulator was written before his first CPU core! >> Well, there are no working emulators for Saturn, Jaguar, and 3DO, but that >> might be due to the lack of interesting games. >> >I'm sure we will have Saturn emulation in a few time. It's hard >but there is people working. And it could be my second choice >after MegaCD. Jaguar and 3DO will be more difficult though. The Saturn actually had fairly decent hardware. It lost out though because it had no 3D hardware. Having said that, the games that did come out for it were impressive when you consider the 3D was all done in software! >> Dreamcast will be a bitch to emulate, but the PS2 will be very hard due to >> it's 10 parallel FPUs... >> >One day or another PCs will become also multiCPU. I don't think >we will have to wait so much. The Dreamcast *will* be a bitch to emulate - if only for the graphics! I'm thinking that unless you have a Kyro based 3D card then you won't easily get an emulator for the Dreamcast. If you have to convert the tile based 3D into our poly based 3D then that's going to take a hell of a lot of processing. The PS2 graphics should, in theory, be much easier to convert. Of course, it also has a CPU that runs 100MHz faster so... :o >And I'm playing a lot with it. I only have found a game who doesn't >work at the start. But it was a good one, perhaps I will send a mail >to them. ;) If I had a PSX - or PSX games - then I'd consider it. I only have a rather technical interest in it myself. Whatever, I've seen that it's better than Bleem! - but that's hardly difficult! :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:11:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA46991 for dynarec-outgoing; Tue, 25 Jul 2000 00:09:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: The future of emulation Date: Tue, 25 Jul 2000 09:13:18 +0200 Message-ID: <01bff607$ce89bb00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Seems to be the same situation as in Germany. But I know at least two shops >in my home town where I could get Bleem, but I think that's only a bad joke >compared to VGS. It is. :) >Well, the most important game runs quite fine: Metal Gear Solid ;-) Heh. ;) >>What is the difference? > >I think mainframes work with channels and minicomputers work with busses, >whatever that means... I always thought that size came into it too... >Hehe ;-) >The new students always think I tell horror stories when I talk about surfing >the Internet with NCSA Mosiac where you had to wait till all data (including >the images) was loaded before the page could be rendered... I have a copy of the very first beta of Netscape somewhere. Talk about crappy... :) I could frighten the students with talk of BBS' and no Internet. Or early Internet - and Gopher! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:11:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA46999 for dynarec-outgoing; Tue, 25 Jul 2000 00:09:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Dev01-Feedback (fwd) Date: Tue, 25 Jul 2000 09:13:56 +0200 Message-ID: <01bff607$e5301200$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Just sent the guy a message... We'll see what happens. Let us know. I've read through the letter and I agree with what you've written. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:16:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA47016 for dynarec-outgoing; Tue, 25 Jul 2000 00:15:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007250723.JAA05517@pons.ac.upc.es> Subject: Re: DYNAREC: Status In-Reply-To: <01bff607$53c0a000$35901a17@turkey> "from Neil Griffiths at Jul 25, 2000 09:09:52 am" To: dynarec@dynarec.com Date: Tue, 25 Jul 2000 09:23:07 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >BTW, if you like mangas and also shooters then Shogo could be interesting > for > >you. > > Yep, this is quite a cool game. And definitely based on Manga. But it uses > the Lithtec engine - hope that you have a good 3D card. :) > I have an Asus V-2720 with an Intel 740 chip. I get Daikatana (my brother is playing to it) and runs fine, not fast but just fine. There are times it seems to have low FPS. In any case the games I like more are RPGs and now I have at hand a wonderful japanase RPG game: Lunar Silver Star. It has impressive manga kind videos, and the music (I had it in MP3s) is really beatiful. > Neil. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:17:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA47024 for dynarec-outgoing; Tue, 25 Jul 2000 00:16:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Jul 2000 00:31:23 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dev01-Feedback (fwd) In-Reply-To: <01bff607$e5301200$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Just sent the guy a message... We'll see what happens. > Let us know. I've read through the letter and I agree with what you've > written. :) A bit standoffish. He has some really odd notions. For example, here's what he wrote back: ----- While I agree that most compilers will, if properly motivated, create jump tables, I've yet to come across a compiler that will always create a jump table for a switch. In all honesty, everything I've tried from MSVC++ to Borland C++ to gcc to Watcom (which was the worst, optimizaiton-wize) has gone through and done some completely stupid things to switch statements (among other things). ----- I was dumbfounded, especially his comment about Watcom (FWIW, I've not yet seen a Pentium compiler generate better code than Watcom). Now mind you, I've used Watcom, MSVC, DJGPP, and gcc for years. Watcom outshines all in terms of performance. I asked him what he did and did he increase the optimizations, and he completely ignored my question. My guess is that he compiled everything in debug mode. Also, he was doing a Windows app in one, and a DOS app in the other (apples/oranges) and referenced an article from 1995 about compiler differences (which focused exclusively on 3D math and optimizations) where Watcom wasn't coming out too well. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:34:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA47049 for dynarec-outgoing; Tue, 25 Jul 2000 00:33:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007250741.JAA18795@pons.ac.upc.es> Subject: Re: DYNAREC: Dev01-Feedback (fwd) In-Reply-To: "from Neil Bradley at Jul 25, 2000 00:31:23 am" To: dynarec@dynarec.com Date: Tue, 25 Jul 2000 09:41:35 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > A bit standoffish. He has some really odd notions. For example, here's > what he wrote back: > He! Another one to the black list. ;) In any case if he is so afraid about bad compilers a jump table should be better than 8 jumps (or perhaps 16 for more powerful CPUs). > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:42:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA47065 for dynarec-outgoing; Tue, 25 Jul 2000 00:40:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Tue, 25 Jul 2000 09:41:40 +0200 Message-ID: <01bff60b$c5025200$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >The big fish always keeps an eye on the little fish, that is unless of >course the big fish won't mind being eaten or nibbled at. ;-) True. I missed that bit. :) >Used to be that way 10-15 years ago, but it's odd now to find a restaurant >that doesn't do this. That's one way you beat us. And, going by what I've heard, you also beat us in terms of pizza and steak. But I also hear that you lose out in terms of different types of food - or different types of vegetables. My dad lived in the US for 3 months last year and my cousin is now living over in Long Island (NY) and will be marrying an American girl next year - I'll be over for that which will be my first visit to the US! >Hm... I didn't follow the Rambus stuff (and I know nothing of the business >side of thing), but that was probably a face saving effort. Rambus >would've been great 2-3 years ago, but PC-133 SDRAM is bette. I didn't really follow the Rambus stuff either. Great for chunks of data but if you're reading only a byte/word/dword at a time then SDRAM wins. Especially when it runs at 133MHz with 5ns access! >Yep. AMD Had to have a "me too!". Of course. Though I must say that 3DNow! was very impressive with Q2. Without a 3D card you could still get over 60fps at 512x384! That's the only thing that impressed me about it though... >> Do they actually say things like "We've actually managed to create a car >> that doesn't guzzle up petrol [gas] for once - unlike every other car that >> America produces"? ;) > >Oh that's being too harsh. Yep, but I did try to think of an economical American car - but failed. The only one I can think of which may do is a Lexus - and I'm not entirely convinced about that one! >We have plenty of American tuna cans that get great gas mileage. Hehe! :) >Mind you, I wouldn't buy one, nor would I buy a rice burner that gets great gas mileage. Why not? ;) >It's pretty high here, too, but probably not as bad. But I'm not >helping. My wife drives a Dodge Durango (about 12-18 miles per US >gallon) and I drive a Mazda RX-7 turbo (about 10-12 miles per US >gallon). It's those fucking minivans I can't stand. People have to have >one hand up their ass and one hand on the cell phone and most of the time >don't even know they're driving a vehicle. Plus, I can't see around them! They've changed the UK way of buying petrol now into litres - and I'm not sure what the current rate is. Someone else from the UK - what is it? Anyway, I don't like minivans either. Or wardrobes with wheels (person carriers). Although I do like the Renault Espace... But it's too big for me. It'd be great for getting my computer equipment around though! :) I don't know the Dodge Durango as most Dodge stuff never makes it to Europe (AFAIK!). But I know the RX-7. Nice. Fast! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:43:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA47075 for dynarec-outgoing; Tue, 25 Jul 2000 00:42:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: The future of emulation Date: Tue, 25 Jul 2000 09:43:39 +0200 Message-ID: <01bff60c$0bf04780$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >It'll never be that way, because there is the physical aspect of the >bang/pop that you will never get on a computer. I agree, but how about feedback? >It's called Pinball 2000, and it was done by Williams. They combine a >pinball game with a superimposed video screen, and it's actually quite >cool. Damn, not a new idea. Damn. Still, I thought it was cool... >Not cool, actually, because the physical aspect would be missing. Now >holo-pinball - that would rock! Holo-pinball would suffer from the same thing - but it's that sort of thing I was thinking of! >> I also like pinball machines - but it's quite difficult to find them now... > >Really? They're all over the place here in the US. Plus, Williams stopped >making pins - they are now doing "gaming" machines (slot machines). ;-( So >I'm collecting them like mad... Slot machines are huge in Europe. This is what you'll mainly find in an arcade - slot machines and arcade machines. No pinball. Not even that strange table-hockey type game anymore! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:47:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA47087 for dynarec-outgoing; Tue, 25 Jul 2000 00:46:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Status Date: Tue, 25 Jul 2000 09:51:43 +0200 Message-ID: <01bff60d$2c6cd180$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >I have an Asus V-2720 with an Intel 740 chip. I get Daikatana (my brother >is playing to it) and runs fine, not fast but just fine. There are times >it seems to have low FPS. That's a cool chip if you have a good AGP setup (it uses AGP memory to store textures). Pretty fast. It can reach almost TNT2 speeds! Although, obviously, not if a large number of textures are used... >In any case the games I like more are RPGs and now I have at hand a >wonderful japanase RPG game: Lunar Silver Star. It has impressive >manga kind videos, and the music (I had it in MP3s) is really beatiful. Not heard of it - though I'm looking forward to Chrono Cross. Chrono Trigger was cool! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:47:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA47095 for dynarec-outgoing; Tue, 25 Jul 2000 00:46:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Dev01-Feedback (fwd) Date: Tue, 25 Jul 2000 09:50:00 +0200 Message-ID: <01bff60c$ef084400$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >A bit standoffish. He has some really odd notions. For example, here's >what he wrote back: > >----- > >While I agree that most compilers will, if properly motivated, create jump >tables, I've yet to come across a compiler that will always create a jump >table for a switch. In all honesty, everything I've tried from MSVC++ to >Borland C++ to gcc to Watcom (which was the worst, optimizaiton-wize) has >gone through and done some completely stupid things to switch statements >(among other things). > >----- > >I was dumbfounded, especially his comment about Watcom (FWIW, I've not yet >seen a Pentium compiler generate better code than Watcom). Now mind you, >I've used Watcom, MSVC, DJGPP, and gcc for years. Watcom outshines all in >terms of performance. I asked him what he did and did he increase the >optimizations, and he completely ignored my question. I agree, Watcom was the best optimising compiler around. I'm not sure if it still is - MSVC 6 is certainly a very good compiler now. Whatever, that's complete crap! A compiler won't *always* create a jump table - not if you don't put in every possibility! But if you DO then it will always try and create one! And even when you don't always create a switch with all the cases, it can still create a jump table! >My guess is that he compiled everything in debug mode. Also, he was doing >a Windows app in one, and a DOS app in the other (apples/oranges) and >referenced an article from 1995 about compiler differences (which focused >exclusively on 3D math and optimizations) where Watcom wasn't coming out >too well. Oh dear... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:56:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA47112 for dynarec-outgoing; Tue, 25 Jul 2000 00:55:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007250803.KAA15257@pons.ac.upc.es> Subject: Re: DYNAREC: Status In-Reply-To: <01bff60d$2c6cd180$35901a17@turkey> "from Neil Griffiths at Jul 25, 2000 09:51:43 am" To: dynarec@dynarec.com Date: Tue, 25 Jul 2000 10:03:15 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I have an Asus V-2720 with an Intel 740 chip. I get Daikatana (my brother > >is playing to it) and runs fine, not fast but just fine. There are times > >it seems to have low FPS. > > > That's a cool chip if you have a good AGP setup (it uses AGP memory to store > textures). Pretty fast. It can reach almost TNT2 speeds! Although, > obviously, not if a large number of textures are used... > I have 128 MB of memory so I opened 64 MB for AGP. > >In any case the games I like more are RPGs and now I have at hand a > >wonderful japanase RPG game: Lunar Silver Star. It has impressive > >manga kind videos, and the music (I had it in MP3s) is really beatiful. > > Not heard of it - though I'm looking forward to Chrono Cross. Chrono Trigger > was cool! > It's a port of one of the betters game for MegaCD. But with very wonderful motion videos. Chrono Trigger isn't cool, is THE BEST rpg I have played ever. ;) I would want to know how good is Chrono Cross. I like Chrono Trigger a lot of more than FF series. I played it with the early ZSNES in my 486, with 4 or 5 frame skip, in 256 colours and without sound. And it was yet the very best! The story is incredible and the character design, by Akira Toriyama (Dragon Ball and Dragon Quest/Fly), is awesome. > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 00:57:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA47122 for dynarec-outgoing; Tue, 25 Jul 2000 00:56:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Jul 2000 01:11:29 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff60b$c5025200$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Used to be that way 10-15 years ago, but it's odd now to find a restaurant > >that doesn't do this. > That's one way you beat us. And, going by what I've heard, you also beat us > in terms of pizza and steak. But I also hear that you lose out in terms of > different types of food - or different types of vegetables. WHAT?!?!?!? That's certainly not true in the northwestern US. We have more restaurants per capita than any city in the entire *WORLD*, and I don't mean just steak & potatoes! We've got Thai, Vietnamese, Chinese, Korean, Japanese, Italian, German, Indian, Moroccan, Egyptian, and a whole bunch of others. And many restaurants in each variety, too. > My dad lived in > the US for 3 months last year and my cousin is now living over in Long > Island (NY) and will be marrying an American girl next year - I'll be over > for that which will be my first visit to the US! Just keep in mind that the US is a fairly big place and that just because you've seen it in one area doesn't mean it's true for the entire country. That's the biggest mistake that non-US citizens make when visiting. "Oh... people in New York are assholes. That means all Americans are assholes!" ;-) > if you're reading only a byte/word/dword at a time then SDRAM wins. > Especially when it runs at 133MHz with 5ns access! Yep. It's too little too late. > >> America produces"? ;) > >Oh that's being too harsh. > Yep, but I did try to think of an economical American car - but failed. The > only one I can think of which may do is a Lexus - and I'm not entirely > convinced about that one! The Lexus isn't American. It's Japanese. But there's the Ford Escort, Dodge Intrepid, Geo series, Saturn... there are more, I just don't follow them because I don't care about mileage. ;-) Performance is all that matters! > >Mind you, I wouldn't buy one, nor would I buy a rice burner that gets great > gas mileage. > Why not? ;) Because I like to be able to pass traffic no matter what the speed they're going. And people drive like nimrods around here - always paranoid, hit the brakes, take forever to get up to speed, etc... We've been "invaded" by Indians (and I mean people from India, not Native Americans) whom most haven't seen nor driven a car in their life, so the problem only compounds. But I drive assertively, and you can't do that with a 4 banger shitbox like the Geo metro (3 cylinder). > Anyway, I don't like minivans either. Or wardrobes with wheels (person > carriers). Although I do like the Renault Espace... But it's too big for me. > It'd be great for getting my computer equipment around though! :) Renault doesn't even import any longer. > I don't know the Dodge Durango as most Dodge stuff never makes it to Europe > (AFAIK!). But I know the RX-7. Nice. Fast! :) Yeah, the RX-7 is kickin'. Though I'm about to buy a Mercedes-Benz 430E and demote my RX-7 to my "toy" car. I am going to put in a 3 rotor rotary engine (wonderful German engineering!): http://www.3rotor.com It's a slow page, but the 3 rotor they have there puts out a bit over 500 horsepower. I'm going to retrofit it in my RX-7 and do my own car computer for it (to control fuel injection and ignition). It'll drop 0-60 second times to 3.2 seconds (currently at around 4.5), quarter mile it'll run in around 9 seconds, and accellerate so hard that it'll be all I can do to hold on to the steering wheel. And it'll get horrible gas mileage. ;-) BTW, For info on the Durango, check out: http://www.usautosales.com/makes/dodge/durango.asp A bit glitsy, but is really a nice vehicle. Built on a truck chassis. I need it for pinball machines, auto parts, and some way to haul stuff (like the 400 kids we're going to have). But I bought it for my wife, now I get to play... ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 01:01:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA47131 for dynarec-outgoing; Tue, 25 Jul 2000 00:59:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Jul 2000 01:14:47 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dev01-Feedback (fwd) In-Reply-To: <01bff60c$ef084400$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I agree, Watcom was the best optimising compiler around. I'm not sure if it > still is - MSVC 6 is certainly a very good compiler now. Yes, MSVC 6 is, but it still has some cobwebs in it. Like it does shitty things when doing register calling conventions. Watcom still is the king, there. > complete crap! A compiler won't *always* create a jump table - not if you > don't put in every possibility! But if you DO then it will always try and > create one! And even when you don't always create a switch with all the > cases, it can still create a jump table! I pointed that out, but he didn't seem to care. > >referenced an article from 1995 about compiler differences (which focused > >exclusively on 3D math and optimizations) where Watcom wasn't coming out > >too well. > Oh dear... Partially because it was compiling/running Windows 3.1 applications. It wasn't a very good comparison IMHO. You can spin doctor any compiler into looking bad. They also neglected to mention what options they used. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 01:16:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA47175 for dynarec-outgoing; Tue, 25 Jul 2000 01:15:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: Message-ID: <00036d37fc61e0bc_mailit@mail.dynarec.com> References: Date: Tue, 25 Jul 2000 10:02:35 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Most American cars really do eat up petrol quickly - they're certainly NOT >> the most economical cars! But then the price of fuel over there is much >> cheaper than over here. That's why it's rare to find big cars in Europe - >> the price of fuel is high! >It's pretty high here, too, but probably not as bad. If you think that the price for fuel is high in the US you surely have to come to Europe and you will be cured of your thinking. I was glad to hear that I now have to pay less then 2 DM (about $1) per liter(!) and not per gallon! >My wife drives a Dodge Durango (about 12-18 miles per US >gallon) and I drive a Mazda RX-7 turbo (about 10-12 miles per US >gallon). Hmm, let me calculate. My Golf needs 6 to 7 liters per 100 kilometers that's much more than 30 miles per gallon... >-->Neil -- M.I.K.e Happiness isn't something you experience; it's something you remember. -- Oscar Levant --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 01:16:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA47182 for dynarec-outgoing; Tue, 25 Jul 2000 01:15:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Status From: "M.I.K.e" In-Reply-To: <01bff607$53c0a000$35901a17@turkey> Message-ID: <00036d3850f2de36_mailit@mail.dynarec.com> References: <01bff607$53c0a000$35901a17@turkey> Date: Tue, 25 Jul 2000 10:26:13 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yep, this is quite a cool game. And definitely based on Manga. But it uses >the Lithtec engine - hope that you have a good 3D card. :) Hey, don't say anything against Lithtec! It's a very cool engine, especially in Shogo, where it's used much better than in Blood 2. >Neil. -- M.I.K.e A bird in the hand is worth what it will bring. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 01:16:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA47188 for dynarec-outgoing; Tue, 25 Jul 2000 01:15:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <200007250708.JAA27574@pons.ac.upc.es> Message-ID: <00036d38189c67f5_mailit@mail.dynarec.com> References: <200007250708.JAA27574@pons.ac.upc.es> Date: Tue, 25 Jul 2000 10:10:28 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> About the same is true for the PSX. Ok, I could port these to BeOS, but >>then I'll have to learn a bit more about the system first. >But I think there is a lot of good documentation about PSX out there. Actually I meant I'll have to learn how to program BeOS specific stuff... >> Hey, I didn't know that it is this easy! >I only tried to install it. It gave me an error. So I did a fast look up >in the recycle bin and in the win/temp directory. And I found it. ;) Hehe ;-) >I don't have a Playstation. Me neither... >I have seen FF8 and others games in a PSX of one of my friends. Does it look like VGS? >But in my house I play with VGS (or long ago >also Bleem, I finised Castlevania with it). VGS is much better than Bleem. I don't know why so many complain about the lacking 3D acceleration in VGS, because that of Bleem hardly ever works correctly and in such a engine as in MGS you couldn't use it anyway. >I'm waiting a game called Chrono Cross, >I think it's time it get released the english version. I don't know >enough japanese. ;) Really? How come that you know more English than Japanese? ;-) >When there was only a few PCs (386) here we commonly used lynx (a text >browser) for navegation. It's quite fast. ;) I think one day when Netscape always crashed on my PC card I took a BBS terminal on RISC OS and dialed directly into the university and browsed using Lynx. Download times were even better because I had a ZModem protocol instead of PPP ;-) >Victor -- M.I.K.e Troubled day for virgins over 16 who are beautiful and wealthy and live in eucalyptus trees. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 01:16:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA47191 for dynarec-outgoing; Tue, 25 Jul 2000 01:15:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <01bff607$283db580$35901a17@turkey> Message-ID: <00036d384c5e35f9_mailit@mail.dynarec.com> References: <01bff607$283db580$35901a17@turkey> Date: Tue, 25 Jul 2000 10:24:56 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I would have first heard back in 1993. I'd have to take a look, but I guess it was a bit earlier for me. >Anyway, while Marat may be seen as the granddaddy of emulation, unless he >did it on the Amiga then he certainly isn't. Even my Speccy emulator was >written before his first CPU core! Marat is the granddaddy of console emulation (iNES) but there were several coputer emulators before! >The Saturn actually had fairly decent hardware. It lost out though because >it had no 3D hardware. Having said that, the games that did come out for it >were impressive when you consider the 3D was all done in software! The reason why the Saturn was a flop was that the dual SH-2 were a bitch to program so it had lack of games, and the rest is just logical conclusion. >The Dreamcast *will* be a bitch to emulate - if only for the graphics! I'm >thinking that unless you have a Kyro based 3D card then you won't easily get >an emulator for the Dreamcast. If you have to convert the tile based 3D into >our poly based 3D then that's going to take a hell of a lot of processing. I don't know much about the NEC PowerVR2. Anything special? The SH-4 with it's 128-bit vector FP will be a problem even when using SSE or 3DNow! And most underestimate the soundchip which has a ARM7 core, which isn't that slow (currently used in Psion 5, and faster than the ARM6 CPU in the 3DO), and given the fact that the Archimedes emulator Archie doesn't even reach the full speed of an ARM2 (which had no caches and only 8MHz) the sound could prove as a problem... Some people think more HLE stuff could be done to speed it up, but I certainly wouldn't want to do high-level emulation of WinCE. Also because the OS isn't in the machine but on the GD-ROM the developer has the choice between WinCE and Sega's own OS. So you don't only have two OSes to do HLE stuff for but you'll also have problems to find information about the second one. >The PS2 graphics should, in theory, be much easier to convert. Of course, it >also has a CPU that runs 100MHz faster so... :o Yeah, I guess the main problem with the PS2 is the same as with the N64, speed of the components, but the components itself aren't that problematic, I guess. >If I had a PSX - or PSX games - then I'd consider it. I only have a rather >technical interest in it myself. Whatever, I've seen that it's better than >Bleem! - but that's hardly difficult! :)) Even PSEmuPro would be better if it were a bit faster and had MDEC support. >Neil. -- M.I.K.e "I have to convince you, or at least snow you ..." -- Prof. Romas Aleliunas, CS 435 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 01:30:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA47215 for dynarec-outgoing; Tue, 25 Jul 2000 01:29:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007250837.KAA25200@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: <00036d38189c67f5_mailit@mail.dynarec.com> "from M.I.K.e at Jul 25, 2000 10:10:28 am" To: dynarec@dynarec.com Date: Tue, 25 Jul 2000 10:37:19 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I have seen FF8 and others games in a PSX of one of my friends. > > Does it look like VGS? > The pixels are more easy to see in a PC. ;) It runs pretty well. A bit slow though with my PII 350 in the map and when I call Guardian Forces. There are also some graphics modes that doesn't show (the end sequence of every battle or the scan spell) but I finished the first CD without any problem. The problem was I didn't have the others CDs. :( And I don't like to play Spanish version of games, the translations sucks here. For example the translation of Daikatana is so horrible, the speech doesn't end and the dubbed actors talk as they were sleepy. > >But in my house I play with VGS (or long ago > >also Bleem, I finised Castlevania with it). > > VGS is much better than Bleem. I don't know why so many complain about the > lacking 3D acceleration in VGS, because that of Bleem hardly ever works > correctly and in such a engine as in MGS you couldn't use it anyway. > The only good think that comes from Bleem and 3D is the antialiasing and the 3D graphics in 640x480 that look very less pixelized. But if you want to play real PSX games they are in 320x240. ;) > >I'm waiting a game called Chrono Cross, > >I think it's time it get released the english version. I don't know > >enough japanese. ;) > > Really? How come that you know more English than Japanese? ;-) > I started learning english in school when I was 10 and I have started learning japanese by myself last year. ;) > M.I.K.e > Victor > Troubled day for virgins over 16 who are beautiful and wealthy and live > in eucalyptus trees. > !!!!!????? :O --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 01:51:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA47242 for dynarec-outgoing; Tue, 25 Jul 2000 01:49:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <200007250837.KAA25200@pons.ac.upc.es> Message-ID: <00036d38cbe556cc_mailit@mail.dynarec.com> References: <200007250837.KAA25200@pons.ac.upc.es> Date: Tue, 25 Jul 2000 11:00:36 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The pixels are more easy to see in a PC. ;) That's what I thought. >It runs pretty well. A >bit slow though with my PII 350 in the map and when I call Guardian >Forces. I didn't notice severe speed problems with my P2-350, so I shouldn't have any with my new P3-550, at least I hope so ;-) >There are also some graphics modes that doesn't show (the >end sequence of every battle or the scan spell) I've also heard that it simply crashes in Soul Reaver at some point. >but I finished the >first CD without any problem. The problem was I didn't have the >others CDs. :( My problem is that VGS hangs when I open a certain door in Resident Evil 2. I'll have to check the original to see if that's a problem of VGS or just a fault on my copy... >And I don't like to play Spanish version of games, >the translations sucks here. For example the translation of Daikatana >is so horrible, the speech doesn't end and the dubbed actors talk as >they were sleepy. Tell me about it. MGS is so great that I'd even buy it, but I don't want to have the German version, because the translation is crappy and the voice actors are of B-movie quality :-( The best dubbing I ever heard (probably even better than the originals) were Outcast (Cutter Slade is spoken by Manfred Lehman, who normally dubbs Bruce Willis for the big movies) and Grim Fandango (Manny Calavera is spoken by Tommy Pieper, who dubbed Alf eg.). But normally I try to get the English versions if possible. >The only good think that comes from Bleem and 3D is the antialiasing and >the 3D graphics in 640x480 that look very less pixelized. But if you >want to play real PSX games they are in 320x240. ;) Well, if the D3D support worked... You simply cannot use it in MGS, because they use lots of tricks, and you'd also loose the unique visuals. In the Tecken 3 demo Bleem often drops the textures and you have white polygone fighters, hey that works much better in PSEmuPro! >I started learning english in school when I was 10 and I have started >learning japanese by myself last year. ;) I only know very few Japanese words, and I surely cannot read Japanese, better I can read the signs but I don't understand them ;-) >Victor >> Troubled day for virgins over 16 who are beautiful and wealthy and live >> in eucalyptus trees. >!!!!!????? :O Don't ask me what that is meant to be! -- M.I.K.e Whenever you find that you are on the side of the majority, it is time to reform. -- Mark Twain --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 02:01:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA47367 for dynarec-outgoing; Tue, 25 Jul 2000 01:59:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Jul 2000 02:14:46 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <00036d37fc61e0bc_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> the price of fuel is high! > >It's pretty high here, too, but probably not as bad. > If you think that the price for fuel is high in the US It is comparative to what it was a year ago (or even 10 years ago), and as I said above, it's not as bad. > you surely have to > come to Europe and you will be cured of your thinking. > I was glad to hear that I now have to pay less then 2 DM (about $1) per > liter(!) and not per gallon! 3.78 Liters=1 US Gallon, so $3.78 a gallon. Yeah, that really sucks ass. It's about $1.89 a gallon here (and that's for premium). > >gallon) and I drive a Mazda RX-7 turbo (about 10-12 miles per US > >gallon). > Hmm, let me calculate. My Golf needs 6 to 7 liters per 100 kilometers that's > much more than 30 miles per gallon... That's about 33MPG - 62 Miles = 100 kilometers. My wife's Saturn (before the Durango) got 35-40MPG if driven on a highway - 27 around town. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 02:05:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA47431 for dynarec-outgoing; Tue, 25 Jul 2000 02:04:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007250912.LAA08455@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: <00036d38cbe556cc_mailit@mail.dynarec.com> "from M.I.K.e at Jul 25, 2000 11:00:36 am" To: dynarec@dynarec.com Date: Tue, 25 Jul 2000 11:12:31 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >There are also some graphics modes that doesn't show (the > >end sequence of every battle or the scan spell) > > I've also heard that it simply crashes in Soul Reaver at some point. > Bah! I have finished Soul Reaver in PC and althought it could be a cool game the lack of a real end gets me angry. It's incredible how someone could releases a game that hasn't an end. It just says it will continue, and even without final animations!! And the credits are in video formad when they are plain graphics and letters. > >but I finished the > >first CD without any problem. The problem was I didn't have the > >others CDs. :( > > My problem is that VGS hangs when I open a certain door in Resident Evil 2. > I'll have to check the original to see if that's a problem of VGS or just a > fault on my copy... > Bad. The problem with compatibility list is that they usually mean only they don't crash at the beginning of the game. But I have ended FF Tactics for example and played a long time with FF8. So the emulation should be so bad. There are also another game I know it hangs up, Wild Arms, a RPG with a very wonderful intro movie and songs. The game also seems good but the 3D battle have worse graphics than FF series. > >And I don't like to play Spanish version of games, > >the translations sucks here. For example the translation of Daikatana > >is so horrible, the speech doesn't end and the dubbed actors talk as > >they were sleepy. > > Tell me about it. MGS is so great that I'd even buy it, but I don't want to > have the German version, because the translation is crappy and the voice > actors are of B-movie quality :-( He! I have the english version of MGS (NTSC not PAL) and a friend of me has the japanese one that sound just cool. ;) > The best dubbing I ever heard (probably even better than the originals) were > Outcast (Cutter Slade is spoken by Manfred Lehman, who normally dubbs Bruce > Willis for the big movies) and Grim Fandango (Manny Calavera is spoken by > Tommy Pieper, who dubbed Alf eg.). > But normally I try to get the English versions if possible. > The problem is while dubbing for TV and cinema are really incredible here in Spain (all of them) the dubbing for videogames is the worst crap I have seen ever. And translation (only text!!) is also really bad. For example in FF7 someone translated party, when it was referring to the group of heroes that goes with you, with the other meaning that has nothing to do in that context. > >I started learning english in school when I was 10 and I have started > >learning japanese by myself last year. ;) > > I only know very few Japanese words, and I surely cannot read Japanese, > better I can read the signs but I don't understand them ;-) > And I only know the basis of the grammar, a dozen of words, eleven kanjis and sometimes I think I now the katakana and hiragana syllabic alphabets. :( > >> Troubled day for virgins over 16 who are beautiful and wealthy and live > >> in eucalyptus trees. > >!!!!!????? :O > > Don't ask me what that is meant to be! > He! ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 02:38:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA47469 for dynarec-outgoing; Tue, 25 Jul 2000 02:37:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: Message-ID: <00036d3943986847_mailit@mail.dynarec.com> References: Date: Tue, 25 Jul 2000 11:34:04 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It is comparative to what it was a year ago (or even 10 years ago), and as >I said above, it's not as bad. Well, at that time it wasn't that worse in Germany as well. >3.78 Liters=1 US Gallon, so $3.78 a gallon. Yeah, that really sucks >ass. It's about $1.89 a gallon here (and that's for premium). Tell me about it! And my parents found out that it's even more expensive in France. >That's about 33MPG - 62 Miles = 100 kilometers. My wife's Saturn (before >the Durango) got 35-40MPG if driven on a highway - 27 around town. Not bad. In Germany we have more and more 3 liter cars now, meaning they need 3 liters per 100 kilometers. I guess you wouldn't like the power and my mother always moans about the small space in such cars. BTW, if it's too hot for you in Oregon than you should come to Germany, it's shocking cold here. We also had much rain yesterday. I bet NG feels just like being at home, only that all the strange people speak the wrong language... >-->Neil -- M.I.K.e Any excuse will serve a tyrant. -- Aesop --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 02:38:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA47475 for dynarec-outgoing; Tue, 25 Jul 2000 02:37:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <200007250912.LAA08455@pons.ac.upc.es> Message-ID: <00036d396eb9681a_mailit@mail.dynarec.com> References: <200007250912.LAA08455@pons.ac.upc.es> Date: Tue, 25 Jul 2000 11:46:08 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Bah! I have finished Soul Reaver in PC and althought it could be a >cool game the lack of a real end gets me angry. It's incredible how >someone could releases a game that hasn't an end. It just says >it will continue, and even without final animations!! That's bad indeed! >And the credits >are in video formad when they are plain graphics and letters. I noticed that more and more game developers do it that way althogh they'd need less space and it would be more fluently if the did coded scrolling... >Bad. The problem with compatibility list is that they usually mean only >they don't crash at the beginning of the game. Well, it could be that I took the wrong program to copy the CD, so it might work with the original, but I'll have to check that. >He! I have the english version of MGS (NTSC not PAL) and a friend of >me has the japanese one that sound just cool. ;) Damn! Where did you get these? >The problem is while dubbing for TV and cinema are really incredible >here in Spain (all of them) the dubbing for videogames is the worst >crap I have seen ever. It depends. Normally dubbing of films is quite good in Germany, but Phantom Menace was absolutely crap. Considering that they had a few months to do it the translation was very bad, it was very odd to hear the Trade Federation guys speak with a French accent, and even the main actors sounded very emotionless. The worst thing was probably that the woderful snobistic English that Ewen McGregor had to train for sure was dropped. >And translation (only text!!) is also really bad. >For example in FF7 someone translated party, when it was referring to >the group of heroes that goes with you, with the other meaning that >has nothing to do in that context. You mean party as a celebration? I think the main problem is that these games are often translated by Japanese and not by native speakers as it should be. I also noticed that in Resident Evil 2 "shotgun" is translated as "Schrotgewehr" although the normal term would be "Schrotflinte". The English translation of MGS, at least what I heard in the demo, seemed to be quite good, but the German translation isn't on par, especially the most of the sarcasm of Solid Snake seems to be lost. >And I only know the basis of the grammar, a dozen of words, eleven kanjis >and sometimes I think I now the katakana and hiragana syllabic alphabets. >:( Well, that's surely more than I know. >Victor -- M.I.K.e For some reason, this fortune reminds everyone of Marvin Zelkowitz. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 03:28:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA47529 for dynarec-outgoing; Tue, 25 Jul 2000 03:27:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007251023.MAA06018@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: <00036d396eb9681a_mailit@mail.dynarec.com> "from M.I.K.e at Jul 25, 2000 11:46:08 am" To: dynarec@dynarec.com Date: Tue, 25 Jul 2000 12:23:05 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >And the credits > >are in video formad when they are plain graphics and letters. > > I noticed that more and more game developers do it that way althogh they'd > need less space and it would be more fluently if the did coded scrolling... > The lazy industry of videogames, if you have so much space in a CD why don't use it all (in a useless why of course ;). > >Bad. The problem with compatibility list is that they usually mean only > >they don't crash at the beginning of the game. > > Well, it could be that I took the wrong program to copy the CD, so it might > work with the original, but I'll have to check that. > It could be. > >He! I have the english version of MGS (NTSC not PAL) and a friend of > >me has the japanese one that sound just cool. ;) > > Damn! Where did you get these? > Hehehe! In Spain the piracy is very extended. ;) I get it from a friend who knows some of the hundreds of software pirates here (all Computer Science universities are full of them, I also know some). It seems there is a kind of market of Japanese and US games so they always have the games very sooner than they are released here (or even in Europe). There are also shops where you can rent videogames a few days (it could be really useful ;) and they could have some NTSC and JP versions. I get some interesting stuff from one of those shops. You can also buy imported games but I don't want to know how much they will cost!! > >And translation (only text!!) is also really bad. > >For example in FF7 someone translated party, when it was referring to > >the group of heroes that goes with you, with the other meaning that > >has nothing to do in that context. > > You mean party as a celebration? Yes. They saied "arriba esta la fiesta" which means "above is the celebration" when it should be "above is the group". Kinda confusing, because you begin to think what are they talking about. Until you realice that comes from a bad translation of english. There are times in this game you have to back translate to english to know what in hell they are saying. I wonder what would understand the poor people who doesn't know english. > I think the main problem is that these games are often translated by Japanese > and not by native speakers as it should be. I also noticed that in Resident > Evil 2 "shotgun" is translated as "Schrotgewehr" although the normal term > would be "Schrotflinte". I don't think so because all europe translation come from the english translation. It's enough hard to translate from japanese to english so they think is better use the english version for the other languages. So we get a two passes translation with more mistakes added. > The English translation of MGS, at least what I heard in the demo, seemed to > be quite good, but the German translation isn't on par, especially the most > of the sarcasm of Solid Snake seems to be lost. > The english translation is really good, I have heart and read it. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 04:08:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA47583 for dynarec-outgoing; Tue, 25 Jul 2000 04:07:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <200007251023.MAA06018@pons.ac.upc.es> Message-ID: <00036d3ab716a92b_mailit@mail.dynarec.com> References: <200007251023.MAA06018@pons.ac.upc.es> Date: Tue, 25 Jul 2000 13:17:57 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The lazy industry of videogames, if you have so much space in a CD why >don't use it all (in a useless why of course ;). Well, I wonder what they'll do on the PS2 when they have whole DVDs! >Hehehe! In Spain the piracy is very extended. ;) I get it from a friend >who knows some of the hundreds of software pirates here (all Computer >Science universities are full of them, I also know some). It seems >there is a kind of market of Japanese and US games so they always have >the games very sooner than they are released here (or even in Europe). Too bad ;-) >There are also shops where you can rent videogames a few days (it could >be really useful ;) and they could have some NTSC and JP versions. I >get some interesting stuff from one of those shops. Hmm, I might take a look maybe I find something interesting. >You can also buy >imported games but I don't want to know how much they will cost!! Tell me about it! >> You mean party as a celebration? >Yes. They saied "arriba esta la fiesta" which means "above is the >celebration" >when it should be "above is the group". Is the game really called Final Fantasy not Final Nightmare or Spot the Errors? ;-) >Kinda confusing, because you >begin to think what are they talking about. Until you realice that comes >from a bad translation of english. There are times in this game you have >to back translate to english to know what in hell they are saying. I >wonder what would understand the poor people who doesn't know english. Well, in that case you could play the English version anyway. >I don't think so because all europe translation come from the english >translation. It's enough hard to translate from japanese to english so >they think is better use the english version for the other languages. Probably. >So we get a two passes translation with more mistakes added. Especially if you take machine translation then you'll get very strange examples. >The english translation is really good, I have heart and read it. ;) Yeah, from what I've heard in the demo it's good ("I'm the pawn they've sent here to save your worthless butt.") that's why I want to have the full English version. >Victor -- M.I.K.e You're at the end of the road again. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 06:03:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA47683 for dynarec-outgoing; Tue, 25 Jul 2000 06:02:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: DYNAREC: Transmeta (again!) Date: Tue, 25 Jul 2000 15:06:41 +0200 Message-ID: <01bff639$2c82c680$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, http://www.theregister.co.uk/content/1/12132.html I just thought I'd post every new link I find about Transmeta just because I know how much everybody here loves them. :) Neil. ========================================= Look here, this toy cow in my hands is very small. But the cows in that field are very far away... ========================================= --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 10:33:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA47878 for dynarec-outgoing; Tue, 25 Jul 2000 10:32:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <397DD147.207EFFEF@retemail.es> Date: Tue, 25 Jul 2000 19:41:27 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Transmeta (again!) References: <01bff639$2c82c680$35901a17@turkey> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > http://www.theregister.co.uk/content/1/12132.html > > I just thought I'd post every new link I find about Transmeta just because I > know how much everybody here loves them. :) > So I will have to write my Transmeta Hateage Page at last. :( I was hoping they would end in the more absolute silence. > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 10:55:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA47900 for dynarec-outgoing; Tue, 25 Jul 2000 10:54:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <397DD6A8.DAEED289@retemail.es> Date: Tue, 25 Jul 2000 20:04:24 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.5 [es]C-CCK-MCD Alehop (Win98; I) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: The future of emulation References: <200007251023.MAA06018@pons.ac.upc.es> <00036d3ab716a92b_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >The lazy industry of videogames, if you have so much space in a CD why > >don't use it all (in a useless why of course ;). > > Well, I wonder what they'll do on the PS2 when they have whole DVDs! > Uncompressed AVIs for text based credits, music stored in high quality 200Khz 32 bit samples, 64 bit color depth images, enhanced (but uncompressed) full motion MPEG0 videos, or perhaps dummy files with random data. ;) > >Hehehe! In Spain the piracy is very extended. ;) I get it from a friend > >who knows some of the hundreds of software pirates here (all Computer > >Science universities are full of them, I also know some). It seems > >there is a kind of market of Japanese and US games so they always have > >the games very sooner than they are released here (or even in Europe). > > Too bad ;-) > Yes. For all those fucking companies and their too expensive prices. ;) Sony made a good thing with their cheap lines, but they are always old videogames (more than a year) and people wants to play to them when they are released no a year later. We have a spanish company called Dinamic that produces software in a more decent price and they are rarely pirated. They were making low quality software but last years they are getting better games and at the same cost. > >> You mean party as a celebration? > >Yes. They saied "arriba esta la fiesta" which means "above is the > >celebration" > >when it should be "above is the group". > > Is the game really called Final Fantasy not Final Nightmare or Spot the > Errors? ;-) > Well they could have called "Fantasia Final" the translation of the title in Spanish which sounds really horrible. > >The english translation is really good, I have heart and read it. ;) > > Yeah, from what I've heard in the demo it's good ("I'm the pawn they've sent > here to save your worthless butt.") that's why I want to have the full > English version. > It has really cool voices. ;) I should have to play it, it could help me improve to listen english. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 13:27:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA48017 for dynarec-outgoing; Tue, 25 Jul 2000 13:26:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000725133536.007d8650@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 25 Jul 2000 13:35:36 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Dev01-Feedback (fwd) In-Reply-To: <01bff60c$ef084400$35901a17@turkey> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>While I agree that most compilers will, if properly motivated, create jump >>tables, I've yet to come across a compiler that will always create a jump >>table for a switch. In all honesty, everything I've tried from MSVC++ to >>Borland C++ to gcc to Watcom (which was the worst, optimizaiton-wize) has >>gone through and done some completely stupid things to switch statements >>(among other things). Hmm, what's going on here? He wrote me saying the same thing. He also complained about Watcom being "the worst" compiler. I've never used Watcom personally but I've heard lots of great things about its optimizations. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 13:29:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA48027 for dynarec-outgoing; Tue, 25 Jul 2000 13:29:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000725133825.007da100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 25 Jul 2000 13:38:25 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Dev01-Feedback (fwd) In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >---------- Forwarded message ---------- >Date: Mon, 24 Jul 2000 16:27:37 +0000 (GMT) >From: Neil Bradley >To: gag@retrogames.com >Subject: Dev01-Feedback > >I just took a look at your processor emulation page and as someone who has >written many emulator cores and tried all the approaches (plus one you >haven't listed in your article), I have a few issues with it: > >First off, in your switch/case, you mention that the compiler compiles it >as a if/else grouping of statements. I'm not sure what compiler you're >using, but gcc, MSVC, and Watcom all create jump tables. You must make >sure, though, that you have all cases accounted for. If you have holes or >create holes, you'll get the results you mention. Or perhaps you forgot to >turn on optimization. Aren't jump tables still created with some cases unaccounted for? Let's say you want to emulate something like the 6502 and leave a few cases unaccounted for, but include the "default" case, will it still resort to if-elses? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 14:28:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA48080 for dynarec-outgoing; Tue, 25 Jul 2000 14:28:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Jul 2000 14:43:18 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dev01-Feedback (fwd) In-Reply-To: <3.0.5.32.20000725133536.007d8650@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >>Borland C++ to gcc to Watcom (which was the worst, optimizaiton-wize) has > >>gone through and done some completely stupid things to switch statements > >>(among other things). > Hmm, what's going on here? He wrote me saying the same thing. He also > complained about Watcom being "the worst" compiler. I've never used Watcom > personally but I've heard lots of great things about its optimizations. He doesn't have Watcom and is only judging by the unbalanced test, and doesn't want to be told otherwise. He also doesn't nkow what he's talking about, it seems. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 14:28:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA48090 for dynarec-outgoing; Tue, 25 Jul 2000 14:28:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Jul 2000 14:43:36 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dev01-Feedback (fwd) In-Reply-To: <3.0.5.32.20000725133825.007da100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >using, but gcc, MSVC, and Watcom all create jump tables. You must make > >sure, though, that you have all cases accounted for. If you have holes or > >create holes, you'll get the results you mention. Or perhaps you forgot to > >turn on optimization. > Aren't jump tables still created with some cases unaccounted for? Let's say > you want to emulate something like the 6502 and leave a few cases > unaccounted for, but include the "default" case, will it still resort to > if-elses? Depends entirely on the compiler. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 14:31:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA48103 for dynarec-outgoing; Tue, 25 Jul 2000 14:31:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002601bff688$c48ca500$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000725133825.007da100@powernet.net> Subject: Re: DYNAREC: Dev01-Feedback (fwd) Date: Tue, 25 Jul 2000 23:35:50 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Aren't jump tables still created with some cases unaccounted for? Let's say > you want to emulate something like the 6502 and leave a few cases > unaccounted for, but include the "default" case, will it still resort to > if-elses? Won't write much because it's late - so I'll give you a short answer. Yes. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 14:33:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA48115 for dynarec-outgoing; Tue, 25 Jul 2000 14:33:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002c01bff689$13df0a80$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Dev01-Feedback (fwd) Date: Tue, 25 Jul 2000 23:37:59 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Depends entirely on the compiler. Good point, though I think Watcom, GCC and VC will all create jump tables anyway. Well, the most modern versions of the compilers do... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 14:34:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA48126 for dynarec-outgoing; Tue, 25 Jul 2000 14:34:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000725144252.007d4ec0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 25 Jul 2000 14:42:52 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Dev01-Feedback (fwd) In-Reply-To: References: <3.0.5.32.20000725133825.007da100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 02:43 PM 7/25/2000 +0000, you wrote: >> >using, but gcc, MSVC, and Watcom all create jump tables. You must make >> >sure, though, that you have all cases accounted for. If you have holes or >> >create holes, you'll get the results you mention. Or perhaps you forgot to >> >turn on optimization. >> Aren't jump tables still created with some cases unaccounted for? Let's say >> you want to emulate something like the 6502 and leave a few cases >> unaccounted for, but include the "default" case, will it still resort to >> if-elses? > >Depends entirely on the compiler. gcc, MSVC? Those are the only 2 I ever find myself using. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 14:34:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA48135 for dynarec-outgoing; Tue, 25 Jul 2000 14:34:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Jul 2000 14:49:24 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dev01-Feedback (fwd) In-Reply-To: <002c01bff689$13df0a80$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Depends entirely on the compiler. > Good point, though I think Watcom, GCC and VC will all create jump tables > anyway. Well, the most modern versions of the compilers do... And it also matters what compiler options are being used - optimize for speed? Time? None? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 14:37:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA48149 for dynarec-outgoing; Tue, 25 Jul 2000 14:37:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003801bff689$a3d28ae0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Dev01-Feedback (fwd) Date: Tue, 25 Jul 2000 23:42:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > And it also matters what compiler options are being used - optimize for > speed? Time? None? Debug. ;) I'm logging off now else I'll stay here answering mail all night... :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 14:39:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA48160 for dynarec-outgoing; Tue, 25 Jul 2000 14:38:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003c01bff689$d75222e0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Dev01-Feedback (fwd) Date: Tue, 25 Jul 2000 23:43:59 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ...but before I go, I just want to say that the guy who wrote this is an asshole. There, I've said it. ", I've found that the internal logic used by compilers to decide whether or not to use a jump table doesn't seem to be worth a hill of beans half the time". No, you've found nothing. You're just trying to cover your arse instead of actually admitting you were wrong. Cool beans! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 14:46:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA48178 for dynarec-outgoing; Tue, 25 Jul 2000 14:46:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Jul 2000 15:01:12 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dev01-Feedback (fwd) In-Reply-To: <3.0.5.32.20000725144252.007d4ec0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> you want to emulate something like the 6502 and leave a few cases > >> unaccounted for, but include the "default" case, will it still resort to > >> if-elses? > >Depends entirely on the compiler. > gcc, MSVC? Those are the only 2 I ever find myself using. Off the top of my head I don't know, but if you set MSVC to optimize for time, it'll jump table everything. Say, why don't you start a page that "competes" with his and dispells his weird rumors? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 17:36:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA48309 for dynarec-outgoing; Tue, 25 Jul 2000 17:36:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000725174533.007d1300@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 25 Jul 2000 17:45:33 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Dev01-Feedback (fwd) In-Reply-To: References: <3.0.5.32.20000725144252.007d4ec0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Say, why don't you start a page that "competes" with his and dispells his >weird rumors? It would be interesting... I personally don't have enough experience with compilers to be a truly accurrate source but I suppose I could start looking at assembly output and getting an orientation for what's what in the compiler world. I don't have the time as of now though, I've been finishing up my SH-2 core and restructuring Genital to be have a primitive "driver" system which will make development of the Sega CD and, later, 32X emulation easier. I still want to write a debugger for dr68k ;) I've almost got my SH-2 debugger finished, I'll have to let you guys see it. It still needs a couple commands. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 22:26:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA48522 for dynarec-outgoing; Tue, 25 Jul 2000 22:26:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <3.0.5.32.20000725133825.007da100@powernet.net> Subject: Re: DYNAREC: Dev01-Feedback (fwd) From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Wed, 26 Jul 2000 07:49:07 +0200 Message-ID: <1eecm54.w14c6tg495eqM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id WAA48515 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Aren't jump tables still created with some cases unaccounted for? Let's say > you want to emulate something like the 6502 and leave a few cases > unaccounted for, but include the "default" case, will it still resort to > if-elses? AFAIK, GCC will generate a jump table for switch/case statements when there are at least five case statements and the range of values is not "much bigger than the number of values", which turns out to be ten times if I remember correctly. So, say you have something like: switch (something) { case 0: { ... break; } case 1: { ... break; } case 3: { ... break; } case 5: { ... break; } case 6: { ... break; } default: ... } range of values : [ 0 .. 6 ] -> 6 number of values : 5 The jump table is generated filling in the gaps with label of the default case. Sure, as Neil B. stated, this is compiler-dependant. But well, GCC works on a great number of machines, even though it doesn't always generate optimal code. The best optimizing compiler for C and * especially C++ * is known to be KAI CC. Do you know of any recent article comparing optimizing compilers for speed that includes Metrowerks CodeWarrior and KAI CC ? Gwenolé --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 25 22:26:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA48523 for dynarec-outgoing; Tue, 25 Jul 2000 22:26:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <200007200634.IAA30885@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Wed, 26 Jul 2000 07:49:09 +0200 Message-ID: <1eed76y.1bhqet3yvj9ogM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id WAA48519 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Why don't you explain this a bit further. When is performed the test > of the checksum, after each execution of the BB? Before, of course. Then, when checksums come to differ, the recompiler is called, a new BB recompiled and thus wiping out the older. > But then you should also have to store the initial state. The checksum value would be stored in an extra member of the struct used in the recompiled BB lookup machinery. Once the BB is allocated and generated, so is its struct for lookup so, when code is generated and specialised for block-checksuming, we already know where to load the original checksum value from. In summary: the idea is to checksum m68k blocks. Another idea was to generate a specialised checksumer at the begining of the recompiled block. > And for loops which aren't really self-modifying could mean a really bad > performance. Agreed but when a loop is recompiled, I think one should not put the prologue of the recompiled BB into the core loop. ;-) > > Executor checksums the entire block. > > Where you have found this information? I think the usual documentation > about it doesn't say nothing. SynPaper, available at ARDI's website. But I suppose the "usual documentation" you refered to is that paper. On the other hand, "doesn't say nothing" would mean it tells something in fact ? ;-) BTW, last weekend I (almost) finished the disassembler for my m68k core. Would someone please check it out especially the file src/disassembler/Disassembler.cpp and the indexed EA mode decoding ? I used the term "almost" because of that and of floating-point value decoding... File: emu68k-20000723.tar.gz The disassembler works correctly according to the auto-generated testsuite. For those of you that don't have flex++/bison++, I could leave out the generated files as they don't require any external library. Gwenolé --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 00:32:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA48630 for dynarec-outgoing; Wed, 26 Jul 2000 00:32:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Status Date: Wed, 26 Jul 2000 09:33:37 +0200 Message-ID: <01bff6d3$cf881e80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Crikey, how many messages can we have in one day? :o >I have 128 MB of memory so I opened 64 MB for AGP. I'd turn that down. There's no point enabling more than 16MB AGP Aperture with that particular card - it only uses AGP memory for textures. You'd better hope that you don't play games with 64MB of textures. ;) >Chrono Trigger isn't cool, is THE BEST rpg I have played ever. ;) I would >want to know how good is Chrono Cross. I like Chrono Trigger a lot of more >than FF series. I played it with the early ZSNES in my 486, with 4 or 5 >frame skip, in 256 colours and without sound. And it was yet the very best! >The story is incredible and the character design, by Akira Toriyama (Dragon >Ball and Dragon Quest/Fly), is awesome. I don't know if it's the best RPG that I've played. I still have a soft spot for games like "Bards tale" and that sort. But I think it was one of the best, yes. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 00:46:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA48650 for dynarec-outgoing; Wed, 26 Jul 2000 00:46:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Status Date: Wed, 26 Jul 2000 09:47:20 +0200 Message-ID: <01bff6d5$ba13f400$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Hey, don't say anything against Lithtec! It's a very cool engine, especially >in Shogo, where it's used much better than in Blood 2. I like the engine - but it doesn't half pump out the polygons. You really need a fast card to be able to cope! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 00:46:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA48660 for dynarec-outgoing; Wed, 26 Jul 2000 00:46:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Wed, 26 Jul 2000 09:45:33 +0200 Message-ID: <01bff6d5$7a4d0c80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> That's one way you beat us. And, going by what I've heard, you also beat us >> in terms of pizza and steak. But I also hear that you lose out in terms of >> different types of food - or different types of vegetables. > >WHAT?!?!?!? That's certainly not true in the northwestern US. We have more >restaurants per capita than any city in the entire *WORLD*, and I don't >mean just steak & potatoes! We've got Thai, Vietnamese, Chinese, Korean, >Japanese, Italian, German, Indian, Moroccan, Egyptian, and a whole bunch >of others. And many restaurants in each variety, too. My Dad was in Wichita - so that'd kind of explain the large amounts of steak. But he couldn't find vegetables in supermarkets. Things like Cauliflower, Broccoli, Brussel Sprouts and that kind of thing was just difficult to find - apparently. And my cousin in NY misses the same kind of vegetables - though I think he can get them. And as for German restaurants - how? It's difficult enough to find them over here in Germany itself! :) >Just keep in mind that the US is a fairly big place and that just because >you've seen it in one area doesn't mean it's true for the entire >country. That's the biggest mistake that non-US citizens make when >visiting. "Oh... people in New York are assholes. That means all Americans >are assholes!" ;-) Nah, I won't do that. I treat people as assholes on an individual basis. ;) >> >> America produces"? ;) >> >Oh that's being too harsh. >> Yep, but I did try to think of an economical American car - but failed. The >> only one I can think of which may do is a Lexus - and I'm not entirely >> convinced about that one! > >The Lexus isn't American. It's Japanese. But there's the Ford Escort, >Dodge Intrepid, Geo series, Saturn... there are more, I just don't follow >them because I don't care about mileage. ;-) Performance is all that >matters! I thought Lexus was an American firm? Anyway, I can still pick Dodge because that's certainly American. Never heard of the Geo series or Saturn! Anyway, you can't choose Ford. They're not (IIRC) originally American - I was pretty sure Henry Ford was British and his first factory was there. That's like choosing General Motors - or Vauxhall to me - or Opel to the other Europeans! :) >> Why not? ;) > >Because I like to be able to pass traffic no matter what the speed they're >going. And people drive like nimrods around here - always paranoid, hit >the brakes, take forever to get up to speed, etc... We've been "invaded" >by Indians (and I mean people from India, not Native Americans) whom most >haven't seen nor driven a car in their life, so the problem only >compounds. But I drive assertively, and you can't do that with a 4 banger >shitbox like the Geo metro (3 cylinder). Hehehe! :) >> Anyway, I don't like minivans either. Or wardrobes with wheels (person >> carriers). Although I do like the Renault Espace... But it's too big for me. >> It'd be great for getting my computer equipment around though! :) > >Renault doesn't even import any longer. Really? How about Citroen and Fiat? Renault, Citroen and Fiat are all the same company now... >> I don't know the Dodge Durango as most Dodge stuff never makes it to Europe >> (AFAIK!). But I know the RX-7. Nice. Fast! :) > >Yeah, the RX-7 is kickin'. Though I'm about to buy a Mercedes-Benz 430E >and demote my RX-7 to my "toy" car. I am going to put in a 3 rotor rotary >engine (wonderful German engineering!): That's cool! :) >It's a slow page, but the 3 rotor they have there puts out a bit over 500 >horsepower. I'm going to retrofit it in my RX-7 and do my own car computer >for it (to control fuel injection and ignition). It'll drop 0-60 second >times to 3.2 seconds (currently at around 4.5), quarter mile it'll run in >around 9 seconds, and accellerate so hard that it'll be all I can do to >hold on to the steering wheel. And it'll get horrible gas mileage. ;-) That sounds cool. When you do it, you'll have to get it recorded and put it up on the 'net! >A bit glitsy, but is really a nice vehicle. Built on a truck chassis. I >need it for pinball machines, auto parts, and some way to haul stuff (like >the 400 kids we're going to have). But I bought it for my wife, now I get >to play... ;-) Heh - I'll just smile. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 00:55:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA48675 for dynarec-outgoing; Wed, 26 Jul 2000 00:55:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007260803.KAA04399@pons.ac.upc.es> Subject: Re: DYNAREC: Status In-Reply-To: <01bff6d3$cf881e80$35901a17@turkey> "from Neil Griffiths at Jul 26, 2000 09:33:37 am" To: dynarec@dynarec.com Date: Wed, 26 Jul 2000 10:03:43 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I have 128 MB of memory so I opened 64 MB for AGP. > > > I'd turn that down. There's no point enabling more than 16MB AGP Aperture > with that particular card - it only uses AGP memory for textures. You'd > better hope that you don't play games with 64MB of textures. ;) > When I had 64 MB of memory I used to set it to 16MB, because games like Hexen II (quake 1 engine I think) ran too slow. But I think I don't have any problem now. > Neil. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 00:57:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA48685 for dynarec-outgoing; Wed, 26 Jul 2000 00:57:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: The future of emulation Date: Wed, 26 Jul 2000 10:00:14 +0200 Message-ID: <01bff6d7$88039180$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Marat is the granddaddy of console emulation (iNES) but there were several >coputer emulators before! There certainly were! :) >I don't know much about the NEC PowerVR2. Anything special? Well, the way (simplified) that current 3D cards render is to draw the scene polygon by polygon. We use a Z-Buffer so we don't draw polygons that we can't see - but we still draw polygon by polygon. The PVR2 doesn't. It uses a different technique whereby it renders using tiles. The tiles are sorted using something which seems similar to a Z-Buffer - but isn't the same. Whatever, just the fact that they render using tiles gives them a speed boost (in the same sort of way that blitting does over drawing pixel by pixel). I don't know their exact technique because that information isn't public - but it'd make for interesting reading... >And most underestimate the soundchip which has a ARM7 core, which isn't that >slow (currently used in Psion 5, and faster than the ARM6 CPU in the 3DO), >and given the fact that the Archimedes emulator Archie doesn't even reach the >full speed of an ARM2 (which had no caches and only 8MHz) the sound could >prove as a problem... That'd be running at 36MHz then, yes? >>The PS2 graphics should, in theory, be much easier to convert. Of course, it >>also has a CPU that runs 100MHz faster so... :o > >Yeah, I guess the main problem with the PS2 is the same as with the N64, >speed of the components, but the components itself aren't that problematic, I >guess. That's my point of view, yes. The N64 wasn't difficult to emulate - just difficult to do with any speed. The PS2 will have the same problems... >>If I had a PSX - or PSX games - then I'd consider it. I only have a rather >>technical interest in it myself. Whatever, I've seen that it's better than >>Bleem! - but that's hardly difficult! :)) > >Even PSEmuPro would be better if it were a bit faster and had MDEC support. The source code is available, isn't it? If so, it wouldn't be such a difficu lt task for someone who has written MDEC decoding routines. But I'm not interested myself - I don't have any PSX games to test it out with! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:02:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48704 for dynarec-outgoing; Wed, 26 Jul 2000 01:02:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000726011109.007d77c0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 26 Jul 2000 01:11:09 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff6d5$7a4d0c80$35901a17@turkey> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>> That's one way you beat us. And, going by what I've heard, you also beat >us >>> in terms of pizza and steak. But I also hear that you lose out in terms >of >>> different types of food - or different types of vegetables. American pizza is better than European pizza. Last I was in Italy, I couldn't believe how thin and distasteful the varieties of pizza there were :P >>WHAT?!?!?!? That's certainly not true in the northwestern US. We have more >>restaurants per capita than any city in the entire *WORLD*, and I don't >>mean just steak & potatoes! We've got Thai, Vietnamese, Chinese, Korean, >>Japanese, Italian, German, Indian, Moroccan, Egyptian, and a whole bunch >>of others. And many restaurants in each variety, too. Mmmm... Chinese. >My Dad was in Wichita - so that'd kind of explain the large amounts of >steak. But he couldn't find vegetables in supermarkets. Things like >Cauliflower, Broccoli, Brussel Sprouts and that kind of thing was just >difficult to find - apparently. And my cousin in NY misses the same kind of >vegetables - though I think he can get them. The quality of store-bought meats and produce is extremely poor in the US. Europe (and the rest of the world) beats it out. Supposedly taste can be enchanced through genetic alteration, but it hasn't happened yet... I'm not blaming the tastelessness of food on genetic engineering though... but something's up ;) Then again, living in Nevada, we've got nuclear waste oozing through our soil... 'nuff said ;) >>Just keep in mind that the US is a fairly big place and that just because >>you've seen it in one area doesn't mean it's true for the entire >>country. That's the biggest mistake that non-US citizens make when >>visiting. "Oh... people in New York are assholes. That means all Americans >>are assholes!" ;-) More and more people are becoming assholes, everywhere in the US. I was born and raised here and as the years go by, I've noticed fewer and fewer strangers saying something even as simple as "hi". I'm not the only one to have noticed it... Of course, as you pointed out, it depends on where you are in the US. I think larger cities tend to have grumpier populations -- Reno has grown very large lately, so perhaps therein lies the reason... >>The Lexus isn't American. It's Japanese. But there's the Ford Escort, >>Dodge Intrepid, Geo series, Saturn... there are more, I just don't follow >>them because I don't care about mileage. ;-) Performance is all that >>matters! Screw mileage. BRING ON THE POWER! ;) >Anyway, you can't choose Ford. They're not (IIRC) originally American - I >was pretty sure Henry Ford was British and his first factory was there. >That's like choosing General Motors - or Vauxhall to me - or Opel to the >other Europeans! :) I'm pretty sure Ford is American, it's US-based now at least. I think the Model-T assembly lines were built here. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:04:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48714 for dynarec-outgoing; Wed, 26 Jul 2000 01:04:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 26 Jul 2000 01:19:39 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff6d5$7a4d0c80$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >WHAT?!?!?!? That's certainly not true in the northwestern US. We have more > >restaurants per capita than any city in the entire *WORLD*, and I don't > >mean just steak & potatoes! We've got Thai, Vietnamese, Chinese, Korean, > >Japanese, Italian, German, Indian, Moroccan, Egyptian, and a whole bunch > >of others. And many restaurants in each variety, too. > My Dad was in Wichita - so that'd kind of explain the large amounts of > steak. Kansas? No wonder why! It's in the middle of cattle country! About the only other thing you can get in that region is wheat. ;-) > But he couldn't find vegetables in supermarkets. Things like > Cauliflower, Broccoli, Brussel Sprouts and that kind of thing was just > difficult to find - apparently. And my cousin in NY misses the same kind of > vegetables - though I think he can get them. I personally do *NOT* like vegetables. Well, I like potatoes, but I can't stand celery, carrots, etc... But I can understand NY, because it's 200 miles from farm land. Here in Oregon (and anywhere in the Northwest) we have everything you mentioned above plus a bunch of them I've never heard before. > >country. That's the biggest mistake that non-US citizens make when > >visiting. "Oh... people in New York are assholes. That means all Americans > >are assholes!" ;-) > Nah, I won't do that. I treat people as assholes on an individual basis. ;) Okay, then don't assume that because you've been to New York that you've been to the United States as a whole. New York is *NOTHING* like the Northwest (as an example). > >Dodge Intrepid, Geo series, Saturn... there are more, I just don't follow > >them because I don't care about mileage. ;-) Performance is all that > >matters! > I thought Lexus was an American firm? Nope - it's Nissan, as Infinti is to Toyota, and Acura is to Honda. Same company. It was funny - one time a coworker was proud of his new Acura. I said "Oh, you bought a Honda, huh?". He violently replied, "No, an ACURA! They're DIFFERENT COMPANIES!" so we went out to the parking lot and he opened the hood to his car. Plain as day on the valve cover: HONDA MOTOR CORP. ;-) Boy, he was let down. > Anyway, I can still pick Dodge because > that's certainly American. Assembled mostly in Canada. ;-) > Never heard of the Geo series or Saturn! Saturn is fairly recent. Geo is just frightening. The Geo line I think is Chevrolet. > Anyway, you can't choose Ford. They're not (IIRC) originally American - I > was pretty sure Henry Ford was British and his first factory was there. No, Henry Ford was a tried and true American, born and raised in the US, and his company started here. > >> It'd be great for getting my computer equipment around though! :) > >Renault doesn't even import any longer. > Really? How about Citroen and Fiat? Renault, Citroen and Fiat are all the > same company now... Nope... haven't seen Fiats in about 20 years here. Good thing, too. They were real piles of shit. FIAT=Fix It Again, Tony. ;-) > >times to 3.2 seconds (currently at around 4.5), quarter mile it'll run in > >around 9 seconds, and accellerate so hard that it'll be all I can do to > >hold on to the steering wheel. And it'll get horrible gas mileage. ;-) > That sounds cool. When you do it, you'll have to get it recorded and put it > up on the 'net! There are a lot of people who are interested in the progress. The problem is there have been only a dozen or so people who've done it, and they're tight lipped assholes who don't want to share any info. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:06:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48726 for dynarec-outgoing; Wed, 26 Jul 2000 01:06:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007260814.KAA10199@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <1eed76y.1bhqet3yvj9ogM@[192.168.0.2]> "from Gwenole Beauchesne at Jul 26, 2000 07:49:09 am" To: dynarec@dynarec.com Date: Wed, 26 Jul 2000 10:14:13 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-MIME-Autoconverted: from 8bit to quoted-printable by pons.ac.upc.es id KAA10199 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id BAA48723 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > Why don't you explain this a bit further. When is performed the test > > of the checksum, after each execution of the BB? > > Before, of course. Then, when checksums come to differ, the recompiler > is called, a new BB recompiled and thus wiping out the older. > I should have guessed it. ;) > > But then you should also have to store the initial state. > > In summary: the idea is to checksum m68k blocks. Another idea was to > generate a specialised checksumer at the begining of the recompiled > block. > What I don't know if it will be faster or not than test memory writes ... > > And for loops which aren't really self-modifying could mean a really bad > > performance. > > Agreed but when a loop is recompiled, I think one should not put the > prologue of the recompiled BB into the core loop. ;-) > And what happens if the loop is too big or is a loop inside another loop?. ;) > > > Executor checksums the entire block. > > > > Where you have found this information? I think the usual documentation > > about it doesn't say nothing. > > SynPaper, available at ARDI's website. But I suppose the "usual > documentation" you refered to is that paper. On the other hand, "doesn't > say nothing" would mean it tells something in fact ? ;-) > This is something that happens in Spanish we negate two times. ;) In any case I should have to reread SynPaper because I don't remember anything of that. > > Gwenolé Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:07:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48735 for dynarec-outgoing; Wed, 26 Jul 2000 01:07:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 26 Jul 2000 01:22:42 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <3.0.5.32.20000726011109.007d77c0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >>> different types of food - or different types of vegetables. > American pizza is better than European pizza. Last I was in Italy, I > couldn't believe how thin and distasteful the varieties of pizza there were :P That's because American pizza is an American invention. Italian pizza isn't anything like it, so Italians would be shocked ordering pizza - just as much as you are when you ordered it. ;-) > >My Dad was in Wichita - so that'd kind of explain the large amounts of > >steak. But he couldn't find vegetables in supermarkets. Things like > >Cauliflower, Broccoli, Brussel Sprouts and that kind of thing was just > >difficult to find - apparently. And my cousin in NY misses the same kind of > >vegetables - though I think he can get them. > The quality of store-bought meats and produce is extremely poor in the US. That's too much of a broad statement, and flatly not true. It varies from region to region, and is based upon how close the meat supply companies are to the city. In Portland, it's great. In the Northwest, it's great. Same deal with fish. It's awesome on the coast, but in the midwest it's yucky. > Then again, living in Nevada, we've got nuclear waste oozing through our > soil... 'nuff said ;) Yeah. I'm not aware of any large cattle ranches anywhere near Nevada. ;-) > are in the US. I think larger cities tend to have grumpier populations -- > Reno has grown very large lately, so perhaps therein lies the reason... Too many old people. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:12:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48747 for dynarec-outgoing; Wed, 26 Jul 2000 01:12:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Wed, 26 Jul 2000 10:14:28 +0200 Message-ID: <01bff6d9$84710a00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Tell me about it! And my parents found out that it's even more expensive in >France. Nah, nothing can be bad in France! Nothing! Everything is better than everywhere else! REMEMBER THAT! ;) Sorry, it's the influence of the 2 French guys I live with. Everything in France is good - and better than everywhere else. French is a better language too. :)) >Not bad. In Germany we have more and more 3 liter cars now, meaning they need >3 liters per 100 kilometers. I guess you wouldn't like the power and my >mother always moans about the small space in such cars. The SMART cars? I wouldn't be seen dead in one of those. Well, maybe if there's an attractive woman on the other side of the car... Whatever, those cars look horribly small and I couldn't have one. I'd never get my monitor in the boot! I like the way Mercedez-Benz (who make them) don't put their logo on the car - they're that ashamed. :) >BTW, if it's too hot for you in Oregon than you should come to Germany, it's >shocking cold here. We also had much rain yesterday. I bet NG feels just like >being at home, only that all the strange people speak the wrong language... Yep, very much. ;) Nah, it isn't so wet in the UK. They've been having all the good weather recently! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:16:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48760 for dynarec-outgoing; Wed, 26 Jul 2000 01:16:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 26 Jul 2000 01:31:59 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff6d9$84710a00$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Sorry, it's the influence of the 2 French guys I live with. Everything in > France is good - and better than everywhere else. French is a better > language too. :)) Hygine certainly isn't one of them. We've got one French guy at work and he's a big, arrogant, double-parking asshole who fucking stinks. Doesn't he know what soap and water is? He doesn't have to smell like perfume - it's just that there's no excuse for smelling like ass! What I don't get about the French is why they actually think that everything is superior to the rest of the world. Germans can claim better automotive engineering, beer, and food, but sheesh... the French? What have they produced that's worth being so arrogant about? -) ;-) All said in jest, guys... don't take it personally... > there's an attractive woman on the other side of the car... Whatever, those > cars look horribly small and I couldn't have one. I'd never get my monitor > in the boot! Where I come from, we wear boots on our feet. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:19:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48770 for dynarec-outgoing; Wed, 26 Jul 2000 01:19:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: The future of emulation Date: Wed, 26 Jul 2000 10:22:40 +0200 Message-ID: <01bff6da$a9b24800$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Hehehe! In Spain the piracy is very extended. ;) I'd heard about that actually. Apparently Spain is battling Russia for #1 piracy centre of Europe. ;) >I get it from a friend >who knows some of the hundreds of software pirates here (all Computer >Science universities are full of them, I also know some). That'd be because of the fast (and free!) Internet access you get in Universities! >Yes. They saied "arriba esta la fiesta" which means "above is the celebration" >when it should be "above is the group". Kinda confusing, because you >begin to think what are they talking about. Until you realice that comes >from a bad translation of english. There are times in this game you have >to back translate to english to know what in hell they are saying. I >wonder what would understand the poor people who doesn't know english. Oh no! I know two Spanish words! "la fiesta"! Oh no! ;) >The english translation is really good, I have heart and read it. ;) I don't know how good the original was - but the English version is, as you both said, very good. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:19:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48780 for dynarec-outgoing; Wed, 26 Jul 2000 01:19:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Status Date: Wed, 26 Jul 2000 10:24:37 +0200 Message-ID: <01bff6da$ef6f1080$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >When I had 64 MB of memory I used to set it to 16MB, because games like >Hexen II (quake 1 engine I think) ran too slow. Heh. :) >But I think I don't have any problem now. It's your choice - but you should find it slightly faster if you put the aperture size down to 16MB. Try it and see. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:27:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48795 for dynarec-outgoing; Wed, 26 Jul 2000 01:27:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Wed, 26 Jul 2000 10:30:49 +0200 Message-ID: <01bff6db$cd29c280$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >American pizza is better than European pizza. Last I was in Italy, I >couldn't believe how thin and distasteful the varieties of pizza there were :P Where in Italy were you? Apparently there's one area of Italy that produces amazing pizzas. I'm planning to make a trip there to find out how true that is. ;) >Mmmm... Chinese. Chinese is cool though I find some of it slightly bland for my tastes. I prefer something with a bit more spice - like Indian food. And, surprisingly for a German, Mike like spicy food too. I was very surprised at the spice he put in his food! Most Germans don't like spices at all - what they consider to be hot is quite mild to me! :o >The quality of store-bought meats and produce is extremely poor in the US. >Europe (and the rest of the world) beats it out. Supposedly taste can be >enchanced through genetic alteration, but it hasn't happened yet... I'm not >blaming the tastelessness of food on genetic engineering though... but >something's up ;) It's your cows. You need to infect some with BSE. That'll improve the taste. Either that - or you won't care anymore. ;) >Then again, living in Nevada, we've got nuclear waste oozing through our >soil... 'nuff said ;) And you'll get UFOs flying from Area 51 coming to abduct you and kill cows and stuff! I know - I've seen X-Files! ;))) >More and more people are becoming assholes, everywhere in the US. I was >born and raised here and as the years go by, I've noticed fewer and fewer >strangers saying something even as simple as "hi". I'm not the only one to >have noticed it... Of course, as you pointed out, it depends on where you >are in the US. I think larger cities tend to have grumpier populations -- >Reno has grown very large lately, so perhaps therein lies the reason... Yes, that's true. In smaller communities people tend to know each other and so are more likely to greet each other. Or hate each other. It works both ways. :) >Screw mileage. BRING ON THE POWER! ;) Give me a Lamborghini Diablo and I'll be happy. ;) >I'm pretty sure Ford is American, it's US-based now at least. I think the >Model-T assembly lines were built here. Ford is certainly US-based now. Of course the production plants are all over the world and they do tweak the cars for the different countries. Like we have a lot of climbing and descending in the UK - so we get cars more suitable to that. It's another reason you won't find many US-specific cars in the UK - you make cars to drive on flat roads (and straight roads at that!). Our roads aren't straight - they bend nearly all the time! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:31:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48811 for dynarec-outgoing; Wed, 26 Jul 2000 01:31:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007260839.KAA27747@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: <01bff6da$a9b24800$35901a17@turkey> "from Neil Griffiths at Jul 26, 2000 10:22:40 am" To: dynarec@dynarec.com Date: Wed, 26 Jul 2000 10:39:21 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Hehehe! In Spain the piracy is very extended. ;) > > I'd heard about that actually. Apparently Spain is battling Russia for #1 > piracy centre of Europe. ;) > For me there are two kind of piracy. The piracy from the guy who only want to play games (or use software) which can't buy (because it is too expensive or because it isn't freely available). This kind of people share their games with others for free. And there are the guys who want to earn money selling piraced software. Lately Spanish police have begun to get them into jail. > >I get it from a friend > >who knows some of the hundreds of software pirates here (all Computer > >Science universities are full of them, I also know some). > > That'd be because of the fast (and free!) Internet access you get in > Universities! > You are right. There are guys who get complet PC and PSX CD-ROMs games from the university. But they use hard disk and ZIP units. I only use 3.5" disks so I only can get some small ROMS. ;) > > Oh no! I know two Spanish words! "la fiesta"! Oh no! ;) > I think it is hard youd don't know this words. ;) > Neil. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:31:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48821 for dynarec-outgoing; Wed, 26 Jul 2000 01:31:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 26 Jul 2000 01:46:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff6db$cd29c280$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Model-T assembly lines were built here. > Ford is certainly US-based now. Ford has always been a US company. It was started in Detroit Michigan in 1903: http://www.cat.cc.md.us/techstud/auto/FordHistory.html#Overview Where did you get the idea that it wasn't in the past? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:32:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48831 for dynarec-outgoing; Wed, 26 Jul 2000 01:32:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000726014126.007dc570@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 26 Jul 2000 01:41:26 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: References: <3.0.5.32.20000726011109.007d77c0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 01:22 AM 7/26/2000 +0000, you wrote: >> >>> different types of food - or different types of vegetables. >> American pizza is better than European pizza. Last I was in Italy, I >> couldn't believe how thin and distasteful the varieties of pizza there were :P > >That's because American pizza is an American invention. Italian pizza >isn't anything like it, so Italians would be shocked ordering pizza - just >as much as you are when you ordered it. ;-) Not sure, I've heard that theory too. But pizza was Italian to begin with, I'm quite sure. It was originally just the pie and tomato sauce, and may have gone other a different name or evolved out of that or something... but I think it was really "improved" in the US. When you order pizza in Italy, you get pizza, but it isn't great. It has everything there usually... but in small, thin, Euro-style :P >That's too much of a broad statement, and flatly not true. It varies from >region to region, and is based upon how close the meat supply companies >are to the city. In Portland, it's great. In the Northwest, it's >great. Same deal with fish. It's awesome on the coast, but in the midwest >it's yucky. Most stores get their supplies from quite a distance aways in the US. What is often touted as "locally grown" suffers from blandness as well -- especially fruits and vegetables. >> Then again, living in Nevada, we've got nuclear waste oozing through our >> soil... 'nuff said ;) > >Yeah. I'm not aware of any large cattle ranches anywhere near Nevada. ;-) Fact: Nevada means "cattle" in Basque. *Note: not an actual fact Nevada has a huge amount of cattle ranches. We don't have many farmers, we've got hick ranchers :) I've seen tons of ranches, but I've never been to a farm here... yet supposedly some exist, because we get a lot of our fruits-n-veggies locally -- or so they claim. But seriously... cattle are everywhere. Just outside of the modern residential area I live in, there's a bunch of grazing fields with ... cows :) I live on the outskirts of town, so there's lots of hills and badland/desert-ish terrain out here... I've seen cow bones out here (when those things get loose... they wander... and wander... and then die in the desert and get devoured by coyotes.) There was a story recently about a mad labrador retriever that was goind around killing cows. Hehe >> are in the US. I think larger cities tend to have grumpier populations -- >> Reno has grown very large lately, so perhaps therein lies the reason... > >Too many old people. ;-) No, it's the "non-old" crowd ;) Everyone. :) I haven't exactly been the kind of person that greets everyone on the street... but that doesn't mean everyone else should be like me. ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:38:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48843 for dynarec-outgoing; Wed, 26 Jul 2000 01:38:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000726014712.007de750@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 26 Jul 2000 01:47:12 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff6d9$84710a00$35901a17@turkey> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Nah, nothing can be bad in France! Nothing! Everything is better than >everywhere else! REMEMBER THAT! ;) > >Sorry, it's the influence of the 2 French guys I live with. Everything in >France is good - and better than everywhere else. French is a better >language too. :)) Heh, those darn French ;) I took French as my foreign language in school, but forgot most of it. I remember some insults and whacky phrases though. I didn't like the language. They can take their subjunctive tense and shove it ;) >Nah, it isn't so wet in the UK. They've been having all the good weather >recently! We never get rain here. I love it that way :) Nothing but scorching sunlight and weird cloud formations :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:42:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48856 for dynarec-outgoing; Wed, 26 Jul 2000 01:42:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007260850.KAA30287@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <3.0.5.32.20000726014126.007dc570@powernet.net> "from Bart at Jul 26, 2000 01:41:26 am" To: dynarec@dynarec.com Date: Wed, 26 Jul 2000 10:50:31 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> Then again, living in Nevada, we've got nuclear waste oozing through our > >> soil... 'nuff said ;) > > > >Yeah. I'm not aware of any large cattle ranches anywhere near Nevada. ;-) > > Fact: Nevada means "cattle" in Basque. > *Note: not an actual fact > Really? What is Basque? ;) In fact Nevada is Spanish (or seems Spanish) and means snowfall and also it could refer to a region where it has snowed or is snowed. ;) > > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:43:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48866 for dynarec-outgoing; Wed, 26 Jul 2000 01:43:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000726015157.007d3db0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 26 Jul 2000 01:51:57 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: References: <01bff6d9$84710a00$35901a17@turkey> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What I don't get about the French is why they actually think that >everything is superior to the rest of the world. Germans can claim better >automotive engineering, beer, and food, but sheesh... the French? What >have they produced that's worth being so arrogant about? Have you ever read "The Song of Roland"? The medieval French epic? Now THAT'S worth being arrogant about. I saw an English translation a long time ago, and the battle seen was some cool old-fashioned literature. Damn... forget Shakespeare, this should be the standard used in America's education system. People being cut in half from the head to the groin, heads rolling, corpses dangling on lances... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:45:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48878 for dynarec-outgoing; Wed, 26 Jul 2000 01:45:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 26 Jul 2000 02:00:49 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <3.0.5.32.20000726015157.007d3db0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >automotive engineering, beer, and food, but sheesh... the French? What > >have they produced that's worth being so arrogant about? > Have you ever read "The Song of Roland"? The medieval French epic? Now > THAT'S worth being arrogant about. I saw an English translation a long time > ago, and the battle seen was some cool old-fashioned literature. Damn... > forget Shakespeare, this should be the standard used in America's education > system. People being cut in half from the head to the groin, heads rolling, > corpses dangling on lances... We call that the movies and the Bible. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:50:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48891 for dynarec-outgoing; Wed, 26 Jul 2000 01:50:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Wed, 26 Jul 2000 10:53:46 +0200 Message-ID: <01bff6df$01eb4900$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Kansas? No wonder why! It's in the middle of cattle country! About the >only other thing you can get in that region is wheat. ;-) Now you mention it, he did seem to be scared of corn when he came back... ;) >I personally do *NOT* like vegetables. Well, I like potatoes, but I can't >stand celery, carrots, etc... But I can understand NY, because it's 200 >miles from farm land. Don't like celery but I do like carrots - cooked. I like a true British Sunday Dinner (I'm capitalising it because I like it so much!) which is roast meat (the famous one would be beef but I normally have chicken because it's cheaper!), roast potatoes and at least 3 other kind of vegetables. For me it's normally cauliflower, broccoli and sprouts (and sometimes carrots!) - though it could be something else like peas and cabbage. But don't forget the gravy. That's important. And I've been here for months without eating it. And it's my favourite meal. How can I cope?! ;) >Here in Oregon (and anywhere in the Northwest) we have everything you >mentioned above plus a bunch of them I've never heard before. That's cool then. Maybe I'll go to that part of the US at some point if I know that I can get vegetables. :) >> Nah, I won't do that. I treat people as assholes on an individual basis. ;) > >Okay, then don't assume that because you've been to New York that you've >been to the United States as a whole. New York is *NOTHING* like the >Northwest (as an example). That might be more difficult - but so long as I remember that the US is pretty much like Europe then I think I can manage that. :) >Nope - it's Nissan, as Infinti is to Toyota, and Acura is to Honda. Same >company. It was funny - one time a coworker was proud of his new Acura. I >said "Oh, you bought a Honda, huh?". He violently replied, "No, an >ACURA! They're DIFFERENT COMPANIES!" so we went out to the parking lot and >he opened the hood to his car. Plain as day on the valve cover: HONDA >MOTOR CORP. ;-) Boy, he was let down. Heh. :) >> Anyway, I can still pick Dodge because >> that's certainly American. > >Assembled mostly in Canada. ;-) Well, you've got to give the Canadians *something* to do... ;) >No, Henry Ford was a tried and true American, born and raised in the US, >and his company started here. Really? In that case then, Britain sent many people to work in the US. I didn't know. :) >> Really? How about Citroen and Fiat? Renault, Citroen and Fiat are all the >> same company now... > >Nope... haven't seen Fiats in about 20 years here. Good thing, too. They >were real piles of shit. FIAT=Fix It Again, Tony. ;-) They're okay now - but that's all they are. >There are a lot of people who are interested in the progress. The problem >is there have been only a dozen or so people who've done it, and they're >tight lipped assholes who don't want to share any info. Mechanics, eh? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 01:52:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA48901 for dynarec-outgoing; Wed, 26 Jul 2000 01:52:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000726020042.007d6100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 26 Jul 2000 02:00:42 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff6db$cd29c280$35901a17@turkey> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Where in Italy were you? Apparently there's one area of Italy that produces >amazing pizzas. I'm planning to make a trip there to find out how true that >is. ;) Padua, Venice, Florence. I got to see the pedestal from which Galileo allegedly taught. It was crumbling and infested by termites it appeared -- but cool that they managed to preserve it nonetheless -- after all, it was just a piece of wood anyway :) Lots of cool monuments, cathedrals, and general old stuff to visit in Italy. >Chinese is cool though I find some of it slightly bland for my tastes. I >prefer something with a bit more spice - like Indian food. And, surprisingly >for a German, Mike like spicy food too. I was very surprised at the spice he >put in his food! Most Germans don't like spices at all - what they consider >to be hot is quite mild to me! :o I don't like Indian food. I love Chinese. The "sweet and sour" stuff is great! Mmm... >It's your cows. You need to infect some with BSE. That'll improve the taste. >Either that - or you won't care anymore. ;) No thanks, with all the ecolai floating around fast food restaurants, we've had our fair share ;) >And you'll get UFOs flying from Area 51 coming to abduct you and kill cows >and stuff! I know - I've seen X-Files! ;))) I drove near Area 51. I didn't see anything though ;) I saw an F-117A stealth fighter flying really low-altitude over Reno once, that was awesome. >Ford is certainly US-based now. Of course the production plants are all over >the world and they do tweak the cars for the different countries. Like we >have a lot of climbing and descending in the UK - so we get cars more >suitable to that. It's another reason you won't find many US-specific cars >in the UK - you make cars to drive on flat roads (and straight roads at >that!). Our roads aren't straight - they bend nearly all the time! :o We've got tons of curvy roads and mountainous regions -- especially where I'm from. Nothing a '91 GMC Suburban can't handle. :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 02:03:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA49075 for dynarec-outgoing; Wed, 26 Jul 2000 02:03:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Wed, 26 Jul 2000 11:03:56 +0200 Message-ID: <01bff6e0$6d81e600$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Where did you get the idea that it wasn't in the past? Old film showing British aristocracy driving Ford motors. And British workers working for Ford. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 02:05:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA49088 for dynarec-outgoing; Wed, 26 Jul 2000 02:05:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Wed, 26 Jul 2000 10:59:32 +0200 Message-ID: <01bff6df$d026b200$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Hygine certainly isn't one of them. We've got one French guy at work and >he's a big, arrogant, double-parking asshole who fucking stinks. Doesn't >he know what soap and water is? He doesn't have to smell like perfume - >it's just that there's no excuse for smelling like ass! Oh, I don't know. The French have that strange device that you sit on and it shoots water at (not up!) your ass. I'd say the name of it if I could remember. :)) >What I don't get about the French is why they actually think that >everything is superior to the rest of the world. Germans can claim better >automotive engineering, beer, and food, but sheesh... the French? What >have they produced that's worth being so arrogant about? I don't know if all French are like that - but the French I know really do love their country and don't consider anything from other countries to be better. I'm personally open to suggestions and there aren't many things that I consider Britain to be better at. Germans can claim engineering and beer - but I don't know about food. They all eat everybody elses! The only truly German foodstuff is based around chicken! ;) Or cabbage! ;) >> there's an attractive woman on the other side of the car... Whatever, those >> cars look horribly small and I couldn't have one. I'd never get my monitor >> in the boot! > >Where I come from, we wear boots on our feet. ;-) So what do you call the back of the car where you don't get in - but you do put stuff in (like shopping)? I call it the boot. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 04:16:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA49204 for dynarec-outgoing; Wed, 26 Jul 2000 04:16:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Wed, 26 Jul 2000 11:10:20 +0200 Message-ID: <01bff6e1$5263a600$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >>Sorry, it's the influence of the 2 French guys I live with. Everything in >>France is good - and better than everywhere else. French is a better >>language too. :)) > >Heh, those darn French ;) I took French as my foreign language in school, >but forgot most of it. I remember some insults and whacky phrases though. I >didn't like the language. They can take their subjunctive tense and shove >it ;) I also took French as my foriegn language - but I can still speak it. Don't know if I want to, but I can. ;) German is a harder language to learn. I don't think Mike can disagree with that. French isn't easy - but German is harder! But hell, I'm learning it quite quickly now so... :) >>Nah, it isn't so wet in the UK. They've been having all the good weather >>recently! > >We never get rain here. I love it that way :) Nothing but scorching >sunlight and weird cloud formations :) If you never get rain then that kind of says that you don't get fruit and veg grown locally. ;) And these clouds... They don't look like eggs or plates or saucers do they? ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 05:53:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA49288 for dynarec-outgoing; Wed, 26 Jul 2000 05:53:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: Message-ID: <00036d5015088bef_mailit@mail.dynarec.com> References: Date: Wed, 26 Jul 2000 14:47:27 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Nope... haven't seen Fiats in about 20 years here. Good thing, too. They >were real piles of shit. FIAT=Fix It Again, Tony. ;-) My brother-in-law (who repairs cars) has a similar acronym for Ford: Found On Russian Dump ;-) >-->Neil -- M.I.K.e HOW YOU CAN TELL THAT IT'S GOING TO BE A ROTTEN DAY: #15 Your pet rock snaps at you. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 05:53:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA49298 for dynarec-outgoing; Wed, 26 Jul 2000 05:53:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <3.0.5.32.20000726011109.007d77c0@powernet.net> Message-ID: <00036d5024065216_mailit@mail.dynarec.com> References: <3.0.5.32.20000726011109.007d77c0@powernet.net> Date: Wed, 26 Jul 2000 14:51:39 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >American pizza is better than European pizza. Last I was in Italy, I >couldn't believe how thin and distasteful the varieties of pizza there were >:P Most of the pizza in Italy is bad because the really good cooks went to Germany since they can make more money here. The best Italian food I ever had (various types of pasta and always with a different sauce) was in a restaurant in Assisi. >Bart -- M.I.K.e The difference between science and the fuzzy subjects is that science requires reasoning while those other subjects merely require scholarship. -- Robert Heinlein --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 05:53:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA49307 for dynarec-outgoing; Wed, 26 Jul 2000 05:53:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <01bff6d9$84710a00$35901a17@turkey> Message-ID: <00036d5033017d06_mailit@mail.dynarec.com> References: <01bff6d9$84710a00$35901a17@turkey> Date: Wed, 26 Jul 2000 14:55:50 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Nah, nothing can be bad in France! Nothing! Everything is better than >everywhere else! REMEMBER THAT! ;) Aha. >Sorry, it's the influence of the 2 French guys I live with. Everything in >France is good - and better than everywhere else. French is a better >language too. :)) I wonder how they confinced you of that opinion ;-) >The SMART cars? Nope, the VW Lupo eg. >I wouldn't be seen dead in one of those. Me neither, that's not a car, it's can with tires. >I like the way Mercedez-Benz (who make them) don't put their logo on the >car - they're that ashamed. :) Hehe. >Nah, it isn't so wet in the UK. They've been having all the good weather >recently! Now I know, you've stolen all the good weather!!! >Neil. -- M.I.K.e Magpie, n.: A bird whose theivish disposition suggested to someone that it might be taught to talk. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 05:53:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA49321 for dynarec-outgoing; Wed, 26 Jul 2000 05:53:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <01bff6e1$5263a600$35901a17@turkey> Message-ID: <00036d504c8df8e7_mailit@mail.dynarec.com> References: <01bff6e1$5263a600$35901a17@turkey> Date: Wed, 26 Jul 2000 15:02:59 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >German is a harder language to learn. I don't think Mike can disagree with >that. German is hard to learn? Hey, even such a stupid guy like me can learn it! ;- ) >French isn't easy - but German is harder! I don't know much French so I cannot decide which one is harder, but it's surely harder than English or Spanish. >But hell, I'm learning it quite quickly now so... :) Examples? >Neil. -- M.I.K.e Bees are very busy souls They have no time for birth controls And that is why in times like these There are so many Sons of Bees. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 05:53:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA49324 for dynarec-outgoing; Wed, 26 Jul 2000 05:53:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Status From: "M.I.K.e" In-Reply-To: <01bff6d5$ba13f400$35901a17@turkey> Message-ID: <00036d5019aa5643_mailit@mail.dynarec.com> References: <01bff6d5$ba13f400$35901a17@turkey> Date: Wed, 26 Jul 2000 14:48:45 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [Lithtech] >I like the engine - but it doesn't half pump out the polygons. You really >need a fast card to be able to cope! No probs for my Banshee ;-) >Neil. -- M.I.K.e Cleveland still lives. God ____must be dead. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 05:53:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA49328 for dynarec-outgoing; Wed, 26 Jul 2000 05:53:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <01bff6da$a9b24800$35901a17@turkey> Message-ID: <00036d5037edacd9_mailit@mail.dynarec.com> References: <01bff6da$a9b24800$35901a17@turkey> Date: Wed, 26 Jul 2000 14:57:13 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Oh no! I know two Spanish words! "la fiesta"! Oh no! ;) I bet you know even more: la luna, le sol, puerco (spelling?) >Neil. -- M.I.K.e Art is either plagiarism or revolution. -- Paul Gauguin --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 07:08:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA49394 for dynarec-outgoing; Wed, 26 Jul 2000 07:08:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <01bff6d7$88039180$35901a17@turkey> Message-ID: <00036d515c4e8773_mailit@mail.dynarec.com> References: <01bff6d7$88039180$35901a17@turkey> Date: Wed, 26 Jul 2000 16:18:58 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>I don't know much about the NEC PowerVR2. Anything special? >Well, the way (simplified) that current 3D cards render is to draw the scene >polygon by polygon. We use a Z-Buffer so we don't draw polygons that we >can't see - but we still draw polygon by polygon. The PVR2 doesn't. It uses >a different technique whereby it renders using tiles. The tiles are sorted >using something which seems similar to a Z-Buffer - but isn't the same. >Whatever, just the fact that they render using tiles gives them a speed >boost (in the same sort of way that blitting does over drawing pixel by >pixel). I don't know their exact technique because that information isn't >public - but it'd make for interesting reading... Yup, that sounds quite interesting. What a pitty that you don't have more information on it. [ARM7 core] >That'd be running at 36MHz then, yes? I think that's the speed in the Psion 5, but according to Digital Extremes (http://dextremes.com/dc/specs.html) the Dreamcast has ARM7TMDI (don't ask me what I and D are for, but T stands for Thumb and M for 64-bit multiplication) core with 45MHz. That's way faster than the CPU in the Playstation. >That's my point of view, yes. The N64 wasn't difficult to emulate - just >difficult to do with any speed. The PS2 will have the same problems... I guess so too, although I have to admit that I don't have that much system insight. >>Even PSEmuPro would be better if it were a bit faster and had MDEC support. >The source code is available, isn't it? Nope :-( >Neil. -- M.I.K.e Beware of computerized fortune-tellers! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 07:47:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA49430 for dynarec-outgoing; Wed, 26 Jul 2000 07:47:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Wed, 26 Jul 2000 11:43:21 +0200 Message-ID: <01bff6e5$ef284280$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Padua, Venice, Florence. I got to see the pedestal from which Galileo >allegedly taught. It was crumbling and infested by termites it appeared -- >but cool that they managed to preserve it nonetheless -- after all, it was >just a piece of wood anyway :) Lots of cool monuments, cathedrals, and >general old stuff to visit in Italy. Okay, so mainly north Italy. You have to go further south to the middle. Allegedly. We'll see. :) >I don't like Indian food. I love Chinese. The "sweet and sour" stuff is >great! Mmm... I do like Chinese food - especially sweet and sour - or crispy fried duck for instance. It's just not my favourite and I couldn't eat it for, say, 5 days in a week. Whereas I could with Indian food (I don't - I just could) because I prefer it. There's one type of Chinese food I could eat a lot though. Prawn crackers. They rock. :) >No thanks, with all the ecolai floating around fast food restaurants, we've >had our fair share ;) You've got that have you? We've had some outbreaks but I think they've been kept under control. >I drove near Area 51. I didn't see anything though ;) I saw an F-117A >stealth fighter flying really low-altitude over Reno once, that was awesome. The biggest plane in the world (The Beluga) flies over my house at home regularly. Only about 100m above the ground. Now THAT is impressive! >We've got tons of curvy roads and mountainous regions -- especially where >I'm from. Nothing a '91 GMC Suburban can't handle. :) Really? I was thinking about your major roads (Route X for example) and motorways where you can just put your car in cruise and relax. Our cars don't even HAVE a cruise mode! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 09:06:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA49501 for dynarec-outgoing; Wed, 26 Jul 2000 09:06:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: The future of emulation Date: Wed, 26 Jul 2000 17:22:19 +0200 Message-ID: <01bff715$498cc780$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Yup, that sounds quite interesting. What a pitty that you don't have more >information on it. I know. :-/ 3D is something I'm very interested in and definitely where I want to go into as a career. Many other things are also interesting - but I'm thinking that 3D is certainly the future for now and I'd like to be a part of that. >[ARM7 core] >>That'd be running at 36MHz then, yes? > >I think that's the speed in the Psion 5, but according to Digital Extremes >(http://dextremes.com/dc/specs.html) the Dreamcast has ARM7TMDI (don't ask me >what I and D are for, but T stands for Thumb and M for 64-bit multiplication) >core with 45MHz. That's way faster than the CPU in the Playstation. Yep, a cool increase of 12MHz. And the PSX doesn't use the ARM7 anyway, does it? >I guess so too, although I have to admit that I don't have that much system >insight. Nor me - but from public information I'd have to say that... >>The source code is available, isn't it? > >Nope :-( Oh. Bugger. Never mind, FPSE is meant to be out in two days... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 09:31:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA49528 for dynarec-outgoing; Wed, 26 Jul 2000 09:31:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <397F1471.558176BE@retemail.es> Date: Wed, 26 Jul 2000 18:40:17 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.73 [en]C-CCK-MCD Alehop (Win98; U) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: The future of emulation References: <01bff6da$a9b24800$35901a17@turkey> <00036d5037edacd9_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >Oh no! I know two Spanish words! "la fiesta"! Oh no! ;) > > I bet you know even more: la luna, le sol, puerco (spelling?) > It is "el sol", "le" isn't an article in Spanish. And I don't want to know why you know "puerco". Do you know what it means? In any case isn't the most used word, the more used is another for the same meaning. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 10:04:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA49563 for dynarec-outgoing; Wed, 26 Jul 2000 10:04:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <397F1C61.53D8AEF7@retemail.es> Date: Wed, 26 Jul 2000 19:14:09 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.73 [en]C-CCK-MCD Alehop (Win98; U) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial References: <01bff6d9$84710a00$35901a17@turkey> <00036d5033017d06_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Nah, it isn't so wet in the UK. They've been having all the good weather > >recently! > > Now I know, you've stolen all the good weather!!! > If you want warm weather we (Spain) could give you some. It's making too hot. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 11:23:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA49631 for dynarec-outgoing; Wed, 26 Jul 2000 11:23:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <01bff715$498cc780$35901a17@turkey> Message-ID: <00036d54e4581e89_mailit@mail.dynarec.com> References: <01bff715$498cc780$35901a17@turkey> Date: Wed, 26 Jul 2000 20:31:45 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>[ARM7 core] >Yep, a cool increase of 12MHz. And the PSX doesn't use the ARM7 anyway, does >it? The PSX has a MIPS R3000A. >Oh. Bugger. Never mind, FPSE is meant to be out in two days... I hope that the CD-ROM plugins work this time. Those which were recommended don't work on my computer (even not with PSEmuPro) and the two which work with PSEmuPro don't work with FPSE :-( >Neil. -- M.I.K.e Skinner's Constant (or Flannagan's Finagling Factor): That quantity which, when multiplied by, divided by, added to, or subtracted from the answer you get, gives you the answer you should have gotten. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 11:23:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA49635 for dynarec-outgoing; Wed, 26 Jul 2000 11:23:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <397F1471.558176BE@retemail.es> Message-ID: <00036d54ea636896_mailit@mail.dynarec.com> References: <01bff6da$a9b24800$35901a17@turkey> <00036d5037edacd9_mailit@mail.dynarec.com> <397F1471.558176BE@retemail.es> Date: Wed, 26 Jul 2000 20:33:27 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It is "el sol", "le" isn't an article in Spanish. Oops, sorry. There you can see that my Spanish is much much worse than your English. >And I don't >want to know why you know "puerco". Do you know what it >means? I think so ;-) I heard in an old John Wayne movie ("Rio Lobo"). >In any case isn't the most used word, the more used >is another for the same meaning. And what is the other word? ;-) >Victor -- M.I.K.e It is only the great men who are truly obscene. If they had not dared to be obscene, they could never have dared to be great. -- Havelock Ellis --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 12:40:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA49703 for dynarec-outgoing; Wed, 26 Jul 2000 12:40:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <397F40F1.447650B0@retemail.es> Date: Wed, 26 Jul 2000 21:50:09 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.73 [en]C-CCK-MCD Alehop (Win98; U) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: The future of emulation References: <01bff6da$a9b24800$35901a17@turkey> <00036d5037edacd9_mailit@mail.dynarec.com> <397F1471.558176BE@retemail.es> <00036d54ea636896_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >In any case isn't the most used word, the more used > >is another for the same meaning. > > And what is the other word? ;-) > Well in fact there are various: cerdo, gorrino, cochino, guarro ... I think it could be more in the different Spanish dialects. They all mean "pig" but they are of course also used as an insult. Mainly to indicate a person who doesn't has a good hygiene. This works for "gorrino", "cochine" and "guarro", perhaps also with "puerco". "cerdo" is used more freely as a general insult. I think in the movie should have been used "puerco" because it could be the more used in Mexican dialect. In Spanish Spanish (ehem, standard Spanish from Spain, but inside Spain there are also different dialects, very different in fact) the common word used is always "cerdo". [Spanish. Lesson 3451: Insults] ;)) Why words that are insults are usually the most easily learnt, the most spreaded and the first learnt of any language?. ;) > M.I.K.e > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 23:27:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA50167 for dynarec-outgoing; Wed, 26 Jul 2000 23:26:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Thu, 27 Jul 2000 08:31:28 +0200 Message-ID: <01bff794$4b49a000$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Most of the pizza in Italy is bad because the really good cooks went to >Germany since they can make more money here. >The best Italian food I ever had (various types of pasta and always with a >different sauce) was in a restaurant in Assisi. I prefer a deep pan pizza to thin crust (the normal Italian style) but one of the best pizzas that I've ever had was in an Italian restaurant down the road from where I live here in Germany. The pasta is also amazing. We'll see if Italy will be a let down when I actually go! :)) Neil. PS Neil, how's the reconstruction work going on the pinball machine? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 23:28:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA50177 for dynarec-outgoing; Wed, 26 Jul 2000 23:28:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: The future of emulation Date: Thu, 27 Jul 2000 08:34:41 +0200 Message-ID: <01bff794$be531680$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >I bet you know even more: la luna, le sol, puerco (spelling?) I knew that luna is portuguese - and pretty much French too. So I'd have guessed at it being Spanish. But I didn't know that. Sol is probably the word for "sun" (knowing Latin words helps here!) but I didn't know puerco before. Words I do know from Spanish include "El Torro", "Scorchio", "Bloody hell, it's hot here!" and "Water! Must... find... water!". ;) I probably know more Mexican expressions from cowboy movies that I've watched - but I haven't watched too many as they're certainly not my favourite kind of film... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 26 23:36:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA50193 for dynarec-outgoing; Wed, 26 Jul 2000 23:36:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Thu, 27 Jul 2000 08:40:56 +0200 Message-ID: <01bff795$9dd78c00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >German is hard to learn? Hey, even such a stupid guy like me can learn it! ;- >) Yep, German is difficult to learn. I don't know a single German person who, after learning English, thinks that English is harder to learn. I'm always told that they'd prefer to be foriegn learning English than English learning German. I'd agree with that - it's not an easy language. Apart from the 3 articles you have, you also split your verbs up and have strict rules on the placement of words inside a sentance. English is quite a free-form language and it's quite difficult. Mind you, I'm finding it easier to learn now because of Welsh. A lot, but not all, of the structure is like Welsh. I'm sorry - that's not a good thing. ;) >>French isn't easy - but German is harder! > >I don't know much French so I cannot decide which one is harder, but it's >surely harder than English or Spanish. I don't know much Spanish - but it's harder than French. And about the same as Welsh. Except that I've been speaking Welsh since I was 4 or 5 so Welsh seems easier... ;) >>But hell, I'm learning it quite quickly now so... :) > >Examples? Well, I can swear. I had a good teacher! ;) And I now teach throwing techniques (amongst other things!) in Ju-jitsu using my amazing amount of German. Still, it's understandable. It's not good - I know that - but it *is* understandable. If my work here was more German then I think I could be quite good by now. I seem to have a talent for languages which I never knew before. At least - I'm the only one out of the students here who can speak as much German as... well, me. And I've been here less. Either I have a talent - or I've tried more. Or both. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 00:12:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA50233 for dynarec-outgoing; Thu, 27 Jul 2000 00:12:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007270720.JAA00414@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: <01bff794$be531680$35901a17@turkey> "from Neil Griffiths at Jul 27, 2000 08:34:41 am" To: dynarec@dynarec.com Date: Thu, 27 Jul 2000 09:20:18 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Words I do know from Spanish include "El Torro", "Scorchio", "Bloody hell, > it's hot here!" and "Water! Must... find... water!". ;) > Strange Spanish, I can't understand it. ;) What means scorchio? > I probably know more Mexican expressions from cowboy movies that I've > watched - but I haven't watched too many as they're certainly not my > favourite kind of film... Do you know that many Western were filmed in the south of Spain? For example many of those italian "spaghetti" westerns. I think almost all the first movies of Clint Eastwood were made here. > > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 00:20:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA50249 for dynarec-outgoing; Thu, 27 Jul 2000 00:20:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Jul 2000 00:36:06 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff794$4b49a000$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > PS Neil, how's the reconstruction work going on the pinball machine? All the lower playfield underpinnings (pop bumpers, drop targets, etc...) are wired up and mounted in place. The lower top part of the lower playfield is wired and placed. Another good solid evening and it should be back together... cross my fingers! But it has been all I've been doing since a week ago Saturday (2 weeks ago this Saturday). -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 00:38:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA50272 for dynarec-outgoing; Thu, 27 Jul 2000 00:38:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Thu, 27 Jul 2000 09:43:01 +0200 Message-ID: <01bff79e$4a1d7080$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >>Sorry, it's the influence of the 2 French guys I live with. Everything in >>France is good - and better than everywhere else. French is a better >>language too. :)) > >I wonder how they confinced you of that opinion ;-) They never, I just agree. It saves hassle. Everything is good, France is good, everything is good there. I really am waiting for the time when they inform me that God lives there too. ;) >>The SMART cars? > >Nope, the VW Lupo eg. Ugh. >>I wouldn't be seen dead in one of those. > >Me neither, that's not a car, it's can with tires. Yep, but I suppose that the fire service like the cars. Say it tipped over and they couldn't get you out. They could save time by getting a tin opener and opening it up! :)) >>I like the way Mercedez-Benz (who make them) don't put their logo on the >>car - they're that ashamed. :) > >Hehe. I'd be ashamed too if I created something like that... >>Nah, it isn't so wet in the UK. They've been having all the good weather >>recently! > >Now I know, you've stolen all the good weather!!! Sorry. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 00:38:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA50284 for dynarec-outgoing; Thu, 27 Jul 2000 00:38:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <01bff795$9dd78c00$35901a17@turkey> Message-ID: <00036d60041316a2_mailit@mail.dynarec.com> References: <01bff795$9dd78c00$35901a17@turkey> Date: Thu, 27 Jul 2000 09:48:02 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yep, German is difficult to learn. I don't know a single German person who, >after learning English, thinks that English is harder to learn. Well, a lunguist (whose name I forgot) said that learning an easy language only means that you hit the difficult parts much earlier. English has some difficulties you might not know about because you do those thinks automatically and all non-English speakers will have to learn these things. Just think of irregular and phrasal verbs... >I'm always >told that they'd prefer to be foriegn learning English than English learning >German. That's true. >I'd agree with that - it's not an easy language. Apart from the 3 >articles you have, Especially: der Löffel (male spoon), die Gabel (female fork), das Messer (neuter knife) >you also split your verbs up You can do that in English by forming a cleft sentence... >and have strict rules on the >placement of words inside a sentance. English is quite a free-form language >and it's quite difficult. Actually English has the restrction and German is free: English: Subject Predicate Obejects (in the order Dative, Accusative) German: in declarative sentences the (full) verb is in the second position and everything else can be moved around, eg: S V D A S V A D D V A S A V D S D V S A A V S D I guess you get the scheme, and I even left out the Genitive... >Mind you, I'm finding it easier to learn now because of Welsh. A lot, but >not all, of the structure is like Welsh. I'm sorry - that's not a good >thing. ;) Hey, I think Welsh must be a better language than English ;-) >I don't know much Spanish - Me neither, but someone who isn't really a language expert told me that Spanish is quite easy. >but it's harder than French. And about the same >as Welsh. Except that I've been speaking Welsh since I was 4 or 5 so Welsh >seems easier... ;) Really, how come? >Well, I can swear. I had a good teacher! ;) Merde! >And I now teach throwing techniques (amongst other things!) in Ju-jitsu >using my amazing amount of German. Still, it's understandable. It's not >good - I know that - but it *is* understandable. Maybe the throws are just that effective because you explain them wrongly? ;- ) >If my work here was more >German then I think I could be quite good by now. I seem to have a talent >for languages which I never knew before. At least - I'm the only one out of >the students here who can speak as much German as... well, me. And I've been >here less. Either I have a talent - or I've tried more. Or both. :)) Or you simply had more nice female teachers ;-) >Neil. -- M.I.K.e Bringing computers into the home won't change either one, but may revitalize the corner saloon. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 00:38:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA50291 for dynarec-outgoing; Thu, 27 Jul 2000 00:38:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <01bff794$be531680$35901a17@turkey> Message-ID: <00036d5fd883c2ac_mailit@mail.dynarec.com> References: <01bff794$be531680$35901a17@turkey> Date: Thu, 27 Jul 2000 09:35:51 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Words I do know from Spanish include "El Torro", "Scorchio", "Bloody hell, >it's hot here!" and "Water! Must... find... water!". ;) Well, there are even more: siesta, amigo, gringo, hasta la vista, ... >I probably know more Mexican expressions from cowboy movies that I've >watched - but I haven't watched too many as they're certainly not my >favourite kind of film... I watched those films when I was younger but now I don't watch them that often anymore. While speaking of films: I've seen MI2 now, and although it was a bit entertaining, I have to say that the film wasn't good. It's a big self- representation of Tom Cruise and not much more. At least two scenes are totally misplaced: when the "hero" hangs on a clif like Jesus, and a shining white dove flying through a burning door. Anyway, the sound effects are exagerated, the actors have no room for acting, most of the combat scenes are totally unrealistic, especially the martial arts fighting is uneffective - when you're fighting for your life you simply don't do any saltos because they cost too much energy.. >Neil. -- M.I.K.e A copy of the universe is not what is required of art; one of the damned things is ample. -- Rebecca West --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 00:43:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA50304 for dynarec-outgoing; Thu, 27 Jul 2000 00:43:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: The future of emulation Date: Thu, 27 Jul 2000 09:46:41 +0200 Message-ID: <01bff79e$cdd75d00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> Words I do know from Spanish include "El Torro", "Scorchio", "Bloody hell, >> it's hot here!" and "Water! Must... find... water!". ;) >> >Strange Spanish, I can't understand it. ;) What means scorchio? Er... hot. ;) It's from a TV program that takes the piss out of Spain because it's sunny all the time. They have one bit with a weathergirl who shows a map of Spain with pictures of the sun all over it. And then she'll procede to say "Scorchio, Scorchio, Scorchio!". But the funniest bit was when there was a rain cloud. All the presenters were shocked at this and they took the show off the air... ;) >Do you know that many Western were filmed in the south of Spain? For >example many of those italian "spaghetti" westerns. I think almost all >the first movies of Clint Eastwood were made here. Didn't know that, no. Heh, cool. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 00:45:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA50317 for dynarec-outgoing; Thu, 27 Jul 2000 00:45:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Thu, 27 Jul 2000 09:48:44 +0200 Message-ID: <01bff79f$168f1600$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >All the lower playfield underpinnings (pop bumpers, drop targets, >etc...) are wired up and mounted in place. The lower top part of the lower >playfield is wired and placed. Another good solid evening and it should be >back together... cross my fingers! But it has been all I've been doing >since a week ago Saturday (2 weeks ago this Saturday). Good luck with it. You've only got another evening now haven't you? You'll have to send some pictures of it when you've finished. I'd be interested for sure! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 00:49:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA50326 for dynarec-outgoing; Thu, 27 Jul 2000 00:49:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007270757.JAA20479@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: <00036d5fd883c2ac_mailit@mail.dynarec.com> "from M.I.K.e at Jul 27, 2000 09:35:51 am" To: dynarec@dynarec.com Date: Thu, 27 Jul 2000 09:57:16 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Anyway, the sound effects are exagerated, the actors have no room for acting, > most of the combat scenes are totally unrealistic, especially the martial > arts fighting is uneffective - when you're fighting for your life you simply > don't do any saltos because they cost too much energy.. > When you have seen a movie where martial arts fighting are effective or realistic? ;) And the worst of all, the scenes of the holy celebration in Spain are all fake. We spent a couple of days laughing about the good knowledge they should have about Spain (It was show in all the TV news). They are a ridiculous mix of absolutely different celebrations in absolutely different far regions. When Tom Cruise came here to present the movie in Europe the journalists told him that and he started to laugh. ;) Umm... lately Cruise seems to be all the time here in Spain, it was yesterday also ... > M.I.K.e Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 01:36:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA50377 for dynarec-outgoing; Thu, 27 Jul 2000 01:36:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Thu, 27 Jul 2000 10:42:16 +0200 Message-ID: <01bff7a6$910f6400$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Well, a lunguist (whose name I forgot) said that learning an easy language >only means that you hit the difficult parts much earlier. English has some >difficulties you might not know about because you do those thinks >automatically and all non-English speakers will have to learn these things. >Just think of irregular and phrasal verbs... Of course, English is not an easy language. It's just easier. I can think of irregular and phrasal verbs - but German has more! Haha! ;) >>I'd agree with that - it's not an easy language. Apart from the 3 >>articles you have, > >Especially: der Löffel (male spoon), die Gabel (female fork), das Messer >(neuter knife) Yes, but my solution to that is to speak quickly. Then it'd sound like "De Loeffel", "De Gabel" and "De Messer". It normally wouldn't be noticed. My problem comes when I have to write... >Actually English has the restrction and German is free: I disagree. If I create a sentence with the words ankommen or mitkommen then you cannot know what I mean until I finish the sentence. I'd give you some examples - but I think I don't need to as you certainly know more German than I do. But this problem doesn't occur in English - you can normally guess the rest of the sentence quite early on. >I guess you get the scheme, and I even left out the Genitive... Okay, but this wasn't the point I was trying to get across. But you can do this in English too! >Hey, I think Welsh must be a better language than English ;-) No. Sorry! ;) >>but it's harder than French. And about the same >>as Welsh. Except that I've been speaking Welsh since I was 4 or 5 so Welsh >>seems easier... ;) > >Really, how come? When you go to school in Wales, you have to learn Welsh. And I've been going to school since I was 4 so that's why... >>Well, I can swear. I had a good teacher! ;) > >Merde! P'tain! A la vache! I have the feeling that only one person will be laughing at these, eh, Gwenole? ;) >>And I now teach throwing techniques (amongst other things!) in Ju-jitsu >>using my amazing amount of German. Still, it's understandable. It's not >>good - I know that - but it *is* understandable. > >Maybe the throws are just that effective because you explain them wrongly? ;- >) Maybe... ;) >>If my work here was more >>German then I think I could be quite good by now. I seem to have a talent >>for languages which I never knew before. At least - I'm the only one out of >>the students here who can speak as much German as... well, me. And I've been >>here less. Either I have a talent - or I've tried more. Or both. :)) > >Or you simply had more nice female teachers ;-) Well, yes - it could be that. I don't know, learning a foriegn language just to speak to women. Terrible... ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 01:41:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA50395 for dynarec-outgoing; Thu, 27 Jul 2000 01:41:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: The future of emulation Date: Thu, 27 Jul 2000 10:46:38 +0200 Message-ID: <01bff7a7$2d396b00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Well, there are even more: siesta, amigo, gringo, hasta la vista, ... Baby... Yes, I knew these. Although I think "gringo" is more a word used by Mexicans... >While speaking of films: I've seen MI2 now, and although it was a bit >entertaining, I have to say that the film wasn't good. It's a big self- >representation of Tom Cruise and not much more. At least two scenes are >totally misplaced: when the "hero" hangs on a clif like Jesus, and a shining >white dove flying through a burning door. I've been told to go see this movie. Not because of the storyline - but apparently the female co-star is nice. I'll probably wait now - don't know if I can be bothered going to watch it... >Anyway, the sound effects are exagerated, the actors have no room for acting, >most of the combat scenes are totally unrealistic, especially the martial >arts fighting is uneffective - when you're fighting for your life you simply >don't do any saltos because they cost too much energy.. No, you pull out the gun that you've been secretly hiding... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 01:44:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA50405 for dynarec-outgoing; Thu, 27 Jul 2000 01:44:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007270852.KAA19213@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff7a6$910f6400$35901a17@turkey> "from Neil Griffiths at Jul 27, 2000 10:42:16 am" To: dynarec@dynarec.com Date: Thu, 27 Jul 2000 10:52:38 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > >Well, a lunguist (whose name I forgot) said that learning an easy language > >only means that you hit the difficult parts much earlier. English has some > >difficulties you might not know about because you do those thinks > >automatically and all non-English speakers will have to learn these things. > >Just think of irregular and phrasal verbs... > > > Of course, English is not an easy language. It's just easier. I can think of > irregular and phrasal verbs - but German has more! Haha! ;) > I read yesterday in a scientist magazine that english is more difficult for reading than romanic languages. And this comparing english native people with romanic native people. There are used different areas of the brain in the effort and it takes more time to read each word. I think German can also be included. ;) I think it was because the different between how a word is written and how is spelled. > Neil. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 01:45:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA50418 for dynarec-outgoing; Thu, 27 Jul 2000 01:45:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: The future of emulation Date: Thu, 27 Jul 2000 10:49:59 +0200 Message-ID: <01bff7a7$a5079580$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >When you have seen a movie where martial arts fighting are effective or >realistic? ;) I've seen films with real martial arts fighting. But they weren't really movies, more showing how different techniques work. There are a pair of brothers from America who go by the name "The Gracey Brothers" (so they're quite imaginative too) who work with Ju-jitsu but have adapted it for modern day fighting. They're good. There is a competition held every year which I can't remember the name of (but it has the word "Ultimate" in there somewhere!) where fighters of all martial arts and backgrounds get together to fight and to see who has the best techniques. The Gracey Brothers have won this for the past few years so... >And the worst of all, the scenes of the holy celebration in Spain are all >fake. We spent a couple of days laughing about the good knowledge they >should have about Spain (It was show in all the TV news). They are a >ridiculous mix of absolutely different celebrations in absolutely >different far regions. When Tom Cruise came here to present the movie >in Europe the journalists told him that and he started to laugh. ;) Movies don't model real life. Except the Matrix. That models real life. ;) >Umm... lately Cruise seems to be all the time here in Spain, it was >yesterday also ... Sorry about that, maybe America should withdraw him? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 12:35:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA51056 for dynarec-outgoing; Thu, 27 Jul 2000 12:35:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Jul 2000 12:51:02 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff79f$168f1600$35901a17@turkey> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >playfield is wired and placed. Another good solid evening and it should be > >back together... cross my fingers! But it has been all I've been doing > >since a week ago Saturday (2 weeks ago this Saturday). > Good luck with it. You've only got another evening now haven't you? As I said above, another good solid evening and it should be back together. ;-) I intend on going home early tonight. ;-) > You'll have to send some pictures of it when you've finished. I'd be > interested for sure! I've got a bit over 250 pictures now of the entire process. It'll certainly be available online! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 16:18:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA51227 for dynarec-outgoing; Thu, 27 Jul 2000 16:18:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <01bff7a6$910f6400$35901a17@turkey> Message-ID: <00036d6cfc5fd993_mailit@mail.dynarec.com> References: <01bff7a6$910f6400$35901a17@turkey> Date: Fri, 28 Jul 2000 01:16:28 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Of course, English is not an easy language. It's just easier. I can think of >irregular and phrasal verbs - but German has more! Haha! ;) I don't think that German has more irregular verbs than English, and the damn thing about the English phrasal verbs is that a small preposition can change the meaning of the whole verb complex. There are even whole Grammars about the phrasal verbs, I think one is based on the COBUILD corpus and has about 300 or 400 pages! >Yes, but my solution to that is to speak quickly. Then it'd sound like "De >Loeffel", "De Gabel" and "De Messer". A native speaker will hear that you're cheating ;-) >It normally wouldn't be noticed. My >problem comes when I have to write... That's like playing a solo with the violin: every error is noticed. >I disagree. If I create a sentence with the words ankommen or mitkommen then >you cannot know what I mean until I finish the sentence. I'd give you some >examples - but I think I don't need to as you certainly know more German >than I do. I know more German than you? Mayhaps ;-) You mean sentences like: "Kommt der Zug um 10 Uhr an?" >But this problem doesn't occur in English - you can normally >guess the rest of the sentence quite early on. The English translation of the above is: "Does the train arrive at 10 o'clock?" This isn't that much better... BTW, what no-one seems to be able to explain is why "hardly" forces an inversion: "Hardly ever do we use such simple examples." If you're interested I could dig up some really weird examples... >Okay, but this wasn't the point I was trying to get across. But you can do >this in English too! Nope, surely not: "Das Buch gibt Peter Maria." Meaning: "Peter gives Mary the book." Word order: *"The book gives Peter Mary." This doesn't work because in English the Subject always has to be in the first position and the Objects have also a fixed order (first Dative, then Accusative), which is why you also cannot say: "Peter gives the book Mary." >>Maybe the throws are just that effective because you explain them wrongly? >Maybe... ;) Hey, I said drop him to the floor and not drop him from the roof top! ;-) >Well, yes - it could be that. I don't know, learning a foriegn language just >to speak to women. Terrible... ;)) Well, it seems to work ;-) BTW, I just rembered that someone just recently sent me some exemple sentences which show that English isn't easy to learn: 1) The bandage was wound around the wound. 2) The farm was used to produce produce. 3) The dump was so full that it had to refuse more refuse. 4) We must polish the Polish furniture. 5) He could lead if he would get the lead out. 6) The soldier decided to desert his dessert in the desert. 7) Since there is no time like the present, he thought it was time to present the present. 8) A bass was painted on the head of the bass drum. 9) When shot at, the dove dove into the bushes. 10) I did not object to the object. 11) The insurance was invalid for the invalid. 12) There was a row among the oarsmen about how to row. 13) They were too close to the door to close it. 14) The buck does funny things when the does are present. 15) A seamstress and a sewer fell down into a sewer line. 16) To help with planting, the farmer taught his sow to sow. 17) The wind was too strong to wind the sail. 18) After a number of injections my jaw got number. 19) Upon seeing the tear in the painting I shed a tear. 20) I had to subject the subject to a series of tests. 21) How can I intimate this to my most intimate friend? >Neil. -- M.I.K.e It wasn't that she had a rose in her teeth, exactly. It was more like the rose and the teeth were in the same glass. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 16:18:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA51236 for dynarec-outgoing; Thu, 27 Jul 2000 16:18:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <200007270852.KAA19213@pons.ac.upc.es> Message-ID: <00036d6d2b9a2536_mailit@mail.dynarec.com> References: <200007270852.KAA19213@pons.ac.upc.es> Date: Fri, 28 Jul 2000 01:29:40 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I read yesterday in a scientist magazine that english is more difficult >for reading than romanic languages. And this comparing english native >people with romanic native people. There are used different areas of >the brain in the effort and it takes more time to read each word. I >think German can also be included. ;) I think it was because the >different between how a word is written and how is spelled. Do you mean that German is difficult to read? That's not true because most of the time German is written as spoken and writing the important things with capital initials makes the whole thing even easier as long as it's done right. But it could be true for English because the latest "spelling standard" dates back to the 15th century or so and there was the Great Vowel Shift between then and now. BTW, we currently have a guest who bought some books to improve his Dutch and by taking a brief look I noticed that is not only a mixture between English and German as it always sounds to me but that it's quite close to the stage of the Germanic languages before English and German because it wasn't influenced neither by the Great Vowel Shift nor by the Second Germanic Sound Law. >Victor -- M.I.K.e "If we were meant to fly, we wouldn't keep losing our luggage." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 16:18:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA51247 for dynarec-outgoing; Thu, 27 Jul 2000 16:18:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <200007270757.JAA20479@pons.ac.upc.es> Message-ID: <00036d6cb16466a4_mailit@mail.dynarec.com> References: <200007270757.JAA20479@pons.ac.upc.es> Date: Fri, 28 Jul 2000 00:55:30 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >When you have seen a movie where martial arts fighting are effective or >realistic? ;) Bruce Lee's technique was quite effective, and although Jackie Chan's technique might not be that effective it surely looks much cooler than anything Tom Cruise had to offer. >And the worst of all, the scenes of the holy celebration in Spain are all >fake. We spent a couple of days laughing about the good knowledge they >should have about Spain (It was show in all the TV news). They are a >ridiculous mix of absolutely different celebrations in absolutely >different far regions. Well, the typical US habit "Europe in 7 days" was transformed to "one dozen Spanish celebrations in 5 minutes"... >Victor -- M.I.K.e "When in doubt, tell the truth." -- Mark Twain --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 16:18:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA51251 for dynarec-outgoing; Thu, 27 Jul 2000 16:18:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <01bff7a7$2d396b00$35901a17@turkey> Message-ID: <00036d6d0b6cd672_mailit@mail.dynarec.com> References: <01bff7a7$2d396b00$35901a17@turkey> Date: Fri, 28 Jul 2000 01:20:40 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yes, I knew these. Although I think "gringo" is more a word used by >Mexicans... That's true I guess. [MI2] >I've been told to go see this movie. Not because of the storyline - but >apparently the female co-star is nice. I'll probably wait now - don't know >if I can be bothered going to watch it... If I had to watch it again then *only* because of the female actor (Thandie Newton)! The funny thing is that I predicted about anything that should have been a surprise. Either I spent too much time watching such films or this one had exceptionally bad story line. >No, you pull out the gun that you've been secretly hiding... ;) You'll laugh, the evil guy had a knife and only used it very late and instead of stabbing it into the "hero's" back he simply kicked him :-( >Neil. -- M.I.K.e The universe is like a safe to which there is a combination -- but the combination is locked up in the safe. -- Peter DeVries --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 18:24:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA51350 for dynarec-outgoing; Thu, 27 Jul 2000 18:24:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000727183244.007d7d80@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 27 Jul 2000 18:32:44 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <00036d6d2b9a2536_mailit@mail.dynarec.com> References: <200007270852.KAA19213@pons.ac.upc.es> <200007270852.KAA19213@pons.ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 01:29 AM 7/28/2000 +0200, you wrote: >>I read yesterday in a scientist magazine that english is more difficult >>for reading than romanic languages. And this comparing english native >>people with romanic native people. There are used different areas of >>the brain in the effort and it takes more time to read each word. I >>think German can also be included. ;) I think it was because the >>different between how a word is written and how is spelled. English is a poorly thought out language, very rich in vocabulary but pathetically inconsistent. I think most other languages have much more consistency. A really difficult language is Polish (supposedly "4.5 times harder to learn than English" -- although I'm not sure in relation to what)... or any other Slavic language. Seeing it written is even more frightening -- tons of consonants and fewer vowels. It is very consistent though, it is read exactly as spelled. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 19:20:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA51401 for dynarec-outgoing; Thu, 27 Jul 2000 19:20:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Jul 2000 19:36:24 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <3.0.5.32.20000727183244.007d7d80@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > English is a poorly thought out language, very rich in vocabulary but > pathetically inconsistent. I think most other languages have much more > consistency. I wouldn't go that far. Each language has things that are very good, and things that are just plain screwed up. Biggest example - masculine/feminine in French/German. No point in it at all and no organization at all, but you've got to remember everything otherwise potentially very massive misinterpretations. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 19:33:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA51418 for dynarec-outgoing; Thu, 27 Jul 2000 19:33:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000727194146.007d7910@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 27 Jul 2000 19:41:46 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: References: <3.0.5.32.20000727183244.007d7d80@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 07:36 PM 7/27/2000 +0000, you wrote: >> English is a poorly thought out language, very rich in vocabulary but >> pathetically inconsistent. I think most other languages have much more >> consistency. > >I wouldn't go that far. Each language has things that are very good, and >things that are just plain screwed up. Biggest example - >masculine/feminine in French/German. No point in it at all and no >organization at all, but you've got to remember everything otherwise >potentially very massive misinterpretations. I don't like gender either. Many European languages have it. Although I did sound harsh, I do speak English natively and like it as a language because of its richness. The grammar doesn't bother me either, since I'm used to it, but I can see just how inconsistent it is. The irregularity is pretty severe. If they took all the irregularities out of English, we'd end up with something that sounds quite funny (to our ears) but at least it would make sense. What I can't stand is words like "Wednesday" and "colonel". That's just madness ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 23:14:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA51580 for dynarec-outgoing; Thu, 27 Jul 2000 23:13:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Fri, 28 Jul 2000 08:17:40 +0200 Message-ID: <01bff85b$882c9a00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >As I said above, another good solid evening and it should be back >together. ;-) I intend on going home early tonight. ;-) Well, you've probably had your evening now. How's it going or how has it gone? >> You'll have to send some pictures of it when you've finished. I'd be >> interested for sure! > >I've got a bit over 250 pictures now of the entire process. It'll >certainly be available online! Cool. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 23:41:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA51606 for dynarec-outgoing; Thu, 27 Jul 2000 23:39:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: The future of emulation Date: Fri, 28 Jul 2000 08:43:02 +0200 Message-ID: <01bff85f$135b5f00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >>I've been told to go see this movie. Not because of the storyline - but >>apparently the female co-star is nice. I'll probably wait now - don't know >>if I can be bothered going to watch it... > >If I had to watch it again then *only* because of the female actor (Thandie >Newton)! That's the one, I couldn't remember her name. Everyone tells me that she's nice. ;) >The funny thing is that I predicted about anything that should have been a >surprise. Either I spent too much time watching such films or this one had >exceptionally bad story line. I've been told that it's got a terrible story line - but if you want to watch an action film that doesn't require you to think then this is the one... >>No, you pull out the gun that you've been secretly hiding... ;) > >You'll laugh, the evil guy had a knife and only used it very late and instead >of stabbing it into the "hero's" back he simply kicked him :-( That's crap! :o Incidentally, I'm in great pain right now. I was taught a *really* nasty wrist lock last night (Ju-jitsu) that hurts like *HELL*. And - apart from being partnered up with some real beginners who have no idea how to throw properly (they try to copy by holding your arm but just end up twisting it!) and having to fight many brown belts - it was fun. But the best of it is the girl who I was partnered with for the wrist locks really hurt me - and she knew it. So when the time came for freestyle (yay!) then I chose her. And, I'm not joking (you'd have all laughed if you'd have been there!), she ran away from me all around the mat. I chased her for about 15 seconds until I got pissed off. And the best of it is that she's a black belt. Damnit, am I that scary? Okay, don't answer that last question. ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 23:54:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA51626 for dynarec-outgoing; Thu, 27 Jul 2000 23:53:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Fri, 28 Jul 2000 08:56:29 +0200 Message-ID: <01bff860$f45dcc80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >I don't think that German has more irregular verbs than English, and the damn >thing about the English phrasal verbs is that a small preposition can change >the meaning of the whole verb complex. There are even whole Grammars about >the phrasal verbs, I think one is based on the COBUILD corpus and has about >300 or 400 pages! I definitely think German has more irregular. It's just that you're used to them. The most useful ones are all irregular! Let's see: Watch See Have Come Go Eat Drink Need I go on? ;) >>Yes, but my solution to that is to speak quickly. Then it'd sound like "De >>Loeffel", "De Gabel" and "De Messer". > >A native speaker will hear that you're cheating ;-) Maybe - but they'd have to be really good. I say the "De" bit *really* fast. You can only hear the "D" part of it. :)) >>It normally wouldn't be noticed. My >>problem comes when I have to write... > >That's like playing a solo with the violin: every error is noticed. That's one thing I'd certainly know about! >>I disagree. If I create a sentence with the words ankommen or mitkommen then >>you cannot know what I mean until I finish the sentence. I'd give you some >>examples - but I think I don't need to as you certainly know more German >>than I do. > >I know more German than you? Mayhaps ;-) It's just a guess, more a stab in the dark than anything... ;) >You mean sentences like: "Kommt der Zug um 10 Uhr an?" Maybe not that particular sentence because I don't think "Kommt der Zug um 10 Uhr mit" makes much sense. More this one: Kommst du zu der Kino [an/mit]? I'm not sure that I've used the correct spelling - but I hope you see my point. You can't know what the sentence is until the last word. >>But this problem doesn't occur in English - you can normally >>guess the rest of the sentence quite early on. > >The English translation of the above is: "Does the train arrive at 10 >o'clock?" >This isn't that much better... A better translation would be "The train comes at 10 o'clock?" and - although hardly the greatest of examples - you would certainly be able to answer the question before the "o'clock" bit. Whereas you'd still have to wait for the "an" for it to make sense (although not in your particular example)! >BTW, what no-one seems to be able to explain is why "hardly" forces an >inversion: >"Hardly ever do we use such simple examples." I'm not sure what you mean so I can't explain it either! >If you're interested I could dig up some really weird examples... I'm always interested in languages now. It could become my new hobby! >>Okay, but this wasn't the point I was trying to get across. But you can do >>this in English too! > >Nope, surely not: > >"Das Buch gibt Peter Maria." >Meaning: "Peter gives Mary the book." >Word order: *"The book gives Peter Mary." >This doesn't work because in English the Subject always has to be in the >first position and the Objects have also a fixed order (first Dative, then >Accusative), which is why you also cannot say: >"Peter gives the book Mary." The subject doesn't have to be in the first position - but you'd have to write it in a different way. I certainly see your point though - that is the normal way for writing that sentence. But you could write this: "The book was given to Mary by Peter" But then that is a different sentence. When you say that we can't say "Peter gives the book Mary" then I'd agree. But you can add one more word and then you can say it: "Peter gives the book to Mary". It's another way of saying the same thing! >>Maybe... ;) > >Hey, I said drop him to the floor and not drop him from the roof top! ;-) I was certainly thrown badly last night. My back! :o >>Well, yes - it could be that. I don't know, learning a foriegn language just >>to speak to women. Terrible... ;)) > >Well, it seems to work ;-) Yes, I noticed. But it doesn't work incredibly well. I then get asked how old I am and then get informed that I'm "So young?". Normally I'd be quite pleased about that - but not in the context I've heard it. By several girls now. AARGH! :-/ >BTW, I just rembered that someone just recently sent me some exemple >sentences which show that English isn't easy to learn: > >16) To help with planting, the farmer taught his sow to sow. That should read: 16) To help with planting, the farmer taught his sow to sew. That was just bad spelling that made the sentence make no sense at all. I like the examples though. But go on Mike, where's your phrase about the fly? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 23:55:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA51638 for dynarec-outgoing; Thu, 27 Jul 2000 23:55:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: The future of emulation Date: Fri, 28 Jul 2000 08:58:58 +0200 Message-ID: <01bff861$4d2d6500$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Bruce Lee's technique was quite effective, and although Jackie Chan's >technique might not be that effective it surely looks much cooler than >anything Tom Cruise had to offer. Bruce Lee was effective but he did use wires. And as for Jackie Chan - heh. :) I like the movies - but you have to laugh. :) >Well, the typical US habit "Europe in 7 days" was transformed to "one dozen >Spanish celebrations in 5 minutes"... That's true. It's really not possible to see Europe in 7 days. I know that a fair few US citizens think that it is though. Europe is roughly the same size - or maybe bigger - than the US. And if you can't see the US in 7 days then you certainly can't see Europe! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 27 23:58:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA51647 for dynarec-outgoing; Thu, 27 Jul 2000 23:58:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Fri, 28 Jul 2000 09:03:08 +0200 Message-ID: <01bff861$e2305e00$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >English is a poorly thought out language, very rich in vocabulary but >pathetically inconsistent. I think most other languages have much more >consistency. That's harsh. English has more rules and so it's a very structured language. While you still have room to replace words - or change the order - we do have inconsistency. But it's not poorly thought out. It just comes from really scary places. I mean, English comes from the Vikings, the Germanics, The Romans and then the French. Is it any wonder that we have so much structure, so many words - but inconsistency? >A really difficult language is Polish (supposedly "4.5 times harder to >learn than English" -- although I'm not sure in relation to what)... or any >other Slavic language. Seeing it written is even more frightening -- tons >of consonants and fewer vowels. It is very consistent though, it is read >exactly as spelled. A more difficult language could be either Finnish - or even Welsh. For the same reasons - they're not based on any other language. And they both sound funny too. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 00:03:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA51668 for dynarec-outgoing; Fri, 28 Jul 2000 00:03:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Fri, 28 Jul 2000 09:06:14 +0200 Message-ID: <01bff862$510db700$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >I wouldn't go that far. Each language has things that are very good, and >things that are just plain screwed up. Biggest example - >masculine/feminine in French/German. No point in it at all and no >organization at all, but you've got to remember everything otherwise >potentially very massive misinterpretations. German makes it worse by adding a third sex - neutral. There is no point in it any more - it's just a remnant from Latin. Spanish also suffers from the same problem - and again, it's the fault of Latin. I don't like the articles - the sexes. English is good in the fact that we can say "The". No "Die, Der, Das" and "Le, La" for example. That's bad! Those bloody Romans, eh? ;)) If it makes you feel any better about the sexes - Welsh has 4 possible cases. Great, huh? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 00:08:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA51681 for dynarec-outgoing; Fri, 28 Jul 2000 00:08:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Fri, 28 Jul 2000 09:11:23 +0200 Message-ID: <01bff863$093b5f80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >I don't like gender either. Many European languages have it. Although I did >sound harsh, I do speak English natively and like it as a language because >of its richness. The grammar doesn't bother me either, since I'm used to >it, but I can see just how inconsistent it is. The irregularity is pretty >severe. Most European languages have it because of Latin. I don't like gender in this case because it's bloody difficult to learn! I've done it once for Welsh and once for French - why can't they choose the bloody same sex, eh? At least Italian, French, Spanish, Portuguese and Welsh can agree that the Moon is feminine and the Sun is masculine. But oh no - not for the Germans. ;) >If they took all the irregularities out of English, we'd end up with >something that sounds quite funny (to our ears) but at least it would make >sense. I don't know that it'd make sense. How would you do that? And if you take the irregularities out of English then you've got to do it for all other languages. Otherwise there would still be the same problem... >What I can't stand is words like "Wednesday" and "colonel". That's just >madness ;) But I agree with you here. I like words that you pronounce exactly as you read them. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 00:26:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA51703 for dynarec-outgoing; Fri, 28 Jul 2000 00:26:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007280730.JAA12495@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff862$510db700$35901a17@turkey> "from Neil Griffiths at Jul 28, 2000 09:06:14 am" To: dynarec@dynarec.com Date: Fri, 28 Jul 2000 09:30:14 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > German makes it worse by adding a third sex - neutral. There is no point in > it any more - it's just a remnant from Latin. Spanish also suffers from the > same problem - and again, it's the fault of Latin. > > I don't like the articles - the sexes. English is good in the fact that we > can say "The". No "Die, Der, Das" and "Le, La" for example. That's bad! > I could be biassed but I prefer the Latin derived languages. ;) And I prefer a lot our articles than the "a" and "the" english articles that you never know when to use. ;) > If it makes you feel any better about the sexes - Welsh has 4 possible > cases. Great, huh? > Four? How it works this? :o > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 00:50:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA51731 for dynarec-outgoing; Fri, 28 Jul 2000 00:49:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007280756.JAA17630@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: <01bff85f$135b5f00$35901a17@turkey> "from Neil Griffiths at Jul 28, 2000 08:43:02 am" To: dynarec@dynarec.com Date: Fri, 28 Jul 2000 09:56:19 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >>No, you pull out the gun that you've been secretly hiding... ;) > > > >You'll laugh, the evil guy had a knife and only used it very late and > instead > >of stabbing it into the "hero's" back he simply kicked him :-( > > That's crap! :o > But it's common in bat movies. Like the main character that beats the bad guy and turns over without finish off it so the fight can continue a bit more. Or all those terror movies where they hit the bad guy and then they continue running. ;) > Incidentally, I'm in great pain right now. I was taught a *really* nasty > wrist lock last night (Ju-jitsu) that hurts like *HELL*. And - apart from > being partnered up with some real beginners who have no idea how to throw > properly (they try to copy by holding your arm but just end up twisting it!) > and having to fight many brown belts - it was fun. But the best of it is the > girl who I was partnered with for the wrist locks really hurt me - and she > knew it. So when the time came for freestyle (yay!) then I chose her. And, > I'm not joking (you'd have all laughed if you'd have been there!), she ran > away from me all around the mat. I chased her for about 15 seconds until I > got pissed off. And the best of it is that she's a black belt. Damnit, am I > that scary? > > Okay, don't answer that last question. ;)) > I'm happy to be thousands of kilometers from where you are. ;) Mike you should be careful with Neil, ;)) > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 00:51:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA51742 for dynarec-outgoing; Fri, 28 Jul 2000 00:51:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007280750.JAA02577@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff863$093b5f80$35901a17@turkey> "from Neil Griffiths at Jul 28, 2000 09:11:23 am" To: dynarec@dynarec.com Date: Fri, 28 Jul 2000 09:50:15 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Most European languages have it because of Latin. I don't like gender in > this case because it's bloody difficult to learn! I've done it once for > Welsh and once for French - why can't they choose the bloody same sex, eh? > At least Italian, French, Spanish, Portuguese and Welsh can agree that the > Moon is feminine and the Sun is masculine. But oh no - not for the Germans. > ;) > It's more fun and helps with poetry. ;) > >What I can't stand is words like "Wednesday" and "colonel". That's just > >madness ;) > > But I agree with you here. I like words that you pronounce exactly as you > read them. :) > I like words that you pronounce exactly as you write it, this means Spanish. ;) > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 02:04:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA51972 for dynarec-outgoing; Fri, 28 Jul 2000 02:04:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Fri, 28 Jul 2000 11:03:28 +0200 Message-ID: <01bff872$b1a4f000$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> I don't like the articles - the sexes. English is good in the fact that we >> can say "The". No "Die, Der, Das" and "Le, La" for example. That's bad! > >I could be biassed but I prefer the Latin derived languages. ;) And I >prefer a lot our articles than the "a" and "the" english articles that >you never know when to use. ;) "A" is used when you talk about one out of many others. "The" is used when you talk about one specific thing out of many others. Examples? A boy. The Boy. A boy = Any boy, it doesn't matter The boy = One specific boy A ball. The ball. Same rules. This is a general rule - but I can't think of any time when it changes. So ours is easier. Ha! ;) >> If it makes you feel any better about the sexes - Welsh has 4 possible >> cases. Great, huh? >> >Four? How it works this? :o Can't explain it so well in a different language but it can be roughly described as masculine, feminine, neutral (one) and neutral (many). It does make sense in a sick kind of way. Sort of like the German "die" which is feminine (isn't it, Mike?) but will also be used when talking about when there are lots of one thing... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 02:13:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA51988 for dynarec-outgoing; Fri, 28 Jul 2000 02:12:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007280921.LAA24230@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff872$b1a4f000$35901a17@turkey> "from Neil Griffiths at Jul 28, 2000 11:03:28 am" To: dynarec@dynarec.com Date: Fri, 28 Jul 2000 11:21:10 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > "A" is used when you talk about one out of many others. > "The" is used when you talk about one specific thing out of many others. > This are the general rules. I was studying last semester technical english and there are more rules. For example is difficult to understand when you have to use the article and when you not. > >> If it makes you feel any better about the sexes - Welsh has 4 possible > >> cases. Great, huh? > >> > >Four? How it works this? :o > > Can't explain it so well in a different language but it can be roughly > described as masculine, feminine, neutral (one) and neutral (many). It does > make sense in a sick kind of way. Sort of like the German "die" which is > feminine (isn't it, Mike?) but will also be used when talking about when > there are lots of one thing... > Ah! But then we have four because our article can be also singular or plural: el, la, los, las. > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 03:13:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA52050 for dynarec-outgoing; Fri, 28 Jul 2000 03:13:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <01bff860$f45dcc80$35901a17@turkey> Message-ID: <00036d761ba06662_mailit@mail.dynarec.com> References: <01bff860$f45dcc80$35901a17@turkey> Date: Fri, 28 Jul 2000 12:09:27 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I definitely think German has more irregular. It's just that you're used to >them. The most useful ones are all irregular! Let's see: >Watch Which German verb do you mean? >See G: sehen - sah - gesehen E: see - saw - seen >Have G: haben - hatte - gehabt E: have - had - had >Come G: kommen - kam - gekommen E: come - came - come >Go G: gehen - ging - gegangen E: go - went - gone >Eat G: essen - aß - gegessen E: eat - ate - eaten >Drink G: trinken - trank - getrunken E: drink - drank - drunk >Need I go on? ;) Why not? From the list above only watch isn't irregular in English and I don't know which German verb you mean... The grammar Practical English Usage lists 115 irregular verbs and according to the Duden Grammatik there are around 170 so called "strong verbs". If we only count those which are used very often we might end up with very similar numbers for both languages. >>That's like playing a solo with the violin: every error is noticed. >That's one thing I'd certainly know about! That's why I took that comparision ;-) >>You mean sentences like: "Kommt der Zug um 10 Uhr an?" >Maybe not that particular sentence because I don't think "Kommt der Zug um >10 Uhr mit" makes much sense. As long as you don't know a person with the name "Zug" it's senseless. BTW, "der Zug" can be the train but also the turn in a board game. >More this one: >Kommst du zu der Kino [an/mit]? That should be "Kommst Du mit zum Kino?" or "Kommst Du zum Kino mit?" And the other case would be "Kommst Du am Kino an?", which doesn't make much sense ("Do you arrive at the cinema?"). Since you're obviously asking for a time it should be "Wann kommst Du am Kino an?": "When do you arrive at the cinema?" >I'm not sure that I've used the correct spelling - The spelling is perfect, bu there are some grammar flaws. It is "das Kino" (neuter) but since it is Dative in this sentence is has to be "dem Kino", so you have "zu dem Kino" which is normally shortened to "zum Kino". >but I hope you see my >point. You can't know what the sentence is until the last word. If you say "Kommst Du mit zum Kino?" or "Wann kommst Du am Kino an?/Wann wirst Du am Kino sein?" you don't have that problem. The cool thing about (relatively) free sentence order is that you can do something which is calles "theme-rheme" in linguistics: you start a sentence with the most important thing and then continue the next sentence with the last topic of the former one, and in German you can do all this without using the passive! >A better translation would be "The train comes at 10 o'clock?" and - >although hardly the greatest of examples - you would certainly be able to >answer the question before the "o'clock" bit. Whereas you'd still have to >wait for the "an" for it to make sense (although not in your particular >example)! Well, you shortened the sentence a bit but you can do the same with the German sentence: "Der Zug kommt um 10 Uhr?" (Just like in the English example you have to adjust your intonation to make clear that it's a question.) The problem with interrupting the sentence "Der Zug kommt um...?" is that there is a verb "umkommen" (to die) and you could get the answer: "No the train doesn't die!" ;-) >I'm always interested in languages now. It could become my new hobby! I also thought at first that discussing language theory would be boring, but I soon realised that it can be quite entertaining. >The subject doesn't have to be in the first position - but you'd have to >write it in a different way. I certainly see your point though - that is the >normal way for writing that sentence. But you could write this: >"The book was given to Mary by Peter" >But then that is a different sentence. Well, try to do that without using passive ;-) >When you say that we can't say "Peter gives the book Mary" then I'd agree. >But you can add one more word and then you can say it: "Peter gives the book >to Mary". It's another way of saying the same thing! I'd have to dig out my grammar books to analyse that one... >Yes, I noticed. But it doesn't work incredibly well. I then get asked how >old I am and then get informed that I'm "So young?". Normally I'd be quite >pleased about that - but not in the context I've heard it. By several girls >now. AARGH! :-/ That's bad :-( >>16) To help with planting, the farmer taught his sow to sow. >That should read: >16) To help with planting, the farmer taught his sow to sew. That's why I didn't understand the sentence! >I like the examples though. But go on Mike, where's your phrase about the >fly? ;) You mean: "Wenn Fliegen hinter Fliegen fliegen, fliegen Fliegen Fliegen nach." >Neil. -- M.I.K.e Common sense and a sense of humor are the same thing, moving at different speeds. A sense of humor is just common sense, dancing. -- Clive James --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 03:13:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA52059 for dynarec-outgoing; Fri, 28 Jul 2000 03:13:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <01bff862$510db700$35901a17@turkey> Message-ID: <00036d762e5432c7_mailit@mail.dynarec.com> References: <01bff862$510db700$35901a17@turkey> Date: Fri, 28 Jul 2000 12:14:40 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >German makes it worse by adding a third sex - neutral. There is no point in >it any more - it's just a remnant from Latin. Spanish also suffers from the >same problem - and again, it's the fault of Latin. The cool thing is that you can tease girls with the fact that it is "der Junge" but "das Mädchen"! ;-) >Those bloody Romans, eh? ;)) And that from a guy who lives in a city named Chester after Latin "castra"! ; -) >If it makes you feel any better about the sexes - Welsh has 4 possible >cases. Great, huh? What is the fourth one for? >Neil. -- M.I.K.e Space is big. You just won't believe how vastly, hugely, mind- bogglingly big it is. I mean, you may think it's a long way down the road to the drug store, but that's just peanuts to space. -- "The Hitchhiker's Guide to the Galaxy" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 03:13:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA52066 for dynarec-outgoing; Fri, 28 Jul 2000 03:13:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <3.0.5.32.20000727183244.007d7d80@powernet.net> Message-ID: <00036d764cf9af2a_mailit@mail.dynarec.com> References: <200007270852.KAA19213@pons.ac.upc.es> <200007270852.KAA19213@pons.ac.upc.es> <3.0.5.32.20000727183244.007d7d80@powernet.net> Date: Fri, 28 Jul 2000 12:23:15 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >English is a poorly thought out language, No natural language is "thought out"... >very rich in vocabulary but pathetically inconsistent. That's due to the mixture of many different languages: Celtic + Latin + Saxon + Norse + French There is a good example: the Saxons had to grow the animals but the Normans ate the meat, that's why you have: cow - beef pig - pork >I think most other languages have much more consistency. There might be more consistent ones but there isn't a really consistent one unless it isn't artificial. >A really difficult language is Polish (supposedly "4.5 times harder to >learn than English" -- although I'm not sure in relation to what)... or any >other Slavic language. Don't know much about these... >Seeing it written is even more frightening -- tons >of consonants and fewer vowels. It is very consistent though, it is read >exactly as spelled. Just like most German spelling. BTW, I think German holds the record for the longest word in which each letter is only used once, unfortunately I forgot wich word it is :-( >Bart -- M.I.K.e Shaw's Principle: Build a system that even a fool can use, and only a fool will want to use it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 03:13:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA52071 for dynarec-outgoing; Fri, 28 Jul 2000 03:13:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <01bff85f$135b5f00$35901a17@turkey> Message-ID: <00036d757e417602_mailit@mail.dynarec.com> References: <01bff85f$135b5f00$35901a17@turkey> Date: Fri, 28 Jul 2000 11:25:26 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That's the one, I couldn't remember her name. Everyone tells me that she's >nice. ;) Yeah, I think she has an African mother an an English father which makes up for a nice mixture. She's probably a bit too thin, and in the film she surely doesn't behave like the thief she is supposed to play (wearing high heels during one job, running in wide open space when she tries to get away from a house), but that could be due to the bad screenplay... >I've been told that it's got a terrible story line - but if you want to >watch an action film that doesn't require you to think then this is the >one... Most of the things were just plain obvious... >That's crap! :o Yup, I'd be interested how well Tom Cruise could play a dying scene... >Damnit, am I that scary? Let me think... Yes! >Okay, don't answer that last question. ;)) Uh, I haven't seen that before! Just forget what I wrote... ;-) >Neil. -- M.I.K.e Yes, but every time I try to see things your way, I get a headache. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 03:13:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA52082 for dynarec-outgoing; Fri, 28 Jul 2000 03:13:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <01bff861$4d2d6500$35901a17@turkey> Message-ID: <00036d762587ea09_mailit@mail.dynarec.com> References: <01bff861$4d2d6500$35901a17@turkey> Date: Fri, 28 Jul 2000 12:12:13 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Bruce Lee was effective but he did use wires. I didn't know that. >And as for Jackie Chan - heh. :) >I like the movies - but you have to laugh. :) That's why I perfer Jackie Chan, he isn't that serious. I also could have said that Chuck Norris is quite effective, but I don't like his fighting style... What about Jet Li? >That's true. It's really not possible to see Europe in 7 days. I know that a >fair few US citizens think that it is though. Europe is roughly the same >size - or maybe bigger - than the US. And if you can't see the US in 7 days >then you certainly can't see Europe! Well, I think Europe could be smaller than the US but it simply has more interesting places to visit! >Neil. -- M.I.K.e In case of injury notify your superior immediately. He'll kiss it and make it better. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 03:13:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA52086 for dynarec-outgoing; Fri, 28 Jul 2000 03:13:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <200007280756.JAA17630@pons.ac.upc.es> Message-ID: <00036d76528a5388_mailit@mail.dynarec.com> References: <200007280756.JAA17630@pons.ac.upc.es> Date: Fri, 28 Jul 2000 12:24:48 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >But it's common in bat movies. Like the main character that beats the >bad guy and turns over without finish off it so the fight can continue >a bit more. That was obvious in MI2 as well. >Or all those terror movies where they hit the bad guy >and then they continue running. ;) And they always forget to take the weapons away! >I'm happy to be thousands of kilometers from where you are. ;) Mike you >should be careful with Neil, ;)) I think I can handle that ;-) >Victor -- M.I.K.e At no time is freedom of speech more precious than when a man hits his thumb with a hammer. -- Marshall Lumsden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 03:27:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA52105 for dynarec-outgoing; Fri, 28 Jul 2000 03:27:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <01bff872$b1a4f000$35901a17@turkey> Message-ID: <00036d76799700ab_mailit@mail.dynarec.com> References: <01bff872$b1a4f000$35901a17@turkey> Date: Fri, 28 Jul 2000 12:35:43 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >"A" is used when you talk about one out of many others. >"The" is used when you talk about one specific thing out of many others. Just call it indefinite and definite article... >A boy. The Boy. In German: "ein Junge"; "der Junge" >Can't explain it so well in a different language but it can be roughly >described as masculine, feminine, neutral (one) and neutral (many). Ah, I think old Greek even has a secial case for two... >It does make sense in a sick kind of way. That's common to all languages ;-) >Sort of like the German "die" which is >feminine (isn't it, Mike?) but will also be used when talking about when >there are lots of one thing... Yup, "die" is the feminine definite article in singular, but it's used for all genders in the plural. >Neil. -- M.I.K.e BOO! We changed Coke again! BLEAH! BLEAH! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 03:31:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA52122 for dynarec-outgoing; Fri, 28 Jul 2000 03:31:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007281039.MAA20381@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: <00036d757e417602_mailit@mail.dynarec.com> "from M.I.K.e at Jul 28, 2000 11:25:26 am" To: dynarec@dynarec.com Date: Fri, 28 Jul 2000 12:39:38 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > M.I.K.e > > Yes, but every time I try to see things your way, I get a headache. > I think this applies to many of the ideas of this list. ;) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 03:34:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA52133 for dynarec-outgoing; Fri, 28 Jul 2000 03:34:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007281043.MAA01814@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: <00036d76528a5388_mailit@mail.dynarec.com> "from M.I.K.e at Jul 28, 2000 12:24:48 pm" To: dynarec@dynarec.com Date: Fri, 28 Jul 2000 12:43:06 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I'm happy to be thousands of kilometers from where you are. ;) Mike you > >should be careful with Neil, ;)) > > I think I can handle that ;-) > Yes. But I'm sure you would be more afraid if he lived in your city. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 03:44:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA52149 for dynarec-outgoing; Fri, 28 Jul 2000 03:44:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: FPSE fiasco From: "M.I.K.e" Message-ID: <00036d76c1f07f83_mailit@mail.dynarec.com> Date: Fri, 28 Jul 2000 12:55:57 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Well, the last version of FPSE didn't run on my computer because the recommended CDR plugins didn't work with my drive for some reason, and those which I could use with PSEmuPro didn't agree with FPSE. Now the new version of FPSE is out with better and native CD support, but that's just worse for me, since I get the same error when I only try to launch the configuration tool :-( -- M.I.K.e Any stone in your boot always migrates against the pressure gradient to exactly the point of most pressure. -- Milt Barber --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 03:51:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA52166 for dynarec-outgoing; Fri, 28 Jul 2000 03:51:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007281059.MAA03954@pons.ac.upc.es> Subject: Re: DYNAREC: FPSE fiasco In-Reply-To: <00036d76c1f07f83_mailit@mail.dynarec.com> "from M.I.K.e at Jul 28, 2000 12:55:57 pm" To: dynarec@dynarec.com Date: Fri, 28 Jul 2000 12:59:33 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well, the last version of FPSE didn't run on my computer because the > recommended CDR plugins didn't work with my drive for some reason, and those > which I could use with PSEmuPro didn't agree with FPSE. > Now the new version of FPSE is out with better and native CD support, but > that's just worse for me, since I get the same error when I only try to > launch the configuration tool :-( > What kind of CDR are you using? Perhaps is SCSI? BTW, it isn't really wonderful the VGS driver? My CDR just works fine with it when in fact it is a bunch of crap. It usually speedup too much and lose the track. I haven't tested FPSE I should have to try it. > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 04:40:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA52218 for dynarec-outgoing; Fri, 28 Jul 2000 04:40:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: FPSE fiasco From: "M.I.K.e" In-Reply-To: <200007281059.MAA03954@pons.ac.upc.es> Message-ID: <00036d778acbc69c_mailit@mail.dynarec.com> References: <200007281059.MAA03954@pons.ac.upc.es> Date: Fri, 28 Jul 2000 13:52:07 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What kind of CDR are you using? Perhaps is SCSI? I have a Teac ATAPI CD-ROM and a Yamaha SCSI CDRW, maybe it has problems with these two drives, but the strange thing is that two PSEmuPro plugins (MSCDEX- plugin, and Segu's ASPI plugin) work flawlessly but not with FPSE >BTW, it isn't really wonderful the VGS driver? My CDR just works >fine with it when in fact it is a bunch of crap. It usually >speedup too much and lose the track. VGS is the cooles PSX emulator I've seen so far, and I think it's also a masterpiece as a general emulator. >Victor -- M.I.K.e What this country needs is a good five cent ANYTHING! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 10:16:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA52482 for dynarec-outgoing; Fri, 28 Jul 2000 10:16:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000728102445.007db7f0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 28 Jul 2000 10:24:45 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <01bff861$e2305e00$35901a17@turkey> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That's harsh. English has more rules and so it's a very structured language. >While you still have room to replace words - or change the order - we do >have inconsistency. But it's not poorly thought out. It just comes from >really scary places. I mean, English comes from the Vikings, the Germanics, >The Romans and then the French. Is it any wonder that we have so much >structure, so many words - but inconsistency? Irregular verbs are inconsistency :) Not to mention unpredictable pronunciation unless you're a native speaker, and even then, people can make mistakes with words they've never seen or heard in context. They could have sat down and changed the spelling to make it more consistent or something ;) >A more difficult language could be either Finnish - or even Welsh. For the >same reasons - they're not based on any other language. And they both sound >funny too. ;) What I always wanted to learn in school was bushman. Whichever of their languages that has the most clicking. That's cool. Technically, clicking isn't a good way of communication because you can't yell. But I guess that keeps people quiet. Best part is: no written language! ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 11:34:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA52543 for dynarec-outgoing; Fri, 28 Jul 2000 11:34:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3981D459.DDAEC0F4@retemail.es> Date: Fri, 28 Jul 2000 20:43:37 +0200 From: Victor Moya del Barrio Organization: Fenix Corp. X-Mailer: Mozilla 4.73 [en]C-CCK-MCD Alehop (Win98; U) X-Accept-Language: es,en,ca,eu,gl MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial References: <3.0.5.32.20000728102445.007db7f0@powernet.net> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Bart wrote: > > >That's harsh. English has more rules and so it's a very structured language. > >While you still have room to replace words - or change the order - we do > >have inconsistency. But it's not poorly thought out. It just comes from > >really scary places. I mean, English comes from the Vikings, the Germanics, > >The Romans and then the French. Is it any wonder that we have so much > >structure, so many words - but inconsistency? > > Irregular verbs are inconsistency :) Not to mention unpredictable > pronunciation unless you're a native speaker, and even then, people can > make mistakes with words they've never seen or heard in context. They could > have sat down and changed the spelling to make it more consistent or > something ;) > Spanish is different (this sounds me like a Spanish topic ;). Our language is almost phonetic. You always know from the writing how you have to spell it correctly. You even know always where the stress is because or it is marked or then follows a particular rule (for example all words with the stress in the third or greater syllabe must me marked, if they aren't marked the stress must be in the second or in the first and so on other rules). It's also a language a lot of more redundant than English. You have to mark the number (singular/plural), the gendre, the time for articles, pronouns, nouns, adjectives and verbs. We also have irregular verbs than are really a knightmare because of all the different forms our verbs have. Thanks to the redundancy we can sort the elements of a sentence in almost any order we want: Subject Verb Complement, Verb Subject Complement, Complement Verb Subject and so on. We can also avoid the subject everytime it isn't really important because the verbal form has to concorde with the subject. But we have also some inconsistences, for example "b" and "v" are the same sound and you have to learn when to write one or another. Or the "h" that it isn't a sound, we don't spell "h". Irregular verbs and many exceptions to many other rules. But I think it is a really cool language. ;) And helps a lot with other languages: Portuguese, Italian and even French. > >A more difficult language could be either Finnish - or even Welsh. For the > >same reasons - they're not based on any other language. And they both sound > >funny too. ;) > > What I always wanted to learn in school was bushman. Whichever of their > languages that has the most clicking. That's cool. Technically, clicking > isn't a good way of communication because you can't yell. But I guess that > keeps people quiet. > In Canarian Island there is a way of comunication using whistles. It was called "silbo" (a modification of our word for whistle "silbido" or the verb "silbar"). In can be used with any language becuase you whistle in your natural language. It was used for comunicate people from one hill to another. It seems to be better than yelling. I have hear it and is incredible, with a bit of attention you can understand it. It has only a few vowels (three?) and a few consonants so the number of words are limited. But they also used to have special whistles for common messages. > > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 14:44:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA52700 for dynarec-outgoing; Fri, 28 Jul 2000 14:44:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004001bff8e6$227c4800$0100a8c0@lion> From: "Neil Griffiths" To: References: <01bff85f$135b5f00$35901a17@turkey> <00036d757e417602_mailit@mail.dynarec.com> Subject: Re: DYNAREC: The future of emulation Date: Fri, 28 Jul 2000 22:14:21 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Today is Doomsday for Neil's pinball project. How is it going Neil? > Yeah, I think she has an African mother an an English father which makes up > for a nice mixture. She's probably a bit too thin, and in the film she surely > doesn't behave like the thief she is supposed to play (wearing high heels > during one job, running in wide open space when she tries to get away from a > house), but that could be due to the bad screenplay... That's cool then. But I have never heard of an action film with a believable character so... > >That's crap! :o > > Yup, I'd be interested how well Tom Cruise could play a dying scene... Or whether he could stop loving himself? ;) > >Damnit, am I that scary? > > Let me think... Yes! Oi! > >Okay, don't answer that last question. ;)) > > Uh, I haven't seen that before! Just forget what I wrote... ;-) Grr! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 14:44:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA52706 for dynarec-outgoing; Fri, 28 Jul 2000 14:44:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004101bff8e6$2345b280$0100a8c0@lion> From: "Neil Griffiths" To: References: <01bff861$4d2d6500$35901a17@turkey> <00036d762587ea09_mailit@mail.dynarec.com> Subject: Re: DYNAREC: The future of emulation Date: Fri, 28 Jul 2000 22:21:36 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Bruce Lee was effective but he did use wires. > > I didn't know that. That wasn't 100% BTW. I think it was only in one or two movies. And that may have only been for stunts - I'm not sure. > >And as for Jackie Chan - heh. :) > >I like the movies - but you have to laugh. :) > > That's why I perfer Jackie Chan, he isn't that serious. And he does his own stunts! He's also one of the only people alive who has broken nearly every bone in his body. He's mad! > I also could have said that Chuck Norris is quite effective, but I don't like > his fighting style... He's okay but I can't say I've seen many of his films. He reminds me more of a... I don't know. I was going to say barfighter - but a real fight in a bar is nothing like that! > What about Jet Li? I like his films very much (I *must* go and see "Romeo must die"!) but he *definitely* uses wires. As in most of the time. Doesn't stop me from enjoying his films though! > Well, I think Europe could be smaller than the US but it simply has more > interesting places to visit! Don't know. When I think US, I mean the main states - not the whole continent of America (which some Europeans do get confused about!). And if I mean the whole of Europe - including Russia - then I reckon it's comparable. Problem is that I have no way to measure it at hand. And I can't use an atlas either. They distort atlas maps. If you buy a European atlas then Europe will be bigger. Buy an American atlas and America will be bigger. The same for Australia. A globe would be the best way - but I don't have one! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 14:44:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA52709 for dynarec-outgoing; Fri, 28 Jul 2000 14:44:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004201bff8e6$2405f540$0100a8c0@lion> From: "Neil Griffiths" To: References: <01bff860$f45dcc80$35901a17@turkey> <00036d761ba06662_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Fri, 28 Jul 2000 22:27:59 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Eat G: essen - aß - gegessen E: eat - ate - eaten Isst? >Why not? From the list above only watch isn't irregular in English and I >don't know which German verb you mean... I don't either! ;) >The grammar Practical English Usage lists 115 irregular verbs and according >to the Duden Grammatik there are around 170 so called "strong verbs". If we >only count those which are used very often we might end up with very similar >numbers for both languages. I just know that German is as difficult - or worse - than English. ;) >>>You mean sentences like: "Kommt der Zug um 10 Uhr an?" >>Maybe not that particular sentence because I don't think "Kommt der Zug um >>10 Uhr mit" makes much sense. > >As long as you don't know a person with the name "Zug" it's senseless. BTW, >"der Zug" can be the train but also the turn in a board game. Can it? Cool! You daft Germans... ;)) >>More this one: >>Kommst du zu der Kino [an/mit]? > >That should be "Kommst Du mit zum Kino?" or "Kommst Du zum Kino mit?" >And the other case would be "Kommst Du am Kino an?", which doesn't make much >sense ("Do you arrive at the cinema?"). Since you're obviously asking for a >time it should be "Wann kommst Du am Kino an?": "When do you arrive at the >cinema?" If you can say "Wann kommst Du am Kino mit?" then that is a good example. >The spelling is perfect, bu there are some grammar flaws. >It is "das Kino" (neuter) but since it is Dative in this sentence is has to >be "dem Kino", so you have "zu dem Kino" which is normally shortened to "zum >Kino". See? I told you - I don't know how to write them! I just cheat! ;)) >Well, you shortened the sentence a bit but you can do the same with the >German sentence: >"Der Zug kommt um 10 Uhr?" (Just like in the English example you have to >adjust your intonation to make clear that it's a question.) >The problem with interrupting the sentence "Der Zug kommt um...?" is that >there is a verb "umkommen" (to die) and you could get the answer: "No the >train doesn't die!" ;-) Heh. You've never heard of British Rail then! ;) >>I'm always interested in languages now. It could become my new hobby! > >I also thought at first that discussing language theory would be boring, but >I soon realised that it can be quite entertaining. We could discuss computer languages too you know... >>When you say that we can't say "Peter gives the book Mary" then I'd agree. >>But you can add one more word and then you can say it: "Peter gives the book >>to Mary". It's another way of saying the same thing! > >I'd have to dig out my grammar books to analyse that one... I win! I win! ;) >>I like the examples though. But go on Mike, where's your phrase about the >>fly? ;) > >You mean: "Wenn Fliegen hinter Fliegen fliegen, fliegen Fliegen Fliegen >nach." So that'll be: When a fly flies behind a fly, a fly flies behind a fly? If so then that is a very obvious thing to say and it should be a saying that should be taken out to the fields and shot. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 14:44:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA52715 for dynarec-outgoing; Fri, 28 Jul 2000 14:44:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004301bff8e6$255d47e0$0100a8c0@lion> From: "Neil Griffiths" To: References: <01bff862$510db700$35901a17@turkey> <00036d762e5432c7_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Fri, 28 Jul 2000 22:30:01 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >The cool thing is that you can tease girls with the fact that it is "der >Junge" but "das Mädchen"! ;-) Why?! That makes no sense! >>Those bloody Romans, eh? ;)) > >And that from a guy who lives in a city named Chester after Latin "castra"! ; >-) Ah, but Chester had the name "Deva" when it was run by the Romans. And it was the capital of England at the time! >>If it makes you feel any better about the sexes - Welsh has 4 possible >>cases. Great, huh? > >What is the fourth one for? Good question - and a difficult one to answer in English. But the best way is to say that it's another plural! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 14:44:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA52722 for dynarec-outgoing; Fri, 28 Jul 2000 14:44:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004401bff8e6$26590d00$0100a8c0@lion> From: "Neil Griffiths" To: References: <200007281043.MAA01814@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation Date: Fri, 28 Jul 2000 23:18:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Yes. But I'm sure you would be more afraid if he lived in your city. ;) No, go on you two. You just talk about me as if I'm not reading these mails... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 15:07:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA52750 for dynarec-outgoing; Fri, 28 Jul 2000 15:07:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000728151646.007dc9e0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 28 Jul 2000 15:16:46 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <3981D459.DDAEC0F4@retemail.es> References: <3.0.5.32.20000728102445.007db7f0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Spanish is different (this sounds me like a Spanish topic ;). Our >language is almost phonetic. Polish is also phonetic. Take my last name for example, Trzynadlowski. Every letter is pronounced. Every consanant and every vowel :) >You always know from the writing how >you have to spell it correctly. You even know always where the >stress is because or it is marked or then follows a particular rule >(for example all words with the stress in the third or greater >syllabe must me marked, if they aren't marked the stress must be >in the second or in the first and so on other rules). I hear the Czech language is like that, with tons of markers. But what's with the upside down punctuation at the beginning of a sentence? I suppose it makes sense because it tells you in advance if the sentence is a question or not, but it looks funny ;) >articles, pronouns, nouns, adjectives and verbs. We also have >irregular verbs than are really a knightmare because of all the >different forms our verbs have. Similar to French. All those darn tenses ;) Supposedly French and Spanish grammar are very similar. At least you don't have to conjugate nouns. Polish has that concept, it's one of the things that makes the language's grammar very complex. In English, or most any other language, you can say: "I'm sitting on top of the table." or "I'm sitting under the table." or "I'm sitting by the table." yet the word "table" stays the same, whereas in Polish the word changes according to what you're doing in relation to it. I don't like it :P >But I think it is a really cool language. ;) And helps a lot >with other languages: Portuguese, Italian and even French. I hear a lot of it here. Sometimes I wonder wether the official language is English or Spanish in the US ;) I remember a funny episode of "Married with Children" where Al Bundy went to get his driver's licence renewed. When they asked him what language he spoke he said "What? The same language as everyone else!" so they put down Spanish. Hehe >> >A more difficult language could be either Finnish - or even Welsh. For the >> >same reasons - they're not based on any other language. And they both sound >> >funny too. ;) I've heard Welsh is odd -- doesn't it have some extremely long words or something? How commonly is it used there? I've never heard it, but I've never been to Wales or anywhere else in Britain for that matter ... yet ;) And I've heard some Finnish. I knew a Hungarian guy once who said that oddly enough Finnish and Hungarian were similar, as if they could be classified as the same language group. >In Canarian Island there is a way of comunication using whistles. It >was called "silbo" (a modification of our word for whistle "silbido" >or the verb "silbar"). In can be used with any language becuase you >whistle in your natural language. It was used for comunicate people >from one hill to another. It seems to be better than yelling. I have >hear it and is incredible, with a bit of attention you can understand >it. It has only a few vowels (three?) and a few consonants so the >number of words are limited. But they also used to have special >whistles for common messages. I'm a bad whistler. I'd rather click :) I think Zulu has some clicking to it. But I want to real deal. Like those isolated bushman tribes you see on the Discovery Channel that nobody really knows/cares about. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 15:38:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA52779 for dynarec-outgoing; Fri, 28 Jul 2000 15:38:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 28 Jul 2000 15:54:18 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: The future of emulation In-Reply-To: <004001bff8e6$227c4800$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Today is Doomsday for Neil's pinball project. How is it going Neil? Yesertday was doomsday. 1:30AM, I got the boards all put back together. Still have minor tweaking to do (and aligning) but I'll be putting them back in the machine tomorrow sometime. I have a bachelor party to go to tonight. This will be the first time I'm A: Sober for it, and B: am not planning on getting arrested. > > doesn't behave like the thief she is supposed to play (wearing high heels > > during one job, running in wide open space when she tries to get away from > > house), but that could be due to the bad screenplay... It's a JOhn Woo film. Bad screenplay is a synonym for his movies, but the cinematography is wonderful. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 15:41:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA52792 for dynarec-outgoing; Fri, 28 Jul 2000 15:41:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 28 Jul 2000 15:57:34 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <3.0.5.32.20000728151646.007dc9e0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > In English, or most any other language, you can say: "I'm sitting on top of > the table." or "I'm sitting under the table." or "I'm sitting by the > table." yet the word "table" stays the same, whereas in Polish the word > changes according to what you're doing in relation to it. I don't like it :P That's bonkers. I wonder how many interpretations would get botched when someone says "I have to go the toilet." > I hear a lot of it here. Sometimes I wonder wether the official language is > English or Spanish in the US ;) I remember a funny episode of "Married with > Children" where Al Bundy went to get his driver's licence renewed. When > they asked him what language he spoke he said "What? The same language as > everyone else!" so they put down Spanish. Hehe Hehehehe. Go to southern California. It should be called "North Mexico". ;-) And we have a place in the Portland area called Hillsboro, which we affectionately call Hillsburrito. ;-) We *DID* have a national language of English, but the goddamn diveristy and politically correct Nazis had that reversed. I personally have a lot of respect for Mexicans. They bust ass and don't complain (hard workers). Much better than us whiny white boys. ;-) > I think Zulu has some clicking to it. But I want to real deal. Like those > isolated bushman tribes you see on the Discovery Channel that nobody really > knows/cares about. I wonder what it does to the grammar when you get a click out of line... -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 16:29:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA52834 for dynarec-outgoing; Fri, 28 Jul 2000 16:29:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000728163803.007da6c0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 28 Jul 2000 16:38:03 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: References: <3.0.5.32.20000728151646.007dc9e0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That's bonkers. I wonder how many interpretations would get botched when >someone says "I have to go the toilet." That's usually a "screw the grammar, get me to the shitter" situation ;) >Hehehehe. Go to southern California. It should be called "North >Mexico". ;-) >And we have a place in the Portland area called Hillsboro, >which we affectionately call Hillsburrito. ;-) Hehehe >>We *DID* have a national language of English, but the goddamn diveristy >and politically correct Nazis had that reversed. Political correctness is whacked. I can't stand it. I always thought I was respectful and didn't care much about ethnic/lingual/whatever differences but apparently I'm a white-trash retard... ;) >> I think Zulu has some clicking to it. But I want to real deal. Like those >> isolated bushman tribes you see on the Discovery Channel that nobody really >> knows/cares about. > >I wonder what it does to the grammar when you get a click out of line... Maybe bushmen don't have any real grammar. Maybe they don't even have a language. It could be that they sit around all day clicking and don't understand a word -- ahem, click. Maybe that's why they live in dung-huts and eat termites -- with no computers (). :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 17:31:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA52888 for dynarec-outgoing; Fri, 28 Jul 2000 17:31:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 28 Jul 2000 17:47:23 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <3.0.5.32.20000728163803.007da6c0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >That's bonkers. I wonder how many interpretations would get botched when > >someone says "I have to go the toilet." > That's usually a "screw the grammar, get me to the shitter" situation ;) Yeah, but if toilet doesn't mean toilet if you have the incorrect tense, then you might be dropping a chalupa or trouser chili in the phone booth. ;-) > >>We *DID* have a national language of English, but the goddamn diveristy > >and politically correct Nazis had that reversed. > Political correctness is whacked. I can't stand it. I always thought I was > respectful and didn't care much about ethnic/lingual/whatever differences > but apparently I'm a white-trash retard... ;) I hate that people think just because something is different, it makes it cool. I call them differentologists. Different is almost always just annoying. I'm an equal opportunity offender. I find it offenseive that I can't complain about the timid way the orientals (*NOT* "Asian" - it's a PC word!) drive around here because it makes me a racist, but it's OK for me to poke fun at old white men driving timidly. This concept floating around that everyone's the same is BS. The point is there are generalities that exist in all cultures. But what the PC public needs to understand is there is a happy medium. Just because I make fun of the way a particular race generally drives on US highways doesn't mean that I hate them or am going to go burn a cross on their front yard. The fact is everyone is annoying - just in different areas. ;-) Idiocy and irritation know no racial boundaries. > >I wonder what it does to the grammar when you get a click out of line... > Maybe bushmen don't have any real grammar. Maybe they don't even have a > language. It could be that they sit around all day clicking and don't > understand a word -- ahem, click. Maybe that's why they live in dung-huts > and eat termites -- with no computers (). :) I have always thought it would be really funny to take a bushman (Ethiopian?) through a Taco Bell drive through. That'd be a serious mind blower! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 19:40:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA52987 for dynarec-outgoing; Fri, 28 Jul 2000 19:40:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000728194927.007d9210@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 28 Jul 2000 19:49:27 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: References: <3.0.5.32.20000728163803.007da6c0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I hate that people think just because something is different, it makes it >cool. I call them differentologists. Different is almost always just >annoying. I'm an equal opportunity offender. I find it offenseive that I >can't complain about the timid way the orientals (*NOT* "Asian" - it's a >PC word!) drive around here because it makes me a racist, but it's OK for >me to poke fun at old white men driving timidly. This concept floating >around that everyone's the same is BS. Yep, I agree 100%. Difference makes us unique. Acknowledging this doesn't mean you're intolerant or insensitive. >The point is there are generalities that exist in all cultures. But what >the PC public needs to understand is there is a happy medium. Just because >I make fun of the way a particular race generally drives on US highways >doesn't mean that I hate them or am going to go burn a cross on their >front yard. Yeah, in some regards (what they consider "positive") P.C. people encourage differences, and in other regards they tell us they don't exist. The latter sounds communist :P >I have always thought it would be really funny to take a bushman >(Ethiopian?) through a Taco Bell drive through. That'd be a serious mind >blower! I think bushmen live mainly in Southern Africa (at least from the documentaries I've seen)... not sure though. But whatever. Taking one to a Taco Bell drive through... I don't know about a mind blower. I'd be ripping my gut laughing (hey! It's a funny situation ;)) but I'm sure he wouldn't be as jolly. I think even the bushmen could understand that something's wrong with the quality of the intercom speaker ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 23:42:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA53161 for dynarec-outgoing; Fri, 28 Jul 2000 23:42:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001f01bff929$99626100$5ec0523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3.0.5.32.20000728151646.007dc9e0@powernet.net> Subject: Re: DYNAREC: Emulation tutorial Date: Sat, 29 Jul 2000 08:52:43 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Spanish is different (this sounds me like a Spanish topic ;). Our > >language is almost phonetic. > > Polish is also phonetic. Take my last name for example, Trzynadlowski. > Every letter is pronounced. Every consanant and every vowel :) > Really? How can be pronounced a consonant? ;) Spanish is almost syllabic too (not as much as Japanese but nearly) we need a vowel after each consonant!! Well, we have also combinations of consonants for making some mixed sounds "tr" or we can end a syllabe with some consonants "an", but we don't have syllabes without consonant. We don't have stand alone consonants. > > Similar to French. All those darn tenses ;) Supposedly French and Spanish > grammar are very similar. > I supose so but although I can understand some French when reading I haven't studied any French and I don't know its grammar. It helps I know a language called "Catalonian" or "Catalan". It is a derived form, mixed a lot also with Spanish of the old south version of French (medieval times, in a region and time with all those troubadour, there were also the Catars ...). It seems, or I was teached so, there were two French languages, they were named by the way they saied "yes", perhaps "ou" and"oc". Perhaps Gwenole knows something about it. > I hear a lot of it here. Sometimes I wonder wether the official language is > English or Spanish in the US ;) I remember a funny episode of "Married with > Children" where Al Bundy went to get his driver's licence renewed. When > they asked him what language he spoke he said "What? The same language as > everyone else!" so they put down Spanish. Hehe > Well a lot of the South States where Spanish colonies before North Americans and English came and threw off us. ;) California, Florida, Texas and so on. If you take into account the names the cities you will see they are usually or and "indian" name or a Spanish name: Los Angeles, San Francisco, Arizona (it must come from "arid"), Florida means "flowered", and so on. > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 23:53:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA53177 for dynarec-outgoing; Fri, 28 Jul 2000 23:53:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000729000218.007dc7c0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 29 Jul 2000 00:02:18 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <001f01bff929$99626100$5ec0523e@hal9000> References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3.0.5.32.20000728151646.007dc9e0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Really? How can be pronounced a consonant? ;) Spanish is almost >syllabic too (not as much as Japanese but nearly) we need a vowel >after each consonant!! Like in French, apparently the alternation between vowel and consanant makes it sound nicer. That's what I remember my French teacher saying. She was a fruit though so I take it with a grain of salt ;) >Well, we have also combinations of consonants >for making some mixed sounds "tr" or we can end a syllabe with some >consonants "an", but we don't have syllabes without consonant. We >don't have stand alone consonants. Stand along consonants eh? The word for "with" is: z That's it. Just "z". Pronounced "z" not "zee" or anything, it's a consanant pure and simple. It tends to mix in with the word following it when you hear it spoken. >Well a lot of the South States where Spanish colonies before North Americans >and English came and threw off us. ;) California, Florida, Texas and so >on. >If you take into account the names the cities you will see they are usually >or >and "indian" name or a Spanish name: Los Angeles, San Francisco, Arizona >(it must come from "arid"), Florida means "flowered", and so on. Isn't "Nevada" derived from "snow"? What about "Las Vegas"? Could the Spaniards possibly have known about the emulator 500 years before its time? ;) But the influx of the Spanish language here has been mainly due to immigration I think. A while back Spanish wasn't as widespread here. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 28 23:56:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA53190 for dynarec-outgoing; Fri, 28 Jul 2000 23:56:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004201bff92b$93952bc0$5ec0523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: Emulation tutorial Date: Sat, 29 Jul 2000 09:06:08 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >>We *DID* have a national language of English, but the goddamn diveristy > > >and politically correct Nazis had that reversed. > > Political correctness is whacked. I can't stand it. I always thought I was > > respectful and didn't care much about ethnic/lingual/whatever differences > > but apparently I'm a white-trash retard... ;) > > I hate that people think just because something is different, it makes it > cool. I call them differentologists. Different is almost always just > annoying. I'm an equal opportunity offender. I find it offenseive that I > can't complain about the timid way the orientals (*NOT* "Asian" - it's a > PC word!) drive around here because it makes me a racist, but it's OK for > me to poke fun at old white men driving timidly. This concept floating > around that everyone's the same is BS. > The PC is always contradictory. As soon they say difference good and important as soon they say everyone is equal. :p I'm absolutely against PC. ;) I think what someone has to say is the truth it doesn't matter who it hurts. Of course I also agree others say the truth about me. ;) And if get anger then I will be me problem. ;)) > The fact is everyone is annoying - just in different areas. ;-) Idiocy and > irritation know no racial boundaries. > If people just knew that they would see really how similar we are all and we could laugh each others strange habits. ;) > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 00:05:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA53214 for dynarec-outgoing; Sat, 29 Jul 2000 00:05:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005101bff92c$cfde68c0$5ec0523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3.0.5.32.20000728151646.007dc9e0@powernet.net> <3.0.5.32.20000729000218.007dc7c0@powernet.net> Subject: Re: DYNAREC: Emulation tutorial Date: Sat, 29 Jul 2000 09:15:24 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Well a lot of the South States where Spanish colonies before North Americans > >and English came and threw off us. ;) California, Florida, Texas and so > >on. > >If you take into account the names the cities you will see they are usually > >or > >and "indian" name or a Spanish name: Los Angeles, San Francisco, Arizona > >(it must come from "arid"), Florida means "flowered", and so on. > > Isn't "Nevada" derived from "snow"? What about "Las Vegas"? Could the > Spaniards possibly have known about the emulator 500 years before its time? > ;) > Yes Nevada cames from snow. And Las Vegas comes from the word "vega": small flat fertile land. I don't really know, but it isn't in the middle of a desert? > But the influx of the Spanish language here has been mainly due to > immigration I think. A while back Spanish wasn't as widespread here. > You are right. The Spanish colonization didn't have so much importance in North America, I think English kick our asses out there really early. ;) But with Portuguese Central and South America was all ours. And they threw away us too. ;( > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 04:43:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA55664 for dynarec-outgoing; Sat, 29 Jul 2000 04:43:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <3.0.5.32.20000728102445.007db7f0@powernet.net> Message-ID: <00036d8b229d42b1_mailit@mail.dynarec.com> References: <3.0.5.32.20000728102445.007db7f0@powernet.net> Date: Sat, 29 Jul 2000 13:14:38 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Irregular verbs are inconsistency :) Nope, if you're into language history then irregular verbs can be quite consistent. >Bart -- M.I.K.e The herd instinct among economists makes sheep look like independent thinkers. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 04:43:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA55674 for dynarec-outgoing; Sat, 29 Jul 2000 04:43:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <3981D459.DDAEC0F4@retemail.es> Message-ID: <00036d8b341dd058_mailit@mail.dynarec.com> References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> Date: Sat, 29 Jul 2000 13:19:32 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Spanish is different (this sounds me like a Spanish topic ;). Our >language is almost phonetic. You always know from the writing how >you have to spell it correctly. What about: "Barcelona" -> [Barthelona] "Mallorca" -> [Majorka] >But we have also some inconsistences, for example "b" and "v" are >the same sound and you have to learn when to write one or another. Uh, I surely don't know much about Spanish! >Victor -- M.I.K.e There exist tasks which cannot be done by more than 10 men or fewer than 100. -- Steele's Law --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 04:43:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA55686 for dynarec-outgoing; Sat, 29 Jul 2000 04:43:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <004201bff8e6$2405f540$0100a8c0@lion> Message-ID: <00036d8b742451cc_mailit@mail.dynarec.com> References: <01bff860$f45dcc80$35901a17@turkey> <00036d761ba06662_mailit@mail.dynarec.com> <004201bff8e6$2405f540$0100a8c0@lion> Date: Sat, 29 Jul 2000 13:37:26 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>Eat >G: essen - aß - gegessen >E: eat - ate - eaten > >Isst? What do you mean? New spelling? The old one is "ißt"... >I just know that German is as difficult - or worse - than English. ;) Let's say it's as difficult when it comes to verbs but more difficult in terms of articles. >If you can say "Wann kommst Du am Kino mit?" then that is a good example. Nope, that sentence doesn't make any sense. Translation(?): *"When do you come to the cinema with?" >See? I told you - I don't know how to write them! I just cheat! ;)) Cheater! Cheater! >>The problem with interrupting the sentence "Der Zug kommt um...?" is that >>there is a verb "umkommen" (to die) and you could get the answer: "No the >>train doesn't die!" ;-) >Heh. You've never heard of British Rail then! ;) Hmm, that reminds me of a unplanned ICE stop at a bridge near Eschede... >We could discuss computer languages too you know... We could, but that would be rather uninteresting and less complex compared to natural languages. >I win! I win! ;) Not yet... >So that'll be: >When a fly flies behind a fly, a fly flies behind a fly? "When flies fly behind flies, flies fly behind flies." It sounds better in German because the noun is "Fliegen" (plural of "die Fliege") and the verb is "fliegen" as well. When it's spoken you don't have the ability to recognise the noun due to it's capital initial, which is why it's not that good in the written form. >If so then that is a very obvious thing to say and it should be a saying >that should be taken out to the fields and shot. ;) Hey, what about "Fischers Fritze fischt frische Fische." ;-) Meaning: "Fisherman's Fritz fishes fresh fish." >Neil. -- M.I.K.e "He was a modest, good-humored boy. It was Oxford that made him insufferable." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 04:44:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA55694 for dynarec-outgoing; Sat, 29 Jul 2000 04:43:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <004301bff8e6$255d47e0$0100a8c0@lion> Message-ID: <00036d8b7983c719_mailit@mail.dynarec.com> References: <01bff862$510db700$35901a17@turkey> <00036d762e5432c7_mailit@mail.dynarec.com> <004301bff8e6$255d47e0$0100a8c0@lion> Date: Sat, 29 Jul 2000 13:38:56 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>The cool thing is that you can tease girls with the fact that it is "der >>Junge" but "das Mädchen"! ;-) >Why?! That makes no sense! Of course not, but it's fun to tease the girls with, "hey, you aren't even female" ;-) >Ah, but Chester had the name "Deva" when it was run by the Romans. And it >was the capital of England at the time! So much for history lessons ;-) >Neil. -- M.I.K.e A bird in the bush usually has a friend in there with him. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 04:44:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA55705 for dynarec-outgoing; Sat, 29 Jul 2000 04:44:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <004001bff8e6$227c4800$0100a8c0@lion> Message-ID: <00036d8b41438e7b_mailit@mail.dynarec.com> References: <01bff85f$135b5f00$35901a17@turkey> <00036d757e417602_mailit@mail.dynarec.com> <004001bff8e6$227c4800$0100a8c0@lion> Date: Sat, 29 Jul 2000 13:23:12 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That's cool then. But I have never heard of an action film with a believable >character so... Hey, what about Die Hard? I believe that every police man in the US knows how to hide in elevators and how to ignite C4 with a computer monitor ;-) >> Yup, I'd be interested how well Tom Cruise could play a dying scene... >Or whether he could stop loving himself? ;) Yep, that's the more general case ;-) >> >Damnit, am I that scary? >> Let me think... Yes! >Oi! You're reaction is quite mono-syllabic... >> >Okay, don't answer that last question. ;)) >> Uh, I haven't seen that before! Just forget what I wrote... ;-) >Grr! Oh shit! I guess he's angry now... >Neil. -- M.I.K.e Those who make peaceful revolution impossible will make violent revolution inevitable. -- John F. Kennedy --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 04:44:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA55709 for dynarec-outgoing; Sat, 29 Jul 2000 04:44:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <004101bff8e6$2345b280$0100a8c0@lion> Message-ID: <00036d8b4a550a9c_mailit@mail.dynarec.com> References: <01bff861$4d2d6500$35901a17@turkey> <00036d762587ea09_mailit@mail.dynarec.com> <004101bff8e6$2345b280$0100a8c0@lion> Date: Sat, 29 Jul 2000 13:25:45 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> That's why I perfer Jackie Chan, he isn't that serious. >And he does his own stunts! He's also one of the only people alive who has >broken nearly every bone in his body. He's mad! I know, and I'm really upset when the credits aren't shown in full length on TV! You know why... >> What about Jet Li? >I like his films very much (I *must* go and see "Romeo must die"!) but he >*definitely* uses wires. As in most of the time. Doesn't stop me from >enjoying his films though! Anyway, he's *really* fast. >Don't know. When I think US, I mean the main states - not the whole >continent of America (which some Europeans do get confused about!). And if I >mean the whole of Europe - including Russia - then I reckon it's comparable. >Problem is that I have no way to measure it at hand. And I can't use an >atlas either. They distort atlas maps. If you buy a European atlas then >Europe will be bigger. Buy an American atlas and America will be bigger. The >same for Australia. A globe would be the best way - but I don't have one! I have one ;-) >Neil. -- M.I.K.e If you cannot convince them, confuse them. -- Harry S Truman --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 04:44:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA55713 for dynarec-outgoing; Sat, 29 Jul 2000 04:44:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <004401bff8e6$26590d00$0100a8c0@lion> Message-ID: <00036d8b8a968ba9_mailit@mail.dynarec.com> References: <200007281043.MAA01814@pons.ac.upc.es> <004401bff8e6$26590d00$0100a8c0@lion> Date: Sat, 29 Jul 2000 13:43:43 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >No, go on you two. You just talk about me as if I'm not reading these >mails... ;) Who are you talking about? ;-) >Neil. -- M.I.K.e "There's nothing in the middle of the road but a yellow stripe and dead armadillos." -- Jim Hightower, Texas Agricultural Commissioner --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 07:21:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA55844 for dynarec-outgoing; Sat, 29 Jul 2000 07:21:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002401bff969$a0970f80$70c0523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Sat, 29 Jul 2000 16:31:03 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Spanish is different (this sounds me like a Spanish topic ;). Our > >language is almost phonetic. You always know from the writing how > >you have to spell it correctly. > > What about: > "Barcelona" -> [Barthelona] > "Mallorca" -> [Majorka] > What is the problem? "c" sounds before "e" or "i" vowels that way. Before any other vowel is "k". For getting "k" sound with "e" and "i" you have to write "qu". And "ll" represents another consonant always. And example Miquel sounds Mikel, with stress in quel. It isn't Spanish but catalan but it works in the same way. It happens the same with "g". > M.I.K.e Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 10:44:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA56000 for dynarec-outgoing; Sat, 29 Jul 2000 10:44:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <3.0.5.32.20000729000218.007dc7c0@powernet.net> Message-ID: <00036d90bc23cb9d_mailit@mail.dynarec.com> References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3.0.5.32.20000728151646.007dc9e0@powernet.net> <3.0.5.32.20000729000218.007dc7c0@powernet.net> Date: Sat, 29 Jul 2000 19:55:29 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Stand along consonants eh? The word for "with" is: z >That's it. Just "z". Pronounced "z" not "zee" or anything, it's a consanant >pure and simple. That surely cannot work since a sole consonant cannot be the core of a syllable! >It tends to mix in with the word following it when you hear it spoken. Either the "tends" has to be "always" and that "word" would melt with the first syllable of the following word, or the sound "z" has to be a vowel in Polish because ever word has at least one syllable but a consonant or even a semi-vowel cannot be the core of a syllable. >Bart -- M.I.K.e Different all twisty a of in maze are you, passages little. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 10:44:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA55993 for dynarec-outgoing; Sat, 29 Jul 2000 10:44:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <002401bff969$a0970f80$70c0523e@hal9000> Message-ID: <00036d90a5060c6a_mailit@mail.dynarec.com> References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> Date: Sat, 29 Jul 2000 19:49:01 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What is the problem? "c" sounds before "e" or "i" vowels that way. Before >any other vowel is "k". For getting "k" sound with "e" and "i" you have to write >"qu". Well, that means that Spanish is about as phonetically spelled as German: quite good on the main part but with some exceptions... BTW, back to the main subject ;-) I took a brief look at that console emulation doc again and apart from many spelling and grammar errors I noticed that you were right in claiming that the section about endianness is totally wrong. I also noticed that he explains EPROM as Extended Programmably ROM, although the E stands for Erasable. In the instruction emulation section he only calculated carry and zero flags but no negative or overflow... Well, just what I notced from the quick survey. I bet there are still more errors hidden. >Victor -- M.I.K.e The First Commandment for Technicians: Beware the lightening that lurketh in the undischarged capacitor, lest it cause thee to bounce upon thy buttocks in a most untechnician-like manner. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 11:38:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA56050 for dynarec-outgoing; Sat, 29 Jul 2000 11:38:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000729114717.007dfae0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 29 Jul 2000 11:47:17 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <00036d90bc23cb9d_mailit@mail.dynarec.com> References: <3.0.5.32.20000729000218.007dc7c0@powernet.net> <3.0.5.32.20000728102445.007db7f0@powernet.net> <3.0.5.32.20000728151646.007dc9e0@powernet.net> <3.0.5.32.20000729000218.007dc7c0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>It tends to mix in with the word following it when you hear it spoken. > >Either the "tends" has to be "always" and that "word" would melt with the >first syllable of the following word, or the sound "z" has to be a vowel in >Polish because ever word has at least one syllable but a consonant or even a >semi-vowel cannot be the core of a syllable. You can say it standalone, but that's not usually done unless you're trying to speak very, very slowly or something. What about the clicking languages of Africa? Does the vowel concept even apply there? Since I'm no grammar expert on Polish (I was brought up speaking it, but learning the details of the grammar was never important since I've lived in the US all of my life) I can't really say if it's a vowel or not. At any rate, the sound is just a hard z sound, as you would find in a word like "zero" minus the "ero" leaving "z" not "ze" :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 11:41:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA56063 for dynarec-outgoing; Sat, 29 Jul 2000 11:41:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000729115029.007dc420@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 29 Jul 2000 11:50:29 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: An emulation legal document Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Someone on the VGN Emulator Programming forum was writing a document on the legality of emulation in respect to EC law. I don't know a thing about that, but his main concerns were with how emulators were written (software reverse engineering, hardware reverse engineering -- through schematics, and similar concerns.) The document is a 40K Word document. Would anyone be willing to take a look? I could send it as an attachment, but if that's inconvenient I could try posting it at a private URL. Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 11:46:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA56076 for dynarec-outgoing; Sat, 29 Jul 2000 11:46:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003701bff98e$ab9675e0$70c0523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Sat, 29 Jul 2000 20:56:13 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >What is the problem? "c" sounds before "e" or "i" vowels that way. Before > >any other vowel is "k". For getting "k" sound with "e" and "i" you have to > write > >"qu". > > Well, that means that Spanish is about as phonetically spelled as German: > quite good on the main part but with some exceptions... > Well in the first Spanish grammar (XVIII century I think) it was said " Spanish is writen as it is spelled and it is spelled as it is written". Or something like this. ;) I don't remember the first name of the author but the last name is Nebrija. > BTW, back to the main subject ;-) > I took a brief look at that console emulation doc again and apart from many > spelling and grammar errors I noticed that you were right in claiming that > the section about endianness is totally wrong. > I also noticed that he explains EPROM as Extended Programmably ROM, although > the E stands for Erasable. > In the instruction emulation section he only calculated carry and zero flags > but no negative or overflow... > Well, just what I notced from the quick survey. I bet there are still more > errors hidden. > Right ... And this let me with the hard doubt ... I saied I would read it and I would say him my opinion and my critices ... But I haven't done nothing of that ... What could I do? If the guy is really interested in learning I would want to help him without discouraging him. But I'm not good with such kind of things. :( BTW, Neil you could take away the mul8 list all the August and noones would know about it. ;) Noone has said nothing about last message, this time even teasing them they don't say nothing. I'm beginning to be really worried. Or perhaps everyone really interested has migrated to this list? > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 11:50:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA56089 for dynarec-outgoing; Sat, 29 Jul 2000 11:50:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003f01bff98f$49735d00$70c0523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000729115029.007dc420@powernet.net> Subject: Re: DYNAREC: An emulation legal document Date: Sat, 29 Jul 2000 21:00:38 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Someone on the VGN Emulator Programming forum was writing a document on the > legality of emulation in respect to EC law. I don't know a thing about > that, but his main concerns were with how emulators were written (software > reverse engineering, hardware reverse engineering -- through schematics, > and similar concerns.) > > The document is a 40K Word document. Would anyone be willing to take a > look? I could send it as an attachment, but if that's inconvenient I could > try posting it at a private URL. > > Thanks, > > > Always interested in all about of emulation. The legal and phylosophical aspect also. We could discuss someday about it, I will go against all those fucking companies and the "fake" behind authors copyrights . ;) In any case the problem will be the same a slow modem connection, so doesn't matter really. ;) Perhaps the mail will be faster. I love documents about emulation. There is someone in the list who doesn't know about it? ;) In any case I'm sure others will be also interested. > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 11:57:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA56102 for dynarec-outgoing; Sat, 29 Jul 2000 11:57:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 29 Jul 2000 12:13:58 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: An emulation legal document In-Reply-To: <3.0.5.32.20000729115029.007dc420@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Someone on the VGN Emulator Programming forum was writing a document on the > legality of emulation in respect to EC law. I don't know a thing about > that, but his main concerns were with how emulators were written (software > reverse engineering, hardware reverse engineering -- through schematics, > and similar concerns.) The schematics were published works, and the act of reverse engineering is *NOT* illegal (and also very difficult to prove). -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 12:07:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA56122 for dynarec-outgoing; Sat, 29 Jul 2000 12:07:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000729121612.007d9820@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 29 Jul 2000 12:16:12 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: An emulation legal document In-Reply-To: <003f01bff98f$49735d00$70c0523e@hal9000> References: <3.0.5.32.20000729115029.007dc420@powernet.net> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=====================_964923372==_" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --=====================_964923372==_ Content-Type: text/plain; charset="us-ascii" >In any case the problem will be the same a slow modem connection, >so doesn't matter really. ;) Perhaps the mail will be faster. Well, okay, I've attached it. I hope this doesn't knock anyone around too much. I've got a 28.8K, though, and it arrived fairly quickly. 40K file. >I love documents about emulation. There is someone in the list >who doesn't know about it? ;) In any case I'm sure others will >be also interested. If you see any errors, discuss them here or you can also email the author: takis@clara.co.uk, whatever floats your boat ;) Thanks, --=====================_964923372==_ Content-Type: application/msword; name="Takis-LawEmuFaq.doc"; x-mac-type="42494E41"; x-mac-creator="4D535744" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Takis-LawEmuFaq.doc" 0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAASgAAAAAAAAAA EAAATAAAAAEAAAD+////AAAAAEkAAAD///////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////s pcEANyAJBAAA8BK/AAAAAAAAEAAAAAAABAAAvE4AAA4AYmpialUWVRYAAAAAAAAAAAAAAAAAAAAA AAAJBBYALl4AADd8AAA3fAAAiDcAADMSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//w8AAAAA AAAAAAD//w8AAAAAAAAAAAD//w8AAAAAAAAAAAAAAAAAAAAAAGwAAAAAACoCAAAAAAAAKgIAACoC AACaAAAAxAIAAGwAAAAwAwAAAAAAADADAAAAAAAAMAMAABQAAAAAAAAAAAAAAEQDAAAAAAAAlAcA AAAAAACUBwAAAAAAAJQHAAAAAAAAlAcAABQAAACoBwAAHAAAAEQDAAAAAAAAaQ4AACwBAADQBwAA AAAAANAHAAAAAAAA0AcAAAAAAADQBwAAAAAAANAHAAAAAAAA0AcAAAAAAADQBwAAAAAAANAHAAAA AAAA0A0AAAIAAADSDQAAAAAAANINAAAAAAAA0g0AAAAAAADSDQAAAAAAANINAAAAAAAA0g0AACQA AACVDwAAIAIAALURAABCAAAA9g0AAC0AAAAAAAAAAAAAAAAAAAAAAAAAMAMAAAAAAADQBwAAAAAA AAAAAAAAAAAAAAAAAAAAAADQBwAAAAAAANAHAAAAAAAA0AcAAAAAAADQBwAAAAAAAPYNAAAAAAAA ZAoAAAAAAAAwAwAAAAAAADADAAAAAAAA0AcAAAAAAAAAAAAAAAAAANAHAAAAAAAAIw4AABYAAABk CgAAAAAAAGQKAAAAAAAAZAoAAAAAAADQBwAAGAEAADADAAAAAAAA0AcAAAAAAAAwAwAAAAAAANAH AAAAAAAA0A0AAAAAAAAAAAAAAAAAAGQKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAA0AcAAAAAAADQDQAAAAAAAGQKAAD4AAAAZAoAAAAAAABcCwAA HgAAAIQNAAAYAAAAMAMAAAAAAAAwAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0A0AAAAAAADQBwAAAAAAAMQHAAAMAAAAoHASnt74 vwFEAwAAUAQAAJQHAAAAAAAA6AgAAEgBAACcDQAACAAAAAAAAAAAAAAA0A0AAAAAAAA5DgAAMAAA AGkOAAAAAAAApA0AACwAAAD3EQAAAAAAADAKAAA0AAAA9xEAAAAAAADQDQAAAAAAAGQKAAAAAAAA RAMAAAAAAABEAwAAAAAAADADAAAAAAAAMAMAAAAAAAAwAwAAAAAAADADAAAAAAAAAgDZAAAASUku MSBQcm9kdWNpbmcgQW4gRW11bGF0b3INDUFsdGhvdWdoIGV2ZXJ5b25lIGFjY2VwdHMgdGhhdCBz b2Z0d2FyZSBpcyBjb2RlIHB1dCBpbiBhIGdpdmVuIG9yZGVyLCBmZXcgcGVyaGFwcyB3b3VsZCBy ZWFsaXNlIHRoYXQgd2hhdCB3ZSB0cmFkaXRpb25hbGx5IGNvbnNpZGVyIGFzIGJlaW5nIGhhcmR3 YXJlLCBhcGFydCBmcm9tIHRoZSBudXRzIGFuZCBib2x0cywgaXMgaW4gZXNzZW5jZSBzb2Z0d2Fy ZS4gIEEgYm9hcmQgb2YgY2lyY3VpdHMsIGZvciBleGFtcGxlLCBtaWdodCBiZSBmdWxsIG9mIHdp cmVzLCBjb25kdWN0b3JzIGFuZCBwaW5zIGJ1dCBpbnNpZGUgdGhpcyCTaGFyZHdhcmWUIGFyZSBj b250YWluZWQgaW5zdHJ1Y3Rpb25zIHJlZ3VsYXRpbmcgdGhlIGZ1bmN0aW9uIG9mIHRoZSB3aG9s ZSBzeXN0ZW0uICBUaG9zZSBpbnN0cnVjdGlvbnMgYXJlIGVzc2VudGlhbGx5IGEgcHJvZ3JhbS4g IEEgdmVyeSBhY2N1cmF0ZSwgYW5kIHJlbGV2YW50LCBleGFtcGxlIGlzIHRoZSBCSU9TAi4gIEEg QklPUyBjb250YWlucyBpbmZvcm1hdGlvbiwgdXN1YWxseSBpbiB0aGUgbW9kZSBvZiBhIHByb2dy YW0sIGFuZCBpcyBsb2NhdGVkIGluIGEgUk9NAiBjaGlwLiAgVGhpcyBzb2Z0d2FyZSBoeWJyaWQg aXMgYWxzbyBjYWxsZWQgk2Zpcm13YXJllC4gIEZ1cnRoZXJtb3JlLCBpbiBvcmRlciB0byBzcGVl ZCB1cCB0aGUgcHJvY2Vzc2luZyBzcGVlZCwgdGhvc2UgaW5zdHJ1Y3Rpb25zIGNhbiBiZSBsaXRl cmFsbHkgk2hhcmR3aXJlZJQgb250byBhIGNoaXAsIGFuIGV4YW1wbGUgYmVpbmcgdGhlIEFwcGxp Y2F0aW9uIFNwZWNpZmljIEludGVncmF0ZWQgQ2lyY3VpdHMCLiAgVGhlIHJlYWRlciBtdXN0IHRo dXMgY29tZSBpbnRvIHRlcm1zIHdpdGggdGhpcyCTc29mdHdhcmUtaXNolCBuYXR1cmUgb2YgdGhl IGhhcmR3YXJlIHN1cnJvdW5kaW5nIGhpbSBhbmQgdG8gaGlzIGFzc2lzdGFuY2UsIGlmIHRoZSBl eHBsYW5hdGlvbiBhbmQgZXhhbXBsZXMgc2V0IGFib3ZlIHdlcmUgbm90IHRvIGhpcyBhY2NlcHRh bmNlLCBhcmUgQXJ0aWNsZSAxKDIpIG9mIHRoZSBTb2Z0d2FyZSBEaXJlY3RpdmUgYW5kIE1hcnMg KFVLKSB2IFRla25vd2xlZGdlIEhpZ2ggQ291cnQsIENoYW5jZXJ5IERpdmlzaW9uLCBKdW5lIDEx LCAxOTk5Ai4NVGhlbiBxdWVzdGlvbiB0aGVuIGlzLCBob3cgY2FuIG9uZSBnYWluIGFjY2VzcyB0 byB0aGlzIGluZm9ybWF0aW9uLCBpLmUuIHRoZSBjb2RlLiAgTWFjaGluZXMsIG5vIG1hdHRlciBo b3cgY29tcGxpY2F0ZWQgdGhleSBiZWNvbWUgb3IgdGhleSBldm9sdmUsIHNhdmUgZm9yIHRoZSBu b3Qgc28gZnJlcXVlbnQgdHJ1bHkgcGlvbmVlcmluZyByZXZvbHV0aW9ucywgYXJlIHNpbXBsZSB0 byB0aGVpciBiYXNpcyBhbmQgb3BlcmF0ZSBpbiBhIGdpdmVuIG1hbm5lci4gIEEgd2lkZWx5IHVu ZGVyc3Rvb2QgZXhhbXBsZSBpcyB0aGUgYXV0b21vYmlsZSwgd2hpY2ggYWZ0ZXIgc28gbWFueSB5 ZWFycyBvZiBldm9sdXRpb24gYW5kIHRoZSB0cmFuc2l0aW9uLCBmb3IgZXhhbXBsZSwgZnJvbSBh IG1heGltdW0gc3BlZWQgb2YgNTAgbXBoIHRvIDI1MCBtcGgsIHN0aWxsIHJlbGllcyBvbiBhIHNo YWZ0IGFuZCBmb3VyIHdoZWVscyBpbiBvcmRlciB0byBvcGVyYXRlIGVmZmVjdGl2ZWx5LiAgU2lt aWxhcmx5LCBpbiBvcmRlciBmb3IgYSBjb21wdXRlciB0byBjb21wcmVoZW5kIHRoZSBpbnN0cnVj dGlvbnMgZ2l2ZW4gdG8gaXQsIHRob3NlIG11c3QgYmUgaW4gTWFjaGluZSBMYW5ndWFnZSB3aGlj aCBkb2VzIG5vdGhpbmcgbW9yZSB0aGF0IHJlZ3VsYXRpbmcgk2VsZWN0cmljaXR5lCBzd2l0Y2hl cywgk0mUIGJlaW5nIGZvciBvbiBhbmQgk0+UIGJlaW5nIGZvciBvZmYsIJNJlHMgYW5kIJNPlHMg YmVpbmcgcmVmZXJyZWQgdG8gYXMgYmluYXJ5IGRpZ2l0cy4gIC4gIFRoZSBxdWVzdGlvbiB0aGVu IHNob3VsZCBiZSBob3cgaXMgaXQgcG9zc2libGUgZm9yIG9uZSB0byBwcm9ncmFtIGEgY29tcHV0 ZXIuICBBbHRob3VnaCBhIHByb2dyYW1tZXIgY2FuIHdyaXRlIGhpcyBwcm9ncmFtIGRpcmVjdGx5 IHRvIE1hY2hpbmUgTGFuZ3VhZ2Ugb3IgYSBMb3ctTGV2ZWwgTGFuZ3VhZ2UCIHRoaXMgaXMgcmFy ZWx5IGhvdyBpdCBpcyB1c3VhbGx5IGRvbmUgbm93YWRheXMsIGZvciBpdCBpcyBleHRyZW1lbHkg ZGlmZmljdWx0IHdpdGhvdXQgYW55IHJlYWwgYWR2YW50YWdlIGZvciBtb3N0IHB1cnBvc2VzIGFz IGNvbXBlbnNhdGlvbi4gICBJbnN0ZWFkIG1vc3QgcHJvZ3JhbW1lcnMgdXNlIEhpZ2gtTGV2ZWwg TGFuZ3VhZ2UgaW4gb3JkZXIgdG8gd3JpdGUgYSBwcm9ncmFtLCBzdWNoIGFzIEJBU0lDLCBQQVND QUwgYW5kIEMsIHRoZSBiZW5lZml0IGJlaW5nIHRoYXQgSGlnaC1MZXZlbCBMYW5ndWFnZXMgIGhh dmUgYSCTY29tcHJlaGVuZGlibGWUIHN0cnVjdHVyZSBiYXNlZCBvbiBhIG1peHR1cmUgb2YgRW5n bGlzaCB3b3JkcyBhbmQgbWF0aGVtYXRpY2FsIGZvcm11bGFzLCBjb250YWluaW5nIGNvbW1hbmRz IHN1Y2ggYXMgk0dPVE+UIGFuZCCTSUYgWD0xMCBUSEVOIEZEMTCUAi4gIE9uY2UgYSBwcm9ncmFt bWVyIGlzIGZpbmlzaGVkIHdpdGggaGlzIHByb2dyYW0gd3JpdHRlbiBpbiBhIGxhbmd1YWdlIG90 aGVyIHRoYW4gTWFjaGluZSBMYW5ndWFnZSwgdGhhdCBwcm9ncmFtbWUgYmVpbmcgY2FsbGVkIHRo ZSCTc291cmNlIGNvZGWULCBoZSB0aGVuIGFzc2VtYmxlcyBpdCwgaW4gdGhlIGNhc2Ugb2YgYSBM b3ctTGV2ZWwgbGFuZ3VhZ2UsIG9yIGNvbXBpbGVzIGl0LCBpbiB0aGUgY2FzZSBvZiBhIEhpZ2gt TGV2ZWwgTGFuZ3VhZ2UsIGkuZS4gdHJhbnNmb3JtcyBpdCwgaW50byCTb2JqZWN0IGNvZGWULCBp LmUuIGEgcHJvZ3JhbSB3cml0dGVuIGluIE1hY2hpbmUgTGFuZ3VhZ2UsIGluIG9yZGVyIGZvciBo aXMgcHJvZ3JhbSB0byBiZSBmdW5jdGlvbmFsLiAgVGhlIG9iamVjdCBjb2RlIGlzIHNhaWQgdG8g YmUgaW4gYmluYXJ5IGZvcm1hdCBmb3IgaXQgaXMgYSBjb21tYW5kIHN0cmluZyBvZiCTSZRzIGFu ZCCTT5RzIGFuZCBpdCBpcyBpbiB0aGlzIGZvcm0gdGhhdCBwcm9ncmFtcyBhcmUgdXN1YWxseSBk aXN0cmlidXRlZCB0byB0aGUgcHVibGljLg1UaGUgdGFzayBvZiBhIHByb2dyYW1tZXIgd3JpdGlu ZyBFbXVsYXRvcnMgaXMgdG8gY3JlYXRlIGEgcHJvZ3JhbSByZXNlbWJsaW5nIHRoZSBmdW5jdGlv bnMgb2YgYSBzeXN0ZW0uICBBY2tub3dsZWRnaW5nIHRoYXQsIG9uZSBhbnRpY2lwYXRlcyB0aGF0 IHRoZSBwcm9ncmFtbWVyIG5lZWRzIHRvIHVuZGVyc3RhbmQgdGhlIG9yaWdpbmFsIHByb2dyYW0g aW4gb3JkZXIgdG8gYmUgYWJsZSB0byB3cml0ZSBoaXMgcHJvZ3JhbS4gIEluIG9yZGVyIHRvIGRv IHRoYXQsIHRoZSBwcm9ncmFtbWVyIG11c3QgaGF2ZSB0aGUgb3JpZ2luYWwgcHJvZ3JhbSBpbiBh IGZvcm1hdCB1bmRlcnN0b29kIGJ5IGhpbSwgaS5lLiBoZSBtdXN0IGhhdmUgdGhlIHNvdXJjZSBj b2RlAi4gIE9idGFpbmluZyB0aGUgc291cmNlIGNvZGUgb2YgYSBwcm9ncmFtIGNhbiBiZSBkb25l IGluIHR3byB3YXlzOyBlaXRoZXIgdGhlIHBlcnNvbiBvciBjb21wYW55IGhvbGRpbmcgdGhlIGNv cHlyaWdodCB0byB0aGUgc29mdHdhcmUgY2FuIHJlbGVhc2UgdGhlIHNvdXJjZSBpbiBvcmRlciB0 byBhc3Npc3QgcHJvZ3JhbW1lcnMgdG8gd3JpdGUgcHJvZ3JhbXMgY29tcGF0aWJsZSB3aXRoIHRo ZWlyIHNvZnR3YXJlLCBhbiBleGFtcGxlIGJlaW5nIE1pY3Jvc29mdCBpbiByZWxhdGlvbiB0byB0 aGUgTWljcm9zb2Z0IERpc2sgT3BlcmF0aW5nIFN5c3RlbQIgYW5kIHRoZSBXaW5kb3dzIE9wZXJh dGluZyBTeXN0ZW2ScyBBcHBsaWNhdGlvbiBQcm9ncmFtbWluZyBJbnRlcmZhY2UCIGFuZCBBVCZU IGluIHJlbGF0aW9uIHRvIHRoZSBVTklYIE9wZXJhdGluZyBTeXN0ZW0sIG9yIGEgcHJvZ3JhbW1l ciB0aHJvdWdoIHRoZSB1c2Ugb2Ygc3VpdGFibGUgaGFyZHdhcmUgYW5kIHNvZnR3YXJlIGNhbiBk ZWNvbXBpbGUgdGhlIG9iamVjdCBjb2RlIGluIG9yZGVyIHRvIG9idGFpbiB0aGUgc291cmNlIGNv ZGUuICBUaG9zZSBhcmUgYWNrbm93bGVkZ2VkIHRlY2huaWNhbCBuZWNlc3NpdGllcyBhbmQgY2Fu bm90IGJlIGNpcmN1bXZlbnRlZCwgdGhlaXIgYXBwbGljYXRpb24gb2YgY291cnNlIGJlaW5nIGZh ciB3aWRlciB0aGFuIGluIHRoZSBjb250ZXh0IG9mIEVtdWxhdG9ycyBvbmx5LiAgRm9yIGV4YW1w bGUsIHRoZSBtZXJlIGZhY3QgdGhhdCBXaW5kb3dzOXggaXMgdGhlIE9wZXJhdGluZyBTeXN0ZW0g d2hpY2ggbW9zdCBjb21wdXRlciB1c2VycyBoYXZlIGluc3RhbGxlZCBpbiB0aGVpciBjb21wdXRl cnMsIHNob3VsZCBwcm92ZSB0byBiZSBhIHJlYXNvbmFibGUgZ3JvdW5kIGFzIHRvIHdoeSBwcm9n cmFtbWVycywgb3RoZXIgdGhhbiB0aGF0IG9mIE1pY3Jvc29mdJJzIG93biwgd2FudCB0byB3cml0 ZSBhcHBsaWNhdGlvbnMgY29tcGF0aWJsZSB3aXRoIFdpbmRvd3MuDQ0rKysrKysrKysNDUFydGlj bGUgNiBvZiB0aGUgU29mdHdhcmUgRGlyZWN0aXZlLCB0aXRsZWQgk0RlY29tcGlsYXRpb26UAiwg aXMgcGVyaGFwcyB0aGUgc2luZ2xlIG1vc3QgaW1wb3J0YW50IHByb3Zpc2lvbiBpbiB0aGUgRGly ZWN0aXZlIHdpdGggcmVnYXJkcyB0byBlbXVsYXRvcnMuICBBcyBpdCBoYXMgYmVlbiBlYXJsaWVy IHN1Ym1pdHRlZCBhcyBhIHRlY2huaWNhbCBmYWN0LCBtb3N0IGVtdWxhdG9ycywgZS5nLiBWR1Ms IGFyZSBkZXBlbmRlZCBvbiB0aGUgc3R1ZHkgb2YgdGhlIG9yaWdpbmFsIHByb2dyYW0sIGFuZCB0 aGlzIHByb2dyYW0sIHNvZnR3YXJlIG9yIGZpcm13YXJlLCBpcyBzdXBwbGllZCBieSBjb21wYW5p ZXMgaW4gb2JqZWN0IGNvZGUgZm9ybS4gIEZ1cnRoZXJtb3JlLCBhZ2FpbiBpbiBhY2NvcmRhbmNl IHdpdGggd2hhdCBoYXMgYmVlbiBwcmV2aW91c2x5IGNvbnRlc3RlZCB1bmRlciB0aGUgZ2VuZXJh bCBsYXcgcHJpbmNpcGxlcywgZm9yIGEgc29mdHdhcmUtYmFzZWQgZW11bGF0b3ICLCBzdWNoIGFz IGFsbCB0aGUgVmlkZW9nYW1lIEVtdWxhdG9ycywgdG8gYmUgYSBkaXJlY3QgY29weSBvZiBhbGwg dGhlIGluc3RydWN0aW9ucyBjb21wcmlzaW5nIGEgY29weXJpZ2h0ZWQgcHJvZ3JhbSB3b3VsZCBi ZSBpbiB2aW9sYXRpb24gb2YgY29weXJpZ2h0LiAgR2l2ZW4gdGhlIGNvbnNpZGVyYXRpb25zIGFi b3ZlLCBFbXVsYXRvciBwcm9ncmFtbWVycyBhcmUgb3B0aW5nIGZvciB0aGUgZXhlcmNpc2Ugb2Yg cmV2ZXJzZSBlbmdpbmVlcmluZwIgd2hpY2ggZW5hYmxlcyB0byByZXByb2R1Y2UgdGhlIGZ1bmN0 aW9uYWwgZWxlbWVudHMgb2YgYSBwcm9ncmFtLCB3aGlsZSBhdCB0aGUgc2FtZSB0aW1lIG5vdCBp bmZyaW5naW5nIHRoZSBjb3B5cmlnaHQgb2YgdGhlIHByb2dyYW0sIGlmIG9mIGNvdXJzZSB0aGV5 IG1hbmFnZSB0byCTcmV2ZXJzZSBlbmdpbmVlcpQgc3VjY2Vzc2Z1bGx5LiANVGhlcmUgYXJlIG1h bnkgd2F5cyBmb3IgcmV2ZXJzZSBlbmdpbmVlcmluZyB0byBiZSBjb25kdWN0ZWQsIGluY2x1ZGlu ZwI6IA0NcmVhZGluZyBhYm91dCB0aGUgcHJvZ3JhbSANb2JzZXJ2aW5nIHRoZSBwcm9ncmFtIGlu IG9wZXJhdGlvbiBieSB1c2luZyBpdCBvbiBhIGNvbXB1dGVyIA1wZXJmb3JtaW5nIGEgc3RhdGlj IGV4YW1pbmF0aW9uIG9mIHRoZSBpbmRpdmlkdWFsIGNvbXB1dGVyIGluc3RydWN0aW9ucyBjb250 YWluZWQgd2l0aGluIHRoZSBwcm9ncmFtDXBlcmZvcm1pbmcgYSBkeW5hbWljIGV4YW1pbmF0aW9u IG9mIHRoZSBpbmRpdmlkdWFsIGNvbXB1dGVyIGluc3RydWN0aW9ucyBhcyB0aGUgcHJvZ3JhbSBp cyBiZWluZyBydW4gb24gYSAgY29tcHV0ZXIgDQ0NSW4gZWZmZWN0LCBvYnNlcnZhdGlvbiAoYikg YW5kIGV4YW1pbmF0aW9uIChjIGFuZCBkKSwgYWxsIG9mIHdoaWNoIG1lYW4gdGhhdCBwYXJ0cyBv ciB0aGUgd2hvbGUgb2YgYW4gb3JpZ2luYWwgcHJvZ3JhbSB3aWxsIGhhdmUgdG8gYmUgdGVtcG9y YXJpbHkgcmVwcm9kdWNlZCBpbnRvIGEgY29tcHV0ZXKScyBSYW5kb20gQWNjZXNzIE1lbW9yeQIs IGFyZSBtb3JlIHVzZWZ1bCBpbiB1bmRlcnN0YW5kaW5nIGEgcHJvZ3JhbSBhbmQgZXhhbWluYXRp b24gKGMgYW5kIGQpLCBtZWFuaW5nIHRoYXQgdGhlIG9iamVjdCBjb2RlIHdpbGwgaGF2ZSB0byBi ZSBkZWNvbXBpbGVkIGluIGFkZGl0aW9uLCBpcyBldmVuIG1vcmUgdXNlZnVsIGFuZCB0aHVzIHBy ZWZlcnJlZAIuICBBcyB0aGUgcmVhZGVyIG11c3QgaGF2ZSB1bmRlcnN0b29kIGJ5IG5vdywgdGhp cyBpcyB0aGUgZXhhY3QgcG9pbnQgd2hlcmUgQXJ0aWNsZSA2IGJlY29tZXMgcmVsZXZhbnQuDUFj Y29yZGluZyB0byBBcnRpY2xlIDYoMSksIJN0aGUgYXV0aG9yaXphdGlvbiBvZiB0aGUgcmlnaHRo b2xkZXIgc2hhbGwgbm90IGJlIHJlcXVpcmVkIHdoZXJlIHJlcHJvZHVjdGlvbiBvZiB0aGUgY29k ZSBhbmQgdHJhbnNsYXRpb24gb2YgaXRzIGZvcm0gd2l0aGluIHRoZSBtZWFuaW5nIG9mIEFydGlj bGUgNCAoYSkgYW5kIChiKSBhcmUgaW5kaXNwZW5zYWJsZSB0byBvYnRhaW4gdGhlIGluZm9ybWF0 aW9uIG5lY2Vzc2FyeSB0byBhY2hpZXZlIHRoZSBpbnRlcm9wZXJhYmlsaXR5IG9mIGFuIGluZGVw ZW5kZW50bHkgY3JlYXRlZCBjb21wdXRlciBwcm9ncmFtIHdpdGggb3RoZXIgcHJvZ3JhbXOULiAg U3VyZWx5LCB0aGlzIHByb3Zpc2lvbiBwb3NlcyBubyBwcm9ibGVtcyBmb3IgaXQgZGVzY3JpYmVz IHRoZSB2ZXJ5IG5hdHVyZSBvZiBlbXVsYXRvcnMgd2hpY2ggaXMgdG8gYWNoaWV2ZSBpbnRlcm9w ZXJhYmlsaXR5IGJldHdlZW4gYSBnYW1lIGNvbnNvbGUsIGZvciBleGFtcGxlLCBhbmQgaXRzIHNv ZnR3YXJlIHdpdGggYSBjb21wdXRlciBPcGVyYXRpbmcgU3lzdGVtLCBzdWNoIGFzIFdpbmRvd3M5 eCwgTElOVVggYW5kIE1hY2ludG9zaCBPUzcuICBUaGlzIHJpZ2h0IGhvd2V2ZXIsIG9yIGJldHRl ciBzYXkgZXhjbHVzaW9uIGZyb20gcmVzdHJpY3RlZCBhY3RzLCBnb2VzIGFzIGZhciBhcyBvYnRh aW5pbmcgaW5mb3JtYXRpb24gaW4gcmVsYXRpb24gdG8gdGhlIFRlY2huaWNhbCBJbnRlcmZhY2Ug YW5kIGlzIHN1YmplY3RlZCB0byBmdWxmaWxtZW50IG9mIHNvbWUgZnVydGhlciBjb25kaXRpb25z Lg1BcnRpY2xlIDYoMSkoYSkgc3RhdGVzIHRoYXQgdGhlc2UgYWN0cywgaS5lLiByZXByb2R1Y3Rp b24gYW5kIHRyYW5zbGF0aW9uIG11c3QgYmUgk3BlcmZvcm1lZCBieSB0aGUgbGljZW5zZWUgb3Ig YnkgYW5vdGhlciBwZXJzb24gaGF2aW5nIGEgcmlnaHQgdG8gdXNlIGEgY29weSBvZiBhIHByb2dy YW0sIG9yIG9uIHRoZWlyIGJlaGFsZiBieSBhIHBlcnNvbiBhdXRob3JpemVkIHRvIGRvIHNvlC4g IEFnYWluLCB0aGlzIGlzIG5vdCBvZiBpbW1lZGlhdGUgcmVsZXZhbmNlIHRvIGVtdWxhdG9ycyBi ZWNhdXNlIG1vc3QgcHJvZ3JhbW1lcnMgZWl0aGVyIG93biB0aGUgaGFyZHdhcmUgb3IgZ2l2ZW4g dGhlIGhhcmR3YXJlIGJ5IG93bmVycyBmb3IgdGhhdCBwYXJ0aWN1bGFyIHJlYXNvbi4gIE9uZSBo b3dldmVyIHNob3VsZCBub3RlIHRoZSBmb2xsb3dpbmcgZXhhbXBsZTsgQ29ubmVjdGl4LCBpbiBT b255IHYgQ29ubmVjdGl4LCBjb250ZXN0ZWQgdGhhdCBhdCBhbiBlYXJseSBzdGFnZSBvZiB0aGVp ciBlZmZvcnQgdGhleSBkb3dubG9hZGVkIGFuIEltYWdlIG9mIHRoZSBQYXBpbGxvbiBjaGlwLCB0 aGUgbmFtZSBvZiB0aGUgUGxheXN0YXRpb24gKFBTWCkgQklPUywgZm9ybSB0aGUgSW50ZXJuZXQu ICBIYWQgdGhleSBiYXNlZCB0aGVpciBzdHVkeSB1cG9uIHRoaXMgY29weSwgdGhleSB3b3VsZCBo YXZlIGJlZW4gb3V0c2lkZSB0aGUgc2NvcGUgb2YgQXJ0aWNsZSA2LiAgRm9yIHRoZWlyIGdvb2Qg Zm9ydHVuZSwgdGhlIEltYWdlIHR1cm5lZCBvdXQgdG8gYmUgZm9ybSBhIEphcGFuZXNlIFBsYXlz dGF0aW9uIGFuZCB3YXMgdGh1cyB1c2VsZXNzIHRvIHRoZW07IHRoZSBuZXh0IGRheSB0aGV5IGJv dWdodCBhIGNvbnNvbGUsIHRodXMgYmVjb21pbmcgcmlnaHRmdWwgdXNlcnMuICBBcnRpY2xlIDYo MSkoYykgc2VydmVzIGFzIGEgcmVtaW5kZXIsIHN0YXRpbmcgdGhhdCCTdGhlc2UgYWN0cyBhcmUg Y29uZmluZWQgdG8gdGhlIHBhcnRzIG9mIHRoZSBvcmlnaW5hbCBwcm9ncmFtIHdoaWNoIGFyZSBu ZWNlc3NhcnkgdG8gYWNoaWV2ZSBpbnRlcm9wZXJhYmlsaXR5lC4NSGF2aW5nIG9idGFpbmVkIGJ5 IGRlY29tcGlsYXRpb24gdGhlIG5lY2Vzc2FyeSBmdW5kYW1lbnRhbCBpbmZvcm1hdGlvbiwgYW4g ZW11bGF0b3IgcHJvZ3JhbW1lciB0aGVuIHJldmVyc2UgZW5naW5lZXJzLCBpLmUuIHJlY29uc3Ry dWN0cyBpbiBhIGRpZmZlcmVudCBtYW5uZXIsIHRoZSBiYXNpYyBza2VsZXRvbiBvZiBoaXMgRW11 bGF0b3IgdGhhdCBiZWhhdmVzIGluIGEgc2ltaWxhciBtYW5uZXIgd2l0aCB0aGUgb3JpZ2luYWwg c3lzdGVtLiAgVGhlIHRyYW5zaXRpb24gZnJvbSB0aGUgc2tlbGV0YWwgcHJvZ3JhbSB0byB0aGUg ZmluYWwgcHJvZ3JhbSBpcyBkb25lIGJ5IGxvYWRpbmcgYXBwcm9wcmlhdGUgZm9yIHRoZSBlbXVs YXRvciBzb2Z0d2FyZSBpbiBoaXMgRW11bGF0b3IsIGUuZy4gYSBORVMgZ2FtZSBmb3IgYSBORVMg ZW11bGF0b3IsIGFuZCB0aGVuIHN0dWR5aW5nIHRoZSBFbXVsYXRvcpJzIGJlaGF2aW91ciwgbWFp bmx5IHJlbHlpbmcgb24gdGhlIHZpc3VhbCBkaXNwbGF5IG9mIGhpcyBtb25pdG9yIGFuZCBzb21l IGdlbmVyYWwgcHJpbmNpcGxlcyBvZiBwcm9ncmFtbWluZy4gIFNpbmNlIGNyZWF0aW5nIGFuIEVt dWxhdG9yIGhhcyBhcyBhIHByZXJlcXVpc2l0ZSB0aGF0IG9uZSBrbm93cyB0aGUgYmVoYXZpb3Vy IG9mIHRoZSBzeXN0ZW2ScyBzb2Z0d2FyZSBpbiB0aGUgZmlyc3QgcGxhY2UsIG9uZSB1bmRlcnN0 YW5kcyB0aGF0IGhpcyBlbXVsYXRvciBoYXMgYW4gZXJyb3IsIHJlZmVycmVkIHRvIGFzIGJ1Zywg d2hlbiBmb3IgZXhhbXBsZSBoZSByZWNlaXZlcyBhIGJsdWUgYmFja2dyb3VuZCBjb2xvdXIgb24g YSBnYW1lIHRoYXQgaGUga25vd3MgdGhhdCBpdCB3YXMgbWVhbnQgdG8gYmUgZ3JlZW4uICBIZSB0 aGVuIHRyaWVzIHRvIJNkZWJ1Z5QgaGlzIEVtdWxhdG9yIHVudGlsIHRoZSBwaWN0dXJlIGluIGhp cyBtb25pdG9yIGxvb2tzIGV4YWN0bHkgdGhlIHNhbWUgYXMgaXQgbG9va3MgaW4gdGhlIG9yaWdp bmFsIGhhcmR3YXJlLiAgSWYgYW4gRW11bGF0b3IgcGVyZm9ybXMgY29ycmVjdCB3aXRoIG9uZSBz b2Z0d2FyZSwgaXQgd2lsbCBwZXJmb3JtIGNvcnJlY3Qgd2l0aCBhbGwgdGhlIHNvZnR3YXJlIGRl c2lnbmVkIGZvciB0aGF0IHBhcnRpY3VsYXIgc3lzdGVtAi4gIFRoaXMgcHJvY2VzcyBjYW5ub3Qg YmUgZGVlbWVkIHRvIGluZnJpbmdlIGNvcHlyaWdodCBmb3IgdGhlIHJlc3VsdCBwdXJzdWVkIG1h eWJlIHRoZSBzYW1lLCBpLmUuIHRoZSBzYW1lIHJlc3BvbnNlLCBidXQgdGhlIHByb2Nlc3MsIGFu ZCB0aHVzIHRoZSBleHByZXNzaW9uLCBpcyBkaWZmZXJlbnQuICBPbmUgd291bGQgaGFyZGx5IGFj Y2VwdCB0aGF0IGEgY2FyIGZvciBleGFtcGxlIGlzIGEglGNvcHmUIG9mIGFub3RoZXIgY2FyLCBz aW1wbHkgYmVjYXVzZSBib3RoIGNhcnMgY2FuIGRyaXZlIGF0IHRoZSBzYW1lIHNwZWVkIHdpdGgg dGhlIHNhbWUgZnVlbCBjb25zdW1wdGlvbi4gIFN1Y2ggYSB0ZWNobmlxdWUgc2VlbXMgdG8gYmUg Y29tcGF0aWJsZSB3aXRoIEFydGljbGUgNigyKSB3aGljaCBkZWFscyB3aXRoIGVmZmVjdGl2ZSBj b25kaXRpb25zIG9uIHRoZSByZXN1bHRpbmcgcHJvZ3JhbSwgaS5lLiB0aGUgRW11bGF0b3IuICBB IHByb2dyYW1tZXIgbWF5IG5vdCB1c2UgdGhlIGluZm9ybWF0aW9uIG9idGFpbmVkIGZvciBwdXJw b3NlcyBvdGhlciB0aGFuIHRvIGFjaGlldmUgdGhlIGludGVyb3BlcmFiaWxpdHkgb2YgaGlzIEVt dWxhdG9yAiwgbm9yIHBhc3MgdGhpcyBpbmZvcm1hdGlvbiB0byBvdGhlcnMgYnV0IGZvciB3aGVy ZSBpdCBpcyBuZWNlc3NhcnkgZm9yIHRoZSBpbnRlcm9wZXJhYmlsaXR5IG9mIGhpcyBwcm9ncmFt Ai4gIEVtdWxhdG9ycyB0aGF0IGFyZSBub3Qgb3BlbiBzb3VyY2UsIHN1Y2ggYXMgdGhlIFVsdHJh SExFLCBWR1MgYW5kIHVwIHVudGlsIHJlY2VudGx5IFJBSU5FAiwgYXJlIG5vdCBkaXN0cmlidXRp bmcgYW55IGluZm9ybWF0aW9uIHdoaWxlIG9wZW4gc291cmNlIGVtdWxhdG9ycywgc3VjaCBhcyBN QU1FIGFuZCBDYWxsdXMCLCBzZXJ2ZSBhcyBwcm92aWRpbmcgaW5mb3JtYXRpb24gbmVjZXNzYXJ5 IHRvIGFjaGlldmUgaW50ZXJvcGVyYWJpbGl0eSBiZXR3ZWVuIGluZGVwZW5kZW50bHkgY3JlYXRl ZCBwcm9ncmFtcywgaS5lLiBFbXVsYXRvcnMuICBBY2NvcmRpbmdseQIsIHRoZSByZXN1bHRpbmcg cHJvZ3JhbSwgaS5lLiB0aGUgRW11bGF0b3IsIG11c3Qgbm90IGluZnJpbmdlIHRoZSBjb3B5cmln aHQgb2YgdGhlIG9yaWdpbmFsIHByb2dyYW0sIGkuZS4gaW5jbHVkZSBwb3J0aW9ucyBvZiBvcmln aW5hbCBjb2RlIG5vdCByZWxhdGluZyB0byB0aGUgaW50ZXJmYWNlLCBpZiB0aGlzIGNvZGUgaXMg cHJvdGVjdGVkIGJ5IGNvcHlyaWdodC4gIFRoZSBzYW1lIG9mIGNvdXJzZSB3b3VsZCBhcHBseSBm b3IgdHJhbnNsYXRlZCBjb2RlIGV0Yy4NDSsrKysrKysrDQ1JSS40ICBBbiBhbHRlcm5hdGl2ZSB2 aWV3IHRvIEVtdWxhdGlvbg0NDUFzIHdlIGhhdmUgc2VlbiBpbiB0aGUgcHJldmlvdXMgQ2hhcHRl ciwgdGhlIHByb2dyYW1taW5nIG9mIGFuIEVtdWxhdG9yIGNhbiBiZSBiYXNlZCBvbiBvYnRhaW5p bmcgdGhlIG5lY2Vzc2FyeSBpbmZvcm1hdGlvbiBieSBkZWNvbXBpbGluZyB0aGUgk3Byb2dyYW2U IG9mIHRoZSBvcmlnaW5hbCBzeXN0ZW0uICBUaGlzIGRvZXMgbm90IG1lYW4gaG93ZXZlciB0aGF0 IHRoaXMgaXMgdGhlIG9ubHkgd2F5IHRoYXQgYW4gRW11bGF0b3IgY2FuIGJlIHByb2dyYW1tZWQs IGFuZCBpbiBmYWN0IHRoZSB2aWV3cyBvZiBlbXVsYXRvciBwcm9ncmFtbWVycyBhbmQgcmVzcGVj dGVkIHdlYi1tYXN0ZXJzAiBhcmUgY29udHJhc3RlZCBhcyB0byB3aGljaCB0ZWNobmlxdWVzIGFy ZSBtb3JlIGZyZXF1ZW50bHkgdXNlZC4gIFRoaXMga2luZCBvZiBkaXN0aW5jdGlvbiBob3dldmVy IHdhcyBkZWxpYmVyYXRlIG9uIG91ciBiZWhhbGYgZm9yIGl0IGZhY2lsaXRhdGVzIHRoZSBsZWdh bCBhbmFseXNpcyBvZiBFbXVsYXRvcnMuICBUaGUgYWx0ZXJuYXRpdmUgdGVjaG5pcXVlIHRoYXQg d2Ugc2hhbGwgbm93IGVsYWJvcmF0ZSB1cG9uIGlzIJNkb2N1bWVudC1iYXNlZJQgYW5kIGl0IGRv ZXMgbm90IG5lY2Vzc2FyaWx5IHJlcXVpcmUgdGhlIGRlY29tcGlsYXRpb24gb2YgYSBwcm9ncmFt Ai4NQXMgd2UgaGF2ZSBwcmV2aW91c2x5IGRpc2N1c3NlZCwgdGhlIHByb2dyYW0gY29udGFpbmVk IGluIHRoZSBoYXJkd2FyZSBpcyBkZWNvbXBpbGVkIGluIG9yZGVyIHRvIG9idGFpbiBpbmZvcm1h dGlvbi4gIFdoYXQgaGFwcGVucyB0aG91Z2ggd2hlbiB0aGUgbmVlZGVkIGluZm9ybWF0aW9uIGFy ZSBhbHJlYWR5IGtub3duIG9yIGNhbiBiZSBvYnRhaW5lZCBzb21laG93PyAgSXQgaXMgYWZ0ZXIg YWxsIHRydWUgdGhhdCBpZiB5b3UgaGF2ZSB0aGUgbmVlZGVkIGluZm9ybWF0aW9uIGluIHBhcGVy LCB5b3UgY2FuIHNpbXBseSBwcm9ncmFtIHlvdXIgY29tcHV0ZXIgdG8gYmVoYXZlIGluIGEgZ2l2 ZW4gbWFubmVyLiAgSWYgYSBwcm9ncmFtbWVyIGtub3dzIHRoYXQgQ1BVIEEsIHdoZW4gY29ubmVj dGVkIHdpdGggcGluIFggaW4gdGhlIGdpdmVuIG1hbm4AZQByACAAlAMgAHAAZQByAGYAbwByAG0A cwAgAKgDLAAgAGgAZQAgAGMAYQBuACAAdgBpAHIAdAB1AGEAbABsAHkAIAByAGUAYwByAGUAYQB0 AGUAIAB0AGgAZQAgAHcAaABvAGwAZQAgAHAAcgBvAGMAZQBzAHMAIABvAGYAIABhACAAcwB5AHMA dABlAG0AIABpAG4AIABwAHIAbwBnAHIAYQBtAC4AIAANAFUAbgBmAG8AcgB0AHUAbgBhAHQAZQBs AHkALAAgAGkAdAAgAGgAYQBzACAAYgBlAGUAbgAgAHMAdQBiAG0AaQB0AHQAZQBkACAAdABvACAA bQBlACAAYgB5ACAAbQBhAG4AeQAgAHAAcgBvAGcAcgBhAG0AbQBlAHIAcwAgAHQAaABhAHQAIAB0 AGgAZQAgAG0AZQB0AGgAbwBkACAAdQBzAGUAZAAsACAAaQAuAGUALgAgAGQAZQBjAG8AbQBwAGkA bABhAHQAaQBvAG4AIABvAHIAIABkAG8AYwB1AG0AZQBuAHQAYQB0AGkAbwBuACwAIABpAHMAIABv AGYAdABlAG4AIABhACAAbQBhAHQAdABlAHIAIABvAGYAIABwAHIAZQBmAGUAcgBhAGIAbABlACAA cwB0AHkAbABlACAAYQBuAGQAIABuAG8AdAAgAG8AZiBhdmFpbGFiaWxpdHkgb2YgbWVhbnMuICBU aGlzIGNob2ljZSBob3dldmVyIHdoZW4gaW5mb3JtYXRpb24gYXJlIGF2YWlsYWJsZSwgaXMgbm90 IGFuIGFkdmlzYWJsZSBhY3QgYXMgd2Ugc2hhbGwgc29vbiBzZWUuDQ1Db25zaWRlciB0aGUgZm9s bG93aW5nIHR3byBzaXR1YXRpb25zOiAgDQ1UaGUgY29tcHJpc2luZyBwYXJ0cyBvZiBhIHN5c3Rl bSBhcmUgYWxsIGdlbmVyaWMgY29tcG9uZW50cyBzdWNoIGFzIHRoZSBNb3Rvcm9sYZJzIE02ODAw MCwgSGl0YWNoaZJzIFNILTIgYW5kIFppbG9nknMgWjgwIENQVXMsIGFuZCB0aHVzIHRoZWlyIGZ1 bmN0aW9ucyBhcmUgY29uc2lkZXJlZCBhcyBjb21tb24ga25vd2xlZGdlLiAgVGhlIFNlcnZpY2Ug TWFudWFsLCBjb250YWluaW5nIHNjaGVtYXRpYyBkaWFncmFtcyBhbmQgb3RoZXIgaW1wb3J0YW50 IGluZm9ybWF0aW9uIHJlZ2FyZGluZyB0aGUgY29uZmlndXJhdGlvbiBvZiB0aGUgcGFydGljdWxh ciBzeXN0ZW0gY2FuIGFsc28gYmUgb2J0YWluZWQgYnkgbGVnYWwgbWVhbnMuDSBUaGUgY29tcG9u ZW50cyBvZiB0aGUgc3lzdGVtIGFyZSBwcm9wcmlldGFyeSBhbmQgdGh1cyB0aGVpciBmdW5jdGlv biBpcyBub3QgY29tbW9uIGtub3dsZWRnZSBidXQgaW5mb3JtYXRpb24gY2FuIGJlIG9idGFpbmVk IGxlZ2FsbHkgYnkgcHVyY2hhc2luZyB0aGUgUHJvZ3JhbW1lcpJzIE1hbnVhbCB3aGljaCBjb250 YWlucyBldmVyeSBkZXRhaWwgcmVnYXJkaW5nIHRoZSBzeXN0ZW0sIGJlIGl0IGZ1bmN0aW9ucyBv ciBjb25maWd1cmF0aW9uLg1Tb21lIHN5c3RlbXMsIGVzcGVjaWFsbHkgb2xkIEFyY2FkZSBjYWJp bmV0cywgdXNlIGdlbmVyaWMgY29tcG9uZW50cyB3aWRlbHkgYXZhaWxhYmxlIGluIHRoZSBtYXJr ZXQuIFNpbmNlIG9mIGNvdXJzZSB0aG9zZSBjb21wb25lbnRzIGFyZSBub3QgcHJvcHJpZXRhcnks IGkuZS4gY3VzdG9tIG1hZGUsIGl0IGlzIHRvIHRoZSBiZXN0IGludGVyZXN0IG9mIHRoZSBtYW51 ZmFjdHVyZXIgdG8gbWFrZSB0aGUgc3BlY2lmaWNhdGlvbnMgb2YgdGhlaXIgcHJvZHVjdHMgYXZh aWxhYmxlAiwgaW4gb3JkZXIgdG8gcHJvbW90ZSB0aGVpciBzYWxlcy4gVGhlIGJlaGF2aW91ciBv ZiB0aG9zZSBjb21wb25lbnRzIHdpbGwgdGhlbiBkZXBlbmQgdXBvbiB0aGVpciBjb25maWd1cmF0 aW9uIG9uIHRoZSBib2FyZCwgdGhlIGFuYWx5c2lzIG9mIHdoaWNoIGlzIHByb3ZpZGVkIGJ5IHRo ZSBzY2hlbWF0aWNzLiBNb3N0IG9mIHRoZSBvbGQgQXJjYWRlIGNhYmluZXRzIHdlcmUgc3VwcGxp ZWQgd2l0aCBzdWNoIFNlcnZpY2UgTWFudWFscy4gSGF2aW5nIGtub3dsZWRnZSBvZiBib3RoIGZ1 bmN0aW9uIGFuZCBjb25maWd1cmF0aW9uIGlzIGFsbCB0aGUgaW5mb3JtYXRpb24gYSBwcm9ncmFt bWVyIG5lZWRzLiAgU2ltaWxhciBpcyB0aGUgc2l0dWF0aW9uIHdpdGggcHJvcHJpZXRhcnkgY29t cG9uZW50cywgbW9zdCBjb21tb24gaW4gZ2FtZSBjb25zb2xlcywgYnV0IGZvciBvbmUgZGlmZmVy ZW5jZS4gIEEgY3VzdG9tLW1hZGUgY2hpcCwgYXMgdGhlIHdvcmQgZGVmaW5lcyBpdCwgaXMgbWFu dWZhY3R1cmVkIGZvciBhIHNwZWNpZmljIHB1cnBvc2UgYW5kIHRodXMgaXQgaXMgbm90IHRvIHRo ZSBiZXN0IGludGVyZXN0IG9mIGEgY29tcGFueSB0byBtYWtlIHRoaXMgaW5mb3JtYXRpb24gYXZh aWxhYmxlIHRvIHRoZSBwdWJsaWMsIHNpbmNlIHRoZXkgYXJlIG5vdCBmb3Igc2FsZS4gIEluIHNv bWUgaW5zdGFuY2VzIGhvd2V2ZXIsIHN1Y2ggaW5mb3JtYXRpb24gaGF2ZSBiZWVuIG1hZGUgYXZh aWxhYmxlIGFzIGluIHRoZSBjYXNlIG9mIHRoZSBBdGFyaSAyNjAwIGNvbnNvbGUgYW5kIGEgY2Fy dHJpZGdlIGNhbGxlZCCTTWFnaWNhcmSULCB3aGljaCBhbGxvd2VkIG9uZSB0byBwcm9ncmFtIHRo ZSAyNjAwLiBUaGUgTWFnaWNhcmQgY2FtZSB3aXRoIGFuIGV4dGVuc2l2ZSBwcm9ncmFtbWluZyBt YW51YWwgZm9yIHRoZSAyNjAwIGNvbnNvbGUsIHdoaWNoIHByb3ZlcyB0byBiZSB1c2VmdWwgYWxz byB3aXRoIHRoZSBBdGFyaSA1MjAwIGNvbnNvbGUgZHVlIHRvIHRoZSBzaW1pbGFyaXRpZXMgYmV0 d2VlbiB0aGUgdHdvIHN5c3RlbXMCLiAgVGhlcmUgaXMgaG93ZXZlciBhIGxlZ2FsIGltcGxpY2F0 aW9uIHRvIGFkZHJlc3MgaGVyZSwgYXMgSSBmb3JlY2xvc2VkIGVhcmxpZXIuDQ0NAiBCYXNpYyBJ bi9PdXQgU3lzdGVtDQIgUmVhZC1Pbmx5IE1lbW9yeS4gIER1ZSB0aGUgZGV2ZWxvcG1lbnQgb2Yg dGVjaG5vbG9neSwgUFJPTSAoUHJvZ3JhbW1hYmxlIFJPTSkgYW5kIEVFUFJPTSAoRWxlY3RyaWNh bGx5IEVyYXNhYmxlIFByb2dyYW1tYWJsZSBST00pLCBhbHNvIGtub3duIGFzIEZMQVNIIEJJT1Ms IGlzIG5vdyBhbHNvIGF2YWlsYWJsZSANAiBBU0lDcyANAiBUaGUgRGlyZWN0aXZlIHByb3ZpZGVz IHRoYXQgaXQgYXBwbGllcyB0byBjb21wdXRlciBwcm9ncmFtcyByZWdhcmRsZXNzIG9mIGZvcm0s IFJlY2l0YWwgNyBzcGVjaWZpY2FsbHkgbWVudGlvbmluZyCTaW4gaGFyZHdhcmUgZm9ybZQsIHdo aWxlIE1hcnMgdiBUZWNrbm93bGVkZ2UgcmFpc2VzIHRoZSBpc3N1ZSBvZiB2aW9sYXRpb24gb2Yg Y29weXJpZ2h0IHdpdGggcmVzcGVjdCB0byBhbiBFRVBST00uICBBbHRob3VnaCwgbmVpdGhlciBv ZiB0aGUgdHdvIHByb3ZpZGVzIHdpdGggYSBsaXRlcmFsIGFuc3dlciBhcyB0byB3aGV0aGVyIHNv ZnR3YXJlIGNhbiBjb21lIGluIHRoZSBtZWRpdW0gb2YgaGFyZHdhcmUsIG9uZSBjYW4gbG9naWNh bGx5IGRlZHVjdCB0aGlzIGNvbmNsdXNpb24gYmV5b25kIGRvdWJ0LiAgIA0CIEEgTG93LUxldmVs IExhbmd1YWdlIHJlc2VtYmxlcyBNYWNoaW5lIExhbmd1YWdlIGEgbG90OyBlYWNoIGluc3RydWN0 aW9uIGhhcyBhIGRpcmVjdCBlcXVpdmFsZW50IGluIE1hY2hpbmUgTGFuZ3VhZ2UuICBNb3N0IG9s ZCBhcmNhZGUgY2FiaW5ldHMgYW5kIGZpcm13YXJlIGFyZSB3cml0dGVuIGluIExvdy1MZXZlbCBM YW5ndWFnZSBidXQgdGhpcyBpcyBvZiBubyBzaWduaWZpY2FudCBpbXBvcnRhbmNlLg0CIFRoZSBm aXJzdCBjb21tYW5kIGlzIGluIEJBU0lDIHdoaWxlIHRoZSBzZWNvbmQgb25lIGlzIGluIExPR08u ICBUaG9zZSBhcmUgb2YgdGhlIHZlcnkgZmV3IGNvbW1hbmRzIHRoYXQgSSBjYW4gcmVtZW1iZXIg ZnJvbSBteSB5ZWFycyBhcyBhbiBlbGVtZW50YXJ5IHB1cGlsLiAgQSBjb21tYW5kIGluIGEgSGln aC1MZXZlbCBMYW5ndWFnZSBtYXkgY29ycmVzcG9uZCB0byBtb3JlIHRoYW4gb25lIGluc3RydWN0 aW9ucyBpbiBNYWNoaW5lIExhbmd1YWdlLg0CIFRob3VnaHQgdGhpcyBpcyB0aGUgY2FzZSBmb3Ig bW9zdCBFbXVsYXRvcnMsIHRoZXJlIGFyZSBhbHNvIGFsdGVybmF0aXZlIHdheXMgb2YgcHJvZHVj aW5nIGFuIGVtdWxhdG9yIGV4YW1pbmVkIGxhdGVyLiBGb3IgZXhhbXBsZSwgYWNjb3JkaW5nIHRv IFRvbnkgU21pdGggQCBodHRwOi8vbWFjd2Vlay56ZG5ldC5jb20vMjAwMC8wMi8yMC8gMDIyMW13 cmVnaXN0ZXIuaHRtbCwgk0luIGRldmVsb3BpbmcgaXRzIEVtdWxhdG9yLCBCbGVlbSEgdHJlYXRl ZCB0aGUgUGxheVN0YXRpb24gYXMgYSBibGFjayBib3gsIHNpbXBseSByZXByb2R1Y2luZyB3aGF0 IHRoZSBtYWNoaW5lIGRvZXMgaW4gcmVzcG9uc2UgdG8gYSBnaXZlbiBpbnN0cnVjdGlvbiBpbiBh IGdhbWUncyBwcm9ncmFtIGNvZGUuIElmIGluc3RydWN0aW9uIEEgcHV0cyBhIHJlZCBkb3Qgb24g dGhlIHNjcmVlbiwgdGhlbiBhbGwgQmxlZW0hIGhhcyB0byBkbyBpcyBwdXQgYSByZWQgZG90IG9u IHRoZSBzY3JlZW4gd2hlbmV2ZXIgaXQgZW5jb3VudGVycyBpbnN0cnVjdGlvbiBBLS1ob3cgaXQg ZG9lcyB0aGF0IGlzIGlycmVsZXZhbnSULiAgQWx0aG91Z2ggaXQgaXMga25vd24gdG8gdGhlIGF1 dGhvciB0aGF0IHRoZSBQbGF5c3RhdGlvbiBCSU9TIHdhcyBub3QgZGVjb21waWxlZCBvciB1c2Vk IGJ5IEJsZWVtIExMQyBpbiBjb25uZWN0aW9uIHdpdGggQmxlZW0hLCBhIGZhY3QgdGhhdCBTb255 IGhhcyBhZG1pdHRlZCwgaGUgY2Fubm90IGNvbW1lbnQgZnVydGhlciBvbiB0aGUgdGVjaG5pY2Fs IG1lcml0cyBvZiB0aGlzIHR5cGUgb2YgZW11bGF0aW9uIHByb2dyYW1taW5nLCBmb3IgQmxlZW0h IGFuZCBLR2VuLCBhIFNlZ2EgR2VuZXNpcy9NZWdhZHJpdmUgRW11bGF0b3IgYnkgU3RldmUgU25h a2UsIGFyZSB0aGUgb25seSBFbXVsYXRvcnMgdG8gdGFrZSB0aGlzIGFwcHJvYWNoIHRvIHRoZSBi ZXN0IG9mIGhpcyBrbm93bGVkZ2UuIFRodXMsIHRoZXJlIGFyZSBub3Qgc3VmZmljaWVudCBpbmZv cm1hdGlvbiBpbiBvcmRlciBmb3IgaGltIHRvIHVuZGVyc3RhbmQgb3IgZXhwbGFpbiB0aGUgcHJv Y2VzcyBhbmQgdGVjaG5pcXVlcyBpbnZvbHZlZCBvbiB0aGlzIHBhcnRpY3VsYXIgdHlwZSBvZiBl bXVsYXRpb24uICBJdCBpcyB3b3J0aCBub3RpbmcgdGhhdCBCbGVlbSBoYXMgbm90IHJlc3BvbmRl ZCB0byB0aGUgYXV0aG9ycyBpbnF1aXJlcy4gIEluIGxlZ2FsIHRlcm1zLCBpcyBpdCCTY2xlYW4g cm9vbZQgcmV2ZXJzZSBlbmdpbmVlcmluZywgdXBvbiB3aGljaCB3ZSBzaGFsbCBlbGFib3JhdGUg bGF0ZXIuDQIgQmV0dGVyIGtub3duIGFzIE1TLURPUyBvciBET1MuICBIZXJlaW5hZnRlciByZWZl cnJlZCB0byBhcyCTRE9TlA0CIEFQSS4gIEFQSSBpcyBhIFRlY2huaWNhbCBJbnRlcmZhY2UsIG1l YW5pbmcgdGhlIHdheSB0aGF0IGEgcHJvZ3JhbSBjb21tdW5pY2F0ZXMgd2l0aCB0aGUgY29tcHV0 ZXIuICBGdXJ0aGVyIGFuYWx5c2lzIGxhdGVyLg0CIE9yIGRpc2Fzc2VtYmxlIGlmIGhlIG9wdHMg Zm9yIGEgbG93IGxldmVsIGxhbmd1YWdlLiAgIEFsdGhvdWdoIHRoZSBBcnRpY2xlIGlzIHRpdGxl ZCCTRGVjb21waWxhdGlvbpQsIGRpc2Fzc2VtYmxpbmcgYSBwcm9ncmFtIGlzIGFsc28gY292ZXJl ZCBhcyBpdCBiZWNvbWVzIGFwcGFyZW50IGZyb20gdGhlIEFydGljbGWScyBwcm92aXNpb25zLiAg QmVjYXVzZSBpbiBsYXcgdGhlcmUgaXMgbm8gZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSB0d28gYWN0 cywgdGhlIHRlcm0gk2RlY29tcGlsYXRpb26UIHdpbGwgYmUgdXNlZCBmb3IgYWxsIGNpcmN1bXN0 YW5jZXMsIGluIGFuIGF0dGVtcHQgdG8gcmVhc29uYWJseSBzaW1wbGlmeSBtYXR0ZXJzLg0CIElu ICB0aGUgc2Vuc2Ugb2Ygbm90IGJlaW5nIGFuIGVtdWxhdG9yIHNpbWlsYXIgdG8gTWljcm9zb2Z0 knMgWjgwIFNvZnRjYXJkLiBTZWUgbm90ZSA/Pz8/Pw0CIFRvIGFjaGlldmUgc2FtZSByZXN1bHRz IHRocm91Z2ggYSBkaWZmZXJlbnQgcHJvY2Vzcy4gIEZvciBleGFtcGxlLCBib3RoIEludGVsIGFu ZCBBTUQgY2hpcHMgYXJlIGFjaGlldmluZyB0aGUgc2FtZSByZXN1bHRzIGJ1dCBhcmUgYmFzZWQg b24gZGlmZmVyZW50IGNpcmN1aXRyeSBhbmQgdXNlIGRpZmZlcmVudCBhbGdvcml0aG1zLg0CIEpv aG5zb24tTGFpcmQsIEEuLCBTb2Z0d2FyZSBSZXZlcnNlIEVuZ2luZWVyaW5nIGluIHRoZSBSZWFs IFdvcmxkLCAxOSBVLiBEYXl0b24gTC4gUmV2LiA4NDMsIDE5OTQsIHAuIDg0Ng0CIEJldHRlciBr bm93biBhcyBSQU0uICBIZXJlaW5hZnRlciByZWZlcnJlZCB0byBhcyCTUkFNlC4gIFRoaXMgaXMg YSB2ZXJ5IGltcG9ydGFudCBwb2ludCB3aXRoIHJlZ2FyZHMgdG8gQXJ0aWNsZSA0KDEpIGxhdGVy IGRpc2N1c3NlZA0CIE5vdGUgaG93ZXZlciB0aGUgcG9pbnRzIHJhaXNlZCBpbiBDaGFwdGVyPz8/ IChBbHRlcm5hdGl2ZSB2aWV3KQ0CIFRoaXMgY29tZXMgd2l0aCBmZXcgZXhjZXB0aW9ucywgZXNw ZWNpYWxseSB3aGVyZSBzb2Z0d2FyZSBoYXMgc29tZSBhZGRpdGlvbmFsIGluc3RydWN0aW9ucyBm b3IgdGhlIHN5c3RlbSBpbWJlZGRlZCBpbiBpdCwgYXMgaW4gdGhlIGNhc2Ugb2Ygc29tZSBORVMg Y2FydHJpZGdlcy4gIFRoaXMgaG93ZXZlciBpcyBub3QgdGhlIGdlbmVyYWwgcnVsZSBhbmQgaXQg d291bGQgbm90IHNlcnZlIG91ciBjdXJyZW50IHB1cnBvc2UgdG8gYW5hbHlzZSBmdXJ0aGVyLg0C IEFydGljbGUgNigyKShhKQ0CIEFydGljbGUgNigyKShiKQ0CIEEgbm93IGRpc2NvbnRpbnVlZCBF bXVsYXRvciBmcm9tIEFudGlyaWFkLCBtYWlubHkgZm9jdXNlZCBvbiBUYWl0byBhbmQgSmFsZWNv IGFyY2FkZSBjYWJpbmV0cyBAIGh0dHA6Ly93d3cucmFpbmVtdS5jb20NAiBBIG5vdyBkaXNjb250 aW51ZWQgRW11bGF0b3IgZnJvbSBCbG9vZGx1c3QgU29mdHdhcmUgb2YgQ2FwY29tknMgQ1BTIDEg YXJjYWRlIGNhYmluZXRzIEAgaHR0cDovL2Jsb29kbHVzdC56b3BoYXIubmV0L0NhbGx1cy9jYWxs dXMuaHRtbC4gIENhbGx1cyBpcyBvbmUgb2YgdGhlIG9sZGVzdCBidXQgc3RpbGwgYmVzdCBFbXVs YXRvcnMgYXZhaWxhYmxlIGluIHRlcm1zIG9mIHByb2dyYW1taW5nIGVmZm9ydCBhbmQgY29tcGF0 aWJpbGl0eS4NAiBBcnRpY2xlIDYoMikoYykNAiBUUlpZLCBEYW4gQm9yaXMgYW5kIEpvc2VRIEBo dHRwOi8vd3d3LmVtdXZpZXdzLmNvbSwgYW1vbmcgb3RoZXJzDQIgQnkgYWRkcmVzc2luZyB0aGlz IHRlY2huaXF1ZSB0b28sIGRvZXMgbWVhbiB0aGF0IHdlIGhhdmUgZXhoYXVzdGVkIGFsbCB0aGUg cG9zc2libGUgdGVjaG5pcXVlcyB1c2VkOyB3ZSBoYXZlIHRob3VnaCBleGFtaW5lZCB0aGUgdHdv IG1vc3QgZnJlcXVlbnRseSB1c2VkIG9uZXMuDQIgRm9yIGV4YW1wbGUsIHRoZSBaODAgZG9jdW1l bnRhdGlvbiBpcyBhdmFpbGFibGUgIEAgaHR0cDovL3d3dy56aWxvZy5jb20vc3VwcG9ydC9zZC5o dG1sDQIgSSB3b3VsZCBsaWtlIHRvIHRoYW5rIERhbiBCb3JpcyBmb3IgYnJpbmdpbmcgdGhlIJNN YWdpY2FyZCBhZmZhaXKUIHRvIG15IGF0dGVudGlvbg0NDQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAQAAP4FAAD/BQAAWAYAAFkGAABEBwAARQcAADkIAAB9CAAAfggAAH8I AAAzDAAANAwAAPYNAAD3DQAAmxEAAJwRAADXEgAA2BIAAB0TAAAeEwAAHxMAAHEUAAB0FAAAihQA AIkVAADQFQAA0RUAAJEXAACSFwAAkhgAAJMYAACdGQAAnhkAAJ8ZAADWGgAAmxsAAJwbAABPHAAA UBwAAG8oAABwKAAAxyoAAMgqAAAzKwAANCsAAJArAACRKwAA7CsAAO0rAABJLAAAeCwAAHksAACF LQAAji0AAI8tAAALLwAADC8AAFIwAABTMAAACDIAAAoyAAAeMgAAIDIAACM4AAAkOAAA1ToAANY6 AAAaOwAAMzwAADQ8AAA3PAAAiDwAAAD4APgA+AD06vQA+AD4APgA+AD45eDlAOAA+AD4APgA+ADV APgA+AD4APgA+AD4APgA4MngAOAA+AD4AMQAxAD4AOUAwbjBAAAAAAARA2oAAAAAMEoRAFUIAWFK FAAEYUoUAAAIbUgIBHNICAQAFgNqAAAAADBKEQBCKgFVCAFwaAAAAAAAFDBKEwBDShgAT0oAAFFK AABeSgAAAAlCKgFwaAAAAAAJQioGcGj/AAAAEwNqAAAAADBKEQA2CIFVCAFdCIEGNgiBXQiBAA0D agAAAAAwShEAVQgBAEgABAAAGwQAABwEAACACAAAIxAAAIkVAACKFQAAlBUAAJUVAABXGQAAoRkA AKIZAAC9GQAA+xkAAGAaAADVGgAA1hoAANcaAAC4HAAA2h8AAAEkAACFLQAAhi0AAI8tAACQLQAA ty0AALgtAAD9AAAAAAAAAAAAAAAA+wAAAAAAAAAAAAAAAPIAAAAAAAAAAAAAAADwAAAAAAAAAAAA AAAA8gAAAAAAAAAAAAAAAPIAAAAAAAAAAAAAAADyAAAAAAAAAAAAAAAA+wAAAAAAAAAAAAAAAPIA AAAAAAAAAAAAAADrAAAAAAAAAAAAAAAA6wAAAAAAAAAAAAAAAOIAAAAAAAAAAAAAAADiAAAAAAAA AAAAAAAA4gAAAAAAAAAAAAAAAOIAAAAAAAAAAAAAAAD7AAAAAAAAAAAAAAAA+wAAAAAAAAAAAAAA APIAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAA8gAAAAAAAAAAAAAAAPIAAAAAAAAAAAAAAADyAAAA AAAAAAAAAAAA6wAAAAAAAAAAAAAAAPsAAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA8gAAAAAAAAAA AAAAAAAAAAAAAAkAAAomAAtGAQANxgUAATgEBgAEAAADJANhJAMAARAAAAgAAAMkAxGE0AJghNAC YSQDAAEAAAABAgAAGgAEAACIPAAAu04AAP7+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAACAQECuC0AALktAABVMAAArjIAAHw0AAB9NAAApjQAAKc0AAARNgAAETcAAIY8AACH PAAAiDwAAJ48AABUPQAAXT0AAPc+AADhPwAA5kAAAPJFAAA1RgAAs0YAACFIAAB+SAAAPkkAAKpJ AAAxSgAAc0oAAPYAAAAAAAAAAAAAAAD2AAAAAAAAAAAAAAAA9gAAAAAAAAAAAAAAAPYAAAAAAAAA AAAAAAD2AAAAAAAAAAAAAAAA9gAAAAAAAAAAAAAAAPYAAAAAAAAAAAAAAAD2AAAAAAAAAAAAAAAA 9AAAAAAAAAAAAAAAAPYAAAAAAAAAAAAAAAD2AAAAAAAAAAAAAAAA8gAAAAAAAAAAAAAAAO0AAAAA AAAAAAAAAADtAAAAAAAAAAAAAAAA7QAAAAAAAAAAAAAAAO0AAAAAAAAAAAAAAADtAAAAAAAAAAAA AAAA7QAAAAAAAAAAAAAAAO0AAAAAAAAAAAAAAADtAAAAAAAAAAAAAAAA7QAAAAAAAAAAAAAAAO0A AAAAAAAAAAAAAADrAAAAAAAAAAAAAAAA7QAAAAAAAAAAAAAAAO0AAAAAAAAAAAAAAADtAAAAAAAA AAAAAAAA6wAAAAAAAAAAAAAAAAAAAAAAAAAAAQ8AAAQPAAMkA2EkAwABAAAAARAAAAgAAAMkAxGE 0AJghNACYSQDABuIPAAAiTwAAJ48AACfPAAAVD0AAFU9AABdPQAAXj0AAPc+AAD4PgAA4T8AAOI/ AADmQAAA50AAAOhAAADyRQAA80UAADVGAAA2RgAAsUYAALJGAACzRgAAtEYAACFIAAAiSAAAfkgA AH9IAAC2SAAAPEkAAD5JAAA/SQAAQEkAAKlJAACqSQAAq0kAADFKAAAySgAAc0oAAHRKAAB7SwAA fEsAAI1LAACOSwAAn0sAAKBLAAAYTAAAGUwAABRNAAAVTQAAJk0AACdNAABpTQAAak0AAAtOAAAM TgAAPk4AAGROAABlTgAAZk4AALxOAAD4APgA+AD4APgA+ADs5wD4APgA4gD4APgA+ADnAPgA2QD4 APgA+AD4APgA+AD4APgA+AD4APgA5wD4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAwShMAT0oAAFFK AABeSgAAAAlCKgVwaP8A/wAJQioGcGj/AAAAFgNqAAAAADBKEQBCKgZVCAFwaP8AAAAADQNqAAAA ADBKEQBVCAEAO3NKAAB7SwAAjUsAAJ9LAAAYTAAAFE0AACZNAABpTQAAC04AAGVOAAC6TgAAu04A ALxOAAD9AAAAAAAAAAAAAAAA+AAAAAAAAAAAAAAAAPgAAAAAAAAAAAAAAAD4AAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAPgAAAAAAAAAAAAAAAD9AAAAAAAAAAAAAAAA/QAAAAAAAAAAAAAAAP0AAAAA AAAAAAAAAAD9AAAAAAAAAAAAAAAA9gAAAAAAAAAAAAAAAPYAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAABA8AAyQD YSQDAAEPAAAMLAAxkGgBH7CCLiCwxkEhsAgHIrAIByOQoAUkkKAFJbAAABewxAIYsMQCDJDEAgAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAUABQACgABAGkADwADAAAAAAAAAAAAOAAAQPH/AgA4AAwABgBOAG8AcgBtAGEAbAAA AAIAAAAYAENKGABfSAEEYUoYAG1ICQhzSAkIdEgJBAAAOAACQAEAAgA4AAwACQBIAGUAYQBkAGkA bgBnACAAMgAAAA4AAgADJAMGJAFAJgFhJAMGADUIgVwIgQAAAAAAAAAAAAAAAAAAPABBQPL/oQA8 AAwAFgBEAGUAZgBhAHUAbAB0ACAAUABhAHIAYQBnAHIAYQBwAGgAIABGAG8AbgB0AAAAAAAAAAAA AAAAADYAHUABAPIANgAMAA0ARgBvAG8AdABuAG8AdABlACAAVABlAHgAdAAAAAIADwAIAENKFABh ShQAQgBDQAEAAgFCAAwAEABCAG8AZAB5ACAAVABlAHgAdAAgAEkAbgBkAGUAbgB0AAAAEAAQAAMk AxGE0AJghNACYSQDAAA4ACZAogARATgADAASAEYAbwBvAHQAbgBvAHQAZQAgAFIAZQBmAGUAcgBl AG4AYwBlAAAAAwBIKgEASgBZQAEAIgFKAAwADABEAG8AYwB1AG0AZQBuAHQAIABNAGEAcAAAABMA EgAtRCABTcYKAAAA/wAAgAAAAAAMAE9KAwBRSgMAXkoDAEYAZ0CiADEBRgAMAA8ASABUAE0ATAAg AFQAeQBwAGUAdwByAGkAdABlAHIAAAAYAENKFABPSgQAUEoEAFFKBABeSgQAYUoUAP4BAABYAgAA RAMAAH0EAAAzCAAA9gkAAJsNAADXDgAAHQ8AANARAACREwAAkhQAAJ0VAACbFwAATxgAAG8kAADH JgAAMycAAJAnAADsJwAAeCgAAAsrAABSLAAAIzMAADM3AAC8SQAAAQACAAMABAAFAAYABwAIAAkA CgALAAwADQAOAA8AEAARABIAEwAUABUAFgAXABgAGQAAAAAAFgAAAMwAAADVAAAAbwIAAFkDAABe BAAAagkAAK0JAAArCgAAmQsAAPYLAAC2DAAAIg0AAKkNAADrDQAA8w4AAAUPAAAXDwAAkA8AAIwQ AACeEAAA4RAAAIMRAADdEQAAMhIAADUSAAAAAAAAvEkAAE8AAF4AAE0A/////wAAAAAbAAAAHAAA AIAEAAAjDAAAiREAAIoRAACUEQAAlREAAFcVAAChFQAAohUAAL0VAAD7FQAAYBYAANUWAADWFgAA 1xYAALgYAADaGwAAASAAAIUpAACGKQAAjykAAJApAAC3KQAAuCkAALkpAABVLAAAVy4AAHwvAAB9 LwAApi8AAKcvAAARMQAAETIAAIY3AACHNwAAiDcAAOY7AADyQAAANUEAALNBAAAhQwAAfkMAACZI AABpSAAAC0kAAGVJAAC6SQAAvUkAABgAAAACMAAAAAAAAACAAAAAgJAAAAAAMAAAAAAAAACAAAAA AJAAAAAAMAAAAAAAAACAAAAAAJAAAAAQMAAAAAAAAACAAAAAAJAAAAAAMAAAAAAAAACAAAAAAJAA AAAAMAAAAAAAAACAAAAAAJAAAAAAMAAAAAAAAACAAAAAAJgAAAAAMAAAAAAAAACAAAAAAJAAAAAA MAAAAAAAAACAAAAAAJAAAAAAMAAAAAAAAACAAAAAAJAAAAAAMAAAAAAAAACAAAAAAJAAASAAMAAA AAAAAACAAAAAAJAAASAAMAEAAAAAAACAAAAAAJAAASAAMAIAAAAAAACAAAAAAJAAASAAMAMAAAAA AACAAAAAAJAAAAAAMAAAAAAAAACAAAAAAJAAAAAAMAAAAAAAAACAAAAAAJAAAAAAMAAAAAAAAACA AAAAAJAAAAAQMAAAAAAAAACAAAAAAJAAAAAAMAAAAAAAAACAAAAAAJAAAAAAMAAAAAAAAACAAAAA AJAAAAAAMAAAAAAAAACAAAAAAJAAAAAAMAAAAAAAAACAAAAAAJgAAAAAMAAAAAAAAACAAAAAABgA AAACMAAAAAAAAACAAAAAgJAAAAAAMAAAAAAAAACAkCkAAJAAAAAAMAAAAAAAAACAkCkAAJAAAAAA MAAAAAAAAACAkCkAAJAAAAAAMAAAAAAAAACAkCkAAJAAAAAAMAAAAAAAAACAkCkAAJAAAAAAMAAA AAAAAACAkCkAAJAAAAAAMAAAAAAAAACAkCkAAJAAAAAAMAAAAAAAAACAkCkAAJAAAAAAMAAAAAAA AACAkCkAAJAAAAAQMAAAAAAAAACAkCkAAJAAAAAAMAAAAAAAAACAAAAAgJAAAAAAMAAAAAAAAACA kCkAAJgAAAAAMAAAAAAAAACAkCkAAApAAAAAMAAAAAAAAAAAAAAAAJhAAAAPMAAAAAAAAACAAAAA gJhAAAAPMAAAAAAAAACAAAAAgJhAAAAPMAAAAAAAAACAAAAAgJpAAAAPMAAAAAAAAACAAAAAgJhA AAAPMAAAAAAAAACAAAAAgApAAAAAMAAAAAAAAAAAAAAAAJhAAAAPMAAAAAAAAACAAAAAgJhAAAAP MAAAAAAAAACAAAAAgJhAAAAPMAAAAAAAAACAAAAAgJhAAAAPMAAAAAAAAACAAAAAgAoAAAAAMAAA AAAAAAAAAAAAAAAEAACIPAAAvE4AACkAAAAtAAAAAAQAALgtAABzSgAAvE4AACoAAAAsAAAALgAA AAAEAAC7TgAAKwAAAAAAAACBAwAAhAMAAEUEAABQBAAATwcAAFIHAABYBwAAWwcAAMoLAADNCwAA 0wsAANYLAAACHgAACh4AAAQuAAAFLgAADy4AABAuAAAVMAAAHDAAAPYzAAD6MwAASjYAAFI2AACA NgAAiDYAAIg3AABWOAAAWzgAAPI4AAD+OAAAKD8AACw/AAA9PwAARj8AAGVDAABtQwAAwkYAAMpG AADoRgAA7kYAADxIAABBSAAAmUkAAKFJAAC9SQAABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAc AAcABQAHAAUABwAcAAcABAAHABwABwAcAAcABwAcAAcAHAAHABwABwAcAAcAHAAHABwABwAcAAcA HAAHABwABwAAAAAAAgIAAAgCAACVBAAAlgQAAFAJAABfCQAArxAAALsQAAC2EgAABhMAAKIVAACp FQAAvRUAAMYVAAD7FQAABRYAAGAWAABqFgAAXRoAAGwaAACEHwAAkB8AAAskAAAcJAAA+CUAAP8l AACQKQAAmCkAAD8vAABCLwAA1jMAAB80AACINwAAxDsAANA7AADjPAAA6jwAALA9AACzPQAAnj4A AKA+AAAkPwAAJz8AAJtBAACyQQAAI0MAACpDAABzQwAAeUMAAIBDAAC0QwAAS0UAAFFFAAC9SQAA BwAzAAcAMwAHADMABwAzAAcAMwAHADMABwAzAAcAMwAHADMABwAzAAcAMwAHADMABwAzAAcAMwAH ADMABwAEAAcABwAzAAcAMwAHADMABwAzAAcAMwAHADMABwAzAAcAMwAHADMABwAzAAcAAAAAAIoR AACVEQAAhikAAJApAACINwAANUEAAD1BAAC9SQAABwAFAAcABQAHAAcABQAHAP//BAAAAAUAVABh AGsAaQBzAE0AQwA6AFwAVwBJAE4ARABPAFcAUwBcAEEAcABwAGwAaQBjAGEAdABpAG8AbgAgAEQA YQB0AGEAXABNAGkAYwByAG8AcwBvAGYAdABcAFcAbwByAGQAXABBAHUAdABvAFIAZQBjAG8AdgBl AHIAeQAgAHMAYQB2AGUAIABvAGYAIABEAG8AYwB1AG0AZQBuAHQAMgAuAGEAcwBkAAUAVABhAGsA aQBzAB4ARAA6AFwARABlAHMAawB0AG8AcABcAFQAYQBrAGkAcwAtAEwAYQB3AEUAbQB1AEYAYQBx AC4AZABvAGMAAQDYM84cLE+OXP8P/w//D/8P/w//D/8P/w//DxAAAQAAAAQQAQAAAAAAAAAAAGgB AAAAAAAAABgAAA+E0AIRhJj+FcYFAAHQAgZehNACYISY/gIAAAApAAEAAAAEkAEAAAAAAAAAAABo AQAAAAAAAAAYAAAPhKAFEYSY/hXGBQABoAUGXoSgBWCEmP4CAAEALgABAAAAApIBAAAAAAAAAAAA aAEAAAAAAAAAGAAAD4RwCBGETP8VxgUAAXAIBl6EcAhghEz/AgACAC4AAQAAAACQAQAAAAAAAAAA AGgBAAAAAAAAABgAAA+EQAsRhJj+FcYFAAFACwZehEALYISY/gIAAwAuAAEAAAAEkAEAAAAAAAAA AABoAQAAAAAAAAAYAAAPhBAOEYSY/hXGBQABEA4GXoQQDmCEmP4CAAQALgABAAAAApIBAAAAAAAA AAAAaAEAAAAAAAAAGAAAD4TgEBGETP8VxgUAAeAQBl6E4BBghEz/AgAFAC4AAQAAAACQAQAAAAAA AAAAAGgBAAAAAAAAABgAAA+EsBMRhJj+FcYFAAGwEwZehLATYISY/gIABgAuAAEAAAAEkAEAAAAA AAAAAABoAQAAAAAAAAAYAAAPhIAWEYSY/hXGBQABgBYGXoSAFmCEmP4CAAcALgABAAAAApIBAAAA AAAAAAAAaAEAAAAAAAAAGAAAD4RQGRGETP8VxgUAAVAZBl6EUBlghEz/AgAIAC4AAQAAANgzzhwA AAAAAAAAAAAAAAD///////8BAAAAAAD//wEAAAASABcACQQZAAkEGwAJBA8ACQQZAAkEGwAJBA8A CQQZAAkEGwAJBP9AAYABAPczAAD3MwAAKNB1AgEAAQD3MwAAAAAAANgzAAAAAAAAAigAAAAAAAAA AC4AAAAvAAC8SQAA8AQACABAAADwBAAyAAAAAPAEAGgAQAAA//8BAAAABwBVAG4AawBuAG8AdwBu AP//AQAIAAAAAAAAAAAAAAD//wEAAAAAAP//AAACAP//AAAAAP//AAACAP//AAAAAAUAAABHFpAB AAACAgYDBQQFAgMEhzoAAAAAAAAAAAAAAAAAAP8AAAAAAAAAVABpAG0AZQBzACAATgBlAHcAIABS AG8AbQBhAG4AAAA1FpABAgAFBQECAQcGAgUHAAAAAAAAABAAAAAAAAAAAAAAAIAAAAAAUwB5AG0A YgBvAGwAAAAzJpABAAACCwYEAgICAgIEhzoAAAAAAAAAAAAAAAAAAP8AAAAAAAAAQQByAGkAYQBs AAAANSaQAQAAAgsGBAMFBAQCBIc6AAEAAAAAAAAAAAAAAAD/AAEAAAAAAFQAYQBoAG8AbQBhAAAA PzWQAQAAAgcDCQICBQIEBIc6AAAAAAAAAAAAAAAAAAD/AAAAAAAAAEMAbwB1AHIAaQBlAHIAIABO AGUAdwAAACIABABxCIgYAPDQAgAAaAEAAAAAn+VHprjlR6YAAAAAAQAUAAAAwAgAAKQsAAABABQA AAAEAAMQuwAAADsPAACwTQAAAQAjAAAARgEAAAAAAAAhAwDwEAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAIB6AFtAC0AIGBMjAAAAAAAAAAAAAAAAAAAEU9AADrXAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARMgAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAky g1EA8BAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//xIAAAAAAAAAAgBJAEkAAAAA AAAABQBUAGEAawBpAHMABQBUAGEAawBpAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+ /wAABAoCAAAAAAAAAAAAAAAAAAAAAAABAAAA4IWf8vlPaBCrkQgAKyez2TAAAABkAQAAEQAAAAEA AACQAAAAAgAAAJgAAAADAAAApAAAAAQAAACwAAAABQAAAMAAAAAGAAAAzAAAAAcAAADYAAAACAAA AOgAAAAJAAAA+AAAABIAAAAEAQAACgAAACABAAAMAAAALAEAAA0AAAA4AQAADgAAAEQBAAAPAAAA TAEAABAAAABUAQAAEwAAAFwBAAACAAAA5AQAAB4AAAADAAAASUkAAB4AAAABAAAAAEkAAB4AAAAG AAAAVGFraXMAZgAeAAAAAQAAAABha2keAAAAAQAAAABha2keAAAABwAAAE5vcm1hbAAAHgAAAAYA AABUYWtpcwAAAB4AAAACAAAAMQBraR4AAAATAAAATWljcm9zb2Z0IFdvcmQgOS4wAABAAAAAAHhB ywIAAABAAAAAAAKFH9v4vwFAAAAAANiWnd74vwEDAAAAAQAAAAMAAADACAAAAwAAAKQsAAADAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/v8AAAQKAgAA AAAAAAAAAAAAAAAAAAAAAQAAAALVzdWcLhsQk5cIACss+a4wAAAA7AAAAAwAAAABAAAAaAAAAA8A AABwAAAABQAAAHwAAAAGAAAAhAAAABEAAACMAAAAFwAAAJQAAAALAAAAnAAAABAAAACkAAAAEwAA AKwAAAAWAAAAtAAAAA0AAAC8AAAADAAAAMsAAAACAAAA5AQAAB4AAAABAAAAAAAAAAMAAAC7AAAA AwAAABQAAAADAAAART0AAAMAAACgCgkACwAAAAAAAAALAAAAAAAAAAsAAAAAAAAACwAAAAAAAAAe EAAAAQAAAAMAAABJSQAMEAAAAgAAAB4AAAAGAAAAVGl0bGUAAwAAAAEAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAAAwAAAAQAAAAF AAAABgAAAAcAAAAIAAAACQAAAAoAAAALAAAADAAAAA0AAAAOAAAADwAAABAAAAARAAAAEgAAABMA AAAUAAAAFQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAA ACIAAAAjAAAAJAAAACUAAAAmAAAAJwAAACgAAAApAAAAKgAAACsAAAAsAAAALQAAAC4AAAAvAAAA /v///zEAAAAyAAAAMwAAADQAAAA1AAAANgAAADcAAAA4AAAA/v///zoAAAA7AAAAPAAAAD0AAAA+ AAAAPwAAAEAAAAD+////QgAAAEMAAABEAAAARQAAAEYAAABHAAAASAAAAP7////9////SwAAAP7/ ///+/////v////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////UgBvAG8AdAAgAEUAbgB0AHIA eQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYABQH///////// /wMAAAAGCQIAAAAAAMAAAAAAAABGAAAAAAAAAAAAAAAAYJgbnt74vwFNAAAAgAAAAAAAAAAxAFQA YQBiAGwAZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAADgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAA AAD3EQAAAAAAAFcAbwByAGQARABvAGMAdQBtAGUAbgB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAaAAIBBQAAAP//////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAC5eAAAAAAAABQBTAHUAbQBtAGEAcgB5AEkAbgBmAG8AcgBtAGEAdABp AG8AbgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAgECAAAABAAAAP////8AAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5AAAAABAAAAAAAAAFAEQAbwBjAHUAbQBlAG4AdABT AHUAbQBtAGEAcgB5AEkAbgBmAG8AcgBtAGEAdABpAG8AbgAAAAAAAAAAAAAAOAACAf////////// /////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEAAAAAEAAAAAAAAAEAQwBv AG0AcABPAGIAagAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAASAAIBAQAAAAYAAAD/////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AGoAAAAAAAAATwBiAGoAZQBjAHQAUABvAG8AbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAABYAAQD///////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAGCYG57e +L8BYJgbnt74vwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///////////////wAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAD+//////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////AQD+/wMKAAD/////BgkCAAAAAADA AAAAAAAARhgAAABNaWNyb3NvZnQgV29yZCBEb2N1bWVudAAKAAAATVNXb3JkRG9jABAAAABXb3Jk LkRvY3VtZW50LjgA9DmycQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= --=====================_964923372==_ Content-Type: text/plain; charset="us-ascii" Bart --=====================_964923372==_-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 15:30:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56293 for dynarec-outgoing; Sat, 29 Jul 2000 15:30:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009301bff9b5$cb8a52a0$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3.0.5.32.20000728151646.007dc9e0@powernet.net> Subject: Re: DYNAREC: Emulation tutorial Date: Sat, 29 Jul 2000 23:49:31 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Polish is also phonetic. Take my last name for example, Trzynadlowski. > Every letter is pronounced. Every consanant and every vowel :) Yep, I knew that. Polish comes from Russian - and I've heard that Russian is the same. > I hear the Czech language is like that, with tons of markers. > But what's with the upside down punctuation at the beginning of a sentence? > I suppose it makes sense because it tells you in advance if the sentence is > a question or not, but it looks funny ;) It looks funny - but it makes sense in a language where you alter the way you pronounce a word in the middle of the sentence. Let's put that better - in English (and German!) you would alter the last word (or two) to give your inflection. So you can tell if it's a question if the last word is said in a higher pitch. Spanish is different as I'm sure Victor will tell us. :) > In English, or most any other language, you can say: "I'm sitting on top of > the table." or "I'm sitting under the table." or "I'm sitting by the > table." yet the word "table" stays the same, whereas in Polish the word > changes according to what you're doing in relation to it. I don't like it :P That's funny. :) > I've heard Welsh is odd -- doesn't it have some extremely long words or > something? How commonly is it used there? I've never heard it, but I've > never been to Wales or anywhere else in Britain for that matter ... yet ;) Welsh also has a distinct sound for each letter. But Welsh has a bigger alphabet too. "Ll" is one letter and sounds very much like the "ch" in "Ich" in German - and is similar to the "Cl" in "Clan". There's more - but they sound funny. :) Wales has a town with the second longest name in the world (the largest is somewhere in Africa). It's something like "Llanfairpwllgwyngyllgogerychllandrobwlllantysiliogogerychgoch". I'm not sure what the exact translation is - but it's talking about a chapel (small methodist church) by the lake Sylio. About the only other thing that Wales is famous for (except sheep - and I don't know why because England has more!) is the legend of Excalibur, King Arthur and Merlin the Wizard. Oh - and dragons. There's a big red dragon on the Welsh flag in case you didn't know. :) > And I've heard some Finnish. I knew a Hungarian guy once who said that > oddly enough Finnish and Hungarian were similar, as if they could be > classified as the same language group. Don't know about that - Hungarian definitely has Russian roots! But it's close so I guess there would be some similarities... > I think Zulu has some clicking to it. But I want to real deal. Like those > isolated bushman tribes you see on the Discovery Channel that nobody really > knows/cares about. Like a vocal morse code? :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 15:31:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56318 for dynarec-outgoing; Sat, 29 Jul 2000 15:30:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009501bff9b5$cd465a80$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Emulation tutorial Date: Sat, 29 Jul 2000 23:57:58 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I hate that people think just because something is different, it makes it > cool. I call them differentologists. Different is almost always just > annoying. I'm an equal opportunity offender. I find it offenseive that I > can't complain about the timid way the orientals (*NOT* "Asian" - it's a > PC word!) drive around here because it makes me a racist, but it's OK for > me to poke fun at old white men driving timidly. This concept floating > around that everyone's the same is BS. I think we've always said "Asian" in the UK and used the word "oriental" for any object from Asia. But I find it stupid that if an incident occurs between two people of different races then the results are different than if it was between two people of the same race. I think it was in South Park that I heard "If you're going to go and hit someone, you'd better make damned sure they're the same colour as you!". I agree totally. What's the point? We're all human! All these "PC" people have done is to segregate (seperate) people into groups. They've achieved the exact opposite of what they wanted - but they don't know that. It's complete BS. And I've had beer (bier!) tonight so I'm having a right time of it trying to spell! :)) > The point is there are generalities that exist in all cultures. But what > the PC public needs to understand is there is a happy medium. Just because > I make fun of the way a particular race generally drives on US highways > doesn't mean that I hate them or am going to go burn a cross on their > front yard. That's good to know. So you won't be wanting that white suit and special pointy cone hat that I made for you? ;)) > The fact is everyone is annoying - just in different areas. ;-) Idiocy and > irritation know no racial boundaries. Agreed. And us whities are certainly no better than any other race. The KKK is a case in point! > > >I wonder what it does to the grammar when you get a click out of line... > > Maybe bushmen don't have any real grammar. Maybe they don't even have a > > language. It could be that they sit around all day clicking and don't > > understand a word -- ahem, click. Maybe that's why they live in dung-huts > > and eat termites -- with no computers (). :) > > I have always thought it would be really funny to take a bushman > (Ethiopian?) through a Taco Bell drive through. That'd be a serious mind > blower! That's really cruel! :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 15:31:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56325 for dynarec-outgoing; Sat, 29 Jul 2000 15:31:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009401bff9b5$cc8db8e0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: The future of emulation Date: Sat, 29 Jul 2000 23:50:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Yesertday was doomsday. 1:30AM, I got the boards all put back > together. Still have minor tweaking to do (and aligning) but I'll be > putting them back in the machine tomorrow sometime. Cool. I hope it still works. ;) > I have a bachelor party to go to tonight. This will be the first time I'm > A: Sober for it, and B: am not planning on getting arrested. I would have wished you a good time - but chances are that you've been and come back by now! > > > doesn't behave like the thief she is supposed to play (wearing high heels > > > during one job, running in wide open space when she tries to get away from > > > house), but that could be due to the bad screenplay... > > It's a JOhn Woo film. Bad screenplay is a synonym for his movies, but the > cinematography is wonderful. I'll go see it next week I think... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 15:31:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56333 for dynarec-outgoing; Sat, 29 Jul 2000 15:31:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009701bff9b5$cf026260$0100a8c0@lion> From: "Neil Griffiths" To: References: <01bff862$510db700$35901a17@turkey> <00036d762e5432c7_mailit@mail.dynarec.com> <004301bff8e6$255d47e0$0100a8c0@lion> <00036d8b7983c719_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 00:09:31 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >>Why?! That makes no sense! > >Of course not, but it's fun to tease the girls with, "hey, you aren't even >female" ;-) I'm betting that'll give me a worse reaction than "So young!". ;)) >>Ah, but Chester had the name "Deva" when it was run by the Romans. And it >>was the capital of England at the time! > >So much for history lessons ;-) I'm interested in local history - so I know a fair bit about my home region. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 15:31:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56340 for dynarec-outgoing; Sat, 29 Jul 2000 15:31:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009601bff9b5$ce176620$0100a8c0@lion> From: "Neil Griffiths" To: References: <01bff860$f45dcc80$35901a17@turkey> <00036d761ba06662_mailit@mail.dynarec.com> <004201bff8e6$2405f540$0100a8c0@lion> <00036d8b742451cc_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 00:06:00 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Aargh, I don't know what you've done to your mail settings - but OE doesn't indent your mails with the ">" character anymore! If someone knows of a mail program that'll import OE5 mail then I think that I'll happily swap... :) >>Isst? > >What do you mean? New spelling? The old one is "ißt"... Yes, but I don't have a German keyboard so I can't insert that character! >>I just know that German is as difficult - or worse - than English. ;) > >Let's say it's as difficult when it comes to verbs but more difficult in >terms of articles. Okay. I can agree to that. English is a strange language too - it's just easier because it doesn't have all the masc./fem. stuff. But other things (like verbs!) are difficult so... If it makes you feel any better, remember that I have the same problem - but the other way around. So if I have an irregular verb, I have to find the regular verb to convert it into German. And quite often I'll find German is also irregular so I have to reconvert. So we all have the same problem. :o >>If you can say "Wann kommst Du am Kino mit?" then that is a good example. > >Nope, that sentence doesn't make any sense. >Translation(?): *"When do you come to the cinema with?" Good point. Okay, so how would I say "Would you like to come to the cinema with me?" then? >>See? I told you - I don't know how to write them! I just cheat! ;)) > >Cheater! Cheater! I have no problems with that. ;) >>We could discuss computer languages too you know... > >We could, but that would be rather uninteresting and less complex compared to >natural languages. Unless we talk about 4 and 5GLs. ;) >>So that'll be: >>When a fly flies behind a fly, a fly flies behind a fly? > >"When flies fly behind flies, flies fly behind flies." Damn, of course it was. Still, I was close. :)) >It sounds better in German because the noun is "Fliegen" (plural of "die >Fliege") and the verb is "fliegen" as well. When it's spoken you don't have >the ability to recognise the noun due to it's capital initial, which is why >it's not that good in the written form. The one I have to remember in German is "Sie" and "sie" - it's another case of German being more difficult. Captalisation doesn't alter the words meaning in English. >>If so then that is a very obvious thing to say and it should be a saying >>that should be taken out to the fields and shot. ;) > >Hey, what about "Fischers Fritze fischt frische Fische." ;-) >Meaning: "Fisherman's Fritz fishes fresh fish." *BANG* ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 15:31:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56343 for dynarec-outgoing; Sat, 29 Jul 2000 15:31:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009901bff9b5$d0a60040$0100a8c0@lion> From: "Neil Griffiths" To: References: <01bff861$4d2d6500$35901a17@turkey> <00036d762587ea09_mailit@mail.dynarec.com> <004101bff8e6$2345b280$0100a8c0@lion> <00036d8b4a550a9c_mailit@mail.dynarec.com> Subject: Re: DYNAREC: The future of emulation Date: Sun, 30 Jul 2000 00:14:18 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >And he does his own stunts! He's also one of the only people alive who has > >broken nearly every bone in his body. He's mad! > > I know, and I'm really upset when the credits aren't shown in full length on > TV! You know why... What, you enjoy him making himself look like an arsehole when he f**ks up completely? ;)) > >I like his films very much (I *must* go and see "Romeo must die"!) but he > >*definitely* uses wires. As in most of the time. Doesn't stop me from > >enjoying his films though! > > Anyway, he's *really* fast. He is. And I've now bought Romeo Must Die on DVD - so I hope it's good! I also bought Scream 3. Even if that isn't much good (dunno, haven't seen it) at least it means I've got all 3 now. I have waaaay too many DVDs. And too much music (can you EVER have too much music?)! How am I going to get it all home? :o > I have one ;-) So - which is bigger? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 15:31:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56346 for dynarec-outgoing; Sat, 29 Jul 2000 15:31:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009a01bff9b5$d15ea1e0$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 00:17:32 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > BTW, back to the main subject ;-) > I took a brief look at that console emulation doc again and apart from many > spelling and grammar errors I noticed that you were right in claiming that > the section about endianness is totally wrong. I'll go back and read it tomorrow. Let's see what I can find. :) > I also noticed that he explains EPROM as Extended Programmably ROM, although > the E stands for Erasable. Very good. Now, do you know what EEPROM stands for? I used to have some of those for my CPC! :) > In the instruction emulation section he only calculated carry and zero flags > but no negative or overflow... That's pants then. > Well, just what I notced from the quick survey. I bet there are still more > errors hidden. I'll try and find some tomorrow. Neil. PS If you've ever heard any songs by "The Bloodhouse Gang" then you'll know how funny - but how shit they are. Why do I mention it? I'm listening to them at the moment (MP3)... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 15:31:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56354 for dynarec-outgoing; Sat, 29 Jul 2000 15:31:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009b01bff9b5$d21ee4a0$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000729115029.007dc420@powernet.net> Subject: Re: DYNAREC: An emulation legal document Date: Sun, 30 Jul 2000 00:21:53 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Someone on the VGN Emulator Programming forum was writing a document on the > legality of emulation in respect to EC law. I don't know a thing about > that, but his main concerns were with how emulators were written (software > reverse engineering, hardware reverse engineering -- through schematics, > and similar concerns.) I don't know how things stand in the US or other countries - but reverse engineering is completely legal in the UK. The problem with two similar products is that you have to prove that one was reverse engineered and not blatantly copied. How can that be proved? With great difficulty! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 15:31:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56358 for dynarec-outgoing; Sat, 29 Jul 2000 15:31:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009c01bff9b5$d2df2760$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <003701bff98e$ab9675e0$70c0523e@hal9000> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 00:34:57 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > BTW, Neil you could take away the mul8 list all the August and noones > would know about it. ;) Noone has said nothing about last message, > this time even teasing them they don't say nothing. I'm beginning to be > really worried. Or perhaps everyone really interested has migrated > to this list? I'm giving you another 2 months before you get as pissed off with it as I was. I've now gone over to the other side where I don't actually care anymore. I'll help if people want help - but they've got to help themselves first. Because I'm not going to try anymore! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 15:31:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56345 for dynarec-outgoing; Sat, 29 Jul 2000 15:31:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009801bff9b5$cfd36e00$0100a8c0@lion> From: "Neil Griffiths" To: References: <01bff85f$135b5f00$35901a17@turkey> <00036d757e417602_mailit@mail.dynarec.com> <004001bff8e6$227c4800$0100a8c0@lion> <00036d8b41438e7b_mailit@mail.dynarec.com> Subject: Re: DYNAREC: The future of emulation Date: Sun, 30 Jul 2000 00:12:18 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, And OE has indented this mail. What's going on? :o > Hey, what about Die Hard? I believe that every police man in the US knows how > to hide in elevators and how to ignite C4 with a computer monitor ;-) Ah yes, good point. You win. ;) It's like Steven Seagal in "Under Siege". He uses a microwave as a trigger for a bomb. Is it just me who thinks that this sort of thing will not be taught to Navy Seals? :)) > >Or whether he could stop loving himself? ;) > > Yep, that's the more general case ;-) OTOH, I thought he was very good in "Interview with a vampire". I'm not sure whether that was wishful thinking though. I mean... he was dead. ;)) > You're reaction is quite mono-syllabic... Nah. ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 15:40:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56377 for dynarec-outgoing; Sat, 29 Jul 2000 15:40:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000729154900.007dfcd0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 29 Jul 2000 15:49:00 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: An emulation legal document In-Reply-To: <009b01bff9b5$d21ee4a0$0100a8c0@lion> References: <3.0.5.32.20000729115029.007dc420@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I don't know how things stand in the US or other countries - but reverse >engineering is completely legal in the UK. The problem with two similar >products is that you have to prove that one was reverse engineered and not >blatantly copied. How can that be proved? With great difficulty! The issue wasn't about the legality of reverse engineering, but how emulator authors did it ... wether it was by looking through software or looking at schematics. I haven't yet looked at the document, I've been working on this evil DirectX stuff :P Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 19:09:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA56530 for dynarec-outgoing; Sat, 29 Jul 2000 19:09:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 29 Jul 2000 19:25:43 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: The future of emulation In-Reply-To: <009401bff9b5$cc8db8e0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > together. Still have minor tweaking to do (and aligning) but I'll be > > putting them back in the machine tomorrow sometime. > Cool. I hope it still works. ;) Yep. It does. I expected to have major problems with the electronics and switches going all screwy on me, but as it turns out, all the "hard stuff" works great. It's now just a matter of alignment and modification to get the rest of it to work properly. > > I have a bachelor party to go to tonight. This will be the first time I'm > > A: Sober for it, and B: am not planning on getting arrested. > I would have wished you a good time - but chances are that you've been and > come back by now! Yep. Survived. Went to a strip club. Only one of the chicks there really did anything for me. I also noticed that all the strippers tend to go for the ugly guys almost exclusively. Is that true in Europe? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 19:19:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA56552 for dynarec-outgoing; Sat, 29 Jul 2000 19:19:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <009601bff9b5$ce176620$0100a8c0@lion> Message-ID: <00036d9795a29206_mailit@mail.dynarec.com> References: <01bff860$f45dcc80$35901a17@turkey> <00036d761ba06662_mailit@mail.dynarec.com> <004201bff8e6$2405f540$0100a8c0@lion> <00036d8b742451cc_mailit@mail.dynarec.com> <009601bff9b5$ce176620$0100a8c0@lion> Date: Sun, 30 Jul 2000 04:05:48 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Aargh, I don't know what you've done to your mail settings - but OE doesn't >indent your mails with the ">" character anymore! If someone knows of a mail >program that'll import OE5 mail then I think that I'll happily swap... :) Hmm, Mail-It has Outlook Express import - don't ask me if it works... >Yes, but I don't have a German keyboard so I can't insert that character! Crap! ;-) >Okay. I can agree to that. English is a strange language too - it's just >easier because it doesn't have all the masc./fem. stuff. But other things >(like verbs!) are difficult so... It's hard to decide and since we both are a bit biased (due to our mother tongues) I guess we'll never reach a decision. >If it makes you feel any better, remember that I have the same problem - but >the other way around. So if I have an irregular verb, I have to find the >regular verb to convert it into German. And quite often I'll find German is >also irregular so I have to reconvert. So we all have the same problem. :o So were both in the same boat... Hey, put that hatchet away! >Good point. Okay, so how would I say "Would you like to come to the cinema >with me?" then? Normal: "Willst Du mit mir ins Kino gehen?" Very polite: "Würdest Du mit mir ins Kino gehen wollen?" (But nobody would say that although it's closer to your English sentence.) Why do I feel like Cyrano de Bergerac? ;-) >>Cheater! Cheater! >I have no problems with that. ;) Me neither, at least in 3D shooters... >Unless we talk about 4 and 5GLs. ;) Oh no! BTW, I guess you know that *Prolog* is a 5GL? ;-) >>"When flies fly behind flies, flies fly behind flies." >Damn, of course it was. Still, I was close. :)) Yup, you're getting better. >The one I have to remember in German is "Sie" and "sie" - it's another case >of German being more difficult. Captalisation doesn't alter the words >meaning in English. "Sie" is only used when you address someone otherwise it's always "sie". >>Of course not, but it's fun to tease the girls with, "hey, you aren't even >>female" ;-) >I'm betting that'll give me a worse reaction than "So young!". ;)) That would be a good occasion to practice some dodge moves ;-) >I'm interested in local history - so I know a fair bit about my home region. >;) I have to admit that I didn't learn too much about British history and forgot much but I guess I still know more than many others. Maybe I should try to get the book "1066 and all that" someday ;-) >Neil. -- M.I.K.e "Deliver yesterday, code today, think tomorrow." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 19:19:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA56560 for dynarec-outgoing; Sat, 29 Jul 2000 19:19:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <009a01bff9b5$d15ea1e0$0100a8c0@lion> Message-ID: <00036d97c1d48c70_mailit@mail.dynarec.com> References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <009a01bff9b5$d15ea1e0$0100a8c0@lion> Date: Sun, 30 Jul 2000 04:18:09 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Very good. Now, do you know what EEPROM stands for? I used to have some of >those for my CPC! :) Electrically Erasable Programmable Read-Only Memory (meaning you use electricity instead of UV light to erase it ;-) >That's pants then. I'd say it's pampers... >Neil. >PS If you've ever heard any songs by "The Bloodhouse Gang" then you'll know >how funny - but how shit they are. Why do I mention it? I'm listening to >them at the moment (MP3)... "This is rediculous! How do you expect my to work under this direction?" ;-) (I bet he accidentally said "erection" on the first take!) -- M.I.K.e "There are two ways of disliking poetry; one way is to dislike it, the other is to read Pope." -- Oscar Wilde --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 29 19:19:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA56564 for dynarec-outgoing; Sat, 29 Jul 2000 19:19:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <009801bff9b5$cfd36e00$0100a8c0@lion> Message-ID: <00036d97b1a108eb_mailit@mail.dynarec.com> References: <01bff85f$135b5f00$35901a17@turkey> <00036d757e417602_mailit@mail.dynarec.com> <004001bff8e6$227c4800$0100a8c0@lion> <00036d8b41438e7b_mailit@mail.dynarec.com> <009801bff9b5$cfd36e00$0100a8c0@lion> Date: Sun, 30 Jul 2000 04:13:37 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >And OE has indented this mail. What's going on? :o One word: Microsoft... BTW, if you do a literal translation it becomes "Winzigweich" in German which sounds really funny ;-) >It's like Steven Seagal in "Under Siege". He uses a microwave as a trigger >for a bomb. Is it just me who thinks that this sort of thing will not be >taught to Navy Seals? :)) Don't forget that he is a cook and has to know that it's bad to put metal into a microwave. And he probably saw Gremlins 2, or was that later?? What is strange though that he knows so much about heavy artillery and ballistics as well... >OTOH, I thought he was very good in "Interview with a vampire". I'm not sure >whether that was wishful thinking though. I mean... he was dead. ;)) Wasn't Brad Pit dead as well? Sounds like a very nice film although I haven't seen it ;-) >> You're reaction is quite mono-syllabic... >Nah. ;)) And again... >What, you enjoy him making himself look like an arsehole when he f**ks up >completely? ;)) That's great! ;-) >He is. And I've now bought Romeo Must Die on DVD - so I hope it's good! I >also bought Scream 3. Even if that isn't much good (dunno, haven't seen it) >at least it means I've got all 3 now. You surely have too many DVDs! You could try watching them in German ;-) >I have waaaay too many DVDs. And too much music (can you EVER have too much >music?)! Nope, music is VERY IMPORTANT! >How am I going to get it all home? :o Don't ask me! >> I have one ;-) >So - which is bigger? Aw, I'm too lazy at the moment... >Neil. -- M.I.K.e Cocaine -- the thinking man's Dristan. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 02:45:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA57052 for dynarec-outgoing; Sun, 30 Jul 2000 02:45:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002b01bffa0c$575c94e0$61c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <003701bff98e$ab9675e0$70c0523e@hal9000> <009c01bff9b5$d2df2760$0100a8c0@lion> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 11:55:44 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > BTW, Neil you could take away the mul8 list all the August and noones > > would know about it. ;) Noone has said nothing about last message, > > this time even teasing them they don't say nothing. I'm beginning to be > > really worried. Or perhaps everyone really interested has migrated > > to this list? > > I'm giving you another 2 months before you get as pissed off with it as I > was. I've now gone over to the other side where I don't actually care > anymore. I'll help if people want help - but they've got to help themselves > first. Because I'm not going to try anymore! > In fact it really doesn't matter now. ;) I was doing nothing about my university project so I sent the docs to my tutor. He liked them and we talked about how finally would be the project. As I have saied many times (too many I think ;) my project is a bit strange because my intention has never been to implement something or do something new. I would want to investigate how can be implemented an emulator, a arcade or console emulator more specific (but it could also work for other purpose with some modifications). To investigate how it was done, how it is been doing and how it will be done. I planned three main parts: interpreter emulators, dynamic recompilation and that bitchy part of graphics, sound and miscelanous hardware emulation. I supose I will have to invent the last one or just to try skip fairly it ;). Another part should be to implement something (or they would have crushed me for sure ;) and I thought in do something with the MegaDrive (sure without sound!) and the 68k. The last meeting (last week) with my tutor we talked again about how it should be my project and we get to some changes (easy because I have done really nothing ;). First there will be two parts for sure: dynarec and common emulators. The part about common emulators will be the SI tutorial with the implementation of the emulator made by myself (it isn't too difficult ;). It should have to modify it because a university professor isn't precisely the kind of guy (in terms of knowledge and age mainly) who is subscribed to the mul8 list ;) And I don't know if it will be in Spanish or in English, but I hope it will be in both, not sure what version I will present for the project ... The dynarec part ... well, it will be somekind of document about dynarec. Not sure if I will continue the one I started or I will begin from scratch. Finally it will be another emulator but it won't be implemented from scratch. I have thought (but it is the weakest point in my planification) again in the Mega Drive. Just implement the graphics (not sure about the sound but I think it will be too expensive in time) and use an already made CPU core (the tribunal will have to accept it because it is a common practice in emulation ;). And I will be happy if it could be our DR68K :) and then I could compare it with Starscream. The part about graphics, sound and hardware emulation will be then covered by the explanation (with someway of generalization) about the Mega Drive emulator I will have implemented. I will want to make a real document about sound and graphics emulation but I don't think I could find the sources I would need. And learning by myself could take too much time. Well, as I will use something that it isn't all mine (the SI tutorial and the DR68K) for something it is just a private benefit if you think I'm abusing just tell me. If I finally end it (and with an English version) I will release my project (if I end it ;) as its purpose is: a general reference document about emulation. Damn! Too long posting! ;)) > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 04:14:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA57135 for dynarec-outgoing; Sun, 30 Jul 2000 04:14:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009401bffa20$84794220$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000729115029.007dc420@powernet.net> <3.0.5.32.20000729154900.007dfcd0@powernet.net> Subject: Re: DYNAREC: An emulation legal document Date: Sun, 30 Jul 2000 12:57:56 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > The issue wasn't about the legality of reverse engineering, but how > emulator authors did it ... wether it was by looking through software or > looking at schematics. I haven't yet looked at the document, I've been > working on this evil DirectX stuff :P You know that when I wrote my Speccy emu for the CPC I actually never used schematics? All I had was incredibly detailed info from some of my Speccy demo coder friends. Mind you, I say "all" - but that's probably better than the schematics! :) As for DirectX - if you get stuck, give me a bell. Graphics is my area of interest (if you didn't know already!). But if it's DirectSound then I may have to send you away - the same with DirectPlay. DirectX is evil. Why, oh why, does it take around 100 lines to get a window to appear? :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 04:14:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA57166 for dynarec-outgoing; Sun, 30 Jul 2000 04:14:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009801bffa20$89f81e60$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <003701bff98e$ab9675e0$70c0523e@hal9000> <009c01bff9b5$d2df2760$0100a8c0@lion> <002b01bffa0c$575c94e0$61c3523e@hal9000> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 13:13:40 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, [snip] Sounds like a nice idea! > Finally it will be another emulator but it won't be implemented > from scratch. I have thought (but it is the weakest point in my > planification) again in the Mega Drive. Just implement the graphics > (not sure about the sound but I think it will be too expensive in > time) and use an already made CPU core (the tribunal will have > to accept it because it is a common practice in emulation ;). Okay, make sure your tutor has agreed to this first though. > Well, as I will use something that it isn't all mine (the SI tutorial and > the DR68K) for something it is just a private benefit if you think I'm > abusing just tell me. If I finally end it (and with an English version) > I will release my project (if I end it ;) as its purpose is: a general > reference document about emulation. I have no problem with it. I doubt that anyone else will either! Go for it! :) > Damn! Too long posting! ;)) I know - I snipped most of it! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 04:15:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA57171 for dynarec-outgoing; Sun, 30 Jul 2000 04:14:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009701bffa20$891649e0$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <009a01bff9b5$d15ea1e0$0100a8c0@lion> <00036d97c1d48c70_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 13:11:43 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, And now it indents your mail. I'm getting very annoyed... > Electrically Erasable Programmable Read-Only Memory > (meaning you use electricity instead of UV light to erase it ;-) The UV light ones were great. I used to take about 15 of them down to the local hairdressers where they had a sunbed. £3 and I had 15 blank EPROMS. :)) > >PS If you've ever heard any songs by "The Bloodhouse Gang" then you'll know > >how funny - but how shit they are. Why do I mention it? I'm listening to > >them at the moment (MP3)... > > "This is rediculous! How do you expect my to work under this direction?" ;-) > (I bet he accidentally said "erection" on the first take!) It's very, very sick. But mildly amusing - in a childish way. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 04:15:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA57170 for dynarec-outgoing; Sun, 30 Jul 2000 04:14:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009601bffa20$87cfc020$0100a8c0@lion> From: "Neil Griffiths" To: References: <01bff860$f45dcc80$35901a17@turkey> <00036d761ba06662_mailit@mail.dynarec.com> <004201bff8e6$2405f540$0100a8c0@lion> <00036d8b742451cc_mailit@mail.dynarec.com> <009601bff9b5$ce176620$0100a8c0@lion> <00036d9795a29206_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 13:10:13 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, It's bloody done it again! Right, that's it. I'm going to find a bloody mail program that works! >Hmm, Mail-It has Outlook Express import - don't ask me if it works... I'm going to go find out... >>Yes, but I don't have a German keyboard so I can't insert that character! > >Crap! ;-) But on the other hand I can't insert the French accents either. So it's not a total loss. ;) Heh, Gwenole is going to think that I hate the French. It's not true. I just hate specific French people - specifically the two in my apartment! ;) >>Okay. I can agree to that. English is a strange language too - it's just >>easier because it doesn't have all the masc./fem. stuff. But other things >>(like verbs!) are difficult so... > >It's hard to decide and since we both are a bit biased (due to our mother >tongues) I guess we'll never reach a decision. I could ask Corentin - one of the French guys who I share an apartment with. He speaks both languages fluently so he could answer. But I really can't be arsed getting up off my backside to ask. And I don't really want to speak to him anyway - given that he almost blew up both my computer and amp the other day. And then failed to see why I was angry... >>If it makes you feel any better, remember that I have the same problem - but >>the other way around. So if I have an irregular verb, I have to find the >>regular verb to convert it into German. And quite often I'll find German is >>also irregular so I have to reconvert. So we all have the same problem. :o > >So were both in the same boat... Hey, put that hatchet away! If I'm going down then so are you! Oo-er! Don't look for innuendo there... ;)) >>Good point. Okay, so how would I say "Would you like to come to the cinema >>with me?" then? > >Normal: "Willst Du mit mir ins Kino gehen?" >Very polite: "Würdest Du mit mir ins Kino gehen wollen?" (But nobody would >say that although it's closer to your English sentence.) Hmm, that isn't the example phrase I was given. It was something like (all my documentation is still in work!): Wurd du gern zu kommst ins Kino mit? But that makes no sense. But I'm hoping that you can see the sentence I'm trying to make. I did a complete re-install the other day and now have no German->English dictionary on my computer. :o >>I have no problems with that. ;) > >Me neither, at least in 3D shooters... It would be interesting if you could type GOD in real life - and it worked... ;) >>Unless we talk about 4 and 5GLs. ;) > >Oh no! BTW, I guess you know that *Prolog* is a 5GL? ;-) Since when? In the documentation for the Prolog thing that I had on my computer it claimed that Prolog, like SQL, was a 4GL... >>>"When flies fly behind flies, flies fly behind flies." >>Damn, of course it was. Still, I was close. :)) > >Yup, you're getting better. It's difficult to get worse. ;) >"Sie" is only used when you address someone otherwise it's always "sie". It's yet another freaky thing about the German language. I'm sure we have similar things in English. I don't believe English is a perfect language either. It isn't. :) >>I'm betting that'll give me a worse reaction than "So young!". ;)) > >That would be a good occasion to practice some dodge moves ;-) It's more difficult to dodge knives... ;) >>I'm interested in local history - so I know a fair bit about my home region. >>;) > >I have to admit that I didn't learn too much about British history and forgot >much but I guess I still know more than many others. Maybe I should try to >get the book "1066 and all that" someday ;-) I was on a S-Bahn the other day with some French people. Then I looked up and saw a sign saying "Sie fahren heute mit Wagen 1066". I was the only one to realise the reference... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 04:15:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA57182 for dynarec-outgoing; Sun, 30 Jul 2000 04:15:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009501bffa20$86800ea0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: The future of emulation Date: Sun, 30 Jul 2000 13:00:40 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Yep. It does. I expected to have major problems with the electronics and > switches going all screwy on me, but as it turns out, all the "hard > stuff" works great. It's now just a matter of alignment and modification > to get the rest of it to work properly. That's cool then. I'm glad it works! Now all I need is an invite to come to your house and I'll go play test it! ;)) > > I would have wished you a good time - but chances are that you've been and > > come back by now! > > Yep. Survived. Went to a strip club. Only one of the chicks there really > did anything for me. Oh, not good. Still, I'm guessing you went there for the husband-to-be so... ;) > I also noticed that all the strippers tend to go for the ugly guys almost > exclusively. Is that true in Europe? I don't know, I'm innocent (well, that's my story - and I'm sticking to it!). Anyone? :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 04:39:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA57212 for dynarec-outgoing; Sun, 30 Jul 2000 04:39:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004b01bffa1c$4e5cdc00$61c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <009501bffa20$86800ea0$0100a8c0@lion> Subject: Re: DYNAREC: The future of emulation Date: Sun, 30 Jul 2000 13:49:43 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I also noticed that all the strippers tend to go for the ugly guys almost > > exclusively. Is that true in Europe? > > I don't know, I'm innocent (well, that's my story - and I'm sticking to > it!). Anyone? :) > Don't ask me. I don't know nothing. I refuse to know nothing. ;) > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 04:42:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA57225 for dynarec-outgoing; Sun, 30 Jul 2000 04:42:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005301bffa1c$995cfe60$61c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <003701bff98e$ab9675e0$70c0523e@hal9000> <009c01bff9b5$d2df2760$0100a8c0@lion> <002b01bffa0c$575c94e0$61c3523e@hal9000> <009801bffa20$89f81e60$0100a8c0@lion> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 13:52:11 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Sounds like a nice idea! > It does. :) > > Finally it will be another emulator but it won't be implemented > > from scratch. I have thought (but it is the weakest point in my > > planification) again in the Mega Drive. Just implement the graphics > > (not sure about the sound but I think it will be too expensive in > > time) and use an already made CPU core (the tribunal will have > > to accept it because it is a common practice in emulation ;). > > Okay, make sure your tutor has agreed to this first though. > I talked him about it and he agreed too. In any case as anyone of the tribunal (but my tutor) don't know anything about the emuscene who cares? ;) > > Damn! Too long posting! ;)) > > I know - I snipped most of it! ;) > This isn't polite. ;) > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 05:23:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA57266 for dynarec-outgoing; Sun, 30 Jul 2000 05:23:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <002b01bffa0c$575c94e0$61c3523e@hal9000> Message-ID: <00036da05dc286fb_mailit@mail.dynarec.com> References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <003701bff98e$ab9675e0$70c0523e@hal9000> <009c01bff9b5$d2df2760$0100a8c0@lion> <002b01bffa0c$575c94e0$61c3523e@hal9000> Date: Sun, 30 Jul 2000 14:34:25 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I planned three main parts: interpreter emulators, dynamic recompilation >and that bitchy part of graphics, sound and miscelanous hardware >emulation. I supose I will have to invent the last one or just to try skip >fairly it ;). I hope you can cover the last part because this is where other docs fail. >And I don't know if it will be in Spanish or in >English, but I hope it will be in both, not sure what version I will >present for the project ... I hope you do an addition English doc because that way you'll find interested proof readers and commentors on the list, not to mention that you'll be able to address a much bigger audience in the end. >The dynarec part ... well, it will be somekind of document about >dynarec. Not sure if I will continue the one I started or I will >begin from scratch. It depends when you started it. If you changed too much of your thinking since then it would be best to begin from scratch again than trying to find inconsitencies in the end. >Finally it will be another emulator but it won't be implemented >from scratch. I have thought (but it is the weakest point in my >planification) again in the Mega Drive. Just implement the graphics >(not sure about the sound but I think it will be too expensive in >time) and use an already made CPU core (the tribunal will have >to accept it because it is a common practice in emulation ;). And >I will be happy if it could be our DR68K :) and then I could >compare it with Starscream. When DR68K is done until then... >The part about graphics, sound and >hardware emulation will be then covered by the explanation (with >someway of generalization) about the Mega Drive emulator I >will have implemented. I will want to make a real document about >sound and graphics emulation but I don't think I could find the sources >I would need. And learning by myself could take too much time. I think the important thing about graphics emulation is to have two parts: 1. How to emulate the graphics hardware with many possibilities: - No special graphics hardware, most manipulation is done by the CPU (Atari ST) - Simple controllers, eg. 6845 CRTC - More complex chips which can handle sprites etc, eg. 6567 VIC-II - Simple display list processors, eg. ANTIC - 3D and special effects chips, eg. GTE or SuperFX 2. How to display the graphics on the host: - CLUTs - frameskipping - dirty rectangles - probably direct emulation, ie. the VDP emulation modifies the host's screen buffer directly As for sound I have not much knowledge how to emulate it, but I know that there are various methods how systems create sound: * The CPU controlls a speaker directly, eg. Apple 2 * PSG (Programmably Sound Generator) * FM (Freqency Modulation) * DSP (Digital Signal Processor) I bet that NB has quite some knowledge about this topic. >I will release my project (if I end it ;) as its purpose is: a general >reference document about emulation. That would be very cool indeed! I'm still waiting for a document which covers almost all topics of emulation. >Damn! Too long posting! ;)) But interesting ;-) >Victor -- M.I.K.e God made the world in six days, and was arrested on the seventh. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 06:03:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA57320 for dynarec-outgoing; Sun, 30 Jul 2000 06:03:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <009601bffa20$87cfc020$0100a8c0@lion> Message-ID: <00036da0d5a92ae2_mailit@mail.dynarec.com> References: <01bff860$f45dcc80$35901a17@turkey> <00036d761ba06662_mailit@mail.dynarec.com> <004201bff8e6$2405f540$0100a8c0@lion> <00036d8b742451cc_mailit@mail.dynarec.com> <009601bff9b5$ce176620$0100a8c0@lion> <00036d9795a29206_mailit@mail.dynarec.com> <009601bffa20$87cfc020$0100a8c0@lion> Date: Sun, 30 Jul 2000 15:07:56 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>Hmm, Mail-It has Outlook Express import - don't ask me if it works... >I'm going to go find out... Maybe I should note that Mail-It is for BeOS and can be found at www.bebits.com ;-) >But on the other hand I can't insert the French accents either. So it's not >a total loss. ;) Hehe ;-) >I could ask Corentin - one of the French guys who I share an apartment with. >He speaks both languages fluently so he could answer. But I really can't be >arsed getting up off my backside to ask. And I don't really want to speak to >him anyway - given that he almost blew up both my computer and amp the other >day. And then failed to see why I was angry... I would have thrown him out of the window! BTW, I think it's easy to make jokes out of his name: Corentin - cretin (sp?) ;-) >Hmm, that isn't the example phrase I was given. It was something like (all >my documentation is still in work!): >Wurd du gern zu kommst ins Kino mit? I guess you mean "Würdest Du gerne ins Kino mitkommen?" ... >But that makes no sense. But I'm hoping that you can see the sentence I'm >trying to make. I did a complete re-install the other day and now have no >German->English dictionary on my computer. :o That's hard! ;-) >It would be interesting if you could type GOD in real life - and it >worked... ;) Damn, where is that bloody console?!? Please tell me if you find it! >Since when? In the documentation for the Prolog thing that I had on my >computer it claimed that Prolog, like SQL, was a 4GL... I thought all languages for AI were 5GLs... So what would be a 5GL then? >It's more difficult to dodge knives... ;) Or bullets: "Dodge this!" ;-) >I was on a S-Bahn the other day with some French people. Then I looked up >and saw a sign saying "Sie fahren heute mit Wagen 1066". I was the only one >to realise the reference... :) They don't know William the Conquerer? Ignorants! >Neil. -- M.I.K.e "The last time somebody said, `I find I can write much better with a word processor.', I replied, `They used to say the same thing about drugs.' -- Roy Blount, Jr. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 06:03:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA57325 for dynarec-outgoing; Sun, 30 Jul 2000 06:03:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: Message-ID: <00036da0df0e7787_mailit@mail.dynarec.com> References: Date: Sun, 30 Jul 2000 15:10:34 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yep. It does. I expected to have major problems with the electronics and >switches going all screwy on me, but as it turns out, all the "hard >stuff" works great. It's now just a matter of alignment and modification >to get the rest of it to work properly. Sounds nice. >Yep. Survived. Went to a strip club. Only one of the chicks there really >did anything for me. Well... >I also noticed that all the strippers tend to go for the ugly guys almost >exclusively. Is that true in Europe? Don't ask me! I only noticed that in the city the ugliest idiots seem to have the most beautiful girlfriends... It's really frustrating... >-->Neil -- M.I.K.e *** NEWSFLASH *** Russian tanks steamrolling through New Jersey!!!! Details at eleven! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 06:52:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA57367 for dynarec-outgoing; Sun, 30 Jul 2000 06:52:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006b01bffa2e$cf3ec420$61c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <003701bff98e$ab9675e0$70c0523e@hal9000> <009c01bff9b5$d2df2760$0100a8c0@lion> <002b01bffa0c$575c94e0$61c3523e@hal9000> <00036da05dc286fb_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 16:02:32 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I planned three main parts: interpreter emulators, dynamic recompilation > >and that bitchy part of graphics, sound and miscelanous hardware > >emulation. I supose I will have to invent the last one or just to try skip > >fairly it ;). > > I hope you can cover the last part because this is where other docs fail. > I was thinking about it and the only way I could do this part is: 1) studying different hardware specifications (or perhaps the more common). For example examples of sprite based graphic chips, vector graphics, 3D graphics (I have studied some THEORY about 3D but never the practice). For sound FM, DAC or whatever it exists. This means find hardware specifications and also try to find information about how they are programmed (this last perhaps could be found in videogames development forums). 2) study the source code of some emulators. But this is a hard taks and sometimes very useless. 3) find someone who knows a lot about this topic and abuse a lot of his help. ;) > >And I don't know if it will be in Spanish or in > >English, but I hope it will be in both, not sure what version I will > >present for the project ... > > I hope you do an addition English doc because that way you'll find interested > proof readers and commentors on the list, not to mention that you'll be able > to address a much bigger audience in the end. > I will do an English version but I'm still not sure of the Spanish version ... I would present it in English but I don't think it is enough good for a university project. > >The dynarec part ... well, it will be somekind of document about > >dynarec. Not sure if I will continue the one I started or I will > >begin from scratch. > > It depends when you started it. If you changed too much of your thinking > since then it would be best to begin from scratch again than trying to find > inconsitencies in the end. > I started it a month before the discussion with Neil. ;) So yes a lot of things have changed since that time. > > I think the important thing about graphics emulation is to have two parts: > > 1. How to emulate the graphics hardware with many possibilities: > - No special graphics hardware, most manipulation is done by the CPU > (Atari ST) > - Simple controllers, eg. 6845 CRTC > - More complex chips which can handle sprites etc, eg. 6567 VIC-II > - Simple display list processors, eg. ANTIC > - 3D and special effects chips, eg. GTE or SuperFX > > 2. How to display the graphics on the host: > - CLUTs > - frameskipping > - dirty rectangles > - probably direct emulation, ie. the VDP emulation modifies the host's > screen buffer directly > > Yes it should be something like this. The different hardware they are to be emulated, the different hardware to emulate with and how it will be implemented. > >I will release my project (if I end it ;) as its purpose is: a general > >reference document about emulation. > > That would be very cool indeed! I'm still waiting for a document which covers > almost all topics of emulation. > You should have to wait still a long time. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 07:22:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA57401 for dynarec-outgoing; Sun, 30 Jul 2000 07:22:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <006b01bffa2e$cf3ec420$61c3523e@hal9000> Message-ID: <00036da207b062f5_mailit@mail.dynarec.com> References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <003701bff98e$ab9675e0$70c0523e@hal9000> <009c01bff9b5$d2df2760$0100a8c0@lion> <002b01bffa0c$575c94e0$61c3523e@hal9000> <00036da05dc286fb_mailit@mail.dynarec.com> <006b01bffa2e$cf3ec420$61c3523e@hal9000> Date: Sun, 30 Jul 2000 16:33:31 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > 1) studying different hardware specifications (or perhaps the more >common). That would be cool, although it is hard to get much information in many cases. >For example examples of sprite based graphic chips, >vector graphics, 3D graphics (I have studied some THEORY about >3D but never the practice). Well, you're lucky that we have a 3D geek on the list: NG ;-) >For sound FM, DAC or whatever >it exists. This means find hardware specifications and also try >to find information about how they are programmed (this last perhaps >could be found in videogames development forums). Sounds like a lot of work. > 2) study the source code of some emulators. But this is a hard >task and sometimes very useless. I agree that code is often a bad basis for documentation work. > 3) find someone who knows a lot about this topic and abuse a lot >of his help. ;) That's probably the best idea ;-) NG -> 3D NB -> Sound, input devices (no polling but interrupts) me -> mainly RISC processors >I started it a month before the discussion with Neil. ;) So yes a lot >of things have changed since that time. I guess a rewrite is in order then... >You should have to wait still a long time. ;) Better late than never ;-) >Victor -- M.I.K.e Don't worry about the world coming to an end today. It's already tomorrow in Australia. -- Charles Schultz --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 07:40:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA57425 for dynarec-outgoing; Sun, 30 Jul 2000 07:40:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007701bffa35$700eebe0$61c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <003701bff98e$ab9675e0$70c0523e@hal9000> <009c01bff9b5$d2df2760$0100a8c0@lion> <002b01bffa0c$575c94e0$61c3523e@hal9000> <00036da05dc286fb_mailit@mail.dynarec.com> <006b01bffa2e$cf3ec420$61c3523e@hal9000> <00036da207b062f5_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 16:49:38 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > 1) studying different hardware specifications (or perhaps the more > >common). > > That would be cool, although it is hard to get much information in many > cases. > Well we have very good (or only good ;) documentation about sprite based consoles: Mega Drive, SuperNES and others. There is information about Play Station and I supose for N64 for the 3D graphics. > >For example examples of sprite based graphic chips, > >vector graphics, 3D graphics (I have studied some THEORY about > >3D but never the practice). > > Well, you're lucky that we have a 3D geek on the list: NG ;-) > Really lucky. ;) > >For sound FM, DAC or whatever > >it exists. This means find hardware specifications and also try > >to find information about how they are programmed (this last perhaps > >could be found in videogames development forums). > > Sounds like a lot of work. > And it is because of that I'm not sure about doing the graphic/sound part. > > 2) study the source code of some emulators. But this is a hard > >task and sometimes very useless. > > I agree that code is often a bad basis for documentation work. > I think it only helps to see in the practice what you have learned in the theory. It did work this way when learning about emulators and dynarec. > > 3) find someone who knows a lot about this topic and abuse a lot > >of his help. ;) > > That's probably the best idea ;-) > NG -> 3D > NB -> Sound, input devices (no polling but interrupts) > me -> mainly RISC processors > I have agree with you. It is the best idea. ;) But this is a kind of work of "journalist" or "compiler" that I don't know if I could do correctly (I work well with documents, but perhaps not so good with people ;). It means making the right questions and getting good answers. And of course means a lot of help of that people. ;) > >I started it a month before the discussion with Neil. ;) So yes a lot > >of things have changed since that time. > > I guess a rewrite is in order then... > And I will have to reread all the docs about dynarec again (I have really bad memory) so it is better to start it again. > >You should have to wait still a long time. ;) > > Better late than never ;-) > I don't know how it will end (I always change my first plans many times) but it is sure I will try to do something useful. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 10:21:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA57547 for dynarec-outgoing; Sun, 30 Jul 2000 10:21:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <007701bffa35$700eebe0$61c3523e@hal9000> Message-ID: <00036da4899daa20_mailit@mail.dynarec.com> References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <003701bff98e$ab9675e0$70c0523e@hal9000> <009c01bff9b5$d2df2760$0100a8c0@lion> <002b01bffa0c$575c94e0$61c3523e@hal9000> <00036da05dc286fb_mailit@mail.dynarec.com> <006b01bffa2e$cf3ec420$61c3523e@hal9000> <00036da207b062f5_mailit@mail.dynarec.com> <007701bffa35$700eebe0$61c3523e@hal9000> Date: Sun, 30 Jul 2000 19:33:01 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well we have very good (or only good ;) documentation about sprite >based consoles: Mega Drive, SuperNES and others. There is information >about Play Station and I supose for N64 for the 3D graphics. I guess you know that rather big doc about the Playstation. It's written by Joshua Walker. >> Well, you're lucky that we have a 3D geek on the list: NG ;-) >Really lucky. ;) Let's wait if Neil sees it the same way ;-) >> Sounds like a lot of work. >And it is because of that I'm not sure about doing the graphic/sound part. That would be a pity because I'm still waiting for a doc to cover these topics as well, but I could understand your decision. >I think it only helps to see in the practice what you have learned in >the theory. It did work this way when learning about emulators >and dynarec. Well, as for dyanrecs most code were just examples how it shouldn't be done... >I have agree with you. It is the best idea. ;) I guess it's the fastest if you know who to ask which questions. >But this is a kind of work of "journalist" or "compiler" that I don't know >if I could do correctly (I work well with documents, but perhaps not so >good with people ;). It means making the right questions and getting >good answers. Although your English isn't perfect I didn't notice that you had much problems to comunicate with the others on the list. But there is another problem: when you get your information mainly from discussions there won't be much literature to list and I'm not sure if your tutor will like that, even though you might get better information that way... >And of course means a lot of help of that people. ;) Hmm, right - actually I think it's a bad idea if you'd gather information like that ;-) >And I will have to reread all the docs about dynarec again (I have really >bad memory) so it is better to start it again. My brain works a bit strange, so I often forget something but can remember many other things. Even though I remembered many things from the DR docs I got more from the text when I read some of them a second time, simply because I understood more and sometimes was even able to read "betweem the lines". So I think it's a good idea to reread the docs. >I don't know how it will end (I always change my first plans many times) >but it is sure I will try to do something useful. I hope so ;-) >Victor -- M.I.K.e So far as I can remember, there is not one word in the Gospels in praise of intelligence. -- Bertrand Russell --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 11:49:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA57618 for dynarec-outgoing; Sun, 30 Jul 2000 11:48:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701bffa58$38b4c3e0$63c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <003701bff98e$ab9675e0$70c0523e@hal9000> <009c01bff9b5$d2df2760$0100a8c0@lion> <002b01bffa0c$575c94e0$61c3523e@hal9000> <00036da05dc286fb_mailit@mail.dynarec.com> <006b01bffa2e$cf3ec420$61c3523e@hal9000> <00036da207b062f5_mailit@mail.dynarec.com> <007701bffa35$700eebe0$61c3523e@hal9000> <00036da4899daa20_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 20:58:58 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Well we have very good (or only good ;) documentation about sprite > >based consoles: Mega Drive, SuperNES and others. There is information > >about Play Station and I supose for N64 for the 3D graphics. > > I guess you know that rather big doc about the Playstation. It's written by > Joshua Walker. > Right. In fact I haven't read it and I didn't know who wrote it. I just had it so I took a look and you are right it's written by Joshua Walker. ;) > >> Sounds like a lot of work. > >And it is because of that I'm not sure about doing the graphic/sound part. > > That would be a pity because I'm still waiting for a doc to cover these > topics as well, but I could understand your decision. > I'm also interested but still in doubt. I don't want to spend in my university project more than a year. ;) (In fact if I count the time when I subscribed it it is 6 months old now : p) > >I think it only helps to see in the practice what you have learned in > >the theory. It did work this way when learning about emulators > >and dynarec. > > Well, as for dyanrecs most code were just examples how it shouldn't be > done... > It seems so. > >But this is a kind of work of "journalist" or "compiler" that I don't know > >if I could do correctly (I work well with documents, but perhaps not so > >good with people ;). It means making the right questions and getting > >good answers. > > Although your English isn't perfect I didn't notice that you had much > problems to comunicate with the others on the list. But there is another > problem: when you get your information mainly from discussions there won't be > much literature to list and I'm not sure if your tutor will like that, even > though you might get better information that way... > Who will try to read the literature in fact? I could invent some. ;) No, I think my tutor knows (because I have saied many times) that there isn't real "literature" for this topic, so I think he will accept it (I don't know what will do the tribunal though). I have some "literature" about dynarec, sure I will find something about interpreters (althought I won't use it ;) and also the manuals and docs of the different consoles. If not I will add a big list of people who has helped me with many URL (most of them useless) becuase an URL is something modern and cool. ;) > >And of course means a lot of help of that people. ;) > > Hmm, right - actually I think it's a bad idea if you'd gather information > like that ;-) > Hehe! Coward. ;) > >And I will have to reread all the docs about dynarec again (I have really > >bad memory) so it is better to start it again. > > My brain works a bit strange, so I often forget something but can remember > many other things. Even though I remembered many things from the DR docs I > got more from the text when I read some of them a second time, simply because > I understood more and sometimes was even able to read "betweem the lines". So > I think it's a good idea to reread the docs. > I think I have readed a few times Ardi's but I still doesn't remember it. ;) No, I have a very bad memory in some cases. But it's funny with books and movies. I can read a book or see movie I like many times and I still enjoy with it because I don't remember from the first all about it. But when I saw or read something I have seen or read before always (or the most usually) I know I have done it before. Strange ... > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 12:11:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA57647 for dynarec-outgoing; Sun, 30 Jul 2000 12:11:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000730122034.007dfaf0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 30 Jul 2000 12:20:34 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: An emulation legal document In-Reply-To: <009401bffa20$84794220$0100a8c0@lion> References: <3.0.5.32.20000729115029.007dc420@powernet.net> <3.0.5.32.20000729154900.007dfcd0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >As for DirectX - if you get stuck, give me a bell. Graphics is my area of >interest (if you didn't know already!). But if it's DirectSound then I may >have to send you away - the same with DirectPlay. DirectDraw is my main focus right now. Then I'll have to do DirectInput (a long ways off, I haven't even really begun to port Genital to Windows yet) and last, DirectSound. ATani (who did the Genital32 port) sent me the modifications he made to get Genital to run under Windows and that is helping a lot. But... Genital32 ran EXTREMELY slow on my system. I don't know enough about DirectX to be able to say what caused it. I run in 16-bit color mode, and emulators such as DGen and Gens do much better. Genital32 was getting like 2FPS. :/ I'll keep messing around with it, though ;) >DirectX is evil. Why, oh why, does it take around 100 lines to get a window >to appear? :o Yeah... all those stupid data structures. They could have made it a lot simpler, with perhaps just one or 2 if they wanted to. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 13:08:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA57697 for dynarec-outgoing; Sun, 30 Jul 2000 13:08:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <000701bffa58$38b4c3e0$63c3523e@hal9000> Message-ID: <00036da6d5dcebb4_mailit@mail.dynarec.com> References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <003701bff98e$ab9675e0$70c0523e@hal9000> <009c01bff9b5$d2df2760$0100a8c0@lion> <002b01bffa0c$575c94e0$61c3523e@hal9000> <00036da05dc286fb_mailit@mail.dynarec.com> <006b01bffa2e$cf3ec420$61c3523e@hal9000> <00036da207b062f5_mailit@mail.dynarec.com> <007701bffa35$700eebe0$61c3523e@hal9000> <00036da4899daa20_mailit@mail.dynarec.com> <000701bffa58$38b4c3e0$63c3523e@hal9000> Date: Sun, 30 Jul 2000 22:17:30 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Right. In fact I haven't read it and I didn't know who wrote it. I just had >it so I took a look and you are right it's written by Joshua Walker. ;) I also had to take a brief look who wrote it, but I wanted to make sure we are talking about the same doc. >I'm also interested but still in doubt. I don't want to spend in my >university project more than a year. ;) Understandable... >Who will try to read the literature in fact? I could invent some. ;) >No, I think my tutor knows (because I have saied many times) that >there isn't real "literature" for this topic, so I think he will accept it As long as we all are credited ;-) >(I don't know what will do the tribunal though). I have some "literature" >about dynarec, sure I will find something about interpreters (althought >I won't use it ;) Don't like Marat's HowTo? ;-) >and also the manuals and docs of the different consoles. >If not I will add a big list of people who has helped me with many URL >(most of them useless) becuase an URL is something modern and cool. ;) Yeah, in 10 years you won't find any document where not half of the references are URLs. >Hehe! Coward. ;) Why should I be afraid? ;-) >I think I have readed a few times Ardi's but I still doesn't remember it. ;) Most of it is just marketing speech and then they have there great translation examples which don't help anything... >No, I have a very bad memory in some cases. But it's funny with books >and movies. I can read a book or see movie I like many times and I still >enjoy with it because I don't remember from the first all about it. But >when I saw or read something I have seen or read before always (or >the most usually) I know I have done it before. Strange ... It seems that my memory is worse than it used to be. Some years ago I knew each film I've ever seen, but now I think I could watch a film which is unknown to me and after some time realise that I've seen it before... But there are still some films I know totally by heart! I surely cannot watch Star Wars when I'm very tired because I'll surely fall asleep... >Victor -- M.I.K.e A neighbor came to Nasrudin, asking to borrow his donkey. "It is out on loan," the teacher replied. At that moment, the donkey brayed loudly inside the stable. "But I can hear it bray, over there." "Whom do you believe," asked Nasrudin, "me or a donkey?" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 13:58:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA57746 for dynarec-outgoing; Sun, 30 Jul 2000 13:58:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 30 Jul 2000 14:14:42 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: An emulation legal document In-Reply-To: <3.0.5.32.20000730122034.007dfaf0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > ATani (who did the Genital32 port) sent me the modifications he made to get > Genital to run under Windows and that is helping a lot. But... Genital32 > ran EXTREMELY slow on my system. I don't know enough about DirectX to be > able to say what caused it. I run in 16-bit color mode, and emulators such > as DGen and Gens do much better. Genital32 was getting like 2FPS. :/ Sounds like he didn't set up the paletting correctly. This is a really common problem. Want me to look at the DirectDraw port of it? > >DirectX is evil. Why, oh why, does it take around 100 lines to get a window > >to appear? :o > Yeah... all those stupid data structures. They could have made it a lot > simpler, with perhaps just one or 2 if they wanted to. Hm... well, I fill out a couple of structures and about 4 calls and it's off to the races. Apparently someone isn't using DirectDraw correctly. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 14:02:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA57763 for dynarec-outgoing; Sun, 30 Jul 2000 14:02:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000730141113.007e0100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 30 Jul 2000 14:11:13 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: An emulation legal document In-Reply-To: References: <3.0.5.32.20000730122034.007dfaf0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 02:14 PM 7/30/2000 +0000, you wrote: >> ATani (who did the Genital32 port) sent me the modifications he made to get >> Genital to run under Windows and that is helping a lot. But... Genital32 >> ran EXTREMELY slow on my system. I don't know enough about DirectX to be >> able to say what caused it. I run in 16-bit color mode, and emulators such >> as DGen and Gens do much better. Genital32 was getting like 2FPS. :/ > >Sounds like he didn't set up the paletting correctly. This is a really >common problem. Want me to look at the DirectDraw port of it? Sure, that would be great, the zip is 10KB. I could send it to your synthcom email address if you'd like. Only the files he modified are included, which is just a few. >Hm... well, I fill out a couple of structures and about 4 calls and it's >off to the races. Apparently someone isn't using DirectDraw correctly. ;-) Hey, I'm new to it, I've got an excuse ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 14:30:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA57816 for dynarec-outgoing; Sun, 30 Jul 2000 14:30:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000e01bffa76$7b2e9ac0$0100a8c0@lion> From: "Neil Griffiths" To: References: <009501bffa20$86800ea0$0100a8c0@lion> <004b01bffa1c$4e5cdc00$61c3523e@hal9000> Subject: Re: DYNAREC: The future of emulation Date: Sun, 30 Jul 2000 23:08:20 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Don't ask me. I don't know nothing. I refuse to know nothing. ;) Ah, it's that double negative problem again. If you refuse to know nothing then that means that you know something... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 14:30:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA57817 for dynarec-outgoing; Sun, 30 Jul 2000 14:30:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000f01bffa76$7bf06420$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <003701bff98e$ab9675e0$70c0523e@hal9000> <009c01bff9b5$d2df2760$0100a8c0@lion> <002b01bffa0c$575c94e0$61c3523e@hal9000> <009801bffa20$89f81e60$0100a8c0@lion> <005301bffa1c$995cfe60$61c3523e@hal9000> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 23:11:57 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Sounds like a nice idea! > > > It does. :) Good. Because it's your idea. :) > > Okay, make sure your tutor has agreed to this first though. > > > I talked him about it and he agreed too. In any case as anyone > of the tribunal (but my tutor) don't know anything about the > emuscene who cares? ;) Well, if you take source from somewhere else then the tribuneral comittee may well not pass your project. But if your project teacher *agreed* then you don't have that problem... > > I know - I snipped most of it! ;) > > > This isn't polite. ;) Sorry. But Mike said what I was going to say... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 14:30:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA57825 for dynarec-outgoing; Sun, 30 Jul 2000 14:30:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001001bffa76$7c9fde00$0100a8c0@lion> From: "Neil Griffiths" To: References: <01bff860$f45dcc80$35901a17@turkey> <00036d761ba06662_mailit@mail.dynarec.com> <004201bff8e6$2405f540$0100a8c0@lion> <00036d8b742451cc_mailit@mail.dynarec.com> <009601bff9b5$ce176620$0100a8c0@lion> <00036d9795a29206_mailit@mail.dynarec.com> <009601bffa20$87cfc020$0100a8c0@lion> <00036da0d5a92ae2_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 23:16:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >>>Hmm, Mail-It has Outlook Express import - don't ask me if it works... >>I'm going to go find out... > >Maybe I should note that Mail-It is for BeOS and can be found at >www.bebits.com ;-) Well maybe I should note that it sounds rude if I shout "Ow - bebits hurt!". ;p >>But on the other hand I can't insert the French accents either. So it's not >>a total loss. ;) > >Hehe ;-) And the scary thing is that at this exact moment I have 4 French people in my room. Oh my god! Can I survive? :o >I would have thrown him out of the window! He was very lucky he wasn't around at the time - he could well have been. Given that I'd just got back from Ju-jitsu at the time then I was still in the mood to fight so... >BTW, I think it's easy to make jokes out of his name: Corentin - cretin (sp?) >;-) I've already made those jokes - along with Crouton. :) >I guess you mean "Würdest Du gerne ins Kino mitkommen?" ... I'm giving up. :) >Damn, where is that bloody console?!? Please tell me if you find it! Maybe I will, maybe I'll just type "impulse 9"... ;)) >I thought all languages for AI were 5GLs... AFAIK there is no 5GL existing at the moment... >So what would be a 5GL then? Natural language. Prolog is *NOT* natural language - so I don't want anyone trying to persuade me that it is. :) >>It's more difficult to dodge knives... ;) > >Or bullets: "Dodge this!" ;-) You've seen "The Matrix" too much. And so have I to recognise the reference. But I have it on DVD. :p >They don't know William the Conquerer? Ignorants! Ignorants? Yes. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 14:30:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA57829 for dynarec-outgoing; Sun, 30 Jul 2000 14:30:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001101bffa76$7d6020c0$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <003701bff98e$ab9675e0$70c0523e@hal9000> <009c01bff9b5$d2df2760$0100a8c0@lion> <002b01bffa0c$575c94e0$61c3523e@hal9000> <00036da05dc286fb_mailit@mail.dynarec.com> <006b01bffa2e$cf3ec420$61c3523e@hal9000> <00036da207b062f5_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 23:18:10 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >For example examples of sprite based graphic chips, > >vector graphics, 3D graphics (I have studied some THEORY about > >3D but never the practice). > > Well, you're lucky that we have a 3D geek on the list: NG ;-) Hang on a moment there... ;) > > 3) find someone who knows a lot about this topic and abuse a lot > >of his help. ;) > > That's probably the best idea ;-) > NG -> 3D And general graphics. And a little sound processing too. > NB -> Sound, input devices (no polling but interrupts) > me -> mainly RISC processors > > >I started it a month before the discussion with Neil. ;) So yes a lot > >of things have changed since that time. > > I guess a rewrite is in order then... Definitely. Take it from me - do it. Rewrite it. It'll be worth it! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 14:30:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA57831 for dynarec-outgoing; Sun, 30 Jul 2000 14:30:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001201bffa76$7e650da0$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <003701bff98e$ab9675e0$70c0523e@hal9000> <009c01bff9b5$d2df2760$0100a8c0@lion> <002b01bffa0c$575c94e0$61c3523e@hal9000> <00036da05dc286fb_mailit@mail.dynarec.com> <006b01bffa2e$cf3ec420$61c3523e@hal9000> <00036da207b062f5_mailit@mail.dynarec.com> <007701bffa35$700eebe0$61c3523e@hal9000> <00036da4899daa20_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Emulation tutorial Date: Sun, 30 Jul 2000 23:20:54 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >> Well, you're lucky that we have a 3D geek on the list: NG ;-) > >Really lucky. ;) > > Let's wait if Neil sees it the same way ;-) I don't know, I disconnect for just a few hours and someone offers my services... ;) Seriously, Victor, if I can help you then I will. So if you have questions then please ask. And if I don't know then I certainly know other people who will. :) > >I have agree with you. It is the best idea. ;) > > I guess it's the fastest if you know who to ask which questions. You've got a little list now so... > Although your English isn't perfect I didn't notice that you had much > problems to comunicate with the others on the list. But there is another > problem: when you get your information mainly from discussions there won't be > much literature to list and I'm not sure if your tutor will like that, even > though you might get better information that way... The problem that Victor will have is that there isn't much literature available. Although we all hate Transmeta, Victor may actually get something good out of them after all! > So far as I can remember, there is not one word in the Gospels in > praise of intelligence. > -- Bertrand Russell I like this phrase *sooooo* much. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 14:30:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA57834 for dynarec-outgoing; Sun, 30 Jul 2000 14:30:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001301bffa76$7f255060$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000729115029.007dc420@powernet.net><3.0.5.32.20000729154900.007dfcd0@powernet.net> <3.0.5.32.20000730122034.007dfaf0@powernet.net> Subject: Re: DYNAREC: An emulation legal document Date: Sun, 30 Jul 2000 23:24:19 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > DirectDraw is my main focus right now. Then I'll have to do DirectInput (a > long ways off, I haven't even really begun to port Genital to Windows yet) > and last, DirectSound. I have to get back into all of these for my project (starting in September) so if you need any help then just give me a yell. I've been reading back up on everything recently and we'll see how I get on... > ATani (who did the Genital32 port) sent me the modifications he made to get > Genital to run under Windows and that is helping a lot. But... Genital32 > ran EXTREMELY slow on my system. I don't know enough about DirectX to be > able to say what caused it. I run in 16-bit color mode, and emulators such > as DGen and Gens do much better. Genital32 was getting like 2FPS. :/ > > I'll keep messing around with it, though ;) If you want to send me the source to have a look at and have a mess around with then I don't mind. I may even find it useful getting back into this stuff so... > >DirectX is evil. Why, oh why, does it take around 100 lines to get a window > >to appear? :o > > Yeah... all those stupid data structures. They could have made it a lot > simpler, with perhaps just one or 2 if they wanted to. Yep. So I wrote my own routines to handle it all. Because it was a cool idea. Makes my life easier. Especially when I can call a function "DrawMyWindow" and have it create a window for me. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 15:19:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA57885 for dynarec-outgoing; Sun, 30 Jul 2000 15:19:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <001001bffa76$7c9fde00$0100a8c0@lion> Message-ID: <00036da8a592c807_mailit@mail.dynarec.com> References: <01bff860$f45dcc80$35901a17@turkey> <00036d761ba06662_mailit@mail.dynarec.com> <004201bff8e6$2405f540$0100a8c0@lion> <00036d8b742451cc_mailit@mail.dynarec.com> <009601bff9b5$ce176620$0100a8c0@lion> <00036d9795a29206_mailit@mail.dynarec.com> <009601bffa20$87cfc020$0100a8c0@lion> <00036da0d5a92ae2_mailit@mail.dynarec.com> <001001bffa76$7c9fde00$0100a8c0@lion> Date: Mon, 31 Jul 2000 00:27:09 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well maybe I should note that it sounds rude if I shout "Ow - bebits hurt!". >;p Hmm, do you mean "bee bites"? >And the scary thing is that at this exact moment I have 4 French people in >my room. Oh my god! Can I survive? :o 4 French people in your room? How the hell could that happen? >He was very lucky he wasn't around at the time - he could well have been. >Given that I'd just got back from Ju-jitsu at the time then I was still in >the mood to fight so... Hehe ;-) >I've already made those jokes - along with Crouton. :) That's a good one too! >>I guess you mean "Würdest Du gerne ins Kino mitkommen?" ... >I'm giving up. :) That fast? ;-) >Maybe I will, maybe I'll just type "impulse 9"... ;)) Oh boy, I want that one too! Although an "impulse 101" could be more interesting ;-) >AFAIK there is no 5GL existing at the moment... So why would you want to talk about these? >Natural language. Prolog is *NOT* natural language - so I don't want anyone >trying to persuade me that it is. :) Well, Prolog surely isn't natural language. >>Or bullets: "Dodge this!" ;-) >You've seen "The Matrix" too much. And so have I to recognise the reference. Remember: "There is no spoon!" ;-) >But I have it on DVD. :p Damn! Trying to tease me again? >Neil. -- M.I.K.e "Let me assure you that to us here at First National, you're not just a number. You're two numbers, a dash, three more numbers, another dash and another number." -- James Estes --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 30 15:19:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA57892 for dynarec-outgoing; Sun, 30 Jul 2000 15:19:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <001201bffa76$7e650da0$0100a8c0@lion> Message-ID: <00036da8b3308c9f_mailit@mail.dynarec.com> References: <3.0.5.32.20000728102445.007db7f0@powernet.net> <3981D459.DDAEC0F4@retemail.es> <00036d8b341dd058_mailit@mail.dynarec.com> <002401bff969$a0970f80$70c0523e@hal9000> <00036d90a5060c6a_mailit@mail.dynarec.com> <003701bff98e$ab9675e0$70c0523e@hal9000> <009c01bff9b5$d2df2760$0100a8c0@lion> <002b01bffa0c$575c94e0$61c3523e@hal9000> <00036da05dc286fb_mailit@mail.dynarec.com> <006b01bffa2e$cf3ec420$61c3523e@hal9000> <00036da207b062f5_mailit@mail.dynarec.com> <007701bffa35$700eebe0$61c3523e@hal9000> <00036da4899daa20_mailit@mail.dynarec.com> <001201bffa76$7e650da0$0100a8c0@lion> Date: Mon, 31 Jul 2000 00:30:58 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I don't know, I disconnect for just a few hours and someone offers my >services... ;) Your fault! You should make something less interesting your hobby... BTW, I did some "research" (well, PR talk) on PowerVR and it really sounds quite interesting. >You've got a little list now so... Thank god that I'm the RISC maniac; I guess he won't need me ;-) >The problem that Victor will have is that there isn't much literature >available. Although we all hate Transmeta, Victor may actually get something >good out of them after all! Their documentation is crap as well... >Neil. -- M.I.K.e It is Mr. Mellon's credo that $200,000,000 can do no wrong. Our offense consists in doubting it. -- Justice Robert H. Jackson --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 00:10:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA58277 for dynarec-outgoing; Mon, 31 Jul 2000 00:10:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007310718.JAA22116@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <00036da8b3308c9f_mailit@mail.dynarec.com> "from M.I.K.e at Jul 31, 2000 00:30:58 am" To: dynarec@dynarec.com Date: Mon, 31 Jul 2000 09:18:08 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >The problem that Victor will have is that there isn't much literature > >available. Although we all hate Transmeta, Victor may actually get something > >good out of them after all! > > Their documentation is crap as well... > But the patent doc is fun. ;) When I understand it of course. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 00:30:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA58303 for dynarec-outgoing; Mon, 31 Jul 2000 00:30:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007310738.JAA14785@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: <000e01bffa76$7b2e9ac0$0100a8c0@lion> "from Neil Griffiths at Jul 30, 2000 11:08:20 pm" To: dynarec@dynarec.com Date: Mon, 31 Jul 2000 09:38:51 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > > Don't ask me. I don't know nothing. I refuse to know nothing. ;) > > Ah, it's that double negative problem again. If you refuse to know nothing > then that means that you know something... ;) > But in Spanish it is said this way. ;) > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 00:39:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA58320 for dynarec-outgoing; Mon, 31 Jul 2000 00:39:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 31 Jul 2000 00:55:36 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: The future of emulation In-Reply-To: <00036da0df0e7787_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Don't ask me! > I only noticed that in the city the ugliest idiots seem to have the most > beautiful girlfriends... > It's really frustrating... Minor secret... the way you get women is with your personality - not with your looks (though that can make it easier). I've found that all women like a man who is emotionally very strong, marginally aggressive, with a little bit of asshole thrown in. It's a winning combo. Worked for me! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 00:46:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA58337 for dynarec-outgoing; Mon, 31 Jul 2000 00:46:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007310754.JAA28852@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: "from Neil Bradley at Jul 31, 2000 00:55:36 am" To: dynarec@dynarec.com Date: Mon, 31 Jul 2000 09:54:32 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Don't ask me! > > I only noticed that in the city the ugliest idiots seem to have the most > > beautiful girlfriends... > > It's really frustrating... > > Minor secret... the way you get women is with your personality - not with > your looks (though that can make it easier). I've found that all women > like a man who is emotionally very strong, marginally aggressive, with a > little bit of asshole thrown in. It's a winning combo. Worked for me! ;-) > Then I don't have any chance (as I thought). ;( > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 00:47:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA58347 for dynarec-outgoing; Mon, 31 Jul 2000 00:47:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 31 Jul 2000 01:03:44 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: The future of emulation In-Reply-To: <200007310754.JAA28852@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Minor secret... the way you get women is with your personality - not with > > your looks (though that can make it easier). I've found that all women > > like a man who is emotionally very strong, marginally aggressive, with a > > little bit of asshole thrown in. It's a winning combo. Worked for me! ;-) > Then I don't have any chance (as I thought). ;( Sometimes just being an asshole is enough. Don't tell me that you can't be an asshole, Victor. *ALL* Men have this capability! Its just that some show it more than others! ;-) ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 00:49:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA58356 for dynarec-outgoing; Mon, 31 Jul 2000 00:49:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007310758.JAA17782@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: "from Neil Bradley at Jul 31, 2000 01:03:44 am" To: dynarec@dynarec.com Date: Mon, 31 Jul 2000 09:58:06 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Minor secret... the way you get women is with your personality - not with > > > your looks (though that can make it easier). I've found that all women > > > like a man who is emotionally very strong, marginally aggressive, with a > > > little bit of asshole thrown in. It's a winning combo. Worked for me! ;-) > > Then I don't have any chance (as I thought). ;( > > Sometimes just being an asshole is enough. Don't tell me that you can't be > an asshole, Victor. *ALL* Men have this capability! Its just that some > show it more than others! ;-) ;-) > Really? The problem it that with my limited english I don't understand well what you mean about being "asshole". ;) > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 00:50:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA58369 for dynarec-outgoing; Mon, 31 Jul 2000 00:50:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 31 Jul 2000 01:07:15 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: The future of emulation In-Reply-To: <200007310758.JAA17782@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Sometimes just being an asshole is enough. Don't tell me that you can't be > > an asshole, Victor. *ALL* Men have this capability! Its just that some > > show it more than others! ;-) ;-) > Really? The problem it that with my limited english I don't understand > well what you mean about being "asshole". ;) Being a "jerk"? To summarize: * Difficult to get along with * Bitchy * Acting superior to everyone Does that make sense? Just think of me when I get impetulent. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 00:56:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA58388 for dynarec-outgoing; Mon, 31 Jul 2000 00:56:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007310804.KAA08471@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: "from Neil Bradley at Jul 31, 2000 01:07:15 am" To: dynarec@dynarec.com Date: Mon, 31 Jul 2000 10:04:33 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Being a "jerk"? To summarize: > > * Difficult to get along with > * Bitchy > * Acting superior to everyone > > Does that make sense? Just think of me when I get impetulent. ;-) > I think I get the meaning. ;) Actually sure I can do that, but only in situations I know I can control. ;) In others cases I become too shy. >->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 01:23:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA58421 for dynarec-outgoing; Mon, 31 Jul 2000 01:23:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <200007310718.JAA22116@pons.ac.upc.es> Message-ID: <00036db1243b26f7_mailit@mail.dynarec.com> References: <200007310718.JAA22116@pons.ac.upc.es> Date: Mon, 31 Jul 2000 10:35:14 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [Transmeta] >> Their documentation is crap as well... >But the patent doc is fun. ;) When I understand it of course. I have to admit that I haven't read that yet. Is it worth it? >Victor -- M.I.K.e This land is full of trousers! this land is full of mausers! And pussycats to eat them when the sun goes down! -- Firesign Theater --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 01:28:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA58435 for dynarec-outgoing; Mon, 31 Jul 2000 01:28:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007310836.KAA19770@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <00036db1243b26f7_mailit@mail.dynarec.com> "from M.I.K.e at Jul 31, 2000 10:35:14 am" To: dynarec@dynarec.com Date: Mon, 31 Jul 2000 10:36:43 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > [Transmeta] > >> Their documentation is crap as well... > >But the patent doc is fun. ;) When I understand it of course. > > I have to admit that I haven't read that yet. Is it worth it? > I don't think it is so useful. But helps to learn about that horrible legal english used. ;) The only thing I just could undertand about it is that they were patenting something that is already as invented as the wheel. :P I think it mentions also some of the tecnhiques they use for the Code Morpher ... > M.I.K.e Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 01:46:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA58461 for dynarec-outgoing; Mon, 31 Jul 2000 01:46:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Mon, 31 Jul 2000 10:42:27 +0200 Message-ID: <01bffacb$4144db80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >>I don't know, I disconnect for just a few hours and someone offers my >>services... ;) > >Your fault! You should make something less interesting your hobby... Okay, I'm now going to research bananas and why the skin is yellow. ;)) >BTW, I did some "research" (well, PR talk) on PowerVR and it really sounds >quite interesting. It is. >Thank god that I'm the RISC maniac; I guess he won't need me ;-) I don't know, maybe... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 01:48:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA58471 for dynarec-outgoing; Mon, 31 Jul 2000 01:48:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Mon, 31 Jul 2000 10:40:59 +0200 Message-ID: <01bffacb$0cd11f80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >>Well maybe I should note that it sounds rude if I shout "Ow - bebits hurt!". >>;p > >Hmm, do you mean "bee bites"? No, it's one of the things that British people say now. Instead of saying "my", they'll say "me". So you could hear "Hey, that's me stuff!" - incorrect English, but you can hear it. Maybe you'll follow now you know that. :) >>And the scary thing is that at this exact moment I have 4 French people in >>my room. Oh my god! Can I survive? :o > >4 French people in your room? How the hell could that happen? A new student - a French girl - arrived yesterday and they were all talking to her in my room. AARGH! >>I've already made those jokes - along with Crouton. :) > >That's a good one too! Although I run out of ideas around then and then just insult him personally. ;) >>>I guess you mean "Würdest Du gerne ins Kino mitkommen?" ... >>I'm giving up. :) > >That fast? ;-) Yes. I may go through my old German documentation today just to prove my point... :) >>Maybe I will, maybe I'll just type "impulse 9"... ;)) > >Oh boy, I want that one too! Although an "impulse 101" could be more >interesting ;-) If they co-incide... ;) >>AFAIK there is no 5GL existing at the moment... > >So why would you want to talk about these? How would you implement it? This is another of my interests - compilers and interpretation... >Well, Prolog surely isn't natural language. For sure! >>But I have it on DVD. :p > >Damn! Trying to tease me again? You can get a DVD setup for your computer for not much money now - so no. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 01:54:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA58483 for dynarec-outgoing; Mon, 31 Jul 2000 01:54:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: The future of emulation Date: Mon, 31 Jul 2000 10:57:01 +0200 Message-ID: <01bffacd$4a36ac80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Actually sure I can do that, but only in situations I know I can >control. ;) In others cases I become too shy. That's when the asshole bit comes into play. To get up and do that requires you to be a bit of an asshole. So yeah, I can be an asshole - I have no problem with doing things like that. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 01:54:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA58492 for dynarec-outgoing; Mon, 31 Jul 2000 01:54:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: The future of emulation Date: Mon, 31 Jul 2000 10:55:17 +0200 Message-ID: <01bffacd$0c398880$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Minor secret... the way you get women is with your personality - not with >your looks (though that can make it easier). I've found that all women >like a man who is emotionally very strong, marginally aggressive, with a >little bit of asshole thrown in. It's a winning combo. Worked for me! ;-) I agree - except for the asshole bit. I'm never an asshole. ;) Well, okay... maybe sometimes. :)) Okay, okay, most of the time. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 01:57:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA58504 for dynarec-outgoing; Mon, 31 Jul 2000 01:57:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007310906.LAA05452@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: <01bffacd$4a36ac80$35901a17@turkey> "from Neil Griffiths at Jul 31, 2000 10:57:01 am" To: dynarec@dynarec.com Date: Mon, 31 Jul 2000 11:06:27 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > >Actually sure I can do that, but only in situations I know I can > >control. ;) In others cases I become too shy. > > That's when the asshole bit comes into play. To get up and do that requires > you to be a bit of an asshole. So yeah, I can be an asshole - I have no > problem with doing things like that. :)) > But I have been teached to be always polite. ;) > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 01:59:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA58592 for dynarec-outgoing; Mon, 31 Jul 2000 01:59:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <00036db1243b26f7_mailit@mail.dynarec.com> Message-ID: <00036db1a2364b28_mailit@mail.dynarec.com> References: <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> Date: Mon, 31 Jul 2000 11:10:28 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com BTW, does anyone know of good sites with tech specs about consoles? I know many good sites for computer specs (The Machine Room eg.) but when it comes to consoles most sites only list the CPU and the maximum resolution and number of colours... -- M.I.K.e Why don't elephants eat penguins ? Because they can't get the wrappers off ... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 01:59:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA58600 for dynarec-outgoing; Mon, 31 Jul 2000 01:59:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: Message-ID: <00036db161691d27_mailit@mail.dynarec.com> References: Date: Mon, 31 Jul 2000 10:52:21 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Minor secret... the way you get women is with your personality - not with >your looks (though that can make it easier). I've found that all women >like a man who is emotionally very strong, I guess I'm not that emotionally weak... >marginally aggressive, That should do too. Never watch an action movie together with me or you'll get a lecture about wrong weapon use - no I haven't fired a live weapon yet! >with a little bit of asshole thrown in. That could be a problem. When together with women I'm either quite silent, or intellectual, or I just make jokes... >It's a winning combo. Worked for me! ;-) So your wife married an asshole? ;-) It seems that going for a walk with the dog sometimes does the trick. The problem is that our dog was more interested in walking than fishing some women for me... >-->Neil -- M.I.K.e People will accept your ideas much more readily if you tell them that Benjamin Franklin said it first. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 01:59:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA58631 for dynarec-outgoing; Mon, 31 Jul 2000 01:59:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: Message-ID: <00036db164d3ff1d_mailit@mail.dynarec.com> References: Date: Mon, 31 Jul 2000 10:53:18 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Sometimes just being an asshole is enough. Don't tell me that you can't be >an asshole, Victor. *ALL* Men have this capability! Its just that some >show it more than others! ;-) ;-) Ok, I *can* be an asshole, but it seems that I behave like that at the wrong times... >-->Neil -- M.I.K.e Computer Science is merely the post-Turing decline in formal systems theory. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 01:59:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA58644 for dynarec-outgoing; Mon, 31 Jul 2000 01:59:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: Message-ID: <00036db16ab10224_mailit@mail.dynarec.com> References: Date: Mon, 31 Jul 2000 10:54:56 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Being a "jerk"? To summarize: >* Difficult to get along with >* Bitchy I thought these were registered trademarks of women ;-) >* Acting superior to everyone We'll that's typical male. >Does that make sense? Just think of me when I get impetulent. ;-) You mean your normal state? ;-) >-->Neil -- M.I.K.e The qotc (quote of the con) was Liz's: "My brain is paged out to my liver" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 02:13:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA58715 for dynarec-outgoing; Mon, 31 Jul 2000 02:13:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007310921.LAA10565@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: <00036db161691d27_mailit@mail.dynarec.com> "from M.I.K.e at Jul 31, 2000 10:52:21 am" To: dynarec@dynarec.com Date: Mon, 31 Jul 2000 11:21:25 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >marginally aggressive, > > That should do too. Never watch an action movie together with me or you'll > get a lecture about wrong weapon use - no I haven't fired a live weapon yet! > And also a martial arts expert. > >It's a winning combo. Worked for me! ;-) > > It seems that going for a walk with the dog sometimes does the trick. The > problem is that our dog was more interested in walking than fishing some > women for me... > Perhaps you are using the wrong bait ... or may be dog. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 02:36:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA58745 for dynarec-outgoing; Mon, 31 Jul 2000 02:36:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <200007310921.LAA10565@pons.ac.upc.es> Message-ID: <00036db228ccc6c5_mailit@mail.dynarec.com> References: <200007310921.LAA10565@pons.ac.upc.es> Date: Mon, 31 Jul 2000 11:48:06 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >And also a martial arts expert. Not really. NG seems to know much more about that topic than me ;-) And just like the weapons I never practiced martial arts... >Perhaps you are using the wrong bait ... Which bait should I use then? >or may be dog. ;) No, the dog had great success, even too much, he was stealing me the show! >Victor -- M.I.K.e If you eat a live frog in the morning, nothing worse will happen to either of you for the rest of the day. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 02:41:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA58760 for dynarec-outgoing; Mon, 31 Jul 2000 02:41:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007310950.LAA30085@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: <00036db228ccc6c5_mailit@mail.dynarec.com> "from M.I.K.e at Jul 31, 2000 11:48:06 am" To: dynarec@dynarec.com Date: Mon, 31 Jul 2000 11:50:20 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >And also a martial arts expert. > > Not really. NG seems to know much more about that topic than me ;-) > And just like the weapons I never practiced martial arts... > I also like weapons, martial arts and all those millitary stuff (althought it isn't PC ;). But I haven't spend many time with that topic, only what I could get from movies, spies books and videogames. > >Perhaps you are using the wrong bait ... > > Which bait should I use then? > I don't know sorry. :( > >or may be dog. ;) > > No, the dog had great success, even too much, he was stealing me the show! > Are you saying the dogs beats you? ;) > M.I.K.e > Victor > If you eat a live frog in the morning, nothing worse will happen to > either of you for the rest of the day. > Because you are dead? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 03:18:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA58800 for dynarec-outgoing; Mon, 31 Jul 2000 03:18:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <01bffacb$0cd11f80$35901a17@turkey> Message-ID: <00036db2be798291_mailit@mail.dynarec.com> References: <01bffacb$0cd11f80$35901a17@turkey> Date: Mon, 31 Jul 2000 12:29:57 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >No, it's one of the things that British people say now. Instead of saying >"my", they'll say "me". So you could hear "Hey, that's me stuff!" - >incorrect English, but you can hear it. Strange guys.... >Maybe you'll follow now you know that. :) No, my brain doesn't seem to work at full power just yet... >A new student - a French girl - arrived yesterday Sounds like a good occasion for you to practice your French ;-) >and they were all talking to her in my room. AARGH! Well, that still doesn't explain why all were in your room... >>Oh boy, I want that one too! Although an "impulse 101" could be more >>interesting ;-) >If they co-incide... ;) Weapon cheat for Half-Life ;-) >You can get a DVD setup for your computer for not much money now - so no. :) I have space and energy problems in my box... >Okay, I'm now going to research bananas and why the skin is yellow. ;)) Found an answer yet? BTW, the typical German question is "Warum ist die Banane krumm?" >>BTW, I did some "research" (well, PR talk) on PowerVR and it really sounds >>quite interesting. >It is. >From what I understand most other 3D processors have a Z-buffer to handle the drawing order of the objects (only the GTE doesn't have it and works with a list ordered by the CPU), and in PowerVR they don't need the Z-buffer because they have some neat way to only plot and texturize those parts which are really visable. It's a plain obvious way to reduce data flow, I wonder why it wasn't done before. >Neil. -- M.I.K.e The end of the world will occur at 3:00 p.m., this Friday, with symposium to follow. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 03:18:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA58807 for dynarec-outgoing; Mon, 31 Jul 2000 03:18:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <200007310950.LAA30085@pons.ac.upc.es> Message-ID: <00036db29f9465c2_mailit@mail.dynarec.com> References: <200007310950.LAA30085@pons.ac.upc.es> Date: Mon, 31 Jul 2000 12:21:19 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I also like weapons, martial arts and all those millitary stuff I'm more or less a pacifist, but I always was interested in mediaeval wepons and later I got interested in modern weapons as well. >(althought it isn't PC ;). Strange, isn't it? I guess that must be some genetic rudiment from the time when all men were hunters ;-) >But I haven't spend many time with that topic, >only what I could get from movies, spies books and >videogames. Most of the stuff in the movies is wrong, like firing with a SMG for a few minutes without reloading - weren't they told that an Ingram MAC-10 spits out the whole clip of 30 rounds in just 1.5 seconds? Also all there weapons don't seem to have any recoil... Actually most of what I know about modern weapons comes from role-playing games, but I was surprised how realistic the weapons in Resident Evil 2 and Metal Gear Solid are. In one of the early versions they had a "bug" which was fixed later: when you left at least one round in the Glock 17 and changed the clip you had a total of 18 rounds which is realistic because the last one is in the barrel, but now there's a maximum of 17 rounds :-( What I don't like about some newer games (Soldier of Fortune, Goldeneye) is that they want to save license fees and change the design and the names of the weapons slightly... >> Which bait should I use then? >I don't know sorry. :( Damn, I hoped you could know more than me about that topic... >Are you saying the dogs beats you? ;) You surely never saw a cute, curious, *and* charismatic dog! Unfortunately he died a few years ago and I still miss him... >Victor >> If you eat a live frog in the morning, nothing worse will happen to >> either of you for the rest of the day. >Because you are dead? Maybe we could transfer the question to some of Neil's French friends? -- M.I.K.e " I changed my headlights the other day. I put in strobe lights instead! Now when I drive at night, it looks like everyone else is standing still ..." -- Steven Wright --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 03:28:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA58825 for dynarec-outgoing; Mon, 31 Jul 2000 03:28:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007311036.MAA32362@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <00036db2be798291_mailit@mail.dynarec.com> "from M.I.K.e at Jul 31, 2000 12:29:57 pm" To: dynarec@dynarec.com Date: Mon, 31 Jul 2000 12:36:40 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >>BTW, I did some "research" (well, PR talk) on PowerVR and it really sounds > >>quite interesting. > >It is. > > >From what I understand most other 3D processors have a Z-buffer to handle the > drawing order of the objects (only the GTE doesn't have it and works with a > list ordered by the CPU), and in PowerVR they don't need the Z-buffer because > they have some neat way to only plot and texturize those parts which are > really visable. It's a plain obvious way to reduce data flow, I wonder why it > wasn't done before. > Do you have an URL about it? I'm beginning to feel interested ... It is the same PowerVR that is used in some PC videocards? I have read one comment that it works well but with powerful CPUs because it is very CPU dependant, but it could be another version of the chip ... > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 03:36:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA58846 for dynarec-outgoing; Mon, 31 Jul 2000 03:36:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200007311044.MAA21522@pons.ac.upc.es> Subject: Re: DYNAREC: The future of emulation In-Reply-To: <00036db29f9465c2_mailit@mail.dynarec.com> "from M.I.K.e at Jul 31, 2000 12:21:19 pm" To: dynarec@dynarec.com Date: Mon, 31 Jul 2000 12:44:54 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I also like weapons, martial arts and all those millitary stuff > > I'm more or less a pacifist, but I always was interested in mediaeval wepons > and later I got interested in modern weapons as well. > I'm also pacifist until someone who isn't try to go against me. ;) > >(althought it isn't PC ;). > > Strange, isn't it? I guess that must be some genetic rudiment from the time > when all men were hunters ;-) > I would be a really bad hunter (I mean with arrows, spears an so on). But when I was I child I killed some poor birds with traps and air shotguns (?). :( > >But I haven't spend many time with that topic, > >only what I could get from movies, spies books and > >videogames. > > Most of the stuff in the movies is wrong, like firing with a SMG for a few > minutes without reloading - weren't they told that an Ingram MAC-10 spits out > the whole clip of 30 rounds in just 1.5 seconds? Also all there weapons don't > seem to have any recoil... Automatic material teletransportation or magical creation of bullets. ;) And they have very strong arms. ;) It's really fun how with those hand machine guns. I have read they can fire 900 bullets/minute and with 30/40 bullets this means when you hit a bit the trigger what it's in front of you disapears. ;) > Actually most of what I know about modern weapons comes from role-playing > games, but I was surprised how realistic the weapons in Resident Evil 2 and > Metal Gear Solid are. I think those new squad games will be also realistic, for example Rainbow Six (too easy in one person mode though). > >Are you saying the dogs beats you? ;) > > You surely never saw a cute, curious, *and* charismatic dog! > Unfortunately he died a few years ago and I still miss him... > I haven't had never a dog. My fathers think dogs and small city apartaments don't work together (and I agree with them). And I like more cats than dogs, but I haven't had either cats ... We have had birds and rats. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 03:46:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA58862 for dynarec-outgoing; Mon, 31 Jul 2000 03:46:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <200007311036.MAA32362@pons.ac.upc.es> Message-ID: <00036db2f66d2739_mailit@mail.dynarec.com> References: <200007311036.MAA32362@pons.ac.upc.es> Date: Mon, 31 Jul 2000 12:45:36 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Do you have an URL about it? I'm beginning to feel interested ... http://www.powervr.com/Technologies/Definition.htm http://www.powervr.com/WhitePapers/Whitepapers.htm >It is the same PowerVR that is used in some PC videocards? It's used in some PC cards, but at the moment it's mainly known for its use in the Dreamcast. >I have read >one comment that it works well but with powerful CPUs because it is >very CPU dependant, but it could be another version of the chip ... Then you already know more than me... >Victor -- M.I.K.e He's the kind of guy, that, well, if you were ever in a jam he'd be there ... with two slices of bread and some chunky peanut butter. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 04:04:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA58889 for dynarec-outgoing; Mon, 31 Jul 2000 04:04:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <200007311044.MAA21522@pons.ac.upc.es> Message-ID: <00036db360b023cb_mailit@mail.dynarec.com> References: <200007311044.MAA21522@pons.ac.upc.es> Date: Mon, 31 Jul 2000 13:15:18 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I would be a really bad hunter (I mean with arrows, spears an so on). I don't know how good I would be with bow and arrow - bad eyes! But we once did spear throwing in physial education and I was the only one who was able to get the spear to stab the ground even with the Finnish throwing technique ;-) >But when I was I child I killed some poor birds with traps and air >shotguns (?). :( Children often do stupid things. I used to kill hunderds of ants, either by hitting them with a blunt object or by burning them with a magnifying glass... >Automatic material teletransportation or magical creation of bullets. ;) Must be! >And they have very strong arms. ;) Of course, and the women and children too! >It's really fun how with those hand machine guns. I have read they >can fire 900 bullets/minute and with 30/40 bullets this means when >you hit a bit the trigger what it's in front of you disapears. ;) It's even 1200 rounds/minute for the MAC-10, but the extreme are Gattling miniguns with a few thousand (5-6000?) RPM! >I think those new squad games will be also realistic, for example Rainbow >Six (too easy in one person mode though). I think I saw Rainbow Six and didn't like it because the graphics weren't good and you didn't see the weapon you're holding. When it comes to weapon realism I prefer Delta Force. >I haven't had never a dog. My fathers think dogs and small >city apartaments don't work together (and I agree with them). Do you mean parents or do you really have more than one father? ;-) But it's true, dogs need more space. >And I like more cats than dogs, but I haven't had either >cats ... I don't like cats that much because they only kill the birds in our garden... On of my friends has a cat now, but he didn't by it, the cat simply followed him and stayed there. >We have had birds and rats. ;) Birds would be a bit boring for me, unless it were a Beo. Rats are quite intelligent but I perfer dogs. >Victor -- M.I.K.e Love means having to say you're sorry every five minutes. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 06:09:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA58997 for dynarec-outgoing; Mon, 31 Jul 2000 06:09:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Mon, 31 Jul 2000 15:14:56 +0200 Message-ID: <01bffaf1$52084800$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >>It is the same PowerVR that is used in some PC videocards? > >It's used in some PC cards, but at the moment it's mainly known for its use >in the Dreamcast. But the PCs that use it will be in the PowerVR labs. The silicon for the Kyro won't be finalised until August (tomorrow?). But it is based on the chip used in the Dreamcast - it should just have higher specs and be better able to use the memory... >>I have read >>one comment that it works well but with powerful CPUs because it is >>very CPU dependant, but it could be another version of the chip ... > >Then you already know more than me... That was the PowerVR2 I'm betting. That did a lot of the work on the CPU - and so would lead to the effects that you were talking about. But this is an old card now - from Voodoo1 times... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 08:03:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA59089 for dynarec-outgoing; Mon, 31 Jul 2000 08:03:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <01bffaf1$52084800$35901a17@turkey> Message-ID: <00036db6af88aa17_mailit@mail.dynarec.com> References: <01bffaf1$52084800$35901a17@turkey> Date: Mon, 31 Jul 2000 17:12:06 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >But the PCs that use it will be in the PowerVR labs. The silicon for the >Kyro won't be finalised until August (tomorrow?). But it is based on the >chip used in the Dreamcast - it should just have higher specs and be better >able to use the memory... You're the expert ;-) >That was the PowerVR2 I'm betting. That did a lot of the work on the CPU - >and so would lead to the effects that you were talking about. But this is an >old card now - from Voodoo1 times... Hmm, doesn't the Dreamcast have the PowerVR2 chip? >Neil. -- M.I.K.e In Lexington, Kentucky, it's illegal to carry an ice cream cone in your pocket. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 08:20:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA59112 for dynarec-outgoing; Mon, 31 Jul 2000 08:20:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Neil Griffiths" To: Subject: Re: DYNAREC: Emulation tutorial Date: Mon, 31 Jul 2000 17:26:19 +0200 Message-ID: <01bffb03$acaa9f80$35901a17@turkey> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express Unix 5.00.2013.1312 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2013.1312 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >>But the PCs that use it will be in the PowerVR labs. The silicon for the >>Kyro won't be finalised until August (tomorrow?). But it is based on the >>chip used in the Dreamcast - it should just have higher specs and be better >>able to use the memory... > >You're the expert ;-) Bleh, don't know about that! :) >>That was the PowerVR2 I'm betting. That did a lot of the work on the CPU - >>and so would lead to the effects that you were talking about. But this is an >>old card now - from Voodoo1 times... > >Hmm, doesn't the Dreamcast have the PowerVR2 chip? If it does then I meant the PowerVR. PowerVR is involved in there somewhere. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 10:00:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA59193 for dynarec-outgoing; Mon, 31 Jul 2000 10:00:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007a01bffb12$422a1320$9ec0523e@hal9000> From: "Victor Moya del Barrio" To: References: <200007311044.MAA21522@pons.ac.upc.es> <00036db360b023cb_mailit@mail.dynarec.com> Subject: Re: DYNAREC: The future of emulation Date: Mon, 31 Jul 2000 18:51:44 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I would be a really bad hunter (I mean with arrows, spears an so on). > > I don't know how good I would be with bow and arrow - bad eyes! > But we once did spear throwing in physial education and I was the only one > who was able to get the spear to stab the ground even with the Finnish > throwing technique ;-) > I will be careful if I find you with a spear near. ;) > >But when I was I child I killed some poor birds with traps and air > >shotguns (?). :( > > Children often do stupid things. I used to kill hunderds of ants, either by > hitting them with a blunt object or by burning them with a magnifying > glass... > Well, I hunted them for eating also. ;) I have never had problem with ants. I could have killed some, but no massacres. I like the way they are always working and I like to see them. > >It's really fun how with those hand machine guns. I have read they > >can fire 900 bullets/minute and with 30/40 bullets this means when > >you hit a bit the trigger what it's in front of you disapears. ;) > > It's even 1200 rounds/minute for the MAC-10, but the extreme are Gattling > miniguns with a few thousand (5-6000?) RPM! > Impressive. This means that you even don't need to press the trigger to destroy the one is in front of you. ;) > >I think those new squad games will be also realistic, for example Rainbow > >Six (too easy in one person mode though). > > I think I saw Rainbow Six and didn't like it because the graphics weren't > good and you didn't see the weapon you're holding. > When it comes to weapon realism I prefer Delta Force. > I haven't played Delta Force so I can't compare them. In any case Rainbow Six is too easy (or perhaps I played with too low difficulty). > >I haven't had never a dog. My fathers think dogs and small > >city apartaments don't work together (and I agree with them). > > Do you mean parents or do you really have more than one father? ;-) I was referring my father and my mother. ;) > But it's true, dogs need more space. > I can't understand people living in the same kind of house I'm (in the same street) who have those big killer dogs ... They are so big they could throw away of your house. I can accept small dogs (although I don't like them) but those "horse" kind dogs are really to bigs. But too common in my street since last two years. > >And I like more cats than dogs, but I haven't had either > >cats ... > > I don't like cats that much because they only kill the birds in our garden... > On of my friends has a cat now, but he didn't by it, the cat simply followed > him and stayed there. > Hehe! Cats always know how to survive and they are also a lot of evil. :) In my university there a few "wild" cats also rounding in the campus. Actually it seems is beginning to be a problem everywhere in my city. In a beach near my house there were perhaps 30 or more cats (my father saied my that many "dissapear" sometime ago). They have to be controlled becuase with enough food they can be worst than a rats plague. > >We have had birds and rats. ;) > > Birds would be a bit boring for me, unless it were a Beo. Rats are quite > intelligent but I perfer dogs. > But my mother likes to hear them to sing. The two small hamsters I had when I was too young had a very bad end ... One even commited suicide ... > M.I.K.e > Victor > Love means having to say you're sorry every five minutes. > Really? Oh ... Perhaps I will pass then, too much time spent. ;) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 10:00:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA59199 for dynarec-outgoing; Mon, 31 Jul 2000 10:00:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007b01bffb12$4859efe0$9ec0523e@hal9000> From: "Victor Moya del Barrio" To: References: <01bffb03$acaa9f80$35901a17@turkey> Subject: Re: DYNAREC: Emulation tutorial Date: Mon, 31 Jul 2000 18:56:35 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >>That was the PowerVR2 I'm betting. That did a lot of the work on the CPU - > >>and so would lead to the effects that you were talking about. But this is > an > >>old card now - from Voodoo1 times... > > > >Hmm, doesn't the Dreamcast have the PowerVR2 chip? > > If it does then I meant the PowerVR. PowerVR is involved in there somewhere. > :)) > I think it is compared with a Vodoo2 and using a PII-300 so it must be a bit outdated. In any case they also talk it works really well with any resolution (even big resolutions) and from what I'm reading in the PowerVR site it is one of its features. > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 11:49:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA59291 for dynarec-outgoing; Mon, 31 Jul 2000 11:49:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000731115738.007e8100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 31 Jul 2000 11:57:38 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <00036db1a2364b28_mailit@mail.dynarec.com> References: <00036db1243b26f7_mailit@mail.dynarec.com> <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 11:10 AM 7/31/2000 +0200, you wrote: >BTW, does anyone know of good sites with tech specs about consoles? >I know many good sites for computer specs (The Machine Room eg.) but when it >comes to consoles most sites only list the CPU and the maximum resolution and >number of colours... Consoles are easy to find info for :) www.classicgaming.com/epr is a good start, although heavily outdated ('98!) in some areas. www.eidolons-inn.de -- second to none for Sega consoles www.zophar.net -- has tech info What console(s) are you interested in exactly? BTW, I finally found the CDBIOS.INC file that Sega tells developers to use, it has all the important BIOS entry points, so I can start doing some HLE since there is no useful information available on how to work the CDROM drive. :) Let's hope it works. A friend lent me Sewer Shark and Battlecorps as well, since I never really had a Sega CD ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 11:49:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA59292 for dynarec-outgoing; Mon, 31 Jul 2000 11:49:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <007a01bffb12$422a1320$9ec0523e@hal9000> Message-ID: <00036db9de353bfb_mailit@mail.dynarec.com> References: <200007311044.MAA21522@pons.ac.upc.es> <00036db360b023cb_mailit@mail.dynarec.com> <007a01bffb12$422a1320$9ec0523e@hal9000> Date: Mon, 31 Jul 2000 20:59:54 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I will be careful if I find you with a spear near. ;) Hehe, although it's long since I used one ;-) >Well, I hunted them for eating also. ;) Oh, I prefer chicken... >I have never had problem with >ants. I could have killed some, but no massacres. I like the way they >are always working and I like to see them. Ants are interesting for sure but we have too many of them... >Impressive. This means that you even don't need to press the trigger to >destroy the one is in front of you. ;) The miniguns are battery-operated anyway. >I haven't played Delta Force so I can't compare them. It's cool, with a lot of sniping. Delta Force 2 is still too slow on my new Pentium. Now I wait for DF: Land Warrior, which shall have 3D acceleration. >I was referring my father and my mother. ;) That's parents then ;-) >I can't understand people living in the same kind of house I'm >(in the same street) who have those big killer dogs ... I'm not sure which dogs you mean, because the typical "killer dogs" aren't that big. >They >are so big they could throw away of your house. I can accept >small dogs (although I don't like them) but those "horse" kind >dogs are really to bigs. "horse kind" sounds a bit like what we in Germany call "Dogge". I like Irish wolfhounds, which are similar big but relatively tame. >But too common in my street since last two years. I'm not sure if you mentioned before where in Spain you live. >Hehe! Cats always know how to survive and they are also a lot of >evil. :) Yeah, that's the perfect characterisation of that cat! >But my mother likes to hear them to sing. I just have to open my window to hear the blackbirds sing. >The two small hamsters I had >when I was too young had a very bad end ... One even commited >suicide ... Really? How did it manage that? >Victor >> Love means having to say you're sorry every five minutes. >Really? Oh ... Perhaps I will pass then, too much time spent. ;) "I'm sorry honey, I just won't to finish this letter to Victor." ... [five minutes passing] "I'm still sorry, I'm barely half through the letter." ... [half an hour passing] "Now I'm ready, honey. Honey? Honey?" ... I don't think this would work for me! -- M.I.K.e Expert, n.: Someone who comes from out of town and shows slides. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 12:36:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA59344 for dynarec-outgoing; Mon, 31 Jul 2000 12:36:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <3.0.5.32.20000731115738.007e8100@powernet.net> Message-ID: <00036dba88bdcfa2_mailit@mail.dynarec.com> References: <00036db1243b26f7_mailit@mail.dynarec.com> <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> <3.0.5.32.20000731115738.007e8100@powernet.net> Date: Mon, 31 Jul 2000 21:47:35 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Consoles are easy to find info for :) >www.classicgaming.com/epr is a good start, although heavily outdated ('98!) >in some areas. >www.eidolons-inn.de -- second to none for Sega consoles >www.zophar.net -- has tech info I know all these of course, but I'm not really looking for information how to program or emulate it, but general information what hardware it has and what it's capable of. Similar to The Machine Room, but for consoles instead of computers: http://www.tardis.ed.ac.uk/~alexios/MACHINE-ROOM/ >What console(s) are you interested in exactly? A general comparison of the most well known ones... >BTW, I finally found the CDBIOS.INC file that Sega tells developers to use, >it has all the important BIOS entry points, so I can start doing some HLE Cool! >since there is no useful information available on how to work the CDROM >drive. :) Let's hope it works. I'll keep my fingers crossed - damn it's hard to type with crossed fingers! >A friend lent me Sewer Shark and Battlecorps >as well, since I never really had a Sega CD ;) Well ;-) >Bart -- M.I.K.e Love cannot be much younger than the lust for murder. -- Sigmund Freud --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 12:50:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA59367 for dynarec-outgoing; Mon, 31 Jul 2000 12:50:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000c01bffb29$ff372c20$49c0523e@hal9000> From: "Victor Moya del Barrio" To: References: <200007311044.MAA21522@pons.ac.upc.es> <00036db360b023cb_mailit@mail.dynarec.com> <007a01bffb12$422a1320$9ec0523e@hal9000> <00036db9de353bfb_mailit@mail.dynarec.com> Subject: Re: DYNAREC: The future of emulation Date: Mon, 31 Jul 2000 21:47:01 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Well, I hunted them for eating also. ;) > > Oh, I prefer chicken... > They are really tasteful. But they must be the middle sized ones, not the little insectivore ones. The best are those birds who are eating our apples, cherrys our ... We have a small orchard/kitchen garden (fucking dictionarys ... anyway a 1000 m2 land with some fruit trees and plants ... of course and a house ;). My father likes work on it (too much in fact ...). It's a half hour of our home in the city. > >I have never had problem with > >ants. I could have killed some, but no massacres. I like the way they > >are always working and I like to see them. > > Ants are interesting for sure but we have too many of them... > My father thinks the same. Kill'em all. They are hurting my plants. ;) > >I haven't played Delta Force so I can't compare them. > > It's cool, with a lot of sniping. Delta Force 2 is still too slow on my new > Pentium. Now I wait for DF: Land Warrior, which shall have 3D acceleration. > Perhaps I will try to find it. > >I can't understand people living in the same kind of house I'm > >(in the same street) who have those big killer dogs ... > > I'm not sure which dogs you mean, because the typical "killer dogs" aren't > that big. > Umm... I'm not an expert about dogs races. But they are really big and with frightening ... > I like Irish wolfhounds, which are similar big but relatively tame. > What is that? "Lassie kind" dogs? They are sheepdogs. > >But too common in my street since last two years. > > I'm not sure if you mentioned before where in Spain you live. > Spain, Catalonia, Barcelona, Badalona ... I think you don't need to know the street. ;) But if you want I will say. Catalonia is a region of northeast of Spain (get the France frontier, from the middle draw a line to the south, this small triangle is Catalonia). You must remember Barcelona from the 92 Olympiade. And Badalona is one of those cities that have grown from a town near a big city and now it has joined with it. The zone of the city I live is mainly habitated with low-middle class workers. And it is really near of the beach. :) > >Hehe! Cats always know how to survive and they are also a lot of > >evil. :) > > Yeah, that's the perfect characterisation of that cat! > I really love them. :) > >But my mother likes to hear them to sing. > > I just have to open my window to hear the blackbirds sing. > There aren't many singing birds in our city. :( > >The two small hamsters I had > >when I was too young had a very bad end ... One even commited > >suicide ... > > Really? How did it manage that? > I don't know how it opened the jail (but they are really intelligent animals). It was in a balcony and it fell down. > >> Love means having to say you're sorry every five minutes. > >Really? Oh ... Perhaps I will pass then, too much time spent. ;) > > "I'm sorry honey, I just won't to finish this letter to Victor." > ... [five minutes passing] > "I'm still sorry, I'm barely half through the letter." > ... [half an hour passing] > "Now I'm ready, honey. Honey? Honey?" ... > > I don't think this would work for me! > Hahahahaha!! :)) > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 12:50:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA59377 for dynarec-outgoing; Mon, 31 Jul 2000 12:50:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000d01bffb2a$02a61420$49c0523e@hal9000> From: "Victor Moya del Barrio" To: References: <00036db1243b26f7_mailit@mail.dynarec.com> <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> <3.0.5.32.20000731115738.007e8100@powernet.net> Subject: Re: DYNAREC: Emulation tutorial Date: Mon, 31 Jul 2000 22:00:03 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Consoles are easy to find info for :) > > www.classicgaming.com/epr is a good start, although heavily outdated ('98!) > in some areas. This is the obvious site. ;) I hope the classicgaming webmaster didn't close it. Perhaps we could make a mirror for safe. And we could add the new information available, for example PlayStation. What do you think Neil? ;) > BTW, I finally found the CDBIOS.INC file that Sega tells developers to use, > it has all the important BIOS entry points, so I can start doing some HLE > since there is no useful information available on how to work the CDROM > drive. :) Let's hope it works. A friend lent me Sewer Shark and Battlecorps > as well, since I never really had a Sega CD ;) > I have seen I don't have it from Eidolon site ... Perhaps you could post it to him? Could be useful for other Sega CD emulator authors. Actually I'm doing nothing about SegaCD emulation. I was feeling really lazy last week and I did nothing ... I even didn't played any videogame a single minute ... Really lazy. I think I need holidays. And my friend is on holidays also until September (in the south Spain, too hot for me ;). I think I will go on holiday from August 15th until September. I'm not sure I will be here or I will be with my family to our house in the mountain (and then I will miss the list and everything, I won't have even a computer ;). I always have known that made a SegaCD emulator would be hard because of my university project, my work, the dynarec list ... I hoped in start with my friend this summer but now he has gone without saying a word about it (and also knowing I should have to teach him everything about emulation because he didn't know anything) I'm not sure if I could do really nothing. :( > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 13:08:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA59400 for dynarec-outgoing; Mon, 31 Jul 2000 13:08:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: The future of emulation From: "M.I.K.e" In-Reply-To: <000c01bffb29$ff372c20$49c0523e@hal9000> Message-ID: <00036dbaf73c89a4_mailit@mail.dynarec.com> References: <200007311044.MAA21522@pons.ac.upc.es> <00036db360b023cb_mailit@mail.dynarec.com> <007a01bffb12$422a1320$9ec0523e@hal9000> <00036db9de353bfb_mailit@mail.dynarec.com> <000c01bffb29$ff372c20$49c0523e@hal9000> Date: Mon, 31 Jul 2000 22:18:29 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >They are really tasteful. But they must be the middle sized ones, >not the little insectivore ones. The best are those birds who are >eating our apples, cherrys our If you say that ;-) > ... We have a small orchard/kitchen >garden (fucking dictionarys ... anyway a 1000 m2 land with some >fruit trees and plants ... of course and a house ;). My father likes >work on it (too much in fact ...). It's a half hour of our home in >the city. Nice! >Umm... I'm not an expert about dogs races. But they are really big and >with frightening ... I think there wasn't any dog so far which frightend me. >> I like Irish wolfhounds, which are similar big but relatively tame. >What is that? "Lassie kind" dogs? They are sheepdogs. Nope, about twice as large ;-) >Spain, Catalonia, Barcelona, Badalona ... I think you don't need >to know the street. ;) Why not? ;-) >But if you want I will say. Catalonia is a region >of northeast of Spain (get the France frontier, from the middle draw a >line to the south, this small triangle is Catalonia). I heard the name for sure but would have to take a look at a map to know where it lies exactly. >You must remember Barcelona from the 92 Olympiade. That too, but I also have the Alan Parsosn Album "Gaudi", which is about Antoni Gaudi who did some architecture in Barcelona, eg. the La Sagrada Familia. I bet NB has that album as well... >And Badalona is one of those >cities that have grown from a town near a big city and now it has >joined with it. I guess that's what the Americans call "suburb". >The zone of the city I live is mainly habitated with >low-middle class workers. And it is really near of the beach. :) Cool ;-) >I don't know how it opened the jail (but they are really intelligent >animals). It was in a balcony and it fell down. Oh shit! >> I don't think this would work for me! >Hahahahaha!! :)) Don't laugh! That's how it would go... ;-) >Victor -- M.I.K.e If all else fails, immortality can always be assured by spectacular error. -- John Kenneth Galbraith --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 13:33:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA59427 for dynarec-outgoing; Mon, 31 Jul 2000 13:33:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001901bffb30$0a4a32a0$49c0523e@hal9000> From: "Victor Moya del Barrio" To: References: <200007311044.MAA21522@pons.ac.upc.es> <00036db360b023cb_mailit@mail.dynarec.com> <007a01bffb12$422a1320$9ec0523e@hal9000> <00036db9de353bfb_mailit@mail.dynarec.com> <000c01bffb29$ff372c20$49c0523e@hal9000> <00036dbaf73c89a4_mailit@mail.dynarec.com> Subject: Re: DYNAREC: The future of emulation Date: Mon, 31 Jul 2000 22:43:52 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >You must remember Barcelona from the 92 Olympiade. > > That too, but I also have the Alan Parsosn Album "Gaudi", which is about > Antoni Gaudi who did some architecture in Barcelona, eg. the La Sagrada > Familia. > I bet NB has that album as well... > Guadi is Catalonian and yes he made some really wonderful buildings. :) I have visited a small chapel with columns that seem trees, every column is different. > M.I.K.e Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 13:34:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA59437 for dynarec-outgoing; Mon, 31 Jul 2000 13:34:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000731134240.007ec500@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 31 Jul 2000 13:42:40 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <000d01bffb2a$02a61420$49c0523e@hal9000> References: <00036db1243b26f7_mailit@mail.dynarec.com> <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> <3.0.5.32.20000731115738.007e8100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >This is the obvious site. ;) I hope the classicgaming webmaster didn't >close >it. Perhaps we could make a mirror for safe. And we could add the new >information available, for example PlayStation. What do you think Neil? ;) EPR is a favorite of mine, because I've been visiting it for such a long time. It hasn't been updated since '98 though, I tried contacting the guy in charge of it but never got a response, he must have moved on and forgotten about it :( >I have seen I don't have it from Eidolon site ... Perhaps you could post it >to >him? Could be useful for other Sega CD emulator authors. It's on the CD-R. It is in one of the zip files in the Sega 32X area (of all places! I found it by pure accident yesterday). >I will go on holiday from August 15th until September. I'm not sure I will >be here or I will be with my family to our house in the mountain (and then >I will miss the list and everything, I won't have even a computer ;). No computer? Noooooooooo! The horror... the horror! >I always have known that made a SegaCD emulator would be hard >because of my university project, my work, the dynarec list ... I hoped >in start with my friend this summer but now he has gone without saying >a word about it (and also knowing I should have to teach him everything >about emulation because he didn't know anything) I'm not sure if I could >do really nothing. :( If you ever want to give it a shot, you can count on me for help. It would always be a welcome thing seeing a new Sega project ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 31 18:29:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA59656 for dynarec-outgoing; Mon, 31 Jul 2000 18:29:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000731183742.007e72e0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 31 Jul 2000 18:37:42 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <00036dba88bdcfa2_mailit@mail.dynarec.com> References: <3.0.5.32.20000731115738.007e8100@powernet.net> <00036db1243b26f7_mailit@mail.dynarec.com> <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> <3.0.5.32.20000731115738.007e8100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 09:47 PM 7/31/2000 +0200, you wrote: >>Consoles are easy to find info for :) >>www.classicgaming.com/epr is a good start, although heavily outdated ('98!) >>in some areas. >>www.eidolons-inn.de -- second to none for Sega consoles >>www.zophar.net -- has tech info > >I know all these of course, but I'm not really looking for information how to >program or emulate it, but general information what hardware it has and what >it's capable of. Similar to The Machine Room, but for consoles instead of >computers: >http://www.tardis.ed.ac.uk/~alexios/MACHINE-ROOM/ I don't know of anything like that off the top of my head, sorry. :( >>since there is no useful information available on how to work the CDROM >>drive. :) Let's hope it works. > >I'll keep my fingers crossed - damn it's hard to type with crossed fingers! You can cross your toes ;) I'm having the hardest time getting MSCDEX to be compliant! The problem I'm having is obtaining the driver name so that I can open it as a file under DOS and write commands to it. I keep getting "mscd" as the name under my real mode tests, but DOS can't open that. I'll probably have to make ISO images and use those. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 00:13:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA59910 for dynarec-outgoing; Tue, 1 Aug 2000 00:13:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <3.0.5.32.20000731183742.007e72e0@powernet.net> Message-ID: <00036dc445b18f91_mailit@mail.dynarec.com> References: <3.0.5.32.20000731115738.007e8100@powernet.net> <00036db1243b26f7_mailit@mail.dynarec.com> <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> <3.0.5.32.20000731115738.007e8100@powernet.net> <3.0.5.32.20000731183742.007e72e0@powernet.net> Date: Tue, 01 Aug 2000 09:24:40 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>http://www.tardis.ed.ac.uk/~alexios/MACHINE-ROOM/ >I don't know of anything like that off the top of my head, sorry. :( Maybe someone should create it...? >You can cross your toes ;) Uh, that hurts! >I'm having the hardest time getting MSCDEX to be compliant! The problem I'm >having is obtaining the driver name so that I can open it as a file under >DOS and write commands to it. I keep getting "mscd" as the name under my >real mode tests, but DOS can't open that. I'll probably have to make ISO >images and use those. If I knew more about CD access I probably would have been able to get FPSE working... :-( >Bart -- M.I.K.e It is by the fortune of God that, in this country, we have three benefits: freedom of speech, freedom of thought, and the wisdom never to use either. -- Mark Twain --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 00:13:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA59920 for dynarec-outgoing; Tue, 1 Aug 2000 00:13:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008010722.JAA21798@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <3.0.5.32.20000731134240.007ec500@powernet.net> "from Bart at Jul 31, 2000 01:42:40 pm" To: dynarec@dynarec.com Date: Tue, 1 Aug 2000 09:22:03 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > EPR is a favorite of mine, because I've been visiting it for such a long > time. It hasn't been updated since '98 though, I tried contacting the guy > in charge of it but never got a response, he must have moved on and > forgotten about it :( > I have visited it many times too. But since I can remember it has never been updated, it always have the same docs. Perhaps it was "closed" in one of those IDSA attacks (I think the hardest were by that time). > >I have seen I don't have it from Eidolon site ... Perhaps you could post it > >to > >him? Could be useful for other Sega CD emulator authors. > > It's on the CD-R. It is in one of the zip files in the Sega 32X area (of > all places! I found it by pure accident yesterday). > Well. If someday I get the CD. ;) > > If you ever want to give it a shot, you can count on me for help. It would > always be a welcome thing seeing a new Sega project ;) > We will see ... I'm actually reading a book about DirectX. It's very bad explained and the examples are in Visual Basic but I hope I could get the idea about how it works. > > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 00:15:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA59932 for dynarec-outgoing; Tue, 1 Aug 2000 00:15:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 1 Aug 2000 00:32:05 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <200008010722.JAA21798@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I'm actually reading a book about DirectX. It's very bad explained > and the examples are in Visual Basic but I hope I could get the idea > about how it works. Take a look at "Inside DirectX". It's a Microsoft press book and it's very, very good. All in C - no VB or C++. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 00:18:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA59941 for dynarec-outgoing; Tue, 1 Aug 2000 00:18:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008010726.JAA24352@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: "from Neil Bradley at Aug 1, 2000 00:32:05 am" To: dynarec@dynarec.com Date: Tue, 1 Aug 2000 09:26:52 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I'm actually reading a book about DirectX. It's very bad explained > > and the examples are in Visual Basic but I hope I could get the idea > > about how it works. > > Take a look at "Inside DirectX". It's a Microsoft press book and it's > very, very good. All in C - no VB or C++. > But I don't think it will be in my universty library. ;) And the book shop must be all closed this month. It's hard to find something open August here in Spain. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 00:19:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA59951 for dynarec-outgoing; Tue, 1 Aug 2000 00:19:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 1 Aug 2000 00:36:21 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <200008010726.JAA24352@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Take a look at "Inside DirectX". It's a Microsoft press book and it's > > very, very good. All in C - no VB or C++. > But I don't think it will be in my universty library. ;) > And the book shop must be all closed this month. It's hard to > find something open August here in Spain. Can't you just import it or buy it from a local bookstore? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 00:25:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA59966 for dynarec-outgoing; Tue, 1 Aug 2000 00:25:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008010734.JAA27973@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: "from Neil Bradley at Aug 1, 2000 00:36:21 am" To: dynarec@dynarec.com Date: Tue, 1 Aug 2000 09:34:10 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Take a look at "Inside DirectX". It's a Microsoft press book and it's > > > very, very good. All in C - no VB or C++. > > But I don't think it will be in my universty library. ;) > > And the book shop must be all closed this month. It's hard to > > find something open August here in Spain. > > Can't you just import it or buy it from a local bookstore? > Many shops are closed this month here. And I don't want to import it. I will wait until Spain return from holidays. :) > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 02:30:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA60226 for dynarec-outgoing; Tue, 1 Aug 2000 02:29:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <398699CD.39D502AC@eurocopter.de> Date: Tue, 01 Aug 2000 11:35:09 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial References: <3.0.5.32.20000731115738.007e8100@powernet.net> <00036db1243b26f7_mailit@mail.dynarec.com> <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> <3.0.5.32.20000731115738.007e8100@powernet.net> <3.0.5.32.20000731183742.007e72e0@powernet.net> <00036dc445b18f91_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >I'm having the hardest time getting MSCDEX to be compliant! The problem I'm > >having is obtaining the driver name so that I can open it as a file under > >DOS and write commands to it. I keep getting "mscd" as the name under my > >real mode tests, but DOS can't open that. I'll probably have to make ISO > >images and use those. > > If I knew more about CD access I probably would have been able to get FPSE > working... :-( Don't know if this will help at all but look for the line in your CONFIG.SYS file that loads your CD-ROM driver. On that line will be something like "/D:MSCD0000" where "MSCD0000" is in fact a file type thing that DOS uses to access the CD (try creating a file or directory with the same name!). So long as you have the line "MSCDEX /D:MSCD0000 /M:20 /E" (why can I remember the command lines? :o ) in your AUTOEXEC.BAT file then MSCDEX should be working fine. You may find adding the switch "/K" to that line helps out with your compliancy thing. Maybe... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 02:42:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA60249 for dynarec-outgoing; Tue, 1 Aug 2000 02:42:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008010951.LAA22070@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <398699CD.39D502AC@eurocopter.de> "from Neil Griffiths at Aug 1, 2000 11:35:09 am" To: dynarec@dynarec.com Date: Tue, 1 Aug 2000 11:51:06 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > >I'm having the hardest time getting MSCDEX to be compliant! The problem I'm > > >having is obtaining the driver name so that I can open it as a file under > > >DOS and write commands to it. I keep getting "mscd" as the name under my > > >real mode tests, but DOS can't open that. I'll probably have to make ISO > > >images and use those. > > > > If I knew more about CD access I probably would have been able to get FPSE > > working... :-( > > Don't know if this will help at all but look for the line in your > CONFIG.SYS file that loads your CD-ROM driver. On that line will be > something like "/D:MSCD0000" where "MSCD0000" is in fact a file type thing > that DOS uses to access the CD (try creating a file or directory with the > same name!). > > So long as you have the line "MSCDEX /D:MSCD0000 /M:20 /E" (why can I > remember the command lines? :o ) in your AUTOEXEC.BAT file then MSCDEX > should be working fine. You may find adding the switch "/K" to that line > helps out with your compliancy thing. Maybe... :) > But I think you should have to find if MSCDEX is loaded using the DOS INT 2F API. I don't have the documentation at hand but I think this is the way to get it from DOS. The INT 2F is used as point access for all addons to DOS. If you are interested I will search for it. > Neil. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 04:58:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA60364 for dynarec-outgoing; Tue, 1 Aug 2000 04:58:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3986BCAE.DA492130@eurocopter.de> Date: Tue, 01 Aug 2000 14:03:58 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial References: <200008010951.LAA22070@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > > If I knew more about CD access I probably would have been able to get FPSE > > > working... :-( > > > > So long as you have the line "MSCDEX /D:MSCD0000 /M:20 /E" (why can I > > remember the command lines? :o ) in your AUTOEXEC.BAT file then MSCDEX > > should be working fine. You may find adding the switch "/K" to that line > > helps out with your compliancy thing. Maybe... :) > > > > But I think you should have to find if MSCDEX is loaded using the > DOS INT 2F API. I don't have the documentation at hand but I think > this is the way to get it from DOS. The INT 2F is used as point > access for all addons to DOS. If you are interested I will search > for it. Eh? You were trying to get FPSE working - you certainly shouldn't need to... ah, maybe I see. You mean you have the source code and are trying to alter it? If that's the case then yes, from memory, INT 2Fh is the way to go. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 07:08:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA60499 for dynarec-outgoing; Tue, 1 Aug 2000 07:08:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3986DB3A.51B3F98E@eurocopter.de> Date: Tue, 01 Aug 2000 16:14:18 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Take a look at "Inside DirectX". It's a Microsoft press book and it's > very, very good. All in C - no VB or C++. I co-recommend this book. Although I don't actually own it, I did borrow the book for a short time and found it to be pretty useful. Something that also interests me is SDL. A cross-platform graphics and sound library thing. I don't know how it performs though - I'll do some tests. But at the moment I'll be sticking with DirectX. It's the standard. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 09:57:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA60625 for dynarec-outgoing; Tue, 1 Aug 2000 09:57:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000801100547.007e9bf0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 01 Aug 2000 10:05:47 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <200008010951.LAA22070@pons.ac.upc.es> References: <398699CD.39D502AC@eurocopter.de> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >But I think you should have to find if MSCDEX is loaded using the >DOS INT 2F API. I don't have the documentation at hand but I think >this is the way to get it from DOS. The INT 2F is used as point >access for all addons to DOS. If you are interested I will search >for it. I check for MSCDEX, and it reports that it is present, and returns the correct version as well. So that's not it... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 09:59:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA60635 for dynarec-outgoing; Tue, 1 Aug 2000 09:59:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000801100809.007a7240@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 01 Aug 2000 10:08:09 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <398699CD.39D502AC@eurocopter.de> References: <3.0.5.32.20000731115738.007e8100@powernet.net> <00036db1243b26f7_mailit@mail.dynarec.com> <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> <3.0.5.32.20000731115738.007e8100@powernet.net> <3.0.5.32.20000731183742.007e72e0@powernet.net> <00036dc445b18f91_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Don't know if this will help at all but look for the line in your >CONFIG.SYS file that loads your CD-ROM driver. On that line will be >something like "/D:MSCD0000" where "MSCD0000" is in fact a file type thing >that DOS uses to access the CD (try creating a file or directory with the >same name!). > >So long as you have the line "MSCDEX /D:MSCD0000 /M:20 /E" (why can I >remember the command lines? :o ) in your AUTOEXEC.BAT file then MSCDEX >should be working fine. You may find adding the switch "/K" to that line >helps out with your compliancy thing. Maybe... :) I'll try... all I know is that it is indeed loaded. I opened up ATAPI_CD.SYS (which is the driver that MSCDEX loads on my system I believe) and saw the name as "MCD000" so I gave that a shot by hard coding it, to no avail. I'll play with MSCDEX on the command line though... I do hope I can get it working :/ Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 10:40:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA60677 for dynarec-outgoing; Tue, 1 Aug 2000 10:40:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Emulation tutorial From: "M.I.K.e" In-Reply-To: <3986BCAE.DA492130@eurocopter.de> Message-ID: <00036dcca5207f3c_mailit@mail.dynarec.com> References: <200008010951.LAA22070@pons.ac.upc.es> <3986BCAE.DA492130@eurocopter.de> Date: Tue, 01 Aug 2000 19:24:01 +0200 X-Mailer: BeatWare Mail-It 2.0.4 X-BeOS-Platform: Intel or clone X-Priority: 3 (Normal) To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Eh? You were trying to get FPSE working - you certainly shouldn't need >to... ah, maybe I see. You're mixing things up... Bart wanted to know how to get the name of the driver behind MSCDEX. I replied that that I might have been able to get FPSE running if I new more about such things, meaning: I cannot help with that problem. Victor suggested using an DOS interrupt. I guess now everything should be clear ... or not ... >Neil. -- M.I.K.e Idiot Box, n.: The part of the envelope that tells a person where to place the stamp when they can't quite figure it out for themselves. -- Rich Hall, "Sniglets" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 11:28:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA60719 for dynarec-outgoing; Tue, 1 Aug 2000 11:28:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000801113645.007e6100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 01 Aug 2000 11:36:45 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <398699CD.39D502AC@eurocopter.de> References: <3.0.5.32.20000731115738.007e8100@powernet.net> <00036db1243b26f7_mailit@mail.dynarec.com> <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> <3.0.5.32.20000731115738.007e8100@powernet.net> <3.0.5.32.20000731183742.007e72e0@powernet.net> <00036dc445b18f91_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Don't know if this will help at all but look for the line in your >CONFIG.SYS file that loads your CD-ROM driver. On that line will be >something like "/D:MSCD0000" where "MSCD0000" is in fact a file type thing >that DOS uses to access the CD (try creating a file or directory with the >same name!). My system had: /D:SMS0001 so I tried opening SMS0001 and it worked :) Wee! But still... why can't my program find that? Hmm... I guess in the worst case I could make users specify their driver in a config file... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 12:33:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA60778 for dynarec-outgoing; Tue, 1 Aug 2000 12:33:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01bffbf0$b935d920$96c0523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000731115738.007e8100@powernet.net> <00036db1243b26f7_mailit@mail.dynarec.com> <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> <3.0.5.32.20000731115738.007e8100@powernet.net> <3.0.5.32.20000731183742.007e72e0@powernet.net> <00036dc445b18f91_mailit@mail.dynarec.com> <3.0.5.32.20000801113645.007e6100@powernet.net> Subject: Re: DYNAREC: Emulation tutorial Date: Tue, 1 Aug 2000 21:42:32 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "Bart" To: Sent: Tuesday, August 01, 2000 8:36 PM Subject: Re: DYNAREC: Emulation tutorial > >Don't know if this will help at all but look for the line in your > >CONFIG.SYS file that loads your CD-ROM driver. On that line will be > >something like "/D:MSCD0000" where "MSCD0000" is in fact a file type thing > >that DOS uses to access the CD (try creating a file or directory with the > >same name!). > > My system had: /D:SMS0001 so I tried opening SMS0001 and it worked :) Wee! > But still... why can't my program find that? Hmm... I guess in the worst > case I could make users specify their driver in a config file... > > > Why you need to access the CD-ROM driver? I think Mega CD disks are ISO compliant (you can read them from Windows) ... In any case you could also use the functions provided by the INT 2Fh API to access it in DOS. And I'm sure there is a way to find the name of the CD-ROM driver but I don't now know how. > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 12:51:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA60803 for dynarec-outgoing; Tue, 1 Aug 2000 12:51:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000801125924.007e7e00@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 01 Aug 2000 12:59:24 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <000b01bffbf0$b935d920$96c0523e@hal9000> References: <3.0.5.32.20000731115738.007e8100@powernet.net> <00036db1243b26f7_mailit@mail.dynarec.com> <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> <3.0.5.32.20000731115738.007e8100@powernet.net> <3.0.5.32.20000731183742.007e72e0@powernet.net> <00036dc445b18f91_mailit@mail.dynarec.com> <3.0.5.32.20000801113645.007e6100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Why you need to access the CD-ROM driver? I think Mega CD disks >are ISO compliant (you can read them from Windows) ... In any case you >could also use the functions provided by the INT 2Fh API to access it in >DOS. And I'm sure there is a way to find the name of the CD-ROM driver >but I don't now know how. The Sega CD BIOS provides sector reading functions, and that's how it loads stuff up. I need to emulate the CD by trapping Sega CD BIOS calls, it isn't enough just to be able to read files. The INT 0x2F API is MSCDEX and what I was having trouble with. There is a function which returns a driver array, where each element contains a subunit number and a pointer to the driver, but by using this data, I wasn't able to obtain the proper device driver name, so I had to hard code it. Other than that, it is quite simple. I just open the driver as an MSDOS Read/Writable file, and send commands via the IOCTL function of INT 0x21. I've still got to learn how to do stuff like sector reading, but I'm sure I'll manage somehow... I hope :) I've tried to open and close the CDROM tray, and it works :) Now I've got 2 little programs on my desktop to do just that... they save me SECONDS of physical labor ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 12:57:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA60818 for dynarec-outgoing; Tue, 1 Aug 2000 12:57:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001901bffbf4$2394a780$96c0523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000731115738.007e8100@powernet.net> <00036db1243b26f7_mailit@mail.dynarec.com> <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> <3.0.5.32.20000731115738.007e8100@powernet.net> <3.0.5.32.20000731183742.007e72e0@powernet.net> <00036dc445b18f91_mailit@mail.dynarec.com> <3.0.5.32.20000801113645.007e6100@powernet.net> <3.0.5.32.20000801125924.007e7e00@powernet.net> Subject: Re: DYNAREC: Emulation tutorial Date: Tue, 1 Aug 2000 22:07:35 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Why you need to access the CD-ROM driver? I think Mega CD disks > >are ISO compliant (you can read them from Windows) ... In any case you > >could also use the functions provided by the INT 2Fh API to access it in > >DOS. And I'm sure there is a way to find the name of the CD-ROM driver > >but I don't now know how. > > The INT 0x2F API is MSCDEX and what I was having trouble with. There is a > function which returns a driver array, where each element contains a > subunit number and a pointer to the driver, but by using this data, I > wasn't able to obtain the proper device driver name, so I had to hard code > it. > There are also functions in the INT 2Fh API to read sectors, TOC and I think whatever you want to do. And you don't have to worry about the driver name. > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 13:13:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA60841 for dynarec-outgoing; Tue, 1 Aug 2000 13:13:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000801132217.007e83d0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 01 Aug 2000 13:22:17 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <001901bffbf4$2394a780$96c0523e@hal9000> References: <3.0.5.32.20000731115738.007e8100@powernet.net> <00036db1243b26f7_mailit@mail.dynarec.com> <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> <3.0.5.32.20000731115738.007e8100@powernet.net> <3.0.5.32.20000731183742.007e72e0@powernet.net> <00036dc445b18f91_mailit@mail.dynarec.com> <3.0.5.32.20000801113645.007e6100@powernet.net> <3.0.5.32.20000801125924.007e7e00@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >There are also functions in the INT 2Fh API to read sectors, TOC and I >think whatever you want to do. And you don't have to worry about the >driver name. Really? Where's the info on that? I haven't seen any, I couldn't find it Ralf Brown's interrupt list even though everyone says MSCDEX info is in there. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 13:34:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA60865 for dynarec-outgoing; Tue, 1 Aug 2000 13:34:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000501bffbf9$551485a0$1dca523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000731115738.007e8100@powernet.net> <00036db1243b26f7_mailit@mail.dynarec.com> <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> <3.0.5.32.20000731115738.007e8100@powernet.net> <3.0.5.32.20000731183742.007e72e0@powernet.net> <00036dc445b18f91_mailit@mail.dynarec.com> <3.0.5.32.20000801113645.007e6100@powernet.net> <3.0.5.32.20000801125924.007e7e00@powernet.net> <3.0.5.32.20000801132217.007e83d0@powernet.net> Subject: Re: DYNAREC: Emulation tutorial Date: Tue, 1 Aug 2000 22:44:46 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "Bart" To: Sent: Tuesday, August 01, 2000 10:22 PM Subject: Re: DYNAREC: Emulation tutorial > >There are also functions in the INT 2Fh API to read sectors, TOC and I > >think whatever you want to do. And you don't have to worry about the > >driver name. > > Really? Where's the info on that? I haven't seen any, I couldn't find it > Ralf Brown's interrupt list even though everyone says MSCDEX info is in there. > > > I'm using Ralf's doc too ;). My version is quite old, release 53 I think from 1998. It is in "interrupt.i" INT 2Fh entries from 1501h to 15FFh. (It seems the exec files are all crashing so I use a text editor ...) And I have also obtained the correct driver name in my PC using INT 2Fh AH=0x1501 ES:BX a buffer Return in the buffer an array of BYTE disk number DWORD pointer to the driver structure In the driver structure offset 0x0A it is the correct name (or it is correct in my PC) of the driver ... > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 13:52:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA60887 for dynarec-outgoing; Tue, 1 Aug 2000 13:52:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 1 Aug 2000 14:09:09 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <3.0.5.32.20000801132217.007e83d0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >There are also functions in the INT 2Fh API to read sectors, TOC and I > >think whatever you want to do. And you don't have to worry about the > >driver name. > Really? Where's the info on that? I haven't seen any, I couldn't find it > Ralf Brown's interrupt list even though everyone says MSCDEX info is in there. I'll take a look at my big assed INT book when I get home tonight. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 13:53:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA60897 for dynarec-outgoing; Tue, 1 Aug 2000 13:53:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000801140136.007e7ba0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 01 Aug 2000 14:01:36 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <000501bffbf9$551485a0$1dca523e@hal9000> References: <3.0.5.32.20000731115738.007e8100@powernet.net> <00036db1243b26f7_mailit@mail.dynarec.com> <200007310718.JAA22116@pons.ac.upc.es> <00036db1243b26f7_mailit@mail.dynarec.com> <3.0.5.32.20000731115738.007e8100@powernet.net> <3.0.5.32.20000731183742.007e72e0@powernet.net> <00036dc445b18f91_mailit@mail.dynarec.com> <3.0.5.32.20000801113645.007e6100@powernet.net> <3.0.5.32.20000801125924.007e7e00@powernet.net> <3.0.5.32.20000801132217.007e83d0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm using Ralf's doc too ;). My version is quite old, release 53 I think >from 1998. It is in "interrupt.i" INT 2Fh entries from 1501h to 15FFh. >(It seems the exec files are all crashing so I use a text editor ...) > >And I have also obtained the correct driver name in my PC using > >INT 2Fh AH=0x1501 >ES:BX a buffer > >Return > >in the buffer an array of > > BYTE disk number > DWORD pointer to the driver structure > >In the driver structure offset 0x0A it is the correct name (or >it is correct in my PC) of the driver ... That is the exact same function I tried using... It doesn't work for me, I get "mscd". If you've been able to do it, could you possibly send some code this way? :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 1 14:09:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA60920 for dynarec-outgoing; Tue, 1 Aug 2000 14:09:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000801141736.007e7960@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 01 Aug 2000 14:17:36 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: References: <3.0.5.32.20000801132217.007e83d0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 02:09 PM 8/1/2000 +0000, you wrote: >> >There are also functions in the INT 2Fh API to read sectors, TOC and I >> >think whatever you want to do. And you don't have to worry about the >> >driver name. >> Really? Where's the info on that? I haven't seen any, I couldn't find it >> Ralf Brown's interrupt list even though everyone says MSCDEX info is in there. > >I'll take a look at my big assed INT book when I get home tonight. I found it in the interrupt list. It has absolute sector reads which will be absolutely necessary ;) I didn't see any CD tray stuff, though, I'll need to use the device driver for that unless I find that INT 0x2F can do that somehow. I've added the HLE hook to the sub-68K BIOS, BTW. I'm looking at the BIOS function #s the code is sending me and well... it looks like I've got my work cut out for me. I'm going to try to emulate the functions in the order in which they are used. It will be tough though, the BIOS allocates data tables within RAM but it doesn't say where, it just returns pointers through the A0 register. I'm going to have to do some debugging to figure out how this works. Damn the Starscream debugger! It doesn't let you modify registers :( It's going to be tough, since I'll have to patch the BIOS to do the code myself. Of course, when DR68K gets done, I'm expecting it to kick Starscream's ass ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 00:39:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA61370 for dynarec-outgoing; Wed, 2 Aug 2000 00:39:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008020716.JAA31813@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <3.0.5.32.20000801140136.007e7ba0@powernet.net> "from Bart at Aug 1, 2000 02:01:36 pm" To: dynarec@dynarec.com Date: Wed, 2 Aug 2000 09:16:36 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > That is the exact same function I tried using... It doesn't work for me, I > get "mscd". If you've been able to do it, could you possibly send some code > this way? :) > > I used debug and called INT 2Fh at hand. ;) In any case I get "mscd$$$$" when running in DOS window. And MSCDEX wasn't being loaded at "autoexec.bat", so it was using Windows MSCDEX emulation ... When I restart in DOS mode with a modified autoexec I get the correct name. > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 01:38:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA61438 for dynarec-outgoing; Wed, 2 Aug 2000 01:38:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008020847.KAA27242@pons.ac.upc.es> Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <3.0.5.32.20000801141736.007e7960@powernet.net> "from Bart at Aug 1, 2000 02:17:36 pm" To: dynarec@dynarec.com Date: Wed, 2 Aug 2000 10:47:15 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > At 02:09 PM 8/1/2000 +0000, you wrote: > >> >There are also functions in the INT 2Fh API to read sectors, TOC and I > >> >think whatever you want to do. And you don't have to worry about the > >> >driver name. > >> Really? Where's the info on that? I haven't seen any, I couldn't find it > >> Ralf Brown's interrupt list even though everyone says MSCDEX info is in > there. > > > >I'll take a look at my big assed INT book when I get home tonight. > > I found it in the interrupt list. It has absolute sector reads which will > be absolutely necessary ;) I didn't see any CD tray stuff, though, I'll > need to use the device driver for that unless I find that INT 0x2F can do > that somehow. > I think there is a function for sending requests to the driver, perhaps it also can open/close the tray. > I've added the HLE hook to the sub-68K BIOS, BTW. I'm looking at the BIOS > function #s the code is sending me and well... it looks like I've got my > work cut out for me. I'm going to try to emulate the functions in the order > in which they are used. It will be tough though, the BIOS allocates data > tables within RAM but it doesn't say where, it just returns pointers > through the A0 register. I'm going to have to do some debugging to figure > out how this works. Damn the Starscream debugger! It doesn't let you modify > registers :( It's going to be tough, since I'll have to patch the BIOS to > do the code myself. > A way I was thinking about how to emulate the CD hardware is to dissassemble the BIOS. Now you have the funtion entry points of the BIOS, and I think you also have what does each function you could try to see what commands sends to the CD. > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 01:53:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA61457 for dynarec-outgoing; Wed, 2 Aug 2000 01:53:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008020902.LAA17844@pons.ac.upc.es> Subject: DYNAREC: Amiga Genesis/MegaCD emulator? To: dynarec@dynarec.com Date: Wed, 2 Aug 2000 11:02:19 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I was searching with google about MegaCD and I found this old text file: http://www.textfiles.com/games/CONSOLES/mdemulat.pre There is anyone who did know the Amiga scene? Is this real? BTW, interesting archive web ... Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 09:28:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA61977 for dynarec-outgoing; Wed, 2 Aug 2000 09:28:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Silence From: "M.I.K.e" Message-ID: <00036de02525596d_mailit@mail.dynarec.com> Date: Wed, 02 Aug 2000 18:39:53 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hey, apart from Bart and Victor discussing MSCDEX issues the list is untypical silent! NB, I hope you got you pinball machine fixed! BTW, such is machine is called "Flipper" in German, that's right just like the silly dolphin, but don't ask me why! NG, no more comments about 3D? I hope yo don't suffer from a severe case of ADAmania... I wanted to expand the DRFAQ a bit today, but when I took a look at the sources of Pex and Nestra I really could tell what's going on it there, so it might take a bit more time till I sorted that out... So why am I typing this senseless crap? Well, mainly because I installed a new version of my mailer and I want to see if it still works... -- M.I.K.e One learns to itch where one can scratch. -- Ernest Bramah --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 10:01:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA62023 for dynarec-outgoing; Wed, 2 Aug 2000 10:01:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001301bffca4$b0095160$69c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <00036de02525596d_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Silence Date: Wed, 2 Aug 2000 18:53:55 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hey, apart from Bart and Victor discussing MSCDEX issues the list is > untypical silent! > No! Silence no!! Not AGAIN!! Noooooo!!! ;) It's just the MUL8 syndrome. I'm good now ... Don't mention this word again PLEASE!! ;) > I wanted to expand the DRFAQ a bit today, but when I took a look at the > sources of Pex and Nestra I really could tell what's going on it there, so it > might take a bit more time till I sorted that out... > Hehe! I think a have some of them I could take a look also and compare impressions. ;) > So why am I typing this senseless crap? Well, mainly because I installed a > new version of my mailer and I want to see if it still works... > It works. ;) > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 10:22:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA62046 for dynarec-outgoing; Wed, 2 Aug 2000 10:22:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000802103111.007ea100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 02 Aug 2000 10:31:11 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Emulation tutorial In-Reply-To: <200008020716.JAA31813@pons.ac.upc.es> References: <3.0.5.32.20000801140136.007e7ba0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 09:16 AM 8/2/2000 +0200, you wrote: >> >> That is the exact same function I tried using... It doesn't work for me, I >> get "mscd". If you've been able to do it, could you possibly send some code >> this way? :) >> >> > >I used debug and called INT 2Fh at hand. ;) > >In any case I get "mscd$$$$" when running in DOS window. And MSCDEX >wasn't being loaded at "autoexec.bat", so it was using Windows >MSCDEX emulation ... When I restart in DOS mode with a modified >autoexec I get the correct name. Ah... In MS-DOS mode MSCDEX isn't loaded I've discovered. I have to try to load it. "mscd$$$$" explains why I'm having trouble, I tried DOS's function 9 to print the driver name, which terminates at the "$". Stupid Windows ;) But I still can't get it working under DJGPP, hopefully I can fix that... Bart Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 11:18:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA62094 for dynarec-outgoing; Wed, 2 Aug 2000 11:18:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000802112643.007ea780@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 02 Aug 2000 11:26:43 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: 68K Emulator Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I hope this isn't too OT (since it isn't about a dynamic recompiler) but as has been pointed out, the list is a little quiet so maybe I can squeeze this in ;) I've been kicking around the idea of writing an interpretive emulator for the 68000 myself... for no other reason than to say "hey, I'm running 100% on my own code". I tried this once before, but my approach was flawed and I quit and started working on other things. What I want to know, is what's the best way of tackling such a complex processor? I could do it in assembly, thus allowing me to use a jump table... but as I found out with GenitalSH-2 and its function table, too many instructions can cause severe slowdown (GenitalSH-2 in the end generated 57,000+ functions to deal with each instruction) especially, I think, with cache considerations and what-not (GenitalSH-2 wounded up being 4MB, although I recently cut it down to a few KB by and sped it up generating one function per instruction). I was also thinking about a definition file, although that isn't necessary. It would be cool to try though ;) I think it all comes down to wether or not I should use a 65536-element jump table with as many functions generated as possible (perhaps I could only generate functions for commonly used instructions and for the rest, I could use one handler which would obtain its data by looking at the opcode) or some other method... I tried generating functions the last time I tackled a 68K emulator, but I found that I was coding up an emitter routine for each instruction. :P Anyhow, just some thoughts... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 11:22:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA62107 for dynarec-outgoing; Wed, 2 Aug 2000 11:22:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001d01bffcb0$00819840$69c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000801140136.007e7ba0@powernet.net> <3.0.5.32.20000802103111.007ea100@powernet.net> Subject: Re: DYNAREC: Emulation tutorial Date: Wed, 2 Aug 2000 20:32:09 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Ah... In MS-DOS mode MSCDEX isn't loaded I've discovered. I have to try to > load it. "mscd$$$$" explains why I'm having trouble, I tried DOS's function > 9 to print the driver name, which terminates at the "$". Stupid Windows ;) > But I still can't get it working under DJGPP, hopefully I can fix that... > > Perhaps it could be a problem with 64K segments ... All those INTs use still the segment:offset addressing mode and DJGPP works in real 32 addresses. It could also be that the INTs didn't work properly from real mode ... Or perhaps I'm talking without any sense. ;) > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 12:50:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA62178 for dynarec-outgoing; Wed, 2 Aug 2000 12:50:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701bffcbc$5a961660$a1c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000802112643.007ea780@powernet.net> Subject: Re: DYNAREC: 68K Emulator Date: Wed, 2 Aug 2000 21:59:34 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > What I want to know, is what's the best way of tackling such a complex > processor? I could do it in assembly, thus allowing me to use a jump > table... but as I found out with GenitalSH-2 and its function table, too > many instructions can cause severe slowdown (GenitalSH-2 in the end > generated 57,000+ functions to deal with each instruction) especially, I > think, with cache considerations and what-not (GenitalSH-2 wounded up being > 4MB, although I recently cut it down to a few KB by and sped it up > generating one function per instruction). > Assembly is of course the best choice if you want performance. In any case one thing you can do easily it is to take a look to StarScream code. I think it will be hard to obtain a better performance for a 68K using an interpreter emulator. It uses a functions table with 64K entries. As Neil has saied in this list StarScream is greatly influented from its own MZ80 so I think it is a pretty good design. Its emited code is impossible to understand though. About the use of the problem with the cache with this huge jump tables and so many code we have a small discussion some months ago. I posted the question arguing as you are doing now that perhaps it could be better to perform some decode using CPU rather than memory. The conclusion was that you are not using all the function table nor all the code because not all instruction are always executed, but only the most common. And all those can be handled by the actual cache sizes (referring to even 486 256K caches ;). The first time I thought in making a 68K emulator I thought in using only a 8-bits fast decode table and perform the rest of the decoding using instructions. It was mainly to decide the data size of the instruction and such things. But I was taking as a scope my old small 486 with 8 MB of memory. ;) > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 13:02:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA62198 for dynarec-outgoing; Wed, 2 Aug 2000 13:02:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 Aug 2000 13:19:40 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000802112643.007ea780@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > What I want to know, is what's the best way of tackling such a complex > processor? I could do it in assembly, thus allowing me to use a jump > table... but as I found out with GenitalSH-2 and its function table, too > many instructions can cause severe slowdown (GenitalSH-2 in the end > generated 57,000+ functions to deal with each instruction) especially, I > think, with cache considerations and what-not (GenitalSH-2 wounded up being > 4MB, although I recently cut it down to a few KB by and sped it up > generating one function per instruction). You don't quite have to do that. In the 68K world, you've got one procedure that handles x separate instances of an instruction. I'm not advocating having one procedure handle all addressing modes, but having a MOV reg32, mem32 be handled by one procedure, which is really 8 opcodes in the 68K world. You *SHOULD* use the 64K jump talbe (that is if you want it fast), but instead of sucking up 256K for the jump table even without any code, do a run length compression on it. So instead of having dd MovReg32a0 dd MovReg32a1 dd MovReg32a2 .... Do this: db 8 dd MovReg32 db 8 dd MovReg32Zx .... And reserve: jumpTable: ds 65536*4 So when you do an m68000init(), you decompress the table in to memory rather than carrying it around as a huge executable. > It would be cool to try though ;) I think it all comes down to wether or > not I should use a 65536-element jump table with as many functions > generated as possible (perhaps I could only generate functions for commonly > used instructions and for the rest, I could use one handler which would > obtain its data by looking at the opcode) or some other method... You either have a jump table or otherwise you wind up spending more time decoding the instruction. It all boils down to what's more important - size or speed. I'd pick the latter. ;-) > I tried generating functions the last time I tackled a 68K emulator, but I > found that I was coding up an emitter routine for each instruction. :P Just code up an emitter for each variant of the instruction and have one cover for all 8 registers. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 13:04:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA62208 for dynarec-outgoing; Wed, 2 Aug 2000 13:04:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 Aug 2000 13:21:28 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <000701bffcbc$5a961660$a1c3523e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > About the use of the problem with the cache with this huge > jump tables and so many code we have a small discussion > some months ago. I posted the question arguing as you > are doing now that perhaps it could be better to perform > some decode using CPU rather than memory. Been there. Done that. It's slower. > The conclusion was that you are not using all the function > table nor all the code because not all instruction are always > executed, but only the most common. And all those can > be handled by the actual cache sizes (referring to even 486 > 256K caches ;). You're running at most around 20% of the instructions at any given time, and they're all in cache (smaller than 256K) already. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 13:17:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA62228 for dynarec-outgoing; Wed, 2 Aug 2000 13:17:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001f01bffcc0$0da37600$a1c3523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: 68K Emulator Date: Wed, 2 Aug 2000 22:26:41 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You *SHOULD* use the 64K jump talbe (that is if you want it fast), but > instead of sucking up 256K for the jump table even without any code, do a > run length compression on it. So instead of having > > dd MovReg32a0 > dd MovReg32a1 > dd MovReg32a2 > .... > > Do this: > > db 8 > dd MovReg32 > db 8 > dd MovReg32Zx > .... > > And reserve: > > jumpTable: > ds 65536*4 > > So when you do an m68000init(), you decompress the table in to memory > rather than carrying it around as a huge executable. > That is what StarScream actually does. ;) But it makes still harder to read. :( > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 13:20:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA62241 for dynarec-outgoing; Wed, 2 Aug 2000 13:20:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 Aug 2000 13:37:36 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <001f01bffcc0$0da37600$a1c3523e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > So when you do an m68000init(), you decompress the table in to memory > > rather than carrying it around as a huge executable. > That is what StarScream actually does. ;) But it makes still harder to > read. :( The emitted code isn't supposed to be readable, so maybe your expectations are set incorrectly. ;-) It's best to look at the internal tables... well, not with Starscream because the source code is even harder to read than the code it emits. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 13:42:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA62272 for dynarec-outgoing; Wed, 2 Aug 2000 13:42:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002e01bffcc3$8d068420$a1c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <00036de02525596d_mailit@mail.dynarec.com> <001301bffca4$b0095160$69c3523e@hal9000> Subject: Re: DYNAREC: Silence Date: Wed, 2 Aug 2000 22:52:18 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I wanted to expand the DRFAQ a bit today, but when I took a look at the > > sources of Pex and Nestra I really could tell what's going on it there, so > it > > might take a bit more time till I sorted that out... > > > Hehe! I think a have some of them I could take a look also and compare > impressions. ;) > Well, I took a look to Pex code. It seems the usual dynarec that uses code templates for performing the translation. The version I have doesn't work at all because it doesn't even perform a third pass for linking. ;) It uses a kind of table for all the memory that it is called dynamap. Each entry points at start to a function that when is called search a new block to compile (nothing really impressive it only takes a look to the next X bytes of code) and "compiles" (ehem!;) it. I don't know if later is used to point the address of the translated code as our transmap does ... How in hell it counts Mips cycles!!! It's using the Pentium own counter? Really strange ... > Victor Victor (Hehe! I'm replying to myself ;) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 13:42:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA62282 for dynarec-outgoing; Wed, 2 Aug 2000 13:42:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002f01bffcc3$903b7060$a1c3523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: 68K Emulator Date: Wed, 2 Aug 2000 22:52:21 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > So when you do an m68000init(), you decompress the table in to memory > > > rather than carrying it around as a huge executable. > > That is what StarScream actually does. ;) But it makes still harder to > > read. :( > > The emitted code isn't supposed to be readable, so maybe your expectations > are set incorrectly. ;-) It's best to look at the internal tables... well, I know, I know. ;) But as MZ80 emitted code is so wonderful to read :) ... I expect the same from all other emulators. ;)) > not with Starscream because the source code is even harder to read than > the code it emits. ;-) > I wouldn't say harder but it isn't the most readable code I have found, no. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 14:14:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA62315 for dynarec-outgoing; Wed, 2 Aug 2000 14:14:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000802142305.007ee290@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 02 Aug 2000 14:23:05 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000802112643.007ea780@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You don't quite have to do that. In the 68K world, you've got one >procedure that handles x separate instances of an instruction. I'm not >advocating having one procedure handle all addressing modes, but having a >MOV reg32, mem32 be handled by one procedure, which is really 8 opcodes in >the 68K world. How many opcode functions would there be if I wanted to handle every instance of every opcode? >You either have a jump table or otherwise you wind up spending more time >decoding the instruction. It all boils down to what's more important - >size or speed. I'd pick the latter. ;-) > >> I tried generating functions the last time I tackled a 68K emulator, but I >> found that I was coding up an emitter routine for each instruction. :P > >Just code up an emitter for each variant of the instruction and have one >cover for all 8 registers. You mean, like this: EmitADDI(); EmitSUBI(); EmitBTEST(); etc, etc.? I know some of them can be combined... such as ADDI and SUBI, etc. and only one X86 instruction at the assembly level has to be changed... First thing's first, a disassembler... I was thinking about doing it in a similar fashion to sh2d, although the 68K makes things much more complicated with all its addressing modes and complex instruction formats. I wrote sh2d with a table of structures like this: typedef struct { int format; unsigned char *mnem; unsigned short mask; /* mask used to obtain opcode bits */ unsigned short bits; /* opcode bits */ int dat; /* specific data for situation */ int sh2; /* SH-2 specific */ } i_descr; i_descr tab[] = { { ZERO_F, "clrt", 0xffff, 0x8, 0, 0 }, { ZERO_F, "clrmac", 0xffff, 0x28, 0, 0 }, { ZERO_F, "div0u", 0xffff, 0x19, 0, 0 }, { ZERO_F, "nop", 0xffff, 0x9, 0, 0 }, { ZERO_F, "rte", 0xffff, 0x2b, 0, 0 }, { ZERO_F, "rts", 0xffff, 0xb, 0, 0 }, { ZERO_F, "sett", 0xffff, 0x18, 0, 0 }, { ZERO_F, "sleep", 0xffff, 0x1b, 0, 0 }, { N_F, "cmp/pl\tr%d", 0xf0ff, 0x4015, 0, 0 }, ... }; Worked great! With 68K though, I'm going to have to think harder ;) I may have to have a few tables, because I know some instructions will work with that format, but others may not. And what complicates it further is those evil extension words :P The disassembler is essential though, I need it to write a debugger :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 14:18:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA62330 for dynarec-outgoing; Wed, 2 Aug 2000 14:18:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Silence From: "M.I.K.e" Message-ID: <00036de430dd5f39_mailit@mail.dynarec.com> References: <00036de02525596d_mailit@mail.dynarec.com> <001301bffca4$b0095160$69c3523e@hal9000> Date: Wed, 02 Aug 2000 23:29:29 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It's just the MUL8 syndrome. I'm good now ... Don't mention >this word again PLEASE!! ;) Which word? "Silence"? ;-) >> So why am I typing this senseless crap? Well, mainly because I installed a >> new version of my mailer and I want to see if it still works... >It works. ;) Hmm, POP3 and SMTP seems to work for dynarec.com (apart from the fact that I only seem to be able to send mails to the dynarec list for some strange reason, but I had the same problem with the old version). What really sucks is that it seems that POP3 of my web.de account works just fine but after it connected to the SMTP it always stays in "EHLO" state, whatever that stands for, I could bet the older version didn't have that state. This means that I'm now stuck with two accounts and I can only send messages to the dynarec list... I still hope that it's a problem of web.de and not the mailer... >Well, I took a look to Pex code. It seems the usual dynarec that uses >code templates for performing the translation. That's clear, but I'm not sure how it uses the templates, meaning, how it translates the assembly code with the gaps into binary code and patches it during runtime - I just haven't found that yet. >The version I have doesn't >work at all because it doesn't even perform a third pass for linking. ;) He also calls "compilerEmit" although the function is named "compilerEmitIntel", and the called function "compilerEmitEpilog" is missing completely... >It uses a kind of table for all the memory that it is called dynamap. Each >entry points at start to a function that when is called search a new block >to compile (nothing really impressive it only takes a look to the next X >bytes of code) and "compiles" (ehem!;) it. I don't know if later is used >to point the address of the translated code as our transmap does ... Don't ask me... >How in hell it counts Mips cycles!!! It's using the Pentium own counter? >Really strange ... Haven't looked for that... I only wanted to have an example for a dynarec with preassembled templates. I thought I'd take Pex because it has the covers in assembly while Nestra has them in hex. I also wanted to see what kind of table Nestra uses during runtime and tried to compile the converter but the include is missing in BeOS. Maybe I'll have to try it under Linux... Anyway either I'm stuck with Nestra (because that one seems to work) or I take a short example from Pex and won't really explain how it works. Well, this is only meant to be a horrifying example since I don't like that approach anyway, but I have to cover it for completeness... >Victor (Hehe! I'm replying to myself ;) You *are* a sick person after all, but I do that as well from time to time ;- ) -- M.I.K.e Hain't we got all the fools in town on our side? And hain't that a big enough majority in any town? -- Mark Twain, "Huckleberry Finn" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 14:25:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA62352 for dynarec-outgoing; Wed, 2 Aug 2000 14:25:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 Aug 2000 14:42:58 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <002f01bffcc3$903b7060$a1c3523e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > not with Starscream because the source code is even harder to read than > > the code it emits. ;-) > I wouldn't say harder but it isn't the most readable code I have found, no. You wouldn't call this the hardest to read code you've ever seen? I'd like to see worse: static void decode5(intn){c=0; for(sizedef=0;sizedef<3;sizedef++){main_size=1<Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 14:27:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA62362 for dynarec-outgoing; Wed, 2 Aug 2000 14:27:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 Aug 2000 14:44:34 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Silence In-Reply-To: <00036de02525596d_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hey, apart from Bart and Victor discussing MSCDEX issues the list is > untypical silent! > NB, I hope you got you pinball machine fixed! Yes, I did. It kicks ass. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 14:30:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA62374 for dynarec-outgoing; Wed, 2 Aug 2000 14:30:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 Aug 2000 14:47:58 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000802142305.007ee290@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >advocating having one procedure handle all addressing modes, but having a > >MOV reg32, mem32 be handled by one procedure, which is really 8 opcodes in > >the 68K world. > How many opcode functions would there be if I wanted to handle every > instance of every opcode? I think Starscream is around 7100 or so. Sure beats the 64K! > >> I tried generating functions the last time I tackled a 68K emulator, but I > >> found that I was coding up an emitter routine for each instruction. :P > >Just code up an emitter for each variant of the instruction and have one > >cover for all 8 registers. > You mean, like this: > EmitADDI(); > EmitSUBI(); > EmitBTEST(); > etc, etc.? Right. And each emitted instruction would be able to figure out which register to deal with. > I know some of them can be combined... such as ADDI and SUBI, etc. and only > one X86 instruction at the assembly level has to be changed... Well, I wouldn't runtime select ADDI/SUBI, but they could easily be handled by the same emitter. > First thing's first, a disassembler... I was thinking about doing it in a > similar fashion to sh2d, although the 68K makes things much more > complicated with all its addressing modes and complex instruction formats. > I wrote sh2d with a table of structures like this: If you want, just ask Aaron Giles if you can use his disassembler. It works great, and it was included in the drops of DR68K.. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 14:53:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA62397 for dynarec-outgoing; Wed, 2 Aug 2000 14:53:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000802150140.007ef770@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 02 Aug 2000 15:01:40 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000802142305.007ee290@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think Starscream is around 7100 or so. Sure beats the 64K! Cool, that sounds like a decent number! >> I know some of them can be combined... such as ADDI and SUBI, etc. and only >> one X86 instruction at the assembly level has to be changed... > >Well, I wouldn't runtime select ADDI/SUBI, but they could easily be >handled by the same emitter. Yeah, that's what I meant.. >> First thing's first, a disassembler... I was thinking about doing it in a >> similar fashion to sh2d, although the 68K makes things much more >> complicated with all its addressing modes and complex instruction formats. >> I wrote sh2d with a table of structures like this: > >If you want, just ask Aaron Giles if you can use his disassembler. It >works great, and it was included in the drops of DR68K.. Okay, is it fairly easy to implement and customize? I wanted to write my own, but the quicker the better. I think the CPU emulator will be more important in the long run ;) If Aaron Giles' disassembler is as simple to implement as my SH-2 disassembler, then I could probably just use my SH-2 debugger, change the SH-2 specific stuff, and voila :) Though, when I submit a debugger for the DR68K project (I still want to do this ;)) it will probably be written from scratch, since my SH-2 debugger has some really ugly code. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 15:42:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA62444 for dynarec-outgoing; Wed, 2 Aug 2000 15:41:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Silence From: "M.I.K.e" Message-ID: <00036de558e1875d_mailit@mail.dynarec.com> References: Date: Thu, 03 Aug 2000 00:52:16 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> NB, I hope you got you pinball machine fixed! >Yes, I did. It kicks ass. Congrats! Now I know why you've been so silent ;-) >-->Neil -- M.I.K.e "I am not now, and never have been, a girlfriend of Henry Kissinger." -- Gloria Steinem --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 16:53:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA62503 for dynarec-outgoing; Wed, 2 Aug 2000 16:52:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 Aug 2000 17:09:32 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000802150140.007ef770@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >If you want, just ask Aaron Giles if you can use his disassembler. It > >works great, and it was included in the drops of DR68K.. > Okay, is it fairly easy to implement and customize? I wanted to write my > own, but the quicker the better. I think the CPU emulator will be more > important in the long run ;) Yup - it's quite simple. I modded it to do what I wanted it to in about 30 minutes. My mods are in the version that's in DR68K and the API should be self explanatory. And I expect nothing more than top notch code from you, Bart. Let's all hold eachother to high standards, 'k? ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 17:08:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA62526 for dynarec-outgoing; Wed, 2 Aug 2000 17:07:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000802171542.007ec100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 02 Aug 2000 17:15:42 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000802150140.007ef770@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 05:09 PM 8/2/2000 +0000, you wrote: >> >If you want, just ask Aaron Giles if you can use his disassembler. It >> >works great, and it was included in the drops of DR68K.. >> Okay, is it fairly easy to implement and customize? I wanted to write my >> own, but the quicker the better. I think the CPU emulator will be more >> important in the long run ;) > >Yup - it's quite simple. I modded it to do what I wanted it to in about 30 >minutes. My mods are in the version that's in DR68K and the API should be >self explanatory. I've posted a message on the MAME board, since Aaron seems to frequent it. Am I going to end up downloading the MAME sources just ot get at it? Or is there an alternative way? It's the 28.8K you know ;) >And I expect nothing more than top notch code from you, Bart. Let's all >hold eachother to high standards, 'k? ;-) It all depends on what you mean by "top" notch ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 17:23:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA62545 for dynarec-outgoing; Wed, 2 Aug 2000 17:22:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 Aug 2000 17:39:35 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000802171542.007ec100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Yup - it's quite simple. I modded it to do what I wanted it to in about 30 > >minutes. My mods are in the version that's in DR68K and the API should be > >self explanatory. > I've posted a message on the MAME board, since Aaron seems to frequent it. > Am I going to end up downloading the MAME sources just ot get at it? Or is > there an alternative way? It's the 28.8K you know ;) Well, as I said before, it's in the DR68K source which is <200K. Why not just email him at agiles@synthcom.com? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 17:59:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA62577 for dynarec-outgoing; Wed, 2 Aug 2000 17:58:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 Aug 2000 13:59:09 -0700 (PDT) From: X-Sender: tarquin@cx83476-a.irvn1.occa.home.com To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 2 Aug 2000, Neil Bradley wrote: > You wouldn't call this the hardest to read code you've ever seen? I'd like > to see worse: what about this? =P for (i=0;icv[0].x*HORIZ_PCOMP/wp->cv[0].y+HALF_SCREENWIDTH; fl[j].v[i].y=fl[j].z*VERT_PCOMP/wp->cv[0].y+HALF_SCREENHEIGHT; fl[j].v[i+1].x=wp->cv[1].x*HORIZ_PCOMP/wp->cv[1].y+HALF_SCREENWIDTH; fl[j].v[i+1].y=fl[j].z*VERT_PCOMP/wp->cv[1].y+HALF_SCREENHEIGHT; } DrawFloor(&fl[j],drawnsegs); /* Floor version of Abrash's spiffy poly drawer */ now picture stuff like that spread through a 25K file. I shortened the names in that section so it would fit reasonably in the mailer, it dates from when I used a 132 wide window... For any who care, it's an excerpt from my first attempt at a doom clone =P > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me > Synthcom Systems, Inc. ICQ # 29402898 > > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 18:39:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA62616 for dynarec-outgoing; Wed, 2 Aug 2000 18:38:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000802184657.007ec100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 02 Aug 2000 18:46:57 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000802171542.007ec100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well, as I said before, it's in the DR68K source which is <200K. Why not >just email him at agiles@synthcom.com? I didn't know his email, now that I do... I've just emailed him. BTW, I'm still pretty early into the emulator (coded up some rudementary context support) but I have some ideas that are bugging me and I'm wondering wether anyone thinks they're good, they suck, or can add better ideas ;) The first is with registers. The X86 is pretty limiting here, but I thought perhaps it would be possible to keep some registers cached within the X86 register set and then swap them in and out of the context as necessary. I don't know how feasible my idea is, but it would involve the use of an X86 register to keep info on what is and isn't available via a bitmask: Each bit would represent: A7 A6 A5 A4 A3 A2 A1 A0 D7 D6 D5 D4 D3 D2 D1 D0 (16 bits total) and if a set bit would indicate the register is mapped in. (Each register would only have one X86 register to be mapped into). But the problems are that I would have to check which registers are mapped in, and make sure that when swapping in a new register, a different one which may already be swapped in at the destination wouldn't be overwritten. So I think the idea is pretty weak. This does lead me to my second idea... perhaps only the SR and PC could remain cached in at all times. I recall hearing Neill Corlett say something about how Starscream kept track of the PC through the EBP register or using it as an index. It would be incremented (or decremented, I can't remember anymore) and if it overflowed, that would indicate the PC was out of bounds. I don't quite remember anymore :P I was thinking I could have a fetch pointer (a method I've used to a much less complex extent before) register which would only be reloaded each time a branch is taken and at the beginning of the Exec() function. The jump functions might be handled as: mov ebx, jmp_destination mov eax, [fetch_region_base_ptr] add eax, [fetch_region_base_limit] cmp ebx, eax jnae [ebx] ; ; otherwise, find the new region ; or something. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 22:24:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA62786 for dynarec-outgoing; Wed, 2 Aug 2000 22:23:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <3.0.5.32.20000802184657.007ec100@powernet.net> Subject: Re: DYNAREC: 68K Emulator From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Thu, 3 Aug 2000 07:38:27 +0200 Message-ID: <1ees0ui.1cysu5fv6hn7kM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id WAA62780 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > This does lead me to my second idea... perhaps only the SR and PC could > remain cached in at all times. Yes, this makes sense. I did that for the UAE core used in BasiliskII as part of SPARC optimizations. When I only cached PC, the speed improvement was a little more than 8%. Then, I also cached the base address of the 64K instruction table. The overall improvement was around 12%, IIRC. Note: SPARC assembly was enabled for add/sub instructions with CCR update + fullscreen DGA, in both tests (with or without GRA - Global Register Allocation). Later, I also cached the CCR ;-) Last note: The machine was a poor SPARC Station 5. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 22:24:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA62785 for dynarec-outgoing; Wed, 2 Aug 2000 22:23:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <000701bffcbc$5a961660$a1c3523e@hal9000> Subject: Re: DYNAREC: 68K Emulator From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Thu, 3 Aug 2000 07:38:20 +0200 Message-ID: <1ees0l1.y2gd8zrcy8baM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id WAA62779 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I posted the question arguing as you are doing now that perhaps it could > be better to perform some decode using CPU rather than memory. It seems according to Sam Jordan or at least, he is basically convinced of that. His emulator "achieves about the performance of a 040/25 on his A4000T/PPC180". Note that his PPC did not have a L2 cache. His idea was to decode/execute the instructions as the processor would do itself. while() { fetch_opcode() decode_opcode() evaluate_src_addrmode() evaluate_dst_addrmode() do_command() } PPC assembly was used. Another advantage is that the PPC was also in Big Endian mode. So, everything was based on the (translated) effective addresses. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 22:35:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA62806 for dynarec-outgoing; Wed, 2 Aug 2000 22:34:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 Aug 2000 22:52:07 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <1ees0ui.1cysu5fv6hn7kM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > This does lead me to my second idea... perhaps only the SR and PC could > > remain cached in at all times. > Yes, this makes sense. I did that for the UAE core used in BasiliskII as > part of SPARC optimizations. When I only cached PC, the speed > improvement was a little more than 8%. Then, I also cached the base > address of the 64K instruction table. The overall improvement was around > 12%, IIRC. My recommendation: Cache the SR in AH (at least the commonly used parts of it - carry, overflow, zero, and sign). Store the flags in x86 format while executing, and reload them in to the real SR when execution stops. That way it's easy to just slam the flags into the x86 equivalent and do the operation rather than having to manually calculate them out. Also, store PC in its "normalized" form, meaning ESI=Program counter + base address of emulated memory space. Also store the base address of the currently emulated memory block in EBP. I do this in all my emulator cores and it helped performance nicely. Stay away from any funky decoding. It just slows things down unfortunately. Nothing beats a linear lookup table. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 22:38:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA62819 for dynarec-outgoing; Wed, 2 Aug 2000 22:37:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 Aug 2000 22:55:06 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <1ees0l1.y2gd8zrcy8baM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I posted the question arguing as you are doing now that perhaps it could > > be better to perform some decode using CPU rather than memory. > It seems according to Sam Jordan or at least, he is basically convinced > of that. His emulator "achieves about the performance of a 040/25 on his > A4000T/PPC180". Note that his PPC did not have a L2 cache. I don't know how you can get better than: mov edx, [esi] add esi, 2 jmp InstructionTable[esi*4] You just can't reduce it any further. The fetch/add is a minimum - unless you want to do lodsw (which is slower). And smaller than 1 instruction to actually do the jump? Don't think so! > PPC assembly was used. Another advantage is that the PPC was also in Big > Endian mode. So, everything was based on the (translated) effective > addresses. That's not a problem for the x86 - you can just load the even/odd ROMs as odd/even and you're set. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 2 23:58:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA62887 for dynarec-outgoing; Wed, 2 Aug 2000 23:57:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008030706.JAA24537@pons.ac.upc.es> Subject: Re: DYNAREC: 68K Emulator In-Reply-To: "from Neil Bradley at Aug 2, 2000 02:42:58 pm" To: dynarec@dynarec.com Date: Thu, 3 Aug 2000 09:06:47 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > not with Starscream because the source code is even harder to read than > > > the code it emits. ;-) > > I wouldn't say harder but it isn't the most readable code I have found, no. > > You wouldn't call this the hardest to read code you've ever seen? I'd like > to see worse: > > static void decode5(intn){c=0; > for(sizedef=0;sizedef<3;sizedef++){main_size=1< in_qv<8;main_qv++){eadef_alterable_nobyteaddress(n,0xFFC0,0x5000|(sizedef<<6)|(m > ain_qv<<9),i_addq);}} > > for(sizedef=0;sizedef<3;sizedef++){main_size=1< in_qv<8;main_qv++){eadef_alterable_nobyteaddress(n,0xFFC0,0x5100|(sizedef<<6)|(m > ain_qv<<9),i_subq);}} > > for(main_cc=0x2;main_cc<=0xF;main_cc++)idef(n,0xFFF8,0x50C8|(main_cc<<8) > ,i_dbcc);idef(n,0xFFF8,0x51C8,i_dbra); > > main_size=1;for(main_cc=0x0;main_cc<=0xF;main_cc++)eadef_data_alterable( > n,0xFFC0,0x50C0|(main_cc<<8),i_scc); > } > That is UGLY!! Neill doesn't have an autoindent tool? It could be useful. ;) I didn't find that but I haven't done an accurate study of Starscream code. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 00:07:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA62914 for dynarec-outgoing; Thu, 3 Aug 2000 00:05:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008030714.JAA01054@pons.ac.upc.es> Subject: Re: DYNAREC: Silence In-Reply-To: <00036de430dd5f39_mailit@mail.dynarec.com> "from M.I.K.e at Aug 2, 2000 11:29:29 pm" To: dynarec@dynarec.com Date: Thu, 3 Aug 2000 09:14:52 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >It's just the MUL8 syndrome. I'm good now ... Don't mention > >this word again PLEASE!! ;) > > Which word? "Silence"? ;-) > Argh!! Again! ;) > >> So why am I typing this senseless crap? Well, mainly because I installed a > >> new version of my mailer and I want to see if it still works... > >It works. ;) > > Hmm, POP3 and SMTP seems to work for dynarec.com (apart from the fact that I > only seem to be able to send mails to the dynarec list for some strange > reason, but I had the same problem with the old version). This happens to everyone. It is because Neil configured it (I think it is the default setting too) to not accept mails from unknown IP addresses. ;) It only accepts mails to its own machine. Ask Neil if you want to use it as your SMTP server. > >Well, I took a look to Pex code. It seems the usual dynarec that uses > >code templates for performing the translation. > > That's clear, but I'm not sure how it uses the templates, meaning, how it > translates the assembly code with the gaps into binary code and patches it > during runtime - I just haven't found that yet. > It just uses a memcpy and some kind of patching for registers, labels and other stuff. After each code template there are a data structure that must tell the patcher system how to patch. But I don't have the code at hand now. I could download it from dynarec though ... > >The version I have doesn't > >work at all because it doesn't even perform a third pass for linking. ;) > > He also calls "compilerEmit" although the function is named > "compilerEmitIntel", and the called function "compilerEmitEpilog" is missing > completely... > I have found compilerEmit ... But compilerEmitEpilog is missing, yes. > I only wanted to have an example for a dynarec with preassembled templates. I > thought I'd take Pex because it has the covers in assembly while Nestra has > them in hex. Yes it is more readable. ;) > I also wanted to see what kind of table Nestra uses during runtime and tried > to compile the converter but the include is missing in BeOS. > Maybe I'll have to try it under Linux... I haven't looked to Nestra ... > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 00:10:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA62924 for dynarec-outgoing; Thu, 3 Aug 2000 00:09:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 Aug 2000 00:26:44 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Make68k Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-1394548868-965262404=:27068" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-1394548868-965262404=:27068 Content-Type: TEXT/PLAIN; charset=US-ASCII Because of the interest, here's a 68K emulator I had started eons ago. It actually runs and executes a few instructions, but it's not complete. Bart - perhaps you can glean some ideas or even use some of the code. There are a lot of good ideas in there that you could probably learn from. ;-) Even with your measley 28.8kbps download, it'll only take about 10 seconds to get this message, so you'll be OK. The ZIP file is only 13K. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --0-1394548868-965262404=:27068 Content-Type: APPLICATION/ZIP; name="make68k.zip" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="make68k.zip" UEsDBBQAAAAIACMQgiVyTSRAnTIAANEAAQAJAAAATUFLRTY4Sy5D7T37d9u2 zj975+x/YHzvlrhxEjvNzbKl3Y6TuG3u8jpx+thte3Zki7a1yJKuKOexu/7v nwCQEqmX7STd2n3t2ZpUIkEQBEAQAKGNR+x46kbO2vbOJXu8yfaciPHJ1LUi P2SPNr7+6uuv4ib7fnAbOqNxxNrff7/TZF9/xR6xE+64bC+0bJffNlnHdRk2 ESzkgodX3IZW2PLIGXBPcGaNQs4n3It+SF6tHMPA53zIQ8Ein/X9aMyicdxW CD7pu7ds4Ns8RsmJIm6z/i2bWJc87rM+YJZnp/9CaE4kuDtsJNAR+LF1y/qc 2Y6IQqc/BTCOx6bexLedoRP/a+iHExjb8mLo3Hamk/U8BM+PAIrwXbvJ/BB/ iZFkFgusMGL+MP5t4E8mPBw4lhs/HFxaI86unWjsTyOEBdPiN0HIhWDXIUzI YwEPJ44Qju8BCJz4NO4RinV2MXZEjOnAndpcMDG2Qn4d/6/hpiZwxUOAIAAE IjxJEQ6mfdcZuLcs5DoFJF5yNARnBUHoX1luduSkm+ON2JVjwZQVUGYNBvF0 nL7L2VHnZJ394k8RGGAAa8Nu/WnI/GuPifiXAWdE9YEVIcKwhClahLyTtPVD 4jS//xsfRLhOTRY3ZM4Q4NIAJsDIJyDRmHvMiZiIZ+naQAjPj4glYQAgdOQH tIC4bF4EzxN2Sqncu/Wicdwk/kVEfCKa7NAbNDPcD/PouPyGnVnCsm89du24 rlqCMXdp4JCLIEYSqRVPBhnOtibAJ7bvceBuQGwquFrJdXYY4yVYMA25e8vq llhzRD1F7pAIAT0U7Sw2DDlyCqyoKynTZANggEhNfui7rn8NKxrxG00e66k2 2D97maqCGDV9xhv6ZOtJ78lURMAS/iSAueFABcgg90lE9Mckvkzyo2xg+4Mp LA82SWd+xEeWy0Q0HQ6ZJRyb/5AlytDxbBaEft/lE4FDIo2aLHC5JUCnWPGE UpFjwod/3bKB5bERj9SS+e4Vt9cNqBbrT0e46EPnJkY7gWm5MZACwFL+rSj+ y4/bQfe4Kxc4GIhp6Af+yALRjBCNePoislwXlJ6VMgQCmgoOCsKYJw9BPCxv EPecgCCjohUgQ+U0QGg5dLEZyu1gbHkjLjbEdBT/SEUWyYQsHqMe+oil4yE0 7CymfcH/OwWhCjmOlOimdAUv4hGvx74bI2xzi9SfI1KWc1Cax9YVJ0ayRMSB va5idC0QocebrO/QMqVcm3QHAbvZ2Y5nakVAGtFkI+cKOH5i3TiT6USn2Toq mg0G+90/pOZjT0RkO/76+MfMM9fp5x6GMeDMQ9jBwggfxo9tPnQ8XnvVPe8d np6wGvypt9dbde0tuzh/2WXan1qtdTMcpu+fdY56egN430pfH5686hwdHiBs 6pi+e3l4cvF4U+869YQz8rjNXN8bMceLzMbt7cLGYuyHUb71joFV0nowtkId i+PDg1/3T49eHp8Ajptb6Zv90+Pj7slF+narBR1FFE4HEROHHv3m+N6+f8Vj oP/7+qsajfwoEL8fcDEInQDe79Y2Npj2b+AsYGYnBWF0RXg9XMHdGvQ9Bc6H h4zWVbZ+vMlWHnXREAkbK/SkKena2GVxx7PQH3B7GsLewgaW67Jr2IbQeDHg 2NfHlrjcxYWSA07iB+zKcqecrYD+hF26ofd4Be92mdYF1WxoRc4Vp55ff/Vh t4poxhPx9j02fnZ41GWPhgF7yk5eHh3hMyJO/6XgvcgaXMavkPN25eDxcybw BUwSRGrge1fcQ7A/Jd2PO8fdQy/i4dAacB2GBAHvgZOoQdqvF0N045F5kB2Y 3sRj8yBtfuLv0wYucs15hNo0nHIwGQaqmRVybzlSFo6dDhxwbt8+49FgnEH3 cMgEjT3EtyEf4abqxNBEOspSAmp7p9VqxUBAommdiSuH1tTF5tiAmuPyaitz bAVvWzft+H3rPTLz9tbP7HSoMzCzbBvsSC7UiMDJe5bgnjUBWtcnOECdOBpe MHwDWhGEwbX63BXa+Md84oe3R/A47t7SlhoNZDAfLCVNru8HtBGI6WCsAemF x/4VT/rTIpyzcz5yRMRDNonf6mM69r7vTide3CPVDKkQThzbdjkbYJuUL2Gq Ped3Lt6+Z09JEdT3biNeb8Jvr/3Qpt8OruFXJRQbj9iFMwFmhenAjkJrlBxy Xvih87vvwaZ7y1Zs2O88nHIjNS0OvCbrxP+vdLwG/b3aZGv0Lzv90WTOTfzr zc3N+mv6cZSAeMXDyBnQIGTn4nmF3RM+vDjbb9AP+f4f8Rvc1xTtkOo4bVgn oBlQC8jIiI5bTcZY/NdO/FP9395ssnb8DH9uNyUne4u07kBreAtN8M1m0oK1 d+jnZku2hnku2n417tBuxS9acnj1/w42pJ+bssOaHMGAup1AhYb0c0t2sFUH Dar6HxtvyZ/bWgdchEVGweWEDnqjVtIIoNPPHa3D0WLzONtfcB6SmeZaD+pD XPdht5jpUChTwVUsNHORDYaraM1ShlMtZtIxww5ztV/VyIgk20xIBw3x5+NW luHU4mxp/+9gQ/opObSWMJxanO30f2gMlgf+1Dk0Ybg5R0kYLpnsTvo/jrAl f25nGW7eERKGm38eKcPNXo9Shjvn0TT0gN9I569oW9Tg2Le5MtziJwdcRJlH sLs0UhMTn50Oh7DTw94GA9XIvF+hxuwJe9ygjav1FPRqjPlT0K0xlk+R5Y0e hEPcqb3Z2NXfKFziV983aBxnyFbInACaAEowyjG4PgSYmtd8OYTTIgvhrIZd ahq22nCPYphsVZsxDYAjbLKnT9OJ12icFC8J7gkTcQN/uJIV6AZOo1YLke65 128VhPfU7gP8xV04gC4ylNqwykdLtrSCAeF/GJP0wy14IEYMHrBr9L8sR0xM g8API0VniVNLruzrTDPm+d4aGRETHzxlt+A0gHHivyVucAzDP4AHvrnyHZv1 IsuzrdB+wS2bhyuS14ZB6HjRcGUYNOu77Bl4iJQXFPwvnd4x8z339p33zqvj vPQOfbBFH28mL83XLAZoenFZARBoNdOtW9yvBFre9btQ9wdzD5fAlw7jhXC6 s1P5bqPcz/FcAv2BXNGLzejB3NUlA9zBgV0GKe/VvptHu2pxDT/34i7u8pUt cnzP5/ReaD3ncIzn3OAloO7tGH9HnvF39cWm8FDu84UGfTenj/1dfSGwD+V7 L9OURd74xbaCnMf+Lmt1X69+OQc+hJ+/VCjv7/kvAf1gsYAS+A8WHSiBPzNe sBCTPFBMoUxt3zfKsMBcyifoh7fo0o4BoxQWmoPQtvOCPX3mWiNR8h7+wGRO 2BrrwSxmtNuP2+3P0e4/cbv/zNHuVdyuQ+3KZnDEnj7nXjxRFzR94JeyaXfv zVNy3OpeUlDsK52j151feuznbveMvTw7656z9jbbO7xg+0fdzvnS0lKJ+ce6 +2+e/gMcr4PbgcsFW/GNIIJoMJcP0ZnLb/igfLfvHryZdxa9w6cnwCyu8zu3 2dk+WyF/c9zHQVdk6RCHcxPq7On+NAxB1ibo8yUtE0RhenDAM6fy/ifHTgmo /hJc4eUBADVwduQ5u6ljWvGooXIlF0AApy361xvVKCwG40NKkTQwkaOJFplQ 9i2A6k9HpcjM0QVooQY3oinJ+FkNBSGVztlhMqZJvezrLK2zGMpTKnQpIG4y 98pmH/JH0XeeBpv/d2pFXJSeW/c75+e/1Gpxs1qrPa7tMgyEgQYcWGF4C4YJ KOBhqaL7T/f8lPpvtYz+8GJ295Pu887F4asuQtgxIXh8ROE36M5WIOjZmA3x 9FX3/NnR6WuE2DYhQphu6PrXGSgltHnV3b84Pf/1vNvrXkgS0Z8tAHrOwZFy xQdRiVUnu/cuOvs//3p2enhy0T3XoSBqKmZFgmuoiaINK/VxdFxn5IHhodwb yMZptK6R47jImYCa/ec/1/7ZYN+yx8zzgxiDwKIDIDs5PcP9e2utfxtx1ven wELJIU45lDJo3RlqbkbPuYcBshUt7mxFFsWOmzIO3j/Ds2WTYZdHVwE0OYz4 RHMo7sjI8tvNf7UoClsTEmkhgWVga2A0FU1DFSuDWm3k+n3LrX0jmuxX+Osb 8StOqsnUIObPMnH9Rvyg9cJW8yDwa0G/LOBfZ7TQlIi5DI7HtVU44sOIIolq FeBpEl7UH0ruy3p335z5Qvp204cXVj/37Mj3A/3hDhO/0yL9e+pdvn1MC5q8 SnDIvAFULvgkOItCPfCOVNVRRyERUTgIbleMGRmNdO7Xx2xBZG/5XWtZ4xkt XP7ttyaYZFPTcdMasFVYKZd7JooEvHY9dlyO2KvOS0Zvza+8tpa2wkVH1Jbf ecvghtZog31qNZNackK11IVcq/VDbl3qrt7Uq27wh0QWQvoC3CSJI+QnjPH7 TfYbnKPBoYiv40Yiod3yboKfBlFRrUi9STewpFAi4xrH4Erq/JtdZcWwReJD wqNBo1bJoJIQMNtoGbw+IR9NXcswY9fZcx+PMZBKJSdKeUbxVCvVda32jahn 8C9XxMVt42aJ8KW8pbVhq6y9nS7aEJz1eH6zID1A5gY02chnFuw3+iwKeRv9 +BAxCSwRkR/Us1WKEEFbZ/9GX4oNDgARWANOGg+BSmx/1NMXNM5eXaUGxJ8G AVg9E/xIcfH8aIkdcVgjwTFXJZ4l+AdscOmS2wn8BDx0b9OxpMBJjJae5lCS 7WpKk6mm37LWzXAHSLsjOVPNDdo9KQCkIGUYQM4Ih5CLiDDk0w/0I5XSQigs hWJST/b/IImWrB7k7zDPv6YV5zYDjzWliyQreAYDMCdaon76gFnFqXBfTTgw 2+JDIftJxWHw3pLOfFJyQM2WCdTDsqSZQ/epcGUBVndmzCJYnwVvKnf7HPxZ 32VKVxq6P8emWgO2yjYNTj3nIyu0XS7IIcVxM/MUY7mOx+ew4J9zrxfZWmZa GkY/DQZmyFxrRZFX3eg68SO9LcXki+zhdmIPa6cHmJiy+eq7jx74T72J5hf9 nRkr/y5rpoNjGma+/gMtmplhWUCW9+tmtqoxooI6e1Cifzzo+tbNOB5Xrcgd wR1bAWNsoTloabPzDJoo0GjMQ47GiIdcEUhJYHhNJtWewDOoIlHPVa1J0YSU BCGUXR1CCX4kOVXDfDwWRDOuYDQ8a9aB/LDMcRvcRppshY6WDX3Rib4n/nWS 3hihlBXYdBk3Vi3ZSNI0E6kNc4Tlg5sm+8a1keOkGJNCTKgjpn3thFmn/Ahq mt1qHnqgdsFAysXF0n1NpI63gNKy/2ewmM0HdUIBfmhuuiABneGW34Db6h63 Qub5x37IuzcEgwbEGCb5iGMI6kyra9p93+Z7fOR4Bakg5C+DFjLtmPWhpWAg SHCgr9UER+msrUM0MnVc7CbwwXlQDR9azIZvx62K4O/1etXg4wazofeFKAIO Off7vgdzU/BTWWQffxeQ6QRCJg1fLgsweyBDAPKiCbHK/g+DYoGWMPTEN0Li giuRagstMbygDwZNShtrQgGiWG/BX9p+INPhx5ZnuzxkriOiesEg59yyKUN7 kXGgF0OfXA5+DjplfS8MHbrNAZ0yyRcHj/1mUud16ER8cfJgt3nogw0XJxDB n4NC2PAOJKIB5qERerJfUJPFxpCdMNQDeUSQHYPuciNOKON3dn5kUIvnfCTS UfMCLodrsoL/4E2iWiHoJJbyg3RsO7zzIPC4Q7dBKgfBWN5ZtCD96P5P4DsQ eWIrkG3QKIDdO7sXWDENeHjlCL8I+Nn+YrDPQn8UWhM28KcAvQDb84WRjaYp cYtEWGrerlchAuaJJrXXYFe5skIH8g8EpYpcc+ZxvJmHF0Uyw/mhM3I8y71w Bpfz8Az8dSr7sMiB8CuQJivIFOU+h4QPDwyd+QDrAfJQ9WVrLOKTgInID60R N8LKxXFMuD03jRjYF2gZoBWL4UoR8AFkv1HmUEHQsrArEFWoEKOTXELTYHww 7AttT7uAhVipOJ1qOeFofudiBOdTbx8onA8eWCJK+9AVrxnH3T/bvnlXhwwy vFtmv6tTGqtMB/1tOglYhGkykIrL6U4Ytz8B22cwCXDZqqyexDElV+CJXIG2 4cE3Fgl9qpmbear/e+2cRCdb8POEUw+FC8gJ6eG/89BvUlImxhSAjtRAZkrR TTzp7CIEFPsYrrLcCemb9X+58uifdKATkian19oJSSOcHCpJTh9S9n8684xn LSP4sHUeeleW69hkD+Kv+o6auM1K3Wy5+chjrnuDU9JQ2S1EIjsrwyeHPzPi Vr6Qu7K5JrbtsoMqeAFVu13N+QfPCVzB8VBTlzRABKnWHiSQZTxuoIr2ej2l fXJbRnrO+uu0xDUqWcogxyOt70mtEL+UKgEz8R9vtdqtQ8/5FA5Hv+UURB6X kAtcKFTLYzLi6coDbin9qeNGqARxtunKbWwQbUIfzvecUh8Tabe1gzXIPFwL B3PBcjyZ2O6oqFXCAmAxKh7Qju6ArXEYVg/yu1eC26MH+gP3U2vyj5Qprq4L jHxO53m4bPpAfzYkZV8KPpy6irYCV0JdqGc+IiIS2uFh9nAC9y0sOlJpSQIX Vjji0Tmf4XjOK1rRZG+5cN7XcVdJwRjMM/GvdG/Ucx7hfrAD6aTsv1PLi5zo tm72cTxyNAkHfuDVaZkC7PGbCI92Gf1gThDOZn/1BNvbVTO0SPXFwJt0Ut0s nOnr0/ODypniIfGvnirlBptTrZzsVuFkD5LZlmHY3q5EL/RDHb1nzs00YH0+ sKZ0l01cWwHjV9zb8G11pM0Q9iRGRI/rZN1qlRqb8mxxLkZJAs9WB2mGKdQ5 GAXcW+/fZFjmt0kAZLPRLfBW6e1V3r95tAXLVv83mqE+LkkWCT2E9TCq7+uv WKL3ap2Dg/Nur3d48pwdnx50ew+l7zZSR+05H0k+758G2j3UlMs84rL+jeSy 1ndjcjXj5UDIiuTM6sNtKWC5JNn1H/opDK97pgNoxhXxPoF/q7wfGvVBGHBb iwHTccpIvgPg7Srg4iYBTyu8+BjavUwj3/CTIp3y6RRMy3oo0i0+RgXpjvlk PurZH5d6tkk9+4GpZxdQb94xDOrppAEvjXL6UiEV6W6tP/dZCJ5ggIoeUo0W 8y52X8ahRuCojDCEPw1TaLllPHOnonApzXxFbZ+U85Kt6TJ7Zm+7l+jMXOVZ oj+TYnLvzYKEoyQsNpod6Mq25Jao8005U84Au5UDq2/pv6vkXY0vVFya6tfI Md+bNJLcpPVXXATrDueJj8pFx443FVUaYUE2qj24Ci6fMsWEq9ngLOQ2H4R4 Jy6d/3z8MAP+Vg6+nRugVIncXTQ+aY7DShWYaYskWmMiZcEC/UUZJg/Eeh9J g+W2EnmiqJNljDRzROBaA2SCuc5EYJEjNHUfs6RXGXdAvawhevhlabDPhzkU GMUiUPjD5BNezimH8dsbbn9MbvkO6Qs8glEFurNvRIOMSf5exh3/4aGv615H nYQ0LVTEZk6T2W5WeQMqiYNA7yjGYTJ+e7OunV8zmLMVIPqGZJfGPbh0MdtO GfxsleUtrwQ5x2P/ndKt4nvaeaXjFY3FVugYCzRuzKe3dcnktiPjsQAU6eYA gy4ozPtUAFKJMvOR1f8uBkanL3x3Sg4AEuKHlt4qHa2kwZQ+Q2sWS0EqAJrD ISsHf5e1QYfbgy5OkUMP1qdu5qR+pnQ72z/Qdvw/k59TmwOfVxge0nglRdVH L1tv2o9Ca0ASQffAKSejQmFJd7XUcdAxKMi4mLWT9C6dQG74fxfZMXngIxkm n7mB8cVUeFgxmnVseCiZr7Jr/gaim+xLheJaKpVFuJi55EVuWyWuWbxSccVq 3rQcs2wRCCYZS6+lRxVJGqJXvBerUEz2snUvsmWCYfb+T/YWNVQ1Ny9HK5pB utNwmFItTcOBO1+P4doBICp/BRzTnm0sgv2aimhWdt7Md97EzrIEJ942lUhm gOw02I8/ssfYGu/agYqBso4Jyi1KkoHuOAaGahRli9SO1rZT0XazoC34P0qa Py5ujk7fki5bmS6Gh6+kz78Khkl9MyWdtks7qd2wpON3Zsf/ySKmcn1gaVvf 4dIc+dc8ZI8ZVrsEv83XSQlTuT56AlPBSUNHINHX2pIVddeN4dL+m/n+GaOw tOvjWV2LqGdA2MpDSFVaYS+9uOnGBtvzR1OxZKqPbP1T1UYlvaAW4ZQ2iPuI Oq7CFuFE147AXMyJRTdFxe/nfLQ/5gOosxf5UOxoHeHsUx0XqqSP2dgO1j/E SIwCKbCM4BCKcyRF+NDyhYzxJsLx4WoZjurAndWBy60QKrpdvOiy0/PD54cn nSMmQ7jssMcOur2L89NfugdLrPfi8NlF9wDBxC1fXLDH7OLwuNtbgkc1fK5N wCzShG+hrhJVcYmnJtQWOwz9iTHz+OUoniV00qpjYwj/bJAUF6ZAPT3Ush4U lAWTHtDAeyuvesjMh+Kk50ziw5Fv2Wwa4OZExKY8r4yHMc2yGhLKdG8rc1kt nWZV6sPbGFmJYjJb01DA9ICkTwcrIDMX1MJPmaOkagNJAmf7sIWpC2UaIlri gXGd7JdpsM56dO05Sd3gXkScivYnltL1vfzZPzuh1a07TGkcg7//nKzcnC7C 28yEchZ+EsgOJP47hueEbMbxrYDPGGg+Kqq113f9wWWJFaoAkpMLUwVTWblS 0kMCEg+j4BQSlqzZUqJaRpaoslwTVTUH+sYSuYMknaV+6NlQNRNQxzqxJUjS l3JQJLqeXb1MJge85mxi2TKLJidk2aWvlLMCc95Rxza0H8mTVXJ6IM6sw5Kt tTeTMFdLpQ1jAKWr7pSL6KdSUTA0QxkVPK5T4cQP+Dr7mfOAjXx189Lgqqho UXgY+tpRRlNMySrM0kzJv1dXy3I8sWRcGAksZIhFuoBzk4pdqRKHf+Ed2Av/ zc521bWCufOvlFqmYXGLASzk+I7HOi/K02F1AbfdJnvbOzeEW9BlF4RdTy+q XECgBkNkqvBaIURrrFwJcCUDamQEt5gZ2ozR87MHTIqxQJ9We5wEWaisG+yi ERS4hgxZDRG4MYORITh8Q3Z98cwSPJJ56X2y6mnsqk5pyh7aKDc723DbU1Zf LMYfurUGrXQCVUNh6h6RiTqEspAGliLDjTZDeZiwqgq3VBikgmVsbabjq9Yl s4xbt/H4OXaGEU1zObBCJ7pdTmYKZlg893LkEdTpOVZh9hgaquUJ0YmwJPJB X0C6LBKWNzvbFz5KzMcSFsAClieYRiwt6UwldovqFmTpDSKjq0Ja+p89f3DJ VPh4C+q+wuS9KLeidCcRuQPxAH4plia3yayx4mJNmqCosazFcu0EsFGUiJab YU1jTA2xnHcPem5luGR75+dK7mQr12MHKrDiCYBYqlGqeNKJqftshfjoPL5F Eylj79Bg71SIq8W3UP2UMr6VKLd4igY1Z8iKTqjcTkaNia+ILiBankxxvQas SITgKkJCpA/aGQJm2wsr6rNguQ46w85yQtPVoK3t4SB7qlT37cyrINecjbD2 LEQs4fg24AFVFpNVx4LQueIuH3HjjtA6Hd3zRWZS7A20lWi2tyX5jJxkJxRR WqZIfhIlvVeKrpy8dOsgDodwxGzKKywm2lFoBcV7agoBKkmny0jaYVPdJJFG fR6nxGQq8qGKENTX6aUym+j7ahnMf/N+Nz2nv3DRxCsmjgdFRbXioWmnseWm 13LqL+J/Gbnca+k3UeKJXMKXTZYMIGhWpWNm7tTkfYxmsnf2CqfuL09rGIHI 2L709UPFKb1o3d4b9sISSkLSjSSna2g5pCc48kNu9ilWCuSoxZ4t67s2GboX oTXgTW0Bm3SzNJwGkaBvANMuA34pTUeeTV2soD7BIw1uEdA2WaFw6sGlWdrc cwZjRlXckK5AdzLXkmjkt4DkoolBGE9Q+BNOn7mZBvU0Az+X/E9DwBU2YrDd 9Ps1eomZrL7pLKxuqG04Sm/KGZ9cMotvYiUXs004QE+YstITSCxVU7v0RvMc Ph6qjxmiXxeEbkPFcwx/dAINy5AVuKQJS/JIK5c08wPTlVkFaTMHaZMgUREE HVTuA0JD6YU78cEUoBuXvtKTU+mnBt0c90IWlydbWH76PBFuhtfa/XJJRkVW jYrkCzeds6qZ5qDVeuru9O+gHtl3u8o5mXn1I9vSa2PmZ1hwn1RXC8/AhrNU sBE/sYPfe8O5ENfE+OS+AJZi22TtpuS4VEhf8+UrzkZ+JOsmrWuV76CeG1W/ swbRFD/daKefalA6E8rDe37USHgKZ56Q6Ee23aj98UdN8uILdO/kFuknoAxj OaIB+zQa7NtvqXcrGqcxyciP0TE6GvzX4or/GqwBnSFMHPfXvnDJOl4C7ict hpXfmBXkkr1Zr9X0taqK16Hrord49XGCIUEGVQMtzxZJ2VVV8gDstZCuXbLu 3pt1tru2kvr4DXq2obKi9uQJa7cbZo2oYCrGUl2i/ofKjejmCaZBcIuXCV0r CX2mzvHCcLQEotniskYjiaG+P2ohM41oNMid5+IHEhV5NTXZzBIDOoOI3EOB CHTQiXwzcq7rgeIA//epKa0B6MQQcufiipsiaQblwPcGPISbr2mq7WNy32JM JwtKbeIqSS6JzCfLYe7phZHTgj3zhIPnziJHwyX4mHCjFMxzBikBS7ZLEOFE I+WWcruhqe/cZtAGNZdX8wXtdpI9F0/UmgdT0zp073adXaAlTsUn8TgCJTMs SEB3Rhgqg9gIwonGlsfaaIG01lkPaomKjcjqC+wd9/QhaAKD0iBGOUAU+UyB QKgxTVv8/+rHp6+67KbJsMRKvdVutVir3W6xdvwn/qsFd+DpqPKhidSjLh32 hFs/NlnHw25xF2bbNvSdTNgkDEPZrfOhqYWCS/q2KvumkeD/gcr6YFQag/gj +pJ110Nh2e/k4Wbu6SvYvA6I7Nl32QC56jDNFxE5de1jC2IuueoiXExdo7YI RYfOrFDwbD1xWfQiW9IRMM9VcUz3dQOjWuGUauZkaiYC84xnlg03ZrBERb61 ChsgZctsGd4YLb/9Nm4Z5Z43zCqzNJ8nT1RhhwR79SitibHcSmp8J4P88Qdb buceN8yCFhLiH+kYycB/ZOCtsWVVwTypVmFSGR3P2tvVVa3/rlZ3AiPX21So ROuvUW6YuOJtHobgrwcH+Q9s+RuxzGy4uQ+BVaxpHAMiy4uUBlUXn4dzCFmI 2660Gzp6xb0T1qFfdqtaKlaUv+2qYhvwPndaxOJJPMbrlo49jqAJNZmrlzGO EmU5mbqRE7jgoox7CYKU1A+yJoauJYcFvF3RFIJSDk+Sgj7yyeqqJlGGqqiZ 0p3Yv6ZEFFFks0ho5UJrmkGi9G3h6m2qBZDuzVq+sDpg1iRDCf5TVYpVfRo5 TLGYbyarZgghdU2mvaTPOyNJZRx7ce3LdcIlonihP2RYNWaM3EooNHbLILWJ 7ws5W+FWwt0F0DYroBWvlgKli4qhAzS+kDCyikB/nHzrwHC7Y/2R1CPnGp6T 1NuuI3yf/Q6q7LzAMyCtaPlmFb+QJKw/J/RASKmQsbK57iJead0mwGPpaQLg xx9Ze7NhyEiKrdmIyKzQ+2a9ndYhipsbSs0kxN9WYjXsSnpB6ZmIh5KQSvoU LWsFFZdQq+N0CXbC3GRRl/J3sjAPX+AhU9ump4rGJTXq2HPYJF98hPI2KIZq wC6VzpgR9PpL68RN0C+5gZWWodLHSqOy+Z9V9pZTseWL85eFdd8qi18npa9f Co5FKTOHbnX+t26wcEywumVEy/+B4XCqfgj+H13RNpjLh1Gxw7sQfjutGJ0p UV3XHOOVvg0sQadO9+rKWEEXLG2dX7PkvT3rvVP9Xsx430+jKbMd3Hk4qg2l ple3gXTpMnwSOI5KcS9vA7lLlHNUkVHx1qjNCU4KS3NSgFGJHANFOAWW6oEU B1kGLH8/AyFmynKmMIsrb8L+Oc1GNRSXQVF12Xs/29HxWHf/Dfg6tdCFngGY uZ5QOH+k9tuz/Xy+mHG/TqU2IqNkkoCwJNY15/YLPwiw3G9dhhHhIRvj0yX2 2gL321C5ROBdWvVWBaZVOkVVZEW2pfxGrYbRUnprrSRgUuaqnjc3YYFqexBi 9al6MaYG4sc8nIK6ixUgq78yYNZ0zNbIy2VmZFOxZIJfcjdhDyJd00AVvipC NRO+1yDIiyoKhuKhEqa20ss0EJfH1pCprKcjdztv2Aq52uDckL3srGTtbP99 Aiv1K1bfy5H1qijbD3iHIg/o8fQDsVTEI0tpSBbDUpOA25KbJcGQnzM7nSEU pVUMCwipBFER5JqzKHTI2U5FXYvTlBAGrHdSENHMsluqlzLHXPShvc7mlt1k /3YmGkmeQ6gV6v7BQemBJQqTXzF/mzLN8fbT3QXH+ODDZyQ3d2J2XeZaBmf0 KBfW5OwLLBLqREn5xgxHG+xQytEVO+EgEwKQutvO7Yu5lBsVTSGS6dGUKvtJ diozb1SEZsbrEuNKvi6zzRTCxa9DnufhD7lDBhbS/1yOGCEhW9n+YVCafcZA XCoOGSUmcmqVTwW3E9bK2mdz292z7Pa8XV3yZR2tYj1bY9pXDua9GwJ7ioSB BVtKFAVY1hr0+pks+S/rN0oI2bRzN60pXu96KrVlhN+pvLZyV5mViW6l5i1e habK+klAUJMV2pIiX6Dy3IebQrI0N82Ie5ETcrf8agScPF519y9Oz3/Fz0mY F5PhItMVH6j6ztWl4tSXM+DG68gAkblng/amE8HH9zJaelnQPIvPJKTo5SlR mgIQKy1S9eZnCRw5nNA/1zCTIL2Lzv7Pv56dHp5cdDEOeMCHFjiSDDDZNa+g iyp8ZYBJF7Yw6Ut+7WKumevftSgA1TubE0rBZyw2Nhh0gR1do+esbDWZWxz/ 2dRLUdPQigxGKu4C+1pO+cy378zYtWyn9EQ/39YErF1c9/wv3IIcROqT2IEc KqR+pw1IT/pA83+aswrnd93cc4sSBp/kc95vmswW+qkFS4MJ7qb6tMDt0GSk 9ztGXj+ZhFEI/UcFFVEKEkNw45BfcvAoPGF8K8Xoh/6Ugdmv2nAGM137WEW9 R1ls6psbSS39iu1UK2VfP9ByuODLEwSlEISxqRopo+m+WnTdDPgOPPJVFnrZ BpzQI4OL69viOgWYLHVR2zzojifDu+Bf/Sl7HIdkaHkoe4kUqcu7ZEslNNWc YgYemKydZtCKApqqO3X9lA8gTScyOSjyI8stoIDmaMke0csNFhzwGUT4HNhW spMyTtva0tXTe3QsnpvjyiR52/d44SVDk4D5/O78mUjfb+ZROPc67sx9Eqva lQqUbn5fes6jfbIKq85NtU9p19JR/iT2rhShGXEaMwwzKwqDLRlYjqSovSuw 2yEpbi2x5Avuqhfsd7RNzrtFzop+lLC0roEXPaEl/9yLcfTMc9p9D215BGCX qhpx5iBaNahijaZvaFL5XljhKD30oNf24LBYEUJVnX6Smaod3ErN4UEuaXaW OTzDiVOieObVKr3PT6voKH8SWqX3Rat8VlrF/tO0iki1Ss9oj1ql97fVKuk+ C5dbPkN7hdD+xGwWQKpCw+QZ3fpzJW1hNjnnWOzjwplw4TqDzybnKI/3J8Ep WbTKeKVAp1uZa0l9PrCmgsudIn+vv+yg3e28qYjUZbJS9JNucnUIUlIKz98q wIiAsiE4o55kmksio2+RrwJyJa7VymwZ5WYlEODhKEKvPDgonah0/GcTPJaW IaT0r2Uo9DxV53NlPudR17UCwW2c2OciXhm0PxUtnMFpXtHK3vgrFq35LMS+ shDNQlhYYQ798GwFgxKZMrCFcLKuJg2GMh4aOYOjTO7h909Z7k3Xku7P01yu vbE/dW0saILEcEqdehioU/689QLgZYpF0wUU7MvRoMSUrNYrHVm5VU8DTahR 7FZTUyj1pRqOr0QVqeKscymjNKTy2cT6Z6Tg/IlRltLD5ByEh+JZzoCld/LA dKS0f7gmSUtR34Oq2k34jb4SBr9RsNO4jKhFQq3IUoWJAWJTG0FejNUfyXh7 cZmXx2aZF5kT/TtvqEsFDiVbwr1d41b2m9Nzlb1cUKkEKvLhVd822bYSrUbR RVytW8/xBlSdnK6fimsrCLi9vr6upzwXjKdqWgKRvhGZopZJtWk5535BwWlp WacQjVRXClEXSTDUpAafelklOVoxbFxeGztT6VInVrYqZNpJlpCx+nQbO19r L20KJQL12pAZpLI1L9OOlJEXN/Ov2RqViHShl6oPmFKkYlZJucuF5kWDJrr/ vhOziiZGtKueGEgBiQBeqtHrQOi1M6jqQia3Iy2XuLqTsUCnrsvGWPgrrJzh 2BJUH2yOOVK9xLQv7IrgpLKo3owaz5jba1UiRt4ckm3WWQfz9yCqZDshH0Tu 7fp92JfMB13UlbmganDOw0ntzaoxKPyms5JN3y1IqnvO/HAOjpQoEKk5y0fM aQ09SK1z0DC5i2WxA6jRbuhSUHOIqCqDkfkwglGsvQTr9raBc0bThllNe+5H kLc7hfRhuOiLmcZUdwGS3q+cAWdwtdKaoXjnWfvSdcGbAEld13utfTV/ZRig Um1RrBT0evfGiWZLXVZ/HfgeX5L1Y/AWAbfNLFi4OrasZfKbkofk13iDHjOZ 9lxgoNE+lNUT8+xEwGAiCgeTYEXm82jUzX+7wMxKTFMZlS/VurbyJVQK92r0 h+UWs+CIpPU68y+59mWMgGeC4x9yU+rfmBKBNW/YH39gZZykkTtHI14IKk+h fNKaXBOZzpfVxEvmbTBVzmmK9X+EunnYd6FeWZP5IZj9zIIzBVyWjJ9OKfQA euX05/IF086+3b03VM2NDr0Sg/tOQV2bE1EY/7eiq866W29IeiJBc+/H9QYZ m2AH/5Tehi2zKjMLtlt0QU/rcxFanhjyUJvsh2y5/CK0OKClCoTMgVaGQ+6D FktrmlQPmuPLu44647TZ3XtTJmTz6I3SQkXdgzfM/HBi6T5zX638OklvWWLo /rOxIg76EUHVclu/LZZV0SNf3cBAU1EVOqpV62TTOp2pkUtqc29nanNPoXry rPLcd6nNnRLLPNQsYnLq37f2tMjoXAcF0+qaYWklV48iHk5UztsaZL25ljPB 5HrLLj6vpRw0zy65scHASePBYXDFGTIrCNx45L7LG5/BuZlsSyfSyud/SMo7 apM1HNevQyfiX3wNn40RrrwfuG5/qvvjGkb84v/44v/44v/4W/g/wPeRO5wt sCsX+T/+H3kNUB1+cRt8cRvcyW2gmV2frd9gwTl8cRx8cRz8GY6DeyjmL56D BTwHmfPAw7oOMseOxY7xn95B7v+hY0FlouAukXUtVKemyG+CYEv2hD1u/PUZ K1XvdB+KMlpyZ/DFoZ56UIsgvP2hshUDBfmUBk/srMgnLQjVfe46KRge6rcU DJ9n2Mz3dBjbO3oKa55isgIcWZC0q30+o10F700WHjBqNTxTBWSIlgdoV0PM fK0GJPQM/oml2VWxnsAKrQnHSgnZmn04alqfGPfwR2dQQeL8Vffg7sz3MLw/ Kz0qy+JSDZd5m4o5JOtrlF5Gtev3XSOHsoAlZgG4yQHI8MAMADwDwfg60V1K 7lj231vzpaHDT0bxoWExDP3JX6z5EI8H0noE64E0HgH7ou0qtF2Gre+k7DI5 nAvruhn9Z6q66v4fQdNJH8AnnHY8pypLnRl31x/z6a/Dp1pRLBoc0Li5uUmP cZ+eEqxSK/Ko4oc2OqPoeLmmlTUE3xDNl5xD1fe4/h5KJGWo8tT/gmth4EWb WTZudlm4Bco1z1PNLmHMkou4GR+wuidhxyOF3M5enzYrdOtXccqLZUvISfzB hJxxFuVBUOVoJ1OSDngzlbmiotvK7Uk8Df4TtsrkrSDp8wR0pM+z7BJwzr9V QkX90nBCRAl7Wcy4BF1w2QhLKaGvInHU5Qajm+tQAS5Mi7lMShqXMdZ8tV2s 4tfz7TZoxX/m202h8/wv2G8Qj4U2nL03T89CHlggc7Z+hJ5jp+pItv2ou9Kn dVwuVf6fnvqvVv7Fir/6FmUmvGR4XHRXb9HOcfDRdowiN1nVZlGGfNk1T0m0 4o3yQ23ubWW/aE8hb3JabcvxsvUkC/eaun5+LVutwsAO3GZoxhP38wt2r8oW H2EjmWsr+SjfjjnuHHf/jO/GfBTkk42V8YlRsfuBcZcfqZLw6WNVOCIVXLGp YI7vYSAFeB8KXliOJ7+SAZ6HKDEG4AtE+3EfZQDA71hhg3Z68xNXmqKClUoW SqmN7Edacl/m2dWfylLaxjOqYWo80muxGS/0ckolPagaSmbUbAmMbF+z8kAG vexYaVymVfaiXfZiM4uZ9HNmICXPM4CS5xk4pl2X62K8+SClGW5crzhexKxw NGiywdgK2aNH8T+uNMPw8SazryFUyZ6yFvGCDJthOcztnUu2xl59A2We9v3g NnRG44i1v/9+p8lOuOOyvdCKR77FXf9V97x3eHqisRSMzJ6wzWQPUrBfCmvE f2AxXH8aDR2Xs7d+ABzZfq9+23zP1uM/7zyEDWi/bVG+ZgKFMbaGF6UBu5BD 8JH+ySdT14p8leRm9vAGDH5AGHvgT8ACFnAgvx47ERcB6CjHS+SuEIIYhgih 53gjVyYqKQFdYyLg3BZU3Ri2IObAIIK7t8wZypKZS8VwGWFWXmxr5eDfz8/O muy492q/yfb80LU8u1EMTBAwSZjj7Z3WT631Tu9Yq0TALCZoDk6qFJgVxc8j Z1I8+Qkz4FoMFbyTKPgVAAUeD3+YZuEkr1NcwVqV7E/HyYQP28RA12PgixX5 +AmyccJIehLFGprNyCHU+H2SicRmtcFtvtanlexFHMaHi+67uUG8wexBTvbL B0G040keO/a+704nnpQ4GP7E31ecqA3/IT/R2Sj0qqapjJvSSU5mD3BcNYCx hZSOIobhHBN5dl65YiBlt89Q9MrGQWVwzxlhOYZ4BDSscQhqtbpq5DBkrBxn ErgOhwyFgT8NXM78aAxny9QmLd9xjWVq7zLIZwq55bq3zPdcyhIE9XRw2sN0 ChDZQwR9ib0LefkDmbjQd0UTNGZIl/rn6qohZzpt3rbes6WnbHltWWPqIQAb +gH3jLaQCSOFvdaPZ3CZcHWaCAX2J5B7GCRDDpPSYTYPQzT2ITUZwMOGAVOA gwYVE5Er135folRkqXkwmTQVhwccFavp36rq8dhjwidgw9jXmp10bAVN1roZ DptYYcwf5l430gPIc3CZhf50NEZrDYoFg6rl1mCs47As2MQSl9jrOP5lf8wH l8oeU5v7C27Zal9PzTr1L7QUkn/t9Xqq+3Dg+oKvDANp2v8fUEsBAhQAFAAA AAgAIxCCJXJNJECdMgAA0QABAAkAAAAAAAAAAQAgAAAAAAAAAE1BS0U2OEsu Q1BLBQYAAAAAAQABADcAAADEMgAAAAA= --0-1394548868-965262404=:27068-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 00:17:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA62940 for dynarec-outgoing; Thu, 3 Aug 2000 00:16:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008030725.JAA09887@pons.ac.upc.es> Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <1ees0l1.y2gd8zrcy8baM@[192.168.0.2]> "from Gwenole Beauchesne at Aug 3, 2000 07:38:20 am" To: dynarec@dynarec.com Date: Thu, 3 Aug 2000 09:25:46 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=ISO-8859-1 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > I posted the question arguing as you are doing now that perhaps it could > > be better to perform some decode using CPU rather than memory. > > It seems according to Sam Jordan or at least, he is basically convinced > of that. His emulator "achieves about the performance of a 040/25 on his > A4000T/PPC180". Note that his PPC did not have a L2 cache. > Mike, what is the speed and cache of this one?. ;) I think for an emulator to be really faster with CPU decode rather than with memory (jump table decode) it has to be a CPU with no cache, with a very very slow memory and with a CPU very much faster than the memory. I have seen really ugly performance in SiG (MIPS?) multiprocessors here in my university when you send more data to the processors than they can get in their cache system (or you send the data in the wrong way ;). > His idea was to decode/execute the instructions as the processor would > do itself. > > while() { > fetch_opcode() > decode_opcode() > evaluate_src_addrmode() > evaluate_dst_addrmode() > do_command() > } > Ummm ... I think the usual approach should be faster ... It must be using a table for decode_opcode and another for the address mode. Commonly in the 68K the address mode are in a fixed position. But now always, I think there are a lot of exceptions that could make the decode a bit more harder. With a RISC architecture should be easier ... It is the source code available? > PPC assembly was used. Another advantage is that the PPC was also in Big > Endian mode. So, everything was based on the (translated) effective > addresses. > Damn! I don't like PPC assembly! Perhaps I don't want the code. ;)) > Gwenolé Beauchesne Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 00:22:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA62968 for dynarec-outgoing; Thu, 3 Aug 2000 00:21:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 Aug 2000 00:38:24 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <200008030706.JAA24537@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > for(main_cc=0x2;main_cc<=0xF;main_cc++)idef(n,0xFFF8,0x50C8|(main_cc<<8) > > ,i_dbcc);idef(n,0xFFF8,0x51C8,i_dbra); > > main_size=1;for(main_cc=0x0;main_cc<=0xF;main_cc++)eadef_data_alterable( > > n,0xFFC0,0x50C0|(main_cc<<8),i_scc); > That is UGLY!! > Neill doesn't have an autoindent tool? It could be useful. ;) It was indented, but I took it out (it only indented at the first of the line). It's not like that indenting would actually help the above code snippet. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 00:34:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA62988 for dynarec-outgoing; Thu, 3 Aug 2000 00:32:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Silence From: "M.I.K.e" Message-ID: <00036decc8dd3d4d_mailit@mail.dynarec.com> References: <200008030714.JAA01054@pons.ac.upc.es> Date: Thu, 03 Aug 2000 09:44:39 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Argh!! Again! ;) Hey, that's fun ;-) >This happens to everyone. It is because Neil configured it (I think >it is the default setting too) to not accept mails from unknown >IP addresses. ;) It only accepts mails to its own machine. Uh, that explains! And I thought I was just too stupid... It's obvious that he doesn't want to increase the traffic too much... >Ask Neil if you want to use it as your SMTP server. It seems that the problem was caused by Web.de because I could send a message from there to my dynarec.com account now... >It just uses a memcpy and some kind of patching for registers, labels >and other stuff. After each code template there are a data structure >that must tell the patcher system how to patch. That's what I thought too but I haven't figured out yet how this really works. The big question is, *do* I want to know how it works? I guess not... >I have found compilerEmit ... But compilerEmitEpilog is missing, yes. In the comments and the calls it's called compilerEmit but I think the funktion definition is for compilerEmitIntel... >I haven't looked to Nestra ... Go the the DRFAQ, you'll find a link there. >Victor -- M.I.K.e Software, n.: Formal evening attire for female computer analysts. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 00:40:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA63007 for dynarec-outgoing; Thu, 3 Aug 2000 00:40:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008030749.JAA19476@pons.ac.upc.es> Subject: Re: DYNAREC: Silence In-Reply-To: <00036decc8dd3d4d_mailit@mail.dynarec.com> "from M.I.K.e at Aug 3, 2000 09:44:39 am" To: dynarec@dynarec.com Date: Thu, 3 Aug 2000 09:49:05 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Argh!! Again! ;) > > Hey, that's fun ;-) > Stop that!! ;) > >It just uses a memcpy and some kind of patching for registers, labels > >and other stuff. After each code template there are a data structure > >that must tell the patcher system how to patch. > > That's what I thought too but I haven't figured out yet how this really > works. > The big question is, *do* I want to know how it works? I guess not... > The knowledge is always good. ;) But be careful don't follow everything you learn. ;) > >I have found compilerEmit ... But compilerEmitEpilog is missing, yes. > > In the comments and the calls it's called compilerEmit but I think the > funktion definition is for compilerEmitIntel... > I don't know ... > >I haven't looked to Nestra ... > > Go the the DRFAQ, you'll find a link there. > I have it at home. And I'm now at work, I shouldn't look it. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 00:48:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA63020 for dynarec-outgoing; Thu, 3 Aug 2000 00:48:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 Aug 2000 01:05:53 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000802184657.007ec100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Well, as I said before, it's in the DR68K source which is <200K. Why not > >just email him at agiles@synthcom.com? > I didn't know his email, now that I do... I've just emailed him. Aaron is quite the agreeable fellow. > The first is with registers. The X86 is pretty limiting here, but I thought > perhaps it would be possible to keep some registers cached within the X86 > register set and then swap them in and out of the context as necessary. I > don't know how feasible my idea is, but it would involve the use of an X86 > register to keep info on what is and isn't available via a bitmask: Yes, I think this is a good idea. A0/A1, and D0/D1 are used *CONSTANTLY* - more often than the others, so you might consider: A0=ESI A1=EBX A2=ECX A3=EDX And leave EAX for your own fun and amusement. > Each bit would represent: A7 A6 A5 A4 A3 A2 A1 A0 D7 D6 D5 D4 D3 D2 D1 D0 > (16 bits total) and if a set bit would indicate the register is mapped in. > (Each register would only have one X86 register to be mapped into). Now that's a bad idea. You'll spend more time swapping registers in and out of context to use them than to just stick some registers in x86 registers and the rest in memory. > But the problems are that I would have to check which registers are mapped > in, and make sure that when swapping in a new register, a different one > which may already be swapped in at the destination wouldn't be overwritten. > So I think the idea is pretty weak. Bingo. You're right. ;-) > This does lead me to my second idea... perhaps only the SR and PC could > remain cached in at all times. I recall hearing Neill Corlett say something > about how Starscream kept track of the PC through the EBP register or using > it as an index. It would be incremented (or decremented, I can't remember > anymore) and if it overflowed, that would indicate the PC was out of > bounds. I don't quite remember anymore :P It uses ESI for a "normalized" PC, meaning the 68K's program counter plus the offset in physical x86 memory. EBP=The base, so you can always get the PC by doing "sub esi, ebp". > mov ebx, jmp_destination > mov eax, [fetch_region_base_ptr] > add eax, [fetch_region_base_limit] > cmp ebx, eax > jnae [ebx] Yes, each time you must scan through a list of exec regions. This is exactly how Starscream works. One other alternative is to allocate 16 megabytes of memory and just go from there. Requires a buttload more memory, but it'd be a lot faster! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 01:18:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA63055 for dynarec-outgoing; Thu, 3 Aug 2000 01:18:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008030827.KAA18099@pons.ac.upc.es> Subject: Re: DYNAREC: 68K Emulator In-Reply-To: "from Neil Bradley at Aug 3, 2000 01:05:53 am" To: dynarec@dynarec.com Date: Thu, 3 Aug 2000 10:27:19 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Each bit would represent: A7 A6 A5 A4 A3 A2 A1 A0 D7 D6 D5 D4 D3 D2 D1 D0 > > (16 bits total) and if a set bit would indicate the register is mapped in. > > (Each register would only have one X86 register to be mapped into). > > Now that's a bad idea. You'll spend more time swapping registers in and > out of context to use them than to just stick some registers in x86 > registers and the rest in memory. > And x86 is designed to be used this way, use registers only for do real work (as the old accumulator ;) and store very commonly used variables in them. The usual variables must be holded in memory. And the L1 cache will hold all the time the register variables (or I hope so ;). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 01:28:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA63071 for dynarec-outgoing; Thu, 3 Aug 2000 01:28:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 Aug 2000 01:45:26 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Programming stupidity Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Okay, minorly off topic, but I've got to rant a little. I'm code reviewing about 2 megabytes of C code for errors, oversights, etc... anything that would sink a ship (remember our code needs to be up 24/7/365). We've got one amazingly stupid individual (who thinks he's hot shit) working for us, whom we've had to rewrite every line of code he wrote because he fucked it up multiple times (he did rewrites in some cases 3 times on some of his modules). Anyway, I came across this laughable tidbit: if ((i != 0) || (i != 1)) { ..... } Which in and of itself isn't too bad, but I saw this in the version control logs: * Can not figure out why if statement always true. Rewrote code twice but still problem. Comment out code now for release. To state the obvious, if i is not 0, it's true. If i is not 1, it's true. If i is one or the other, one is true, and one is false, meaning that that statement is always taken. Both conditions can NEVER be false. This is an "engineer" with a BS in CS with 8 years of embedded experience, and is a complete and total dipshit. It's war. Time to start twisting the nipple clamps on bad coders and aggressively incompetent individuals! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 01:52:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA63100 for dynarec-outgoing; Thu, 3 Aug 2000 01:52:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008030901.LAA05726@pons.ac.upc.es> Subject: Re: DYNAREC: Programming stupidity In-Reply-To: "from Neil Bradley at Aug 3, 2000 01:45:26 am" To: dynarec@dynarec.com Date: Thu, 3 Aug 2000 11:01:30 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Okay, minorly off topic, but I've got to rant a little. > > I'm code reviewing about 2 megabytes of C code for errors, oversights, > etc... anything that would sink a ship (remember our code needs to be up > 24/7/365). We've got one amazingly stupid individual (who thinks he's hot > shit) working for us, whom we've had to rewrite every line of code he > wrote because he fucked it up multiple times (he did rewrites in some > cases 3 times on some of his modules). > And he is still working with you? ;) > Anyway, I came across this laughable tidbit: > > if ((i != 0) || (i != 1)) > { > ..... > } > > Which in and of itself isn't too bad, but I saw this in the version > control logs: > > * Can not figure out why if statement always true. Rewrote code twice but > still problem. Comment out code now for release. > I think he needs either to sleep a few hours more or change to another job. ;) > To state the obvious, if i is not 0, it's true. If i is not 1, it's true. > If i is one or the other, one is true, and one is false, meaning that that > statement is always taken. Both conditions can NEVER be false. > Let me guess, he wanted to do something like this: if !(i==0) || (i==1)) or if ((i!=0) && (i!=1)) Perhaps I'm also today a bit sleepy (or it's only that I'm just mimic his thoughts) because I still feel a bit confused ... The worst it was he didn't realiced what was happening ... I would have even written the true table to understand what was happening. ;) > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 01:56:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA63113 for dynarec-outgoing; Thu, 3 Aug 2000 01:56:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 Aug 2000 02:13:37 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Programming stupidity In-Reply-To: <200008030901.LAA05726@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > wrote because he fucked it up multiple times (he did rewrites in some > > cases 3 times on some of his modules). > And he is still working with you? ;) We were just about to have him put on CAP (corrective action plan) but he left right before we could do it. Good riddance. > > * Can not figure out why if statement always true. Rewrote code twice but > > still problem. Comment out code now for release. > I think he needs either to sleep a few hours more or change to > another job. ;) And to learn English far better than he speaks and understands it. And he thinks he doesn't have a language problem, and he's damn near unintelligible when heard. > > To state the obvious, if i is not 0, it's true. If i is not 1, it's true. > > If i is one or the other, one is true, and one is false, meaning that that > > statement is always taken. Both conditions can NEVER be false. > Let me guess, he wanted to do something like this: > if ((i!=0) && (i!=1)) Bingo. > The worst it was he didn't realiced what was happening ... I > would have even written the true table to understand what was > happening. ;) He not only didn't understand what was happening, but rewrote the code *TWICE* to try to get rid of the problem! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 01:58:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA63123 for dynarec-outgoing; Thu, 3 Aug 2000 01:58:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008030907.LAA05386@pons.ac.upc.es> Subject: Re: DYNAREC: Programming stupidity In-Reply-To: <200008030901.LAA05726@pons.ac.upc.es> "from Victor Moya del Barrio at Aug 3, 2000 11:01:30 am" To: dynarec@dynarec.com Date: Thu, 3 Aug 2000 11:07:50 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > if ((i != 0) || (i != 1)) > > { > > ..... > > } > > > I applied ... damn! I can't remember the name of this rule ... Norman ,,, no ... what was it? ((i != 0) || (i != 1)) is the same that !((i==0) && (i==1)) ((i==0) && (i==1)) is FALSE ;) so !(FALSE) is TRUE Perhaps you should have to send it to learn a bit about logic mathematics. ;) > Victor Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 02:16:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA63302 for dynarec-outgoing; Thu, 3 Aug 2000 02:16:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39893A3B.F915083@dial.oleane.com> Date: Thu, 03 Aug 2000 11:24:11 +0200 From: Gwenole Beauchesne Organization: IRISA, Campus de Beaulieu, 35042 Rennes Cedex, FRANCE X-Mailer: Mozilla 4.73 [en] (X11; I; SunOS 5.7 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Programming stupidity References: <200008030907.LAA05386@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Victor Moya del Barrio wrote: > I applied ... damn! I can't remember the name of this rule ... > Norman ,,, no ... what was it? De Morgan. not( A or B ) <=> not( A ) and not( B ) not( A and B ) <=> not( A ) or not( B ) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 02:22:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA63315 for dynarec-outgoing; Thu, 3 Aug 2000 02:22:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008030931.LAA00389@pons.ac.upc.es> Subject: Re: DYNAREC: Programming stupidity In-Reply-To: <39893A3B.F915083@dial.oleane.com> "from Gwenole Beauchesne at Aug 3, 2000 11:24:11 am" To: dynarec@dynarec.com Date: Thu, 3 Aug 2000 11:31:28 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Victor Moya del Barrio wrote: > > > I applied ... damn! I can't remember the name of this rule ... > > Norman ,,, no ... what was it? > > De Morgan. > > not( A or B ) <=> not( A ) and not( B ) > not( A and B ) <=> not( A ) or not( B ) Right. I should have to know that ... My memory is becoming really worst everyday. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 03:52:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA63401 for dynarec-outgoing; Thu, 3 Aug 2000 03:52:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007801bffd42$18c696c0$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036de02525596d_mailit@mail.dynarec.com> <001301bffca4$b0095160$69c3523e@hal9000> <00036de430dd5f39_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Silence Date: Thu, 3 Aug 2000 12:43:00 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Well, I've been quiet because I've been ill the last couple of days. But seeing as the list is getting some activity I figured that if I didn't reply now then I'd never catch up! :) > What really sucks is that it seems that POP3 of my web.de account works just > fine but after it connected to the SMTP it always stays in "EHLO" state, > whatever that stands for, I could bet the older version didn't have that > state. EHLO? That sounds like a bug. The command should be "HELO" and is the first command you'd normally send to the mail server. I've never heard of EHLO before - and I wrote mail software! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 03:52:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA63402 for dynarec-outgoing; Thu, 3 Aug 2000 03:52:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007901bffd42$19eb8ec0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Programming stupidity Date: Thu, 3 Aug 2000 12:55:39 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > if ((i != 0) || (i != 1)) > { > ..... > } > > Which in and of itself isn't too bad, but I saw this in the version > control logs: > > * Can not figure out why if statement always true. Rewrote code twice but > still problem. Comment out code now for release. Okay, that's funny. :) It's blatantly obvious why that doesn't work. He's used an OR (||) which means that one of them has got to be true! I mean... duh! :)) > This is an "engineer" with a BS in CS with 8 years of embedded experience, > and is a complete and total dipshit. Oh... dear. How can you have 8 years of embedded experience and not understand a simple OR gate? Maybe he just downloaded code off the Internet for those 8 years... :)) > It's war. Time to start twisting the nipple clamps on bad coders and > aggressively incompetent individuals! Heh. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 10:00:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA63678 for dynarec-outgoing; Thu, 3 Aug 2000 09:59:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000001bffd6d$91922580$2ec3523e@hal9000> From: "Victor Moya del Barrio" To: References: <00036de02525596d_mailit@mail.dynarec.com> <001301bffca4$b0095160$69c3523e@hal9000> <00036de430dd5f39_mailit@mail.dynarec.com> <007801bffd42$18c696c0$0100a8c0@lion> Subject: Re: DYNAREC: Silence Date: Thu, 3 Aug 2000 18:19:50 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > Well, I've been quiet because I've been ill the last couple of days. But > seeing as the list is getting some activity I figured that if I didn't reply > now then I'd never catch up! :) > I hope you feel better. > > What really sucks is that it seems that POP3 of my web.de account works > just > > fine but after it connected to the SMTP it always stays in "EHLO" state, > > whatever that stands for, I could bet the older version didn't have that > > state. > > EHLO? That sounds like a bug. The command should be "HELO" and is the first > command you'd normally send to the mail server. I've never heard of EHLO > before - and I wrote mail software! > You are wrong. Perhaps HELO is the standard command but there is also EHLO that means an extended HELO. This means it is using the SMTP extensions. > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 11:24:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA63757 for dynarec-outgoing; Thu, 3 Aug 2000 11:23:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Silence From: "M.I.K.e" Message-ID: <00036df5bf6044f2_mailit@mail.dynarec.com> References: <00036de02525596d_mailit@mail.dynarec.com> <001301bffca4$b0095160$69c3523e@hal9000> <00036de430dd5f39_mailit@mail.dynarec.com> <007801bffd42$18c696c0$0100a8c0@lion> Date: Thu, 03 Aug 2000 20:26:15 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well, I've been quiet because I've been ill the last couple of days. I hope you feel better now! The German wheather is a real bitch at the moment. I'm expecting a slight cold be tomorrow :-( >But >seeing as the list is getting some activity I figured that if I didn't reply >now then I'd never catch up! :) Too bad ;-) >EHLO? That sounds like a bug. The command should be "HELO" and is the first >command you'd normally send to the mail server. I've never heard of EHLO >before - and I wrote mail software! It's just like Victor added. EHLO is the successor of HELO and it seems to work just fine with the dynarec.com SMTP (thanks FreeBSD!). It seems that We.de now works as well, and since also my university account worked I guess it was a problem of Web.de and not of the mailer... >Neil. -- M.I.K.e The trouble with being punctual is that nobody's there to appreciate it. -- Franklin P. Jones --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 11:24:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA63764 for dynarec-outgoing; Thu, 3 Aug 2000 11:23:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Silence From: "M.I.K.e" Message-ID: <00036df5dca19bd6_mailit@mail.dynarec.com> References: <200008030749.JAA19476@pons.ac.upc.es> Date: Thu, 03 Aug 2000 20:34:26 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Stop that!! ;) Stop what? ;-) >The knowledge is always good. ;) But be careful don't follow >everything you learn. ;) "Jumping into the core of a nuclear power station is bad for your health!" "Can I try?" >> >I haven't looked to Nestra ... I generated the data file from the table on Linux yesterday but forgot to tell you about it. It generates a 3.57MB file from the 76K table and I still don't have a clue how it uses that data for recompiling. But one thing is for sure: a dynamic code generator would be easier to maintain (since the table of Nestra is in hex!) and also much smaller! >And I'm now at work, I shouldn't look it. ;) Work? Could you define that word? When I was at work today I installed more software onto the new computer I got on Tuesday. Hey, that P3/750 surely is much faster than the K6-2/366 I had before ;-) But what I don't understand what I need a TNT2 for, I mean I don't have anything to do with 3D! >Victor -- M.I.K.e In Tennessee, it is illegal to shoot any game other than whales from a moving automobile. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 11:24:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA63770 for dynarec-outgoing; Thu, 3 Aug 2000 11:23:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Relax From: "M.I.K.e" Message-ID: <00036df5ad29b2a2_mailit@mail.dynarec.com> Date: Thu, 03 Aug 2000 20:21:09 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I was so exhausted today that I had to hear some music to relax a bit... It was my destiny (hehe) to come across my Keats CD (Do you have that too NB?) and found a little joke I almost forgot about. On one song two of the musicians are listed with the following "instruments": ian - bbc model b computer flight simulator pete - space invaders ;-) But if you want to have something to really laugh about take a look at: http://www.userfriendly.org/ -- M.I.K.e QUOTE OF THE DAY: ` --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 11:47:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA63802 for dynarec-outgoing; Thu, 3 Aug 2000 11:46:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001c01bffd7c$84c2e380$2ec3523e@hal9000> From: "Victor Moya del Barrio" To: References: <00036de02525596d_mailit@mail.dynarec.com> <001301bffca4$b0095160$69c3523e@hal9000> <00036de430dd5f39_mailit@mail.dynarec.com> <007801bffd42$18c696c0$0100a8c0@lion> <00036df5bf6044f2_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Silence Date: Thu, 3 Aug 2000 20:51:33 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Well, I've been quiet because I've been ill the last couple of days. > > I hope you feel better now! > The German wheather is a real bitch at the moment. I'm expecting a slight > cold be tomorrow :-( > I get a cold last week ... But this week I'm fine. The wheather is being a bit strange this year here ... > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 11:47:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA63810 for dynarec-outgoing; Thu, 3 Aug 2000 11:46:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001d01bffd7c$87dddf20$2ec3523e@hal9000> From: "Victor Moya del Barrio" To: References: <200008030749.JAA19476@pons.ac.upc.es> <00036df5dca19bd6_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Silence Date: Thu, 3 Aug 2000 20:56:08 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >The knowledge is always good. ;) But be careful don't follow > >everything you learn. ;) > > "Jumping into the core of a nuclear power station is bad for your health!" > "Can I try?" > You can try. ;) But I don't know if you could go out of it. ;)) > >> >I haven't looked to Nestra ... > > I generated the data file from the table on Linux yesterday but forgot to > tell you about it. It generates a 3.57MB file from the 76K table and I still > don't have a clue how it uses that data for recompiling. But one thing is for > sure: a dynamic code generator would be easier to maintain (since the table > of Nestra is in hex!) and also much smaller! > I'm just looking it so I can't help you. Why it needs to create a such big table? > >And I'm now at work, I shouldn't look it. ;) > > Work? Could you define that word? > When I was at work today I installed more software onto the new computer I > got on Tuesday. > Hey, that P3/750 surely is much faster than the K6-2/366 I had before ;-) > But what I don't understand what I need a TNT2 for, I mean I don't have > anything to do with 3D! > I have an old X-Terminal with a 19" monochrome monitor in my work. :( > M.I.K.e Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 12:02:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA63833 for dynarec-outgoing; Thu, 3 Aug 2000 12:01:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000803120941.007f1100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 03 Aug 2000 12:09:41 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Make68k In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 12:26 AM 8/3/2000 +0000, you wrote: >Because of the interest, here's a 68K emulator I had started eons ago. It >actually runs and executes a few instructions, but it's not complete. Bart >- perhaps you can glean some ideas or even use some of the code. There are >a lot of good ideas in there that you could probably learn from. ;-) Even >with your measley 28.8kbps download, it'll only take about 10 seconds to >get this message, so you'll be OK. The ZIP file is only 13K. Cool! I'll have a look at it! Funny... by coincidence, my emitter is called Make68K also :) I guess it's a pretty logical thing to call it, but funny nonetheless. 13K is no prob. What I don't like is 6 megabytes without any forewarning :P Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 12:13:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA63851 for dynarec-outgoing; Thu, 3 Aug 2000 12:12:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000803122045.007f3100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 03 Aug 2000 12:20:45 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000802184657.007ec100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yes, I think this is a good idea. A0/A1, and D0/D1 are used *CONSTANTLY* >- more often than the others, so you might consider: > >A0=ESI >A1=EBX >A2=ECX >A3=EDX You mean D0 = ECX and D1 = EDX? >It uses ESI for a "normalized" PC, meaning the 68K's program counter plus >the offset in physical x86 memory. EBP=The base, so you can always get the >PC by doing "sub esi, ebp". > >> mov ebx, jmp_destination >> mov eax, [fetch_region_base_ptr] >> add eax, [fetch_region_base_limit] >> cmp ebx, eax >> jnae [ebx] > >Yes, each time you must scan through a list of exec regions. This is >exactly how Starscream works. One other alternative is to allocate 16 >megabytes of memory and just go from there. Requires a buttload more >memory, but it'd be a lot faster! The 16meg idea sounds pretty cool, I think what I'll do is create an option in the emitter that would ignore bounds checking assuming 16 megs of space is provided. The exec region scanning and comparing is a lot of work, I found out how much that comes into play when I wrote my SH-2 core. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 12:20:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA63864 for dynarec-outgoing; Thu, 3 Aug 2000 12:19:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Silence From: "M.I.K.e" Message-ID: <00036df6a5c1bb72_mailit@mail.dynarec.com> References: <200008030749.JAA19476@pons.ac.upc.es> <00036df5dca19bd6_mailit@mail.dynarec.com> <001d01bffd7c$87dddf20$2ec3523e@hal9000> Date: Thu, 03 Aug 2000 21:30:40 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You can try. ;) But I don't know if you could go out of it. ;)) And I bet you wouldn't even miss me! ;-) >I'm just looking it so I can't help you. Why it needs to create a such big >table? Don't ask me! I haven't generated the executable, but from the makefile it seems that this data file is even linked to the program so it must be really BIG, and that's only a cheesy NES emulator with a little 6502! >I have an old X-Terminal with a 19" monochrome monitor in my work. :( Hey, I have only a 17" monitor, but in colour... >The wheather is being a bit strange this year here ... Not only in Spain... >Victor -- M.I.K.e A strong conviction that something must be done is the parent of many bad measures. -- Daniel Webster --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 12:36:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA63888 for dynarec-outgoing; Thu, 3 Aug 2000 12:35:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002b01bffd83$707ac3a0$2ec3523e@hal9000> From: "Victor Moya del Barrio" To: References: <200008030749.JAA19476@pons.ac.upc.es> <00036df5dca19bd6_mailit@mail.dynarec.com> <001d01bffd7c$87dddf20$2ec3523e@hal9000> <00036df6a5c1bb72_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Silence Date: Thu, 3 Aug 2000 21:45:37 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I'm just looking it so I can't help you. Why it needs to create a such big > >table? > > Don't ask me! I haven't generated the executable, but from the makefile it > seems that this data file is even linked to the program so it must be really > BIG, and that's only a cheesy NES emulator with a little 6502! > I don't want to try to compile it in Linux ... yet. I should have to reboot and I don't want. I don't understand why this huge TRANS_TBL. He tells about a binary search tree. But why it need it? This code is the important part about the TRANS_TBL (dynarec.c): saddr=addr; INT_MAP[(MAPTABLE[addr>>12]+addr)-RAM]=(unsigned int)cptr; ptr=(int *)TRANS_TBL; while(1) { src=*(MAPTABLE[addr>>12]+addr); addr++; /*printf("%x%x",src>>4,src&0xF);fflush(stdout);*/ if(ptr[src]==0) break; if(ptr[src]&1) break; ptr=(int *)(ptr[src]+(int)TRANS_TBL); } When it ends it just copies what it was at the end of the research into the TRANS_TBL and performs some patching. This could be is reading bytes (?) from the memory and it is going depth into the TRANS_TBL that should be the search tree. When it gets something that means end of the tree (0 or first bit set?) it stops the search. What could mean this? Does have he joined the templates in table.x86 into blocks of code and wrote this blocks into that huge table?. Then it search into the huge table for one of those big aggregated blocks and to use it as translation for the source code. If this is true I can't understand why it needs to do this. Perhaps I should have to study comptbl.c to see what it is doing. How is it the huge file? > >I have an old X-Terminal with a 19" monochrome monitor in my work. :( > > Hey, I have only a 17" monitor, but in colour... > When I mean monochrome I mean only some ugly kind of gray and black. Only two colours. You can't understand how ugly it is seen Netscape ... And it hasn't even a HD or a FD, neither a Speaker or a soundcard. I have to listen music or radio with my walkman when I could download all MP3 I would want we the hyperfast university internet connection. :( > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 12:40:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA63898 for dynarec-outgoing; Thu, 3 Aug 2000 12:38:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 Aug 2000 12:56:08 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Relax In-Reply-To: <00036df5ad29b2a2_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I was so exhausted today that I had to hear some music to relax a bit... > It was my destiny (hehe) to come across my Keats CD (Do you have that too > NB?) and found a little joke I almost forgot about. Wasn't that Stuart Cottle & Ian Barinson's old band? I knew that Alan Parsons inherited them... ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 13:02:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA63926 for dynarec-outgoing; Thu, 3 Aug 2000 13:01:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 Aug 2000 13:18:36 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Make68k In-Reply-To: <3.0.5.32.20000803120941.007f1100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > 13K is no prob. What I don't like is 6 megabytes without any forewarning :P I have a 50K limit on all messages to the list, so you're not likely to run in to any issues. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 13:04:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA63937 for dynarec-outgoing; Thu, 3 Aug 2000 13:02:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 Aug 2000 13:20:06 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000803122045.007f3100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >A0=ESI > >A1=EBX > >A2=ECX > >A3=EDX > You mean D0 = ECX and D1 = EDX? Yup. > >Yes, each time you must scan through a list of exec regions. This is > >exactly how Starscream works. One other alternative is to allocate 16 > >megabytes of memory and just go from there. Requires a buttload more > >memory, but it'd be a lot faster! > The 16meg idea sounds pretty cool, I think what I'll do is create an option > in the emitter that would ignore bounds checking assuming 16 megs of space > is provided. The exec region scanning and comparing is a lot of work, I > found out how much that comes into play when I wrote my SH-2 core. The exec region scanning isn't all that bad. It only comes in to play when a branch occurs, but it's certainly slower than just doing a 16 MB lookup. In one case you're consuming mass quantities of RAM and making it run faster, and the other you're consuming less RAM but making things slightly slower. Consider the tradeoffs. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 13:12:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA63952 for dynarec-outgoing; Thu, 3 Aug 2000 13:11:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000803131945.007ec3b0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 03 Aug 2000 13:19:45 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Haha! Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hey, This is quite OT, but remember the AMD vs. Intel discussion? Well, here's something some of you might get a kick out of: A friend of mine got a T-bird Athlon (700MHz) and I teased him about it being crappier than Intel, just to piss him off, and he kept getting angry and throwing benchmarks at me. I also mentioned an isolated problem where one user ran ZSNES at 30FPS (compared to 60FPS earlier) after upgrading from a Celeron 333 to an Athlon, even though other factors were probably involved. Well, I told this friend that I bet he couldn't get Genital to run as fast on his Athlon as on a PIII-500 I have access too (Genital runs a bit faster than fullspeed with -fskip 2 on a P166) and he accepted the challenge. I put some naughty code in that would detect an AMD chip with CPUID and wait for 256 Vsyncs before rendering each frame (hehe) and he noticed that right off. He knew it was a trick though, because Genital printed a warning message: Warning: AMD sucks The solution was to turn off vsync, it would run fine. He did so and although it sped up, he still claimed that it wouldnt run full speed and was quite ticked off. It's probably something else with his system, I don't know what as I didn't see it running, but it was quite a bit slower than 60FPS he says. I expected it to run blazing fast on a 700MHz machine... I never anticipated these results ;) Turns out I didn't even have to write code to slow down his AMD "supermachine", it happened naturally :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 14:01:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA63992 for dynarec-outgoing; Thu, 3 Aug 2000 13:59:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 Aug 2000 14:17:07 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Haha! In-Reply-To: <3.0.5.32.20000803131945.007ec3b0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > A friend of mine got a T-bird Athlon (700MHz) and I teased him about it > being crappier than Intel, just to piss him off, and he kept getting angry > and throwing benchmarks at me. I also mentioned an isolated problem where > one user ran ZSNES at 30FPS (compared to 60FPS earlier) after upgrading > from a Celeron 333 to an Athlon, even though other factors were probably > involved. That's cruel. Though from personal experience, a 700MHZ PIII and a 700MHZ K7, the PIII is ahead by 5-10% in every emulated video game I've run. Both machines running 133MHZ memory, too. And benchmarks are a frigging joke (as we've discussed). I really get tired of the pro-AMD crowd. Once I see my code running faster on an AMD CPU on an equivalently clocked system, I'll concede it's a faster chip, but anything else, such as driver version #s or hand optimized assembly specifically for the K7, is nothing more than a smoke and mirrors act. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 23:44:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA64423 for dynarec-outgoing; Thu, 3 Aug 2000 23:43:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 Aug 2000 00:00:49 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Lexical analyzer Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-1623009888-965347249=:36033" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-1623009888-965347249=:36033 Content-Type: TEXT/PLAIN; charset=US-ASCII 6K of ZIP attachment - shouldn't be to horrible for everyone. This is the lexer I promised a couple of weeks back. Some notes: * Emit.c is a test program that takes just a filename and will tokenize the input file * Tabs are every 4 columns * Radix is set to decimal or binary and decodes as such * Should be 100% bug free Have a look at it! I didn't include the other dependencies, like memory management and the other support junk. Please have a look and do find some holes in it! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --0-1623009888-965347249=:36033 Content-Type: APPLICATION/ZIP; name="lex.zip" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="lex.zip" UEsDBBQAAAAIAKC8Ayk5p7L7IQMAAPAIAAAGAAAARU1JVC5DtVRta9tIEP4s g//D1MWNHHy2m34JvsuBmzqtIXHATsuVyxF00shaWO+K3ZVfKP3vnVnJcuKa 0g+JQFrtvDzPaObR9k+f6Wo2wN/w4et0NBtfwh/wYauipYjBYKyXuZBoII+M pWWpk0IihBI3aDo+7VLnWyMWmYOzwWBQZVMmLIwuctqPpAQfYAmQQFaY+ET/ mCOCFDEqiyAUGK0d6BQiE2dihb1dcc909ZuNZuO1ULEsEoS/rEuk+L+X/X1g FPpnW2QWB8bYbXN8amvF2mA/KRvQy1o/uZa41GZ74MGlcH3qqDezI00whdF8 Pp7dzdny/LOeRkuE4W7kDyVX7R0rZ7ZDyIvz8SY3cAG8oLVCK3BZ5CCNhCyn GAQBx13RnuL8ss7QoA8paNVxXBizD07W10IhULBfX/8ivKxlIxxXqtGqEwdI 271i0cZG5I7qGtbGu0xYMLpwDJ9FKpFoIZISImvRcKwtPyKL8hwV86tds4FS qfeUWUqUsuneZ0IUu4KwtlWyfRGBrrRIDkYTxllk4LSaSBfqLXe8C58n07t3 Z1VvO83Gt2YjSHMjlEtD6xI0lNIa7b5ieK8AoG3v1URByiNrW6CPk9yxtkzu VasLNVVNUqH/Sdg8hfAtv373ikWViPRFlbqMhDrU56FGfkMXgmePgAwAuaYG QaqNt5UnXJ9/RofmJebKbPwdIb9EZhHv5nhKm1U1tmqUxbuza9x8iSRcwIBb fuNPjomixvsRkLfe0FakEJLpNkcVMtq/b//rEGLAkEGlhBZ7MfGTpwnvwhgt eMxHLyVHnfhRO2j3zuXGJ9axFXewzlhE4R7jFYGM/3kY315xDWURvsRHNGXI /OvN+9trH1WF1aSla7grd/FgKbWXF+dzRxGLssLgu3+itPgLkrvZZPrxOIl3 PQfJ9PPN+/HsKEnpGvK/1QXrgS9O2vbkMSXhTZTDBZrfreKA5PLTaAZAJL2z TRfasQcPWU7nncflvoHBJk07e9+TcVY0/uW4JtjNd1XHE4Fd6kImfExrPlmP 6MwfF6zdeVa4RK9VCVqK+6nNoCuMCgfVKfMDUEsDBBQAAAAIAIO9AykaAXLj IRQAALhPAAAFAAAATEVYLkPtXPtTG8eT/1mu8v/QkEqQsAyY3LfKMbarMBYJ Fx4uwEkc20cNuyNpjtXsfmdmAcX2/37b89qZ1Qphzrjuh6PKD+3Oo7un+9OP abG++o1+Hj4A/QdevzvcPh7swGN4PeVkwhIQNMknBcuogIIIWf0zydMyo9DN 6DUVPT1tJy+mgo3GCjY3Njbs7GomjEReFtXn7SwDPUBWC1aLXNJUT9R/nVAK GUsolxQYB5HnCvIhEJGM2SVdc8R9o5/1hw8ePviB8SQrUwrPpUozdr42ftl4 yPLZZ0SMGg8TNS1o/Gw5yQVdT40A1sbLM68mdJKLaeMNnTC1ntFr/bh6kdIh 47Tz7t3p4K/Ts4Ptvzqdp09+2ex0Ouvr8PR3OKXXCpavcpEuw4Rcs0k5qWf9 tn3y29nJ3t+DalLHToFXTMGYyDEuXz3Y44oKTjKQSpSJKgWVQHgKl0Qwcp5R iePMO5AnSjA+evjg08MHnbd7h6dPYbUon5qnW9WzeFz1Uh5W9O0zflG9/bJl tzxAxSECRll+Xm3c2IkolkBzoVU5Oivsp20hyBRewOHb/f0tP2N3b38AZtgu y+jMe0suDiifaqm1jfh5E6oR5c+bFc30sJycU7E1Q9Sx1dw/c5HaLd9WT9zj 0/yCctncGZd9ekxSdl1tvD/46+x4+/XeX2evBzt7B9v7WjQRAUjiPuUjNa7G b2zVZ/AHyUoKozO5T6+3WkQWUVetJWO64P1HeGFO8NNyUpSMD/Plfgcp2nlT UbB79KWv3+UFFYSncrmvyT16MzjePnx9Yt8OMzJyr3b3t391zxk3dLCcu9d7 hyenx293TveODt0oXk6oYIkdcPj2YHC8t2PfXdCpm/n74J2eUT1fX4d9JhUo KiaME5UL/fgTHmEfNr549Vr9hj+INp15Pwaz4I3IE5qWggLAs84+vR4IkQtn VYtX6MAeL0olq4/POnouniQqvcohZbLIyHR20oIlj0qFawL+PIPDXI2rBecM XrDUayoTwQo80IrAueMWrHI6ZhJEXirGqeMKcQao5rhiVY1pxTjhKRGpfWrH rS3e4Bv+rAcm5S23KJ/qo3lVDodUvP/Xk82Poeld5iyF5tF3a4Dcp5c061eU 1lRD/XY3FxOiGq8vyVmG+l5I/Tp7QwSZ0GpltIJeiMDl0wM5ev/zvzYMSZ1L WQjG1bDbTcZEwGpvhv5+vWn78mYht47eoA/LH3j3xyztPYMf5Y/yA1/uz0Al GnCn5ndmY7vw6+Ptk5PB8enZwcmvZnV88eWbmq+PZA4rvuCZPx3/fMCVmD4D wyOcqGlGYaiF4uyvyEppHmUY8hj5yHqBa6Zq44JumlPJVxTQ6nmvDqRq83nm H0bWcMWyan2Rp2VCgUBWzU+qHY0JTKiUZES1R7bmANW2OdfroM0kOZd5dj/R UZt6B2rtFHdtbc1q5I1aa9WTnFXLCtVtHVOrJqrEDJx2l5dvo7y4CeVp+xbf Rdf2OFNNVbOaMkeBbtYYXI+RjP1D9aHrkBu6k1wqYJMiF4pwlU37BkWnk/M8 A4UxFUwIJyMbnn9r9XB6gcR18YPVgvV1jPPzhChUXCA6XsuHUOQMz1Ei3Fsb w0DUBH6dlgjvYHpAcKGurBjPh92ZKLAHq9B9As+fgw91e31YtjQta12IIj6/ Yh1QwyN4Us/p9pa/i4KcjEuV5lf8WyqJhhUNJ7JaHXB5py0aUggn2fQfKlYk EHs+KZgs5D7Vw7EaqshsooDE35RI1O9smIyeJ88LGx3bEBEfqLHIy9EYeQTK q2k2o0kpqbVyChcc5WP00Gjg1RgTh65b+PmMavUw4tQ+zhH2Apoq+d5Ot964 lSqr/I64IUZAeHZoDU1S1ZhOzEqWPLcbEmOo6YTSq0gKhRXR6v77+GWUmFWD Dqa7gtKuPiJYXe3BT+Ga1XiX5RlLcUdqLGzR9NY5X7x4Dsssg7xU1R+hZTIF mcMVhTRHf0qShKXVY5JlUxC0xOKAMpPnyr7O7TqdR4/sU/xkdp0lt7lSTLIF hTnzDLi0zrh3GDmmqhTcpeUxlLwxcBugbfW/ZEyTC9S4JsIEowlwepVNIRFU Q4SdnYvqTSFY9W/jjRoTZYN0mBBV7SFtPK9fj9gl5ZBzYJjprH1tbCQpVoC0 lRC7ll2Y8XCblOm0kwiTMcDesNqTAkMDK3nax8Cp+lBkJKlIJ0rPPacjxrlm bxgupsMYmdswyw7W/nYo6L9Liu4WVZNK6eUggQhqNoN/lyy5yKZrlgq9TrU5 z1VNDeJwmlbTGb+X8M1Gag01CQI4DySfIlj9jcjxHySzyBoUek7ppFiM0ScJ 4e3v36Dy+AWqIdGaCFBBMckg+o7WNCAGG4cin2iYkFbja9SO6YOlF7DyYWPF I3bEVrfbDT4/fw7/0YPPED57+bJ61oP/arDds4gyIwuDK8ECP+EuDfcBj+FJ z3MWDN5DxbjSjDGe0uvqb5sR69hpDfYpKsvImi/yh9ZgYTCU+xyHZDdCn9SJ jqEGSkPUccm9p0JyMsYvaGqswWypNfqKwrCitPrY1/nOWngSIT1e/mwIXalE Mimi95FnqTUSXryAjcDBnQtKLkK30WSiqXtNoTT2jLzfF8d8xVg0De21zLK+ 9kUsRWekuQ5gwiIQymcN/qRmHU5pqnHU+XBZkIRa+Wn/nuTFFOfWqmwkiFLC 80D+W8XYYGsmQI4mGZcU2r71vXNOIFpQiYzybnAkPkxuWRBPtpje5mQjgR/T ERFpRqXsA9PwKyhcEQlSlcMhnNNhLqgJjXx1ug+KXFAPx2YhQZNWRNbClool F1rycyDfKLlZCU/SH0WkZcEZBE9DZbqtnm0rRRJtX5Jml1TWjKJZCczpFJ1o 2sfkkmot0a7HsWmWafJ6rosBnCbKqN8Vui2UJuPVgtbx2b1qdbsJLhBFF6ph QwKL4Kc1aPMbzlpyoCyodr44g+GKqxsmJMuoKQgLPWqeJn6XmOyooDNpXRBd DVlGOQ6u/p9HQ00gdnr8doBQhONAlvqQhyUGvziapn3I0VCumKSwu71/MviK eKoQtJCtOaFGJ0FJqq1Gb74G21wnhgjxUmmDqSgwhFWLJlmO2tdlPs7C1717 DGWscMMSlBVmXXnQ3mnlksIoV5YRTVff0Is4oG0sNgBcx2v3UI8MXtR6G18t 1cp5mF8BJi72TLWIGU/yifbV1aSo8NkNKd/C+QeIabI0IDB13qYgUlsvbhdO r7OOanbHcq1hsppAhZJ9mOYlHikKwVc2tuo6i+VjiMT6QjEEZPVhWZwv2ymh W5oVF0ZpeZlpij3znmdnkVpVY/jfw6AGZ7gAB9XTQDSRWHd0F4MmAr+iUEqL XM3Kc8XLEyuKE6wuItZnqPFPQlRA09IS0wO1DFDlp1r58Vab8dHSd0CI3RFV yS0rP/v5VcXeUzhHCM+HwLGQhQdGEgSUUa4UKneNCXhxNjjaRYdKeerSsnxo j+Trcq+KUH0getfzqaIu4jHopAQlEx0REvtW18c75JKwDI9OVyS5yXXMIeh0 x0BQwNkaHDkG+o4DvRIL5w2dQeOp2Qp5jjWD1PGHaQLkSVIKQdP7rInbbMkd Zljbsre4P2++JorENx4Ny11fh1e5GoMco/2gA+c5f4wx51JzkgUiq7nGsDGd x3KSN3AMGdZz4XGyZ2zFUILmrkmNcC0ETUFhcLTbtwIHAkme4oGnLCEa/mWZ jD0goI4hHpjVPRpYU7Nn2DB4nTmMMRTT1jmk1CXCXsnw+ZLfpKuF2YOVD3yl bbdHj1qu6+sNj36H0xwvVya5oiESdN/ahd2C3yMw2C15m+Hrw9HWo3LQQ+5e /Y0vlUosJwZgcU6SC6zDGO9UlMpasA41SfrfpVT+XkmjJ9cilUCKQuSFYETR bPo9rpqsqLruitMe+qd5tjTHXALFM+UWXdmqOOuDLM8VisWqIvzgdc7pmt/V qNrjx22qFm0bvTWO/cSYNqeXKH8KG0t1tcCwaLbpB4713nVxQNSfY6aozku/ +Q1EpIMkvSQ8MbmNRmWuDFDby6DqX8l0c0FBJCbHJuK88uRp3fSDKlJMf9lM ysSrt8EsVHpTdGsJxpzjum9FjuQcuoi61rbARyzQ6xMsaSJSZ3jFQA1Kl4W+ ZAiEYcs1YZGmW3qv4H1YT9ddPDRqO/j82fQlQDd4Lox9WOisxswOUQuHQDQi jCb/s5QKmcHTLgtrMJ3IhZBLiuEmuhI8XRsBuMCkD2mON4/awuxlgqA2ljHr eFD0Zu8EsvTCBSCepgCQDCL1PN3W3dz/fWFCeNjZFfQhzGSYY4yO8qHvsARs DzQ1PGNMfqQvhQRhYjxLVvuuzcSkNsR0sFpyfZkWRqEYrSpsOINL7Ff7WtjA XlNi7dubrk39u6aOv7N9MoCTweHJ3uneHwPTf0pGBBvQfE1uhh/ZvIwwsau+ tKhvCrwTNBxgbydmVnnC9K3HFVNje5ngYtO2+NUGw/WY7xKOzihKt71tsfCf dddOa2fSjjmFOrmObjJLrlhWB3QmSQ3LwG4DXYBxHxrFtKgufMMEXUN09DTL w77oUy9Q/rwZ9T1Gl46PHtVDo3jxdVDldVXt2YD23o19B6v8t7V21+5hLwea tjpgqJhaJ0/eHbw62seMSRY0YUNsGjWTqW7IJGiVX22p+kIRjWUO3JTYKy7L osiYvUnQK5lLb9+tYpZpvzD0OONvzqSn2PaPaxNtt8eQ9XDEd7HG2ZMMr980 63rITFyglXbL3SrpT8ZVt9j3TI9v06Ibe22FPs8s3eL0rN67IXEmh636rmKv 4+r4lA1uRrX0OW3S4QXdIi7b5sestvLa6TigmcNujCIRwzryiAtWmCVVDFu9 9W0K6AGBnOelaqKG0b3vAhy3rSlZB3Uk7EmZO2vT9o/d5YzD6Kz84y6e2xcP XIVZ73BvRWFjZu2x9Y6L8Uyp5S1Wq63zwnaTsAxeYBe3lO3TN7f8dMYxNJlg FoMhdzzB2Kwp0Ry7opUVMF5cO6gjWeY0alfnLvqQpElk+njNK8vkQsfxfNqI 4zHy1ZPj3MJ1urV9caBjviuwVr3DPsqRrpZueGzxbEapQI0RTllMsO5H36rg EwRFma7wDtkIi9wofnM9patOiBv6LgFb3vO1EJ4C6l7Aynp0oV8fUAvpMwts 6hVWV3qwrntDlCip68Lwh4qK5fDAxjFPNETYZ4sE1uncKDNA5UDrrAuWgUaZ zf1WbZLt+BjGbFSnU6srbScUrLZQYDfTvonEL6bdbzeH+pr8Bv3rM/Rv9vyG dpelG7ah190ellzwS2hcMV4a4+ajtbW1elq9e3tOF2xei9v9/UWnwjSTFJyC tZINtQ6tr2MRALD6MzV94nHUzF3qijUoS1uQodeqpvtZ+EoPfvqpYReBL7u1 plqOQrdnBRhEybeTkJ2OpulNHzMFbe7ShAnWyIKmnVbr/rBcm3dkfIajGw0r 5Ny3qi+Hymp8HON1h1c1kWSuhbFdX52+zBemvUz6lSpTvw5H2smxoldczpBv F7HkOjnVHNUlofdNkMc7c+x0sn7HN1PasoiZbz1A2OlRLznL/8np8d7hr563 vfD4nNwi8TQ4/DCHw1UYyIQUNNXlF2/NCxXWzPUirgvaJg5wYNJUKHeUEAPh AvWgmkSQussvoV4/bgPHEQXPw1oarDTguKZij1+SjKV33tiLFc9c0lo80vZH MAHVmqzahXK8G/ZVmocPAHTUvGqj2iShhW2SIcmFzLA7Pw3kTaQul9cK0Gkc Qc2w+hp/BFHZUa3YEz8l5x6657g9fvdtuNtm315FLdrr/O57nbu9XqFcdTC3 YDNx982E22yHCMHw60M2KA+29H+jO6tt2N99ROD6+TPeirRQpGOpQ3Ol0jTn WsHtgLti7w3g9+jRR8d6wzttBcg0Exe/fAH19z8ip1kTbYESG+uAXieUptJn C+f622y3o95hsvviqomaiKSIPNR8JW0Rmx9dJF+no+urYNJc23AtnsH77cd/ k8f/nH18ZP+38fiXs4+rzkL1+XZVXhYFFRFS9VAgK9smuMBdAOaMe16N+3ul 5+r51biVszat6JifBpFWQz65bpq7HmpLbHCzf17oPoxsahNqYUobQQzwKLWN tpDs+YuVX1Z6Xkydzi3kvkDikZb+ryzi1ibR4qrsad7GKBZ5rVupexOjPs1x tY16TkS6i2EjuTapqRuMbagffzslMN7gqycLyW8Ju5rN+I3LvptydR1mum9w YOE3Cq6j6qsZH5fUWkqRTfpcJjhTCet0GqGg1oOlRm+HpsR+tb8/k+oL/bsP TMKPd5Z4E4W/SER35iZJRVBFAfa2WqxiMmUjplpzj+i68BR750zvvL0oCgKW sP/XXgUr3cuktXXhWd5oTreLy+tqxMxvfbD9dPb3QgRw1qYFscY/1tCzFaeM X1uqCNsl516l2thBtxf+oAVqnvglcKjLyzTAKjbBby5gQH2bokhssXewmRhs Dt8evBocz0bJUTVqEvRbYiurlxP2UIJWPH3twHPV17GwXwSrco3bY8vfQoUN uLw1BteFjhqFX9OE4ZfSTXfOQiBeXIm5uwHcMjeNzzZQ69UX8GRj/utHc9W+ DmNr7+BlhdVa7loXM+wrqQ9YMmxHMVCVK0iNLNvKQm0O4x7Us1O7nJqXGC5e 7R1uH7/7Zmih+5UVnDP8rtxSIKoYNy8oLYKu2DpQimOdIPPAYOjz58beL4MB T1biQGaBtGdLU15p/x/x/g8g3kzFZYEqRCO8LnwbUHyltfnbYeKsUX2+EYxa Jjx/jl3p3xtl7wMV76aii7D0q1HRcFKfufl1WkiwpGqp/lVmOq1e+uC/nu5b 6Dbsg7bTt6m13iyKdTEsDbGx5cp3zfSsWeDAHKF5hx5z/6WjL4P/B1BLAwQU AAAACABbvAMpjoGUywUCAABvBAAABQAAAExFWC5IrVJdj5pAFH2GhP9wk764 m201brbZxPQBES2pwgawXZ+IhQtOijNkAKtp+t97+Ri76utOguSce8/h3DsO 79/pGDq0D8w2runbFnyE2Ylv9ywGibHYFyxHCcVWlvTai6TOEQY5HlHetTJL FCfJsl0F49Fo1KtJCZkUdUHYzHNoG0oyJJMDJq2w/QkQIWcx8hKBcZBCVCBS 2Mp4xw74SYV7pzM0dEP/wFKeYArR0n6NvkZEEGIc/xOGPhxCeCqQCuUDIK/3 9NryBLrOsmlpWEP/Y+haI/PNmfMaTb3FOni4pBza6uaSm9mWszKXhv53cusU hL7jLr6Mnz4rkbteTW1foWCzmnpLhayXtePOPQW9F9s33dk5w3xpLs7Accl7 bYWO5wZvvG3fsRT8Zm/OpXVg+5TG9EMVtF9UW7W9uaZpo2PaH41WZtOG6PJS lmO/xKCSdVzVdO/DmjPB282VLQml3/8bfgiZdPPTLOEz3Bf1s6qRAePZpK89 jqF+HKtaKH4hn6hwyvX7Nq/x2q630ZrTxSIIh6YVBiyFsiOEhPK0/ynyu4sP OrzCDOWkV/dQfZiYec3jSo2Hxwolh4NgCSzx6HBWDRpwN7mpBbu6SsRvfl3v glODVyAf9GNc1SkaNZyVbQ6v2qGErultlovdQBaVpLxxK7OIZg2JXCLPql13 5cgTlhr6P1BLAQIUABQAAAAIAKC8Ayk5p7L7IQMAAPAIAAAGAAAAAAAAAAEA IAAAAAAAAABFTUlULkNQSwECFAAUAAAACACDvQMpGgFy4yEUAAC4TwAABQAA AAAAAAABACAAAABFAwAATEVYLkNQSwECFAAUAAAACABbvAMpjoGUywUCAABv BAAABQAAAAAAAAABACAAAACJFwAATEVYLkhQSwUGAAAAAAMAAwCaAAAAsRkA AAAA --0-1623009888-965347249=:36033-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 3 23:49:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA64442 for dynarec-outgoing; Thu, 3 Aug 2000 23:47:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008040656.IAA25700@pons.ac.upc.es> Subject: Re: DYNAREC: Lexical analyzer In-Reply-To: "from Neil Bradley at Aug 4, 2000 00:00:49 am" To: dynarec@dynarec.com Date: Fri, 4 Aug 2000 08:56:57 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > 6K of ZIP attachment - shouldn't be to horrible for everyone. This is the > lexer I promised a couple of weeks back. Some notes: > > * Emit.c is a test program that takes just a filename and will tokenize > the input file > * Tabs are every 4 columns > * Radix is set to decimal or binary and decodes as such > * Should be 100% bug free > > Have a look at it! I didn't include the other dependencies, like memory > management and the other support junk. Please have a look and do find > some holes in it! > I have just arrived to the work. I will take a fast look up. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 00:23:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA64481 for dynarec-outgoing; Fri, 4 Aug 2000 00:21:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <398A70F2.4716DBB4@dial.oleane.com> Date: Fri, 04 Aug 2000 09:29:54 +0200 From: Gwenole Beauchesne Organization: IRISA, Campus de Beaulieu, 35042 Rennes Cedex, FRANCE X-Mailer: Mozilla 4.73 [en] (X11; I; SunOS 5.7 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Lexical analyzer References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > Have a look at it! I didn't include the other dependencies, like memory > management and the other support junk. Please have a look and do find > some holes in it! I didn't have a thorough look at it but checking for a whitespace woul be better done through the isspace() function declared in . --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 00:26:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA64498 for dynarec-outgoing; Fri, 4 Aug 2000 00:25:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 Aug 2000 00:43:04 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Lexical analyzer In-Reply-To: <398A70F2.4716DBB4@dial.oleane.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Have a look at it! I didn't include the other dependencies, like memory > > management and the other support junk. Please have a look and do find > > some holes in it! > I didn't have a thorough look at it but checking for a whitespace woul > be better done through the isspace() function declared in . Not if I want to (in the future) track things in columnar positions easily. ;-) That was intentional! Besides, isspace() isn't always available on other ported platforms (believe it or not). -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 00:47:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA64524 for dynarec-outgoing; Fri, 4 Aug 2000 00:45:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <398A768B.6D87E9AC@dial.oleane.com> Date: Fri, 04 Aug 2000 09:53:47 +0200 From: Gwenole Beauchesne Organization: IRISA, Campus de Beaulieu, 35042 Rennes Cedex, FRANCE X-Mailer: Mozilla 4.73 [en] (X11; I; SunOS 5.7 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Lexical analyzer References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > Not if I want to (in the future) track things in columnar positions > easily. ;-) That was intentional! Besides, isspace() isn't always > available on other ported platforms (believe it or not). It should since this is a standard function. Otherwise, bad compiler, change the compiler. BTW, is there a reason why you did not include vertical tabs (\v) or form feeds (\f) then ? OK, in practise, this doesn't occur but who knows... ;-) There might also be other locale-specific defined characters. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 00:53:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA64537 for dynarec-outgoing; Fri, 4 Aug 2000 00:52:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 Aug 2000 01:09:32 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Lexical analyzer In-Reply-To: <398A768B.6D87E9AC@dial.oleane.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Not if I want to (in the future) track things in columnar positions > > easily. ;-) That was intentional! Besides, isspace() isn't always > > available on other ported platforms (believe it or not). > It should since this is a standard function. Otherwise, bad compiler, > change the compiler. BTW, is there a reason why you did not include > vertical tabs (\v) or form feeds (\f) then ? OK, in practise, this > doesn't occur but who knows... ;-) There might also be other > locale-specific defined characters. You've just hinted on another reason - I want things predictable. If I wrote the code, it'll operate the same on any platform! Besides, it's not like we're wasting tons of space. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 02:17:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA64775 for dynarec-outgoing; Fri, 4 Aug 2000 02:16:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Relax From: "M.I.K.e" Message-ID: <00036e025c42e049_mailit@mail.dynarec.com> References: Date: Fri, 04 Aug 2000 11:29:07 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [Keats] >Wasn't that Stuart Cottle & Ian Barinson's old band? I knew that Alan >Parsons inherited them... ;-) You're mixing things up a bit... Ian Barinson and David Paton were members of Pilot, which was produced by Alan Parsons. Stuart Elliott played for Steve Harley, who was produced by Alan Parsons as well. After the worked for the Project for some time Alan must have though that they deserve an own album, so he named them Keats (not after the poet but his favourite restaurant). Keats consisted of these three, the singer Colin Blunstone (ex-Zombie), and Peter Bardens (from Camel). The album is from 1984, so it probably sits between Vulture Culture and Stereotomy. >-->Neil -- M.I.K.e "Man invented language to satisfy his deep need to complain." -- Lily Tomlin --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 03:12:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA64831 for dynarec-outgoing; Fri, 4 Aug 2000 03:11:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00c601bffe05$82d2ae00$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036de02525596d_mailit@mail.dynarec.com> <001301bffca4$b0095160$69c3523e@hal9000> <00036de430dd5f39_mailit@mail.dynarec.com> <007801bffd42$18c696c0$0100a8c0@lion> <000001bffd6d$91922580$2ec3523e@hal9000> Subject: Re: DYNAREC: Silence Date: Fri, 4 Aug 2000 11:59:45 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I hope you feel better. I'm getting there, I'm getting there... :) > > EHLO? That sounds like a bug. The command should be "HELO" and is the > first > > command you'd normally send to the mail server. I've never heard of EHLO > > before - and I wrote mail software! > > You are wrong. Perhaps HELO is the standard command but there is also > EHLO that means an extended HELO. This means it is using the SMTP > extensions. Cool. Don't remember this one. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 03:12:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA64859 for dynarec-outgoing; Fri, 4 Aug 2000 03:11:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00c701bffe05$86431ca0$0100a8c0@lion> From: "Neil Griffiths" To: References: <200008030749.JAA19476@pons.ac.upc.es> <00036df5dca19bd6_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Silence Date: Fri, 4 Aug 2000 12:01:28 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Work? Could you define that word? Sure, that's the thing I'm not doing today (I'm ill) but wouldn't be doing anyway - it's a Friday. ;) > When I was at work today I installed more software onto the new computer I > got on Tuesday. New computers are good, m'kay? > Hey, that P3/750 surely is much faster than the K6-2/366 I had before ;-) > But what I don't understand what I need a TNT2 for, I mean I don't have > anything to do with 3D! Now, let's see... P3/750. TNT2. Hmm. Hmm... Now, what could I possibly do with that... ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 03:12:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA64860 for dynarec-outgoing; Fri, 4 Aug 2000 03:11:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00c801bffe05$8735ba00$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036de02525596d_mailit@mail.dynarec.com> <001301bffca4$b0095160$69c3523e@hal9000> <00036de430dd5f39_mailit@mail.dynarec.com> <007801bffd42$18c696c0$0100a8c0@lion> <00036df5bf6044f2_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Silence Date: Fri, 4 Aug 2000 12:03:28 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I hope you feel better now! I'm feeling better, just not 100%. If I could just stop coughing then I'd be much better off... > The German wheather is a real bitch at the moment. I'm expecting a slight > cold be tomorrow :-( Not sure if it's the weather that's affecting me or not... :-/ > >EHLO? That sounds like a bug. The command should be "HELO" and is the first > >command you'd normally send to the mail server. I've never heard of EHLO > >before - and I wrote mail software! > > It's just like Victor added. EHLO is the successor of HELO and it seems to > work just fine with the dynarec.com SMTP (thanks FreeBSD!). > It seems that We.de now works as well, and since also my university account > worked I guess it was a problem of Web.de and not of the mailer... Oh well, at least that's something. It's always good to blame the ISP. :) > The trouble with being punctual is that nobody's there to appreciate > it. > -- Franklin P. Jones I like this quote a lot. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 03:12:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA64865 for dynarec-outgoing; Fri, 4 Aug 2000 03:11:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00c901bffe05$8806c5a0$0100a8c0@lion> From: "Neil Griffiths" To: References: <200008030749.JAA19476@pons.ac.upc.es> <00036df5dca19bd6_mailit@mail.dynarec.com> <001d01bffd7c$87dddf20$2ec3523e@hal9000> Subject: Re: DYNAREC: Silence Date: Fri, 4 Aug 2000 12:05:34 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > "Jumping into the core of a nuclear power station is bad for your health!" > > "Can I try?" > > > You can try. ;) But I don't know if you could go out of it. ;)) It's a strange thing to say. I mean - how do they know it's bad for your health? Admittedly, no-one has ever come out alive to give their opinion but... ;) > I'm just looking it so I can't help you. Why it needs to create a such big > table? Linux. That's my answer. Linux. Linux users can *never* do anything in a straight-forward way. ;) > I have an old X-Terminal with a 19" monochrome monitor in my work. :( If it makes you feel any better, I've got a nice 19" monitor right here at home. But I'm betting it doesn't make you feel better. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 03:12:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA64868 for dynarec-outgoing; Fri, 4 Aug 2000 03:11:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ca01bffe05$88d03020$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Haha! Date: Fri, 4 Aug 2000 12:11:05 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > That's cruel. Though from personal experience, a 700MHZ PIII and a 700MHZ > K7, the PIII is ahead by 5-10% in every emulated video game I've run. Both > machines running 133MHZ memory, too. And benchmarks are a frigging joke > (as we've discussed). Yep. > I really get tired of the pro-AMD crowd. Once I see my code running faster > on an AMD CPU on an equivalently clocked system, I'll concede it's a > faster chip, but anything else, such as driver version #s or hand > optimized assembly specifically for the K7, is nothing more than a smoke > and mirrors act. I'm definitely not pro-AMD - but neither am I pro-Intel. I'm more pro-price/performance. AMD CPUs are much cheaper in the UK than the equivalent P3. But I'm thinking that I may well go for a flip-chip P3 option now and just order across the 'net. You guys in the US have it better than we do... :( We'll see how the money situation is when I get all my stuff home, but I'm looking at either a 750 or 800MHz P3 now. That's a healthy speed boost and should keep me going for quite a while longer. And it also means I have a second machine which, if the price is right, I'll put an ADSL card in and leave connected to the 'net and use as a server. We'll see how the prices are when I get home... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 03:12:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA64871 for dynarec-outgoing; Fri, 4 Aug 2000 03:11:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00cb01bffe05$89999aa0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Lexical analyzer Date: Fri, 4 Aug 2000 12:12:07 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Have a look at it! I didn't include the other dependencies, like memory > management and the other support junk. Please have a look and do find > some holes in it! If they exist then I'm sure I'll find them. It's just that I won't be looking for them when (and if!) I do. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 03:19:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA64891 for dynarec-outgoing; Fri, 4 Aug 2000 03:18:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008041027.MAA11057@pons.ac.upc.es> Subject: Re: DYNAREC: Silence In-Reply-To: <00c901bffe05$8806c5a0$0100a8c0@lion> "from Neil Griffiths at Aug 4, 2000 12:05:34 pm" To: dynarec@dynarec.com Date: Fri, 4 Aug 2000 12:27:39 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > "Jumping into the core of a nuclear power station is bad for your > health!" > > > "Can I try?" > > > > > You can try. ;) But I don't know if you could go out of it. ;)) > > It's a strange thing to say. I mean - how do they know it's bad for your > health? Admittedly, no-one has ever come out alive to give their opinion > but... ;) > Perhaps you can do the test and tell us if it is or not bad? ;) And I'm sure it is hot in so it could be good for your cold ... > > I'm just looking it so I can't help you. Why it needs to create a such > big > > table? > > Linux. That's my answer. Linux. Linux users can *never* do anything in a > straight-forward way. ;) > You are also against Linux users. Don't you think you are making too much enemies? ;) > > I have an old X-Terminal with a 19" monochrome monitor in my work. :( > > If it makes you feel any better, I've got a nice 19" monitor right here at > home. But I'm betting it doesn't make you feel better. ;) > You are being cruel ... ;) > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 04:34:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA64963 for dynarec-outgoing; Fri, 4 Aug 2000 04:33:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Silence From: "M.I.K.e" Message-ID: <00036e03d3b6d385_mailit@mail.dynarec.com> References: <200008030749.JAA19476@pons.ac.upc.es> <00036df5dca19bd6_mailit@mail.dynarec.com> <00c701bffe05$86431ca0$0100a8c0@lion> Date: Fri, 04 Aug 2000 13:14:06 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Sure, that's the thing I'm not doing today (I'm ill) but wouldn't be doing >anyway - it's a Friday. ;) You don'r work on Friday? >New computers are good, m'kay? Yeah, quite nice. If it only wasn't for installing all the software again... >Now, let's see... P3/750. TNT2. Hmm. Hmm... Now, what could I possibly do >with that... ;)) Maybe I should note that there is no sound! So forget playing UT on it... >Neil. -- M.I.K.e If this is timesharing, give me my share right now. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 10:45:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA65246 for dynarec-outgoing; Fri, 4 Aug 2000 10:45:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 Aug 2000 11:02:40 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Haha! In-Reply-To: <00ca01bffe05$88d03020$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > optimized assembly specifically for the K7, is nothing more than a smoke > > and mirrors act. > I'm definitely not pro-AMD - but neither am I pro-Intel. Neither am I, actually. If AMD offered a better product for me, I'd buy it. But this blind "the underdog is better because we say it is and we have tweaked benchmarks to 'prove' it" is nothing more than a bunch of garbage. > pro-price/performance. AMD CPUs are much cheaper in the UK than the > equivalent P3. But I'm thinking that I may well go for a flip-chip P3 option > now and just order across the 'net. You guys in the US have it better than > we do... :( I'm not concerned at all about price, which might explian a few things. Can't you just mail order stuff from the US and get it cheaper that way? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 12:44:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA65351 for dynarec-outgoing; Fri, 4 Aug 2000 12:44:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003601bffe55$a95bbc60$0100a8c0@lion> From: "Neil Griffiths" To: References: <200008041027.MAA11057@pons.ac.upc.es> Subject: Re: DYNAREC: Silence Date: Fri, 4 Aug 2000 21:45:52 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MIMEOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Perhaps you can do the test and tell us if it is or not bad? ;) And > I'm sure it is hot in so it could be good for your cold ... Ah, but I'm not used to such high temperatures so I may have problems. What we really need for such a test would be someone from Africa - or somewhere close. Like Spain. ;) Also, it's not a cold that I have. I've no idea what it actually *is* - but it isn't a cold. It's kind of a "I can't actually speak or breathe because my throat hurts" kind of thing. :-/ Heh, my parents rang me tonight. I told them I was ill. They said "Why didn't you tell us?". I told them "I could barely tell the chemist, never mind you!". :) > > Linux. That's my answer. Linux. Linux users can *never* do anything in a > > straight-forward way. ;) > > > You are also against Linux users. Don't you think you are > making too much enemies? ;) I have nothing against Linux users - if they use Linux for the right reasons (it's the best tool for the job) and not just because they're following the crowd of anti-MS people. Linux is not an OS for ordinary users. If it was then things would be much more straight forward to solve. Until they sort that out then I'm going to continue to make fun. Especially because the tools that they create generally make things either worse or much more complicated than they need to be. Windows isn't the perfect OS - but it does what I want it to do. I may install either Linux or FreeBSD on my second machine in a couple of months - because it will be my server and I believe this is probably the best tool for the job. Until (if!) Windows 2000 proves itself that is... > > If it makes you feel any better, I've got a nice 19" monitor right here at > > home. But I'm betting it doesn't make you feel better. ;) > > > You are being cruel ... ;) Sorry, but if I'm feeling ill then I have no problems with other people not feeling happy either... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 12:44:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA65358 for dynarec-outgoing; Fri, 4 Aug 2000 12:44:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003701bffe55$aa346920$0100a8c0@lion> From: "Neil Griffiths" To: References: <200008030749.JAA19476@pons.ac.upc.es> <00036df5dca19bd6_mailit@mail.dynarec.com> <00c701bffe05$86431ca0$0100a8c0@lion> <00036e03d3b6d385_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Silence Date: Fri, 4 Aug 2000 21:48:01 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MIMEOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > You don'r work on Friday? Oh, I go to work. So I'm there in body. I won't say anything about where my mind is though... ;)) > >New computers are good, m'kay? > > Yeah, quite nice. If it only wasn't for installing all the software again... But isn't it great to see the overall speed decreasing as you install more and more software? ;)) > >Now, let's see... P3/750. TNT2. Hmm. Hmm... Now, what could I possibly do > >with that... ;)) > > Maybe I should note that there is no sound! So forget playing UT on it... You have to be as good as me to play without sound. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 13:03:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA65388 for dynarec-outgoing; Fri, 4 Aug 2000 13:02:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004f01bffe58$33c3a460$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Haha! Date: Fri, 4 Aug 2000 22:07:40 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MIMEOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Neither am I, actually. If AMD offered a better product for me, I'd buy > it. But this blind "the underdog is better because we say it is and we > have tweaked benchmarks to 'prove' it" is nothing more than a bunch of > garbage. No, I couldn't see you as being pro-Intel. I could see you being pro-performance (which probably means Intel) but... ;) > I'm not concerned at all about price, which might explian a few > things. Can't you just mail order stuff from the US and get it cheaper > that way? That's my plan now. Should save myself about £80 (or over $140) if I do that. I just don't want to do the same for a motherboard because that'll hit me hard when I pay postage. Not because of weight - more size. AFAIK trans-atlantic packages go on size instead of weight. I'm not 100% sure on that - but it'd make sense... Or, more likely, both size *and* weight! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 14:57:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA65476 for dynarec-outgoing; Fri, 4 Aug 2000 14:57:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Silence From: "M.I.K.e" Message-ID: <00036e0c730ad628_mailit@mail.dynarec.com> References: <200008030749.JAA19476@pons.ac.upc.es> <00036df5dca19bd6_mailit@mail.dynarec.com> <00c701bffe05$86431ca0$0100a8c0@lion> <00036e03d3b6d385_mailit@mail.dynarec.com> <003701bffe55$aa346920$0100a8c0@lion> Date: Fri, 04 Aug 2000 23:31:18 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Oh, I go to work. So I'm there in body. I won't say anything about where my >mind is though... ;)) Ah, I know that feeling, but for me it isn't limited to Friday... >But isn't it great to see the overall speed decreasing as you install more >and more software? ;)) Yeah, very cool. Especially when the bosses think they have to centralize the software so we had to give or Clarion 5 (our RAD tool) away (quite logical since we are the only group in the whole firm who use that thing) and now no- one knows where the CD-ROM is... The only good news is that I could install it by zipping the directory on the old harddrive, expanding it on the new one, and adding the binary path to the PATH variable... >You have to be as good as me to play without sound. ;) Hey, I played such games on my PC card without sound! But did you ever try to play Quake at a max of 10 FPS? >Neil. -- M.I.K.e Hummingbirds never remember the words to songs. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 14:57:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA65485 for dynarec-outgoing; Fri, 4 Aug 2000 14:57:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Silence From: "M.I.K.e" Message-ID: <00036e0ca5f326dd_mailit@mail.dynarec.com> References: <200008041027.MAA11057@pons.ac.upc.es> <003601bffe55$a95bbc60$0100a8c0@lion> Date: Fri, 04 Aug 2000 23:45:32 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Also, it's not a cold that I have. I've no idea what it actually *is* - but >it isn't a cold. It's kind of a "I can't actually speak or breathe because >my throat hurts" kind of thing. :-/ That's bad! >Heh, my parents rang me tonight. I told them I was ill. They said "Why >didn't you tell us?". I told them "I could barely tell the chemist, never >mind you!". :) At least you only lost your voice but not your humor ;-) >I have nothing against Linux users - I'm beginnig to hate them... Not because they use Linux, but I go wild when the turn up in BeOS forums and ask for *free* software. At first they were asking for StarOffice, but since it seems to have made the round that there is no StarOffice for BeOS yet, there were several people now why there isn't at least a stripped down version of Gobe Productive bundled with BeOS! Now explain those stupids that it isn't really possible to strip down a totally integrated, frame based office product... BeOS is the only operating system with preinstalled MP3 decoder and CD burning software, but they seem to want everything, and they want it for * free* of course - this sucks! >Sorry, but if I'm feeling ill then I have no problems with other people not >feeling happy either... ;) Hate others like yourself? ;-) >Neil. -- M.I.K.e "I'm returning this note to you, instead of your paper, because it (your paper) presently occupies the bottom of my bird cage." -- English Professor, Providence College --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 15:52:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA65533 for dynarec-outgoing; Fri, 4 Aug 2000 15:52:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000804160051.007f1ad0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 04 Aug 2000 16:00:51 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000803122045.007f3100@powernet.net> References: <3.0.5.32.20000802184657.007ec100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The 16meg idea sounds pretty cool, I think what I'll do is create an option >in the emitter that would ignore bounds checking assuming 16 megs of space >is provided. The exec region scanning and comparing is a lot of work, I >found out how much that comes into play when I wrote my SH-2 core. I've just implemented my ReadByte facility, but I've got one last quick question to determine the outcome of the rest of the emulator. Is it safe to assume that external C memory handler functions called by my emulator will preserve their own registers? I'm assuming it is... but I don't want any problems with odd crashes later on ;) Currently, my memory handler does not save _ANY_ registers except for those it uses (EBX and ECX), not even when calling an external handler. The idea is that it will only save the registers it modifies so that emulated instruction code will be able to just call the function and be guaranteed that only EAX will be changed when the function returns. If external handlers don't preserve the registers they use, this mechanism will fail. Currently, on my P166, calling the ReadByte function 8 million times takes about 2 seconds. It asks for the same address over and over again and the memory map has been set up so that ReadByte needs to call an external handler. This seems like pretty good performance to me, but I won't know until I actually get further into the core. There are still some things that might need tweaking, but I'll just have to wait and see ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 16:01:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA65552 for dynarec-outgoing; Fri, 4 Aug 2000 16:01:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 Aug 2000 16:19:00 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000804160051.007f1ad0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've just implemented my ReadByte facility, but I've got one last quick > question to determine the outcome of the rest of the emulator. I hope you loaded memory locations in even/odd format so when you do word loads it'll naturally work out. Of course, with byte reads, you'll have to xor the address with 1. > Is it safe to assume that external C memory handler functions called by my > emulator will preserve their own registers? I'm assuming it is... but I > don't want any problems with odd crashes later on ;) No. It won't. Anything that you want to save you had better save. > Currently, my memory handler does not save _ANY_ registers except for those > it uses (EBX and ECX), not even when calling an external handler. The idea > is that it will only save the registers it modifies so that emulated > instruction code will be able to just call the function and be guaranteed > that only EAX will be changed when the function returns. > If external handlers don't preserve the registers they use, this mechanism > will fail. Won't work. ;-( When you call a function, that function assumes free reign on the registers. > Currently, on my P166, calling the ReadByte function 8 million times takes > about 2 seconds. It asks for the same address over and over again and the > memory map has been set up so that ReadByte needs to call an external handler. Hm... Can I take a look at the inner loop? Can you post it to the list? > This seems like pretty good performance to me, but I won't know until I > actually get further into the core. There are still some things that might > need tweaking, but I'll just have to wait and see ;) Seems like it should be a bit faster - maybe by 50% or so. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 16:16:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA65572 for dynarec-outgoing; Fri, 4 Aug 2000 16:16:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000804162421.007f4990@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 04 Aug 2000 16:24:21 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000804160051.007f1ad0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I hope you loaded memory locations in even/odd format so when you do word >loads it'll naturally work out. Of course, with byte reads, you'll have to >xor the address with 1. Yeah, that's what I do. >Hm... Can I take a look at the inner loop? Can you post it to the list? > >> This seems like pretty good performance to me, but I won't know until I >> actually get further into the core. There are still some things that might >> need tweaking, but I'll just have to wait and see ;) > >Seems like it should be a bit faster - maybe by 50% or so. I have tried a few variations. I thought about caching the regions (since most Genesis games make accesses to the same regions over and over again). That was how I got 2 seconds. Without caching, I get 4 seconds. Granted, not a realistic test since I'm using the same address over and over again (which means the cached region is always the one used) but I think it could be an improvement. But here is the code sans the cached region (from the emitter): Align(4); e(".not_in_cache:\n"); /* search for it */ SAVEREG("memhandler", "ebx"); SAVEREG("memhandler", "ecx"); e("mov ebx, [__read_byte]\n"); e(".loop:\n"); e("cmp dword [ebx+" OFFSET_DATA_LIMIT "], 0\n"); e("jz near .done\n"); e("mov ecx, [ebx+" OFFSET_DATA_BASE "]\n"); e("cmp eax, [ebx+" OFFSET_DATA_LIMIT "]\n"); e("ja near .next\n"); e("cmp eax, ecx\n"); e("jb near .next\n"); e("cmp dword [ebx+" OFFSET_DATA_PTR "], 0\n"); e("je .read_from_handler\n"); e("xor al, 1\n"); /* buffer is byteswapped */ e("sub eax, ecx\n"); /* read straight from ptr */ e("add eax, [ebx+" OFFSET_DATA_PTR "]\n"); e("mov al, [eax]\n"); RESTOREREG("memhandler", "ecx"); RESTOREREG("memhandler", "ebx"); e("ret\n"); Align(4); e(".read_from_handler:\n"); /* already saved ebx, ecx, eax contains address */ SAVEREG("memhandler", "edx"); SAVEREG("memhandler", "esi"); SAVEREG("memhandler", "edi"); SAVEREG("memhandler", "ebp"); /* so we can pop and not add to esp */ e("push eax\n"); e("call dword [ebx+" OFFSET_DATA_HANDLER "]\n"); e("pop ebp\n"); RESTOREREG("memhandler", "ebp"); RESTOREREG("memhandler", "edi"); RESTOREREG("memhandler", "esi"); RESTOREREG("memhandler", "ecx"); RESTOREREG("memhandler", "ebx"); RESTOREREG("memhandler", "edx"); e("ret\n"); Align(4); e(".next:\n"); e("add ebx, " SIZEOF_DATAREGION "\n"); e("jmp .loop\n"); Align(4); e(".done:\n"); e("xor al, al\n"); RESTOREREG("memhandler", "ecx"); RESTOREREG("memhandler", "ebx"); e("ret\n"); I hope this is readable :/ The SAVEREG() and RESTOREREG() macros are defined as: #define SAVEREG(area, reg) e("mov [" area "_" reg "], " reg "\n"); #define RESTOREREG(area, reg) e("mov " reg ", " "[" area "_" reg "]\n"); This is kind of an odd thing I realize, but the idea was to avoid the stack (it seems logical that it should be a bit faster) but this could be another one of my useless weird ideas ;) Caching adds a little more compelexity to the routine, it checks the cached region first, and if it isn't found, it procedes to the code you see above, and it then saves to the cache if a match was found in the memory map. Register usage isn't the best, U/V pairing is pretty bad... I notice in your unfinished Make68K the routines are a lot smaller, but they don't seem to save the registers (I guess you designed it in a way which made it unnecessary) unless I missed something (I just glanced over the relevant routines to compare). Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 16:35:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA65595 for dynarec-outgoing; Fri, 4 Aug 2000 16:35:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 Aug 2000 16:52:47 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000804162421.007f4990@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Align(4); > e(".not_in_cache:\n"); /* search for it */ > SAVEREG("memhandler", "ebx"); > SAVEREG("memhandler", "ecx"); > e("mov ebx, [__read_byte]\n"); > e(".loop:\n"); > e("cmp dword [ebx+" OFFSET_DATA_LIMIT "], 0\n"); > e("jz near .done\n"); > e("mov ecx, [ebx+" OFFSET_DATA_BASE "]\n"); > e("cmp eax, [ebx+" OFFSET_DATA_LIMIT "]\n"); > e("ja near .next\n"); > e("cmp eax, ecx\n"); > e("jb near .next\n"); My first thought is that I'd have several variations of this procedure, rather than forcing your address to be in EAX. I'd also have it custom create a target register for loading as well. That's how make68k does it, and it's nice because you avoid pushing/popping things. I also wouldn't put OFFSET_DATA_BASE in ecx. That forces it to be loaded for every region you have, and in most of the cases it's not needed. And when it is needed, the actual function call will eclipse the time it takes to load it in to memory. so I'd just do this: cmp eax, [ebx+OFFSET_DATA_LIMIT] ja near .next cmp eax, [ebx+OFFSET_DATA_BASE] jb near .next mov ecx, [ebx+OFFSET_DATA_LIMIT] .... It's better to have that single mov ecx, than to stick it in the loop itself. Just out of curisority, why not use EDI for your general purpose scan isntead of having to save ECX and EBX? It's actually better for you to just reference the memory locations in the structures directly rather than the pain you incur for having to save your registers off on the stack. The biggest amount of time you'll spend in this routine will *NOT* be in the actual loop itself, rather the overhead of pushing/popping registers to a handler call. What I'm really curious about is what you're using ESI, EDI, and EBP for. I think further register optimization can be used. Just don't go down the path trying to optimize that inner loop. I've been there dozens of times, and the amount of time spent actually doing the C call and procedure call eclipses the amoun of time circling through the loop > This is kind of an odd thing I realize, but the idea was to avoid the stack > (it seems logical that it should be a bit faster) but this could be another > one of my useless weird ideas ;) Correct - but it wasn't your idea. ;-) Notice that I do this in all my CPU cores. That's because the odds of a direct address being in cache is much higher than that of a stack object being in cache. > Register usage isn't the best, U/V pairing is pretty bad... I notice in > your unfinished Make68K the routines are a lot smaller, but they don't seem > to save the registers (I guess you designed it in a way which made it > unnecessary) unless I missed something (I just glanced over the relevant > routines to compare). You did miss something. When a procedure call is made, it winds up calling one location. Can't remember off the top of my head, but it was ReadMemoryByte I *THINK*. It does save the data off. You really should pour over my Make68K. It has a lot of intellectual information that you could save yourself some massive trouble on. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 22:28:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA65845 for dynarec-outgoing; Fri, 4 Aug 2000 22:27:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000804223515.007f1ad0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 04 Aug 2000 22:35:15 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000804162421.007f4990@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 04:52 PM 8/4/2000 +0000, you wrote: >> Align(4); >> e(".not_in_cache:\n"); /* search for it */ >> SAVEREG("memhandler", "ebx"); >> SAVEREG("memhandler", "ecx"); >> e("mov ebx, [__read_byte]\n"); >> e(".loop:\n"); >> e("cmp dword [ebx+" OFFSET_DATA_LIMIT "], 0\n"); >> e("jz near .done\n"); >> e("mov ecx, [ebx+" OFFSET_DATA_BASE "]\n"); >> e("cmp eax, [ebx+" OFFSET_DATA_LIMIT "]\n"); >> e("ja near .next\n"); >> e("cmp eax, ecx\n"); >> e("jb near .next\n"); > > cmp eax, [ebx+OFFSET_DATA_LIMIT] > ja near .next > cmp eax, [ebx+OFFSET_DATA_BASE] > jb near .next > > mov ecx, [ebx+OFFSET_DATA_LIMIT] > .... > >The biggest amount of time you'll spend in this routine will *NOT* be in >the actual loop itself, rather the overhead of pushing/popping registers >to a handler call. What I'm really curious about is what you're using ESI, >EDI, and EBP for. I think further register optimization can be used. Just >don't go down the path trying to optimize that inner loop. I've been there >dozens of times, and the amount of time spent actually doing the C call >and procedure call eclipses the amoun of time circling through the loop ESI would be used for A0. Although, perhaps storing A0-1,D0-D1 in the X86 regs isn't really necessary? I see neither Make68K nor Starscream do it... I could put the other registers to wiser use. ESI could be used for fetching (a normalized PC), EBP to hold the base of the current region. EDI would be free, so I suppose I can use it then for general purpose addressing. But of course, I must still make sure everything except for EDI and EAX is preserved when making a function call. >Correct - but it wasn't your idea. ;-) Notice that I do this in all my CPU >cores. That's because the odds of a direct address being in cache is much >higher than that of a stack object being in cache. Speaking of cache, do you think I should go ahead and try using my region caching idea? I figure repetetive accesses could be cut down a lot, since there is no loop involved. A "cache miss" would be determined in one or 2 comparisons at the beginning of the ReadByte handler so it seems to me that if code makes lots of repetetive accesses to certain regions over and over again, performance would be greatly improved. Case in point: As I mentioned last time, w/out region caching calling ReadByte(0x9) 8 million times took a whopping 4-5 seconds. With caching, it went down to 2. Granted, real world scenarios won't be as nice, but I think they might help a lot. There is some overhead -- each time the cache does not contain an entry, once the entry is found in the loop, the cache must be reloaded (4 dwords). >You did miss something. When a procedure call is made, it winds up calling >one location. Can't remember off the top of my head, but it was >ReadMemoryByte I *THINK*. It does save the data off. ReadMemoryByte calls ReadMemoryHandler or something, that is the procedure that saves it all, I just saw it :) But why did you opt for push/pop and calling a separate function instead of just inlining that part? >You really should pour over my Make68K. It has a lot of intellectual >information that you could save yourself some massive trouble on. Yeah, I like how Make68K emits very readable code! Lots of useful comments, and I rarely find myself thinking "What the heck is going on here?". I'm also looking at Starscream, after all, it's pretty dang fast ;) Was Starscream influenced on ideas from Make68K or visa versa? I've noticed lots of similarities. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 23:19:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA65890 for dynarec-outgoing; Fri, 4 Aug 2000 23:18:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000d01bffea6$7406eb60$5dca523e@hal9000> From: "Victor Moya del Barrio" To: References: <200008030749.JAA19476@pons.ac.upc.es> <00036df5dca19bd6_mailit@mail.dynarec.com> <00c701bffe05$86431ca0$0100a8c0@lion> <00036e03d3b6d385_mailit@mail.dynarec.com> <003701bffe55$aa346920$0100a8c0@lion> <00036e0c730ad628_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Silence Date: Sat, 5 Aug 2000 08:29:03 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >You have to be as good as me to play without sound. ;) > > Hey, I played such games on my PC card without sound! But did you ever try to > play Quake at a max of 10 FPS? > Well I played (or more exactly my brother) Quake in a 486. ;) And he ended it. The sound was really cool, as you were hearing it through a pipe ... > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 23:22:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA65903 for dynarec-outgoing; Fri, 4 Aug 2000 23:21:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 Aug 2000 23:39:33 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000804223515.007f1ad0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >to a handler call. What I'm really curious about is what you're using ESI, > >EDI, and EBP for. I think further register optimization can be used. Just > >don't go down the path trying to optimize that inner loop. I've been there > >dozens of times, and the amount of time spent actually doing the C call > >and procedure call eclipses the amoun of time circling through the loop > ESI would be used for A0. Although, perhaps storing A0-1,D0-D1 in the X86 > regs isn't really necessary? I see neither Make68K nor Starscream do it... That's because we haven't done it yet. ;-) It's a theory I've been kicking around for quite some time, and I came to the conclusion after seeing lots of 68K source code is that A0/A1 D0/D1 is used quite often, especially code written in C. Makes sense that it just counts up from D0/A0 as it's internally allocating them. > I could put the other registers to wiser use. ESI could be used for > fetching (a normalized PC), EBP to hold the base of the current region. EDI > would be free, so I suppose I can use it then for general purpose addressing. Precisely. But you'll also have to have some way to count down the # of remaining clock cycles to execute. It's faster when it's in a register. I've done it both ways with mz80, and the register approach was over 10% faster. > But of course, I must still make sure everything except for EDI and EAX is > preserved when making a function call. Right. I'd just save the registers to the context, make the call, then load them back up. > Speaking of cache, do you think I should go ahead and try using my region > caching idea? I figure repetetive accesses could be cut down a lot, since > there is no loop involved. A "cache miss" would be determined in one or 2 > comparisons at the beginning of the ReadByte handler so it seems to me that > if code makes lots of repetetive accesses to certain regions over and over > again, performance would be greatly improved. I don't know about greatly. You'll have to map it out. Think about it though. Let's say it goes 3 extra trips through the loop and you're doing more than 100,000 moves a second (which is unrealistic), that's 600,000 Pentium clocks worst case. It's about .6% at 100MHZ. > they might help a lot. There is some overhead -- each time the cache does > not contain an entry, once the entry is found in the loop, the cache must > be reloaded (4 dwords). Unless your list was huge, it won't help much. Check out the above. Also, you haven't tried your caching approach with just using the indirect compare and leaving one of the registers out of it. > >You did miss something. When a procedure call is made, it winds up calling > >one location. Can't remember off the top of my head, but it was > >ReadMemoryByte I *THINK*. It does save the data off. > ReadMemoryByte calls ReadMemoryHandler or something, that is the procedure > that saves it all, I just saw it :) Bingo. > But why did you opt for push/pop and > calling a separate function instead of just inlining that part? Because the read/write memory handlers made the code so sparse (increased by 250K in object form) and it absolutely *KILLED* performance. Running out of cache! > >You really should pour over my Make68K. It has a lot of intellectual > >information that you could save yourself some massive trouble on. > Yeah, I like how Make68K emits very readable code! Lots of useful comments, > and I rarely find myself thinking "What the heck is going on here?". I'm > also looking at Starscream, after all, it's pretty dang fast ;) Was > Starscream influenced on ideas from Make68K or visa versa? I've noticed > lots of similarities. The idea I got from Starscream was the emitter. When I came across Starscream, it was using 4K granular indexes, so you had to shift your PC by 12, load out that value, and add the PC to that value. After some convincing, Neill changed it and as he put it "was no perceptible difference" and used a ton less memory. Got that idea from me. ;-) Also, the NULL memory reference address thing came from Mike Cuddy - former Retrocade UI guru. Neill's idea was to swap the even/odd bytes. He had done this before any other publicly available 68K emulator for the PC appeared. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 23:37:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA65923 for dynarec-outgoing; Fri, 4 Aug 2000 23:36:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001d01bffea8$ef7a6540$5dca523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: 68K Emulator Date: Sat, 5 Aug 2000 08:46:29 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Neill's idea was to swap the even/odd bytes. He had done this before any > other publicly available 68K emulator for the PC appeared. > It is strange because it is a logical choice. You always can try to test if it is faster or not than without swap. The first time I thought about a 68K emulator I was thinking about it. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 23:40:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA65933 for dynarec-outgoing; Fri, 4 Aug 2000 23:39:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 Aug 2000 23:56:58 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <001d01bffea8$ef7a6540$5dca523e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Neill's idea was to swap the even/odd bytes. He had done this before any > > other publicly available 68K emulator for the PC appeared. > It is strange because it is a logical choice. You always can try to test > if it is faster or not than without swap. The first time I thought about > a 68K emulator I was thinking about it. He did. It's faster. Dunno by how much exactly, but I'll take Neill at his word. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 23:55:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA65952 for dynarec-outgoing; Fri, 4 Aug 2000 23:54:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000805000251.007f3af0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 05 Aug 2000 00:02:51 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000804223515.007f1ad0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That's because we haven't done it yet. ;-) It's a theory I've been kicking >around for quite some time, and I came to the conclusion after seeing lots >of 68K source code is that A0/A1 D0/D1 is used quite often, especially >code written in C. Makes sense that it just counts up from D0/A0 as it's >internally allocating them. But there are often code sequences that use other registers in great number. I don't know really, it is interesting, but I'll go with the other approach first to see how that works out... >> I could put the other registers to wiser use. ESI could be used for >> fetching (a normalized PC), EBP to hold the base of the current region. EDI >> would be free, so I suppose I can use it then for general purpose addressing. > >Precisely. But you'll also have to have some way to count down the # of >remaining clock cycles to execute. It's faster when it's in a >register. I've done it both ways with mz80, and the register approach was >over 10% faster. I'll find a register to use for that ;) I also noticed Make68K fetches the next instruction from the instruction handlers themselves. This is like "hog mode" in Starscream where the fetch/decode process is inlined if I'm not mistaken... looks pretty neat :) >> Speaking of cache, do you think I should go ahead and try using my region >> caching idea? I figure repetetive accesses could be cut down a lot, since >> there is no loop involved. A "cache miss" would be determined in one or 2 >> comparisons at the beginning of the ReadByte handler so it seems to me that >> if code makes lots of repetetive accesses to certain regions over and over >> again, performance would be greatly improved. > >I don't know about greatly. You'll have to map it out. Think about it >though. Let's say it goes 3 extra trips through the loop and you're doing >more than 100,000 moves a second (which is unrealistic), that's 600,000 >Pentium clocks worst case. It's about .6% at 100MHZ. Hmm, well, I haven't implemented it in my ReadByte rewrite, but I might try it out once I have the emulator running something just to see for myself which way the performance would go... Currently, though, 8 million repetitions of my ReadByte function takes about 2 seconds on a P166. Make68K's seems to be exactly the same. This is based on naked-eye observation. But it is extremely close nonetheless whatever the true results may be, and I'm satisfied w/ my results for now ;) >The idea I got from Starscream was the emitter. When I came across >Starscream, it was using 4K granular indexes, so you had to shift your PC >by 12, load out that value, and add the PC to that value. After some >convincing, Neill changed it and as he put it "was no perceptible >difference" and used a ton less memory. Got that idea from me. ;-) Also, >the NULL memory reference address thing came from Mike Cuddy - former >Retrocade UI guru. > >Neill's idea was to swap the even/odd bytes. He had done this before any >other publicly available 68K emulator for the PC appeared. One thing I'm wondering about, is how you handle bytes in Make68K. I notice you immediately xor with 1... but shouldn't that only be done when fetching from the pointer? Because if I were to use handlers with Make68K and was trapping the 0xA00000-0xBFFFFF range, I'd get 0xA00001 for 0xA00000... I store my address in EAX on entry, and I do: xor al, 1 as opposed to xor eax, 1 or whatever. I think xor al, 1 is a little faster, isn't it? I wonder how Genecyst's 68K emulator gets the speed it does. I'm pretty sure I have an idea though, Steve Snake mentioned how KGen's CPU cores are tightly integrated with the rest of the emulator (to the point where even extracting the Z80 core would be useless) so that's probably the solution.Genecyst uses very little RAM, though. If I wanted to make Genital completely dependant on Genital68K, I could opt for eliminating memory handlers altogether and writing to a 16 megabyte address space. This would be pretty non-typical behavior. I could then call a VDP routine to read the registers directly from the address space (the VDP only has a few ports anyway) and modify this address space buffer to return data. It would be kind of like polling, but the Genesis doesn't have many I/O ports at all, so it wouldn't be wasteful at all. In theory this would boost the speed up a lot. Also, CPU skipping sounds good. I think it applies only to the dbra instruction if its branch destination is the same as the instruction address. Genesis code does this for timing certain events, it's completely unnecessary to emulate. I found by looking at a profile of Genital that Starscream is the number one cycle-killer. Following that is my DrawLine() function, by 5% less or something. It didn't list BlitScreen() though (which is implemented as a function pointer, maybe that's why gprof didn't see it?) and I'm sure that BlitScreen() is way more performance-pricey than Starscream. But nonetheless, I was a bit surprised ;) The CPU core is having more of an impact than I thought. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 4 23:56:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA65961 for dynarec-outgoing; Fri, 4 Aug 2000 23:55:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002501bffeab$8fa85660$5dca523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: 68K Emulator Date: Sat, 5 Aug 2000 09:05:37 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Neill's idea was to swap the even/odd bytes. He had done this before any > > > other publicly available 68K emulator for the PC appeared. > > It is strange because it is a logical choice. You always can try to test > > if it is faster or not than without swap. The first time I thought about > > a 68K emulator I was thinking about it. > > He did. It's faster. Dunno by how much exactly, but I'll take Neill at his > word. ;-) > In any case the important is trying it. There are only two choices byte swap or not. If you don't you should have to use a xcgh xh,xl every word read/write and a bswap xx every dword read/write. I think that time I was for bswap ... but I can't remember why, in any case I was very green that time. I was going to use asm macros, it was later I see MZ80 and learn the idea about using a C emiter which it is a lot of better. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 5 00:34:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA66007 for dynarec-outgoing; Sat, 5 Aug 2000 00:33:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002d01bffeb0$f064cba0$5dca523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000804223515.007f1ad0@powernet.net> <3.0.5.32.20000805000251.007f3af0@powernet.net> Subject: Re: DYNAREC: 68K Emulator Date: Sat, 5 Aug 2000 09:44:07 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > If I wanted to make Genital completely dependant on Genital68K, I could opt > for eliminating memory handlers altogether and writing to a 16 megabyte > address space. This would be pretty non-typical behavior. I could then call > a VDP routine to read the registers directly from the address space (the > VDP only has a few ports anyway) and modify this address space buffer to > return data. It would be kind of like polling, but the Genesis doesn't have > many I/O ports at all, so it wouldn't be wasteful at all. In theory this > would boost the speed up a lot. It is an interesting idea. I didn't thought about it. If you really don't want a general CPU core you can find some optimization for the machine you are implementing. A dynarec core can do also some really interesting tricks with memory handlers. For example every direct memory access is translated without memory handlers, the memory handlers are only used at compile time. This means that all IO (or almost all, because I don't think it will be usual an indirect memory acces to a IO addres) operations will be translated as a direct read/write/call to an IO handler. > Also, CPU skipping sounds good. I think it applies only to the dbra > instruction if its branch destination is the same as the instruction > address. Genesis code does this for timing certain events, it's completely > unnecessary to emulate. > > I was really impressed that summer that Genesis was released and it gets a really impressive boost speed compared with Genem. The CPU skip must be that strange option it has in early version. I was wondering what it could be I thought it could be a loop improvement. This make me think: how it could be a dynarec implemented for a very particular machine like Genesis is. > > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 5 10:10:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA68679 for dynarec-outgoing; Sat, 5 Aug 2000 10:10:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 Aug 2000 10:28:25 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000805000251.007f3af0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >of 68K source code is that A0/A1 D0/D1 is used quite often, especially > >code written in C. Makes sense that it just counts up from D0/A0 as it's > >internally allocating them. > But there are often code sequences that use other registers in great > number. I don't know really, it is interesting, but I'll go with the other > approach first to see how that works out... You could just make it #define-able, so when someone wants to change it they can quite easily. But with compiled code, it's common to start from D0/A0 and work its way up. > >Precisely. But you'll also have to have some way to count down the # of > >remaining clock cycles to execute. It's faster when it's in a > >register. I've done it both ways with mz80, and the register approach was > >over 10% faster. > I'll find a register to use for that ;) I also noticed Make68K fetches the > next instruction from the instruction handlers themselves. This is like > "hog mode" in Starscream where the fetch/decode process is inlined if I'm > not mistaken... looks pretty neat :) My idea. ;-) Instead of jumping back to a central point to do the dispatching, it just dispatches at the end of the instruction's emulation. Neill didn't want to add it in permanently because it added an additional ~30K to the object file size. > Currently, though, 8 million repetitions of my ReadByte function takes > about 2 seconds on a P166. Make68K's seems to be exactly the same. This is > based on naked-eye observation. But it is extremely close nonetheless > whatever the true results may be, and I'm satisfied w/ my results for now ;) Precisely my point, however in your case you're having to save off a register and restore it, where in the approach I was recommending you don't have to. ;-) And yes, they will be extremely close, which also reinforces my point about the loop not taking much time at all. > >other publicly available 68K emulator for the PC appeared. > One thing I'm wondering about, is how you handle bytes in Make68K. I notice > you immediately xor with 1... but shouldn't that only be done when fetching > from the pointer? Because if I were to use handlers with Make68K and was > trapping the 0xA00000-0xBFFFFF range, I'd get 0xA00001 for 0xA00000... That's just it - you won't have handlers at odd trap addresses - not in the 68K anyway. I haven't looked at that code in so long that I can't remember what I was doing. It probably wasn't debugged, but the xor with 1 certainly isn't right for handler calls, but is very right for direct memory access. Sounds like the 16MB allocation might be thing to do! > I store my address in EAX on entry, and I do: xor al, 1 as opposed to xor > eax, 1 or whatever. I think xor al, 1 is a little faster, isn't it? Yep, it is. I think it's 2 bytes instead of 5. > I wonder how Genecyst's 68K emulator gets the speed it does. I'm pretty > sure I have an idea though, Steve Snake mentioned how KGen's CPU cores are > tightly integrated with the rest of the emulator (to the point where even > extracting the Z80 core would be useless) so that's probably the > solution.Genecyst uses very little RAM, though. Genecyst probably short circuits a few calls to do some functions natively. That's a really common trick when you can predict what you're emulating (the Genesis' BIOS). > If I wanted to make Genital completely dependant on Genital68K, I could opt > for eliminating memory handlers altogether and writing to a 16 megabyte > address space. This would be pretty non-typical behavior. Yep. And you could just inline the compares. I have a few others who have done this sort of thing with their NES emulators. > Also, CPU skipping sounds good. I think it applies only to the dbra > instruction if its branch destination is the same as the instruction > address. Genesis code does this for timing certain events, it's completely > unnecessary to emulate. When I see this happen in MZ80, I subtract out all time (and round up to the next highest multiple of the jump to self instruction) so it returns immediately. That's a good optimization to make. > I found by looking at a profile of Genital that Starscream is the number > one cycle-killer. Following that is my DrawLine() function, by 5% less or > something. It didn't list BlitScreen() though (which is implemented as a > function pointer, maybe that's why gprof didn't see it?) and I'm sure that > BlitScreen() is way more performance-pricey than Starscream. But > nonetheless, I was a bit surprised ;) The CPU core is having more of an > impact than I thought. Hm... what profiler are you using? I'd be careful with that, because a lot of profilers will misappropriate what procedure actually was sucking down all the CPU power. I wrote my own profiler (really simple) that would use the Pentium's timestamp counter and figure things out. It was *DEAD* accurate. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 5 10:13:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA68689 for dynarec-outgoing; Sat, 5 Aug 2000 10:13:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 Aug 2000 10:31:25 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <002501bffeab$8fa85660$5dca523e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > other publicly available 68K emulator for the PC appeared. > > > It is strange because it is a logical choice. You always can try to > > > if it is faster or not than without swap. The first time I thought > > > a 68K emulator I was thinking about it. > > He did. It's faster. Dunno by how much exactly, but I'll take Neill at his > > word. ;-) > In any case the important is trying it. There are only two choices byte > swap or > not. If you don't you should have to use a xcgh xh,xl every word read/write > and That would be yucky. Word loads are very, very common - more common than byte accesses. > a bswap xx every dword read/write. I think that time I was for bswap ... In the case of having even/odd loaded as such, > but I can't remember why, in any case I was very green that time. I was > going > to use asm macros, it was later I see MZ80 and learn the idea about using a > C > emiter which it is a lot of better. Which came from Starscream, which came from some emulator on the Amiga eons ago... The great thing about the emitter is that it's easier to see things expanded, and if you have a bug, it's MUCH easier to spot when everything is expanded out for you. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 5 11:06:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA68737 for dynarec-outgoing; Sat, 5 Aug 2000 11:06:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001101bfff09$509cb8e0$8fc2523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: 68K Emulator Date: Sat, 5 Aug 2000 20:16:43 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Also, CPU skipping sounds good. I think it applies only to the dbra > > instruction if its branch destination is the same as the instruction > > address. Genesis code does this for timing certain events, it's completely > > unnecessary to emulate. > > When I see this happen in MZ80, I subtract out all time (and round up to > the next highest multiple of the jump to self instruction) so it returns > immediately. That's a good optimization to make. > I will have to write it in my notebook. ;) > > I found by looking at a profile of Genital that Starscream is the number > > one cycle-killer. Following that is my DrawLine() function, by 5% less or > > something. It didn't list BlitScreen() though (which is implemented as a > > function pointer, maybe that's why gprof didn't see it?) and I'm sure that > > BlitScreen() is way more performance-pricey than Starscream. But > > nonetheless, I was a bit surprised ;) The CPU core is having more of an > > impact than I thought. > > Hm... what profiler are you using? I'd be careful with that, because a lot > of profilers will misappropriate what procedure actually was sucking down > all the CPU power. I wrote my own profiler (really simple) that would use > the Pentium's timestamp counter and figure things out. It was *DEAD* > accurate. > It's bad the Intel profiler VTUNE? ;) > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 5 11:08:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA68747 for dynarec-outgoing; Sat, 5 Aug 2000 11:08:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001501bfff09$a5fef000$8fc2523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: 68K Emulator Date: Sat, 5 Aug 2000 20:19:07 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > In any case the important is trying it. There are only two choices byte > > swap or > > not. If you don't you should have to use a xcgh xh,xl every word read/write > > and > > That would be yucky. Word loads are very, very common - more common than > byte accesses. > That is because swapping bytes is faster. > > but I can't remember why, in any case I was very green that time. I was > > going > > to use asm macros, it was later I see MZ80 and learn the idea about using a > > C > > emiter which it is a lot of better. > > Which came from Starscream, which came from some emulator on the Amiga > eons ago... > Impressive ... A bit of history about emulation programming. ;) > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 5 11:43:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA68779 for dynarec-outgoing; Sat, 5 Aug 2000 11:43:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000805115144.007f8d70@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 05 Aug 2000 11:51:44 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000805000251.007f3af0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Currently, though, 8 million repetitions of my ReadByte function takes >> about 2 seconds on a P166. Make68K's seems to be exactly the same. This is >> based on naked-eye observation. But it is extremely close nonetheless >> whatever the true results may be, and I'm satisfied w/ my results for now ;) > >Precisely my point, however in your case you're having to save off a >register and restore it, where in the approach I was recommending you >don't have to. ;-) And yes, they will be extremely close, which also >reinforces my point about the loop not taking much time at all. I only save off registers now when a call is made to a handler, and even then not all the registers are saved off, only the necessary registers. >> I wonder how Genecyst's 68K emulator gets the speed it does. I'm pretty >> sure I have an idea though, Steve Snake mentioned how KGen's CPU cores are >> tightly integrated with the rest of the emulator (to the point where even >> extracting the Z80 core would be useless) so that's probably the >> solution.Genecyst uses very little RAM, though. > >Genecyst probably short circuits a few calls to do some functions >natively. That's a really common trick when you can predict what you're >emulating (the Genesis' BIOS). I don't think it would do that, since the Genesis doesn't have a BIOS and games don't share any common code... his 68K emulator just seems to be incredibly fast ;) >> I found by looking at a profile of Genital that Starscream is the number >> one cycle-killer. Following that is my DrawLine() function, by 5% less or >> something. It didn't list BlitScreen() though (which is implemented as a >> function pointer, maybe that's why gprof didn't see it?) and I'm sure that >> BlitScreen() is way more performance-pricey than Starscream. But >> nonetheless, I was a bit surprised ;) The CPU core is having more of an >> impact than I thought. > >Hm... what profiler are you using? I'd be careful with that, because a lot >of profilers will misappropriate what procedure actually was sucking down >all the CPU power. I wrote my own profiler (really simple) that would use >the Pentium's timestamp counter and figure things out. It was *DEAD* >accurate. I used gprof. I had a little RTDSC profiler to track major parts of the emulator once, the results were similar but I remember that BlitScreen() was taking up more time. The RTDSC thing was innacurrate because of the shoddy way in which I implemented it... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 5 13:22:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA68858 for dynarec-outgoing; Sat, 5 Aug 2000 13:21:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 Aug 2000 13:39:42 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000805115144.007f8d70@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >register and restore it, where in the approach I was recommending you > >don't have to. ;-) And yes, they will be extremely close, which also > >reinforces my point about the loop not taking much time at all. > I only save off registers now when a call is made to a handler, and > even then not all the registers are saved off, only the necessary > registers. Ah - but if you look above, you're doing a SAVEREG on ebx and ecx - saving ECX wouldn't be needed if you didn't use it. ;-) > >Genecyst probably short circuits a few calls to do some functions > >natively. That's a really common trick when you can predict what you're > >emulating (the Genesis' BIOS). > I don't think it would do that, since the Genesis doesn't have a BIOS and > games don't share any common code... his 68K emulator just seems to be > incredibly fast ;) He probably just inlines things like memory access regions. Quite simple to do, and it's really effective. > >all the CPU power. I wrote my own profiler (really simple) that would use > >the Pentium's timestamp counter and figure things out. It was *DEAD* > >accurate. > I used gprof. I had a little RTDSC profiler to track major parts of the > emulator once, the results were similar but I remember that BlitScreen() > was taking up more time. The RTDSC thing was innacurrate because of the > shoddy way in which I implemented it... Heh. Well, you should probably do the RDTSC thing and have your own profiling library. The problem with using stuff off the shelf is that it tends to misappropriate who is taking all the execution time, and you don't know how it's being misappropriated. Doing the RDTSC thing is quite easy to do. I had (have?) a library sitting around that does a decent job of profiling and is deadly accurate. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 5 13:55:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA68890 for dynarec-outgoing; Sat, 5 Aug 2000 13:55:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000805140314.007f5100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 05 Aug 2000 14:03:14 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000805115144.007f8d70@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 01:39 PM 8/5/2000 +0000, you wrote: >> >register and restore it, where in the approach I was recommending you >> >don't have to. ;-) And yes, they will be extremely close, which also >> >reinforces my point about the loop not taking much time at all. >> I only save off registers now when a call is made to a handler, and >> even then not all the registers are saved off, only the necessary >> registers. > >Ah - but if you look above, you're doing a SAVEREG on ebx and ecx - saving >ECX wouldn't be needed if you didn't use it. ;-) No, I rewrote it keeping your suggestion of using another register for the scan, instead of using EBX and saving it. My memory handler has been completely revamped :) >> >Genecyst probably short circuits a few calls to do some functions >> >natively. That's a really common trick when you can predict what you're >> >emulating (the Genesis' BIOS). >> I don't think it would do that, since the Genesis doesn't have a BIOS and >> games don't share any common code... his 68K emulator just seems to be >> incredibly fast ;) > >He probably just inlines things like memory access regions. Quite simple >to do, and it's really effective. Yeah, although I don't think it would work too great for 32X and Sega CD where the memory map changes because of bank switching (32X) and different memory modes (Sega CD). Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 5 23:38:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA69303 for dynarec-outgoing; Sat, 5 Aug 2000 23:38:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 Aug 2000 19:39:07 -0700 (PDT) From: X-Sender: tarquin@cx83476-a.irvn1.occa.home.com To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Sat, 5 Aug 2000, Neil Bradley wrote: > don't know how it's being misappropriated. Doing the RDTSC thing is quite > easy to do. I had (have?) a library sitting around that does a decent job > of profiling and is deadly accurate. Hmm, you wouldn't happen to still have this thing would you? A profiler I can trust would be quite handy right now... > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me > Synthcom Systems, Inc. ICQ # 29402898 John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 5 23:57:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA69325 for dynarec-outgoing; Sat, 5 Aug 2000 23:57:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701bfff75$117378e0$a2c2523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000805115144.007f8d70@powernet.net> <3.0.5.32.20000805140314.007f5100@powernet.net> Subject: Re: DYNAREC: 68K Emulator Date: Sun, 6 Aug 2000 09:08:03 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> >Genecyst probably short circuits a few calls to do some functions > >> >natively. That's a really common trick when you can predict what you're > >> >emulating (the Genesis' BIOS). > >> I don't think it would do that, since the Genesis doesn't have a BIOS and > >> games don't share any common code... his 68K emulator just seems to be > >> incredibly fast ;) > > > >He probably just inlines things like memory access regions. Quite simple > >to do, and it's really effective. > > Yeah, although I don't think it would work too great for 32X and Sega CD > where the memory map changes because of bank switching (32X) and different > memory modes (Sega CD). > But I think you can inline most of the code an use pointers to the memory regions. You could still save the call and register save overhead. What would be the best way to implement bank switching and or the Sega CD memory modes. To use a pointer for the bankswitched region? Every time you change the bank you change the address stored in the pointer. > > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 11:29:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA70004 for dynarec-outgoing; Sun, 6 Aug 2000 11:28:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 Aug 2000 11:46:58 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <001101bfff09$509cb8e0$8fc2523e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > of profilers will misappropriate what procedure actually was sucking down > > all the CPU power. I wrote my own profiler (really simple) that would use > > the Pentium's timestamp counter and figure things out. It was *DEAD* > > accurate. > It's bad the Intel profiler VTUNE? ;) It makes mistakes - bad enough that I can't trust it. ;-( -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 11:30:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA70017 for dynarec-outgoing; Sun, 6 Aug 2000 11:30:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 Aug 2000 11:48:09 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000805140314.007f5100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Ah - but if you look above, you're doing a SAVEREG on ebx and ecx - saving > >ECX wouldn't be needed if you didn't use it. ;-) > No, I rewrote it keeping your suggestion of using another register for the > scan, instead of using EBX and saving it. My memory handler has been > completely revamped :) Oh - well, you didn't tell me this. ;-) Care to forward on the latest version? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 11:43:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA70033 for dynarec-outgoing; Sun, 6 Aug 2000 11:43:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 Aug 2000 12:01:12 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-2023820854-965563272=:45062" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-2023820854-965563272=:45062 Content-Type: TEXT/PLAIN; charset=US-ASCII > > don't know how it's being misappropriated. Doing the RDTSC thing is quite > > easy to do. I had (have?) a library sitting around that does a decent job > > of profiling and is deadly accurate. > Hmm, you wouldn't happen to still have this thing would you? A profiler I > can trust would be quite handy right now... Found it. It's attached. Note that this was design to work with MSVC, so you may have to tweak it to get it to work for your compiler. Here's how to use it: * Make sure you #define INCLUDE_PROFILER before compiling if you want profiling in * At the beginning of your program, call ProfilerInit() * Throughout the code, use two macros: PROFILER_ENTER("Profile point tag name"); PROFILER_EXIT(); Use the PROFILER_ENTER() when you want to start profiling a region of code, and PROFILER_EXIT(); when you're all done. * At the end of your program, call ProfilerGenerateReport("filename goes here.txt"); to emit a report * Call Profiler shutdown Quite simple, and is dead accurate. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --0-2023820854-965563272=:45062 Content-Type: APPLICATION/ZIP; name="profile.zip" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="profile.zip" UEsDBBQAAAAIAPJdBil7BKUezAUAAEUSAAAJAAAAUFJPRklMRS5DrVjpTyM3 FP88SPwPr6DNJuTg2G2/sFlpS9kKNQuIgFp1i5Az9hCLiT21PWRpxf9eP3tm MleyrLYokMR+5++dwy4XYZxSBu+WXFC51KP5++2t1ak2NOaz5iGXtTOiNVOm eriTKBnxmI3mO9tbeB5RFsHZ+cnk5pfTu8uri49nk9MrvNrfh0tPq0BIy6qN SkOTKoa35ilhyOkPYZqRnlvC7a1/t7eCuzsuzE9vIabLa2lIfM3DB31sL8I5 UbCXzD5JmloGsmDlUysnZNQqyS6eK6LvzHFm2i5cRJAK/nfKQMnUcME0MBHK VBimGAUiKBhUDPY3fgJZkHsEuLiHRFobNUrUhhge1nSB/k3IpchRwEP9+dOH P3KY7i4vzs6vp7fHBf+N/f7mCOjSMSLDCRoEYzjIDT+x1ljUSPgAkVQlY6zT +KZSAYYv2Hqr9hJdOpiiqBdalbE5lkv0PTNsrZ4PoeGP7rulPL+ZTFbEpfhO iDZTskhiVjiaET1KTuGKEXo9PenmHHsJ5sT0ZCJDSyRFL0sYohf2DT8GSarn AdMcPy/kY4CfB/C5xniL14oaHRZ0ny3h7QAY+VI56r/FQ+oOE5kEmezn7a3n urV5tKdGJic+m7p40WuktXfZuRvkPnaK856/sBE/i2DJYE4eGRAIU6WYMPET EIetK60BxMy81kAoBW7ASDBzBqFEOYbRIh8CHkG3HJVeDlihFobjakiOnc8l nuH7SklCf1xxpgClhgZRpgWOst8rneh7U8YpMk9DmbBuswcMoLUDZGqKDJ5I mRTAYogypJxhoCUiTaV4bSBveIgdnnJB09AVf8i0xkpzN2ZuP2orz77aQl8L 42vFXIXK1GBHyZqpr+cBPPA4tgH8wbH47tttq7p30KzXlaLfnRYhrQbh3Ysl SrfeedeWUqknIDM0gkDMBbPIxVI+pMloNHJisLV0PVyuJjPorOZ6b8qv+v0i mTDLum29z1PejsqBg/EYyt970OmgkOArEiph9kKqkUdzvD3BTDHy4BL52Sdo EREbPg32pZkrm7pzA4y8nss0pq64CAi2tLCuqinHaNzgLeAoAllr6uuiGATt nlfZ6yhWQPwmKTUk60B+g6xqY/C9PAj6/UbOlKNwLpc2DMRgdWCLo5SVu9iC aCzNmGtXMdqkUZT3u4gL6kqJuxYZEgEkSZigTnZt/HQ25NOxI29MxZbau0WA SoKREx1sEB5XGkKp+61pbl+48b2t1B03NBTMvQOfdg3VRea1D2BXBCzWLCcb DtfYXxfwQogc61rf2wfEmeCm7PqfTMlPbCHVU1sfGIDm/zAZtd31nJL1y8o6 VNYsXWVLmv4XhjSveu2Bns5TQ62esrP7+3AjcFl3Gc+E4aq8Zrrp4KK+nOO0 aB/hzUxaj/avTDBFDLtiiVSmGKcf7Z1YMzVzOLBZwV6EU7Sxo+c0tUVwOl2S JC+Wny8uJjC7YhqrdQzXVzenxeS6SJiA1M9kNxdxDC0VNxYFP5bQjMj6Jror awews9wplQUGFCsjSgpsFDOpEpW287MiXABlhMIsnc1wCFso8mcBnAn3UlIb DJnez50hblboBe7fu9iKWMwWLNv/88g0kug9HEKnkztcGLQC4OOHyTRDYMPU bQoewmGvOnuzYYcQbBqd1Sb9zvGs6e9O9mGNxanKdAULtgiTp26nCPFgU5+F Phzebqrd3EhfwyX5X5W5qbv/zxpRW8nfF8r20huJH/idpLqY+AhjFfgnUJdu l9gX0oVbO7Uhi6RYW42LJCYP5ma2U+rv3+OKsu6PWx9lWzOqMdvv8SklYSq0 9pN7ptEX+ciUtXXgJ7xbW8CXMsmaYJKvIO4cuN9kZWqS1Lje8P3uRYniwkTd KBnAzqvh2yMNr4ZHP9q/b0ZH0V9iZ7DR68rTh49u9vMNi2uVsdulMp3FrPdy uGEPDg8ORgc92IeCO6forYIRhbHUzPpaTKVdJiiPAPfglv/e/AdQSwMEFAAA AAgA4l0GKafvCltbAQAAcQMAAAkAAABQUk9GSUxFLkiNk0FvgkAQhc+Y+B8m 8YKNiV566qlpsSVRNGiT3gjdHWQT2N0sQ8V/3wWVYkVTbrw3+83sGxiJRHJM IFqHq7m/8KL3aDgYWUVIvBSHg+kUljEzqoBEGSgLhL2gVEhgiiMUCgTBDqmw 77kWGXJQJdUHbZO6hx+8LD5evTM1PDHnpWQklARtFCk6aCxqBytCI+FbCQ5r oxILNL4U5NbK+Km/wJNW2zCl0WVpbOBBfy0VLzMM4hwncNZsOUNemka+yaoE HVH3Or6hRBMThqiVobbr3HryDnyTlsTVXrbsU7yVyMscWJxlQAYROGpKm7x1 c1LIXZPocUOOs3z+bLe0XvnBduM4j7PZ7KLoHHjkBVsvdC2JNbM5PbFFUcOK JtCW9ZI+/a07duxzHde4aY5Zgf+a4ja+63S/gD6jc4VqAofeku6EV267kT7z z5ar0xUlF4lj99b3Zf+6F7/RD1BLAQIUABQAAAAIAPJdBil7BKUezAUAAEUS AAAJAAAAAAAAAAEAIAAAAAAAAABQUk9GSUxFLkNQSwECFAAUAAAACADiXQYp p+8KW1sBAABxAwAACQAAAAAAAAABACAAAADzBQAAUFJPRklMRS5IUEsFBgAA AAACAAIAbgAAAHUHAAAAAA== --0-2023820854-965563272=:45062-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 11:57:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA70052 for dynarec-outgoing; Sun, 6 Aug 2000 11:57:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 Aug 2000 07:58:18 -0700 (PDT) From: X-Sender: tarquin@cx83476-a.irvn1.occa.home.com To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Sun, 6 Aug 2000, Neil Bradley wrote: > Found it. It's attached. Note that this was design to work with MSVC, so > you may have to tweak it to get it to work for your compiler. Here's how > to use it: Considering that I'm running on Linux/GCC, some changes will need to be made =) > Quite simple, and is dead accurate. One question, would it handle nesting correctly? Example: PROFILE_ENTER("renderer"); stuff PROFILE_ENTER("color decoder"): more stuff PROFILE_EXIT(); PROFILER_EXIT(); would that output correct times for both? time spent in the renderer total and time spent in that subsection? > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me > Synthcom Systems, Inc. ICQ # 29402898 > John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 12:11:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA70075 for dynarec-outgoing; Sun, 6 Aug 2000 12:11:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 Aug 2000 12:29:54 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Found it. It's attached. Note that this was design to work with MSVC, so > > you may have to tweak it to get it to work for your compiler. Here's how > > to use it: > Considering that I'm running on Linux/GCC, some changes will need to be > made =) Yes. Shouldn't be too bad, though. Instead of specifying _int64, I think you can just do long long int. You'll have to create the appropriate syntax for gcc for inlining code, but if I recall correctly, it'll just be a matter of syntax since gcc is a stack based compiler. > > Quite simple, and is dead accurate. > One question, would it handle nesting correctly? Yes. > would that output correct times for both? time spent in the renderer total > and time spent in that subsection? Yes to both questions. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 12:19:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA70088 for dynarec-outgoing; Sun, 6 Aug 2000 12:19:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 Aug 2000 08:20:25 -0700 (PDT) From: X-Sender: tarquin@cx83476-a.irvn1.occa.home.com To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Sun, 6 Aug 2000, Neil Bradley wrote: > > would that output correct times for both? time spent in the renderer total > > and time spent in that subsection? > > Yes to both questions. Excellent =) This how Retrocade does it's profiling? =P > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me > Synthcom Systems, Inc. ICQ # 29402898 John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 12:44:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA70114 for dynarec-outgoing; Sun, 6 Aug 2000 12:44:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000806125250.007fa7e0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 06 Aug 2000 12:52:50 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000805140314.007f5100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Oh - well, you didn't tell me this. ;-) Care to forward on the latest >version? Here's the emitted code: times ($$-$) & 31 nop ReadByte: mov edi, [__read_byte] .loop: cmp dword [edi+(__data_limit - data_start)], 0 je .done cmp eax, [edi] jb .next cmp eax, [edi+(__data_limit - data_start)] ja .next cmp dword [edi+(__data_ptr - data_start)], 0 je .read_from_handler xor al, 1 sub eax, [edi] add eax, [edi+(__data_ptr - data_start)] mov al, [eax] .done: ret align 4 .next: add edi, (data_end - data_start) jmp .loop align 4 .read_from_handler: mov [memhandler_ebx], ebx mov [memhandler_ecx], ecx mov [memhandler_edx], edx mov [memhandler_esi], esi mov [memhandler_ebp], ebp push eax call dword [edi+(__data_handler - data_start)] pop ebp mov ebx, [memhandler_ebx] mov ecx, [memhandler_ecx] mov edx, [memhandler_edx] mov esi, [memhandler_esi] mov ebp, [memhandler_ebp] ret Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 12:49:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA70128 for dynarec-outgoing; Sun, 6 Aug 2000 12:49:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 Aug 2000 13:07:12 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000806125250.007fa7e0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Oh - well, you didn't tell me this. ;-) Care to forward on the latest > >version? Hey - this looks good! > Here's the emitted code: > times ($$-$) & 31 nop You can just to alignments of 4 bytes. I've yet to see it make any difference in a positive direction by going to anything larger. After checking this out, I have an idea: > ReadByte: > mov edi, [__read_byte] When the __read_byte is set with a set context call, subtract 16 from it, and do this: > .loop: add edi, 16 > cmp dword [edi+(__data_limit - data_start)], 0 > je .done > cmp eax, [edi] > jb .loop > cmp eax, [edi+(__data_limit - data_start)] > ja .loop That would eliminate the double jumps and make the code smaller. Also, another idea: Since you're comparing things against 0, do you have a spare register that you can xor reg, reg and use it as a comparison? That'll save some fetch time and you just might be able to cram the whole thing in the entire prefetch queue! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 12:54:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA70142 for dynarec-outgoing; Sun, 6 Aug 2000 12:54:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 Aug 2000 13:12:59 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > .loop: > add edi, 16 > > cmp dword [edi+(__data_limit - data_start)], 0 > > je .done > > cmp eax, [edi] > > jb .loop > > cmp eax, [edi+(__data_limit - data_start)] > > ja .loop Damn. I like this idea. I'm going to go implement it in mz80 and see how it works. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 13:38:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA70188 for dynarec-outgoing; Sun, 6 Aug 2000 13:36:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000806134450.007a63e0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 06 Aug 2000 13:44:50 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000806125250.007fa7e0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You can just to alignments of 4 bytes. I've yet to see it make any >difference in a positive direction by going to anything larger. Okay, I remember the Intel optimization guide saying that it improves performance, but it does waste quite a bit of space too... especially if it was applied to every instruction handler :/ >After checking this out, I have an idea: >That would eliminate the double jumps and make the code smaller. Also, >another idea: I added the necessary changes. It definitely sounds like a great idea! >Since you're comparing things against 0, do you have a spare register that >you can xor reg, reg and use it as a comparison? That'll save some fetch >time and you just might be able to cram the whole thing in the entire >prefetch queue! No, unfortunately I don't have any spare registers... yet. Since I haven't started implementing instructions, I don't know yet, so I'll forego the idea for now... Do you think the following might be a bit quicker?: test dword [edi+(__data_limit - data_start)], -1 jz .done Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 13:59:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA70210 for dynarec-outgoing; Sun, 6 Aug 2000 13:57:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 Aug 2000 14:16:06 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000806134450.007a63e0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >You can just to alignments of 4 bytes. I've yet to see it make any > >difference in a positive direction by going to anything larger. > Okay, I remember the Intel optimization guide saying that it improves > performance, but it does waste quite a bit of space too... especially if it > was applied to every instruction handler :/ I remember reading that too, but Also, if you haven't already, consider making the section that actually calls the C handler a common routine. That'll shrink the code size and it does speed things up. An extra call/ret pair isn't anything to sneeze at compared to the time it takes to execute the whole path! > >After checking this out, I have an idea: > > >That would eliminate the double jumps and make the code smaller. Also, > >another idea: > I added the necessary changes. It definitely sounds like a great idea! Just did it to the read byte modifier in mz80 and it sped things up. More to report here in a few... > >time and you just might be able to cram the whole thing in the entire > >prefetch queue! > No, unfortunately I don't have any spare registers... yet. Since I haven't > started implementing instructions, I don't know yet, so I'll forego the > idea for now... Do you think the following might be a bit quicker?: > test dword [edi+(__data_limit - data_start)], -1 > jz .done I don't, actually. When you do a compare with a 0, it's like a 7 byte instruction. With -1, it'll be 10 or so. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 14:00:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA70226 for dynarec-outgoing; Sun, 6 Aug 2000 14:00:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 Aug 2000 14:18:22 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >difference in a positive direction by going to anything larger. > > Okay, I remember the Intel optimization guide saying that it improves > > performance, but it does waste quite a bit of space too... especially if it > > was applied to every instruction handler :/ > I remember reading that too, but I remember reading that too, but in practice I have never found that it helps. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 14:27:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA70253 for dynarec-outgoing; Sun, 6 Aug 2000 14:27:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000806143554.007fe6b0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 06 Aug 2000 14:35:54 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000806134450.007a63e0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Also, if you haven't already, consider making the section that actually >calls the C handler a common routine. That'll shrink the code size and it >does speed things up. An extra call/ret pair isn't anything to sneeze at >compared to the time it takes to execute the whole path! I only have 3 read handlers: ReadByte, ReadWord, and ReadLong. Is it really worth doing it? >Just did it to the read byte modifier in mz80 and it sped things up. More >to report here in a few... Cool! >I don't, actually. When you do a compare with a 0, it's like a 7 byte >instruction. With -1, it'll be 10 or so. Ah, okay. Darn dwords ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 14:30:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA70271 for dynarec-outgoing; Sun, 6 Aug 2000 14:30:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 Aug 2000 14:48:51 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000806143554.007fe6b0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >does speed things up. An extra call/ret pair isn't anything to sneeze at > >compared to the time it takes to execute the whole path! > I only have 3 read handlers: ReadByte, ReadWord, and ReadLong. Is it really > worth doing it? Okay... there's several parts to a handler and I need to make sure we are on the same page: 1) The part that scans the table 2) The part that calls the C function if matched 3) The part that reads directly from memory (NULL handler) I'm assuming right now that you have all 3 of these inlined. If this is the case, I'd recommend inlining #1 and #3, and putting #2 off in its own procedure - a common place for everyone. Is this what you're currently doing? -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 14:48:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA70311 for dynarec-outgoing; Sun, 6 Aug 2000 14:48:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000806145647.007a5100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 06 Aug 2000 14:56:47 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000806143554.007fe6b0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Okay... there's several parts to a handler and I need to make sure we are >on the same page: > >1) The part that scans the table >2) The part that calls the C function if matched >3) The part that reads directly from memory (NULL handler) > >I'm assuming right now that you have all 3 of these inlined. If this is >the case, I'd recommend inlining #1 and #3, and putting #2 off in its own >procedure - a common place for everyone. Is this what you're currently >doing? They're all inlined. I figured this wouldn't take up much code space since there are only 3 memory handlers anyway, ReadByte, ReadWord, ReadLong. I was planning on having instruction handlers call to one of these 3 to get the data they needed... I just don't get why #2 should be separate. Oh, and BTW, I tried using the Starscream "philosophy" of having ReadLong call the word function handler twice and use the word memory map but the function call thing is a much bigger performance sucker than I thought, so I think I'll move to having a dedicated longword memory map as most 68K emulators do. Maybe Starscream could have been sped up even further by having read_long and write_long pointers in its context? Genesis games do indeed make longword accesses fairly frequently; it's a common optimization to make since the VDP data ports are mirrored side-by-side, writing a longword is like writing 2 words to a VDP port. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 14:56:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA70328 for dynarec-outgoing; Sun, 6 Aug 2000 14:56:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 Aug 2000 15:14:20 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000806145647.007a5100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >1) The part that scans the table > >2) The part that calls the C function if matched > >3) The part that reads directly from memory (NULL handler) > >I'm assuming right now that you have all 3 of these inlined. If this is > >the case, I'd recommend inlining #1 and #3, and putting #2 off in its own > >procedure - a common place for everyone. Is this what you're currently > >doing? > They're all inlined. I figured this wouldn't take up much code space since > there are only 3 memory handlers anyway, ReadByte, ReadWord, ReadLong. And that I don't understand. You say that everything is inlined, but there are only 3 memory handlers. Are you saying that with your emitter level there's ReadByte/ReadWord/ReadLong or are you saying that there's an actual ReadByte/Readword/ReadLong procedure defined in your 68K core? > was planning on having instruction handlers call to one of these 3 to get > the data they needed... I just don't get why #2 should be separate. It's either they're separate, or else you now (according to you, they're inlined) have that push/call/pop code snippet all over the place. What I'm saying is take that push/call/pop code snippet and just create one of them - call it InternalReadByte/Word/Dword. Then, instead of inlining it with the region scanning code, call InternalReadByte/Word/Dword. Makes the code lots smaller, and you wind up using less cache. I did this with MZ80 and got a decent speedup. It'll be even more sensitive on something like a 68K core that'll use up a bunch more cache. > Oh, and BTW, I tried using the Starscream "philosophy" of having ReadLong > call the word function handler twice and use the word memory map but the > function call thing is a much bigger performance sucker than I thought, so > I think I'll move to having a dedicated longword memory map as most 68K > emulators do. Starscream does this in the later versions. Sped things up considerably - as much as 15-20%. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 15:03:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA70345 for dynarec-outgoing; Sun, 6 Aug 2000 15:03:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000806151139.007f7ca0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 06 Aug 2000 15:11:39 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000806145647.007a5100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >And that I don't understand. You say that everything is inlined, but there >are only 3 memory handlers. Are you saying that with your emitter level >there's ReadByte/ReadWord/ReadLong or are you saying that there's an >actual ReadByte/Readword/ReadLong procedure defined in your 68K core? They're procedures in the 68K core... I think that would perform okay... or would it offer a significant speed boost to inline the entire ReadByte/Word/Long procedure wherever it is used and then use your idea of calling a procedure to save registers and call the handler? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 15:11:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA70361 for dynarec-outgoing; Sun, 6 Aug 2000 15:11:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 Aug 2000 15:29:09 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000806151139.007f7ca0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >And that I don't understand. You say that everything is inlined, but there > >are only 3 memory handlers. Are you saying that with your emitter level > >there's ReadByte/ReadWord/ReadLong or are you saying that there's an > >actual ReadByte/Readword/ReadLong procedure defined in your 68K core? > They're procedures in the 68K core... I think that would perform > okay... or would it offer a significant speed boost to inline the > entire ReadByte/Word/Long procedure wherever it is used and then use > your idea of calling a procedure to save registers and call the > handler? So basically what you're saying is that it isn't inlined. Okay. Whenever you have to do a read from/write to, you do a call to ReadByte/WriteByte (and appropriate word and dword variants), right? Assuming this, yes, I found it to be significant enough of an increase to inline the structure scanning, but NOT the section that actually calls the handler. YMMV, However, with a 68K core you're using more cache and more memory, so it might not be as big of a win. Dunno! But that's how I planned on doing it. The table scanning code really isn't that big. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 15:51:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA70396 for dynarec-outgoing; Sun, 6 Aug 2000 15:51:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 Aug 2000 16:09:11 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Mod update Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I did the add edi, 10h thing on my Pentium II-350, and the results are in: Pacman went from 2011FPS to 2037FPS (1.3% improvement) Tron went from 385FPS to 400FPS (3.8% improvement) Galaga - no discernable difference I also tried a slew of other Z80 games but didn't see much difference. Each game uses a different memory map - some have more entries than others (which accounts for Tron being different than Pacman since Tron has more entries). It shrunk the .ASM file emitted down by 15K! The object file shrunk by 254 bytes. Certainly didn't hurt! -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 18:39:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA70522 for dynarec-outgoing; Sun, 6 Aug 2000 18:39:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000806184749.007f6290@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 06 Aug 2000 18:47:49 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K Emulator In-Reply-To: References: <3.0.5.32.20000806151139.007f7ca0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >So basically what you're saying is that it isn't inlined. Okay. Whenever >you have to do a read from/write to, you do a call to ReadByte/WriteByte >(and appropriate word and dword variants), right? Right. >Assuming this, yes, I found it to be significant enough of an increase to >inline the structure scanning, but NOT the section that actually calls the >handler. YMMV, However, with a 68K core you're using more cache and more >memory, so it might not be as big of a win. Dunno! But that's how I >planned on doing it. The table scanning code really isn't that big. I'll leave it as being called for now, I see Starscream does it too, and when I'm done or close to being done I'll try inlining the scanning and direct-ptr reading portions to see if it helps performance or not... it'll be cool that way because I'll be able to see a big speed increase if it does help after I've already got stuff running and I'll be able to say "Gosh wow that's faster!" :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 6 21:02:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA70633 for dynarec-outgoing; Sun, 6 Aug 2000 21:02:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 Aug 2000 21:20:51 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <3.0.5.32.20000806184749.007f6290@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >memory, so it might not be as big of a win. Dunno! But that's how I > >planned on doing it. The table scanning code really isn't that big. > I'll leave it as being called for now, I see Starscream does it too, and > when I'm done or close to being done I'll try inlining the scanning and > direct-ptr reading portions to see if it helps performance or not... it'll > be cool that way because I'll be able to see a big speed increase if it > does help after I've already got stuff running and I'll be able to say > "Gosh wow that's faster!" :) On second though, I could see it going both ways. On one hand there's no call/ret overhead, but on the other the code is larger. I think the breadth of code is more important to optimize (execution-wise) than inlining code. But most likely, it won't make much in the way of execution difference anyway. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 7 10:25:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA71418 for dynarec-outgoing; Mon, 7 Aug 2000 10:25:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: Subject: Re: DYNAREC: 68K Emulator From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Mon, 7 Aug 2000 19:41:15 +0200 Message-ID: <1eewsst.y7jyx71ahw3tyM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id KAA71415 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > You could just make it #define-able, so when someone wants to change it > they can quite easily. But with compiled code, it's common to start from > D0/A0 and work its way up. A question arises to me. How do you handle indexed amodes ? I mean you would have to do an extra test to determine whether the (index|base) register is the one cached or not. Or will you have an extra decode table for extension words ? The same goes for instructions such as MOVEM but this can be "fixed" easily. BTW, you could also cache A7. Here are some results with BasiliskII and the UAE cpu core. 1) Just booting up MacOS 8 without extensions and return D0 : 16552366 (26.0%) D1 : 12275829 (19.3%) D2 : 7526431 (11.8%) D3 : 7270566 (11.4%) D4 : 5630720 (8.9%) D5 : 3837808 (6.0%) D6 : 8057974 (12.7%) D7 : 2397737 (3.8%) A0 : 11141027 (16.9%) A1 : 12662957 (19.2%) A2 : 9315206 (14.1%) A3 : 4638359 (7.0%) A4 : 3564350 (5.4%) A5 : 1324822 (2.0%) A6 : 5813307 (8.8%) A7 : 17449897 (26.5%) 2) The same plus running all Speedometer 3.x tests D0 : 115534025 (27.4%) D1 : 55974608 (13.3%) D2 : 38793913 (9.2%) D3 : 35725157 (8.5%) D4 : 23762122 (5.6%) D5 : 46597170 (11.0%) D6 : 67003878 (15.9%) D7 : 38838995 (9.2%) A0 : 153214093 (23.0%) A1 : 59936795 (9.0%) A2 : 51177841 (7.7%) A3 : 28832137 (4.3%) A4 : 43953112 (6.6%) A5 : 31183627 (4.7%) A6 : 66138898 (9.9%) A7 : 233027574 (34.9%) Another idea would be to generate specialised instruction handlers so that no register decoding is be necessary. For example, profiling test 2) shows that the 10 most used instructions were: BGT.B #-6 CMP.L , D0 MOVE.L (A0), -(A7) MOVE.L (A4)+, (A5)+ MOVEA.L (A6,), A0 RTS.L LINK.W A6, UNLK.L 6 DBF.W D1, FPP.L , (A7) Another idea would be to merge two m68k instructions into one handler. e.g. compare and jump but this would imply extra tests... -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 7 10:25:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA71414 for dynarec-outgoing; Mon, 7 Aug 2000 10:25:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: Subject: Re: DYNAREC: 68K Emulator From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Mon, 7 Aug 2000 19:41:17 +0200 Message-ID: <1eeyvw4.1lgzxoahwctuoM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id KAA71410 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > since gcc is a stack based compiler. You can tell it to pass arguments in up to three registers, on an X86 machine, for the functions you choose. This is done by declaring the requested functions with __attribute__ ((regparm(N)). The order of registers used is EAX, EDX, ECX. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 7 10:41:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA71445 for dynarec-outgoing; Mon, 7 Aug 2000 10:41:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 Aug 2000 11:00:05 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <1eeyvw4.1lgzxoahwctuoM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > since gcc is a stack based compiler. > You can tell it to pass arguments in up to three registers, on an X86 > machine, for the functions you choose. This is done by declaring the > requested functions with __attribute__ ((regparm(N)). The order of > registers used is EAX, EDX, ECX. Yes, but unfortunately, it does such a horrible job at it it's best to just stick with the stack. ;-( I've only seen Watcom do it right. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 7 10:46:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA71459 for dynarec-outgoing; Mon, 7 Aug 2000 10:46:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 Aug 2000 11:04:49 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K Emulator In-Reply-To: <1eewsst.y7jyx71ahw3tyM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > You could just make it #define-able, so when someone wants to change it > > they can quite easily. But with compiled code, it's common to start from > > D0/A0 and work its way up. > A question arises to me. How do you handle indexed amodes ? I mean you > would have to do an extra test to determine whether the (index|base) > register is the one cached or not. Not so. Each cover for each emitted instruction already knows what to expect. So instead of something referencing a register, it'd just reference a memory location (a register that couldn't be stored in the x86 register set). It'd be a different cover, obviously. > BTW, you could also cache A7. Here are some results with BasiliskII and > the UAE cpu core. We could, but we're out of registers in the x86. ;-( > D0 : 16552366 (26.0%) > D1 : 12275829 (19.3%) Yep. This echoes a lot of what I've seen. > A7 : 17449897 (26.5%) Hm... Lots & lots of stack access, eh? That I didn't consider... does this take into account push/pop/call/ret? > Another idea would be to generate specialised instruction handlers so > that no register decoding is be necessary. Right. That was the plan all along. So, as an example, if A0/A1 were used, it would emit an instruction cover for A0's case and one for A1's case. For A2-A7, it'd just jump to one procedure that would figure out which register to muck with. The more often used cases would have specific code to handle the natively stored 68k registers. > Another idea would be to merge two m68k instructions into one handler. > e.g. compare and jump but this would imply extra tests... Yep. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 7 18:55:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA71816 for dynarec-outgoing; Mon, 7 Aug 2000 18:55:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000807190319.007ac580@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 07 Aug 2000 19:03:19 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: ReadPC() and ReleaseTimeslice() implementation Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I've got another couple of question which should hopefully be pretty easy: How can a ReadPC() function be implemented? The main concern is with memory handlers using the function. I took a look at Starscream's implementation, and what it does is save the current PC to memory whenever a handler is called, and then ReadPC() simply returns the value from that memory area. However... this PC will be offset by a few bytes if this happens during the course of a complex instruction, correct? Unless the instruction was decoded first... and the data was actually fetched last (after the PC had been properly modified.) And also, ReleaseTimeslice() should take effect when the next instruction is executed. So if a handler calls it, the current instruction must still be finished before things such as reading from the context can be attempted. Well... hey, that wasn't really a question. I'm just rambling... :P Thanks! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 7 21:03:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA71915 for dynarec-outgoing; Mon, 7 Aug 2000 21:03:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 Aug 2000 21:21:47 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: ReadPC() and ReleaseTimeslice() implementation In-Reply-To: <3.0.5.32.20000807190319.007ac580@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > How can a ReadPC() function be implemented? The main concern is with memory > handlers using the function. I took a look at Starscream's implementation, > and what it does is save the current PC to memory whenever a handler is > called, and then ReadPC() simply returns the value from that memory area. Correct. > However... this PC will be offset by a few bytes if this happens during the > course of a complex instruction, correct? The PC is usually the start of the next instruction, as you'll find that the instruction is entirely fetched before continuing. > Unless the instruction was > decoded first... and the data was actually fetched last (after the PC had > been properly modified.) Right. And I've found this to be the case. The whole point of the ReadPC() is so that code that happens to know a specific execution address (like a spin lock or a shortcut) can do special stuff when it's encountered. It doesn't have to be accurate - it only has to be consistent. Or you alternately can just not implement it. It wouldn't be too hard to add back in if people whine about it not being there. > And also, ReleaseTimeslice() should take effect when the next instruction > is executed. So if a handler calls it, the current instruction must still > be finished before things such as reading from the context can be > attempted. Correct. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 8 11:04:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA72712 for dynarec-outgoing; Tue, 8 Aug 2000 11:04:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000901c00164$8ce74ce0$32c2523e@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Holidays ... Date: Tue, 8 Aug 2000 20:14:28 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, what is it happening? Only two post since yesterday!! Are you all already on holidays. ;) Well, I'm also a bit busy trying to became the next DragonMaster and now I have to save Luna from the grapes of Magic Emperor Golthan ... ;)) Perhaps it isn't as bad as this ... If the list keeps so quiet in the next weeks I won't have to read hundreds of mails when I will return from my holidays (as I am afraid I will have to) ;) Bart, a small question. How could I print that Sega Genesis official Tech Doc? There are some pages that always hangs up my computer (it is Word ...) and I have to reboot. :( There isn't somewhere a cool postscript version easy to print/read. ;) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 8 12:39:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA72786 for dynarec-outgoing; Tue, 8 Aug 2000 12:39:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000808124715.007f7dc0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 08 Aug 2000 12:47:15 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Holidays ... In-Reply-To: <000901c00164$8ce74ce0$32c2523e@hal9000> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Bart, a small question. How could I print that Sega Genesis official >Tech Doc? There are some pages that always hangs up my computer >(it is Word ...) and I have to reboot. :( There isn't somewhere a >cool postscript version easy to print/read. ;) You mean sega2.doc? I had the same problem! It crashes Word. :( I printed it in Corel WordPerfect, but it was missing some of the images (which made a big portion of it useless). But doing that is better than not having it at all. I suggest printing what you can, and struggling with Word the rest of the time. You can also try to get the CD from Eidolon, there is a different, but similar official manual for the Sega Genesis on it, and it has been scanned, it comes entirely in images with a table of contents you can browse with your web browser. Somehow I managed with sega2.doc for a long time, but it was difficult because of Word constantly crashing :/ Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 8 13:40:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA72840 for dynarec-outgoing; Tue, 8 Aug 2000 13:40:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000501c0017a$59159b40$25c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000808124715.007f7dc0@powernet.net> Subject: Re: DYNAREC: Holidays ... Date: Tue, 8 Aug 2000 22:50:30 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Bart, a small question. How could I print that Sega Genesis official > >Tech Doc? There are some pages that always hangs up my computer > >(it is Word ...) and I have to reboot. :( There isn't somewhere a > >cool postscript version easy to print/read. ;) > > You mean sega2.doc? I had the same problem! It crashes Word. :( I printed > it in Corel WordPerfect, but it was missing some of the images (which made > a big portion of it useless). But doing that is better than not having it > at all. > Yes as some old/bad version I get and it is unformated and without images ... In any case I don't have WordPerfect ... Well I have the really old 6.0 but it also crashes. > I suggest printing what you can, and struggling with Word the rest of the > time. You can also try to get the CD from Eidolon, there is a different, > but similar official manual for the Sega Genesis on it, and it has been > scanned, it comes entirely in images with a table of contents you can > browse with your web browser. > I bet I will have to convice Eidolon I'm really into emulation so he will send me the CD. ;) But it won't be until september ... > Somehow I managed with sega2.doc for a long time, but it was difficult > because of Word constantly crashing :/ > Yeah ... That horrible bunch of the worst software ever made ... How in hell a text editor can hangle the full OS so easily. Let me guess ... Microsoft? ;P I will try to print "something" to have some interesting reading the days I will be out. I'm afraid if I try to print the doc in my job I will crash the system ... but they should be running NT, that should be a stronger system. In any case I don't want to have problems now there must be only a few system admistrators. ;) > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 8 13:50:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA72856 for dynarec-outgoing; Tue, 8 Aug 2000 13:50:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000808135833.007fe850@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 08 Aug 2000 13:58:33 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Holidays ... In-Reply-To: <000501c0017a$59159b40$25c3523e@hal9000> References: <3.0.5.32.20000808124715.007f7dc0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yes as some old/bad version I get and it is unformated and without images >... >In any case I don't have WordPerfect ... Well I have the really old 6.0 but >it also crashes. Hmm... do you have a corrupted sega2.doc? It should load up in Word fine, it just crashes when you scroll down to certain pages sometimes. You should be at least able to see the diagrams on almost all of the pages (such as the register bit diagrams), etc. I have seen a corrupted version which wouldn't load up at all in Word, I think EPR had that one. In any case, I can send you the proper one if you don't already have it. >I bet I will have to convice Eidolon I'm really into emulation so he will >send me the CD. ;) But it won't be until september ... He'll trust you, especially if you show him your Dynarec page or something. I didn't have anything to show when I first contacted him, but he obliged anyway. >Yeah ... That horrible bunch of the worst software ever made ... How in >hell a text editor can hangle the full OS so easily. Let me guess ... >Microsoft? ;P Hehe, it's their OS/software-integration "feature" ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 8 23:57:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA73282 for dynarec-outgoing; Tue, 8 Aug 2000 23:56:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008090705.JAA23088@pons.ac.upc.es> Subject: Re: DYNAREC: Holidays ... In-Reply-To: <3.0.5.32.20000808135833.007fe850@powernet.net> "from Bart at Aug 8, 2000 01:58:33 pm" To: dynarec@dynarec.com Date: Wed, 9 Aug 2000 09:05:03 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Yes as some old/bad version I get and it is unformated and without images > >... > >In any case I don't have WordPerfect ... Well I have the really old 6.0 but > >it also crashes. > > Hmm... do you have a corrupted sega2.doc? It should load up in Word fine, > it just crashes when you scroll down to certain pages sometimes. You should > be at least able to see the diagrams on almost all of the pages (such as > the register bit diagrams), etc. I have seen a corrupted version which > wouldn't load up at all in Word, I think EPR had that one. In any case, I > can send you the proper one if you don't already have it. > I have both. > >I bet I will have to convice Eidolon I'm really into emulation so he will > >send me the CD. ;) But it won't be until september ... > > He'll trust you, especially if you show him your Dynarec page or something. > I didn't have anything to show when I first contacted him, but he obliged > anyway. > I supose so ... but the first time I asked him he saied he would send it and I'm still waiting ... In any case I don't want to bother him again until I begin really to do something. > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 9 11:24:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA73975 for dynarec-outgoing; Wed, 9 Aug 2000 11:24:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000801c00230$9356d100$1dc1523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000808124715.007f7dc0@powernet.net> Subject: Re: DYNAREC: Holidays ... Date: Wed, 9 Aug 2000 20:32:27 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Bart, a small question. How could I print that Sega Genesis official > >Tech Doc? There are some pages that always hangs up my computer > >(it is Word ...) and I have to reboot. :( There isn't somewhere a > >cool postscript version easy to print/read. ;) > > You mean sega2.doc? I had the same problem! It crashes Word. :( I printed > it in Corel WordPerfect, but it was missing some of the images (which made > a big portion of it useless). But doing that is better than not having it > at all. > > I suggest printing what you can, and struggling with Word the rest of the > time. You can also try to get the CD from Eidolon, there is a different, > but similar official manual for the Sega Genesis on it, and it has been > scanned, it comes entirely in images with a table of contents you can > browse with your web browser. > > Somehow I managed with sega2.doc for a long time, but it was difficult > because of Word constantly crashing :/ > I finally builded a "cleaned" version using cut and paste (and a lot of reboots, around 30 !!!). I have found there are 4 (or 3 because there are two that I think there are the same graphic) pictures missing/corrupted. One unknown in page 34, the scheme for DMA register #22 in page 37 and 44 and another in page 98 (registers of YM2162). All the others same work well because I could build a postscript version without errors. > > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 9 11:30:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA73991 for dynarec-outgoing; Wed, 9 Aug 2000 11:30:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000809113810.007ff360@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 09 Aug 2000 11:38:10 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Holidays ... In-Reply-To: <000801c00230$9356d100$1dc1523e@hal9000> References: <3.0.5.32.20000808124715.007f7dc0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I finally builded a "cleaned" version using cut and paste (and a lot of >reboots, around 30 !!!). I have found there are 4 (or 3 because there are >two >that I think there are the same graphic) pictures missing/corrupted. One >unknown in page 34, the scheme for DMA register #22 in page 37 and >44 and another in page 98 (registers of YM2162). All the others >same work well because I could build a postscript version without >errors. Did you make a clean Word-format document? You should send it out to all the major sites, it would be good to have a working version around. If you just have the Postscript version I'm sure that would work too. Those 2 images missing won't be very important in the long run. sega2.doc is kind of hard to understand sometimes, but for the most part it is still the "defacto standard" guide to the Sega Genesis :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 9 12:10:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA74035 for dynarec-outgoing; Wed, 9 Aug 2000 12:10:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000901c00236$df01caa0$1dc1523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000808124715.007f7dc0@powernet.net> <3.0.5.32.20000809113810.007ff360@powernet.net> Subject: Re: DYNAREC: Holidays ... Date: Wed, 9 Aug 2000 21:19:47 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I finally builded a "cleaned" version using cut and paste (and a lot of > >reboots, around 30 !!!). I have found there are 4 (or 3 because there are > >two > >that I think there are the same graphic) pictures missing/corrupted. One > >unknown in page 34, the scheme for DMA register #22 in page 37 and > >44 and another in page 98 (registers of YM2162). All the others > >same work well because I could build a postscript version without > >errors. > > Did you make a clean Word-format document? You should send it out to all > the major sites, it would be good to have a working version around. If you > just have the Postscript version I'm sure that would work too. > > Those 2 images missing won't be very important in the long run. sega2.doc > is kind of hard to understand sometimes, but for the most part it is still > the "defacto standard" guide to the Sega Genesis :) > > I will upload it somewhere (I think in dynarec.com) and I will post a message in Eidolon's Tavern. > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 10 13:03:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA75310 for dynarec-outgoing; Thu, 10 Aug 2000 13:03:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000d01c00307$7c060e80$cac1523e@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: So quiet ... Date: Thu, 10 Aug 2000 22:13:09 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I think it's the first time I have seen this list being so quiet ... I just wanted to comment I found The Scribe's Emulation FAQ (I think I find it some time ago in Eidolon's but I forgot about it and today I have found it again) and I started to read some of it ... It's impossible I can finish it before I will go on holidays tomorrow though, it is incredible large ... This guy really likes writing. ;) I should have to ask him how he can write so much!! :) It's an interesting reading (perhaps a bit outdated :p but my "connectivity" has been very poor until now). I just read the history line about 1999 and I have discovered some things I watched from outside but from far distance. I have never been interesting about "law" and emulation, I dislake lawyers and everyone around them very much, but in any case is something I should have to know about to get the full picture. (It also have showed me that The Scribe (Sam) has as ego - or even more!! - as Neil ;) Althought I haven't ended the reading of the full FAQ (and I don't enterily agree with the purpose of it) I see it's a quite damn good document. Very well written and documented. I think it makes the worth to read it. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 10 13:39:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA75342 for dynarec-outgoing; Thu, 10 Aug 2000 13:39:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000810134648.007f9100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 10 Aug 2000 13:46:48 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: So quiet ... In-Reply-To: <000d01c00307$7c060e80$cac1523e@hal9000> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I just wanted to comment I found The Scribe's Emulation FAQ (I think >I find it some time ago in Eidolon's but I forgot about it and today I >have found it again) and I started to read some of it ... It's impossible I >can finish it before I will go on holidays tomorrow though, it is incredible >large ... This guy really likes writing. ;) I should have to ask him how >he can write so much!! :) Yeah, it's a good document, but it's too wordy for my liking. Wordiness is okay for reak literature, but for informative documents, I think a down-to-the-point approach is better. Some of the things in there that take up a couple paragraphs could be summed up in one or 2 sentences. >far distance. I have never been interesting about "law" and emulation, >I dislake lawyers and everyone around them very much, but in any case I'm not fond of lawyers for various reasons. Those leeches ;) also have showed me that The Scribe (Sam) has as ego - or even >more!! - as Neil ;) I've noticed The Scribe's ego too... I think it's quite overinflated. I recall the big deal he made about "leaving the scene". He said the "scene" was mature enough to the point that it did not need his "guiding hand" anymore, and he could "fade away" or some crap like that. Maybe I'm just ignorant... but I don't think he's really done anything. The people who have really done interesting things with emulations are the coders. I've never had to consult the EmuFAQ, I've never cared to browse through the G3O, and I don't care about "SegaBase" :) >document. Very well written and documented. I think it makes >the worth to read it. It may be beneficial to know the law in this area, but I personally don't worry about legal stuff at all. I doubt if I screw up I'm going to be taken to court, I'll probably get warned and flamed by any company I offend. I think legal considerations with emulation as a hobby boil down to one thing: Use common sense ;) Legalities involved with big-attention commercial emulators like bleem! and VGS are more serious, but those emulators are in a league of their own... I hear programming documentation for the Gameboy Advance is available, I'm not sure how intimate it is, but I did hear this from a console developer. Someone should get to emulating it, for no other purpose than to really piss Nintendo off ;) Imagine what they'd do if they found out about a GBA emulator only a couple months or so after the system was released in Japan... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 10 13:55:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA75364 for dynarec-outgoing; Thu, 10 Aug 2000 13:55:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 10 Aug 2000 14:14:47 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: So quiet ... In-Reply-To: <3.0.5.32.20000810134648.007f9100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > also have showed me that The Scribe (Sam) has as ego - or even > >more!! - as Neil ;) > I've noticed The Scribe's ego too... I think it's quite overinflated. I I've never heard of "The Scribe" and I've been around in emulation since early '96. > recall the big deal he made about "leaving the scene". He said the "scene" > was mature enough to the point that it did not need his "guiding hand" > anymore, and he could "fade away" or some crap like that. That's egotistical. It's one thing to have an ego and some successes to back it up, and yet another thing to have none. I semi-sorta left the emulation "scene" because of the MAME steamroller. I didn't agree with its design philosophy nor implementation and still don't on the grand scheme of things (though to their credit it is getting better) so I did my own thing. Great educational experience. > It may be beneficial to know the law in this area, but I personally don't > worry about legal stuff at all. I doubt if I screw up I'm going to be taken > to court, I'll probably get warned and flamed by any company I offend. I > think legal considerations with emulation as a hobby boil down to one thing: The one thing that everyone seems to forget is that it must be *PROFITABLE* to sue someone, otherwise they don't bother with anything more than threatening letters. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 10 15:42:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA75450 for dynarec-outgoing; Thu, 10 Aug 2000 15:42:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007401c00325$8ff2c820$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000810134648.007f9100@powernet.net> Subject: Re: DYNAREC: So quiet ... Date: Fri, 11 Aug 2000 00:31:02 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >far distance. I have never been interesting about "law" and emulation, > >I dislake lawyers and everyone around them very much, but in any case > > I'm not fond of lawyers for various reasons. Those leeches ;) Yah, but have you seen law students? Loads of them are female! I mean... okay, they might not be so interesting once they've left Uni but... ;) > Maybe I'm just ignorant... but I don't think he's really done anything. The > people who have really done interesting things with emulations are the > coders. I've never had to consult the EmuFAQ, I've never cared to browse > through the G3O, and I don't care about "SegaBase" :) Nope, the people who own those sites and say things like that certainly have their heads up their respective (or maybe not respectively!) arses. Who remembers the good old sites like Node99? Archaic Ruins? And Daves Video Classics when it was on his Uni server? Or that SNES emulator - that could only do 4 colours? Or... *gasp*... the first MAME? Or the first EMU? Yep, I remember all of these things. Why? Quite possibly because I'm sad. :)) Now if any of those people (except the SNES emulator) left the emu scene then maybe they'd have something to say. Node99 did... that was a sad day. Speaking of which, I'm getting to be eager to do the 68K emulator. I want to start on that in about... 4 weeks. Which, cunningly, is the time when I should be back in the UK. Then hopefully me and Andrew can make a start on our System16/24 emulator (System 24 is *still* not emulated properly!) and get that done. And maybe look at emulating something like MK2/MK3 at a reasonable speed. But maybe not - I don't actually like those games. :) > It may be beneficial to know the law in this area, but I personally don't > worry about legal stuff at all. I doubt if I screw up I'm going to be taken > to court, I'll probably get warned and flamed by any company I offend. I > think legal considerations with emulation as a hobby boil down to one thing: > > Use common sense ;) I totally agree. > Legalities involved with big-attention commercial emulators like bleem! and > VGS are more serious, but those emulators are in a league of their own... Yep - but they're making money which is one major difference between that and other emulators. And, of course, they're emulating currently sold hardware. Yes, I know, Sony doesn't make money from their console. But they do have to "protect" their copyrights so... > I hear programming documentation for the Gameboy Advance is available, I'm > not sure how intimate it is, but I did hear this from a console developer. > Someone should get to emulating it, for no other purpose than to really > piss Nintendo off ;) Imagine what they'd do if they found out about a GBA > emulator only a couple months or so after the system was released in Japan... Now what would be funny would to write the Gameboy Advance emulator - and release it - before Nintendo release the actual thing. Come on, that'd be funny. Yeah, it wouldn't be a nice thing to do. But it *would* be funny. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 10 15:42:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA75459 for dynarec-outgoing; Thu, 10 Aug 2000 15:42:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007501c00325$9256a8c0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: So quiet ... Date: Fri, 11 Aug 2000 00:32:07 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > The one thing that everyone seems to forget is that it must be > *PROFITABLE* to sue someone, otherwise they don't bother with anything > more than threatening letters. Profitable - or something else for the company to gain. Yes, I agree. But it isn't always for profit. It could, for instance, be for intellectual rights. Or something. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 10 16:39:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA75510 for dynarec-outgoing; Thu, 10 Aug 2000 16:39:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000810164705.007f7490@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 10 Aug 2000 16:47:05 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: So quiet ... In-Reply-To: <007401c00325$8ff2c820$0100a8c0@lion> References: <3.0.5.32.20000810134648.007f9100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yah, but have you seen law students? Loads of them are female! I mean... >okay, they might not be so interesting once they've left Uni but... ;) It's like the movie Species. You think they're real women. But you never know... >Who remembers the good old sites like Node99? Archaic Ruins? And Daves Video >Classics when it was on his Uni server? Or that SNES emulator - that could >only do 4 colours? Or... *gasp*... the first MAME? Or the first EMU? Yep, I >remember all of these things. Why? Quite possibly because I'm sad. :)) I heard about console emulation in '97, and the first emulators I played were NESticle and Genecyst (I was amazed to say the least). I didn't really write one until a long time afterwards. >Speaking of which, I'm getting to be eager to do the 68K emulator. I want to >start on that in about... 4 weeks. Which, cunningly, is the time when I >should be back in the UK. Then hopefully me and Andrew can make a start on >our System16/24 emulator (System 24 is *still* not emulated properly!) and >get that done. And maybe look at emulating something like MK2/MK3 at a >reasonable speed. But maybe not - I don't actually like those games. :) Speaking of bloody fighting games, has anyone reading this ever played BloodStorm by Strata? I recall a huge preview in EGM many years ago (1994) and the game looked awesome. I don't think it's emulated. I'd love to see if it is worth playing it, so if anyone see's any ROMs or tech-info, lemme know ;) It's kind of obscure, I think it's from the makers of Time Killers so there's the chance that the controls might REALLY suck. Time Killers was an awful seething piece of crap. >From what I know, BloodStorm's buttons include: Front Arm, Back Arm, Front Leg, Back Leg Sounds pretty cool. >Now what would be funny would to write the Gameboy Advance emulator - and >release it - before Nintendo release the actual thing. Come on, that'd be >funny. Yeah, it wouldn't be a nice thing to do. But it *would* be funny. :) I'd love to see that happen :) The ARM processor used should be quite easy to emulate, the graphics hardware might be tougher, and I bet it's got loads of weird crap going on (doesn't it have built-in cellphone functionality?) and maybe even protection mechanisms... so those would pose problems. If I could get a hold of the info and if it looked easy enough, I'd consider taking a stab at it. But I'm busy enough as it is with the Sega CD and my little 68K core (I'm about to finally muster up the time to emulate the first instruction) :P Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 10 21:51:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA75736 for dynarec-outgoing; Thu, 10 Aug 2000 21:51:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000810215916.007f9a00@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 10 Aug 2000 21:59:16 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: So quiet ... In-Reply-To: References: <3.0.5.32.20000810134648.007f9100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I've never heard of "The Scribe" and I've been around in emulation since >early '96. Hehe, I didn't hear of him until last year with that "sega32x" emulator which got canned. The Scribe posted some legal warning on the emulator site's message board. >That's egotistical. It's one thing to have an ego and some successes to >back it up, and yet another thing to have none. I semi-sorta left the >emulation "scene" because of the MAME steamroller. I didn't agree with its >design philosophy nor implementation and still don't on the grand scheme >of things (though to their credit it is getting better) so I did my own >thing. Great educational experience. I don't use MAME, it's enormous and sluggish on my machine. What exactly was it though that you didn't like about their philosophy? I've never really had the interest to look into how the driver system really works. I guess I'd be a lot happier with MAME if I had a GHz machine ;) Oh, BTW, I got around to implementing Aaron Giles' disassembler (haven't tested it exactly, I just got it to compile into my 68K debugger today) but it has caused an unusual problem... I made a simple batch file called make.bat since I only had one source file to compile (debug.c) and 2 to link in (disasm.o ../gen68k.o) but when I run the debugger for the first time after it has been built, Genital68KReset() returns an error. But if I run it a second time, it works fine, and continues working fine until I recompile. I modified the make.bat to compile disasm.c (instead of just linking in disasm.o) and that fixes the problem, but as soon as I try going back to linking in disasm.o things go screwey again. It seems a lot like something is causing the context or some other structure to get packed incorrectly, but the assert(Genital68KGetContextSize() == sizeof(context)) hasn't caught anything of that nature yet. I have a little test.c in my 68K emulator directory which I used to use for rudimentary testing, I tried linking disasm.o in to that, and it didn't affect it -- which seems to point at my debugger being the problem. But the debugger only sets up the context, initializes and resets the CPU, and prints the initial PC and SP. I've combed it, and I've even implemented it virtually the exact same way that I did with test.c, but the problem lingers... it has to be something with the debugger and djgpp... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 10 22:28:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA75771 for dynarec-outgoing; Thu, 10 Aug 2000 22:28:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 10 Aug 2000 22:47:46 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: So quiet ... In-Reply-To: <3.0.5.32.20000810215916.007f9a00@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >emulation "scene" because of the MAME steamroller. I didn't agree with its > >design philosophy nor implementation and still don't on the grand scheme > >of things (though to their credit it is getting better) so I did my own > I don't use MAME, it's enormous and sluggish on my machine. What exactly > was it though that you didn't like about their philosophy? *DESIGN* Philosophy. Well, where do I start? * Lack of optimization. As an example *EVERYTHING* goes through DrawGfx(), and it's a huge piece of code. Why not special cases for those things that don't need it? And on average runs 2X-5X slower than Retrocade and HiVE. Even after rewriting some of the CPU cores in assembly, it only got 20-30% faster. It shows major architecture weakness in the performance arena. * Organization of "drivers" (Gawd, I hate that name for it). You'll have to go through anywhere from 1 to 3 different subdirectories looking for the "driver" components that are used. Without grep, you're toast. They could be centralized in one place. And the definitions of everything are awkward. * Inconsistent naming, #defines confusing because they're not always upper case, excessive use of "int" and other horrible variable declarations, lack of specific structures for some functions. * Up until recently, the sound core didn't do the mixing. They actually believed that hardware mixing would be faster and consistently had problems with clipping. Dunno if they still do. * CPU Interleaving is VERY tough to do tightly and accurately. You have to use these weird timers to have calls back into the CPU cores to stop execution. You wouldn't believe how much hell it created when Major Havoc needed to be emulated and tight CPU interleaving wasn't possible. * The interrupt design is strange, too. Instead of having the main execution loop drive NMIs, the internal execution loop in each CPU core calls an interrupt/NMI handler every so often to see if one should occur. * Lack of "built in" regular events, like NMI/INTs, in the execution queue. You're forced to use timers, which are arrays of timers rather than a linked list of them. * *POLLED* Controller input. * Lack of centralized "driver" initialization - user defined that is, or an easy way to get at "driver" used variables in an organized fashion (to restore, as an example). * Sound is the "stop every once in a while and push sound out the port" approach. This has a major bad side effect of causing clipping/popping and repeating when it runs a little low on speed and can't shove the data out of the buffer fast enough. A separate thread sucking audio (or OS API callbacks) would be much better. I've seen "progressions" over the years. The typical programming attitude for a lot of MAME is to beat it in to shape rather than to design it, and I've met with rejection so many times with the MAMEDEV team that I've stopped giving them input. I did help out advice and optimization-wise in the x86 emulator cores, the 68K and Z80 cores specificially. > Oh, BTW, I got around to implementing Aaron Giles' disassembler (haven't > tested it exactly, I just got it to compile into my 68K debugger today) but > it has caused an unusual problem... > > I made a simple batch file called make.bat since I only had one source file > to compile (debug.c) and 2 to link in (disasm.o ../gen68k.o) but when I run > the debugger for the first time after it has been built, Genital68KReset() > returns an error. But if I run it a second time, it works fine, and > continues working fine until I recompile. Uninitialized variable? Trashed register? Sounds like you've got a bug in your code and the disassembler is acting as a catalyst. -->Neil ------------------------------------------------------------------------------- Neil Bradley "If ignorance is bliss, you must be orgasmic." - Me Synthcom Systems, Inc. ICQ # 29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 10 23:55:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA75841 for dynarec-outgoing; Thu, 10 Aug 2000 23:55:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008110705.JAA06030@pons.ac.upc.es> Subject: Re: DYNAREC: So quiet ... In-Reply-To: <3.0.5.32.20000810134648.007f9100@powernet.net> "from Bart at Aug 10, 2000 01:46:48 pm" To: dynarec@dynarec.com Date: Fri, 11 Aug 2000 09:05:20 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yeah, it's a good document, but it's too wordy for my liking. Wordiness is > okay for reak literature, but for informative documents, I think a > down-to-the-point approach is better. Some of the things in there that take > up a couple paragraphs could be summed up in one or 2 sentences. > He could try to sell it on book shops. ;) > >more!! - as Neil ;) > > I've noticed The Scribe's ego too... I think it's quite overinflated. I > recall the big deal he made about "leaving the scene". He said the "scene" > was mature enough to the point that it did not need his "guiding hand" > anymore, and he could "fade away" or some crap like that. > I don't think there is anyone guiding the "scene" it has been, it is and it will be a caothic bunch of coders, romers and lamers ;) The only think that is happening now is that finally the companies (big and small) are getting into emulation (and I don't think this is a good new, but perhaps neither as bad ...) and some people is beginning to earn some money from emulation. > Maybe I'm just ignorant... but I don't think he's really done anything. The > people who have really done interesting things with emulations are the > coders. I've never had to consult the EmuFAQ, I've never cared to browse > through the G3O, and I don't care about "SegaBase" :) > Neither I have ... it isn't related with emulation programming that is my real interest. In any case. for my project and for learning it is interesting to see other point of view of emulation. Althought it is false or I don't agree with it. > >document. Very well written and documented. I think it makes > >the worth to read it. > > It may be beneficial to know the law in this area, but I personally don't > worry about legal stuff at all. I doubt if I screw up I'm going to be taken > to court, I'll probably get warned and flamed by any company I offend. I > think legal considerations with emulation as a hobby boil down to one thing: > > Use common sense ;) > Wise words. ;) > Legalities involved with big-attention commercial emulators like bleem! and > VGS are more serious, but those emulators are in a league of their own... > My opinion: there is a new market that big companies have continually ignored for many years so small companies has taken profit ... Fuck to big companies, hail to the new ones. It just the very same story of ever and it is boring. I don't care. I only want to code and learn. > I hear programming documentation for the Gameboy Advance is available, I'm > not sure how intimate it is, but I did hear this from a console developer. > Someone should get to emulating it, for no other purpose than to really > piss Nintendo off ;) Imagine what they'd do if they found out about a GBA > emulator only a couple months or so after the system was released in Japan... > That is *REALLY* interesting. ;) Do you know where I could get some documentation? And me leaving today ... In any case it is only for fun I won't have the time for do nothing ... Or I could do the emu for my project. ;) He,he,he that could be fun and absolutely illegal university project! ;)) > > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 00:04:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA75862 for dynarec-outgoing; Fri, 11 Aug 2000 00:04:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008110714.JAA32221@pons.ac.upc.es> Subject: Re: DYNAREC: So quiet ... In-Reply-To: "from Neil Bradley at Aug 10, 2000 02:14:47 pm" To: dynarec@dynarec.com Date: Fri, 11 Aug 2000 09:14:24 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > also have showed me that The Scribe (Sam) has as ego - or even > > >more!! - as Neil ;) > > I've noticed The Scribe's ego too... I think it's quite overinflated. I > > I've never heard of "The Scribe" and I've been around in emulation since > early '96. > I have never heard until I get into the Eidolon Tavern either ... > > It may be beneficial to know the law in this area, but I personally don't > > worry about legal stuff at all. I doubt if I screw up I'm going to be taken > > to court, I'll probably get warned and flamed by any company I offend. I > > think legal considerations with emulation as a hobby boil down to one thing: > > The one thing that everyone seems to forget is that it must be > *PROFITABLE* to sue someone, otherwise they don't bother with anything > more than threatening letters. > Profitable? Yes it the same I think here, but not only related with emulation. A word about piracy (software, music, jeans and whatever). I hate the companies (or the artificial association they build to fight against piracy) which say they have lost XXX billions with piracy. False, you can't lose something that has never been yours and will never be. I don't (or I didn't) buy original software because it is far more expensive than what I can pay. It doesn't matter I won't use piraced software because I won't be able of buy legal. When I can/could buy something I buy. I bought many games where they were still (in the old times) in a reasonable price. I haven't heart of anyone (here in Spain) that has been jailed because of copy music in cassettes or to copy games for their own use. The only ones that has been jailed are the ones who create their own bussiness selling piraced software. In any case they should have to jail almost everyone here then. ;) > -->Neil > > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 00:07:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA75875 for dynarec-outgoing; Fri, 11 Aug 2000 00:07:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008110717.JAA27520@pons.ac.upc.es> Subject: Re: DYNAREC: So quiet ... In-Reply-To: <007401c00325$8ff2c820$0100a8c0@lion> "from Neil Griffiths at Aug 11, 2000 00:31:02 am" To: dynarec@dynarec.com Date: Fri, 11 Aug 2000 09:17:34 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Nope, the people who own those sites and say things like that certainly have > their heads up their respective (or maybe not respectively!) arses. > > Who remembers the good old sites like Node99? Archaic Ruins? And Daves Video > Classics when it was on his Uni server? Or that SNES emulator - that could > only do 4 colours? Or... *gasp*... the first MAME? Or the first EMU? Yep, I > remember all of these things. Why? Quite possibly because I'm sad. :)) > Ah! The old good times. ;)) I also remember that VSMC and the old sites. > Speaking of which, I'm getting to be eager to do the 68K emulator. I want to > start on that in about... 4 weeks. Which, cunningly, is the time when I > should be back in the UK. Then hopefully me and Andrew can make a start on > our System16/24 emulator (System 24 is *still* not emulated properly!) and > get that done. And maybe look at emulating something like MK2/MK3 at a > reasonable speed. But maybe not - I don't actually like those games. :) > I won't help in the next 2 weeks, I will be on holiday. ;) Good, a new emulator!! And a speedy one. ;) > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 01:56:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA75967 for dynarec-outgoing; Fri, 11 Aug 2000 01:56:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008110905.LAA24036@pons.ac.upc.es> Subject: DYNAREC: New tech doc site? To: dynarec@dynarec.com Date: Fri, 11 Aug 2000 11:05:40 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I usually only get old news but anyway ... I read today in Daves' about a new site devoted to store technical documentation about emulation. http://etc.home.dhs.org/index.html It's called Emulation Technical Centre (E.T.C.). I took a look and ... it was empty, damn! ;) But the site seems been up since only a few days so I hope it will get more info soon (when I return maybe ;). It's made by Neil's competence: Richard Mitton the author of RAZE Z80 emulator. ;) Ummm ... I have taken a hyperfast look up on RAZE's code and uses assembler and macros. Not bad but I now think that the emiter approach is far better than macros. Neil, do you agree with that? ;) [...] For a faster, (although possibly less accurate), emulator, why not try Neil Bradley's excellent MZ80? [...] I hope this means we will have again a working (not abandoned as EPR) site with technical documentation. He demands helps also, and it has a section (empty, as all others ;) about dynarec. MIKe could post him the actual version of DRFAQ. And perhaps I could post the SI docs too. Neither of them are finished but what the ... Yes, a "Theory section", we really should have to contribute there. ;) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 02:08:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA76141 for dynarec-outgoing; Fri, 11 Aug 2000 02:08:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 11 Aug 2000 02:27:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New tech doc site? In-Reply-To: <200008110905.LAA24036@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > It's made by Neil's competence: Richard Mitton the author > of RAZE Z80 emulator. ;) > Ummm ... I have taken a hyperfast look up on RAZE's code and > uses assembler and macros. Not bad but I now think that the > emiter approach is far better than macros. The problems with the macro approach is as follows: * It's hard to spot bugs when your macros aren't "expanded" * You're bound to use the assembler that uses the macros I had actually written a macro based Z80 core a while ago and stopped doing it for those reasons. > [...] > For a faster, (although possibly less accurate), emulator, why not try Neil > Bradley's excellent MZ80? > [...] No, I don't agree with that. He claims it's less accurate with absolutely no proof to back it up. There's proof in the opposite direction, though - many Genesis emulators can run sound on games that RAZE can't. Basically, it got back to me that he was shitting all over mz80 and telling everyone how lousy it was and how "inaccurate" it was (and I had never spoken a word to him). Little did he know he was running around with an ancient, early version of mz80 and hadn't bothered to download the latest, and even when I pointed that out to him and he examined the new mz80, no apology or retort at all. Except for a stupid one liner in RAZE that says something like "I'm sorry for all the things I said, Neil (mostly)". WTF Is with that? Plus, with RAZE he took a lot of my ideas and incorporated them into his own emulator core. That I don't mind, but then he has the gall to put up that comment even after I helped him debug his core and asked him to take it down and substantiate his "less accurate" claim. So you can see why I have animosity toward him and his "site", and I'd request that we don't contribute to his little world. > I hope this means we will have again a working (not abandoned as EPR) > site with technical documentation. This site has been up for 1.5 months and doesn't look like it has been updated. > about dynarec. MIKe could post him the actual version of DRFAQ. And > perhaps I could post the SI docs too. Neither of them are finished > but what the ... Yes, a "Theory section", we really should have to > contribute there. ;) Nah. Let's leave it on dynarec.com. ;-) At least I won't go behind your guys' backs and shit all over you. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 02:28:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA76163 for dynarec-outgoing; Fri, 11 Aug 2000 02:28:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200008110937.LAA32009@pons.ac.upc.es> Subject: Re: DYNAREC: New tech doc site? In-Reply-To: "from Neil Bradley at Aug 11, 2000 02:27:41 am" To: dynarec@dynarec.com Date: Fri, 11 Aug 2000 11:37:50 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > [...] > > For a faster, (although possibly less accurate), emulator, why not try Neil > > Bradley's excellent MZ80? > > [...] > > No, I don't agree with that. He claims it's less accurate with absolutely > no proof to back it up. There's proof in the opposite direction, though - > many Genesis emulators can run sound on games that RAZE can't. Basically, > it got back to me that he was shitting all over mz80 and telling everyone > how lousy it was and how "inaccurate" it was (and I had never spoken a > word to him). Little did he know he was running around with an ancient, > early version of mz80 and hadn't bothered to download the latest, and even > when I pointed that out to him and he examined the new mz80, no apology or > retort at all. Except for a stupid one liner in RAZE that says something > like "I'm sorry for all the things I said, Neil (mostly)". WTF Is with > that? > It isn't a polite actitude ... Are just my feeling or a number of emu authors are too egocentric? I can't understand so many fights and words one against others. I know you Neil and I know you are a fair guy, but I don't know how Richard is (I'm biased). I'm sorry but I think I have heart too much talk about all other guys being against your thoughts. I can't accept you are so biased (neither lying!!) but I can't either believe that everyone out there is just a jerk! (althought I'm afraid it could be). Perhaps you should talk also about the good guys sometime ... > Plus, with RAZE he took a lot of my ideas and incorporated them into his > own emulator core. That I don't mind, but then he has the gall to put up > that comment even after I helped him debug his core and asked him to take > it down and substantiate his "less accurate" claim. > Perhaps you are always hiting with the bad guys. ;) Or that you don't talk about the good ones. :) > So you can see why I have animosity toward him and his "site", and I'd > request that we don't contribute to his little world. > I didn't know anything from that sorry. :( > > I hope this means we will have again a working (not abandoned as EPR) > > site with technical documentation. > > This site has been up for 1.5 months and doesn't look like it has been > updated. > It was updated two days ago with some doc about NEC procs (sega model 2 procs). > > about dynarec. MIKe could post him the actual version of DRFAQ. And > > perhaps I could post the SI docs too. Neither of them are finished > > but what the ... Yes, a "Theory section", we really should have to > > contribute there. ;) > > Nah. Let's leave it on dynarec.com. ;-) At least I won't go behind your > guys' backs and shit all over you. ;-) > Anyway I think a working site with technical doc is needed. EPR is too outdated. I don't care if it will Richard page in dynarec or any other place. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 02:42:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA76186 for dynarec-outgoing; Fri, 11 Aug 2000 02:42:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 10 Aug 2000 22:43:49 -0700 (PDT) From: X-Sender: tarquin@cx83476-a.irvn1.occa.home.com To: dynarec@dynarec.com Subject: Re: DYNAREC: New tech doc site? In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Nah. Let's leave it on dynarec.com. ;-) At least I won't go behind your > guys' backs and shit all over you. ;-) > > -->Neil John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 10:55:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA76585 for dynarec-outgoing; Fri, 11 Aug 2000 10:55:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 11 Aug 2000 11:15:03 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New tech doc site? In-Reply-To: <200008110937.LAA32009@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > when I pointed that out to him and he examined the new mz80, no apology or > > retort at all. Except for a stupid one liner in RAZE that says something > > like "I'm sorry for all the things I said, Neil (mostly)". WTF Is with > > that? > It isn't a polite actitude ... Are just my feeling or a number of > emu authors are too egocentric? Lots are, unfortunately, and what I've noticed after analyzing it is that it's mostly the console emulator guys. I've found the arcade emulator team to be far more polite - most likely because of the age demographic. > I can't understand so many fights > and words one against others. I can in a way. First of all, there's the unappreciative crowd. You can do tons of work on an emulator, get 1000 messages of praise, and you get that one message where someone is just a whiny shit. When I released Retrocade there were several NASTY people who were down on Retrocade just for the sake of being down on it. That tends to make emulator authors a bit jaded. Secondly, the emulator authors that are "jerks" are almost always the ones who are the most social. The odds of a social butterfly butting heads with others is quite high. The ones who don't speak to others are less likely to have a stereotype along with them. Thirdly, as I posted before, a *LOT* of the egocentric authors that I knew were fairly young. Not that this is necessarily a bad thing, but the younger people are, the more argumentative they tend to be (it was certainly the case with me and still is to some extent) Fourthly, email is a horrible communication medium. I've seen flamewars and downright rudeness to people that wouldn't occur if they were face to face conversations. There's so much left out of the communication process when dealing with email. Fifthly, not everyone's native language is English, so a lot of times ego comes across when there really is none. Sixthly, sometimes emulator authors will treat you like shit until you have proven your worth to them that you're not some idiot. Believe me, there are LOTS of morons out there with some wild ideas on how (not) to do emulation. Though over the years, I've learned to accept the expression "never argue with a fool. People might not know the difference." Seventhly, when you have a success under your belt, this builds confidence and ego. Confidence comes across as arrogance and egotism to the average passer-by. If I initially see someone as arrogant, I watch them for a while to find out if it's just confidence or genuine arrogance. As an example, lots of people thought Sardu was egotistical. I never thought so - very sharp guy, but a very low tolerance for stupidity. Lastly, just so you know, my opinions of people aren't formed off just one message. It takes a while for me to label someone. Personally, I see the world as a black and white place. By the time I bring something up, I've been down 200 paths already, and it's frustrating to have to go back and reexplain the same thing over and over. This makes me come off like a total jerk. I have this problem at work, too, where I spent most of my time tripping over other people's lack of attentiveness. And if you think you've seen egos with emulator authors, it's nothing compared to some of the unjustified egocentric tools we have at work. And ego comes across when frustration is at its peak. As an example, the only direct experience with Marat I've had was an ICQ of a gathering of emulator authors. He was the only one who started and continued an argument, and subsequently spin doctored his statements when he was technically cornered. I've observed email exchanges with him and other NES developers where all he did was just throw a wrench into the discussion. I recall one such thing where a mapper problem was trying to be solved and all he did was dig for excuses on why something wouldn't work - and some of the excuses were ridiculous. He had *NO* interest in trying to help out. It was really, really weird, and I have no explanation for it. Note that the above are explanations - not excuses... > I know you Neil and I know you are a fair guy, but I don't know > how Richard is (I'm biased). All I knew is that someone (Richard Mitton) with whom I never had a single conversation was badmouthing mz80 badly, it got back to me, and I emailed the basher directly to find out what his issues were. He released RAZE about a month later, so it explained his anti-MZ80 behavior. Even after that and his little comment on his web site, I *STILL* helped him with RAZE, but he further refused to eliminate his comments against MZ80 on his web site. It used to say "For a faster but less accurate emulator, why not try MZ80?". He changed it to "For a faster (but possibly) less acurate emulator why not try Neil Bradley's excellent MZ80?". So this wasn't just a random chance thing. I think internally he realized he made a bad mistake and this is the way he saves face. Geez. > I'm sorry but I think I have heart too > much talk about all other guys being against your thoughts. I don't know what you mean by this. > I can't > accept you are so biased (neither lying!!) but I can't either believe > that everyone out there is just a jerk! (althought I'm afraid it > could be). Perhaps you should talk also about the good guys sometime > ... You know how the old saying goes - the only time someone says anything is when there's something wrong. Sadly, most of the emulator authors that I consider to be good guys are either inactive (due to the MAME effect) or I don't associate any longer because we're not working on emulation. But I'll list a few. Aaron Giles - MAMEDEV Guy. All around very smart, sharp, polite, friendly, and as apolitical as you can get. Lots to learn from him and his attitude. Larry Bank - Author of HiVE. Smart as hell. Optimization centric. Loves friendly competition. VERY Personable. Microsoft pitted him and I against eachother last year and we were both distressed because neither of us wanted to compete against one another, so we did a switcheroo - we teamed up. ;-) There's a *LONG* story with this one... Richard Bush - Great guy. Good at taking and giving suggestions. Fairly quiet. All the other good guys I absorbed into the Retrocade team, and none are actively doing emulation. > > that comment even after I helped him debug his core and asked him to take > > it down and substantiate his "less accurate" claim. > Perhaps you are always hiting with the bad guys. ;) Or that you > don't talk about the good ones. :) In this case, the bad guy hit me first. What a way to get an impression of someone. ;-( -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 10:56:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA76595 for dynarec-outgoing; Fri, 11 Aug 2000 10:56:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 11 Aug 2000 11:15:31 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New tech doc site? In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Nah. Let's leave it on dynarec.com. ;-) At least I won't go behind your > > guys' backs and shit all over you. ;-) > John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS > Author of XtraWeapons (except the homing missile, eject, and throwing axe) > Stanknes forever http://www.parodius.com/~tarquin > Real Programmers think better when playing Adventure or Rogue. Um... nothing actually came through but your .sig, John. What happened? -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 10:59:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA76607 for dynarec-outgoing; Fri, 11 Aug 2000 10:59:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000811110622.007fd960@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 11 Aug 2000 11:06:22 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: So quiet ... In-Reply-To: References: <3.0.5.32.20000810215916.007f9a00@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >* Organization of "drivers" (Gawd, I hate that name for it). You'll have >to go through anywhere from 1 to 3 different subdirectories looking for >the "driver" components that are used. Without grep, you're toast. They >could be centralized in one place. And the definitions of everything are >awkward. Genital's "driver" system is 50X worse ;) Of course, they aren't drivers, I just call them that. I kind of just made separate directories for Genesis, Sega CD, and 32X and it works out pretty good, but there are inter-driver dependencies within the drivers (I never intend on emulating more than those systems, and they're pretty much inseparable components) and within the CPU core abstraction code... it's nasty, but it suits me well, it is MUCH better than having it all mixed together completely. >* The interrupt design is strange, too. Instead of having the main >execution loop drive NMIs, the internal execution loop in each CPU core >calls an interrupt/NMI handler every so often to see if one should occur. That sounds odd. Marat's cores have an odd interrupt system too IIRC, a couple of weird functions, or it may have been the execution code, I forget. >* *POLLED* Controller input. a.k.a. That which apparently _really_ pisses Neil off ;) I know polling sucks up time, though. I just hook int 0x9 under DOS for the actual emulated controls. If a key is pressed which does not correspond to any of the controls, it is stored in a 1-byte buffer and the main loop checks the buffer once emulation of the current frame is done to see if it should be handled with a switch ().... save/load state, quit, debug, graphics modes keys, etc. >I've seen "progressions" over the years. The typical programming attitude >for a lot of MAME is to beat it in to shape rather than to design it, and >I've met with rejection so many times with the MAMEDEV team that I've >stopped giving them input. I did help out advice and optimization-wise in >the x86 emulator cores, the 68K and Z80 cores specificially. MAME has grown so huge that it I think it would be a major undertaking to overhaul it completely, perhaps they're afraid of that? >Uninitialized variable? Trashed register? Sounds like you've got a bug in >your code and the disassembler is acting as a catalyst. Ugh! I'm such a moron. It turns out I was forgetting to set the fetch region of my context. I can't BELIEVE I made this retarded mistake :P I combed my context set up code and didn't find it until this morning. Works great now. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 11:06:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA76627 for dynarec-outgoing; Fri, 11 Aug 2000 11:06:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 11 Aug 2000 11:25:53 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: So quiet ... In-Reply-To: <3.0.5.32.20000811110622.007fd960@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >* The interrupt design is strange, too. Instead of having the main > >execution loop drive NMIs, the internal execution loop in each CPU core > >calls an interrupt/NMI handler every so often to see if one should occur. > That sounds odd. Marat's cores have an odd interrupt system too IIRC, a > couple of weird functions, or it may have been the execution code, I forget. Guess what MAME used as its initial CPU emulator? ;-) > >* *POLLED* Controller input. > a.k.a. That which apparently _really_ pisses Neil off ;) I know polling > sucks up time, though. I just hook int 0x9 under DOS for the actual > emulated controls. If a key is pressed which does not correspond to any of > the controls, it is stored in a 1-byte buffer and the main loop checks the > buffer once emulation of the current frame is done to see if it should be > handled with a switch ().... save/load state, quit, debug, graphics modes > keys, etc. Why not have it directly modify the variables that contain the key state, or better yet, modify the RAM at the location where the controls are? Polling for controllers is something we've been trying to get away from for 20 years now. Even with modern day hardware, people are *STILL* doing it! > >stopped giving them input. I did help out advice and optimization-wise in > >the x86 emulator cores, the 68K and Z80 cores specificially. > MAME has grown so huge that it I think it would be a major undertaking to > overhaul it completely, perhaps they're afraid of that? A lot of this stuff was found years ago, back when it was much smaller. Dunno, I don't give a rat's ass how big a project is. If it's needs rearchitecting, it gets rearchitected. I'd rather go to sleep at night knowing I did something right. Putting out something you know is badly coded is the same as lying. > >Uninitialized variable? Trashed register? Sounds like you've got a bug in > >your code and the disassembler is acting as a catalyst. > Ugh! I'm such a moron. It turns out I was forgetting to set the fetch > region of my context. I can't BELIEVE I made this retarded mistake :P I > combed my context set up code and didn't find it until this morning. Works > great now. Yeeeuch.... That's nasty! -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 11:18:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA76643 for dynarec-outgoing; Fri, 11 Aug 2000 11:18:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000811112617.007ffc70@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 11 Aug 2000 11:26:17 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: New tech doc site? In-Reply-To: References: <200008110937.LAA32009@pons.ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Lots are, unfortunately, and what I've noticed after analyzing it is that >it's mostly the console emulator guys. I've found the arcade emulator team >to be far more polite - most likely because of the age demographic. Depends on which consoles. The NES emulator community is the worst of them all, followed by the other Nintendo systems I believe. Good thing I'm biased against Nintendo ;) I don't know how it is with Sega 8-bit systems, but w/ Sega 16-bit and above, the people are very friendly and I have yet to meet a sour apple. Of course, there aren't very many of these projects around, not like the 10,000 NES or N64 emulators, so there isn't any room for antics. >First of all, there's the unappreciative crowd. You can do tons of work on >an emulator, get 1000 messages of praise, and you get that one message >where someone is just a whiny shit. When I released Retrocade there were >several NASTY people who were down on Retrocade just for the sake of being >down on it. That tends to make emulator authors a bit jaded. Someone wished I would die because I said I didn't like Nintendo. Hehe, it was kind of amusing ;) >Fourthly, email is a horrible communication medium. I've seen flamewars >and downright rudeness to people that wouldn't occur if they were face to >face conversations. There's so much left out of the communication process >when dealing with email. It's the same with any electronic medium. Message boards, IRC, even web sites. I think what it could be, especially with younger people, is the desire for popularity or something. It seems they use the internet for gaining respect, because it is easier for them than to do it in real life for various reasons. I'm sure many of these people would be annoying, boring, shy, and uninteresting in reality -- and I bet they know it. But that's no excuse for being a jerk. Not in my book. >Personally, I see the world as a black and white place. By the time I >bring something up, I've been down 200 paths already, and it's frustrating >to have to go back and reexplain the same thing over and over. This makes >me come off like a total jerk. I have this problem at work, too, where I >spent most of my time tripping over other people's lack of attentiveness. >And if you think you've seen egos with emulator authors, it's nothing >compared to some of the unjustified egocentric tools we have at work. And >ego comes across when frustration is at its peak. Leggo' my ego! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 11:30:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA76662 for dynarec-outgoing; Fri, 11 Aug 2000 11:30:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000811113748.007fc3b0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 11 Aug 2000 11:37:48 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: So quiet ... In-Reply-To: References: <3.0.5.32.20000811110622.007fd960@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Why not have it directly modify the variables that contain the key state, >or better yet, modify the RAM at the location where the controls are? That's what it's doing. The interrupt handler will trap the Genesis controls: Up, Down, Left, Right, A, B, C, Start and directly modify the control struct I have going. I used to modify the rest of the non-control related stuff with the handler as well, but it wasn't pretty, and got complaints from Atani (who was doing the Genital32 port) and Joe Groff (who did the never released SDL port). I opted to move that to the main loop. It practically makes no difference, except that it's cleaner. Calling the big functions, such as the save state functions, isn't the kind of thing to put in an int 0x9 handler anyway ;) It caused a lot of problems when I tried ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 13:12:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA76745 for dynarec-outgoing; Fri, 11 Aug 2000 13:12:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 11 Aug 2000 13:31:43 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New tech doc site? In-Reply-To: <3.0.5.32.20000811112617.007ffc70@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Lots are, unfortunately, and what I've noticed after analyzing it is that > >it's mostly the console emulator guys. I've found the arcade emulator team > >to be far more polite - most likely because of the age demographic. > Depends on which consoles. The NES emulator community is the worst of them > all, followed by the other Nintendo systems I believe. Good thing I'm Yeah, I agree. That's what I've noticed, too. But then again, they're in the late teens early 20's age group. ;-) > biased against Nintendo ;) I don't know how it is with Sega 8-bit systems, > but w/ Sega 16-bit and above, the people are very friendly and I have yet > to meet a sour apple. Of course, there aren't very many of these projects > around, not like the 10,000 NES or N64 emulators, so there isn't any room > for antics. Yes, I've found Genesis authors to be quite cool overall. > >where someone is just a whiny shit. When I released Retrocade there were > >several NASTY people who were down on Retrocade just for the sake of being > >down on it. That tends to make emulator authors a bit jaded. > Someone wished I would die because I said I didn't like Nintendo. Hehe, it > was kind of amusing ;) I don't like Nintendo either. I have zero respect for a company who just recycles the same game ideas over and over again. That, and their sue happy attitude makes me hate them even more. Same deal with Disney. They haven't had an original idea in a decdade, and now they're just a money grubbing POS company. > I think what it could be, especially with younger people, is the desire for > popularity or something. It seems they use the internet for gaining > respect, because it is easier for them than to do it in real life for > various reasons. Security perhaps? The insecure tend to irrationally lash out at everyone and everything. > I'm sure many of these people would be annoying, boring, shy, and > uninteresting in reality -- and I bet they know it. Or they don't... ;-) > But that's no excuse for being a jerk. Not in my book. Agreed. -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 13:26:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA76764 for dynarec-outgoing; Fri, 11 Aug 2000 13:26:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 11 Aug 2000 13:45:28 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: So quiet ... In-Reply-To: <3.0.5.32.20000811113748.007fc3b0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Why not have it directly modify the variables that contain the key state, > >or better yet, modify the RAM at the location where the controls are? > That's what it's doing. > The interrupt handler will trap the Genesis controls: Up, Down, Left, > Right, A, B, C, Start and directly modify the control struct I have going. Or what you could instead do is just modify the emulated memory locations where the game's controllers are mapped. I did something like this: while (bNoMenuKeyHit) { ... do emulation here ... } So when they hit any of the emulator specific keys, it'd bounce out of the loop, and not a single cycle would be wasted polling for > I used to modify the rest of the non-control related stuff with the handler > as well, but it wasn't pretty, and got complaints from Atani (who was doing > the Genital32 port) and Joe Groff (who did the never released SDL port). I Why did they complain? Windows has its own message loop. Works great under WinRetrocade. BTW, Why do people insist on putting "32" when they mean Windows? Calling it WinGenital would make far more sense. > opted to move that to the main loop. It practically makes no difference, > except that it's cleaner. I wouldn't have put the non-control related stuff in the loop in the first place. It's not that way in Retrocade. HAving it modify the regions directly does not require the UI code to be foricbly moved in to the main execution loop. > Calling the big functions, such as the save state functions, isn't the kind > of thing to put in an int 0x9 handler anyway ;) It caused a lot of problems > when I tried ;) I wasn't recommending that you should. Only the realtime game controls do any modification. -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 17:31:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA76946 for dynarec-outgoing; Fri, 11 Aug 2000 17:31:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003a01c003fd$e9da9740$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: New tech doc site? Date: Sat, 12 Aug 2000 02:29:54 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Yeah, I agree. That's what I've noticed, too. But then again, they're in > the late teens early 20's age group. ;-) Hey, leave that age group alone! I turned 21 last month... ;) > Yes, I've found Genesis authors to be quite cool overall. So have I actually. One of the coolest guys I spoke to for any length of time was Steve Snake (KGEN). He was cool. Never spoke to Sardu - but I did speak to the guy who wrote Genem (can't remember his name but I think it began with a "M") - he also seemed quite nice. And I've spoken to you, Bart, and you're okay too. ;) > I don't like Nintendo either. I have zero respect for a company who just > recycles the same game ideas over and over again. That, and their sue > happy attitude makes me hate them even more. Same deal with Disney. They > haven't had an original idea in a decdade, and now they're just a money > grubbing POS company. I can understand the deal with Nintendo - but you shouldn't hate Disney. Remember, they showed France to have evil people, people living in sewers, no fire control - and a strange sort of voodoo that causes statues to come to life and talk, dance and sing. And gypsies - white trash, you could say. ;)) > Security perhaps? The insecure tend to irrationally lash out at everyone > and everything. No we don't! No we don't! You're wrong! Everything you say is wrong! We hate you! ;)) > > I'm sure many of these people would be annoying, boring, shy, and > > uninteresting in reality -- and I bet they know it. > > Or they don't... ;-) Hehehe! What you ought to do is to take them out somewhere, get them drunk (quick and easy because they'll be young and guaranteed to have not had too much alcohol before) and lock them up. Then, when they sober up, you can preach to them the error of their ways. ;) I'm in a strange mood tonight. I'm blaming it on the generous amounts of medication I've taken today. :)) -- "Everyone agrees that 90% of all techno is crap, but no one can agree on which 10% is good." I like this sig, Neil. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 18:27:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA76999 for dynarec-outgoing; Fri, 11 Aug 2000 18:27:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000811183509.007fd8b0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 11 Aug 2000 18:35:09 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: So quiet ... In-Reply-To: References: <3.0.5.32.20000811113748.007fc3b0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Why did they complain? Windows has its own message loop. Works great under >WinRetrocade. Because back then I had everything in the interrupt handler in assembly, it was pretty gruesome ;) >BTW, Why do people insist on putting "32" when they mean Windows? Calling >it WinGenital would make far more sense. Good question. I don't like the "32" either. >I wouldn't have put the non-control related stuff in the loop in the first >place. It's not that way in Retrocade. HAving it modify the regions >directly does not require the UI code to be foricbly moved in to the main >execution loop. When I port it to Windows (if... I haven't been working on DirectX at all. I'll resume that some other time ;)) I'll move most of it out of the emulation loop. Although, the parts of Genital which actually do any emulation are simply called using function pointers from the main loop. So the UI stuff is actually pretty separate. main() { init stuff ROMLoad // detects system type Set driver (SystemXXX) function pointers SystemInit GraphicsInit ControlInit while (!quit) { SystemFrame() If non-emulation key, process } ... } Works great. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 19:09:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA77039 for dynarec-outgoing; Fri, 11 Aug 2000 19:08:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 11 Aug 2000 19:28:27 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: So quiet ... In-Reply-To: <3.0.5.32.20000811183509.007fd8b0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >WinRetrocade. > Because back then I had everything in the interrupt handler in assembly, it > was pretty gruesome ;) Yeouch! Yeah... I'd agree. > ControlInit > while (!quit) > { > SystemFrame() > If non-emulation key, process > } > ... > } > Works great. But a bit less optimal. ;-) while (!quit) { while (!ui_key) { CPU_Exec(); } // Emulation key here... do what you need to with it } The inner CPU loop drives everything. I don't have a "draw frame" call in my main loop. That's game specific. Some are 60hz, others are variable, but whatever - it's always slaved to the emulated CPU speed. -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 20:11:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA77093 for dynarec-outgoing; Fri, 11 Aug 2000 20:11:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: tarquin@austin.rr.com Date: Fri, 11 Aug 2000 16:12:56 -0700 (PDT) X-Sender: tarquin@cx83476-a.irvn1.occa.home.com To: dynarec@dynarec.com Subject: Re: DYNAREC: New tech doc site? In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Um... nothing actually came through but your .sig, John. What happened? That's a good question =P Anyways, why area all the main page links on dynarec.com from the menu on the left broken? =P > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Everyone agrees that 90% of all techno is crap, but > Synthcom Systems, Inc. no one can agree on which 10% is good. > ICQ #29402898 John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever http://www.parodius.com/~tarquin Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 11 20:16:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA77106 for dynarec-outgoing; Fri, 11 Aug 2000 20:16:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 11 Aug 2000 20:35:40 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New tech doc site? In-Reply-To: <003a01c003fd$e9da9740$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > speak to the guy who wrote Genem (can't remember his name but I think it > began with a "M") - he also seemed quite nice. And I've spoken to you, Bart, > and you're okay too. ;) But I'm not a Genesis author. ;-) still though, the Genesis is my favorite console of them all. > I can understand the deal with Nintendo - but you shouldn't hate Disney. > Remember, they showed France to have evil people, people living in sewers, > no fire control - and a strange sort of voodoo that causes statues to come > to life and talk, dance and sing. And gypsies - white trash, you could say. > ;)) Hm... I think that's the definition of "mixed emotions". ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 12 03:07:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA77572 for dynarec-outgoing; Sat, 12 Aug 2000 03:07:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: New tech doc site? From: "M.I.K.e" Message-ID: <00036ea3fda9742a_mailit@mail.dynarec.com> References: Date: Sat, 12 Aug 2000 12:19:04 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Anyways, why area all the main page links on dynarec.com from the menu on >the left broken? =P Because you didn't contribute that stuff yet? ;-) >John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS -- M.I.K.e "When I was crossing the border into Canada, they asked if I had any firearms with me. I said, `Well, what do you need?'" -- Steven Wright --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 13 12:30:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA81286 for dynarec-outgoing; Sun, 13 Aug 2000 12:30:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002901c00566$40415380$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036ea3fda9742a_mailit@mail.dynarec.com> Subject: Re: DYNAREC: New tech doc site? Date: Sun, 13 Aug 2000 21:36:16 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Anyways, why area all the main page links on dynarec.com from the menu on > >the left broken? =P > > Because you didn't contribute that stuff yet? ;-) Yeah! I can format it and make it look nice and stuff - but I'm not writing it all! Some of it, fine - but not all of it! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 13 14:41:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA81400 for dynarec-outgoing; Sun, 13 Aug 2000 14:40:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 13 Aug 2000 15:00:54 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Dynarec downtime Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Sigh... [DYNAREC->neilb: 692] w 2:37PM up 95 days, 15:08, 3 users, load averages: 1.00, 1.00, 1.00 I'm going to have to move dynarec.com downstairs, which means its great uptime will be reset. ;-( It'll probably go offline sometime in the next few hours and will return, at the latest, tomorrow evening sometime. -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 13 22:34:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA00197 for dynarec-outgoing; Sun, 13 Aug 2000 22:33:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 13 Aug 2000 22:47:50 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Back online Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Dynarec is back on line. IT's now sitting on top of my 100Mbsec hub in the main floor closet - no longer making noise nor heating the place up. Should be up forever now! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 14 21:02:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA01352 for dynarec-outgoing; Mon, 14 Aug 2000 21:02:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000814210355.007fd500@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 14 Aug 2000 21:03:55 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Aaron Giles Disassembler "Bug Fix" Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I sat down and actually looked through Aaron Giles disassembler and figured out my problems. I thought perhaps this would be of some use since DR68K uses this disassembler "incorrectly": - Make sure the length of the instruction text buffer is adequate (d'oh ;)) - Change the Dis68000One() parameter list to use "unsigned char *" rather than the signed variant for the buffer to read from. Uh, that was easy :) The main problem was the second item. Dis68000One() as used in DR68K was using pbOpcode (char *) to sprintf() to pbOpcodeBytesAsText, instead of unsigned char *, which was causing ugly sign extends. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 15 04:37:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA01867 for dynarec-outgoing; Tue, 15 Aug 2000 04:37:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000401c006b5$bc00f340$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Back online Date: Mon, 14 Aug 2000 19:59:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Dynarec is back on line. IT's now sitting on top of my 100Mbsec hub in the > main floor closet - no longer making noise nor heating the place > up. Should be up forever now! ;-) Cool! I thought you may be forced to move it at some point - the sooner the better IMO. That way you've got more time to build up a bigger uptime! Now all you have to do is get it past 2036 (the date where the UNIX problems should hit) and we'll be laughing. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 15 12:41:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA02224 for dynarec-outgoing; Tue, 15 Aug 2000 12:41:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000815124227.007fcd60@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 15 Aug 2000 12:42:27 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Question regarding instruction handling Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, Seeing as the list is a bit quiet, I thought maybe I could sneak in a little OT question again ;) This is just a small, simple optmization question: I'm about to add addressing mode code, but I've got the basic skeleton instruction handlers in place, and some of them turn out like this: IXXX: add esi, 2 ...esi now points to operand, addr mode code will do a "mov ebx, [esi]" or something... add esi, 2 ; skip past operand to point at next instruction ...jump to next instruction... The 2 "add esi,2"s bother me a bit. I wonder if it couldn't be replaced by having the addressing mode handler access things with an offset from esi? mov ebx, [esi+2]? That way only one add esi,X would be required to get to the next instruction. In some cases, of course, the second add esi,2 is "add esi,4" and what-not, depending on the operand. (I've already taken the liberty to have the emitter check for 0 operands and not emit anything ;)) Hopefully, NASM realizes that as an 8-bit displacement, which would increase the instruction size by one byte I think, but it this a worthwhile performance saver? Or should I not worry too much about the 2 adds? Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 15 13:06:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA02253 for dynarec-outgoing; Tue, 15 Aug 2000 13:06:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 15 Aug 2000 13:21:12 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Question regarding instruction handling In-Reply-To: <3.0.5.32.20000815124227.007fcd60@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The 2 "add esi,2"s bother me a bit. I wonder if it couldn't be replaced by > having the addressing mode handler access things with an offset from esi? Are your addressing mode handlers inlined or are they a separate function call? Please tell me they are the former... > mov ebx, [esi+2]? That way only one add esi,X would be required to get to > the next instruction. In some cases, of course, the second add esi,2 is > "add esi,4" and what-not, depending on the operand. (I've already taken the > liberty to have the emitter check for 0 operands and not emit anything ;)) In any case, you're still going to have to increment esi. There's a "short" form of "add/sub reg32, value" if it's a byte, but there is no equivalent for "mov reg32, [reg32+offset]". > Hopefully, NASM realizes that as an 8-bit displacement, which would > increase the instruction size by one byte I think, but it this a worthwhile > performance saver? Or should I not worry too much about the 2 adds? Compared to the huge offset (and the odds of generating an AGI stall are very high with the offset approach but nonexistent in the add approach), the subs are better. AGIs only exist on older Pentiums (any non-MMX Pentium) but think about what CPUs will most greatly benefit from speed improvements. ;-) But make sure you do "sub esi, byte 2". Otherwise NASM will just generate a 32 bit quantity. -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 15 13:49:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA02289 for dynarec-outgoing; Tue, 15 Aug 2000 13:49:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Back online From: "M.I.K.e" Message-ID: <00036ee907fb46ec_mailit@mail.dynarec.com> References: Date: Tue, 15 Aug 2000 22:41:10 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Dynarec is back on line. IT's now sitting on top of my 100Mbsec hub in the >main floor closet - no longer making noise nor heating the place >up. Should be up forever now! ;-) Great, I hope you played the song "Press Rewind" while setting it up again ;- ) I agree with NG that we didn't loose that much uptime yet. I have to admit that I feel a bit guilty that you had all the work with the hardware and the installation and we others couldn't provide as much site content as I like it to have... >-->Neil -- M.I.K.e The Army needs leaders the way a foot needs a big toe. -- Bill Murray --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 15 13:52:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA02303 for dynarec-outgoing; Tue, 15 Aug 2000 13:52:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 15 Aug 2000 14:06:27 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Back online In-Reply-To: <00036ee907fb46ec_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I have to admit that I feel a bit guilty that you had all the work with the > hardware and the installation and we others couldn't provide as much site > content as I like it to have... It was as easy as me taking an old machine I have, slapping in a hard drive, installing FreeBSD and connecting it to my internal LAN. Not a big deal! -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 15 13:56:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA02316 for dynarec-outgoing; Tue, 15 Aug 2000 13:56:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000815135734.007fd180@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 15 Aug 2000 13:57:34 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Question regarding instruction handling In-Reply-To: References: <3.0.5.32.20000815124227.007fcd60@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Are your addressing mode handlers inlined or are they a separate function >call? Please tell me they are the former... I'm inlining them. >In any case, you're still going to have to increment esi. There's a >"short" form of "add/sub reg32, value" if it's a byte, but there is no >equivalent for "mov reg32, [reg32+offset]". > >> Hopefully, NASM realizes that as an 8-bit displacement, which would >> increase the instruction size by one byte I think, but it this a worthwhile >> performance saver? Or should I not worry too much about the 2 adds? > >Compared to the huge offset (and the odds of generating an AGI stall are >very high with the offset approach but nonexistent in the add approach), >the subs are better. AGIs only exist on older Pentiums (any non-MMX >Pentium) but think about what CPUs will most greatly benefit from speed >improvements. ;-) But make sure you do "sub esi, byte 2". Otherwise NASM >will just generate a 32 bit quantity. Hmm, but this could lead to a lot of add esi,2's when it comes to fetching extension words... whereas with the offset approach I could do things like: mov ebx, [esi+2] ; extension word #1 ...process... mov ebx, [esi+4] ; extension word #2 ..process... add esi, byte 6 ; next instruction as opposed to: add esi, byte 2 mov ebx, [esi] ; extension word #1 ...process... add esi, byte 2 mov ebx, [esi] ; extension word #2 ...process... add esi, byte 2 ; next instruction I don't know though, if you say it's better the second way, I guess that's that... And since I am running a Pentium 166 w/out MMX, speed is definitely something I want :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 15 15:08:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA02380 for dynarec-outgoing; Tue, 15 Aug 2000 15:07:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 15 Aug 2000 15:21:32 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Question regarding instruction handling In-Reply-To: <3.0.5.32.20000815135734.007fd180@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Are your addressing mode handlers inlined or are they a separate function > >call? Please tell me they are the former... > I'm inlining them. Good man. > >Pentium) but think about what CPUs will most greatly benefit from speed > >improvements. ;-) But make sure you do "sub esi, byte 2". Otherwise NASM > >will just generate a 32 bit quantity. > Hmm, but this could lead to a lot of add esi,2's when it comes to fetching > extension words... Not a *LOT* of them, but a few. > mov ebx, [esi+2] ; extension word #1 > ...process... > mov ebx, [esi+4] ; extension word #2 > ..process... > add esi, byte 6 ; next instruction > > as opposed to: Consider the first two mov ebxs will cause address generation interlock stalls. Adds are pipelined - moves are not. > I don't know though, if you say it's better the second way, I guess that's > that... And since I am running a Pentium 166 w/out MMX, speed is definitely > something I want :) Yeah. On a PII/III or faster machine it's probably a wash (or close to it). But the benefits for a slower CPU are much greater. -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 15 15:32:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA02407 for dynarec-outgoing; Tue, 15 Aug 2000 15:32:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 15 Aug 2000 15:46:45 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Aaron Giles Disassembler "Bug Fix" In-Reply-To: <3.0.5.32.20000814210355.007fd500@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I sat down and actually looked through Aaron Giles disassembler and figured > out my problems. I thought perhaps this would be of some use since DR68K > uses this disassembler "incorrectly": DR68K Doesn't use it currently at all! ;-) > - Make sure the length of the instruction text buffer is adequate (d'oh ;)) Very important. ;-) > - Change the Dis68000One() parameter list to use "unsigned char *" rather > than the signed variant for the buffer to read from. Yeah... UINT8 *.... I just threw that thing in there. -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 15 17:58:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA02518 for dynarec-outgoing; Tue, 15 Aug 2000 17:58:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000815175919.007fe100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 15 Aug 2000 17:59:19 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Aaron Giles Disassembler "Bug Fix" In-Reply-To: References: <3.0.5.32.20000814210355.007fd500@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 03:46 PM 8/15/2000 +0000, you wrote: >> I sat down and actually looked through Aaron Giles disassembler and figured >> out my problems. I thought perhaps this would be of some use since DR68K >> uses this disassembler "incorrectly": > >DR68K Doesn't use it currently at all! ;-) > >> - Make sure the length of the instruction text buffer is adequate (d'oh ;)) > >Very important. ;-) > >> - Change the Dis68000One() parameter list to use "unsigned char *" rather >> than the signed variant for the buffer to read from. > >Yeah... UINT8 *.... I just threw that thing in there. One more thing to beware of... if it is disassembling from a byteswapped buffer, it will print the opcodes backwards (also apparently _not_ #defining LITTLE_ENDIAN makes it work with byteswapped buffers). Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 17 19:58:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA04991 for dynarec-outgoing; Thu, 17 Aug 2000 19:57:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000817195859.007fe100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 17 Aug 2000 19:58:59 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Question regarding instruction handling In-Reply-To: References: <3.0.5.32.20000815135734.007fd180@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Not a *LOT* of them, but a few. > >> mov ebx, [esi+2] ; extension word #1 >> ...process... >> mov ebx, [esi+4] ; extension word #2 >> ..process... >> add esi, byte 6 ; next instruction >> >> as opposed to: > >Consider the first two mov ebxs will cause address generation interlock >stalls. Adds are pipelined - moves are not. > >> I don't know though, if you say it's better the second way, I guess that's >> that... And since I am running a Pentium 166 w/out MMX, speed is definitely >> something I want :) > >Yeah. On a PII/III or faster machine it's probably a wash (or close to >it). But the benefits for a slower CPU are much greater. Okay, I've gotten around to implementing a number of the addressing modes, and I've just added the (d16,An) addr-mode. Here are 2 examples of the code Genital68K currently produces: This is: MOVEA.L (xx,A2),A4 I286A: ; MOVEA add esi, byte 2 movsx ebx, word [esi] add ebx, [__a+2*4] add esi, 2 call ReadLong mov [__a+4*4], ebx sub ecx, byte 16 js near Genital68KRun_done movzx ebx, word [esi] jmp dword [jmptab+ebx*4] This is: MOVEA.W (xx,A1),A1 I3269: ; MOVEA add esi, byte 2 movsx ebx, word [esi] add ebx, [__a+1*4] add esi, byte 2 call ReadWord movsx ebx, bx mov [__a+1*4], ebx sub ecx, byte 12 js near Genital68KRun_done movzx ebx, word [esi] jmp dword [jmptab+ebx*4] This is how the code turns out with the add esi, 2 approach. Looks pretty good to me, except I'm uncertain about the movzx ebx, word [esi] approach for the jump table. An alternative I was using was: mov ebx, [esi] and ebx, 0xffff jmp dword [jmptab+ebx*4] I had lent an assembly book I had which had a handy reference of instruction timings to a friend, so I couldn't look up the performance difference, but I think I remember movzx was a bit of a cycle eater, and I'm not sure wether or not I should expand it to the old dword-fetching method instead. Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 17 20:55:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA05042 for dynarec-outgoing; Thu, 17 Aug 2000 20:55:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 17 Aug 2000 21:10:24 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Question regarding instruction handling In-Reply-To: <3.0.5.32.20000817195859.007fe100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com A few ideas: > I286A: ; MOVEA > add esi, byte 2 Rather than incrementing here, put this down at your fetch & jump section. > movsx ebx, word [esi] And instead of doing sign extensions, just keep the upper 16 bits of EBX clear. Most instructions probably won't need it. > add ebx, [__a+2*4] > add esi, 2 > call ReadLong > mov [__a+4*4], ebx > sub ecx, byte 16 > js near Genital68KRun_done > movzx ebx, word [esi] > jmp dword [jmptab+ebx*4] And if you use EBX in your routine, just do "xor ebx, ebx". One byte clear EBX! So I'd do this: mov bx, word [esi] add esi, byte 2 add ebx, [__a+2*4] call ReadLong mov [__a+2*4], ebx sub ecx, byte 16 js near Genital68KRun_done mov bx, word [esi] add esi, 2 jmp dword [jmptab+ebx*4] Give that a shot. IF you just keep the upper 16 bits clear for the fetch, you'll be OK. ZX Was/is expensive for earlier Pentiums and especially 486s. Doing 16 bit reads has less of an impact. They both suck ass, though. > This is how the code turns out with the add esi, 2 approach. Looks pretty > good to me, except I'm uncertain about the movzx ebx, word [esi] approach > for the jump table. An alternative I was using was: This is a dereference plus a pipeline stall. Not good - especially on early Pentiums and 486s. > mov ebx, [esi] > and ebx, 0xffff > jmp dword [jmptab+ebx*4] > I had lent an assembly book I had which had a handy reference of > instruction timings to a friend, so I couldn't look up the performance > difference, but I think I remember movzx was a bit of a cycle eater, and > I'm not sure wether or not I should expand it to the old dword-fetching > method instead. I wouldn't DWORD fetch. The "add esi, 2" fits nicely in the pipelines and you don't have to pay for it elsewhere. -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 17 21:19:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA05068 for dynarec-outgoing; Thu, 17 Aug 2000 21:19:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000817212019.007ffdc0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 17 Aug 2000 21:20:19 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Question regarding instruction handling In-Reply-To: References: <3.0.5.32.20000817195859.007fe100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 09:10 PM 8/17/2000 +0000, you wrote: >A few ideas: > >> I286A: ; MOVEA >> add esi, byte 2 > >Rather than incrementing here, put this down at your fetch & jump section. You mean so that the instruction handler has ESI pointing at the word following the current opcode upon entry? I suppose this would help out the ReadPC() function, which would currently be returning an invalid address if called from within a handler... >> movsx ebx, word [esi] > >And instead of doing sign extensions, just keep the upper 16 bits of EBX >clear. Most instructions probably won't need it. Hmm, MOVEA needs this because when it is word-sized, the word must be sign extended and then placed in the A-register. >> add ebx, [__a+2*4] >> add esi, 2 >> call ReadLong >> mov [__a+4*4], ebx >> sub ecx, byte 16 >> js near Genital68KRun_done >> movzx ebx, word [esi] >> jmp dword [jmptab+ebx*4] > >And if you use EBX in your routine, just do "xor ebx, ebx". One byte clear >EBX! So I'd do this: I use EBX as a general-purpose register... I figure that it will be very useful for longword operations. I have one unused register: EDX. I'm unsure of EAX, I think I will be using AH for the flags when that comes into play... EDI is also free (it is used in the fetch pointer updating and Read/WriteXXX handlers) but the upper 16-bits aren't 0. Future instruction will no doubt be more complex than MOVEA and I want to make certain that I have enough registers free to deal with them. Using up EDX would only leave EBX and AL available (as well as the upper portion of EAX) This means that the upper 16-bits of BX can never be guaranteed, and a xor ebx,ebx will be necessary each time... But the performance gain is significant using this over movzx, right? > mov bx, word [esi] > add esi, byte 2 > add ebx, [__a+2*4] > call ReadLong > mov [__a+2*4], ebx > sub ecx, byte 16 > js near Genital68KRun_done > mov bx, word [esi] > add esi, 2 > jmp dword [jmptab+ebx*4] > >Give that a shot. IF you just keep the upper 16 bits clear for the fetch, >you'll be OK. ZX Was/is expensive for earlier Pentiums and especially >486s. Doing 16 bit reads has less of an impact. They both suck ass, >though. I should be able to manage that, except I'll need an additional xor before I mov bx,word [esi] and I'll need to use movsx at the top, since moving words to an address register sign extends them to 32-bits... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 21 01:25:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA11340 for dynarec-outgoing; Mon, 21 Aug 2000 01:24:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 21 Aug 2000 01:40:25 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Finally! Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Got my office all put back together. I'm now typing away with my pinball machines to the right of me - I'm also on the main floor, which means it doesn't get so damned hot. Anyway, in support of my "never stop once in awhile and shove sound out the port" religion, here is a guy having *EXACTLY* this problem with MAME32: "Having some trouble with games stuttering. Its not enough to make the games unplayable, just enough to really be annoying. I have tried turning off my joystick and restarting the computer. Any help would be most appreciated... " A separate thread yanking sound out of the core or using the native callback APIs would keep this from happening entirely. -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 21 01:39:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA11364 for dynarec-outgoing; Mon, 21 Aug 2000 01:39:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39A0EA68.5A19F5A4@eurocopter.de> Date: Mon, 21 Aug 2000 10:38:00 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Finally! References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Got my office all put back together. I'm now typing away with my pinball > machines to the right of me - I'm also on the main floor, which means it > doesn't get so damned hot. Good to hear from you again! That's cool - you have your pinball machines in your office. That's an office toy and a half. ;) > A separate thread yanking sound out of the core or using the native > callback APIs would keep this from happening entirely. Yep. It's cool when people find you're right isn't it? BTW, any idea on when we'll be able to start on the dynarec properly? I'm going to be in a right mess probably from the start of next week because I'm moving back to the UK. As far as I'm concerned, if it's starting in 3 weeks or more then great! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 21 01:57:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA11386 for dynarec-outgoing; Mon, 21 Aug 2000 01:57:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 21 Aug 2000 02:13:17 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Finally! In-Reply-To: <39A0EA68.5A19F5A4@eurocopter.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > machines to the right of me - I'm also on the main floor, which means it > > doesn't get so damned hot. > Good to hear from you again! That's cool - you have your pinball machines > in your office. That's an office toy and a half. ;) It's a cramped-ass office. My ass must be turned sideways to get between my desk and my Black Knight 2000! I've still got a half of room of stuff in the old room and nowhere to put it down here. > > A separate thread yanking sound out of the core or using the native > > callback APIs would keep this from happening entirely. > Yep. It's cool when people find you're right isn't it? It's a bit of vindication. ;-) > BTW, any idea on when we'll be able to start on the dynarec properly? I'm > going to be in a right mess probably from the start of next week because > I'm moving back to the UK. As far as I'm concerned, if it's starting in 3 > weeks or more then great! :) It'll be a few weeks for me... -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 21 02:12:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA11563 for dynarec-outgoing; Mon, 21 Aug 2000 02:12:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39A0F2B4.680875C@eurocopter.de> Date: Mon, 21 Aug 2000 11:13:24 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Finally! References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > It's a cramped-ass office. My ass must be turned sideways to get between > my desk and my Black Knight 2000! I've still got a half of room of stuff > in the old room and nowhere to put it down here. Ah. But on the other hand... it's cooler. We're having problems with heat here at the moment. It's hot. I don't know what it is in Farenheit - but it's a good 38 degrees centigrade here today. I guess somewhere around 120 degrees farenheit. And humid! > > Yep. It's cool when people find you're right isn't it? > > It's a bit of vindication. ;-) You need to write to the MAME devs and say "I told you so! I told you so!" ;)) > > BTW, any idea on when we'll be able to start on the dynarec properly? I'm > > going to be in a right mess probably from the start of next week because > > I'm moving back to the UK. As far as I'm concerned, if it's starting in 3 > > weeks or more then great! :) > > It'll be a few weeks for me... That's a good thing from my point of view. It means I'll have more time to work on it too. And, with a bit of luck, maybe we'll have something working for Christmas. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 21 02:15:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA11577 for dynarec-outgoing; Mon, 21 Aug 2000 02:15:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Finally! From: "M.I.K.e" Message-ID: <00036f583cd52a1e_mailit@mail.dynarec.com> References: Date: Mon, 21 Aug 2000 11:21:38 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Got my office all put back together. Good news. >I'm now typing away with my pinball machines to the right of me - Your pinball machines are beside you and you are typing a mail? That's odd! ; -) >I'm also on the main floor, which means it doesn't get so damned hot. Well, that shouldn't affect you productivity that much anymore. It was quite warm and humid here for the last two days as well, but we had some rain in the night which cooled things down a bit. >Anyway, in support of my "never stop once in awhile and shove sound out >the port" religion, I didn't know that you're a high-priest now ;-) >here is a guy having *EXACTLY* this problem with MAME32: I guess there are many more guys with even more problems with MAME... >"Having some trouble with games stuttering. Its not enough to make the >games unplayable, just enough to really be annoying. I have tried turning >off my joystick and restarting the computer." I wonder why he thought that the joystick could be causing the problem. This shurely isn't a problem of the soundcard but of the emulator... >A separate thread yanking sound out of the core or using the native >callback APIs would keep this from happening entirely. I hope I find out how to do that in BeOS someday, but first I have to find out how to output sound anyway... -- M.I.K.e "Calvin Coolidge looks as if he had been weaned on a pickle." -- Alice Roosevelt Longworth --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 21 02:30:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA11599 for dynarec-outgoing; Mon, 21 Aug 2000 02:30:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Finally! From: "M.I.K.e" Message-ID: <00036f586018404e_mailit@mail.dynarec.com> References: Date: Mon, 21 Aug 2000 11:31:30 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Yep. It's cool when people find you're right isn't it? >It's a bit of vindication. ;-) I bet so, although I had to look up that word first ;-) >> BTW, any idea on when we'll be able to start on the dynarec properly? >It'll be a few weeks for me... I'm a bit busy with other things as well at the moment so I won't complain. I hope that I can update the DRFAQ and learn a bit more x86 assembly till then. >-->Neil -- M.I.K.e The price of seeking to force our beliefs on others is that someday they might force their beliefs on us. -- Mario Cuomo --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 21 02:30:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA11607 for dynarec-outgoing; Mon, 21 Aug 2000 02:30:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Finally! From: "M.I.K.e" Message-ID: <00036f58727e46d1_mailit@mail.dynarec.com> References: <39A0F2B4.680875C@eurocopter.de> Date: Mon, 21 Aug 2000 11:36:38 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Ah. But on the other hand... it's cooler. We're having problems with heat >here at the moment. It's hot. I don't know what it is in Farenheit Wasn't that "F = C * 9/5 + 32"? Should be in K&R, but I'm too lazy to look it up... >- but it's a good 38 degrees centigrade here today. That's strange, we only have 22 degrees centigrade at the moment... >You need to write to the MAME devs and say "I told you so! I told you so!" That would be mean, but do so! ;-) >That's a good thing from my point of view. It means I'll have more time to >work on it too. And learn a bit more about the 68k. >And, with a bit of luck, maybe we'll have something working >for Christmas. :) How do you want to place that under the tree? Probably on the harddrive of a new computer? ;-) BTW, I hope you got a seat on the train yesterday... >Neil. -- M.I.K.e Sure he's sharp as a razor ... he's a two-dimensional pinhead! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 21 04:10:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA11707 for dynarec-outgoing; Mon, 21 Aug 2000 04:10:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: 3000 and counting From: "M.I.K.e" Message-ID: <00036f59dad2c68f_mailit@mail.dynarec.com> Date: Mon, 21 Aug 2000 13:17:24 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com We've now more than 3000 messages and I hope that we still get more ;-) -- M.I.K.e You cannot achieve the impossible without attempting the absurd. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 21 05:06:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA11763 for dynarec-outgoing; Mon, 21 Aug 2000 05:06:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39A11B5E.7C3756BB@eurocopter.de> Date: Mon, 21 Aug 2000 14:06:54 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: 3000 and counting References: <00036f59dad2c68f_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > We've now more than 3000 messages and I hope that we still get more ;-) Cool! But there were really over 700 messages before I joined the mailing list? How long had it been going before I joined (8th of March 2000)? :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 21 05:20:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA11784 for dynarec-outgoing; Mon, 21 Aug 2000 05:20:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 3000 and counting From: "M.I.K.e" Message-ID: <00036f5ace5e61bf_mailit@mail.dynarec.com> References: <00036f59dad2c68f_mailit@mail.dynarec.com> <39A11B5E.7C3756BB@eurocopter.de> Date: Mon, 21 Aug 2000 14:25:30 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Cool! But there were really over 700 messages before I joined the mailing >list? How long had it been going before I joined (8th of March 2000)? :o The first message I have is from 25th of February and there surely weren't 700 messages before you joined. Maybe you deleted more messages than I did? >Neil. -- M.I.K.e Hark ye, Clinker, you are a most notorious offender. You stand convicted of sickness, hunger, wretchedness, and want. -- Tobias Smollet --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 21 05:37:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA11809 for dynarec-outgoing; Mon, 21 Aug 2000 05:37:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39A12254.E4763F79@eurocopter.de> Date: Mon, 21 Aug 2000 14:36:36 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: 3000 and counting References: <00036f59dad2c68f_mailit@mail.dynarec.com> <39A11B5E.7C3756BB@eurocopter.de> <00036f5ace5e61bf_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > The first message I have is from 25th of February and there surely weren't > 700 messages before you joined. Maybe you deleted more messages than I did? No - never! I never delete messages - that's my big problem! :o Mind you, I *did* recieve over 50 messages from this list last week. But they were sent in June. That's a delay and a half. Maybe, just maybe, I lost that many e-mail messages. But I doubt it. You have no repeating messages (like I have at home)? Still, we're definitely *well* over 2500! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 21 20:27:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA12455 for dynarec-outgoing; Mon, 21 Aug 2000 20:27:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000821202819.00802530@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 21 Aug 2000 20:28:19 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Flags and stuff Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, First off, congrats on the 3000 posts guys :) And it's good to hear that in a few weeks DR68K may be getting back up to speed, I'm eager to see what's in store for the project, nothing but the best I expect ;) I've made some more changes to Aaron Giles' disassembler, fixing some bugs, and I hope to find any more that might exist -- I can send over the corrected disassembler whenever you guys want/need it. Also, I have another question to do with my 68K emulator. I hope this is the last major question, I'm getting the hang of this, and I should be able to do fine with the rest of the instruction set... I've got MOVEA finally finished, and made some optimizations, the instruction handlers seem to look pretty nice! Next I wanted to implement the MOVE instruction itself, and that requires flag calculation, so I wanted to make sure I get this right before I dig myself into some sort of a hole ;) NeilB's Make68K doesn't have any use of flags in the instruction handlers since MOVEA is only emulated, but it did have the code to load up and save flags. I've also been looking at Starscream, and I gather that the method used is to just LAHF the change flags (those that _can_ be, the V and X flags have to be done manually, which isn't a big deal). But does this LAHF method adequately reflect changes in the flags? What if some unrelated set of instructions mangles up the flags (like the memory handlers or some other code)... the flags that the 68K instruction modified will be reflected accurately, but those that the 68K instruction did NOT modify would be incorrect. What if a program relies on flags set by some previous instruction? A good analogy I can think of, in X86 code, would be: shr ecx, 12 ; bit 11 -> CF inc ecx ; INC does not modify CF, but modifies other flag jc foo ; wether the branch is taken depends on "shr ecx,12" A similar problem with 68K code might be possible AFAIK. At any rate, putting this question out of mind for a moment, I was planning doing something like: EAX = 000000000000000X SZ0A0P1C 0000000V Where SZ0A0P1C was loaded by LAHF, V is maintained manually (seto al or something) and X is also maintained in the EAX register manually (or possible in memory, since the BTx instructions might prove troublesome with the flags, whereas in memory I could just use a SETcc instruction). Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 22 01:43:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA12694 for dynarec-outgoing; Tue, 22 Aug 2000 01:41:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: julesb@btinternet.com To: dynarec@dynarec.com Date: Tue, 22 Aug 2000 09:44:49 +0100 Subject: Re: DYNAREC: Flags and stuff X-Mailer: DMailWeb Web to Mail Gateway 2.4e, http://netwinsite.com/top_mail.htm Message-id: <39a23d81.1935.0@btinternet.com> X-User-Info: 193.131.176.3 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, >NeilB's Make68K doesn't have any use of flags in the instruction handlers >since MOVEA is only emulated, but it did have the code to load up and save >flags. I've also been looking at Starscream, and I gather that the method >used is to just LAHF the change flags (those that _can_ be, the V and X >flags have to be done manually, which isn't a big deal). > But does this LAHF method adequately reflect changes in the flags? What if >some unrelated set of instructions mangles up the flags (like the memory >handlers or some other code)... the flags that the 68K instruction modified >will be reflected accurately, but those that the 68K instruction did NOT >modify would be incorrect. What if a program relies on flags set by some >previous instruction? > >A good analogy I can think of, in X86 code, would be: > >shr ecx, 12 ; bit 11 -> CF >inc ecx ; INC does not modify CF, but modifies other flag >jc foo ; wether the branch is taken depends on "shr ecx,12" > >A similar problem with 68K code might be possible AFAIK. In my ARM->x86 dynarec, ARMphetamine, I tracked the validity of each flag individually, storing each with SETcc instructions before they were clobbered (which needed some meta-information for each instruction emitted by the x86 backend) and only getting the relevant flag values back into x86 flags when they were required. This sort-of worked quite well, but the flag-restoring code produced wasn't great (I didn't use LAHF/SAHF since they didn't read/write V). >At any rate, putting this question out of mind for a moment, I was planning >doing something like: > >EAX = 000000000000000X SZ0A0P1C 0000000V > >Where SZ0A0P1C was loaded by LAHF, V is maintained manually (seto al or >something) and X is also maintained in the EAX register manually (or >possible in memory, since the BTx instructions might prove troublesome with >the flags, whereas in memory I could just use a SETcc instruction). How are you planning to get the V and X emulated flags back into the x86 flags register? It's probably possible quite easily, I was just wondering if you'd come up with a better solution than me... Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 22 11:19:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA13281 for dynarec-outgoing; Tue, 22 Aug 2000 11:16:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: DRFAQ and FPSE From: "M.I.K.e" Message-ID: <00036f73e3facb13_mailit@mail.dynarec.com> Date: Tue, 22 Aug 2000 20:21:06 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I uploaded a new version of the DRFAQ to mention the new Amiga port of FPSE, which now also has a PowerPC dynarec. It's a direct translator just like in the original FPSE, but it uses macros for instruction generation (much better than the original hex code!) and also seems to have some kind of statistically founded (only racing games?) register allocation. I didn't take a closer look but it's certainly better than the original dynarec... -- M.I.K.e Afternoon, n.: That part of the day we spend worrying about how we wasted the morning. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 22 12:30:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA13347 for dynarec-outgoing; Tue, 22 Aug 2000 12:28:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 22 Aug 2000 12:44:08 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <3.0.5.32.20000821202819.00802530@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've made some more changes to Aaron Giles' disassembler, fixing some bugs, > and I hope to find any more that might exist -- I can send over the > corrected disassembler whenever you guys want/need it. Fire away! > But does this LAHF method adequately reflect changes in the > flags? Yes. You compute flags after every instruction. > What if some unrelated set of instructions mangles up the flags > (like the memory handlers or some other code)... You'd save them off before calling the memory handlers. AH Should just be storage for the flags. You will fight an endless battle trying to keep the 68K flags in the x86 flags register. > 68K instruction modified will be reflected accurately, but those that > the 68K instruction did NOT modify would be incorrect. What if a > program relies on flags set by some previous instruction? The only way to do it is to compute the flags on a per instruction basis, just like mz80 or m6502 or m6809 do. ;-) And let's not bring up the pointless topic of "lazy flag calculation", which takes just as long if not longer than just calculating the flags in the first place. Also consider that there is sometimes a faster way to compute flags. In the case of inc/dec, having a lookup table of the value (when it's a bit) is faster than masking all the flags off and getting the x86 flags. -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 23 01:24:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA13915 for dynarec-outgoing; Wed, 23 Aug 2000 01:22:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: julesb@btinternet.com To: dynarec@dynarec.com Date: Wed, 23 Aug 2000 09:26:04 +0100 Subject: Re: DYNAREC: Flags and stuff X-Mailer: DMailWeb Web to Mail Gateway 2.4e, http://netwinsite.com/top_mail.htm Message-id: <39a38a9c.3606.0@btinternet.com> X-User-Info: 193.131.176.3 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >You'd save them off before calling the memory handlers. AH Should just be >storage for the flags. You will fight an endless battle trying to keep >the 68K flags in the x86 flags register. So you test bits in the AH register directly when you're translating a conditional instruction then, rather than trying to force flags back into the x86 flags register and using native conditions? I guess that'd work pretty well if so... Was the carry flag treated differently by the x86 and 68k in subtract-style instructions? >The only way to do it is to compute the flags on a per instruction basis, >just like mz80 or m6502 or m6809 do. ;-) And let's not bring up the >pointless topic of "lazy flag calculation", which takes just as long if >not longer than just calculating the flags in the first place. Pointless, bah ;-) Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 23 01:33:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA13937 for dynarec-outgoing; Wed, 23 Aug 2000 01:33:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 23 Aug 2000 01:49:35 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <39a38a9c.3606.0@btinternet.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >You'd save them off before calling the memory handlers. AH Should just be > >storage for the flags. You will fight an endless battle trying to keep > >the 68K flags in the x86 flags register. > So you test bits in the AH register directly when you're translating a > conditional instruction then, rather than trying to force flags back > into the x86 flags register and using native conditions? I guess > that'd work pretty well if so... Yes - unless actually using the x86 flag operations is faster (in the case of computing carry/overflow/half carry as an example with add/sub operations). > Was the carry flag treated differently by the x86 and 68k in subtract-style > instructions? I don't believe so. It's only the 6502 and maybe one of the other 68xx series of chips that uses the backwards carry logic. > >The only way to do it is to compute the flags on a per instruction basis, > >just like mz80 or m6502 or m6809 do. ;-) And let's not bring up the > >pointless topic of "lazy flag calculation", which takes just as long if > >not longer than just calculating the flags in the first place. > Pointless, bah ;-) I'm surprised that ANYONE thinks it's an advantage! I recall telling a MAMEDEVian that implementing it would just slow things down and low and behold, it slowed things down! -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 23 02:48:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA14155 for dynarec-outgoing; Wed, 23 Aug 2000 02:48:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <00036f80f26b562f_mailit@mail.dynarec.com> References: Date: Wed, 23 Aug 2000 11:55:43 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Was the carry flag treated differently by the x86 and 68k in subtract- style >> instructions? >I don't believe so. It's only the 6502 and maybe one of the other 68xx >series of chips that uses the backwards carry logic. 68K seems to behave like x86 in that respect: x86: rd -= rm - C 6809: A -= M - C 68K: Op2 -= Op1 - X But there are also some architectures which use the different approach: 6502: A -= M - (1-C) ARM: rd = rs - rt + C-1 PPC: rt = rb - ra + C-1 I wonder why all don't simply use the same method... >I'm surprised that ANYONE thinks it's an advantage! I recall telling a >MAMEDEVian that implementing it would just slow things down and low and >behold, it slowed things down! I bet MAMEDEV stands for: "deviating from common procedures by maim(e)ing the code" ;-) >-->Neil -- M.I.K.e "The Computer made me do it." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 23 07:09:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA14378 for dynarec-outgoing; Wed, 23 Aug 2000 07:09:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39A3DAC9.EC5DD53C@eurocopter.de> Date: Wed, 23 Aug 2000 16:08:09 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Whew, it's been a while since I wrote here! 2 days! Gosh! ;)) > > >The only way to do it is to compute the flags on a per instruction basis, > > >just like mz80 or m6502 or m6809 do. ;-) And let's not bring up the > > >pointless topic of "lazy flag calculation", which takes just as long if > > >not longer than just calculating the flags in the first place. > > Pointless, bah ;-) > > I'm surprised that ANYONE thinks it's an advantage! I recall telling a > MAMEDEVian that implementing it would just slow things down and low and > behold, it slowed things down! The important thing is this: has anyone thought that CPU designers do their flag calculations after each instruction for a reason? If they could get away with not doing this then they would! Sometimes, when emulating, you can get away with not doing things exactly as the original machine if it gives you a speed boost. But you can't do this all the time - and certainly not even for most of the time! Anyway, when the moment comes when a MAMEDEVian is concerned about speed then MAME is a lie. Remember, MAME is meant to be a documentation project and not one for playing games. Of course, we all know this is a lie - but so long as they're going to keep up this charade then I'm going to laugh about it. ;) Besides, when they remove comments from the code then I can't see it being a documentation project. And if they're not emulating the machine exactly as it worked (lazy flag calculation for example?) then how is it documenting? MAME would be a much better project if they sorted out the source, stopped removing the (useful!) comments and decided, for once and for all, if they're meant to document or emulate the machines. So there. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 23 07:32:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA14405 for dynarec-outgoing; Wed, 23 Aug 2000 07:32:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Jack To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff Date: Wed, 23 Aug 2000 10:39:48 -0400 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: <39A3DAC9.EC5DD53C@eurocopter.de> In-Reply-To: <39A3DAC9.EC5DD53C@eurocopter.de> X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 23 Aug 2000 16:08:09 +0200, Neil Griffiths wrote: >Hi, > >Whew, it's been a while since I wrote here! 2 days! Gosh! ;)) > >> > >The only way to do it is to compute the flags on a per instruction basis, >> > >just like mz80 or m6502 or m6809 do. ;-) And let's not bring up the >> > >pointless topic of "lazy flag calculation", which takes just as long if >> > >not longer than just calculating the flags in the first place. >> > Pointless, bah ;-) >> >> I'm surprised that ANYONE thinks it's an advantage! I recall telling a >> MAMEDEVian that implementing it would just slow things down and low and >> behold, it slowed things down! > >The important thing is this: has anyone thought that CPU designers do their >flag calculations after each instruction for a reason? If they could get Flags are calculated by the hardware, in parallel with the instruction execution. They are basically free from the time standpoint. >away with not doing this then they would! Sometimes, when emulating, you >can get away with not doing things exactly as the original machine if it >gives you a speed boost. But you can't do this all the time - and certainly >not even for most of the time! As long as the result is the same as the original hardware, you can do whatever you want. :) >Anyway, when the moment comes when a MAMEDEVian is concerned about speed >then MAME is a lie. Remember, MAME is meant to be a documentation project You mean like assembly cores? :) >and not one for playing games. Of course, we all know this is a lie - but >so long as they're going to keep up this charade then I'm going to laugh >about it. ;) > >Besides, when they remove comments from the code then I can't see it being >a documentation project. And if they're not emulating the machine exactly >as it worked (lazy flag calculation for example?) then how is it >documenting? Comments are being removed from the code? Can you tell us more about this? >MAME would be a much better project if they sorted out the source, stopped >removing the (useful!) comments and decided, for once and for all, if >they're meant to document or emulate the machines. So there. :) There is no reason for these goals to conflict. The programmers must merely keep both goals in mind while they go about their hacking. Why they don't is probably either time constraints or laziness. Personally, I'd rather see lousy code released rather than no code at all. :) Lousy code can be easily fixed. Undocumented code can also be easily documented if it's clearly written. :/ -- Jack ---- "Vir, Intelligence has nothing to do with politics." - Peter Jurasik as Ambassador Londo Molari, "Babylon 5" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 23 07:47:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA14424 for dynarec-outgoing; Wed, 23 Aug 2000 07:47:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <00036f850837f078_mailit@mail.dynarec.com> References: <39A3DAC9.EC5DD53C@eurocopter.de> Date: Wed, 23 Aug 2000 16:48:09 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Whew, it's been a while since I wrote here! 2 days! Gosh! ;)) Just look how lazy you are! ;-) >The important thing is this: has anyone thought that CPU designers do their >flag calculations after each instruction for a reason? If they could get >away with not doing this then they would! Actually they did! Take a look ate the following architectures (just to name a few): MIPS, Alpha, SuperH, MCore, IA-64 >Anyway, when the moment comes when a MAMEDEVian is concerned about speed >then MAME is a lie. Maybe they are concerned but they don't do anything to change the situation. >Remember, MAME is meant to be a documentation project >and not one for playing games. I think the lamers will tell you otherwise... >Of course, we all know this is a lie - but >so long as they're going to keep up this charade then I'm going to laugh >about it. ;) Ok, haha. >Besides, when they remove comments from the code then I can't see it being >a documentation project. And if they're not emulating the machine exactly >as it worked (lazy flag calculation for example?) then how is it >documenting? Hey, now you're mean! MAME certainly is the best example of a damn slow and badly designed monster application - sorry that must read "second best example" because the best example surely is Windows. >MAME would be a much better project if they sorted out the source, They should have done it when MAME was smaller. They won't do that anymore because they also would have to change over 1000 drivers. Who came up with that strange "driver" term anyway? >stopped >removing the (useful!) comments and decided, for once and for all, if >they're meant to document or emulate the machines. So there. :) I guess they want to emulate but they're just doing it wrong. >Neil. -- M.I.K.e A closed mouth gathers no foot. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 23 08:05:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA14451 for dynarec-outgoing; Wed, 23 Aug 2000 08:05:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39A3E748.E9FAB4E6@eurocopter.de> Date: Wed, 23 Aug 2000 17:01:28 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff References: <39A3DAC9.EC5DD53C@eurocopter.de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >The important thing is this: has anyone thought that CPU designers do their > >flag calculations after each instruction for a reason? If they could get > > Flags are calculated by the hardware, in parallel with the instruction > execution. They are basically free from the time standpoint. Of course, mainly because you have to remember that it's still a circuit. I wasn't necessarily thinking just about flags when I wrote that! I've seen some wierd things done in emulators that don't make sense - and don't act exactly like the original! > As long as the result is the same as the original hardware, you can do > whatever you want. :) Lazy flag calculation might not always work though. If my understanding of it is correct then this is especially true for RISC architecture CPU's... > >Anyway, when the moment comes when a MAMEDEVian is concerned about speed > >then MAME is a lie. Remember, MAME is meant to be a documentation project > > You mean like assembly cores? :) Not what I was thinking about - but yeah! :) > >Besides, when they remove comments from the code then I can't see it being > >a documentation project. And if they're not emulating the machine exactly > >as it worked (lazy flag calculation for example?) then how is it > >documenting? > > Comments are being removed from the code? Can you tell us more about > this? Some drivers that I was following (can't remember which ones - but highly likely to be System16) had comments removed from the drivers. I had to go back to a previous source drop to find out why something was done. Comments are useful (if used well!)... > There is no reason for these goals to conflict. The programmers must > merely keep both goals in mind while they go about their hacking. Why > they don't is probably either time constraints or laziness. There's plenty of reason. As you said before, if the end result is the same... That's fine. I can appreciate that. But if you do something differently - regardless of whether the result is the same or not - then it's not documentation any more. It's still emulation (of course!) but it isn't documentation. And when they don't do this then MAME can't claim to be a documentation project. Or, rather, it can - but it's a lie. :) > Personally, I'd rather see lousy code released rather than no code at > all. :) Lousy code can be easily fixed. Until you have MAME with lots of lousy code (although NB says it's getting better now) all over the place. Although I agree with what you say, there is now so many problems with MAME that I can't see anybody wanting to go back and fix it... > Undocumented code can also be easily documented if it's clearly > written. :/ Yes. And I've seen the MAME source code. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 23 08:05:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA14461 for dynarec-outgoing; Wed, 23 Aug 2000 08:05:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39A3E84F.2D29C0E9@eurocopter.de> Date: Wed, 23 Aug 2000 17:05:51 +0200 From: Neil Griffiths X-Mailer: Mozilla 4.7 [en] (X11; I; SunOS 5.6 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff References: <39A3DAC9.EC5DD53C@eurocopter.de> <00036f850837f078_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Whew, it's been a while since I wrote here! 2 days! Gosh! ;)) > > Just look how lazy you are! ;-) And your point is? ;) > Actually they did! Take a look ate the following architectures (just to name > a few): > MIPS, Alpha, SuperH, MCore, IA-64 Hehehe. So the CPU's I thought lazy flag wouldn't work for actually use it themselves in hardware? :)) > >Remember, MAME is meant to be a documentation project > >and not one for playing games. > > I think the lamers will tell you otherwise... I know so - but how many of the lamers actually read the text files? I know that many won't. How can I say that? Just from my program. I get many user requests about stupid little things that are in a help file. Damnit, I don't want to write something more than once! > Ok, haha. Heh. ;P > Hey, now you're mean! MAME certainly is the best example of a damn slow and > badly designed monster application - sorry that must read "second best > example" because the best example surely is Windows. *I'M* mean? ;) > >MAME would be a much better project if they sorted out the source, > > They should have done it when MAME was smaller. They won't do that anymore > because they also would have to change over 1000 drivers. Who came up with > that strange "driver" term anyway? I agree 100%. I even said that before reading this e-mail! > >stopped > >removing the (useful!) comments and decided, for once and for all, if > >they're meant to document or emulate the machines. So there. :) > > I guess they want to emulate but they're just doing it wrong. If you have a mission statement, it's always good to try and stick to it. Just my point of view. Otherwise... why have one? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 23 08:45:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA14496 for dynarec-outgoing; Wed, 23 Aug 2000 08:45:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <00036f85edfd7984_mailit@mail.dynarec.com> References: <39A3DAC9.EC5DD53C@eurocopter.de> <00036f850837f078_mailit@mail.dynarec.com> <39A3E84F.2D29C0E9@eurocopter.de> Date: Wed, 23 Aug 2000 17:52:24 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >And your point is? ;) I'm too lazy to express that now... >> MIPS, Alpha, SuperH, MCore, IA-64 >Hehehe. So the CPU's I thought lazy flag wouldn't work for actually use it >themselves in hardware? :)) Nope, they simply eliminated any type of flag calculation (MIPS is a hybrid because it still has flags for FP)! MIPS and Alpha simply use GPRs for comparison results, SuperH and MCore have a 1-bit register (for MCore it's actually the lowest bit of the PC) which is only set by compares. IA-64 is a bit special since it has 64 1-bit predication registers, two of which are set by each comparision (one for true and one for false). One of these registers can be checked by almost any instruction and even when the instruction is unconditional it tests PR0, which always yields 1. Shall I go into detail or is that clear? >I know so - but how many of the lamers actually read the text files? RTFM? What does then mean? ROM this for me? >I know >that many won't. How can I say that? Just from my program. Which program? >I get many user >requests about stupid little things that are in a help file. Damnit, I >don't want to write something more than once! Tell me about it! I wrote a page with a semi-FAQ about BeOS and still get the same stupid questions which are already covered by that page :-( >*I'M* mean? ;) Yes, and I just told the truth ;-) >If you have a mission statement, it's always good to try and stick to it. >Just my point of view. Otherwise... why have one? What are we talking about? Mission Impossible? ;-) >Neil. -- M.I.K.e "I used to think that the brain was the most wonderful organ in my body. Then I realized who was telling me this." -- Emo Phillips --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 23 10:59:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA14597 for dynarec-outgoing; Wed, 23 Aug 2000 10:59:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000823110007.00807730@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 23 Aug 2000 11:00:07 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: References: <3.0.5.32.20000821202819.00802530@powernet.net> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=====================_967078807==_" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --=====================_967078807==_ Content-Type: text/plain; charset="us-ascii" >You'd save them off before calling the memory handlers. AH Should just be >storage for the flags. You will fight an endless battle trying to keep >the 68K flags in the x86 flags register. Oh, I planned to have them in AH the whole time, but what if a LAHF ends up bringing in some flags which were altered by a non-emulation instruction? At any rate, I've looked through Starscream, and I see more clearly how the method works. I'm going to start today, hopefully I can get the MOVE instruction implemented (this should yield visible results since I can easily write a Genesis test program which displays graphics solely through the MOVE instruction). I've attached the disassembler. I made a few formatting changes, I hope it isn't a problem. I basically just added 0x's to the opcodes, and grouped them in words rather than having them print as individual bytes. I've also fixed the signed problem (as I mentioned earlier) and fixed the (disp8, An/PC, Xn.SIZE) addressing mode which wasn't printing the size correctly. It might have some more stuff in there, I don't remember ;) You might want to modify the typedefs and header. --=====================_967078807==_ Content-Type: application/zip; name="disasm.zip"; x-mac-type="705A4950"; x-mac-creator="705A4950" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="disasm.zip" UEsDBBQAAAAIAFapEymYS/1xGxkAALu/AAAIAAAARElTQVNNLkPtnftz2za2x392Z/o/oO44sWw5 kUjxZcfplS1tmi39qGXHmdvN7ogAlOjWljSS3CTbm//9EuBDX1KkTIqk7d5ZT6sYFHFwDoBz8MGD 9Mud778jO4QNZ/3Z7Qu6T3Sz0Wh46Rm/dW74tE7G0+HH4ah/c/OVOF9Juz8dj8ib4Q2f1cntmA0H Q87EF0f96VxKW/xcTv/9ddRnN+PPs9+HZDCekuGI3tzNhq6E4cgt7HfmvCDt2ezuls+IczcYcPcW 97evc74XkzX73J9MOBNXX37/3fff+aoT0iYnx1Ltl/LfZlR9cZN/4+l4zvfJ/JNbgPvfZDp2+o5r 02g8dy9y15bZnPDBYEiHfDSPCBHKils+j6c3jOzv1UDqpZBHx8z9djqcz/koVklku/9R/Ptfs+F0 eDd7Qce3NVkVQuBJ+6QrNPkfTueBTGndj7KiXKGvZvPpcPTxxafX0YtsOJbXvv9u/nXCGR+4Os4J /rw9vVSVg8X3d6PZ8OOIs+D7q9QbZp/G07l3Q1M/EGXM5v35kBL6qT8lO1RYO/utqX8gh+RPsnlJ Nutk82/y8+e34tPuic/jY/kpfz/tis/ur+Lznbz+Tl4/t8Xnicz1Rt5jX8rf5afd3STfDrz6GAgV 7beXl3b3X93Tztv2qXvVvTYc8Y3z9kX75F/XZxed7T9qZFt8HJJtT3+RnvzW+EBevSJmjfwvmfzW /FCrkwnZPSRKLS7EPjt9ExeiKihEaQkp20KMSIoSZFJZFOGm1A+1oJCWKITfzHhYFklUeGc71gI7 tWei0GVdSbKuaQICNXdTilA+RDQdseFgqdFP+r/zbptsi152M64vOov39eSoP+N12Qdnw3/7v+3Q 8d1o7v0+oa7sP7//bgOleh7vlv+b2fhwsPhSZPj8aUg/ybbfiJfl2irLEzm8S64g96IvTuaU4oSc Kf/ofnUzJs+IcYDCbsajj2RyG9w357cTrziZn/zzkDSlSp+Hcze5ve2KeP2aqDUhyLVlQxizQV01 SGNf/Loxm0xdQQOy7epRJ5udLbZZF8XXDuTXzpT3fz8IMzUTM7VXZ1ISM227uWqrsqnp2XZX5Wsl 5tu7tzzNy7fo5WR7cuvfOhyIBHlGGl9E0Bah9J6fuNp7jS9b7+u+Dnvb2J9rvuSB+4P6ed6XtyC3 nJuwoMntCoP1FQaLjiV6bKDZohrkN15FFKmGemfrhr3YopHqEH5RCwvwa6Muq/71a9JUZDeuY1PU yE/kuf2c7JPn18+L1tuSYkKV9XSIVbXh90nfLUWTyAvSHaMOmdQgJONPzCbZFWQv8LVCvaIevQEj yQOUqqTbKi/n97dsHe/8uEZ+E799uMcLJ5TskqXvd4kSqpitl2Xz1kCtG6mXcFpZfqzEpVpU76nF ZCdex42z1m59i2Zy60jjCvdpS/fpPK/n9LMS22FJf8/7S1R1qQFb+9AiAkHI4SFp1vyLfnBIbd6k 9i1YDz+KevBND8v5BjVNUFMlg6YlKBSPJqhPsgLrRLE1FID2/BaN+t8kk3koKVqI7C3gb8rnd9OR 4D439S2RWS/4R3s4m5Ntnx2BXD0CdpXxwFSy67w/FaXsNetkxkWPaAR8OPTgUMzctofyCzIkr4jp /rO7K2wir1/7PU5WoWhdrxs3a+TZs0C0kO21dVDWUJod9ogfljP9EGb6M2QHV7vd3ZqH7WE9u9Zt vtwE0AoLHZI9IXL5do9S5X0w5iffuAc3132RBxFb9iQyyyYU/y9UCE0I6+ZeAyL6G4m6G/6tq1Q2 ouZFNf32/7JN21nb1L1xD25+Cm3avqdNpcrRNvUa0Y8FkxWR4I8HDAavXiV3nGD0y997lnL+Jyw8 Wlj4i7fufwKEe8Fb2SOd4UyuHp+NuL/YR9jnd8Pp/JzWE5EnvhrlnE3EgmjyzdF7jr7O+aw9u+Rf 5qtvfzuazad3dD4cj1bf2J5+vLvlo3lNWCSqGS2469+0GZvy2UysDvoLmYFxomJCe20+CsJbwmLb duxajQQGRVbgBnwaEeCF1PGkLhcMp5+G7sfNOG0NzhPD+3XxoQSBVmKfF2z97YFDEqkecSPUg/v1 8380nns5YJV1LBncvXYzdm8Ze9MnVU7jXMWEje6116+JVQvWCaeLOw1cBxwHUy/aiK0Cfmm4P/GF oOjCl5B5KEqmORd8BmIjZvPs4q33lYfS9ePjC4nTvkaRRZsFyvO+a0iwfiuaYlInzTp55q/OxvtK 7cDzqqDq11LzxRGouTVDLeuE92uJqL+ox9bD1mMvUo25KlKpuiKvUysyW1WakaqUWwaiKkmSMa3i xiQbYS8bAbova91sNPZJkFAxoWHCwISFCQcTDBODwEflqC33BRpfVLPmdaiGGVlNXOp/+dvw5Oxd 91y0Iiwn1z1ikkvKfmyMNGPJHW8jtobvKXZ02buUOrvKeI0iQ/S9ParZwrbBhIYJAxMWJhxMMEwM Wo/RNvYTbJvjn9+s1TYmtg0mNEwYmLAw4WCCYWJgPpLfiCqIbsXIuvAb6DHaxr5Yq20otg0mNEwY mLAw4WCCYWJAH8lvnlzb9LprxTSlYnBrn3be/gXATagpyW1dcFMqBrd4PT5VcJMVeV0I3JRHBzdp hJ0P3FopjpSodQl9eVnr3tVRtj6coHxK701UvoT+k6J8tn6ToP6j9xipfs4eoz96j2l3Mka9BOUf vcdI5dftMfrjx5hO/hhj5ukxlVR6OHXK32PMR+8x4dxiDeWj/eVRlPfhew3l6aMrH9BpfuX7FQNq N1gSe9qA2g2WFtcF1H7FgBqvx6cKqN1gaXF9QO0/+uDRDZYWcwwe9NFx4/jkfF3coI8+eEjl18UN +ug9Rqqfs8fwinpM9GymoJrIMs3yuc2N5DUPsRjTEx2qvXXjL3rEj9OF1uFBrxWSOvdLSl7Uya/0 1qwu9N4UouPF5VPaldS5R1JaKOMV+VW5TXxdWhNfP1wTX5fWxNfFmjgPuuaIPeU2sV1aE9sP18R2 aU1sF2niZgO2+ZoN2LtoNmCxvIl7i03czGri7kmz6U8XgrSC2RS8U0HpuFnZxN2xJm7HNNWY9BZm a+GdLZSOu59N3G5ramZUoI536ihQR4G4g9rELbumERNo4p0mCjRRIO7CNnHbr2nFBPbxzj4K7KNA 3Mlt4tZh04kJpHgnRYEUBTK8DbcfmywmkOOdHAVyFDjA2wYoMNwzK4QKhPcVyL6NR1XEhpF4sC+4 qNaCvZ81cCTZLSWrbs28SCKc0lUnDZYU9EEFfVBBH1TQBxX0QQV9UIn5oII+qKAPKuiDCvqggj6o oA8qMR9U0AcV9EEFfVBBH1TQB5WYDyrogwr6oII+qKAPKuiDSswHFfRBBX1QQR9U0AcV9EEl5oMK +qCCPqigDyrogwr6oBLzQQV9UEEfVNAHFfRBBX1Qifmggj6ooA8q6IMK+qCCPqis9MHMA30BH8wH Eyk+aOfxQTRfwUQLEzomTEz0MUExEYJycWpKNrQd0kSAAIvzF0uWqhhtVIw2KkYbFaONitFGxWij xqKNitFGxWijYrRRMdqoGG1UjDZqLNqoGG1UjDYqRhsVo42K0UaNRRsVo42K0UbFaKNitFEx2qix aKNitFEx2qgYbVSMNipGGzUWbVSMNipGGxWjjYrRRsVoo8aijYrRRsVoo2K0UTHaqBht1Fi0UTHa qBhtVIw2KkYbFaONujLaZJ45Fog2+WanKdHmOnu0UTHaqBhtVIw2KkYbFaONitFGxWijrow2ZRja DqenGaJNKzzdW3zhZ1md0+6b9z5pba5ajmo1qqwUqcV1Fi1KGVVXaWFn0YJW3EHkMmLvon6fIjiO tDDst/DcXQvP3bXw3F0Lz9218Nxdq5yIkmLj8c+/eAeM5bQ7ixPgKbYWnmJr4Sm2Fp5ia+Epthae YmvhKbbWYFVrFu1TtiuL+JZmc3elSnc/ti+8I/L39SylSncXWlxn0qJKdxda2Jm0eBB3Pz6+399b FQ8F2fpGq+KhIFvfaFU8FGTrG60H6RtbM39nfIUmeqV94+wyW9/QK+0brhaZ+oZead9wtcjUN/SH 6hu9e7qGWWnXODruZCJIc/VTFsF6f8Lxvuv2eXC6ehNPeGc5zpCvtRNKP1+M4Ghfym5Ay1z9vEK6 ld33fue+z0r/wcfwxWMH8fP13nszyjjp7kQec3X8bnci9Aye/F2y84dDuRhUI45ffPj0u5s/9h64 GryTQz5Xu8jzR8ZsEe1iA2hqG61+bmF1G9lVt1HOHpvWRvZfu436Vcasy17G4axf5XAmtMg0nPWr HM6EFpmGs/6q4axwi7R72VokPMzzpKLh1qyOam/k86s0H6C0PFvLiyrV2MoT6aCBMZnkPm54eeGT Q/BWLCm3qeHbJxLHgGb0OEX+l2IlrAS8Pf1FfiXeUBi+k0o+6xmrnBVqRR+pWy7k6tQOC4kMUPdJ VtIHvZA0heJXvfOlgS9Fonm/RFdaPa5pKDE8Epuu2kW3173cTM3YTM14enaenk1JJ9HLVfnUdD0v u+nZtBXZeunZ9NRsote/S89orCjvIj1b/x6P2IC3Yy5OZvpl+bk2Fm+s2Pei1Gbvb8ebB5H36i1u agY3dcRNJOkmuVnk3SS6ZtpNzeCmd0cX8ZsYH/TvbubBHT/99FPsjm9rHE86Dtf8ih5POg7XSbMc T1puN+c/7Za33Uo5C3fszRNynYXLP6pcnV50j8/enL79725nMxWaeJUA+ffeRdIEOUGLKhfa/35y nkkLDTfvNdxr11qYwG1tDbekNdxO1nArWONVzlnanc6v3vn94BnzbfkKoUMi31Vqkv3YQ+cJpsMu p4Z7phrumWo6JnDPVMM9Uw33TLVK90yl6dfFTIe9LQ0PVWh4BkLD8wsanj3Q8NyAhnv+WqXOJU23 i5kOm10aHiHR8MSHhqc1NDxpoeEpCQ1POGg8erhEw106DXfpNNyl03CXTsNdOg136TTcpdPWfNcE jnLrv5J6uV06R1uz8I0PO/LlyYvXUvt/qcI/KWHW5Jzjgw/720svra6RPeEiiz8csfQatZQXWUfH orKM2ZVzE3ib9UpzXFWk9gk6R15+nf1tHPkCZRKlb81gLSFN+/tWoDQ8vqXhaSsND0dpeLBJw0NJ Gh4o0hgmBlUOFL2ro6IDBR5W0/BsmYZHwTQ8xqXhESwNj09pePRJG1Q5UEjTiw0UeKRCwyMVGh6p 0PBIhYZHKjQ8UqHhkQqtnCOhq0wvNFDoSEY6soKOo6cenn6Z3C7eaYh/X0JcF8WufPtP2QH56MLf pokHY/GnY2pPMOguFF4KuF5J68bUSK0WrdMXvQx1Kv86QL4q9bOUXaO+ugVrdNk1cCzQMTrqGC/0 5tN0jWCC9pdxjVDhp+savYu/lGuE6pbuGjiF1nFSqeM0S8eJh440pSNf6Dji6rGz63oLs+GUVcdJ nI7TGh1ZTUd60XE817VYUTj913XMhlNEHSdNOpKgjmykIy3oRqwoXFzQcbqt4wRUxymZjpypI3np yCK6FSsKly50nMzrOL3VccKnI8XqyHU6ko7uxIrChREdlwp0nDzrOJ3UkZF1pEYdOUpnsaLw9LzO MRsepdfxKL2OR+n1AeYZYJ7B0wzo/nRtKfikzXWebKAPDck86XwyA8DWLHkAyNgGT2VgCM2oqAWW BgwDpxkGTjMMnGYYjaiXGzjOGDjOGDjOGEosG44ZBo4ZBo4ZRiuWDeO/gfHfwPhv6LFsGMsNjOUG xnLDjGXDuGxgXDYwLhv9WDaMsQbGWANjrEFj2TBeGhgvDYyXBs8Q+9b6K4KLPZJf/b35va33/nMA cf/As/Lr7pFgSeLtK/Cm5fRz+CZ2UxM7n4ldysSOYmLzm9ioJjaVWek+wZl/wj/zsxUm+qCJnmWi v5joBSb2bRN7rIn90Kx0W+DMf4ogh6XQv00MGyYGAxNd3ETHNdEdTXQys9JdgDP/SYUclgLsmMje JtKxifxqImGayIAmUpq5chuvaJt23r67Cp4DzGYpTs1NnFiYiP4mwrmJ+Gwi4JoME4PEd/b7Z5KW 3rfifx9sRSQu0gVnpb2/ZVtf/Enb6CvfV+8uh1LEcn14EnW9V8YXXmwPw02+V1+buIhi4hTQxEma idMoEyc6Jk5FTJwsmIMHCTop9iZYimEC57cmzkBNnCOaOIszcZ5l4kzIrHRFOQw62S3FMIHbfyZu /5m4/Wfi9p+J238mbv+ZKx/SKyHo9HIFHQvhwEI4sBAOLIQDC+HAQjiwEA6sSuGgd3UUbI1ltRQ8 y0I4sBAOLIQDC+HAQjiwEA6sSuFAWJrrEVML4cBCOLAQDiyEAwvhwEI4sBAOrErhQFhq57MUPMtC OLAQDiyEAwvhwEI4sBAOrErhwLW0HfhppodpLYQDC+HAQjiwEA4shAML4cBCOLDKh4Oro/clwEEg pRQ4KLgRH0SbfGxgIRtYyAYWsoGFbGAhG1jIBhaygTVYdcx87Va7LqXVrstptXxetip05m02DHkI OhaCjoWgYyHoWAg6FoKONUh8qq5os9mlNJtdTrMVflAxHAfyNhvGb6Q2C6nNQmqzkNospDYLqc2q 9NUKcjSwc4wGDlKbg9TmILU5SG0OUpuD1OYgtTmVUtvxyXk+anOQ2hykNgepzUFqc5DaHKQ2B6nN qZTahKW5qM1BanOQ2hykNgepzUFqc5DaHKQ2p1JqE5bmojYHqc1BanOQ2hykNgepzUFqc5DanEqp zbU0H7U5SG0OUpuD1OYgtTlIbQ5Sm4PU5iRTW/wYabIVJ9IJ5UCxW/f+WQ74D7Lo0g1WXfKFegfB ykGwchCsHAQrB8HKQbByEKycZLDKWrHX5VRsYfTpBss7eSsW4waij4Po4yD6OIg+DqKPg+jjJKNP 1oq1y6nYwnDSDVaT8lYshimEEwfhxEE4cRBOHIQTB+HEqRROZNDLAycU4YQinFCEE4pwQhFOKMIJ RTih1T6XctrJBycU4YQinFCEE4pwQhFOKMIJRTih1T6G4lqaC04owglFOKEIJxThhCKcUIQTinBC q33qxLU0F5xQhBOKcEIRTijCCUU4oQgnFOGEVgonJ1d2vv0minBCEU4owglFOKEIJxThhCKc0NKX lNql7De1n9J+Uxhu8g0kFNGHIvpQRB+K6EMRfSiiD0X0ocnoU6DZuu+9v5Qmn7j3n48XRi4ekl/d YGF+aLBo/jyrScXbaw2iokhUFImKIlFRJCqKREWRqCgSFV2bqCL1mtguD8JSYXTOW6UYVZGlKLIU RZaiyFIUWYoiS9FKt+dOrux823MMWYohSzFkKYYsxZClGLIUQ5ZiVT/jm4+lGLIUQ5ZiyFIMWYoh SzFkKYYsxap+pDcfSzFkKYYsxZClGLIUQ5ZiyFIMWYpV/QRvPpZiyFIMWYohSzFkKYYsxZClGLIU q5SlXEvzLfQwZCmGLMWQpRiyFEOWYshSDFmKlc9SnU4J23OhlCfBUp21WIohSzFkKYYsxZClGLIU Q5ZiyFKsdJaSFV54fy6U8hT258LYmbfZMOYhUjFEKoZIxRCpGCIVQ6Ripe/PyQovvD8XSillf654 q61BbQypjSG1MaQ2htTGkNoYUhtDamOVroDJ0SDPChhHauNIbRypjSO1caQ2jtTGkdp4SG3Bm45E Hwz+ioUR6aBelv0ki3r+qvuPYW9KfsZazgfQQl9qM0mqXVSqkiT14uz9RfgSgHWkqslSC+raWlmv SdPVBCHaymrMKERfWWsZhRgrK+leISkuzxHqOUI9R6jnCPUcoZ4j1HOEeh5CfVFHuK7EEQpJTXeE 6yocoZCuqY5wXYYj5BGS7ggx3lnLEbJpkuoIwBgc53wc53wc53wc53wc53wc53w8nPMVdQS7Ekco JDXdEewqHKGQrqmOYJfhCHmEpDtCjCDXcoRsmqQ6AmAbxyUBjksCPPY4Ikd25MiOHNmRGyVyYOBN 8NRofm9qLl4SntVp2j07U+ZE37AzlpzoAnbGkhN7+sIrV2dO7OFuZjtL5pSenc3mlB59n81pPRmX fDgu+XBc8uG45MNxyYfjkg/HJR8+KAfy7Uogv6DUtJBuVwH5BXVNCel2GZCfT0haSLdLgPysmqQ6 AmI5LqJxXETjuIjGcRGN4yIax0U0PigH8u1KIL+g1HRHqADyC+qa6gglQH4+IemOUBzys2qS6giI 5bgsyXFZkuOyJMdlSY7LkhyXJfmgHMi3K4H8glLTHaECyC+oa6ojlAD5+YSkO0JxyM+qSdwRgheZ p7/bIud7v90C3M+XL8kbPifzT5zc8NHH+ScyHrip4ejjTH7PPtt8RA69d8+oSo1MyB4knLOJeAGM kLcTJI6+zvmsPbvkX+Zuxuf/aDw/kKLEor4iuoOUKfzqz2VjfCO2E4S5BjW+bDWU9+J/kv6zWSc7 YX6yS5o1vOC9FEfUrr+eL9RqlabWag1Xq+ZeaMQvqPELSqIBehUGpNhSihGxC1r8QivRTLNiM+MW P5CpsQtG/ILuV8bG8g8hfg1tCFf+/Kk//8n9IVej30fjzyPfp39Yp7J2dq5Ofzk9uz4ldvf0zeXP +2Trbmdns+7X/yKETPn8bjraDi+7V/8PUEsDBBQAAAAIADWVDykO6gKxqQAAALUBAAAIAAAARElT QVNNLkilUE/rgkAUvAv7HR50KZFWFCLoZHTxkh2su+2+dA8+Zf9Qffsyo7CC+vGb27xh3gzDfeaB D1KZwtTTqiOcecwbSTwoQtim6zyOABwZVRLKoTKHpwKiKnRnfRxWyszmYRhmhOP7H3ncKW03IoB3 cA5dmU/os/x2n7Wikfg/9/Js0SQmx5MNvjlSMlY7YVVDL6G/5CW6dDWS/VPbyeK2v6Przv2rAYsj 5l0AUEsBAhQAFAAAAAgAVqkTKZhL/XEbGQAAu78AAAgAAAAAAAAAAQAgAAAAAAAAAERJU0FTTS5D UEsBAhQAFAAAAAgANZUPKQ7qArGpAAAAtQEAAAgAAAAAAAAAAQAgAAAAQRkAAERJU0FTTS5IUEsF BgAAAAACAAIAbAAAABAaAAAAAA== --=====================_967078807==_ Content-Type: text/plain; charset="us-ascii" Bart --=====================_967078807==_-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 23 11:04:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA14614 for dynarec-outgoing; Wed, 23 Aug 2000 11:04:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000823110519.00802890@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 23 Aug 2000 11:05:19 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <39a23d81.1935.0@btinternet.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >In my ARM->x86 dynarec, ARMphetamine, I tracked the validity of each flag individually, >storing each with SETcc instructions before they were clobbered (which needed >some meta-information for each instruction emitted by the x86 backend) and only >getting the relevant flag values back into x86 flags when they were required. >This sort-of worked quite well, but the flag-restoring code produced wasn't >great (I didn't use LAHF/SAHF since they didn't read/write V). I'm going to use LAHF, and simply manage the V flag in AL separately. I could use: seto al when necessary to do it. I think it would work really well. Using a lot of SETcc's would take up a lot of space, since I'd need at least a byte for each flag which might force them out to memory :/ >How are you planning to get the V and X emulated flags back into the x86 flags >register? It's probably possible quite easily, I was just wondering if you'd >come up with a better solution than me... I'm not going to save them back to the X86 flags, they're going to be kept in EAX the whole time. I will have to load and save to the CCR in the context, and I'll have to do that with some manual shifting/twidding. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 25 05:38:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA16791 for dynarec-outgoing; Fri, 25 Aug 2000 05:38:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Dynarec Classification From: "M.I.K.e" Message-ID: <00036fab8bc9b346_mailit@mail.dynarec.com> Date: Fri, 25 Aug 2000 14:45:05 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, I might try to classify each open source dynarec in a large tabel. For that purpose I collected some catogories and possible solutions by which a dynarec could be classified. This is just some brainstorming, so comments, corrections, and additions are more then welcome. Source Code Translation (how the code is translated) * direct (instruction per instruction) * intermediate (whole block is decoded first) * virtual intermediate processor Cover Generation: * templates * dynamic generation Target Code Representation: * preassembled instructions * hex code * macros * code emitters Register Allocation: * accumulator (only one register used for operations) * static * dynamic Block Calling: * Prologue/Epilogue * Master Block Translation Cache Lookup: * TLB * TransMap * Paged TransMap * proprietary (eg. UltraHLE) Self-Modifying Code: * ignored * system call (Cache_Flush calls trapped) * checksum * dirty page -- M.I.K.e "I have made mistakes but I have never made the mistake of claiming that I have never made one." -- James Gordon Bennett --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 26 21:11:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA20756 for dynarec-outgoing; Sat, 26 Aug 2000 21:11:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 26 Aug 2000 21:28:13 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Hehehehehe Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Slightly off topic, but off topic seems to be the norm for this list. ;-) Just got off the phone with one of the sysadmins for Linux.com's primary download point. Turns out that Linux couldn't handle the load - it's now running FreeBSD. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 26 22:14:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA20807 for dynarec-outgoing; Sat, 26 Aug 2000 22:14:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000826221532.00809100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 26 Aug 2000 22:15:32 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Hehehehehe In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 09:28 PM 8/26/2000 +0000, you wrote: >Slightly off topic, but off topic seems to be the norm for this list. ;-) > >Just got off the phone with one of the sysadmins for Linux.com's primary >download point. Turns out that Linux couldn't handle the load - it's now >running FreeBSD. ;-) Go FreeBSD! I like FreeBSD. But last I heard (I'm running 3.1), the driver system and multithreading weren't as good as Linux (although FreeBSD still sure as hell seems to outperform it). Is anything being done right now to really revamp any of the areas in FreeBSD which might potentially be one-upped by Linux? I haven't been keeping up at all :/ Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 02:18:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA21160 for dynarec-outgoing; Sun, 27 Aug 2000 02:18:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Hehehehehe From: "M.I.K.e" Message-ID: <00036fd100b777a5_mailit@mail.dynarec.com> References: Date: Sun, 27 Aug 2000 11:26:21 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Slightly off topic, but off topic seems to be the norm for this list. ;-) Well, at least it isn't so silent anymore... >Just got off the phone with one of the sysadmins for Linux.com's primary >download point. Turns out that Linux couldn't handle the load - it's now >running FreeBSD. ;-) Strike! Yeees! ;-) >-->Neil -- M.I.K.e Serving coffee on aircraft causes turbulence. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 11:36:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA21600 for dynarec-outgoing; Sun, 27 Aug 2000 11:36:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008301c01056$7f6792e0$9fc1523e@hal9000> From: "Victor Moya del Barrio" To: References: <00036fd100b777a5_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Hehehehehe Date: Sun, 27 Aug 2000 20:42:03 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Slightly off topic, but off topic seems to be the norm for this list. ;-) > > Well, at least it isn't so silent anymore... > Silent? I have gotten around 60 mails to read. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 11:46:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA21617 for dynarec-outgoing; Sun, 27 Aug 2000 11:46:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 27 Aug 2000 12:03:44 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Hehehehehe In-Reply-To: <3.0.5.32.20000826221532.00809100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >download point. Turns out that Linux couldn't handle the load - it's now > >running FreeBSD. ;-) > I like FreeBSD. But last I heard (I'm running 3.1), the driver system and > multithreading weren't as good as Linux (although FreeBSD still sure as > hell seems to outperform it). Define "good". The multithreading certainly is, but the drivers aren't. They're still single threaded. But regardless, FreeBSD still manages to kick Linux in the ass. ;-) > Is anything being done right now to really > revamp any of the areas in FreeBSD which might potentially be one-upped by > Linux? I haven't been keeping up at all :/ They're still looking at areas where that occurs, and I don't think they've found any. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 12:26:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA21656 for dynarec-outgoing; Sun, 27 Aug 2000 12:26:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Hehehehehe From: "M.I.K.e" Message-ID: <00036fd9441b9f2f_mailit@mail.dynarec.com> References: <00036fd100b777a5_mailit@mail.dynarec.com> <008301c01056$7f6792e0$9fc1523e@hal9000> Date: Sun, 27 Aug 2000 21:17:51 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Silent? I have gotten around 60 mails to read. ;) Who comes late is punished by life ;-) >Victor Great Victor is back! Now we'll have some nice discussions again ;-) -- M.I.K.e A day without sunshine is like night. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 12:44:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA21679 for dynarec-outgoing; Sun, 27 Aug 2000 12:44:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com Subject: DYNAREC: New UAE compiler From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Sun, 27 Aug 2000 21:56:43 +0200 Message-ID: <1eg1m4j.k9yi891tah7oaM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id MAA21676 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, In case you didn't notice, B. Meyer contributed another compiler that looks pretty good. Patches against UAE 0.8.14 are available on the main UAE site. Sorry for being so short, yet one week to go before being really on holidays... Bye. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 13:00:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA21705 for dynarec-outgoing; Sun, 27 Aug 2000 13:00:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 27 Aug 2000 13:18:08 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New UAE compiler In-Reply-To: <1eg1m4j.k9yi891tah7oaM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > In case you didn't notice, B. Meyer contributed another compiler that > looks pretty good. Patches against UAE 0.8.14 are available on the main > UAE site. What exactly does it compile? -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 13:12:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA21722 for dynarec-outgoing; Sun, 27 Aug 2000 13:12:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: New UAE compiler From: "M.I.K.e" Message-ID: <00036fda09ca970a_mailit@mail.dynarec.com> References: Date: Sun, 27 Aug 2000 22:13:07 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> In case you didn't notice, B. Meyer contributed another compiler that >> looks pretty good. Patches against UAE 0.8.14 are available on the main >> UAE site. >What exactly does it compile? Since UAE is an Amiga emulator the source should be 68K and I could almost bet the the target is x86. >-->Neil -- M.I.K.e "That boy's about as sharp as a pound of wet liver" -- Foghorn Leghorn --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 13:15:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA21737 for dynarec-outgoing; Sun, 27 Aug 2000 13:15:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 27 Aug 2000 13:32:31 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New UAE compiler In-Reply-To: <00036fda09ca970a_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> looks pretty good. Patches against UAE 0.8.14 are available on the main > >> UAE site. > >What exactly does it compile? > Since UAE is an Amiga emulator the source should be 68K and I could almost > bet the the target is x86. IS this a recompiler or a compiler? I'm very confused... -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 13:23:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA21750 for dynarec-outgoing; Sun, 27 Aug 2000 13:23:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <024701c01065$174038c0$0200000a@nickscomp> From: "Nick" To: References: <00036fab8bc9b346_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec Classification Date: Sun, 27 Aug 2000 13:26:33 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I might try to classify each open source dynarec in a large tabel. For that > purpose I collected some catogories and possible solutions by which a dynarec > could be classified. I'm new to the list (and to dynarec in general), and I didn't understand most of the terms that followed in this email. All my previous emulation cores have been pure interprative. Is there some kind of "dynarec bible" or site I could check out that would explain the theory behind all these terms? Thanks, Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 13:27:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA21763 for dynarec-outgoing; Sun, 27 Aug 2000 13:27:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <025b01c01065$b99895e0$0200000a@nickscomp> From: "Nick" To: References: <00036fab8bc9b346_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec Classification Date: Sun, 27 Aug 2000 13:31:05 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Incidentally, allmost all the subpages of dynarec.com are 404. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 13:32:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA21777 for dynarec-outgoing; Sun, 27 Aug 2000 13:32:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008701c01066$c8ef2bc0$e8c5523e@hal9000> From: "Victor Moya del Barrio" To: References: <39A3DAC9.EC5DD53C@eurocopter.de> Subject: Re: DYNAREC: Flags and stuff Date: Sun, 27 Aug 2000 22:38:38 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Anyway, when the moment comes when a MAMEDEVian is concerned about speed > then MAME is a lie. Remember, MAME is meant to be a documentation project > and not one for playing games. Of course, we all know this is a lie - but > so long as they're going to keep up this charade then I'm going to laugh > about it. ;) > Well I think MAME is only useful for documentation because who could play which such an awful emulator. ;) > Besides, when they remove comments from the code then I can't see it being > a documentation project. And if they're not emulating the machine exactly > as it worked (lazy flag calculation for example?) then how is it > documenting? > Then MAME is useless at all. ;) > MAME would be a much better project if they sorted out the source, stopped > removing the (useful!) comments and decided, for once and for all, if > they're meant to document or emulate the machines. So there. :) > Seriously, the only interest I have with MAME is because it could be used as a documentation source for CPUs, graphics and sound processors. Also for the arcade machines of course. I think it is sad that the only really good point about MAME isn't working. BTW. Why they remove the comments? It's common to find open source code uncommented because people lazyness perhaps. It seems commenting code isn't fun for some people. But really, deleting comments? That's is really too big. > Neil. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 13:42:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA21793 for dynarec-outgoing; Sun, 27 Aug 2000 13:42:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00bc01c01068$2d8359c0$e8c5523e@hal9000> From: "Victor Moya del Barrio" To: References: <00036fab8bc9b346_mailit@mail.dynarec.com> <024701c01065$174038c0$0200000a@nickscomp> Subject: Re: DYNAREC: Dynarec Classification Date: Sun, 27 Aug 2000 22:48:37 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I'm new to the list (and to dynarec in general), and I didn't understand > most of the terms that followed in this email. All my previous emulation > cores have been pure interprative. Is there some kind of "dynarec bible" or > site I could check out that would explain the theory behind all these terms? > > Welcome. :) Try MIKe's DRFAQ at http://www.dynarec.com/~mike/drfaq.html In any case it is still under construction. And about a "bible" ... someday perhaps. ;) In any case just ask what you don't understand and we will try to help you. > Nick > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 13:51:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA21809 for dynarec-outgoing; Sun, 27 Aug 2000 13:51:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <027801c01069$0e5c14a0$0200000a@nickscomp> From: "Nick" To: References: <00036fab8bc9b346_mailit@mail.dynarec.com> <024701c01065$174038c0$0200000a@nickscomp> <00bc01c01068$2d8359c0$e8c5523e@hal9000> Subject: Re: DYNAREC: Dynarec Classification Date: Sun, 27 Aug 2000 13:54:56 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > In any case just ask what you don't understand and we will > try to help you. Thanks for the encouragement. I'll check out that link. Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 13:57:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA21822 for dynarec-outgoing; Sun, 27 Aug 2000 13:57:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00c801c0106a$497731e0$e8c5523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: New tech doc site? Date: Sun, 27 Aug 2000 23:03:43 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com As out dated as hell, anyway ... > Lots are, unfortunately, and what I've noticed after analyzing it is that > it's mostly the console emulator guys. I've found the arcade emulator team > to be far more polite - most likely because of the age demographic. > I like console emulators. There aren't RPG arcade machines. :( > > First of all, there's the unappreciative crowd. You can do tons of work on > an emulator, get 1000 messages of praise, and you get that one message > where someone is just a whiny shit. When I released Retrocade there were > several NASTY people who were down on Retrocade just for the sake of being > down on it. That tends to make emulator authors a bit jaded. > Yes, that is a problem I have thought about. Only two solutions: ignore them or don't post your real mail address. In any case I think is also a matter about why you are doing an emulator, if it is for just your own fun then it doesn't matter what the lamers will do (well they could send thousand of nasty mails and saturate your mail account ;). If you are developing something for others fun then there is a real problem. Most people isn't enough polite. > Thirdly, as I posted before, a *LOT* of the egocentric authors that I knew > were fairly young. Not that this is necessarily a bad thing, but the > younger people are, the more argumentative they tend to be (it was > certainly the case with me and still is to some extent) > Well what is a young guy. I'm 23 so I could be still called young (not for a long time though ;) and I think I'm a quiet and peaceful guy. But perhaps I'm a bit rare :o > Fourthly, email is a horrible communication medium. I've seen flamewars > and downright rudeness to people that wouldn't occur if they were face to > face conversations. There's so much left out of the communication process > when dealing with email. > Yes. Most of the time your are mailing with someone thousand of kilometers away of you ;) it is hard he will come to "argue" directly with you. And a fast written mail isn't the best communication method. > Fifthly, not everyone's native language is English, so a lot of times ego > comes across when there really is none. > My poor bad English. ;) > As an example, the only direct experience with Marat I've had was an ICQ > of a gathering of emulator authors. He was the only one who started and > continued an argument, and subsequently spin doctored his statements when > he was technically cornered. I've observed email exchanges with him and > other NES developers where all he did was just throw a wrench into the > discussion. I recall one such thing where a mapper problem was trying to > be solved and all he did was dig for excuses on why something wouldn't > work - and some of the excuses were ridiculous. He had *NO* interest in > trying to help out. It was really, really weird, and I have no explanation > for it. > I think Marat is really falling depth in my list ... It doesn't matter anyway it is HIS problem, nor mine I just have to ignore him. ;) > > I know you Neil and I know you are a fair guy, but I don't know > > how Richard is (I'm biased). > > All I knew is that someone (Richard Mitton) with whom I never had a single > conversation was badmouthing mz80 badly, it got back to me, and I emailed > the basher directly to find out what his issues were. He released RAZE > about a month later, so it explained his anti-MZ80 behavior. Even after > that and his little comment on his web site, I *STILL* helped him with > RAZE, but he further refused to eliminate his comments against MZ80 on his > web site. It used to say "For a faster but less accurate emulator, why not > try MZ80?". He changed it to "For a faster (but possibly) less acurate > emulator why not try Neil Bradley's excellent MZ80?". > I think the accuracy he talks about is related with Z80 R register (memory refresh I think but not sure) and many undocumented and really nasty flags features. I think they aren't so useful, may be really useless at all. I think MZ80 doesn't have them but I could be wrong. > > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 14:01:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21840 for dynarec-outgoing; Sun, 27 Aug 2000 14:01:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00d801c0106a$db1d9260$e8c5523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: Finally! Date: Sun, 27 Aug 2000 23:07:46 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > BTW, any idea on when we'll be able to start on the dynarec properly? I'm > > going to be in a right mess probably from the start of next week because > > I'm moving back to the UK. As far as I'm concerned, if it's starting in 3 > > weeks or more then great! :) > > It'll be a few weeks for me... > I have returned now and I won't be off until a long time. ;) The next months I will be really very involved with emulation, I have to finish (start?) my university project. ;) In any case I'm anxious to start with DR68K. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 14:22:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21863 for dynarec-outgoing; Sun, 27 Aug 2000 14:22:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec Classification From: "M.I.K.e" Message-ID: <00036fdb01d4bdc7_mailit@mail.dynarec.com> References: <00036fab8bc9b346_mailit@mail.dynarec.com> <024701c01065$174038c0$0200000a@nickscomp> Date: Sun, 27 Aug 2000 23:22:29 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm new to the list (and to dynarec in general), Welcome aboard! >and I didn't understand >most of the terms that followed in this email. Not that surprising actually since we are mainly a few hard core posters here and use very specific terms of which some have even sprung from our own mad minds ;-) >All my previous emulation cores have been pure interprative. Then you have at least a good starting point >Is there some kind of "dynarec bible" or >site I could check out that would explain the theory behind all these terms? As Victor mentioned there is my DRFAQ. Although it's far from finished it should provide you with most of the information you need to understand what we are talking about. BTW, how did you hear about this mailing list? >Nick -- M.I.K.e Real computer scientists only write specs for languages that might run on future hardware. Nobody trusts them to write specs for anything homo sapiens will ever be able to fit on a single planet. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 14:22:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21876 for dynarec-outgoing; Sun, 27 Aug 2000 14:22:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec Classification From: "M.I.K.e" Message-ID: <00036fdb047a16c8_mailit@mail.dynarec.com> References: <00036fab8bc9b346_mailit@mail.dynarec.com> <025b01c01065$b99895e0$0200000a@nickscomp> Date: Sun, 27 Aug 2000 23:23:13 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Incidentally, allmost all the subpages of dynarec.com are 404. It's work in progress... NG, where are you?!? -- M.I.K.e I can read your mind, and you should be ashamed of yourself. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 14:22:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21885 for dynarec-outgoing; Sun, 27 Aug 2000 14:22:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec Classification From: "M.I.K.e" Message-ID: <00036fdb165e0bd9_mailit@mail.dynarec.com> References: <00036fab8bc9b346_mailit@mail.dynarec.com> <024701c01065$174038c0$0200000a@nickscomp> <00bc01c01068$2d8359c0$e8c5523e@hal9000> Date: Sun, 27 Aug 2000 23:28:13 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >http://www.dynarec.com/~mike/drfaq.html >In any case it is still under construction. And about a "bible" ... >someday perhaps. ;) What? My DRFAQ isn't your bible? You're infidel! ;-) >Victor -- M.I.K.e "His great aim was to escape from civilization, and, as soon as he had money, he went to Southern California." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 14:22:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21892 for dynarec-outgoing; Sun, 27 Aug 2000 14:22:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <00036fdb0f01e4c4_mailit@mail.dynarec.com> References: <39A3DAC9.EC5DD53C@eurocopter.de> <008701c01066$c8ef2bc0$e8c5523e@hal9000> Date: Sun, 27 Aug 2000 23:26:10 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com It's strange you're just back from holidays and messages begin to flow again... I nominate you, Victor, for the title of Message Magnet! ;-) >Well I think MAME is only useful for documentation because who could >play which such an awful emulator. ;) Agreed ;-) >Then MAME is useless at all. ;) Hey, it's size makes it a great program to test link viruses with ;-) >Victor -- M.I.K.e (1) Everything depends. (2) Nothing is always. (3) Everything is sometimes. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 14:22:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21895 for dynarec-outgoing; Sun, 27 Aug 2000 14:22:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: New UAE compiler From: "M.I.K.e" Message-ID: <00036fdaf1d0e073_mailit@mail.dynarec.com> References: Date: Sun, 27 Aug 2000 23:18:00 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >IS this a recompiler or a compiler? I'm very confused... They call it JIT-compiler, but I'm not sure if it handles self-mofifying code. But I don't think that this kind of code is so easy to maintain: static __inline__ void raw_bt_l_ri(int r, uae_u8 i) { emit_byte(0x0f); emit_byte(0xba); emit_byte(0xe0+r); emit_byte(i); } >-->Neil -- M.I.K.e When Marriage is Outlawed, Only Outlaws will have Inlaws. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 14:36:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21917 for dynarec-outgoing; Sun, 27 Aug 2000 14:36:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <013c01c0106f$a7fa8000$e8c5523e@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Video scrolling doubt Date: Sun, 27 Aug 2000 23:41:32 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I was reading last two weeks some documents about Genesis and Master System, mainly interested in knowing about graphic and sound emulation. Now I think I'm beginning to be in the good way. But I still have some doubts, perhaps because lack of information in the documents, a problem really common with emulation :p. My main doubt is how it really works the scroll. The problem I find it is when the displayed scroll layer is the same size as the virtual scroll layer. What happens then? You have a pixel offset value that tells you where to start drawing the first column (for horizontal scrolling) in line. What happens with the pixels before that offset. I think the line should wrap to the start of the displayed line when it hits out of the screen but I'm not sure. This is related with the Master System. I'm also confused with the MS documentation because it seems that the vertical scroll tells the row to display in the first line and the horizontal scroll tell the pixel offset where to start to draw the first column in the line. May be is MS specific, related with the fact that the horizontal virtual size is the same that the displayed size, which isn't the case with the vertical scroll, it has more rows the virtual scroll table. I think I will try to write some kind of simple MS emulator in this week (I hope it won't take more time), only graphics and using MZ80 for the CPU so I can test my ideas. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 14:39:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21927 for dynarec-outgoing; Sun, 27 Aug 2000 14:39:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <014c01c01070$13752600$e8c5523e@hal9000> From: "Victor Moya del Barrio" To: References: <00036fab8bc9b346_mailit@mail.dynarec.com> <024701c01065$174038c0$0200000a@nickscomp> <00036fdb01d4bdc7_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec Classification Date: Sun, 27 Aug 2000 23:45:10 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > M.I.K.e > > Real computer scientists only write specs for languages that might run > on future hardware. Nobody trusts them to write specs for anything homo > sapiens will ever be able to fit on a single planet. > Sadly true, don't you think so. ;) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 14:42:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21940 for dynarec-outgoing; Sun, 27 Aug 2000 14:42:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <015b01c01070$7b4d02c0$e8c5523e@hal9000> From: "Victor Moya del Barrio" To: References: <00036fab8bc9b346_mailit@mail.dynarec.com> <024701c01065$174038c0$0200000a@nickscomp> <00bc01c01068$2d8359c0$e8c5523e@hal9000> <00036fdb165e0bd9_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec Classification Date: Sun, 27 Aug 2000 23:47:08 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >http://www.dynarec.com/~mike/drfaq.html > >In any case it is still under construction. And about a "bible" ... > >someday perhaps. ;) > > What? My DRFAQ isn't your bible? You're infidel! ;-) > Sorry your highness. I will impose me a severe punishment because of my fault. ;) Also recommend Nick to read some of the documents linked in DRFAQ. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 14:44:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21951 for dynarec-outgoing; Sun, 27 Aug 2000 14:44:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <02a401c01070$66737c80$0200000a@nickscomp> From: "Nick" To: References: <00036fab8bc9b346_mailit@mail.dynarec.com> <024701c01065$174038c0$0200000a@nickscomp> <00036fdb01d4bdc7_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec Classification Date: Sun, 27 Aug 2000 14:47:30 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > As Victor mentioned there is my DRFAQ. Although it's far from finished it > should provide you with most of the information you need to understand what > we are talking about. I found it usefull, but it seemed to end just when it was really getting good. I'd love to see that doc finished. The section headers at the bottom left empty refer to a lot of the techniques I was most interested in. I'm starting to branch out to the links at the bottom of the faq. > BTW, how did you hear about this mailing list? It was though a friend in #nesdev on efnet. I go by Lothos_ there. Dont worry, i'm not the typical nes scene jerk (yeah, I was here for that discussion) ;-) Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 14:44:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21960 for dynarec-outgoing; Sun, 27 Aug 2000 14:44:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <016101c01070$da78b820$e8c5523e@hal9000> From: "Victor Moya del Barrio" To: References: <39A3DAC9.EC5DD53C@eurocopter.de> <008701c01066$c8ef2bc0$e8c5523e@hal9000> <00036fdb0f01e4c4_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Sun, 27 Aug 2000 23:49:13 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > It's strange you're just back from holidays and messages begin to flow > again... > I nominate you, Victor, for the title of Message Magnet! ;-) > Are you trying to say I write too many useless unneeded messages. ;) > >Then MAME is useless at all. ;) > > Hey, it's size makes it a great program to test link viruses with ;-) > "Test link viruses"?. What is a link virus? > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 14:54:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21976 for dynarec-outgoing; Sun, 27 Aug 2000 14:54:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec Classification From: "M.I.K.e" Message-ID: <00036fdb84f35ce6_mailit@mail.dynarec.com> References: <00036fab8bc9b346_mailit@mail.dynarec.com> <024701c01065$174038c0$0200000a@nickscomp> <00bc01c01068$2d8359c0$e8c5523e@hal9000> <00036fdb165e0bd9_mailit@mail.dynarec.com> <015b01c01070$7b4d02c0$e8c5523e@hal9000> Date: Sun, 27 Aug 2000 23:59:09 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Sorry your highness. I will impose me a severe punishment >because of my fault. ;) Ah, that's better! You're just back and we're teasing each other again, it's just as if you've never left ;-) >Also recommend Nick to read some of the documents >linked in DRFAQ. Thought about it but just forgot to type it down... >Victor -- M.I.K.e "Why isn't there a special name for the tops of your feet?" -- Lily Tomlin --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 14:54:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21985 for dynarec-outgoing; Sun, 27 Aug 2000 14:54:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Video scrolling doubt From: "M.I.K.e" Message-ID: <00036fdb8d62823b_mailit@mail.dynarec.com> References: <013c01c0106f$a7fa8000$e8c5523e@hal9000> Date: Mon, 28 Aug 2000 00:01:30 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I was reading last two weeks some documents about Genesis and >Master System, mainly interested in knowing about graphic and sound >emulation. Now I think I'm beginning to be in the good way. Then you could start writing your emulation documentation ;-) >But >I still have some doubts, perhaps because lack of information in >the documents, a problem really common with emulation :p. I'm afarid so. >My main doubt is how it really works the scroll. NB's turn, he should be the specialist for this topic. >Victor -- M.I.K.e "If the King's English was good enough for Jesus, it's good enough for me!" -- "Ma" Ferguson, Governor of Texas (circa 1920) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 15:05:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA22007 for dynarec-outgoing; Sun, 27 Aug 2000 15:04:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec Classification From: "M.I.K.e" Message-ID: <00036fdbadfbb4ea_mailit@mail.dynarec.com> References: <00036fab8bc9b346_mailit@mail.dynarec.com> <024701c01065$174038c0$0200000a@nickscomp> <00036fdb01d4bdc7_mailit@mail.dynarec.com> <02a401c01070$66737c80$0200000a@nickscomp> Date: Mon, 28 Aug 2000 00:10:37 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I found it usefull, but it seemed to end just when it was really getting >good. Don't apreciate my clifhanger feature? ;-) >I'd love to see that doc finished. Me too... The problem is lack of time, and I still have to do a bit of research or thinking about some topics to present them in the quality I want to achieve. >The section headers at the bottom >left empty refer to a lot of the techniques I was most interested in. I bet it's mainly those parts I have only half baked ideas of. Maybe you want to discuss some of the topics here, since it sometimes help to identfy the essence of a point when explaining it to someone else. That way I might be able to extend the DRFAQ as well. >I'm starting to branch out to the links at the bottom of the faq. Good idea. >It was though a friend in #nesdev on efnet. I go by Lothos_ there. Dont >worry, i'm not the typical nes scene jerk (yeah, I was here for that >discussion) ;-) Tell [need ROMs] me [need ROMs] about [need ROMs] your [need ROMs] problem ;- ) >Nick -- M.I.K.e Crime does not pay ... as well as politics. -- A. E. Newman --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 15:05:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA22015 for dynarec-outgoing; Sun, 27 Aug 2000 15:05:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <00036fdbb2a5d384_mailit@mail.dynarec.com> References: <39A3DAC9.EC5DD53C@eurocopter.de> <008701c01066$c8ef2bc0$e8c5523e@hal9000> <00036fdb0f01e4c4_mailit@mail.dynarec.com> <016101c01070$da78b820$e8c5523e@hal9000> Date: Mon, 28 Aug 2000 00:11:55 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> I nominate you, Victor, for the title of Message Magnet! ;-) >Are you trying to say I write too many useless unneeded messages. ;) Nope, it was actually meant the positive way that you always seem to start interesting discussions. >"Test link viruses"?. What is a link virus? Is that an honest question? >Victor -- M.I.K.e "I like work ... I can sit and watch it for hours." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 15:45:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA22059 for dynarec-outgoing; Sun, 27 Aug 2000 15:45:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 27 Aug 2000 16:03:03 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <008701c01066$c8ef2bc0$e8c5523e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > then MAME is a lie. Remember, MAME is meant to be a documentation project > > and not one for playing games. Of course, we all know this is a lie - but > > so long as they're going to keep up this charade then I'm going to laugh > > about it. ;) > Well I think MAME is only useful for documentation because who could > play which such an awful emulator. ;) And if you can believe it, it is being proposed that all the dirty tiling systems on a per game basis should be removed, as Nicola and company don't care about less capable machines (like the Casio E-105 or HP Jornada). > Seriously, the only interest I have with MAME is because it could > be used as a documentation source for CPUs, graphics and > sound processors. Also for the arcade machines of course. I think > it is sad that the only really good point about MAME isn't working. It'd be nice if a big "emulation tome" was written - one that documents the inner workings of all arcade machines. Memory maps, etc... that way people can write emulators for any given game and wouldn't have to touch MAME's source or reverse engineer the code. > BTW. Why they remove the comments? It's common to find > open source code uncommented because people lazyness perhaps. > It seems commenting code isn't fun for some people. But really, > deleting comments? That's is really too big. No idea why. It's hard enough to even get people to comment code! -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 15:49:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA22069 for dynarec-outgoing; Sun, 27 Aug 2000 15:49:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 27 Aug 2000 16:06:25 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New tech doc site? In-Reply-To: <00c801c0106a$497731e0$e8c5523e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yes, that is a problem I have thought about. Only two solutions: ignore > them or don't post your real mail address. The problem is that to really understand your "customer" you've got to go trolling for comments on message boards, etc... And you'll see them regardless. > > younger people are, the more argumentative they tend to be (it was > > certainly the case with me and still is to some extent) > Well what is a young guy. I'm 23 so I could be still called young (not > for a long time though ;) and I think I'm a quiet and peaceful guy. But > perhaps I'm a bit rare :o Not all young guys are like that, but a good majority of them are. > > RAZE, but he further refused to eliminate his comments against MZ80 on his > > web site. It used to say "For a faster but less accurate emulator, why not > > try MZ80?". He changed it to "For a faster (but possibly) less acurate > > emulator why not try Neil Bradley's excellent MZ80?". > I think the accuracy he talks about is related with Z80 R register Nope - I'm the one who told HIM how it worked and corrected about 5 problems with his core. The problem is "less accurate" unqualified isn't a fair statement. > (memory refresh I think but not sure) and many undocumented and really > nasty flags features. If you're talking about bits 3 & 5 emulation, MZ80 doesn't have that, nor does RAZE. I can't think of a single flag handling thing that RAZE has that MZ80 doesn't. > I think they aren't so useful, may be really useless > at all. They aren't, actually, because a lot of older Spectrum games use them. -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 15:52:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA22082 for dynarec-outgoing; Sun, 27 Aug 2000 15:52:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <02d001c01079$fc351b80$0200000a@nickscomp> From: "Nick" To: References: <00036fab8bc9b346_mailit@mail.dynarec.com> <024701c01065$174038c0$0200000a@nickscomp> <00036fdb01d4bdc7_mailit@mail.dynarec.com> <02a401c01070$66737c80$0200000a@nickscomp> <00036fdbadfbb4ea_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec Classification Date: Sun, 27 Aug 2000 15:56:07 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I bet it's mainly those parts I have only half baked ideas of. Maybe you want > to discuss some of the topics here, since it sometimes help to identfy the > essence of a point when explaining it to someone else. That way I might be > able to extend the DRFAQ as well. I'd love to do that, the problem of course is that i'm unfamiliar with the topics themselves. Hopefully I can fix that with the links at the bottom of the faq which i'm reading right now, then we can bat around some ideas. > Tell [need ROMs] me [need ROMs] about [need ROMs] your [need ROMs] problem ;-) No no, grasshopper, my emulator is unreleased *grin* Actually I have this bad habbit about my projects. I usually start them just to learn about a particular theory or algorithim. I wanted to learn about emulation, so I wrote a -working- NES emulator. Then because I understood the theory and had solved the main problems with emulating non-native code, I stopped developing it. It works, but its pretty feature-poor. Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 18:39:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA22224 for dynarec-outgoing; Sun, 27 Aug 2000 18:39:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000827184030.0080d100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 27 Aug 2000 18:40:30 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Video scrolling doubt In-Reply-To: <013c01c0106f$a7fa8000$e8c5523e@hal9000> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 11:41 PM 8/27/2000 +0200, you wrote: >I was reading last two weeks some documents about Genesis and >Master System, mainly interested in knowing about graphic and sound >emulation. Now I think I'm beginning to be in the good way. But >I still have some doubts, perhaps because lack of information in >the documents, a problem really common with emulation :p. The Master System and Genesis documents are among the best. But you are right, they are indeed a bit lacking in certain key areas :( Charles Mac Donald has nice VDP documents for both systems which clarify lots of otherwise undocumented oddities. >My main doubt is how it really works the scroll. The problem >I find it is when the displayed scroll layer is the same size >as the virtual scroll layer. What happens then? You have >a pixel offset value that tells you where to start drawing the first >column (for horizontal scrolling) in line. What happens >with the pixels before that offset. I think the line should wrap >to the start of the displayed line when it hits out of the screen >but I'm not sure. This is related with the Master System. With the Genesis, the scrolling wraps around. Even if the virtual playfield is bigger than the visible playfield, if you specify a scroll offset beyond the limit of the virtual playfield, it will wrap to the beginning of the SAME line. It never wraps to the next line, always to the beginning of the same line. Almost every game uses this to some effect, if it isn't emulated, what happens is you notice parts of the image are offset, and it appears to look like a staircase. >I think I will try to write some kind of simple MS emulator >in this week (I hope it won't take more time), only graphics and >using MZ80 for the CPU so I can test my ideas. Yeah, testing is always good :) If it doesn't work, then you will see the results visually :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 27 19:04:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA22253 for dynarec-outgoing; Sun, 27 Aug 2000 19:04:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000827190532.0080bab0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 27 Aug 2000 19:05:32 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Dynarec Classification In-Reply-To: <00036fdbadfbb4ea_mailit@mail.dynarec.com> References: <00036fab8bc9b346_mailit@mail.dynarec.com> <024701c01065$174038c0$0200000a@nickscomp> <00036fdb01d4bdc7_mailit@mail.dynarec.com> <02a401c01070$66737c80$0200000a@nickscomp> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Don't apreciate my clifhanger feature? ;-) I've been hanging on that cliff for too long! ;) I'm looking forward to the finished thing, it is indeed a great document. >>It was though a friend in #nesdev on efnet. I go by Lothos_ there. Dont >>worry, i'm not the typical nes scene jerk (yeah, I was here for that >>discussion) ;-) I don't know if I ever saw you in #nesdev, but all I know is when I was there... whoa mama. First they call each other gay and what-not. And then they get in a pointless argument about how calling someone "gay" is bad, because its disrespectful, then they kick each other repeatedly, then they start replacing their E's with 3's and A's with 4's. Hmmm... I never liked anything on EFnet :P Although, I definitely won't judge you because you happen to part of the "NES scene", I was just speaking about previous experiences I've had :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 00:05:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA22472 for dynarec-outgoing; Mon, 28 Aug 2000 00:04:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <02f001c010be$b5d15740$0200000a@nickscomp> From: "Nick" To: References: <00036fab8bc9b346_mailit@mail.dynarec.com> <024701c01065$174038c0$0200000a@nickscomp> <00036fdb01d4bdc7_mailit@mail.dynarec.com> <02a401c01070$66737c80$0200000a@nickscomp> <3.0.5.32.20000827190532.0080bab0@powernet.net> Subject: Re: DYNAREC: Dynarec Classification Date: Mon, 28 Aug 2000 00:08:04 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >>It was though a friend in #nesdev on efnet. I go by Lothos_ there. Dont > >>worry, i'm not the typical nes scene jerk (yeah, I was here for that > >>discussion) ;-) > > I don't know if I ever saw you in #nesdev, but all I know is when I was > there... whoa mama. First they call each other gay and what-not. And then > they get in a pointless argument about how calling someone "gay" is bad, > because its disrespectful, then they kick each other repeatedly, then they > start replacing their E's with 3's and A's with 4's. Hmmm... I never liked > anything on EFnet :P Although, I definitely won't judge you because you > happen to part of the "NES scene", I was just speaking about previous > experiences I've had :) There are a lot of good people there like Kevin Horton (a genius in my opinion) and a few others, and then of course there are the jerks, just like everywhere else. You can't classify an entire group based on the actions of a few (or in this case i'd admit, a lot). But I think a lot of what you probably saw was just some horsing around. The main reason I go to the nesdev chan is just to chat and bullshit and act silly. If you did see me in there, you might think i'm a dork too. :-) Also there is a distinction between the nesdev channel on efnet and the "nes scene" as a whole. No reason to have a big discussion about it, just wanted to get that off my chest. Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 01:38:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA22555 for dynarec-outgoing; Mon, 28 Aug 2000 01:38:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec Classification From: "M.I.K.e" Message-ID: <00036fe48f0f5faf_mailit@mail.dynarec.com> References: <00036fab8bc9b346_mailit@mail.dynarec.com> <3.0.5.32.20000827190532.0080bab0@powernet.net> Date: Mon, 28 Aug 2000 10:46:13 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I've been hanging on that cliff for too long! ;) Hold on, hold on, I'll get you a rope - UAAHHH - oops, too late... >I'm looking forward to the finished thing, Me too, if it only wasn't so much work... >it is indeed a great document. Thanks, although it's easy to say that with not too much options around... >Bart -- M.I.K.e Horse sense is the thing a horse has which keeps it from betting on people. -- W. C. Fields --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 08:29:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA23036 for dynarec-outgoing; Mon, 28 Aug 2000 08:29:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <015901c0110d$4be7bfa0$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036fab8bc9b346_mailit@mail.dynarec.com> <025b01c01065$b99895e0$0200000a@nickscomp> <00036fdb047a16c8_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec Classification Date: Mon, 28 Aug 2000 16:17:42 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Incidentally, allmost all the subpages of dynarec.com are 404. > > It's work in progress... Heh, very much so! > NG, where are you?!? Let me give you one piece of advice: martial arts are dangerous. I've been in hospital since last Thursday - I've kind of got a broken arm. :o I wouldn't mind so much if it was my left arm - but it's my right. So things are slightly difficult to do at the moment. I've had to replace my mouse with one that isn't just for right-handers... And it all kind of hurts! :o > I can read your mind, and you should be ashamed of yourself. Sorry. :) I haven't lost my sense of humour. Just my typing speed (and accuracy)! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 08:31:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA23050 for dynarec-outgoing; Mon, 28 Aug 2000 08:31:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <016601c0110d$a25e25e0$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036fab8bc9b346_mailit@mail.dynarec.com> <3.0.5.32.20000827190532.0080bab0@powernet.net> <00036fe48f0f5faf_mailit@mail.dynarec.com> Subject: DYNAREC: OT: Interesting news? Date: Mon, 28 Aug 2000 17:32:56 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Watcom C/C++ (and Fortran - but I don't care!) are being made open-source. Just a heads-up. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 09:48:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA23111 for dynarec-outgoing; Mon, 28 Aug 2000 09:48:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec Classification From: "M.I.K.e" Message-ID: <00036feb659d8044_mailit@mail.dynarec.com> References: <00036fab8bc9b346_mailit@mail.dynarec.com> <025b01c01065$b99895e0$0200000a@nickscomp> <00036fdb047a16c8_mailit@mail.dynarec.com> <015901c0110d$4be7bfa0$0100a8c0@lion> Date: Mon, 28 Aug 2000 18:55:42 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> It's work in progress... >Heh, very much so! We have to do something about it... >> NG, where are you?!? >Let me give you one piece of advice: martial arts are dangerous. I know that, just think of Jackie Chan. >I've been in hospital since last Thursday - Oh boy, that's bad! >I've kind of got a broken arm. :o Kind of?? >I wouldn't mind so much if it was my left arm - but it's my right. So things >are slightly difficult to do at the moment. I've had to replace my mouse >with one that isn't just for right-handers... And it all kind of hurts! :o "I don't know what galaxy you are from, but that guy hurt!" >> I can read your mind, and you should be ashamed of yourself. >Sorry. :) So what were you thinking? ;-) >I haven't lost my sense of humour. Just my typing speed (and accuracy)! That might make discussions a bit difficult... What does that mean for your planned trip to Magdeburg? >Neil. -- M.I.K.e We are confronted with insurmountable opportunities. -- Walt Kelly, "Pogo" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 10:37:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA23157 for dynarec-outgoing; Mon, 28 Aug 2000 10:37:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000828103820.00809860@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 28 Aug 2000 10:38:20 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Slightly OT: 68K A7 Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, once again another brainless question from the Bart man ;) Does anyone know what the deal is with byte An indirect accesses w/ post-increment and pre-decrement? -(An), (An)+? Apparently something special has to be done to keep the stack aligned, but I'm not sure to what. If it just word-alignment, shouldn't subtracting or adding 1 be enough? Thanks! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 10:46:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA23173 for dynarec-outgoing; Mon, 28 Aug 2000 10:46:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 28 Aug 2000 11:04:33 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: OT: Interesting news? In-Reply-To: <016601c0110d$a25e25e0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Watcom C/C++ (and Fortran - but I don't care!) are being made open-source. > Just a heads-up. :) More like they are being announced that eventually, one day they'll be open source. It's not being released currently. -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 11:43:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA23231 for dynarec-outgoing; Mon, 28 Aug 2000 11:43:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c01120$addad7c0$72c5523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000828103820.00809860@powernet.net> Subject: Re: DYNAREC: Slightly OT: 68K A7 Date: Mon, 28 Aug 2000 20:49:20 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hello, once again another brainless question from the Bart man ;) > > Does anyone know what the deal is with byte An indirect accesses w/ > post-increment and pre-decrement? -(An), (An)+? Apparently something > special has to be done to keep the stack aligned, but I'm not sure to what. > If it just word-alignment, shouldn't subtracting or adding 1 be enough? > > Direct quote from 68K datasheet: "Postincrement and predecrement change by 1, unless the address register is the Stack Register (A7), where the address is changed by 2 rather than 1 to keep the Stack Pointer on a word boundary". So you were logically right. ;) Don't you have any official 68K doc? I think there are many out there. BTW. I discovered I received the Sega Development tool from Eidolon (Christian Schiller) so I think I have now a very good amount of documentation about Sega consoles. ;) May be I will take a look to to Sega CD documentation. I think there is also he official 68K datasheet in the CD. > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 11:48:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA23244 for dynarec-outgoing; Mon, 28 Aug 2000 11:48:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002101c01121$6d913640$72c5523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000827184030.0080d100@powernet.net> Subject: Re: DYNAREC: Video scrolling doubt Date: Mon, 28 Aug 2000 20:54:42 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The Master System and Genesis documents are among the best. But you are > right, they are indeed a bit lacking in certain key areas :( Charles Mac > Donald has nice VDP documents for both systems which clarify lots of > otherwise undocumented oddities. > I have his Genesis doc but not the MS one, I will have to search for it. I read the Genesis doc and it is really useful yes. > > With the Genesis, the scrolling wraps around. Even if the virtual playfield > is bigger than the visible playfield, if you specify a scroll offset beyond > the limit of the virtual playfield, it will wrap to the beginning of the > SAME line. It never wraps to the next line, always to the beginning of the > same line. Almost every game uses this to some effect, if it isn't > emulated, what happens is you notice parts of the image are offset, and it > appears to look like a staircase. > It makes sense. I think MS will work in the same way, in any other case the horizontal scroll feature would be useless. > > Yeah, testing is always good :) If it doesn't work, then you will see the > results visually :) > I'm sure the first thing I will get it will be a scratch display ;) > > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 11:50:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA23257 for dynarec-outgoing; Mon, 28 Aug 2000 11:50:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002b01c01121$b7971a20$72c5523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: Flags and stuff Date: Mon, 28 Aug 2000 20:56:46 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > It'd be nice if a big "emulation tome" was written - one that documents > the inner workings of all arcade machines. Memory maps, etc... that way > people can write emulators for any given game and wouldn't have to touch > MAME's source or reverse engineer the code. > The problem is who will write it? ;) > > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 11:52:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA23267 for dynarec-outgoing; Mon, 28 Aug 2000 11:52:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003501c01121$eec8bda0$72c5523e@hal9000> From: "Victor Moya del Barrio" To: References: <39A3DAC9.EC5DD53C@eurocopter.de> <008701c01066$c8ef2bc0$e8c5523e@hal9000> <00036fdb0f01e4c4_mailit@mail.dynarec.com> <016101c01070$da78b820$e8c5523e@hal9000> <00036fdbb2a5d384_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Mon, 28 Aug 2000 20:58:15 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >"Test link viruses"?. What is a link virus? > > Is that an honest question? > I think it is a "bad english terminology knowledge" question. ;) > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 11:53:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA23276 for dynarec-outgoing; Mon, 28 Aug 2000 11:53:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39AAB59C.83E469D7@gmx.de> Date: Mon, 28 Aug 2000 20:55:24 +0200 From: Kai =?iso-8859-1?Q?Sch=FCtz?= X-Mailer: Mozilla 4.72 [en] (X11; I; Linux 2.2.14 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Slightly OT: 68K A7 References: <3.0.5.32.20000828103820.00809860@powernet.net> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Bart wrote: > > Hello, once again another brainless question from the Bart man ;) > > Does anyone know what the deal is with byte An indirect accesses w/ > post-increment and pre-decrement? -(An), (An)+? Apparently something > special has to be done to keep the stack aligned, but I'm not sure to what. > If it just word-alignment, shouldn't subtracting or adding 1 be enough? A7 is special (compared to the other address registers) in that it's always even. So instructions moving bytes to/from the stack increment/decrement the stackpointer by 2 to keep it even. That's all. Hope this answers your question. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 12:43:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA23322 for dynarec-outgoing; Mon, 28 Aug 2000 12:43:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <00036fedcd0aeb34_mailit@mail.dynarec.com> References: <39A3DAC9.EC5DD53C@eurocopter.de> <008701c01066$c8ef2bc0$e8c5523e@hal9000> <00036fdb0f01e4c4_mailit@mail.dynarec.com> <016101c01070$da78b820$e8c5523e@hal9000> <00036fdbb2a5d384_mailit@mail.dynarec.com> <003501c01121$eec8bda0$72c5523e@hal9000> Date: Mon, 28 Aug 2000 21:47:48 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> >"Test link viruses"?. What is a link virus? >> Is that an honest question? >I think it is a "bad english terminology knowledge" question. ;) I guess you know that a virus is a special program which was programmed to bahave in a very destructive way. To make things more interesting they are programmed to spread among computers through several methods, the most common being: the virus copies itself into the MBR (a boot virus) or the virus appends itself to programs and is activated when the program is launched (a link virus). Some link viruses are quite sophisticated in that they compress the program they attach themselves to that you don't recognise the change due to the changed file length. To distinguish viruses from worms: Worms spread through networks exclusively, ie. the ILOVEYOU "virus" was actually a worm... >Victor -- M.I.K.e So, what's with this guy Gideon, anyway? And why can't he ever remember his Bible? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 12:43:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA23328 for dynarec-outgoing; Mon, 28 Aug 2000 12:43:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Slightly OT: 68K A7 From: "M.I.K.e" Message-ID: <00036fedd35bed19_mailit@mail.dynarec.com> References: <3.0.5.32.20000828103820.00809860@powernet.net> <39AAB59C.83E469D7@gmx.de> Date: Mon, 28 Aug 2000 21:49:34 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Wie es scheint habe ich jetzt deutsche Verstärkung bekommen ;-) Translation: It seems I got German support now ;-) -- M.I.K.e Don't worry over what other people are thinking about you. They're too busy worrying over what you are thinking about them. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 13:17:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA23375 for dynarec-outgoing; Mon, 28 Aug 2000 13:17:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005101c0112d$dfc67660$72c5523e@hal9000> From: "Victor Moya del Barrio" To: References: <39A3DAC9.EC5DD53C@eurocopter.de> <008701c01066$c8ef2bc0$e8c5523e@hal9000> <00036fdb0f01e4c4_mailit@mail.dynarec.com> <016101c01070$da78b820$e8c5523e@hal9000> <00036fdbb2a5d384_mailit@mail.dynarec.com> <003501c01121$eec8bda0$72c5523e@hal9000> <00036fedcd0aeb34_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Mon, 28 Aug 2000 22:23:47 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> >"Test link viruses"?. What is a link virus? > >> Is that an honest question? > >I think it is a "bad english terminology knowledge" question. ;) > > I guess you know that a virus is a special program which was programmed to > bahave in a very destructive way. To make things more interesting they are > programmed to spread among computers through several methods, the most common > being: the virus copies itself into the MBR (a boot virus) or the virus > appends itself to programs and is activated when the program is launched (a > link virus). Some link viruses are quite sophisticated in that they compress > the program they attach themselves to that you don't recognise the change due > to the changed file length. > To distinguish viruses from worms: Worms spread through networks exclusively, > ie. the ILOVEYOU "virus" was actually a worm... > Oh!! I know a lot about those dark arths. ;) I learned a lot about virus dissasembling some in my old 8086 days. :) It is one of my areas of interest but I stopped to learn about them when Windows age begun. > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 14:25:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA23436 for dynarec-outgoing; Mon, 28 Aug 2000 14:25:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <00036feefc8f0eff_mailit@mail.dynarec.com> References: <39A3DAC9.EC5DD53C@eurocopter.de> <008701c01066$c8ef2bc0$e8c5523e@hal9000> <00036fdb0f01e4c4_mailit@mail.dynarec.com> <016101c01070$da78b820$e8c5523e@hal9000> <00036fdbb2a5d384_mailit@mail.dynarec.com> <003501c01121$eec8bda0$72c5523e@hal9000> <00036fedcd0aeb34_mailit@mail.dynarec.com> <005101c0112d$dfc67660$72c5523e@hal9000> Date: Mon, 28 Aug 2000 23:12:40 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Oh!! I know a lot about those dark arths. ;) I hope my explanation was ok... >I learned a lot about virus dissasembling some in my old 8086 days. :) I wrote my own virus killer for the Atari ST in 68K assembly: 3.5K, could identfy about a dozen boot viruses not to mention the heuristics, and was the only virus killer which actually could identify some viruses when they were already loaded in memory. But somehow I was too lazy to add the link virus scanner from the former C version, so I never released it because I felt it was incomplete... BTW, I sometimes even analyzed the hex code of some boot viruses and identified most of the system calles they made and also the system vectors they used ;-) >It is one of my areas of interest but I stopped to learn about them when Windows age begun. I never was that much into viruses on the PC or even on RISC OS. >Victor -- M.I.K.e Where humor is concerned there are no standards -- no one can say what is good or bad, although you can be sure that everyone will. -- John Kenneth Galbraith --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 16:34:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA23549 for dynarec-outgoing; Mon, 28 Aug 2000 16:34:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000828163517.0080ca80@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 28 Aug 2000 16:35:17 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Slightly OT: 68K A7 In-Reply-To: <39AAB59C.83E469D7@gmx.de> References: <3.0.5.32.20000828103820.00809860@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >A7 is special (compared to the other address registers) in that it's >always even. >So instructions moving bytes to/from the stack increment/decrement the >stackpointer by 2 to keep it even. That's all. > >Hope this answers your question. Sure does :) Thanks! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 16:36:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA23562 for dynarec-outgoing; Mon, 28 Aug 2000 16:36:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000828163702.0080d1e0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 28 Aug 2000 16:37:02 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <005101c0112d$dfc67660$72c5523e@hal9000> References: <39A3DAC9.EC5DD53C@eurocopter.de> <008701c01066$c8ef2bc0$e8c5523e@hal9000> <00036fdb0f01e4c4_mailit@mail.dynarec.com> <016101c01070$da78b820$e8c5523e@hal9000> <00036fdbb2a5d384_mailit@mail.dynarec.com> <003501c01121$eec8bda0$72c5523e@hal9000> <00036fedcd0aeb34_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Oh!! I know a lot about those dark arths. ;) I learned a lot about virus >dissasembling some in my old 8086 days. :) It is one of my areas of >interest but I stopped to learn about them when Windows age begun. Well, now we know whose files to scan for virii ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 17:01:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA23591 for dynarec-outgoing; Mon, 28 Aug 2000 17:01:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 28 Aug 2000 17:19:05 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <3.0.5.32.20000828163702.0080d1e0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Oh!! I know a lot about those dark arths. ;) I learned a lot about virus > >dissasembling some in my old 8086 days. :) It is one of my areas of > >interest but I stopped to learn about them when Windows age begun. > Well, now we know whose files to scan for virii ;) Minor nit - "virii" isn't a word. It's "viruses". -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 17:41:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA23626 for dynarec-outgoing; Mon, 28 Aug 2000 17:41:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000828174156.0080d660@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 28 Aug 2000 17:41:56 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: References: <3.0.5.32.20000828163702.0080d1e0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Minor nit - "virii" isn't a word. It's "viruses". Damn. I usually use viruses, but I remember hearing somewhere the "proper" term was "virii" or something. Kind of like how you don't say "octopuses". It should be "virii" ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 17:50:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA23642 for dynarec-outgoing; Mon, 28 Aug 2000 17:50:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 28 Aug 2000 18:07:43 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <3.0.5.32.20000828174156.0080d660@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Minor nit - "virii" isn't a word. It's "viruses". > Damn. I usually use viruses, but I remember hearing somewhere the "proper" > term was "virii" or something. Nope. It's one of those things where people *THINK* it should be Virii, but it isn't. -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 19:08:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA23708 for dynarec-outgoing; Mon, 28 Aug 2000 19:07:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <00036ff31636a7af_mailit@mail.dynarec.com> References: Date: Tue, 29 Aug 2000 04:06:10 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Minor nit - "virii" isn't a word. It's "viruses". Actually it's "viri" from the Latin "virus" for poison. >-->Neil -- M.I.K.e E Pluribus Unix --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 19:14:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA23723 for dynarec-outgoing; Mon, 28 Aug 2000 19:14:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 28 Aug 2000 19:31:49 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <00036ff31636a7af_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Minor nit - "virii" isn't a word. It's "viruses". > Actually it's "viri" from the Latin "virus" for poison. Sorry - not in US English it's not. Viri is a single virus. Plurality it's viruses. -->Neil ------------------------------------------------------------------------------- Neil Bradley Everyone agrees that 90% of all techno is crap, but Synthcom Systems, Inc. no one can agree on which 10% is good. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 28 23:40:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA23916 for dynarec-outgoing; Mon, 28 Aug 2000 23:40:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39AB5B01.AF69C819@gmx.de> Date: Tue, 29 Aug 2000 08:41:05 +0200 From: Kai =?iso-8859-1?Q?Sch=FCtz?= X-Mailer: Mozilla 4.72 [en] (X11; I; Linux 2.2.14 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Slightly OT: 68K A7 References: <3.0.5.32.20000828103820.00809860@powernet.net> <39AAB59C.83E469D7@gmx.de> <00036fedd35bed19_mailit@mail.dynarec.com> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com "M.I.K.e" wrote: > > Wie es scheint habe ich jetzt deutsche Verstärkung bekommen ;-) > > Translation: It seems I got German support now ;-) Yepp, that's right. I've read your drfaq, very nice ! I'm just curious about all the topics where there's just a header but no text ! (eg. UltraHLE's dirty trick) I'll have to read all these links... -- |/ |\ai --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 03:12:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA24246 for dynarec-outgoing; Tue, 29 Aug 2000 03:12:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <00036ff9e5752c65_mailit@mail.dynarec.com> References: Date: Tue, 29 Aug 2000 12:13:37 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Sorry - not in US English it's not. Viri is a single virus. Plurality it's >viruses. That's because only few Americans know Latin. A single virus is just virus. The plural is viri, but since it's also Genitive Singular it might be used for an infection caused by a virus in medic terms. But I have to admit that there are also two different uses in German: The original Gender (neuter) is used in medicine: das Virus For a computer virus the Gender is changed to maskuline: der Virus Only uninitiated computer users say "das Computer-Virus", or the magazine Der Spiegel... >-->Neil -- M.I.K.e For large values of one, one equals two, for small values of two. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 03:13:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA24255 for dynarec-outgoing; Tue, 29 Aug 2000 03:13:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Slightly OT: 68K A7 From: "M.I.K.e" Message-ID: <00036ff9fcada3c2_mailit@mail.dynarec.com> References: <3.0.5.32.20000828103820.00809860@powernet.net> <39AAB59C.83E469D7@gmx.de> <00036fedd35bed19_mailit@mail.dynarec.com> <39AB5B01.AF69C819@gmx.de> Date: Tue, 29 Aug 2000 12:20:06 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yepp, that's right. Just curious, how did you hear about the mailing list? >I've read your drfaq, very nice ! Thanks, I only hoped it were finished already... >I'm just curious about all the topics where there's just a header but no text ! Where did I hear that before? Nick? >(eg. UltraHLE's dirty trick) That's an easy one: replace the first instruction in the basic block with a new one which has an illegal opcode and either contains the address to the translated code or better a pointer to an organization structure of the block. That way you can tell if the code has already been translated or not by simply looking at the first instruction than having a TLB look up eg. >I'll have to read all these links... Might help. I already the number of references to the really interesting ones. I had much more some time ago but now I think I'm competent enough to decide what's worth it and what's only wasted time. -- M.I.K.e How wonderful opera would be if there were no singers. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 04:05:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA24312 for dynarec-outgoing; Tue, 29 Aug 2000 04:05:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <039f01c011a9$6befd980$0200000a@nickscomp> From: "Nick" To: References: <3.0.5.32.20000828103820.00809860@powernet.net> <39AAB59C.83E469D7@gmx.de> <00036fedd35bed19_mailit@mail.dynarec.com> <39AB5B01.AF69C819@gmx.de> <00036ff9fcada3c2_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Slightly OT: 68K A7 Date: Tue, 29 Aug 2000 04:08:12 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I'm just curious about all the topics where there's just a header but no > text ! > > Where did I hear that before? Nick? *cough* finish that sucker *cough* What? Just a little throat tickle, I didn't say anything. Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 04:11:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA24326 for dynarec-outgoing; Tue, 29 Aug 2000 04:11:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <03a501c011aa$3f086080$0200000a@nickscomp> From: "Nick" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Tue, 29 Aug 2000 04:14:06 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > But I have to admit that there are also two different uses in German: > The original Gender (neuter) is used in medicine: das Virus > For a computer virus the Gender is changed to maskuline: der Virus > Only uninitiated computer users say "das Computer-Virus", or the magazine Der > Spiegel... You know, thats the biggest problem I have trying to learn german. I just use das for everything. Its kindof optimistic to think that I can memorize what gender everything is supposed to be. You can usually make a reasonable guess based on content, but some nouns have a counter-intuitive gender attribute. Incidentally, I still really suck at it so dont try to speak german to me ;-) Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 05:45:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA24414 for dynarec-outgoing; Tue, 29 Aug 2000 05:45:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000201c011bf$a73ea460$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000828103820.00809860@powernet.net> <39AAB59C.83E469D7@gmx.de> <00036fedd35bed19_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Slightly OT: 68K A7 Date: Tue, 29 Aug 2000 13:28:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Wie es scheint habe ich jetzt deutsche Verstärkung bekommen ;-) > >Translation: It seems I got German support now ;-) Hey, Ich bin semi-Deutsche! Translation: Hey, I'm semi-German! But if you didn't understand... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 05:45:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA24415 for dynarec-outgoing; Tue, 29 Aug 2000 05:45:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000301c011bf$a7f74600$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> Subject: Re: DYNAREC: Flags and stuff Date: Tue, 29 Aug 2000 13:34:10 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > You know, thats the biggest problem I have trying to learn german. I just > use das for everything. Its kindof optimistic to think that I can memorize > what gender everything is supposed to be. You can usually make a reasonable > guess based on content, but some nouns have a counter-intuitive gender > attribute. "The Girl" is always a great example - and a way to get kicked if you keep talking about it to German girls! ;)) I can speak 4 languages. English doesn't matter in this case - but the other three (Welsh, French and German) do. They all have sexes (articles) and for the most part they aren't the same - "The moon" is a great example. In French it's feminine, it's masculine in German and nuetral in Welsh. Bleh. If you think *you* have problems, try being me! That last sentence is not recommended BTW... ;) > Incidentally, I still really suck at it so dont try to speak german to me > ;-) Ah, warum nicht? ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 10:19:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA24620 for dynarec-outgoing; Tue, 29 Aug 2000 10:19:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: DRFAQ From: "M.I.K.e" Message-ID: <00036fffe2bb16c0_mailit@mail.dynarec.com> Date: Tue, 29 Aug 2000 19:22:21 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Why didn't anybody mention that the link for FX!32 in the DRFAQ is broken again? Unfortunately I didn't find a new location of the same document. I remember that I had to find it again at least once or twice, but now it's seem to have passed completely. Fortunately I found a newer document about FX!32 which seems to be even more interesting ;-) The modified DRFAQ is in it's usual location again: http://www.dynarec.com/~mike/drfaq.html -- M.I.K.e "Microwave oven? Whaddya mean, it's a microwave oven? I've been watching Channel 4 on the thing for two weeks." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 10:19:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA24633 for dynarec-outgoing; Tue, 29 Aug 2000 10:19:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <00036fffc2eb0bc1_mailit@mail.dynarec.com> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <000301c011bf$a7f74600$0100a8c0@lion> Date: Tue, 29 Aug 2000 19:13:27 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >"The Girl" is always a great example - and a way to get kicked if you keep >talking about it to German girls! ;)) Hey, why do you always have to tell the jokes I have told you? ;-) >If you think *you* have problems, try being me! Let's say it with a song from the Alan Parsons Project album "I Robot": "I wouldn't want to be like you" Hey, I even wouldn't want to be like me... >That last sentence is not recommended BTW... ;) Especially since he'd have to break his right arm to do so... BTW, how did that happen in your jiu-jitsu course? >Ah, warum nicht? ;)) Genau! >Neil. -- M.I.K.e Any small object that is accidentally dropped will hide under a larger object. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 10:19:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA24637 for dynarec-outgoing; Tue, 29 Aug 2000 10:19:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <00036fffd3fbd612_mailit@mail.dynarec.com> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> Date: Tue, 29 Aug 2000 19:18:13 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You know, thats the biggest problem I have trying to learn german. I just >use das for everything. Since NG (for you newcomers: NB is Neil Bradley and NG is Neil Giffiths) already told the joke with girls being neuter (das Mädchen) in German I can only feature one of my other favourites: the spoon - der Löffel the fork - die Gabel the knife - das Messer >Its kindof optimistic to think that I can memorize >what gender everything is supposed to be. You can usually make a reasonable >guess based on content, but some nouns have a counter-intuitive gender >attribute. Yes, see above. But I have the same problem when using English terms in German... >Incidentally, I still really suck at it so dont try to speak german to me >;-) Schade! BTW, how come that you learn German? I mean if it weren't my mother tongue I wouldn't want to learn it... >Nick -- M.I.K.e "What's the use of a good quotation if you can't change it?" -- The Doctor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 10:43:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA24663 for dynarec-outgoing; Tue, 29 Aug 2000 10:43:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: 68k dynarec joke From: "M.I.K.e" Message-ID: <000370004714d052_mailit@mail.dynarec.com> Date: Tue, 29 Aug 2000 19:50:24 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Has anyone seen this page yet? http://utopia.consolemul.com/projects/68kdynarec.htm Apart from the more or less good explanation of dynamic recompilation I stubled over the last sentences: "As for the 68000, there are chances that one already exist but I've never heard of such a thing." Hmm, what about the 68K emulation on PowerMacs, Executor, or UAE? "Once more, it's similar with 6502 for which an open source emu already exist." Ok, the open source 6502 dynarec is NEStra (which isn't really good), but 68K and 6502 are similar??? Do they mix up 6800 and 68K? Or is all my knowledge about processor architectures totally wrong? -- M.I.K.e Nothing takes the taste out of peanut butter quite like unrequited love. -- Charlie Brown --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 10:56:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA24683 for dynarec-outgoing; Tue, 29 Aug 2000 10:56:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000f01c011e3$3db38f00$3cc5523e@hal9000> From: "Victor Moya del Barrio" To: References: <00036fffe2bb16c0_mailit@mail.dynarec.com> Subject: Re: DYNAREC: DRFAQ Date: Tue, 29 Aug 2000 20:02:03 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Why didn't anybody mention that the link for FX!32 in the DRFAQ is broken > again? Because noone tried. ;) Or because everyone thinks that broken links in the dynarec page are very usual. ;)) > Unfortunately I didn't find a new location of the same document. I remember > that I had to find it again at least once or twice, but now it's seem to have > passed completely. I have the old one in the case you don't have it. > Fortunately I found a newer document about FX!32 which seems to be even more > interesting ;-) > I was wondering if being a Compaq/Digital project I could get some more info from one of my bosses who works also in Compaq here in Spain ... ;) I will take a look to the new one. > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 11:28:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA24716 for dynarec-outgoing; Tue, 29 Aug 2000 11:28:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 29 Aug 2000 11:46:28 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68k dynarec joke In-Reply-To: <000370004714d052_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hmm, what about the 68K emulation on PowerMacs, Executor, or UAE? > "Once more, it's similar with 6502 for which an open source emu already > exist." > Ok, the open source 6502 dynarec is NEStra (which isn't really good), but 68K > and 6502 are similar??? Do they mix up 6800 and 68K? Or is all my knowledge > about processor architectures totally wrong? I can't believe anyone would waste their time making a 6502 dynarec. That seems kinda lame. The 68K and 6502 have *NOTHING* to do with eachother. Hell, the 6800 and the 6502 have nothing to do with eachother either. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 11:33:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA24731 for dynarec-outgoing; Tue, 29 Aug 2000 11:33:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRFAQ From: "M.I.K.e" Message-ID: <00037000d59f3429_mailit@mail.dynarec.com> References: <00036fffe2bb16c0_mailit@mail.dynarec.com> <000f01c011e3$3db38f00$3cc5523e@hal9000> Date: Tue, 29 Aug 2000 20:30:16 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Because noone tried. ;) Or because everyone thinks that broken links >in the dynarec page are very usual. ;)) Now, that could explain ;-) >I have the old one in the case you don't have it. I bet I have it too. >I was wondering if being a Compaq/Digital project I could get some >more info from one of my bosses who works also in Compaq here >in Spain ... ;) Hehe, try it ;-) >Victor -- M.I.K.e Iles's Law: There is always an easier way to do it. When looking directly at the easy way, especially for long periods, you will not see it. Neither will Iles. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 11:42:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA24748 for dynarec-outgoing; Tue, 29 Aug 2000 11:42:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68k dynarec joke From: "M.I.K.e" Message-ID: <000370011a4e6924_mailit@mail.dynarec.com> References: Date: Tue, 29 Aug 2000 20:49:28 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I can't believe anyone would waste their time making a 6502 dynarec. That >seems kinda lame. Don't ask me. I think a dynarec for an 8-bit CPU is waste of time. Your DRZ80 was a slight exception to the rule because it was mainly a test bed for techniques and had the advantage to be very similar to the x86. >The 68K and 6502 have *NOTHING* to do with eachother. Indeed. >Hell, the 6800 and the 6502 have nothing to do with eachother either. Slightly, some designers of the 6800 went to MOS Technology to design the 6502, but they changed some things: little-endian intead of big; all registers apart from the PC stripped to 8-bit; accumulator B dropped; index register Y added; slightly different instructions and more addressing modes. >-->Neil -- M.I.K.e With all the fancy scientists in the world, why can't they just once build a nuclear balm? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 11:47:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA24763 for dynarec-outgoing; Tue, 29 Aug 2000 11:47:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 29 Aug 2000 12:05:01 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68k dynarec joke In-Reply-To: <000370011a4e6924_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Hell, the 6800 and the 6502 have nothing to do with eachother either. > Slightly, some designers of the 6800 went to MOS Technology to design the > 6502, but they changed some things: little-endian intead of big; all > registers apart from the PC stripped to 8-bit; accumulator B dropped; index > register Y added; slightly different instructions and more addressing modes. They are nothing like eachother. The 6800 has 2 accumulators - the 6502 has one. The 6502 has zero page addressing, the 6800 doesn't. The endianness is different. The 6800 has 16 bit registers, the 6502 doesn't. The 6800 has more instructions than the 6502. They're different chips. Totally. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 12:42:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA24812 for dynarec-outgoing; Tue, 29 Aug 2000 12:42:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68k dynarec joke From: "M.I.K.e" Message-ID: <00037001ec0ad916_mailit@mail.dynarec.com> References: Date: Tue, 29 Aug 2000 21:48:07 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >They are nothing like eachother. The 6800 has 2 accumulators - the 6502 >has one. The 6800 has 16 bit registers, the 6502 doesn't. Nevertheless the riegister list is quite similar: 6502: 8-bit: A, X, Y, S, P; 16-bit: PC 6800: 8-bit: A, B, P; 16-bit: X, S, PC >The 6502 has zero page addressing, the 6800 doesn't. The 6800 has zero page addressing as well. >The endianness is different. Agreed. >The 6800 has more instructions than the 6502. 6800: 109 instructions (because of different entries for A, B, and memory), 197 opcodes 6502: 65 instructions, 151 opcodes >They're different chips. Totally. I never claimed that they are the same, but from a brief look they can look quite similar. >-->Neil -- M.I.K.e Real computer scientists don't program in assembler. They don't write in anything less portable than a number two pencil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 12:50:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA24829 for dynarec-outgoing; Tue, 29 Aug 2000 12:50:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 29 Aug 2000 13:08:44 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68k dynarec joke In-Reply-To: <00037001ec0ad916_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >They are nothing like eachother. The 6800 has 2 accumulators - the 6502 > >has one. The 6800 has 16 bit registers, the 6502 doesn't. > Nevertheless the riegister list is quite similar: > 6502: 8-bit: A, X, Y, S, P; 16-bit: PC > 6800: 8-bit: A, B, P; 16-bit: X, S, PC Those don't look similar at all! By that example then one could also argue that the 6809 is similar to the 6502 (which it isn't), or even that the 8080 is similar to the 6502: 6502: 8-bit: A, X, Y, S, P; 16 bit: PC 8080: 8-bit: A, B, C, D, E, F; 16 bit: PC SP Makes about as much sense! > >The 6502 has zero page addressing, the 6800 doesn't. > The 6800 has zero page addressing as well. Not like the 6502 does. > >The 6800 has more instructions than the 6502. > 6800: 109 instructions (because of different entries for A, B, and memory), > 197 opcodes > 6502: 65 instructions, 151 opcodes And the opcodes aren't even close to being compatible or similar. > >They're different chips. Totally. > I never claimed that they are the same, but from a brief look they can look > quite similar. I fail to see how two chips that have completely different opcodes, completely different mnemonics, completely different instructions, and almost totally different register names can appear "quite similar"! -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 14:34:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA24917 for dynarec-outgoing; Tue, 29 Aug 2000 14:34:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39AC2D18.ED68A2D0@gmx.de> Date: Tue, 29 Aug 2000 23:37:28 +0200 From: Kai =?iso-8859-1?Q?Sch=FCtz?= X-Mailer: Mozilla 4.72 [en] (X11; I; Linux 2.2.14 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Slightly OT: 68K A7 References: <3.0.5.32.20000828103820.00809860@powernet.net> <39AAB59C.83E469D7@gmx.de> <00036fedd35bed19_mailit@mail.dynarec.com> <39AB5B01.AF69C819@gmx.de> <00036ff9fcada3c2_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com "M.I.K.e" wrote: > Just curious, how did you hear about the mailing list? Hm, it just happened two days ago - though I don't remeber exactly. I think I was searching something via searchmachine and hit a page (newsgroup, whatever) where the mailinglist was mentioned. -- |/ |\ai --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 16:14:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA25001 for dynarec-outgoing; Tue, 29 Aug 2000 16:14:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68k dynarec joke From: "M.I.K.e" Message-ID: <00037004e81a2679_mailit@mail.dynarec.com> References: Date: Wed, 30 Aug 2000 01:21:46 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >6502: 8-bit: A, X, Y, S, P; 16 bit: PC >8080: 8-bit: A, B, C, D, E, F; 16 bit: PC SP Hmm, if you don't take the register sizes into account: 6800: A, B, X, S, P, PC 6502: A, Y, X, S, P, PC >> The 6800 has zero page addressing as well. >Not like the 6502 does. So what's the difference? The DP register was first added in the 6809 if you mean that. According to my information the 6800 has the typical zero page addressing. >And the opcodes aren't even close to being compatible or similar. I never claimed that. But take a look at the mnemonics: 6502: STA, STX, LDA, LDX, TSX, TXS, ADC, CMP, DEC, INC, SBC, AND, EOR, ORA, ASL, LSR, ROL, ROR, CLC, CLI, CLV, SEC, SEI, JMP, BCC, BCS, BEQ, BMI, BNE, BPL, BVC, BVS, JSR, RTS, RTI, NOP 6800: STA, STX, LDA, LDX, TSX, TXS, ADC, CMP, DEC, INC, SBC, AND, EOR, ORA, ASL, LSR, ROL, ROR, CLC, CLI, CLV, SEC, SEI, JMP, BCC, BCS, BEQ, BMI, BNE, BPL, BVC, BVS, JSR, RTS, RTI, NOP As you can see 36 out of 56 mnemonics of the 6502 have exactly the same name in 6800, I'd call that quite similar. >I fail to see how two chips that have completely different opcodes, The opcodes of 8080 and 8086 are also totally different, but the architecures are still quite similar. >completely different mnemonics, See above. >completely different instructions, and That's due to the 6800 having a second accumulator and the 6502 having a second index register. >almost totally different register names can appear "quite similar"! If you don't count register sizes then the diffence between the register names is just B and Y, all others are the same. I wouldn't call that totally different register names. >-->Neil -- M.I.K.e The only way to get rid of a temptation is to yield to it. -- Oscar Wilde --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 16:42:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA25033 for dynarec-outgoing; Tue, 29 Aug 2000 16:42:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 29 Aug 2000 17:00:35 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68k dynarec joke In-Reply-To: <00037004e81a2679_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >6502: 8-bit: A, X, Y, S, P; 16 bit: PC > >8080: 8-bit: A, B, C, D, E, F; 16 bit: PC SP > Hmm, if you don't take the register sizes into account: > 6800: A, B, X, S, P, PC > 6502: A, Y, X, S, P, PC But the register sizes are very important and can't be ignored. There's also no limitation on stack in the 6800 where there is on the 6502. > I never claimed that. But take a look at the mnemonics: > 6502: STA, STX, LDA, LDX, TSX, TXS, ADC, CMP, DEC, INC, SBC, AND, EOR, ORA, > ASL, LSR, ROL, ROR, CLC, CLI, CLV, SEC, SEI, JMP, BCC, BCS, BEQ, BMI, BNE, > BPL, BVC, BVS, JSR, RTS, RTI, NOP > 6800: STA, STX, LDA, LDX, TSX, TXS, ADC, CMP, DEC, INC, SBC, AND, EOR, ORA, > ASL, LSR, ROL, ROR, CLC, CLI, CLV, SEC, SEI, JMP, BCC, BCS, BEQ, BMI, BNE, > BPL, BVC, BVS, JSR, RTS, RTI, NOP Not quite right: stab/staa, ldab, ldaa (and there are others but I can't remember them) And the same argument can be made for ADC, CMP, DEC, INC, SBC, AND, ASL, NOP, CLC, JMP, ROL, and ROR (12 total) for the Pentium/x86 architecture, too. The same argument can be made that the 6502 is similar to the 68000 because of BCC, BCS, BEQ, etc... and all the other similar mnemonics. The 6502 is even more of a distant cousin than the 8080 is to the 8086. So after all the same comparisons that could be made about other processors, you've got about 5 mnemonics that look similar. > As you can see 36 out of 56 mnemonics of the 6502 have exactly the same name > in 6800, I'd call that quite similar. Then you'd have to say it's similar to the 68000 and 68020 and all other Motorola followons, and hell, I think almost all of those opcodes are available in the ARM as well. > >I fail to see how two chips that have completely different opcodes, > The opcodes of 8080 and 8086 are also totally different, but the architecures > are still quite similar. Right, but the 6800 and 6502 operationally are totally different chips. There's at least a 1:1 mapping for everything in the 8080->x86 realm. > >completely different instructions, and > That's due to the 6800 having a second accumulator and the 6502 having a > second index register. Big difference! And a stack pointer that's 16 bit. There's a danger in saying they're "similar" as it is confusing to people. I've heard people say this in the past and when they look at it more closely they say "Oh, gee, I guses they really are different". It's very common for people to actually think they are compatible with eachother. I've also had people claim that 6502 code won't run on my 6800 emulator (like duh!) and say things like "These chips are compatible". So don't help propogate the myth that those chips have anything to do with eachother! The fact that Mostek employees were X-Motorola people have zero to do with the actual operation of the chip. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 29 23:13:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA25314 for dynarec-outgoing; Tue, 29 Aug 2000 23:13:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 29 Aug 2000 23:31:43 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Slightly off topic... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Well, you guys are geeks, too, so I figured that you'd be interested in hearing this. As you knew before, I'm going to create a pinball machine CPU/driver replacement board. Instead of doing the 6808 (which incidentally is nothing like the 6502 ;-) ;-) ) to MCS-51 compatible code translation, I'm going to rely on good 'ol emulation and run an ARM7TDMI core (probably the AT91M40800-33Al. 8K Of SRAM, I'll use an external 16 bit flash core, along with a serial EEPROM for NVStorage and a custom PAL to do all the I/O latching and gruntwork expected from such a task. I've got the ARM 250 development package (which kinda sucks, but seems to work). The question is - would you use this or the cross compiler for the ARM Thumb via gcc? What other tools would you use? BTW, ARM Is cool. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 04:40:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA25737 for dynarec-outgoing; Wed, 30 Aug 2000 04:40:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Slightly off topic... From: "M.I.K.e" Message-ID: <0003700f532c2caf_mailit@mail.dynarec.com> References: Date: Wed, 30 Aug 2000 13:47:32 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >As you knew before, I'm going to create a pinball machine CPU/driver >replacement board. Instead of doing the 6808 (which incidentally is >nothing like the 6502 ;-) ;-) ) I'll comment on that one when I have more time... >to MCS-51 compatible code translation, I'm >going to rely on good 'ol emulation and run an ARM7TDMI core Cool. It's a bit sad that you get no price reduction from Intel because otherwise you could go for the new XScale StrongARM. >(probably the AT91M40800-33Al. Don't know that one. >I've got the ARM 250 development package (which kinda sucks, but seems to >work). Then you have a newer one than me, because I only 2.02, which ARM released for academic use. >The question is - would you use this or the cross compiler for the >ARM Thumb via gcc? The Norcroft comiler (what the ARM SDT uses) will be faster and very likely produce better code than the GCC. I've heard good things about the new GCC port to RISC OS done by Nick Burrett, but I'm not sure if those changes went into the cross-compiler as well and if the produced code is now on par with the ARM SDT or not. Does the cross-compiler include a debugger? Because there is none in the RISC OS port. >What other tools would you use? The LCC ARM cross-compiler for BeOS! Just kidding, that thing is damn buggy. >BTW, ARM Is cool. ;-) I know, I have two ARMs (610 and StrongARM) and two books (ARM System Architecture; The ARM RISC Chip). The only problem I see is that ARM will be overrun by SuperH if embedded systems need more multi-media performance and they still have no FPU. The VFP10 sounded quite interesting but now there is so few information on it that I almost assume they might have ditched it. Finial decision: If you don't need any of the GCC extensions then I'd recommend the ARM SDT, I think. >-->Neil -- M.I.K.e Remember that whatever misfortune may be your lot, it could only be worse in Cleveland. -- National Lampoon, "Deteriorata" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 05:10:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA25775 for dynarec-outgoing; Wed, 30 Aug 2000 05:10:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68k dynarec joke From: "M.I.K.e" Message-ID: <0003700fb819e6fc_mailit@mail.dynarec.com> References: Date: Wed, 30 Aug 2000 14:15:45 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Ok, let's get this straight first: *I* know that 6800 and 6502 are different architectures, but I was wondering how that other guy came to think that 6502 and 68K are so similar. The only solution I came up with is that he he must have thought that 6502 and 6800 are similar and then mixed up 6800 and 68000... >But the register sizes are very important and can't be ignored. There's >also no limitation on stack in the 6800 where there is on the 6502. I know that, but someone who doesn't program the two processors and only takes a look at register and instruction lists might not see that, and since that guy thinks that 6502 and 68K are similar he surely didn't program any of these processors if he ever wrote assembly code at all. >stab/staa, ldab, ldaa (and there are others but I can't remember them) And >the same argument can be made for ADC, CMP, DEC, INC, SBC, AND, ASL, NOP, >CLC, JMP, ROL, and ROR (12 total) for the Pentium/x86 architecture, too. x86 has SBB instead of SBC and SAL instead of ASL >Then you'd have to say it's similar to the 68000 and 68020 and all other >Motorola followons, and hell, I think almost all of those opcodes are >available in the ARM as well. It seems you didn't read my article about the ARM architecture: many of ARM's mnemonics indeed date back to the 6502 (which Acorn used before they designed ARM). Just think of ORR, which isn't just OR because 6502 had ORA! >Right, but the 6800 and 6502 operationally are totally different >chips. There's at least a 1:1 mapping for everything in the 8080->x86 >realm. Agreed. >Big difference! And a stack pointer that's 16 bit. I know that, but I wonder if the writer of that page knew that. >There's a danger in saying they're "similar" as it is confusing to >people. I've heard people say this in the past and when they look at it >more closely they say "Oh, gee, I guses they really are different". It's >very common for people to actually think they are compatible with >eachother. I've also had people claim that 6502 code won't run on my 6800 >emulator (like duh!) and say things like "These chips are compatible". Hehe, I really say compatible when I mean it. When I say similar then I mean that some part of the architecture is derived from another architecture, and 6502 surely was *influenced* by 6800, and even more than ARM was influenced by 6502, Berkeley-RISC, 68K, VAX, ... >So don't help propogate the myth that those chips have anything to do with >eachother! The fact that Mostek employees were X-Motorola people have zero >to do with the actual operation of the chip. I wasn't talking about operation at all. >-->Neil -- M.I.K.e 'Tis the dream of each programmer, Before his life is done, To write three lines of APL, And make the damn things run. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 07:41:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA25896 for dynarec-outgoing; Wed, 30 Aug 2000 07:41:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <02c401c01290$ecc073c0$0200000a@nickscomp> From: "Nick" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <000301c011bf$a7f74600$0100a8c0@lion> Subject: Re: DYNAREC: Flags and stuff Date: Tue, 29 Aug 2000 05:55:26 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Incidentally, I still really suck at it so dont try to speak german to me > > ;-) > > Ah, warum nicht? ;)) Hmm, my best attempt off the top of my head at a reply to that is: Ish nein sperkenzie deutch gut Dont laugh too hard, and I probably spelled it wrong too, heh. Perhaps that should have been nicht? I think that means not rather than no, or maby its a different word entirely. Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 15:51:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA26261 for dynarec-outgoing; Wed, 30 Aug 2000 15:51:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <02e601c012d5$5ebc32e0$0200000a@nickscomp> From: "Nick" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Wed, 30 Aug 2000 15:55:19 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Schade! > BTW, how come that you learn German? I mean if it weren't my mother tongue I > wouldn't want to learn it... Why climb a rock? Because its there. Actually I like the language, the way it sounds when spoken. I think its good to learn a new language or two because it forces your brain to think in different terms. Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 15:53:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA26271 for dynarec-outgoing; Wed, 30 Aug 2000 15:53:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 30 Aug 2000 16:11:37 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <02e601c012d5$5ebc32e0$0200000a@nickscomp> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > BTW, how come that you learn German? I mean if it weren't my mother tongue > > wouldn't want to learn it... > Why climb a rock? Because its there. Actually I like the language, the way > it sounds when spoken. I think its good to learn a new language or two > because it forces your brain to think in different terms. I always refer to German as the RPN of languages. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 16:14:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA26296 for dynarec-outgoing; Wed, 30 Aug 2000 16:14:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <031401c012d8$7d7aa740$0200000a@nickscomp> From: "Nick" To: References: Subject: Re: DYNAREC: Flags and stuff Date: Wed, 30 Aug 2000 16:17:39 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I always refer to German as the RPN of languages. ;-) I'll let you in on a secret. Acronyms and me do not get along. ;-) Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 16:16:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA26309 for dynarec-outgoing; Wed, 30 Aug 2000 16:16:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 30 Aug 2000 16:34:30 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <031401c012d8$7d7aa740$0200000a@nickscomp> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I always refer to German as the RPN of languages. ;-) > I'll let you in on a secret. Acronyms and me do not get along. ;-) What's the BFD? Just because I us a TLA doesn't mean you have to be a PIA about it. There's NFW I'll stop using them. Maybe you just need to RTFM, otherwise I'll be ROTFLMAO at you. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 16:20:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA26322 for dynarec-outgoing; Wed, 30 Aug 2000 16:20:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <032401c012d9$7303b580$0200000a@nickscomp> From: "Nick" To: References: Subject: Re: DYNAREC: Flags and stuff Date: Wed, 30 Aug 2000 16:24:31 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > I always refer to German as the RPN of languages. ;-) > > I'll let you in on a secret. Acronyms and me do not get along. ;-) > (snipped bullshit) How about this. If you dont tell me what RPN stands for i'll never get your joke. So, whats really important to you? AHAhahahahaha Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 16:25:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA26335 for dynarec-outgoing; Wed, 30 Aug 2000 16:25:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 30 Aug 2000 16:43:20 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <032401c012d9$7303b580$0200000a@nickscomp> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > I always refer to German as the RPN of languages. ;-) > > > I'll let you in on a secret. Acronyms and me do not get along. ;-) > > (snipped bullshit) > How about this. If you dont tell me what RPN stands for i'll never get your > joke. So, whats really important to you? AHAhahahahaha RPN = Reverse Polish Notation. Where the result is at the beginning of the equation instead of at the end. From what I understand, in German you say "Sex with me will you have?" Rather than "Will you have sex with me?" -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 16:33:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA26350 for dynarec-outgoing; Wed, 30 Aug 2000 16:33:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <033601c012db$26871a60$0200000a@nickscomp> From: "Nick" To: References: Subject: Re: DYNAREC: Flags and stuff Date: Wed, 30 Aug 2000 16:36:41 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > RPN = Reverse Polish Notation. Where the result is at the beginning of the > equation instead of at the end. From what I understand, in German you say > "Sex with me will you have?" Rather than "Will you have sex with me?" I believe the technical term for that is Yoda Speak. Unfortunately all the muppets were on vacation at the time and couldn't be disturbed... Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 16:33:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA26360 for dynarec-outgoing; Wed, 30 Aug 2000 16:33:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <033a01c012db$3cb1d8c0$0200000a@nickscomp> From: "Nick" To: References: Subject: Re: DYNAREC: Flags and stuff Date: Wed, 30 Aug 2000 16:37:18 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I should have just said YS and left you guessing. :-) Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 16:50:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA26379 for dynarec-outgoing; Wed, 30 Aug 2000 16:49:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <0003701963aa9334_mailit@mail.dynarec.com> References: Date: Thu, 31 Aug 2000 01:47:58 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >RPN = Reverse Polish Notation. Where the result is at the beginning of the >equation instead of at the end. From what I understand, in German you say >"Sex with me will you have?" Rather than "Will you have sex with me?" Are you thinking of Japanese? To take your example: "Willst Du mit mir Sex haben?" Don't take that literal! To quote Bender: "Tell them you're my debugger!" ;-) >-->Neil -- M.I.K.e Q: How did you get into artificial intelligence? A: Seemed logical -- I didn't have any real intelligence. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 16:50:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA26391 for dynarec-outgoing; Wed, 30 Aug 2000 16:50:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <0003701981932087_mailit@mail.dynarec.com> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> Date: Thu, 31 Aug 2000 01:56:20 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> BTW, how come that you learn German? I mean if it weren't my mother tongue >>I wouldn't want to learn it... >Why climb a rock? Because its there. Even then does it have to be Mount Everest? >Actually I like the language, the way it sounds when spoken. Strange, most people think it sounds too harsh. >I think its good to learn a new language or two >because it forces your brain to think in different terms. I guess you are right. I try to learn at least a few words of some different languages, but I'm certainly not a grammar freak. >Nick -- M.I.K.e The only problem with being a man of leisure is that you can never stop and take a rest. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 16:58:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA26406 for dynarec-outgoing; Wed, 30 Aug 2000 16:58:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <036401c012de$b3f6a7a0$0200000a@nickscomp> From: "Nick" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Wed, 30 Aug 2000 17:02:07 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> BTW, how come that you learn German? I mean if it weren't my mother tongue > >>I wouldn't want to learn it... > >Why climb a rock? Because its there. > Even then does it have to be Mount Everest? Why should german be equivelant to Mount Everest? Its not that hard. > >Actually I like the language, the way it sounds when spoken. > Strange, most people think it sounds too harsh. That is why I like it. > >I think its good to learn a new language or two > >because it forces your brain to think in different terms. > I guess you are right. I try to learn at least a few words of some different > languages, but I'm certainly not a grammar freak Me either, but I do try to follow it in general. The thing with grammar is that its learned, not taught. How many years have I been speaking english, and I still dont have it 100% perfect? Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 17:10:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA26431 for dynarec-outgoing; Wed, 30 Aug 2000 17:10:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <00037019d0e6e719_mailit@mail.dynarec.com> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> Date: Thu, 31 Aug 2000 02:18:31 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Why should german be equivelant to Mount Everest? Its not that hard. Yeah, I wanted to pick a smaller mountain, but I just couldn't think of a reasonable one... >> Strange, most people think it sounds too harsh. >That is why I like it. Ah, then you have to try Russian. >Me either, but I do try to follow it in general. The thing with grammar is >that its learned, not taught. The grammar only really works if just do it right and don't have to think why you're doing it that way, otherwise you're lost or at least too slow for a chat. >How many years have I been speaking english, >and I still dont have it 100% perfect? I still make silly errors in English :-( BTW, what's your mother tongue? >Nick -- M.I.K.e Command, n.: Statement presented by a human and accepted by a computer in such a manner as to make the human feel as if he is in control. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 30 17:16:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA26445 for dynarec-outgoing; Wed, 30 Aug 2000 17:16:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <037201c012e1$2f03e5a0$0200000a@nickscomp> From: "Nick" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Wed, 30 Aug 2000 17:19:52 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> Strange, most people think it sounds too harsh. > >That is why I like it. > Ah, then you have to try Russian. Maby Russian is TOO harsh for me, I dont particularly like it. > I still make silly errors in English :-( > BTW, what's your mother tongue? USA English, dont know any others except a bit of german and about half a highschool class worth of spanish that i've thankfully since forgotten (now there is a language I really HATE). Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 09:13:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA27308 for dynarec-outgoing; Thu, 31 Aug 2000 09:13:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <0003702744bf6fe6_mailit@mail.dynarec.com> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> Date: Thu, 31 Aug 2000 18:21:29 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Maby Russian is TOO harsh for me, I dont particularly like it. Da? >USA English, dont know any others except a bit of german and about half a >highschool class worth of spanish that i've thankfully since forgotten (now >there is a language I really HATE). Hasta la vista! Be careful what you say about Spanish because we have Victor on the list ;-) >Nick -- M.I.K.e You have an unusual magnetic personality. Don't walk too close to metal objects which are not fastened down. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 10:02:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA27355 for dynarec-outgoing; Thu, 31 Aug 2000 10:02:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007b01c0136e$172f9ae0$29c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <0003701963aa9334_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Thu, 31 Aug 2000 18:24:58 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "M.I.K.e" To: Sent: Thursday, August 31, 2000 1:47 AM Subject: Re: DYNAREC: Flags and stuff > >RPN = Reverse Polish Notation. Where the result is at the beginning of the > >equation instead of at the end. From what I understand, in German you say > >"Sex with me will you have?" Rather than "Will you have sex with me?" > > Are you thinking of Japanese? I think japanese is: subject object verb. And question always end with "ka", which appended to the verb form. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 10:02:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA27365 for dynarec-outgoing; Thu, 31 Aug 2000 10:02:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008301c0136e$1f1257c0$29c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> Subject: Re: DYNAREC: Flags and stuff Date: Thu, 31 Aug 2000 19:08:30 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > USA English, dont know any others except a bit of german and about half a > highschool class worth of spanish that i've thankfully since forgotten (now > there is a language I really HATE). > > I can't agree with your preferences about languages, sorry. ;) English isn't the best language either someone would want to learn. But I don't hate any language. > Nick > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 10:40:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA27400 for dynarec-outgoing; Thu, 31 Aug 2000 10:40:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <000370286f579046_mailit@mail.dynarec.com> References: <0003701963aa9334_mailit@mail.dynarec.com> <007b01c0136e$172f9ae0$29c3523e@hal9000> Date: Thu, 31 Aug 2000 19:44:59 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think japanese is: subject object verb. I'm not totally sure, but I think it also has postpositions instead of prepositions. >And question always >end with "ka", which appended to the verb form. Sounds a bit like "que"... Did you learn that much Japanese from playing import games? ;-) >Victor -- M.I.K.e A university is what a college becomes when the faculty loses interest in students. -- John Ciardi --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 10:40:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA27409 for dynarec-outgoing; Thu, 31 Aug 2000 10:40:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <000370287870de24_mailit@mail.dynarec.com> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> Date: Thu, 31 Aug 2000 19:47:31 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I can't agree with your preferences about languages, sorry. ;) I thought you'd have to comment on that ;-) >English isn't the best language either someone would want to >learn. But I don't hate any language. There are many languages which sound quite odd for my ears, but I wouldn't say I hate these. It might be different when I actually try to learn these langauges. What I hate for sure are some language types, eg. officialese! >Victor -- M.I.K.e Support wildlife -- vote for an orgy. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 11:10:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA27445 for dynarec-outgoing; Thu, 31 Aug 2000 11:10:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00a101c01377$8dac7720$29c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <0003701963aa9334_mailit@mail.dynarec.com> <007b01c0136e$172f9ae0$29c3523e@hal9000> <000370286f579046_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Thu, 31 Aug 2000 20:16:14 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I think japanese is: subject object verb. > > I'm not totally sure, but I think it also has postpositions instead of > prepositions. > I don't know. > >And question always > >end with "ka", which appended to the verb form. > > Sounds a bit like "que"... > Umm ... what do you mean, the sound or the spanish pronoun for "what"? "Ka" is used as english "?" sign (or "¿" at start and "?" at the end in Spanish) to indicate that the sentence is a question. > Did you learn that much Japanese from playing import games? ;-) > Are you joking? ;) All the games are in katakana (when your are very lucky) or in kanji which it is nearly imposible to read. :( I find still hard to read katakana and hiragana (and they are the easiest!!). Most what I know about japanese is from a book. I would want to have more time to learn more carefully japanese. I only know a few about the grammar, the katakana and hiragana alphabet (and I'm forgetting them) and a very few words. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 15:28:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA27654 for dynarec-outgoing; Thu, 31 Aug 2000 15:28:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002a01c013a3$68833480$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 00:26:22 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I can't agree with your preferences about languages, sorry. ;) Why not? Spanish is evil! ;) > English isn't the best language either someone would want to > learn. But I don't hate any language. An advantage of English is that we have no articles (or sexes) for nouns. On the other hand, it does have a lot of verb problems with the tenses - but so does German. And German has the articles. So German is worse. ;) Yaay, annoy two people and insult two languages with just one e-mail. It's a talent! :)) English is not the perfect language - but it is quite easy for people of most languages to learn it. But English is not perfect - I know this. I have problems with my French, German and Welsh because of this. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 15:30:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA27668 for dynarec-outgoing; Thu, 31 Aug 2000 15:30:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002d01c013a3$af003fc0$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <000370287870de24_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 00:31:32 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > There are many languages which sound quite odd for my ears, but I wouldn't > say I hate these. Those damn French, eh? ;) Three insulted languages! I'm on a roll! What can I say? When you're good, you're good. ;) Strange languages - Finnish, Polish and any other language based on Russian. Comrade. Chinese and Japanese are also strange sounding - very fast and very soft sounding - very much like French in that respect. > It might be different when I actually try to learn these langauges. Only one way to find out! 4 languages is enough for me though. :) > What I hate for sure are some language types, eg. officialese! Bleh. Which reminds me. Must go and de-register here. Bloomin' German official stuff... :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 17:35:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA27764 for dynarec-outgoing; Thu, 31 Aug 2000 17:35:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <0003702e45625bdc_mailit@mail.dynarec.com> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> Date: Fri, 01 Sep 2000 02:42:45 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Why not? Spanish is evil! ;) No, Latin is evil! Spanish is a much much weaker instance of the class of Romanic languages. >An advantage of English is that we have no articles (or sexes) for nouns. Wrong, definite article "the", indefinite article "a/an". You won't beat me in grammar terms ;-) >On the other hand, it does have a lot of verb problems with the tenses - I guess you mean the irregular verbs. > but so does German. And German has the articles. So German is worse. ;) Damn, I should have shown you the CGEL when you visited me, then you'd know how worse English is. >Yaay, annoy two people and insult two languages with just one e-mail. It's a >talent! :)) Just the liguistical hatred from a handicaped person! Uh, that was mean, sorry ;-) >English is not the perfect language - If you want to seek for the perfect or at last a perfect language then you could as well take part in the quest for the Grail. >but it is quite easy for people of most languages to learn it. According to a linguist (I forgot who said it) the nature of an easy language is that you reach the difficult parts much faster. >But English is not perfect - I know this. I have >problems with my French, German and Welsh because of this. :) That's your problem ;-) >> There are many languages which sound quite odd for my ears, but I wouldn't >> say I hate these. >Those damn French, eh? ;) Actually I meant something like Arabic: la mayyitan ma qadirum yatabaqa sarmadi fa itha yaji ash-shuthath al-mautu qad yantahi Anyone reading H.P. Lovecraft? >Three insulted languages! I'm on a roll! What can I say? When you're good, >you're good. ;) Is it because French reminds you of 1066? ;-) >Strange languages - Finnish, That must be a hard one. If you think that German morphology is hard then Finnish will be a nasty surprise. No wonder that Kimmo Koskenniemi is one of the experts for computer morphology. >Polish and any other language based on Russian. I don't know too much about those languages but I think they have more grammatical cases and have some strange verb modificators. >Comrade. Chinese and Japanese are also strange sounding - very fast and very >soft sounding - very much like French in that respect. Moshi-moshi? >Only one way to find out! 4 languages is enough for me though. :) Hmm, I have German, English, almost forget about my Latin (although frequent use of a dictionary and some common sense helped me to translate parts of the Carmina Burana, and believe me Mediaeval Latin is weird especially if you're only used to Classical Latin). Does Middle High German count as a separate language? Then we have all that stuff were I only know a few words but no grammar: Italian, French, Old Greek, Swahili, Japanese, Chinese, ... Did anyone know that Greedo in Star Wars actually speaks Qetchuan? You know the passage: "Oota goota Solo?" I think the Jawas have some African dialect, but I forgot which one, although I'm very sure that "Utini!" means something like "hurry up". While speaking of strange languages, do Quenya and Sindarin count? ;-) And the moral is: never discuss languages with a linguist... >Bleh. Which reminds me. Must go and de-register here. Bloomin' German >official stuff... :o Ahhrg, I hate that, and those crazy Germans really perfected bureaucracy! Hey, strange that the postfix "-cracy" almost looks like "crazy" ;-) -- M.I.K.e "Don't tell me I'm burning the candle at both ends -- tell me where to get more wax!!" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 17:41:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA27779 for dynarec-outgoing; Thu, 31 Aug 2000 17:41:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 31 Aug 2000 18:00:20 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <0003702e45625bdc_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> There are many languages which sound quite odd for my ears, but I wouldn't > >> say I hate these. > >Those damn French, eh? ;) > Actually I meant something like Arabic: > la mayyitan ma qadirum yatabaqa sarmadi > fa itha yaji ash-shuthath al-mautu qad yantahi I believe Arabic is the only language where coughing or clearing your throat could be mistaken for speaking. > >Comrade. Chinese and Japanese are also strange sounding - very fast and very > >soft sounding - very much like French in that respect. > Moshi-moshi? With no "L" sound. I only speak English - US English. I've always wanted to learn another language - preferrably Spanish since were have so many Mexicans here. It's all a matter of priorities - I'd rather spend time playing cool games, working on dynarecs, fixing up my pinball machines and driving my car. ;-) I've got a kid on the way, so my days of being able to do that are going to be minimized. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 18:51:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA27836 for dynarec-outgoing; Thu, 31 Aug 2000 18:51:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000831185234.008121b0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 31 Aug 2000 18:52:34 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <002d01c013a3$af003fc0$0100a8c0@lion> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <000370287870de24_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Strange languages - Finnish, Polish and any other language based on Russian. >Comrade. Chinese and Japanese are also strange sounding - very fast and very >soft sounding - very much like French in that respect. Finnish isn't based on Russian -- I don't think it is considered a Slavic language. Polish is a Slavic language, but I don't know wether or not it it based on Russian, it is similar in some respects, but not very. I think all Slavic languages are based off of a common language which has been extinct for a long time now. Chinese and Japanese don't sound at all soft. I think they sound more like chicken-clucking. I have no interest to learn either. >> What I hate for sure are some language types, eg. officialese! > >Bleh. Which reminds me. Must go and de-register here. Bloomin' German >official stuff... :o Bureaucracy sucks. 99.9% of the time it isn't necessary. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 18:59:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA27849 for dynarec-outgoing; Thu, 31 Aug 2000 18:59:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000831190018.0080b380@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 31 Aug 2000 19:00:18 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: References: <0003702e45625bdc_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I believe Arabic is the only language where coughing or clearing your >throat could be mistaken for speaking. Haha, yeah, they have like 4 different throat sounds. You should see it written... I remember a guy showing me some squiggly writing and he said it meant something. And then he put a whole bunch of dots all over it, and the meaning changed completely. It was pretty cool. >With no "L" sound. Flied lice anywa? >I only speak English - US English. I've always wanted to learn another >language - preferrably Spanish since were have so many Mexicans here. Bah, they should learn English. That's why I refuse to learn Spanish. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 20:25:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA27922 for dynarec-outgoing; Thu, 31 Aug 2000 20:25:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <03e801c013c4$be961b00$0200000a@nickscomp> From: "Nick" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Thu, 31 Aug 2000 20:28:49 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Wrong, definite article "the", indefinite article "a/an". You won't beat me > in grammar terms ;-) But the useage of a/an is very clear-cut as opposed to say der/die/das. If the next word starts with an a its an (now isn't that cute?) otherwise its a. Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 20:39:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA27939 for dynarec-outgoing; Thu, 31 Aug 2000 20:39:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000831204030.00812da0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 31 Aug 2000 20:40:30 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <03e801c013c4$be961b00$0200000a@nickscomp> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >But the useage of a/an is very clear-cut as opposed to say der/die/das. If >the next word starts with an a its an (now isn't that cute?) otherwise its >a. What about situations like "an historical event"? I believe that is correct, although I, and everyone I know, use "a historical event" which seems to be accepted. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 21:09:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA27971 for dynarec-outgoing; Thu, 31 Aug 2000 21:09:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 31 Aug 2000 21:28:20 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <3.0.5.32.20000831204030.00812da0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >But the useage of a/an is very clear-cut as opposed to say der/die/das. If > >the next word starts with an a its an (now isn't that cute?) otherwise its > What about situations like "an historical event"? I believe that is > correct, although I, and everyone I know, use "a historical event" which > seems to be accepted. It's not correct - it's actually considered "arrogant". That started back in the 60's with speech writers and this is how they differentiated themselves - by misusing words ("think different" anyone?). A historic is correct. One wouldn't say an hickey. "An" is used when the first sound of the following word is a vowel. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 21:16:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA27987 for dynarec-outgoing; Thu, 31 Aug 2000 21:16:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <040401c013cb$e2b6e620$0200000a@nickscomp> From: "Nick" To: References: Subject: Re: DYNAREC: Flags and stuff Date: Thu, 31 Aug 2000 21:19:56 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > A historic is correct. One wouldn't say an hickey. "An" is used when the > first sound of the following word is a vowel. Are you positive? I'm pretty sure you only use "an" if the next word starts with an a. Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 21:58:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA28022 for dynarec-outgoing; Thu, 31 Aug 2000 21:58:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000831215913.00813100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 31 Aug 2000 21:59:13 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <040401c013cb$e2b6e620$0200000a@nickscomp> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 09:19 PM 8/31/2000 -0700, you wrote: >> A historic is correct. One wouldn't say an hickey. "An" is used when the >> first sound of the following word is a vowel. > >Are you positive? I'm pretty sure you only use "an" if the next word starts >with an a. What about "an improbable situation"... you don't say "a improbable situation." "An" is used preceding a vowel sound, I just thought that there was a rational reason behind the "an historical" thing, but apparently there isn't and thus I don't know of any exceptions to the a/an rule. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 22:30:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA28055 for dynarec-outgoing; Thu, 31 Aug 2000 22:30:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 31 Aug 2000 22:48:27 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <3.0.5.32.20000831215913.00813100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> A historic is correct. One wouldn't say an hickey. "An" is used when the > >> first sound of the following word is a vowel. > >Are you positive? I'm pretty sure you only use "an" if the next word starts > >with an a. > What about "an improbable situation"... you don't say "a improbable > situation." "An" is used preceding a vowel sound, I just thought that there > was a rational reason behind the "an historical" thing, but apparently > there isn't and thus I don't know of any exceptions to the a/an rule. If the first pronounced letter is a vowel (except Y), "an" should be used. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 31 22:46:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA28077 for dynarec-outgoing; Thu, 31 Aug 2000 22:46:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <042c01c013d8$74d73b20$0200000a@nickscomp> From: "Nick" To: References: <3.0.5.32.20000831215913.00813100@powernet.net> Subject: Re: DYNAREC: Flags and stuff Date: Thu, 31 Aug 2000 22:49:55 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > What about "an improbable situation"... you don't say "a improbable > situation." "An" is used preceding a vowel sound, I just thought that there > was a rational reason behind the "an historical" thing, but apparently > there isn't and thus I don't know of any exceptions to the a/an rule. Ahh, you're right. I should have realized that if I thought about it long enough. Anyway, the fact that there are no exceptions and its a clear-cut rule was my whole point. Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 03:29:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA28455 for dynarec-outgoing; Fri, 1 Sep 2000 03:29:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <000370363fdf83d9_mailit@mail.dynarec.com> References: Date: Fri, 01 Sep 2000 12:13:52 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I believe Arabic is the only language where coughing or clearing your >throat could be mistaken for speaking. Hehe, that's right I guess. "Cough, cough." "Hey, you won't say that again, will ya?" "What? I didn't say anything!" >all a matter of priorities - I'd rather spend time playing cool games, >working on dynarecs, fixing up my pinball machines and driving my >car. ;-) Playing games, yes. Dynarecs, what's that? Don't have any pinball machines. Driving a car? Certainly not on German streets, it's more and more like suicide. >I've got a kid on the way, so my days of being able to do that >are going to be minimized. I bet so! I only have a niece which I don't see so often, but I know how much time you need for children... >-->Neil -- M.I.K.e "We demand rigidly defined areas of doubt and uncertainty!" -- Vroomfondel --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 03:29:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA28466 for dynarec-outgoing; Fri, 1 Sep 2000 03:29:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <0003703644a85641_mailit@mail.dynarec.com> References: Date: Fri, 01 Sep 2000 12:15:12 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >If the first pronounced letter is a vowel (except Y), "an" should be used. Actually "Y" is a semi-vowel (like "W") anyway. >-->Neil -- M.I.K.e "I have made this letter longer than usual because I lack the time to make it shorter." -- Blaise Pascal --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 03:29:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA28479 for dynarec-outgoing; Fri, 1 Sep 2000 03:29:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <0003703651932a54_mailit@mail.dynarec.com> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> <03e801c013c4$be961b00$0200000a@nickscomp> Date: Fri, 01 Sep 2000 12:18:49 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >But the useage of a/an is very clear-cut as opposed to say der/die/das. If >the next word starts with an a its an (now isn't that cute?) otherwise its >a. As the others pointed out "an" is triggered by the following word starting with a vowel, although I remember someone telling me you could also say "an horse". The same is true for "the", but you don't write it, you only pronounce it "thee". I can tell you, your mother tongue always seems to be much easier until you try to explain certain rules! >Nick -- M.I.K.e Harris's Lament: All the good ones are taken. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 03:29:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA28483 for dynarec-outgoing; Fri, 1 Sep 2000 03:29:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <000370366aed80b4_mailit@mail.dynarec.com> References: <3.0.5.32.20000831185234.008121b0@powernet.net> Date: Fri, 01 Sep 2000 12:25:54 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Finnish isn't based on Russian -- I don't think it is considered a Slavic >language. Yeah, I think it's totally different. >Polish is a Slavic language, but I don't know wether or not it it >based on Russian, it is similar in some respects, but not very. I think all >Slavic languages are based off of a common language which has been extinct >for a long time now. Just like all Germanic, Celtic, and Roman languages the Slavic languages and some other belong to certain language groups, first being called "centum" and the latter "satem" according to the word for hundred. In the first Germanic Sound Law all K-sounds were changed to H, which is why we now have "hundred" and "hundert". But I'm afraid that I only know some details about the centum languages, especially the Germanic ones, but my knowledge about the satem languages is quite limited. >Bureaucracy sucks. 99.9% of the time it isn't necessary. Indeed! >Bart -- M.I.K.e Niklaus Wirth has lamented that, whereas Europeans pronounce his name correctly (Ni-klows Virt), Americans invariably mangle it into (Nick-les Worth). Which is to say that Europeans call him by name, but Americans call him by value. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 03:29:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA28486 for dynarec-outgoing; Fri, 1 Sep 2000 03:29:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <0003703676a0e00e_mailit@mail.dynarec.com> References: <0003701963aa9334_mailit@mail.dynarec.com> <007b01c0136e$172f9ae0$29c3523e@hal9000> <000370286f579046_mailit@mail.dynarec.com> <00a101c01377$8dac7720$29c3523e@hal9000> Date: Fri, 01 Sep 2000 12:29:10 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Sounds a bit like "que"... >Umm ... what do you mean, the sound or the spanish pronoun for >"what"? Yep, I think so. My Spanish just sucks, sorry. >Are you joking? ;) All the games are in katakana (when your are very >lucky) or in kanji which it is nearly imposible to read. :( Hmm, isn't katakana more like hangul (Korean), where mainly geometric shapes are used, and kanji is closer to the Chinese character set? >Victor -- M.I.K.e Psychiatrists say that one out of four people are mentally ill. Check three friends. If they're OK, you're it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 03:31:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA28505 for dynarec-outgoing; Fri, 1 Sep 2000 03:31:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009011032.MAA32670@pons.ac.upc.es> Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <3.0.5.32.20000831190018.0080b380@powernet.net> "from Bart at Aug 31, 2000 07:00:18 pm" To: dynarec@dynarec.com Date: Fri, 1 Sep 2000 12:32:37 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I only speak English - US English. I've always wanted to learn another > >language - preferrably Spanish since were have so many Mexicans here. > > Bah, they should learn English. That's why I refuse to learn Spanish. > > I'm sure they learn it. And Spanish is one of the most talked languages in the world along with russian, chinease or english. I'm not sure in what position. And I'm sure you will hear a lot of Spanish in your country in the next years, you are adviced. ;) Here in Spain we should have to learn some arabian or other african languages (suajili?). > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 03:44:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA28520 for dynarec-outgoing; Fri, 1 Sep 2000 03:44:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009011045.MAA00533@pons.ac.upc.es> Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <0003702e45625bdc_mailit@mail.dynarec.com> "from M.I.K.e at Sep 1, 2000 02:42:45 am" To: dynarec@dynarec.com Date: Fri, 1 Sep 2000 12:45:52 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Why not? Spanish is evil! ;) > > No, Latin is evil! Spanish is a much much weaker instance of the class of > Romanic languages. > No, no. The few I can still remember about latin it wasn't evil, just a bit complex and fun. ;) > >English is not the perfect language - > > If you want to seek for the perfect or at last a perfect language then you > could as well take part in the quest for the Grail. > He could try to discover the old original indoeuropean language from all (many) of actual languages were born. ;) > Hmm, I have German, English, almost forget about my Latin (although frequent > use of a dictionary and some common sense helped me to translate parts of the > Carmina Burana, and believe me Mediaeval Latin is weird especially if you're > only used to Classical Latin). He! I did a year of latin but I think I don't remember anything now. A bit useless language for a computer engineer. :p > Does Middle High German count as a separate language? > Then we have all that stuff were I only know a few words but no grammar: > Italian, French, Old Greek, Swahili, Japanese, Chinese, ... > > While speaking of strange languages, do Quenya and Sindarin count? ;-) > Do you really know about that languages "invented" by Tolkine?! But I don't know if it is a complet language. ;) Do you know perhaps also Klingon? I can't believe there are people with the will to invent a new language, there are other things more interesting (learning existing ones or studying about emulation). But perhaps they would think the same about me. ;) > Ahhrg, I hate that, and those crazy Germans really perfected bureaucracy! > Hey, strange that the postfix "-cracy" almost looks like "crazy" ;-) > I think you don't know about the southern european countries bureaucracy (Spain, Italia, Portugal? and sure all latinamerica countries). That IS really crazy! In any case noone with a bit of common sense agrees with BURROcracy (small joke with donkeys ;), a few could be good, a bit more is anoising, a lot of is a knightmare and stupid. > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 03:55:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA28539 for dynarec-outgoing; Fri, 1 Sep 2000 03:55:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009011053.MAA00718@pons.ac.upc.es> Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <0003703676a0e00e_mailit@mail.dynarec.com> "from M.I.K.e at Sep 1, 2000 12:29:10 pm" To: dynarec@dynarec.com Date: Fri, 1 Sep 2000 12:53:39 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Are you joking? ;) All the games are in katakana (when your are very > >lucky) or in kanji which it is nearly imposible to read. :( > > Hmm, isn't katakana more like hangul (Korean), where mainly geometric shapes > are used, and kanji is closer to the Chinese character set? > I don't know about Korean. But katakana/hiragana are syllabic alphabets. Kanji are the very same Chinease ideogrames with perhaps some (very few) changes in meaning and writing. Katakana and hiragana (they are the same alphabet but with different symbols, it could be like or case alphabet but it isn't used this way) are easy to learn and write, just a bit more difficult that learn cyrilic (russian). Kanji is really really difficult to learn and write, I keep studiying around twelve of them and you need to have a good hand for drawing. I think they are learned by the way they are drawed (I don't think it can be called writing). > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 04:00:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA28556 for dynarec-outgoing; Fri, 1 Sep 2000 04:00:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <044601c01404$5166f320$0200000a@nickscomp> From: "Nick" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> <03e801c013c4$be961b00$0200000a@nickscomp> <0003703651932a54_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 04:03:54 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The same is true for "the", but you don't write it, you only pronounce it > "thee". Only if you like to pretend you are King Arthur. > I can tell you, your mother tongue always seems to be much easier until you > try to explain certain rules! Thats because it all becomes intuitive :-) Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 04:05:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA28572 for dynarec-outgoing; Fri, 1 Sep 2000 04:05:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <045601c01405$0affc460$0200000a@nickscomp> From: "Nick" To: References: <200009011045.MAA00533@pons.ac.upc.es> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 04:09:05 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > He could try to discover the old original indoeuropean language from > all (many) of actual languages were born. ;) A pointless exercise. Many different languages were invented independantly. What amazes me though is that allthough there are hundreds of different languages, we all seem to use the same 24 hour time system. There may be a few minor exceptions, but i'm not aware of them. Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 04:30:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA28610 for dynarec-outgoing; Fri, 1 Sep 2000 04:30:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007301c01410$adc0cd60$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com><03a501c011aa$3f086080$0200000a@nickscomp><00036fffd3fbd612_mailit@mail.dynarec.com><02e601c012d5$5ebc32e0$0200000a@nickscomp><0003701981932087_mailit@mail.dynarec.com><036401c012de$b3f6a7a0$0200000a@nickscomp><00037019d0e6e719_mailit@mail.dynarec.com><037201c012e1$2f03e5a0$0200000a@nickscomp><008301c0136e$1f1257c0$29c3523e@hal9000><000370287870de24_mailit@mail.dynarec.com> <3.0.5.32.20000831185234.008121b0@powernet.net> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 12:34:42 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Strange languages - Finnish, Polish and any other language based on Russian. > >Comrade. Chinese and Japanese are also strange sounding - very fast and very > >soft sounding - very much like French in that respect. > > Finnish isn't based on Russian -- I don't think it is considered a Slavic > language. I know. Finnish is it's own language with it's own roots. I wrote "Finnish, Polish and any other language based on Russian" and not "Finnish and Polish - and any other language based on Russian". That changes the context entirely (to make you think that I thought Finnish was based on Russian). So there. Ha! ;P > Polish is a Slavic language, but I don't know wether or not it it > based on Russian, it is similar in some respects, but not very. I think all > Slavic languages are based off of a common language which has been extinct > for a long time now. Russian is, of course, based on the slovakian languages. And then it changes and bleh, the slovak take things from Russian and languages become intermingled. > Chinese and Japanese don't sound at all soft. I think they sound more like > chicken-clucking. I have no interest to learn either. But there's no sounds like "K". And "T" is much softer... > >Bleh. Which reminds me. Must go and de-register here. Bloomin' German > >official stuff... :o > > Bureaucracy sucks. 99.9% of the time it isn't necessary. Yep. This united Europe thing would sure make things easier for me. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 04:30:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA28618 for dynarec-outgoing; Fri, 1 Sep 2000 04:30:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007401c01410$ae9b00c0$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 13:22:11 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Why not? Spanish is evil! ;) > > No, Latin is evil! Spanish is a much much weaker instance of the class of > Romanic languages. Latin is evil too. But so is Spanish! ;) No, Spanish seems okay. And Portuguese. I know a few words and phrases from both. Although, admittedly, they are the same words and phrases. Oh yes, and they both treat the moon as females. Strange Germans. ;)) > >An advantage of English is that we have no articles (or sexes) for nouns. > > Wrong, definite article "the", indefinite article "a/an". You won't beat me > in grammar terms ;-) Definite: Der/Die/Das. Indefinite: Ein. You won't beat me either. ;) Oh yeah, what does "SIE" mean? ;P > >On the other hand, it does have a lot of verb problems with the tenses - > > I guess you mean the irregular verbs. Yes, thanks. I'd forgotten the word "irregular". :) > > but so does German. And German has the articles. So German is worse. ;) > > Damn, I should have shown you the CGEL when you visited me, then you'd know > how worse English is. Damn. I missed out on that one, eh? Hey, who is it who has two remarkably similar words: one referring to the weather - and one meaning "Gay", eh? ;)) > Just the liguistical hatred from a handicaped person! Uh, that was mean, > sorry ;-) I'll beat you to death with an arm! BTW, did I mention that they haven't set the bone yet - or put it in plaster? I'm still in a sling! > >English is not the perfect language - > > If you want to seek for the perfect or at last a perfect language then you > could as well take part in the quest for the Grail. Of course. But what's wrong with Welsh? Actually, we can tell that we don't have so many French people on this list. Otherwise the list would have been flooded by people informing us that French is the perfect language. After all, everything else is better in France... :)) Yes, I'm bitter about that. I have spent almost two years living with different French people and I've never yet heard someone find France worse in some way. France is best. That's just... strange... :) > >but it is quite easy for people of most languages to learn it. > > According to a linguist (I forgot who said it) the nature of an easy language > is that you reach the difficult parts much faster. English! ;)) > >But English is not perfect - I know this. I have > >problems with my French, German and Welsh because of this. :) > > That's your problem ;-) Grr. ;) > Anyone reading H.P. Lovecraft? I have done in the past. Why? > >Three insulted languages! I'm on a roll! What can I say? When you're good, > >you're good. ;) > > Is it because French reminds you of 1066? ;-) No, the 100 year war, Nelson and so on... ;) The strange thing is that out of all the wars France had with England, the end result was 50% wins and 50% losses. :) > >Strange languages - Finnish, > > That must be a hard one. If you think that German morphology is hard then > Finnish will be a nasty surprise. No wonder that Kimmo Koskenniemi is one of > the experts for computer morphology. I know a very small amount of Finnish from a Finnish girl I knew in my last Uni. It sounds really cool but wierd. :) > Hmm, I have German, English, almost forget about my Latin (although frequent > use of a dictionary and some common sense helped me to translate parts of the > Carmina Burana, and believe me Mediaeval Latin is weird especially if you're > only used to Classical Latin). > Does Middle High German count as a separate language? Given how much it changed, okay then. ;) > Then we have all that stuff were I only know a few words but no grammar: > Italian, French, Old Greek, Swahili, Japanese, Chinese, ... Shit, forgot that I know a fair bit of Italian. One of my friends back home is Italian (or her parents are at least) and she taught me some. She also speaks fluent French - but let's not talk about that. Everyone has to have a downside. God, Gwenole is going to hate me. ;) I'd like to say that I don't hate French. I know some very nice French guys - and girls! I just can't see why all of them have this belief that France is best all the time. So I go out of my way to put France down every chance I get. Sorry. >:-) > And the moral is: never discuss languages with a linguist... Especially not a German one! ;)) > Ahhrg, I hate that, and those crazy Germans really perfected bureaucracy! > Hey, strange that the postfix "-cracy" almost looks like "crazy" ;-) You have a point there... ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 04:30:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA28621 for dynarec-outgoing; Fri, 1 Sep 2000 04:30:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007501c01410$afe92ba0$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com><03a501c011aa$3f086080$0200000a@nickscomp><00036fffd3fbd612_mailit@mail.dynarec.com><02e601c012d5$5ebc32e0$0200000a@nickscomp><0003701981932087_mailit@mail.dynarec.com><036401c012de$b3f6a7a0$0200000a@nickscomp><00037019d0e6e719_mailit@mail.dynarec.com><037201c012e1$2f03e5a0$0200000a@nickscomp><008301c0136e$1f1257c0$29c3523e@hal9000><002a01c013a3$68833480$0100a8c0@lion><0003702e45625bdc_mailit@mail.dynarec.com> <3.0.5.32.20000831204030.00812da0@powernet.net> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 13:25:26 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > What about situations like "an historical event"? I believe that is > correct, although I, and everyone I know, use "a historical event" which > seems to be accepted. Yuk. Yes, you're right. The letter "H" is a special case vowel (that means that I know the correct term but can't remember it!). But to say "an hotel" just doesn't sound right to me and so I don't use it. But you're right - it's part of the English language. See? I said English wasn't perfect! ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 04:30:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA28625 for dynarec-outgoing; Fri, 1 Sep 2000 04:30:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007601c01410$b0b29620$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 13:28:29 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > It's not correct - it's actually considered "arrogant". That started back > in the 60's with speech writers and this is how they differentiated > themselves - by misusing words ("think different" anyone?). It dates back earlier than that though I can't give you a date. I believe it's taken from medieval English - but I don't know if that's true. From that great vowel shift thingie... > A historic is correct. One wouldn't say an hickey. "An" is used when the > first sound of the following word is a vowel. "An hickey" is, unfortunately, quite correct. But I agree that it doesn't sound correctly. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 04:48:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA28647 for dynarec-outgoing; Fri, 1 Sep 2000 04:48:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ae01c01413$345cb940$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> <03e801c013c4$be961b00$0200000a@nickscomp> <0003703651932a54_mailit@mail.dynarec.com> <044601c01404$5166f320$0200000a@nickscomp> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 13:42:19 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Only if you like to pretend you are King Arthur. ...who was Welsh. ;) > Thats because it all becomes intuitive :-) Yep. I like to speak other languages because it can point out problems in your own language. And it helps you think much clearer. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 04:48:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA28657 for dynarec-outgoing; Fri, 1 Sep 2000 04:48:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00af01c01413$3831dd20$0100a8c0@lion> From: "Neil Griffiths" To: References: <200009011045.MAA00533@pons.ac.upc.es> <045601c01405$0affc460$0200000a@nickscomp> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 13:45:13 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > A pointless exercise. Many different languages were invented independantly. > What amazes me though is that allthough there are hundreds of different > languages, we all seem to use the same 24 hour time system. There may be a > few minor exceptions, but i'm not aware of them. That's true - but we don't all use the same date/calendar systems - which is equally amazing when you think about the 24 hour system. I know why we don't use the same calendar system too but I don't want to type it out. My one arm is getting tired now! :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 04:54:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA28669 for dynarec-outgoing; Fri, 1 Sep 2000 04:54:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <04b601c0140b$ca32da60$0200000a@nickscomp> From: "Nick" To: References: <200009011045.MAA00533@pons.ac.upc.es> <045601c01405$0affc460$0200000a@nickscomp> <00af01c01413$3831dd20$0100a8c0@lion> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 04:57:21 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com NG, Welsh, thats cute :-) At the risk of tiring your remaining arm some more, how did you end up breaking it? Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 05:52:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA28761 for dynarec-outgoing; Fri, 1 Sep 2000 05:52:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <000370382e7789f7_mailit@mail.dynarec.com> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> <03e801c013c4$be961b00$0200000a@nickscomp> <0003703651932a54_mailit@mail.dynarec.com> <044601c01404$5166f320$0200000a@nickscomp> Date: Fri, 01 Sep 2000 14:32:10 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> The same is true for "the", but you don't write it, you only pronounce it >> "thee". >Only if you like to pretend you are King Arthur. If you think of the use of "thee" as "you" then that's still Early Modern English as used by Shakespeare. But you don't say "the Americans" you say (or should say) "thee Americans". >Nick -- M.I.K.e Fakir, n: A psychologist whose charismatic data have inspired almost religious devotion in his followers, even though the sources seem to have shinnied up a rope and vanished. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 05:52:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA28755 for dynarec-outgoing; Fri, 1 Sep 2000 05:51:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <0003703826ed1516_mailit@mail.dynarec.com> References: <200009011045.MAA00533@pons.ac.upc.es> Date: Fri, 01 Sep 2000 14:30:03 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >No, no. The few I can still remember about latin it wasn't evil, >just a bit complex and fun. ;) Fun? Only if you're a masochist! "Ceterum censeo Cartaginem esse delendam!" >He could try to discover the old original indoeuropean language from >all (many) of actual languages were born. ;) There are enough lunguists searching for it without much result. BTW, "Indoeuropean" is one of those political correct but overall incorrect terms, because there was no Europe at that time, and the older term "Indogermanic" is more precise because it spans from the Indian to the Germanic languages. >He! I did a year of latin but I think I don't remember anything now. >A bit useless language for a computer engineer. :p "Ceterum censeo Microsoftem esse delendam" ;-) >> While speaking of strange languages, do Quenya and Sindarin count? ;-) >Do you really know about that languages "invented" by Tolkine?! But >I don't know if it is a complet language. ;) Which language could be called "complete" anyway? But there is a Eldarin dictionary and also grammar. >Do you know perhaps also Klingon? Nope, and I certainly haven't read Hamlet in the Klingon original ;-) >I can't believe there are people >with the will to invent a new language, there are other things >more interesting (learning existing ones or studying about emulation). >But perhaps they would think the same about me. ;) Are you crazy, trying to translate one processor code into another? ;-) >a lot of is a knightmare and stupid. The word you wanted to write is "nightmare". I'm not sure if "knightmare" makes any sense, but it's a very nice error indeed ;-) >Victor -- M.I.K.e Be a better psychiatrist and the world will beat a psychopath to your door. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 05:52:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA28773 for dynarec-outgoing; Fri, 1 Sep 2000 05:52:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <0003703881257a27_mailit@mail.dynarec.com> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> <007401c01410$ae9b00c0$0100a8c0@lion> Date: Fri, 01 Sep 2000 14:55:17 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Strange Germans. ;)) We have to be different! >Definite: Der/Die/Das. Indefinite: Ein. You won't beat me either. ;) Actually it's ein/eine/ein ;-) >Oh yeah, what does "SIE" mean? ;P I which context? Either it's "they" or "you". BTW, even if "you" and "Du" sound similar "you" has basically the meaning of "Sie" and the English extinguished the words for "Du" which were "thou/thee". >Yes, thanks. I'd forgotten the word "irregular". :) Jakob Grimm also invented the term "strong verbs" because they don't need other words to build tenses. >Damn. I missed out on that one, eh? Yup, if the contents of the CGEL doesn't kill you then I still could club you to death with it ;-) >Hey, who is it who has two remarkably similar words: one referring to the >weather - and one meaning "Gay", eh? ;)) Just give me time to think of an equally stupid example in English ;-) >I'll beat you to death with an arm! Hmm, you'll have to get in range first, I have long legs ;-) >BTW, did I mention that they haven't set >the bone yet - or put it in plaster? I'm still in a sling! What? I knew that German doctors are getting wrose (just take a look at the medicine students), but that worse??? >Of course. But what's wrong with Welsh? Oh, you want to tell me that Welsh is the perfect language? >Actually, we can tell that we don't have so many French people on this list. Where is Gwenole anyway? >Yes, I'm bitter about that. I have spent almost two years living with >different French people and I've never yet heard someone find France worse >in some way. France is best. That's just... strange... :) The call the computer ordinateur or something like that... >> Anyone reading H.P. Lovecraft? >I have done in the past. Why? Because the Arabic verses I quoted are quite important for at least one of his stories called "Call of Cthuluh". >I know a very small amount of Finnish from a Finnish girl I knew in my last >Uni. It sounds really cool but wierd. :) I don't even want to know what kind of vocab you learned ;-) >> Does Middle High German count as a separate language? >Given how much it changed, okay then. ;) Sweet! >Shit, forgot that I know a fair bit of Italian. One of my friends back home >is Italian (or her parents are at least) and she taught me some. Hmm, just one question: Why do you always seem to learn languages from girls, heh? ;-) >I'd like to say that I don't hate French. I know some very nice French >guys - and girls! Girls again... ;-) >> And the moral is: never discuss languages with a linguist... >Especially not a German one! ;)) Hehe ;-) >> Hey, strange that the postfix "-cracy" almost looks like "crazy" ;-) >You have a point there... ;)) That must be one of those mystical language truths ;-) >Neil. -- M.I.K.e Experience varies directly with equipment ruined. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 07:00:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA28845 for dynarec-outgoing; Fri, 1 Sep 2000 07:00:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002401c01425$a48503a0$0100a8c0@lion> From: "Neil Griffiths" To: References: <200009011045.MAA00533@pons.ac.upc.es> <045601c01405$0affc460$0200000a@nickscomp> <00af01c01413$3831dd20$0100a8c0@lion> <04b601c0140b$ca32da60$0200000a@nickscomp> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 15:44:27 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Welsh, thats cute :-) Heh. ;) > At the risk of tiring your remaining arm some more, how did you end up > breaking it? I did Judo for 10 years and when I came across to Germany decided to take up Ju-jitsu. What a mistake. I come home with bruises, have taken the skin off my feet and now have a broken arm (guy threw me and his leg hit the floor, then my arm hit his leg, then his other leg hit my arm - he also didn't realise it was broken and twisted it!). And the worst thing? I enjoy it. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 07:00:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA28852 for dynarec-outgoing; Fri, 1 Sep 2000 07:00:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002601c01425$a7db81a0$0100a8c0@lion> From: "Neil Griffiths" To: References: <200009011045.MAA00533@pons.ac.upc.es> <0003703826ed1516_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 15:52:50 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Do you know perhaps also Klingon? > > Nope, and I certainly haven't read Hamlet in the Klingon original ;-) Uh, I know a very small amount of Klongon. There was a guy in my first year of Uni who spoke fluent Klingon. He's been on TV and all sorts! Can't remember his last name - but his first was Alex. He was also Welsh - doesn't help my argument! ;) > The word you wanted to write is "nightmare". I'm not sure if "knightmare" > makes any sense, but it's a very nice error indeed ;-) Knightmare is a cool childrens TV show I used to watch when I was younger! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 07:00:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA28862 for dynarec-outgoing; Fri, 1 Sep 2000 07:00:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002501c01425$a6cef3a0$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> <03e801c013c4$be961b00$0200000a@nickscomp> <0003703651932a54_mailit@mail.dynarec.com> <044601c01404$5166f320$0200000a@nickscomp> <000370382e7789f7_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 15:49:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > If you think of the use of "thee" as "you" then that's still Early Modern > English as used by Shakespeare. > But you don't say "the Americans" you say (or should say) "thee Americans". You have a point there. I guess I do. That's a rule I hadn't thought about before - it was automatic! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 07:00:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA28866 for dynarec-outgoing; Fri, 1 Sep 2000 07:00:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002701c01425$a8c67de0$0100a8c0@lion> From: "Neil Griffiths" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> <007401c01410$ae9b00c0$0100a8c0@lion> <0003703881257a27_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 16:01:30 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Definite: Der/Die/Das. Indefinite: Ein. You won't beat me either. ;) > > Actually it's ein/eine/ein ;-) Yeah, but I didn't want to type anymore! ;) > >Oh yeah, what does "SIE" mean? ;P > > I which context? Either it's "they" or "you". Or "she". > BTW, even if "you" and "Du" sound similar "you" has basically the meaning of > "Sie" and the English extinguished the words for "Du" which were "thou/thee". I still use "du" sometimes but I try not to. > Jakob Grimm also invented the term "strong verbs" because they don't need > other words to build tenses. Which can be useful - but more words to remember! > >Damn. I missed out on that one, eh? > > Yup, if the contents of the CGEL doesn't kill you then I still could club you > to death with it ;-) Nooooooo! ;) > >Hey, who is it who has two remarkably similar words: one referring to the > >weather - and one meaning "Gay", eh? ;)) > > Just give me time to think of an equally stupid example in English ;-) I'm waiting... ;) BTW, did you know that "gay" actually stands for something? "Good As You" - I found this out about 2 months ago. I still don't know why though... ;) > >I'll beat you to death with an arm! > > Hmm, you'll have to get in range first, I have long legs ;-) But my arm stretches! ;)) > >BTW, did I mention that they haven't set > >the bone yet - or put it in plaster? I'm still in a sling! > > What? I knew that German doctors are getting wrose (just take a look at the > medicine students), but that worse??? I don't know why either! > >Of course. But what's wrong with Welsh? > > Oh, you want to tell me that Welsh is the perfect language? Yeah, it's brilliant. What's the problem with 4 articles? ;)) > >Actually, we can tell that we don't have so many French people on this list. > > Where is Gwenole anyway? On holiday maybe? > The call the computer ordinateur or something like that... Yep. > >I know a very small amount of Finnish from a Finnish girl I knew in my last > >Uni. It sounds really cool but wierd. :) > > I don't even want to know what kind of vocab you learned ;-) Nothing bad (damn!) - she just used to sit on the row in front of me in some lectures. It was something to do that was slightly interesting. :) > >Shit, forgot that I know a fair bit of Italian. One of my friends back home > >is Italian (or her parents are at least) and she taught me some. > > Hmm, just one question: Why do you always seem to learn languages from girls, > heh? ;-) That's something I'd never thought about - until you mentioned it. I'm just lucky I guess. ;) > >I'd like to say that I don't hate French. I know some very nice French > >guys - and girls! > > Girls again... ;-) Of course! :) > >> Hey, strange that the postfix "-cracy" almost looks like "crazy" ;-) > >You have a point there... ;)) > > That must be one of those mystical language truths ;-) Definitely! Oh, I do so love these off topic discussions - especially on languages! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 08:35:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA28946 for dynarec-outgoing; Fri, 1 Sep 2000 08:35:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <0003703a90954a94_mailit@mail.dynarec.com> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> <03e801c013c4$be961b00$0200000a@nickscomp> <0003703651932a54_mailit@mail.dynarec.com> <044601c01404$5166f320$0200000a@nickscomp> <000370382e7789f7_mailit@mail.dynarec.com> <002501c01425$a6cef3a0$0100a8c0@lion> Date: Fri, 01 Sep 2000 17:22:46 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> But you don't say "the Americans" you say (or should say) "thee >>Americans". >You have a point there. I guess I do. That's a rule I hadn't thought about >before - it was automatic! Well, I had to learn that and I still don't do it right sometimes, so don't tell me that English is easy. >> Actually it's ein/eine/ein ;-) >Yeah, but I didn't want to type anymore! ;) Cheater! >> >Oh yeah, what does "SIE" mean? ;P >> I which context? Either it's "they" or "you". >Or "she". Yes, I was a bit biased by the fact that you wrote it in capitals. >I still use "du" sometimes but I try not to. I think that's a problem that most English speakers have in Germany. Either they use too much "Du" because it sounds so similar like "you" or - especially when they learned it at school - use mainly "Sie" even when it's not appropriate. [CGEL] >Nooooooo! ;) It has 1800 pages and one of the authors is Sir Randolph Quirk - nomen est omen? >> Just give me time to think of an equally stupid example in English ;-) >I'm waiting... ;) "Self-concious" doesn't make much sense, when you know the meaning of "concious" you think that the other word means something like "self- confident". >BTW, did you know that "gay" actually stands for something? "Good As You" - >I found this out about 2 months ago. I still don't know why though... ;) I don't even want to know! >But my arm stretches! ;)) Ahhh, he's an X-man! >I don't know why either! The surely have to fix it before your trip home! >> Oh, you want to tell me that Welsh is the perfect language? >Yeah, it's brilliant. What's the problem with 4 articles? ;)) Hmm, I guess you mean 4 genders. Wasn't one for plural? >> Where is Gwenole anyway? >On holiday maybe? Or he fled from this list because of you... >Nothing bad (damn!) - she just used to sit on the row in front of me in some >lectures. It was something to do that was slightly interesting. :) I bet you were teasing her all the time! >> Hmm, just one question: Why do you always seem to learn languages from >>girls, heh? ;-) >That's something I'd never thought about - until you mentioned it. I'm just >lucky I guess. ;) Well you told me about your "German lessons" in Munich, then the Finnish student, now the Italian, and all females - there is some kind of plan, is it? >Oh, I do so love these off topic discussions - especially on languages! :) It seems so ;-) >Neil. -- M.I.K.e Horses are forbidden to eat fire hydrants in Marshalltown, Iowa. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 08:40:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA28960 for dynarec-outgoing; Fri, 1 Sep 2000 08:40:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <050401c0142b$66ac6fe0$0200000a@nickscomp> From: "Nick" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> <03e801c013c4$be961b00$0200000a@nickscomp> <0003703651932a54_mailit@mail.dynarec.com> <044601c01404$5166f320$0200000a@nickscomp> <000370382e7789f7_mailit@mail.dynarec.com> <002501c01425$a6cef3a0$0100a8c0@lion> <0003703a90954a94_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 08:43:39 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com "Self-concious" doesn't make much sense, when you know the meaning of "concious" you think that the other word means something like "self- confident". I think it makes perfect sense. You are "concious" of your "self", ie the way you look. Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 08:51:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA28977 for dynarec-outgoing; Fri, 1 Sep 2000 08:51:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <0003703b10ccc0f4_mailit@mail.dynarec.com> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> <03e801c013c4$be961b00$0200000a@nickscomp> <0003703651932a54_mailit@mail.dynarec.com> <044601c01404$5166f320$0200000a@nickscomp> <000370382e7789f7_mailit@mail.dynarec.com> <002501c01425$a6cef3a0$0100a8c0@lion> <0003703a90954a94_mailit@mail.dynarec.com> <050401c0142b$66ac6fe0$0200000a@nickscomp> Date: Fri, 01 Sep 2000 17:58:37 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>"Self-concious" doesn't make much sense, when you know the meaning of >>"concious" you think that the other word means something like "self- >>confident". >I think it makes perfect sense. You are "concious" of your "self", ie the >way you look. It doesn't mean "self-aware" but something like "unsure". >Nick -- M.I.K.e Surprise due today. Also the rent. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 09:07:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA29001 for dynarec-outgoing; Fri, 1 Sep 2000 09:07:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <051201c0142f$264a5d00$0200000a@nickscomp> From: "Nick" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> <03e801c013c4$be961b00$0200000a@nickscomp> <0003703651932a54_mailit@mail.dynarec.com> <044601c01404$5166f320$0200000a@nickscomp> <000370382e7789f7_mailit@mail.dynarec.com> <002501c01425$a6cef3a0$0100a8c0@lion> <0003703a90954a94_mailit@mail.dynarec.com> <050401c0142b$66ac6fe0$0200000a@nickscomp> <0003703b10ccc0f4_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 09:10:30 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > It doesn't mean "self-aware" but something like "unsure". It means you are "unsure" about the way you look and act in specific. Normally you would say "overly self-concious" but its such a well known term people leave out the "overly" part. Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 09:30:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA29023 for dynarec-outgoing; Fri, 1 Sep 2000 09:29:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-Originating-IP: [192.9.51.3] From: "Fred Weigel" To: dynarec@dynarec.com Subject: DYNAREC: A Real Question Date: Fri, 01 Sep 2000 12:32:25 EDT Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 01 Sep 2000 16:32:25.0958 (UTC) FILETIME=[36606060:01C01432] Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This list is awfully fluffy... but I do have a question to pose. I am building a dynamic translation engine (known as JRI). On 64 bit target machines, management of a 32 bit address space is easy. The virtual space is built from mmap()ed pieces. For simple 8 bit and 16 bit processors, the same approach works well. Where the problem comes in is in trying to produce a 32 bit address space running on a host 32 bit processor. I am attempting to host a native OS that manages page tables and its own virtual memory environment. My solution (so far) is to define an operation I have termed "munging". The target 32 bit virtual address space is divided to segments of 1 or 2 megabytes each, and the base of each of these segments is put into a table. The mmap() region pulls together the (possibly) separated sections into a workable region (say, 64MB in size). The target processor instructions that refer to memory are then translated into a sequence that takes the target virtual address, shifts it down to isolate the segment number, looks up the segment number and then combines the low order address bits back in to produce the host address. The host mmap() is used to translate that address into the actual physical memory. I then mark code pages as non-writable and catch any writes to code space to invalidate translations, or to catch i/o page writes and reads. The problem -- this approach adds a LOT of overhead to memory operations: load reg,memaddr translates into page <- (memaddr >> page_shift) & page_mask -- note that the 'and' may not be necessary offset <- memaddr & offset_mask addr <- segment_table[page] if (addr == NIL) not_mapped_fault addr <- addr | offset reg <- mem[addr] This is a five to one expansion on primitive code. Note that sequences such as 'increment memaddr' may be optimized, if the memaddr doesn't cross a segment boundary: old_page <- memaddr & page_mask ++memaddr if ((memaddr & page_mask) != old_page) do re-munging of address This can cut the overhead to three to one, which is still quite bad. The OTHER problem with this approach is that absolute fidelity cannot be guaranteed with buggy target software. For example, writing off the end of a virtual page may write into another page, and not into a "bit bucket", and it may have generated a "page not present" fault on the target, which now won't happen. But, if we assume (moderatly) correct target software, this won't be a concern. And, it won't cause the host to crash. Is there another solution to this? Anyone want to comment? Fred Weigel _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. Share information about yourself, create your own public profile at http://profiles.msn.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 09:47:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA29046 for dynarec-outgoing; Fri, 1 Sep 2000 09:46:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: julesb@btinternet.com To: dynarec@dynarec.com Date: Fri, 1 Sep 2000 17:49:53 +0100 Subject: Re: DYNAREC: A Real Question Message-id: <39afde31.392e.0@btinternet.com> X-User-Info: 193.131.176.3 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >This list is awfully fluffy... but I do have a question to pose. About time someone said something on-topic... :-P >I am building a dynamic translation engine (known as JRI). On >64 bit target machines, management of a 32 bit address space >is easy. The virtual space is built from mmap()ed pieces. >For simple 8 bit and 16 bit processors, the same approach >works well. > >Where the problem comes in is in trying to produce a 32 bit >address space running on a host 32 bit processor. I am >attempting to host a native OS that manages page tables and >its own virtual memory environment. > [snipped] I don't really have a solution to this, but it's something I've thought about doing (since I read Virtual PC apparently manages a similar feat on Mac OS). One idea I've had (which may be complete nonsense) is to use one of the extra segment registers on the x86 architecture to map the entire 32-bit 4GB address space somewhere above 4GB in the virtual address space, so translated accesses can just use the segment override prefix somehow? Obviously, this method would also need a paging scheme, mmap() implementation, etc. which could handle the later IA32 implementation's 36-bit address space, which I'm not sure anything does. Is that complete drivel? I'd quite like to know an answer to the problem too... One other thing - Plex86 provides virtual machine support (or will) in Linux. Some ideas may be borrowable from that (though I don't know how it works). You'd still have the problem of where to put your emulator (in the host address space?) with a 'normal' virtual machine though, perhaps? Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 10:04:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA29069 for dynarec-outgoing; Fri, 1 Sep 2000 10:03:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006a01c01437$6b8048a0$61c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> <007401c01410$ae9b00c0$0100a8c0@lion> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 18:37:29 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yes, I'm bitter about that. I have spent almost two years living with > different French people and I've never yet heard someone find France worse > in some way. France is best. That's just... strange... :) > Perhaps because it is?. ;) > The strange thing is that out of all the wars France had with England, the > end result was 50% wins and 50% losses. :) > I remember I heart something about this: Spanish beaten French, French beaten English and English beaten Spanish ... Or something similar. Always making that kings alliance betwen them, first English with French then Spanish with French and so on. Really crazy times. And awful and hatred royalties ... I don't think well about monarchies althought I have to admit the actual Spanish king is good (compared with their ancestors). > > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 10:04:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA29077 for dynarec-outgoing; Fri, 1 Sep 2000 10:03:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006b01c01437$6ef0b740$61c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> <007401c01410$ae9b00c0$0100a8c0@lion> <0003703881257a27_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Flags and stuff Date: Fri, 1 Sep 2000 18:45:28 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The call the computer ordinateur or something like that... > In Spanish we have two names: ordenador and computadora. The most common is of course ordenador, we have had also a lot of influence from French terms. ;) Ordenador could be translated to "sorter". > >> Anyone reading H.P. Lovecraft? > >I have done in the past. Why? > > Because the Arabic verses I quoted are quite important for at least one of > his stories called "Call of Cthuluh". > Perhaps to call to Cthuluh. I actually have read nothing from Lovercraft still but it seems to be interesting. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 10:43:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA29113 for dynarec-outgoing; Fri, 1 Sep 2000 10:41:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007601c0143c$bfedcd40$61c3523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: A Real Question Date: Fri, 1 Sep 2000 19:47:50 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > This list is awfully fluffy... but I do have a question to pose. This list started as a four or so people cofferoom where they could talk about dynarec and when dynarec was exhausted about everything else. Now it has grown up and it seems the first members still have the same mania of talking off topic. ;) > I am building a dynamic translation engine (known as JRI). On > 64 bit target machines, management of a 32 bit address space > is easy. The virtual space is built from mmap()ed pieces. > For simple 8 bit and 16 bit processors, the same approach > works well. > I'm (well the group I'm working for) using this approach to perform static translation of user code. > Where the problem comes in is in trying to produce a 32 bit > address space running on a host 32 bit processor. I am > attempting to host a native OS that manages page tables and > its own virtual memory environment. > The last July it was presented a project about our translator working with 32 bit architectures (we are working usually with 64-bit alphas), it was tested with Pentium and I think also with Power. In any case we only work with applications so I don't think the problem you have it will be studied there ... I will take a look when I can. Just a crazy idea: Just map all the emulator process as being the full memory address space of the CPU you are emulating (as does any decent OS). You could map directly the virtual memory space as being the space address of the process. The problem is you have the code and data of your emulator as well with the translation somewhere out there and you can access it directly. One solution (I think it might not work but who knows ;): 1) Select a region memory where you will have your code, data and translation. This region would be desirable to be in a region rarely used in the native machine. This can be tought. 2) I don't think you can protect this region using hardware but you can do it in software. When you translate the memory access you check for the address not being into this region, I think this would be faster than your code but perhaps I'm wrong. If it is outside the region is a normal read. If it isn't you have to use a specific system for the region, maybe calculating the address and mapping in an emulator buffer, I don't know, but I think it could be done. I think this could work faster than your solution (if I didn't make a mistake) iif you don't hit frequently (better if you don't hit never) in that reserve region. Perhaps it could be added a system for move the reserved region to another place when a program is being problematic but this will be too especulative now. He! I think is really crazy. Please Neil, where I'm wrong. ;) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 14:39:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA29284 for dynarec-outgoing; Fri, 1 Sep 2000 14:37:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000901143854.00819d10@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 01 Sep 2000 14:38:54 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <200009011032.MAA32670@pons.ac.upc.es> References: <3.0.5.32.20000831190018.0080b380@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 12:32 PM 9/1/2000 +0200, you wrote: >> >I only speak English - US English. I've always wanted to learn another >> >language - preferrably Spanish since were have so many Mexicans here. >> >> Bah, they should learn English. That's why I refuse to learn Spanish. >> >> >I'm sure they learn it. And Spanish is one of the most talked >languages in the world along with russian, chinease or english. >I'm not sure in what position. And I'm sure you will hear a lot >of Spanish in your country in the next years, you are adviced. ;) They often don't make any effort to learn English, often enough to cause a problem. I haven't seen this with any other group of immigrants as with those from Latin American countries. If the situation gets unbearably bad, I'll just emmigrate or something ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 14:47:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA29300 for dynarec-outgoing; Fri, 1 Sep 2000 14:45:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000901144650.0081bcc0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 01 Sep 2000 14:46:50 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <007301c01410$adc0cd60$0100a8c0@lion> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <000370287870de24_mailit@mail.dynarec.com> <3.0.5.32.20000831185234.008121b0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I know. Finnish is it's own language with it's own roots. I wrote "Finnish, >Polish and any other language based on Russian" and not "Finnish and >Polish - and any other language based on Russian". That changes the context >entirely (to make you think that I thought Finnish was based on Russian). So >there. Ha! ;P It doesn't change the context. You were talking about "3 or more" things, so you used the commas to separate them instead of "and." They were still bound to the same context. Finnish does indeed have its own roots I think, but I hear some of the language elements are similar to Hungarian. >> Polish is a Slavic language, but I don't know wether or not it it >> based on Russian, it is similar in some respects, but not very. I think >all >> Slavic languages are based off of a common language which has been extinct >> for a long time now. > >Russian is, of course, based on the slovakian languages. And then it changes >and bleh, the slovak take things from Russian and languages become >intermingled. So they all take things from each other, which means they aren't based on each other (ie. Russian being a root of Polish). Although, I really don't know. >> Chinese and Japanese don't sound at all soft. I think they sound more like >> chicken-clucking. I have no interest to learn either. > >But there's no sounds like "K". And "T" is much softer... Doesn't make it sound softer to me ;) I still think they sound funny. > >> Bureaucracy sucks. 99.9% of the time it isn't necessary. > >Yep. This united Europe thing would sure make things easier for me. :) United Europe is probably a good idea. I think they should still try and preserve the individuality of all the nations while at the same time being united. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 14:50:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA29310 for dynarec-outgoing; Fri, 1 Sep 2000 14:49:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000901145021.0081d100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 01 Sep 2000 14:50:21 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <0003703826ed1516_mailit@mail.dynarec.com> References: <200009011045.MAA00533@pons.ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >There are enough lunguists searching for it without much result. >BTW, "Indoeuropean" is one of those political correct but overall incorrect >terms, because there was no Europe at that time, and the older term >"Indogermanic" is more precise because it spans from the Indian to the >Germanic languages. Doesn't it go farther than that? Aren't all Europeans pretty much based off of the "Battle Axe people" which migrated in and killed the former inhabitants (the "Pitcher people") with their battle axes? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 15:05:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA29333 for dynarec-outgoing; Fri, 1 Sep 2000 15:04:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 1 Sep 2000 15:23:17 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <0003703644a85641_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >If the first pronounced letter is a vowel (except Y), "an" should be used. > Actually "Y" is a semi-vowel (like "W") anyway. Yep, I know that "A, E, I, O, U and sometimes Y" was what I was taught. W is not a vowel or a semi-vowel. Might be in German, though! -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 15:08:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA29346 for dynarec-outgoing; Fri, 1 Sep 2000 15:07:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 1 Sep 2000 15:26:15 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <007501c01410$afe92ba0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > What about situations like "an historical event"? I believe that is > > correct, although I, and everyone I know, use "a historical event" which > > seems to be accepted. > Yuk. Yes, you're right. The letter "H" is a special case vowel (that means > that I know the correct term but can't remember it!). But to say "an hotel" > just doesn't sound right to me and so I don't use it. But you're right - > it's part of the English language. See? I said English wasn't perfect! ;)) Eh? Not American English it isn't! -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 15:19:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA29362 for dynarec-outgoing; Fri, 1 Sep 2000 15:17:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008a01c01463$54681900$61c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000831190018.0080b380@powernet.net> <3.0.5.32.20000901143854.00819d10@powernet.net> Subject: Re: DYNAREC: Flags and stuff Date: Sat, 2 Sep 2000 00:23:57 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I'm sure they learn it. And Spanish is one of the most talked > >languages in the world along with russian, chinease or english. > >I'm not sure in what position. And I'm sure you will hear a lot > >of Spanish in your country in the next years, you are adviced. ;) > > They often don't make any effort to learn English, often enough to cause a > problem. I haven't seen this with any other group of immigrants as with > those from Latin American countries. > I think no generalization is good. In any case I don't live in USA so I don't know about it. And if you think Latin American are a problem you should have to learn about some of the people who emigrate to Spain or Europe. The Islam is a very closed religion, a religion a lot of more out dated and primitive than the normal Cristianism there is now in Europe or USA. In any case it had good points, in the middle age ... It's a pity that know has become very outdated. Do you know that "Cristian" Spanish fight seven centuries against "Islam" Spanish to throw them away? When the rest of Europe wasn't more than some small kingdoms of barbarian ;) here it were a very high level of culture and it was Islamic culture. > If the situation gets unbearably bad, I'll just emmigrate or something ;) > He! You could come to Spain. ;)) > > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 1 15:20:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA29372 for dynarec-outgoing; Fri, 1 Sep 2000 15:19:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009201c01463$95758a40$61c3523e@hal9000> From: "Victor Moya del Barrio" To: References: <200009011045.MAA00533@pons.ac.upc.es> <3.0.5.32.20000901145021.0081d100@powernet.net> Subject: Re: DYNAREC: Flags and stuff Date: Sat, 2 Sep 2000 00:25:49 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >There are enough lunguists searching for it without much result. > >BTW, "Indoeuropean" is one of those political correct but overall incorrect > >terms, because there was no Europe at that time, and the older term > >"Indogermanic" is more precise because it spans from the Indian to the > >Germanic languages. > > Doesn't it go farther than that? Aren't all Europeans pretty much based off > of the "Battle Axe people" which migrated in and killed the former > inhabitants (the "Pitcher people") with their battle axes? > > Sure! It must be true because in Europe there have been ever the most savage and barbarian people. ;) You just have to think how many wars there was been. > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 03:21:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA30054 for dynarec-outgoing; Sat, 2 Sep 2000 03:20:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c014c8$5120e960$b5c5523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: A Real Question Date: Sat, 2 Sep 2000 12:26:53 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The problem -- this approach adds a LOT of overhead to memory > operations: > > load reg,memaddr > > translates into > > page <- (memaddr >> page_shift) & page_mask > -- note that the 'and' may not be necessary > offset <- memaddr & offset_mask > addr <- segment_table[page] > if (addr == NIL) not_mapped_fault > addr <- addr | offset > reg <- mem[addr] > I was thoughting a bit more about my idea. If you map your emulated virtual address space directly on the process address space (using mmap or whatever) and then you reserve the addresses used by the emulator the translated code would be something like this: if(reserved_region(addr)) special_case reg <- mem[addr] Accesses to non mapped address will be detected by a process page fault. In the special_case you could map in a temporaly buffer the address you are accessing and perform the memory operation. The problem is still if you will hit too many times in the reserved region. I'm not sure where common UNIX (or whatever system your using) map the usual libraries and functions (which perhaps couldn't be moved as your own code). But if it is in a very used region you can try to add an offset to the emulated address and wrap to the start of the memory space when it overflows: addr+=offset; (and I think the wrap is already done ;) This could be a simple method to avoid problematic regions. There could be more than a reserved region but then the code for checking would be more expensive than your actual code. It doesn't seem a so bad idea unless I have missed something but I'm not sure if it could work ... > Fred Weigel Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 07:00:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA32299 for dynarec-outgoing; Sat, 2 Sep 2000 06:59:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <0003704d5155056f_mailit@mail.dynarec.com> References: Date: Sat, 02 Sep 2000 15:45:09 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yep, I know that "A, E, I, O, U and sometimes Y" was what I was taught. W >is not a vowel or a semi-vowel. Might be in German, though! According to one of my books ("Terminologie der Sprachbeschreibung", just in case someone is interested) the initial sounds in "young" and "water" are semi-vowels. The definition is that those sounds don't hinder the flow of air as a normal consonant should do but they cannot be the core of a syllable like a vowel. I think the difference between a consonant and a semi-vowel is almost only of technical nature that most grammars simply count the two phonemes as consonants. Those two consonats are not part of the German language, eg. the German word "Wein" (wine) is spoke like the English word "vine". "W" is always spoken as "V" and "V" sometimes as "V" but mainly as "F", eg. "Vater" (father). >-->Neil -- M.I.K.e If you cannot convince them, confuse them. -- Harry S Truman --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 07:00:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA32306 for dynarec-outgoing; Sat, 2 Sep 2000 06:59:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Flags and stuff From: "M.I.K.e" Message-ID: <0003704d676d3a9e_mailit@mail.dynarec.com> References: <00036ff9e5752c65_mailit@mail.dynarec.com> <03a501c011aa$3f086080$0200000a@nickscomp> <00036fffd3fbd612_mailit@mail.dynarec.com> <02e601c012d5$5ebc32e0$0200000a@nickscomp> <0003701981932087_mailit@mail.dynarec.com> <036401c012de$b3f6a7a0$0200000a@nickscomp> <00037019d0e6e719_mailit@mail.dynarec.com> <037201c012e1$2f03e5a0$0200000a@nickscomp> <008301c0136e$1f1257c0$29c3523e@hal9000> <002a01c013a3$68833480$0100a8c0@lion> <0003702e45625bdc_mailit@mail.dynarec.com> <03e801c013c4$be961b00$0200000a@nickscomp> <0003703651932a54_mailit@mail.dynarec.com> <044601c01404$5166f320$0200000a@nickscomp> <000370382e7789f7_mailit@mail.dynarec.com> <002501c01425$a6cef3a0$0100a8c0@lion> <0003703a90954a94_mailit@mail.dynarec.com> <050401c0142b$66ac6fe0$0200000a@nickscomp> <0003703b10ccc0f4_mailit@mail.dynarec.com> <051201c0142f$264a5d00$0200000a@nickscomp> Date: Sat, 02 Sep 2000 15:51:20 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It means you are "unsure" about the way you look and act in specific. >Normally you would say "overly self-concious" but its such a well known term >people leave out the "overly" part. Maybe it's just difficult for Germans because "(un)concious" means "bewußt(los)" so the obvious translation for "selbstbewußt" seems to be "self -concious", but that's the exact opposit and the correct translation is "self -confident". >Nick -- M.I.K.e ... the MYSTERIANS are in here with my CORDUROY SOAP DISH!! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 08:31:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA32389 for dynarec-outgoing; Sat, 2 Sep 2000 08:29:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: A Real Question From: "M.I.K.e" Message-ID: <0003704edee72c6c_mailit@mail.dynarec.com> References: Date: Sat, 02 Sep 2000 17:36:19 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >This list is awfully fluffy... Sorry... >but I do have a question to pose. Go on... >I am building a dynamic translation engine (known as JRI). Just a catchy TLA or does it have a real meaning? >On 64 bit target machines, >management of a 32 bit address space >is easy. The virtual space is built from mmap()ed pieces. I'm not that into POSIX so I might be wrong, but isn't using mmap() a bit slow? >For simple 8 bit and 16 bit processors, the same approach >works well. For 8-bit processors, which seldom have more than 64K to address and normally don't have a MMU, I'd stick with a flat memory model. For 16-bit processors it depends on the architecture, for the 8086 with 1MB address space the flat model (no I don't mean Kate Moss) should be used, a 68K on the other hand might be a bit problematic. >Where the problem comes in is in trying to produce a 32 bit >address space running on a host 32 bit processor. I am >attempting to host a native OS that manages page tables and >its own virtual memory environment. I that case the best idea is to emulate the processors MMU. As Jules pointed out Virtual PC uses some fancy method to simulate the Pentium MMU using the MMU of the PowerPC, but the only available text on that doesn't have an useful details: http://www.byte.com/art/9711/sec4/art4.htm Embra has much better information about that topic, but it seems that they have the same bottleneck you are trying to remove: http://www-flash.stanford.edu/Embra/ >My solution (so far) is to define an operation I have termed >"munging". The target 32 bit virtual address space is divided >to segments of 1 or 2 megabytes each, and the base of each >of these segments is put into a table. The mmap() region >pulls together the (possibly) separated sections into a >workable region (say, 64MB in size). Sounds like like out paged TransMap idea, although that is used to map the translated code and not memory references. >The target processor >instructions that refer to memory are then translated into >a sequence that takes the target virtual address, shifts it >down to isolate the segment number, looks up the segment number >and then combines the low order address bits back in to >produce the host address. Hmm, if you'd work like Embra, emulate the MMU and at the same time handle what they call the "MMU relocation array" you could do a page lookup for a virtual page of the hosted system and get directly the physical page of the host system. >The host mmap() is used to translate >that address into the actual physical memory. I then mark >code pages as non-writable and catch any writes to code space >to invalidate translations, or to catch i/o page writes and >reads. With the Embra method mmap() isn't needed and that system call should be much slower than the code you list below. >The problem -- this approach adds a LOT of overhead to memory >operations: > load reg,memaddr >translates into Now I remember why I wanted to include that problem in my DRFAQ... > page <- (memaddr >> page_shift) & page_mask > -- note that the 'and' may not be necessary When your addresses are correct and you're using a logical shift then the page_mask shouldn't be necessary. I'd recommend that this process of gaining the page number should be as close to the emulated MMU as possible. BTW, are you an ADA programmer because you use "--" for the comment? > offset <- memaddr & offset_mask > addr <- segment_table[page] > if (addr == NIL) not_mapped_fault > addr <- addr | offset I think there is nothing left to optimise here, apart from the fact that this kind of handling works best when written in assembly. > reg <- mem[addr] In your case the operation includes a call of mmap(), but if you do a direct lookup of the physical address it's a simple memory access. >This is a five to one expansion on primitive code. Note that >sequences such as 'increment memaddr' may be optimized, if >the memaddr doesn't cross a segment boundary: > old_page <- memaddr & page_mask > ++memaddr > if ((memaddr & page_mask) != old_page) > do re-munging of address Nice trick! >The OTHER problem with this approach is that absolute fidelity >cannot be guaranteed with buggy target software. For example, >writing off the end of a virtual page may write into another >page, and not into a "bit bucket", and it may have generated >a "page not present" fault on the target, which now won't happen. Hmm, it might help to know what processors are involved because most RISC processors (I think the PowerPC is the only exception) only permit aligned memory access anyway. >Fred Weigel -- M.I.K.e "I do not feel obliged to believe that the same God who has endowed us with sense, reason, and intellect has intended us to forego their use." -- Galileo Galilei --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 11:43:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA32544 for dynarec-outgoing; Sat, 2 Sep 2000 11:43:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000902114412.0081ab50@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 02 Sep 2000 11:44:12 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <008a01c01463$54681900$61c3523e@hal9000> References: <3.0.5.32.20000831190018.0080b380@powernet.net> <3.0.5.32.20000901143854.00819d10@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think no generalization is good. In any case I don't live in USA so >I don't know about it. And if you think Latin American are a problem >you should have to learn about some of the people who emigrate >to Spain or Europe. The Islam is a very closed religion, a religion >a lot of more out dated and primitive than the normal Cristianism >there is now in Europe or USA. In any case it had good points, in >the middle age ... Yep, good points. I don't even want to start about Islam though ;) And I know a bit about the problems you have with immigrants. I lived in Denmark for 7 months and have been to Poland and other countries a lot... I've seen some of the problems/ >It's a pity that know has become very outdated. >Do you know that "Cristian" Spanish fight seven centuries against >"Islam" Spanish to throw them away? When the rest of Europe wasn't >more than some small kingdoms of barbarian ;) here it were a very >high level of culture and it was Islamic culture. That's where the "Song of Roland" comes in. It tells the tale of 8th century Charlemagne coming in to kick the Muslims asses in Spain. Hehe. Of course, they didn't do much. And the whole story is pretty much fictional based only on one expedition and battle in Spain. I thought the battle scene was cool. The story supposedly has a lot of depth, but I got bored reading the non-combat parts. The pennance the bishop gave the soldiers was "deal good blows" or something, and they went out and cut a bunch of the enemy in half from the head to the groin ;) >> If the situation gets unbearably bad, I'll just emmigrate or something ;) >> >He! You could come to Spain. ;)) Maybe... you guys have nice beaches and weather in the south right? I wouldn't mind living near a beach or something ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 12:07:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA32576 for dynarec-outgoing; Sat, 2 Sep 2000 12:07:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 2 Sep 2000 12:26:23 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <3.0.5.32.20000831190018.0080b380@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >language - preferrably Spanish since were have so many Mexicans here. > Bah, they should learn English. That's why I refuse to learn Spanish. I find it extremely arrogant of people who think that the US should accomodate everyone and teach in Spanish (as an example) for those that speak it. What a bunch of crap! They act like the school system is the bad guy for not doing so! Where to these arrogant pricks get off? If we went to *ANY* non English speaking country in the world and said "You should teach classes in English." we'd be laughed at! -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 12:14:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA32589 for dynarec-outgoing; Sat, 2 Sep 2000 12:13:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 2 Sep 2000 12:32:50 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <040401c013cb$e2b6e620$0200000a@nickscomp> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > A historic is correct. One wouldn't say an hickey. "An" is used when the > > first sound of the following word is a vowel. > Are you positive? I'm pretty sure you only use "an" if the next word starts > with an a. Dead positive: An egg An uncle An idiot An otter -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 12:15:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA32603 for dynarec-outgoing; Sat, 2 Sep 2000 12:15:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 2 Sep 2000 12:34:07 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <0003703651932a54_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >But the useage of a/an is very clear-cut as opposed to say der/die/das. If > >the next word starts with an a its an (now isn't that cute?) otherwise its > As the others pointed out "an" is triggered by the following word starting > with a vowel, If it's the first PRONOUNCED word is a vowel. For example "an honorarium". The H is silent. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 12:16:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA32612 for dynarec-outgoing; Sat, 2 Sep 2000 12:16:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 2 Sep 2000 12:35:25 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <007601c01410$b0b29620$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > A historic is correct. One wouldn't say an hickey. "An" is used when the > > first sound of the following word is a vowel. > "An hickey" is, unfortunately, quite correct. But I agree that it doesn't > sound correctly. Not in US English it isn't! And since we're on the topic of grammar and worse use "it doesn't sound correctly" should be "it doesn't sound correct." ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 12:17:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA32621 for dynarec-outgoing; Sat, 2 Sep 2000 12:17:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 2 Sep 2000 12:36:36 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <050401c0142b$66ac6fe0$0200000a@nickscomp> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > "Self-concious" doesn't make much sense, when you know the meaning of > "concious" you think that the other word means something like "self- > confident". > I think it makes perfect sense. You are "concious" of your "self", ie the > way you look. "conscious" Doesn't only mean "awake" but does mean "aware of". Believe me, there are a lot of people who are not aware of themselves. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 12:35:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA32647 for dynarec-outgoing; Sat, 2 Sep 2000 12:35:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 2 Sep 2000 12:54:19 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <3.0.5.32.20000901144650.0081bcc0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> Bureaucracy sucks. 99.9% of the time it isn't necessary. > >Yep. This united Europe thing would sure make things easier for me. :) > United Europe is probably a good idea. I think they should still try and > preserve the individuality of all the nations while at the same time being > united. You can't unite and preserve individuality. Anytime someone starts displaying how they are different from other people, that's when unity breaks down. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 12:44:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA32662 for dynarec-outgoing; Sat, 2 Sep 2000 12:44:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001501c01517$0fb49d60$2bc0523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000831190018.0080b380@powernet.net> <3.0.5.32.20000901143854.00819d10@powernet.net> <3.0.5.32.20000902114412.0081ab50@powernet.net> Subject: Re: DYNAREC: Flags and stuff Date: Sat, 2 Sep 2000 21:50:33 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >It's a pity that know has become very outdated. > >Do you know that "Cristian" Spanish fight seven centuries against > >"Islam" Spanish to throw them away? When the rest of Europe wasn't > >more than some small kingdoms of barbarian ;) here it were a very > >high level of culture and it was Islamic culture. > > That's where the "Song of Roland" comes in. It tells the tale of 8th > century Charlemagne coming in to kick the Muslims asses in Spain. Hehe. Of > course, they didn't do much. And the whole story is pretty much fictional > based only on one expedition and battle in Spain. > I think this must be the action that stopped the Islamic invasion of Europe (the first, the Turkish tried it again later coming from the other side ;). I think the Islam forces, coming from their holy war that Mahoma started and conquered a very big portion of the world (well the world they knew ;), were stopped at Lyon (or nearly) and thrown away to the other side of the big mountains there are in the frontier with France (we call them Pirineos but I'm not sure about the English name ...). The region of Spain I live started as a small frontier land created and protected by the french to defend the frontier against Islam attacks, later it became a separate kingdom and still a bit later joined with the other big kingdom of that would be Spain (very peacefully join, don't you think bad;) and they became what was known as Spain. At the very same time someone stepped in a big unknown continent called America and things began to happen too quickly. ;) > I thought the battle scene was cool. The story supposedly has a lot of > depth, but I got bored reading the non-combat parts. The pennance the > bishop gave the soldiers was "deal good blows" or something, and they went > out and cut a bunch of the enemy in half from the head to the groin ;) > I haven't read it and althought I haven't studied about literacy I'm sure we have our own battles and legends. Have you seen a movie from Charlton Heston called "The Cid" or something like this? > >> If the situation gets unbearably bad, I'll just emmigrate or something ;) > >> > >He! You could come to Spain. ;)) > > Maybe... you guys have nice beaches and weather in the south right? I > wouldn't mind living near a beach or something ;) > Yeah. In the south but if you don't like temperatures above 40 (Celsius), in the shadow of course, you better go to another place. ;) Here in the northeast we have some good beaches also and it is a bit less hot place. Mike do you know about the German island of Mallorca? ;) It is beginning to be more German formely living there than Spanish. And it is beginning to be talked more german than Spanish (or Catalonian which is the native language). These don't have to problem of the Spanish emigrate people in US, they don't need to pray for the using of their native tongue, they have to money to use it freely. > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 12:49:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA32675 for dynarec-outgoing; Sat, 2 Sep 2000 12:49:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001b01c01517$d4fdae40$2bc0523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: Flags and stuff Date: Sat, 2 Sep 2000 21:56:05 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > United Europe is probably a good idea. I think they should still try and > > preserve the individuality of all the nations while at the same time being > > united. > > You can't unite and preserve individuality. Anytime someone starts > displaying how they are different from other people, that's when unity > breaks down. > And you can find a very good example of this in Spain. The nationalism (he! it could be called better regionalism because there are beginning to arise unknown nations here) is getting very strong lately here. I think the French govern can be starting a great problem now letting to do to the nationalists ... I hope they don't make any mistakes because I can see here what could happen if you let the beast grow too much. Well, I'm being a bit negative, it could be worst but the last months there have been too much kills here in Spain. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 12:54:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA32689 for dynarec-outgoing; Sat, 2 Sep 2000 12:54:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002b01c01518$83beeca0$2bc0523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: Flags and stuff Date: Sat, 2 Sep 2000 22:00:58 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Where to these arrogant pricks get off? If we went > to *ANY* non English speaking country in the world and said "You should > teach classes in English." we'd be laughed at! > If the US go to any country (including some or even many european countries) and say "start to teach in English" I'm sure many would start to teach in English inmediatly. BTW some do it actually!! We don't call US "The Empire" without reasons ... :p > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 13:29:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA32726 for dynarec-outgoing; Sat, 2 Sep 2000 13:29:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000902133021.0081aea0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 02 Sep 2000 13:30:21 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: References: <3.0.5.32.20000831190018.0080b380@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 12:26 PM 9/2/2000 +0000, you wrote: >> >language - preferrably Spanish since were have so many Mexicans here. >> Bah, they should learn English. That's why I refuse to learn Spanish. > >I find it extremely arrogant of people who think that the US should >accomodate everyone and teach in Spanish (as an example) for those that >speak it. What a bunch of crap! They act like the school system is the bad >guy for not doing so! Where to these arrogant pricks get off? If we went >to *ANY* non English speaking country in the world and said "You should >teach classes in English." we'd be laughed at! Yep, I agree. The situation is getting pretty bad, I've even seen Hispanics in supermarkets go up to the cashiers and start speaking Spanish as if they expected everyone to know it. The cashiers scramble to find someone who speaks Spanish because apparently it's rude to tell them to speak English in a country whose official language is supposed to be English anyway... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 13:30:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA32740 for dynarec-outgoing; Sat, 2 Sep 2000 13:30:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000902133200.0081d100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 02 Sep 2000 13:32:00 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: References: <3.0.5.32.20000901144650.0081bcc0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 12:54 PM 9/2/2000 +0000, you wrote: >> >> Bureaucracy sucks. 99.9% of the time it isn't necessary. >> >Yep. This united Europe thing would sure make things easier for me. :) >> United Europe is probably a good idea. I think they should still try and >> preserve the individuality of all the nations while at the same time being >> united. > >You can't unite and preserve individuality. Anytime someone starts >displaying how they are different from other people, that's when unity >breaks down. Political unity, open borders, cultural diversity. European politics are pretty much bland and faceless anyway, it wouldn't hurt to unite. Europeans won't mix into one culture any time soon, it will work. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 13:41:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA32755 for dynarec-outgoing; Sat, 2 Sep 2000 13:41:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000902134231.0081eb40@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 02 Sep 2000 13:42:31 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <001501c01517$0fb49d60$2bc0523e@hal9000> References: <3.0.5.32.20000831190018.0080b380@powernet.net> <3.0.5.32.20000901143854.00819d10@powernet.net> <3.0.5.32.20000902114412.0081ab50@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> That's where the "Song of Roland" comes in. It tells the tale of 8th >> century Charlemagne coming in to kick the Muslims asses in Spain. Hehe. Of >> course, they didn't do much. And the whole story is pretty much fictional >> based only on one expedition and battle in Spain. >> >I think this must be the action that stopped the Islamic invasion of >Europe (the first, the Turkish tried it again later coming from the other >side ;). I think the Islam forces, coming from their holy war that >Mahoma started and conquered a very big portion of the world (well >the world they knew ;), were stopped at Lyon (or nearly) and thrown >away to the other side of the big mountains there are in the frontier >with France (we call them Pirineos but I'm not sure about the English >name ...). Pyrenees or something, at least in French. I don't think the Song of Roland was this incident, though. It may have been just a minor battle that had no significance at all. The story was created in the 11th century, but supposedly took place in the 8th century, so much of the historical accuracy was lost and it is probably mostly a legend. >The region of Spain I live started as a small frontier land >created and protected by the french to defend the frontier against >Islam attacks, later it became a separate kingdom and still a bit later >joined with the other big kingdom of that would be Spain (very >peacefully join, don't you think bad;) and they became what was known >as Spain. At the very same time someone stepped in a big unknown >continent called America and things began to happen too quickly. ;) Kingdoms of Castille and Aragon? I don't know much about Spanish history. >> I thought the battle scene was cool. The story supposedly has a lot of >> depth, but I got bored reading the non-combat parts. The pennance the >> bishop gave the soldiers was "deal good blows" or something, and they went >> out and cut a bunch of the enemy in half from the head to the groin ;) >> >I haven't read it and althought I haven't studied about literacy I'm sure >we have our own battles and legends. Have you seen a movie from >Charlton Heston called "The Cid" or something like this? I've never seen that movie. Charlton Heston is a big idiot now, with his stupid gun advocacy. ;) Every country has its battle legends, but many are unknown. There are tons of tales like Robin Hood or King Arthur in most countries, and they are every bit as exciting, but will probably be forgotten in the future. I think most of the legends of the middle ages weren't ever written down, so we'll never know about all of them. >> Maybe... you guys have nice beaches and weather in the south right? I >> wouldn't mind living near a beach or something ;) >> >Yeah. In the south but if you don't like temperatures above 40 (Celsius), >in the shadow of course, you better go to another place. ;) I can bear heat, but not humidity. Reno gets extremely hot in the summer, but its a dry desert climate which makes things quite pleasant. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 13:43:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA32765 for dynarec-outgoing; Sat, 2 Sep 2000 13:43:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000902134412.008137b0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 02 Sep 2000 13:44:12 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <001b01c01517$d4fdae40$2bc0523e@hal9000> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >And you can find a very good example of this in Spain. The >nationalism (he! it could be called better regionalism because >there are beginning to arise unknown nations here) is getting >very strong lately here. What about the Basque people? I hear there's always been a strong rivalry between Spaniards and the Basque. Reno has a lot of Basque people. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 14:26:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA32810 for dynarec-outgoing; Sat, 2 Sep 2000 14:25:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003b01c01525$41d623a0$2bc0523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000902134412.008137b0@powernet.net> Subject: Re: DYNAREC: Flags and stuff Date: Sat, 2 Sep 2000 23:32:11 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >And you can find a very good example of this in Spain. The > >nationalism (he! it could be called better regionalism because > >there are beginning to arise unknown nations here) is getting > >very strong lately here. > > What about the Basque people? I hear there's always been a strong rivalry > between Spaniards and the Basque. Reno has a lot of Basque people. > He! They are the worst. ;) There are three regions that have their or languages and has a high level (very high, I think is becoming near as your federate states, some discuss about change Spain to a federated stated) of autonomy. One of them is the region of the Basque (Pais Vasco, Euskadi ...), another is where I live Catalonia (the half of the old kingdom of Aragon and Catalonia, something really couriose, lately there has been a kind of politic of "reinventing" the story by the nationalist and for example it's taught here that Catalonia was the leading part of the region what in fact it was Aragon, fucking nationalist ;) and yet another called Galicia that has important Celtic roots. Actually the worst problem come from Euskadi, the home of the Basque, and a small group of bitchy assassin nazis called ETA who are trying to kill everybody who don't accept their ideas about indepency or threw them away of their so called country (they also want to "conquer" some other regions from France and Spain because they say they are their :p). In the last months there have been very viollence and a greater number of kills. And the worst is that the "moderate" nationalist, who are governing there, aren't know so moderate. It is fucking fun. The moderate nationalist need the killers because Euskadi is a small region and it hasn't have enough votes for getting a great influce in Spanish politic (which don't happens with Catalonia which is larger and very populated). So the police, which they control, for example avoid any attempt of jail the young "heroes" that are trying to "liberate" their country, of course burning buses, cars and attacking people when they are in a 20 against 1 proportion (typical nazi actions). Before last year they were pursuing them heavily but it was a small "peace" (used by the terrorist to reorganize) and they saw the time to try get more power and indepency. Their leader is becoming a bit old and ... very mad, but this is just the opinion of the half of the Spain population :p. Seriously, if there weren't terrorist there could be a vote asking about indepency but the nationalist (neither terrorist nor moderated) don't want this because they know they will loose miserably. The normal Basque people are tired of those kills and about all politics: nationalist or whatever and most of them doesn't want to be "liberated" of anything, they are good people and work live in a lot of another places of Spain. Just there a very few people who follows fanatically the killers. I'm getting sick to talk about that, sorry. :( > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 16:20:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA32924 for dynarec-outgoing; Sat, 2 Sep 2000 16:20:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008801c0153d$0dbc3380$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Flags and stuff Date: Sun, 3 Sep 2000 00:12:30 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I find it extremely arrogant of people who think that the US should > accomodate everyone and teach in Spanish (as an example) for those that > speak it. What a bunch of crap! They act like the school system is the bad > guy for not doing so! Where to these arrogant pricks get off? If we went > to *ANY* non English speaking country in the world and said "You should > teach classes in English." we'd be laughed at! This is true - and I agree entirely with your poiny of view. Then again, if the US wants to be the "land of the free" and a country of equal opportunities then... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 16:20:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA32925 for dynarec-outgoing; Sat, 2 Sep 2000 16:20:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008701c0153d$0bb3e060$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: DYNAREC: Fluffy list Date: Sun, 3 Sep 2000 00:10:28 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, "Fluffy list" - I like that term. :) The reason for the fluffy list is that the 4 or 5 people at the start of the list have already discussed most things and all have a good idea of the "correct" way to go about writing a dynarec core. So we'll be writing lots of cores it seems. Soon. Maybe. :) Also, if you ever go public with your techniques, please don't use the word "munging". Just look up the word "mung" in a medical dictionary to find out why! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 16:20:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA32926 for dynarec-outgoing; Sat, 2 Sep 2000 16:20:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008a01c0153d$0f99cd20$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Flags and stuff Date: Sun, 3 Sep 2000 00:18:57 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > United Europe is probably a good idea. I think they should still try and > > preserve the individuality of all the nations while at the same time being > > united. > > You can't unite and preserve individuality. Anytime someone starts > displaying how they are different from other people, that's when unity > breaks down. I disagree, look at the UK - England, Scotland, Wales and Northern Ireland - all with their own distinct individualities. Or look at the states in the US - this is kind of how an united Europe would be. Except we wouldn't have Utah. But we would have France. Which is worse (Gwenole will really hate me!)? ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 16:20:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA32927 for dynarec-outgoing; Sat, 2 Sep 2000 16:20:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008b01c0153d$10401f40$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000831190018.0080b380@powernet.net> <3.0.5.32.20000901143854.00819d10@powernet.net> <3.0.5.32.20000902114412.0081ab50@powernet.net> <001501c01517$0fb49d60$2bc0523e@hal9000> Subject: Re: DYNAREC: Flags and stuff Date: Sun, 3 Sep 2000 00:24:51 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I think this must be the action that stopped the Islamic invasion of > Europe (the first, the Turkish tried it again later coming from the other > side ;). I think the Islam forces, coming from their holy war that > Mahoma started and conquered a very big portion of the world (well > the world they knew ;), were stopped at Lyon (or nearly) and thrown > away to the other side of the big mountains there are in the frontier > with France (we call them Pirineos but I'm not sure about the English > name ...). We call them by the French name, the Pyranees. > I haven't read it and althought I haven't studied about literacy I'm sure > we have our own battles and legends. Have you seen a movie from > Charlton Heston called "The Cid" or something like this? I've seen it. It's called "El Cid" - but I'm not sure if you'll understand what that means. ;) > > Maybe... you guys have nice beaches and weather in the south right? I > > wouldn't mind living near a beach or something ;) > > > Yeah. In the south but if you don't like temperatures above 40 (Celsius), > in the shadow of course, you better go to another place. ;) The very bottom of Spain is only under 40 miles (~70km) from the north of Africa, right Victor? If so, that's to be expected! > Here in the northeast we have some good beaches also and it is a bit > less hot place. North East, North East... My Spanish friend, Manuel, is also from the North East of Spain... I don't know exactly where though other than it's right by the coast. The lucky git. ;) > Mike do you know about the German island of Mallorca? ;) Hehe! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 16:20:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA32934 for dynarec-outgoing; Sat, 2 Sep 2000 16:20:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008c01c0153d$1112b180$0100a8c0@lion> From: "Neil Griffiths" To: References: <3.0.5.32.20000901144650.0081bcc0@powernet.net> <3.0.5.32.20000902133200.0081d100@powernet.net> Subject: Re: DYNAREC: Flags and stuff Date: Sun, 3 Sep 2000 01:20:54 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Political unity, open borders, cultural diversity. European politics are > pretty much bland and faceless anyway, it wouldn't hurt to unite. Europeans > won't mix into one culture any time soon, it will work. European politics is very much like US politics. When it changes, not much should be noticed in Britain. Apart from the Euro, cheaper stuff, easier access to Europe and generally nicer conditions. But, of course, all of this is bad for the charachter and so England is totally against this. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 16:20:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA32943 for dynarec-outgoing; Sat, 2 Sep 2000 16:20:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008901c0153d$0ebf99c0$0100a8c0@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Flags and stuff Date: Sun, 3 Sep 2000 00:14:52 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Not in US English it isn't! And since we're on the topic of grammar and > worse use "it doesn't sound correctly" should be "it doesn't sound > correct." ;-) But that'd be spelling and not grammar so nyah! ;-P Anyway, leave me alone! I've only got the one hand at the moment! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 18:19:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA33035 for dynarec-outgoing; Sat, 2 Sep 2000 18:19:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 2 Sep 2000 18:38:30 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <008a01c0153d$0f99cd20$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > You can't unite and preserve individuality. Anytime someone starts > > displaying how they are different from other people, that's when unity > > breaks down. > I disagree, look at the UK - England, Scotland, Wales and Northern Ireland - > all with their own distinct individualities. Sorry to say it, but that's a hell of a lot more similar than the US is to say, Japan. I can see regional unities, like Canada and the US, but Mexico? Nope. Radically different cultures. > Or look at the states in the > US - this is kind of how an united Europe would be. Except we wouldn't have > Utah. Most of us wouldn't have Utah if we had a choice. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 18:20:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA33048 for dynarec-outgoing; Sat, 2 Sep 2000 18:20:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 2 Sep 2000 18:39:27 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <008901c0153d$0ebf99c0$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Not in US English it isn't! And since we're on the topic of grammar and > > worse use "it doesn't sound correctly" should be "it doesn't sound > > correct." ;-) > But that'd be spelling and not grammar so nyah! ;-P No, it's grammar, not spelling. You didn't misspell the word - you used the wrong word! > Anyway, leave me alone! I've only got the one hand at the moment! ;) I still hope you can choke your chicken with the good hand. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 18:22:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA33057 for dynarec-outgoing; Sat, 2 Sep 2000 18:22:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 2 Sep 2000 18:41:14 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Flags and stuff In-Reply-To: <008801c0153d$0dbc3380$0100a8c0@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > guy for not doing so! Where to these arrogant pricks get off? If we went > > to *ANY* non English speaking country in the world and said "You should > > teach classes in English." we'd be laughed at! > This is true - and I agree entirely with your poiny of view. Then again, if > the US wants to be the "land of the free" and a country of equal > opportunities then... ;) Maybe 200 years ago, sure, but damn I'm getting tired of the seeming invasion of other cultures into the country. I think it's high time we start shutting the doors - "We're full! Go away!" We have a shortage of people to do work, so we wind up with everyone, even those who shouldn't be working in our field. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 2 19:07:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA33099 for dynarec-outgoing; Sat, 2 Sep 2000 19:07:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000902190847.00816560@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 02 Sep 2000 19:08:47 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Flags and stuff In-Reply-To: References: <008801c0153d$0dbc3380$0100a8c0@lion> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 06:41 PM 9/2/2000 +0000, you wrote: >> > guy for not doing so! Where to these arrogant pricks get off? If we went >> > to *ANY* non English speaking country in the world and said "You should >> > teach classes in English." we'd be laughed at! >> This is true - and I agree entirely with your poiny of view. Then again, if >> the US wants to be the "land of the free" and a country of equal >> opportunities then... ;) > >Maybe 200 years ago, sure, but damn I'm getting tired of the seeming >invasion of other cultures into the country. I think it's high time we >start shutting the doors - "We're full! Go away!" We have a shortage of >people to do work, so we wind up with everyone, even those who shouldn't >be working in our field. But often times there aren't any qualified Americans to do the job. Which means we need a cultural emphasis on intelligence and better schools or something. Man, I'm glad I'm not a leader in this country, there are SO many problems to sort out :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 3 00:08:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA33318 for dynarec-outgoing; Sun, 3 Sep 2000 00:08:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002101c01576$a69ff940$87c2523e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000831190018.0080b380@powernet.net> <3.0.5.32.20000901143854.00819d10@powernet.net> <3.0.5.32.20000902114412.0081ab50@powernet.net> <001501c01517$0fb49d60$2bc0523e@hal9000> <008b01c0153d$10401f40$0100a8c0@lion> Subject: Re: DYNAREC: Flags and stuff Date: Sun, 3 Sep 2000 09:14:48 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I haven't read it and althought I haven't studied about literacy I'm sure > > we have our own battles and legends. Have you seen a movie from > > Charlton Heston called "The Cid" or something like this? > > I've seen it. It's called "El Cid" - but I'm not sure if you'll understand > what that means. ;) > What do you mean? I think you are the one who don't know the meaning of this Spanish (ehem ... arab) word. ;) And I just don't remember well, something like knight or similar. > > > Maybe... you guys have nice beaches and weather in the south right? I > > > wouldn't mind living near a beach or something ;) > > > > > Yeah. In the south but if you don't like temperatures above 40 (Celsius), > > in the shadow of course, you better go to another place. ;) > > The very bottom of Spain is only under 40 miles (~70km) from the north of > Africa, right Victor? If so, that's to be expected! > Well, the very bottom of Spain is Gibraltar (do you know this anoysing English colony in an European country in the 21st century? I think Spain must do something about that ;) and it is at 15 km of Morocco coast. The inmigratans come in very small boats to Spain from there. > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 3 01:42:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA33400 for dynarec-outgoing; Sun, 3 Sep 2000 01:42:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Delivered-To: fixup-dynarec@dynarec.com@fixme Message-ID: <057101c01583$2e569860$0200000a@nickscomp> From: "Nick" To: References: Subject: Re: DYNAREC: Flags and stuff Date: Sun, 3 Sep 2000 01:44:32 -0700 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Dead positive: > > An egg > An uncle > An idiot > An otter Why doesn't anyone here read the next hundred or two messages before responding to a REALLY REALLY old email? This is getting silly, there are ten replies to one email saying the same thing in ten different repetitive ways. In this case, I allready said I was wrong, it must have been days ago. This is directed at everyone. Nick --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 3 12:38:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA34050 for dynarec-outgoing; Sun, 3 Sep 2000 12:37:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: FX!32 From: "M.I.K.e" Message-ID: <00037066792840eb_mailit@mail.dynarec.com> Date: Sun, 03 Sep 2000 21:45:51 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Did anyone read the new FX!32 doc I found? http://www.digital.com/info/DTJP01/DTJP01HM.HTM Althought it's not a dynarec it's still quite interesting, especially compared to FX!32 whitepaper. -- M.I.K.e Truth will be out this morning. (Which may really mess things up.) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 3 13:04:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA34091 for dynarec-outgoing; Sun, 3 Sep 2000 13:04:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000d01c015e3$1205bfa0$31c1523e@hal9000> From: "Victor Moya del Barrio" To: References: <00037066792840eb_mailit@mail.dynarec.com> Subject: Re: DYNAREC: FX!32 Date: Sun, 3 Sep 2000 22:10:53 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Did anyone read the new FX!32 doc I found? > http://www.digital.com/info/DTJP01/DTJP01HM.HTM > > Althought it's not a dynarec it's still quite interesting, especially > compared to FX!32 whitepaper. > Damn! I thought it was a new one again!! ;) Yes, I read it when you posted the new address. It has a more accurate information about how it works FX!32. It's really interesting. But my awful memory doesn't tell me any special characteristic ... :( It is really a very very good idea for applications to combine an emulator/profiler with a static translator. But I was dissapointed when I saw what the profiler was, just for getting jump addresses (the main problem with static translations), althought perhaps it is logic if you want a very fast emulator. Why do you ask? If I remember I will ask my boss if he knows something about but it won't be until Tuesday. > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 3 13:20:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA34126 for dynarec-outgoing; Sun, 3 Sep 2000 13:20:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001901c015e5$3d95dea0$31c1523e@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Page bank emulation with MZ80 Date: Sun, 3 Sep 2000 22:26:24 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I have a doubt about how it would be better to implement the bank system of the Master System using MZ80. In the Master System the first 48KB of memory are 3 16 KB banks that can map different pages of the ROM (the last one can also page one of two pages of cartridge RAM). I think there are two solutions: to use a memcopy any time there is a page change or to use a pointer for each bank. This last would be really expensive because the only way I find to implement it without modifying MZ80 is to use the memory handler functions which are slow and aren't used for fetching opcodes (I think it can't be assured where the code will be). There would be a third solution of modifying MZ80 to use an array of pointers for read memory and fetch opcodes (it is something I have seen in Juergen Buchmueller's Z80 emulator in C which is used in a Charles MacDonald's Master System emulator) but this will be the last I would try. I think the first solution would be the best if there are only a small amount of bank switches. The second choice would be too expensive unless there were a bank switch very very frequently. And the third would mean still a good amount of bankswitching before being faster. I don't actually now about how many bankswitching does the Master System so I will start with the first choice. Comments? Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 3 14:19:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA34200 for dynarec-outgoing; Sun, 3 Sep 2000 14:19:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Dynarec.com Site From: "M.I.K.e" Message-ID: <00037067d5e16207_mailit@mail.dynarec.com> Date: Sun, 03 Sep 2000 23:23:22 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I couldn't stand the ugly look of dynarec.com on Unix machines, so I eliminated the Verdana font (sorry NG) and let the browser pick the default one. Also stripped most of the redundant HTML, which should make the page a bit faster. The big change is that I added a page about the mailing list with the same design. Tell me what you think... -- M.I.K.e How much does it cost to entice a dope-smoking UNIX system guru to Dayton? -- Brian Boyle, UNIX/WORLD's First Annual Salary Survey --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 3 14:21:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA34218 for dynarec-outgoing; Sun, 3 Sep 2000 14:21:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 3 Sep 2000 14:40:41 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec.com Site In-Reply-To: <00037067d5e16207_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I couldn't stand the ugly look of dynarec.com on Unix machines, so I > eliminated the Verdana font (sorry NG) and let the browser pick the default > one. Also stripped most of the redundant HTML, which should make the page a > bit faster. > The big change is that I added a page about the mailing list with the same > design. > Tell me what you think... You botched the list address. ;-) It's supposed to be dynarec@dynarec.com, not dynarec@synthcom.com. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 3 14:24:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA34228 for dynarec-outgoing; Sun, 3 Sep 2000 14:24:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 3 Sep 2000 14:43:23 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 In-Reply-To: <001901c015e5$3d95dea0$31c1523e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I think there are two solutions: to use a memcopy any > time there is a page change or to use a pointer for each > bank. This last would be really expensive because the > only way I find to implement it without modifying MZ80 is > to use the memory handler functions which are slow and > aren't used for fetching opcodes (I think it can't be assured > where the code will be). Don't dare use memcpy's. They are astoundingly slow! > There would be a third solution of modifying MZ80 to > use an array of pointers for read memory and fetch > opcodes (it is something I have seen in Juergen Buchmueller's > Z80 emulator in C which is used in a Charles MacDonald's > Master System emulator) but this will be the last I would > try. Nope. Too slow. Already did that with the 6502 and 6809 cores. It cut performance *IN HALF*. There's a better solution. * Create a 64K region of every possible bank switch combination * When you want to switch a bank, update mz80Base with a pointer to that 64K region containing the bank you want to switch in. * Trap all reads/writes from/to memory and have it go to a common location Yes, it uses a buttload of memory, but the performance is far better. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 3 14:58:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA34265 for dynarec-outgoing; Sun, 3 Sep 2000 14:58:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com Site From: "M.I.K.e" Message-ID: <000370686c4894f9_mailit@mail.dynarec.com> References: Date: Mon, 04 Sep 2000 00:05:25 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You botched the list address. ;-) It's supposed to be dynarec@dynarec.com, >not dynarec@synthcom.com. Shit, damn copy-and-paste error! Should be fixed now. Any other comments? >-->Neil -- M.I.K.e Basic, n.: A programming language. Related to certain social diseases in that those who have it will not admit it in polite company. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 00:00:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA34661 for dynarec-outgoing; Mon, 4 Sep 2000 00:00:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009040705.JAA23398@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec.com Site In-Reply-To: <000370686c4894f9_mailit@mail.dynarec.com> "from M.I.K.e at Sep 4, 2000 00:05:25 am" To: dynarec@dynarec.com Date: Mon, 4 Sep 2000 09:05:35 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >You botched the list address. ;-) It's supposed to be dynarec@dynarec.com, > >not dynarec@synthcom.com. > > Shit, damn copy-and-paste error! Should be fixed now. > Any other comments? > Yes, someone could do something with broken links. ;) Perhaps only to close those links, I think they give a bad image. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 02:56:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA34954 for dynarec-outgoing; Mon, 4 Sep 2000 02:54:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000f01c0165e$d279abe0$0100a8c0@lion> From: "Neil Griffiths" To: References: <00037067d5e16207_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec.com Site Date: Mon, 4 Sep 2000 11:55:42 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I couldn't stand the ugly look of dynarec.com on Unix machines, so I > eliminated the Verdana font (sorry NG) and let the browser pick the default > one. Also stripped most of the redundant HTML, which should make the page a > bit faster. I'd have preferred it if you asked me first, but too late now. The amusing thing here is that the Verdana font was not available for UNIX machines. Why is that amusing? Well, they *already* would have chosen the default font. So you shouldn't see any changes. :) I already know what the site looks like on UNIX machines anyway. But there's not a lot we can do about it! > The big change is that I added a page about the mailing list with the same > design. Wahey! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 03:21:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA34990 for dynarec-outgoing; Mon, 4 Sep 2000 03:20:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com Site From: "M.I.K.e" Message-ID: <00037072c3b8b6dd_mailit@mail.dynarec.com> References: <00037067d5e16207_mailit@mail.dynarec.com> <000f01c0165e$d279abe0$0100a8c0@lion> Date: Mon, 04 Sep 2000 12:25:42 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'd have preferred it if you asked me first, but too late now. Sorry, it was one of those spontaneous decisions. I still have the original page if you prefer that. >The amusing >thing here is that the Verdana font was not available for UNIX machines. Why >is that amusing? Well, they *already* would have chosen the default font. So >you shouldn't see any changes. :) Do we want to bet? My DRFAQ has no font settings and displays ok, but for the Verdana font that damn Unix Netscape selected Courier at 8 point or so. >I already know what the site looks like on UNIX machines anyway. But there's >not a lot we can do about it! I guess you don't get to Eurocopter before you leave Germany, but maybe you have access to a Unix machine in England. >> The big change is that I added a page about the mailing list with the same >> design. >Wahey! :) Is that a positive reaction? >Neil. -- M.I.K.e panic: can't find / --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 05:56:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA35156 for dynarec-outgoing; Mon, 4 Sep 2000 05:55:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com Site From: "M.I.K.e" Message-ID: <00037074f5b5c81a_mailit@mail.dynarec.com> References: <200009040705.JAA23398@pons.ac.upc.es> Date: Mon, 04 Sep 2000 15:02:50 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yes, someone could do something with broken links. ;) >Perhaps only to close those links, I think they give >a bad image. ;) Ok, I fixed all the links in the menu, but it's surely not my job to fix the homepages... Any more comments? >Victor -- M.I.K.e Some performers on television appear to be horrible people, but when you finally get to know them in person, they turn out to be even worse. -- Avery --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 08:36:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA35307 for dynarec-outgoing; Mon, 4 Sep 2000 08:34:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Dynarec.com site changes From: "M.I.K.e" Message-ID: <000370773268fa18_mailit@mail.dynarec.com> Date: Mon, 04 Sep 2000 17:42:59 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Ok, now all the links should link to "something" (I disabled the link to Andy's homepage because he doesn't even have a home directory). The specs page is new, but I still need the machine specs from Neil... Any ideas what the sections should contain? News - I guess that's more or less clear. About us - is that about the site or about the makers? Maybe some "Wanted" style? Documentation - I'll provide links (and probably also local copies) for the dynarec docs there when I have time. Dynarecs - a list of open source dynarecs? Or should it contain a list of all claiming dynarecs, although it's often difficult to decide if these are really dynarecs or just threaded emulators. E-mail - What is this? The important email-addresses for dynarec.com: sysop, webmaster, ...? Or general dynarec related emails? FAQ - hmm... Links - isn't that covered in Dynarecs and Documentation already? Mailing List - should be ok that way... Message Boards - well, I don't know much about message boards (apart from using some) so I will leave this to NG. People - is this similar to about us or is it a list of important people in the dynarec scene? Submit info - sounds like CGI... Something for NG? Ok, I'll do the sections Dynarecs and Documentation since I should have the best information already. I might also do the E-mail section if this is just the important mails for dynarec.com and also maintain the news, but I cannot do the other things alone... -- M.I.K.e Computers will not be perfected until they can compute how much more than the estimate the job will cost. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 10:14:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA35407 for dynarec-outgoing; Mon, 4 Sep 2000 10:12:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com site changes From: "M.I.K.e" Message-ID: <000370788c8ff8af_mailit@mail.dynarec.com> References: <000370773268fa18_mailit@mail.dynarec.com> Date: Mon, 04 Sep 2000 19:19:46 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm really not a great fan of frames but seeing that the table based approach is quite tedious for each page and that it might be slow with larger pages, not to mention that the menu on the left doesn't behave as I want it to, it might be a good idea to change the whole concept from tables-only to a frame and table combination. What do you think? Some feedback would be really nice! -- M.I.K.e Ten years of rejection slips is nature's way of telling you to stop writing. -- R. Geis --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 10:31:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA35434 for dynarec-outgoing; Mon, 4 Sep 2000 10:29:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001401c0169e$5f09de60$0100a8c0@lion> From: "Neil Griffiths" To: References: <000370773268fa18_mailit@mail.dynarec.com> <000370788c8ff8af_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec.com site changes Date: Mon, 4 Sep 2000 19:28:34 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I'm really not a great fan of frames but seeing that the table based approach > is quite tedious for each page and that it might be slow with larger pages, > not to mention that the menu on the left doesn't behave as I want it to, What do you mean? > it > might be a good idea to change the whole concept from tables-only to a frame > and table combination. One or the other, either frames OR tables. Not a mixture of both - at least not for the whole of a page. > What do you think? > Some feedback would be really nice! The whole point of what's there now is to have something to work with. I can convert it to frames right now and it'll look exactly the same. I'll do the layout changes and u/l them soon. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 11:03:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA35483 for dynarec-outgoing; Mon, 4 Sep 2000 11:03:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Dynarec.com with Frames From: "M.I.K.e" Message-ID: <0003707946e28ab6_mailit@mail.dynarec.com> Date: Mon, 04 Sep 2000 20:11:52 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I uploaded a different version of dynarec.com with frames under www.dynarec.com/frames.html -- M.I.K.e An Englishman never enjoys himself, except for a noble purpose. -- A. P. Herbert --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 11:13:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA35501 for dynarec-outgoing; Mon, 4 Sep 2000 11:13:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com site changes From: "M.I.K.e" Message-ID: <000370796b81be67_mailit@mail.dynarec.com> References: <000370773268fa18_mailit@mail.dynarec.com> <000370788c8ff8af_mailit@mail.dynarec.com> <001401c0169e$5f09de60$0100a8c0@lion> Date: Mon, 04 Sep 2000 20:22:07 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What do you mean? I wanted the menu to stay at the top left corner of the page an not to be moved to the middle as soon as the main part of the page becomes longer. >One or the other, either frames OR tables. Not a mixture of both - at least >not for the whole of a page. Sorry, a was a bit sloppy. I meant frames for the global structure and tables inside the frames. >The whole point of what's there now is to have something to work with. I can >convert it to frames right now and it'll look exactly the same. I'll do the >layout changes and u/l them soon. Already done for a small part. I just want to know which looks better... >Neil. -- M.I.K.e Dawn, n.: The time when men of reason go to bed. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 12:24:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA35576 for dynarec-outgoing; Mon, 4 Sep 2000 12:24:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000f01c016ae$7900f3c0$0100a8c0@lion> From: "Neil Griffiths" To: References: <000370773268fa18_mailit@mail.dynarec.com> <000370788c8ff8af_mailit@mail.dynarec.com> <001401c0169e$5f09de60$0100a8c0@lion> <000370796b81be67_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec.com site changes Date: Mon, 4 Sep 2000 21:26:49 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I wanted the menu to stay at the top left corner of the page an not to be > moved to the middle as soon as the main part of the page becomes longer. So did I. I was planning to move to frames anyway to make CGI better. :) > Sorry, a was a bit sloppy. I meant frames for the global structure and tables > inside the frames. Okay then, cool. > >The whole point of what's there now is to have something to work with. I can > >convert it to frames right now and it'll look exactly the same. I'll do the > >layout changes and u/l them soon. > > Already done for a small part. I just want to know which looks better... This one doesn't display at all, so the previous. ;) Looks like you've broken the HTML. Every frame needs a name - but you've only named one frame. Bad boy! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 12:30:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA35594 for dynarec-outgoing; Mon, 4 Sep 2000 12:30:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003701c016a7$74b76760$bcc5523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: Page bank emulation with MZ80 Date: Mon, 4 Sep 2000 21:36:41 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Don't dare use memcpy's. They are astoundingly slow! > They are 16 KB each page ... > > There would be a third solution of modifying MZ80 to > > use an array of pointers for read memory and fetch > > opcodes (it is something I have seen in Juergen Buchmueller's > > Z80 emulator in C which is used in a Charles MacDonald's > > Master System emulator) but this will be the last I would > > try. > > Nope. Too slow. Already did that with the 6502 and 6809 cores. It cut > performance *IN HALF*. There's a better solution. > > * Create a 64K region of every possible bank switch combination > * When you want to switch a bank, update mz80Base with a pointer to that > 64K region containing the bank you want to switch in. > * Trap all reads/writes from/to memory and have it go to a common location > > Yes, it uses a buttload of memory, but the performance is far better. > I think it uses more than a lot of memory ... Let see. There are three 16 KB banks (0x0000-0x3fff, 0x4000-0x7fff, 0x8000-0xbfff) the memory displayed on each bank is controlled by three bytes at the end of the space address, one for each bank. The memory that is in bank i is 0x4000*X, where X is the content of the byte that controls that bank. This means that if all 8-bit are used this system could map 4 MB ROMs. Actually there aren't so big ROMs in the Master System. The larger ROMs are 512 KB, that is 32 different 16 KB pages, which mean a really big bunch of different combinations!! I can't remember now my lessons about combination but I was wondering it could be even n! and 32! is a really really big number. And then you should also have to add that there are two other pages for RAM. :( I think your solution is impossible. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 12:34:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA35605 for dynarec-outgoing; Mon, 4 Sep 2000 12:34:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com site changes From: "M.I.K.e" Message-ID: <0003707a9008da7d_mailit@mail.dynarec.com> References: <000370773268fa18_mailit@mail.dynarec.com> <000370788c8ff8af_mailit@mail.dynarec.com> <001401c0169e$5f09de60$0100a8c0@lion> <000370796b81be67_mailit@mail.dynarec.com> <000f01c016ae$7900f3c0$0100a8c0@lion> Date: Mon, 04 Sep 2000 21:43:54 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >So did I. I was planning to move to frames anyway to make CGI better. :) Hmm, ok then let's move to frames. Should make the pages a bit easier. But why are frames better for CGI? >This one doesn't display at all, so the previous. ;) What?!? >Looks like you've broken the HTML. Every frame needs a name - but you've >only named one frame. Bad boy! ;) Strange, never heard of that rule, certainly not a standard. And this page displays perfectly well with NetPositive *and* Opera (both are quite picky): http://www.dynarec.com/frames.html > >Neil. > >--------------------------------------------------------------------------- >** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the >** message body to dynarec-request@dynarec.com. Please direct other >** questions, comments, or problems to neilb@dynarec.com. -- M.I.K.e Save energy: be apathetic. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 12:45:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA35627 for dynarec-outgoing; Mon, 4 Sep 2000 12:44:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701c016a9$6e179fe0$74ca523e@hal9000> From: "Victor Moya del Barrio" To: References: <000370773268fa18_mailit@mail.dynarec.com> <000370788c8ff8af_mailit@mail.dynarec.com> <001401c0169e$5f09de60$0100a8c0@lion> <000370796b81be67_mailit@mail.dynarec.com> <000f01c016ae$7900f3c0$0100a8c0@lion> <0003707a9008da7d_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec.com site changes Date: Mon, 4 Sep 2000 21:50:49 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Looks like you've broken the HTML. Every frame needs a name - but you've > >only named one frame. Bad boy! ;) > > Strange, never heard of that rule, certainly not a standard. > And this page displays perfectly well with NetPositive *and* Opera (both are > quite picky): > http://www.dynarec.com/frames.html > I don't see nothing with Explorer. And there are some ugly glitches in with the borders of the tables ... May be is just Microsoft. ;) NB will be really happy with the Specs page. :) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 12:52:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA35652 for dynarec-outgoing; Mon, 4 Sep 2000 12:51:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com site changes From: "M.I.K.e" Message-ID: <0003707acbc30b5e_mailit@mail.dynarec.com> References: <000370773268fa18_mailit@mail.dynarec.com> <000370788c8ff8af_mailit@mail.dynarec.com> <001401c0169e$5f09de60$0100a8c0@lion> <000370796b81be67_mailit@mail.dynarec.com> <000f01c016ae$7900f3c0$0100a8c0@lion> <0003707a9008da7d_mailit@mail.dynarec.com> <000701c016a9$6e179fe0$74ca523e@hal9000> Date: Mon, 04 Sep 2000 22:00:37 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> http://www.dynarec.com/frames.html >I don't see nothing with Explorer. And there are some ugly glitches >in with the borders of the tables ... May be is just Microsoft. ;) I just added names for the other two frames. Does it work now? >NB will be really happy with the Specs page. :) I hope so. But I still need the specs of the machine... >Victor -- M.I.K.e One way to stop a runaway horse is to bet on him. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 12:56:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA35668 for dynarec-outgoing; Mon, 4 Sep 2000 12:55:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701c016aa$f287a080$bbc2523e@hal9000> From: "Victor Moya del Barrio" To: References: <003701c016a7$74b76760$bcc5523e@hal9000> Subject: Re: DYNAREC: Page bank emulation with MZ80 Date: Mon, 4 Sep 2000 22:01:41 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > in the Master System. The larger ROMs are 512 KB, that is 32 > different 16 KB pages, which mean a really big bunch of different > combinations!! I can't remember now my lessons about combination > but I was wondering it could be even n! and 32! is a really really > big number. Damn!! I was wrong!! I'm beginning to be tired of my bad memory. It is 32^3 so 32K combinations (perhaps the double with the RAM pages ..) but anyway this mean around 2 MB or 4MB of memory. The RAM are (32^2)*2 so 2048 more ... a bit more of memory. > I think your solution is impossible. > So it is possible. > Victor > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 13:18:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA35720 for dynarec-outgoing; Mon, 4 Sep 2000 13:17:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001101c016ae$10c15480$bbc2523e@hal9000> From: "Victor Moya del Barrio" To: References: <000370773268fa18_mailit@mail.dynarec.com> <000370788c8ff8af_mailit@mail.dynarec.com> <001401c0169e$5f09de60$0100a8c0@lion> <000370796b81be67_mailit@mail.dynarec.com> <000f01c016ae$7900f3c0$0100a8c0@lion> <0003707a9008da7d_mailit@mail.dynarec.com> <000701c016a9$6e179fe0$74ca523e@hal9000> <0003707acbc30b5e_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec.com site changes Date: Mon, 4 Sep 2000 22:24:00 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "M.I.K.e" To: Sent: Monday, September 04, 2000 10:00 PM Subject: Re: DYNAREC: Dynarec.com site changes > >> http://www.dynarec.com/frames.html > >I don't see nothing with Explorer. And there are some ugly glitches > >in with the borders of the tables ... May be is just Microsoft. ;) > > I just added names for the other two frames. Does it work now? > Still nothing and with Netscape doesn't work either. :( > >NB will be really happy with the Specs page. :) > > I hope so. But I still need the specs of the machine... > I think he told about them when he changed from synthcom to dynarec. It just a matter of searching old mails. ;) > -- > M.I.K.e Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 13:25:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA35733 for dynarec-outgoing; Mon, 4 Sep 2000 13:24:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001901c016ae$fd9513a0$bbc2523e@hal9000> From: "Victor Moya del Barrio" To: References: <000370773268fa18_mailit@mail.dynarec.com> <000370788c8ff8af_mailit@mail.dynarec.com> <001401c0169e$5f09de60$0100a8c0@lion> <000370796b81be67_mailit@mail.dynarec.com> <000f01c016ae$7900f3c0$0100a8c0@lion> <0003707a9008da7d_mailit@mail.dynarec.com> <000701c016a9$6e179fe0$74ca523e@hal9000> <0003707acbc30b5e_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec.com site changes Date: Mon, 4 Sep 2000 22:30:37 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >NB will be really happy with the Specs page. :) > > I hope so. But I still need the specs of the machine... > If nothing has changed (quoting Neil): [...] There's a few things I'd like: * Shameless promotion of FreeBSD 4.0 and info about what's making it run * Shameless promotion of Apache as well. I believe in crediting those who give us major benefits without thought of repayment. * Maybe a "What the Dynarec server looks like" section. I've put up some reall high res pictures of it at dynarec.com/~neilb/dynarec1.jpg and dynarec.com/~neilb/dynarec2.jpg. They are HUGE pictures, so you'll probably have to cut 'em down a bit. For your information, its: - Pentium 150 - 64 MB of RAM - 5 Gig of IDE HD space - One STB Lightspeed 128 video card - Intel Etherexpress 10/100 - That's it. No floppy or CDROM or even a cover. I put the machine together from spare parts I had laying around * As I stated before, I tend to like darker, sharp looking 3D metallic style fonts. But I do also like the example page you did, so I'd be happy with either. [...] > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 14:37:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA35798 for dynarec-outgoing; Mon, 4 Sep 2000 14:36:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com site changes From: "M.I.K.e" Message-ID: <0003707c3d6be68e_mailit@mail.dynarec.com> References: <000370773268fa18_mailit@mail.dynarec.com> <000370788c8ff8af_mailit@mail.dynarec.com> <001401c0169e$5f09de60$0100a8c0@lion> <000370796b81be67_mailit@mail.dynarec.com> <000f01c016ae$7900f3c0$0100a8c0@lion> <0003707a9008da7d_mailit@mail.dynarec.com> <000701c016a9$6e179fe0$74ca523e@hal9000> <0003707acbc30b5e_mailit@mail.dynarec.com> <001101c016ae$10c15480$bbc2523e@hal9000> Date: Mon, 04 Sep 2000 23:43:58 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Still nothing and with Netscape doesn't work either. :( Problem solved: should be used *instead* of ... Silly me. It should work now. >I think he told about them when he changed from synthcom to >dynarec. It just a matter of searching old mails. ;) Thanks for doing the search, I already got the needed information from Neil. Seems he upgraded from P150 to P200 since the message you found. >Victor -- M.I.K.e Lysistrata had a good idea. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 14:42:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA35814 for dynarec-outgoing; Mon, 4 Sep 2000 14:41:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001b01c016c1$8e070da0$0100a8c0@lion> From: "Neil Griffiths" To: References: <000370773268fa18_mailit@mail.dynarec.com> <000370788c8ff8af_mailit@mail.dynarec.com> <001401c0169e$5f09de60$0100a8c0@lion> <000370796b81be67_mailit@mail.dynarec.com> <000f01c016ae$7900f3c0$0100a8c0@lion> <0003707a9008da7d_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec.com site changes Date: Mon, 4 Sep 2000 23:43:23 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Hmm, ok then let's move to frames. Should make the pages a bit easier. > But why are frames better for CGI? It's better to generate stuff on the first hit than on every page. The menu is a good example... > >This one doesn't display at all, so the previous. ;) > > What?!? It doesn't display. Don't you listen/read? ;) > >Looks like you've broken the HTML. Every frame needs a name - but you've > >only named one frame. Bad boy! ;) > > Strange, never heard of that rule, certainly not a standard. No, just something that makes a site more manageble. Not a standard though. > And this page displays perfectly well with NetPositive *and* Opera (both are > quite picky): > http://www.dynarec.com/frames.html I don't care - you've made a really bad mistake in the code and neither browser should display it. What's the problem? You included the tag. Now THAT is bad practice. You can't have a body and a frameset on the same page. Remove the and tags and all should be fine. And while you're at it, e-mail Opera and tell them that it doesn't strictly adhere to the W3C standards! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 14:48:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA35827 for dynarec-outgoing; Mon, 4 Sep 2000 14:47:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 4 Sep 2000 15:06:49 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec.com site changes In-Reply-To: <0003707c3d6be68e_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I think he told about them when he changed from synthcom to > >dynarec. It just a matter of searching old mails. ;) > Thanks for doing the search, I already got the needed information from Neil. > Seems he upgraded from P150 to P200 since the message you found. Actually, it is a P150. I just looked. Sorry 'bout the misinfo! -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 16:25:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA35923 for dynarec-outgoing; Mon, 4 Sep 2000 16:24:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com site changes From: "M.I.K.e" Message-ID: <0003707da2a85bba_mailit@mail.dynarec.com> References: <000370773268fa18_mailit@mail.dynarec.com> <000370788c8ff8af_mailit@mail.dynarec.com> <001401c0169e$5f09de60$0100a8c0@lion> <000370796b81be67_mailit@mail.dynarec.com> <000f01c016ae$7900f3c0$0100a8c0@lion> <0003707a9008da7d_mailit@mail.dynarec.com> <001b01c016c1$8e070da0$0100a8c0@lion> Date: Tue, 05 Sep 2000 01:23:52 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It's better to generate stuff on the first hit than on every page. The menu >is a good example... Also the title doesn't have to be reloaded. I also put the webmasters (hey that's us!) at the bottom of the menue. >It doesn't display. Don't you listen/read? ;) I don't hear you, but maybe I should put my glasses on to read you... >I don't care - you've made a really bad mistake in the code and neither >browser should display it. What's the problem? You included the tag. >Now THAT is bad practice. You can't have a body and a frameset on the same >page. Remove the and tags and all should be fine. I figured it out by myself... If I take into account when I last time worked with frames it's really no wonder... >Neil. -- M.I.K.e The optimum committee has no members. -- Norman Augustine --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 16:25:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA35919 for dynarec-outgoing; Mon, 4 Sep 2000 16:24:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com site changes From: "M.I.K.e" Message-ID: <0003707d96550d90_mailit@mail.dynarec.com> References: Date: Tue, 05 Sep 2000 01:20:25 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Actually, it is a P150. I just looked. Sorry 'bout the misinfo! No probs, it's already changed. >-->Neil -- M.I.K.e Misery no longer loves company. Nowadays it insists on it. -- Russell Baker --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 16:30:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA35942 for dynarec-outgoing; Mon, 4 Sep 2000 16:29:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Who framed Dynarec.com? From: "M.I.K.e" Message-ID: <0003707dd4574955_mailit@mail.dynarec.com> Date: Tue, 05 Sep 2000 01:37:45 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com The new Dynarec.com is up, now with frames. I hope you like it... -- M.I.K.e Binary, adj.: Possessing the ability to have friends of both sexes. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 4 18:59:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA36062 for dynarec-outgoing; Mon, 4 Sep 2000 18:58:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Who framed Dynarec.com? From: "M.I.K.e" Message-ID: <0003707fdaf6391c_mailit@mail.dynarec.com> References: <0003707dd4574955_mailit@mail.dynarec.com> Date: Tue, 05 Sep 2000 04:02:46 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I think the first main frame needs some cleaning because I just tested the pages with Netscape under Linux and that was the only page that didn't display... -- M.I.K.e Support wildlife -- vote for an orgy. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 00:02:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA36304 for dynarec-outgoing; Tue, 5 Sep 2000 00:00:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009050705.JAA26163@pons.ac.upc.es> Subject: Re: DYNAREC: Page bank emulation with MZ80 In-Reply-To: <000701c016aa$f287a080$bbc2523e@hal9000> "from Victor Moya del Barrio at Sep 4, 2000 10:01:41 pm" To: dynarec@dynarec.com Date: Tue, 5 Sep 2000 09:05:38 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This is beginning to be silly, my third reply to myself ... > > in the Master System. The larger ROMs are 512 KB, that is 32 > > different 16 KB pages, which mean a really big bunch of different > > combinations!! I can't remember now my lessons about combination > > but I was wondering it could be even n! and 32! is a really really > > big number. > > Damn!! I was wrong!! I'm beginning to be tired of my bad memory. > It is 32^3 so 32K combinations (perhaps the double with the RAM > pages ..) but anyway this mean around 2 MB or 4MB of memory. > I was thoughting about that and I'm sure it will work for ROMs, but only because they are small. If there were 1 MB ROMs for example this solution would need 16 MB. > The RAM are (32^2)*2 so 2048 more ... a bit more of memory. > I'm more worried about RAM pages (the third bank can either map a ROM page or one of two on-cartridge RAM pages) ... If you want to keep updated all the different versions with RAM you should have to write 1024 bytes each time you write to RAM. I think it is a bit expensive. > > Victor > > > Victor > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 01:44:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA36392 for dynarec-outgoing; Tue, 5 Sep 2000 01:43:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 5 Sep 2000 10:50:08 +0200 From: Erik Kunze To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 Message-ID: <20000905105007.C12142@philos.philosys.de> References: <000701c016aa$f287a080$bbc2523e@hal9000> <200009050705.JAA26163@pons.ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 1.0i In-Reply-To: <200009050705.JAA26163@pons.ac.upc.es>; from vmoya@ac.upc.es on Tue, Sep 05, 2000 at 09:05:38AM +0200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, On Tue, Sep 05, 2000 at 09:05:38AM +0200, Victor Moya del Barrio wrote: > > Damn!! I was wrong!! I'm beginning to be tired of my bad memory. > > It is 32^3 so 32K combinations (perhaps the double with the RAM > > pages ..) but anyway this mean around 2 MB or 4MB of memory. > > > I was thoughting about that and I'm sure it will work for ROMs, but > only because they are small. If there were 1 MB ROMs for example > this solution would need 16 MB. > > > The RAM are (32^2)*2 so 2048 more ... a bit more of memory. > > > I'm more worried about RAM pages (the third bank can either > map a ROM page or one of two on-cartridge RAM pages) ... > If you want to keep updated all the different versions with > RAM you should have to write 1024 bytes each time you write > to RAM. I think it is a bit expensive. And what happens if the size exceeds the size of the host CPU cache? Cache misses are more performance problems! I still think that a indirect (segmented) access in a 64k range is faster than in 1MB (if 1st levek cache is less than 1MB). These are my experiences with my own emulator project. -- Dipl.-Ing. Erik Kunze Phone: +49 - 89 - 32 14 07 41 PHILOSYS Software GmbH Fax: +49 - 89 - 32 14 07 12 Edisonstr. 6 Email: Erik.Kunze@philosys.de D-85716 Unterschleissheim WWW: www.philosys.de/~kunze PGP-Key: http://www.philosys.de/~kunze/public_key.txt --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 01:56:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA36408 for dynarec-outgoing; Tue, 5 Sep 2000 01:54:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 5 Sep 2000 02:14:27 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 In-Reply-To: <20000905105007.C12142@philos.philosys.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > The RAM are (32^2)*2 so 2048 more ... a bit more of memory. > > I'm more worried about RAM pages (the third bank can either > > map a ROM page or one of two on-cartridge RAM pages) ... > > If you want to keep updated all the different versions with > > RAM you should have to write 1024 bytes each time you write > > to RAM. I think it is a bit expensive. > And what happens if the size exceeds the size of the host CPU > cache? Cache misses are more performance problems! Sure, but remember that you're going to have to access a breadth of (that is *ACCESS*, not just allocate!) more than 256K during emulation. It doesn't happen on Z80s! Besides, you'll be spending 70% of your execution time (if your CPU emulation is efficient enough) > I still think that a indirect (segmented) access in a 64k range > is faster than in 1MB (if 1st levek cache is less than 1MB). As someone who has tried this indirect (segmented) access to a 64K range, it is over *HALF* the speed of the paged 64K approach. This is from experience with m6502 and mz80 - both of which I've got a bit over 100 games of experience with. An MZ80 is no slouch of performance! I've yet to find a Z80 core that's anywhere near as fast. > These are my experiences with my own emulator project. Is your core a full-on heavily optimized Z80 (assembly) core? If not, then I'd venture a strong guess (from experience) that your own conclusions are drawn from a C based core, in which case the difference is far less. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 02:03:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA36582 for dynarec-outgoing; Tue, 5 Sep 2000 02:01:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009050901.LAA26842@pons.ac.upc.es> Subject: Re: DYNAREC: Page bank emulation with MZ80 In-Reply-To: <20000905105007.C12142@philos.philosys.de> "from Erik Kunze at Sep 5, 2000 10:50:08 am" To: dynarec@dynarec.com Date: Tue, 5 Sep 2000 11:01:17 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hello, > > On Tue, Sep 05, 2000 at 09:05:38AM +0200, Victor Moya del Barrio wrote: > > > Damn!! I was wrong!! I'm beginning to be tired of my bad memory. > > > It is 32^3 so 32K combinations (perhaps the double with the RAM > > > pages ..) but anyway this mean around 2 MB or 4MB of memory. > > > > > I was thoughting about that and I'm sure it will work for ROMs, but > > only because they are small. If there were 1 MB ROMs for example > > this solution would need 16 MB. > > > > > The RAM are (32^2)*2 so 2048 more ... a bit more of memory. > > > > > I'm more worried about RAM pages (the third bank can either > > map a ROM page or one of two on-cartridge RAM pages) ... > > If you want to keep updated all the different versions with > > RAM you should have to write 1024 bytes each time you write > > to RAM. I think it is a bit expensive. > > And what happens if the size exceeds the size of the host CPU > cache? Cache misses are more performance problems! > I still think that a indirect (segmented) access in a 64k range > is faster than in 1MB (if 1st levek cache is less than 1MB). > > These are my experiences with my own emulator project. > Yes, this is another of the problems. I thought about it a bit and I forgot it ... In any case in ROMs smaller than 512 KB I don't think it would be a problem with Pentium caches. With 512 KB ROMs it is a matter of how often are changed the content of the banks. As I'm just making the emulator for making some "practice" I'm not very very affected by the performance. In any case it is a interesting discussion about how to implement banking. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 02:27:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA36615 for dynarec-outgoing; Tue, 5 Sep 2000 02:26:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 5 Sep 2000 02:45:32 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 In-Reply-To: <200009050901.LAA26842@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > These are my experiences with my own emulator project. > Yes, this is another of the problems. I thought about it a bit > and I forgot it ... In any case in ROMs smaller than 512 KB > I don't think it would be a problem with Pentium caches. With > 512 KB ROMs it is a matter of how often are changed the content > of the banks. And how much of it is actually executed.... that's the BIG deal. You'll find Z80 code is quite consistent and spends a huge amount of time in a tiny amount of code. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 03:52:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA36693 for dynarec-outgoing; Tue, 5 Sep 2000 03:50:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009051050.MAA05435@pons.ac.upc.es> Subject: Re: DYNAREC: Page bank emulation with MZ80 In-Reply-To: "from Neil Bradley at Sep 5, 2000 02:45:32 am" To: dynarec@dynarec.com Date: Tue, 5 Sep 2000 12:50:00 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > These are my experiences with my own emulator project. > > Yes, this is another of the problems. I thought about it a bit > > and I forgot it ... In any case in ROMs smaller than 512 KB > > I don't think it would be a problem with Pentium caches. With > > 512 KB ROMs it is a matter of how often are changed the content > > of the banks. > > And how much of it is actually executed.... that's the BIG deal. You'll > find Z80 code is quite consistent and spends a huge amount of time in a > tiny amount of code. > But in this case is also related with graphics (and a bit about sound). It is a console so and alone ROM for all data and code, you can't distinguish between them. I think in most of cases the Master System will be executing code at bank 0 from the very first ROM page and the two other banks will be used for reading graphic data from the ROM and sending it to the VDP. Of course graphic information (with properly builded ROMs) is also a lot of reused but perhaps increase a bit the size of the memory actually being used. I'm still worried about the RAM pages ... Would be more expensive to keep 1000 copies of the RAM or just to memcopy in and out the RAM page from a ROM combination?. I'm not sure if this RAM is used for holding data while playing the game or it is only used as backup memory. If it is for backup it could be better a memcopy. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 05:02:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA36772 for dynarec-outgoing; Tue, 5 Sep 2000 05:01:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Who framed Dynarec.com? From: "M.I.K.e" Message-ID: <000370884da2a121_mailit@mail.dynarec.com> References: <0003707dd4574955_mailit@mail.dynarec.com> <0003707fdaf6391c_mailit@mail.dynarec.com> Date: Tue, 05 Sep 2000 14:07:30 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I optimised the main page a bit. I hope it now works with Linux-Netscape (don't have the time to test it right now), although it doesn't look as it should with NetPositive, Opera seems to be fine though. Feedback welcome! -- M.I.K.e NOBODY EXPECTS THE SPANISH INQUISITION --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 09:57:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA36984 for dynarec-outgoing; Tue, 5 Sep 2000 09:56:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-Originating-IP: [192.9.51.3] From: "Fred Weigel" To: dynarec@dynarec.com Subject: Re: DYNAREC: Fluffy list Date: Tue, 05 Sep 2000 12:59:57 EDT Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 05 Sep 2000 16:59:57.0955 (UTC) FILETIME=[B8B21D30:01C0175A] Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com mung /muhng/ (MIT, 1960) Mash Until No Good. Sometime after that the derivation from the recursive acronym "Mung Until No Good" became standard. 1. To make changes to a file, especially large-scale and irrevocable changes. -- From www.dictionary.com ------- In my case, I was trying to decide between "mung" and "transmogrify" for this operation. The transformation from a virtual address to an address in the translator is pretty much one-way, so I chose "mung". Note that this meaning for "mung" dates back to at least 1958 (42 years), so I think its ok to use. "mung" was also (I believe) one of the TECO command lines. Fred Weigel. "Dammit Jim, I'm a programmer, not a doctor!" ----Original Message Follows---- From: "Neil Griffiths" Reply-To: dynarec@dynarec.com To: Subject: DYNAREC: Fluffy list Date: Sun, 3 Sep 2000 00:10:28 +0100 Hi, "Fluffy list" - I like that term. :) The reason for the fluffy list is that the 4 or 5 people at the start of the list have already discussed most things and all have a good idea of the "correct" way to go about writing a dynarec core. So we'll be writing lots of cores it seems. Soon. Maybe. :) Also, if you ever go public with your techniques, please don't use the word "munging". Just look up the word "mung" in a medical dictionary to find out why! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. Share information about yourself, create your own public profile at http://profiles.msn.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 10:05:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA37001 for dynarec-outgoing; Tue, 5 Sep 2000 10:04:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Jack To: dynarec@dynarec.com Subject: Re: DYNAREC: Fluffy list Date: Tue, 05 Sep 2000 13:08:26 -0400 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: In-Reply-To: X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Correct me if I'm wrong, but it sounds like you are talking about a hash table here. -- ------------------------------------------------------------------------------ |Jack Follansbee | Disclaimer: Unless otherwise explicitly stated, | |Senior Software Engineer | these opinions are mine alone and do not | |ATI Research Inc. | represent the opinions of ATI, it's stockholders | |http://www.ati.com | or management, blah, blah, blah. | ------------------------------------------------------------------------------ On Tue, 05 Sep 2000 12:59:57 EDT, "Fred Weigel" wrote: >mung > >/muhng/ (MIT, 1960) Mash Until No Good. > >Sometime after that the derivation from the recursive acronym "Mung Until No >Good" became standard. 1. To make changes to a file, especially large-scale >and irrevocable changes. > >-- From www.dictionary.com > >------- >In my case, I was trying to decide between "mung" and "transmogrify" for >this operation. The transformation from a virtual address to an address in >the translator is pretty much one-way, so I chose "mung". Note that this >meaning for "mung" dates back to at least 1958 (42 years), so I think its ok >to use. > >"mung" was also (I believe) one of the TECO command lines. > >Fred Weigel. > > >"Dammit Jim, I'm a programmer, not a doctor!" > >----Original Message Follows---- >From: "Neil Griffiths" >Reply-To: dynarec@dynarec.com >To: >Subject: DYNAREC: Fluffy list >Date: Sun, 3 Sep 2000 00:10:28 +0100 > >Hi, > >"Fluffy list" - I like that term. :) > >The reason for the fluffy list is that the 4 or 5 people at the start of the >list have already discussed most things and all have a good idea of the >"correct" way to go about writing a dynarec core. So we'll be writing lots >of cores it seems. Soon. Maybe. :) > >Also, if you ever go public with your techniques, please don't use the word >"munging". Just look up the word "mung" in a medical dictionary to find out >why! ;) > >Neil. > >--------------------------------------------------------------------------- >** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the >** message body to dynarec-request@dynarec.com. Please direct other >** questions, comments, or problems to neilb@dynarec.com. > >_________________________________________________________________________ >Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. > >Share information about yourself, create your own public profile at >http://profiles.msn.com. > >--------------------------------------------------------------------------- >** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the >** message body to dynarec-request@dynarec.com. Please direct other >** questions, comments, or problems to neilb@dynarec.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 10:06:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA37012 for dynarec-outgoing; Tue, 5 Sep 2000 10:05:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002d01c0175c$641e20a0$87c5523e@hal9000> From: "Victor Moya del Barrio" To: References: <0003707dd4574955_mailit@mail.dynarec.com> <0003707fdaf6391c_mailit@mail.dynarec.com> <000370884da2a121_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Who framed Dynarec.com? Date: Tue, 5 Sep 2000 19:11:52 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I optimised the main page a bit. I hope it now works with Linux-Netscape > (don't have the time to test it right now), although it doesn't look as it > should with NetPositive, Opera seems to be fine though. > > Feedback welcome! > It seems work well, but ... were are the people pages? ;) In any case I would feel bad after the whole page change with my bad page, I should have to change it. ;( > M.I.K.e > > NOBODY EXPECTS THE SPANISH INQUISITION > Not even remember me that we invented that. ;) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 10:15:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA37026 for dynarec-outgoing; Tue, 5 Sep 2000 10:13:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003d01c0175d$8f2d9360$87c5523e@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Some topics ... Date: Tue, 5 Sep 2000 19:20:15 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com He! Only some comments I have working around last days. ;) Do you remember Neil our discussion about if the term "interpreter" was the used for the common CPU emulators? Well, I think I have found a point: in all the universitary kind documentation I have found (and I'm sure in most of the enterprise docs) the term is used as I used it. ;) Another one. I was again visiting R.M. page and I found he posted some doc about a Motorola processor used in Bubble Bubble and other arcade machines and a "static recompiler" (he called it this way) for that machine. That "thing" actually is two programs: a dissassembler and a C code generator that from the asm source generates a kind of translation in C simulating a CPU for that ROM code (following Raine conventions). Really courios approach. It seems that it was also needed to modify at hand the asm file a bit. He said it was designed solely for Bubble but with some patches he could make work some other ROMs. I wouldn't call it really static recompilation or translation but it is still a rare idea. What name would have that technique? I think is nearer to the "decompilation" techniques I have read about while searching about binary translation. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 11:14:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA37083 for dynarec-outgoing; Tue, 5 Sep 2000 11:13:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Who framed Dynarec.com? From: "M.I.K.e" Message-ID: <0003708d6dd75c16_mailit@mail.dynarec.com> References: <0003707dd4574955_mailit@mail.dynarec.com> <0003707fdaf6391c_mailit@mail.dynarec.com> <000370884da2a121_mailit@mail.dynarec.com> Date: Tue, 05 Sep 2000 20:14:25 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Made some more cosmetical changes (I did't like the frame borders to be displayed) and tested the site with NetPositive, Opera, Internet Explorer and Netscape. How about some reactions from "Big Boss" and the "Primary Webmaster"? -- M.I.K.e Sometimes I worry about being a success in a mediocre world. -- Lily Tomlin --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 11:14:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA37089 for dynarec-outgoing; Tue, 5 Sep 2000 11:13:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Who framed Dynarec.com? From: "M.I.K.e" Message-ID: <0003708d776da003_mailit@mail.dynarec.com> References: <0003707dd4574955_mailit@mail.dynarec.com> <0003707fdaf6391c_mailit@mail.dynarec.com> <000370884da2a121_mailit@mail.dynarec.com> <002d01c0175c$641e20a0$87c5523e@hal9000> Date: Tue, 05 Sep 2000 20:17:06 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It seems work well, but ... were are the people pages? ;) Ok, come here... I'll kill you! ;-) BTW, since you seem to be the only one who is interested in the new design, could you tell me how you like the small changes I just made? >In any case I would feel bad after the whole page change with >my bad page, I should have to change it. ;( Well, I'm not responsible for the personal pages, but I think we'll have to do something about NB's BIG TITS... >> NOBODY EXPECTS THE SPANISH INQUISITION >Not even remember me that we invented that. ;) Now that you mention it... >Victor -- M.I.K.e Actors will happen even in the best-regulated families. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 11:45:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA37128 for dynarec-outgoing; Tue, 5 Sep 2000 11:44:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-Originating-IP: [192.9.51.3] From: "Fred Weigel" To: dynarec@dynarec.com Subject: Re: DYNAREC: A Real Question Date: Tue, 05 Sep 2000 14:47:45 EDT Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 05 Sep 2000 18:47:45.0595 (UTC) FILETIME=[C7B5A8B0:01C01769] Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Jules: The extra segment registers do allow more than 32 bit addressing on Intel platforms... but my main target is Sparc and UltraSparc. Neither of these platforms supports this... A secondary platform is x86, but only because I do my work on Linux x86, and then move to Sparc. Fred Weigel. ----Original Message Follows---- From: julesb@btinternet.com Reply-To: dynarec@dynarec.com To: dynarec@dynarec.com Subject: Re: DYNAREC: A Real Question Date: Fri, 1 Sep 2000 17:49:53 +0100 >This list is awfully fluffy... but I do have a question to pose. About time someone said something on-topic... :-P >I am building a dynamic translation engine (known as JRI). On >64 bit target machines, management of a 32 bit address space >is easy. The virtual space is built from mmap()ed pieces. >For simple 8 bit and 16 bit processors, the same approach >works well. > >Where the problem comes in is in trying to produce a 32 bit >address space running on a host 32 bit processor. I am >attempting to host a native OS that manages page tables and >its own virtual memory environment. > [snipped] I don't really have a solution to this, but it's something I've thought about doing (since I read Virtual PC apparently manages a similar feat on Mac OS). One idea I've had (which may be complete nonsense) is to use one of the extra segment registers on the x86 architecture to map the entire 32-bit 4GB address space somewhere above 4GB in the virtual address space, so translated accesses can just use the segment override prefix somehow? Obviously, this method would also need a paging scheme, mmap() implementation, etc. which could handle the later IA32 implementation's 36-bit address space, which I'm not sure anything does. Is that complete drivel? I'd quite like to know an answer to the problem too... One other thing - Plex86 provides virtual machine support (or will) in Linux. Some ideas may be borrowable from that (though I don't know how it works). You'd still have the problem of where to put your emulator (in the host address space?) with a 'normal' virtual machine though, perhaps? Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. Share information about yourself, create your own public profile at http://profiles.msn.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 11:56:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA37148 for dynarec-outgoing; Tue, 5 Sep 2000 11:55:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006101c0176b$cba806a0$87c5523e@hal9000> From: "Victor Moya del Barrio" To: References: <0003707dd4574955_mailit@mail.dynarec.com> <0003707fdaf6391c_mailit@mail.dynarec.com> <000370884da2a121_mailit@mail.dynarec.com> <002d01c0175c$641e20a0$87c5523e@hal9000> <0003708d776da003_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Who framed Dynarec.com? Date: Tue, 5 Sep 2000 21:02:09 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >It seems work well, but ... were are the people pages? ;) > > Ok, come here... I'll kill you! ;-) It is a bit far. ;) > BTW, since you seem to be the only one who is interested in the new design, > could you tell me how you like the small changes I just made? > Well I didn't notice many changes but must be my memory. Actually it looks well with Explorer. The borders of the tables are Ok. Perhaps you changed something in the dynarec banner? It shows now in full size not scrolled. I think it is a bit too big in 640x480 (yes I'm using still that old resolution ;). > >In any case I would feel bad after the whole page change with > >my bad page, I should have to change it. ;( > > Well, I'm not responsible for the personal pages, but I think we'll have to > do something about NB's BIG TITS... > Perhaps some photos. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 12:09:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA37168 for dynarec-outgoing; Tue, 5 Sep 2000 12:08:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-Originating-IP: [192.9.51.3] From: "Fred Weigel" To: dynarec@dynarec.com Subject: Re: DYNAREC: A Real Question Date: Tue, 05 Sep 2000 15:12:01 EDT Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 05 Sep 2000 19:12:01.0833 (UTC) FILETIME=[2BB1F190:01C0176D] Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Not a crazy idea at all. But, it (unfortunately) won't work. And here is why - The target OS may ITSELF map user processes into low memory, and map the OS into high memory. Stacks, etc. would map into the middle of memory. This gives us the following map: 00000000....???????? User process 40000000....80000000 Stacks and per-thread data 80000000....???????? Hardware (lets say) D0000000....FFFFFFFF OS code and data Of course, this is COMPLETELY hypothetical (but is illustrative). Each address in the user program (or the OS, for the purposes of JRI they are the same) may reference pretty much ANYTHING in the 4GB address map. The address map is sparse though, it will be rare for the OS+application to address much beyond physical memory. The address space is sparse, and this means that there are "clots" of memory used. My current approach is: |----- 64MB of memory, aquired via mmap() --------| S1 S2 S3 .... S64 S1 may be at 00000000, S2 at S1+1MB, S2 at S1+2MB for a contiguous 3MB of low space. S4 can map the stacks at 40000000, etc. Note that the address space is compressed (holes have been squeezed out), and the actual region is a contiguous 64MB chunk. The processor MMU is emulated by using mmap() to cause a mapping between physical memory pages on the target, and virtual addresses. The S1, S2...S64 segment mapping table handles address space compression, and is a software component to the MMU. The mmap() operations are done only when the MMU is reprogrammed by the hosted processor, and the segment table is being rebuilt on every such MMU operation. We can eliminate some of the overhead, by noting that addresses can in some cases be treated as simple offsets (as per my original example). Still, its a mess, and I'm looking for alternatives that can be used. Note that JRI (stands for Just Run It) also does 8 and 16 bit processors, which do NOT need address space compression on 32 bit targets. The only 8 bit target JRI currently does is 8080A (*not* Z80, because I just don't care). I did this processor to determine the usability of mmap()ing sections of memory in a driver, and making everything (including the main RAM array) into a driver. This works well, and avoids problems such as bank switch emulation. There is NO overhead which emulating a bank switch environment. The 8086 only supports a 1MB address space, and doesn't have any problems. Even the 286 (at 16MB addressable) isn't a concern. But, Sparc on Intel, Intel 386 on Sparc, etc are a concern. I initially didn't worry about this, and just stubbed in MUNG macros into the generated code, because I was running on 64-bit UltraSparc, but I actually want this stuff on my quad Sparc-2. [Sorry for the excessive rambling]. Fred Weigel. ----Original Message Follows---- From: "Victor Moya del Barrio" Reply-To: dynarec@dynarec.com To: Subject: Re: DYNAREC: A Real Question Date: Fri, 1 Sep 2000 19:47:50 +0200 > This list is awfully fluffy... but I do have a question to pose. This list started as a four or so people cofferoom where they could talk about dynarec and when dynarec was exhausted about everything else. Now it has grown up and it seems the first members still have the same mania of talking off topic. ;) > I am building a dynamic translation engine (known as JRI). On > 64 bit target machines, management of a 32 bit address space > is easy. The virtual space is built from mmap()ed pieces. > For simple 8 bit and 16 bit processors, the same approach > works well. > I'm (well the group I'm working for) using this approach to perform static translation of user code. > Where the problem comes in is in trying to produce a 32 bit > address space running on a host 32 bit processor. I am > attempting to host a native OS that manages page tables and > its own virtual memory environment. > The last July it was presented a project about our translator working with 32 bit architectures (we are working usually with 64-bit alphas), it was tested with Pentium and I think also with Power. In any case we only work with applications so I don't think the problem you have it will be studied there ... I will take a look when I can. Just a crazy idea: Just map all the emulator process as being the full memory address space of the CPU you are emulating (as does any decent OS). You could map directly the virtual memory space as being the space address of the process. The problem is you have the code and data of your emulator as well with the translation somewhere out there and you can access it directly. One solution (I think it might not work but who knows ;): 1) Select a region memory where you will have your code, data and translation. This region would be desirable to be in a region rarely used in the native machine. This can be tought. 2) I don't think you can protect this region using hardware but you can do it in software. When you translate the memory access you check for the address not being into this region, I think this would be faster than your code but perhaps I'm wrong. If it is outside the region is a normal read. If it isn't you have to use a specific system for the region, maybe calculating the address and mapping in an emulator buffer, I don't know, but I think it could be done. I think this could work faster than your solution (if I didn't make a mistake) iif you don't hit frequently (better if you don't hit never) in that reserve region. Perhaps it could be added a system for move the reserved region to another place when a program is being problematic but this will be too especulative now. He! I think is really crazy. Please Neil, where I'm wrong. ;) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. Share information about yourself, create your own public profile at http://profiles.msn.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 13:11:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA37223 for dynarec-outgoing; Tue, 5 Sep 2000 13:10:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Who framed Dynarec.com? From: "M.I.K.e" Message-ID: <0003708f296850f6_mailit@mail.dynarec.com> References: <0003707dd4574955_mailit@mail.dynarec.com> <0003707fdaf6391c_mailit@mail.dynarec.com> <000370884da2a121_mailit@mail.dynarec.com> <002d01c0175c$641e20a0$87c5523e@hal9000> <0003708d776da003_mailit@mail.dynarec.com> <006101c0176b$cba806a0$87c5523e@hal9000> Date: Tue, 05 Sep 2000 22:18:27 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It is a bit far. ;) Damn, I hate geographical problems... >Well I didn't notice many changes but must be my memory. I hope so! ;-) >Actually it looks well with Explorer. The borders of the tables are Ok. I removed the borders from the frames... >Perhaps you changed >something in the dynarec banner? It shows now in full size not scrolled. Yup, I noticed that problem and experimented with a fixed size till the logo was displayed in a frame without scrollbars. >I think it is a bit too big in 640x480 (yes I'm using still that old resolution ;). Uh, that's small! But certainly interesting to know if a site works on that resolution. I hope you see the complete menu on the left side. >Perhaps some photos. ;) Of BIG TITS? That might be a pleasureful difference! ;-) >Victor -- M.I.K.e Make it myself? But I'm a physical organic chemist! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 14:04:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37276 for dynarec-outgoing; Tue, 5 Sep 2000 14:03:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000905140449.008206e0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 05 Sep 2000 14:04:49 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: 68K LINK/UNLK question Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I've been trying to implement the LINK and UNLK instructions, but something is wrong and I don't know what. I don't have a great understanding of the instructions, so I could be missing something real obvious. The problem hits when UNLK is executed, the wrong stuff is loaded up, and a following RTS causes the emulator to jump off into the weeds. My handlers are as follows: [The M68K manual describes the LINK operation as: SP-4->SP; An->(SP); SP->An; SP+disp->SP] I4E50: ; LINK 0x4E50-0x4E57 and edi, byte 7 mov ebx, [__a+7*4] sub ebx, byte 4 mov edx, [__a+edi*4] mov [run_ebx], ebx call WriteLong mov ebx, [run_ebx] mov [__a+edi*4], ebx movsx edx, word [esi] add ebx, edx mov [__a+7*4], ebx add esi, byte 2 sub ecx, byte 16 js near Genital68KRun_done mov di, [esi] add esi, byte 2 jmp dword [jmptab+edi*4] [The UNLK operation is: An->SP; (SP)->An; SP+4->SP] I4E58: ; UNLK 0x4E58-0x4E5F and edi, byte 7 mov ebx, [__a+edi*4] call ReadLong mov [__a+edi*4], edx add ebx, byte 4 mov [__a+7*4], ebx sub ecx, byte 12 js near Genital68KRun_done mov di, [esi] add esi, byte 2 jmp dword [jmptab+edi*4] Register usage is: EBX=address, EDX=data, on entry, lowest 3 bits of EDI contain the register number for An used as an operand to LINK and UNLK. ReadLong reads a longword, and WriteLong writes one. run_ebx is a memory location used to temporarily store EBX (rather than using the stack). Thanks :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 14:34:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37307 for dynarec-outgoing; Tue, 5 Sep 2000 14:33:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K LINK/UNLK question From: "M.I.K.e" Message-ID: <000370905453d69e_mailit@mail.dynarec.com> References: <3.0.5.32.20000905140449.008206e0@powernet.net> Date: Tue, 05 Sep 2000 23:42:02 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Ok, I'll write down what my books say... >[The M68K manual describes the LINK operation as: SP-4->SP; An->(SP); >SP->An; SP+disp->SP] LINK An, #dist operation: An => -(A7) ; this is the same as your first two operations A7 => An A7 + #dist => A7 My other book writes the same as your manual. >[The UNLK operation is: An->SP; (SP)->An; SP+4->SP] UNLK An operation: An => A7 (A7)+ => An And again my other book writes the same as yours... You don't happen to have "Assembly Language and Systems Programming for the M68000 Familiy", do you? Seems the definition is ok, so the problem must be somewhere in the code... >Bart -- M.I.K.e "Why was I born with such contemporaries?" -- Oscar Wilde --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 14:41:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37324 for dynarec-outgoing; Tue, 5 Sep 2000 14:41:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000905144152.0081c810@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 05 Sep 2000 14:41:52 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K LINK/UNLK question In-Reply-To: <000370905453d69e_mailit@mail.dynarec.com> References: <3.0.5.32.20000905140449.008206e0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >And again my other book writes the same as yours... >You don't happen to have "Assembly Language and Systems Programming for the >M68000 Familiy", do you? Nope. I'm using the M68000 Programmer's Reference Manual from Motorola themselves ;) >Seems the definition is ok, so the problem must be somewhere in the code... Yeah, but I don't know where :( I'm assuming the operations are carried out in linear order, and that whenever it says the SP is modified, it indeed is modified. If it wants me to use some SP value first, and then write it back later, I'm in trouble. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 5 14:41:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37334 for dynarec-outgoing; Tue, 5 Sep 2000 14:41:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-Originating-IP: [192.9.51.3] From: "Fred Weigel" To: dynarec@dynarec.com Subject: Re: DYNAREC: A Real Question Date: Tue, 05 Sep 2000 17:45:30 EDT Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 05 Sep 2000 21:45:30.0727 (UTC) FILETIME=[9C9FA770:01C01782] Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Thanks for the input :) ----Original Message Follows---- From: "M.I.K.e" Reply-To: dynarec@dynarec.com To: dynarec@dynarec.com Subject: Re: DYNAREC: A Real Question Date: Sat, 02 Sep 2000 17:36:19 +0200 >This list is awfully fluffy... Sorry... >but I do have a question to pose. Go on... >I am building a dynamic translation engine (known as JRI). Just a catchy TLA or does it have a real meaning? ==> Yes, it means Just Run It. >On 64 bit target machines, >management of a 32 bit address space >is easy. The virtual space is built from mmap()ed pieces. I'm not that into POSIX so I might be wrong, but isn't using mmap() a bit slow? ==> mmap() is used to build up the memory map from device ==> model objects. It is not used at run-time, unless the ==> object program does MMU stuff. >For simple 8 bit and 16 bit processors, the same approach >works well. For 8-bit processors, which seldom have more than 64K to address and normally don't have a MMU, I'd stick with a flat memory model. For 16-bit processors it depends on the architecture, for the 8086 with 1MB address space the flat model (no I don't mean Kate Moss) should be used, a 68K on the other hand might be a bit problematic. ==> mmap() by itself is used to build the memory space directly ==> This provides for excellent performance, even with bank ==> switch models. A description file is used to build up the ==> map. Eg. ==> ==> device=8080 ==> device=ram 0x0 0x8000 ==> device=vdm 0xc000 ==> device=cbios "cpm22.hex" ==> ==> The memory map in this example is build from ram.drv ==> and vdm.drv (memory mapped screen). Other devices are rom.drv, ==> mono.drv, keyboard.drv etc. >Where the problem comes in is in trying to produce a 32 bit >address space running on a host 32 bit processor. I am >attempting to host a native OS that manages page tables and >its own virtual memory environment. I that case the best idea is to emulate the processors MMU. As Jules pointed out Virtual PC uses some fancy method to simulate the Pentium MMU using the MMU of the PowerPC, but the only available text on that doesn't have an useful details: http://www.byte.com/art/9711/sec4/art4.htm Embra has much better information about that topic, but it seems that they have the same bottleneck you are trying to remove: http://www-flash.stanford.edu/Embra/ >My solution (so far) is to define an operation I have termed >"munging". The target 32 bit virtual address space is divided >to segments of 1 or 2 megabytes each, and the base of each >of these segments is put into a table. The mmap() region >pulls together the (possibly) separated sections into a >workable region (say, 64MB in size). Sounds like like out paged TransMap idea, although that is used to map the translated code and not memory references. >The target processor >instructions that refer to memory are then translated into >a sequence that takes the target virtual address, shifts it >down to isolate the segment number, looks up the segment number >and then combines the low order address bits back in to >produce the host address. Hmm, if you'd work like Embra, emulate the MMU and at the same time handle what they call the "MMU relocation array" you could do a page lookup for a virtual page of the hosted system and get directly the physical page of the host system. ==> The Unix host mmap() is used to map physical drivers memory ==> into "physical" memory. Another mmap(), coupled with the ==> segment translation vector is used to emulate the source ==> MMU. >The host mmap() is used to translate >that address into the actual physical memory. I then mark >code pages as non-writable and catch any writes to code space >to invalidate translations, or to catch i/o page writes and >reads. With the Embra method mmap() isn't needed and that system call should be much slower than the code you list below. ==> The mmap() is only done when building the memory space. Not ==> when actually running code UNLESS the code uses MMU facilities >The problem -- this approach adds a LOT of overhead to memory >operations: > load reg,memaddr >translates into Now I remember why I wanted to include that problem in my DRFAQ... > page <- (memaddr >> page_shift) & page_mask > -- note that the 'and' may not be necessary When your addresses are correct and you're using a logical shift then the page_mask shouldn't be necessary. I'd recommend that this process of gaining the page number should be as close to the emulated MMU as possible. BTW, are you an ADA programmer because you use "--" for the comment? Since JRI allows loadable CPUs, I am building a generic MMU facility. Ummm, no I am not really an ADA programmer. For psuedo code, I tend to use the constructs I find most readable. -- is less visually obtrusive than /* */ and //. > offset <- memaddr & offset_mask > addr <- segment_table[page] > if (addr == NIL) not_mapped_fault > addr <- addr | offset I think there is nothing left to optimise here, apart from the fact that this kind of handling works best when written in assembly. > reg <- mem[addr] In your case the operation includes a call of mmap(), but if you do a direct lookup of the physical address it's a simple memory access. >This is a five to one expansion on primitive code. Note that >sequences such as 'increment memaddr' may be optimized, if >the memaddr doesn't cross a segment boundary: > old_page <- memaddr & page_mask > ++memaddr > if ((memaddr & page_mask) != old_page) > do re-munging of address Nice trick! ==> Thank you. My optimizer gathers execution time data from ==> running code, and then decides on optimization strategy. ==> Sometimes it wrong ('natch), but other times, it gets ==> to do stuff like this. >The OTHER problem with this approach is that absolute fidelity >cannot be guaranteed with buggy target software. For example, >writing off the end of a virtual page may write into another >page, and not into a "bit bucket", and it may have generated >a "page not present" fault on the target, which now won't happen. Hmm, it might help to know what processors are involved because most RISC processors (I think the PowerPC is the only exception) only permit aligned memory access anyway. ==> The target processors are Sparc, UltraSparc, and Intel >Fred Weigel -- M.I.K.e "I do not feel obliged to believe that the same God who has endowed us with sense, reason, and intellect has intended us to forego their use." -- Galileo Galilei --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. Share information about yourself, create your own public profile at http://profiles.msn.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 00:49:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA37778 for dynarec-outgoing; Wed, 6 Sep 2000 00:49:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 6 Sep 2000 01:09:37 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Some topics ... In-Reply-To: <003d01c0175d$8f2d9360$87c5523e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Do you remember Neil our discussion about if the term "interpreter" > was the used for the common CPU emulators? Well, I think I > have found a point: in all the universitary kind documentation I have > found (and I'm sure in most of the enterprise docs) the term is used > as I used it. ;) Regardless, my original point is they are not commonly known as "interpretive emulators" in the emulation community. They're just "emulators". No amount of documentation will change that! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 00:50:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA37791 for dynarec-outgoing; Wed, 6 Sep 2000 00:50:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 6 Sep 2000 01:10:42 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Who framed Dynarec.com? In-Reply-To: <0003708d6dd75c16_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > How about some reactions from "Big Boss" and the "Primary Webmaster"? Who's "Big boss"? -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 01:55:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA37852 for dynarec-outgoing; Wed, 6 Sep 2000 01:55:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009060858.KAA32541@pons.ac.upc.es> Subject: Re: DYNAREC: Some topics ... In-Reply-To: "from Neil Bradley at Sep 6, 2000 01:09:37 am" To: dynarec@dynarec.com Date: Wed, 6 Sep 2000 10:58:02 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Do you remember Neil our discussion about if the term "interpreter" > > was the used for the common CPU emulators? Well, I think I > > have found a point: in all the universitary kind documentation I have > > found (and I'm sure in most of the enterprise docs) the term is used > > as I used it. ;) > > Regardless, my original point is they are not commonly known as > "interpretive emulators" in the emulation community. They're just > "emulators". No amount of documentation will change that! ;-) > But it is strange because the idea of emulators (meaning ISA emulation) has many years more than the emu scene. So the first who began to work on it should have based in ideas from university or enterprise world. Bah! It just doesn't matter. ;) This make me thought in something: the difference between our "emulators" and the different "serious" object-code translators. The emulators in the videogames/old home computers scene combine full CPU ISA emulation, hardware emulation and also sometimes OSes (or BIOS or library) emulation (that last seem is now called HLE ;). The different kind of translators in the universitary or enterprise (because this is the real target of universitary efforts: how to port old well-working applications) are in most of the cases CPU ISA emulation, but only of user level instructions, and OS emulation (redirect the calls). There are some serious emulators/translators that also perform somekind of hardware emulation, for example for profiling and simulation of ISAs or program behaviour, but they are more rare. So what means that? Is the emu scene harder and more complex (interesting) than usual binary translation? Mike, do you think it would make the effort to talk about the difference between a full CPU ISA emulation with dynamic recompilation and only user level code emulation? There are thinks how MMU emulation that make them different. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 02:08:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA38026 for dynarec-outgoing; Wed, 6 Sep 2000 02:08:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Who framed Dynarec.com? From: "M.I.K.e" Message-ID: <00037099c7053680_mailit@mail.dynarec.com> References: Date: Wed, 06 Sep 2000 10:58:21 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Who's "Big boss"? You of course ;-) >-->Neil -- M.I.K.e Anyone who cannot cope with mathematics is not fully human. At best he is a tolerable subhuman who has learned to wear shoes, bathe and not make messes in the house. -- Lazarus Long, "Time Enough for Love" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 02:47:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA38066 for dynarec-outgoing; Wed, 6 Sep 2000 02:47:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009060917.LAA27710@pons.ac.upc.es> Subject: Re: DYNAREC: Who framed Dynarec.com? In-Reply-To: <00037099c7053680_mailit@mail.dynarec.com> "from M.I.K.e at Sep 6, 2000 10:58:21 am" To: dynarec@dynarec.com Date: Wed, 6 Sep 2000 11:17:24 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Who's "Big boss"? > > You of course ;-) > Hehe! I think I agree with your opinion. ;)) > >-->Neil > > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 03:33:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA38122 for dynarec-outgoing; Wed, 6 Sep 2000 03:33:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Some topics ... From: "M.I.K.e" Message-ID: <0003709b1bfc0933_mailit@mail.dynarec.com> References: <200009060858.KAA32541@pons.ac.upc.es> Date: Wed, 06 Sep 2000 12:33:41 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >But it is strange because the idea of emulators (meaning ISA >emulation) has many years more than the emu scene. So the first >who began to work on it should have based in ideas from university >or enterprise world. Bah! It just doesn't matter. ;) I think the first emulators were done by IBM... >This make me thought in something: the difference between our >"emulators" and the different "serious" object-code translators. >The emulators in the videogames/old home computers scene combine >full CPU ISA emulation, hardware emulation and also sometimes OSes >(or BIOS or library) emulation (that last seem is now called HLE ;). As the emulated systems become more complicated more and more is emulated on a high-level because it's faster to simulate specific functions than to emulate them. This doesn't seem to a be a big problem for emulation since it seems that such complicated systems are rarely programmed on a low level. I think the last rather powerful machines that were/are programmed on a very low level are the Playstation and the Saturn. >The different kind of translators in the universitary >or enterprise (because this is the real target of universitary >efforts: how to port old well-working applications) are in >most of the cases CPU ISA emulation, but only of user level >instructions, and OS emulation (redirect the calls). Yes because it's either for profiling/tracing purposes (eg. Shade) or to run clean programs without hacks (eg. FX!32). >There are >some serious emulators/translators that also perform somekind >of hardware emulation, for example for profiling and simulation >of ISAs or program behaviour, but they are more rare. Well, actually those are more for profiling of new operating systems (eg. Embra) >So what means that? Is the emu scene harder and more complex >(interesting) than usual binary translation? Hmm, lets say the emulation scene has more interest to get also the tricky programs running, either by emulating more hardware or by using very dirty tricks. HLE is still not used to the extend as it could be, but it just begins to get interesting because a high-level C64 emulation wouldn't be worth the try. >Mike, do you think it would make the effort to talk about the >difference between a full CPU ISA emulation with dynamic >recompilation and only user level code emulation? There are >thinks how MMU emulation that make them different. It adds many things: MMU, processor modes, system registers, cache emulation, ... I think I still haven't thought of it in all depth being slightly influenced by some of the university projects. >Victor -- M.I.K.e If you didn't get caught, did you really do it? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 03:56:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA38155 for dynarec-outgoing; Wed, 6 Sep 2000 03:56:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009061058.MAA16754@pons.ac.upc.es> Subject: Re: DYNAREC: Some topics ... In-Reply-To: <0003709b1bfc0933_mailit@mail.dynarec.com> "from M.I.K.e at Sep 6, 2000 12:33:41 pm" To: dynarec@dynarec.com Date: Wed, 6 Sep 2000 12:58:27 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >But it is strange because the idea of emulators (meaning ISA > >emulation) has many years more than the emu scene. So the first > >who began to work on it should have based in ideas from university > >or enterprise world. Bah! It just doesn't matter. ;) > > I think the first emulators were done by IBM... > It seems so ... and they were making emulators for ages. All the software for their previous machine has been "translated" or "emulated" in their new machines and architectures. He! I think some of the very first applications could be still running, perhaps with two or more layers of "emulation". ;) > >This make me thought in something: the difference between our > >"emulators" and the different "serious" object-code translators. > >The emulators in the videogames/old home computers scene combine > >full CPU ISA emulation, hardware emulation and also sometimes OSes > >(or BIOS or library) emulation (that last seem is now called HLE ;). > > As the emulated systems become more complicated more and more is emulated on > a high-level because it's faster to simulate specific functions than to > emulate them. This doesn't seem to a be a big problem for emulation since it > seems that such complicated systems are rarely programmed on a low level. > I think the last rather powerful machines that were/are programmed on a very > low level are the Playstation and the Saturn. > It only works because the low level access is forbiden by the OS (any *REAL* OS like UNIX systems). And you still need to rely in that the user level program uses known APIs (and you know them) and not special system calls. An advance of OS emulation (which is the most common) is library emulation. This will make the things execute really fast but it is also very hard to implement (how do you detect what library using, version, ...) and to garantee the correct execution. A question, does UltraHLE use library emulation? Or it only emulates somekind of BIOS. I really don't know anything about N64. > >The different kind of translators in the universitary > >or enterprise (because this is the real target of universitary > >efforts: how to port old well-working applications) are in > >most of the cases CPU ISA emulation, but only of user level > >instructions, and OS emulation (redirect the calls). > > Yes because it's either for profiling/tracing purposes (eg. Shade) or to run > clean programs without hacks (eg. FX!32). > From what my bosses tell me the binary translation area is becoming (well it has been also for years) a very important area of investigation and development, both for universities and enterprises. It is also related with optimization techniques which from a source binary generates a new binary optimized, but both for the same architecture. > >There are > >some serious emulators/translators that also perform somekind > >of hardware emulation, for example for profiling and simulation > >of ISAs or program behaviour, but they are more rare. > > Well, actually those are more for profiling of new operating systems (eg. > Embra) > And sometimes CPUs or machines. > I think I still haven't thought of it in all depth being slightly influenced > by some of the university projects. > Me too, me too. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 04:27:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA38193 for dynarec-outgoing; Wed, 6 Sep 2000 04:27:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Dynare.com People From: "M.I.K.e" Message-ID: <0003709bf85b7007_mailit@mail.dynarec.com> Date: Wed, 06 Sep 2000 13:35:19 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Upon the request of Victor I put some content on the "People" page. Please tell me of you agree with the short comments I wrote or if you want something different quoted. -- M.I.K.e Help me, I'm a prisoner in a Fortune cookie file! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 05:28:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA38265 for dynarec-outgoing; Wed, 6 Sep 2000 05:28:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Some topics ... From: "M.I.K.e" Message-ID: <0003709cd0c0c8fb_mailit@mail.dynarec.com> References: <200009061058.MAA16754@pons.ac.upc.es> Date: Wed, 06 Sep 2000 14:35:49 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [IBM] >It seems so ... and they were making emulators for ages. All >the software for their previous machine has been "translated" >or "emulated" in their new machines and architectures. He! I >think some of the very first applications could be still >running, perhaps with two or more layers of "emulation". ;) For some it's a hobby to run an emulator on an emulator which runs on an emulator which.... >It only works because the low level access is forbiden >by the OS (any *REAL* OS like UNIX systems). And you still >need to rely in that the user level program uses known APIs >(and you know them) and not special system calls. Indeed. >An advance of OS emulation (which is the most common) is >library emulation. This will make the things execute really >fast but it is also very hard to implement (how do you >detect what library using, version, ...) and to garantee >the correct execution. Yeah, library simulation can be quite problematic. >A question, does UltraHLE use library emulation? Or it >only emulates somekind of BIOS. I really don't know >anything about N64. The N64 doesn't have any BIOS, so most of the HLE stuff is library emulation, but also direct access to display lists and sound buffers. Just take a look at the UltraHLE INI, I think they often have library entry points for the ROMs. BTW, the Dreamcast also has no BIOS (apart from what it needs to boot a CD) and the whole operating system is on the GD-ROM. The advantage is that the developer has the free choice between Sega's DC-OS and the DC optimised WinCE, and in the latter case you can always pick the newest version including the newest DirectX. The disadvantage is that HLE of the Dreamcast will be very hard. Another problem is that the DC has a sound controller like Megadrive and Saturn had before, only this time it's a 45MHz ARM7! Just ask ask Bart what dirty tricks can be done with the Z80 in the Megadrive, and then ask Jules what problems you'll have to emulate a 45MHz ARM7 at full speed! Most people only see the main processor and the graphics chip but forget that the Dreamcast is the only of the current and upcoming consoles that has a sound controller. >From what my bosses tell me the binary translation area is >becoming (well it has been also for years) a very important >area of investigation and development, both for universities >and enterprises. It is also related with optimization >techniques which from a source binary generates a new >binary optimized, but both for the same architecture. Cool, maybe it wasn't just wasted time that I read all the docs ;-) >And sometimes CPUs or machines. I think interpretive simulation is more common, because it's normally not about the speed, but how the instructions and the internal things work. Maybe NB has more info on that topic. >Victor -- M.I.K.e Any sufficiently advanced technology is indistinguishable from a rigged demo. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 06:48:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA38336 for dynarec-outgoing; Wed, 6 Sep 2000 06:48:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K LINK/UNLK question From: "M.I.K.e" Message-ID: <0003709df04b0781_mailit@mail.dynarec.com> References: <3.0.5.32.20000905140449.008206e0@powernet.net> Date: Wed, 06 Sep 2000 15:56:13 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I4E50: ; LINK 0x4E50-0x4E57 >and edi, byte 7 >mov ebx, [__a+7*4] >sub ebx, byte 4 >mov edx, [__a+edi*4] >mov [run_ebx], ebx >call WriteLong >mov ebx, [run_ebx] >mov [__a+edi*4], ebx >movsx edx, word [esi] >add ebx, edx >mov [__a+7*4], ebx >add esi, byte 2 >sub ecx, byte 16 >js near Genital68KRun_done >mov di, [esi] >add esi, byte 2 >jmp dword [jmptab+edi*4] This seems to be correct apart from the fact that LINK needs 18 clockcycles instead of 16... >I4E58: ; UNLK 0x4E58-0x4E5F >and edi, byte 7 >mov ebx, [__a+edi*4] >call ReadLong >mov [__a+edi*4], edx >add ebx, byte 4 >mov [__a+7*4], ebx >sub ecx, byte 12 >js near Genital68KRun_done >mov di, [esi] >add esi, byte 2 >jmp dword [jmptab+edi*4] According to my book UNLK An is equivalent to: movea.l An, A7 movea.l (A7)+, An And I really don't see any error in your code... -- M.I.K.e Forms follow function, and often obliterate it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 10:06:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA38509 for dynarec-outgoing; Wed, 6 Sep 2000 10:05:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003401c01825$a27f9260$7fc0523e@hal9000> From: "Victor Moya del Barrio" To: References: <0003709bf85b7007_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynare.com People Date: Wed, 6 Sep 2000 19:12:23 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Upon the request of Victor I put some content on the "People" page. > Please tell me of you agree with the short comments I wrote or if you want > something different quoted. > I prefer to think you have good intentions. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 10:45:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA38549 for dynarec-outgoing; Wed, 6 Sep 2000 10:45:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Who framed Dynarec.com? From: "M.I.K.e" Message-ID: <000370a142666c40_mailit@mail.dynarec.com> References: <00037099c7053680_mailit@mail.dynarec.com> Date: Wed, 06 Sep 2000 19:53:56 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Now I optimised all Dynarec.com pages like hell - how about some feedback? -- M.I.K.e "I'd love to go out with you, but it's my parakeet's bowling night." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 11:02:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA38575 for dynarec-outgoing; Wed, 6 Sep 2000 11:02:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynare.com People From: "M.I.K.e" Message-ID: <000370a17ca3c2d3_mailit@mail.dynarec.com> References: <0003709bf85b7007_mailit@mail.dynarec.com> <003401c01825$a27f9260$7fc0523e@hal9000> Date: Wed, 06 Sep 2000 20:10:13 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I prefer to think you have good intentions. ;) Could you please translate that? ;-) Since I don't understand what you mean I wouldn't count on it! ;-) >Victor -- M.I.K.e "Every morning, I get up and look through the 'Forbes' list of the richest people in America. If I'm not there, I go to work" -- Robert Orben --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 11:06:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA38591 for dynarec-outgoing; Wed, 6 Sep 2000 11:06:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 6 Sep 2000 11:26:06 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Who framed Dynarec.com? In-Reply-To: <00037099c7053680_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Who's "Big boss"? > You of course ;-) I think you meant to say "big ass". ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 11:22:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA38612 for dynarec-outgoing; Wed, 6 Sep 2000 11:22:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Who framed Dynarec.com? From: "M.I.K.e" Message-ID: <000370a1c7d1c200_mailit@mail.dynarec.com> References: Date: Wed, 06 Sep 2000 20:31:14 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think you meant to say "big ass". ;-) You know yourself better than I do... ;-) >-->Neil -- M.I.K.e Oliver's Law: Experience is something you don't get until just after you need it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 12:27:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA38673 for dynarec-outgoing; Wed, 6 Sep 2000 12:27:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39B7ED6C.4B9F4D7@austin.rr.com> Date: Thu, 07 Sep 2000 12:33:01 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Seems something ate this in transit. Victor Moya del Barrio wrote: > > Nope. Too slow. Already did that with the 6502 and 6809 cores. It cut > > performance *IN HALF*. There's a better solution. > > I think your solution is impossible. > > > -->Neil > > > Victor Ahh, Mr. Bradley's fine bankswitching solution =) I believe the docs for the 6502 core mention that the preferred form isn't really useful for certain pathological cases (NES, most extremely general switches) and they would be quite correct in most cases. Here's how I deal with the problem in stanknes: (AFAIK, the only NES emulator out there using the non bankswitched form of m6502 without memcpy...) First, I'm currently restricting it to Linux. Theoretically the mmap stuff I do should port cleanly to most POSIX systems, but I haven't been able to test it on anything else. The test proggies I sent to Nyef didn't want to quite work with FreeBSD, but I think the issues are resolvable. Basically I use mmap on /dev/zero to acquire a nice large chunk of memory for the code roms, and a 64K placeholder block to use for the system ram and mapping space. I then use mmap on /proc/self/mem to set things up appropriately, with judicious use of the MAP_FIXED flag. This works for the NES as all the page sizes I've come across have been a nice even multiple of the x86 page size... Performance wise it looks to be a win overall. The overhead of the system call and subsequent TLB flush could become an issue for games that swap a LOT of rom around, but I haven't run into any problems yet. I doubt it would be a win for the graphics areas, but that's a system issue... (couple of these blasted games swap large areas of the pattern roms out 3 times per scanline...) There shouldn't be any real L1 or L2 cache issues on the x86, as the cache lines are apparantly tagged to the physical address (the intel docs are really, REALLY vague on this point) This could be done under Win95/98 and Win2K as well, but not NT. 95 and 98 are sufficiently loose as to allow you to get at the page tables for some "creative restructuring" and Win2K looks to have a sufficiently powerful API for mmap voodoo, but I don't think NT's semantics are quite appropriate... -- ReaperSMS - http://www.parodius.com/~tarquin The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 12:54:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA38708 for dynarec-outgoing; Wed, 6 Sep 2000 12:54:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005301c0183d$3e950880$7fc0523e@hal9000> From: "Victor Moya del Barrio" To: References: <39B7ED6C.4B9F4D7@austin.rr.com> Subject: Re: DYNAREC: Page bank emulation with MZ80 Date: Wed, 6 Sep 2000 22:01:26 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Ahh, Mr. Bradley's fine bankswitching solution =) > Ha! ;) > I believe the docs for the 6502 core mention that the preferred form > isn't > really useful for certain pathological cases (NES, most extremely > general > switches) and they would be quite correct in most cases. > I also found a 1MB SMS ROM so it won't work so well with it. > Basically I use mmap on /dev/zero to acquire a nice large chunk of > memory for > the code roms, and a 64K placeholder block to use for the system ram and > mapping > space. I then use mmap on /proc/self/mem to set things up appropriately, > with > judicious use of the MAP_FIXED flag. > Of course use mmap or other hardware MMUing capabilities is the very best solution. The problem is I can't use it. > the graphics areas, but that's a system issue... (couple of these > blasted games > swap large areas of the pattern roms out 3 times per scanline...) > Damn! > There shouldn't be any real L1 or L2 cache issues on the x86, as the > cache lines > are apparantly tagged to the physical address (the intel docs are > really, REALLY > vague on this point) > It was thoughting about it a days ago and that seemed the more logical, but who is logic in computers. ;) > This could be done under Win95/98 and Win2K as well, but not NT. 95 and > 98 are > sufficiently loose as to allow you to get at the page tables for some > "creative How? After the mmap talk (another mail) I searched in VC help for something similar: mmap, memory rellocation or whatever and I didn't find nothing. :( I have a really poor knowledge of Windows (where is DOS? ;). Can you give a hint or "sufficiently loose" means I would have to do the job at hand. ;) If this is true Win95/98 can only be called as *FAKE* OS. ;)) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 13:06:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA38739 for dynarec-outgoing; Wed, 6 Sep 2000 13:06:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007e01c0183e$ddbc0660$7fc0523e@hal9000> From: "Victor Moya del Barrio" To: References: <0003709bf85b7007_mailit@mail.dynarec.com> <003401c01825$a27f9260$7fc0523e@hal9000> <000370a17ca3c2d3_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynare.com People Date: Wed, 6 Sep 2000 22:13:03 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "M.I.K.e" To: Sent: Wednesday, September 06, 2000 8:10 PM Subject: Re: DYNAREC: Dynare.com People > >I prefer to think you have good intentions. ;) > > Could you please translate that? ;-) "Prefiero pensar que tienes buenas intenciones." It doesn't matter. ;) I just changed a bit my page. There isn't nothing new, only new old stuff. But if you want to take a look. ;) I will try to end it and add some content to it. Perhaps I could a WIP for my university project ... > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 13:13:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA38753 for dynarec-outgoing; Wed, 6 Sep 2000 13:13:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynare.com People From: "M.I.K.e" Message-ID: <000370a35184a0a6_mailit@mail.dynarec.com> References: <0003709bf85b7007_mailit@mail.dynarec.com> <003401c01825$a27f9260$7fc0523e@hal9000> <000370a17ca3c2d3_mailit@mail.dynarec.com> <007e01c0183e$ddbc0660$7fc0523e@hal9000> Date: Wed, 06 Sep 2000 22:21:19 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> >I prefer to think you have good intentions. ;) >> Could you please translate that? ;-) >"Prefiero pensar que tienes buenas intenciones." Thanks, now it's clear ;-) >I just changed a bit my page. There isn't nothing new, only new old stuff. >But if you want to take a look. ;) I will. BTW, just call it "vintage" ;-) >I will try to end it and add some content to it. Perhaps I could a WIP for >my university project ... Just what you think... >Victor -- M.I.K.e They're only trying to make me LOOK paranoid! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 13:14:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA38765 for dynarec-outgoing; Wed, 6 Sep 2000 13:14:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39B7F866.43F71B0E@austin.rr.com> Date: Thu, 07 Sep 2000 13:19:51 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 References: <39B7ED6C.4B9F4D7@austin.rr.com> <005301c0183d$3e950880$7fc0523e@hal9000> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Victor Moya del Barrio wrote: > > Basically I use mmap on /dev/zero to acquire a nice large chunk of > > memory for > > the code roms, and a 64K placeholder block to use for the system ram and > > mapping > > space. I then use mmap on /proc/self/mem to set things up appropriately, > > with > > judicious use of the MAP_FIXED flag. > > > Of course use mmap or other hardware MMUing capabilities is the > very best solution. The problem is I can't use it. > Hmm, that WOULD present a problem... in that case things get interesting... > > the graphics areas, but that's a system issue... (couple of these > > blasted games > > swap large areas of the pattern roms out 3 times per scanline...) > > > Damn! The array of pointers works well enough for most graphics on the NES, the problems that show up are mapper issues. One in particular is the one for Punchout. Damnable thing has tile page switches keyed to a certain tile index. Getting THAT worked out perfectly is a real &(*%@)#. > > are apparantly tagged to the physical address (the intel docs are > It was thoughting about it a days ago and that seemed the more logical, > but who is logic in computers. ;) > Heh, AFAIK keying them to logical addresses definitely wouldn't work on any chip with the L2 seperate, as it would require copying more of the MMU hardware... > How? After the mmap talk (another mail) I searched in VC help for something > similar: mmap, memory rellocation or whatever and I didn't find nothing. :( > I have a really poor knowledge of Windows (where is DOS? ;). Can you give > a hint or "sufficiently loose" means I would have to do the job at hand. ;) > If this is true Win95/98 can only be called as *FAKE* OS. ;)) > I don't remember the exact name of the Win2K API used, but for '95/98, you can coerce it into giving you access to the page tables and hack yourself into ring 0... Remember, 32 bit hack of a 16 bit shell for a 16 bit clone of an 8 bit os almost compatible with a 4 bit chip by a 2 bit company with about 1 bit of quality, and that 1 bit is usually cleared on startup... > Victor -- ReaperSMS - http://www.parodius.com/~tarquin The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 13:20:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA38780 for dynarec-outgoing; Wed, 6 Sep 2000 13:20:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008a01c01840$e30800e0$7fc0523e@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Old consoles and timing Date: Wed, 6 Sep 2000 22:26:29 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I just started to run a bit of code of a random Master System game and I found something related with timing. It was a CPU alone emulation with some functions to track down IO access, just to see if the CPU is properly initialized. This was what I get into: 00000151: LD BC,0EF3h 00000154: LD A,(HL) 00000155: LD HL,0000h 00000158: LD A,01h 0000015A: IN B,(C) 0000015C: CP B 0000015D: JR NZ,-05h <---------------- Fist part 0000015F: IN B,(C) 00000161: INC HL 00000162: JR NZ,-05h <---------------- Second part The first part loads a VDP register which is the counter of the scanline actually being drawn. It keeps looping until it sees a 1, the first scanline. Then the second part keeps looping until it reads a zero from the counter (all the frame has been displayed) while incrementing HL. Let me guess, is it for timing? To know how many Z80 cycles it takes a frame. ;P I don't want to know if I'm true what could happen if the CPU and Vertical Counter aren't correctly timed. Just the first time I try to do some real emulation and I find it. So as says Neil timing is the most important. ;) It is the game "Terminator 2". Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 13:32:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA38797 for dynarec-outgoing; Wed, 6 Sep 2000 13:30:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009801c01842$3498a120$7fc0523e@hal9000> From: "Victor Moya del Barrio" To: References: <39B7ED6C.4B9F4D7@austin.rr.com> <005301c0183d$3e950880$7fc0523e@hal9000> <39B7F866.43F71B0E@austin.rr.com> Subject: Re: DYNAREC: Page bank emulation with MZ80 Date: Wed, 6 Sep 2000 22:36:46 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The array of pointers works well enough for most graphics on the NES, the > problems that show up are mapper issues. One in particular is the one for > Punchout. Damnable thing has tile page switches keyed to a certain tile index. > Getting THAT worked out perfectly is a real &(*%@)#. > I will remember to don't try to emulate the NES. ;) > > How? After the mmap talk (another mail) I searched in VC help for something > > similar: mmap, memory rellocation or whatever and I didn't find nothing. :( > > I have a really poor knowledge of Windows (where is DOS? ;). Can you give > > a hint or "sufficiently loose" means I would have to do the job at hand. ;) > > If this is true Win95/98 can only be called as *FAKE* OS. ;)) > > > > I don't remember the exact name of the Win2K API used, but for '95/98, you can > coerce it into giving you access to the page tables and hack yourself into ring > 0... > I will try to learn about it ... someday. > Remember, 32 bit hack of a 16 bit shell for a 16 bit clone of an 8 bit os almost > compatible with a 4 bit chip by a 2 bit company with about 1 bit of quality, and > that 1 bit is usually cleared on startup... > He! This is a good summary of the history of any old architecture, computer or OS family. I don't want to know the hacks of some of the IBM families ... And the stories continues: new IA-64 hardware compatible with IA-32. ;) > > Victor > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 13:33:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA38803 for dynarec-outgoing; Wed, 6 Sep 2000 13:31:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynare.com People From: "M.I.K.e" Message-ID: <000370a394dee11c_mailit@mail.dynarec.com> References: <0003709bf85b7007_mailit@mail.dynarec.com> <003401c01825$a27f9260$7fc0523e@hal9000> <000370a17ca3c2d3_mailit@mail.dynarec.com> <007e01c0183e$ddbc0660$7fc0523e@hal9000> Date: Wed, 06 Sep 2000 22:40:09 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I just changed a bit my page. There isn't nothing new, only new old stuff. >But if you want to take a look. ;) Look quite different now and much longer! BTW, did you write the 'Neil "Big Boss" Bradley' before or after I called him that way? I forgot to ask if you agree with what I wrote on the People page. Somehow I think you deserve a better comment but I seem to but out of inspirations... >Victor -- M.I.K.e Williams and Holland's Law: If enough data is collected, anything may be proven by statistical methods. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 14:34:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA38867 for dynarec-outgoing; Wed, 6 Sep 2000 14:30:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39B80A5D.BC7B838D@austin.rr.com> Date: Thu, 07 Sep 2000 14:36:29 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Old consoles and timing References: <008a01c01840$e30800e0$7fc0523e@hal9000> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Victor Moya del Barrio wrote: > incrementing HL. Let me guess, is it for timing? To know how many Z80 > cycles it > takes a frame. ;P I don't want to know if I'm true what could happen if the > CPU and > Vertical Counter aren't correctly timed. > If you described that code snippet correctly, then that's what it sounds like. My guess would be a mechanism to hide the difference between NTSC and PAL displays. Timing is always the most important thing =P > Just the first time I try to do some real emulation and I find it. So as > says Neil timing is the most important. ;) The older the console, the meaner the timing requirements. Look at the 2600 for extreme cases... > Victor -- ReaperSMS - http://www.parodius.com/~tarquin The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 14:40:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA38883 for dynarec-outgoing; Wed, 6 Sep 2000 14:36:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000906143755.00822800@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 06 Sep 2000 14:37:55 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K LINK/UNLK question In-Reply-To: <0003709df04b0781_mailit@mail.dynarec.com> References: <3.0.5.32.20000905140449.008206e0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>sub ecx, byte 16 >>js near Genital68KRun_done >>mov di, [esi] >>add esi, byte 2 >>jmp dword [jmptab+edi*4] > >This seems to be correct apart from the fact that LINK needs 18 clockcycles >instead of 16... The "M68000 Microprocessor User's Manual Ninth Edition" begs to differ. It says 16 :) >According to my book UNLK An is equivalent to: > movea.l An, A7 > movea.l (A7)+, An >And I really don't see any error in your code... Hmmmmm.... It might be my RTS code then. But I've tested RTS and it always works. Odd! I'll look into it further... Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 15:17:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA38927 for dynarec-outgoing; Wed, 6 Sep 2000 15:17:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000906151849.00824e90@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 06 Sep 2000 15:18:49 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Trustworthiness of C compilers Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, In my attempts to find the problem in my LINK/UNLK code, I took a close look at my read/write handlers and noticed I was doing: push ebx ; save address call dword [edi+12] ; call handler pop ebx ; restore the address This should work as long as the called function doesn't modify the variable passed to it, correct? Because if not, I would be in trouble. I don't see any reasons as to why it should modify the variable, though. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 15:36:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA38951 for dynarec-outgoing; Wed, 6 Sep 2000 15:36:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K LINK/UNLK question From: "M.I.K.e" Message-ID: <000370a548ab01e3_mailit@mail.dynarec.com> References: <3.0.5.32.20000905140449.008206e0@powernet.net> <3.0.5.32.20000906143755.00822800@powernet.net> Date: Thu, 07 Sep 2000 00:42:01 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>This seems to be correct apart from the fact that LINK needs 18 clockcycles >>instead of 16... >The "M68000 Microprocessor User's Manual Ninth Edition" begs to differ. It >says 16 :) Strange Starscream uses 16 as well... Hmm, I don't think it's cause a timing problem anyway. >>And I really don't see any error in your code... >Hmmmmm.... It might be my RTS code then. But I've tested RTS and it always >works. Odd! I'll look into it further... RTS is so simple that it shouldn't be a problem, especially when it works correctly otherwise. BTW, this is what I found in Starscream: static void i_link(void){ usereg(); emit("mov ecx,[__areg+ebx*4]\n"); ea_store(4,adec,7); emit("mov ecx,[__a7]\n"); emit("mov [__areg+ebx*4],ecx\n"); emit("movsx edx,word[esi]\n"); emit("add ecx,edx\n"); emit("mov [__a7],ecx\n"); emit("add esi,byte 2\n"); ret_timing(16); } static void i_unlk(void){ usereg(); emit("mov ecx,[__areg+ebx*4]\n"); emit("mov [__a7],ecx\n"); ea_load(4,ainc,7); emit("mov [__areg+ebx*4],ecx\n"); ret_timing(12); } And this is the generated code: ; Opcodes 4E50 - 4E57 OE50: and ebx,byte 7 mov ecx,[__areg+ebx*4] mov edx,[__areg+28] sub edx,byte 4 call writememorydword mov [__areg+28],edx mov ecx,[__a7] mov [__areg+ebx*4],ecx movsx edx,word[esi] add ecx,edx mov [__a7],ecx add esi,byte 2 sub edi,byte 16 jmp execend ; Opcodes 4E58 - 4E5F OE58: and ebx,byte 7 mov ecx,[__areg+ebx*4] mov [__a7],ecx mov edx,[__areg+28] call readmemorydword add edx,byte 4 mov [__areg+28],edx mov [__areg+ebx*4],ecx sub edi,byte 12 jmp execend I'm a bit too lazy to check it right now, but maybe it helps you? >Bart -- M.I.K.e A diva who specializes in risqu'e arias is an off-coloratura soprano ... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 15:59:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA38976 for dynarec-outgoing; Wed, 6 Sep 2000 15:59:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 6 Sep 2000 16:19:36 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 In-Reply-To: <39B7ED6C.4B9F4D7@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > -->Neil > > Victor > Ahh, Mr. Bradley's fine bankswitching solution =) Hey... don't knock it. ;-) > I believe the docs for the 6502 core mention that the preferred form > isn't really useful for certain pathological cases (NES, most > extremely general switches) and they would be quite correct in most > cases. The NES is an exception. You can absolutely friggin' nuts with bankswitching there, and doing the entire combination of ROMs available makes the "switch the entire 64K map" approach impractical. That's why I added bankswitching to the 6502 core I released. > Here's how I deal with the problem in stanknes: (AFAIK, the only NES > out there using the non bankswitched form of m6502 without memcpy...) And that's precisely the reason I created it. > Basically I use mmap on /dev/zero to acquire a nice large chunk of > memory for the code roms, and a 64K placeholder block to use for the > system ram and mapping space. I then use mmap on /proc/self/mem to set > things up appropriately, with judicious use of the MAP_FIXED flag. This is a really cool approach for OSes that give you this ability. > Performance wise it looks to be a win overall. The overhead of the > system call and subsequent TLB flush could become an issue for games > that swap a LOT of rom around, but I haven't run into any problems > yet. I doubt it would be a win for the graphics areas, but that's a > system issue... (couple of these blasted games swap large areas of the > pattern roms out 3 times per scanline...) That sucks. Perhaps you could predecode all banks somehow and keep them around. That might not be so memory hungry. > There shouldn't be any real L1 or L2 cache issues on the x86, as the > cache lines are apparantly tagged to the physical address (the intel > docs are really, REALLY vague on this point) It's tagged to the physical address. Guaranteed. I know this from my stint on the 450NX. > The difference between math and physics is the difference between > masturbation and sex. 9 Out of 10 men who've tried Camels prefer women. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 16:00:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA38993 for dynarec-outgoing; Wed, 6 Sep 2000 16:00:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 6 Sep 2000 16:20:25 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 In-Reply-To: <005301c0183d$3e950880$7fc0523e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > general > > switches) and they would be quite correct in most cases. > I also found a 1MB SMS ROM so it won't work so well with it. Well... ass. Hey Victor, wanna add a bankswitching option to MZ80? > Of course use mmap or other hardware MMUing capabilities is the > very best solution. The problem is I can't use it. Why not? -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 16:04:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA39002 for dynarec-outgoing; Wed, 6 Sep 2000 16:04:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 6 Sep 2000 16:24:17 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Old consoles and timing In-Reply-To: <008a01c01840$e30800e0$7fc0523e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The first part loads a VDP register which is the counter of the > scanline actually being drawn. It keeps looping until it sees a 1, > the first scanline. Then the second part keeps looping until it reads > a zero from the counter (all the frame has been displayed) while > incrementing HL. Let me guess, is it for timing? To know how many > Z80 cycles it takes a frame. ;P I don't want to know if I'm true what > could happen if the CPU and Vertical Counter aren't correctly timed. Most likely you'll get blinky, flickery sprites. A lot of old games couldn't put enough sprites on the screen at any given time, so they tracked the scanline. As it had already drawn a group of sprites in the first half of the screen, it'd reload the sprite engine so they could display the rest on the bottom. This is a very common trick for older games to do to get more display capabilities out of the hardware. The Atari games and especially the 34010 Williams games were notorious for this. > Just the first time I try to do some real emulation and I find it. So as > says Neil timing is the most important. ;) Oh yes. Now you are fully empathizing with why I was screaming when people were talking about glossing over the timing! -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 16:08:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA39015 for dynarec-outgoing; Wed, 6 Sep 2000 16:08:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39B82127.7075F0C3@austin.rr.com> Date: Thu, 07 Sep 2000 16:13:43 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Trustworthiness of C compilers References: <3.0.5.32.20000906151849.00824e90@powernet.net> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Bart wrote: > push ebx ; save address > call dword [edi+12] ; call handler > pop ebx ; restore the address > > This should work as long as the called function doesn't modify the variable > passed to it, correct? Because if not, I would be in trouble. I don't see > any reasons as to why it should modify the variable, though. > Assuming you're using C, it has no right calling itself a C compiler if void foo(int i) { i++; } int main(void) { int j = 2; foo(j); } changes j in main. I don't believe even Pascal is quite that clueless, excluding pass by reference... > > Bart > > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. -- ReaperSMS - http://www.parodius.com/~tarquin The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 16:11:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA39028 for dynarec-outgoing; Wed, 6 Sep 2000 16:11:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 6 Sep 2000 16:31:48 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Trustworthiness of C compilers In-Reply-To: <3.0.5.32.20000906151849.00824e90@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > call dword [edi+12] ; call handler > pop ebx ; restore the address > This should work as long as the called function doesn't modify the variable > passed to it, correct? Because if not, I would be in trouble. I don't see > any reasons as to why it should modify the variable, though. No, it won't modify the variable. You're doing a call by value. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 16:18:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA39041 for dynarec-outgoing; Wed, 6 Sep 2000 16:18:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000906161928.0081d920@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 06 Sep 2000 16:19:28 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K LINK/UNLK question In-Reply-To: <000370a548ab01e3_mailit@mail.dynarec.com> References: <3.0.5.32.20000905140449.008206e0@powernet.net> <3.0.5.32.20000906143755.00822800@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >RTS is so simple that it shouldn't be a problem, especially when it works >correctly otherwise. I checked over it, and it's fine. :) > >BTW, this is what I found in Starscream: > They are functionally equivalent to my code. Anyhow, what I've found is that my LINK/UNLK are perfectly fine. But I'm clueless as to what the problem is. I thought that perhaps it was because I wasn't emulating MOVEM (many Genesis games and demos use it to set up initial reg values) but it turns out it wasn't important at all. The code sequence where things go haywire is as follows: 0x000002FC: 0x4A79 0x00C0 0x0004 TST.W 0xC00004 0x00000302: 0x9FCF SUBA.L A7,A7 0x00000304: 0x46FC 0x2300 MOVE #0x2300,SR 0x00000308: 0x41F9 0x00FF 0x0000 LEA 0xFF0000,A0 0x0000030E: 0x7000 MOVEQ #0x0,D0 0x00000310: 0x30FC 0x0000 MOVE.W #0x0,(A0)+ 0x00000314: 0x5540 SUBQ.W #2,D0 0x00000316: 0x66F8 BNE.S *-0x6 [0x310] 0x00000318: 0x4EF9 0x0000 0x0324 JMP 0x324 | V 0x00000324: 0x4E56 0x0000 LINK A6,#0x0 0x00000328: 0x610E BSR.S *+0x10 [0x338] | V 0x00000338: 0x4E56 0x0000 LINK A6,#0x0 0x0000033C: 0x2F0B MOVE.L A3,-(A7) 0x0000033E: 0x267C 0x00C0 0x0004 MOVEA.L #0xC00004,A3 0x00000344: 0x36BC 0x8016 MOVE.W #0x8016,(A3) 0x00000348: 0x36BC 0x8174 MOVE.W #0x8174,(A3) 0x0000034C: 0x36BC 0x8238 MOVE.W #0x8238,(A3) 0x00000350: 0x36BC 0x8338 MOVE.W #0x8338,(A3) 0x00000354: 0x36BC 0x8407 MOVE.W #0x8407,(A3) 0x00000358: 0x36BC 0x857E MOVE.W #0x857E,(A3) 0x0000035C: 0x36BC 0x8600 MOVE.W #0x8600,(A3) 0x00000360: 0x36BC 0x8700 MOVE.W #0x8700,(A3) 0x00000364: 0x36BC 0x8801 MOVE.W #0x8801,(A3) 0x00000368: 0x36BC 0x8901 MOVE.W #0x8901,(A3) 0x0000036C: 0x36BC 0x8A01 MOVE.W #0x8A01,(A3) 0x00000370: 0x36BC 0x8B00 MOVE.W #0x8B00,(A3) 0x00000374: 0x36BC 0x8C08 MOVE.W #0x8C08,(A3) 0x00000378: 0x36BC 0x8D08 MOVE.W #0x8D08,(A3) 0x0000037C: 0x36BC 0x8F02 MOVE.W #0x8F02,(A3) 0x00000380: 0x36BC 0x9000 MOVE.W #0x9000,(A3) 0x00000384: 0x36BC 0x9100 MOVE.W #0x9100,(A3) 0x00000388: 0x36BC 0x92FF MOVE.W #0x92FF,(A3) 0x0000038C: 0x265F MOVEA.L (A7)+,A3 0x0000038E: 0x4E5E UNLK A6 0x00000390: 0x4E75 RTS At 0x38E, that last UNLK causes A6 to be set fine, but the way things work out, A7 gets set to 0 (and I looked through the relevant stack RAM and noticed that this is what should happen). But why things get set up like this, I don't know... This is really a chore to look through, but any obvious things you might see would be most helpful :) I'm going to continue sorting through this code to see what I can find. 0xFF0000-0xFFFFFF==Genesis RAM 0xE00000-0xFFFFFF==Genesis RAM (mirrored every 64K, this program only uses 0xFF0000-0xFFFFFF) I'm going to check to see how A6 might be affecting all of this. I'm fairly certain that early on in the program (not shown above anywhere) that A6 is set to some invalid value (because my MOVEM implementation is just a stub, and doesn't do anything) but then I think it is explicitly loaded to a usable value. But I might be dreaming and it could be MOVEM all along, but I doubt it. Thanks! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 16:23:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA39054 for dynarec-outgoing; Wed, 6 Sep 2000 16:23:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000906162430.00823420@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 06 Sep 2000 16:24:30 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Trustworthiness of C compilers In-Reply-To: <39B82127.7075F0C3@austin.rr.com> References: <3.0.5.32.20000906151849.00824e90@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 04:13 PM 9/7/2000 -0700, you wrote: >Bart wrote: > >> push ebx ; save address >> call dword [edi+12] ; call handler >> pop ebx ; restore the address >> >> This should work as long as the called function doesn't modify the variable >> passed to it, correct? Because if not, I would be in trouble. I don't see >> any reasons as to why it should modify the variable, though. >> > >Assuming you're using C, it has no right calling itself a C compiler if > >void foo(int i) >{ > i++; >} > >int main(void) >{ > int j = 2; >foo(j); >} > >changes j in main. I don't believe even Pascal is quite that clueless, >excluding pass by reference... Ah, but the C compiler could be push j on the stack, and then foo() increments the stack data, but when foo() returns, main() adds 4 to ESP (not returning it to its real location in memory) thereby creating the "pass by value" effect :) But in my program, I actually return EBX from the stack. So if another function was using it while it was on the stack, it would cause problems. Here's an example of what I am worried about: push ebx call _foo pop ebx ... _foo: inc dword [esp+4] ret A C compiler would omit the "pop ebx" and might use "add esp, 4", thus the actual value would not be changed. But since I'm using "pop ebx" it might be possible that it gets changed. I want to keep using my way and thinking that the C compiler will never produce code that screws up, but it could. I'm afraid that even the following: int foo(unsigned addr) { unsigned j=addr; j++; return 0; } might translate into the _foo I demonstrated above. Hope that made sense ... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 16:30:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA39071 for dynarec-outgoing; Wed, 6 Sep 2000 16:30:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000906163056.008258a0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 06 Sep 2000 16:30:56 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Trustworthiness of C compilers In-Reply-To: References: <3.0.5.32.20000906151849.00824e90@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 04:31 PM 9/6/2000 +0000, you wrote: >> call dword [edi+12] ; call handler >> pop ebx ; restore the address >> This should work as long as the called function doesn't modify the variable >> passed to it, correct? Because if not, I would be in trouble. I don't see >> any reasons as to why it should modify the variable, though. > >No, it won't modify the variable. You're doing a call by value. I see you used it in Make68K. So I guess you're right :) But, what if a handler did this: void handler(unsigned addr, unsigned data) { addr += 4; } Is it possible that addr might be modified when I go to pop ebx? In that case, I can include a guideline against that sort of behavior in my documentation. But I'm worried that if addr is copied into a different variable, that the compiler might make an optimization which eliminates that second variable, and simply operates on the stack or something.... like I mentioned in my last message with the _foo example. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 16:51:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA39095 for dynarec-outgoing; Wed, 6 Sep 2000 16:51:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 6 Sep 2000 17:11:11 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Trustworthiness of C compilers In-Reply-To: <3.0.5.32.20000906163056.008258a0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >No, it won't modify the variable. You're doing a call by value. > I see you used it in Make68K. So I guess you're right :) > But, what if a handler did this: > void handler(unsigned addr, unsigned data) > { > addr += 4; > } > Is it possible that addr might be modified when I go to pop ebx? No, because when you have a stack frame, it'll create a "sub esp, 8" to put both the "addr" and "data". Those are local variables allocated on the stack. It would not modify the source variables. Think about it - if it did that, then absolutely nothing would work right. > variable, that the compiler might make an optimization which eliminates > that second variable, and simply operates on the stack or something.... > like I mentioned in my last message with the _foo example. The compiler won't do that. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 17:35:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA39140 for dynarec-outgoing; Wed, 6 Sep 2000 17:35:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39B83597.8BB2AEF4@austin.rr.com> Date: Thu, 07 Sep 2000 17:40:55 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > > > -->Neil > > > Victor > > Ahh, Mr. Bradley's fine bankswitching solution =) > > Hey... don't knock it. ;-) > Wasn't, if it works it works, just not necessarily the most optimal of solutions =) On the other hand, the TLB flushes could be avoided without the wasted physical memory through the wonderful magic of page aliasing... > The NES is an exception. You can absolutely friggin' nuts with > bankswitching there, and doing the entire combination of ROMs available > makes the "switch the entire 64K map" approach impractical. That's why I > added bankswitching to the 6502 core I released. Last I checked, 2/3 of the source files for the emulator were bankswitch chips... The fact that a few of them added extra sound channels and one in particular that actually screws with the rendering don't help things much... > > Here's how I deal with the problem in stanknes: (AFAIK, the only NES > > out there using the non bankswitched form of m6502 without memcpy...) > > And that's precisely the reason I created it. Yes, but it's slower =) > > Basically I use mmap on /dev/zero to acquire a nice large chunk of > > memory for the code roms, and a 64K placeholder block to use for the > > system ram and mapping space. I then use mmap on /proc/self/mem to set > > things up appropriately, with judicious use of the MAP_FIXED flag. > > This is a really cool approach for OSes that give you this ability. The even cooler part is that on at least Linux, you can have this block mapped in at virtual address 0, eliminating one layer of indirection, with some slight alterations to handle read/write traps. > > yet. I doubt it would be a win for the graphics areas, but that's a > > system issue... (couple of these blasted games swap large areas of the > > pattern roms out 3 times per scanline...) > > That sucks. Perhaps you could predecode all banks somehow and keep them > around. That might not be so memory hungry. The last time I checked on possibly predecoding all the sprite roms beforehand, I believe the extra copying/flushes removed any bonuses. The decode expands the tile data by a factor of 4, and still requires some extra encoding to deal with the attribute. On the upside, I've been pondering some rather devious caching schemes that should eliminate a LARGE portion of the processing... > It's tagged to the physical address. Guaranteed. I know this from my stint > on the 450NX. That's good to know, it seemed the most likely situation but you never know... > > The difference between math and physics is the difference between > > masturbation and sex. > > 9 Out of 10 men who've tried Camels prefer women. heh > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Stability, performance, reliability, power: > Synthcom Systems, Inc. http://www.freebsd.org > ICQ #29402898 -- ReaperSMS - http://www.parodius.com/~tarquin The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 18:43:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA39194 for dynarec-outgoing; Wed, 6 Sep 2000 18:43:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 6 Sep 2000 19:03:13 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 In-Reply-To: <39B83597.8BB2AEF4@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > Victor > > > Ahh, Mr. Bradley's fine bankswitching solution =) > > Hey... don't knock it. ;-) > Wasn't, if it works it works, just not necessarily the most optimal of > solutions =) Define "optimal". If performance is the key, it is the optimal solution. If > On the other hand, the TLB flushes could be avoided without the wasted > physical memory through the wonderful magic of page aliasing... Definitely the way to go if you have it! > > > Here's how I deal with the problem in stanknes: (AFAIK, the only NES > > > out there using the non bankswitched form of m6502 without memcpy...) > > And that's precisely the reason I created it. > Yes, but it's slower =) I meant the bankswitched version. But yes, it's slower than the nonbankswitched version, and with all possibilities of NES ROMs, you'd have to allocate tens of megabytes of RAM for all ROM possibilities. The problem is, no matter what I do architecturally to m6502, it slows it down. I think it has pretty much hit the peak of optimization. Adding in bank switching knocks performance down by 50%. Doing the 64K page approach slows it down by about 10%. Take your pick! > The last time I checked on possibly predecoding all the sprite roms > beforehand, I believe the extra copying/flushes removed any bonuses. > The decode expands the tile data by a factor of 4, and still requires > some extra encoding to deal with the attribute. On the upside, I've > been pondering some rather devious caching schemes that should > eliminate a LARGE portion of the processing... I'd just let the system's cache deal with it. It's going to be a much better cacher than you or I could ever possibly be. ;-) Some day, remind me to tell you the story of the guy who actually thought that his record caching algorithm could outperform the OS's paging system (even though his caching alogorithm ran on top of the OS's paging system!) -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 18:45:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA39207 for dynarec-outgoing; Wed, 6 Sep 2000 18:45:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 6 Sep 2000 19:05:53 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 In-Reply-To: <39B83597.8BB2AEF4@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neglected to mention there were several NES emulators (now defunct) who are (were) using m6502 in bankswitched mode. Nofrendo was one of them until Matt wanted to write his own core for the education. What a masochist! -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 18:47:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA39217 for dynarec-outgoing; Wed, 6 Sep 2000 18:47:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 6 Sep 2000 19:07:52 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 In-Reply-To: <39B83597.8BB2AEF4@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com And what chaps my ass about this is that every frigging time someone has bankswitching issues, I present the 64K paged solution (in most cases they aren't oodles of combinations) and half the time people are so lazy or stupid that they can't comprehend the concept. The other half go "Gee, why didn't I think of that?", and peace is had by all. ;-) It's like I'm talking a foreign language to them. The banked 64K approach is excellent provided you don't have jillions of combinations and memory isn't a concern. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 19:09:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA39242 for dynarec-outgoing; Wed, 6 Sep 2000 19:09:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39B84BC1.59C0E125@austin.rr.com> Date: Thu, 07 Sep 2000 19:15:29 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > > > > Victor > > > > Ahh, Mr. Bradley's fine bankswitching solution =) > > > Hey... don't knock it. ;-) > > Wasn't, if it works it works, just not necessarily the most optimal of > > solutions =) > > Define "optimal". If performance is the key, it is the optimal solution. > If > Maximizing speed and flexibility while minimizing memory usage of course =) > I'd just let the system's cache deal with it. It's going to be a much > better cacher than you or I could ever possibly be. ;-) > The problem I run into with it isn't dealing with the tile bank swapping, it's with the actual rendering. Right now there is a LOT of redundant processing going on (no dirty rectangle updates for instance) System caching doesn't quite help here =) > Some day, remind me to tell you the story of the guy who actually thought > that his record caching algorithm could outperform the OS's paging system > (even though his caching alogorithm ran on top of the OS's paging system!) Heh, outperforming malloc by using mmap and dealing with the rest on your own is one thing... trying to outperform the VM system... that's something else =) > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Stability, performance, reliability, power: > Synthcom Systems, Inc. http://www.freebsd.org > ICQ #29402898 -- ReaperSMS - http://www.parodius.com/~tarquin The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 19:26:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA39264 for dynarec-outgoing; Wed, 6 Sep 2000 19:26:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 6 Sep 2000 19:46:04 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 In-Reply-To: <39B84BC1.59C0E125@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Wasn't, if it works it works, just not necessarily the most optimal of > > > solutions =) > > Define "optimal". If performance is the key, it is the optimal solution. > > If > Maximizing speed and flexibility while minimizing memory usage of course =) Or more like sacrificing speed for "ease of programming" and using less memory. ;-( Something tells me there's a much, much better way to do bankswitching (even without the nmap stuff). > > I'd just let the system's cache deal with it. It's going to be a much > > better cacher than you or I could ever possibly be. ;-) > The problem I run into with it isn't dealing with the tile bank > swapping, it's with the actual rendering. Right now there is a LOT of > redundant processing going on (no dirty rectangle updates for > instance) System caching doesn't quite help here =) Yeouch! Dirty rectangling will give you a huge speed increase - even on games that you wouldn't hink would! Of course, scrollers you'd be completely screwed, but some of them don't scroll at full framerates. > > Some day, remind me to tell you the story of the guy who actually thought > > that his record caching algorithm could outperform the OS's paging system > > (even though his caching alogorithm ran on top of the OS's paging system!) > Heh, outperforming malloc by using mmap and dealing with the rest on > your own is one thing... trying to outperform the VM system... that's > something else =) Oh yeah. He never did consider the fact that all of his operations were running *ON* the VM subsystem! -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 6 20:03:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA39300 for dynarec-outgoing; Wed, 6 Sep 2000 20:03:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39B85862.8C886210@austin.rr.com> Date: Thu, 07 Sep 2000 20:09:23 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > > > Wasn't, if it works it works, just not necessarily the most optimal of > > > > solutions =) > > > Define "optimal". If performance is the key, it is the optimal solution. > > > If > > Maximizing speed and flexibility while minimizing memory usage of course =) > > Or more like sacrificing speed for "ease of programming" and using less > memory. ;-( > That's where mmap came in =P > Something tells me there's a much, much better way to do bankswitching > (even without the nmap stuff). > I seem to remember N. Corlett mentioning something on IRC once, didn't get a full description out of him, but he said it was used in Starscream (I think, this was a while ago). Seemed to work off of negative offsets, IE base would point at the end of the block, pc would be relative to it, and you'd get notified of possible bank changes when pc wraps... > > The problem I run into with it isn't dealing with the tile bank > > swapping, it's with the actual rendering. Right now there is a LOT of > > redundant processing going on (no dirty rectangle updates for > > instance) System caching doesn't quite help here =) > > Yeouch! Dirty rectangling will give you a huge speed increase - even on > games that you wouldn't hink would! Of course, scrollers you'd be > completely screwed, but some of them don't scroll at full framerates. The plan I've been hacking out in my head involves a bit of line caching. Basically I'm thinking of caching the results of the decoded background line, before sprite overlaying or color indexing. Simple scrolling changes would be free (fine hscrolls would merely change a shift value, coarse xscrolls might require regenerating a tile or two, y scrolling should be as simple as incrementing the linecache index...) more complex ones dealing with splitscreens would be almost free. (check against the scroll reg val) The fact that each plane of the decoded scanline is exactly the same length as an intel cache line is quite nice as well... Oh yeah, I'm using a planar renderer as well =P The last bit of profiling info I have runs something like 20% background tile voodoo, 12% sprite tile voodoo, 7% transparency voodoo, 50% planar decode/color expansion, 11% everything else. Granted, this is going by gprof's output, and I'm not sure how well it profiles the cpu core... I really need to get linux bootable again for testing... > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Stability, performance, reliability, power: > Synthcom Systems, Inc. http://www.freebsd.org > ICQ #29402898 -- ReaperSMS - http://www.parodius.com/~tarquin The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 7 00:20:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA39494 for dynarec-outgoing; Thu, 7 Sep 2000 00:20:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009070723.JAA06640@pons.ac.upc.es> Subject: Re: DYNAREC: Page bank emulation with MZ80 In-Reply-To: "from Neil Bradley at Sep 6, 2000 04:20:25 pm" To: dynarec@dynarec.com Date: Thu, 7 Sep 2000 09:23:29 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > general > > > switches) and they would be quite correct in most cases. > > I also found a 1MB SMS ROM so it won't work so well with it. > > Well... ass. Hey Victor, wanna add a bankswitching option to MZ80? > With 1 MB ROM still would work but 16 MB for a simple Master System emulator is too much memory. I think it won't be a problem to add bankswitching to MZ80, it would be a problem of just changing the emiter of the memory handler code. ;) Oh! Perhaps the instruction fetch could be a problem. If noone else has told you about adding bankswitching to MZ80 it would make the effort? Or may it would be only for fun. ;) > > Of course use mmap or other hardware MMUing capabilities is the > > very best solution. The problem is I can't use it. > > Why not? > Lack of knowledge. :( > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 7 00:25:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA39507 for dynarec-outgoing; Thu, 7 Sep 2000 00:25:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009070730.JAA17146@pons.ac.upc.es> Subject: Re: DYNAREC: Dynare.com People In-Reply-To: <000370a394dee11c_mailit@mail.dynarec.com> "from M.I.K.e at Sep 6, 2000 10:40:09 pm" To: dynarec@dynarec.com Date: Thu, 7 Sep 2000 09:30:53 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > BTW, did you write the 'Neil "Big Boss" Bradley' before or after I called him > that way? > After. But sometime ago I thought in call him "The Boss" or something like this in a mail, but I change my mind to avoid problems. ;) > I forgot to ask if you agree with what I wrote on the People page. Somehow I > think you deserve a better comment but I seem to but out of inspirations... > My answer was that confusing mail before. ;) It's ok. Why you always keep the more "strange" description for me? ;) > -- > M.I.K.e Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 7 07:06:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA39984 for dynarec-outgoing; Thu, 7 Sep 2000 07:06:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com Subject: DYNAREC: M68K flag usage information From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Thu, 7 Sep 2000 16:19:29 +0200 Message-ID: <1egljnp.mrmp444p5jjaM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id HAA39981 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, I would like a clarification about the flag use/set definition for the m68k. Let's take for example the MOVE instruction: X : unaffected N : set if the result is negative, cleared otherwise Z : set if the result is zero, cleared otherwise V : always cleared C : always cleared [I am taking the XNZVC notation order] The defs are clear: -NZ00 As for the uses: X---- Should I stick with X used ? The MOVE instruction does not explicitely use that flag but, it does not affect it therefore everything would go as if the instruction used it actually, right ? Or letting nothing used (-----) should work as well ? I think I should mark X as used and therefore would probably have to update the UAE and my core tables... Thanks. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 7 11:33:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA40204 for dynarec-outgoing; Thu, 7 Sep 2000 11:33:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 7 Sep 2000 11:53:29 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 In-Reply-To: <200009070723.JAA06640@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I think it won't be a problem to add bankswitching to MZ80, it > would be a problem of just changing the emiter of the memory > handler code. ;) Oh! Perhaps the instruction fetch could be > a problem. Nope. The only time you do a refetch of the table is when a change of PC happens in emulation. I've yet to find a game that executes across boundaries without doing a jump. Same deal with the MAMEDEVians. > If noone else has told you about adding bankswitching to MZ80 > it would make the effort? Or may it would be only for fun. ;) After doing as many cores (and redoing them, too) as I have, "fun" is not the right word for doing such mods. ;-) IT shouldn't be too tough. Why not have a go at it, Victor? -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 7 11:44:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA40225 for dynarec-outgoing; Thu, 7 Sep 2000 11:44:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004b01c018fc$9ea96260$9dc4523e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: Page bank emulation with MZ80 Date: Thu, 7 Sep 2000 20:51:19 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I think it won't be a problem to add bankswitching to MZ80, it > > would be a problem of just changing the emiter of the memory > > handler code. ;) Oh! Perhaps the instruction fetch could be > > a problem. > > Nope. The only time you do a refetch of the table is when a change of PC > happens in emulation. I've yet to find a game that executes across > boundaries without doing a jump. Same deal with the MAMEDEVians. > I took a look to your m6502 core so I was guessing it. ;) Someone can say I'm cheating taking a look to your source but it is the way I work. I'm the kind of guy who doesn't care if someone told him the end of a movie or a book (or the full story) I still get the same fun from it. > > If noone else has told you about adding bankswitching to MZ80 > > it would make the effort? Or may it would be only for fun. ;) > > After doing as many cores (and redoing them, too) as I have, "fun" is not > the right word for doing such mods. ;-) IT shouldn't be too tough. Why not > have a go at it, Victor? > He,he! What will it be? Madness perhaps. ;) I will try. But it won't be today because I'm upgrading an old 400 MB HD to a new 20 GB one. What an update! :) > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 7 16:09:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA40449 for dynarec-outgoing; Thu, 7 Sep 2000 16:09:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: New BinTrans Docs From: "M.I.K.e" Message-ID: <000370b9e55d2189_mailit@mail.dynarec.com> Date: Fri, 08 Sep 2000 01:17:29 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I found some new docs about binary translation today. The first is an introduction to binary translation, and it's quite interesting. The second is a doc about Aries the dynamic translator from HP, which will translate PA-RISC code to IA-64 code. I uploaded both docs and they should be available here: http://www.dynarec.com/~mike/docs/BTintro.pdf http://www.dynarec.com/~mike/docs/PA2IA64.pdf -- M.I.K.e A budget is just a method of worrying before you spend money, as well as afterward. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 7 16:09:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA40458 for dynarec-outgoing; Thu, 7 Sep 2000 16:09:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynare.com People From: "M.I.K.e" Message-ID: <000370b9c4a0efbf_mailit@mail.dynarec.com> References: <200009070730.JAA17146@pons.ac.upc.es> Date: Fri, 08 Sep 2000 01:08:20 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >After. But sometime ago I thought in call him "The Boss" or >something like this in a mail, Must have forgotten that one... >but I change my mind to avoid problems. ;) What problems? ;-) >My answer was that confusing mail before. ;) Ahso... >It's ok. Why you always keep the more "strange" description >for me? ;) Because you are strange? ;-) Actually, it's relatively easy to write what I do, NB simply *is* the mastermind, and I also know NG much better now. I still have some problems to characterize you. Sometimes I even think you're the "soul" of the mailing list, since it's always crowded when you start a discussion, and it was rather silent when you were on holidays. I think you should be the specialist for static binary translation, and you certainly invented some terms and proved some theories wrong. Now, how do I put that into a short characterization... >Victor -- M.I.K.e "...and the fully armed nuclear warheads, are, of course, merely a courtesy detail." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 7 16:09:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA40459 for dynarec-outgoing; Thu, 7 Sep 2000 16:09:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: M68K flag usage information From: "M.I.K.e" Message-ID: <000370b9afce49a0_mailit@mail.dynarec.com> References: <1egljnp.mrmp444p5jjaM@[192.168.0.2]> Date: Fri, 08 Sep 2000 01:02:30 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I would like a clarification about the flag use/set definition for the >m68k. Let's take for example the MOVE instruction: >X : unaffected >N : set if the result is negative, cleared otherwise >Z : set if the result is zero, cleared otherwise >V : always cleared >C : always cleared >[I am taking the XNZVC notation order] >The defs are clear: -NZ00 >As for the uses: X---- >Should I stick with X used ? The MOVE instruction does not explicitely >use that flag but, it does not affect it therefore everything would go >as if the instruction used it actually, right ? >Or letting nothing used (-----) should work as well ? >I think I should mark X as used and therefore would probably have to >update the UAE and my core tables... Since MOVE doesn't affect/change the eXtended bit and also doesn't test it this means that it doesn't use it at all (-----). No change needed. >Gwenolé Beauchesne -- M.I.K.e If A equals success, then the formula is _A = _X + _Y + _Z. _X is work. _Y is play. _Z is keep your mouth shut. -- Albert Einstein --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 8 00:30:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA40835 for dynarec-outgoing; Fri, 8 Sep 2000 00:30:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009080733.JAA28501@pons.ac.upc.es> Subject: Re: DYNAREC: Dynare.com People In-Reply-To: <000370b9c4a0efbf_mailit@mail.dynarec.com> "from M.I.K.e at Sep 8, 2000 01:08:20 am" To: dynarec@dynarec.com Date: Fri, 8 Sep 2000 09:33:05 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >It's ok. Why you always keep the more "strange" description > >for me? ;) > > Because you are strange? ;-) > Actually, it's relatively easy to write what I do, NB simply *is* the > mastermind, and I also know NG much better now. I still have some problems to > characterize you. Do you want a biography? ;) In any case I win with the distance. > Sometimes I even think you're the "soul" of the mailing list, since it's > always crowded when you start a discussion, and it was rather silent when you > were on holidays. May be because I make a lot of noise. ;) Well, the list started when I "make" talk Neil about his DRMZ80, althought I think he was just waiting a chance for starting it. In any case if I really start discussions must be because I send mails talking about any idea a bit interesting I have about emulation (just as the bank switching problem) and few of them become source for dicussion. It is just a matter of number of mails sents: the more you send the more chance of starting a discussion. ;) > I think you should be the specialist for static binary translation, and you > certainly invented some terms and proved some theories wrong. > Now, how do I put that into a short characterization... > I'm not sure I really know so many about static translation. And I think I just invented "TransMap" and what theory I have proved to be wrong? You could write "is a genius". ;) Take this as a *JOKE* PLEASE! > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 8 00:35:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA40851 for dynarec-outgoing; Fri, 8 Sep 2000 00:35:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009080737.JAA01597@pons.ac.upc.es> Subject: Re: DYNAREC: New BinTrans Docs In-Reply-To: <000370b9e55d2189_mailit@mail.dynarec.com> "from M.I.K.e at Sep 8, 2000 01:17:29 am" To: dynarec@dynarec.com Date: Fri, 8 Sep 2000 09:37:36 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I found some new docs about binary translation today. > The first is an introduction to binary translation, and it's quite > interesting. > The second is a doc about Aries the dynamic translator from HP, which will > translate PA-RISC code to IA-64 code. > I uploaded both docs and they should be available here: > http://www.dynarec.com/~mike/docs/BTintro.pdf > http://www.dynarec.com/~mike/docs/PA2IA64.pdf > It seems the Intel-HP team is making interesting stuff lately. What must be doing Compaq/Digital? I should have to ask about it. BTW I asked about FX!32 and the only thing I get is that the FX!32 group was "killed" a couple of years ago (it was obvious because of the dates of the articles). A strange fact because FX!32 is a very interesting Digital product. > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 8 00:52:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA40870 for dynarec-outgoing; Fri, 8 Sep 2000 00:52:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <000370b9afce49a0_mailit@mail.dynarec.com> Subject: Re: DYNAREC: M68K flag usage information From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Fri, 8 Sep 2000 10:05:33 +0200 Message-ID: <1egmttn.1qixhrx1g2sy1eM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id AAA40867 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Since MOVE doesn't affect/change the eXtended bit and also doesn't test it > this means that it doesn't use it at all (-----). No change needed. Hmm, actually I forgot a bit that liveness analysis would handle that nicely ;-) What about instructions that may trap ? I mean, do we have to mark them as possibly affecting the flags or not ? My understanding is that if an instruction traps, the exception is executed and the exception handler makes sure to save the flags. Therefore, I think thy don't need to be marked as setting the flags. Right ? BTW, I was playing with pessimistic determination of removal of instructions that don't need to compute the flags. In short, I took my table of instructions and noticed that there were only 15 combinations of flag use/sets (cc codes of branch condition were expanded out). Then the bulb lit up ;-) With that, I created a 15x15 matrix of booleans (char or whatever). It is indexed as follows: [curr_flag_id][next_flag_id]. Boolean value is true if the instruction with curr_flag_id and the following instruction with next_flag_id doesn't need to compute the flags, false otherwise. Results from a sample execution with BasiliskII: - Static counts on the matrix shows that 64.9% of the values are true. - Static counts on all possible combinations of instructions (only two billions or so :) that can be handled shows that 64.5% of the instructions wouldn't need to compute the flags - Dynamic counts turns out to show that 67.9% of the instructions of the compiled blocks didn't need to compute the flags. With aggressive determination, i.e. the standard 2-pass way (backward liveness analysis, forward compilation), dynamic counts for the same execution show that 70.9% of the instructions didn't need to compute the flags. Now you will tell me that aggressive determination cost is far lesser than the compilation cost. Well, that's true. So my pessimistic method is useless :-/ If the host permits it, my test program will be found at: File: flags.cpp That test program just generates a table and a nice graph to be generated by Dot (from AT&T Research Labs). -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 8 01:02:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA40893 for dynarec-outgoing; Fri, 8 Sep 2000 01:02:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <1egmttn.1qixhrx1g2sy1eM@[192.168.0.2]> Subject: Re: DYNAREC: M68K flag usage information From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Fri, 8 Sep 2000 10:15:37 +0200 Message-ID: <1egmxta.wtxbchvrdosqM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id BAA40890 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > - Static counts on all possible combinations of instructions (only two > billions or so :) that can be handled shows that 64.5% of the s/combinations/pair/ s/billions/billion/ Sorry for the mistakes. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 8 01:05:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA40906 for dynarec-outgoing; Fri, 8 Sep 2000 01:05:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009080809.KAA23821@pons.ac.upc.es> Subject: Re: DYNAREC: M68K flag usage information In-Reply-To: <1egmttn.1qixhrx1g2sy1eM@[192.168.0.2]> "from Gwenole Beauchesne at Sep 8, 2000 10:05:33 am" To: dynarec@dynarec.com Date: Fri, 8 Sep 2000 10:09:38 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=ISO-8859-1 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > Since MOVE doesn't affect/change the eXtended bit and also doesn't test it > > this means that it doesn't use it at all (-----). No change needed. > > Hmm, actually I forgot a bit that liveness analysis would handle that > nicely ;-) > > What about instructions that may trap ? I mean, do we have to mark them > as possibly affecting the flags or not ? My understanding is that if an > instruction traps, the exception is executed and the exception handler > makes sure to save the flags. Therefore, I think thy don't need to be > marked as setting the flags. Right ? > Instruction traps? May be you mean software interruptions (x86 INT kind). In this case they are used as another way to make calls (OS calls commonly) and if it works as DOS they can return information in the flags. Any hardware interrupts or internal CPU exceptions must save and restore the flags because as they can happen anywhere in the code they can destroy the execution at the return. It could be that someone uses ints or exceptions for change registers and flags in the flow of execution but I think this must be very rare (may be a randomly destroyer system for virus ;). > Gwenolé Beauchesne Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 8 03:11:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA41165 for dynarec-outgoing; Fri, 8 Sep 2000 03:11:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009081015.MAA06951@pons.ac.upc.es> Subject: Re: DYNAREC: New BinTrans Docs In-Reply-To: <200009080737.JAA01597@pons.ac.upc.es> "from Victor Moya del Barrio at Sep 8, 2000 09:37:36 am" To: dynarec@dynarec.com Date: Fri, 8 Sep 2000 12:15:46 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I found some new docs about binary translation today. > > The first is an introduction to binary translation, and it's quite > > interesting. > > The second is a doc about Aries the dynamic translator from HP, which will > > translate PA-RISC code to IA-64 code. > > I uploaded both docs and they should be available here: > > http://www.dynarec.com/~mike/docs/BTintro.pdf > > http://www.dynarec.com/~mike/docs/PA2IA64.pdf > > I'm actually searching a bit the library in www.acm.org. I can only make it at the job because it is a pay library for universities, researchers and students, I think it is a magazine about computing. The university has free access to it (paying of course) so I want to find some "bibliography" for me project. I have found a couple of things but I'm not sure if they are interesting or not for our list. Anyway I get one a bit interesting who point me to another site (this is free :), Mike you could take a look here (if you already haven't): http://www.research.ibm.com/vliw/abs.html There is the article I first found (this time for free and in a smaller pdf ;). It is "Optimizations and Oracle Parallelism with Dynamic Translation". There are other documents that seem interesting, mainly VLIW and translation and some Java stuff. > > > -- > > M.I.K.e > > > Victor Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 8 08:36:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA41453 for dynarec-outgoing; Fri, 8 Sep 2000 08:36:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: M68K flag usage information From: "M.I.K.e" Message-ID: <000370c79b7a9b52_mailit@mail.dynarec.com> References: <1egmttn.1qixhrx1g2sy1eM@[192.168.0.2]> Date: Fri, 08 Sep 2000 17:38:59 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What about instructions that may trap ? I mean, do we have to mark them >as possibly affecting the flags or not ? My understanding is that if an >instruction traps, the exception is executed and the exception handler >makes sure to save the flags. Therefore, I think thy don't need to be >marked as setting the flags. Right ? Since TRAP pushes the SR onto the supervisor stack and RTE just pops it, there will be no change in the flags and if you emulate those instructions correctly you don't even have to care about that topic. >BTW, I was playing with pessimistic determination of removal of >instructions that don't need to compute the flags. In short, I took my >table of instructions and noticed that there were only 15 combinations >of flag use/sets (cc codes of branch condition were expanded out). Then >the bulb lit up ;-) Maybe some flow of electricity? ;-) >With that, I created a 15x15 matrix of booleans (char or whatever). It >is indexed as follows: [curr_flag_id][next_flag_id]. >Boolean value is true if the instruction with curr_flag_id and the >following instruction with next_flag_id doesn't need to compute the >flags, false otherwise. Ok, I think I understand that. >Results from a sample execution with BasiliskII: >- Static counts on the matrix shows that 64.9% of the values are true. >- Static counts on all possible combinations of instructions (only two >billions or so :) that can be handled shows that 64.5% of the >instructions wouldn't need to compute the flags >- Dynamic counts turns out to show that 67.9% of the instructions of the >compiled blocks didn't need to compute the flags. >With aggressive determination, i.e. the standard 2-pass way (backward >liveness analysis, forward compilation), dynamic counts for the same >execution show that 70.9% of the instructions didn't need to compute the >flags. >Now you will tell me that aggressive determination cost is far lesser >than the compilation cost. Well, that's true. So my pessimistic method >is useless :-/ Well, your statistics are pretty close and it might be faster to use a 1-pass than a 2-pass approach. I think it might be worth a try. >Gwenolé Beauchesne -- M.I.K.e "Avoid revolution or expect to get shot. Mother and I will grieve, but we will gladly buy a dinner for the National Guardsman who shot you." -- Dr. Paul Williamson, father of a Kent State student --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 8 08:36:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA41448 for dynarec-outgoing; Fri, 8 Sep 2000 08:36:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynare.com People From: "M.I.K.e" Message-ID: <000370c7639c901a_mailit@mail.dynarec.com> References: <200009080733.JAA28501@pons.ac.upc.es> Date: Fri, 08 Sep 2000 17:23:22 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Do you want a biography? ;) In any case I win with the distance. Yes, with all dirty details ;-) >May be because I make a lot of noise. ;) So should I write "Victor is a noisy member of the mailing list?" >I'm not sure I really know so many about static translation. I guess you know more about it than we others. > And I think I just invented "TransMap" Really? >and what theory I have proved to be wrong? Good question... >You could write "is a genius". ;) Well, that's a hint! >Take this as a *JOKE* PLEASE! Damn, now I have to erase it from the page again... >Victor -- M.I.K.e "The difference between a misfortune and a calamity? If Gladstone fell into the Thames, it would be a misfortune. But if someone dragged him out again, it would be a calamity." -- Benjamin Disraeli --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 8 08:36:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA41466 for dynarec-outgoing; Fri, 8 Sep 2000 08:36:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: New BinTrans Docs From: "M.I.K.e" Message-ID: <000370c7742f85fa_mailit@mail.dynarec.com> References: <200009080737.JAA01597@pons.ac.upc.es> Date: Fri, 08 Sep 2000 17:28:00 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It seems the Intel-HP team is making interesting stuff lately. At least it's much less worse than what I thought when I first heard about the "masters of segmented memory" working together. >What must be doing Compaq/Digital? I should have to ask about it. Hmm, I found out that a book about Alpha programming that was released in 1999 is now out of pint. I wonder if that could be the answer to your question... It would be sad to see a good architectutre like Alpha pass, but it wouldn't be the first... >BTW I asked about FX!32 and the only thing I get is that the >FX!32 group was "killed" a couple of years ago (it was obvious >because of the dates of the articles). A strange fact because >FX!32 is a very interesting Digital product. FX!32 must have been really cool. The fact that the group was closed only shows that Compaq really have no idea of what they bought with Digital... >Victor -- M.I.K.e Although golf was originally restricted to wealthy, overweight Protestants, today it's open to anybody who owns hideous clothing. -- Dave Barry --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 8 08:36:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA41469 for dynarec-outgoing; Fri, 8 Sep 2000 08:36:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: New BinTrans Docs From: "M.I.K.e" Message-ID: <000370c7b03fb1ee_mailit@mail.dynarec.com> References: <200009081015.MAA06951@pons.ac.upc.es> Date: Fri, 08 Sep 2000 17:44:47 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm actually searching a bit the library in www.acm.org. I >can only make it at the job because it is a pay library for >universities, researchers and students, I think it is a >magazine about computing. I had the same problem with the documents I found yesterday, but a search with Google revealed some unprotected locations of the files. Google even seems to find PDFs directly (because this is how I found those files, no page, no directory, just a link to the file) and is also great in most other aspects. It's now my primary search engine - thanks for the hint. >http://www.research.ibm.com/vliw/abs.html Thanks, I'm not sure if I've seen the page before, but I certainly know some of the documents, but maybe they have something I don't know yet. >Victor -- M.I.K.e The soul would have no rainbow had the eyes no tears. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 8 09:05:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA41514 for dynarec-outgoing; Fri, 8 Sep 2000 09:05:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K LINK/UNLK question From: "M.I.K.e" Message-ID: <000370c8187913ed_mailit@mail.dynarec.com> References: <3.0.5.32.20000905140449.008206e0@powernet.net> <3.0.5.32.20000906143755.00822800@powernet.net> <000370a548ab01e3_mailit@mail.dynarec.com> Date: Fri, 08 Sep 2000 18:13:56 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>>This seems to be correct apart from the fact that LINK needs 18 clockcycles >>>instead of 16... >>The "M68000 Microprocessor User's Manual Ninth Edition" begs to differ. It >>says 16 :) >Strange Starscream uses 16 as well... Actually the "MC68000 Programming Reference Card" also has lists 16 cycles for LINK. I wonder why two of my books list 18 cycles... -- M.I.K.e Angels we have heard on High Tell us to go out and Buy. -- Tom Lehrer --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 8 14:09:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA41795 for dynarec-outgoing; Fri, 8 Sep 2000 14:08:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Byteswapping From: "M.I.K.e" Message-ID: <000370cc5437cc1f_mailit@mail.dynarec.com> Date: Fri, 08 Sep 2000 23:16:58 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This is a special for Neil, but it might be interesting for the others as well, or maybe some other geek knows the answer... I'm currently arguing with someone what is faster to swap the bytes in a word: rol ax, 8 or xchg ah, al According to my assembly book 'xchg r8, r8' need 3 cycles on a Pentium and 'rol r16, i8' only 1 cycle, but that's without the penalty for using 16-bit code in USE32. That guy argues that on a Pentium Pro 'xchg r8, r8' will be faster because of register renamning, unfortunately my book stops at Pentium and I didn't find *any* information about clock cycles in the Intel's P6 architecture and instruction references. Does anyone know how fast 'xchg r8, r8' will be on a P6 and how big the penalty might be for using 'rol r16, i8' in 32-bit code? -- M.I.K.e Watson's Law: The reliability of machinery is inversely proportional to the number and significance of any persons watching it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 8 14:51:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA41834 for dynarec-outgoing; Fri, 8 Sep 2000 14:51:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000908145208.0082a370@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 08 Sep 2000 14:52:08 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K LINK/UNLK question In-Reply-To: <000370c8187913ed_mailit@mail.dynarec.com> References: <3.0.5.32.20000905140449.008206e0@powernet.net> <3.0.5.32.20000906143755.00822800@powernet.net> <000370a548ab01e3_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Actually the "MC68000 Programming Reference Card" also has lists 16 cycles >for LINK. I wonder why two of my books list 18 cycles... Because they're wrong ;) As for my continuing struggle to get demo1.bin, I have determined LINK/UNLK must be correct. But somehow, A6 isn't getting set to a valid RAM address (I traced through the code, everything is fine, so this is a weird problem.) Bah, whatever. I've seen some other SGCC-compiled demos that work, and they use LINK/UNLK as well. I did find quite a few shocking bugs while trying to solve the problem, which has only helped ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 9 01:57:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA42345 for dynarec-outgoing; Sat, 9 Sep 2000 01:56:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 9 Sep 2000 02:17:15 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Byteswapping In-Reply-To: <000370cc5437cc1f_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I'm currently arguing with someone what is faster to swap the bytes in a > word: > rol ax, 8 > or > xchg ah, al I forget... does ROL change carry? If so, those functions aren't equivalent. > According to my assembly book 'xchg r8, r8' need 3 cycles on a Pentium and > 'rol r16, i8' only 1 cycle, but that's without the penalty for using 16-bit > code in USE32. > That guy argues that on a Pentium Pro 'xchg r8, r8' will be faster because of > register renamning, unfortunately my book stops at Pentium and I didn't find > *any* information about clock cycles in the Intel's P6 architecture and > instruction references. That's because with the cache interactions, the U/V piping and preexecution, it's damn near impossible to figure out. > Does anyone know how fast 'xchg r8, r8' will be on a P6 and how big the > penalty might be for using 'rol r16, i8' in 32-bit code? I don't recall. If you do a: mov ax, [esi] xchg ah, al It always causes a register stall due to the interdependency of the mov and xchg instructions, plus I think another cycle for the 16 bit version of it. However, if it's just the mov ax, [esi], you can potentially pipeline with another instruction that doesn't muck with ah/al. So I'd say that the non xchg version is faster. Have you tried it? -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 9 04:48:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA44745 for dynarec-outgoing; Sat, 9 Sep 2000 04:48:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Byteswapping From: "M.I.K.e" Message-ID: <000370d7cb1f10be_mailit@mail.dynarec.com> References: Date: Sat, 09 Sep 2000 12:57:38 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> rol ax, 8 >> xchg ah, al >I forget... does ROL change carry? If so, those functions aren't >equivalent. Nope, both instructions don't change any flags. >That's because with the cache interactions, the U/V piping and >preexecution, it's damn near impossible to figure out. That's what I feared. I found out that ROL needs just one microop and XCHG 3 microops, but even that says nothing, since one of the three translation units can translate up to 4 microops per cycle while the other two only translate one. But it might make a difference in certain context. >I don't recall. If you do a: > mov ax, [esi] > xchg ah, al >It always causes a register stall due to the interdependency of the mov >and xchg instructions, plus I think another cycle for the 16 bit version >of it. However, if it's just the mov ax, [esi], you can potentially >pipeline with another instruction that doesn't muck with ah/al. So I'd say >that the non xchg version is faster. You're right of course. >Have you tried it? Nope, but since the programmer was seeking for a fast method to byte-swap a larger area, I came up with the following algotrithm (at about 7 AM - yawn!): mov eax, [mem] mov ebx, [mem+4] bswap eax bswap ebx rol eax, 16 rol ebx, 16 mov [mem], eax mov [mem+4], ebx No AGI, only 32-bit code, and only 8 cycles to swap 4 byte pairs. I guess that's quite optimal. >-->Neil -- M.I.K.e God is not dead! He's alive and autographing bibles at Cody's --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 9 11:05:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA45097 for dynarec-outgoing; Sat, 9 Sep 2000 11:05:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000909110644.00825230@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 09 Sep 2000 11:06:44 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Byteswapping In-Reply-To: <000370d7cb1f10be_mailit@mail.dynarec.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 12:57 PM 9/9/2000 +0200, you wrote: >>> rol ax, 8 >>> xchg ah, al >>I forget... does ROL change carry? If so, those functions aren't >>equivalent. > >Nope, both instructions don't change any flags. Volume 2 of the Intel Architecture Manual lists ROL, ROR, RCL, RCR in the same instruction group and it says that CF contains the bit shifted out of it. I'm pretty sure ROL/ROR change the CF status... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 10 11:37:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA46545 for dynarec-outgoing; Sun, 10 Sep 2000 11:36:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 10 Sep 2000 11:57:35 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Page bank emulation with MZ80 In-Reply-To: <004b01c018fc$9ea96260$9dc4523e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I took a look to your m6502 core so I was guessing it. ;) > Someone can say I'm cheating taking a look to your source but it > is the way I work. I'm the kind of guy who doesn't care if someone > told him the end of a movie or a book (or the full story) I still > get the same fun from it. Well, as long as you're learning something, go for it! mz80 Is quite a bit more advanced than m6502 is in terms of cleanliness, though. There's lots of good ideas in there and some that haven't made it in to m6502 yet (if ever). > > After doing as many cores (and redoing them, too) as I have, "fun" is not > > the right word for doing such mods. ;-) IT shouldn't be too tough. Why not > > have a go at it, Victor? > He,he! What will it be? Madness perhaps. ;) > I will try. But it won't be today because I'm upgrading an old 400 MB > HD to a new 20 GB one. What an update! :) Well... so where's the core? ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 10 11:47:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA46571 for dynarec-outgoing; Sun, 10 Sep 2000 11:47:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001401c01b58$9aaa54e0$c1c1523e@hal9000> From: "Victor Moya del Barrio \(DYNAREC\)" To: References: Subject: Re: DYNAREC: Page bank emulation with MZ80 Date: Sun, 10 Sep 2000 20:53:53 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I took a look to your m6502 core so I was guessing it. ;) > > Someone can say I'm cheating taking a look to your source but it > > is the way I work. I'm the kind of guy who doesn't care if someone > > told him the end of a movie or a book (or the full story) I still > > get the same fun from it. > > Well, as long as you're learning something, go for it! mz80 Is quite a bit > more advanced than m6502 is in terms of cleanliness, though. There's lots > of good ideas in there and some that haven't made it in to m6502 yet (if > ever). > Well there are somethings in the write handler that aren't so clear, all the stuff trying the determine what kind of address and value are passed aren't very clear in my thoughts (not after seen what it is actually passed to it). ;) One example: in one case you load in dl the value (I think when it is a "byte something") when you have already moved it at the start to al. And in the JRHandler there are some strange lines at the beginining. > > > After doing as many cores (and redoing them, too) as I have, "fun" is not > > > the right word for doing such mods. ;-) IT shouldn't be too tough. Why not > > > have a go at it, Victor? > > He,he! What will it be? Madness perhaps. ;) > > I will try. But it won't be today because I'm upgrading an old 400 MB > > HD to a new 20 GB one. What an update! :) > > Well... so where's the core? ;-) > Well, I'm working. ;) I'm in the debug stage and it's really hard (I only have the old MUL8's INVMZ to test it). It actually runs something ( about 80.000 cycles) but I'm still trying to get what is wrong. And without a proper debugger ... I think the error will be in all the PCtoVPC and VPCtoPC functions perhaps there is someone missing or in a wrong place. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 10 12:15:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA46612 for dynarec-outgoing; Sun, 10 Sep 2000 12:15:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 10 Sep 2000 12:36:01 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Byteswapping In-Reply-To: <000370d7cb1f10be_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Nope, but since the programmer was seeking for a fast method to byte-swap a > larger area, I came up with the following algotrithm (at about 7 AM - yawn!): > mov eax, [mem] > mov ebx, [mem+4] Actually, the mov ebx, [mem+4] will generate an AGI. ;-) > bswap eax > bswap ebx > rol eax, 16 > rol ebx, 16 > mov [mem], eax > mov [mem+4], ebx > No AGI, only 32-bit code, and only 8 cycles to swap 4 byte pairs. I guess > that's quite optimal. But also remember that AGI stalls only exist on non-MMX capable Pentiums. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 10 13:09:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA46680 for dynarec-outgoing; Sun, 10 Sep 2000 13:09:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Byteswapping From: "M.I.K.e" Message-ID: <000370f37bb8a041_mailit@mail.dynarec.com> References: Date: Sun, 10 Sep 2000 21:59:45 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> mov eax, [mem] >> mov ebx, [mem+4] >Actually, the mov ebx, [mem+4] will generate an AGI. ;-) Damn, haven't thought about that... But having two different indexes isn't that convenient either... >But also remember that AGI stalls only exist on non-MMX capable Pentiums. Really? Because of register renaming or what? >-->Neil -- M.I.K.e Whenever anyone says, "theoretically", they really mean, "not really". -- Dave Parnas --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 10 13:23:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA46708 for dynarec-outgoing; Sun, 10 Sep 2000 13:23:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000910132418.008225d0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 10 Sep 2000 13:24:18 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: M68K Interrupt Processing Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I've got a few general questions about interrupt processing in the M68K which I hope could be answered here ;) - I've heard that devices should clear the IPL level when their interrupt is acknowledged, but if they do not, the interrupt is generated over and over again. How do these IPL lines relate to the SR? If devices normally clear the IPL, wouldn't the IPL bits in the SR be cleared each time an interrupt was taken? - Page 6-13 of the M68000 Microprocessor User's Manual says "An interrupt is generated each time the interrupt request level changes from some lower level to level 7." What exactly does this mean? Are they talking about a device signalling level 7 to the 68K? I'm assuming this doesn't include software writing the IPL bits in the SR (since this would be a mess and I've never seen anything behave that way.) Other than that, I'm fine with interrupts... The first question I had is the one that's confusing me, since the M68K manual doesn't talk much about devices acknowledging interrupts, other than that they must provide the vector once they get the ACK. Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 11 04:07:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA47585 for dynarec-outgoing; Mon, 11 Sep 2000 04:07:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001601c01bdf$b6cfc2e0$92ca523e@hal9000> From: "Victor Moya del Barrio \(DYNAREC\)" To: References: <001401c01b58$9aaa54e0$c1c1523e@hal9000> Subject: Re: DYNAREC: Page bank emulation with MZ80 Date: Mon, 11 Sep 2000 13:02:00 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Well... so where's the core? ;-) > > > Well, I'm working. ;) I'm in the debug stage and it's really hard (I only It's done. :) Well, it works with SI, which it doesn't use banks thought but I built it's memory map with "pages". I don't have any other source with which I could test it. Three days ... perhaps it have taken too much time. If you are interested I could mail you the source, I have still to arrange a couple of things (comments and others). > > -->Neil > > > Victor Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 11 06:47:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA47734 for dynarec-outgoing; Mon, 11 Sep 2000 06:46:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Byteswapping From: "M.I.K.e" Message-ID: <000371025dea44b1_mailit@mail.dynarec.com> References: <3.0.5.32.20000909110644.00825230@powernet.net> Date: Mon, 11 Sep 2000 15:45:09 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Volume 2 of the Intel Architecture Manual lists ROL, ROR, RCL, RCR in the >same instruction group and it says that CF contains the bit shifted out of >it. I'm pretty sure ROL/ROR change the CF status... You are right of course, ROL changes the carry... I was a bit fooled by my book saying that no flags are modified... Hey, I really want to have a decent and correct book! >Bart -- M.I.K.e "I can't decide whether to commit suicide or go bowling." -- Florence Henderson --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 11 06:50:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA47750 for dynarec-outgoing; Mon, 11 Sep 2000 06:50:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Byteswapping From: "M.I.K.e" Message-ID: <000371025dea44b1_mailit@mail.dynarec.com> References: <3.0.5.32.20000909110644.00825230@powernet.net> Date: Mon, 11 Sep 2000 15:45:09 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Volume 2 of the Intel Architecture Manual lists ROL, ROR, RCL, RCR in the >same instruction group and it says that CF contains the bit shifted out of >it. I'm pretty sure ROL/ROR change the CF status... You are right of course, ROL changes the carry... I was a bit fooled by my book saying that no flags are modified... Hey, I really want to have a decent and correct book! >Bart -- M.I.K.e Twenty Percent of Zero is Better than Nothing. -- Walt Kelly --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 11 12:40:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA48057 for dynarec-outgoing; Mon, 11 Sep 2000 12:40:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000911124058.00827100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 11 Sep 2000 12:40:58 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Byteswapping In-Reply-To: <000371025dea44b1_mailit@mail.dynarec.com> References: <3.0.5.32.20000909110644.00825230@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 03:45 PM 9/11/2000 +0200, you wrote: >>Volume 2 of the Intel Architecture Manual lists ROL, ROR, RCL, RCR in the >>same instruction group and it says that CF contains the bit shifted out of >>it. I'm pretty sure ROL/ROR change the CF status... > >You are right of course, ROL changes the carry... >I was a bit fooled by my book saying that no flags are modified... >Hey, I really want to have a decent and correct book! Get the Intel manuals :) In the US, they are free, with free shipping. You can order almost as many as you want. I'm not sure if they charge for shipments to other countries, and how much, but I think it's just the shipping fee. They're worth getting any way you slice the pie. "Intel Architecture Software Developer's Manual" Volume 1 is an introduction to the architecture Volume 2 is the detailed instruction set reference (I always keep it handy by my keyboard :)) Volume 3 is documentation for system programmers http://developer.intel.com/design/litcentr/index.htm Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 11 12:54:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA48075 for dynarec-outgoing; Mon, 11 Sep 2000 12:54:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Byteswapping From: "M.I.K.e" Message-ID: <00037107a215dfc8_mailit@mail.dynarec.com> References: <3.0.5.32.20000911124058.00827100@powernet.net> Date: Mon, 11 Sep 2000 22:02:08 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Get the Intel manuals :) In the US, they are free, with free shipping. You >can order almost as many as you want. I'm not sure if they charge for >shipments to other countries, and how much, but I think it's just the >shipping fee. They're worth getting any way you slice the pie. Really? Hmm, my sister lives in the US and my mother will visit here in a few weeks I think. Maybe I should ask my sister if she orders the manuals for me. And you say it's totally free? >"Intel Architecture Software Developer's Manual" >Volume 1 is an introduction to the architecture >Volume 2 is the detailed instruction set reference (I always keep it handy >by my keyboard :)) >Volume 3 is documentation for system programmers Apart from volume 3 I have all (including the Optimization Reference) on my harddrive, but I'm sort of a bookworm and really prefer browsing books for information than PDFs... >http://developer.intel.com/design/litcentr/index.htm Thanks, I'll have a look. >Bart -- M.I.K.e "I don't believe in astrology. But then I'm an Aquarius, and Aquarians don't believe in astrology." -- James R. F. Quirk --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 11 13:08:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA48101 for dynarec-outgoing; Mon, 11 Sep 2000 13:08:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000911130847.0082a410@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 11 Sep 2000 13:08:47 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Byteswapping In-Reply-To: <00037107a215dfc8_mailit@mail.dynarec.com> References: <3.0.5.32.20000911124058.00827100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 10:02 PM 9/11/2000 +0200, you wrote: >>Get the Intel manuals :) In the US, they are free, with free shipping. You >>can order almost as many as you want. I'm not sure if they charge for >>shipments to other countries, and how much, but I think it's just the >>shipping fee. They're worth getting any way you slice the pie. > >Really? Hmm, my sister lives in the US and my mother will visit here in a few >weeks I think. Maybe I should ask my sister if she orders the manuals for me. >And you say it's totally free? Totally free. Last time I ordered something was a couple months back. I don't think it's changed. They have a toll-free 1-800 number (1-800-879-4683) which you could have someone call to find out the details and actually order the goods. Motorola and AMD are pretty much the same way -- except that Intel's books are much better in the quality department IMHO, and the covers are nice and pretty ;) >Apart from volume 3 I have all (including the Optimization Reference) on my >harddrive, but I'm sort of a bookworm and really prefer browsing books for >information than PDFs... Books are infinitely more comfortable than PDFs. It's much quicker to flip a few pages than mess with a PDF :P Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 11 13:18:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA48118 for dynarec-outgoing; Mon, 11 Sep 2000 13:18:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Byteswapping From: "M.I.K.e" Message-ID: <00037107fc9e7324_mailit@mail.dynarec.com> References: <3.0.5.32.20000911130847.0082a410@powernet.net> Date: Mon, 11 Sep 2000 22:27:27 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Totally free. Last time I ordered something was a couple months back. I >don't think it's changed. They have a toll-free 1-800 number >(1-800-879-4683) which you could have someone call to find out the details >and actually order the goods. Ah, you have to call to get the docs. I just wondered why some were download- only and others were order-only. >Motorola and AMD are pretty much the same way Now I know how you got the official 68K manual ;-) >-- except that Intel's books are much better in the quality department >IMHO, and the covers are nice and pretty ;) Well, it has to be functional, but I also prefer real books to loose print- outs. >Books are infinitely more comfortable than PDFs. It's much quicker to flip >a few pages than mess with a PDF :P Indeed, just what I'm thinking! That's why computers never will replace books completely. >Bart -- M.I.K.e "I'd love to go out with you, but my favorite commercial is on TV." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 11 13:31:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA48139 for dynarec-outgoing; Mon, 11 Sep 2000 13:31:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000911133140.00827cf0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 11 Sep 2000 13:31:40 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Byteswapping In-Reply-To: <00037107fc9e7324_mailit@mail.dynarec.com> References: <3.0.5.32.20000911130847.0082a410@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Ah, you have to call to get the docs. I just wondered why some were download- >only and others were order-only. I don't think many are download-only. If it's downloadable, it's usually orderable. However, sometimes they are out of stock. My friend ran into that problem with Volume 2 and had to wait a couple weeks before they printed new copies. >>Motorola and AMD are pretty much the same way > >Now I know how you got the official 68K manual ;-) Hehe, exactly :) >>Books are infinitely more comfortable than PDFs. It's much quicker to flip >>a few pages than mess with a PDF :P > >Indeed, just what I'm thinking! That's why computers never will replace books >completely. Unless someone gets some real Virtual Reality going ;) But even then, I wouldn't want to lug around a VR machine and mess with it everytime I wanted to pop open a book. Computers definitely won't replace books for lots of reasons... and I'm glad that's the way it is :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 12 00:02:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA48604 for dynarec-outgoing; Tue, 12 Sep 2000 00:02:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009120704.JAA17380@pons.ac.upc.es> Subject: Re: DYNAREC: Byteswapping In-Reply-To: <3.0.5.32.20000911133140.00827cf0@powernet.net> "from Bart at Sep 11, 2000 01:31:40 pm" To: dynarec@dynarec.com Date: Tue, 12 Sep 2000 09:04:26 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >>Books are infinitely more comfortable than PDFs. It's much quicker to flip > >>a few pages than mess with a PDF :P > > > >Indeed, just what I'm thinking! That's why computers never will replace > books > >completely. > > Unless someone gets some real Virtual Reality going ;) But even then, I > wouldn't want to lug around a VR machine and mess with it everytime I > wanted to pop open a book. Computers definitely won't replace books for > lots of reasons... and I'm glad that's the way it is :) > > I agree, the screen of a computer isn't the best way to read a book (you can walk around or sit on your favourite place, it is too heavy ;). And I really like books. But it is also true that the book can change and it will change. I'm sure you have read about that "electronic books" which use LCD screens and PC loadable. I think they are a really good idea when they become cheaper. And if they could be even more handy than a massive ISA manual. ;) > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 12 13:32:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA49402 for dynarec-outgoing; Tue, 12 Sep 2000 13:31:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000901c01cf9$76f0c960$8b41ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000911130847.0082a410@powernet.net> <00037107fc9e7324_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Byteswapping Date: Tue, 12 Sep 2000 22:38:51 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "M.I.K.e" To: Sent: Monday, September 11, 2000 10:27 PM Subject: Re: DYNAREC: Byteswapping > >Totally free. Last time I ordered something was a couple months back. I > >don't think it's changed. They have a toll-free 1-800 number > >(1-800-879-4683) which you could have someone call to find out the details > >and actually order the goods. > > Ah, you have to call to get the docs. I just wondered why some were download- > only and others were order-only. > I think they also can be ordered using the web but it seems that they are usually unavailable. :( > >Motorola and AMD are pretty much the same way > > Now I know how you got the official 68K manual ;-) > I visited Motorola's web and I tried, let see what happens. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 12 14:17:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA49450 for dynarec-outgoing; Tue, 12 Sep 2000 14:17:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Byteswapping From: "M.I.K.e" Message-ID: <0003711cd816b271_mailit@mail.dynarec.com> References: <3.0.5.32.20000911130847.0082a410@powernet.net> <00037107fc9e7324_mailit@mail.dynarec.com> <000901c01cf9$76f0c960$8b41ae3e@hal9000> Date: Tue, 12 Sep 2000 23:20:28 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think they also can be ordered using the web but it seems that they are >usually unavailable. :( Strange I only found a way to order manuals per web form that weren't available for download. Did I miss anything? >I visited Motorola's web and I tried, let see what happens. ;) Keep us informed. If it works we maybe should all order the manual because we could all work with the same documentation. >Victor -- M.I.K.e Have you noticed the way people's intelligence capabilities decline sharply the minute they start waving guns around? -- Dr. Who --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 12 14:35:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA49474 for dynarec-outgoing; Tue, 12 Sep 2000 14:35:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000912143602.00827100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 12 Sep 2000 14:36:02 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Byteswapping In-Reply-To: <200009120704.JAA17380@pons.ac.upc.es> References: <3.0.5.32.20000911133140.00827cf0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I agree, the screen of a computer isn't the best way to read >a book (you can walk around or sit on your favourite place, >it is too heavy ;). And I really like books. But it is also >true that the book can change and it will change. I'm >sure you have read about that "electronic books" which use >LCD screens and PC loadable. I think they are a really >good idea when they become cheaper. And if they could be >even more handy than a massive ISA manual. ;) Electronic books are evil, you can't flip through the pages because there are no pages, it's just as cumbersome as using Adobe Acrobat Reader or something. Plus, electronics don't last as long as a real book. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 12 14:37:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA49484 for dynarec-outgoing; Tue, 12 Sep 2000 14:37:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 12 Sep 2000 14:59:19 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Byteswapping In-Reply-To: <3.0.5.32.20000912143602.00827100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >even more handy than a massive ISA manual. ;) > Electronic books are evil, you can't flip through the pages because there > are no pages, it's just as cumbersome as using Adobe Acrobat Reader or > something. > Plus, electronics don't last as long as a real book. Hm... books last about 50-75 years until they start falling apart. I've yet to have a CD "go bad", but let's wait another 45 years to see if it outlasts a book. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 12 14:43:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA49499 for dynarec-outgoing; Tue, 12 Sep 2000 14:43:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000912143744.00827870@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 12 Sep 2000 14:37:44 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Byteswapping In-Reply-To: <0003711cd816b271_mailit@mail.dynarec.com> References: <3.0.5.32.20000911130847.0082a410@powernet.net> <00037107fc9e7324_mailit@mail.dynarec.com> <000901c01cf9$76f0c960$8b41ae3e@hal9000> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 11:20 PM 9/12/2000 +0200, you wrote: >>I think they also can be ordered using the web but it seems that they are >>usually unavailable. :( > >Strange I only found a way to order manuals per web form that weren't >available for download. Did I miss anything? I don't know, I just called the 1-800 number. >>I visited Motorola's web and I tried, let see what happens. ;) > >Keep us informed. If it works we maybe should all order the manual because we >could all work with the same documentation. With Motorola, I saw no number to call, so I ordered them from the site. But yeah, getting the same books would be good, because then we'll all be on the same page -- literally! :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 12 14:46:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA49512 for dynarec-outgoing; Tue, 12 Sep 2000 14:46:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Byteswapping From: "M.I.K.e" Message-ID: <0003711d53bdc5a6_mailit@mail.dynarec.com> References: Date: Tue, 12 Sep 2000 23:55:03 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Hm... books last about 50-75 years until they start falling apart. Only if acid was used to make the pages white. >I've >yet to have a CD "go bad", but let's wait another 45 years to see if it >outlasts a book. ;-) I think I heard something about 50 years of lifetime for a CD, but who knows? A bit off topic: I just tested the dynarec site with IE4 under MacOS8 since both run nicely under Basilisk II ;-) I only tested the local copy so far since I couldn't find out how to connect to the internet with MacOS, but I think I need a larger installation of MacOS anyway. >-->Neil -- M.I.K.e Parkinson's Fifth Law: If there is a way to delay in important decision, the good bureaucracy, public or private, will find it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 12 14:47:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA49523 for dynarec-outgoing; Tue, 12 Sep 2000 14:47:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000912144825.00822ad0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 12 Sep 2000 14:48:25 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Byteswapping In-Reply-To: References: <3.0.5.32.20000912143602.00827100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 02:59 PM 9/12/2000 +0000, you wrote: >> >even more handy than a massive ISA manual. ;) >> Electronic books are evil, you can't flip through the pages because there >> are no pages, it's just as cumbersome as using Adobe Acrobat Reader or >> something. >> Plus, electronics don't last as long as a real book. > >Hm... books last about 50-75 years until they start falling apart. I've >yet to have a CD "go bad", but let's wait another 45 years to see if it >outlasts a book. ;-) Some documents and books have been around for 2000 years in original form. Obviously much care was taken in preserving them. But the problem with an electronic PDA-type book is that the hardware is going to go bad one of these days for a number of reasons. What if the battery runs out and someone who finds it 200 years down the road won't know exactly what do to to get it working? Books usually have to get copied and recopied and reprinted and what not, but it all seems better than with an electronic device which requires operation, as opposed to just being able to open it up and read the contents. Who knows though? I just like books better ;) There's pros and cons to both traditional and electronic books. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 12 14:49:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA49532 for dynarec-outgoing; Tue, 12 Sep 2000 14:49:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 12 Sep 2000 15:10:40 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Byteswapping In-Reply-To: <0003711d53bdc5a6_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Hm... books last about 50-75 years until they start falling apart. > Only if acid was used to make the pages white. The bindings are usually the problem. I have a book from 1925 (lighthouse book) that is falling apart. > >I've > >yet to have a CD "go bad", but let's wait another 45 years to see if it > >outlasts a book. ;-) > I think I heard something about 50 years of lifetime for a CD, but who knows? They said that CDs would only last 10 years back in the late 80's. The fact is no one knows. They may last forever, and there's no scientific evidence of anything different. Only speculation. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 12 14:54:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA49544 for dynarec-outgoing; Tue, 12 Sep 2000 14:53:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 12 Sep 2000 15:15:24 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Byteswapping In-Reply-To: <3.0.5.32.20000912144825.00822ad0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > But the problem with an electronic PDA-type book is that the hardware is > going to go bad one of these days for a number of reasons. Sure. But at the same time, new hardware will be able to read the old stuff and will be able to convert it. > know exactly what do to to get it working? Books usually have to get copied > and recopied and reprinted and what not, but it all seems better than with > an electronic device which requires operation, as opposed to just being > able to open it up and read the contents. The devices aren't the issue - it's the software part f things that's the issue. As long as they are migrated (I.E. copied) to newer forms of computers, they'll survive just fine. > Who knows though? I just like books better ;) There's pros and cons to > both traditional and electronic books. I like the ability to sit on your ass and read anywhere. I also like the ability to be able to search. Of course, I'd never want to read a book for "fun" - only for research or enlightenment. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 12 14:56:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA49558 for dynarec-outgoing; Tue, 12 Sep 2000 14:56:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Byteswapping From: "M.I.K.e" Message-ID: <0003711d744ae77b_mailit@mail.dynarec.com> References: <3.0.5.32.20000912143744.00827870@powernet.net> Date: Wed, 13 Sep 2000 00:04:09 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I don't know, I just called the 1-800 number. "I just called to say..." No, that was a different song ;-) >With Motorola, I saw no number to call, so I ordered them from the site. If it works, fine. >But yeah, getting the same books would be good, because then we'll all be >on the same page -- literally! :) Playing language games, hu? ;-) But indeed would be easier to say "Open your manual on page xx" - damn, this reminds me of school lessons! >Bart -- M.I.K.e If you had any brains, you'd be dangerous. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 12 15:07:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA49579 for dynarec-outgoing; Tue, 12 Sep 2000 15:06:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Byteswapping From: "M.I.K.e" Message-ID: <0003711d90d64735_mailit@mail.dynarec.com> References: Date: Wed, 13 Sep 2000 00:12:08 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The bindings are usually the problem. I have a book from 1925 (lighthouse >book) that is falling apart. We have a lexicon (three books) from 1893, which is still very usable. >They said that CDs would only last 10 years back in the late 80's. The >fact is no one knows. They may last forever, and there's no scientific >evidence of anything different. Only speculation. Yep, that's what I thought too. >-->Neil -- M.I.K.e What is the difference between a Turing machine and the modern computer? It's the same as that between Hillary's ascent of Everest and the establishment of a Hilton on its peak. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 12 15:08:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA49591 for dynarec-outgoing; Tue, 12 Sep 2000 15:08:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000912150836.0082b1b0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 12 Sep 2000 15:08:36 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Byteswapping In-Reply-To: References: <3.0.5.32.20000912144825.00822ad0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 03:15 PM 9/12/2000 +0000, you wrote: >> But the problem with an electronic PDA-type book is that the hardware is >> going to go bad one of these days for a number of reasons. > >Sure. But at the same time, new hardware will be able to read the old >stuff and will be able to convert it. Well, that depends. If they can maintain backwards compatibility, that's cool. But the technology could be forgotten. I mean, I doubt there will ever be a good standard, there will always be new, better ideas. So some of the ideas might get lost. On the flip side, the same happens with books, many books just disappear and nobody ever knows about them a few hundred years down the road. Also, what if Kazakhstan or Turkmenistan or some other 'stan takes over the world? I doubt they'll have the technology to read some old electronic books ;) Hehe. >The devices aren't the issue - it's the software part f things that's the >issue. As long as they are migrated (I.E. copied) to newer forms of >computers, they'll survive just fine. The hardware could be a problem. Not every book will be copied to computers, especially if some country collapses, and falls into turmoil of all sorts. If an electronic book doesn't get copied, and is found a couple thousand years later, then what? :) If a manuscript or scroll survives a thousand years, you just have to translate what you see. But with a possibly broken electronic book, who knows? :) >I like the ability to sit on your ass and read anywhere. I also like the >ability to be able to search. Of course, I'd never want to read a book for >"fun" - only for research or enlightenment. Yeah, nowadays I just use books for those purposes. And it's always better to search through it with one's grubby little fingers IMO ;) Rather than scrolling up or down or using some Search function. Bleh :P Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 13 02:10:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA50265 for dynarec-outgoing; Wed, 13 Sep 2000 02:10:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009130915.LAA10153@pons.ac.upc.es> Subject: DYNAREC: Another Dynamo? To: dynarec@dynarec.com Date: Wed, 13 Sep 2000 11:15:58 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I went to a speak about a HPLabs project called "Dynamo" which remind me about something. ;) But it seems to be a different project (or my memory is getting still worst). It's a kind of dynamic optimizer of code. Althought after the speak I'm not sure if it is really a so good technique for optimizations (unless the binary to be optimized is really sub-optimal or you have a kind of special machine), perhaps we could get something interesting. ;) It's basically a system which with a native to native interpreter makes traces of execution paths and then generates optimized code (inlining, branch reduction, ...) for the more usually taken paths. The optimized code is stored in a cache. The cache perfoms flushes so it isn't really as our dynarecs. And I think the interpreter should make the thing too slow ... but it seems the PA processors are very special, I don't know. In any case, the link: http://www.hlp.hp.com/cambridge/projects/Dynamo Let me guess. You already know about it, don't you Mike? ;) It will be useful for my bibliography. ;) BTW, about MZ80 and bankswitching I was sure that Monday morning it was working but yesterday afternoon I tried again and it didn't, damn! I don't know what is going wrong now. :( Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 13 05:05:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA50418 for dynarec-outgoing; Wed, 13 Sep 2000 05:04:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Another Dynamo? From: "M.I.K.e" Message-ID: <000371293ff23f28_mailit@mail.dynarec.com> References: <200009130915.LAA10153@pons.ac.upc.es> Date: Wed, 13 Sep 2000 14:08:30 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I went to a speak about a HPLabs project called "Dynamo" >which remind me about something. ;) Heard the name before. >It's a kind of dynamic optimizer of code. Now I know why I didn't take a look yet. >It's basically a system which with a native to native >interpreter makes traces of execution paths and then >generates optimized code (inlining, branch reduction, >...) for the more usually taken paths. The optimized >code is stored in a cache. The cache perfoms flushes >so it isn't really as our dynarecs. And I think the >interpreter should make the thing too slow ... I'd have to take a look... >but it seems the PA processors are very special, Yeah, must be the CPU where is instruction set looks as if it was created from statistical data. Which other architecture has instructions like "ADD and Branch"? I think most of it's performance comes from these strange instructions and it's caches. PA-RISC have the largest 1st level caches I know: I think the PA -8500 512K instruction and 1MB data cache, yes that's 1st level and it's even 4-way set associative! >http://www.hlp.hp.com/cambridge/projects/Dynamo Thanks. >Let me guess. You already know about it, don't you >Mike? ;) You know me too well! Someday I'll have to kill you to keep some secrets! ;-) >Victor -- M.I.K.e Health nuts are going to feel stupid someday, lying in hospitals dying of nothing. -- Redd Foxx --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 13 13:45:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA50839 for dynarec-outgoing; Wed, 13 Sep 2000 13:44:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00aa01c01dc3$c8d367e0$4d44a8c2@lion> From: "Neil Griffiths" To: Subject: DYNAREC: Byteswapping Date: Wed, 13 Sep 2000 20:21:43 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, I'm back! In good old(!) Blighty too. Goddamit, it's expensive over here...:-/ > Well, it has to be functional, but I also prefer real books to loose print- > outs. Same here! > >Books are infinitely more comfortable than PDFs. It's much quicker to > >flip a few pages than mess with a PDF :P > > Indeed, just what I'm thinking! That's why computers never will replace > books completely. That is, of course, until they develop computers good enough to take to the shitter with you. Sorry. Nasty thoughts there. :-> Lots of mail to read through. You may get lots of messages from me tomorrow as I go through the backlog... Poor people! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 13 14:40:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA50896 for dynarec-outgoing; Wed, 13 Sep 2000 14:39:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Byteswapping From: "M.I.K.e" Message-ID: <000371313f62fa36_mailit@mail.dynarec.com> References: <00aa01c01dc3$c8d367e0$4d44a8c2@lion> Date: Wed, 13 Sep 2000 23:41:00 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm back! In good old(!) Blighty too. I thought you must be back by now. Any problems transfering all your stuff? I hope your arm is ok... >Goddamit, it's expensive over here...:-/ And I thought Munich is expensive ;-) >That is, of course, until they develop computers good enough to take to the >shitter with you. Sorry. Nasty thoughts there. :-> Hehe, they manual will have to say: "Don't throw the HypeThinEBook(TM) into the toilet when you are done!" ;-) >Lots of mail to read through. You may get lots of messages from me tomorrow >as I go through the backlog... Poor people! ;) Oh my... >Neil. -- M.I.K.e The National Short-Sleeved Shirt Association says: Support your right to bare arms! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 13 14:40:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA50891 for dynarec-outgoing; Wed, 13 Sep 2000 14:39:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: IE4 on BeOS From: "M.I.K.e" Message-ID: <0003713151d91362_mailit@mail.dynarec.com> Date: Wed, 13 Sep 2000 23:46:10 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Ok, it's a bit off-topic... but it shows again how useful emulators can be. Normally I surf under BeOS using NetPositive. When a site needs JavaScript I switch to Opera, but there are some sites even Opera doesn't work with. What could I do when I didn't want to reboot all the time to use Netscape or IE? Well, I chose the option of an emulator freak. Since the Basilisk II Mac emuator for BeOS is quite good I installed MacOS 8 on it, then IE4 and FreePPP for internet access, and now I don't have to reboot my computer to use IE4, although I have to admit that it's a bit slow... -- M.I.K.e Think of your family tonight. Try to crawl home after the computer crashes. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 13 16:41:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA50999 for dynarec-outgoing; Wed, 13 Sep 2000 16:40:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 13 Sep 2000 17:01:48 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Timing being important Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Take a look at this message from the MAME list. It showcases just how bloody important timing is in some environments (in this case the Amiga). -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 Subject: [MESSDEV] Implementing overly complex bus cycle timmings Im having a go at the Amiga/Arcadia drivers again. Hopefully it will help narrowing down some 68k core problems, and get some games going at the same time. My question is how to deal with utterly complex bus sharing mechanisms. Take the Amiga. You have 227 bus cycle slots running per scanline. That is, the thing can move up to 227 16-bit words per scanline. They're allocated like this: - 4 cycles for memory refresh (even cycles) - 3 cycles for disk dma (even cycles) - 4 cycles for audio dma (even cycles) - 16 cycles for sprite dma (8 sprites) (even cycles) - the rest is used for bitplane dma (even/odd cycles used according to resolution, might use all the remaining slots for hi-res, etc). One of the niceties is that you can setup the bitplane dma to start earlier and to make a 'wider' screen, but at the cost of not being able to use the higher numbered sprites. The devices that run on odd bus cycles are (in priority order): - The Copper = pixel-based coprocessor. Can run simple instructions wich can take 4-6 cycles per instruction. - The Blitter DMA = custom chip that handles 2d gfx operations. From custom blitting with masks to line drawing. Cycle counts depend on blitted amount of data. - The 68000 = Well, you know what this is. The problem is that the 68000 might not even run for a set of scanlines if the overall DMA activity is too high. If the software wont be so picky about these details, I wouldnt need to worry about it, but all these things were accounted for back then, and some of them abused too. Any ideas for handling this kinda stuff?. Im also worried about not being able to stop a single processor emulation (I think this was an issue with Mame currently?). Ernesto. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 14 03:36:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA51639 for dynarec-outgoing; Thu, 14 Sep 2000 03:34:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009141035.MAA15306@pons.ac.upc.es> Subject: DYNAREC: Flag calculation elimination? To: dynarec@dynarec.com Date: Thu, 14 Sep 2000 12:35:37 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Has anyone thought that any load or store instruction in a CPU with a memory protection system (MMU, page faults, ...) can be considered as a flag consumer? ;) Damn!! If you want a 100% accurated dynarec you must garantee that all the CPU status when an exception happens is exactly emulated. Flags included. I don't think in our scope (videogames) that would be a terrible problem but I won't garantee any debugger running ... or even an emulator or videogame using awfully special features would run correctly in one of ours dynarec (speed directed). ;P Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 14 06:06:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA51765 for dynarec-outgoing; Thu, 14 Sep 2000 06:04:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: julesb@btinternet.com To: dynarec@dynarec.com Date: Thu, 14 Sep 2000 14:09:16 +0100 Subject: Re: DYNAREC: Flag calculation elimination? Message-id: <39c0cdfc.5e5b.0@btinternet.com> X-User-Info: 193.131.176.3 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Has anyone thought that any load or store instruction in a >CPU with a memory protection system (MMU, page faults, ...) >can be considered as a flag consumer? ;) I'm assuming by "flag consumer" you mean they are able to corrupt flags in the context of the user process? If so, I can only say that for the ARM at least that isn't a problem, because the flags register is shadowed if an exception+mode switch occurs. Other processors may be similar... You would need to ensure that all your in-use registers were spilled back to memory before any load/store instruction though. Alternatively, maybe if a function is used for load/store (which may be necessary if MMU emulation is being used anyway), an extra parameter could be passed to it as a bit-mask containing unspilled registers, which can be patched up if an exception occurs? >If you want a 100% accurated dynarec you must garantee that >all the CPU status when an exception happens is exactly >emulated. Flags included. > >I don't think in our scope (videogames) that would be a >terrible problem but I won't garantee any debugger running >... or even an emulator or videogame using awfully special >features would run correctly in one of ours dynarec (speed >directed). ;P It's probably important to get things right. By the way, the JIT for UAE someone (MiKE?) mentioned seems to be pretty good, even if not spectacularly stable... Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 14 08:49:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA51887 for dynarec-outgoing; Thu, 14 Sep 2000 08:47:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: julesb@btinternet.com To: dynarec@dynarec.com Date: Thu, 14 Sep 2000 16:52:38 +0100 Subject: Re: DYNAREC: Flag calculation elimination? Message-id: <39c0f446.1187.0@btinternet.com> X-User-Info: 193.131.176.3 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>Has anyone thought that any load or store instruction in a >>CPU with a memory protection system (MMU, page faults, ...) >>can be considered as a flag consumer? ;) > >I'm assuming by "flag consumer" you mean they are able to >corrupt flags in the context of the user process? Oh, hang on, that's not what you meant at all, is it? I'll shut up now. Jules ;-) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 15 05:55:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA53059 for dynarec-outgoing; Fri, 15 Sep 2000 05:55:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Hey Mr Webmaster (aka NG) From: "M.I.K.e" Message-ID: <000371523d1c4f38_mailit@mail.dynarec.com> Date: Fri, 15 Sep 2000 15:02:36 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil, since you are the other webmaster I'd be interested what you think of the redesigned dynarec.com site. Also, could you please send me your "new" email address? -- M.I.K.e What this country needs is a dime that will buy a good five-cent bagel. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 15 11:31:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA53339 for dynarec-outgoing; Fri, 15 Sep 2000 11:31:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 15 Sep 2000 11:53:09 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Hey Mr Webmaster (aka NG) In-Reply-To: <000371523d1c4f38_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > since you are the other webmaster I'd be interested what you think of the > redesigned dynarec.com site. I didn't know I was the other webmaster. ;-) I looked at the site and I don't see much difference from the last time I looked at it... perhaps I'm just not paying enough attention! > Also, could you please send me your "new" email address? What do you mean by "new" email address? It's still neil@synthcom.com - though neilb@dynarec.com will also work. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 15 11:38:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA53353 for dynarec-outgoing; Fri, 15 Sep 2000 11:38:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001201c01f45$0f396cc0$d345ae3e@hal9000> From: "Victor Moya del Barrio \(DYNAREC\)" To: References: Subject: Re: DYNAREC: Hey Mr Webmaster (aka NG) Date: Fri, 15 Sep 2000 20:45:01 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > since you are the other webmaster I'd be interested what you think of the > > redesigned dynarec.com site. > > I didn't know I was the other webmaster. ;-) I looked at the site and I > don't see much difference from the last time I looked at it... perhaps I'm > just not paying enough attention! > > > Also, could you please send me your "new" email address? > > What do you mean by "new" email address? It's still neil@synthcom.com - > though neilb@dynarec.com will also work. > I think he has talking about the other Neil. ;) See the subject. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 15 11:48:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA53370 for dynarec-outgoing; Fri, 15 Sep 2000 11:48:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001b01c01f46$791d29a0$d345ae3e@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Static compilation and videogames Date: Fri, 15 Sep 2000 20:55:08 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Well there hasn't been many traffic this week. So I will post something I have been thoughting about today while going in the suburban. ;) You know I'm now working (real job ;) in a project about static binary translation (althought it is also related with virtual machines ...). Well, I was thoughting that if the static translation has been largely used by big enterprises by ages to translate their old applications to their new systems, it couldn't be the idea also useful for the videogames companies? The reason because static translation really works on that cases are: it's only needed to emulate the user level code (not the full behavior of a CPU which can be more complicated); there aren't problems with timming; the programs use the OS API or in any case libraries so there isn't any need of emulate the hardware, just to perform what in our scene is now called high-level emulation (HLE) (it is strange that in the emulation scene seems to be considered a new technique when in fact is the oldest one ...). Then I took a look to the actual videogames scene and who in hell is doing programming at the hardware level? Noone or perhaps small groups of mad people ;). And I don't want to talk about code optimization because the programming level of actual PC games is really shit ... And further more it isn't just in the PC world, the console world is still a bit safe about that but with Dreamcast which can use Windows CE and the mithic X-Box (I hope it will never be released ;) the games are programmed at library level or even OS (DirectX). So perhaps now static translation which means HLE could be possible. I'm not talking about releasing static translators rather than emulators to the emu scene because it is still very green and static translation isn't something that a common user could do at hand by himself (although with .ini files or similar it could work how it has been working in N64 emulation). But wouldn't be the videogames companies interested in static translators for translate their games to another plataforms? It's known that the best way (the fastest performace and the less error prone) to port a program to another machine is to recompile the source code for the other machine. But many times if the source wasn't implemented to be portable or because of the difference between the machine it is a hard task which needs a lot of time. It could be designed and sold to the companies a static translator for translate their games from one machine to another (for example from PC to PSX or from PSX to PC) from their binaries? The actual consoles are more near to a real computer than ever (just see the specification of XBox, it's a PC!!) in terms of architecture. They even run executables from a file system rather than using roms. There are pros and contras and the idea isn't well studied. Would be the difference between the systems too large? But it has advantage over source porting (or serious companies wouldn't have used it when they also had their sources). And static translation in the level of the own program developer is easier than in the emulation scene because it can easily pass hints they know to the static translator so the job is easier. Just the crazy thoughts I usually have. ;) Comments? Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 15 12:30:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA53419 for dynarec-outgoing; Fri, 15 Sep 2000 12:30:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Hey Mr Webmaster (aka NG) From: "M.I.K.e" Message-ID: <0003715765f6f583_mailit@mail.dynarec.com> References: Date: Fri, 15 Sep 2000 21:11:56 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I didn't know I was the other webmaster. ;-) But you know that you don't know? ;-) According to the subject I meant NG... >I looked at the site and I >don't see much difference from the last time I looked at it... perhaps I'm >just not paying enough attention! Awww... >> Also, could you please send me your "new" email address? >What do you mean by "new" email address? It's still neil@synthcom.com - >though neilb@dynarec.com will also work. Since I meant NG I wanted to know his email address in Wales, as I don't think he'll use his Eurocpter or Freenet addresses anymore. >-->Neil -- M.I.K.e panic: kernel trap (ignored) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 15 12:30:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA53427 for dynarec-outgoing; Fri, 15 Sep 2000 12:30:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Static compilation and videogames From: "M.I.K.e" Message-ID: <00037157c9c161e7_mailit@mail.dynarec.com> References: <001b01c01f46$791d29a0$d345ae3e@hal9000> Date: Fri, 15 Sep 2000 21:39:51 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You know I'm now working (real job ;) in a project about >static binary translation (althought it is also related with >virtual machines ...). Great, so now you really are our static recompilation specialist ;-) >Well, I was thoughting that if the static >translation has been largely used by big enterprises by ages >to translate their old applications to their new systems, it >couldn't be the idea also useful for the videogames companies? Nope, I don't think that it will be that interesting for videogame companies, because most programs which are normally translated are needed because of their function, but games normally don't have a real function other thant entertainment. Also a videogame machine of a new generation is supposed to exploit it's new possibilities, which isn't done when you recompile old games. >The reason because static translation really works on that >cases are: it's only needed to emulate the user level >code (not the full behavior of a CPU which can be more >complicated); there aren't problems with timming; the >programs use the OS API or in any case libraries so >there isn't any need of emulate the hardware, just to >perform what in our scene is now called high-level >emulation (HLE) Well, this might be true for a machine like the 3DO where only the processor was the same in all the different makes, so strict adherence to the OS was necessary. But the N64 has no OS at all, ok it has certain libs, but do all the games really use the same libs? I think some of the more complicated machines like Saturn or Jaguar had to be programmed at a relatively low level. And on the PSX it's done to get yet more out of the aged hardware. Although the PSX has an OS it has only very basic functions and modern games work with lots of dirty tricks, eg. like data streaming to minimize loading times, which is not only very hard to emulate but merely impossible to translate statically. >Then I took a look to the actual videogames scene and >who in hell is doing programming at the hardware level? >Noone or perhaps small groups of mad people ;). Well, what about the group around Hideo Kojima? I think there were quite low level with MGS and it seems that they use lots of dirty tricks in MGS2 as well. I know that some games for the PSX are later converted to PC, so the programmig has to be fairly high-level. >And further more it isn't just in the PC world, the >console world is still a bit safe about that but with >Dreamcast which can use Windows CE It seems that the DC has a very stripped down and especially optimized version of WinCE, so it isn't that big of a problem, and the possibility to use DirectX increases compatibility. Of course the DC also has a special OS from Sega. >and the mithic >X-Box (I hope it will never be released ;) Me too. I guess the only thing it might add to console gaming is having to install the games first... >the games are >programmed at library level or even OS (DirectX). >So perhaps now static translation which means HLE >could be possible. True, but I bet some hackers will be keen on doing some tricks with the ARM7 in the DC and I think still the majority of DC games was realized with Sega's OS and not WinCE, but I'm not a DC specialist... >But wouldn't be the videogames companies interested >in static translators for translate their games to another >plataforms? I don't think so. >Just the crazy thoughts I usually have. ;) We are getting used to it ;-) >Victor -- M.I.K.e Disc space -- the final frontier! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 15 16:19:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA53626 for dynarec-outgoing; Fri, 15 Sep 2000 16:19:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c01f6b$ccb2b740$a543a8c2@lion> From: "Neil Griffiths" To: References: <000371523d1c4f38_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Hey Mr Webmaster (aka NG) Date: Sat, 16 Sep 2000 00:20:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > since you are the other webmaster I'd be interested what you think of the > redesigned dynarec.com site. It looks good - though it needs a little bit of work. It doesn't view very well at 640x480 or 800x600 - so I'll make some changes. But you've done well - well done! > Also, could you please send me your "new" email address? Sure, no problem! It's n.griffiths@virgin.net - or you can always use neilg@dynarec.com. :) If I send any mails to the list tonight, maybe you should ignore them. I'm slightly drunk - best state for coming back to the UK! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 15 22:50:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA53907 for dynarec-outgoing; Fri, 15 Sep 2000 22:50:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000915225056.0082b640@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 15 Sep 2000 22:50:56 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Condition codes in the 68K Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I've finally gotten my emulator to run some demos and parts of certain games (not far enough to be playable yet though) but I have reason to believe that I may have misinterpreted Motorola's documentation on condition codes. I was hoping someone here could shed some light on my problem? Table 3-19 on page 3-19 of the M68000 Programmer's Reference Manual has information on how the CPU determines wether or not a condition is true. But Some of the more complex ones are a bit tough for me to understand: GE: N & V | !N & !V can this be interpreted as: (N AND V) OR (!N AND !V) ? LT: N & !V | !N & V (N AND !V) OR (!N AND V) ? (if Z is set, this is always false?) GT: N & V & !Z | !N & !V & Z (N AND V AND !Z) OR (!N AND !V AND Z) ? LE: Z | N & !V | !N & V (Z) OR (N AND !V) OR (!N AND V) ? I have handled GT like this: case 0xe: /* GT: N & V & !Z | !N & !V & !Z */ /* if Z, then it is GE and we don't take this branch */ e("test ah, byte 0x40\n"); e("jnz short .dont_do\n"); e("mov bl, al\n"); e("or bl, ah\n"); e("test bl, byte 0x81\n"); e("jpe short .do\n"); EmitLabel(".dont_do"); break; Where AH = NZ** ***C and AL is the V flag. This is probably wrong, maybe all the bits have to be evaluated in sequence with the proper operation? Any help would be very much appreciated :) Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 16 05:13:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA56487 for dynarec-outgoing; Sat, 16 Sep 2000 05:13:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000c01c01fd8$2e012d80$0500a8c0@jvsoft> From: "JV" To: References: <3.0.5.32.20000915225056.0082b640@powernet.net> Subject: Re: DYNAREC: Condition codes in the 68K Date: Sat, 16 Sep 2000 14:17:23 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: Bart To: Sent: Saturday, September 16, 2000 7:50 AM Subject: DYNAREC: Condition codes in the 68K > Hello, > > I've finally gotten my emulator to run some demos and parts of certain > games (not far enough to be playable yet though) Coolll!!!! but I have reason to > believe that I may have misinterpreted Motorola's documentation on > condition codes. I was hoping someone here could shed some light on my > problem? > > Table 3-19 on page 3-19 of the M68000 Programmer's Reference Manual has > information on how the CPU determines wether or not a condition is true. > But Some of the more complex ones are a bit tough for me to understand: > > GE: N & V | !N & !V can this be interpreted as: (N AND V) OR (!N AND !V) ? Yep > LT: N & !V | !N & V (N AND !V) OR (!N AND V) ? (if Z is set, this is > always false?) Thats correct, if Z is set this means that the result is at least "Equal" so it could never be "Less Than", thus the result will be false! > GT: N & V & !Z | !N & !V & Z (N AND V AND !Z) OR (!N AND !V AND Z) ? Correct > LE: Z | N & !V | !N & V (Z) OR (N AND !V) OR (!N AND V) ? Correct > > I have handled GT like this: > > case 0xe: /* GT: N & V & !Z | !N & !V & !Z */ > /* if Z, then it is GE and we don't take this branch */ > e("test ah, byte 0x40\n"); > e("jnz short .dont_do\n"); > e("mov bl, al\n"); > e("or bl, ah\n"); > e("test bl, byte 0x81\n"); > e("jpe short .do\n"); > EmitLabel(".dont_do"); > break; > Where AH = NZ** ***C and AL is the V flag. > > This is probably wrong, maybe all the bits have to be evaluated in sequence > with the proper operation? > Well I'am to lazy to solve this one for you, but now you know how to do flag calculations you could probably solve this one yourselve. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 16 05:37:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA56522 for dynarec-outgoing; Sat, 16 Sep 2000 05:37:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Hey Mr Webmaster (aka NG) From: "M.I.K.e" Message-ID: <000371661b3c798c_mailit@mail.dynarec.com> References: <000371523d1c4f38_mailit@mail.dynarec.com> <000b01c01f6b$ccb2b740$a543a8c2@lion> Date: Sat, 16 Sep 2000 14:44:47 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [dynarec.com] >It looks good - though it needs a little bit of work. Yeah, especially in the sections without content, and we really should do something to remove NB's big tits, as his child shall be able to distinguish mother and father ;-) >It doesn't view very well at 640x480 or 800x600 - I think Victor viewed it in a small resolution and said it was ok, but I'm not sure. I did make the top frame fixed size that the logo is always displayed in full size. > so I'll make some changes. You have more experience in web design than me anyway. >But you've done well - well done! Thanks. >Sure, no problem! It's n.griffiths@virgin.net - or you can always use >neilg@dynarec.com. :) Ok. >If I send any mails to the list tonight, maybe you should ignore them. I'm >slightly drunk - best state for coming back to the UK! ;) I thought that's the normal state when being in the UK ;-) >Neil. -- M.I.K.e "Every man has his price. Mine is $3.95." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 16 12:08:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA56874 for dynarec-outgoing; Sat, 16 Sep 2000 12:07:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000916120824.0082a210@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 16 Sep 2000 12:08:24 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Condition codes in the 68K In-Reply-To: <000c01c01fd8$2e012d80$0500a8c0@jvsoft> References: <3.0.5.32.20000915225056.0082b640@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> I have handled GT like this: >> >> case 0xe: /* GT: N & V & !Z | !N & !V & !Z */ >> /* if Z, then it is GE and we don't take this branch */ >> e("test ah, byte 0x40\n"); >> e("jnz short .dont_do\n"); >> e("mov bl, al\n"); >> e("or bl, ah\n"); >> e("test bl, byte 0x81\n"); >> e("jpe short .do\n"); >> EmitLabel(".dont_do"); >> break; >> Where AH = NZ** ***C and AL is the V flag. >> >> This is probably wrong, maybe all the bits have to be evaluated in >sequence >> with the proper operation? >> > > >Well I'am to lazy to solve this one for you, but now you know how to do flag >calculations you could probably solve this one yourselve. You mentioned all of my assumptions about condition detection were correct, and I have already had every bit of condition detection code based around that... so I don't see what's wrong. Maybe it isn't the Bcc instructions. I'll look at DBcc, and try debugging further, it could be something completely different. Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 16 12:16:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA56892 for dynarec-outgoing; Sat, 16 Sep 2000 12:16:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000501c02013$a1acd5a0$3244ae3e@hal9000> From: "Victor Moya del Barrio \(DYNAREC\)" To: References: <3.0.5.32.20000915225056.0082b640@powernet.net> <3.0.5.32.20000916120824.0082a210@powernet.net> Subject: Re: DYNAREC: Condition codes in the 68K Date: Sat, 16 Sep 2000 21:23:43 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> I have handled GT like this: > >> > >> case 0xe: /* GT: N & V & !Z | !N & !V & !Z */ > >> /* if Z, then it is GE and we don't take this branch */ > >> e("test ah, byte 0x40\n"); > >> e("jnz short .dont_do\n"); > >> e("mov bl, al\n"); > >> e("or bl, ah\n"); > >> e("test bl, byte 0x81\n"); > >> e("jpe short .do\n"); > >> EmitLabel(".dont_do"); > >> break; > >> Where AH = NZ** ***C and AL is the V flag. > >> > What bit is V in al? > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 16 12:59:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA56938 for dynarec-outgoing; Sat, 16 Sep 2000 12:59:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000916130006.0082c6c0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 16 Sep 2000 13:00:06 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Condition codes in the 68K In-Reply-To: <000501c02013$a1acd5a0$3244ae3e@hal9000> References: <3.0.5.32.20000915225056.0082b640@powernet.net> <3.0.5.32.20000916120824.0082a210@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 09:23 PM 9/16/2000 +0200, you wrote: >> >> I have handled GT like this: >> >> >> >> case 0xe: /* GT: N & V & !Z | !N & !V & !Z */ >> >> /* if Z, then it is GE and we don't take this branch */ >> >> e("test ah, byte 0x40\n"); >> >> e("jnz short .dont_do\n"); >> >> e("mov bl, al\n"); >> >> e("or bl, ah\n"); >> >> e("test bl, byte 0x81\n"); >> >> e("jpe short .do\n"); >> >> EmitLabel(".dont_do"); >> >> break; >> >> Where AH = NZ** ***C and AL is the V flag. >> >> >> >What bit is V in al? Bit 0... all other bits are always kept 0, so in effect, the whole AL register can be thought of as V. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 16 13:05:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA56960 for dynarec-outgoing; Sat, 16 Sep 2000 13:05:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001501c0201a$8581f8e0$3244ae3e@hal9000> From: "Victor Moya del Barrio \(DYNAREC\)" To: References: <3.0.5.32.20000915225056.0082b640@powernet.net> <3.0.5.32.20000916120824.0082a210@powernet.net> <3.0.5.32.20000916130006.0082c6c0@powernet.net> Subject: Re: DYNAREC: Condition codes in the 68K Date: Sat, 16 Sep 2000 22:13:03 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> >> case 0xe: /* GT: N & V & !Z | !N & !V & !Z */ > >> >> /* if Z, then it is GE and we don't take this branch */ > >> >> e("test ah, byte 0x40\n"); > >> >> e("jnz short .dont_do\n"); > >> >> e("mov bl, al\n"); > >> >> e("or bl, ah\n"); > >> >> e("test bl, byte 0x81\n"); > >> >> e("jpe short .do\n"); > >> >> EmitLabel(".dont_do"); > >> >> break; > >> >> Where AH = NZ** ***C and AL is the V flag. > >> >> > >> > >What bit is V in al? > > Bit 0... all other bits are always kept 0, so in effect, the whole AL > register can be thought of as V. > Then when you do "or bl,ah" you are getting C|V in bit 0. ;) I think you expect V only so you should have to clear C before oring. > > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 16 14:10:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA57032 for dynarec-outgoing; Sat, 16 Sep 2000 14:10:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000916141033.0082fba0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 16 Sep 2000 14:10:33 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Condition codes in the 68K In-Reply-To: <001501c0201a$8581f8e0$3244ae3e@hal9000> References: <3.0.5.32.20000915225056.0082b640@powernet.net> <3.0.5.32.20000916120824.0082a210@powernet.net> <3.0.5.32.20000916130006.0082c6c0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Then when you do "or bl,ah" you are getting C|V in bit 0. ;) >I think you expect V only so you should have to clear C before >oring. Ooops! How stupid of me :( I have found that quite a few of the more complex condition codes have this problem because they often use the V flag! Thanks a lot for pointing that out :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 16 16:39:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA57169 for dynarec-outgoing; Sat, 16 Sep 2000 16:38:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002301c02037$9f057900$d778a8c2@lion> From: "Neil Griffiths" To: References: <000371523d1c4f38_mailit@mail.dynarec.com> <000b01c01f6b$ccb2b740$a543a8c2@lion> <000371661b3c798c_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Hey Mr Webmaster (aka NG) Date: Sun, 17 Sep 2000 00:33:50 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >It looks good - though it needs a little bit of work. > > Yeah, especially in the sections without content, and we really should do > something to remove NB's big tits, as his child shall be able to distinguish > mother and father ;-) Yeah, we'll have to complain until Neil puts the pictures up... ;) > >It doesn't view very well at 640x480 or 800x600 - > > I think Victor viewed it in a small resolution and said it was ok, but I'm > not sure. I did make the top frame fixed size that the logo is always > displayed in full size. Whatever, it needs a little bit of work. I'd do it now except that I know I won't. Tomorrow it is. :) > > so I'll make some changes. > > You have more experience in web design than me anyway. I should hope so, it was my job for some months last year! > >But you've done well - well done! > > Thanks. No problem. ;) > >If I send any mails to the list tonight, maybe you should ignore them. I'm > >slightly drunk - best state for coming back to the UK! ;) > > I thought that's the normal state when being in the UK ;-) Maybe more the best state to be in than the normal state... ;-P Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 16 19:40:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA57306 for dynarec-outgoing; Sat, 16 Sep 2000 19:39:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Hey Mr Webmaster (aka NG) From: "M.I.K.e" Message-ID: <00037171e375c69f_mailit@mail.dynarec.com> References: <000371523d1c4f38_mailit@mail.dynarec.com> <000b01c01f6b$ccb2b740$a543a8c2@lion> <000371661b3c798c_mailit@mail.dynarec.com> <002301c02037$9f057900$d778a8c2@lion> Date: Sun, 17 Sep 2000 04:48:11 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yeah, we'll have to complain until Neil puts the pictures up... ;) You mean the pictures corresponding to the text or what? ;-) >Whatever, it needs a little bit of work. Sure. I still need to find a better characterisation for Victor... >I'd do it now except that I know I won't. Tomorrow it is. :) Hm, didn't you say that about trying BeOS as well? >> >slightly drunk - best state for coming back to the UK! ;) >> I thought that's the normal state when being in the UK ;-) >Maybe more the best state to be in than the normal state... ;-P I don't know. I've never been to the UK yet... >Neil. -- M.I.K.e Good leaders being scarce, following yourself is allowed. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 17 04:05:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA57887 for dynarec-outgoing; Sun, 17 Sep 2000 04:03:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001d01c02097$6230f4e0$e13fa8c2@lion> From: "Neil Griffiths" To: References: <000371523d1c4f38_mailit@mail.dynarec.com> <000b01c01f6b$ccb2b740$a543a8c2@lion> <000371661b3c798c_mailit@mail.dynarec.com> <002301c02037$9f057900$d778a8c2@lion> <00037171e375c69f_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Hey Mr Webmaster (aka NG) Date: Sun, 17 Sep 2000 12:00:00 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Yeah, we'll have to complain until Neil puts the pictures up... ;) > > You mean the pictures corresponding to the text or what? ;-) I'll let him decide... ;) > >Whatever, it needs a little bit of work. > > Sure. I still need to find a better characterisation for Victor... How about "Que?" - that might be good. ;) > >I'd do it now except that I know I won't. Tomorrow it is. :) > > Hm, didn't you say that about trying BeOS as well? I did install BeOS - though I admittedly didn't try it. Gosh, what could I do today? :) > >Maybe more the best state to be in than the normal state... ;-P > > I don't know. I've never been to the UK yet... Well, you've had your offer... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 17 04:59:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA57951 for dynarec-outgoing; Sun, 17 Sep 2000 04:58:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Hey Mr Webmaster (aka NG) From: "M.I.K.e" Message-ID: <00037179766e7a4a_mailit@mail.dynarec.com> References: <000371523d1c4f38_mailit@mail.dynarec.com> <000b01c01f6b$ccb2b740$a543a8c2@lion> <000371661b3c798c_mailit@mail.dynarec.com> <002301c02037$9f057900$d778a8c2@lion> <00037171e375c69f_mailit@mail.dynarec.com> <001d01c02097$6230f4e0$e13fa8c2@lion> Date: Sun, 17 Sep 2000 13:50:22 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> You mean the pictures corresponding to the text or what? ;-) >I'll let him decide... ;) Why don't we do a poll? With so many women on the list the answer will be obvious though ;-) >> Sure. I still need to find a better characterisation for Victor... >How about "Que?" - that might be good. ;) Well, he complained that he alwast gets the strange characterization, and I bet this won't help to change his opinion ;-) >I did install BeOS - though I admittedly didn't try it. Gosh, what could I >do today? :) Playing Thief 2 like me? >> I don't know. I've never been to the UK yet... >Well, you've had your offer... :) I know, and I will come to the UK someday... >Neil. -- M.I.K.e "Protozoa are small, and bacteria are small, but viruses are smaller than the both put together." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 17 12:36:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA58344 for dynarec-outgoing; Sun, 17 Sep 2000 12:34:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c020df$5091c460$6844ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20000915225056.0082b640@powernet.net> <3.0.5.32.20000916120824.0082a210@powernet.net> <3.0.5.32.20000916130006.0082c6c0@powernet.net> <3.0.5.32.20000916141033.0082fba0@powernet.net> Subject: Re: DYNAREC: Condition codes in the 68K Date: Sun, 17 Sep 2000 21:41:44 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Then when you do "or bl,ah" you are getting C|V in bit 0. ;) > >I think you expect V only so you should have to clear C before > >oring. > > Ooops! How stupid of me :( > I use to make a lot of stupid errors (like write assembly comments after the '\n' and not before). ;) > Thanks a lot for pointing that out :) > It makes me think I can be useful. ;) BTW, interesting interview at Eidolon. The last two questions were the more interesting. ;) Just joking. :) Seriously, some of the question like the one about "open source emulators" are really interesting. > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 17 13:10:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA58385 for dynarec-outgoing; Sun, 17 Sep 2000 13:09:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Sep 2000 13:32:04 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Getting back into it Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Time to get back in to DRM68K. At last I remember, the lexer was finished (or nearly finished) and we were trying to get the scripting stuff all sorted out. If I also remember correctly, we were having some difficulty in how we were going to do some of the disassembler stuff. Alex - you still around? Does this sound right to everyone? -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 17 13:16:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA58399 for dynarec-outgoing; Sun, 17 Sep 2000 13:14:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001501c020e4$f97683e0$6844ae3e@hal9000> From: "Victor Moya del Barrio \(DYNAREC\)" To: References: Subject: Re: DYNAREC: Getting back into it Date: Sun, 17 Sep 2000 22:22:15 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Time to get back in to DRM68K. > Good!! :) > At last I remember, the lexer was finished (or nearly finished) and we > were trying to get the scripting stuff all sorted out. > > If I also remember correctly, we were having some difficulty in how we > were going to do some of the disassembler stuff. Alex - you still around? > > Does this sound right to everyone? > Yes, milord. ;) > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 17 14:02:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA58449 for dynarec-outgoing; Sun, 17 Sep 2000 14:01:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Getting back into it From: "M.I.K.e" Message-ID: <0003718111cc235a_mailit@mail.dynarec.com> References: Date: Sun, 17 Sep 2000 22:54:53 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Time to get back in to DRM68K. Oh boy, oh boy, oh boy! >At last I remember, the lexer was finished (or nearly finished) Yup, and I still haven't tested it :-( >and we were trying to get the scripting stuff all sorted out. Indeed. >If I also remember correctly, we were having some difficulty in how we >were going to do some of the disassembler stuff. Yes, especially how to handle the more complicated addressing modes. >Does this sound right to everyone? Yessir! >-->Neil -- M.I.K.e Happiness isn't something you experience; it's something you remember. -- Oscar Levant --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 17 14:09:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA58466 for dynarec-outgoing; Sun, 17 Sep 2000 14:08:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001901c020eb$d0de3200$4938a8c2@lion> From: "Neil Griffiths" To: References: <000371523d1c4f38_mailit@mail.dynarec.com> <000b01c01f6b$ccb2b740$a543a8c2@lion> <000371661b3c798c_mailit@mail.dynarec.com> <002301c02037$9f057900$d778a8c2@lion> <00037171e375c69f_mailit@mail.dynarec.com> <001d01c02097$6230f4e0$e13fa8c2@lion> <00037179766e7a4a_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Hey Mr Webmaster (aka NG) Date: Sun, 17 Sep 2000 22:09:43 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >I'll let him decide... ;) > > Why don't we do a poll? With so many women on the list the answer will be > obvious though ;-) Well, you *could* be wrong... ;-))) > >How about "Que?" - that might be good. ;) > > Well, he complained that he alwast gets the strange characterization, and I > bet this won't help to change his opinion ;-) I'll think of a good one, don't worry. I always do. But you may need my (warped) sense of humour to understand it! > >I did install BeOS - though I admittedly didn't try it. Gosh, what could I > >do today? :) > > Playing Thief 2 like me? That's a possibility. But I actually... played Tekken 3. And then went to see my friend and his 7-month old daughter. So I kind of forgot to work on the site. But I will! > >> I don't know. I've never been to the UK yet... > >Well, you've had your offer... :) > > I know, and I will come to the UK someday... Damn! ;-P Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 17 15:18:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA58527 for dynarec-outgoing; Sun, 17 Sep 2000 15:16:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Hey Mr Webmaster (aka NG) From: "M.I.K.e" Message-ID: <0003718241fcc7fd_mailit@mail.dynarec.com> References: <000371523d1c4f38_mailit@mail.dynarec.com> <000b01c01f6b$ccb2b740$a543a8c2@lion> <000371661b3c798c_mailit@mail.dynarec.com> <002301c02037$9f057900$d778a8c2@lion> <00037171e375c69f_mailit@mail.dynarec.com> <001d01c02097$6230f4e0$e13fa8c2@lion> <00037179766e7a4a_mailit@mail.dynarec.com> <001901c020eb$d0de3200$4938a8c2@lion> Date: Mon, 18 Sep 2000 00:19:56 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Why don't we do a poll? With so many women on the list the answer will be >> obvious though ;-) >Well, you *could* be wrong... ;-))) Not very likely though ;-) >I'll think of a good one, don't worry. I always do. But you may need my >(warped) sense of humour to understand it! Hu, if Victor will be happy with your weird humor? ;-) >> Playing Thief 2 like me? >That's a possibility. The damn thing doesn't terminate the third mission because it marks the wrong goal :-( But I just found out that I won't be able to buy anything for mission four, so I'll just use the skip level cheat... Still a bit strange when you take into account that I installed the latest patch... >But I actually... played Tekken 3. On CVGS? >And then went to see my friend and his 7-month old daughter. Poor fellow ;-) >So I kind of forgot to work on the site. But I will! Tell me about it... >> I know, and I will come to the UK someday... >Damn! ;-P I guess MI5 will be alerted before I come over anyway ;-) >Neil. -- M.I.K.e It's not that I'm afraid to die. I just don't want to be there when it happens. -- Woody Allen --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 17 15:20:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA58539 for dynarec-outgoing; Sun, 17 Sep 2000 15:18:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Sep 2000 15:41:35 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Intermittent connectivity Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm going to be configuring Synthcom's firewall since one of my other intranet machines has been hacked. Since I've not mucked with ipfw's configuration before, I expect some problems accessing synthcom. But regardless, it'll be back up and running 100% before day's end. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 17 15:58:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA58577 for dynarec-outgoing; Sun, 17 Sep 2000 15:57:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Intermittent connectivity From: "M.I.K.e" Message-ID: <00037182e91981c7_mailit@mail.dynarec.com> References: Date: Mon, 18 Sep 2000 01:06:40 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm going to be configuring Synthcom's firewall since one of my other >intranet machines has been hacked. Damn, that's not nice! >Since I've not mucked with ipfw's >configuration before, I expect some problems accessing synthcom. But >regardless, it'll be back up and running 100% before day's end. I wish I could help you but I have absolutely no knowledge about that topic... But you're a clever guy and you'll be able to figure it out by yourself. BTW, maybe you should change the login method from telnet to ssh as well. >-->Neil -- M.I.K.e You know you've been spending too much time on the computer when your friend misdates a check, and you suggest adding a "++" to fix it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 17 16:01:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA58596 for dynarec-outgoing; Sun, 17 Sep 2000 16:00:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Sep 2000 16:22:56 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Intermittent connectivity In-Reply-To: <00037182e91981c7_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Since I've not mucked with ipfw's > >configuration before, I expect some problems accessing synthcom. But > >regardless, it'll be back up and running 100% before day's end. > I wish I could help you but I have absolutely no knowledge about that > topic... > But you're a clever guy and you'll be able to figure it out by yourself. And I can read manuals. ;-) I actually don't need any help. I just need to sit down and do it. > BTW, maybe you should change the login method from telnet to ssh as well. I'll have to look into that. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 17 19:35:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA58783 for dynarec-outgoing; Sun, 17 Sep 2000 19:35:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000917174143.00830100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 17 Sep 2000 17:41:43 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Getting back into it In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >If I also remember correctly, we were having some difficulty in how we >were going to do some of the disassembler stuff. Alex - you still around? BTW, speaking of disassemblers, remind me to send you guys yet another fixed version of Aaron Giles' disassembler if you still plan on using it. Not yet though, I've just found some fresh bugs I want to squash :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 17 19:35:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA58784 for dynarec-outgoing; Sun, 17 Sep 2000 19:35:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000917174006.0082a450@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 17 Sep 2000 17:40:06 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Condition codes in the 68K In-Reply-To: <000b01c020df$5091c460$6844ae3e@hal9000> References: <3.0.5.32.20000915225056.0082b640@powernet.net> <3.0.5.32.20000916120824.0082a210@powernet.net> <3.0.5.32.20000916130006.0082c6c0@powernet.net> <3.0.5.32.20000916141033.0082fba0@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I use to make a lot of stupid errors (like write assembly comments after >the '\n' and not before). ;) That's not a real bug though, just typing errors ;) >> Thanks a lot for pointing that out :) >> >It makes me think I can be useful. ;) The coolest thing about that fix is that it got quite a few things working properly, and it was enough to make Charles Doty's SEGA.BIN demo work 100% properly with my 68K core :) I've also found lots more bugs since then, including some nasty problems in LINK/UNLK which I missed, which means more stuff works fine! >BTW, interesting interview at Eidolon. The last two questions were >the more interesting. ;) Just joking. :) Seriously, some of the question >like the one about "open source emulators" are really interesting. It was a very cool thing to do on Eidolon's behalf, I found it interesting reading everyone's comments side by side! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 17 21:27:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA59076 for dynarec-outgoing; Sun, 17 Sep 2000 21:27:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Sep 2000 21:49:55 +0000 (GMT) From: Neil Bradley To: emudx@synthcom.com, chroma@synthcom.com, vectorlist@synthcom.com, rasterlist@synthcom.com, retrobeta@synthcom.com, dynarec@dynarec.com Subject: DYNAREC: Secuirty policy update complete In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Synthcom's firewall is now in place. Mailing lists, email, pop3 service, and everything else seem to be working OK now. Let me know if there's anything weird going on. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 18 01:34:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA59267 for dynarec-outgoing; Mon, 18 Sep 2000 01:34:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com Subject: DYNAREC: Fwd: WBT-2000 Program (Workshop on Binary Translation - 2000) From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Mon, 18 Sep 2000 10:48:15 +0200 Message-ID: <1eh5ggv.1990np563h2yiM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id BAA59264 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Just in case someone would like to attend to it... Are the papers available now on the ACM ? I am sorry but I no longer have access to the ACM but I gathered as many info as I could on fast register allocation algorithms (linear scan, binpacking, etc.). ------- Begin Forwarded Message ------- Subject: WBT-2000 Program (Workshop on Binary Translation - 2000) From: Erik Altman Newsgroups: comp.arch comp.compilers Date: 17 Sep 2000 22:58:09 -0400 Advance Program Workshop on Binary Translation'2000 (WBT-2000) ---------------------------------------------- Thursday, October 19, 2000 ...... Held in Conjunction with PACT'2000 Philadelphia, Pennsylvania Early Registration: September 22 http://www.ece.orst.edu/~pact2000/WBT.html 8:30 - 8:35 OPENING REMARKS 8:35 - 9:25 KEYNOTE ADDRESS Amitabh Srivastava, Microsoft Research 9:25 - 10:20 SESSION 1: Processors "A Dynamic Binary Translation Approach to Architectural Simulation," -- Harold W. Cain, Kevin M. Lepak, and Mikko H. Lipasti "Instruction Translation for an Experimental S/390 Processor," -- Rolf Hilgendorf and Wolfram Sauer 10:20 - 10:40 BREAK 10:40 - 12:00 SESSION 2: Optimization "JiTI: A Robust Just in Time Instrumentation Technique," -- Michiel Ronsse and Koen De Bosschere "Optimising Hot Paths in a Dynamic Binary Translator," -- David Ung and Cristina Cifuentes "Optimization and Precise Exceptions in Dynamic Compilation," -- Michael Gschwind and Erik Altman 12:00 WORKSHOP ENDS ------------------------------------------------------------ For more information, please contact the workshop co-chairs: Erik Altman erik@watson.ibm.com Dave Kaeli kaeli@ece.neu.edu ----------------- Program Committee ----------------- Cristina Cifuentes University of Queensland/Sun Kemal Ebcioglu IBM T.J. Watson Research Center Roger Espasa Universitat Politecnica de Catalunya Guang R. Gao University of Delaware David Hunter Compaq David Keppel Transmeta Bilha Mendelson IBM Israel Soo-Mook Moon Seoul National University Richard Schooler InCert V.C. Sreedhar IBM T.J. Watson Research Center Youfeng Wu Intel Benjamin Zorn Microsoft Research ************* Held in cooperation with ACM SIGMICRO ************* [Registration form snipped out] -------- End Forwarded Message -------- -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 18 01:45:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA59287 for dynarec-outgoing; Mon, 18 Sep 2000 01:45:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009180847.KAA02886@pons.ac.upc.es> Subject: Re: DYNAREC: Fwd: WBT-2000 Program (Workshop on Binary Translation - 2000) In-Reply-To: <1eh5ggv.1990np563h2yiM@[192.168.0.2]> "from Gwenole Beauchesne at Sep 18, 2000 10:48:15 am" To: dynarec@dynarec.com Date: Mon, 18 Sep 2000 10:47:50 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=ISO-8859-1 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > Just in case someone would like to attend to it... > > Are the papers available now on the ACM ? I am sorry but I no longer have > access to the ACM but I gathered as many info as I could on fast register > allocation algorithms (linear scan, binpacking, etc.). > I have access to ACM so I will take a look when I have a bit of free time. > ------- Begin Forwarded Message ------- > > Subject: WBT-2000 Program (Workshop on Binary Translation - 2000) > From: Erik Altman > Newsgroups: comp.arch > comp.compilers > Date: 17 Sep 2000 22:58:09 -0400 > > Advance Program > Workshop on Binary Translation'2000 (WBT-2000) > ---------------------------------------------- > > Thursday, October 19, 2000 ...... Held in Conjunction with PACT'2000 > Philadelphia, Pennsylvania Early Registration: September 22 > > http://www.ece.orst.edu/~pact2000/WBT.html > But that hasn't happened still ... > Roger Espasa Universitat Politecnica de Catalunya He! That is my boss. ;) What must be he doing there? ;) Mike posted some interesting articles in the IEEE magazine somedays ago. > Gwenolé Beauchesne Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 18 05:07:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA59626 for dynarec-outgoing; Mon, 18 Sep 2000 05:07:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004301c02168$3cc47fc0$a545e2c8@sto.zaz.com.br> From: "Willian Padovani Germano" To: Subject: DYNAREC: The new Amiga SDK: portable binaries Date: Mon, 18 Sep 2000 09:01:49 -0300 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6600 X-MIMEOLE: Produced By Microsoft MimeOLE V5.00.2919.6600 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, for some reason it seems this didn't get to the list, so I'm retrying: ----- Original Message ----- From: "Willian Padovani Germano" To: Sent: Saturday, September 16, 2000 3:54 AM Subject: The new Amiga SDK: portable binaries > Greetings, > > I used to be a lurker here but unsubscribed to change internet provider / > email address and only resubscribed a few days ago ( stayed about 2 months > away ). So I don't know if you guys discussed the new Amiga SDK. Case not, > this is from ibm's developerWorks newsletter, September 7: > (broken link right now) > -------------------------------------------------------- > The New Amiga SDK > Amiga, Inc. recently released a brand new SDK that runs on top of > Linux. Daniel Robbins takes a look at the SDK, explains how Amiga > could have a very positive impact for the Linux world, and walks SDK > owners through some installation hoops. > http://www-4.ibm.com/software/developer/library/amiga2/index.html > -------------------------------------------------------- > > I just checked and this article disappeared (I suppose they are fixing > something on it, since it is more about making it run on linux). But there > was a link at it to an interview, with much more info, here: > http://www-4.ibm.com/software/developer/library/amiga.html > > I'll add two answers from the interview to give a better idea of the Amiga > SDK: > ----------------------------- > (...) > McEwen: The new Amiga runs on x86 processors -- as well as PowerPC, > StrongARM, ARM, MIPS, SH3/4/5, and more. In addition to running on raw > hardware, we also run on Linux, embedded Linux, QNX, OS/9, [and] very soon > [we'll run on] VxWorks, iTron, EPOC, Palm, Windows 98, Windows CE, Windows > NT, and Windows 2000. We free the developer from the constraint of being > bound to a specific chipset or platform. At the same time, the new Amiga can > take advantage of the strengths of the environment that it's in. > (...) > Moss: This is one thing people don't understand, and they keep on saying, > "The new Amiga provides portable binaries. Portable binaries are slow." Now, > in the past they've been slow because portable binaries have always been > interpreted. But what happens with Tao's Intent is that they are dynamically > translated into actual native machine code. It only has to be translated > from VP code to native code once. The other thing that makes it very, very > fast is that Tao Intent, at the VP level, uses an object-based architecture > that takes methods, or functions, and creates small elements called tools. > One method equals one tool. And if you're using VP code, when you call the > single method, the single method gets loaded, translated, and executed. So > it's not like a traditional system like Java, where you call methods and the > entire class is yanked across. So it's actually very, very fast. You know > the 80/20 rule: You call an object. If you're lucky, you're probably going > to use at most 20% of operations in it. Not so with Intent; you only load, > translate, and execute what you are going to use. > (...) > --------------------------------------- > The SDK + docs is selling for about $100. What are your impressions about > this ? Is this the preview of where open source programming will go ? I can > say the article made me resubscribe to this list, kind of blinded after > "seing the light" : ). The future sometimes looks cool. > > -- > Willian, wgermano@mail.com > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 18 07:38:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA59745 for dynarec-outgoing; Mon, 18 Sep 2000 07:38:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: julesb@btinternet.com To: dynarec@dynarec.com Date: Mon, 18 Sep 2000 15:43:13 +0100 Subject: Re: DYNAREC: Condition codes in the 68K Message-id: <39c62a01.47e2.0@btinternet.com> X-User-Info: 193.131.176.3 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >GE: N & V | !N & !V can this be interpreted as: (N AND V) OR (!N AND !V) ? That's !(N XOR V) I think, which might help a little bit ;-P I didn't look at the others, you may be able to use similar logical identities though... Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 18 11:36:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA59974 for dynarec-outgoing; Mon, 18 Sep 2000 11:36:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003f01c0219f$c9183f20$73c9fea9@lion> From: "Neil Griffiths" To: References: <004301c02168$3cc47fc0$a545e2c8@sto.zaz.com.br> Subject: Re: DYNAREC: The new Amiga SDK: portable binaries Date: Mon, 18 Sep 2000 19:39:22 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > The SDK + docs is selling for about $100. What are your impressions about > > this ? Is this the preview of where open source programming will go ? I > can > > say the article made me resubscribe to this list, kind of blinded after > > "seing the light" : ). The future sometimes looks cool. Well, this isn't technical enough to offer a great opinion - but I will say that it's interesting. :) BTW, working on Dynarec.com at the 'mo. Also, NB will probably be most interested by this link http://www.frpg.org/wms.txt but it appears that Williams/Bally will be making a comeback! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 18 11:42:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA59987 for dynarec-outgoing; Mon, 18 Sep 2000 11:41:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 18 Sep 2000 12:04:51 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: The new Amiga SDK: portable binaries In-Reply-To: <003f01c0219f$c9183f20$73c9fea9@lion> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > BTW, working on Dynarec.com at the 'mo. Also, NB will probably be most > interested by this link http://www.frpg.org/wms.txt but it appears that > Williams/Bally will be making a comeback! Not really. Who knows what this company will actually do with the stuff. I've seen this article on rec.games.pinball... -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 11:32:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA61292 for dynarec-outgoing; Tue, 19 Sep 2000 11:32:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000e01c02268$76e90620$b346a8c2@lion> From: "Neil Griffiths" To: References: Subject: DYNAREC: Dynarec.com updated... Date: Tue, 19 Sep 2000 19:35:52 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ...finally! :) Check the "News" page for what's changed. Should be better (not perfect) for 640x480 now. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 11:57:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA61323 for dynarec-outgoing; Tue, 19 Sep 2000 11:57:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com updated... From: "M.I.K.e" Message-ID: <000371a7c997bd9e_mailit@mail.dynarec.com> References: <000e01c02268$76e90620$b346a8c2@lion> Date: Tue, 19 Sep 2000 21:06:25 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >...finally! :) Eventually... >Check the "News" page for what's changed. Well, since it's mentioned on the start page as well... >Should be better (not perfect) for 640x480 now. :) Hm, in my case the logo was too wide and a horizontal scroll bar was displayed on the title screen. Somehow I think the look and feel was better than before your change - I guess you only chnaged the frameset right? I think we could do some adjustments. One of my problems is that the menu now is too close to the top oc the page, so I guess we should put some header above it, either "Menu" or "Dynarec.com" or whatever... The same is true for the pages in the main part. It looks a bit strange when a table starts at the top of the page, so we should put a header above it, saying "Dynarecs", "Documents", "People", etc. What do you think about it? Now for something completely different: Have you seen the new screenshots on www.psxemu.com? ePSXe seems to run Metal Gear Solid with hardware acceleration, just c00l ;-) >Neil. -- M.I.K.e Newlan's Truism: An "acceptable" level of unemployment means that the government economist to whom it is acceptable still has a job. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 12:28:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA61364 for dynarec-outgoing; Tue, 19 Sep 2000 12:28:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001401c02270$e026e1e0$2442ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec.com updated... Date: Tue, 19 Sep 2000 21:36:13 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Now for something completely different: > Have you seen the new screenshots on www.psxemu.com? ePSXe seems to run Metal > Gear Solid with hardware acceleration, just c00l ;-) > What do you expected from a Spanish emulator? Just the best. ;) I'm waiting for the release. But I'm almost sure about something, MGS emulated will be far better than the PC conversion. I'm sure. Actually, it doesn't run MGS on the other PSX emulators (it works really bad with bleemshit I have tried)?. In VGS works perfect but doesn't have acceleration :(. > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 12:37:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA61383 for dynarec-outgoing; Tue, 19 Sep 2000 12:37:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: ePSXe From: "M.I.K.e" Message-ID: <000371a859926cb3_mailit@mail.dynarec.com> References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001401c02270$e026e1e0$2442ae3e@hal9000> Date: Tue, 19 Sep 2000 21:46:41 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What do you expected from a Spanish emulator? Just the best. ;) Since I know you? Of course the best! >I'm waiting for the release. Me too, me too! >But I'm almost sure about something, >MGS emulated will be far better than the PC conversion. I'm sure. I thought they'd never do a PC conversion anymore... >Actually, it doesn't run MGS on the other PSX emulators (it works >really bad with bleemshit I have tried)?. Bleem is just a pile of bleem! MGS only works in bleem with 3D acceleration turned off and even then it's not playable because the sound is too bad... >In VGS works perfect but doesn't have acceleration :(. I'm not sure if all the effects will work with hardware acceleration so I'm longing to see how it runs with ePSXe... >Victor -- M.I.K.e "Right now I'm having amnesia and deja vu at the same time." -- Steven Wright --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 12:49:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA61402 for dynarec-outgoing; Tue, 19 Sep 2000 12:49:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002001c02273$c8beba20$2442ae3e@hal9000> From: "Victor Moya del Barrio \(DYNAREC\)" To: References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001401c02270$e026e1e0$2442ae3e@hal9000> <000371a859926cb3_mailit@mail.dynarec.com> Subject: Re: DYNAREC: ePSXe Date: Tue, 19 Sep 2000 21:57:03 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >What do you expected from a Spanish emulator? Just the best. ;) > > Since I know you? Of course the best! > Hehe! > >But I'm almost sure about something, > >MGS emulated will be far better than the PC conversion. I'm sure. > > I thought they'd never do a PC conversion anymore... > There is a conversion I have seen screnshots. In fact I think it should be already released (US) or nearly. BTW talking about Spanish, expect something really interesting for next november or december. It's a new game called Blade. It has being developed here in Spain for 4 years (everybody was talking here all those years when it would be finally released). Finally it seems it is finished and what I have seen from it is really interesting ... and new. :) That would make to hits: Comandos and Blade. > >Actually, it doesn't run MGS on the other PSX emulators (it works > >really bad with bleemshit I have tried)?. > > Bleem is just a pile of bleem! MGS only works in bleem with 3D acceleration > turned off and even then it's not playable because the sound is too bad... > There hasn't been a new version since almost a year ago. Poor buyers. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 13:18:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA61440 for dynarec-outgoing; Tue, 19 Sep 2000 13:18:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: ePSXe From: "M.I.K.e" Message-ID: <000371a8e69f4cdc_mailit@mail.dynarec.com> References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001401c02270$e026e1e0$2442ae3e@hal9000> <000371a859926cb3_mailit@mail.dynarec.com> <002001c02273$c8beba20$2442ae3e@hal9000> Date: Tue, 19 Sep 2000 22:26:07 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [MGS PC conversion] >There is a conversion I have seen screnshots. In fact I think it should >be already released (US) or nearly. Really? Strange that I didn't stumble accross any news... >BTW talking about Spanish, expect something really interesting >for next november or december. It's a new game called Blade. Never heard of it... >It has being developed here in Spain for 4 years (everybody was >talking here all those years when it would be finally released). Wow, that's even longer than Outcast took. >Finally it seems it is finished and what I have seen from it is really >interesting ... and new. :) What kind of game is it? Links? [bleem] >There hasn't been a new version since almost a year ago. Poor buyers. ;) Yeah, they concentrated on bleemcast it seems, but if bleemcast is as bad as bleem I don't think they'll sell that much of it because on a console they cannot simply say "Wait for the next bugfix, or the next, or ..." There was a time when I wanted to buy bleem but now that two shops in my home town have it I know how bad it is and surely won't buy it. I'd buy CVGS though, but I didn't see any copy here... >Victor -- M.I.K.e Paradise is exactly like where you are right now ... only much, much better. -- Laurie Anderson --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 13:33:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA61464 for dynarec-outgoing; Tue, 19 Sep 2000 13:33:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004601c02279$d1a96260$2442ae3e@hal9000> From: "Victor Moya del Barrio \(DYNAREC\)" To: References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001401c02270$e026e1e0$2442ae3e@hal9000> <000371a859926cb3_mailit@mail.dynarec.com> <002001c02273$c8beba20$2442ae3e@hal9000> <000371a8e69f4cdc_mailit@mail.dynarec.com> Subject: Re: DYNAREC: ePSXe Date: Tue, 19 Sep 2000 22:37:20 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > [MGS PC conversion] > >There is a conversion I have seen screnshots. In fact I think it should > >be already released (US) or nearly. > > Really? Strange that I didn't stumble accross any news... > Try old www.megagames.com news, I found it a month or so ago. > >BTW talking about Spanish, expect something really interesting > >for next november or december. It's a new game called Blade. > > Never heard of it... > I'm sure you will hear. > >It has being developed here in Spain for 4 years (everybody was > >talking here all those years when it would be finally released). > > Wow, that's even longer than Outcast took. > The most common joke here has been Blade will be released this year. ;) For four years. They started something too big. Dinamic lighting, real shadows, you can through every thing, real polygonal blood, cut heads, arms .... Hehehe!! :)) > >Finally it seems it is finished and what I have seen from it is really > >interesting ... and new. :) > > What kind of game is it? Links? > Well it's a bit hard: RPG doom barbarian very bloody kind (that last will be cut in non spanish version I thing). There is a big document in www.emulatronia.es but it is a Spanish magazine ... Perhaps they have a english version or you could use some of the translators out there. In any case there are a lot of pics. > [bleem] > >There hasn't been a new version since almost a year ago. Poor buyers. ;) > > Yeah, they concentrated on bleemcast it seems, but if bleemcast is as bad as > bleem I don't think they'll sell that much of it because on a console they > cannot simply say "Wait for the next bugfix, or the next, or ..." Because of that they must be working hard ... > There was a time when I wanted to buy bleem but now that two shops in my home > town have it I know how bad it is and surely won't buy it. I'd buy CVGS > though, but I didn't see any copy here... > Same happens here, you only can find bleem. > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 15:38:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA61579 for dynarec-outgoing; Tue, 19 Sep 2000 15:38:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001301c0228a$d6c156c0$73c9fea9@lion> From: "Neil Griffiths" To: References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec.com updated... Date: Tue, 19 Sep 2000 23:41:54 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >...finally! :) > > Eventually... Oi, you cheeky sod! ;) > >Check the "News" page for what's changed. > > Well, since it's mentioned on the start page as well... Of course! Anything to make browsing easier! Now all we need is a CGI database and we're sorted! > >Should be better (not perfect) for 640x480 now. :) > > Hm, in my case the logo was too wide and a horizontal scroll bar was > displayed on the title screen. I know - but that isn't my concern. If the first page looks shit then too bad - the rest of the site looks much better! > Somehow I think the look and feel was better than before your change - I > guess you only chnaged the frameset right? No. But it was nasty before my changes. The title bar always being displayed? Remember that we lost 136 vertical pixels. Given that you only have 480 in 640x480 then that's a disaster! That's why I made my changes! > I think we could do some adjustments. One of my problems is that the menu now > is too close to the top oc the page, so I guess we should put some header > above it, either "Menu" or "Dynarec.com" or whatever... Heh, it looks fine in IE! ;) No, seriously, I agree. I've been thinking about what to do with it (I preferred the menu further down also). Two things: something above the menu - or put it in a table. I'll do something tomorrow and see what's best - and probably let everyone else decide too! > The same is true for the pages in the main part. It looks a bit strange when > a table starts at the top of the page, so we should put a header above it, > saying "Dynarecs", "Documents", "People", etc. > What do you think about it? That's a good idea though. But having the constant top frame was A Bad Idea(tm). :) > Now for something completely different: > Have you seen the new screenshots on www.psxemu.com? ePSXe seems to run Metal > Gear Solid with hardware acceleration, just c00l ;-) Now THAT'S cool. Who'd have thought of the Spanish doing something useful? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 15:50:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA61601 for dynarec-outgoing; Tue, 19 Sep 2000 15:50:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002101c0228c$69cbbea0$73c9fea9@lion> From: "Neil Griffiths" To: References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001401c02270$e026e1e0$2442ae3e@hal9000> <000371a859926cb3_mailit@mail.dynarec.com> <002001c02273$c8beba20$2442ae3e@hal9000> Subject: Re: DYNAREC: ePSXe Date: Tue, 19 Sep 2000 23:53:01 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > I thought they'd never do a PC conversion anymore... > > > There is a conversion I have seen screnshots. In fact I think it should > be already released (US) or nearly. Yep. MS are the publishers! > BTW talking about Spanish, expect something really interesting > for next november or december. It's a new game called Blade. > It has being developed here in Spain for 4 years (everybody was > talking here all those years when it would be finally released). > Finally it seems it is finished and what I have seen from it is really > interesting ... and new. :) I'm looking forward to that game. It looks... nice. :) Didn't know the developers were Spanish though! > That would make to hits: Comandos and Blade. Pretty cool games though I don't like C&C type games too much... > > Bleem is just a pile of bleem! MGS only works in bleem with 3D acceleration > > turned off and even then it's not playable because the sound is too bad... > > > There hasn't been a new version since almost a year ago. Poor buyers. ;) Bleem is bad. I'm considering buying a Dreamcast - but I know what I *WON'T* buy! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 15:52:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA61612 for dynarec-outgoing; Tue, 19 Sep 2000 15:52:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com updated... From: "M.I.K.e" Message-ID: <000371ab1032207a_mailit@mail.dynarec.com> References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001301c0228a$d6c156c0$73c9fea9@lion> Date: Wed, 20 Sep 2000 01:00:55 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Oi, you cheeky sod! ;) Klugscheißer! ;-) >Of course! Anything to make browsing easier! Now all we need is a CGI >database and we're sorted! Did you know that there is a CSV database module for Perl 5 called Sprite? Hmm, does that mean you want dynamic pages or is that simply for those parts that are missing? >I know - but that isn't my concern. If the first page looks shit then too >bad - the rest of the site looks much better! Well, the first look is the most important one... >No. But it was nasty before my changes. The title bar always being >displayed? Remember that we lost 136 vertical pixels. Given that you only >have 480 in 640x480 then that's a disaster! That's why I made my changes! Ok, from the maths point of view it's quite bad... >Heh, it looks fine in IE! ;) I'll take a look at it in IE4 for MacOS... BTW, the thing has some severe rendering errors compared to the Windows IE4... >No, seriously, I agree. I've been thinking about what to do with it (I >preferred the menu further down also). Two things: something above the >menu - or put it in a table. I'll do something tomorrow and see what's >best - and probably let everyone else decide too! I think I'd be for the "something above the menu" option, but let's see what you come up with... BTW, isn't it strange that we didn't discuss that topic when you still were in Germany? ;-) >That's a good idea though. But having the constant top frame was A Bad >Idea(tm). :) Hey, but it was my "Bad Idea(tm)"! [ePSXe] >Now THAT'S cool. Who'd have thought of the Spanish doing something useful? >;) No comment, or Victor will kill us both... He'll surely kill you, but dynarec.com needs at least one webmaster ;-) >Neil. -- M.I.K.e Self Test for Paranoia: You know you have it when you can't think of anything that's your own fault. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 16:06:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA61637 for dynarec-outgoing; Tue, 19 Sep 2000 16:06:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003801c0228e$c4c4b4e0$73c9fea9@lion> From: "Neil Griffiths" To: References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001301c0228a$d6c156c0$73c9fea9@lion> <000371ab1032207a_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec.com updated... Date: Wed, 20 Sep 2000 00:09:27 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Oi, you cheeky sod! ;) > > Klugscheißer! ;-) Scheißerkopf! ;) Yeah, I know that doesn't make sense. But it does if you translate it back into English... :)) > >Of course! Anything to make browsing easier! Now all we need is a CGI > >database and we're sorted! > > Did you know that there is a CSV database module for Perl 5 called Sprite? Nope. Interesting... > Hmm, does that mean you want dynamic pages or is that simply for those parts > that are missing? Dynamic pages, always have wanted them! Makes applying a new look sooo much easier. Or it can do when correctly implemented... > >I know - but that isn't my concern. If the first page looks shit then too > >bad - the rest of the site looks much better! > > Well, the first look is the most important one... True, but most people won't browse in 640x480. I just want it to be usable by those who do! > >No. But it was nasty before my changes. The title bar always being > >displayed? Remember that we lost 136 vertical pixels. Given that you only > >have 480 in 640x480 then that's a disaster! That's why I made my changes! > > Ok, from the maths point of view it's quite bad... It didn't look much better either (apart from the logo actually being centered). Still not happy with it but I do think it's slightly better... > >No, seriously, I agree. I've been thinking about what to do with it (I > >preferred the menu further down also). Two things: something above the > >menu - or put it in a table. I'll do something tomorrow and see what's > >best - and probably let everyone else decide too! > > I think I'd be for the "something above the menu" option, but let's see what > you come up with... I was thinking a little "Dynarec.com" logo - or maybe a nice little animated GIF with some CPUs and binary numbers... > BTW, isn't it strange that we didn't discuss that topic when you still were > in Germany? ;-) That's just so we didn't hit each other. I miss Germany BTW. Or, more importantly, I miss the beer! :-/ > >That's a good idea though. But having the constant top frame was A Bad > >Idea(tm). :) > > Hey, but it was my "Bad Idea(tm)"! Genau, ich weiß! > [ePSXe] > >Now THAT'S cool. Who'd have thought of the Spanish doing something useful? > >;) > > No comment, or Victor will kill us both... He'll surely kill you, but > dynarec.com needs at least one webmaster ;-) Victor, remember this. You could walk to Germany if necessary but there's loads of water between you and me... ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 17:05:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA61697 for dynarec-outgoing; Tue, 19 Sep 2000 17:05:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com updated... From: "M.I.K.e" Message-ID: <000371ac193e443c_mailit@mail.dynarec.com> References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001301c0228a$d6c156c0$73c9fea9@lion> <000371ab1032207a_mailit@mail.dynarec.com> <003801c0228e$c4c4b4e0$73c9fea9@lion> Date: Wed, 20 Sep 2000 02:15:01 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Scheißerkopf! ;) >Yeah, I know that doesn't make sense. Good that you know that... >But it does if you translate it back into English... :)) Hmm, and it fits, because mission 3 of Thief 2 terminated correctly as soon as I did the right thing... >> Did you know that there is a CSV database module for Perl 5 called Sprite? >Nope. Interesting... It was written by some guy called Gundavarum (or so), because he wanted that readers of his ORA book "CGI Programming in Perl" should be able to use a simple DB even without Oracle & co... >Dynamic pages, always have wanted them! Makes applying a new look sooo much >easier. Or it can do when correctly implemented... Hehe, so we should do it correct, don't we? ;-) >It didn't look much better either (apart from the logo actually being >centered). Still not happy with it but I do think it's slightly better... Maybe one of us has just the right idea soon... no I don't think so ;-) >I was thinking a little "Dynarec.com" logo - or maybe a nice little animated >GIF with some CPUs and binary numbers... Little logo, ok, but *animated* hmm... That animated stuff always distracts me from the part I really want to read. >That's just so we didn't hit each other. I miss Germany BTW. Or, more >importantly, I miss the beer! :-/ Hehe ;-) >> Hey, but it was my "Bad Idea(tm)"! >Genau, ich weiß! Dann ist ja gut. >Victor, remember this. You could walk to Germany if necessary but there's >loads of water between you and me... ;)) Don't listen to him Victor! That evil guy only wants to manipulate you! >Neil. -- M.I.K.e You can learn many things from children. How much patience you have, for instance. -- Franklin P. Jones --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 17:22:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA61717 for dynarec-outgoing; Tue, 19 Sep 2000 17:22:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: ePSXe From: "M.I.K.e" Message-ID: <000371ac4a95a723_mailit@mail.dynarec.com> References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001401c02270$e026e1e0$2442ae3e@hal9000> <000371a859926cb3_mailit@mail.dynarec.com> <002001c02273$c8beba20$2442ae3e@hal9000> <002101c0228c$69cbbea0$73c9fea9@lion> Date: Wed, 20 Sep 2000 02:28:49 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [MGS for PC] >Yep. MS are the publishers! Well, it worked for the Age of Empires series, but who knows? >Bleem is bad. I guess everyone on the list will agree. >I'm considering buying a Dreamcast Actually I'm not the greatest console fan, but the Dreamcast is just so interesting! I mean, it's not that powerful, but the combination of hardware is much better than for the other machines. The only real problem is that crappy controller, I guess. And with a VGA box I could even use the thing with my monitor. > - but I know what I *WON'T* buy! Indeed! >Neil. -- M.I.K.e A.A.A.A.A.: An organization for drunks who drive --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 17:37:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA61742 for dynarec-outgoing; Tue, 19 Sep 2000 17:37:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000919173728.00830100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 19 Sep 2000 17:37:28 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: ePSXe In-Reply-To: <000371ac4a95a723_mailit@mail.dynarec.com> References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001401c02270$e026e1e0$2442ae3e@hal9000> <000371a859926cb3_mailit@mail.dynarec.com> <002001c02273$c8beba20$2442ae3e@hal9000> <002101c0228c$69cbbea0$73c9fea9@lion> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Actually I'm not the greatest console fan, but the Dreamcast is just so >interesting! I mean, it's not that powerful, but the combination of hardware >is much better than for the other machines. The only real problem is that >crappy controller, I guess. And with a VGA box I could even use the thing >with my monitor. What's wrong with the controller? It's infinitely better than the N64 controller (which apparently is the favorite among gamers.) I wish it had 6 buttons on the face and a rounder D-pad (like the Genesis 6-button pad had), but those are minor quibbles compared with the controllers Nintendo and Sony offer. And yeah, the DC is a nice little piece of hardware :) I don't own one, but my friend does, and I can heartily give my recommendation ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 21:12:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA61903 for dynarec-outgoing; Tue, 19 Sep 2000 21:12:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 19 Sep 2000 21:16:55 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec.com updated... Message-ID: <20000919211655.A20976@hetfield.patsoffice.com> References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001301c0228a$d6c156c0$73c9fea9@lion> <000371ab1032207a_mailit@mail.dynarec.com> <003801c0228e$c4c4b4e0$73c9fea9@lion> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-md5; protocol="application/pgp-signature"; boundary="PX9QnOhkqzU5kIQP" Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <003801c0228e$c4c4b4e0$73c9fea9@lion>; from neilg@dynarec.com on Wed, Sep 20, 2000 at 12:09:27AM +0100 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --PX9QnOhkqzU5kIQP Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable > > Did you know that there is a CSV database module for Perl 5 called Spri= te? >=20 > Nope. Interesting... What's so hard about: $in =3D ; @data =3D split(/,/,$in); for getting CSV values into an array and: $out =3D join(',',@data); print FILEHANDLE "$out\n"; for putting out CSV records? :-) > Dynamic pages, always have wanted them! Makes applying a new look sooo mu= ch > easier. Or it can do when correctly implemented... Another thing to do to apply consistent content on a UNIX system with UNIX tools is something called WML (Website Meta Language). It pretty much kicks ass. http://www.engelschall.com/sw/wml/ If Neil's cool with it being on synthcom, I can assist you in making a template for dynarec.com. Either that, or if you have access to a UNIX box, you can generate the pages and upload them to synthcom (not sure how you are updating content.) That way you can ditch the frames... Regards, Pat --=20 "You are not a beautiful and unique snowflake!" - Tyler Durden --PX9QnOhkqzU5kIQP Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.1 (GNU/Linux) Comment: For info see http://www.gnupg.org iEYEARECAAYFAjnIOjcACgkQrNiXbbxh4OcgMwCgtsF9vHMWpNRkGeE7hQDkIPeZ iwcAn0SPjmlem3ovhNObrrJ2lF4sbiCo =NTXd -----END PGP SIGNATURE----- --PX9QnOhkqzU5kIQP-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 22:36:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA61970 for dynarec-outgoing; Tue, 19 Sep 2000 22:36:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 19 Sep 2000 22:59:48 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec.com updated... In-Reply-To: <20000919211655.A20976@hetfield.patsoffice.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > If Neil's cool with it being on synthcom, I can assist you in making a > template for dynarec.com. Either that, or if you have access to a UNIX > box, you can generate the pages and upload them to synthcom (not sure how > you are updating content.) That way you can ditch the frames... How about putting it on Dynarec.com instead? That's what it's there for! Want an account? -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 19 23:28:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA62014 for dynarec-outgoing; Tue, 19 Sep 2000 23:28:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009200632.IAA15141@pons.ac.upc.es> Subject: Re: DYNAREC: ePSXe In-Reply-To: <004601c02279$d1a96260$2442ae3e@hal9000> "from Victor Moya del Barrio (DYNAREC) at Sep 19, 2000 10:37:20 pm" To: dynarec@dynarec.com Date: Wed, 20 Sep 2000 08:32:44 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > There is a big document in www.emulatronia.es but it is a Spanish > magazine ... Perhaps they have a english version or you could use > some of the translators out there. In any case there are a lot of pics. > Small 'lapsus linguae' the page is www.meristation.com. The other is an emunews web. > Victor > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 20 04:03:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA62402 for dynarec-outgoing; Wed, 20 Sep 2000 04:02:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com updated... From: "M.I.K.e" Message-ID: <000371b468a96bf2_mailit@mail.dynarec.com> References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001301c0228a$d6c156c0$73c9fea9@lion> <000371ab1032207a_mailit@mail.dynarec.com> <003801c0228e$c4c4b4e0$73c9fea9@lion> <20000919211655.A20976@hetfield.patsoffice.com> Date: Wed, 20 Sep 2000 12:09:54 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What's so hard about: >$in = ; >@data = split(/,/,$in); >for getting CSV values into an array and: >$out = join(',',@data); >print FILEHANDLE "$out\n"; >for putting out CSV records? :-) Because Sprite does it with simple SQL queries as far as I know. >Another thing to do to apply consistent content on a UNIX system with UNIX >tools is something called WML (Website Meta Language). I thought WML was for WAP... Does it generate normal HTML? Since I'm using BeOS I'm very interested that the pages still run with NetPositive, and they will run with almost any browser when I do the code by hand. >It pretty much kicks ass. http://www.engelschall.com/sw/wml/ Engelschall sounds to me like "angel sound"... >If Neil's cool with it being on synthcom, I can assist you in making a >template for dynarec.com. Either that, or if you have access to a UNIX >box, you can generate the pages and upload them to synthcom (not sure how >you are updating content.) That way you can ditch the frames... Why should we want to ditch the frames? I think the only browser which has problems with frames is Lynx and it will have the same formatting problems with out tables. Otherwise the frames just speed up the whole page. >Pat -- M.I.K.e "The other day I put instant coffee in my microwave oven ... I almost went back in time." -- Steven Wright --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 20 04:33:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA62437 for dynarec-outgoing; Wed, 20 Sep 2000 04:33:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005c01c022f7$0c0207a0$73c9fea9@lion> From: "Neil Griffiths" To: References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001301c0228a$d6c156c0$73c9fea9@lion> <000371ab1032207a_mailit@mail.dynarec.com> <003801c0228e$c4c4b4e0$73c9fea9@lion> <000371ac193e443c_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec.com updated... Date: Wed, 20 Sep 2000 12:25:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Yeah, I know that doesn't make sense. > > Good that you know that... I could use the Bavarian ones - you crucifix, you... ;) > >But it does if you translate it back into English... :)) > > Hmm, and it fits, because mission 3 of Thief 2 terminated correctly as soon > as I did the right thing... Really? Good! Oh yes, bought Outcast in Germany. DVD version - has all the languages. Also, the orchestral music is in 5.1 format which is interesting (or will be when my amp and surround speakers arrive!). My first DVD game! > >> Did you know that there is a CSV database module for Perl 5 called Sprite? > >Nope. Interesting... > > It was written by some guy called Gundavarum (or so), because he wanted that > readers of his ORA book "CGI Programming in Perl" should be able to use a > simple DB even without Oracle & co... I've got that book! I just haven't read it yet... > >Dynamic pages, always have wanted them! Makes applying a new look sooo much > >easier. Or it can do when correctly implemented... > > Hehe, so we should do it correct, don't we? ;-) That's the plan. I already have experience of that with SML from S3P (http://www.s3p.co.uk) when we wrote it! > >It didn't look much better either (apart from the logo actually being > >centered). Still not happy with it but I do think it's slightly better... > > Maybe one of us has just the right idea soon... no I don't think so ;-) I'll work on it this afternoon when my friend leaves to go to work... > >I was thinking a little "Dynarec.com" logo - or maybe a nice little animated > >GIF with some CPUs and binary numbers... > > Little logo, ok, but *animated* hmm... That animated stuff always distracts > me from the part I really want to read. I don't know if I can be bothered to do it anyway. I am, at heart, lazy. ;) > >That's just so we didn't hit each other. I miss Germany BTW. Or, more > >importantly, I miss the beer! :-/ > > Hehe ;-) That rauchbier was nice. Interesting, but nice. Who'd have thought you could smoke beer? I'm missing the Oktoberfest! AARGH! > >> Hey, but it was my "Bad Idea(tm)"! > >Genau, ich weiß! > > Dann ist ja gut. Ist es? Verleicht es ist nicht... ;) > >Victor, remember this. You could walk to Germany if necessary but there's > >loads of water between you and me... ;)) > > Don't listen to him Victor! That evil guy only wants to manipulate you! Me? Me? > You can learn many things from children. How much patience you have, > for instance. > -- Franklin P. Jones Now THAT one is good. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 20 04:33:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA62445 for dynarec-outgoing; Wed, 20 Sep 2000 04:33:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005d01c022f7$0eb9d4a0$73c9fea9@lion> From: "Neil Griffiths" To: References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001301c0228a$d6c156c0$73c9fea9@lion> <000371ab1032207a_mailit@mail.dynarec.com> <003801c0228e$c4c4b4e0$73c9fea9@lion> <20000919211655.A20976@hetfield.patsoffice.com> Subject: Re: DYNAREC: Dynarec.com updated... Date: Wed, 20 Sep 2000 12:30:12 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Your mail showed up strangely as an attachment BTW. Not sure if it's OE at fault or not. Anyway... > What's so hard about: > > $in = ; > @data = split(/,/,$in); > > for getting CSV values into an array and: > > $out = join(',',@data); > print FILEHANDLE "$out\n"; > > for putting out CSV records? :-) Nothing at all! I'll look at it but probably end up using SML - which I co-wrote so I know how it works. :) > Another thing to do to apply consistent content on a UNIX system with UNIX > tools is something called WML (Website Meta Language). It pretty much > kicks ass. http://www.engelschall.com/sw/wml/ But that sounds cool... I'll do a little digging. :) > If Neil's cool with it being on synthcom, I can assist you in making a > template for dynarec.com. Either that, or if you have access to a UNIX > box, you can generate the pages and upload them to synthcom (not sure how > you are updating content.) That way you can ditch the frames... Don't say that, you'll upset Mike! ;) I originally used tables but he converted (I can see his reasons why)... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 20 05:12:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA62490 for dynarec-outgoing; Wed, 20 Sep 2000 05:12:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com updated... From: "M.I.K.e" Message-ID: <000371b63ff882e9_mailit@mail.dynarec.com> References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001301c0228a$d6c156c0$73c9fea9@lion> <000371ab1032207a_mailit@mail.dynarec.com> <003801c0228e$c4c4b4e0$73c9fea9@lion> <20000919211655.A20976@hetfield.patsoffice.com> <005d01c022f7$0eb9d4a0$73c9fea9@lion> Date: Wed, 20 Sep 2000 14:21:41 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Your mail showed up strangely as an attachment BTW. Not sure if it's OE at >fault or not. Anyway... I had an attachment as well, but that was only the PGP signature. >Don't say that, you'll upset Mike! ;) Me? I never get upset! Hey, I just said I *never* get UPSET! Do you read or do I have to repeat that?!? ;-) >I originally used tables but he converted (I can see his reasons why)... It makes adding more pages much easier, it's loaded and rendered faster, the code is smaller... I wasn't really a big fan of frames, but in this case it's the best solution I guess. >Neil. -- M.I.K.e "Of ______course it's the murder weapon. Who would frame someone with a fake?" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 20 05:13:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA62501 for dynarec-outgoing; Wed, 20 Sep 2000 05:13:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com updated... From: "M.I.K.e" Message-ID: <000371b6465b7a51_mailit@mail.dynarec.com> References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001301c0228a$d6c156c0$73c9fea9@lion> <000371ab1032207a_mailit@mail.dynarec.com> <003801c0228e$c4c4b4e0$73c9fea9@lion> <000371ac193e443c_mailit@mail.dynarec.com> <005c01c022f7$0c0207a0$73c9fea9@lion> Date: Wed, 20 Sep 2000 14:23:28 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I could use the Bavarian ones - you crucifix, you... ;) Meinst Du "Kruzitürke"? >Really? Good! Oh yes, bought Outcast in Germany. DVD version - has all the >languages. Great, it's one of the best games I ever played. >Also, the orchestral music is in 5.1 format which is interesting The music is cool! >(or will be when my amp and surround speakers arrive!). So you have some problems to get all your stuff back home, do you? >My first DVD game! I didn't even know that Outcast was available on DVD. BTW, I have a Logitech optical mouse now - very nice! >That's the plan. I already have experience of that with SML from S3P >(http://www.s3p.co.uk) when we wrote it! SML? That's normally Standard ML, which is a funvtional programming language, but I guess you don't mean that one... >I don't know if I can be bothered to do it anyway. I am, at heart, lazy. ;) Hey, we could found the club of the "lazy webmasters" ;-) >That rauchbier was nice. Interesting, but nice. I guess now I know what to bring over should I visit the UK someday ;-) >Who'd have thought you could smoke beer? Take a look at: http://www.schlenkerla.de/sonstige/indexe1.htm >I'm missing the Oktoberfest! AARGH! Yeah, I already thought that you left just two or three weeks too early... >Ist es? Verleicht es ist nicht... ;) That sounds a bit like the German translation of "Asterix bei den Briten": "Es ist, ist es nicht?" - "It is, isn't it?" >> You can learn many things from children. How much patience you have, >> for instance. >Now THAT one is good. :) How long do we have to wait till NB can confirm this? ;-) >Neil. -- M.I.K.e Worst Response To A Crisis, 1985: From a readers' Q and A column in TV GUIDE: "If we get involved in a nuclear war, would the electromagnetic pulses from exploding bombs damage my videotapes?" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 20 10:25:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA62778 for dynarec-outgoing; Wed, 20 Sep 2000 10:25:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006e01c02328$ddd40ea0$8644ae3e@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: MGS PC version Date: Wed, 20 Sep 2000 19:33:17 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com We were talking about it and today I have found a new saying it has been finished and it will be released at the end of this month in US. It doesn't matter now. CVGS power!! :) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 20 10:38:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA62797 for dynarec-outgoing; Wed, 20 Sep 2000 10:38:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 20 Sep 2000 10:43:00 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec.com updated... Message-ID: <20000920104259.D20976@hetfield.patsoffice.com> References: <000e01c02268$76e90620$b346a8c2@lion> <000371a7c997bd9e_mailit@mail.dynarec.com> <001301c0228a$d6c156c0$73c9fea9@lion> <000371ab1032207a_mailit@mail.dynarec.com> <003801c0228e$c4c4b4e0$73c9fea9@lion> <20000919211655.A20976@hetfield.patsoffice.com> <000371b468a96bf2_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-md5; protocol="application/pgp-signature"; boundary="QAGWSovQTHFoQLiG" Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <000371b468a96bf2_mailit@mail.dynarec.com>; from mike@dynarec.com on Wed, Sep 20, 2000 at 12:09:54PM +0200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --QAGWSovQTHFoQLiG Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable > I thought WML was for WAP... Probably a different WML... > Does it generate normal HTML? Since I'm using BeOS I'm very interested th= at=20 > the pages still run with NetPositive, and they will run with almost any= =20 > browser when I do the code by hand. Yeah, it generates HTML. That's what I'm designing my site with. > Why should we want to ditch the frames? I think the only browser which ha= s=20 > problems with frames is Lynx and it will have the same formatting problem= s=20 > with out tables. Otherwise the frames just speed up the whole page. I prefer tables to do the formatting/alignment. I've hated frames since day one for some reason. Anyhow, that's just my personal opinion. With WML, a page on my site will be: =2E..snip... #!wml -oindex.html #use wml::template::patsoffice Page content goes here. Yay. =2E..snip... Then when it's generated, it's the full HTML. Yeah, it's more text/html for each page, but since the consistent images are cached, it's not that much more overhead. Take a look at http://patsoffice.com/test/ if you want to see WML output in action. You can typically view the WML file by substituting '.html' with '.wml'. And it's fairly lynx friendly. Regards, Pat --=20 "You are not a beautiful and unique snowflake!" - Tyler Durden --QAGWSovQTHFoQLiG Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.1 (GNU/Linux) Comment: For info see http://www.gnupg.org iEYEARECAAYFAjnI9yMACgkQrNiXbbxh4Oe2TgCgnT4bjwTlygsEal0hkHd5K1rI u2MAn3yrHLJBnnEOpdu6Y0KOrx+17RXw =Af9M -----END PGP SIGNATURE----- --QAGWSovQTHFoQLiG-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 20 18:22:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA63178 for dynarec-outgoing; Wed, 20 Sep 2000 18:21:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000920182211.00830a20@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 20 Sep 2000 18:22:11 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Detecting division overflows: Which method is fastest? Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I'm trying to implement the DIVU and DIVS instructions, and I need a way to fairly quickly decide wether or not an overflow will occur. I have been presented with 2 ideas: 1. Find the most prominent bit (highest bit set to 1) position, and shift the dividend to the right that many times. If the number of bits in the dividend remaining is greater than the # of bits allowed in the result, an overflow will occur. 2. Use the FPU. This involves saving the FPU state (FSTENV) and then restoring it when finished. I don't have my book with instruction timings (I can't find that info in the Intel manuals) so I don't know which is really better. The FPU idea seems pretty slow, because of the data that has to be moves to memory. The other method involves loops, and I don't know how quick that would be (it seems fairly slow as well.) I also hope that similar methods will help detect overflows with MULU and MULS :) Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 21 04:16:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA63957 for dynarec-outgoing; Thu, 21 Sep 2000 04:16:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009211043.MAA18186@pons.ac.upc.es> Subject: DYNAREC: Static compilation? To: dynarec@dynarec.com Date: Thu, 21 Sep 2000 12:43:11 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Let see if someone can answer that question: Is possible static translation with architectures with fixed lenght instruction (and aligned :)? A table similar to the one used with DRMZ80 or DR68K could deal with the indirect jump problem in that case? Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 21 13:20:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA64400 for dynarec-outgoing; Thu, 21 Sep 2000 13:19:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000921131958.0082ee80@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 21 Sep 2000 13:19:58 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Static compilation? In-Reply-To: <200009211043.MAA18186@pons.ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Let see if someone can answer that question: > >Is possible static translation with architectures with >fixed lenght instruction (and aligned :)? > >A table similar to the one used with DRMZ80 or DR68K >could deal with the indirect jump problem in that case? I don't know much about this subject, but I think there's still the issue of self-modifying code though. For example, the Sega 32X uses SH-2s, which have word-size/word-aligned instructions, but most of the execution is done out of RAM. The code is often copied out of ROM and into the SDRAM. I think the translator would see that as self-modifying code. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 21 14:07:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA64449 for dynarec-outgoing; Thu, 21 Sep 2000 14:07:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000921140713.008306c0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 21 Sep 2000 14:07:13 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Detecting division overflows: Which method is fastest? In-Reply-To: <3.0.5.32.20000920182211.00830a20@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >1. Find the most prominent bit (highest bit set to 1) position, and shift >the dividend to the right that many times. If the number of bits in the >dividend remaining is greater than the # of bits allowed in the result, an >overflow will occur. Figured it out. This way would be much faster. I was looking at the wrong FPU instruction for saving states, using the FPU would be way too slow. So I think I'll stick with using the above method. I forgot that there was a BSR instruction, so that eliminates all loops :) I hope that method is accurrate though.... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 21 15:39:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA64524 for dynarec-outgoing; Thu, 21 Sep 2000 15:39:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001201c0241d$4e8403e0$c741a8c2@lion> From: "Neil Griffiths" To: References: <200009211043.MAA18186@pons.ac.upc.es> Subject: Re: DYNAREC: Static compilation? Date: Thu, 21 Sep 2000 23:41:11 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Let see if someone can answer that question: Of course. :) > Is possible static translation with architectures with > fixed lenght instruction (and aligned :)? You *know* that this is a favourite subject of mine. :) > A table similar to the one used with DRMZ80 or DR68K > could deal with the indirect jump problem in that case? The indirect jump is not a problem - it never was. The problem was self-modifying code. But to answer your question, yes, the table used in DRMZ80 could be used. You'd *have* to use a table-based method anyway... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 21 23:35:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA64955 for dynarec-outgoing; Thu, 21 Sep 2000 23:34:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009220640.IAA03585@pons.ac.upc.es> Subject: Re: DYNAREC: Static compilation? In-Reply-To: <001201c0241d$4e8403e0$c741a8c2@lion> "from Neil Griffiths at Sep 21, 2000 11:41:11 pm" To: dynarec@dynarec.com Date: Fri, 22 Sep 2000 08:40:54 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Is possible static translation with architectures with > > fixed lenght instruction (and aligned :)? > > You *know* that this is a favourite subject of mine. :) > When will we see you document about that topic?. ;) > > A table similar to the one used with DRMZ80 or DR68K > > could deal with the indirect jump problem in that case? > > The indirect jump is not a problem - it never was. The problem was > self-modifying code. But to answer your question, yes, the table used in > DRMZ80 could be used. You'd *have* to use a table-based method anyway... > Of course there is still self-modyfing code but that's a problem also with dynarec. About indirect jumps, it is a problem. What instruction would you translate in architectures with variable instruction lenght? You would end translating wrong code because you can't be sure of alignment or where data or code is. With fixed lenght instructions that wouldn't happen. You just have to translate everything. And you will be sure an indirect jump won't branch to the middle of what your translator thought it was an instruction ... > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 21 23:44:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA64971 for dynarec-outgoing; Thu, 21 Sep 2000 23:44:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009220647.IAA13332@pons.ac.upc.es> Subject: DYNAREC: DR68K? To: dynarec@dynarec.com Date: Fri, 22 Sep 2000 08:47:49 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Weren't we going to start again with DR68K? Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 22 01:41:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA65076 for dynarec-outgoing; Fri, 22 Sep 2000 01:41:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 22 Sep 2000 01:47:02 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: DR68K? In-Reply-To: <200009220647.IAA13332@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Weren't we going to start again with DR68K? Yes - I was waiting on Alex, but he appears to be MIA. Alex, you around? Any comments and/or thoughts on the disassembler aspect of things? -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 22 01:51:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA65092 for dynarec-outgoing; Fri, 22 Sep 2000 01:51:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009220853.KAA04461@pons.ac.upc.es> Subject: Re: DYNAREC: DR68K? In-Reply-To: "from Neil Bradley at Sep 22, 2000 01:47:02 am" To: dynarec@dynarec.com Date: Fri, 22 Sep 2000 10:53:34 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Weren't we going to start again with DR68K? > > Yes - I was waiting on Alex, but he appears to be MIA. Alex, you > around? Any comments and/or thoughts on the disassembler aspect of things? > Perhaps we should have to call to one of those TV programs for searching people. ;)) > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 22 04:26:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA65379 for dynarec-outgoing; Fri, 22 Sep 2000 04:26:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002301c02488$65dcdf60$5879a8c2@lion> From: "Neil Griffiths" To: References: <200009220640.IAA03585@pons.ac.upc.es> Subject: Re: DYNAREC: Static compilation? Date: Fri, 22 Sep 2000 12:28:52 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > You *know* that this is a favourite subject of mine. :) > > > When will we see you document about that topic?. ;) Maybe when my arm heals so I can type properly. Maybe. We'll see how much time I have in this, my last year at Uni. I want to work on DR68K so we'll see how much spare time I have. > Of course there is still self-modyfing code but that's a problem > also with dynarec. About indirect jumps, it is a problem. What > instruction would you translate in architectures with variable > instruction lenght? You would end translating wrong code because > you can't be sure of alignment or where data or code is. With fixed > lenght instructions that wouldn't happen. You just have to > translate everything. And you will be sure an indirect jump won't > branch to the middle of what your translator thought it was an > instruction ... I'd be interested to know why you'd do it differently in the static compiler to a dynamic compiler? You can still use these techniques - even in static compilation! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 22 15:00:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA65924 for dynarec-outgoing; Fri, 22 Sep 2000 15:00:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Static compilation? From: "M.I.K.e" Message-ID: <000371e6a1ef426a_mailit@mail.dynarec.com> References: <200009211043.MAA18186@pons.ac.upc.es> Date: Sat, 23 Sep 2000 00:05:03 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Is possible static translation with architectures with >fixed lenght instruction (and aligned :)? Sure, it surely wouldn't be more complicated than with variable length instructions. >A table similar to the one used with DRMZ80 or DR68K >could deal with the indirect jump problem in that case? I guess so, just think of the article about FX!32. >Victor -- M.I.K.e BOO! We changed Coke again! BLEAH! BLEAH! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 22 15:00:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA65920 for dynarec-outgoing; Fri, 22 Sep 2000 15:00:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Static compilation? From: "M.I.K.e" Message-ID: <000371e69a2e02ed_mailit@mail.dynarec.com> References: <3.0.5.32.20000921131958.0082ee80@powernet.net> Date: Sat, 23 Sep 2000 00:02:53 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >For example, the Sega 32X uses SH-2s, which have word-size/word-aligned >instructions, BTW, aren't branch entry points have to be longword aligned to get a wider range for branch instructions or is that a different embedded processor I'm thinking of? >Bart -- M.I.K.e "Protozoa are small, and bacteria are small, but viruses are smaller than the both put together." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 22 18:20:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA66075 for dynarec-outgoing; Fri, 22 Sep 2000 18:20:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DR68K? From: "M.I.K.e" Message-ID: <000371e76382ee8f_mailit@mail.dynarec.com> References: <200009220853.KAA04461@pons.ac.upc.es> Date: Sat, 23 Sep 2000 00:59:11 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Yes - I was waiting on Alex, but he appears to be MIA. Alex, you >> around? Any comments and/or thoughts on the disassembler aspect of things? >Perhaps we should have to call to one of those TV programs >for searching people. ;)) Since Neil said "Missing in Action" I guess we'd better call Chuck Norris instead ;-) >Victor -- M.I.K.e "In short, _N is Richardian if, and only if, _N is not Richardian." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 22 18:23:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA66086 for dynarec-outgoing; Fri, 22 Sep 2000 18:23:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 22 Sep 2000 18:29:07 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: DR68K? - Calling Alex! In-Reply-To: <000371e76382ee8f_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> Yes - I was waiting on Alex, but he appears to be MIA. Alex, you > >> around? Any comments and/or thoughts on the disassembler aspect of things? > >Perhaps we should have to call to one of those TV programs > >for searching people. ;)) > Since Neil said "Missing in Action" I guess we'd better call Chuck Norris > instead ;-) If Alex is too busy or indeed is MIA, then we should consider just going with standalone disassemblers rather than using the script to do it. It's a lot more work and there are a ton more little exceptions that I really want to deal with or solve (though I agree it'd be a cleaner solution). My primary reason for wanting to use the disassembler approach that Alex mentioned is that he had it figured out (or at least most of it) Since it's only used as a debug vehicle, I wouldn't feel too guilty in using standalone disassemblers. The other added advantage is that they are most likely well debugged, so there is some intellectual positives in going that route. Thoughts? -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 22 19:09:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA66128 for dynarec-outgoing; Fri, 22 Sep 2000 19:09:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000922190936.008374e0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 22 Sep 2000 19:09:36 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Static compilation? In-Reply-To: <000371e69a2e02ed_mailit@mail.dynarec.com> References: <3.0.5.32.20000921131958.0082ee80@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 12:02 AM 9/23/2000 +0200, you wrote: >>For example, the Sega 32X uses SH-2s, which have word-size/word-aligned >>instructions, > >BTW, aren't branch entry points have to be longword aligned to get a wider >range for branch instructions or is that a different embedded processor I'm >thinking of? I do believe the SH-2 requires branches to be doubleword aligned. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 23 01:54:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA66440 for dynarec-outgoing; Sat, 23 Sep 2000 01:54:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002b01c0253c$e14c18a0$4943ae3e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: DR68K? - Calling Alex! Date: Sat, 23 Sep 2000 11:01:35 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > If Alex is too busy or indeed is MIA, then we should consider just going > with standalone disassemblers rather than using the script to do it. It's > a lot more work and there are a ton more little exceptions that I really > want to deal with or solve (though I agree it'd be a cleaner solution). > My primary reason for wanting to use the disassembler approach that Alex > mentioned is that he had it figured out (or at least most of it) > Since it's only used as a debug vehicle, I wouldn't feel too guilty in > using standalone disassemblers. The other added advantage is that they are > most likely well debugged, so there is some intellectual positives in > going that route. > > Thoughts? > Well if Alex can't help us perhaps it will be better to use standalone disassemblers. The idea of generating from the same definition file source, target layer and the disassembler was quite good though. Perhaps we could try to keep the idea in mind and build the definition file thinking about the disassembler too. Then if later Alex or some one else wants to continue with the disassemblers it won't be needed to rebuild everything. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 23 04:45:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA68813 for dynarec-outgoing; Sat, 23 Sep 2000 04:45:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DR68K? - Calling Alex! From: "M.I.K.e" Message-ID: <000371f23827dcf1_mailit@mail.dynarec.com> References: Date: Sat, 23 Sep 2000 13:54:28 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >If Alex is too busy or indeed is MIA, then we should consider just going >with standalone disassemblers rather than using the script to do it. It's >a lot more work and there are a ton more little exceptions that I really >want to deal with or solve (though I agree it'd be a cleaner solution). >My primary reason for wanting to use the disassembler approach that Alex >mentioned is that he had it figured out (or at least most of it) >Since it's only used as a debug vehicle, I wouldn't feel too guilty in >using standalone disassemblers. The other added advantage is that they are >most likely well debugged, so there is some intellectual positives in >going that route. >Thoughts? Well, if Alex is unavailable then we obvious have to work without his expertize. Either we come up with our own script driven disassembler generator, which might be especially interesting when we want to support more architectures. But I guess that would be more error prone in the beginning and therefore delay the whole project even longer, so I guess it's standalone disassemblers and hacking. >-->Neil -- M.I.K.e If everything is coming your way then you're in the wrong lane. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 23 04:45:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA68820 for dynarec-outgoing; Sat, 23 Sep 2000 04:45:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Static compilation? From: "M.I.K.e" Message-ID: <000371f225384cee_mailit@mail.dynarec.com> References: <3.0.5.32.20000921131958.0082ee80@powernet.net> <3.0.5.32.20000922190936.008374e0@powernet.net> Date: Sat, 23 Sep 2000 13:49:10 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I do believe the SH-2 requires branches to be doubleword aligned. I checked it... According to the SH-4 Programming Manual the branch distance is multiplied by 2, so it's word alignment. But the Mitsubishi M32R multiplies the branch distance by 4. Damn, I know too many processors... >Bart -- M.I.K.e "Today's thrilling story has been brought to you by Mushies, the great new cereal that gets soggy even without milk or cream. Join us soon for more spectacular adventure starring ... Tippy, the Wonder Dog." -- Bob & Ray --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 27 03:40:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA74302 for dynarec-outgoing; Wed, 27 Sep 2000 03:39:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009270944.LAA11219@pons.ac.upc.es> Subject: DYNAREC: Silent! To: dynarec@dynarec.com Date: Wed, 27 Sep 2000 11:44:33 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, it seems the list has become a bit silent last days. ;) I was wondering how much time I could stand without post something silly to the list ... Well, it seems only a couple of days. :) It seems DR68K will be stopped again for a time. :( I think I have been "busy" with some new PSX games (one that could be the second better RPG, Chrono Cross, the first is Chrono Trigger but I still haven't played enough to the second ...) and a fucking not working (as usual) PC game ... It's a luck I don't buy PC games. :P That sofware pirates are dangerous, I know a web where it is MGS for PC and has only been a couple of day since it was released! What do you think, it will be slower than the PSX version in an emulator? ;) Sure it will be less compatible ... Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 27 12:37:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA74759 for dynarec-outgoing; Wed, 27 Sep 2000 12:37:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000501c028ba$e669dee0$73c9fea9@lion> From: "Neil Griffiths" To: References: <200009270944.LAA11219@pons.ac.upc.es> Subject: Re: DYNAREC: Silent! Date: Wed, 27 Sep 2000 20:29:14 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > it seems the list has become a bit silent last days. ;) > I was wondering how much time I could stand without post > something silly to the list ... Well, it seems only a couple > of days. :) Victor, you've failed the "let's not post stuff" test. You lose $100. Sorry. ;) > It seems DR68K will be stopped again for a time. :( No - I'm aiming to do something on it this weekend. I'm moving back to my Uni on Saturday - and unless I come back and get the train back again on Sunday then I don't plan on doing much on Sunday. Surely a good reason to do *something*! > I think I have been "busy" with some new PSX games (one > that could be the second better RPG, Chrono Cross, the first > is Chrono Trigger but I still haven't played enough to the > second ...) and a fucking not working (as usual) PC game ... > It's a luck I don't buy PC games. :P But... but... but... that's PIRACY! ;) Which game? ;) > That sofware pirates are dangerous, I know a web where it is > MGS for PC and has only been a couple of day since it was > released! So do I unfortunately. I don't like that. I do tend to buy games that I like... > What do you think, it will be slower than the PSX version > in an emulator? ;) Sure it will be less compatible ... But it may run on slower CPUs. Who knows? Pigs may fly too! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 27 13:19:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA74823 for dynarec-outgoing; Wed, 27 Sep 2000 13:19:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 27 Sep 2000 13:26:46 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Silent! - CALLING ALEX! In-Reply-To: <200009270944.LAA11219@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > it seems the list has become a bit silent last days. ;) > I was wondering how much time I could stand without post > something silly to the list ... Well, it seems only a couple > of days. :) > It seems DR68K will be stopped again for a time. :( I wanted to give Alex a chance to respond before figuring out a course of action. Let's give him the weekend, because I intend on being extremely indisposed. ;-) Alexi s a very busy guy and it's not uncommon for him to disappear for a while and reappear refreshed and ready to kcik ass. Unless someone else wants to deal with the disassembly aspect... -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 27 14:24:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA74894 for dynarec-outgoing; Wed, 27 Sep 2000 14:24:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Silent! From: "M.I.K.e" Message-ID: <0003724a53941dbe_mailit@mail.dynarec.com> References: <200009270944.LAA11219@pons.ac.upc.es> <000501c028ba$e669dee0$73c9fea9@lion> Date: Wed, 27 Sep 2000 23:01:25 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Victor, you've failed the "let's not post stuff" test. You lose $100. Sorry. >;) And you'll be punished for breaking the rule of not telling him before a period of 3 turns passes. Go to jail, don't go over start and don't take 4000 bucks! >No - I'm aiming to do something on it this weekend. I'm moving back to my >Uni on Saturday - and unless I come back and get the train back again on >Sunday then I don't plan on doing much on Sunday. Surely a good reason to do >*something*! Wow, that's logic! >> That sofware pirates are dangerous, I know a web where it is >> MGS for PC and has only been a couple of day since it was >> released! >So do I unfortunately. I don't like that. I do tend to buy games that I >like... Indeed, I bought Thief Gold after I saw the cracked version, which I might have done otherwise. >> What do you think, it will be slower than the PSX version >> in an emulator? ;) Sure it will be less compatible ... >But it may run on slower CPUs. Who knows? Pigs may fly too! Strange, that flying pig is not in my biology book... Worthless book! BTW, just found a preview of MGS-PC on Gamesdomain. Strangely enough it isn't mentioned on the Microsoft pages... >Neil. -- M.I.K.e She liked him; he was a man of many qualities, even if most of them were bad. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 27 15:45:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA74997 for dynarec-outgoing; Wed, 27 Sep 2000 15:45:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001d01c028d5$36836620$73c9fea9@lion> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Silent! - CALLING ALEX! Date: Wed, 27 Sep 2000 23:49:29 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > It seems DR68K will be stopped again for a time. :( > > I wanted to give Alex a chance to respond before figuring out a course of > action. Let's give him the weekend, because I intend on being extremely > indisposed. ;-) Alexi s a very busy guy and it's not uncommon for him to > disappear for a while and reappear refreshed and ready to kcik ass. That sounds fair enough. And I don't even want to *THINK* what you'll be doing at the weekend... ;)) > Unless someone else wants to deal with the disassembly aspect... I'll have a go at it on Sunday - unless I spend the day watching DVDs with my friend or something else equally as unproductive... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 27 15:56:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA75016 for dynarec-outgoing; Wed, 27 Sep 2000 15:56:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002301c028d6$b5283f40$73c9fea9@lion> From: "Neil Griffiths" To: References: <200009270944.LAA11219@pons.ac.upc.es> <000501c028ba$e669dee0$73c9fea9@lion> <0003724a53941dbe_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Silent! Date: Wed, 27 Sep 2000 23:59:27 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > And you'll be punished for breaking the rule of not telling him before a > period of 3 turns passes. Go to jail, don't go over start and don't take 4000 > bucks! I thought you had to do that, no? > Wow, that's logic! Quite an unusual thing for a programmer, isn't it? ;) > >So do I unfortunately. I don't like that. I do tend to buy games that I > >like... > > Indeed, I bought Thief Gold after I saw the cracked version, which I might > have done otherwise. I can't believe you'd use a pirated program. I'm dissapointed. You'd never catch *ME* running pirated software! I run too fast! ;)) > >But it may run on slower CPUs. Who knows? Pigs may fly too! > > Strange, that flying pig is not in my biology book... Worthless book! You should trade it in for a newer version. They're genetically modified. Those bloody scientists! ;) > BTW, just found a preview of MGS-PC on Gamesdomain. > Strangely enough it isn't mentioned on the Microsoft pages... That's kind of good news surely? ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 27 23:19:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA75354 for dynarec-outgoing; Wed, 27 Sep 2000 23:19:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009280624.IAA00875@pons.ac.upc.es> Subject: Re: DYNAREC: Silent! In-Reply-To: <000501c028ba$e669dee0$73c9fea9@lion> "from Neil Griffiths at Sep 27, 2000 08:29:14 pm" To: dynarec@dynarec.com Date: Thu, 28 Sep 2000 08:24:40 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I think I have been "busy" with some new PSX games (one > > that could be the second better RPG, Chrono Cross, the first > > is Chrono Trigger but I still haven't played enough to the > > second ...) and a fucking not working (as usual) PC game ... > > It's a luck I don't buy PC games. :P > > But... but... but... that's PIRACY! ;) > Piracy? I think I have heart that english word before, but what it means? ;) > Which game? ;) > Vampire The Masquerade, my cousin lent me it and it seems it doesn't like my i740. Message from PC progammers: buy a new videocard. :( > > That sofware pirates are dangerous, I know a web where it is > > MGS for PC and has only been a couple of day since it was > > released! > > So do I unfortunately. I don't like that. I do tend to buy games that I > like... > Oh! I think it is an old habit. I usually didn't have enough money. But I haven't downloaded it yet, 60 MB is a bit heavy for my connection ... In any case I think I will go with the PSX version I already have. > > What do you think, it will be slower than the PSX version > > in an emulator? ;) Sure it will be less compatible ... > > But it may run on slower CPUs. Who knows? Pigs may fly too! > Yes, in airplanes ... but I don't think you mean that. ;) > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 27 23:24:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA75367 for dynarec-outgoing; Wed, 27 Sep 2000 23:24:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200009280629.IAA02294@pons.ac.upc.es> Subject: Re: DYNAREC: Silent! In-Reply-To: <002301c028d6$b5283f40$73c9fea9@lion> "from Neil Griffiths at Sep 27, 2000 11:59:27 pm" To: dynarec@dynarec.com Date: Thu, 28 Sep 2000 08:29:43 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >But it may run on slower CPUs. Who knows? Pigs may fly too! > > > > Strange, that flying pig is not in my biology book... Worthless book! > > You should trade it in for a newer version. They're genetically modified. > Those bloody scientists! ;) > I wouldn't feel bad if some of those scientists would give a couple of wings. All the money I could save from subway tickets. ;) > > BTW, just found a preview of MGS-PC on Gamesdomain. > > Strangely enough it isn't mentioned on the Microsoft pages... > > That's kind of good news surely? ;)) > No, it must be a new MS uninformation technique. ;) > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 29 05:30:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA77115 for dynarec-outgoing; Fri, 29 Sep 2000 05:30:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005c01c02a11$9caf03e0$73c9fea9@lion> From: "Neil Griffiths" To: References: <200009280624.IAA00875@pons.ac.upc.es> Subject: Re: DYNAREC: Silent! Date: Fri, 29 Sep 2000 13:13:06 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > But... but... but... that's PIRACY! ;) > > > Piracy? I think I have heart that english word before, > but what it means? ;) It means you have to say "Ooh ar, ooh ar, shiver me timbers" a lot and you sail around in boats and ships a lot. Why, were you thinking of another type of pirate? ;) > Vampire The Masquerade, my cousin lent me it and it seems > it doesn't like my i740. Message from PC progammers: buy > a new videocard. :( I'd send a message to Intel: fix your i740 drivers... > Oh! I think it is an old habit. I usually didn't have enough > money. But I haven't downloaded it yet, 60 MB is a bit > heavy for my connection ... In any case I think I will go > with the PSX version I already have. I'll wait for the reviews first - but I have MSG too. Seems quite cool! > > But it may run on slower CPUs. Who knows? Pigs may fly too! > > > Yes, in airplanes ... but I don't think you mean that. ;) Ooh-ar. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 29 05:30:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA77120 for dynarec-outgoing; Fri, 29 Sep 2000 05:30:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005d01c02a11$9e2f8960$73c9fea9@lion> From: "Neil Griffiths" To: References: <200009280629.IAA02294@pons.ac.upc.es> Subject: Re: DYNAREC: Silent! Date: Fri, 29 Sep 2000 13:16:01 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I wouldn't feel bad if some of those scientists would give a couple > of wings. All the money I could save from subway tickets. ;) "Is it a bird? Is it a plane? No, it's a strange Spanish guy with wings!" :) I could have gone downhill to a product ladies might buy with wings - but I wouldn't like to make that distinction... ;)) > No, it must be a new MS uninformation technique. ;) Just so that you know, the word is "misinformation". I know I appreciated it in Germany when people corrected me. Except if it was all the time or in the middle of a conversation... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 29 09:40:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA77345 for dynarec-outgoing; Fri, 29 Sep 2000 09:40:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 29 Sep 2000 09:47:42 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: New 24-hour record for downloads from ftp.freesoftware.com (fwd) Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Slightly off topic (which seems to be par for the course for this list), the latest release of Redhat Linux is being served by FreeBSD. They had tried running Redhat Linux but the OS buckled under the weight of that many incoming connections. I find it so funny that Linux isn't good enough to even serve itself! Also, Synthcom's info (2 CPUs): SYNTHCOM->neil: 1010] uptime 9:45AM up 109 days, 10:39, 3 users, load averages: 1.95, 1.99, 1.96 I've got dual PIII/550s in Synthcom. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 ---------- Forwarded message ---------- Date: Fri, 29 Sep 2000 01:53:25 PDT Subject: New 24-hour record for downloads from ftp.freesoftware.com FYI, ftp.freesoftware.com (uniprocessor Xeon/550MHz) pushed over 2 Terabytes out to the Internet yesterday, setting a new record. And this was even after a router glitch had the gigabit connection down for almost an hour during that period. Are you or anybody you know there at Intel aware of a single machine that pushes close to this much traffic? ...Marc... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 29 10:24:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA77393 for dynarec-outgoing; Fri, 29 Sep 2000 10:24:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 29 Sep 2000 10:29:46 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: New 24-hour record for downloads from ftp.freesoftware.com (fwd) Message-ID: <20000929102946.M24738@hetfield.patsoffice.com> References: Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-md5; protocol="application/pgp-signature"; boundary="IuJpT0rwbUevm2bB" Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from neil@synthcom.com on Fri, Sep 29, 2000 at 09:47:42AM +0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --IuJpT0rwbUevm2bB Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable > Slightly off topic (which seems to be par for the course for this list), > the latest release of Redhat Linux is being served by FreeBSD. They had > tried running Redhat Linux but the OS buckled under the weight of that > many incoming connections. I find it so funny that Linux isn't good enough > to even serve itself! To continue the off-topic silliness, I was not aware that WalnutCreek ever tried to run ftp.cdrom.com or ftp.freesoftware.com off of Linux. They have been FreeBSD for as long as I remember. FWIW, RedHat does indeed run RedHat Linux on all of it's servers AFAIK. Why don't you run OpenBSD? It's more secure out of the box. What release of FreeBSD are you running? I've been thinking of giving it a try at home since it's pretty much all we use at work (Verio Web Hosting-iServer.) Pat --=20 "You are not a beautiful and unique snowflake!" - Tyler Durden --IuJpT0rwbUevm2bB Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.1 (GNU/Linux) Comment: For info see http://www.gnupg.org iEYEARECAAYFAjnU0YoACgkQrNiXbbxh4Od1HgCgkhIH+JXpeDQUGoaqCp7DqJ8n PaoAnj+BlTCjgonOrbEwIkgXenfa6ln2 =jA+F -----END PGP SIGNATURE----- --IuJpT0rwbUevm2bB-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 29 10:47:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA77433 for dynarec-outgoing; Fri, 29 Sep 2000 10:47:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 29 Sep 2000 10:54:33 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New 24-hour record for downloads from ftp.freesoftware.com (fwd) In-Reply-To: <20000929102946.M24738@hetfield.patsoffice.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > tried running Redhat Linux but the OS buckled under the weight of that > > many incoming connections. I find it so funny that Linux isn't good enough > > to even serve itself! > To continue the off-topic silliness, I was not aware that WalnutCreek > ever tried to run ftp.cdrom.com or ftp.freesoftware.com off of Linux. It was tried 6 months prior and on intervals before that. The longest WC got it to stay running was around 4 hours. It just doesn't scale well. > They have been FreeBSD for as long as I remember. FWIW, RedHat does > indeed run RedHat Linux on all of it's servers AFAIK. That might be the case, but if you check a few of the Linux newsgroups in the past, lots are complaining about slow service. It's clear that FreeBSD is a far better performer than Linux is. I'm also sick and tired of having to deal with 40000 patches of the day to keep that duct tape and bailing wire project together. Yes, I'm forced to use it at work and it sucks. > Why don't you run OpenBSD? It's more secure out of the box. What you do mean by "more secure"? I go in and set up my own security policies anyway... I've also run FreeBSD since it was 386BSD. Besides, there hasn't been a kernel security problem in FreeBSD in eons (ports are a different story, but that's hardly FreeBSD's fault). Linux has them all the time. > What release > of FreeBSD are you running? I've been thinking of giving it a try at home > since it's pretty much all we use at work (Verio Web Hosting-iServer.) I'm running 4.0 right now. 4.1 Was just released, but I'm not going to bother upgrading until there's a compelling reason to do so. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 29 11:38:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA77484 for dynarec-outgoing; Fri, 29 Sep 2000 11:38:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 29 Sep 2000 11:45:42 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New 24-hour record for downloads from ftp.freesoftware.com (fwd) In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > To continue the off-topic silliness, I was not aware that WalnutCreek > > ever tried to run ftp.cdrom.com or ftp.freesoftware.com off of Linux. > It was tried 6 months prior and on intervals before that. The longest WC > got it to stay running was around 4 hours. It just doesn't scale well. Go to (or attempt to) wallace.redhat.com. No way in hell you can even get a connect. Their servers are set at 3000 simultaneous connections as is freesoftware, and freesoftware.com responds instantly. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 29 12:34:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA77535 for dynarec-outgoing; Fri, 29 Sep 2000 12:34:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000929123442.00817350@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 29 Sep 2000 12:34:42 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: New 24-hour record for downloads from ftp.freesoftware.com (fwd) In-Reply-To: References: <20000929102946.M24738@hetfield.patsoffice.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm running 4.0 right now. 4.1 Was just released, but I'm not going to >bother upgrading until there's a compelling reason to do so. I have a dual boot Win95/FreeBSD 3.1 machine. I want to upgrade to 4.X, but downloading it isn't an option and the CD is too much. Whatever happened to Cheapbytes? I got FreeBSD from them for $2! They disappeared for some reason, never found out why. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 29 12:41:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA77552 for dynarec-outgoing; Fri, 29 Sep 2000 12:41:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 29 Sep 2000 12:46:40 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: New 24-hour record for downloads from ftp.freesoftware.com (fwd) Message-ID: <20000929124640.R24738@hetfield.patsoffice.com> References: Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-md5; protocol="application/pgp-signature"; boundary="RCJLo13VlymhPcEi" Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from neil@synthcom.com on Fri, Sep 29, 2000 at 11:45:42AM +0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --RCJLo13VlymhPcEi Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable > Go to (or attempt to) wallace.redhat.com. No way in hell you can even get > a connect. Their servers are set at 3000 simultaneous connections as is > freesoftware, and freesoftware.com responds instantly. I'm not even getting an ICMP ping reply from them. Sounds to me like a bandwidth sautration/network connectivity issue, and not a machine performance issue. Anyhow, you have my response to your last message off the list in your box now. :-) Matt's traceroute [v0.41] hetfield.patsoffice.com Fri Sep 29 12:45:08 2000 Keys: D - Display mode R - Restart statistics Q - Quit Packets Pings Hostname %Loss Rcv Snt Last Best Avg Wo= rst 1. 001.dsl45224.rcsis.com 42% 7 12 24 23 24 25 2. 208.45.228.247 0% 11 11 24 24 25 26 3. gateway2.rcsis.com 0% 11 11 123 24 36 123 4. 157.130.200.33 0% 10 11 28 27 28 29 5. 143.at-5-0-0.XR3.SCL1.ALTER.NET 0% 11 11 31 28 29 35 6. 395.at-1-0-0.TR1.SAC1.ALTER.NET 0% 11 11 30 30 40 126 7. 127.at-6-1-0.TR1.DCA6.ALTER.NET 10% 10 11 93 92 95 101 8. 287.at-7-0-0.XR1.DCA1.ALTER.NET 0% 11 11 95 94 105 210 9. 195.ATM11-0-0.GW2.RDU1.ALTER.NET 10% 10 11 103 103 110 118 10. ??? FYI, Pat --=20 "You are not a beautiful and unique snowflake!" - Tyler Durden --RCJLo13VlymhPcEi Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.1 (GNU/Linux) Comment: For info see http://www.gnupg.org iEYEARECAAYFAjnU8aAACgkQrNiXbbxh4OfgAgCggMkLwa/OAxQ1gfYelumNzWBh rKEAn3Uojf5xwz9Utu958ZNED352iQLT =ZmE6 -----END PGP SIGNATURE----- --RCJLo13VlymhPcEi-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 29 14:23:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA77637 for dynarec-outgoing; Fri, 29 Sep 2000 14:23:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 29 Sep 2000 14:30:36 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New 24-hour record for downloads from ftp.freesoftware.com (fwd) In-Reply-To: <3.0.5.32.20000929123442.00817350@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I'm running 4.0 right now. 4.1 Was just released, but I'm not going to > >bother upgrading until there's a compelling reason to do so. > I have a dual boot Win95/FreeBSD 3.1 machine. I want to upgrade to 4.X, but > downloading it isn't an option and the CD is too much. Whatever happened to The CD is too much? $25? You're in the US, right? -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 29 14:32:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA77654 for dynarec-outgoing; Fri, 29 Sep 2000 14:32:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 29 Sep 2000 14:39:54 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New 24-hour record for downloads from ftp.freesoftware.com (fwd) In-Reply-To: <20000929124640.R24738@hetfield.patsoffice.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Go to (or attempt to) wallace.redhat.com. No way in hell you can even get > > a connect. Their servers are set at 3000 simultaneous connections as is > > freesoftware, and freesoftware.com responds instantly. > I'm not even getting an ICMP ping reply from them. Sounds to me like a > bandwidth sautration/network connectivity issue, and not a machine > performance issue. Anyhow, you have my response to your last message off > the list in your box now. :-) Both freesoftware.com and redhat.com have OC3s from what I've been told. I think they also block ICMPs to avoid ping attacks. -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 29 14:33:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA77664 for dynarec-outgoing; Fri, 29 Sep 2000 14:33:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20000929143333.00813100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 29 Sep 2000 14:33:33 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: New 24-hour record for downloads from ftp.freesoftware.com (fwd) In-Reply-To: References: <3.0.5.32.20000929123442.00817350@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 02:30 PM 9/29/2000 +0000, you wrote: >> >I'm running 4.0 right now. 4.1 Was just released, but I'm not going to >> >bother upgrading until there's a compelling reason to do so. >> I have a dual boot Win95/FreeBSD 3.1 machine. I want to upgrade to 4.X, but >> downloading it isn't an option and the CD is too much. Whatever happened to > >The CD is too much? $25? You're in the US, right? I thought it was upwards of $50 -- which is too much for me, considering I don't use FreeBSD much anymore, and it's only for personal use, not really for serving or anything. I'll dish out $25, though, once I get back into that stuff :) But... $2 was still an unbeatable bargain! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 29 14:44:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA77679 for dynarec-outgoing; Fri, 29 Sep 2000 14:43:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 29 Sep 2000 14:51:27 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New 24-hour record for downloads from ftp.freesoftware.com (fwd) In-Reply-To: <3.0.5.32.20000929143333.00813100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >The CD is too much? $25? You're in the US, right? > I thought it was upwards of $50 -- which is too much for me, considering I > don't use FreeBSD much anymore, and it's only for personal use, not really > for serving or anything. I'll dish out $25, though, once I get back into > that stuff :) But... $2 was still an unbeatable bargain! Hm... It is $39.95. I'm a subscriber (and have been for years), and it's $24.95 per release (abot every 3 months). The only UNIX I've seen @ $50 is one of the various Linuxen. Why is a FreeBSD ISO download out of the question? -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 29 15:01:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA77717 for dynarec-outgoing; Fri, 29 Sep 2000 15:01:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 29 Sep 2000 15:06:19 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: New 24-hour record for downloads from ftp.freesoftware.com (fwd) Message-ID: <20000929150618.B30021@hetfield.patsoffice.com> References: <20000929124640.R24738@hetfield.patsoffice.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-md5; protocol="application/pgp-signature"; boundary="MW5yreqqjyrRcusr" Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from neil@synthcom.com on Fri, Sep 29, 2000 at 02:39:54PM +0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --MW5yreqqjyrRcusr Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable > Both freesoftware.com and redhat.com have OC3s from what I've been told. I > think they also block ICMPs to avoid ping attacks. pub.iad.redhat.com is responding... [pjl@mustaine pjl]$ nslookup ftp.redhat.com Server: hetfield.patsoffice.com Address: 192.168.0.1 Non-authoritative answer: Name: ftp.redhat.com Addresses: 216.148.218.192, 206.132.41.212, 208.178.165.228 ^^^^^^^^^^^^^^^ FYI, Pat --=20 "You are not a beautiful and unique snowflake!" - Tyler Durden --MW5yreqqjyrRcusr Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.1 (GNU/Linux) Comment: For info see http://www.gnupg.org iEYEARECAAYFAjnVEloACgkQrNiXbbxh4Ocu6gCeNlsRKMTt1EQzrO2hdViH54py Z6kAnR4glzDQS8e7QytuQruQBUFkkV15 =NLDU -----END PGP SIGNATURE----- --MW5yreqqjyrRcusr-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 30 03:32:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA80525 for dynarec-outgoing; Sat, 30 Sep 2000 03:32:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c02aca$d29340c0$2b43ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <200009280624.IAA00875@pons.ac.upc.es> <005c01c02a11$9caf03e0$73c9fea9@lion> Subject: Re: DYNAREC: Silent! Date: Sat, 30 Sep 2000 12:40:14 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Vampire The Masquerade, my cousin lent me it and it seems > > it doesn't like my i740. Message from PC progammers: buy > > a new videocard. :( > > I'd send a message to Intel: fix your i740 drivers... > He! I'm actually using version 4.0 and it is the last (i740 isn't any more produced or supported). The fun is that it is the generic driver for hadware developers because Asus (my card is an Asus V2740) last driver version is 3.2. I don't know other cards but the i740 drivers have been really bad since the start. The first didn't have Opengl support and they had really ugly errors. With that last version I have found less errors and, it's incredible, opengl seems to work well. > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 2 14:58:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA83586 for dynarec-outgoing; Mon, 2 Oct 2000 14:57:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20001002145721.00815100@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 02 Oct 2000 14:57:21 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: A bit OT: GE condition Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I've just got a quick question on the "greater than or equal" condition. Shouldn't Z be checked for in a manner as such: test ah, 0x40 jnz short .do mov bl, al mov bh, ah and bh, 0xfe or bl, bh test bl, byte 0x81 jpe short .do ? I check for Z first (AH=NZ00 000C), if it is true, the branch is taken, and then I check for the rest of the condition. But the M68K manual does not mention the Z flag at all, and I don't think Musashi and Starscream do it that way either... Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 2 17:15:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA83698 for dynarec-outgoing; Mon, 2 Oct 2000 17:15:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 2 Oct 2000 17:23:28 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: A bit OT: GE condition In-Reply-To: <3.0.5.32.20001002145721.00815100@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've just got a quick question on the "greater than or equal" condition. > Shouldn't Z be checked for in a manner as such: > test ah, 0x40 > jnz short .do ... I may be missing something here, but couldn't you just do sahf jge blah ... ??? -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 2 17:38:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA83724 for dynarec-outgoing; Mon, 2 Oct 2000 17:38:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20001002173751.008141b0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 02 Oct 2000 17:37:51 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: A bit OT: GE condition In-Reply-To: References: <3.0.5.32.20001002145721.00815100@powernet.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 05:23 PM 10/2/2000 +0000, you wrote: >> I've just got a quick question on the "greater than or equal" condition. >> Shouldn't Z be checked for in a manner as such: >> test ah, 0x40 >> jnz short .do > >... > >I may be missing something here, but couldn't you just do > > sahf > jge blah LAHF/SAHF don't involve OF. I'd have to do something like: sahf pushf pop ebx and ebx, 0xfffff7ff ; get rid of old OF in EFLAGS mov dl, al shr edx, 11 or ebx, edx push ebx popf jge blah I think... and that would be a bit slow as well. I know there are faster ways to do it similar to my way, Starscream uses just a few instructions and one conditional branch, but I didn't want to copy Neill's method. I also wrote myself a little debugger which concurrently compared the execution of Starscream and Genital68K, and taking a closer look at the M68K manual, I guess Z doesn't have any effect on the "GE" condition. It's one of those nasty tricks I suppose :P But I see that it works the same way in the X86. I now have all the condition codes handled correctly, I belive. Still quite a bit of unusual bugs left in some games, and a few more instructions before I'm done. That makes me wonder a bit about DR68K. You said Food Fight is going to be used to test it, but how well do you think this game will work in debugging DR68K? I had some nasty bugs in Genital68K I had overlooked, and many games worked just fine, but there were some obscure titles which would show anywhere from almost unnoticable symptoms to severe problems... I do trust you will be able to debug DR68K much better than I could debug my own core, especially since you have produced so many awesome cores already :) Debugging stinks :P Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 3 00:08:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA84016 for dynarec-outgoing; Tue, 3 Oct 2000 00:08:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 3 Oct 2000 00:16:55 +0000 (GMT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: A bit OT: GE condition In-Reply-To: <3.0.5.32.20001002173751.008141b0@powernet.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > sahf > > jge blah > LAHF/SAHF don't involve OF. I'd have to do something like: Does GE use overflow when determining? You might be able to just do a JO if the statement above it computes the flags. > sahf > pushf > pop ebx > and ebx, 0xfffff7ff ; get rid of old OF in EFLAGS > mov dl, al > shr edx, 11 > or ebx, edx > push ebx > popf > jge blah Or a better executed: sahf pushfd mov dl, al pop ebx shr edx, 11 and bh, 0f7h or bl, dl push ebx popfd jge blah Eliminates a couple of pipeline stalls and shortens up the instruction times a bit. > I think... and that would be a bit slow as well. I know there are faster > ways to do it similar to my way, Starscream uses just a few instructions > and one conditional branch, but I didn't want to copy Neill's method. Why not? Provided you understand it... I see no problem! > Still quite a bit of unusual bugs left in some games, and a few more > instructions before I'm done. That makes me wonder a bit about DR68K. You > said Food Fight is going to be used to test it, but how well do you think > this game will work in debugging DR68K? It'll get it so things can limp along at least. Food Fight is in the low middle to middle in terms of complexity. > I had some nasty bugs in Genital68K > I had overlooked, and many games worked just fine, but there were some > obscure titles which would show anywhere from almost unnoticable symptoms > to severe problems... Yep. The Genesis games tend to be a bit more demanding. It stands to reason that if you get Genesis games to run it'll run most anything else. > I do trust you will be able to debug DR68K much > better than I could debug my own core, especially since you have produced > so many awesome cores already :) Well, I don't know about that. I do have the advantage of having written quite a few, but I don't know the 68K all that well. With mz80, it took me about 4 weeks to write from beginning to end (and get it to run reasonably well), and on and off for about 1.5 years to debug it to where it is today. So far we've gone about 9 months without a single bug report on it. Knock on wood... > Debugging stinks :P Yeah. Especially CPU cores... -->Neil ------------------------------------------------------------------------------- Neil Bradley Stability, performance, reliability, power: Synthcom Systems, Inc. http://www.freebsd.org ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 3 00:39:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA84051 for dynarec-outgoing; Tue, 3 Oct 2000 00:39:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200010030742.JAA32015@pons.ac.upc.es> Subject: Re: DYNAREC: A bit OT: GE condition In-Reply-To: "from Neil Bradley at Oct 3, 2000 00:16:55 am" To: dynarec@dynarec.com Date: Tue, 3 Oct 2000 09:42:51 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I think... and that would be a bit slow as well. I know there are faster > > ways to do it similar to my way, Starscream uses just a few instructions > > and one conditional branch, but I didn't want to copy Neill's method. > > Why not? Provided you understand it... I see no problem! > That is a problem I will never have. ;) > > Debugging stinks :P > > Yeah. Especially CPU cores... > Don't talk me please. Only a small change as bankswitching and I was more than a week. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Oct 15 13:15:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA03738 for dynarec-outgoing; Sun, 15 Oct 2000 13:15:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701c036e5$eb45ba40$2741ae3e@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: A long time Date: Sun, 15 Oct 2000 22:24:17 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com A small message: page updated ;)) Victor P.S.: Well, I haven't updated my page as I would have wanted but ... anyway. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 16 05:43:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA04636 for dynarec-outgoing; Mon, 16 Oct 2000 05:43:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: A long time From: "M.I.K.e" Message-ID: <000373c1bdf19581_mailit@mail.dynarec.com> References: <000701c036e5$eb45ba40$2741ae3e@hal9000> Date: Mon, 16 Oct 2000 14:54:42 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >A small message: Suddenly someone breaks the silence! ;-) >page updated >;)) Cool. BTW, I guess you might be interested to know that EPR was updated on a new site: http://www.jonshome.net/EPR/ -- M.I.K.e Death is nature's way of telling you to slow down --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 16 21:24:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA05326 for dynarec-outgoing; Mon, 16 Oct 2000 21:23:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com Subject: DYNAREC: New UAE-JIT [Update] From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Tue, 17 Oct 2000 06:40:29 +0200 Message-ID: <1eimux2.1d0ad551eu6mv4M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id VAA05323 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, You may add Bernd Bernie Meyer's JIT compiler to your links since it also has a nice introduction to dynamic recompilation. I ported it to Basilisk II: I had to make a few changes such as compiling blocks only after a certain execution count, 10 times actually. I had to do that because the compile-after-execution approach was actually slower than the interpreter alone, still in Basilisk II. I also introduced the "lazy translation cache flush" mechanism which might help in cases of self-modifying code. Obviously, the app must be "well-behaved", i.e. the programmer issued a cache invalidation himself (CINV* and similar instructions) after he modified code. Remember that the JIT is intended to be for 68020 and upper processors. The lazy flusher currently does not work properly with BasiliskII because I misshandle UAE spcflags and the condition to get out of compiled code. That problem is independant of the lazy flusher but it happens more easily with it :-/ The trick of the lazy flusher is to offset the pointer to the handler when a translation cache flush is issued. The handler now begins with a checksum. If checksums match, the pointer to the translation cache is reajusted back to its original position. Otherwise, the block is really trashed and recompiled later. Maybe Executor does the same thing in fact ? BTW, Bernie designed his compiler to be easily portable and I am committed to add a SPARC backend later and he had Alpha in mind. His JIT also has FPU instructions nowadays. A few notes: - JIT Basilisk II code size is low in my opinion: ~920 KB. - But data size is very huge due to the func tables for instruction handlers with no flag calculation and other tables for the code translators. For fun, I might also try to glue UAE and its JIT to DGen. ;-) A quick question: do processors for the X86 architecture have instructions to flush the I-cache ? Sorry if my message is a little confusing, I have to go now. Bye. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 16 23:10:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA05412 for dynarec-outgoing; Mon, 16 Oct 2000 23:10:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39EBEF15.32559660@austin.rr.com> Date: Mon, 16 Oct 2000 23:17:57 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: address space tricks in linux Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Got the dynarec list address wrong the first time... All numbers are in hex I noticed in Victor's doc that he mentions never having seen a non-MMU memory map (old school bankswitched perhaps) emulated with an MMU. Well, I've done that in stanknes =) The page is down right now though, so I don't have the sources immediately on hand, but I figured I'd explain the details and other things I've discovered while hacking around with it. Be warned that all of this is pretty much restricted to unices, and I have yet to hear of much success on anything but linux. Other unices may not support this particular abuse, as it can quite easily hose your process (I had a lot of fun with this =) The short description: stanknes uses mmap() with /proc/self/mem to emulate bankswitching, allowing me to use the non-bankswitched version of Neil Bradley's fine 6502 core. I don't quite exploit as much of it as I could (yet) so there is still some room left for improvement. I suppose I should start with mmap(). Basics: #include #include void *mmap(void *start, size_t length, int prot, int flags, int fd, off_t offset); int munmap(void *start, size_t length); [start], [length], and [offset] must all be even multiples of the system page size (4K for x86) mmap maps an area of [length] bytes into memory from offset [offset] into [fd]. [start] is a suggested map in point to use. prot is a bitcombination of 0 or more out of: PROT_EXEC, PROT_READ, PROT_WRITE, PROT_NONE. PROT_EXEC area should be executable PROT_READ area should be readable PROT_WRITE area should be writeable flags is a bitcombination of 0 or more out of: MAP_FIXED, MAP_SHARED, MAP_PRIVATE. MAP_FIXED: [start] is not a hint, it is a requirement. mmap will fail if it cannot map the block in there MAP_SHARED: share this mapping with all processes that map this device/file MAP_PRIVATE: create a private copy-on-write mapping, cannot be used at the same time as MAP_SHARED munmap unmaps the specified area, and all accesses after will cause invalid mem references the two files we're interested in are /dev/zero -- all reads return 0, all writes are ignored, mmap'ing it provides relatively overhead free page sized memory allocation. It does involve adding some vma structures in the kernel, but so will malloc. AFAIK, malloc will not touch this memory in most cases. It definitely will not if your malloc gets more memory via mmap on /dev/zero, but one using sbrk() might cause problems if you place your blocks badly. /proc/self/mem -- gives you direct access to your process' address space. mmap'ing it effectively gives you complete access to the page tables for your process, in a standard and safe manner (safe meaning you can't hose the system). that's all nice, you're thinking, but how does one USE it? the NES memory map looks like this: (note, this is off the top of my head) 0000-07FF Ram 0800-0FFF Ram mirror 1 1000-17FF Ram mirror 2 1800-1FFF Ram mirror 3 2000-2007 PPU register access 2008-3FFF PPU reg mirrors, every 8 bytes 4000-401F APU/controller access (18-1F unused) 4020-4FFF APU/controller mirror 5000-5FFF Expansion area (MMC5 reg access) 6000-7FFF SRAM area 8000-FFFF PRG first, when reading in the rom, I mmap enough ram to store the program roms from /dev/zero, and read them in (can't just mmap the rom file, header throws the alignment off) second, I mmap off an area to hold the 6502's memory map, 64K in size. More on things you can do with this later. this continues, and I mmap up some memory to hold the ram and sram (4K and 8K respectively) now, using mmap() with MAP_FIXED and /proc/self/mem, I alias the ram, sram, and program areas into the 64K section I mmaped earlier. The 4K ram page is mapped in at 0000 and 1000, and a write handler takes care of mirroring within the 4K page. I am working off of the assumption that reads are more frequent than writes, though the prime solution would detect and inline the mirror, or automatically mask down to the low 2K. If I remember correctly I added lines to the zp and stack accesses to automagically mirror them. from here, the mapper handling code simply uses mmap() with MAP_FIXED and /proc/self/mem to alias the appropriate pages from the PRG rom area into the 6502 address space. Performance considerations: I have not gotten around to in-depth timing of this stuff, but it should turn out to be a win in performance in most cases. The usual method with an array of pointers would probably be faster in cases involving truly obscene switching rates (I doubt this would help much for the PPU, where a few games swap banks 2-3 times per scanline) but I don't know the exact cutoff. basically, with mmap, you suffer the basic system call overhead, the time spent playing with the vma and page tables, and a TLB flush. I believe the TLB flushes on the later x86 chips are restricted only to TLB's with one of the remapped pages loaded at the time. The performance aid comes in the elimination of most bounds checking and possibly a layer of indirection from memory access. with pointer tables, most/all memory accesses to switched areas involve at least one layer of indirection. you do not suffer from cache issues, as cache lines on modern CPU's are tagged based off of the physical address. Proof: think about it for a while, and tagging from the logical address ends up being extremely bad. Shared libs loaded in different areas of the address space between two processes would take up twice the cache. all off-die CPU caches would have to work off of physical addresses, unless the MMU was also off-die. lastly, the x86 chips may only tag off of the low 12 address bits, which are the offset into a 4K page, which is the same for logical and physical addresses. Sneaky tricks/interesting details: The process address space under linux looks something like this: 00000000-08004000 or so -- unused. Completely. 08004000ish-end of image -- process image (1GBish) end of image-40000000 -- heap, mostly unused at program start. Stack is in here somewhere 40000000-C0000000 -- shared library/mmap area. generic mmaps tend to get address space from here (2GB) C0000000-FFFFFFFF -- kernel area, can't touch this. (3GB) from experiments, you can use mmap with MAP_FIXED on anything in the user area (0-3GB). this includes mmaping over your program image or shared libraries while in use (wonderful sig11 kaboom shortly afterwards =) when emulating single processor systems with address spaces smaller than about 1GB (most older systems) you can mmap the area for it's address space at logical 0. This lets you remove a layer of indirection from the core, and it can use the game's pointers directly. the downsides to doing this are that it isn't always usable (I believe FreeBSD was giving problems, need to install it and figure out it's memory map stuff) and that it removes the usual way of catching NULL pointer references. On the other hand, uninitialized function pointers can usually be spotted as times you get invalid instruction execution down at the bottom of the address space with no real stack frame to work with... When I get back to emu development, I have two things in mind for mmap stuff: some in-depth performance analysis, to see if it is fast enough for things like the NES PPU (smallest decoded tile page == 4K... system page size == 4K... how convenient...) and to replace malloc with a low overhead mmap based allocation system optimized for handling temp memory allocations that are unallocated/reallocated a lot, and will hopefully have the ability to reuse memory between multiple temporary allocations that are not used at the same time. Last I checked, it looked like Win2K has a new API that will give you this kind of access to the page tables. Under 9x, you can cheat and get ring-0 access through a hole in the 16 bit DPMI server... For dos, if you're in protected mode you might have a chance depending on how you got there. Via DPMI might get interesting, but if you're using your own code to get there you probably set up paging anyways. Comments and questions are welcome. I take "holy %&*(#)@, you're %*&#() NUTS" and other comments along those lines as compliments =) besides... this thing is rather clean and straightforward compared to my PPU render algorithm... -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 16 23:11:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA05422 for dynarec-outgoing; Mon, 16 Oct 2000 23:11:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200010170618.IAA19356@pons.ac.upc.es> Subject: Re: DYNAREC: New UAE-JIT [Update] In-Reply-To: <1eimux2.1d0ad551eu6mv4M@[192.168.0.2]> "from Gwenole Beauchesne at Oct 17, 2000 06:40:29 am" To: dynarec@dynarec.com Date: Tue, 17 Oct 2000 08:18:18 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > For fun, I might also try to glue UAE and its JIT to DGen. ;-) > THis could be interesting. ;) > A quick question: do processors for the X86 architecture have > instructions to flush the I-cache ? > Since 486 there is a instruction for flushing cache, which I think is an united cache (both code and data). But I think it's purpose isn't precisely to invalidate cache when there is self-modyfing code ... In fact I think in a x86 there isn't any way (instruction) to know that the programmer is self-modifying code, all the process is transparent. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 16 23:16:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA05434 for dynarec-outgoing; Mon, 16 Oct 2000 23:16:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39EBF08C.1C8B1CCE@austin.rr.com> Date: Mon, 16 Oct 2000 23:24:12 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: New UAE-JIT [Update] References: <200010170618.IAA19356@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Victor Moya del Barrio wrote: > Since 486 there is a instruction for flushing cache, which I think is > an united cache (both code and data). But I think it's purpose > isn't precisely to invalidate cache when there is self-modyfing code > ... In fact I think in a x86 there isn't any way (instruction) to > know that the programmer is self-modifying code, all the process > is transparent. > AFAIK, the P5 and later chips automagically invalidate modified code cache lines. This could cause a pipeline flush in some cases, which REALLY SUCKS GOAT NADS performance wise on the later ones, P6 and up have some LONG pipelines... I may have it backwards, because I think the 486 will handle self-modifying code automagically (lots of SMC 8086 era code out there...) > Victor -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 16 23:56:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA05470 for dynarec-outgoing; Mon, 16 Oct 2000 23:56:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200010170703.JAA04139@pons.ac.upc.es> Subject: DYNAREC: Tile based graphic engines emulation To: dynarec@dynarec.com Date: Tue, 17 Oct 2000 09:03:39 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I have been working last week with the Master System VDP and after seing how slow it is the more "direct" implementation (the one I get from start just ;) I began to thing about other ways of implementing it. >From what I know (or maybe I guess, I don't know many ...) I think there are two direct ways of implementing tile engines (most of 8 and 16 bit consoles, and arcade machines). They are based in the same idea. One is a line by line engine, the emulator builds the scanline from the graphic processor information each line, emulating exactly the behaviour of the real chip. This is slow (each line for each frame, very slow). But it is also needed if you want to emulate raster events in the middle of the line (usually called horizontal interrupts), the Master System and the Mega Drive use them for example. Another approach is to draw the frame from the graphic information only at the end of the frame. This is faster (for example with sprites you only have to go through the sprite table once) but you can't (or not easily implement raster effects). >From those two approaches you can optimize a lot: try to implement somekind of dirty rectangles (??), make the engine in assembler and I'm sure a lot of more. But I was wondering if it could be possible an implementation which only would write real changes to the screen. That is something like a system which traps all VRAM and VDP register writes and translates them into a propper change in the displayed screen (or maybe in the backbuffer). My Master System VDP emulator now traps VRAM writes and decodes the tile pixel information (is coded in bit-planes) but this is just a small optimization. I was thinking about such an engine for the MS VDP (16KB of VRAM) and for a fast one I would need a minimun of 512KB (not much in our times though), and I'm not sure yet if it could work properly. And ... how much memory would need a NeoGeo engine emulated that way? :( There is any emulator which uses something similar? Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 00:37:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA05516 for dynarec-outgoing; Tue, 17 Oct 2000 00:37:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200010170743.JAA25857@pons.ac.upc.es> Subject: Re: DYNAREC: address space tricks in linux In-Reply-To: <39EBEF15.32559660@austin.rr.com> "from John Allensworth at Oct 16, 2000 11:17:57 pm" To: dynarec@dynarec.com Date: Tue, 17 Oct 2000 09:43:42 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Got the dynarec list address wrong the first time... > > All numbers are in hex > > I noticed in Victor's doc that he mentions never having seen a non-MMU > memory > map (old school bankswitched perhaps) emulated with an MMU. > In fact I remember the discussion in this list some weeks ago about this topic. It is one of the reasons because I wrote about it in the document. ;) But It seems I didn't remember about stanknes. > Well, I've done that in stanknes =) The page is down right now though, > so I > don't have the sources immediately on hand, but I figured I'd explain > the > details and other things I've discovered while hacking around with it. If you don't have a good site you could ask NB for an account here in dynarec. ;) It is interesting your explanation. In my work (the static binary translator) I have seen the use of mmap in Unixes (Alpha OSF1) for emulating memory address too, and it works in a very similar way. In fact in Alpha seems to be a way to move the stack to another place and the translator places the stack in the end of the address space (or I think so) and reduces heavely its size. It seems to work well for the 32 bits architectures actually translated (is for Alpha 64 bits), which are the only I have worked (although it works with 64 bit architectures). Victor Moya als --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 02:38:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA05771 for dynarec-outgoing; Tue, 17 Oct 2000 02:38:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39EC1FD7.EF625E24@austin.rr.com> Date: Tue, 17 Oct 2000 02:45:59 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: address space tricks in linux References: <200010170743.JAA25857@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Victor Moya del Barrio wrote: > > Well, I've done that in stanknes =) The page is down right now though, > > so I > > don't have the sources immediately on hand, but I figured I'd explain > > the > > details and other things I've discovered while hacking around with it. > > If you don't have a good site you could ask NB for an account here in > dynarec. ;) > Hmm, that could get interesting. The former site was on parodius, but yoshi hosed it without warning me. It also seems he has *.home.com and *.rr.com in his spamfilter... My other option at the moment is a site on the @home account, which is less than desirable =) > (or I think so) and reduces heavely its size. It seems to work > well for the 32 bits architectures actually translated (is for > Alpha 64 bits), which are the only I have worked (although it works > with 64 bit architectures). 64 bit architectures have a truly obscene amount of address space to work with =) I believe someone worked it out as being able to keep uncompressed copies of every movie ever made (minus audio) at 1024x768x24bpp at 30 fps in memory at once... Another trick that might be usable in dos, or in a more robust OS if it has extremely good signal latency, would be to forgo the usual address decode route, and simply leave IO spaces with both read and write disabled. Then you let the sig 11 handler take care of it. I vaguely recall some API that provided extra information to them, such as the faulting address. For that to work well, the extra time penalty for hitting a signal handler (and going through the kernel) on all IO accesses would have to be more than offset by the time bonus you get from not sifting through the mem read/write tables... could work for those triggered by rom writes as well by write-protecting the memory. Some tests might be in order... That method probably wouldn't be the best choice for a dynarec core, as it should only have to hit the handler search on indirect accesses. I would expect a good dynarec core to do the lookup on direct addresses once when recompiling and inline the call... I'll try to remember to respond on the tile rendering post tomorrow, but here are some short answers: The speedup you get from rendering a frame at a time instead of a line at a time you tend to lose once you add in the code to keep things accurate. Rendering a line at a time can be just as fast or faster than rendering a frame at a time if you preserve enough of the state between lines. You will usually use fewer cache lines more often with the line at a time... My list of things to try on getting stanknes' renderer faster don't include dirty rectangles per se, but does include a fair bit of data caching and possibly some prediction. It'll probably be a long one if my writing paper doesn't take too long... > Victor Moya > als -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 02:56:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA05793 for dynarec-outgoing; Tue, 17 Oct 2000 02:56:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200010171000.MAA24524@pons.ac.upc.es> Subject: Re: DYNAREC: address space tricks in linux In-Reply-To: <39EC1FD7.EF625E24@austin.rr.com> "from John Allensworth at Oct 17, 2000 02:45:59 am" To: dynarec@dynarec.com Date: Tue, 17 Oct 2000 12:00:37 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Hmm, that could get interesting. The former site was on parodius, but yoshi > hosed it without warning me. It also seems he has *.home.com and *.rr.com in > his spamfilter... > Neil have you heart him? ;) > > (or I think so) and reduces heavely its size. It seems to work > > well for the 32 bits architectures actually translated (is for > > Alpha 64 bits), which are the only I have worked (although it works > > with 64 bit architectures). > > 64 bit architectures have a truly obscene amount of address space to work with > =) I believe someone worked it out as being able to keep uncompressed copies of > every movie ever made (minus audio) at 1024x768x24bpp at 30 fps in memory at > once... > Hehe! :)) The problem becomes when you are trying to emulate or translate a 64 bit architecture over another 64 bit architecture. ;) But yes a 64 bit address space is really mad for usual applications. But ask the guys working with heavy data bases ... > Another trick that might be usable in dos, or in a more robust OS if it has > extremely good signal latency, would be to forgo the usual address decode > route, and simply leave IO spaces with both read and write disabled. Then you > let the sig 11 handler take care of it. I vaguely recall some API that provided > extra information to them, such as the faulting address. > I think I said something in my doc about it too, or perhaps I forgot ... I was also thinking about using MMU for IO that way. > For that to work well, the extra time penalty for hitting a signal handler (and > going through the kernel) on all IO accesses would have to be more than offset > by the time bonus you get from not sifting through the mem read/write tables... > could work for those triggered by rom writes as well by write-protecting the > memory. Some tests might be in order... > This the main problem, noone seems to have tested those things (of it has been tested hasn't been publiced). It's the kind of lack of information in the emuscene I would like to change. ;) A bit only in any case. > That method probably wouldn't be the best choice for a dynarec core, as it > should only have to hit the handler search on indirect accesses. I would expect > a good dynarec core to do the lookup on direct addresses once when recompiling > and inline the call... > Of course, that is a very basic and easy optimization which comes from dynarec. And I hope every dynarec programmer is doing that way (why I'm afraid they didn't :( ). It is even easier than flag calculation suppresion. > The speedup you get from rendering a frame at a time instead of a line at a > time you tend to lose once you add in the code to keep things accurate. > I think I was thinking about innacurate rendering for frame by frame renderers. Someone knows if the SNES has H ints? I think I remeber something from ZSNES but I'm not sure: a TILE by TILE engine vs a LINE by LINE ... I don't know. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 11:19:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA06183 for dynarec-outgoing; Tue, 17 Oct 2000 11:19:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 17 Oct 2000 11:25:41 -0700 (PDT) From: Neil Bradley To: mul8@synthcom.com cc: dynarec@dynarec.com Subject: DYNAREC: Re: MUL8: address space tricks for linux, and possibly 98/NT5 In-Reply-To: <39EBEE89.E6EF25DB@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The short description: stanknes uses mmap() with /proc/self/mem to emulate > bankswitching, allowing me to use the non-bankswitched version of Neil > Bradley's fine 6502 core. I don't quite exploit as much of it as I could (yet) > so there is still some room left for improvement. FWIW, We discussed using this many moons ago on the Dynarec list. Glad to see somone has done it and proved the theory! > Last I checked, it looked like Win2K has a new API that will give you > this kind of access to the page tables. Under 9x, you can cheat and > get ring-0 access through a hole in the 16 bit DPMI server... For dos, > if you're in protected mode you might have a chance depending on how > you got there. Via DPMI might get interesting, but if you're using > your own code to get there you probably set up paging anyways. You can do the equivalent in Win32 and have been able to for quite some time. I just can't remember the specific API to do it. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Just shut up and enjoy the Ozzy" - Horatio Sanz Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 11:23:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA06196 for dynarec-outgoing; Tue, 17 Oct 2000 11:23:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 17 Oct 2000 11:29:49 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New UAE-JIT [Update] In-Reply-To: <200010170618.IAA19356@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > A quick question: do processors for the X86 architecture have > > instructions to flush the I-cache ? > Since 486 there is a instruction for flushing cache, which I think is > an united cache (both code and data). But I think it's purpose > isn't precisely to invalidate cache when there is self-modyfing code > ... In fact I think in a x86 there isn't any way (instruction) to > know that the programmer is self-modifying code, all the process > is transparent. On the 486 you need to make sure you do a jump or WBINV instruction before executing code you just modified. On the Pentium it's no big deal because it causes a pipeline/prefetch flush if you do such a thing in executed memory space. Self modifying code 'aint a good idea. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Just shut up and enjoy the Ozzy" - Horatio Sanz Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 11:24:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA06206 for dynarec-outgoing; Tue, 17 Oct 2000 11:24:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 17 Oct 2000 11:30:41 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: New UAE-JIT [Update] In-Reply-To: <39EBF08C.1C8B1CCE@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > ... In fact I think in a x86 there isn't any way (instruction) to > > know that the programmer is self-modifying code, all the process > > is transparent. > AFAIK, the P5 and later chips automagically invalidate modified code > cache lines. This could cause a pipeline flush in some cases, which > REALLY SUCKS GOAT NADS performance wise on the later ones, P6 and up > have some LONG pipelines... Yes, goat nads is right. More like goat SCHLONG. > I may have it backwards, because I think the 486 will handle self-modifying > code automagically (lots of SMC 8086 era code out there...) Beware - the 486 won't. I've actually run in to some code that won't properly run because of it. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Just shut up and enjoy the Ozzy" - Horatio Sanz Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 11:49:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA06232 for dynarec-outgoing; Tue, 17 Oct 2000 11:49:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39ECA086.7187@hooked.net> Date: Tue, 17 Oct 2000 11:55:02 -0700 From: Charles MacDonald Organization: Whole Earth Networks X-Mailer: Mozilla 3.04 (Win95; I) MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Tile based graphic engines emulation References: <200010170703.JAA04139@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > a system which traps all VRAM and VDP register writes and translates them > into a propper change in the displayed screen (or maybe in the > backbuffer). I think this could be possible for simple systems, but chances are the overhead would increase drastically along with the complexity of the video hardware being used. Multiple background layers would be a nightmare to handle. I've found that for consoles like the Sega Genesis, it's easier to simplify the rendering code and try to optimize the drawing routines as best possible. There are too many factors that would require parts of the display to be redrawn each frame, and that is the situation where the overhead involved becomes a problem. > yet if it could work properly. And ... how much memory would need a > NeoGeo engine emulated that way? :( The tile cache alone for Neo Geo games would be huge. :) Also, it doesn't have background layers but rather sprite 'blocks', so updates to the screen would probably mean a lot of sorting through the sprites before you could actually render anything. -- Charles Mac Donald E-mail: cgfm2@hooked.net WWW: http://cgfm2.emuviews.com Stop spam before it is legalized! Act now! Visit http://www.cauce.org --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 12:22:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA06269 for dynarec-outgoing; Tue, 17 Oct 2000 12:22:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 17 Oct 2000 12:29:17 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Tile based graphic engines emulation In-Reply-To: <200010170703.JAA04139@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I have been working last week with the Master System VDP and after seing > how slow it is the more "direct" implementation (the one I get from start > just ;) I began to thing about other ways of implementing it. I have a tile/sprite management system that I've had in my head for quite some time that I've not gotten around to creating that addresses a lot of what you're talking abot. > there are two direct ways of implementing tile engines (most of > 8 and 16 bit consoles, and arcade machines). They are based in the > same idea. One is a line by line engine, the emulator builds the > scanline from the graphic processor information each line, emulating > exactly the behaviour of the real chip. This is slow (each line for > each frame, very slow). But it is also needed if you want to > emulate raster events in the middle of the line (usually called > horizontal interrupts), the Master System and the Mega Drive use > them for example. I've not see anything yet that would interrupt in the middle of a scanline. I've seen it at the *END* of a scanline. As an example, Toobin' would load up a bunch of sprites in the sprite engine to be drawn, they'd get drawn, and half way through the vertical retrace, an interrupt would happen and it would put in an entirely new set of sprites in the engine. This is why emulated timing is so bloody important. If it's off, the scanline engine winds up loading them in too soon. > Another approach is to draw the frame from the graphic information only > at the end of the frame. This is faster (for example with sprites > you only have to go through the sprite table once) but you can't > (or not easily implement raster effects). Or you could cache up all sprites to be drawn on a per frame basis and reset them only when it hits the end of the frame. I do this in Toobin' in Retrocade and it works quite well. > >From those two approaches you can optimize a lot: try to implement > somekind of dirty rectangles (??), make the engine in assembler and > I'm sure a lot of more. I've got a solution for the dirty rectangles (see below) in addition to a scrolling layer ability, sprites, and tiles. > There is any emulator which uses something similar? Retrocade uses something similar. But here's what I consider to be the "next generation" of sprite/tile engines. First create a backbuffer (in memory) of the actual display surface, including a surrounding pixel border that is as large as the largest sprite to be displayed. So for example, let's take Toobin'. Its sprites are 16x16, and its backbuffer display is 512X1024, so your backbuffer would be 544x1056. This gives a 16 pixel border around the entire backbuffer. Toobin's visible area is 384x512, so it's a viewport into this huge backbuffer. The additional 16 pixel border is there so that overdraw can occur on the sprites (I.E. no clipping needed!). Toobin' has a tile layer, an alpha layer, and a sprite layer. The alpha layer has the ability to be absolute or fixed in relation to the viewport, as dose the sprite layer. Are we having fun yet? Now we create a structure that indicates the type of each layer, from farthest back to most forward: struct sLayer sToobinLayers[] = { LAYER_TILE, LAYER_SPRITE, LAYER_ALPHA }; Each layer has a generic API that allows any region to be dirtied. So when a sprite is drawn, that layer winds up calling the tile and alpha layers indicating an x/y coordinate and x/y size of the dirty area, and each layer is responsible for marking itself dirty (or time to redraw) for the master draw routine. And you can have as many layers as you want and as many types as you want. So as each tile changes, each write to the tile area will dirty the appropriate sprite or alpha layer. This will avoid the entire tile layer (or anything else for that matter) from being redrawn every frame. Only the changes are drawn. When a particular region is dirtied, the graphics engine also keeps a dirty rectangle list for blitting backbuffer to the display device. Of course, if the scroll position moves, you've got to blit the whole thing, but if it doesn't move, you can use the dirty rectangle approach. Toobin' spends about 30-40% of its time blitting the whole screen but you can gain a lot by doing this dirty support - greater than a 50% speed increase I've found! Then, when you finally blit, you just get a list of rectangles to draw - or one big one if it's a screen blit. The code driving the graphics has no clue what's going on, and you get the benefit of optimization on each layer without even realizing it. If you want, you can rearrange the priorities of the layers, too. That can occur if you have multiple layers of sprites that change their priorities. Thoughts? -->Neil ------------------------------------------------------------------------------- Neil Bradley "Just shut up and enjoy the Ozzy" - Horatio Sanz Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 12:47:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA06301 for dynarec-outgoing; Tue, 17 Oct 2000 12:47:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39ECAE77.6A7FD2ED@austin.rr.com> Date: Tue, 17 Oct 2000 12:54:31 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Tile based graphic engines emulation (long) References: <200010170703.JAA04139@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Victor Moya del Barrio wrote: Ahh, finally something on my other particularly odd area of interest, old school console rendering tricks =) > exactly the behaviour of the real chip. This is slow (each line for > each frame, very slow). But it is also needed if you want to > emulate raster events in the middle of the line (usually called These can be quite fast with the right amount of optimization, especially if you add code to the full frame one to handle accuraccy issues. > Another approach is to draw the frame from the graphic information only > at the end of the frame. This is faster (for example with sprites > you only have to go through the sprite table once) but you can't > (or not easily implement raster effects). One other problem with this has to do with systems that provide feedback during rendering, like the NES's sprite 0 hit flag bit. This is set when the first pixel of sprite 0 is drawn, and it overlaps a background pixel. A number of older games spin-wait on this bit, then either immediately write to the scrolling registers or drop into a cycle timed loop. Zelda does this for instance. > But I was wondering if it could be possible an implementation which > only would write real changes to the screen. That is something like > a system which traps all VRAM and VDP register writes and translates them > into a propper change in the displayed screen (or maybe in the The problem here is that the tile based engines tend to do all their writing to offscreen areas, and then slowly scroll it on. Many of them will result in the entire frame getting redrawn quite often, unless you deal with scrolling. > There is any emulator which uses something similar? Here's what I'm using in stanknes, and a bit of what I'm planning on trying. quick intro to nes graphics: the nes uses 4 bit per pixel graphics, with 2 seperate palettes, one for background tiles, one for sprite tiles. there are 4 nametables in the PPU memory, at $2000, $2400, $2800, and $2c00. I'll refer to them as NT0-3 The nes only has enough memory on it to store 2, so the others are mirrored. The exact mirroring is under the control of the cart mapper or hardware, but the three usual types are horizontal, vertical, and one screen. They are laid out like this: NT0 NT1 NT2 NT3 all edges wrap around. Vertical mirroring mirrors NT0 onto NT2, and NT1 onto NT3. Horizontal mirrors NT0 to NT1, and NT2 to NT3. One screen usually mirrors NT0 or NT1 to all. the patterns are stored in the first 8K of the PPU address space, with a bit in the control registers to decide whether the background uses the 256 tiles at $0000, or the 256 tiles at $1000. Each tile is 16 bytes long, and has 2 bit planes. 8 bytes for plane 0, then 8 bytes for plane 1. the first 32*30 bytes of each table store one-byte tile numbers. the last bytes of each nametable (starting at offset $3c0) store extra color bits, and are referred to as the attribute table. each attribute byte specifies two more bits per pixel in a rather odd way. Due to a lack of memory, each byte controls 16 tiles, which leaves 2 bits each for 4 2x2 tile sections. attribute byte fields: 33221100b 0 1 4 5 2 3 6 7 8 9 C D A B E F bits 00 are the upper 2 bits for tiles 0-3, 11 for tiles 4-7, 22 for 8-B, 33 for C-F. sprites are fetched between scanlines, and have the same tile format, with a field in the sprite structure to store the upper 2 bits for each sprite. one bit in the sprite struct controls whether it is in front of or behind the background. the scroll registers are latched, and loaded into the vram address register at the beginning of the frame, with hscroll getting reset at the start of each scanline. some scrolling tricks can be effected by writing to the vram address register mid-frame. now for the real stuff =P the current stanknes implementation (working from memory) runs like this: (line before fetches sprites for this line) update vram address register fetch background info perform 9bit->5bit translation perform 5-bit->target expansion fetch sprites for the next line for better accuraccy, I use the vram address register to fetch the nametable data, which generally reduces code to deal with the mid-frame address reg writes. the sprite fetch searches the sprite ram (linear search, based off of y address. I sort the sprite ram by Y address on writes and dma) fetches the appropriate 8 sprites, and fills 6 arrays: planes 0-4 for the sprites (sp0[], sp1[], sa0[], sa1[]) the background priority bit (pri[]) and spr 0 flag [z[]] the background fetch involves reading the nametable bytes, filling two 256 bit arrays with the two tile planes, and another two with the appropriate attribute bits. these are bp0[], bp1[], ba0[], and ba1[]. the 9bit->5 bit translation uses some logical op tricks to let me process the entire line at once, with transparency automagically working. in short, sprite pixels overlap background ones, unless the priority bit is set. transparency is defined as 0 in the pattern planes (attribute planes do not affect transparency) the code for this is truly beautiful, being about 8 lines long. my thanks to the comp sci lecturer who triggered the thought for this (he said that a boolean variable set appropriately was just as readable as the equivalent if-tree, wanted to use this to prove him wrong...) this results in p0[] through p4[], which are a planar 5bpp setup giving indexes into the nes palette. the 5bit->target simply fans the bits out and runs the result through a lut to provide destination pixels. right now, using a 32bpp destination, execution time seems to run something like this (gprof numbers) 35% - 5bit->target expansion 35% - background fetch 10% - sprite fetch 20% - everything else numbers are off the top of my head, but should be somewhat close. note, the only assembly in stanknes right now are 3 helper routines that might not be used anymore (rol, ror, and bitflip) some of the MMX routines are almost BUILT for this, and could process 1/4 scanline per op. Unfortunately they didn't provide a bit unpacker. the obvious optimization targets are the 5 bit expansion, and the bg fetch. if you say that the 5 bit planar representation adds complexity, you'd be right, but going the other way, with the usual chunky form, the numbers run up at about 50% used expanding that. this has things evened out a bit more. as for the bg fetch, right now it rusn through the whole deal each line. this means that there is a lot of redundant processing going on (shift/masking the pattern data into place, fetching the pattern and attribute data, etc) and the data at hand is extremely cacheable if done right. two forms have come to mind, one I've been kicking around for a while, the other I thought up last night while trying to go to sleep, thinking about the idea of a tile based renderer. the first method would involve caching the two pattern planes of bg data for the entire screen. the attribute lines do not need to be cached, as they can be reused for up to 16 scanlines at a time, and do not involve the extra layer of indirection. I would tag the cache lines based off of the vram address they start at, to handle splitscreens intelligently (invalidating everything whenever the vram address is changed mid-frame would not be optimal, as the address change tends to be periodic, and happens once per frame minimum) this method might lose out by way of the amount of extra data used, as it involves an extra 16 bytes per line plus the overhead for cache tags and whatnot. this would probably be a usable form of dirty update for the 8-16bit consoles, as it could potentially allow for scrollign without hosing the cached data (non-split screen vscrolling trick comes to mind immediately, split-screen one forming...) the second method, which might be even better, would involve fetching 8 scanlines of data at once, and processing all 8 lines in parallel. this could win out because in most cases, if one line of a tile is used, all the others will be as well, only exceptions being the first and last lines of the screen, and lines where the vram address is changed mid-render. this could be expanded to fetching 16 or 32 scanlines at once, coinciding with the attribute sizes. an adaptative approach that changes the number of lines fetched at once could be interesting as well. a last method for emulating this, that I had in mind to try but (until recently) was short on docs, would be to emulate it the way we emulate the CPUs. recently someone reverse engineered the PPU behavior at the PPU cycle level. this method might suffer a bit on performance (without a bit of help from the CPU core to detect spin-loops) but could probably be made quite fast, and is the most accurate method. The advantage is that large blocks could be processed at once, while still ensuring synchronization. > Victor -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 12:47:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA06311 for dynarec-outgoing; Tue, 17 Oct 2000 12:47:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39ECAEB2.8371B4E0@austin.rr.com> Date: Tue, 17 Oct 2000 12:55:30 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: address space tricks in linux References: <200010171000.MAA24524@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Victor Moya del Barrio wrote: > Hehe! :)) > The problem becomes when you are trying to emulate or translate a 64 bit > architecture over another 64 bit architecture. ;) But yes a 64 bit address > space is really mad for usual applications. But ask the guys working with > heavy data bases ... Heh, true, but I figure most of the 64 bit systems out there only use a tiny bit of the address space. You could probably hide the emulator program image, shared libraries, etc are extremely likely to be stuck in unused parts of the address space. I really need to look into N64 and PSX tech details though (I wanna play SOTN on a real machine damnit...) > This the main problem, noone seems to have tested those things (of it has > been tested hasn't been publiced). It's the kind of lack of information > in the emuscene I would like to change. ;) A bit only in any case. Heh, I think the reason noone has really tested them much is that it's generally assumed that it's extremely slow. It all depends on how quickly your OS of choice goes through the GP fault interrupt->signal delivery->signal handler sequence. Linux might trigger a reschedule on the signal as well... > I think I was thinking about innacurate rendering for frame by frame renderers. > Someone knows if the SNES has H ints? I think I remeber something from ZSNES > but I'm not sure: a TILE by TILE engine vs a LINE by LINE ... I don't know. The SNES has HDMA at least, DMA trick to load the PPU registers per line. I'm pretty sure it has some h irq's. The NES usually gets away with waiting for the sprite 0 hit, or some timed loops to write to the scroll registers. A few of the mappers have scanline counting IRQ's (of varying accuraccy) See horribly long rendering email I'm about to write =P > Victor -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 12:48:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA06321 for dynarec-outgoing; Tue, 17 Oct 2000 12:48:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39ECAEDF.FCBAC3DB@austin.rr.com> Date: Tue, 17 Oct 2000 12:56:15 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Re: MUL8: address space tricks for linux, and possibly 98/NT5 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > The short description: stanknes uses mmap() with /proc/self/mem to emulate > > bankswitching, allowing me to use the non-bankswitched version of Neil > > Bradley's fine 6502 core. I don't quite exploit as much of it as I could (yet) > > so there is still some room left for improvement. > > FWIW, We discussed using this many moons ago on the Dynarec list. Glad to > see somone has done it and proved the theory! > I could have sworn I mentioned this many moons ago as well, but it's always healthy to bring things back up every once in a while =) > > you got there. Via DPMI might get interesting, but if you're using > > your own code to get there you probably set up paging anyways. > > You can do the equivalent in Win32 and have been able to for quite some > time. I just can't remember the specific API to do it. > The set of platform SDK docs I have show a mmap-like API, but I haven't been able to find one specifically for page table abuse. I found one a while back on their site, but it was listed as NT5 and up only... > -->Neil > ------------------------------------------------------------------------------- > Neil Bradley "Just shut up and enjoy the Ozzy" - Horatio Sanz > Synthcom Systems, Inc. ICQ #29402898 -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 12:59:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA06339 for dynarec-outgoing; Tue, 17 Oct 2000 12:59:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001f01c03876$1047a100$054aae3e@hal9000> From: "Victor Moya del Barrio" To: References: <200010170703.JAA04139@pons.ac.upc.es> <39ECA086.7187@hooked.net> Subject: Re: DYNAREC: Tile based graphic engines emulation Date: Tue, 17 Oct 2000 21:53:09 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com How many people from Eidolon's is here? ;) > > a system which traps all VRAM and VDP register writes and translates them > > into a propper change in the displayed screen (or maybe in the > > backbuffer). > > I think this could be possible for simple systems, but chances are the > overhead would increase drastically along with the complexity of the > video hardware being used. Multiple background layers would be a > nightmare to handle. > In fact the tile based engines are based in this idea: small amount of data can change a lot the display. Their purpose was to be very efficient in the data exchange/visual result relation, to reduce the bandwitch needed between the graphic processor and the CPU. So by definition each write to such VDPs can be potentially very hard to implement. And the problem increases because many times the data is stored to be easily used with a line by line renderer rather than with 'by access' renderer. I think it was just another of my crazy ideas. ;) A "good" solution would require also a lot of more memory than an usual line by line renderer. > I've found that for consoles like the Sega Genesis, it's easier to > simplify the rendering code and try to optimize the drawing routines as > best possible. There are too many factors that would require parts of > the display to be redrawn each frame, and that is the situation where > the overhead involved becomes a problem. > Scroll can be a good example of one thing very easy and very common which can change a lot the display. > > yet if it could work properly. And ... how much memory would need a > > NeoGeo engine emulated that way? :( > > The tile cache alone for Neo Geo games would be huge. :) Also, it > doesn't have background layers but rather sprite 'blocks', so updates to > the screen would probably mean a lot of sorting through the sprites > before you could actually render anything. It doesn't have background? Interesting, if I find some information about the Neo Geo I will study it. BTW, I have to thank you for your document about the SMS VDP because it has been my main reference for the SMS emulator I'm doing ;). I have to put credit in my page, but as the other day I did just a very fast update ... The document about the Genesis VDP will be very useful too someday. A question about the SMS VDP? When bit 5 in VDP register is 1 (leftmost column blanked) what isn't displayed? The first eight pixels in a line or the first column that starts in the line? I guess it should be the second because with the first choice I'm having problems with sprites ... ;) > Charles Mac Donald Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 13:18:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA06368 for dynarec-outgoing; Tue, 17 Oct 2000 13:18:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20001017131829.0081a2f0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 17 Oct 2000 13:18:29 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Tile based graphic engines emulation In-Reply-To: <001f01c03876$1047a100$054aae3e@hal9000> References: <200010170703.JAA04139@pons.ac.upc.es> <39ECA086.7187@hooked.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 09:53 PM 10/17/2000 +0200, you wrote: > >How many people from Eidolon's is here? ;) Me. >I think it was just another of my crazy ideas. ;) BTW, speaking of crazy ideas. Charles, are you going to release that graphics engine document you wrote up. I think it's awesome and definitely some good old fashioned crazy stuff :) >A "good" solution would require also a lot of more memory than an usual >line by line renderer. Hmm, one thing to try would be to use multiple graphics engines for different situations. The idea is kind of scoffed at... "why not just have one engine that works?" But it is feasible, and in my experience, graphics engines aren't really that much code in the long run. In a system like the Genesis, a variety of different methods can be used to manage the screen. Some games use a lot of scrolling (Sonic the Hedgehog) and some use virtually none (Dr. Robotnik's Mean Bean Machine.) I think it would be possible to check what's going on, perhaps using some simple profiling, and determine which sort of graphics engine to use. For Tetris-like puzzle games, dirty rectangles would work extremely well I think. For games like Sonic which change the screen a lot using parallax scrolling and what-not, a traditional line based engine would work good... Genesis games have 3 different methods (well 4, if you count that illegal scrolling mode) to scroll the screen. Line based, tile based, or full screen. The latter 2 could easily be handled by a tile-based engine, and I think tile based engines compared against similar-quality line-based engines are usually quite a bit faster because of simplicity. Line-based scrolling would have to be done with a line-based engine I think. Genesis games can also choose to use horizontal interrupts. Horizontal interrupts are used for lots of cool and complex raster effects and it would be best to use a line-based engine in that situation. This is just some really generic thinking I wanted to put on the table... It would be kind of interesting because of the profiling involved. I think Vegas/GensX uses a few different engines and determines which to use by looking at what the game is doing. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 13:26:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA06386 for dynarec-outgoing; Tue, 17 Oct 2000 13:26:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39ECB740.4AB5@hooked.net> Date: Tue, 17 Oct 2000 13:32:00 -0700 From: Charles MacDonald Organization: Whole Earth Networks X-Mailer: Mozilla 3.04 (Win95; I) MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Tile based graphic engines emulation References: <200010170703.JAA04139@pons.ac.upc.es> <39ECA086.7187@hooked.net> <001f01c03876$1047a100$054aae3e@hal9000> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > It doesn't have background? Interesting, if I find some information about > the Neo Geo I will study it. You'll have to look in MAME, there is no documentation on the Neo Geo video hardware. One nice feature is that you can position sprites relative to another in hardware, so constructing and scrolling a large background layer isn't difficult. This kind of flexibility is what probably kept the Neo Geo around for so long. > BTW, I have to thank you for your document about the SMS VDP because > it has been my main reference for the SMS emulator I'm doing ;). Don't suppose there's an URL for your emulator? > A question about the SMS VDP? When bit 5 in VDP register is 1 (leftmost > column blanked) what isn't displayed? The first eight pixels are blanked - the description I wrote wasn't very clear to begin with. But it's nice to know the VDP documentation was useful. :) -- Charles Mac Donald E-mail: cgfm2@hooked.net WWW: http://cgfm2.emuviews.com Stop spam before it is legalized! Act now! Visit http://www.cauce.org --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 13:27:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA06396 for dynarec-outgoing; Tue, 17 Oct 2000 13:27:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002d01c0387a$10faa080$054aae3e@hal9000> From: "Victor Moya del Barrio \(DYNAREC\)" To: References: <39ECAEDF.FCBAC3DB@austin.rr.com> Subject: Re: DYNAREC: Re: MUL8: address space tricks for linux, and possibly 98/NT5 Date: Tue, 17 Oct 2000 22:37:24 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The set of platform SDK docs I have show a mmap-like API, but I haven't > been able to > find one specifically for page table abuse. I found one a while back on > their site, > but it was listed as NT5 and up only... > Take a look to this: [...] File Mapping Functions The following functions are used with file mapping. CreateFileMapping FlushViewOfFile MapViewOfFile MapViewOfFileEx MapViewOfFileVlm OpenFileMapping UnmapViewOfFile UnmapViewOfFileVlm [...] I think it could be useful, perhaps are the ones you are refering to. The problem is that I think there isn't a file object which names the memory. But wouldn't it work properly using a normal file. I will study it. Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 13:40:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA06417 for dynarec-outgoing; Tue, 17 Oct 2000 13:40:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004101c0387b$d5531a60$054aae3e@hal9000> From: "Victor Moya del Barrio \(DYNAREC\)" To: References: <200010170703.JAA04139@pons.ac.upc.es> <39ECA086.7187@hooked.net> <001f01c03876$1047a100$054aae3e@hal9000> <39ECB740.4AB5@hooked.net> Subject: Re: DYNAREC: Tile based graphic engines emulation Date: Tue, 17 Oct 2000 22:49:56 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > It doesn't have background? Interesting, if I find some information about > > the Neo Geo I will study it. > > You'll have to look in MAME, there is no documentation on the Neo Geo > video hardware. > Oh! Damn. ;) Well, there isn't any other solution though. Why there is so few people documenting things in the emuscene? :( > One nice feature is that you can position sprites relative to another in > hardware, so constructing and scrolling a large background layer isn't > difficult. This kind of flexibility is what probably kept the Neo Geo > around for so long. > I have to admit that from outside (the graphics you can see in games) it seems the best 2D machine ever made. It's really impressive. > > BTW, I have to thank you for your document about the SMS VDP because > > it has been my main reference for the SMS emulator I'm doing ;). > > Don't suppose there's an URL for your emulator? > I'm confused with your question (it's just my bad english ;). In case you mean the URL where it is the emulator is my page in the dynarec site: www.dynarec.com/~victor (search MAS) But it is just a fast pack of source and binaries so my university project director could take look without having to give him a diskette ... It isn't a release or anything (if only it was ;). In case you mean I have to add the URL for your page I want to do (I really want to credit!) if/when I 'release' (give it to my friends ;) it, or when I have time to made a propper WIP page ... > > A question about the SMS VDP? When bit 5 in VDP register is 1 (leftmost > > column blanked) what isn't displayed? > > The first eight pixels are blanked - the description I wrote wasn't very > clear to begin with. > But it's nice to know the VDP documentation was useful. :) Very useful. A working SMS VDP has taken just three or four afternoons to be done (it has many bugs yet but a lot games work pretty well). Without the help of the document it would have been impossible. > Charles Mac Donald Victor P.S.: Fun! Interesting! There is a lot of information in all those mails for a very good document about tile based engines emulation :)). Hehe! I can't hardly wait for begin it ;). --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 13:43:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA06429 for dynarec-outgoing; Tue, 17 Oct 2000 13:43:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39ECBBD2.3AEF95EB@austin.rr.com> Date: Tue, 17 Oct 2000 13:51:30 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Re: MUL8: address space tricks for linux, and possibly 98/NT5 References: <39ECAEDF.FCBAC3DB@austin.rr.com> <002d01c0387a$10faa080$054aae3e@hal9000> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com "Victor Moya del Barrio (DYNAREC)" wrote: > > The problem is that I think there isn't a file object which names the memory. > But wouldn't it work properly using a normal file. I will study it. Those are the 9x functions I'm thinking of. I need to experiment a bit to figure out the semantics, and see if they will alias instead of clone pages... > Victor Moya > > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 14:17:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA06465 for dynarec-outgoing; Tue, 17 Oct 2000 14:17:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39ECC33C.5D9C@hooked.net> Date: Tue, 17 Oct 2000 14:23:08 -0700 From: Charles MacDonald Organization: Whole Earth Networks X-Mailer: Mozilla 3.04 (Win95; I) MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Tile based graphic engines emulation References: <200010170703.JAA04139@pons.ac.upc.es> <39ECA086.7187@hooked.net> <3.0.5.32.20001017131829.0081a2f0@powernet.net> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > BTW, speaking of crazy ideas. Charles, are you going to release that > graphics engine document you wrote up. I think it's awesome and definitely > some good old fashioned crazy stuff :) I'll give a brief summary for those interested. This method works when the video hardware being emulated has very few displayable colors. It also assumes that you are using an 8-bit display, which isn't exactly popular these days. The idea is to pack information into the unused bits of each pixel, such as priority. Each layer is drawn to it's own memory region, and then a set of look-up tables are used to combine them together. The main advantage is speed. Since you never have to check for transparency or priority while drawing, you can copy data out of the tile cache to memory as fast as possible. Apart from the merging of layers, no rendering has to be done on a per pixel level. This makes a very nice translation into MMX code. Backgrounds and sprites do not have to be redrawn to handle different priorities. Things like sprite and background collisions, shadow effects, (etc) are easy to support. The only downside is that you have to replicate the palette a few times so the 'extra' bits in each pixel don't disturb the display. This isn't really a problem under DOS where you can program the VGA to mask data going to the DAC. I've used this in a NES, SMS, Genesis, and System C2 emulator with excellent results. -- Charles Mac Donald E-mail: cgfm2@hooked.net WWW: http://cgfm2.emuviews.com Stop spam before it is legalized! Act now! Visit http://www.cauce.org --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 14:20:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA06478 for dynarec-outgoing; Tue, 17 Oct 2000 14:20:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 17 Oct 2000 14:27:21 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Tile based graphic engines emulation In-Reply-To: <39ECC33C.5D9C@hooked.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The idea is to pack information into the unused bits of each pixel, such > as priority. Each layer is drawn to it's own memory region, and then a > set of look-up tables are used to combine them together. Sounds like what we've been doing in Retrocade for many years now. ;-) > I've used this in a NES, SMS, Genesis, and System C2 emulator with > excellent results. It gets tricky when you have a system with 1024 palettes, but usually you can do a pixel-by-pixel translation for those things that aren't drawn much and use the masked approach for those things that are drawn quite often. I'm surprised no one has responded to my message... sniff... ;-( -->Neil ------------------------------------------------------------------------------- Neil Bradley "Just shut up and enjoy the Ozzy" - Horatio Sanz Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 16:06:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA06565 for dynarec-outgoing; Tue, 17 Oct 2000 16:06:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39ECDD52.CA3BA12A@austin.rr.com> Date: Tue, 17 Oct 2000 16:14:26 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Tile based graphic engines emulation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > I have a tile/sprite management system that I've had in my head for quite > some time that I've not gotten around to creating that addresses a lot of > what you're talking abot. > Is this what you describe below, or yet another twisted yet elegant contraption? =) > I've not see anything yet that would interrupt in the middle of a > scanline. I've seen it at the *END* of a scanline. As an example, Toobin' > would load up a bunch of sprites in the sprite engine to be drawn, they'd > get drawn, and half way through the vertical retrace, an interrupt would > happen and it would put in an entirely new set of sprites in the > engine. This is why emulated timing is so bloody important. If it's off, > the scanline engine winds up loading them in too soon. > The NES can sort of interrupt mid line. A few of the scanline counter IRQ's work off of the CPU clock, and so are not quite perfect. Also, spin-waiting for the sprite 0 hit bit to get raised will interrupt mid scanline a lot. Here's how Zelda does it's splitscreen/hscroll deal: along the way during the main loop, it spin-waits on the sprite hit. Sprite 0 happens to be the bomb icon on the status bar. Once it catches that, it drops into a cycle timed loop to wait for the PPU to finish drawing the status bar, then changes the update address to draw the main playfield. Bigfoot is even more obscene, and if you're truly interested in that, I can dig up the interview with him where he explains getting two 4-way independently scrolling playfields with a status bar in the middle running on the nes... > Toobin' has a tile layer, an alpha layer, and a sprite layer. The alpha > layer has the ability to be absolute or fixed in relation to the viewport, > as dose the sprite layer. Are we having fun yet? > heh, is the alpha layer straight transparency, or translucency? =) > Then, when you finally blit, you just get a list of rectangles to draw - > or one big one if it's a screen blit. The code driving the graphics has no > clue what's going on, and you get the benefit of optimization on each > layer without even realizing it. > > If you want, you can rearrange the priorities of the layers, too. That can > occur if you have multiple layers of sprites that change their priorities. > > Thoughts? > Hmm, it sounds like an interesting and useful method for systems where cycle perfect graphics emulation is not quite needed, or there is little feedback from the graphics to the CPU. Is Toobin' fairly representative of arcade graphics systems? This method might choke hard on some of the more complicated and picky console systems... > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley "Just shut up and enjoy the Ozzy" - Horatio Sanz > Synthcom Systems, Inc. ICQ #29402898 -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 16:34:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA06591 for dynarec-outgoing; Tue, 17 Oct 2000 16:34:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 17 Oct 2000 16:41:33 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Tile based graphic engines emulation In-Reply-To: <39ECDD52.CA3BA12A@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I have a tile/sprite management system that I've had in my head for quite > > some time that I've not gotten around to creating that addresses a lot of > > what you're talking abot. > Is this what you describe below, or yet another twisted yet elegant > contraption? =) It's what I described below. > > happen and it would put in an entirely new set of sprites in the > > engine. This is why emulated timing is so bloody important. If it's off, > > the scanline engine winds up loading them in too soon. > IRQ's work off of the CPU clock, and so are not quite perfect. Also, > spin-waiting for the sprite 0 hit bit to get raised will interrupt mid > scanline a lot. So not only do they do horizontal line position interruptions/reloads, but they do vertical as well, eh? Yuck! > along the way during the main loop, it spin-waits on the sprite hit. > Sprite 0 happens to be the bomb icon on the status bar. Once it > catches that, it drops into a cycle timed loop to wait for the PPU to > finish drawing the status bar, then changes the update address to draw > the main playfield. Yeouch! > Bigfoot is even more obscene, and if you're truly interested in that, > I can dig up the interview with him where he explains getting two > 4-way independently scrolling playfields with a status bar in the > middle running on the nes... I am interested, actually! > > Toobin' has a tile layer, an alpha layer, and a sprite layer. The alpha > > layer has the ability to be absolute or fixed in relation to the viewport, > > as dose the sprite layer. Are we having fun yet? > heh, is the alpha layer straight transparency, or translucency? =) It's transparency, but translucency would work as well provided that you drew everything in the proper order. Nothing would stop an existing layer from being able to look at the backbuffer bits and make color adjustments as necessary. > Hmm, it sounds like an interesting and useful method for systems where > cycle perfect graphics emulation is not quite needed, or there is > little feedback from the graphics to the CPU. No - not so. This is the "back end" to that kind of control. It would cache up everything it needs to draw in a generic fashion rather than being bound to the hardware emulation, and at the end of the frame, run through its list of things to draw. Cycle perfect emulation and drawing would be handled at a higher level than this. > Is Toobin' fairly > representative of arcade graphics systems? This method might choke > hard on some of the more complicated and picky console systems... I've looked at the Genesis and it would work fine with it. Multiple scrolling layers, sprites of varying priorities, etc... all would work. You'd just have to create a layer to handle it. Toobin' is one of the more complex arcade graphics systems, but there are other games like Marble Madness and Road Blasters that are worse - that do use horizontal scanline interrupts and reload sprites and whatnot. So effectively, this layer would cache up a bunch of writes to be done, and later on when a frame was emitted, it'd run through all these lists of things to draw and draw them appropriately. -->Neil ------------------------------------------------------------------------------- Neil Bradley "Just shut up and enjoy the Ozzy" - Horatio Sanz Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 17:36:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA06645 for dynarec-outgoing; Tue, 17 Oct 2000 17:36:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39ECF0C4.C323136F@austin.rr.com> Date: Tue, 17 Oct 2000 17:37:24 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Tile based graphic engines emulation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > IRQ's work off of the CPU clock, and so are not quite perfect. Also, > > spin-waiting for the sprite 0 hit bit to get raised will interrupt mid > > scanline a lot. > > So not only do they do horizontal line position interruptions/reloads, but > they do vertical as well, eh? Yuck! writes to the vram address can scroll you anywhere in the nametable space, though it's generally restricted to vertical scrolling in tile sized chunks... more about how to get around that later... > > along the way during the main loop, it spin-waits on the sprite hit. > > Sprite 0 happens to be the bomb icon on the status bar. Once it > > catches that, it drops into a cycle timed loop to wait for the PPU to > > finish drawing the status bar, then changes the update address to draw > > the main playfield. > > Yeouch! Zelda is rather tame too, at least with it the workings of the timing are well understood. I have yet to see any solid, proven description of how the MMC3's IRQ counter counts scanlines. > > Bigfoot is even more obscene, and if you're truly interested in that, > > I can dig up the interview with him where he explains getting two > > 4-way independently scrolling playfields with a status bar in the > > middle running on the nes... > > I am interested, actually! Here it is paraphrased to be a bit easier to understand (original is a badly formatted icq chat log I think) along with some explanations. The NES display is 30 chars tall. Bigfoot has it set up with a 12 char field, 1 blank, 4 for the status panel, 1 blank, and another 12 char playfield. As far as memory goes, there are two tables in the nes memory, NT0 and NT1. Bigfoot uses the normal scroll register, $2005, to position the upper field. Andrew Davie placed sprite 0 at the lower right corner of the first playfield, and loops for the hit. At this point he turns the background display off, and times out 8 lines of display. Part of that is running the sprite DMA, to get another set of 64 sprites. At the end of this, he writes to the vram address reg ($2006) and turns the display back on, to show the 4 character tall status panel. This part was backed by timed out code as well, it seems the nes cannot detect spr 0 hit a second time. Changes to hscroll take effect at the beginning of the next scanline, so the hscroll on the bottom wasn't a problem. Vscroll however, was only read at the beginning of the frame... unless you wrote to $2006. However, writing to $2006 reset the vertical fine scroll the PPU used to 0, so it would always start on the first line of the tile. Sooo, to get the finescroll for the lower screen, Mr. Davie turns the sprites on, but leaves the background off, and times out the right number of lines to get the fine scroll, then writes to $2006. The PPU then starts drawing from the top of the tile, but since the BG is turned off, nothing displays. The BG is turned back on after the appropriate number of lines to get pixel perfect scrolling for the lower field. My reaction (once I sifted through the odd ICQ log, suffers from time warps) was "Holy mother of kibble" I love the NES =) > > Hmm, it sounds like an interesting and useful method for systems where > > cycle perfect graphics emulation is not quite needed, or there is > > little feedback from the graphics to the CPU. > > No - not so. This is the "back end" to that kind of control. It would > cache up everything it needs to draw in a generic fashion rather than > being bound to the hardware emulation, and at the end of the frame, run > through its list of things to draw. Cycle perfect emulation and drawing > would be handled at a higher level than this. The problem I see is that some of the nastier effects will result in code that dirties most if not all of the screen every frame, unless one adds in some prediction logic to deal with splitscreens. The other thing is that a number of times you have to render it anyways to get a bit set correctly and at the correct time. > > Is Toobin' fairly > > representative of arcade graphics systems? This method might choke > > hard on some of the more complicated and picky console systems... > > I've looked at the Genesis and it would work fine with it. Multiple > scrolling layers, sprites of varying priorities, etc... all would > work. You'd just have to create a layer to handle it. But would it end up being faster? =) > Toobin' is one of the more complex arcade graphics systems, but there are > other games like Marble Madness and Road Blasters that are worse - > that do use horizontal scanline interrupts and reload sprites and whatnot. Sounds like my kind of system =) > So effectively, this layer would cache up a bunch of writes to be done, > and later on when a frame was emitted, it'd run through all these lists of > things to draw and draw them appropriately. Hmm, sounds suspiciously like how I handle audio =) I thought about it for the PPU, but couldn't quite reconcile how to batch the writes and still get correct behavior when a game spinwaits on spr 0 or vblank. > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley "Just shut up and enjoy the Ozzy" - Horatio Sanz > Synthcom Systems, Inc. ICQ #29402898 -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 17 20:22:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA06768 for dynarec-outgoing; Tue, 17 Oct 2000 20:21:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39ED18B9.1065@hooked.net> Date: Tue, 17 Oct 2000 20:27:53 -0700 From: Charles MacDonald Organization: Whole Earth Networks X-Mailer: Mozilla 3.04 (Win95; I) MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Tile based graphic engines emulation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Sounds like what we've been doing in Retrocade for many years now. ;-) > How could this be applied to (arcade) games where you have many palettes to use? The raw pixel data and palette index wouldn't fit into one byte with room left over for other spare bits, and using larger sizes (like a word or dword) would hurt performance. I was thinking one way would be to store pixel and priority data seperate from the palette index, but having to grab data out of two arrays doesn't sound like a very clever solution. Just curious as I'm dying to get a similar method implemented in my System 16 emulator. :) -- Charles Mac Donald E-mail: cgfm2@hooked.net WWW: http://cgfm2.emuviews.com Stop spam before it is legalized! Act now! Visit http://www.cauce.org --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Oct 18 00:12:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA06955 for dynarec-outgoing; Wed, 18 Oct 2000 00:11:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200010180716.JAA14709@pons.ac.upc.es> Subject: Re: DYNAREC: Re: MUL8: address space tricks for linux, and possibly 98/NT5 In-Reply-To: <39ECBBD2.3AEF95EB@austin.rr.com> "from John Allensworth at Oct 17, 2000 01:51:30 pm" To: dynarec@dynarec.com Date: Wed, 18 Oct 2000 09:16:16 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > "Victor Moya del Barrio (DYNAREC)" wrote: > > > > > The problem is that I think there isn't a file object which names the memory. > > But wouldn't it work properly using a normal file. I will study it. > > Those are the 9x functions I'm thinking of. I need to experiment a bit to figure > out the semantics, and see if they will alias instead of clone pages... > I think I will try them for the SMS emulator since the bankswitched version of MZ80 I managed to make doesn't seem to work with the Master System. I hoped ,since with Space Invaders seemed to work, it would work ... but everyone knows about Murphy. ;) > ReaperSMS - homepageless > The difference between math and physics is the difference between masturbation > and sex. > -- Paul Tomblin, alt.sysadmin.recovery > What, you expected something original for a quote? > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Oct 20 19:03:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA10474 for dynarec-outgoing; Fri, 20 Oct 2000 19:02:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20001020190212.0081d5d0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 20 Oct 2000 19:02:12 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Bug-fixed 68000 Disassembler Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I think I've finally finished bug-fixing Aaron Giles' 68000/68010 disassembler. If anyone wants it, let me know (would it be fine to just attach disasm.c and mail it out?) I've fixed bugs with addressing modes involving the Xn.SIZE displacement registers, branch target output, STOP, opcode hex output (not all possibilities were accounted for), TAS, added the ILLEGAL opcode, and some other fixes I've forgotten. The disassembler still doesn't always know what addressing modes are disallowed for some instructions, so output like the following is common when trying to disassemble a data area: ORI.W #$5678, A0 I made some formatting changes to the output which I'm sure you'll want to change (the most notable change is towards the end of disasm.c where the opcode hex data is printed out, there is a huge space between that and the disassembled instruction to keep things aligned neatly.) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Oct 22 04:45:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA14350 for dynarec-outgoing; Sun, 22 Oct 2000 04:45:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000901c03c1e$f1a3c060$9644ae3e@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Memory Mapped Files in Windows Date: Sun, 22 Oct 2000 13:55:14 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I was trying to implement bankswitching with the Memory Mapped File Support in Win32 but I have found a problem. It only allocates virtual memory in 64KB chunks. And the Master System banks are 16 KB :(. Well, perhaps I could try to change MZ80 to access through 64KB pages (perhaps converting byte access into 32 bit access and sparsing data ...) but I don't think it would be a so good idea. On the other way I have found some other functions related with physical memory management with device drivers. I don't know if they could be useful. Here it goes the intent to use the MMU for bankswitching ... Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 23 01:13:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA15281 for dynarec-outgoing; Mon, 23 Oct 2000 01:13:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39F3F488.734C2C92@austin.rr.com> Date: Mon, 23 Oct 2000 01:19:20 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: Potential MMU solutions for 'doze References: <39ED18B9.1065@hooked.net> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Stuck on a paper for writing right now, so I fished around on MS's reference pages, and found the Win2K/NT5 API I was thinking of earlier. Overview first, then my take on the listed and potential limitations, with a suggestion for another (relatively clean) possibility. The Address Windowing Extensions (AWE) look capable of doing what is needed. All of these except VirtualAlloc have this to say: Windows NT/2000: Requires Windows 2000 Windows 95/98: Unsupported It revolves around the 5 functions (arg names changed to be more readable and fit on one line) u32 is unsigned long, I *think* I got that ULONG_PTR and PULONG_PTR crap translated right. void *VirtualAlloc( void *addr, size_t size, u32 type, u32 protect); bool AllocateUserPhysicalPages(void *hproc, u32 *npages, u32 *page_ret); bool MapUserPhysicalPages(void *addr, u32 *npages, u32 *pages); bool MapUserPhysicalPagesScatter(void *addrs, u32 *npages, u32 *pages); bool FreeUserPhysicalPages(void *hproc, u32 *npages, u32 *pages); void *VirtualAlloc( void *addr, size_t size, u32 type, u32 protect); Used to allocate an area of memory for use with AWE, [addr] is the desired starting address. NULL means the system gets to pick, and even when specified it's merely a hint. The function returns the actual base address. The docs seem to suggest that it's rounded to the nearest 64K boundary. [size] is the size of the region to allocate, docs don't mention anything besides it being rounded up to the nearest page boundary. [type] specifies the type of allocation, for AWE purposes this should be MEM_PHYSICAL | MEM_RESERVE, indicating that it's going to be dealing with physical memory, and that the portion of the address space should be reserved. It does not actually allocate physical pages in memory or the swap, due to the lack of MEM_COMMIT. [protect] must be PAGE_READWRITE for AWE. bool AllocateUserPhysicalPages(void *hproc, u32 *npages, u32 *page_ret); [hproc] is a handle to the process to allocate physical pages for. The user running the caller must have Lock Pages in Memory access or the call fails. [npages] is a pointer to the number of pages wanted. After it returns, this will hold the number of pages actually allocated. [page_ret] is an array to hold the physical page frame numbers allocated, and should be large enough to hold [npages] pointers. Modifying this buffer after getting it would be somewhat unwise. bool MapUserPhysicalPages(void *addr, u32 *npages, u32 *pages); Maps [npages] pages into a contiguous block of virtual address space at [addr]. [pages] is an array of physical page frames to use. NULL's in this array unmap the corresponding portion of the virtual address space. bool MapUserPhysicalPagesScatter(void *addrs, u32 *npages, u32 *pages); Same as above, but this time with one addr for each page. bool FreeUserPhysicalPages(void *hproc, u32 *npages, u32 *pages); Free's [npages] from the address space of [hproc], getting the physical page frames from [pages]. [npages] will be set to the actual number of pages freed if the function fails (How? no clue...) Now for the bad news: The use of these are somewhat restricted. 1) "Virtual address ranges are not shareable with other processes." 2) "Two different AWE virtual addresses within the same process are not allowed to map to the same physical page." 3) "AWE virtual addresses are always read/write and cannot be protected via calls to VirtualProtect (that is, no read-only memory, noaccess memory, guard pages, and the like can be specified)" 4) "AWE [blah blah blah] cannot be used to buffer data for graphics or video calls." 5) The range can't be split or have portions deleted. You must use MEM_RELEASE when calling VirtualFree. 6) Apps that use this cannot be run in emulation mode. 7) Gotta be careful how much memory you use, as the physical pages that can be allocated are limited by the number of physical pages on the machine (duh). They are not allocated from the swap, but are guaranteed to be resident pages. 1 -- not too big of a deal unless you try multithreading a multiple processor CPU emulation (though the wording is vague, might work within threads) 2 -- "are not allowed" might have leeway, not allowed by the API spec and not allowed in practice are two different things. However, if this is enforced, it means no hardware accelerated mirroring. 3 -- this forbids one potential use for dynarec/emulation, that of transparently catching writes to code space to detect self modifying code. 4 -- dunno of any situations where this would really be useful anyways 5 -- shouldn't be a problem, as for most situations simple page unmapping gets the same thing. 6 -- heh. 7 -- I don't know of many emulators running out of the swap cache at the moment. The emulator of course could perform some of it's own swapping... This could be an extremely useful little bit of the API, but I don't have Win2K. The wording suggests that it is page granular, unlike Victor's findings with the file mapping API. One potential solution for 95/98 that came to mind (one cleaner than hacking your way to ring 0 via a hole in the 16 bit DPMI manager...) would be to look into coding up a VxD to give memory mapping access. They have to have access to the page tables, as I figure this is what fxmemmap.vxd is for... (rough equiv in linux seems to be /dev/3dfx, which allows a user process to mmap the Voodoo IO regs into memory...) Unfortunately I have to try to focus on this paper, so I don't have the time to really dig into the 95 DDK... Any lowlevel 'doze hackers who can shed some light on this? -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 23 01:41:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA15313 for dynarec-outgoing; Mon, 23 Oct 2000 01:41:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200010230846.KAA21325@pons.ac.upc.es> Subject: Re: DYNAREC: Potential MMU solutions for 'doze In-Reply-To: <39F3F488.734C2C92@austin.rr.com> "from John Allensworth at Oct 23, 2000 01:19:20 am" To: dynarec@dynarec.com Date: Mon, 23 Oct 2000 10:46:30 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > All of these except VirtualAlloc have this to say: > > Windows NT/2000: Requires Windows 2000 > Windows 95/98: Unsupported > It seems is time for an OS upgrade. ;) Could be with a bit of luck that W ME would had the same API? > It revolves around the 5 functions (arg names changed to be more readable and > fit on one line) > Do you have an URL or something to this information? > void *VirtualAlloc( void *addr, size_t size, u32 type, u32 protect); > Used to allocate an area of memory for use with AWE, [addr] is the desired > starting address. NULL means the system gets to pick, and even when specified > it's merely a hint. The function returns the actual base address. The docs seem > to suggest that it's rounded to the nearest 64K boundary. [size] is the size of That seems the usual VirtualAlloc function in the old Virtual Memory API. I have studying and in W95 and NT4 and there are three memory related APIs: Virtual Memory, Heap Memory and Memory Mapped File. > 1 -- not too big of a deal unless you try multithreading a multiple processor > CPU emulation (though the wording is vague, might work within threads) I don't think multithreading (without real multiCPU) could be a good idea anyway. > 2 -- "are not allowed" might have leeway, not allowed by the API spec and not > allowed in practice are two different things. However, if this is enforced, it > means no hardware accelerated mirroring. It could be worst. > 3 -- this forbids one potential use for dynarec/emulation, that of > transparently catching writes to code space to detect self modifying code. Isn't it a strange constraint? > 7 -- I don't know of many emulators running out of the swap cache at the > moment. The emulator of course could perform some of it's own swapping... > In fact after taking a look to the Memory Mapped Files API of W9X and NT implement swap inside a process is really easy. > This could be an extremely useful little bit of the API, but I don't have > Win2K. The wording suggests that it is page granular, unlike Victor's findings > with the file mapping API. > Good. If it only could work with 98. ;) > One potential solution for 95/98 that came to mind (one cleaner than hacking > your way to ring 0 via a hole in the 16 bit DPMI manager...) would be to look > into coding up a VxD to give memory mapping access. They have to have access to > the page tables, as I figure this is what fxmemmap.vxd is for... (rough equiv > in linux seems to be /dev/3dfx, which allows a user process to mmap the Voodoo > IO regs into memory...) > After the discover about the 64KB granularity I found many other functions of the DDK related with physical memory allocation. I'm sure is possible to build such a VxD. The problem is I think getting into Device development would be a bit hard and I'm not sure to have the time. I will keep trying and searching though. > ReaperSMS - homepageless > The difference between math and physics is the difference between masturbation > and sex. > -- Paul Tomblin, alt.sysadmin.recovery Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 23 01:56:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA15332 for dynarec-outgoing; Mon, 23 Oct 2000 01:56:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39F3FEAD.1E35D0DD@austin.rr.com> Date: Mon, 23 Oct 2000 02:02:37 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Potential MMU solutions for 'doze References: <200010230846.KAA21325@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Victor Moya del Barrio wrote: > > Windows NT/2000: Requires Windows 2000 > > Windows 95/98: Unsupported > > > It seems is time for an OS upgrade. ;) Could be with a bit of luck > that W ME would had the same API? I would expect so, as ME is supposed to be the "New" 2000. Anyone have it that can confirm? > Do you have an URL or something to this information? Not really, it was on their website, in a frame somewhere. A search on the function names or Address Windowing Extentions should turn it up. The other way would be to get the newest release of the Platform SDK > That seems the usual VirtualAlloc function in the old Virtual Memory API. > I have studying and in W95 and NT4 and there are three memory related APIs: > Virtual Memory, Heap Memory and Memory Mapped File. Yes, it's the same function. I included it because they did on the AWE page =P > > 1 -- not too big of a deal unless you try multithreading a multiple processor > > CPU emulation (though the wording is vague, might work within threads) > I don't think multithreading (without real multiCPU) could be a good idea > anyway. Probably wouldn't. I think that for most things (internet services excepted) multithreading is a bit overrated. It trades off a bit of ease on the programming end for a lack of accuraccy on the timing end, and any code to fix up the timing will eat up the gains you make by going multithreaded. Also, no matter what, a multithreaded program will have less throughput than a similarily coded singlethreaded program on uniprocessor boxes. Besides, Quake 3 wasn't threaded until they added the SMP support in the renderer =P > > 2 -- "are not allowed" might have leeway, not allowed by the API spec and not > > allowed in practice are two different things. However, if this is enforced, it > > means no hardware accelerated mirroring. > It could be worst. Yes, it could be. It doesn't look to be a horribly serious problem, and for simple read mirroring situations on roms you can cheat a bit and have two seperate physical pages around... > > 3 -- this forbids one potential use for dynarec/emulation, that of > > transparently catching writes to code space to detect self modifying code. > Isn't it a strange constraint? I thought so too, though the reason for it might be that coming up with the faulting page frame etc might get "interesting" or slow due to the unlimited remapping. > > 7 -- I don't know of many emulators running out of the swap cache at the > > moment. The emulator of course could perform some of it's own swapping... > > > In fact after taking a look to the Memory Mapped Files API of W9X and NT > implement swap inside a process is really easy. You would have to manually copy pages to physical to ensure things work right, but it's hardly a showstopper > > This could be an extremely useful little bit of the API, but I don't have > > Win2K. The wording suggests that it is page granular, unlike Victor's findings > > with the file mapping API. > > > Good. If it only could work with 98. ;) My thoughts exactly =P I almost tried porting stanknes to 'doze instantly when I saw this, until I saw the "Win 2K and up only" line > > One potential solution for 95/98 that came to mind (one cleaner than hacking > > your way to ring 0 via a hole in the 16 bit DPMI manager...) would be to look > > into coding up a VxD to give memory mapping access. They have to have access to > > the page tables, as I figure this is what fxmemmap.vxd is for... (rough equiv > > in linux seems to be /dev/3dfx, which allows a user process to mmap the Voodoo > > IO regs into memory...) > > > After the discover about the 64KB granularity I found many other functions > of the DDK related with physical memory allocation. I'm sure is possible > to build such a VxD. The problem is I think getting into Device development > would be a bit hard and I'm not sure to have the time. I will keep trying > and searching though. I think that one could fairly easily emulate the AWE calls with a VxD, and without some of the restrictions it places (mirroring restriction, write protect one...) and I'm going to try to make time tomorrow to research the DDK a bit. > Victor -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 23 02:20:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA15515 for dynarec-outgoing; Mon, 23 Oct 2000 02:20:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200010230919.LAA09720@pons.ac.upc.es> Subject: Re: DYNAREC: Potential MMU solutions for 'doze In-Reply-To: <39F3FEAD.1E35D0DD@austin.rr.com> "from John Allensworth at Oct 23, 2000 02:02:37 am" To: dynarec@dynarec.com Date: Mon, 23 Oct 2000 11:19:42 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I would expect so, as ME is supposed to be the "New" 2000. Anyone have it that can > confirm? > New 2000? More likely new 98. > The other way would be to get the newest release of the Platform SDK > Well, I hope it won't be much bigger than DirectX SDK. :P My modem is slow. > > > This could be an extremely useful little bit of the API, but I don't have > > > Win2K. The wording suggests that it is page granular, unlike Victor's findings > > > with the file mapping API. > > > > > Good. If it only could work with 98. ;) > > My thoughts exactly =P I almost tried porting stanknes to 'doze instantly when I saw > this, until I saw the "Win 2K and up only" line > Microsoft always making things hundreds of year later than the rest of the world. ;) I'm sure almost all UNIXes are a lot of more flexibles. > I think that one could fairly easily emulate the AWE calls with a VxD, and without > some of the restrictions it places (mirroring restriction, write protect one...) and > I'm going to try to make time tomorrow to research the DDK a bit. > I would want to make MZ80 Bankswitched to work now that the other approach has failed (for a while I hope) but I will try to take a look also this afternoon. Without frame limitation the memcopy paging becames easily over the 20% of the execution time, so I could get a great improve. > ReaperSMS - homepageless > The difference between math and physics is the difference between masturbation and > sex. > -- Paul Tomblin, alt.sysadmin.recovery > What, you expected something original for a quote? > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 23 02:38:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA15538 for dynarec-outgoing; Mon, 23 Oct 2000 02:38:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39F408A4.4CBF621C@austin.rr.com> Date: Mon, 23 Oct 2000 02:45:08 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Potential MMU solutions for 'doze References: <200010230919.LAA09720@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Victor Moya del Barrio wrote: > > I would expect so, as ME is supposed to be the "New" 2000. Anyone have it that can > > confirm? > > > New 2000? More likely new 98. Heh, haven't been keeping up with it. If it's like 98 the VxD solution would probably work at least =P > Well, I hope it won't be much bigger than DirectX SDK. :P My modem > is slow. The platform SDK is rather huge if you get the full install. However, it is completely searchable and browseable over the web. http://msdn.microsoft.com/library/default.asp?PP=/library/toc/psdk/psdk2-8-0.xml&tocPath=psdk2-8-0-1&URL=/library/psdk/winbase/memman_4msz.htm will get you there, with the TOC on the left. > > My thoughts exactly =P I almost tried porting stanknes to 'doze instantly when I saw > > this, until I saw the "Win 2K and up only" line > > > Microsoft always making things hundreds of year later than the rest of > the world. ;) I'm sure almost all UNIXes are a lot of more flexibles. The Unices have the potential at least. FreeBSD doesn't seem to like the mmap(/proc/self/mem) trick, but I need to get a small installation dumped in here for local testing... > I would want to make MZ80 Bankswitched to work now that the other approach has > failed (for a while I hope) but I will try to take a look also this afternoon. > Without frame limitation the memcopy paging becames easily over the 20% of > the execution time, so I could get a great improve. MMU abuse has the most potential for speed, barring pathological switching behavior and OS system call latency... > Victor -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 23 06:01:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA15712 for dynarec-outgoing; Mon, 23 Oct 2000 06:01:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39F43814.66F7ACE5@austin.rr.com> Date: Mon, 23 Oct 2000 06:07:32 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: Slightly off-topic, but this is somewhat hilarious and maddening Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I was flipping through the '95 and '98 DDK's when I came across this wonderful table entry: MS VC++ Version Description Typical usage The highest reccommended 5.0 version for compiling the General driver and VxD dev sample code in the 98 DDK Do not use. This version has 6.0 name decoration incompatability Do not use with '95 or '98 DDK problems in some cases, making it unsuitable for building VxD's It seems that MS can't compile 'doze with their current compiler... -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 23 09:32:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA15882 for dynarec-outgoing; Mon, 23 Oct 2000 09:31:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 23 Oct 2000 09:40:01 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Slightly off-topic, but this is somewhat hilarious and maddening In-Reply-To: <39F43814.66F7ACE5@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > MS VC++ Version Description Typical usage > > The highest reccommended > 5.0 version for compiling the General driver and > VxD dev > sample code in the 98 DDK > > Do not use. This version has > 6.0 name decoration incompatability Do not use with > '95 or '98 DDK > problems in some cases, making > it unsuitable for building VxD's > It seems that MS can't compile 'doze with their current compiler... Well, not quite. They can't compile the '95 or '98 DDK (not Windows itself) sample code with the latest compiler, and frankly I don't think I'd want to go back and make all the same code compile on a new compiler, either! -->Neil ------------------------------------------------------------------------------- Neil Bradley "Just shut up and enjoy the Ozzy" - Horatio Sanz Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 23 10:03:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA15914 for dynarec-outgoing; Mon, 23 Oct 2000 10:03:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <39F470D1.B6465CC0@austin.rr.com> Date: Mon, 23 Oct 2000 10:09:37 -0700 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Slightly off-topic, but this is somewhat hilarious andmaddening References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > Well, not quite. They can't compile the '95 or '98 DDK (not Windows > itself) sample code with the latest compiler, and frankly I don't think Heh, problem is that the sample code thing was mentioned elsewhere. This thing specifically says VC 6.0 can produce output that causes problems when building VxD's =P > I'd want to go back and make all the same code compile on a new compiler, > either! Heh, neither would I. Went through something similar to that with the q2 sources, and that was not fun =P > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley "Just shut up and enjoy the Ozzy" - Horatio Sanz > Synthcom Systems, Inc. ICQ #29402898 -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery What, you expected something original for a quote? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 24 01:41:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA16630 for dynarec-outgoing; Tue, 24 Oct 2000 01:41:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200010240846.KAA13830@pons.ac.upc.es> Subject: Re: DYNAREC: Potential MMU solutions for 'doze In-Reply-To: <39F408A4.4CBF621C@austin.rr.com> "from John Allensworth at Oct 23, 2000 02:45:08 am" To: dynarec@dynarec.com Date: Tue, 24 Oct 2000 10:46:00 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I remembered a book I read (partially, that was some years ago and I wasn't so used to read in english ...) about the Windows 95 File System (Inside the Windows 95 File System - Stan Mitchell - O'Really Associates, Inc.). It is an interesting overview of the W95 internals. It shows all the way from the Win32 API to the internal 32-bit and 16-bit APIs in ring0. It also comes with many interesting utilities (do you want to track all accesses to the file system including boot sequence ;) and with their sources. The interesting part is a chapter about pagers. I have gotten it from my university library and I will take a look. There is a test pager and a program to use it and get information about all the pagers in W95. Of course it has also the sources ;). And it has also many sources of VxDs. If you are interested I could send the code related with the pagers. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Oct 26 12:14:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA19783 for dynarec-outgoing; Thu, 26 Oct 2000 12:13:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001101c03f82$42f31860$ef43ae3e@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Master System Emulator Date: Thu, 26 Oct 2000 21:23:44 +0200 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com The bankswitched version of MZ80 seems to work now. :)) More than 150 FPS (with profiling). Let's sound it. ;) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Oct 26 21:34:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA20189 for dynarec-outgoing; Thu, 26 Oct 2000 21:33:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 26 Oct 2000 21:42:59 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Master System Emulator In-Reply-To: <001101c03f82$42f31860$ef43ae3e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The bankswitched version of MZ80 seems to work now. :)) > More than 150 FPS (with profiling). > Let's sound it. ;) Nicely done! I'm currently doing some massive updates to mz80 for release here in the not too distant future. Might be good to get your changes in there, too. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "Take a shower! You smell like a Yeti!" - American Pie Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Oct 26 23:31:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA20281 for dynarec-outgoing; Thu, 26 Oct 2000 23:31:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200010270639.IAA13113@pons.ac.upc.es> Subject: Re: DYNAREC: Master System Emulator In-Reply-To: "from Neil Bradley at Oct 26, 2000 09:42:59 pm" To: dynarec@dynarec.com Date: Fri, 27 Oct 2000 08:39:14 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > The bankswitched version of MZ80 seems to work now. :)) > > More than 150 FPS (with profiling). > > Let's sound it. ;) > > Nicely done! I'm currently doing some massive updates to mz80 for release > here in the not too distant future. Might be good to get your changes in > there, too. ;-) > I should have said it is starting to work (the Sonic serie seems to be always the first games to work, strange ... ;). There may be some bugs yet, but if a number of games work would mean that the bug is something a bit unusual. It is encouraging to see it work after a week of crashes and blank screens. :)) I will post you MZ80BS when you want it. :) > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 30 18:30:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA27209 for dynarec-outgoing; Mon, 30 Oct 2000 18:30:02 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20001030183522.008264e0@powernet.net> X-Sender: trzy@powernet.net X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 30 Oct 2000 18:35:22 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: 68000 Undocumented Instructions Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, Does anyone know what the situation with undocumented instructions on the 68000 is? Do they exist? I don't recall ever hearing anything about them existing. Also, is DR68K on halt, I gather you guys are waiting for a response from Alex... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 30 23:31:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA27425 for dynarec-outgoing; Mon, 30 Oct 2000 23:31:26 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200010310736.IAA17943@pons.ac.upc.es> Subject: Re: DYNAREC: 68000 Undocumented Instructions In-Reply-To: <3.0.5.32.20001030183522.008264e0@powernet.net> "from Bart at Oct 30, 2000 06:35:22 pm" To: dynarec@dynarec.com Date: Tue, 31 Oct 2000 08:36:44 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Does anyone know what the situation with undocumented instructions on the > 68000 is? Do they exist? I don't recall ever hearing anything about them > existing. > I don't know, StarScream doesn't seems to say nothing. But I don't think ,in any case, a 68K had as many undocumented opcodes as the Z80 (which it has too many). > Also, is DR68K on halt, I gather you guys are waiting for a response from > Alex... > It seems so. Well I'm quite busy now too so I'm not so worried ;). BTW. I corrected my last absolutely silly error with the Master VDP. Damn I was sure I have corrected that long time ago ;). > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 2 23:26:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA31193 for dynarec-outgoing; Thu, 2 Nov 2000 23:25:53 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200011030735.IAA22152@pons.ac.upc.es> Subject: DYNAREC: [grup-dixie] DAISY Binary Translator: Open Source (fwd) To: dynarec@dynarec.com Date: Fri, 3 Nov 2000 08:35:16 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com It seems IBM has released an open source dynamic binary translator (PowerPC to a VLIW architecture). I think DAISY already appeared here but I'm not sure. I should take a look to it but lately I'm very busy :(. The fun thing is that I have been doing PowerPC static translation in my job for some months. And I had to deal with shared libraries and dynamic code load (in a static translator!). The problem is that the OS API (system call, not C lib calls) for dynamic code load seems to be undocumented. After some months working around that IBM releases a dynamic translator which seems to have implemented shared libraries :P. If they only had released it some months ago ;). Well, it doesn't matter now, because the work around Aix Shared Libraries is already done. It seems the Dixie Group (where I work) could begin to do translation for embedded systems ... Victor Moya Here it goes: ====================================================================== Our apologies if you receive multiple copies of this announcement. ------------------------------------------------------------------------ IBM Releases DAISY Open-Source Software for Binary Translation Research October 2000 We are happy to announce the availability of the DAISY open source software for dynamic binary translation research. Subject to the IBM public license, DAISY may be downloaded from: http://oss.software.ibm.com/developerworks/opensource/daisy DAISY (Dynamically Architected Instruction Set from Yorktown) is a just-in-time compiler, that translates the binary code of a source architecture to the binary code of a VLIW or EPIC target architecture at run-time, in a manner transparent to the user. In other words, the user sees only the source architecture instruction set. Fragments of the source architecture code are translated, scheduled and optimized just-in-time for the target architecture. DAISY research goals include the following: o Architecture as a Layer of Software: With software dynamic binary translation, as in DAISY, new Architectures such as VLIW/EPIC can be introduced under the covers, without any disruption to software. All users of a DAISY-style system, including system level privileged users, observe only the source/legacy architecture, such as the PowerPC. Old software runs without recompilation or any other changes. Transmeta is using a similar binary translation approach for x86. o Scalability: DAISY software is parameterized and can support machines which issue up to 16 or more operations every cycle. A low-end DAISY implementation might be able to issue only 4 operations, while a high-end implementation might be able to issue 16 -- with both using the same translation and virtual machine software. o Multiple Platforms: Although the current release of DAISY supports translation only from PowerPC, dynamic binary translation could in concept translate from multiple architectures, such as x86, System/390, and PowerPC to a common underlying core, thus allowing critical design resources to focus on a single implementation. o Efficient Processor Design: DAISY uses a streamlined, new multiple-issue processor core as its target, that is specifically designed for efficient emulation of the source architectures with high instruction level parallelism. By releasing the DAISY under the IBM public license, we hope to foster excitement in binary translation research. We are presently releasing a version of DAISY that uses the PowerPC architecture as the source architecture, that runs under AIX. It compiles AIX PowerPC binary applications just-in-time to VLIW code, and then simulates the VLIW code. The unit of translation in this version is one 4K byte page of code at a time. Included in this version are software and hardware techniques for: o Speculative instruction scheduling on multiple paths and through branch and loop iteration boundaries. o Simultaneous scheduling, register allocation, and cluster assignment. o Aggressive re-ordering of memory and ALU operations, which still preserves precise PowerPC exceptions. o Optimizations for increasing instruction level parallelism (e.g. combining, load-store telescoping). o Fast compiled simulation of VLIW code that provides detailed statistics, including multi-level cache and TLB effects. DAISY offers researchers a good experimental framework for trying out different architectural features and software techniques for instruction level parallelism and binary translation. We encourage you to try out the DAISY software, and we invite volunteers worldwide to consider joining the DAISY open source team, in implementing leading edge dynamic compiler techniques and architectural features. The DAISY source code and documentation can be downloaded on the Web from http://oss.software.ibm.com/developerworks/opensource/daisy. Interested researchers should feel free to contact us about DAISY. Please feel free to pass this announcement on to other colleagues who might be interested. We hope you will enjoy the DAISY Open Source Web site. Dr. Erik Altman -- erik@watson.ibm.com Dr. Kemal Ebcioglu -- kemal@watson.ibm.com IBM T.J. Watson Research Center Yorktown Heights, New York 10598 ________________________________________________________________________ o o o Manel Fernandez Gomez o o o Department of Computer Architecture Phone: +34 93 401 7187 o o o Universitat Politecnica de Catalunya Fax : +34 93 401 7055 C/ Jordi Girona, 1-3 Campus Nord, Modul D6-116 mailto:mfernand@ac.upc.es U P C 08034 BARCELONA (SPAIN) http://www.ac.upc.es/homes/mfernand ________________________________________________________________________ ----- End of forwarded message from Manel Fernandez ----- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 21 00:58:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA59346 for dynarec-outgoing; Tue, 21 Nov 2000 00:57:31 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200011210907.KAA12270@pons.ac.upc.es> Subject: DYNAREC: Motorola 68K doc To: dynarec@dynarec.com Date: Tue, 21 Nov 2000 10:07:08 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I finally received the M68K manual I requested some time ago (a couple of months perhaps?). Now I'm wondering how could I use it. Any idea? ;) Well, the Master System emulator I have made now have full screen modes (and slow ugly-looking filters ;) so I want to stop working with it (for a while). The sound still sounds very bad, it seems I'm unable of synchronize the PSG generation with the sound card playback. Or perhaps it could be that the SDL library is slow ... but that is strange. Give me graphics, they are far easy than sound ;). I will start (although I don't know why, there doesn't seem to be anyone really interested) again with the Space Invaders Tutorial (end the documents and start coding, at last!). And it's time to start writing my university project document ... The project I was working in my job is finished too (no more Power PC :), and a new one will begin soon. Who knows, perhaps it will be SH4, or ARM ;). And some 'useful' content to the mail. After changing to full screen, double sized screen modes in my emulator I have discovered that the bottle neck in this kind of emulators are the graphics. And not the graphic emulation, but the blitting and graphic effects addons. This make sense? This seems to point to algorithms which reduce the blitting rather than others, althought with full scrolled games that could be difficult. Seems to be more important to accelerate access to video RAM than accelerate the graphic hardware emulation. The emulation/videogame scene seems to go to higher resolutions and that seems to be very expensive. It could begin to be more important to speed up graphics rather than general emulation? For example asm CPU cores or graphics engines aren't needed anymore (because the gain is minimun). That is helped too because the power of new CPU is fast increasing (althought I still have a PII 350 ;). Emulators for new machines would be another thing. But really, how many new machines are being emulated nowadays? There is an early DC emulator and few more. N64 emulation is stopped (and I don't really care I don't like N64 ;). No Jaguar, no 3DO, no Model 2 ;). And while there are hundreds of new 8-bit emulators (Nes or Master System, I'm guilty too ;), the new machines need far better coders. The emulations of the more moderns machines need more knowledge than old 8-bit ones. There will be anyone with the interest, the time and the knowledge needed for emulating them? It seems I'm in a negative day ;(. Just a different thing. There could be a way to implement a method for multiprocessor emulation (like Genesis M68000/z80 or MegaCD 2xM68000/Z80) which would be time saving and with good CPU synchronization? For example rather to give a time slice (a number of cycles) for each CPU and do Round Robin (switch between them), to make a kind of 'mixed' cores with interleaced execution (two cycles CPU1, fast switch to the other core, four cyclecs in CPU2 and so on). PS: Doesn't seem that the emulation scene is on his last hours of life? I'm beginning to feel afraid ... Let's Ages bright light shine with force ;). Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 21 03:14:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA59633 for dynarec-outgoing; Tue, 21 Nov 2000 03:14:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Motorola 68K doc From: "M.I.K.e" Message-ID: <00037694bc3d53a3_mailit@mail.dynarec.com> References: <200011210907.KAA12270@pons.ac.upc.es> Date: Tue, 21 Nov 2000 12:28:35 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Yes, I'm still alive... >I finally received the M68K manual I requested some time >ago (a couple of months perhaps?). Wow, has it been sent in a bottle? ;-) Did you have to pay anything? >Now I'm wondering how could I use it. Any idea? ;) Digest it? ;-) >Well, the Master System emulator I have made now have >full screen modes (and slow ugly-looking filters ;) so >I want to stop working with it (for a while). The >sound still sounds very bad, it seems I'm unable of >synchronize the PSG generation with the sound card playback. Sound's always a problem... >Or perhaps it could be that the SDL library is slow ... >but that is strange. I think SDL is indeed a bit slow... >Give me graphics, they are far >easy than sound ;). Too true. >I will start (although I don't know why, there doesn't >seem to be anyone really interested) again with >the Space Invaders Tutorial (end the documents and >start coding, at last!). At least you can claim that it wasn't your fault then. >The project I was working in my job is finished too >(no more Power PC :), and a new one will begin soon. >Who knows, perhaps it will be SH4, or ARM ;). Uh, that sounds familiar... Isn't the author of Dreamer Spanish? BTW, I have a very good name of a Dreamcast emulator: Sandman! As in "Mr Sandman, bring me a Dreamcast" ;-) >After changing to full screen, double sized screen >modes in my emulator I have discovered that the >bottle neck in this kind of emulators are the >graphics. And not the graphic emulation, but >the blitting and graphic effects addons. This >make sense? This seems to point to algorithms >which reduce the blitting rather than others, >althought with full scrolled games that could >be difficult. Seems to be more important to >accelerate access to video RAM than accelerate >the graphic hardware emulation. Hmm, that's interesting. But I always assumed that optimised assembly is always best used in blitting routines. >It could begin to be more important to speed up >graphics rather than general emulation? For example >asm CPU cores or graphics engines aren't needed >anymore (because the gain is minimun). Erm, that would also mean that there is no reason for dynarecs anymore, so I decide that this comment should be dropped from the protocol ;-) >Emulators for new machines would be another thing. >But really, how many new machines are being emulated >nowadays? There is an early DC emulator and few more. >N64 emulation is stopped (and I don't really care >I don't like N64 ;). Me neither, but I like PSX emulation and EPSXE looks very nice ;-) >No Jaguar, no 3DO, no Model 2 ;). True, true, true... One guy told me that 3DO could be a problem since the CDs are encoded and the decoding is done by an undocumented chip in the 3DO machine... The reason for slow progress on Jaguar and 3DO emulation could also be that there aren't that many games for these systems... >And while there are hundreds of new 8-bit emulators >(Nes or Master System, I'm guilty too ;), Hey, even with *armies* of NES emulators around I didn't find any capable of correctly running Elite! >It seems I'm in a negative day ;(. Launch Emacs and type "Meta-X doctor" ;-) >Just a different thing. There could be a way to >implement a method for multiprocessor emulation >(like Genesis M68000/z80 or MegaCD 2xM68000/Z80) >which would be time saving and with good CPU >synchronization? For example rather to give a >time slice (a number of cycles) for each CPU and >do Round Robin (switch between them), to make a >kind of 'mixed' cores with interleaced execution >(two cycles CPU1, fast switch to the other core, >four cyclecs in CPU2 and so on). Hmm, in that case you'd need cycle exact emulation, which is quite complicated and very slow... >Victor Moya -- M.I.K.e If you didn't get caught, did you really do it? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 21 10:57:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA60022 for dynarec-outgoing; Tue, 21 Nov 2000 10:57:14 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001101c053eb$c0a78d40$e245ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <200011210907.KAA12270@pons.ac.upc.es> <00037694bc3d53a3_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Motorola 68K doc Date: Tue, 21 Nov 2000 19:49:16 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MIMEOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yes, I'm still alive... > I think I saw you talking about DC emulation somewhere ;). > >I finally received the M68K manual I requested some time > >ago (a couple of months perhaps?). > > Wow, has it been sent in a bottle? ;-) > Did you have to pay anything? > I didn't pay anything. The problem seemed to be with the post company (world wide something) because at the start in the Motorola page it was said it was already sent, in fact I thought it was lost or I wrote the wrong address. Well, Spain is a bit far from USA ;). > >Now I'm wondering how could I use it. Any idea? ;) > > Digest it? ;-) > I'm afraid the ink is a bit indigestible ;). But I will take a look. The paper is so thin that it could be useful for other purpose in a desperate need. ;). > >Well, the Master System emulator I have made now have > >full screen modes (and slow ugly-looking filters ;) so > >I want to stop working with it (for a while). The > >sound still sounds very bad, it seems I'm unable of > >synchronize the PSG generation with the sound card playback. > > Sound's always a problem... > I actually found (a couple of hours ago) what was the problem. It was the size of the playback buffer I requested from SDL. It seems that any size different from1024, 2048, 4096 or 8192 made the sound sound weird (in fact it makes sense, but they could have advised me first ;). It is a bit similar with the problem I had when I created, at the start, a too small playback buffer (below 2048 or 4096), it sounded weird. There was a problem about sync the sound with the emulation (the PSG generating too much or too many samples for the playback buffer time) that I was thoughting as the main problem. It is still a problem (but smaller I thought). I corrected it too. A question. It make sense to use sound for controlling the timing rather than using another method like taking a look to the clock or to the TSC and wait? I think I read about using sound as main timing somewhere. I find two problems: when the emulator is too slow and needs to skip frames (so it would need again the code with the TSC/clock check) and that the playback buffer must be small. For example 2048 or 4096 buffer sizes (in number of samples) seems to work well, but with 8192 the sync is bad (fast-stop-fast-stop- ....), the synchronization steps become then noticeable. And for a better sound a larger playback buffer is better. > >Or perhaps it could be that the SDL library is slow ... > >but that is strange. > > I think SDL is indeed a bit slow... > In the next one I will try to go into DirectX although after a fast lookup I hate how the things are named and called. MS name and calling standards are really ugly. > >Give me graphics, they are far > >easy than sound ;). > > Too true. > But I'm learning :). > >I will start (although I don't know why, there doesn't > >seem to be anyone really interested) again with > >the Space Invaders Tutorial (end the documents and > >start coding, at last!). > > At least you can claim that it wasn't your fault then. > I hope it proves useful for my university project document in any case. > >The project I was working in my job is finished too > >(no more Power PC :), and a new one will begin soon. > >Who knows, perhaps it will be SH4, or ARM ;). > > Uh, that sounds familiar... > Isn't the author of Dreamer Spanish? > It is, but you aren't in luck ;). This guy is really hiding. I had some time ago a discussion (I think I went too rant that time) about DC emulation and Dreamer with the webmaster of Emulatronia. Emulatronia is the Spanish emulator news page where it is sited Dreamer. In fact that guy (PTS) seems to be the only one who talks with and knows about the author of Dreamer, and not I don't think he is the author either (it has a general knowledge about emulation and it's a CS engineer, but it doesn't seem to be an expert). The only thing I could get (rather than some insults I must admit I won) was that on his thoughts the Dreamer's author is a kind of 'genius'. Perhaps the Spanish equivalent to NB? ;) Do you believe in a two weeks working (someway) first version of the emu and with few free time to code? I don't know. And at last I'm not soo crazy to start such a thing (if I only had time ... ;)). My university project will make me be busy still some months ... In fact I was talking about my real job, it seems the Dixie project will change a bit its scope and begin with a new face and new CPUs, or perhaps not ... it is all a bit 'on the air' (bad translated 'en el aire' Spanish expresion meaning that nothing is sure still) . But if, by a any reason, I start coding translations of SH4 or ARM I could get an 'interesting' experience. ;) > BTW, I have a very good name of a Dreamcast emulator: Sandman! > As in "Mr Sandman, bring me a Dreamcast" ;-) > Well, you have the start point. Don't you want to do a big entry into the emulation scene? ;) > > Hmm, that's interesting. But I always assumed that optimised assembly is > always best used in blitting routines. > The problem I'm using blitting through (slow?) SDL code. > >It could begin to be more important to speed up > >graphics rather than general emulation? For example > >asm CPU cores or graphics engines aren't needed > >anymore (because the gain is minimun). > > Erm, that would also mean that there is no reason for dynarecs anymore, so I > decide that this comment should be dropped from the protocol ;-) > Yes, perhaps we should forget about it. ;) (Hide it in six dungeons, and with six counties and throw away the six keys ;). > > Me neither, but I like PSX emulation and EPSXE looks very nice ;-) > I'm not a great fan of the PSemu family ... They never had worked in my computer. I couldn't say the real reason but the pluggin system doesn't like me a bit. > >And while there are hundreds of new 8-bit emulators > >(Nes or Master System, I'm guilty too ;), > > Hey, even with *armies* of NES emulators around I didn't find any capable of > correctly running Elite! > Elite? Well, you could ask Allensworth, he is the Nes expert here. ;) > >It seems I'm in a negative day ;(. > > Launch Emacs and type "Meta-X doctor" ;-) > ??? I don't have Emacs at hand ... > M.I.K.e > > If you didn't get caught, did you really do it? > But I did ... damn! Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 21 11:33:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA60058 for dynarec-outgoing; Tue, 21 Nov 2000 11:33:11 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3A1A23FC.20BC@hooked.net> Date: Mon, 20 Nov 2000 23:27:56 -0800 From: Charles MacDonald Organization: Whole Earth Networks X-Mailer: Mozilla 3.04 (Win95; I) MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Motorola 68K doc References: <200011210907.KAA12270@pons.ac.upc.es> <00037694bc3d53a3_mailit@mail.dynarec.com> <001101c053eb$c0a78d40$e245ae3e@hal9000> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Spanish equivalent to NB? ;) Do you believe in a two weeks working > (someway) first version of the emu and with few free time to code? I > don't know. Last time I checked, the emulator could only run demos. Some of the DC programming libraries I have seen used in demos just set up the framebuffer, and the program itself is responsible for all the rendering (so the PowerVR chip isn't used at all). I think this is why it's possible to get many Dreamcast demos working in an emulator, but is also why no commercial games work. Video chip aside, there isn't much to the DC hardware. I think Sega learned from their mistakes with the Saturn, or they just wanted something cost-effective. > The problem I'm using blitting through (slow?) SDL code. > If blitting is the bottleneck, you could do a dirty rectangles thing and only blit sections of the frame that needed to be updated. (I realize that's not the best suggestion..) Either that or hit the hardware directly, but if you're using SDL that is probably not your intention to begin with. :) -- Charles Mac Donald E-mail: cgfm2@hooked.net WWW: http://cgfm2.emuviews.com Stop spam before it is legalized! Act now! Visit http://www.cauce.org --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 21 13:50:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA60168 for dynarec-outgoing; Tue, 21 Nov 2000 13:50:09 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701c05401$952f9d40$eb45ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <200011210907.KAA12270@pons.ac.upc.es> <00037694bc3d53a3_mailit@mail.dynarec.com> <001101c053eb$c0a78d40$e245ae3e@hal9000> <3A1A23FC.20BC@hooked.net> Subject: Re: DYNAREC: Motorola 68K doc Date: Tue, 21 Nov 2000 22:25:30 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Spanish equivalent to NB? ;) Do you believe in a two weeks working > > (someway) first version of the emu and with few free time to code? I > > don't know. > > Last time I checked, the emulator could only run demos. Some of the DC > programming libraries I have seen used in demos just set up the > framebuffer, and the program itself is responsible for all the rendering > (so the PowerVR chip isn't used at all). I think this is why it's > possible to get many Dreamcast demos working in an emulator, but is also > why no commercial games work. > That was more or less what I tried to say to that guy from Emulatronia. That Dreamer was emulating just a kind of simple VGA video mode from the graphic chip and the CPU (and SH4 is seems quite riscy). I don't think demos implement FP either. > Video chip aside, there isn't much to the DC hardware. I think Sega > learned from their mistakes with the Saturn, or they just wanted > something cost-effective. > Well, the VR2 and the ARM aren't precisely trivial. But the whole architecture doesn't seem so difficult either. > > The problem I'm using blitting through (slow?) SDL code. > > > > If blitting is the bottleneck, you could do a dirty rectangles thing and > only blit sections of the frame that needed to be updated. (I realize > that's not the best suggestion..) > I should change to DirectX, but as now works as I want I don't expect to do it (or not in some time). I don't think I will release the emulator to the whole world or anything. Perhaps the code, but who would be interested in the code? > Either that or hit the hardware directly, but if you're using SDL that > is probably not your intention to begin with. :) > > -- > Charles Mac Donald Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 21 14:22:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA60200 for dynarec-outgoing; Tue, 21 Nov 2000 14:22:16 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3A1AF4E5.7076BCB9@austin.rr.com> Date: Tue, 21 Nov 2000 14:19:17 -0800 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (WinNT; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Motorola 68K doc References: <200011210907.KAA12270@pons.ac.upc.es> <00037694bc3d53a3_mailit@mail.dynarec.com> <001101c053eb$c0a78d40$e245ae3e@hal9000> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Victor Moya del Barrio wrote: > A question. It make sense to use sound for controlling the timing rather > than using another method like taking a look to the clock or to the TSC > and wait? I think I read about using sound as main timing somewhere. When you aren't skipping frames, synching to sound can work quite well. Once you start skipping frames though, things can get interesting > In the next one I will try to go into DirectX although after a fast > lookup I hate how the things are named and called. MS name > and calling standards are really ugly. I don't know about SDL performance in windows, but I believe it is what Loki uses for most of the non-3D games in linux. Are you sure you're using a good framebuffer/blit format? IIRC, SDL will give you whatever format you want, but if it isn't handled by the hardware for the current video mode it will do all the color conversion in software... > > Erm, that would also mean that there is no reason for dynarecs anymore, so I > > decide that this comment should be dropped from the protocol ;-) > > > Yes, perhaps we should forget about it. ;) (Hide it in six dungeons, and > with six counties and throw away the six keys ;). > Dynarec is still useful, because once you get to the more extreme machines, with multiple processors, you want the CPU to take as little time as possible. The less time you spend on the CPU, the more time you have to blit =) > > Hey, even with *armies* of NES emulators around I didn't find any capable of > > correctly running Elite! > > > Elite? Well, you could ask Allensworth, he is the Nes expert here. ;) This is because none yet do PAL truly correctly. Also, at least one of the elite images floating around was hacked around a good bit just so it would run in nesticle. I've been stuck doing various non-emulation related things for a while, haven't been able to play with stank much =P > Victor -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 21 14:24:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA60211 for dynarec-outgoing; Tue, 21 Nov 2000 14:24:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Motorola 68K doc From: "M.I.K.e" Message-ID: <0003769dfbe907d5_mailit@mail.dynarec.com> References: <200011210907.KAA12270@pons.ac.upc.es> <00037694bc3d53a3_mailit@mail.dynarec.com> <001101c053eb$c0a78d40$e245ae3e@hal9000> Date: Tue, 21 Nov 2000 23:30:38 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think I saw you talking about DC emulation somewhere ;). Me? Never! ;-) >I didn't pay anything. In that case I'm interested where you ordered it ;-) >I'm afraid the ink is a bit indigestible ;). Damn modern ink. That stuff also always stinks... >But I will take a look. Try it with some Tabasco, that might help. >The paper is so thin that it could be useful for other purpose in a desperate need. ;). *LOL* >I actually found (a couple of hours ago) what was the problem. >It was the size of the playback buffer I requested from SDL. It >seems that any size different from1024, 2048, 4096 or 8192 made >the sound sound weird (in fact it makes sense, but they could have >advised me first ;). It is a bit similar with the problem I had when I >created, at the start, a too small playback buffer (below 2048 or 4096), >it sounded weird. >There was a problem about sync the sound with the emulation (the >PSG generating too much or too many samples for the playback buffer >time) that I was thoughting as the main problem. It is still a problem >(but smaller I thought). I corrected it too. Congrats! I guess you are now the second sound specialist on the list after NB. >A question. It make sense to use sound for controlling the timing rather >than using another method like taking a look to the clock or to the TSC >and wait? Well, that surely is a question for NB... >In the next one I will try to go into DirectX although after a fast >lookup I hate how the things are named and called. MS name >and calling standards are really ugly. In that case you migth ask NG... >It is, but you aren't in luck ;). This guy is really hiding. Playing hide and seek... >The only thing I could get (rather than some insults I must admit I won) was >that on his thoughts the Dreamer's author is a kind of 'genius'. Perhaps the >Spanish equivalent to NB? ;) Do you believe in a two weeks working >(someway) first version of the emu and with few free time to code? I >don't know. No I wouldn't believe that. The SH-4 isn't as easy as it might seem, but I don't know much about the graphics part. >And at last I'm not soo crazy to start such a thing (if I only had time ... >;)). Hmm, more spare time makes you more crazy? ;-) >But if, by a any reason, I start coding >translations of SH4 or ARM I could get an 'interesting' experience. ;) I guess in that case you might get help from Bart (SH), Dave (ARM), and me (both if I have the time). >> BTW, I have a very good name of a Dreamcast emulator: Sandman! >> As in "Mr Sandman, bring me a Dreamcast" ;-) >Well, you have the start point. Don't you want to do a big entry >into the emulation scene? ;) Would be nice, but I don't have the time currently... BTW, I also have a nice name for an NES emulator, which strangely has never been used yet: NEStor Maybe there are too few people who read Homer's Ilias nowadys... >Yes, perhaps we should forget about it. ;) (Hide it in six dungeons, and >with six counties and throw away the six keys ;). Why six? This sounds as if it comes from a FF quest... >I'm not a great fan of the PSemu family ... They never had worked in my >computer. I couldn't say the real reason but the pluggin system doesn't >like me a bit. I somehow understand why they use graphics plugins, although I'm not sure if that results in a performance hit or not. But the CD-ROM (use a decent ASPI interface instead), the sound (use DirectSound), and keypad (use DirectInput) plugins are somewhat without any real motivation... Believe it or not, some guys even asked why a multi-emulator couldn't be done with lots of plugins even for the emulation of CPUs and ASICs! >Elite? Well, you could ask Allensworth, he is the Nes expert here. ;) Hmm, what kind of expert don't we have? >??? I don't have Emacs at hand ... Wasn't there someone who had some kind of Eliza service on AOL? >Victor -- M.I.K.e The sooner you make your first 5000 mistakes, the sooner you will be able to correct them. -- Nicolaides --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 21 14:24:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA60219 for dynarec-outgoing; Tue, 21 Nov 2000 14:24:08 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Motorola 68K doc From: "M.I.K.e" Message-ID: <0003769e18833a73_mailit@mail.dynarec.com> References: <200011210907.KAA12270@pons.ac.upc.es> <00037694bc3d53a3_mailit@mail.dynarec.com> <001101c053eb$c0a78d40$e245ae3e@hal9000> <3A1A23FC.20BC@hooked.net> Date: Tue, 21 Nov 2000 23:38:38 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [Dreamer] >Last time I checked, the emulator could only run demos. True. >Some of the DC >programming libraries I have seen used in demos just set up the >framebuffer, and the program itself is responsible for all the rendering >(so the PowerVR chip isn't used at all). Ah, that explains. I figure that the PowerVR2 might be a bitch to emulate. >I think this is why it's >possible to get many Dreamcast demos working in an emulator, but is also >why no commercial games work. Indeed, >Video chip aside, there isn't much to the DC hardware. I think Sega >learned from their mistakes with the Saturn, or they just wanted >something cost-effective. Also true, the Dreamcast is much cleaner and therefore easier to program than the Saturn, but never underestimate the sound controllers in Sega consoles. The Z80 in the Megadrive was used for much more than only sound and some Megadrive emulators have to emulate the Z80 to increase compatibility although they don't have sound emulation. The sound controller is no slow Z80 or 68K as in Megadrive and Saturn, but an ARM7 with 45MHz. If you want to see how slow ARM emulation is then take a look at the Archimedes emulators Archie and RedSquirrel, which barely manage to emulate an ARM2 with 8MHz at full speed. Also the predecessor of the ARM7, the ARM6 was used as the main processor in the 3DO console, which is still unemulated. -- M.I.K.e However, never daunted, I will cope with adversity in my traditional manner ... sulking and nausea. -- Tom K. Ryan --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 21 14:49:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA60246 for dynarec-outgoing; Tue, 21 Nov 2000 14:48:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 21 Nov 2000 15:04:00 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Howdy Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Just wanted to mention to you all that yes, I'm still here and alive and am still very much interested in the dynarec aspect of things. However, I need to first complete Europa, my synthesizer upgrade, and ship it before I can devote time to Dynarecing. It's a project that has been on again off again for >6 years now and it's time to put it to rest. Also, I'm in Chicago until the 28th (back on the 29th). Since the last resurgance, I've had a *LOT* of time to think about some of the technical facets and problems we've talked about in prior conversations, and I think I have a few solutions that'll give us great strides in performance. Stay tuned... mark my words - I *WILL* return to this. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 21 16:11:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA60325 for dynarec-outgoing; Tue, 21 Nov 2000 16:11:30 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Howdy From: "M.I.K.e" Message-ID: <0003769f97690be4_mailit@mail.dynarec.com> References: Date: Wed, 22 Nov 2000 01:25:42 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Just wanted to mention to you all that yes, I'm still here and alive and >am still very much interested in the dynarec aspect of things. Now everyone seems to come out of his hole ;-) >However, I need to first complete Europa, Uh, that's a huge task... >my synthesizer upgrade, Phew, thank god you didn't mean that geographically ;-) >and ship it before I can devote time to Dynarecing. At first I read "Dynaracing"... >It's a project that has been on again off >again for >6 years now and it's time to put it to rest. Sounds more like time to send it to school ;-) >Also, I'm in Chicago until the 28th (back on the 29th). Brrr, it must be cold there at this time of the year! >Since the last resurgance, Did I miss anything??? >I've had a *LOT* of time to think about some of the technical >facets and problems we've talked about in prior conversations, and I think >I have a few solutions that'll give us great strides in performance. Hey, that sounds great! Let's see if this small pause help all of us to sort our thougths a bit. >Stay tuned... mark my words - I *WILL* return to this. I'm longing for it! >-->Neil -- M.I.K.e Committees have become so important nowadays that subcommittees have to be appointed to do the work. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 21 22:53:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA60609 for dynarec-outgoing; Tue, 21 Nov 2000 22:53:30 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3A1AC37C.2E9F@hooked.net> Date: Tue, 21 Nov 2000 10:48:28 -0800 From: Charles MacDonald Organization: Whole Earth Networks X-Mailer: Mozilla 3.04 (Win95; I) MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Motorola 68K doc References: <200011210907.KAA12270@pons.ac.upc.es> <00037694bc3d53a3_mailit@mail.dynarec.com> <001101c053eb$c0a78d40$e245ae3e@hal9000> <3A1A23FC.20BC@hooked.net> <0003769e18833a73_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Ah, that explains. I figure that the PowerVR2 might be a bitch to emulate. > The complete lack of any documentation might also make emulation a bit difficult. :) > The Z80 in the Megadrive was used for much more than only sound and some > Megadrive emulators have to emulate the Z80 to increase compatibility > although they don't have sound emulation. I've found that a majority of games need the Z80 emulated since they wait for it to modify a status byte used for communication between the two. Though it could certainly be used for other purposes than sound. One overlooked possibility is that the Z80 is hooked up to the video chip, but sadly cannot send any meaningful data due to some issues with the data bus (16 bits for the VDP, 8 bits for the Z80). I personally would have loved to use the Z80 to manage raster effects and the like. > The sound controller is no slow Z80 or 68K as in Megadrive and Saturn, but an > ARM7 with 45MHz. I wonder if any games seriously need that much processing power - makes me think about the PSX, which has no dedicated sound CPU but seemed to manage fine. Unless you want to generate sound samples on the fly or something crazy like that. > Also the predecessor of the ARM7, > the ARM6 was used as the main processor in the 3DO console, which is still > unemulated. Just noticed that there's an ARM CPU core amongst the MAME sources, perhaps a 3DO driver will be added to MESS in the future. Then again that may be wishful thinking. -- Charles Mac Donald E-mail: cgfm2@hooked.net WWW: http://cgfm2.emuviews.com Stop spam before it is legalized! Act now! Visit http://www.cauce.org --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 21 23:46:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA60657 for dynarec-outgoing; Tue, 21 Nov 2000 23:46:22 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200011220757.IAA31357@pons.ac.upc.es> Subject: Re: DYNAREC: Motorola 68K doc In-Reply-To: <3A1AF4E5.7076BCB9@austin.rr.com> "from John Allensworth at Nov 21, 2000 02:19:17 pm" To: dynarec@dynarec.com Date: Wed, 22 Nov 2000 08:57:25 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I don't know about SDL performance in windows, but I believe it is what Loki uses for > most of the non-3D games in linux. Are you sure you're using a good framebuffer/blit > format? IIRC, SDL will give you whatever format you want, but if it isn't handled by > the hardware for the current video mode it will do all the color conversion in > software... > Well, I don't call SDL_BlitSurface or anything (because it proved to be slow). I directly write to the main surface returned by SDL (a software buffer actually I should have to change many things to use a hardware one). I manage color conversion by myself. At the start I have to admit I had problems with color conversion so I decided to don't use two buffers. > ReaperSMS - homepageless Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 00:05:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA60687 for dynarec-outgoing; Wed, 22 Nov 2000 00:05:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200011220816.JAA31524@pons.ac.upc.es> Subject: Re: DYNAREC: Motorola 68K doc In-Reply-To: <0003769dfbe907d5_mailit@mail.dynarec.com> "from M.I.K.e at Nov 21, 2000 11:30:38 pm" To: dynarec@dynarec.com Date: Wed, 22 Nov 2000 09:16:25 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I didn't pay anything. > > In that case I'm interested where you ordered it ;-) > Motorola site. Something called 'Library' (LDC?). > Congrats! I guess you are now the second sound specialist on the list after > NB. > I don't think so. ;) > >The only thing I could get (rather than some insults I must admit I won) was > >that on his thoughts the Dreamer's author is a kind of 'genius'. Perhaps > the > >Spanish equivalent to NB? ;) Do you believe in a two weeks working > >(someway) first version of the emu and with few free time to code? I > >don't know. > > No I wouldn't believe that. The SH-4 isn't as easy as it might seem, but I > don't know much about the graphics part. > Well I took a quick lookup and it remind me a lot to M68K family (names, addressing modes). The FP could be really problematic. BTW, there is any emulator for a console/arcade/computer which is or needs to emulate the CPU FP. Because I have found many problems with FP emulation (mainly because of precission). The IEEE standard is a good theory but it doesn't work always. For example Intel 80-bit FP precission would be bitchy to emulate with a 64 bit FP precission CPU. As another example (one I have been able to fully test ;) Power family has a multiply/divivide and add/sub kind of instructions which work with double precission for the intermediate results (the Power has 64-bit FP regs, with 53 bits for the mantissa, these instructions store mul/div result with 106 bits for the mantissa). And sometimes the difference can grown really big (I have seen some examples) if you ignore it. This could be a problem with a 3D games/programs using a lot of CPU FP. (I don't think anyone would build an emulator for scientist calculations ;). But I don't know if PSX (i think it hasn't) or N64 have FP instructions. > Would be nice, but I don't have the time currently... > Time always seems to be a problem with emulation ;). > BTW, I also have a nice name for an NES emulator, which strangely has never > been used yet: NEStor > Maybe there are too few people who read Homer's Ilias nowadys... > I think I read it many years ago ... I should read the Odisea. But there are so many SF books I still haven't read ... ;) > >Elite? Well, you could ask Allensworth, he is the Nes expert here. ;) > > Hmm, what kind of expert don't we have? > I don't know, perhaps an expert in birds. ;) > M.I.K.e > > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 00:12:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA60700 for dynarec-outgoing; Wed, 22 Nov 2000 00:12:26 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200011220823.JAA12882@pons.ac.upc.es> Subject: Re: DYNAREC: Howdy In-Reply-To: <0003769f97690be4_mailit@mail.dynarec.com> "from M.I.K.e at Nov 22, 2000 01:25:42 am" To: dynarec@dynarec.com Date: Wed, 22 Nov 2000 09:23:53 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Just wanted to mention to you all that yes, I'm still here and alive and > >am still very much interested in the dynarec aspect of things. > > Now everyone seems to come out of his hole ;-) > Where is NG, he arrived safe to England? ;) > >However, I need to first complete Europa, > > Uh, that's a huge task... > Damn! I think it was already completed. ;) > >my synthesizer upgrade, > > Phew, thank god you didn't mean that geographically ;-) > Phew, I just thought about another US crazy idea ;). > >I've had a *LOT* of time to think about some of the technical > >facets and problems we've talked about in prior conversations, and I think > >I have a few solutions that'll give us great strides in performance. > > Hey, that sounds great! Let's see if this small pause help all of us to sort > our thougths a bit. > Sort? I think the only think I can get for my thoughts with the time is forgiveness. But it can be useful for freeing some memory space for new ideas ;). > >Stay tuned... mark my words - I *WILL* return to this. > > I'm longing for it! > Waiting. ;) > >-->Neil > > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 02:51:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA60994 for dynarec-outgoing; Wed, 22 Nov 2000 02:51:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Motorola 68K doc From: "M.I.K.e" Message-ID: <000376a87bde3511_mailit@mail.dynarec.com> References: <200011220816.JAA31524@pons.ac.upc.es> Date: Wed, 22 Nov 2000 12:02:14 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Motorola site. Something called 'Library' (LDC?). I'll take a look again... Or did I order it already? >Well I took a quick lookup and it remind me a lot to M68K family (names, >addressing modes). Yeah, I felt almost at home when I first saw SuperH code. >The FP could be really problematic. BTW, there is >any emulator for a console/arcade/computer which is or needs to emulate >the CPU FP. Because I have found many problems with FP emulation (mainly >because of precission). The IEEE standard is a good theory but it >doesn't work always. In my opinion FP is always a problem... >For example Intel 80-bit FP precission would be bitchy to emulate with >a 64 bit FP precission CPU. As another example (one I have been >able to fully test ;) Power family has a multiply/divivide and add/sub >kind of instructions which work with double precission for the intermediate >results (the Power has 64-bit FP regs, with 53 bits for the mantissa, >these instructions store mul/div result with 106 bits for the mantissa). >And sometimes the difference can grown really big (I have seen some >examples) if you ignore it. Hmm, I wonder how Virtual PC covers that problem... >This could be a problem with a 3D games/programs using a lot of CPU FP. >(I don't think anyone would build an emulator for scientist calculations ;). >But I don't know if PSX (i think it hasn't) The PSX doesn't have an FPU, but the GTE does all those calculation in a special fixed point format, which is IMO the reason why most PSX emulators often have gaps between their polygones. >or N64 have FP instructions. The R4300i in the N64 should have an FPU if I'm not mistaken. >I think I read it many years ago ... I should read the Odisea. But there >are so many SF books I still haven't read ... ;) True... >I don't know, perhaps an expert in birds. ;) Didn't NG go birdwatching in the English Graden in Munich? ;-) (I have to admit that this is a joke for insiders...) >Victor -- M.I.K.e Bureaucrat, n.: A person who cuts red tape sideways. -- J. McCabe --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 02:52:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA60985 for dynarec-outgoing; Wed, 22 Nov 2000 02:51:31 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Howdy From: "M.I.K.e" Message-ID: <000376a88574da6a_mailit@mail.dynarec.com> References: <200011220823.JAA12882@pons.ac.upc.es> Date: Wed, 22 Nov 2000 12:04:55 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Where is NG, he arrived safe to England? ;) He did arrive, but I haven't heard anything from him for a very long time... [Europe] >Damn! I think it was already completed. ;) That remains debatable ;-) >> Phew, thank god you didn't mean that geographically ;-) >Phew, I just thought about another US crazy idea ;). Where is the Red Button? >Sort? I think the only think I can get for my thoughts with the >time is forgiveness. That's what I meant ;-) >But it can be useful for freeing some memory space for new ideas ;). I always do that... Erm, what did I just say? >Victor -- M.I.K.e ... But we've only fondled the surface of that subject. -- Virginia Masters --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 02:52:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA60990 for dynarec-outgoing; Wed, 22 Nov 2000 02:51:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Motorola 68K doc From: "M.I.K.e" Message-ID: <000376a8637be79f_mailit@mail.dynarec.com> References: <200011210907.KAA12270@pons.ac.upc.es> <00037694bc3d53a3_mailit@mail.dynarec.com> <001101c053eb$c0a78d40$e245ae3e@hal9000> <3A1A23FC.20BC@hooked.net> <0003769e18833a73_mailit@mail.dynarec.com> <3A1AC37C.2E9F@hooked.net> Date: Wed, 22 Nov 2000 11:55:25 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Ah, that explains. I figure that the PowerVR2 might be a bitch to emulate. >The complete lack of any documentation might also make emulation a bit >difficult. :) Yeah, that could be the next slight problem ;-) >I've found that a majority of games need the Z80 emulated since they >wait for it to modify a status byte used for communication between the >two. Though it could certainly be used for other purposes than sound. >One overlooked possibility is that the Z80 is hooked up to the video >chip, but sadly cannot send any meaningful data due to some issues with >the data bus (16 bits for the VDP, 8 bits for the Z80). I personally >would have loved to use the Z80 to manage raster effects and the like. You certainly know more about the Megadrive than I do... >I wonder if any games seriously need that much processing power - I guess now it's just some kind of tradition for Sega, because they always had a sound controller since the Megadrive. >makes >me think about the PSX, which has no dedicated sound CPU but seemed to >manage fine. The other extreme is N64 with no sound chip at all, where the CPU has to do everything. >Just noticed that there's an ARM CPU core amongst the MAME sources, Erm, those crazy MAME guys... And I bet it's as slow as a snail... >perhaps a 3DO driver will be added to MESS in the future. Then again >that may be wishful thinking. Very likely, since one guy from the video games industry told me that all 3DO CDs are encrypted and the chips which does the decryption is undocumented. >Charles Mac Donald -- M.I.K.e Old age is the most unexpected of things that can happen to a man. -- Trotsky --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 06:06:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA61192 for dynarec-outgoing; Wed, 22 Nov 2000 06:06:03 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00f601c0548e$d0413f00$01c93c9f@daves> From: "David Sharp" To: Subject: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Wed, 22 Nov 2000 14:16:30 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi there, I've been lurking for months and have got a few questions... I'm developing an ARM to x86 dynamic recompiler for my university final year project. The idea being to hopefully emulate the CPU to a fairly high extent (rather than the most used subset as Julian's ARMphetamine does) possibly with the hope of patching it into an already existing Acorn computer emulator. I'm currently at the design phase (a little behind schedule) and am looking to start programming the fetch-decode-execute emulation as soon as the general details of how to profile emulation to work out when to recompile are done. You can view progress so far and a project diary at http://www.dcs.warwick.ac.uk/~csuix/project/ The Acorn emulator of choice is RedSquirrel because it is the most advanced emulator that I have access to the source code for and the author is willing to advise on Acorn and ARM issues. The other main candidate is ArcEm but this is for Linux and I have no Linux experience whatsoever (no Linux Vs Win32 Vs BeOS vs FreeBSD comments please, I've heard them). RedSquirrel has been written for Win32 using MSVC++ v5 utilising DirectX (again, no anti-MS comments please, I've heard them). I'm also tempted to use MSVC++ so I don't have to worry about putting together a GUI for debugging as I've no experience of that in Windows. I have heard rumours (i.e. I've seen no proof) that C++ is significantly slower than C but I would ideally like to use a certain amount of OO for representing decoded ARM instructions and intermediate representation etc. it would also look better to my supervisors if it was OO (lecturers love it). I have heard that by not using all the funky C++ features like templates, inheritance and others that C++ isn't quite so bad. Coupled with the fact that RedSquirrel is in C++ it looks like I have to go that way. So, Is C++ going to be a significant overhead? Are there any idiosyncracies specific to MSVC++ that I should avoid if I'm to leave it open to converting to the GNU compiler in the possible future? Does anyone know anything about calling C++ methods from asm in MSVC? Anything else I should know? I think that'll do for now. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 06:36:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA61224 for dynarec-outgoing; Wed, 22 Nov 2000 06:36:09 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3A1BDBF5.3CA66F46@dial.oleane.com> Date: Wed, 22 Nov 2000 15:45:09 +0100 From: Gwenole Beauchesne Organization: IRISA, Campus de Beaulieu, 35042 Rennes Cedex, FRANCE X-Mailer: Mozilla 4.75 [en] (X11; U; SunOS 5.7 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec References: <00f601c0548e$d0413f00$01c93c9f@daves> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > So, Is C++ going to be a significant overhead? No, it might even be faster assuming that your compiler can pass arguments through register thus possibly putting the THIS pointer into a register. But note that using exceptions will slow down your code due to extra code for unwinding the stack. If you don't need exceptions, you can tell your compiler so and letting it optimize more. > Are there any idiosyncracies specific to MSVC++ that I should avoid if I'm > to leave it open to converting to the GNU compiler in the possible future? MSVC++ had incorrect handling of for-scope declared variables. I was told it is now fixed in one of the lastest Service Pack releases but as I don't use that compiler I can't tell you more. CodeWarrior 6 can be a good alternative. GCC is a little sub-optimal but has nice features like regenerating code taking into account branch statistics in order to improve taken rates of branches. (see gcov and profile-arcs). I like its inline assembly syntax too, but that's a pure personal taste ;-) > Does anyone know anything about calling C++ methods from asm in MSVC? If you know MSVC mangling scheme you can directly encode the function name yourself. Otherwise, I think it's wiser to make a C wrapper function (extern "C") thus preventing decoration of the function name, modulus the possible addition of just the leading underscore. BTW, why would you use asm ? You generally use asm only in last resort when your profiling data told you where the bottleneck was and when you tried every other traditional optimization technique in C or C++ with no avail. If you still want to use assembly, note that you can do inline assembly with MSVC++. Bye, Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 07:02:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA61253 for dynarec-outgoing; Wed, 22 Nov 2000 07:02:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003e01c05496$ae77faa0$01c93c9f@daves> From: "David Sharp" To: References: <00f601c0548e$d0413f00$01c93c9f@daves> <3A1BDBF5.3CA66F46@dial.oleane.com> Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Wed, 22 Nov 2000 15:12:49 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > No, it might even be faster assuming that your compiler can pass > arguments through register thus possibly putting the THIS pointer into a > register. But note that using exceptions will slow down your code due to > extra code for unwinding the stack. If you don't need exceptions, you > can tell your compiler so and letting it optimize more. That's great. I'm not sure how much I'll really need exceptions so it may be possible to avoid them entirely. > MSVC++ had incorrect handling of for-scope declared variables. I was > told it is now fixed in one of the lastest Service Pack releases but as > I don't use that compiler I can't tell you more. CodeWarrior 6 can be a > good alternative. GCC is a little sub-optimal but has nice features like > regenerating code taking into account branch statistics in order to > improve taken rates of branches. (see gcov and profile-arcs). I like its > inline assembly syntax too, but that's a pure personal taste ;-) I know the problem you mean with redeclaring variables in the for loop declaration, if that's the worst there is then MSVC will do fine. > If you know MSVC mangling scheme you can directly encode the function > name yourself. Otherwise, I think it's wiser to make a C wrapper > function (extern "C") thus preventing decoration of the function name, > modulus the possible addition of just the leading underscore. > BTW, why would you use asm ? You generally use asm only in last resort > when your profiling data told you where the bottleneck was and when you > tried every other traditional optimization technique in C or C++ with no > avail. If you still want to use assembly, note that you can do inline > assembly with MSVC++. I was more thinking about how I'll access the emulated memory map from recompiled code - I don't want the hassle of sticking the whole MMU emulation in the code so would want to call back out to a C++ method in the MMU object. Any ideas? There'll be very little assembly in the actual program (though I've not looked at the code generation problem at all yet) and I'm toying with the idea of a threaded interpreter on the optimised intermediate representation as a bit of a cop out but still interesting and a lot easier than the full dynarec in case I have problems completing it. Thanks for the advice. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 07:25:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA61278 for dynarec-outgoing; Wed, 22 Nov 2000 07:25:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3A1BE79C.61F68BAC@dial.oleane.com> Date: Wed, 22 Nov 2000 16:34:52 +0100 From: Gwenole Beauchesne Organization: IRISA, Campus de Beaulieu, 35042 Rennes Cedex, FRANCE X-Mailer: Mozilla 4.75 [en] (X11; U; SunOS 5.7 sun4u) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec References: <00f601c0548e$d0413f00$01c93c9f@daves> <3A1BDBF5.3CA66F46@dial.oleane.com> <003e01c05496$ae77faa0$01c93c9f@daves> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com David Sharp wrote: > I know the problem you mean with redeclaring variables in the for loop > declaration, if that's the worst there is then MSVC will do fine. I am sorry but I can't tell you more about MSVC. I have been told that it (MSVC++ 6.0) tends to generate sub-optimal code as well. > I was more thinking about how I'll access the emulated memory map from > recompiled code - I don't want the hassle of sticking the whole MMU > emulation in the code so would want to call back out to a C++ method in the > MMU object. Any ideas? But, don't you emit the address of a C++ method to the recompiled code ? The only problem I see is knowing where the THIS pointer of the object is passed to: in register or in stack ? The parameter passing conventions, actually. The rest is not a problem since you can take the address of a method and data can be addressed through the THIS variable. > There'll be very little assembly in the actual program (though I've not > looked at the code generation problem at all yet) and I'm toying with the > idea of a threaded interpreter on the optimised intermediate representation If you want to implement a threaded code interpreter, you should switch to GCC as it provides the "Label As Value" extension. i.e. taking the address of a label thus letting you save it in a table and later jump to its code with just a goto *. Otherwise, you will have to instrument the assembly output. Look at the archives for comp.compilers for some hints, but they were based on GCC as the target compiler. IMHO, using GCC is simpler and more portable as GCC is available for many platforms ;-) I don't know any other C or C++ compiler that implements computed gotos though I requested^Wsuggested Metrowerks to implement them for a future release of CodeWarrior. You may want to show them interest in it as well. You may want to have a look at MinGW, a GCC port to Windows: In my opinion, Cygwin is much too big and useless if you don't want the POSIX layer. Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 07:50:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA61307 for dynarec-outgoing; Wed, 22 Nov 2000 07:50:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec From: "M.I.K.e" Message-ID: <000376ac9bc7bfe0_mailit@mail.dynarec.com> References: <00f601c0548e$d0413f00$01c93c9f@daves> Date: Wed, 22 Nov 2000 16:57:30 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I've been lurking for months and have got a few questions... So you are a mutated Hydralisk - sorry I've been playing Starcraft Brood War lately ;-) >http://www.dcs.warwick.ac.uk/~csuix/project/ I took a look and collected some comments on your project diary. If the rest of the list is interested I might post them here as well, otherwise I'll send them to you personally. >The Acorn emulator of choice is RedSquirrel because it is the most advanced >emulator that I have access to the source code for and the author is willing >to advise on Acorn and ARM issues. The other main candidate is ArcEm but >this is for Linux and I have no Linux experience whatsoever (no Linux Vs >Win32 Vs BeOS vs FreeBSD comments please, I've heard them). I think that ArcEm is a bit outdated and the compatibility of RedSquirrel is probably much higher. >I have heard rumours (i.e. I've seen no proof) that C++ is significantly >slower than C but I would ideally like to use a certain amount of OO for >representing decoded ARM instructions and intermediate representation etc. >it would also look better to my supervisors if it was OO (lecturers love >it). I bet that those uni guys like C++ more... >I have heard that by not using all the funky C++ features like >templates, inheritance and others that C++ isn't quite so bad. I think the worst thing in C++ is multiple inheritance and operator overloading. >Coupled with the fact that RedSquirrel is in C++ it looks like I have to go that way. If the emulator already C++ it might be easier to continue with that language... >So, Is C++ going to be a significant overhead? I think C++ is almost always slower than C, but if you limit your programming style and don't use all possible features than the difference hopefully shouldn't be too worse. >Are there any idiosyncracies specific to MSVC++ that I should avoid if I'm >to leave it open to converting to the GNU compiler in the possible future? >Does anyone know anything about calling C++ methods from asm in MSVC? I'll have to leave these questions to those who already workd with MSVC++ ... >Dave -- M.I.K.e If you think nobody cares if you're alive, try missing a couple of car payments. -- Earl Wilson --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 07:50:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA61316 for dynarec-outgoing; Wed, 22 Nov 2000 07:50:56 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec From: "M.I.K.e" Message-ID: <000376acb199d95a_mailit@mail.dynarec.com> References: <00f601c0548e$d0413f00$01c93c9f@daves> <3A1BDBF5.3CA66F46@dial.oleane.com> <003e01c05496$ae77faa0$01c93c9f@daves> Date: Wed, 22 Nov 2000 17:03:36 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I was more thinking about how I'll access the emulated memory map from >recompiled code - I don't want the hassle of sticking the whole MMU >emulation in the code so would want to call back out to a C++ method in the >MMU object. Any ideas? You know that you don't need to emulate the MMU for an Archimedes emulation, do you? >There'll be very little assembly in the actual program (though I've not >looked at the code generation problem at all yet) and I'm toying with the >idea of a threaded interpreter on the optimised intermediate representation >as a bit of a cop out but still interesting and a lot easier than the full >dynarec in case I have problems completing it. It might be interesting to use interpretive routines for more complex instructions (I guess Jules does that for load and store instructions in ARMphetamine), and as Gwenole pointed out the main problem will be to find out which kind of parameter passing your compiler uses, because in contrast to all newer processors older ones like x86 and 68K don't have a defined procedure call standard. I think for 68K this definition was done by the OS, but for x86 even most of the C compilers don't agree on a standard. -- M.I.K.e With all the fancy scientists in the world, why can't they just once build a nuclear balm? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 08:11:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA61345 for dynarec-outgoing; Wed, 22 Nov 2000 08:11:35 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008a01c054a0$59470120$01c93c9f@daves> From: "David Sharp" To: References: <00f601c0548e$d0413f00$01c93c9f@daves> <3A1BDBF5.3CA66F46@dial.oleane.com> <003e01c05496$ae77faa0$01c93c9f@daves> <000376acb199d95a_mailit@mail.dynarec.com> Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Wed, 22 Nov 2000 16:22:01 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You know that you don't need to emulate the MMU for an Archimedes emulation, > do you? It's more the actual MEMC emulation, I'm not quite sure how complex it is and don't really want to find out. > It might be interesting to use interpretive routines for more complex > instructions (I guess Jules does that for load and store instructions in > ARMphetamine), and as Gwenole pointed out the main problem will be to find > out which kind of parameter passing your compiler uses, because in contrast > to all newer processors older ones like x86 and 68K don't have a defined > procedure call standard. I think for 68K this definition was done by the OS, > but for x86 even most of the C compilers don't agree on a standard. Ok thanks, I'll see if I can find out what MSVC does. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 10:57:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA61477 for dynarec-outgoing; Wed, 22 Nov 2000 10:57:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 22 Nov 2000 11:12:59 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: <3A1BDBF5.3CA66F46@dial.oleane.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > So, Is C++ going to be a significant overhead? > No, it might even be faster assuming that your compiler can pass > arguments through register thus possibly putting the THIS pointer into a > register. Um... no. This isn't quite right. C++ Will always be as fast or *SLOWER* than C. The register allocation as you mention is an option you can turn on/off independently of the language. Provided you're not doing anything that requires runtime checks or allocation/deallocation (I.E. doing new/delete on various classes) then it'll probably run about the same. There is a *SLIGHT* bit of overhead. > > Are there any idiosyncracies specific to MSVC++ that I should avoid if I'm > > to leave it open to converting to the GNU compiler in the possible future? > MSVC++ had incorrect handling of for-scope declared variables. I was > told it is now fixed in one of the lastest Service Pack releases but as > I don't use that compiler I can't tell you more. CodeWarrior 6 can be a > good alternative. Codewarrior is a pile of shit. More details as I have time to type them in. I just remember it generating HORRIBLE code, in addition to buggy code, when poirting Retrocade to the Mac. > GCC is a little sub-optimal but has nice features like > regenerating code taking into account branch statistics in order to > improve taken rates of branches. (see gcov and profile-arcs). I like its > inline assembly syntax too, but that's a pure personal taste ;-) Yeuck. The "branch statistics" is already done in the MSVC compiler as well, and does a better job (rearrangement of the order of code). gcc Generates awful x86 code - the worst of the bunch. MSVC Is actually fairly good, but still doesn't come close to Watcom. What's funny about gcc is if you turn on variable passing in registers, the code it generates is most often slower than the pass by stack variables. I hate gcc. And let's not get started on the non-algebraic, redundant, and ridiculously verbose AT&T syntax... > BTW, why would you use asm ? You generally use asm only in last resort > when your profiling data told you where the bottleneck was and when you > tried every other traditional optimization technique in C or C++ with no > avail. If you still want to use assembly, note that you can do inline > assembly with MSVC++. I'd actually just spend more time on the output of the recompiler itself. That's where the biggest speed gains will be! -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 10:59:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA61489 for dynarec-outgoing; Wed, 22 Nov 2000 10:59:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 22 Nov 2000 11:14:55 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: <3A1BE79C.61F68BAC@dial.oleane.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I know the problem you mean with redeclaring variables in the for loop > > declaration, if that's the worst there is then MSVC will do fine. > I am sorry but I can't tell you more about MSVC. I have been told that > it (MSVC++ 6.0) tends to generate sub-optimal code as well. When doing register calling conventions, it comes within about 20% of Watcom (which still stomps everything else in the ground). GCC I've seen be on the order of 50% slower than MSVC, but never have seen it been faster regardless of the compile options. Gcc does well for orthogonal register CPUs, but it does shitty on the x86. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 11:00:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA61506 for dynarec-outgoing; Wed, 22 Nov 2000 11:00:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000901c054b8$2475f600$4f42ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <00f601c0548e$d0413f00$01c93c9f@daves> Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Wed, 22 Nov 2000 20:12:20 +0100 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've been lurking for months and have got a few questions... > But it isn't the first time we found you here ;). And I think you know Mike pretty well ;). > I'm developing an ARM to x86 dynamic recompiler for my university final year > project. The idea being to hopefully emulate the CPU to a fairly high extent > (rather than the most used subset as Julian's ARMphetamine does) possibly > with the hope of patching it into an already existing Acorn computer ARM seems to be very popular in UK ... > emulator. I'm currently at the design phase (a little behind schedule) and > am looking to start programming the fetch-decode-execute emulation as soon > as the general details of how to profile emulation to work out when to > recompile are done. You can view progress so far and a project diary at > http://www.dcs.warwick.ac.uk/~csuix/project/ > After taking a look to your page I must admit I feel really bad. I don't even have a timeline (just a hoped final date) or anything for my university project :(. Are all English so organized or it is just your universities make you be so? In my university I don't have to present any document at the start of the project, just talk with the project director (which in my case is also my second boss ;). There is just a small document (max. 5 pages!) three months before the presentation. I'm very unorganized person :(. Well, I haven't read everything still (althought it remembers me a lot my own research last year) but there are some interesting opinions about this list I would want to share with everyone :). " [...] Having been subscribed to an email list for at dynarec.com (for the purpose of discussing dynamic recompilers) since early June, I spent some time reading over 600 previous emails to glean information. [...]" Damn! :) " [...] The group have been working towards building a dynamic recompiler for the 68k->x86 with one of the leading members having previously worked on a dynarec for the Z80->x86. [...]". More talking that anything real yet, of course. The start discussion (I don't know if you have the first mails) about DRZ80 was also very interesting and useful. And the more fun: "[...] Although there is quite a lot of noise on the group [...] " Too true :)). Everyone subscribed to the list with the some opinion must have feel well with the last weeks silence ;). Well, enough nosense talk I have already made my contribution the the noise. I think that put the project description and your development diary in a web is a really wonderful idea. I think it could help other people starting similar projects. Go ahead with you're project and good luck :). > I have heard rumours (i.e. I've seen no proof) that C++ is significantly > slower than C but I would ideally like to use a certain amount of OO for > representing decoded ARM instructions and intermediate representation etc. > it would also look better to my supervisors if it was OO (lecturers love > it). I have heard that by not using all the funky C++ features like > templates, inheritance and others that C++ isn't quite so bad. Coupled with > the fact that RedSquirrel is in C++ it looks like I have to go that way. > I don't like so much OO and either the love of some 'professors' (mainly the ones from the Software area, I'm more from the Architecture area). I think OO is very useful for some task but not for others. And I don't think emulation (or anything related with real-time applications and performance) is one of those task, but it is just an opinion. > > Anything else I should know? > Do you really know where are you getting into? ;) Just a bad joke. I feel you know better than me. :) > Dave Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 11:42:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA61544 for dynarec-outgoing; Wed, 22 Nov 2000 11:42:05 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001301c054bd$fa7fb740$6a40ae3e@hal9000> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Wed, 22 Nov 2000 20:54:07 +0100 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yeuck. The "branch statistics" is already done in the MSVC compiler as > well, and does a better job (rearrangement of the order of code). gcc > Generates awful x86 code - the worst of the bunch. MSVC Is actually fairly > good, but still doesn't come close to Watcom. What's funny about gcc is if > you turn on variable passing in registers, the code it generates is most > often slower than the pass by stack variables. I hate gcc. > I saw (after doing a bit of dissassembly) really good code produced by the VC compiler for my emulator. In fact with a bit of help it produced really fast code for the background drawing routines. And in some cases where I wrote some ugly code (decoding the palette pixels into RGB pixels) it produced nearly to the best (I don't think I would have made better) assembler code. The only thing, of course, it is you need to code something that it makes sense so the compiler can optimize it well ;). > And let's not get started on the non-algebraic, redundant, and > ridiculously verbose AT&T syntax... > Yeah! Really ugly ;). I must be an Intel fan. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 12:11:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA61577 for dynarec-outgoing; Wed, 22 Nov 2000 12:11:53 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Jack To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Wed, 22 Nov 2000 15:20:53 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: <001301c054bd$fa7fb740$6a40ae3e@hal9000> In-Reply-To: <001301c054bd$fa7fb740$6a40ae3e@hal9000> X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 22 Nov 2000 20:54:07 +0100, "Victor Moya del Barrio" wrote: >> Yeuck. The "branch statistics" is already done in the MSVC compiler as >> well, and does a better job (rearrangement of the order of code). gcc >> Generates awful x86 code - the worst of the bunch. MSVC Is actually fairly >> good, but still doesn't come close to Watcom. What's funny about gcc is if >> you turn on variable passing in registers, the code it generates is most >> often slower than the pass by stack variables. I hate gcc. >> >I saw (after doing a bit of dissassembly) really good code produced by the >VC compiler for my emulator. In fact with a bit of help it produced really fast >code for the background drawing routines. And in some cases where I wrote >some ugly code (decoding the palette pixels into RGB pixels) it produced >nearly to the best (I don't think I would have made better) assembler code. > >The only thing, of course, it is you need to code something that it makes sense >so the compiler can optimize it well ;). With no optimization, the code produced by just about any compiler is going to be fairly horrific to a hand-treaking assembly programmer. That's just a given. In past projects, I've examined the compiler's assembly output and tweaked the C code to get the compiler to produce better assembly. After a while it was really easy to anticipate how a particular chunk of code was going to be compiled. Mind you this was with the last version of Borland C++, before the really crazy PII pipelining rules muddied the waters. With modern compilers, and with CPUs with much more "interesting" pipelining limitations/optimization opportunities, this type of activity is much less predictable. When you have full optimization turned on, the assembly produced is often quite spagetti-like - at least as far as register usage. It rivals some of the worst hand tweaked assembly code of yore where a register value is set three pages of code before it is actually used in a computation (I actually had to maintain code that did this sort of thing). :) >> And let's not get started on the non-algebraic, redundant, and >> ridiculously verbose AT&T syntax... >> >Yeah! Really ugly ;). I must be an Intel fan. The less said about this the better. -- Jack ---- "There is no reason anyone would want a computer in their home." - Ken Olson, president, chairman and founder of Digital Equipment Corp., 1977 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 13:11:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA61630 for dynarec-outgoing; Wed, 22 Nov 2000 13:11:54 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006601c054ca$4b41bbe0$01c93c9f@daves> From: "David Sharp" To: References: <00f601c0548e$d0413f00$01c93c9f@daves> <000901c054b8$2475f600$4f42ae3e@hal9000> Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Wed, 22 Nov 2000 21:22:17 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > But it isn't the first time we found you here ;). And I think you know > Mike pretty well ;). > ARM seems to be very popular in UK ... All true. > After taking a look to your page I must admit I feel really bad. I don't even > have a timeline (just a hoped final date) or anything for my university > project :(. Are all English so organized or it is just your universities make > you be so? In my university I don't have to present any document at the > start of the project, just talk with the project director (which in my case is > also my second boss ;). There is just a small document (max. 5 pages!) > three months before the presentation. I'm very unorganized person :(. I'm afraid I'm behind schedule and have been brainstorming a bit on design issues for the interpreting emulator (design is where the marks come from). The diary is my own idea and falling behind as I've spent two weeks doing Business Studies essays and applying for jobs. > More talking that anything real yet, of course. The start discussion (I don't know if > you have the first mails) about DRZ80 was also very interesting and useful. I don't think I have the very early stuff on DRZ80 and haven't looked at the code yet either. I'm planning to follow Julian's lead with an intermediate representation of sub-ARM instructions (I think DRZ80 used a slightly more objective IR?). The biggest issues I'm having in my head are how to keep polling for interrupts and keep track of cycles executed. > I think that put the project description and your development diary > in a web is a really wonderful idea. I think it could help other people starting > similar projects. Go ahead with you're project and good luck :). Thanks, glad you like it. > Do you really know where are you getting into? ;) > Just a bad joke. I feel you know better than me. :) Yep, it's getting hairy. One of my friends suggested a novel name for my project: "tARMac - it's bloody hard" :o) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 13:48:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA61665 for dynarec-outgoing; Wed, 22 Nov 2000 13:48:49 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 22 Nov 2000 14:04:47 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: <003e01c05496$ae77faa0$01c93c9f@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > tried every other traditional optimization technique in C or C++ with no > > avail. If you still want to use assembly, note that you can do inline > > assembly with MSVC++. > I was more thinking about how I'll access the emulated memory map from > recompiled code - I don't want the hassle of sticking the whole MMU > emulation in the code so would want to call back out to a C++ method in the > MMU object. Any ideas? Hm.... is your memory map "fixed", or will it change? If it's semi-fixed, you can create handler regions. > There'll be very little assembly in the actual program (though I've not > looked at the code generation problem at all yet) and I'm toying with the > idea of a threaded interpreter on the optimised intermediate representation > as a bit of a cop out but still interesting and a lot easier than the full > dynarec in case I have problems completing it. Intermediate representation... yeuck. We've already proven that that is sub optimal. I'll steer you back toward the archives of all the prior discussions on that. Sometimes they went on for *WEEKS*. But it was quite the discussion! -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 13:53:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA61678 for dynarec-outgoing; Wed, 22 Nov 2000 13:53:10 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 22 Nov 2000 14:09:07 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: <000901c054b8$2475f600$4f42ae3e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > (rather than the most used subset as Julian's ARMphetamine does) possibly > > with the hope of patching it into an already existing Acorn computer > ARM seems to be very popular in UK ... Too bad ARM, Inc. doesn't ever both to update their *LOUSY* tools. FWIW, I use the ARM 2.50 and 2.51 SDTs and it's the buggiest POS I've used! But their processor cores are way cool! > " [...] The group have been working towards building a dynamic recompiler for the 68k->x86 > with one of the leading members having previously worked on a dynarec for the Z80->x86. > [...]". > More talking that anything real yet, of course. The start discussion (I don't know if > you have the first mails) about DRZ80 was also very interesting and useful. Well, DRMZ80 *DID* work... it just wasn't complete. ;-) > "[...] Although there is quite a lot of noise on the group [...] " > Too true :)). Everyone subscribed to the list with the some opinion must have > feel well with the last weeks silence ;). Part of that creates a "home" style of feeling for the group. I like you guys a lot! > > templates, inheritance and others that C++ isn't quite so bad. Coupled with > > the fact that RedSquirrel is in C++ it looks like I have to go that way. > I don't like so much OO and either the love of some 'professors' (mainly the > ones from the Software area, I'm more from the Architecture area). I think Do you mean object oriented programming or do you mean C++? They are disconnected things! OO Is *ALWAYS* a good idea. C++ Isn't always. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 13:57:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA61691 for dynarec-outgoing; Wed, 22 Nov 2000 13:57:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 22 Nov 2000 14:13:31 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: <006601c054ca$4b41bbe0$01c93c9f@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > More talking that anything real yet, of course. The start discussion (I > don't know if > > you have the first mails) about DRZ80 was also very interesting and > useful. > I don't think I have the very early stuff on DRZ80 and haven't looked at the > code yet either. I'm planning to follow Julian's lead with an intermediate > representation of sub-ARM instructions (I think DRZ80 used a slightly more > objective IR?) If your ultimate goal is speed, having a IR layer is going to slow it down significantly. We've proven that already with prior runs. DRMZ80 Went to direct cover translation, which is best since you can do all sorts of trickery to get the target layer to generate super optimal code. >. The biggest issues I'm having in my head are how to keep > polling for interrupts and keep track of cycles executed. You might want to look at DRMZ80 in this regard. You don't need to poll for interrupts (seriously bad idea - polling for anything!). Just tell your core to exec(500), and it'll execute 500 cycles. If your interrupt happens every 500 cycles, you can just do a call that causes the interrupt to occur then. No need to do it after every instruction. > > I think that put the project description and your development diary > > in a web is a really wonderful idea. I think it could help other people > starting > > similar projects. Go ahead with you're project and good luck :). > Thanks, glad you like it. And it could also serve to helpget guys like me back to the original project at hand. ;-) I'm kinda bummed Alex is MIA. He's the one who wrote the 34010 recompiler and it worked *WELL*. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 14:05:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA61711 for dynarec-outgoing; Wed, 22 Nov 2000 14:05:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008101c054d1$cc65de20$01c93c9f@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Wed, 22 Nov 2000 22:16:00 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hm.... is your memory map "fixed", or will it change? If it's semi-fixed, > you can create handler regions. I suspect it's pretty fixed (I've not taken a look indepth). What are these handler regions? > Intermediate representation... yeuck. We've already proven that that is > sub optimal. I'll steer you back toward the archives of all the prior > discussions on that. Sometimes they went on for *WEEKS*. But it was quite > the discussion! Where can I get hold of the archives, I didn't think any were held? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 14:06:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA61721 for dynarec-outgoing; Wed, 22 Nov 2000 14:06:28 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008801c054d1$ee6a0f00$01c93c9f@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Wed, 22 Nov 2000 22:16:57 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Too bad ARM, Inc. doesn't ever both to update their *LOUSY* tools. FWIW, I > use the ARM 2.50 and 2.51 SDTs and it's the buggiest POS I've used! But > their processor cores are way cool! Anything inparticular, I've a job interview there on 15th December and could do with some ammo to fight back with? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 14:13:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA61733 for dynarec-outgoing; Wed, 22 Nov 2000 14:13:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009301c054d2$e66f67e0$01c93c9f@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Wed, 22 Nov 2000 22:23:50 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > If your ultimate goal is speed, having a IR layer is going to slow it down > significantly. We've proven that already with prior runs. DRMZ80 Went to > direct cover translation, which is best since you can do all sorts of > trickery to get the target layer to generate super optimal code. Are there any docs on DRZ80 or the techniques you used or is it pretty much just a matter of looking at the source? I'm more than open to practical alternatives as I don't want to be repeating Julian's work just with more optimisation techniques - something else would be very nice. I'm slightly curious as to how well your technique would scale to a 32bit RISC processor emulation (or is that not a problem)? > You might want to look at DRMZ80 in this regard. You don't need to poll > for interrupts (seriously bad idea - polling for anything!). Just tell > your core to exec(500), and it'll execute 500 cycles. If your interrupt > happens every 500 cycles, you can just do a call that causes the interrupt > to occur then. No need to do it after every instruction. That's the sort of thing I was intending (you're right it's not really polling) every X hundred cycles doing the interrupt, the problem comes when (and I don't know if it's really a problem) a conditional branch back into the recompiled chunk for a loop, prevents that interrupt from getting serviced. It all really comes back to the problem of how to keep track of how many cycles have been emulated in a chunk of recompiled code, without doing something shitty like incrementing and checking after every instruction (which surely messes up the emulated flags/regs which are stored in native hardware over different instructions), answers on a postcard... > And it could also serve to helpget guys like me back to the original > project at hand. ;-) I'm kinda bummed Alex is MIA. He's the one who wrote > the 34010 recompiler and it worked *WELL*. Cool. I could do with some help! :o) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 15:18:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA61793 for dynarec-outgoing; Wed, 22 Nov 2000 15:18:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Thu, 23 Nov 2000 00:31:27 +0100 Message-ID: <1ekiudq.vc4w0l1cco0ejM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id PAA61790 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Provided you're not doing anything that requires runtime checks or > allocation/deallocation (I.E. doing new/delete on various classes) The GNU implementation of the standard C++ library provides specialised memory allocators through pools. Remember about "lazy" allocation. So I actually saw that scheme to be faster than always calling malloc() and similar functions, even if some malloc() implementations also provide pools. But you are right about the possible overhead as the standard form of new/delete can raise an exception and extra code has to be emitted to handle it. If people want the plain old C-style memory allocation and checking for a returned null pointer in case of an out-of-memory condition, they use the new(std::nothrow) form and that doesn't throw any exception. There is actually a reason why compilers propose an option to turn off exceptions as I think the major bottleneck is there in terms of raw performance. > Codewarrior is a pile of shit. More details as I have time to type them > in. I just remember it generating HORRIBLE code, in addition to buggy > code, when poirting Retrocade to the Mac. Remember that your code can also rely on implementation-defined or undefined-behavior thus making CodeWarrior generate silly things because of the programmer. I remember when I compiled UnACE for the Mac with CodeWarrior, it just didn't work well because the author made horrible assumptions about code like #ifdef HI_LO_BYTE_ORDER #define BUFP2WORD(p) ((UWORD)*(p)++ | ((*(p)++)<<8)) ... > Yeuck. The "branch statistics" is already done in the MSVC compiler as > well, and does a better job (rearrangement of the order of code). gcc > Generates awful x86 code - the worst of the bunch. Which version of gcc did you try ? There are optimized versions of gcc for Pentium Pro processors said to generate code up to 20% better than the latest official release (2.95.2). Besides, the latest development releases supposedly show greater optimizations as well. I didn't try those as I am looking forward to using GCC 3.0 by the end of this year, or in January at the very latest. > MSVC Is actually fairly good, but still doesn't come close to Watcom. While we are at comparing compilers, could you please try KAI C++ on your tests ? There are versions for Windows but last time I checked they were quite old, please use Linux/x86 instead. I am sorry but I don't have Watcom to test out and its sources are not publicly released yet. I had many reports about Watcom's good/excellent quality and I tend to trust them. But KAI is also a good competitor, especially for scientic purposes. > What's funny about gcc is if you turn on variable passing in registers, > the code it generates is most often slower than the pass by stack > variables. I hate gcc. I must be lucky but I didn't notice that in Basilisk II for the instruction handlers when passing just one parameter in register but I reckon I got near 3% performance hit when passing three parameters in X86 registers for the new FPU emulation interface. :-( > I'd actually just spend more time on the output of the recompiler > itself. That's where the biggest speed gains will be! Indeed, a good runtime optimizer can help a lot as well. I am impressed by Dynamo's (the one from HP Labs) performance in terms of runtime optimizations and for just a so small overhead: 0.5-1.0% up to 3.5% on some benchmarks! BTW, I conducted some experiments with the JIT compiler (68040) for Basilisk II. The compilation scheme is: execute (interpret) in order to gather addresses of main opcodes and determine basic blocks, then compile the blocks after a certain execution count. - With aggressive I-cache flush and threshold fixed to 10, compile_block() takes up to 55% (!!) of the total running time. i.e. lauching MaOS, running Speedometer 3.X and 4.X, Apple Personal Diagnostics, a GraphicConverter ("real world") test and shutting down the virtual Mac. - With lazy I-cache flush and threshold fixed to 50, compile_block() takes 8-10% of the total time. The Finder is much more reactive and I noticed almost no speed loss. Indeed, in many tests, that's even faster especially in the GraphicConverter test. 10% is still quite huge though, if we consider that no other optimization than constant folding/propagation (quite useful actually!) is performed. Have I said I am impressed by Dynamo ? ;-) [At least, according to their technical reports] Note: the original UAE approach for compiling a block just after it was executed (i.e. no minimal execution count is checked for) was simply too slow in my opinion. Nearly unrelated note: self-modifying code is easily supported because on a real 68020 or newer processor, explicit calls to instruction cache flush instructions have to be performed, in which case the whole DR translation cache is cleared (except with the lazy I-cache flusher). Unfortunately, such instructions don't exist for the 68000 :-( Bye Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 19:08:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA61995 for dynarec-outgoing; Wed, 22 Nov 2000 19:08:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 22 Nov 2000 19:24:07 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: <008101c054d1$cc65de20$01c93c9f@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Hm.... is your memory map "fixed", or will it change? If it's semi-fixed, > > you can create handler regions. > I suspect it's pretty fixed (I've not taken a look indepth). What are these > handler regions? With DRMZ80, there's a structure like this: struct MemoryReadByte blah[] = { {0, 0x1fff, ROMRegion}, {0x2000, 0x2fff, RAMRegion}, ... } You get the idea. > > sub optimal. I'll steer you back toward the archives of all the prior > > discussions on that. Sometimes they went on for *WEEKS*. But it was quite > > the discussion! > Where can I get hold of the archives, I didn't think any were held? I've placed them for download at: http://www.synthcom.com/~neil/drl.zip It's a 1.7 megabyte archive zipped, and about 9 megs unzipped. This is the archive from the initial moment of its inception to today. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 19:15:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA62011 for dynarec-outgoing; Wed, 22 Nov 2000 19:15:53 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 22 Nov 2000 19:31:54 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: <008801c054d1$ee6a0f00$01c93c9f@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Too bad ARM, Inc. doesn't ever both to update their *LOUSY* tools. FWIW, I > > use the ARM 2.50 and 2.51 SDTs and it's the buggiest POS I've used! But > > their processor cores are way cool! > Anything inparticular, I've a job interview there on 15th December and could > do with some ammo to fight back with? A few thngs come to mind: * The debugger will go out to lunch after running a program. If you click on the app and you're not clicking on a button or menu item (|which happens a ton if you have many apps open during debugging), it'll no longer respond to commands until you change focus to another app and then back to the debugger. It has been this way for >1.5 years now. * The traceback facility in the debugger crashes about 50% of the time * The compiler will not let you shut off individual warning messages. The grouping of warnings you can enable wind up turning on undesirables as well as the real thing. * The debugger orphans copies of itself if shut down after a data abort or a protection fault in adw.exe * The compiler defaults to char being unsigned, which, while not required by ANSI C, is completely the opposite of every compiler I've ever seen. * The debugger fetches data a byte at a time when displaying it instead of fetching the native size of the item (16 bit or 32 bit quantity). This has the nasty side effect of making 16/32 bit quantity variables look correct in the debugger, while an unaligned read/write will cause endian reversal or completely wrong info to be fetched by the actual code. In other words, the data fetched doesn't match what the debugger says. Just a few "serious" problems. And ARM hasn't fixed these problems in the 1.5 years we've had the SDT. What I found particularly sneaky is that I posted about this on comp.sys.arm (all of these topics), and someone from ARM vivisected my message with all the other complaints and focused in on one issue that was solvable via a command line switch. I reposted all of my complaints with all of the removed problem descriptions and asked him to address them, and never got a response. Arrogant, sneaky bastards. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 19:30:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA62030 for dynarec-outgoing; Wed, 22 Nov 2000 19:30:34 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 22 Nov 2000 19:46:35 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: <009301c054d2$e66f67e0$01c93c9f@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > significantly. We've proven that already with prior runs. DRMZ80 Went to > > direct cover translation, which is best since you can do all sorts of > > trickery to get the target layer to generate super optimal code. > Are there any docs on DRZ80 or the techniques you used or is it pretty much > just a matter of looking at the source? That, and also looking through the mail archives. Unfortunately, there's no documentation on it - haven't had time, and I wanted to test the theories before I actually wrote them up. ;-) The best documentation is the archives, simply because it was discussed ad infinitum along with pros/cons. Hopefully it'll be helpful to you in your designs. If you have any other questions, please post them here. We'll be happy to discuss them I'm sure! > I'm more than open to practical alternatives as I don't want to be repeating > Julian's work just with more optimisation techniques - something else would > be very nice. I'm slightly curious as to how well your technique would scale > to a 32bit RISC processor emulation (or is that not a problem)? Almost all of it would scale to any size of CPU. The only thing that wouldn't translate, at least directly the way that I did it, is the transmap. In fact, I can't think of anything that really wouldn't, but the only thing that my recompiler wouldn't solve is self modifying code (it'd be dawg slow). > That's the sort of thing I was intending (you're right it's not really > polling) every X hundred cycles doing the interrupt, the problem comes when > (and I don't know if it's really a problem) a conditional branch back into > the recompiled chunk for a loop, prevents that interrupt from getting > serviced. I solved it by subtracting the current instruction's time from an ever decreasing counter, and jumping on it going negative. I did this for EVERY emulated instruction. > It all really comes back to the problem of how to keep track of > how many cycles have been emulated in a chunk of recompiled code, without > doing something shitty like incrementing and checking after every > instruction (which surely messes up the emulated flags/regs which are stored > in native hardware over different instructions), answers on a postcard... Um... that's what I wound up doing. ;-) It's actually quite effective and very fast. DRMZ80 Was broken up into a source and target layer. The source layer (in this case a Z80) would pass hints to the target layer. The source layer would analyze the blocks of Z80 code and figure out whether or not a given instruction cover would need to "restore" flags or even calculate them. I never could find a good way to keep the flags in the x86 registers, especially considering that a LOT of them don't match up to the target CPU. Fortunately, the computation of flags was usually quite simple because I kept them in x86 format while executing, and translated them back out to the Z80 afterwards. I can't find the logfile output - anyone have the sample I posted a long time ago? > > And it could also serve to helpget guys like me back to the original > > project at hand. ;-) I'm kinda bummed Alex is MIA. He's the one who wrote > > the 34010 recompiler and it worked *WELL*. > Cool. I could do with some help! :o) I'm remote, so my ability to answer email as I normally do is quite limited, but it's a great topic and I'd love to help out any way I can. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 23:19:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA62196 for dynarec-outgoing; Wed, 22 Nov 2000 23:19:18 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200011230730.IAA10793@pons.ac.upc.es> Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: "from Neil Bradley at Nov 22, 2000 07:24:07 pm" To: dynarec@dynarec.com Date: Thu, 23 Nov 2000 08:30:53 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I've placed them for download at: > > http://www.synthcom.com/~neil/drl.zip > There was a cleaned (without noise ;) version of the first discussions on my page (www.dynarec.com/~victor). There is also the DRMZ80 source, reason because (ehem!) I broke the link. It's name drarchives.zip, in fact: www.dynarec.com/~victor/drarchive.zip If Neil agrees I could change the protection of the file (it is still there but protected) a few hours so you can download ;). Or I could delete the DRMZ80 code, but zip doesn't seems to work in the dynarec account. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 23:29:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA62212 for dynarec-outgoing; Wed, 22 Nov 2000 23:29:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200011230741.IAA29051@pons.ac.upc.es> Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: <1ekiudq.vc4w0l1cco0ejM@[192.168.0.2]> "from Gwenole Beauchesne at Nov 23, 2000 00:31:27 am" To: dynarec@dynarec.com Date: Thu, 23 Nov 2000 08:41:10 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=ISO-8859-1 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Indeed, a good runtime optimizer can help a lot as well. I am impressed > by Dynamo's (the one from HP Labs) performance in terms of runtime > optimizations and for just a so small overhead: 0.5-1.0% up to 3.5% on > some benchmarks! > Well, that could be discussed. I think Dynamo is a good idea but for perhaps more for using it with a real dynamic translator rather than with a dynamic optimizer (as Dynamo is). There was a presentation of the project here in my university and some of the conclusions seemed to be that Dynamo achived such performace because of the madly gigant L1 cache of HP processors. Since it is able to handle the full optimizer at L1 cache all along with the optimized blocks it works. But I don't think it would work so well in CPUs with more normal caches. And some benchmark (Spec95) had really poor performance. Well perhaps I'm forgetting something my memory is really bad. My conclusion about Dynamo is: I'm not sure such dynamic optimizer is really useful for something, but it is quite a worth to read and learn about it for real dynamic translation. I should take a look again to the documentation. > Nearly unrelated note: self-modifying code is easily supported because > on a real 68020 or newer processor, explicit calls to instruction cache > flush instructions have to be performed, in which case the whole DR > translation cache is cleared (except with the lazy I-cache flusher). > Unfortunately, such instructions don't exist for the 68000 :-( > The real problem with self-modifying code aren't more modern 'cached' processors but old ones 8-bit and early 16-bit ones ;). It was with those CPUs where self-modifying code was really used and abused. Later CPUs either don't support it, or provide flush cache like instructions, or in most of cases is less or no really used. > Gwenolé Beauchesne Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 23:39:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA62229 for dynarec-outgoing; Wed, 22 Nov 2000 23:39:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200011230751.IAA03251@pons.ac.upc.es> Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: "from Neil Bradley at Nov 22, 2000 07:46:35 pm" To: dynarec@dynarec.com Date: Thu, 23 Nov 2000 08:51:11 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > That, and also looking through the mail archives. Unfortunately, there's > no documentation on it - haven't had time, and I wanted to test the > theories before I actually wrote them up. ;-) The best documentation is > the archives, simply because it was discussed ad infinitum along with > pros/cons. Hopefully it'll be helpful to you in your designs. If you have > any other questions, please post them here. We'll be happy to discuss them > I'm sure! > There is a bad starting documentation I made for clearing my ideas ;). But I don't think it makes the worth. > I solved it by subtracting the current instruction's time from an ever > decreasing counter, and jumping on it going negative. I did this for EVERY > emulated instruction. > Althought for 32 bit processors could be better a per-block timing approach. Which, as it was discussed, is also possible with your approach. > I never could find a good way to keep the flags in the x86 registers, > especially considering that a LOT of them don't match up to the target > CPU. Fortunately, the computation of flags was usually quite simple > because I kept them in x86 format while executing, and translated them > back out to the Z80 afterwards. I can't find the logfile output - anyone > have the sample I posted a long time ago? > That only would work with block based translations (basic blocks, extended or lazy basic blocks, full functions! - FX!32 -). I think the log file output was sent to the old MUL8 list. I must have it somewhere, I think in the 'dynarec.zip' file with the source code for DRMZ80 there is also an example. I don't have it at hand (I'm at work), but if someone is interested I could forward it this afternoon. > I'm remote, so my ability to answer email as I normally do is quite > limited, but it's a great topic and I'd love to help out any way I can. > That is limited? ;) How it would be unlimited then :). The bugs about ARM is quite large. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 22 23:40:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA62242 for dynarec-outgoing; Wed, 22 Nov 2000 23:40:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec From: "M.I.K.e" Message-ID: <000376b9bb036f4f_mailit@mail.dynarec.com> References: Date: Thu, 23 Nov 2000 08:36:48 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> I was more thinking about how I'll access the emulated memory map from >> recompiled code - I don't want the hassle of sticking the whole MMU >> emulation in the code so would want to call back out to a C++ method in the >> MMU object. Any ideas? >Hm.... is your memory map "fixed", or will it change? If it's semi-fixed, >you can create handler regions. Just something quick from my brain, which I hope is at least partially right. I'll check the PRMs later today: The MEMC is some kind of hardware page table. So in contrast to a normal MMU you don't have a TLB but the complete page table entries. This also means that your memory is limited (4 megs per MEMC) and the the page size increases with the RAM installed, eg. 32k for the maximum of 4 megs. If you want to have more than 4 megs you not only have to install the additional RAM but also an additional MEMC. The table and selection function for the MEMC emulation should be quite easily defined at the start of the emulator since nothing will change during runtime. >-->Neil -- M.I.K.e This Fortue Examined By INSPECTOR NO. 2-14 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 23 06:13:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA62793 for dynarec-outgoing; Thu, 23 Nov 2000 06:12:25 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: julesb@btinternet.com To: dynarec@dynarec.com Date: Thu, 23 Nov 2000 14:21:34 GMT Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Message-id: <3a1d27ee.36b9.0@btinternet.com> X-User-Info: 137.222.103.158 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The table and selection function for the MEMC emulation should be quite >easily defined at the start of the emulator since nothing will change during >runtime. Surely starting, stopping, growing, shrinking and swapping between applications in the desktop will alter the page mapping? Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 23 08:40:08 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA62909 for dynarec-outgoing; Thu, 23 Nov 2000 08:39:53 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007f01c0556d$75e4d0a0$01c93c9f@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Thu, 23 Nov 2000 16:47:16 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > That, and also looking through the mail archives. Unfortunately, there's > no documentation on it - haven't had time, and I wanted to test the > theories before I actually wrote them up. ;-) The best documentation is > the archives, simply because it was discussed ad infinitum along with > pros/cons. Hopefully it'll be helpful to you in your designs. If you have > any other questions, please post them here. We'll be happy to discuss them > I'm sure! Thanks for the archives, I'm reading through it now.... And the ARM stuff too, I'll dig it up and see if I can put them on the spot at interview. > Almost all of it would scale to any size of CPU. The only thing that > wouldn't translate, at least directly the way that I did it, is the > transmap. In fact, I can't think of anything that really wouldn't, but the > only thing that my recompiler wouldn't solve is self modifying code (it'd > be dawg slow). I may be able to get round self-modding code in that anything RISCOS (ARM) based since circa-96 hashad to embed an OS_SynchroniseCodeAreas call in it to sync the data and instruction caches. A lot of old games that had this issue have since been patched (I hope). > I solved it by subtracting the current instruction's time from an ever > decreasing counter, and jumping on it going negative. I did this for EVERY > emulated instruction. It's probably the only way. > Um... that's what I wound up doing. ;-) It's actually quite effective and > very fast. DRMZ80 Was broken up into a source and target layer. The source > layer (in this case a Z80) would pass hints to the target layer. The > source layer would analyze the blocks of Z80 code and figure out whether > or not a given instruction cover would need to "restore" flags or even > calculate them. I sort of see what you're getting at: avoid the hassle of generating a complex and inevitably-flawed IR when all you really want is the source instruction and data from analysis of the surrounding source instructions to generate the target code. > I never could find a good way to keep the flags in the x86 registers, > especially considering that a LOT of them don't match up to the target > CPU. Fortunately, the computation of flags was usually quite simple > because I kept them in x86 format while executing, and translated them > back out to the Z80 afterwards. I can't find the logfile output - anyone > have the sample I posted a long time ago? I'd be interested to see it, I guess it's in the archive somewhere. > I'm remote, so my ability to answer email as I normally do is quite > limited, but it's a great topic and I'd love to help out any way I can. Great. In the mean time I have to get a progress report done by December 7th and would like to have done some proper work. Can anyone see any big holes in me developing an interpreting ARM emu (to be later used for despatching the recompiler) or am I likely to make things harder for myself if I haven't thoroughly thought through/designed the dynarec part before hand? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 23 13:44:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA63139 for dynarec-outgoing; Thu, 23 Nov 2000 13:44:38 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Food Fight From: "M.I.K.e" Message-ID: <000376c59dd12419_mailit@mail.dynarec.com> Date: Thu, 23 Nov 2000 22:47:38 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Strange coincidence: The current game of the week on ClassicGaming is "Food Fight": http://www.classicgaming.com/rotw/foodfight.shtml -- M.I.K.e After an instrument has been assembled, extra components will be found on the bench. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 23 13:54:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA63156 for dynarec-outgoing; Thu, 23 Nov 2000 13:54:01 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 23 Nov 00 17:03:01 -0500 Message-Id: <3.0.5.32.20001123135845.0082fb20@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 23 Nov 2000 13:58:45 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Food Fight In-Reply-To: <000376c59dd12419_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 10:47 PM 11/23/2000 +0100, you wrote: >Strange coincidence: >The current game of the week on ClassicGaming is "Food Fight": >http://www.classicgaming.com/rotw/foodfight.shtml On the topic of Food Fight, does this game use any sort of encryption/protection? I couldn't find the ROM that contains the vector table. I wanted to load it up in my 68K debugger once. And I might as well squeeze this in: Genital68K has been released, http://trzy.overclocked.org/gen68k I'm sure many of you will flip at the ghastly nature of the emitter (very inefficient -- but at least it emits the source files quickly) and the lack of/poor optimizations in the emitted code. But it still performs as fast, if not slightly faster than, Starscream. It has a few less bugs too, I've been able to get Toe Jam & Earl 2 and Zool to work flawlessly with Genital68K. I also uploaded a cool debugger package for use with Genital68K. It can be configured as a standalone debugger, or included in programs that use Genital68K. I went to hell and back trying to debug this thing on FreeBSD. I had an array called write[] but FreeBSD has a syscall called write() and I guess my older version of gcc (v2.7.X.X) didn't realize this and happily compiled the program resulting in crashes every time I tried to use printf() :/ Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 23 14:33:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA63196 for dynarec-outgoing; Thu, 23 Nov 2000 14:33:07 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 23 Nov 2000 14:49:21 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight In-Reply-To: <3.0.5.32.20001123135845.0082fb20@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > At 10:47 PM 11/23/2000 +0100, you wrote: > >Strange coincidence: > >The current game of the week on ClassicGaming is "Food Fight": > >http://www.classicgaming.com/rotw/foodfight.shtml > On the topic of Food Fight, does this game use any sort of > encryption/protection? I couldn't find the ROM that contains the vector > table. I wanted to load it up in my 68K debugger once. It doesn't use any encryption. > Genital68K has been released, http://trzy.overclocked.org/gen68k > I'm sure many of you will flip at the ghastly nature of the emitter (very > inefficient -- but at least it emits the source files quickly) and the lack > of/poor optimizations in the emitted code. But it still performs as fast, > if not slightly faster than, Starscream. It has a few less bugs too, I've > been able to get Toe Jam & Earl 2 and Zool to work flawlessly with Genital68K. Cool! Looking forward to checking it out when I get back home. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 23 14:36:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA63209 for dynarec-outgoing; Thu, 23 Nov 2000 14:36:41 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 23 Nov 2000 14:52:55 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: <007f01c0556d$75e4d0a0$01c93c9f@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > to sync the data and instruction caches. A lot of old games that had this > issue have since been patched (I hope). And depending upon how much it self modifies, you may wind up thrashing so much that an emulator would be a better approach. > > I solved it by subtracting the current instruction's time from an ever > > decreasing counter, and jumping on it going negative. I did this for EVERY > > emulated instruction. > It's probably the only way. If you want to keep accurate timing it certainly is. For each cover, you can pass in whether or not it should generate timing code. So if you hit a "safe" block of code, then you can, after a few instructions, just subtract the addition of all those instructions. It's option, and controlled by the source layer. > > Um... that's what I wound up doing. ;-) It's actually quite effective and > > very fast. DRMZ80 Was broken up into a source and target layer. The source > > layer (in this case a Z80) would pass hints to the target layer. The > I sort of see what you're getting at: avoid the hassle of generating a > complex and inevitably-flawed IR when all you really want is the source > instruction and data from analysis of the surrounding source instructions to > generate the target code. Correct - and also there's things like tricky flag calculations that you cannot take advantage of if you have an IR. > > because I kept them in x86 format while executing, and translated them > > back out to the Z80 afterwards. I can't find the logfile output - anyone > > have the sample I posted a long time ago? > I'd be interested to see it, I guess it's in the archive somewhere. I dug for it and can't find it - hope you do. It's on the mailing list I know for a fact. > In the mean time I have to get a progress report done by December 7th and > would like to have done some proper work. Can anyone see any big holes in me > developing an interpreting ARM emu (to be later used for despatching the > recompiler) or am I likely to make things harder for myself if I haven't > thoroughly thought through/designed the dynarec part before hand? Well, the interpreting emulation and dynamic recompilation are two separate projects, so I hope you're not considering "migrating" from one to the other later on, otherwise you'll be in for a really big shock. But there is value in having a working emulation to work from when building your dynarec. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 23 23:44:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA63596 for dynarec-outgoing; Thu, 23 Nov 2000 23:44:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200011240755.IAA28923@pons.ac.upc.es> Subject: Re: DYNAREC: Food Fight In-Reply-To: <3.0.5.32.20001123135845.0082fb20@mailandnews.com> "from Bart at Nov 23, 2000 01:58:45 pm" To: dynarec@dynarec.com Date: Fri, 24 Nov 2000 08:55:43 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > And I might as well squeeze this in: > > Genital68K has been released, http://trzy.overclocked.org/gen68k > Just a quick look up here at work, but it seems very nice. Very clean code, a lot of comments and very easy to read. :) I will try to take a more careful look up. A great work! > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 07:09:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA64148 for dynarec-outgoing; Fri, 24 Nov 2000 07:09:45 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec From: "M.I.K.e" Message-ID: <000376d3bb816835_mailit@mail.dynarec.com> References: Date: Fri, 24 Nov 2000 15:38:06 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> "[...] Although there is quite a lot of noise on the group [...] " >> Too true :)). Everyone subscribed to the list with the some opinion must >>have feel well with the last weeks silence ;). >Part of that creates a "home" style of feeling for the group. I like you >guys a lot! Indeed, there is a time for work and there is a time for party and we have both on the list ;-) >-->Neil -- M.I.K.e For every credibility gap, there is a gullibility fill. -- R. Clopton --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 07:09:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA64137 for dynarec-outgoing; Fri, 24 Nov 2000 07:09:20 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: MEMC From: "M.I.K.e" Message-ID: <000376d455ee3636_mailit@mail.dynarec.com> References: <000376b9bb036f4f_mailit@mail.dynarec.com> Date: Fri, 24 Nov 2000 16:21:16 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Just something quick from my brain, which I hope is at least partially right. >I'll check the PRMs later today: Ok, no the more details from the RISC OS 3 Programmer's Reference Manual Volume 1: MEMC maps the physical memory into a 16 Mbyte slot, the base of which is at 32 Mbytes. RISC OS does not address this slot directly, though; instead it addresses another 32 Mbyte logical slot within the 64 Mbytes logical address space supported by the ARM's 26-bit address bus. Each page of the slot that RISC OS addresses can be: * unmapped * mapped onto one page of the physical memory * mapped onto many pages of the physical memory RISC OS can only read and write from pages that have a one-to-one mapping. One-to-many mapping is used to 'hide' pages of applications away when several applications are sharing the same address (&8000 upwards) under the Desktop. These pages are, of course, not held at &8000. The computer's physical memory is divided into physical pages. Likewise, the 32 Mbytes of logical space is divided into logical pages of the same size. MEMC keeps track of which logical page corresponds to which physical page, mapping the 26 bit logical addresses from the ARM's address bus to physical addresses within the much smaller size of RAM. MEMC has 128 pages to use for its memory mapping. Each page has its own descriptor entry held in content-addressable memory (or CAM). This simple structure allows the translation (of logical address to physical address) to be performed quickly enough that it does not increase memory access time. In general, all 128 pages are used to map the RAM. If MEMC does use all 128 pages, then: * as the size of the computer's physical memory increases, the size of each page increases - a larger amount of physical memory is being split into the same number of pages * as the size of each page increases, the number of logical pages decreases - the same amount of logical memory (32 Mbytes) is being split into larger pages. MEMC addresses a maximum of 4 Mbytes of memory. Machines with more than 4 Mbytes fitted have an extra MEMC chip slaved to the master MEMC chip for each additional 4 Mbytes fitted, so the page sizes are the same as for a 4 Mbyte machine. I hope this clears things up a bit... -- M.I.K.e "This is lemma 1.1. We start a new chapter so the numbers all go back to one." -- Prof. Seager, C&O 351 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 07:09:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA64144 for dynarec-outgoing; Fri, 24 Nov 2000 07:09:31 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec From: "M.I.K.e" Message-ID: <000376d3aea72bed_mailit@mail.dynarec.com> References: <00f601c0548e$d0413f00$01c93c9f@daves> <000901c054b8$2475f600$4f42ae3e@hal9000> Date: Fri, 24 Nov 2000 15:34:30 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >But it isn't the first time we found you here ;). And I think you know >Mike pretty well ;). As well as you can know someone just via email... >ARM seems to be very popular in UK ... What do you expect from the only UK designed processor? BTW, there are more ARM cores sold than MIPS and SuperH processors together! >> Anything else I should know? Maybe that atempting to write a dynarec will likely harm your sanity... Proof: Just take a look at the members of this list ;-) >Victor -- M.I.K.e Going to church does not make a person religious, nor does going to school make a person educated, any more than going to a garage makes a person a car. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 07:09:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA64163 for dynarec-outgoing; Fri, 24 Nov 2000 07:09:52 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec From: "M.I.K.e" Message-ID: <000376d3de08d451_mailit@mail.dynarec.com> References: Date: Fri, 24 Nov 2000 15:47:45 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >If your ultimate goal is speed, having a IR layer is going to slow it down >significantly. We've proven that already with prior runs. DRMZ80 Went to >direct cover translation, which is best since you can do all sorts of >trickery to get the target layer to generate super optimal code. I wouldn't call it direct translation what DRMZ80 did. Direct translation would be something like this: switch (opcode) case opcodeX: emit_target_code(0xXXXX); ... We all know that this is a very bad thing to do, although the common method in many current dyna(w)rec(k)s... You didn't use an IR in the traditional compiler sense, but I think you did some buffering of the decoded instructions, that way decoding a whole block and handing the decoded block to the translator. IMO this is the best compromise, because it's very fast and you're able to do source code specific peephole optimizations during the translation process. I'd call that some kind of "intermediate representation" as well, but we might use something like "decode buffering" if you want a clearer distinction. >-->Neil -- M.I.K.e "I found out why my car was humming. It had forgotten the words." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 07:09:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA64171 for dynarec-outgoing; Fri, 24 Nov 2000 07:09:57 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec From: "M.I.K.e" Message-ID: <000376d45f2847dc_mailit@mail.dynarec.com> References: <3a1d27ee.36b9.0@btinternet.com> Date: Fri, 24 Nov 2000 16:23:51 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [MEMC] >Surely starting, stopping, growing, shrinking and swapping >between applications in the desktop will alter the page mapping? Yes, but only for the pages used by the application in question, because MEMC simply has one entry for each physical page and remember which logical address and obviously address space ID (although that term isn't mentioned in the PRMs) is associated with that physical address. >Jules -- M.I.K.e The past always looks better than it was. It's only pleasant because it isn't here. -- Finley Peter Dunne (Mr. Dooley) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 07:21:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA64191 for dynarec-outgoing; Fri, 24 Nov 2000 07:21:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00cb01c0562b$a2b92900$01c93c9f@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Fri, 24 Nov 2000 15:31:36 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > And depending upon how much it self modifies, you may wind up thrashing so > much that an emulator would be a better approach. True, self modifying code in these cases will almost always be handled by the interpreting emulator, it's program initialisation stuff mostly anyway so little need for performance gain. > If you want to keep accurate timing it certainly is. For each cover, you > can pass in whether or not it should generate timing code. So if you hit a > "safe" block of code, then you can, after a few instructions, just > subtract the addition of all those instructions. It's option, and > controlled by the source layer. My biggest concern about your way of doing it is that it does leave a LOT of the work to the code generation side of the dynarec where this is my knowledge is weakest - I don't know too much about x86 and will probably be learning on the job (not the best way, I know). Then again I guess your way Vs IR characterises the differences between trying to do dynarec: machine code (with nasty shifting/flag idiosyncracies) -> machine code compiler: high level language (with large constructs all relatively-well defined) -> machine code > Correct - and also there's things like tricky flag calculations that you > cannot take advantage of if you have an IR. My other big concern is that without an IR it might not be so much of a project, although your way would give me a good contrast to ARMphetamine to discuss and if your ideas are as provovative as you claim (in archives), it would be a very valuable contrast. > I dug for it and can't find it - hope you do. It's on the mailing list I > know for a fact. I'll keep reading. > Well, the interpreting emulation and dynamic recompilation are two > separate projects, so I hope you're not considering "migrating" from one > to the other later on, otherwise you'll be in for a really big > shock. But there is value in having a working emulation to work from when > building your dynarec. I do need to practice me ARM emulation to make sure I understand everything fully and to test interfaces to the system emulation, but am alarmed at what you say about it not being worthwhile in what I was hoping for as an evolution to the dynarec. I was thinking of some kind fof profiling on branches to identify when a block of code has been executed the second time and then recompile it, why can the interpreter not be used for this? I'm also starkly aware that handling jump tables that directly manipulate the value of the PC with another registers value will be a bitch to do in recompiled code and so may well need an interpreting emulator to handle. I don't see why it's not helpful, though would be glad if you could tell me. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 07:36:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA64211 for dynarec-outgoing; Fri, 24 Nov 2000 07:36:27 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <010001c0562d$cbddc640$01c93c9f@daves> From: "David Sharp" To: References: <00f601c0548e$d0413f00$01c93c9f@daves> <000901c054b8$2475f600$4f42ae3e@hal9000> <000376d3aea72bed_mailit@mail.dynarec.com> Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Fri, 24 Nov 2000 15:47:04 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > As well as you can know someone just via email... It's been many a long year... ;o) > >ARM seems to be very popular in UK ... > What do you expect from the only UK designed processor? > BTW, there are more ARM cores sold than MIPS and SuperH processors together! They also benefitted from every hobbying schoolkid in the UK (using Acorns, 1987 to ~95) having to use ARM assembly to get any performance as it patched nicely into the BASIC interpreter which was free and it's a lovely assembly language to work with. > Maybe that atempting to write a dynarec will likely harm your sanity... > Proof: Just take a look at the members of this list ;-) I have a lot of moments when I get real scared and can't sleep for a few hours panicking about how hard this project is going to be... NB's idea does have appeal and would allow more work on dynarec-specific optimisations and not compiler stuff and does sound easier! To this end, if people feel up to it and so I can start considering the relative merits of working with NB's/Julian's ideas, I'd like a quick list of dynarec-specific optimisations that can be made (can include the standard compiler stuff) no need for too much description as I'll ask if I don't understand (here's a first few off the top of my head, I know some are obvious): 1) Redundant flag calculation removal - ARM code specifies whether flags should be set but there is probably still some redundancy. 2) Grouping conditional execution - ARM code might have several instructions all conditionally executing with the same condition which must be brought under the same comparison/branch in x86 (Mike's idea). 3) Emulated register allocation - so that emulated registers aren't unnecessarily fetched from memory each time if used in consecutive instructions. 4) Storing emulated PSR flags in native flags as much as possible. keep em coming... Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 10:34:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA64352 for dynarec-outgoing; Fri, 24 Nov 2000 10:34:31 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008401c05646$dfefad60$c045ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <00f601c0548e$d0413f00$01c93c9f@daves> <000901c054b8$2475f600$4f42ae3e@hal9000> <000376d3aea72bed_mailit@mail.dynarec.com> Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Fri, 24 Nov 2000 19:22:50 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >But it isn't the first time we found you here ;). And I think you know > >Mike pretty well ;). > > As well as you can know someone just via email... > Perhaps someday with cheap teletransportation ... ;) > >> Anything else I should know? > > Maybe that atempting to write a dynarec will likely harm your sanity... > Proof: Just take a look at the members of this list ;-) > And even more, that people has become mad just THINKING about dynarec ;). I haven't even written any. So be warned :))). > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 11:04:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA64386 for dynarec-outgoing; Fri, 24 Nov 2000 11:04:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 24 Nov 00 14:13:51 -0500 Message-Id: <3.0.5.32.20001124110931.00832540@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 24 Nov 2000 11:09:31 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Food Fight In-Reply-To: <200011240755.IAA28923@pons.ac.upc.es> References: <3.0.5.32.20001123135845.0082fb20@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Genital68K has been released, http://trzy.overclocked.org/gen68k >> >Just a quick look up here at work, but it seems very nice. >Very clean code, a lot of comments and very easy to read. :) >I will try to take a more careful look up. Cool, thanks :) Hopefully someone will decide to use it one day ;) One cool thing I wrote while developing Genital68K, it was Charles MacDonald's idea, was a debugger that used both Genital68K and Starscream and would run code side by side and detect any differences in the processor context and bring them to my attention. This helped squash a lot of bugs early on (it didn't help much with the super obscure bugs, I had to rely on a little bit of luck and a lot of cursing to find those ;)) Anyhow, I was thinking that it could be converted to be used with the DR68K project. Genital68K vs. DR68K debugger, or better yet: MAME's Musashi 68K emulator vs. DR68K. This could help squash a lot of bugs. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 11:27:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA64413 for dynarec-outgoing; Fri, 24 Nov 2000 11:27:02 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009d01c0564e$2b17ed00$c045ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <00cb01c0562b$a2b92900$01c93c9f@daves> Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Fri, 24 Nov 2000 20:32:36 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > And depending upon how much it self modifies, you may wind up thrashing so > > much that an emulator would be a better approach. > > True, self modifying code in these cases will almost always be handled by > the interpreting emulator, it's program initialisation stuff mostly anyway > so little need for performance gain. > I wonder if there isn't just a way to support self-modifying code just with the dynarec. Perhaps it is true that using a mixed interpreter with a dynarec can be the best solution (in fact it is the more direct one, the first everyone thinks about) but I have some bad feelings about mixing two engines. Self-modifying code (but some patological cases just for killing us worring about them) doesn't necesarily have to be very frequent in time. I don't know the usual practices with self-modifying code but I'm not sure every iteration in a self-modifying loop is really self-modifying itself. If that is true for a large number of cases a very fast (perhaps with any attempt of optimization) dynarec could still work, perhaps it could be implemented using the usual dynarec engine but with an option for ultrafast recompilation. And I still have in mind that crazy idea I got many months ago about recompiling self-modifying code as self-modifying code itself ;). Althought I have to admit that in case it would work it would be more a collection of 'tricks' than anything. The problem (or in any case the problem I have) is that I don't really know much about self-modifying code, but perhaps some easy quick ideas, and a bit of reading about 'real' dynamic recompilation (just search in an universitary level library or web searcher for that topic and you will see what you get, mainly dccg and familiy ;). It could be worth, first of trying to do anything really serious but just patching about the problem of self-modifying code, to study what, how and where is used self-modifying code in our target systems (old home computers, and perhaps some rarely consoles or arcade systems). > My biggest concern about your way of doing it is that it does leave a LOT of > the work to the code generation side of the dynarec where this is my > knowledge is weakest - I don't know too much about x86 and will probably be > learning on the job (not the best way, I know). Then again I guess your way > Vs IR characterises the differences between trying to do > dynarec: machine code (with nasty shifting/flag idiosyncracies) -> machine > code > compiler: high level language (with large constructs all relatively-well > defined) -> machine code > You get in the point. I think many mistakes and problems I personally have about dynarec is that, perhaps influenced by universitary works, I often find me thoughting about the dynarec problem as it was a compilation problem. When in fact it isn't. A good study about the differences between usual compilation and machine language translation could be worth (perhaps there is an article about it hiding somewhere on those university level magazines). > > Correct - and also there's things like tricky flag calculations that you > > cannot take advantage of if you have an IR. > > My other big concern is that without an IR it might not be so much of a > project, although your way would give me a good contrast to ARMphetamine to > discuss and if your ideas are as provovative as you claim (in archives), it > would be a very valuable contrast. > Being a bit serious (or perhaps no serious at all ;), I think the real problem for an universitary project about using or not an IR is about what kind of professors will evaluate your project ;). Using an IR makes the worth if you want to be absolutely sure about getting a good result easily. Perhaps is a problem but I think university people likes good old solutions rather than new ones (but I could be in a mistake ;) rather than new wild ideas (more if they come for an 'green' student ;)) If you don't use it you are having more risks. After saying that I have to admit that Neil's idea has a lot of interesting possibilities if you are able to present it in the propper way. Just as an example Generator and ARMphetamine are a bit too 'artificious' about the way they implement things. Someone making an emulator just for fun (althought doing a very good work, as for example Neil) wouldn't do many things they do. And in fact is the general feeling I get after taking a look to both of them, it isn't so difficult to see they come from a university project. I'm not saying they are bad (compared with what I'm doing they are really good;), but they are different, perhaps with a different purpose. I'm not sure if I really believe all I have written here ;)). I'm feeling paranoic. In any case after I decided my project would be about emulation (in general) I also decided to change to 'kamikaze' mode (I really don't care much about what puntuation I would get ... if I pass of course ;). In fact one of the more important reasons I decided for starting this project was because I wanted to push myself into emulation, because I wasted many years without really doing nothing. I get into the emuscene with the early Marat emulators, FMSX and VGB (more than five years ago) and with a good knowledge about x86 asm and the things I learnt in university I was able to understand many things about emulation years ago :P. I use to be too lazy sometimes :(. BTW the other main reason was I didn't want to do the classic boring last year project ... Or perhaps just to say 'I'm different', hehe! :) [Mind note: enough personal talk, they don't care about it ;) Or, do they? ;))] > I do need to practice me ARM emulation to make sure I understand everything > fully and to test interfaces to the system emulation, but am alarmed at what > you say about it not being worthwhile in what I was hoping for as an > evolution to the dynarec. And advice from someone who has changed his project too many times: I started with the project about a Mega Drive emulator (only graphics) using my own dynarec 68K. And now I would feel that it is enough work just doing the graphics and sound for the Master System and the Space Invaders emulator full (with my CPU). Take in care the time you have, the will you have to work hard, what it is really needed for a last year project and everything else you want. I have to admit I'm guilty ;). > I was thinking of some kind fof profiling on > branches to identify when a block of code has been executed the second time > and then recompile it, why can the interpreter not be used for this? I'm > also starkly aware that handling jump tables that directly manipulate the > value of the PC with another registers value will be a bitch to do in > recompiled code and so may well need an interpreting emulator to handle. I > don't see why it's not helpful, though would be glad if you could tell me. > That is all a lot of work, perhaps I'm repeating (some of this comes from my own project director), but what is really demanded from you for a last year project (here we have a conversion from credits to worked hours, perhaps so you have). Profiling is always an interesting approach (althought not very suitable with Neil's idea), just take a look to FX!32. The two passes (interpreter-profiler with a, perhaps, more sofisticated recompiler, just as hot spots) approach can be really interesting but it is very different to the one pass approaches as Neil one is. Changing from one to the other in the middle of the project perhaps wouldn't be a good idea. Just think about what do you really want to do. About the nasty things ARM can do with the PC I don't know enough about ARM, but I fell it wouldn't be so hard to handle. Damn! I talk too much and without sense I should be doing my OWN project ;). Don't take so seriously this poor guy with crazy ideas ;). > Cheers > Dave > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 11:46:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA64437 for dynarec-outgoing; Fri, 24 Nov 2000 11:46:25 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00a301c05650$e6b3f660$c045ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <00f601c0548e$d0413f00$01c93c9f@daves> <000901c054b8$2475f600$4f42ae3e@hal9000> <000376d3aea72bed_mailit@mail.dynarec.com> <010001c0562d$cbddc640$01c93c9f@daves> Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Fri, 24 Nov 2000 20:49:57 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >ARM seems to be very popular in UK ... > > What do you expect from the only UK designed processor? > > BTW, there are more ARM cores sold than MIPS and SuperH processors > together! > > They also benefitted from every hobbying schoolkid in the UK (using Acorns, > 1987 to ~95) having to use ARM assembly to get any performance as it patched > nicely into the BASIC interpreter which was free and it's a lovely assembly > language to work with. > Here the more common was the Spectrum (Sinclair? Isn't it england perhaps?). There were a few MSX, Commodore and so on. I had a poor ZX81, perhaps that explains why I started to learn about how to program computers, it wasn't very useful for playing ;). Later it was the Amstrand 1512 (a IBM compatible PC), the Amiga and some other IBM PC compatibles (I had an Olivetti one with a Nec V20/V40, not sure). Even later the usual 286, 386 and so on PCs (mine a 486 and now a PII). Intel ruling everywhere under the sun ;). > > Maybe that atempting to write a dynarec will likely harm your sanity... > > Proof: Just take a look at the members of this list ;-) > > I have a lot of moments when I get real scared and can't sleep for a few > hours panicking about how hard this project is going to be... NB's idea does > have appeal and would allow more work on dynarec-specific optimisations and > not compiler stuff and does sound easier! > Be aware that it isn't so easy really ;). In fact if you start to try 'real' optimizations can be even harder. With the 'compiler stuff' you can very backed up with many documentation, books and professors, here you are almost alone (well, but some crazy guys in a mailing list). NB idea is cleaner, in my mind, for the kind of emulation we are doing. And funer ;). > 1) Redundant flag calculation removal - ARM code specifies whether flags > should be set but there is probably still some redundancy. > First obvious one :). > 2) Grouping conditional execution - ARM code might have several instructions > all conditionally executing with the same condition which must be brought > under the same comparison/branch in x86 (Mike's idea). > It sounds like an ARM specific optimization ... source layer optimization perhaps, NB? ;). > 3) Emulated register allocation - so that emulated registers aren't > unnecessarily fetched from memory each time if used in consecutive > instructions. > Somekind of that kind is really needed for getting good performance, but would go against per-instruction timing. In the scope of a kind of basic block (a lot of discussion about translation blocks is needed ;) approach is the first you have to try. > 4) Storing emulated PSR flags in native flags as much as possible. > I don't think so ... It's better to save/restore them fast with lahf/sahf. In a block based translation could be a bit more useful but still hard. Impossible with instruction (timing) based translation. > keep em coming... > The second obvious optimization are memory maps. All direct memory access should be hardwired to the 'real' memory address without doing any scan over it (provided that it won't change of course ...). And perhaps with a bit of wisdom some non direct memory access. Other optimizations could be translated blocks chaining (so they don't have to return to main block when they end). And many others my bad memory don't tell about now. Perhaps some of the Dynamo stuff could be useful, althought a bit difficult to try it into a limited time project. > Cheers > Dave > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 12:11:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA64467 for dynarec-outgoing; Fri, 24 Nov 2000 12:11:37 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00e101c05654$75ad30e0$c045ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20001123135845.0082fb20@mailandnews.com> <3.0.5.32.20001124110931.00832540@mailandnews.com> Subject: Re: DYNAREC: Food Fight Date: Fri, 24 Nov 2000 20:58:49 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Cool, thanks :) Hopefully someone will decide to use it one day ;) > Well, I have to start someday a MegaCD emulator, I thought in using Starscream but now I have yours ... ;). > One cool thing I wrote while developing Genital68K, it was Charles > MacDonald's idea, was a debugger that used both Genital68K and Starscream > and would run code side by side and detect any differences in the processor > context and bring them to my attention. This helped squash a lot of bugs > early on (it didn't help much with the super obscure bugs, I had to rely on > a little bit of luck and a lot of cursing to find those ;)) > Damn! I should have publiced my idea before ;). I thought many times about using this idea (I'm not sure if I talked about it here or in MUL8 about the SI tutorial). It was at first for using NB good MZ80 for testing out 8080 cores, and lately for testing my modified MZ80BS. I still want to do it but other things have kept me from having enough time. Don't talk about luck, I still don't know how I manage to find so fast some errors in MZ80BS ;). I also wanted to talk about this (in the tutorial) as a 'good' manner of testing new CPU cores of already emulated ones, provided you have a good already made core. The best would be test it with the original CPU but not everyone can mount a Z80 in an ISA and work with it ;). > Anyhow, I was thinking that it could be converted to be used with the DR68K > project. Genital68K vs. DR68K debugger, or better yet: MAME's Musashi 68K > emulator vs. DR68K. This could help squash a lot of bugs. > > I really want to start with DR68K. The debugging will be really interesting and worth of a good document about dynarec debugging. A very interesting experience. I already have some experience testing translations (my actual work). > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 12:12:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA64477 for dynarec-outgoing; Fri, 24 Nov 2000 12:12:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec From: "M.I.K.e" Message-ID: <000376d8980f99cb_mailit@mail.dynarec.com> References: <00f601c0548e$d0413f00$01c93c9f@daves> <000901c054b8$2475f600$4f42ae3e@hal9000> <000376d3aea72bed_mailit@mail.dynarec.com> <010001c0562d$cbddc640$01c93c9f@daves> Date: Fri, 24 Nov 2000 21:26:06 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> As well as you can know someone just via email... >It's been many a long year... ;o) Actually I couldn't tell how long we know each other because it's so many years! >They also benefitted from every hobbying schoolkid in the UK (using Acorns, >1987 to ~95) having to use ARM assembly to get any performance as it patched >nicely into the BASIC interpreter which was free and it's a lovely assembly >language to work with. So all former schoolkids now work for ARM ;-) >I have a lot of moments when I get real scared and can't sleep for a few >hours panicking about how hard this project is going to be... NB's idea does >have appeal and would allow more work on dynarec-specific optimisations and >not compiler stuff and does sound easier! I still think that normal compiler optimisation techinques won't work well without any control flow information and you'd need a profiler to get that. >1) Redundant flag calculation removal - ARM code specifies whether flags >should be set but there is probably still some redundancy. Indeed, although it's already quite some relief that you know that ADD doesn't modifiy any flags while ADDS does, but with a following ADC only the carry flag is needed so why should you calculate negative, zero, and overflow flags. >2) Grouping conditional execution - ARM code might have several instructions >all conditionally executing with the same condition which must be brought >under the same comparison/branch in x86 (Mike's idea). I'm still not sure if such sequences with the same predication are common enough to justify a special optimisation, but it's certainly something that should be investigated. >3) Emulated register allocation - so that emulated registers aren't >unnecessarily fetched from memory each time if used in consecutive >instructions. That depends if you see blocks as closed sequences, in which case sophisticated dynamic register allocation can be performed. But if you need a good interrupt latency and chose a more instruction based approach like NB did, you'll have to stick to static register allocation. >4) Storing emulated PSR flags in native flags as much as possible. If it's possible it would be a good idea to do so. >keep em coming... Come get some! My all time favourite when translating from RISC to CISC: Easier immediate representation! Eg.: MOV R0, #&FF000000 ; this is actually something like MOV R0, (#&FF ROR #8) ORR R0, #&00FF0000 ; MOV R0, (#&FF ROR #16) translated as: mov eax, 0xFFFF0000 If you limit your dynarec to P6 hosts then you might also try to use conditional moves, although it doesn't help much as this move only works for registers: MOVEQ R0, R1 translated as: movz eax, ebx We might come up with other ideas by taking at the examples in Furbers book, especially the section which shows how certain compiler constructs are translated. >Dave -- M.I.K.e "Irrationality is the square root of all evil" -- Douglas Hofstadter --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 12:43:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA64508 for dynarec-outgoing; Fri, 24 Nov 2000 12:43:10 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 24 Nov 00 15:52:13 -0500 Message-Id: <3.0.5.32.20001124124753.00835100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 24 Nov 2000 12:47:53 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Food Fight In-Reply-To: <00e101c05654$75ad30e0$c045ae3e@hal9000> References: <3.0.5.32.20001123135845.0082fb20@mailandnews.com> <3.0.5.32.20001124110931.00832540@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 08:58 PM 11/24/2000 +0100, you wrote: >> >> Cool, thanks :) Hopefully someone will decide to use it one day ;) >> >Well, I have to start someday a MegaCD emulator, I thought in using >Starscream but now I have yours ... ;). When you start it, let me know how things work out :) I'll be looking forward to hearing about the project! >Damn! I should have publiced my idea before ;). I thought many times about >using this idea (I'm not sure if I talked about it here or in MUL8 about the >SI tutorial). It was at first for using NB good MZ80 for testing out 8080 cores, >and lately for testing my modified MZ80BS. I still want to do it but other things >have kept me from having enough time. Don't talk about luck, I still don't >know how I manage to find so fast some errors in MZ80BS ;). I also wanted >to talk about this (in the tutorial) as a 'good' manner of testing new CPU cores >of already emulated ones, provided you have a good already made core. I think the Musashi guy actually did it first, he tried validating Musashi against Starscream. The problem with Starscream is the bug that causes the N flag to get set wrong. Starscream forgets to "rol ecx, 16" after it writes a dword, and so then when it checks for flags, it tests invalid data. This was a pain, because my debugger kept stopping every time Starscream did this -- it happens a lot. >The >best would be test it with the original CPU but not everyone can mount a >Z80 in an ISA and work with it ;). I wish I had a 68K in an ISA. I wonder if there are any cheap, 68000-based computers I could get myself, and maybe hook up to my PC and write a little debugger. It would probably be something old, like the Atari ST or what-not. >I really want to start with DR68K. The debugging will be really interesting and >worth of a good document about dynarec debugging. A very interesting experience. >I already have some experience testing translations (my actual work). It would be interesting if someone kept a detailed log of every bug and how it was discovered and fix, as well as everything that was added to DR68K. Unfortunately, these kinds of logs are difficult to maintain (IMO.) I'd also like to make some contributions to DR68K's codebase, I feel much more comfortable w/ the 68K and perhaps I could do something useful to benefit the project. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 13:01:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA64536 for dynarec-outgoing; Fri, 24 Nov 2000 13:00:58 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00f601c0565b$59e70960$c045ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <000376d3de08d451_mailit@mail.dynarec.com> Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Fri, 24 Nov 2000 22:13:10 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >If your ultimate goal is speed, having a IR layer is going to slow it down > >significantly. We've proven that already with prior runs. DRMZ80 Went to > >direct cover translation, which is best since you can do all sorts of > >trickery to get the target layer to generate super optimal code. > > I wouldn't call it direct translation what DRMZ80 did. > > Direct translation would be something like this: > > switch (opcode) > case opcodeX: emit_target_code(0xXXXX); ... > Right said. Perhaps also related with templated based translations. > We all know that this is a very bad thing to do, although the common method > in many current dyna(w)rec(k)s... > Too true. I think they need a lesson from the propper guys ;). > You didn't use an IR in the traditional compiler sense, but I think you did > some buffering of the decoded instructions, that way decoding a whole block > and handing the decoded block to the translator. IMO this is the best > compromise, because it's very fast and you're able to do source code specific > peephole optimizations during the translation process. > I'd call that some kind of "intermediate representation" as well, but we > might use something like "decode buffering" if you want a clearer > distinction. > Well, I don't enterily agree with calling it an intemediate representation. Let's overtalk a bit about IRs. From my thoughts an IR is used (in classic compilers) as an intermediate language between a high level language and an assembly machine specific language. They have many uses and so they are designed. First they can be used for a multitarget (or even multisource) compiler (one language N assembly languages), so they provide a common intermediate layer between the high level language and the N assembly languages. Second the IR is used for optimization, all the optimizations in a compiler (non machine specific) are made about the IR and over it. So it is designed thinking about optimization and to ease and help it. The compilers are also thought to be static (this means you can expend almost as many time as you want) so the IRs aren't thought for performance. And IR are later translated to a machine specific code and more optimizations are applied to this code. A dynarec, as everyone of us knows, doesn't compile but actually translates (it could be discussed if it could be a manner of doing the things that could be really called 'compiling'). Translating is different from compiling since you don't come from a high level language but from another machine language. That has specific characteristics (for example, you can have flags and other nasty problems, and there are less contextual information) and problems over compiling. In binary translation the purpose is to go from a source machine language to a target machine language. We have also the problem that we want the translation to be dynamic which means it has to be as fast as possible (and many times even faster ;). I'm pretty sure that any classic IR approach is too expensive for a dynarec, althought it could work for a static compiler. So at first there are a few alternatives: a classic IR seems to bee too slow and complex and a direct translation or a template based translation too inefficient and produces bad code. Neil's approach seems to be more useful, there isn't the overhead of an IR but there is gathering of useful information which isn't done with direct translation. I think that could be just another approach (in fact as slow as the IR, but perhaps more suited for the case), to use a VM machine language (Dixie ;), which could be used for easy (ha!) multitarget translation and support with an interpreter for machines without a specific dynarec (Ardi's). If we analyse Neil's approach we see that what he does is to store the decode information for a translation block (I won't care here about the actual size of that blocks). It also stores some hints as flag usage, links between local jumps and target instruction and so on. Then, if any, it could perform some modifications over that decoded block (somekind of source level optimizations) and it uses this decode information to build a translation to the target CPU. If you were using an IR you also have to do many of this job (first decoding the source instruction and later translate to the IR) so it is clear is faster. The question is: how about the generated code? If we were working about high level to machine level compilation it would be differente because thousand of optimizations can be applied, but with dynamic (time limited) machine to machine translation the possible optimizations are very reduced. That would make possible that with only the information in those decoded blocks (which is quite an information already) to easily perform many of those optimizations. Even more, the more advanced optimizations in dynarec are more target related that IR related (or don't even need of an IR). And it could be added profiling information to the decoded blocks. So, Neil approach goes from a source block of code to a decoded block of code (with hints) to a target block of code. An IR approach would go from a source block of code to decoded instructions (or a full block, not sure), to an IR (think about all the time wasted translating to the IR), to a target block of code. An IR is needed in high level language compilers because there is a too large way from the high level language to the machine language. But in a dynarec there isn't that long way (in fact a too complex IR is making you to perform TWO translations rather than only one). An IR is also useful (an used) for hard optimizations, but those optimizations are either too slow for a dynarec or not applicable or useful. An IR is useful for multitarget compilations (or translations) but if you are not going to use this feature it is just a waste of time. And Neil approach resuses still many code, mainly the general structure of the compiler and the source layer (decode layer), so only the target layer should be reimplemented. And that is quite a good idea because there is where the real good optimizations can be done. With an IR you still have to rebuild the target layer (perhaps a someway more simplified than with Neil approach but that is never sure). Sorry about being too obvious I was doing some brainstorming. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 13:15:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA64557 for dynarec-outgoing; Fri, 24 Nov 2000 13:15:19 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <011601c0565d$5de35260$c045ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20001123135845.0082fb20@mailandnews.com> <3.0.5.32.20001124110931.00832540@mailandnews.com> <3.0.5.32.20001124124753.00835100@mailandnews.com> Subject: Re: DYNAREC: Food Fight Date: Fri, 24 Nov 2000 22:27:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> > >> Cool, thanks :) Hopefully someone will decide to use it one day ;) > >> > >Well, I have to start someday a MegaCD emulator, I thought in using > >Starscream but now I have yours ... ;). > > When you start it, let me know how things work out :) I'll be looking > forward to hearing about the project! > I think you will have to wait some time still (perhaps until I finish my university project :P). If I only was able to make a guy I know to help me with that ;), but he still says it has to learn more about emulation. > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 13:16:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA64567 for dynarec-outgoing; Fri, 24 Nov 2000 13:16:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 24 Nov 2000 13:33:15 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: <000376d3de08d451_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >significantly. We've proven that already with prior runs. DRMZ80 Went to > >direct cover translation, which is best since you can do all sorts of > >trickery to get the target layer to generate super optimal code. > I wouldn't call it direct translation what DRMZ80 did. It's direct cover translation (note the addition of the word "cover"). ;-) It emits a sequence, or a cover, for each source opcode. > and handing the decoded block to the translator. IMO this is the best > compromise, because it's very fast and you're able to do source code specific > peephole optimizations during the translation process. And you wind up not having to do so much calculation or checking of the target code, either. It generates cleaner code. > I'd call that some kind of "intermediate representation" as well, but we > might use something like "decode buffering" if you want a clearer > distinction. Well, there's the source layer and the object covers. I don't see anything intermediate about it! -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 13:26:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA64582 for dynarec-outgoing; Fri, 24 Nov 2000 13:26:19 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 24 Nov 2000 13:42:47 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: <00cb01c0562b$a2b92900$01c93c9f@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > can pass in whether or not it should generate timing code. So if you hit a > > "safe" block of code, then you can, after a few instructions, just > > subtract the addition of all those instructions. It's option, and > > controlled by the source layer. > My biggest concern about your way of doing it is that it does leave a LOT of > the work to the code generation side of the dynarec where this is my > knowledge is weakest - I don't know too much about x86 and will probably be > learning on the job (not the best way, I know). Then again I guess your way > Vs IR characterises the differences between trying to do Even with an IR, you now have to know the source, the IR, and the target, so you've got even more work. Don't worry - we'd be happy to help you with x86. I've done a ton of it. > compiler: high level language (with large constructs all relatively-well > defined) -> machine code Depends on the compiler, but usually there's some sort of "intermediate" code generated, at least if only in memory. > > Correct - and also there's things like tricky flag calculations that you > > cannot take advantage of if you have an IR. > My other big concern is that without an IR it might not be so much of a > project, although your way would give me a good contrast to ARMphetamine to > discuss and if your ideas are as provovative as you claim (in archives), it > would be a very valuable contrast. On the contrary, it's aHUGE project. You'll still have just as much work to do either way. > > I dug for it and can't find it - hope you do. It's on the mailing list I > > know for a fact. > I'll keep reading. Damnit... you guys wait until I leave for vacation to start in on this discussion... I'm going to download drmz80.zip and get it compiled/running here and refresh my memory as to what I was doing. I'm also going to start typing up a dynarec document. > > to the other later on, otherwise you'll be in for a really big > > shock. But there is value in having a working emulation to work from when > > building your dynarec. > I do need to practice me ARM emulation to make sure I understand everything > fully and to test interfaces to the system emulation, but am alarmed at what > you say about it not being worthwhile in what I was hoping for as an > evolution to the dynarec. They are really two completely different projects. One does the actual "work", the other does a buch of extra glue work to emit the final piece of code. But having a regular emulator sitting around as a reference is a great idea, and will be no end of help. > I was thinking of some kind fof profiling on > branches to identify when a block of code has been executed the second time > and then recompile it, why can the interpreter not be used for this? You could use it for that, however an emulator would also emulate the behavior of the instructions themseleves. All you need is a map of what is a terminal, conditional terminal, or nonterminal, and how big each instruction is (plus any relevant timing information). > I'm > also starkly aware that handling jump tables that directly manipulate the > value of the PC with another registers value will be a bitch to do in > recompiled code and so may well need an interpreting emulator to handle. You keep what we call a transmap. It's an array that has a mapping of virtual PC to physical recompiled code. Before you think "Gee, that's a lot when you've got a 32 bit address space". Absolutely, but it's doubtful that your code will be running in the entire 4 gigabytes of address space. As an example, a typical 68K machine would have ROM from 0x000000, 0x01ffff, and maybe a ROM somewhere else. You'd keep a transmap for the 0-1ffff range, and one for the other ROM. So when you needed to know where to jump, it'd just be the transmap[Source_PC] and you've got your entry point. > I > don't see why it's not helpful, though would be glad if you could tell me. The point being is that when you create an emulator for a given CPU, you're doing all the flag calculations, etc... When you have your dynarec, all of that work (and that's the hard part) will be gutted, so you may as well start over, or better yet, create a table that indicates the instruction, how long it is, the timing, and any alternate timing (such as if the instruction takes longer depending upon the jump it takes). Take a look at the table in drmz80.c. That's all you need for a dynarec. All of the guts of doing flag calculations and actually doing the work of moving memory (which is most of the work of an emulator) is unnecessary. That all gets handled by the emitted code. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 13:29:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA64593 for dynarec-outgoing; Fri, 24 Nov 2000 13:29:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 24 Nov 2000 13:46:19 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: <010001c0562d$cbddc640$01c93c9f@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > 3) Emulated register allocation - so that emulated registers aren't > unnecessarily fetched from memory each time if used in consecutive > instructions. In the x86 world, sinc there are so few registers, I'd recommend picking 3-4 ARM registers and locking them down. If you attempt the register "allocation" and "deallocation", you'll find yourself spending more time trying to figure out what registers you should use (or it's even worse when you have one block with one allocation scheme jumping in to another block with another allocation scheme) than it's worth. Besides, most programs wind up spending more time using a specific grouping of registers than the others. Of course, having them configurable as to which are cached is very useful, but the actual act of trying to swap one in and out is a waste of time. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 13:31:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA64607 for dynarec-outgoing; Fri, 24 Nov 2000 13:31:58 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 24 Nov 2000 13:48:26 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight In-Reply-To: <3.0.5.32.20001124110931.00832540@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Just a quick look up here at work, but it seems very nice. > >Very clean code, a lot of comments and very easy to read. :) > >I will try to take a more careful look up. > Cool, thanks :) Hopefully someone will decide to use it one day ;) > > MacDonald's idea, was a debugger that used both Genital68K and Starscream > and would run code side by side and detect any differences in the processor > context and bring them to my attention. This helped squash a lot of bugs > early on (it didn't help much with the super obscure bugs, I had to rely on > a little bit of luck and a lot of cursing to find those ;)) This certainly isn't Charles MacDonald's idea. I've been doing this since 1996 with many ofmy cores, as have many other authors. Pouring over pages and pages of differences is most fun! But as you mention above, it's only useful until you get rid of all the simple bugs. The obscure ones may take hours to generate an appropriate diff file. > Anyhow, I was thinking that it could be converted to be used with the DR68K > project. Genital68K vs. DR68K debugger, or better yet: MAME's Musashi 68K > emulator vs. DR68K. This could help squash a lot of bugs. MAME Is a dirty word on this list. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 13:35:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA64621 for dynarec-outgoing; Fri, 24 Nov 2000 13:35:28 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 24 Nov 2000 13:51:56 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight In-Reply-To: <3.0.5.32.20001124124753.00835100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >best would be test it with the original CPU but not everyone can mount a > >Z80 in an ISA and work with it ;). > I wish I had a 68K in an ISA. I wonder if there are any cheap, 68000-based > computers I could get myself, and maybe hook up to my PC and write a little > debugger. It would probably be something old, like the Atari ST or what-not. Design a piece of hardware that fits on an ISA or PCI board. ;-) I'm thinking about making one, actually. It'd surely be useful in this process. > >I really want to start with DR68K. The debugging will be really > interesting and > >worth of a good document about dynarec debugging. A very interesting > experience. > >I already have some experience testing translations (my actual work). > It would be interesting if someone kept a detailed log of every bug and how > it was discovered and fix, as well as everything that was added to DR68K. > Unfortunately, these kinds of logs are difficult to maintain (IMO.) > > I'd also like to make some contributions to DR68K's codebase, I feel much > more comfortable w/ the 68K and perhaps I could do something useful to > benefit the project. Once I get the core code emitting covers, the "real" work will be filling in the cover routines! And I'm surewe can break that up quite nicely, but for now it's kind of a one man job. I'll have to refocus on this. You guys are getting me interested in it again! -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 21:52:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA64995 for dynarec-outgoing; Fri, 24 Nov 2000 21:52:37 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 25 Nov 00 01:01:42 -0500 Message-Id: <3.0.5.32.20001124215648.0083e100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 24 Nov 2000 21:56:48 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Food Fight In-Reply-To: References: <3.0.5.32.20001124124753.00835100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 01:51 PM 11/24/2000 -0800, you wrote: >> >best would be test it with the original CPU but not everyone can mount a >> >Z80 in an ISA and work with it ;). >> I wish I had a 68K in an ISA. I wonder if there are any cheap, 68000-based >> computers I could get myself, and maybe hook up to my PC and write a little >> debugger. It would probably be something old, like the Atari ST or what-not. > >Design a piece of hardware that fits on an ISA or PCI board. ;-) I'm >thinking about making one, actually. It'd surely be useful in this >process. Easier said than done. I'm no EE person. My idea of an 68K ISA board would be "mounting" a 68K on my sound card with Elmer's Glue ;) >Once I get the core code emitting covers, the "real" work will be filling >in the cover routines! And I'm surewe can break that up quite nicely, but >for now it's kind of a one man job. I'll have to refocus on this. You guys >are getting me interested in it again! Cool, sounds like a plan. BTW, will it be a 68000 emulator or will it support 68010, 68020, etc? I'm guessing it will start with just 68000 in mind, but what's in store for the future if it works out great? It sounds like this project would be very suitable for emulating the higher end 680x0 chips as well as the plain vanilla 68000. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 24 22:36:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA65037 for dynarec-outgoing; Fri, 24 Nov 2000 22:36:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 24 Nov 2000 22:53:11 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight In-Reply-To: <3.0.5.32.20001124215648.0083e100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Design a piece of hardware that fits on an ISA or PCI board. ;-) I'm > >thinking about making one, actually. It'd surely be useful in this > >process. > Easier said than done. I'm no EE person. My idea of an 68K ISA board would > be "mounting" a 68K on my sound card with Elmer's Glue ;) Hehehehe. Or Super Glue. ;-) It's actually not too tough. Just some glue logic, RAM, and a 68K. Quite easy to do. > >in the cover routines! And I'm surewe can break that up quite nicely, but > >for now it's kind of a one man job. I'll have to refocus on this. You guys > >are getting me interested in it again! > Cool, sounds like a plan. BTW, will it be a 68000 emulator or will it > support 68010, 68020, etc? It's a 68K recompiler and it'll support the 68K to start with. 010, and 020 support? Perhaps in the future. If done right, it'll be an infrastructure that is easily extendable. > I'm guessing it will start with just 68000 in > mind, but what's in store for the future if it works out great? It sounds > like this project would be very suitable for emulating the higher end 680x0 > chips as well as the plain vanilla 68000. Oh yeah. And all kinds of other CPUs, too. Were you on the list when we went crazy creating the template files for the various types of CPUs? -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Nov 25 02:33:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA65397 for dynarec-outgoing; Sat, 25 Nov 2000 02:33:14 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <013801c056cd$07a34980$06ac2ac0@DEMON.CO.UK> From: "Graeme Barnes" To: References: Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Sat, 25 Nov 2000 10:46:55 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6600 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6600 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [Third time I've tried to post this. Eventually I'll find the email address I subscribed with...] Going back to MMU (MEMC) support, I think it should be possible to write a vxd pager to provide all the memory handling, reducing the code that needs to be generated to access the memory map and consequently speeding up the emulator. Page faults would need to be indicated to the emulator somehow - either as flags or handled via an exception/vm handler. As all I/O is memory mapped, I guess I/O would have to be treated as an exception and performed via the vm handler again removing this concern from the ARM emulator. This would leave the ARM to read/write to a flat area of memory and test for page faults as required. It may even be possible to write a generic vxd (or a set of vxd's - one for Win98/NT/2000) to do this for any emulator that uses pages in multiples of 4k. Implementation is left as an exercise for the reader - I've had a read through the win98 ddk documentation and whilst the concepts are straightforward I haven't got a clue where to start! Cheers, Graeme Author of RedSquirrel Archimedes Emulator (www.redsquirrel.fsnet.co.uk) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Nov 25 02:50:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA65420 for dynarec-outgoing; Sat, 25 Nov 2000 02:50:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007f01c056cf$41fd1d20$d241ae3e@hal9000> From: "Victor Moya del Barrio \(DYNAREC\)" To: References: <013801c056cd$07a34980$06ac2ac0@DEMON.CO.UK> Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Sat, 25 Nov 2000 12:02:50 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > It may even be possible to write a generic vxd (or a set of vxd's - one for > Win98/NT/2000) to do this for any emulator that uses pages in multiples of > 4k. > That was discussed some weeks ago. For 2000 seems to be an easier solution using a new set of memory functions. We were talking about building a driver but I think we are all a bit busy right now. From what I have read in the ddk documentation I think it could be possible but I'm not absolutely sure how. I found some interesting ddk functions and some info about the Window pagers but I didn't continue the investigation because MZ80BS started to work properly. > Graeme > Author of RedSquirrel Archimedes Emulator (www.redsquirrel.fsnet.co.uk) > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Nov 25 07:30:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA67709 for dynarec-outgoing; Sat, 25 Nov 2000 07:29:27 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008201c056f5$fdb2bea0$01c93c9f@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec Date: Sat, 25 Nov 2000 15:40:07 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Even with an IR, you now have to know the source, the IR, and the target, > so you've got even more work. Don't worry - we'd be happy to help you with > x86. I've done a ton of it. Thanks. I've got the ARMphetamine appendix which gives a rough guide to ARM instructions and their relevant x86 counterparts but will need criticism of my work as I go along. > On the contrary, it's aHUGE project. You'll still have just as much work > to do either way. Oh dear... > Damnit... you guys wait until I leave for vacation to start in on this > discussion... I'm going to download drmz80.zip and get it compiled/running > here and refresh my memory as to what I was doing. I'm also going to start > typing up a dynarec document. That would be great Neil. I'm looking forward to seeing it. > They are really two completely different projects. One does the actual > "work", the other does a buch of extra glue work to emit the final piece > of code. But having a regular emulator sitting around as a reference is a > great idea, and will be no end of help. Ok, thanks for the advice, work will continue on the interpreter in the meantime until I make more important decisions. > You could use it for that, however an emulator would also emulate the > behavior of the instructions themseleves. All you need is a map of what is > a terminal, conditional terminal, or nonterminal, and how big each > instruction is (plus any relevant timing information). I guess so. > You keep what we call a transmap. It's an array that has a mapping of > virtual PC to physical recompiled code. Before you think "Gee, that's a > lot when you've got a 32 bit address space". Absolutely, but it's doubtful > that your code will be running in the entire 4 gigabytes of address > space. As an example, a typical 68K machine would have ROM from 0x000000, > 0x01ffff, and maybe a ROM somewhere else. You'd keep a transmap for the > 0-1ffff range, and one for the other ROM. So when you needed to know where > to jump, it'd just be the transmap[Source_PC] and you've got your entry > point. How does this differ from my plan to have a hash table from address of first instruction in block to the recompiled code other than you're covering the entire address space? Does this come down to the idea that your blocks of recompiled code are enterable on instruction boundaries throughout the block rather than just at the start, if so, are there any real advantages to the block being enterable - sounds like storing a lot of information unnecessarily? > The point being is that when you create an emulator for a given CPU, > you're doing all the flag calculations, etc... When you have your dynarec, > all of that work (and that's the hard part) will be gutted, so you may as > well start over, or better yet, create a table that indicates the > instruction, how long it is, the timing, and any alternate timing (such as > if the instruction takes longer depending upon the jump it takes). Take a > look at the table in drmz80.c. That's all you need for a dynarec. All of > the guts of doing flag calculations and actually doing the work of moving > memory (which is most of the work of an emulator) is unnecessary. That all > gets handled by the emitted code. Oh sorry, I see what you're saying, the interpreting emulator isn't much help for the final dynarec because the generated code does everything the emu did and therefore you can theoretically (although it's hard) build a dynarec utterly without an interpreting emulator, assuming you're going to recompile all executed code. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Nov 25 11:05:11 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA67869 for dynarec-outgoing; Sat, 25 Nov 2000 11:04:01 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 25 Nov 2000 11:20:43 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec In-Reply-To: <008201c056f5$fdb2bea0$01c93c9f@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > of code. But having a regular emulator sitting around as a reference is a > > great idea, and will be no end of help. > Ok, thanks for the advice, work will continue on the interpreter in the > meantime until I make more important decisions. This will be helpful to you when debugging, as it'll be LOTS easier to debug something in a language you're familiar with rather than having to know the idiosynchrocies of the target CPU. > > You keep what we call a transmap. It's an array that has a mapping of > > virtual PC to physical recompiled code. Before you think "Gee, that's a > How does this differ from my plan to have a hash table from address of first > instruction in block to the recompiled code other than you're covering the > entire address space? Does this come down to the idea that your blocks of > recompiled code are enterable on instruction boundaries throughout the block > rather than just at the start, if so, are there any real advantages to the > block being enterable - sounds like storing a lot of information > unnecessarily? Correct, and yes, there are some huge advantages - timing. If you use the "compute the time at the end of the block" approach, you may have blown past say, your scanline interrupt, which is *EXTREMELY* timing specific. This comes in when playing with video games where the actual horizontal and vertical retrace interrupts that rely on it being 100% accurate. Meaning, in the middle of a loop, you may have to bail out to gain accurate interrupt timing. This causes all kinds of sprite flickering and other oddities if you don't get it exactly right. However, depending upon what you're going to recompile, it may not matter, but anything having any sensitivy to timing and interrupts will require it. Yes, it uses quite a bit more memory, but you'll find that it won't affect performance due to it only being executed on entry to the exec() routine and when "jump to register" type of instructions are executed (and returns, too). But you've only got to keep a transmap for those regions where code exists (or will exist) - not the entire 4g range. ;-) Besides, how are you going to handle jumps where you don't know where it goes? By looking it up in a hash table? That'll be slow as compared to an indirect lookup. > > the guts of doing flag calculations and actually doing the work of moving > > memory (which is most of the work of an emulator) is unnecessary. That all > > gets handled by the emitted code. > Oh sorry, I see what you're saying, the interpreting emulator isn't much > help for the final dynarec because the generated code does everything the > emu did and therefore you can theoretically (although it's hard) build a > dynarec utterly without an interpreting emulator, assuming you're going to > recompile all executed code. Precisely! -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Nov 26 12:48:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA69168 for dynarec-outgoing; Sun, 26 Nov 2000 12:47:40 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 26 Nov 00 15:56:51 -0500 Message-Id: <3.0.5.32.20001126125224.00831cc0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 26 Nov 2000 12:52:24 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Food Fight In-Reply-To: References: <3.0.5.32.20001124215648.0083e100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It's a 68K recompiler and it'll support the 68K to start with. 010, and >020 support? Perhaps in the future. If done right, it'll be an >infrastructure that is easily extendable. Cool. I think it would definitely be beneficial when emulating those processors, since they're present in more complex and demanding systems. >> I'm guessing it will start with just 68000 in >> mind, but what's in store for the future if it works out great? It sounds >> like this project would be very suitable for emulating the higher end 680x0 >> chips as well as the plain vanilla 68000. > >Oh yeah. And all kinds of other CPUs, too. Were you on the list when we >went crazy creating the template files for the various types of CPUs? No, I don't think I was on the list. It'll be that flexible? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Nov 26 13:27:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA69208 for dynarec-outgoing; Sun, 26 Nov 2000 13:27:54 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 26 Nov 2000 13:44:53 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight In-Reply-To: <3.0.5.32.20001126125224.00831cc0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >It's a 68K recompiler and it'll support the 68K to start with. 010, and > >020 support? Perhaps in the future. If done right, it'll be an > >infrastructure that is easily extendable. > Cool. I think it would definitely be beneficial when emulating those > processors, since they're present in more complex and demanding systems. The kind that would benefit the most from a recompiler. ;-) But yes, we should examine this later on. The 68010 clearly is an easy derivitive of the 68K, but the 68020 and on, we should look at that when the time comes. > >> mind, but what's in store for the future if it works out great? It sounds > >> like this project would be very suitable for emulating the higher end 680x0 > >> chips as well as the plain vanilla 68000. > >Oh yeah. And all kinds of other CPUs, too. Were you on the list when we > >went crazy creating the template files for the various types of CPUs? > No, I don't think I was on the list. It'll be that flexible? There'd be a standard template file that emits a disassembler, the terminal/condterminal/nonterminal information, the cover template and optionally an opcode generator. We had everything taken care of for everything except the disassembler, which needed more work. This originally was Alex Pasadyn's idea, but sadly he has gone awol. ;-( There was a VERY large description of this earlier on, and I'm at a loss to find it right now (because I'm too lazy over a 56K link - performance blows!). Anyone - got the old template file handy? If not, I can find it when I return on Tuesday. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Nov 26 13:49:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA69234 for dynarec-outgoing; Sun, 26 Nov 2000 13:49:29 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Food Fight From: "M.I.K.e" Message-ID: <0003770232e2fa5b_mailit@mail.dynarec.com> References: Date: Sun, 26 Nov 2000 23:04:17 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Mail-It_--335000660" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --Mail-It_--335000660 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit >There'd be a standard template file that emits a disassembler, the >terminal/condterminal/nonterminal information, the cover template and >optionally an opcode generator. We had everything taken care of for >everything except the disassembler, which needed more work. This >originally was Alex Pasadyn's idea, but sadly he has gone awol. ;-( Sadly only the most primitive opcode were covered because we couldn't really agree how to handle the 68K address modes. >Anyone - got the old template file handy? Do you mean the one I've attached to this message? >-->Neil -- M.I.K.e People usually get what's coming to them ... unless it's been mailed. --Mail-It_--335000660 Content-Type: text/x-source-code; name="68K.def" Content-Transfer-Encoding: base64 Content-Disposition: Attachment; filename="68K.def" Ly8gQ1BVIGRlc2NyaXB0aW9uIGZpbGUgZm9yICI2OEsiCi8vIE0uSS5LLmUgMjAwMC0wNy0wOQoK W2NwdWluZm9dCk5hbWUgPSA2OEs7Ckluc3RydWN0aW9uR3JhbnVsYXJpdHkgPSAxNjsKCltvcGVy YW5kc10KRFJFRyAgeyAzLCBrZXlzID0ge0QwPTAsIEQxPTEsIEQyPTIsIEQzPTMsIEQ0PTQsIEQ1 PTUsIEQ2PTYsIEQ3PTd9IH07CkFSRUcgIHsgMywga2V5cyA9IHtBMD0wLCBBMT0xLCBBMj0yLCBB Mz0zLCBBND00LCBBNT01LCBBNj02LCBTUD03fSB9OwpSRUcgICB7IDQsIGtleXMgPSB7RDA9MCwg RDE9MSwgRDI9MiwgRDM9MywgRDQ9NCwgRDU9NSwgRDY9NiwgRDc9NywKICAgICAgICAgICAgICAg ICAgIEEwPTgsIEExPTksIEEyPTEwLCBBMz0xMSwgQTQ9MTIsIEE1PTEzLCBBNj0xNCwgU1A9MTV9 IH07CkNDICAgIHsgNCwga2V5cyA9IHtUPTAsIEY9MSwgSEk9MiwgTFM9MywgQ0M9NCwgQ1M9NSwg TkU9NiwgRVE9NywgVkM9OCwKICAgICAgICAgICAgICAgICAgIFZTPTksIFBMPTEwLCBNST0xMSwg R0U9MTIsIExUPTEzLCBHVD0xNCwgTEU9MTV9IH07CkFCUzMgIHsgMywgbnVtZXJpY307ICAvLyB1 bnNpZ25lZCAzIGJpdCB2YWx1ZQpBQlM0ICB7IDQsIG51bWVyaWN9OyAgLy8gdW5zaWduZWQgNCBi aXQgdmFsdWUKQUJTOCAgeyA4LCBudW1lcmljfTsgIC8vIHVuc2lnbmVkIDggYml0IHZhbHVlCkFC UzE2IHsxNiwgbnVtZXJpY307ICAvLyB1bnNpZ25lZCAxNiBiaXQgdmFsdWUKQUJTMzIgezMyLCBu dW1lcmljfTsgIC8vIHVuc2lnbmVkIDMyIGJpdCB2YWx1ZQpSRUw4ICB7IDgsIG51bWVyaWN9OyAg Ly8gc2lnbmVkIDggYml0IHZhbHVlClJFTDE2IHsxNiwgbnVtZXJpY307ICAvLyBzaWduZWQgMTYg Yml0IHZhbHVlClJFTDMyIHszMiwgbnVtZXJpY307ICAvLyBzaWduZWQgMzIgYml0IHZhbHVlCk9G RjggIHsgOCwgbnVtZXJpYywgUEMrMitYLCBQQysyK1h9OyAgLy8gOCBiaXQgb2Zmc2V0Ck9GRjE2 IHsxNiwgbnVtZXJpYywgUEMrMitYLCBQQysyK1h9OyAgLy8gMTYgYml0IG9mZnNldAoKW2ZsYWdz XQpDID0geyAweDAwMDEsICJjYXJyeSIgfTsKViA9IHsgMHgwMDAyLCAib3ZlcmZsb3ciIH07Clog PSB7IDB4MDAwNCwgInplcm8iIH07Ck4gPSB7IDB4MDAwOCwgIm5lZ2F0aXZlIiB9OwpYID0geyAw eDAwMTAsICJleHRlbmQiIH07CgpbaW5zdHJ1Y3Rpb25zXQovLyAwMDAwIEJpdCBNYW5pcHVsYXRp b24vTU9WRVAvSW1tZWRpYXRlCi8vIDAwMDEgTW92ZSBCeXRlCi8vIDAwMTAgTW92ZSBMb25nCi8v IDAwMTEgTW92ZSBXb3JkCi8vIDAxMDAgTWlzY2VsbGFuZW91cwowMTAwMTExMDAxMTEwMDAxIHxO T1B8fHx8NCA0IE47ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBub3AKMDEwMDEwMTAx MTExMTEwMCB8SUxMRUdBTHx8fHwzNCAzNCBUOyAgICAgICAgICAgICAgICAgICAgICAgLy8gaWxs ZWdhbAowMTAwMTExMDAxMTEwMDAwIHxSRVNFVHx8fHwxMzIgMTMyIE47ICAgICAgICAgICAgICAg ICAgICAgICAvLyByZXNldAowMTAwMTExMDAxMTEwMDExIHxSVEV8fENWWk5YfHwyMCAyMCBUOyAg ICAgICAgICAgICAgICAgICAgICAvLyBydGUKMDEwMDExMTAwMTExMDExMSB8UlRSfHxDVlpOWHx8 MjAgMjAgVDsgICAgICAgICAgICAgICAgICAgICAgLy8gcnRyCjAxMDAxMTEwMDExMTAxMDEgfFJU U3x8fHwxNiAxNiBUOyAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHJ0cwowMTAwMTExMDAx MTEwMDEwICgxNnhJKSB8U1RPUHxBQlMxNj1JfENWWk5YfHw0IDQgVDsgICAgICAgICAvLyBzdG9w ICNjb25zdAowMTAwMTExMDAxMDBWVlZWIHxUUkFQfEFCUzQ9Vnx8Q1ZaTlh8MzggMzggVDsgICAg ICAgICAgICAgICAvLyB0cmFwICN2ZWMKMDEwMDExMTAwMTExMDExMCB8VFJBUFZ8fHxDVlpOWHwz NCA0IEM7ICAgICAgICAgICAgICAgICAgICAgLy8gdHJhcHYKMDEwMDExMTAwMTAxMEFBQSAoMTZ4 TykgfExJTkt8QVJFRz1BIFJFTDE2PU98fHwxOCAxOCBOOyAgICAgLy8gbGluayBBbiwgI2Rpc3QK MDEwMDExMTAwMTAxMUFBQSB8VU5MS3xBUkVHPUF8fHwxMiAxMiBOOyAgICAgICAgICAgICAgICAg ICAgLy8gdW5sayBBbgowMTAwMTAwMDAxMDAwREREIHxTV0FQfERSRUc9RHxOWlZDfHw0IDQgTjsg ICAgICAgICAgICAgICAgICAvLyBzd2FwIERuCi8vIDAxMDEgQUREUS9TVUJRL1NjYy9EQmNjCjAx MDEwMDAwMTEwMDFEREQgKDE2eE8pIHxEQlR8RFJFRz1EIE9GRjE2PU98fHwxMCAxMiBOOyAgICAg IC8vIGRidCBEbiwgb2Zmc2V0CjAxMDEwMDAxMTEwMDFEREQgKDE2eE8pIHxEQlJBfERSRUc9RCBP RkYxNj1PfHx8MTAgMTIgQzsgICAgIC8vIGRicmEgRG4sIG9mZnNldAowMTAxMDEwMDExMDAxRERE ICgxNnhPKSB8REJDQ3xEUkVHPUQgT0ZGMTY9T3x8Q3wxMCAxMiBDOyAgICAvLyBkYmNjIERuLCBv ZmZzZXQKMDEwMTAxMDExMTAwMURERCAoMTZ4TykgfERCQ1N8RFJFRz1EIE9GRjE2PU98fEN8MTAg MTIgQzsgICAgLy8gZGJjcyBEbiwgb2Zmc2V0CjAxMDEwMTExMTEwMDFEREQgKDE2eE8pIHxEQkVR fERSRUc9RCBPRkYxNj1PfHxafDEwIDEyIEM7ICAgIC8vIGRiZXEgRG4sIG9mZnNldAowMTAxMTEw MDExMDAxREREICgxNnhPKSB8REJHRXxEUkVHPUQgT0ZGMTY9T3x8TlZ8MTAgMTIgQzsgICAvLyBk YmdlIERuLCBvZmZzZXQKMDEwMTExMTAxMTAwMURERCAoMTZ4TykgfERCR1R8RFJFRz1EIE9GRjE2 PU98fE5WWnwxMCAxMiBDOyAgLy8gZGJndCBEbiwgb2Zmc2V0CjAxMDEwMDEwMTEwMDFEREQgKDE2 eE8pIHxEQkhJfERSRUc9RCBPRkYxNj1PfHxDWnwxMCAxMiBDOyAgIC8vIGRiaGkgRG4sIG9mZnNl dAowMTAxMTExMTExMDAxREREICgxNnhPKSB8REJMRXxEUkVHPUQgT0ZGMTY9T3x8Wk5WfDEwIDEy IEM7ICAvLyBkYmxlIERuLCBvZmZzZXQKMDEwMTAwMTExMTAwMURERCAoMTZ4TykgfERCTFN8RFJF Rz1EIE9GRjE2PU98fENafDEwIDEyIEM7ICAgLy8gZGJscyBEbiwgb2Zmc2V0CjAxMDExMTAxMTEw MDFEREQgKDE2eE8pIHxEQkxUfERSRUc9RCBPRkYxNj1PfHxOVnwxMCAxMiBDOyAgIC8vIGRibHQg RG4sIG9mZnNldAowMTAxMTAxMTExMDAxREREICgxNnhPKSB8REJNSXxEUkVHPUQgT0ZGMTY9T3x8 TnwxMCAxMiBDOyAgICAvLyBkYm1pIERuLCBvZmZzZXQKMDEwMTAxMTAxMTAwMURERCAoMTZ4Tykg fERCTkV8RFJFRz1EIE9GRjE2PU98fFp8MTAgMTIgQzsgICAgLy8gZGJuZSBEbiwgb2Zmc2V0CjAx MDExMDEwMTEwMDFEREQgKDE2eE8pIHxEQlBMfERSRUc9RCBPRkYxNj1PfHxOfDEwIDEyIEM7ICAg IC8vIGRicGwgRG4sIG9mZnNldAowMTAxMTAwMDExMDAxREREICgxNnhPKSB8REJWQ3xEUkVHPUQg T0ZGMTY9T3x8VnwxMCAxMiBDOyAgICAvLyBkYnZjIERuLCBvZmZzZXQKMDEwMTEwMDExMTAwMURE RCAoMTZ4TykgfERCVlN8RFJFRz1EIE9GRjE2PU98fFZ8MTAgMTIgQzsgICAgLy8gZGJ2cyBEbiwg b2Zmc2V0Ci8vIDAxMTAgQmNjL0JTUgowMTEwMDAwMDAwMDAwMDAwICgxNnhPKSB8QlJBLkx8T0ZG MTY9T3x8fDEwIDEwIFQ7ICAgICAgICAgICAvLyBicmEubCBvZmZzZXQKMDExMDAwMDBPT09PT09P TyAgICAgICAgfEJSQS5TfCBPRkY4PU98fHwxMCAxMCBUOyAgICAgICAgICAgLy8gYnJhLnMgb2Zm c2V0CjAxMTAwMDAxMDAwMDAwMDAgKDE2eE8pIHxCU1IuTHxPRkYxNj1PfHx8MTggMTggVDsgICAg ICAgICAgIC8vIGJzci5sIG9mZnNldAowMTEwMDAwMU9PT09PT09PICAgICAgICB8QlNSLlN8IE9G Rjg9T3x8fDE4IDE4IFQ7ICAgICAgICAgICAvLyBic3IucyBvZmZzZXQKMDExMDAxMDAwMDAwMDAw MCAoMTZ4TykgfEJDQy5MfE9GRjE2PU98fEN8MTAgMTIgQzsgICAgICAgICAgLy8gYmNjLmwgb2Zm c2V0CjAxMTAwMTAxMDAwMDAwMDAgKDE2eE8pIHxCQ1MuTHxPRkYxNj1PfHxDfDEwIDEyIEM7ICAg ICAgICAgIC8vIGJjcy5sIG9mZnNldAowMTEwMDExMTAwMDAwMDAwICgxNnhPKSB8QkVRLkx8T0ZG MTY9T3x8WnwxMCAxMiBDOyAgICAgICAgICAvLyBiZXEubCBvZmZzZXQKMDExMDExMDAwMDAwMDAw MCAoMTZ4TykgfEJHRS5MfE9GRjE2PU98fE5WfDEwIDEyIEM7ICAgICAgICAgLy8gYmdlLmwgb2Zm c2V0CjAxMTAxMTEwMDAwMDAwMDAgKDE2eE8pIHxCR1QuTHxPRkYxNj1PfHxOVlp8MTAgMTIgQzsg ICAgICAgIC8vIGJndC5sIG9mZnNldAowMTEwMDAxMDAwMDAwMDAwICgxNnhPKSB8QkhJLkx8T0ZG MTY9T3x8Q1p8MTAgMTIgQzsgICAgICAgICAvLyBiaGkubCBvZmZzZXQKMDExMDExMTEwMDAwMDAw MCAoMTZ4TykgfEJMRS5MfE9GRjE2PU98fFpOVnwxMCAxMiBDOyAgICAgICAgLy8gYmxlLmwgb2Zm c2V0CjAxMTAwMDExMDAwMDAwMDAgKDE2eE8pIHxCTFMuTHxPRkYxNj1PfHxDWnwxMCAxMiBDOyAg ICAgICAgIC8vIGJscy5sIG9mZnNldAowMTEwMTEwMTAwMDAwMDAwICgxNnhPKSB8QkxULkx8T0ZG MTY9T3x8TlZ8MTAgMTIgQzsgICAgICAgICAvLyBibHQubCBvZmZzZXQKMDExMDEwMTEwMDAwMDAw MCAoMTZ4TykgfEJNSS5MfE9GRjE2PU98fE58MTAgMTIgQzsgICAgICAgICAgLy8gYm1pLmwgb2Zm c2V0CjAxMTAwMTEwMDAwMDAwMDAgKDE2eE8pIHxCTkUuTHxPRkYxNj1PfHxafDEwIDEyIEM7ICAg ICAgICAgIC8vIGJuZS5sIG9mZnNldAowMTEwMTAxMDAwMDAwMDAwICgxNnhPKSB8QlBMLkx8T0ZG MTY9T3x8TnwxMCAxMiBDOyAgICAgICAgICAvLyBicGwubCBvZmZzZXQKMDExMDEwMDAwMDAwMDAw MCAoMTZ4TykgfEJWQy5MfE9GRjE2PU98fFZ8MTAgMTIgQzsgICAgICAgICAgLy8gYnZjLmwgb2Zm c2V0CjAxMTAxMDAxMDAwMDAwMDAgKDE2eE8pIHxCVlMuTHxPRkYxNj1PfHxWfDEwIDEyIEM7ICAg ICAgICAgIC8vIGJ2cy5sIG9mZnNldAowMTEwMDEwME9PT09PT09PICAgICAgICB8QkNDLlN8IE9G Rjg9T3x8Q3wxMCAxMiBDOyAgICAgICAgICAvLyBiY2MucyBvZmZzZXQKMDExMDAxMDFPT09PT09P TyAgICAgICAgfEJDUy5TfCBPRkY4PU98fEN8MTAgMTIgQzsgICAgICAgICAgLy8gYmNzLnMgb2Zm c2V0CjAxMTAwMTExT09PT09PT08gICAgICAgIHxCRVEuU3wgT0ZGOD1PfHxafDEwIDEyIEM7ICAg ICAgICAgIC8vIGJlcS5zIG9mZnNldAowMTEwMTEwME9PT09PT09PICAgICAgICB8QkdFLlN8IE9G Rjg9T3x8TlZ8MTAgMTIgQzsgICAgICAgICAvLyBiZ2UucyBvZmZzZXQKMDExMDExMTBPT09PT09P TyAgICAgICAgfEJHVC5TfCBPRkY4PU98fE5WWnwxMCAxMiBDOyAgICAgICAgLy8gYmd0LnMgb2Zm c2V0CjAxMTAwMDEwT09PT09PT08gICAgICAgIHxCSEkuU3wgT0ZGOD1PfHxDWnwxMCAxMiBDOyAg ICAgICAgIC8vIGJoaS5zIG9mZnNldAowMTEwMTExMU9PT09PT09PICAgICAgICB8QkxFLlN8IE9G Rjg9T3x8Wk5WfDEwIDEyIEM7ICAgICAgICAvLyBibGUucyBvZmZzZXQKMDExMDAwMTFPT09PT09P TyAgICAgICAgfEJMUy5TfCBPRkY4PU98fENafDEwIDEyIEM7ICAgICAgICAgLy8gYmxzLnMgb2Zm c2V0CjAxMTAxMTAxT09PT09PT08gICAgICAgIHxCTFQuU3wgT0ZGOD1PfHxOVnwxMCAxMiBDOyAg ICAgICAgIC8vIGJsdC5zIG9mZnNldAowMTEwMTAxMU9PT09PT09PICAgICAgICB8Qk1JLlN8IE9G Rjg9T3x8TnwxMCAxMiBDOyAgICAgICAgICAvLyBibWkucyBvZmZzZXQKMDExMDAxMTBPT09PT09P TyAgICAgICAgfEJORS5TfCBPRkY4PU98fFp8MTAgMTIgQzsgICAgICAgICAgLy8gYm5lLnMgb2Zm c2V0CjAxMTAxMDEwT09PT09PT08gICAgICAgIHxCUEwuU3wgT0ZGOD1PfHxOfDEwIDEyIEM7ICAg ICAgICAgIC8vIGJwbC5zIG9mZnNldAowMTEwMTAwME9PT09PT09PICAgICAgICB8QlZDLlN8IE9G Rjg9T3x8VnwxMCAxMiBDOyAgICAgICAgICAvLyBidmMucyBvZmZzZXQKMDExMDEwMDFPT09PT09P TyAgICAgICAgfEJWUy5TfCBPRkY4PU98fFZ8MTAgMTIgQzsgICAgICAgICAgLy8gYnZzLnMgb2Zm c2V0Ci8vIDAxMTEgTU9WRVEKMDExMURERDBJSUlJSUlJSSB8TU9WRVF8UkVMOD1JfE5aVkN8fDQg NCBOOyAgICAgICAgICAgICAgICAgLy8gbW92ZXEgI3NpZ25lZCwgRG4KLy8gMTAwMCBPUi9ESVYv U0JDRAovLyAxMDAxIFNVQi9TVUJYCi8vIDEwMTAgKExpbmUtQSkKLy8gMTAxMSBDTVAvRU9SCi8v IDExMDAgQU5EL01VTC9BQkNEL0VYRwoxMTAwWFhYMTAxMDAwWVlZIHxFWEd8RFJFRz1YIERSRUc9 WXx8fDYgNiBOOyAgICAgICAgICAgICAgICAvLyBleGcgRHgsIER5CjExMDBYWFgxMDEwMDFZWVkg fEVYR3xBUkVHPVggQVJFRz1ZfHx8NiA2IE47ICAgICAgICAgICAgICAgIC8vIGV4ZyBBeCwgQXkK MTEwMFhYWDExMDAwMVlZWSB8RVhHfERSRUc9WCBBUkVHPVl8fHw2IDYgTjsgICAgICAgICAgICAg ICAgLy8gZXhnIER4LCBBeQovLyAxMTAxIEFERC9BRERYCi8vIDExMTAgU2hpZnQvUm90YXRlCi8v IDExMTEgKExpbmUtRikKCi8vIEVPRgo= --Mail-It_--335000660-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Nov 26 13:53:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA69247 for dynarec-outgoing; Sun, 26 Nov 2000 13:53:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 26 Nov 2000 14:10:14 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight In-Reply-To: <0003770232e2fa5b_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >optionally an opcode generator. We had everything taken care of for > >everything except the disassembler, which needed more work. This > >originally was Alex Pasadyn's idea, but sadly he has gone awol. ;-( > Sadly only the most primitive opcode were covered because we couldn't really > agree how to handle the 68K address modes. I don't think it was a matter of a disagreement, rather we just hadn't figured it out yet completely. And the problem, if I recall correctly, was with the disassembler, not the rest of things. Does this sound right? > >Anyone - got the old template file handy? > Do you mean the one I've attached to this message? Yep! I think we had one for the x86, too. I'll have to keep digging... -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Nov 26 14:02:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA69269 for dynarec-outgoing; Sun, 26 Nov 2000 14:02:34 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Food Fight From: "M.I.K.e" Message-ID: <000377025ecb694a_mailit@mail.dynarec.com> References: Date: Sun, 26 Nov 2000 23:16:34 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Mail-It_--335000660" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --Mail-It_--335000660 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit >I don't think it was a matter of a disagreement, rather we just hadn't >figured it out yet completely. Yep, that sounds more like it. >And the problem, if I recall correctly, was >with the disassembler, not the rest of things. Does this sound right? Man, my brain is like a sieve. I really cannot remember if it was only a problem of disassembling or if we also needed that for the decoder. >Yep! I think we had one for the x86, too. I'll have to keep digging... Spare your time, it's attatched ;-) I also started one for R3000, but I guess there isn't that much interest in it currently. >-->Neil -- M.I.K.e Baseball is a skilled game. It's America's game -- it, and high taxes. -- Will Rogers --Mail-It_--335000660 Content-Type: text/x-source-code; name="x86.def" Content-Transfer-Encoding: base64 Content-Disposition: Attachment; filename="x86.def" Ly8gQ1BVIGRlc2NyaXB0aW9uIGZpbGUgZm9yICJYODYiCi8vIEFKUCAyMDAwMDcwNQoKLy8gdGhp cyBvbmUgaXMgYSByZWFsIHBhaW4KLy8gdGhlIGZpbGUgZm9yIGEgIndlbGwtYmVoYXZlZCIgQ1BV IGlzIGNvbnNpZGVyYWJseSBzaG9ydGVyCgovLyBGSVhNRTogY29udmVydCBhbGwgdGhlIFJNMzIg c3R1ZmYgdG8gUk0zMl9SLCBSTTMyX0FUUiwgZXRjCgpbY3B1aW5mb10KCk5hbWUgPSBYODY7Cgov LyBhbGwgaW5zdHJ1Y3Rpb25zIGFyZSBtdWx0aXBsZXMgb2YgdGhpcyBtYW55IGJpdHMKSW5zdHJ1 Y3Rpb25HcmFudWxhcml0eSA9IDg7CgoKW29wZXJhbmRzXQoKLy8gdGhpcyBzZWN0aW9uIGRlZmlu ZXMgdGhlIHR5cGVzIG9mIG9wZXJhbmRzIHRoaXMgQ1BVIHVuZGVyc3RhbmRzCgovLyB0aGUgInRl eHQgc3RyaW5ncyIgZm9yIHRoZSBkYXNtIG5lZWQgdG8gYmUgYWRkZWQgdG8gdGhpcyBzZWN0aW9u CgovLyBvcGVyYW5kIHtBLCBCLCBDLCBEfQovLyBBID0gb3BlcmFuZCBzaXplIChiaXRzKQovLyBC ID0gdHlwZSAobnVtZXJpYy9rZXlzL2ZpeGVkKQovLyBDID0gaG93IHRvIHByb2Nlc3MgdGhlIGRh dGEgd2hlbiBhc3NlbWJsaW5nCi8vIEQgPSBob3cgdG8gcHJvY2VzcyB0aGUgZGF0YSB3aGVuIGRp c2Fzc2VtYmxpbmcKCi8vIGV4YW1wbGVzOgovLyBOT0ZGU0VUIHszMiwgbnVtZXJpYywgflgsIH5Y IH07ICAvLyBhIDMyLWJpdCBvZmZzZXQgdGhhdCBpcyBzdG9yZWQgYml0LWZsaXBwZWQKLy8gQVRS RUcgezIsIGtleXMgPSB7UkEgPSAwLCBSQiA9IDIsIFJDID0gMywgUkQgPSA0fSB9OyAvLyBpbmRp cmVjdCBtZW1vcnkgcmVmZXJlbmNlCgovLyBvcGVyYW5kcyBkZW5vdGVkICJmaXhlZCIgYXJlIG5v dCB2YXJpYWJsZQovLyB0aGV5IGRlbm90ZSBhIHNwZWNpYWwgaW5zdHJ1Y3Rpb24gZW5jb2Rpbmcg Zm9yIGEgcGFydGljdWxhciBhcmd1bWVudAovLyBhbmQgYXJlIG9ubHkgcHJlc2VudCB0byBhaWQg aW4gZGlzYXNzZW1ibHkKLy8KLy8gZm9yIGV4YW1wbGUKLy8gbW92IGFsLCBbbW9mZnNdICAgLS0t PiAgIHh4eHggeHh4eCB4eHh4ICgzMnhNKSB8TU9WfEFMIE1PRkZTPU18Ci8vIG9ubHkgYWwgaXMg YWxsb3dlZCBhcyB0aGUgcmVnaXN0ZXIgaW4gdGhpcyBpbnN0cnVjdGlvbgoKREIgICAgeyA4LCBu dW1lcmljIH07ClJEICAgIHsgMywga2V5cyA9IHtFQVg9MCwgRUNYPTEsIEVEWD0yLCBFQlg9Mywg RVNQPTQsIEVCUD01LCBFU0k9NiwgRURJPTd9IH07ClJXICAgIHsgMywga2V5cyA9IHtBWD0wLCBD WD0xLCBEWD0yLCBCWD0zLCBTUD00LCBCUD01LCBTST02LCBEST03fSB9OwpSQiAgICB7IDMsIGtl eXMgPSB7QUw9MCwgQ0w9MSwgREw9MiwgQkw9MywgQUg9NCwgQ0g9NSwgREg9NiwgQkg9N30gfTsK SU1NMzIgezMyLCBudW1lcmljfTsKSU1NMTYgezE2LCBudW1lcmljfTsKSU1NOCAgeyA4LCBudW1l cmljfTsKUk04X0RJU1A4IHsgOCwgbnVtZXJpY307ClJNOF9ESVNQMzIgezMyLCBudW1lcmljfTsK Uk0xNl9ESVNQOCB7IDgsIG51bWVyaWN9OwpSTTE2X0RJU1AzMiB7MzIsIG51bWVyaWN9OwpSTTMy X0RJU1A4IHsgOCwgbnVtZXJpY307ClJNMzJfRElTUDMyIHszMiwgbnVtZXJpY307Ck1PRkZTIHsz MiwgbnVtZXJpY307CkFMICAgIHsgMCwgZml4ZWR9OwpBWCAgICB7IDAsIGZpeGVkfTsKRUFYICAg eyAwLCBmaXhlZH07CkNMICAgIHsgMCwgZml4ZWR9OwoxICAgICB7IDAsIGZpeGVkfTsKUjggICAg eyAzLCBrZXlzID0ge0FMPTAsIENMPTEsIERMPTIsIEJMPTMsIEFIPTQsIENIPTUsIERIPTYsIEJI PTd9IH07ClIxNiAgIHsgMywga2V5cyA9IHtBWD0wLCBDWD0xLCBEWD0yLCBCWD0zLCBTUD00LCBC UD01LCBTST02LCBEST03fSB9OwpSMzIgICB7IDMsIGtleXMgPSB7RUFYPTAsIEVDWD0xLCBFRFg9 MiwgRUJYPTMsIEVTUD00LCBFQlA9NSwgRVNJPTYsIEVEST03fSB9OwpDQyAgICB7IDQsIGtleXMg PSB7CgkJQT0weDA3LCBBRT0weDAzLCBCPTB4MDIsIEJFPTB4MDYsIEM9MHgwMiwgRT0weDA0LCBH PTB4MGYsIEdFPTB4MGQsIAoJCUw9MHgwYywgTEU9MHgwZSwgTkE9MHgwNiwgTkFFPTB4MDIsIE5C PTB4MDMsIE5CRT0weDA3LCBOQz0weDAzLCBORT0weDA1LCAKCQlORz0weDBlLCBOR0U9MHgwYywg Tkw9MHgwZCwgTkxFPTB4MGYsIE5PPTB4MDEsIE5QPTB4MGIsIE5TPTB4MDksIE5aPTB4MDUsIAoJ CU89MHgwMCwgUD0weDBhLCBQRT0weDBhLCBQTz0weDBiLCBTPTB4MDgsIFo9MHgwNCwgfSB9OwpS RUw4ICB7IDgsIG51bWVyaWMgfTsKUkVMMzIgezMyLCBudW1lcmljIH07ClJNOF9SICAgeyAzLCBr ZXlzID0ge0FMPTAsIENMPTEsIERMPTIsIEJMPTMsIEFIPTQsIENIPTUsIERIPTYsIEJIPTd9IH07 ICAgICAgICAgIC8vIHJtOCBpcyByZWc4ClJNMTZfUiAgeyAzLCBrZXlzID0ge0FYPTAsIENYPTEs IERYPTIsIEJYPTMsIFNQPTQsIEJQPTUsIFNJPTYsIERJPTd9IH07ICAgICAgICAgIC8vIHJtMTYg aXMgcmVnMTYKUk0zMl9SICB7IDMsIGtleXMgPSB7RUFYPTAsIEVDWD0xLCBFRFg9MiwgRUJYPTMs IEVTUD00LCBFQlA9NSwgRVNJPTYsIEVEST03fSB9OyAgLy8gcm0zMiBpcyByZWczMgpSTThfQVRS ICB7IDMsIGtleXMgPSB7RUFYPTAsIEVDWD0xLCBFRFg9MiwgRUJYPTMsIEVTST02LCBFREk9N30g fTsgICAgICAgICAgICAgICAvLyBybTggaXMgOEByZWcKUk04X0FUUkQgIHsgMywga2V5cyA9IHtF QVg9MCwgRUNYPTEsIEVEWD0yLCBFQlg9MywgRUJQPTUsIEVTST02LCBFREk9N30gfTsgICAgICAg Ly8gcm04IGlzIDhAcmVnK2Rpc3AKUk0xNl9BVFIgIHsgMywga2V5cyA9IHtFQVg9MCwgRUNYPTEs IEVEWD0yLCBFQlg9MywgRVNJPTYsIEVEST03fSB9OyAgICAgICAgICAgICAgLy8gcm0xNiBpcyAx NkByZWcKUk0xNl9BVFJEICB7IDMsIGtleXMgPSB7RUFYPTAsIEVDWD0xLCBFRFg9MiwgRUJYPTMs IEVCUD01LCBFU0k9NiwgRURJPTd9IH07ICAgICAgLy8gcm0xNiBpcyAxNkByZWcrZGlzcApSTTMy X0FUUiAgeyAzLCBrZXlzID0ge0VBWD0wLCBFQ1g9MSwgRURYPTIsIEVCWD0zLCBFU0k9NiwgRURJ PTd9IH07ICAgICAgICAgICAgICAvLyBybTMyIGlzIDMyQHJlZwpSTTMyX0FUUkQgIHsgMywga2V5 cyA9IHtFQVg9MCwgRUNYPTEsIEVEWD0yLCBFQlg9MywgRUJQPTUsIEVTST02LCBFREk9N30gfTsg ICAgICAvLyBybTMyIGlzIDMyQHJlZytkaXNwClNDTCAgIHsyLCBrZXlzID0ge01VTDE9MCwgTVVM Mj0xLCBNVUw0PTIsIE1VTDg9M30gfTsKCi8vIEZJWE1FOiB0ZW1wb3JhcnkgaGFjawpSTTggezIs IG51bWVyaWN9OwpSTTE2IHsyLCBudW1lcmljfTsKUk0zMiB7MiwgbnVtZXJpY307CgpbZmxhZ3Nd CgovLyB0aGlzIHNlY3Rpb24gZGVmaW5lcyB0aGUgZmxhZ3MgZm9yIHRoaXMgQ1BVCgovLyB0aGVz ZSBzaG91bGQganVzdCByZXN1bHQgaW4gI2RlZmluZXMgbGlrZSBGTEFHX1g4Nl9OPTB4MDA4MCwg RkxBR19YODZfQzB4MDAwMSwgZXRjCgpOID0geyAweDAwODAsICJzaWduIiB9OwpDID0geyAweDAw MDEsICJjYXJyeSIgfTsKWiA9IHsgMHgwMDQwLCAiemVybyIgfTsKViA9IHsgMHgwMTAwLCAib3Zl cmZsb3ciIH07CgoKW2luc3RydWN0aW9uc10KCi8vIHRoaXMgc2VjdGlvbiBkZWZpbmVzIHRoZSBp bnN0cnVjdGlvbiBzZXQKLy8gZWFjaCBsaW5lIGNvbnRhaW5zOgoKLy8gQUFBQSBBQUFBIEFBQUEg QUFBQSB8QkJCQnxDQyBDQyBDQ3xERHxFRXxGIEcgSAoKLy8gQSA9IGluc3RydWN0aW9uIGJpdHMg LS0gb25seSAwIGFuZCAxIGFyZSBsaXRlcmFsCi8vCi8vICAgICAobnhDKSwgZWcgKDh4RCkgbWVh bnMgImluc2VydCBuIEMncyIKLy8gICAgIGFsbCBvdGhlciBjaGFyYWN0ZXJzIGNhbiBtYXRjaCBl aXRoZXIgd2F5Ci8vICAgICB0aGUgb3BlcmFuZHMgd2lsbCBzcGVjaWZ5IHBvc2l0aW9uIGJ5IHRo ZSBjaGFyYWN0ZXJzIGhlcmUKLy8KLy8gQiA9IGluc3RydWN0aW9uIG5hbWUsIGVnIE1PVgovLyBD ID0gb3BlcmFuZHMgKGFzIGRlZmluZWQgaW4gW29wZXJhbmRzXSBzZWN0aW9uKQovLyAgICAgdGhl c2UgbG9vayBsaWtlIE9wZXJhbmROYW1lPUNvdmVyQ2hhciwgZWcgUkVHMzI9UiBvciBJTU0zMj1J Ci8vIEQgPSBmbGFncyB3cml0dGVuIChhcyBkZWZpbmVkIGluIFtmbGFnc10gc2VjdGlvbiwgZWcg TkNWCi8vIEUgPSBmbGFncyByZWFkIChhcyBkZWZpbmVkIGluIFtmbGFnc10gc2VjdGlvbgovLyBG ID0gY2FjaGUgaGl0IHRpbWluZwovLyBHID0gY2FjaGUgbWlzcyB0aW1pbmcKLy8gSCA9IGRvZXMg dGhpcyBpbnN0cnVjdGlvbiBmb3JjZSB0aGUgc291cmNlIGxheWVyIHRvIGVuZCBhIGJsb2NrPwoK Ly8gQywgRCwgYW5kIEUgY2FuIGJlIGxlZnQgb3V0IGNvbXBsZXRlbHkKCi8vIGVhcmxpZXIgaW5z dHJ1Y3Rpb25zIGhhdmUgcHJlY2VkZW5jZSBpbiB0aGlzIHRhYmxlCgovLyBjb250cm9sIG9wZXJh dGlvbnMKMTAwMSAwMDAwICB8Tk9QfHx8fDEgMSAwOyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAvLyBub3AKMTEwMCAwMDExICB8UkVUfHx8fDEgMSAwOyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAvLyByZXQKMTAwMSAxMTExIHxMQUhGfHx8fDEgMSAwOyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAvLyBsYWhmCjEwMDEgMTExMCB8U0FIRnx8fHwyIDIgMDsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgLy8gc2FoZgoxMTExIDEwMDAgIHxDTEN8fHx8MSAxIDA7ICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC8vIGNsYwoKMDAwMCAxMTExICAxMDAxIDAwMDAgIFhYWVkgWU1NTSB8 U0VUT3xSTTg9WHx8fDIgMiAwOyAgICAgICAgICAgICAgLy8gc2V0byByL204CjAwMDAgMTExMSAg MTAwMSBDQ0NDICBYWFlZIFlNTU0gfFNFVH58Q0M9QyBSTTg9WHx8fDIgMiAwOyAgICAgICAgICAg ICAgLy8gc2V0Y2Mgci9tOAoKMDExMCAwMTEwICAxMTExIDExMTEgIFhYMDEgMFJSUiB8Q0FMTHxS TTE2PVh8fHwxIDEgMDsgICAgICAgICAgICAgLy8gY2FsbCByL20xNgogICAgICAgICAgIDExMTEg MTExMSAgWFgwMSAwUlJSIHxDQUxMfFJNMzI9WHx8fDEgMSAwOyAgICAgICAgICAgICAvLyBjYWxs IHIvbTMyCgowMTEwIDEwMDAgICgzMnhJKSAgICAgIHxQVVNIfElNTTMyPUl8fHwxIDEgMDsgICAg ICAgICAgICAgICAgICAgICAgIC8vIHB1c2ggaW1tZWRpYXRlMzIKCi8vIGp1bXAgaW5zdHJ1Y3Rp b25zCjAxMTEgQ0NDQyAgfEooSiVzIDB4JTA4bHgpfENDPUMgUkVMOCAgIHx8fDEgMSAwOyAgICAg ICAgLy8gamNjIHJlbDgKMDAwMCAxMTExICAxMDAwIENDQ0MgIHxKfnxDQyBSRUwzMiAgfHx8MSAx IDA7ICAgICAgICAvLyBqY2MgcmVsMzIKMTExMCAxMDExIHxKTVB8UkVMOCAgICAgIHx8fDEgMSAw OyAgICAgICAgLy8gam1wIHJlbDgKMTExMCAxMDAxIHxKTVB8UkVMMzIgICAgIHx8fDEgMSAwOyAg ICAgICAgLy8gam1wIHJlbDMyCjExMTEgMTExMSAgWFgxMCAwWVlZIHxKTVB8Uk0zMj1YICAgICAg fHx8MSAxIDA7ICAgICAgICAvLyBqbXAgcm0zMiAgKGFicykKCi8vIHNpZ24gZXh0ZW5kIGluc3Ry dWN0aW9ucwoxMDAxIDEwMDEgIHxDRFF8fHx8MSAxIDA7ICAgICAgICAgICAgICAgICAgICAgICAg ICAgIC8vIGNkcSAgKGVheCAtLT4gZWR4OmVheCkKCi8vIGJpdCBtYW5pcHVsYXRpb24KMDAwMCAx MTExICAxMDEwIDAwMTEgIFhYUlIgUk1NTSAgICAgICB8QlR8Uk0zMj1YIFIzMj1SICB8fHwxIDEg MDsgICAvLyBiaXQgdGVzdCBybTMyIChiaXQgaW4gcjMyKSAtLT4gQ0YKMDAwMCAxMTExICAxMDEx IDEwMTAgIFhYMTAgME1NTSAoOHhJKSB8QlR8Uk0zMj1YIElNTTg9SSB8fHwxIDEgMDsgICAvLyBi aXQgdGVzdCBybTMyIChiaXQgaW4gaW1tOCkgLS0+IENGCjAwMDAgMTExMSAgMTAxMSAxMTAwICBY WFJSIFJNTU0gICAgICB8QlNDfFIzMj1SIFJNMzI9WCAgfHx8MSAxIDA7ICAgLy8gYml0IHNjYW4g Zm9yd2FyZCBvbiBybTMyIC0tPiByMzIKMDAwMCAxMTExICAxMDExIDExMDEgIFhYUlIgUk1NTSAg ICAgIHxCU1J8UjMyPVIgUk0zMj1YICB8fHwxIDEgMDsgICAvLyBiaXQgc2NhbiByZXZlcnNlIG9u IHJtMzIgLS0+IHIzMgoKLy8gbW92ZSBpbnN0cnVjdGlvbnMKICAgICAgICAgICAxMDAwIDEwMDAg IFhYUlIgUk1NTSB8TU9WfFJNOD1YICBSOD1SICAgfHx8MSAxIDA7ICAgICAgICAvLyBtb3Ygci9t OCwgcjgKMDExMCAwMTEwICAxMDAwIDEwMDEgIFhYUlIgUk1NTSB8TU9WfFJNMTY9WCBSMTY9UiAg fHx8MSAxIDA7ICAgICAgICAvLyBtb3Ygci9tMTYsIHIxNgogICAgICAgICAgIDEwMDAgMTAwMSAg WFhSUiBSTU1NIHxNT1Z8Uk0zMj1YIFIzMj1SICB8fHwxIDEgMDsgICAgICAgIC8vIG1vdiByL20z MiwgcjMyCiAgICAgICAgICAgMTAwMCAxMDEwICBYWFJSIFJNTU0gfE1PVnxSOD1SICAgUk04PVgg IHx8fDEgMSAwOyAgICAgICAgLy8gbW92IHI4LCByL204CjAxMTAgMDExMCAgMTAwMCAxMDExICBY WFJSIFJNTU0gfE1PVnxSMTY9UiAgUk0xNj1YIHx8fDEgMSAwOyAgICAgICAgLy8gbW92IHIxNiwg ci9tMTYKICAgICAgICAgICAxMDAwIDEwMTEgIFhYUlIgUk1NTSB8TU9WfFIzMj1SICBSTTMyPVgg fHx8MSAxIDA7ICAgICAgICAvLyBtb3YgcjMyLCByL20zMgogICAgICAgICAgIDEwMTAgMDAwMCAg KDMyeE0pICAgIHxNT1Z8QUwgTU9GRlM9TSAgICB8fHwxIDEgMDsgICAgICAgIC8vIG1vdiBhbCwg W21vZmZzXQowMTEwIDAxMTAgIDEwMTAgMDAwMSAgKDMyeE0pICAgIHxNT1Z8QVggTU9GRlM9TSAg fHx8MSAxIDA7ICAgICAgICAvLyBtb3YgYXgsIFttb2Zmc10KICAgICAgICAgICAxMDEwIDAwMDEg ICgzMnhNKSAgICB8TU9WfEVBWCBNT0ZGUz1NIHx8fDEgMSAwOyAgICAgICAgLy8gbW92IGVheCwg W21vZmZzXQogICAgICAgICAgIDEwMTAgMDAxMCAgKDMyeE0pICAgIHxNT1Z8TU9GRlM9TSBBTCAg fHx8MSAxIDA7ICAgICAgICAvLyBtb3YgW21vZmZzXSwgYWwKMDExMCAwMTEwICAxMDEwIDAwMTEg ICgzMnhNKSAgICB8TU9WfE1PRkZTPU0gQVggIHx8fDEgMSAwOyAgICAgICAgLy8gbW92IFttb2Zm c10sIGF4CiAgICAgICAgICAgMTAxMCAwMDExICAoMzJ4TSkgICAgfE1PVnxNT0ZGUz1NIEVBWCB8 fHwxIDEgMDsgICAgICAgIC8vIG1vdiBbbW9mZnNdLCBlYXgKICAgICAgICAgICAxMDExIDBSUlIg ICg4eEkpICAgICB8TU9WfFJCPVIgSU1NOD1JICAgfHx8MSAxIDA7ICAgICAgICAvLyBtb3YgcmVn OCwgaW1tOAowMTEwIDAxMTAgIDEwMTEgMVJSUiAgKDE2eEkpICAgIHxNT1Z8Ulc9UiBJTU0xNj1J ICB8fHwxIDEgMDsgICAgICAgIC8vIG1vdiByZWcxNiwgaW1tMTYKICAgICAgICAgICAxMDExIDFS UlIgICgzMnhJKSAgICB8TU9WfFJEPVIgSU1NMzI9SSAgfHx8MSAxIDA7ICAgICAgICAvLyBtb3Yg cmVnMzIsIGltbTMyCiAgICAgICAgICAgMTEwMCAwMTEwICBYWDAwIDBNTU0gKDh4SSkgIHxNT1Z8 Uk04PVggSU1NOD1JICB8fHwxIDEgMDsgICAgICAgIC8vIG1vdiByL204LCBpbW04CjAxMTAgMDEx MCAgMTEwMCAwMTExICBYWDAwIDBNTU0gKDE2eEkpIHxNT1Z8Uk0xNj1YIElNTTE2PUl8fHwxIDEg MDsgICAgICAgIC8vIG1vdiByL20xNiwgaW1tMTYKICAgICAgICAgICAxMTAwIDAxMTEgIFhYMDAg ME1NTSAoMzJ4SSkgfE1PVnxSTTMyPVggSU1NMzI9SXx8fDEgMSAwOyAgICAgICAgLy8gbW92IHIv bTMyLCBpbW0zMgoKLy8gYWRkL2FkYyBpbnN0cnVjdGlvbnMKICAgICAgICAgICAwMDAwIDAxMDAg ICg4eEkpICAgICAgICAgICAgfEFERHxBTCAgICAgSU1NOD1JIHx8fDEgMSAwOyAgICAgLy8gYWRk IGFsLCBpbW04CjAxMTAgMDExMCAgMDAwMCAwMTAxICAoMTZ4SSkgICAgICAgICAgIHxBRER8QVgg ICAgIElNTTE2PUl8fHwxIDEgMDsgICAgIC8vIGFkZCBheCwgaW1tMTYKICAgICAgICAgICAwMDAw IDAxMDEgICgzMnhJKSAgICAgICAgICAgfEFERHxFQVggICAgSU1NMzI9SXx8fDEgMSAwOyAgICAg Ly8gYWRkIGVheCwgaW1tMzIKICAgICAgICAgICAxMDAwIDAwMDAgIFhYMDAgME1NTSAoOHhJKSAg fEFERHxSTTg9WCAgSU1NOD1JIHx8fDEgMSAwOyAgICAgLy8gYWRkIHIvbTgsIGltbTgKMDExMCAw MTEwICAxMDAwIDAwMDEgIFhYMDAgME1NTSAoMTZ4SSkgfEFERHxSTTE2PVggSU1NMTY9SXx8fDEg MSAwOyAgICAgLy8gYWRkIHIvbTE2LCBpbW0xNgogICAgICAgICAgIDEwMDAgMDAwMSAgWFgwMCAw TU1NICgzMnhJKSB8QUREfFJNMzI9WCBJTU0zMj1JfHx8MSAxIDA7ICAgICAvLyBhZGQgci9tMzIs IGltbTMyCjAxMTAgMDExMCAgMTAwMCAwMDExICBYWDAwIDBNTU0gKDh4SSkgIHxBRER8Uk0xNj1Y IElNTTg9SSB8fHwxIDEgMDsgICAgIC8vIGFkZCByL20xNiwgKHNpZ25lZCkgaW1tOAogICAgICAg ICAgIDEwMDAgMDAxMSAgWFgwMCAwTU1NICg4eEkpICB8QUREfFJNMzI9WCBJTU04PUkgfHx8MSAx IDA7ICAgICAvLyBhZGQgci9tMzIsIChzaWduZWQpIGltbTgKICAgICAgICAgICAwMDAwIDAwMDAg IFhYUlIgUk1NTSB8QUREfFJNOD1YICBSOD1SICAgfHx8MSAxIDA7ICAgICAvLyBhZGQgci9tOCwg cjgKMDExMCAwMTEwICAwMDAwIDAwMDEgIFhYUlIgUk1NTSB8QUREfFJNMTY9WCBSMTY9UiAgfHx8 MSAxIDA7ICAgICAvLyBhZGQgci9tMTYsIHIxNgogICAgICAgICAgIDAwMDAgMDAwMSAgWFhSUiBS TU1NIHxBRER8Uk0zMj1YIFIzMj1SICB8fHwxIDEgMDsgICAgIC8vIGFkZCByL20zMiwgcjMyCiAg ICAgICAgICAgMDAwMCAwMDEwICBYWFJSIFJNTU0gfEFERHxSOD1SICAgUk04PVggIHx8fDEgMSAw OyAgICAgLy8gYWRkIHI4LCByL204CjAxMTAgMDExMCAgMDAwMCAwMDExICBYWFJSIFJNTU0gfEFE RHxSMTY9UiAgUk0xNj1YIHx8fDEgMSAwOyAgICAgLy8gYWRkIHIxNiwgci9tMTYKICAgICAgICAg ICAwMDAwIDAwMTEgIFhYUlIgUk1NTSB8QUREfFIzMj1SICBSTTMyPVggfHx8MSAxIDA7ICAgICAv LyBhZGQgcjMyLCByL20zMgoKICAgICAgICAgICAwMDAxIDAxMDAgICg4eEkpICAgICAgICAgICAg fEFEQ3xBTCBJTU04PUkgICB8fHwxIDEgMDsgICAgIC8vIGFkYyBhbCwgaW1tOAowMTEwIDAxMTAg IDAwMDEgMDEwMSAgKDE2eEkpICAgICAgICAgICB8QURDfEFYIElNTTE2PUkgIHx8fDEgMSAwOyAg ICAgLy8gYWRjIGF4LCBpbW0xNgogICAgICAgICAgIDAwMDEgMDEwMSAgKDMyeEkpICAgICAgICAg ICB8QURDfEVBWCBJTU0zMj1JIHx8fDEgMSAwOyAgICAgLy8gYWRjIGVheCwgaW1tMzIKICAgICAg ICAgICAxMDAwIDAwMDAgIFhYMDEgME1NTSAoOHhJKSAgfEFEQ3xSTTg9WCBJTU04PUkgIHx8fDEg MSAwOyAgICAgLy8gYWRjIHIvbTgsIGltbTgKMDExMCAwMTEwICAxMDAwIDAwMDEgIFhYMDEgME1N TSAoMTZ4SSkgfEFEQ3xSTTE2PVggSU1NMTY9SXx8fDEgMSAwOyAgICAgLy8gYWRjIHIvbTE2LCBp bW0xNgogICAgICAgICAgIDEwMDAgMDAwMSAgWFgwMSAwTU1NICgzMnhJKSB8QURDfFJNMzI9WCBJ TU0zMj1JfHx8MSAxIDA7ICAgICAvLyBhZGMgci9tMzIsIGltbTMyCjAxMTAgMDExMCAgMTAwMCAw MDExICBYWDAxIDBNTU0gKDh4SSkgIHxBREN8Uk0xNj1YIElNTTg9SSB8fHwxIDEgMDsgICAgIC8v IGFkYyByL20xNiwgKHNpZ25lZCkgaW1tOAogICAgICAgICAgIDEwMDAgMDAxMSAgWFgwMSAwTU1N ICg4eEkpICB8QURDfFJNMzI9WCBJTU04PUkgfHx8MSAxIDA7ICAgICAvLyBhZGMgci9tMzIsIChz aWduZWQpIGltbTgKICAgICAgICAgICAwMDAxIDAwMDAgIFhYUlIgUk1NTSB8QURDfFJNOD1YIFI4 PVIgICAgfHx8MSAxIDA7ICAgICAvLyBhZGMgci9tOCwgcjgKMDExMCAwMTEwICAwMDAxIDAwMDEg IFhYUlIgUk1NTSB8QURDfFJNMTY9WCBSMTY9UiAgfHx8MSAxIDA7ICAgICAvLyBhZGMgci9tMTYs IHIxNgogICAgICAgICAgIDAwMDEgMDAwMSAgWFhSUiBSTU1NIHxBREN8Uk0zMj1YIFIzMj1SICB8 fHwxIDEgMDsgICAgIC8vIGFkYyByL20zMiwgcjMyCiAgICAgICAgICAgMDAwMSAwMDEwICBYWFJS IFJNTU0gfEFEQ3xSOD1SIFJNOD1YICAgIHx8fDEgMSAwOyAgICAgLy8gYWRjIHI4LCByL204CjAx MTAgMDExMCAgMDAwMSAwMDExICBYWFJSIFJNTU0gfEFEQ3xSMTY9UiBSTTE2PVggIHx8fDEgMSAw OyAgICAgLy8gYWRjIHIxNiwgci9tMTYKICAgICAgICAgICAwMDAxIDAwMTEgIFhYUlIgUk1NTSB8 QURDfFIzMj1SIFJNMzI9WCAgfHx8MSAxIDA7ICAgICAvLyBhZGMgcjMyLCByL20zMgo= --Mail-It_--335000660-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Nov 26 18:05:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA69454 for dynarec-outgoing; Sun, 26 Nov 2000 18:05:35 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 26 Nov 2000 18:22:37 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight In-Reply-To: <000377025ecb694a_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >And the problem, if I recall correctly, was > >with the disassembler, not the rest of things. Does this sound right? > Man, my brain is like a sieve. I really cannot remember if it was only a > problem of disassembling or if we also needed that for the decoder. IIRC, It was a problem only with the disassembler. The K+5 or some other weird instruction that did a bizarro offset was the actual problem. > >Yep! I think we had one for the x86, too. I'll have to keep digging... > Spare your time, it's attatched ;-) Cool - thanks! > I also started one for R3000, but I guess there isn't that much interest in > it currently. Dunno... I think those PSEmu authors might be interested. It's time to whip this project back into shape. Can't wait to get home to get it all started up again! > Baseball is a skilled game. It's America's game -- it, and high > taxes. And dumbass presidential candidates *AND* elections. But asfar as taxes go, we don't have ANYTHING on the English! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 27 01:34:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA69782 for dynarec-outgoing; Mon, 27 Nov 2000 01:33:50 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000a01c05856$aaa13fe0$01c93c9f@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: Food Fight Date: Mon, 27 Nov 2000 09:44:40 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > And dumbass presidential candidates *AND* elections. But asfar as taxes > go, we don't have ANYTHING on the English! ;-) True, but then at least we have a vague idea who the government is who will be taxing us... ;o) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 27 01:40:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA69798 for dynarec-outgoing; Mon, 27 Nov 2000 01:40:38 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200011270952.KAA26750@pons.ac.upc.es> Subject: Re: DYNAREC: Food Fight In-Reply-To: <000a01c05856$aaa13fe0$01c93c9f@daves> "from David Sharp at Nov 27, 2000 09:44:40 am" To: dynarec@dynarec.com Date: Mon, 27 Nov 2000 10:52:09 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > And dumbass presidential candidates *AND* elections. But asfar as taxes > > go, we don't have ANYTHING on the English! ;-) > > True, but then at least we have a vague idea who the government is who will > be taxing us... ;o) > I think the problem with US is more that noone really cares who the government is ;), if the taxes go down of course ... > Cheers > Dave > Victor PS: To myself, don't start a political discussion HERE, please ;)). --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 27 03:18:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA70035 for dynarec-outgoing; Mon, 27 Nov 2000 03:17:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Food Fight From: "M.I.K.e" Message-ID: <0003770d1380327c_mailit@mail.dynarec.com> References: Date: Mon, 27 Nov 2000 12:02:55 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >IIRC, It was a problem only with the disassembler. The K+5 or some other >weird instruction that did a bizarro offset was the actual problem. I'll have to take a look again, or browse through the mails to find out what our problem was... >> I also started one for R3000, but I guess there isn't that much interest in >> it currently. >Dunno... I think those PSEmu authors might be interested. It's time to >whip this project back into shape. Can't wait to get home to get it all >started up again! Hey, we have some enthusiastic person here ;-) >And dumbass presidential candidates *AND* elections. Too true! Do you know the following text yet? >-->Neil NOTICE OF REVOCATION OF INDEPENDENCE To the citizens of the United States of America, In the light of your failure to elect a President of the USA and thus to govern yourselves, we hereby give notice of the revocation of your independence, effective today. Her Sovereign Majesty Queen Elizabeth II will resume monarchical duties over all states, commonwealths and other territories. Except Utah, which she does not fancy. Your new Prime Minister (The Rt. Hon. Tony Blair, MP for the 97.85% of you who have until now been unaware that there is a world outside your borders) will appoint a minister for America without the need for further elections. Congress and the Senate will be disbanded. A questionnaire will be circulated next year to determine whether any of you noticed. To aid in the transition to a British Crown Dependency, the following Rules are introduced with immediate effect: 1. You should look up "revocation" in the Oxford English Dictionary. Then look up "aluminium". Check the pronunciation guide. You will be Amazed at just how wrongly you have been pronouncing it. Generally, you should raise your vocabulary to acceptable levels. Look up "vocabulary". Using the same twenty-seven words interspersed with filler noises such as "like" and "you know" is an unacceptable and inefficient form of communication. Lookup "interspersed". 2. There is no such thing as "US English". We will let Microsoft know on your behalf. 3. You should learn to distinguish the English and Australian accents. It really isn't that hard. 4. Hollywood will be required occasionally to cast English actors as the good guys. 5. You should relearn your original national anthem, "God Save The Queen", but only after fully carrying out task 1. We would not want you to get confused and give up half way through. 6. You should stop playing American "football". There is only one kind of football. What you refer to as american "football" is not a very good game. The 2.15% of you who are aware that there is a world outside your borders may have noticed that no one else plays "American" football. You will no longer be allowed to play it, and should instead play proper football. Initially, it would be best if you played with the girls. It is a Difficult game. Those of you brave enough will, in time, be allowed to play rugby (which is similar to American "football", but does not involve stopping for a rest every twenty seconds or wearing full kevlar body armour like nancies). We are hoping to get together at least a US rugby sevens side by 2005. 7. You should declare war on Quebec and France, using nuclear weapons if they give you any merde. The 97.85% of you who were not aware that there is a world outside your borders should count yourselves lucky. The Russians have never been the bad guys. "Merde" is French for "s**t". 8. July 4th is no longer a public holiday. November 8th will be a new national holiday, but only in England. It will be called "Indecisive Day". 9. All American cars are hereby banned. They are crap and it is for your own good. When we show you German cars, you will understand what we mean. 10. Please tell us who killed JFK. It's been driving us crazy. Thank you for your co-operation. -- M.I.K.e "Laughter is the closest distance between two people." -- Victor Borge --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 27 14:12:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA70566 for dynarec-outgoing; Mon, 27 Nov 2000 14:11:34 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3A22DE25.96203BBD@gmx.de> Date: Mon, 27 Nov 2000 23:20:21 +0100 From: Kai =?iso-8859-1?Q?Sch=FCtz?= X-Mailer: Mozilla 4.72 [en] (X11; I; Linux 2.2.14 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: C vs C++ for ARM->x86 dynarec References: <00f601c0548e$d0413f00$01c93c9f@daves> <000376ac9bc7bfe0_mailit@mail.dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Sorry for answering so late, but I've been on vacation.... "M.I.K.e" wrote: > >I have heard rumours (i.e. I've seen no proof) that C++ is significantly > >slower than C but I would ideally like to use a certain amount of OO for > >representing decoded ARM instructions and intermediate representation etc. > >it would also look better to my supervisors if it was OO (lecturers love > >it). > > I bet that those uni guys like C++ more... > > >I have heard that by not using all the funky C++ features like > >templates, inheritance and others that C++ isn't quite so bad. Actually templates don't slow down code. They're more like a very powerfull macro language. > I think the worst thing in C++ is multiple inheritance and operator > overloading. Do you mean from the performance or from the language design point of view ? Using overloaded operators has the same performance overhead as using function calls. > >So, Is C++ going to be a significant overhead? > > I think C++ is almost always slower than C, but if you limit your programming > style and don't use all possible features than the difference hopefully > shouldn't be too worse. I think C++ is as fast as C - if you do the same things. E.g. if you're using virtual functions you should compare this to using tables with function pointers in C. In fact almost everything that you can do in C++ you can also do in C, but C++ often is simpler. The downside is that C++ is a rather complex language (compared to C). If you really want to get the best performance you must know very well what the generated code will do when issuing some simple commands. Imagine a vector class with (simple) overloaded operators. You write the following: vector a, b, c, d; // Create vectors a,b,c and d containg 5 ints each. d = a + b + c; which has roughly the following C equivalent: struct {int val[5];} a, b, c, d; assign(d, sum(sum(a,b),c); Since the structs are passed by value they are copied for each function call. For the sum of a and b a help variable must be allocated, which is done via new(), which normally calls malloc(). This block must be free()ed afterwards of course. For the second sum a second help variable is needed, the assignment is again a copy, etc. So there might be more code than actually visible at the surface. Maybe a good compiler might be able to do some optimizations and save some of the intermediate variables/copies. By using the right techniques like overloading the new/delete operator with more specific, but faster versions and some other things you can get quite fast. In fact I read an article where they had a numerical math example and, after some tweaking, got even faster than the FORTAN code (which for numerical computations usually is fastest (except asm, I know)) What I relly like about C++ is that you don't have to use tons of ugly macros but can use the nice inling features instead. And, even if coding at a higher level (eg. with STL) it's surprisingly fast... Just my 10 cents... |/ |\ai --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 27 23:22:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA70958 for dynarec-outgoing; Mon, 27 Nov 2000 23:22:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Nov 2000 23:39:39 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight In-Reply-To: <0003770d1380327c_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Do you know the following text yet? No... is this from the English or the Germans? I can't tell. Before taking too much offense... remember, I'm British. ;-) > Her Sovereign Majesty Queen Elizabeth II will resume monarchical duties over > all states, commonwealths and other territories. Except Utah, which she does > not fancy. Nor does anyone in the US, really. > Your new Prime Minister (The Rt. Hon. Tony Blair, MP for the 97.85% of you > who have until now been unaware that there is a world outside your borders) It still stuns me why Europeans think this. Everyone is aware there's a wolrd outside the US borders. We just don't care. ;-) > will appoint a minister for America without the need for further elections. > Congress and the Senate will be disbanded. This would be a good thing. > 1. You should look up "revocation" in the Oxford English Dictionary. Then > look up "aluminium". Check the pronunciation guide. You will be Amazed at > just how wrongly you have been pronouncing it. Generally, you should raise > your vocabulary to acceptable levels. Look up "vocabulary". Look up words like "color" and "catalog" and realize that adding in extra meaningless characters to a word to sound more posh is arrogant and pompus. ;-) Or in a word, ENGLISH! ;-) > Using the same > twenty-seven words interspersed with filler noises such as "like" and "you > know" is an unacceptable and inefficient form of communication. Lookup > "interspersed". Looks like the person who wrote this hadn't bothered to realize that "like" and "you know" died out with the Valley Girl syndrom in 1982. Talking about not knowing one's neighbors! > 3. You should learn to distinguish the English and Australian accents. It > really isn't that hard. Nope, it's not. The Australian accents sound like the poor English. ;-) But I like the Aussies, mostly because they're sickos! > 4. Hollywood will be required occasionally to cast English actors as the good > guys. Patrick Stewart? > 5. You should relearn your original national anthem, "God Save The Queen", > but only after fully carrying out task 1. We would not want you to get > confused and give up half way through. The Queen, who in her infinite senility is knighting everyone and their brother, who actually does no real work (yes, I'm aware enough of English government to know this). It should be renamed to "God shoot the Queen" or "Get the queen tanked". > 6. You should stop playing American "football". There is only one kind of > football. What you refer to as american "football" is not a very good game. > The 2.15% of you who are aware that there is a world outside your borders may > have noticed that no one else plays "American" football. You will no longer > be allowed to play it, and should instead play proper football. I'm all for this! > 7. You should declare war on Quebec and France, using nuclear weapons if they > give you any merde. The 97.85% of you who were not aware that there is a > world outside your borders should count yourselves lucky. The Russians have > never been the bad guys. "Merde" is French for "s**t". I thought French means shit! ;-) ;-) Man, where's ?Neil when you need him? ;-) > 9. All American cars are hereby banned. They are crap and it is for your own > good. When we show you German cars, you will understand what we mean. You mean overpriced, hard to fix yourself vehicles? Nah - I'll take my American "crap" cars. My Dodge Durango & Dodge Dakotas have been serving me quite well, thank you. ;-) > 10. Please tell us who killed JFK. It's been driving us crazy. Yeah, me too. I still don't know and don't care! Just trying to pass the time - waiting to hop a plane back to home... -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 28 11:43:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA71695 for dynarec-outgoing; Tue, 28 Nov 2000 11:43:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Food Fight From: "M.I.K.e" Message-ID: <00037728ad10639f_mailit@mail.dynarec.com> References: Date: Tue, 28 Nov 2000 20:58:36 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >No... is this from the English or the Germans? I can't tell. It was posted on Zophar's Domain some time ago. Although I don't know who send it I bet the writer is English. >Before taking too much offense... remember, I'm British. ;-) More or less... >>Except Utah, which she does not fancy. >Nor does anyone in the US, really. Why so? >It still stuns me why Europeans think this. Everyone is aware there's a >wolrd outside the US borders. We just don't care. ;-) Ok, that's probably more precise. >Look up words like "color" and "catalog" and realize that adding in extra >meaningless characters to a word to sound more posh is arrogant and >pompus. ;-) Or in a word, ENGLISH! ;-) Hmm, several examples that what you said is also true for American English in some cases: elevator - lift intersection - crossroads faucet - tap whiskey - whisky >Looks like the person who wrote this hadn't bothered to realize that >"like" and "you know" died out with the Valley Girl syndrom in >1982. Talking about not knowing one's neighbors! Well, when I accidentally hear interviews on MTV then every second phrase is "you know"... >> 4. Hollywood will be required occasionally to cast English actors as the >>good guys. >Patrick Stewart? The exception of the rule... >> 6. You should stop playing American "football". [...] You will no longer >> be allowed to play it, and should instead play proper football. >I'm all for this! Hehe. >I thought French means shit! ;-) ;-) Man, where's ?Neil when you need >him? ;-) You're right, that's something for NG, but it seems he has vanished... I hope that Gwenole doesn't take that too serious ;-) >Just trying to pass the time - waiting to hop a plane back to home... Hop, hop, and away... BTW, I saw that Dan Boris had a link to my old dynarec page on the AEP and mentioned to him that I moved my stuff here. He informed me that he was going to change the link, and that sounded quite normal to me, till I saw that he added it *bold print*! I guess when he read your name he expected that we come up with something great... >-->Neil -- M.I.K.e "You can't survive by sucking the juice from a wet mitten." -- Charles Schulz, "Things I've Had to Learn Over and Over and Over" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 28 11:57:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA71717 for dynarec-outgoing; Tue, 28 Nov 2000 11:57:34 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000d01c05977$248a5640$4444ae3e@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Crusoe's Code Morpher is Shade's Son? Date: Tue, 28 Nov 2000 21:09:39 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I was writing a bibliography with the documents I had printed about binary translation when and I noticed (or perhaps I remembered) something interesting. The main author of Shade Simulator Robert Cmelik was one of the 'inventors' in Transmeta Patent (in fact the first one). I got surprised and began to search about Transmeta and Cmelik. A small but interesting session with google ;). I discovered an article from Cmelik and three other guys which are also in Transmeta Patent. One of them was Transmeta CEO David Ditzel. The article seems to be related with SUN, so as Ditzel was working with SUN I think they all must come from SUN labs. Here it is if someone wants to look it: "141 1991 1 Robert F. Cmelik , Shing I. Kong , David R. Ditzel , Edmund J. Kelly: An Analysis of SPARC and MIPS Instruction Set Utilization on the SPEC Benchmarks. ASPLOS 1991 : 290-302" I found some articles about Transmeta 'offiicial history' and in the name of Cmelik had a small site on them. Ditzel seemed to be the star there. In one of the articles it is said to be just a 'programmer' and the inventor of the name 'Code Morpher'. Ha! Here are some links: http://www.techreview.com/articles/nov00/tristram.htm http://www.techreview.com/articles/nov00/tristram_sidebar.htm http://www.canada.cnet.com/news/0-1003-200-335319.html http://fox.rollins.edu/~tlairson/ecom/CHIPS2.HTML Cmelik is also in all (I have found two more) the Transmeta patents and he doesn't seem to be the last guy in the list ;). The two other patents I have found (I should have to search in US Patent Database to see if there are more): [...] The patent is enigmatically described as "Memory Controller for a Microprocessor for Detecting a Failure of Speculation on the Physical Nature of a Component Being Addressed." It was issued on November 3, 1998 and cites "inventors" Edmund J. Kelly, Robert Cmelik, and Malcom John Wing. [...] [...] 37 CFR 1.47 Notice by Publication CFR 1.63. Non-Signing Inventor(s) Application or Legal No. Filing Date Representative(s) Title of Invention 08/887,680 July 3, 1997 David Ditzel Edmund Kelly Computer Robert Cmelik Michael Powell Extending Architecture From 32-Bits to 64-Bits [...] But strangely Cmelik doesn't seems to appear in Transmeta site or it has just (as I have said before) a small mention in articles about Transmeta. But I'm almost sure he is more important than this for Transmeta and Crusoe. Code Morpher is the core part in Crusoe and I'm guessing who could be chief designer of this software ;). And I'm sure Cmelik wasn't just alone but it could have a some of the people from Shade too. You must know your enemies ;). Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 28 12:17:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA71745 for dynarec-outgoing; Tue, 28 Nov 2000 12:17:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001701c05979$fbeb7180$4444ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <00037728ad10639f_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Food Fight Date: Tue, 28 Nov 2000 21:30:00 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >No... is this from the English or the Germans? I can't tell. > > It was posted on Zophar's Domain some time ago. Although I don't know who > send it I bet the writer is English. > I think it was a week or so ago. > >It still stuns me why Europeans think this. Everyone is aware there's a > >wolrd outside the US borders. We just don't care. ;-) > > Ok, that's probably more precise. > I would be happy if europeans could don't care about US ;). > BTW, I saw that Dan Boris had a link to my old dynarec page on the AEP and > mentioned to him that I moved my stuff here. He informed me that he was going > to change the link, and that sounded quite normal to me, till I saw that he > added it *bold print*! I guess when he read your name he expected that we > come up with something great... > I noticed Dan Boris changed his page, so the link I have in my page is broke ... Something more to fix, damn! I will take a look to his new page. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 28 12:41:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA71780 for dynarec-outgoing; Tue, 28 Nov 2000 12:41:23 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Food Fight From: "M.I.K.e" Message-ID: <00037729746cba0c_mailit@mail.dynarec.com> References: <00037728ad10639f_mailit@mail.dynarec.com> <001701c05979$fbeb7180$4444ae3e@hal9000> Date: Tue, 28 Nov 2000 21:54:20 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I would be happy if europeans could don't care about US ;). That would be great! ;-) >I noticed Dan Boris changed his page, so the link I have in my page >is broke ... Something more to fix, damn! I will take a look to his new >page. http://www.atarihq.com/danb/emulation.html >Victor -- M.I.K.e Today is the first day of the rest of your lossage. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 28 22:48:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA72258 for dynarec-outgoing; Tue, 28 Nov 2000 22:46:19 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 28 Nov 2000 23:03:55 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight In-Reply-To: <00037728ad10639f_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >No... is this from the English or the Germans? I can't tell. > It was posted on Zophar's Domain some time ago. Although I don't know who > send it I bet the writer is English. If that's the case, then he doesn't have much in the way of respect for English cars (neither do I, actually). I do for German cars, though. > >>Except Utah, which she does not fancy. > >Nor does anyone in the US, really. > Why so? Full of Mor-mons. Very strange, hypocritical business hidden behind a veil of religion. Well, that's not entirely true. I know several Mormons who are very, very good people, and have personally met quite a few bad ones, too. It's the hypocrites that give the rest a bad name (for example, the largest distributor of liquor in North America is Mormon owned - alcohol is forbidden in the Mor-mon religion). > >It still stuns me why Europeans think this. Everyone is aware there's a > >wolrd outside the US borders. We just don't care. ;-) > Ok, that's probably more precise. And frankly, we can't understand why anyone outside the US is interested in us! ;-) > >Look up words like "color" and "catalog" and realize that adding in extra > >meaningless characters to a word to sound more posh is arrogant and > >pompus. ;-) Or in a word, ENGLISH! ;-) > Hmm, several examples that what you said is also true for American English in > some cases: > elevator - lift They are different things. A lift is a platform on a back of a truck (or lorry as the English like to call it). An elevator by definition means it services more than one floor. > intersection - crossroads Not quite the same thing. A 3 way stop is not a crossroad but it is an intersection, as there is no action of crossing at an intersection. > faucet - tap One implies water delivery - a tap does not. I.E. Faucet that gives hot water or a tap on a beer keg. > whiskey - whisky Brand name thing I believe. There are several words in US English that have had their spelling changed due to corporate corrosion. But these are really weak. These are just other names for similar things - not convoluted spellings. > >Looks like the person who wrote this hadn't bothered to realize that > >"like" and "you know" died out with the Valley Girl syndrom in > >1982. Talking about not knowing one's neighbors! > Well, when I accidentally hear interviews on MTV then every second phrase is > "you know"... Juding the US by MTV is like judging the English by the Teletubbies or the Spice Girls. Teenagers don't really talk like that. > >> 4. Hollywood will be required occasionally to cast English actors as the > >>good guys. > >Patrick Stewart? > The exception of the rule... Huge exception, though I'm having trouble thinking of anyone under the "rule". I can think of Anthony Hopkins... what other English actors have been cast as the bad guy? Alan Rickman? > >I thought French means shit! ;-) ;-) Man, where's ?Neil when you need > >him? ;-) > You're right, that's something for NG, but it seems he has vanished... > I hope that Gwenole doesn't take that too serious ;-) He didn't seem to mind our incessant teasing before... No offense Gwenole - we're all friends here who feel comfortable to let our pants down in front of eachothers. In fact, I'm naked right now. ;-) > >Just trying to pass the time - waiting to hop a plane back to home... > Hop, hop, and away... I'm back. Damn, what a scary flight! Lots of turbulence(sp?). We had a go-round which resulted in gunning the engine and pulling up at a 45 degree angle and me soiling myself. Turns out some dipshit didn't get off the runway fast enough. > BTW, I saw that Dan Boris had a link to my old dynarec page on the AEP and > mentioned to him that I moved my stuff here. He informed me that he was going > to change the link, and that sounded quite normal to me, till I saw that he > added it *bold print*! I guess when he read your name he expected that we > come up with something great... Dan's a cool guy. BTW - I wound up spending a bunch of time on the plane (between the rocking motion of the plane) working on the dynamic recompilation document. Anyone interested in seeing it so far? It's about like looking at a frame of a car with a few of the parts put in, but it's getting there! -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 28 22:48:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA72268 for dynarec-outgoing; Tue, 28 Nov 2000 22:48:12 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 28 Nov 2000 23:05:48 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Crusoe's Code Morpher is Shade's Son? In-Reply-To: <000d01c05977$248a5640$4444ae3e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The patent is enigmatically described as "Memory Controller for > a Microprocessor for Detecting a Failure of Speculation on the > Physical Nature of a Component Being Addressed." It was issued > on November 3, 1998 and cites "inventors" Edmund J. Kelly, > Robert Cmelik, and Malcom John Wing. This sounds like branch prediction stuff - done in the Pentium and other CPUs many, many years before. > 08/887,680 July 3, 1997 David Ditzel Edmund Kelly Computer *DITZEL*? Ditzel is slang for dumbass in US English! -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 28 23:27:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA72305 for dynarec-outgoing; Tue, 28 Nov 2000 23:27:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200011290739.IAA06187@pons.ac.upc.es> Subject: Re: DYNAREC: Food Fight In-Reply-To: "from Neil Bradley at Nov 28, 2000 11:03:55 pm" To: dynarec@dynarec.com Date: Wed, 29 Nov 2000 08:39:16 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >It still stuns me why Europeans think this. Everyone is aware there's a > > >wolrd outside the US borders. We just don't care. ;-) > > Ok, that's probably more precise. > > And frankly, we can't understand why anyone outside the US is interested > in us! ;-) > Let me guess why ;). The biggest army in the world (and it doesn't stand in US which is the main problem). Because it ignores any kind of international legislation (whenever legislation is against their objectives). US owns and drives the UN as it wants. It is the biggest economy in the world. And the more massive media productor aswell (movies, tv). Do you want more reasons. ;)) I forgot: US thinks it's the owner (sometimes mispelled as 'police') of the world. We must know our owner ;)))). > > BTW, I saw that Dan Boris had a link to my old dynarec page on the AEP and > > mentioned to him that I moved my stuff here. He informed me that he was going > > to change the link, and that sounded quite normal to me, till I saw that he > > added it *bold print*! I guess when he read your name he expected that we > > come up with something great... > > Dan's a cool guy. > > BTW - I wound up spending a bunch of time on the plane (between the > rocking motion of the plane) working on the dynamic recompilation > document. Anyone interested in seeing it so far? It's about like looking > at a frame of a car with a few of the parts put in, but it's getting > there! > It could be interesting :). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 29 03:36:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA72664 for dynarec-outgoing; Wed, 29 Nov 2000 03:36:05 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Food Fight From: "M.I.K.e" Message-ID: <00037735a7614e41_mailit@mail.dynarec.com> References: Date: Wed, 29 Nov 2000 12:27:35 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >If that's the case, then he doesn't have much in the way of respect for >English cars (neither do I, actually). Well, which car makes are still English anyway... ? >I do for German cars, though. Although some wouldn't stand an elk test ;-) >Full of Mor-mons. Very strange, hypocritical business hidden behind a veil >of religion. Sounds almost like morons ;-) >Well, that's not entirely true. I know several Mormons who >are very, very good people, and have personally met quite a few bad ones, >too. Very true. In many cases it's just prejudices... >It's the hypocrites that give the rest a bad name (for example, the >largest distributor of liquor in North America is Mormon owned - alcohol >is forbidden in the Mor-mon religion). Well, that's strange. Maybe only drinking is forbidden but selling is allowed? >And frankly, we can't understand why anyone outside the US is interested >in us! ;-) Because you are so strange people? ;-) >> elevator - lift >They are different things. A lift is a platform on a back of a truck (or >lorry as the English like to call it). An elevator by definition means it >services more than one floor. Elevator isn't used in British English, they use lift instead. I hope one of the British buys on the list can confirm that. >> faucet - tap >One implies water delivery - a tap does not. I.E. Faucet that gives hot >water or a tap on a beer keg. Sounds like a semantic change. Just like Middle High German "hochgezit" meant about every celebration and "Hochzeit" now means only wedding. I know that NG was wondering what Americans said for "tap" and I think he mean the thing on the kitchen sink. >> whiskey - whisky >Brand name thing I believe. There are several words in US English that >have had their spelling changed due to corporate corrosion. Whiskey is Irish and whisky is Scottish... >Juding the US by MTV is like judging the English by the Teletubbies or the >Spice Girls. Teenagers don't really talk like that. Hehe, that's a good one ;-) >Huge exception, though I'm having trouble thinking of anyone under the >"rule". I can think of Anthony Hopkins... what other English actors have >been cast as the bad guy? Alan Rickman? Strange, Alan Rickman was my first choice... I'll try to think of other examples. I have to admit that it's even more true for German actors... >He didn't seem to mind our incessant teasing before... No offense Gwenole >- we're all friends here who feel comfortable to let our pants down in >front of eachothers. In fact, I'm naked right now. ;-) Lucky you that you don't have a webcam ;-) >I'm back. Damn, what a scary flight! Lots of turbulence(sp?). We had a >go-round which resulted in gunning the engine and pulling up at a 45 >degree angle and me soiling myself. Turns out some dipshit didn't get off >the runway fast enough. Sounds like a hard ride... >Dan's a cool guy. It seems he has the same opinion of you, otherwise he wouldn't have mentioned dynarec.com in bold print. >BTW - I wound up spending a bunch of time on the plane (between the >rocking motion of the plane) working on the dynamic recompilation >document. Anyone interested in seeing it so far? It's about like looking >at a frame of a car with a few of the parts put in, but it's getting >there! Very interested! Bring it on! >-->Neil -- M.I.K.e Screw up your courage! You've screwed up everything else. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 29 03:36:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA72668 for dynarec-outgoing; Wed, 29 Nov 2000 03:36:08 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Food Fight From: "M.I.K.e" Message-ID: <00037735c5159167_mailit@mail.dynarec.com> References: <200011290739.IAA06187@pons.ac.upc.es> Date: Wed, 29 Nov 2000 12:35:53 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Let me guess why ;). The biggest army in the world Relative to the size of the coutry Switzerland has the largest army, because every man is actually still in the army. >(and it doesn't stand in US which is the main problem). It's better now, but some years ago we had lots of US jets flying at a low hight over our populated areas and often enough falling from the sky. I always wondered why they couldn't do this in the wide unpopulated areas of the US but had to do that over our cities... >Because it ignores any >kind of international legislation (whenever legislation is against >their objectives). Well, what do you expect of wanna-be-presidents who don't care about legislation in the US? >I forgot: US thinks it's the owner (sometimes mispelled as 'police') >of the world. We must know our owner ;)))). Well, it could have been different. Just recently one of my friends from Eastern Germany told me that they already had some special kind of money which would be givien to the Western Germans after the invasion! They really were planning on invading West Germany... >Victor -- M.I.K.e Never let your schooling interfere with your education. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 29 03:47:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA72690 for dynarec-outgoing; Wed, 29 Nov 2000 03:47:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003c01c059fb$a27342e0$01c93c9f@daves> From: "David Sharp" To: References: <00037735a7614e41_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Food Fight Date: Wed, 29 Nov 2000 11:58:04 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well, which car makes are still English anyway... ? Rover. Oh dear, I'll get my coat.... > Elevator isn't used in British English, they use lift instead. I hope one of > the British buys on the list can confirm that. LIFT!!!!! I think Elevator sounds a bit bizarre unless pronounced with an American accent. > Sounds like a semantic change. Just like Middle High German "hochgezit" meant > about every celebration and "Hochzeit" now means only wedding. > I know that NG was wondering what Americans said for "tap" and I think he > mean the thing on the kitchen sink. Nah, a taps a tap, doesn't matter if it's pouring beer or water. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 29 03:48:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA72700 for dynarec-outgoing; Wed, 29 Nov 2000 03:48:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003f01c059fb$e26c8500$01c93c9f@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: Food Fight Date: Wed, 29 Nov 2000 11:59:52 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > If that's the case, then he doesn't have much in the way of respect for > English cars (neither do I, actually). I do for German cars, though. I'm afraid the Jaguar XK8 (don't think they're english owned any more though) is extremely sexy. > Juding the US by MTV is like judging the English by the Teletubbies or the > Spice Girls. Teenagers don't really talk like that. Unfortunately many teenagers really DO talk like that. :o) > BTW - I wound up spending a bunch of time on the plane (between the > rocking motion of the plane) working on the dynamic recompilation > document. Anyone interested in seeing it so far? It's about like looking > at a frame of a car with a few of the parts put in, but it's getting > there! Yes please. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 29 14:15:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA73198 for dynarec-outgoing; Wed, 29 Nov 2000 14:15:34 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 29 Nov 2000 14:33:20 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Transmeta - the marketing organization Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This is the kind of thing I like to see happen to a company that bases its entire business line on marketing. http://biz.yahoo.com/rf/001129/n29108709.html Stock went to $50 on IPO, now is 23 3/16. Haha. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 30 00:41:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA73646 for dynarec-outgoing; Thu, 30 Nov 2000 00:40:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200011300744.IAA26247@pons.ac.upc.es> Subject: Re: DYNAREC: Transmeta - the marketing organization In-Reply-To: "from Neil Bradley at Nov 29, 2000 02:33:20 pm" To: dynarec@dynarec.com Date: Thu, 30 Nov 2000 08:44:37 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > This is the kind of thing I like to see happen to a company that bases its > entire business line on marketing. > > http://biz.yahoo.com/rf/001129/n29108709.html > > Stock went to $50 on IPO, now is 23 3/16. Haha. > Really good news. hahahaha! >:) In fact you have pointed the real problem, it would has been another thing if Transmeta hasn't started with those marketing practices (Torvaldis, etc.). If they would have showed a really serious work ... BTW, Transmeta CPUs are produced by IBM (they don't have their own factories, too expensives ;). The new doesn't point where or what is the problem. A problem with the chip? Or perhaps a problem with the Code Morpher? > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 30 01:46:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA73715 for dynarec-outgoing; Thu, 30 Nov 2000 01:46:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Nov 2000 02:03:57 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Transmeta - the marketing organization In-Reply-To: <200011300744.IAA26247@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, 30 Nov 2000, Victor Moya del Barrio wrote: > > http://biz.yahoo.com/rf/001129/n29108709.html > > Stock went to $50 on IPO, now is 23 3/16. Haha. > In fact you have pointed the real problem, it would has been > another thing if Transmeta hasn't started with those marketing > practices (Torvaldis, etc.). If they would have showed a really > serious work ... It's not often that I feel like retaliating, but it angers me to no end that something that sounded and could've been extremely cool turned out to be nothing more than overhyped, overmarketed garbage. I'm not only very much let down, I'm extremely pissed at Transmeta for it and they've lost any respect that they would've had had they actually followed through on their promises. Now we're stuck with a Pentium clone, and not a very good one at that. At least AMD is reasonably locked stepped with Intel. It'd be nice if the rest of the world taught Transmeta a lesson about bait & switch so they don't wind up pulling this crap again. The only plus side I see is that it kicked Intel in the ass to further their mobile CPU development. > BTW, Transmeta CPUs are produced by IBM (they don't have their > own factories, too expensives ;). Yep - IBM has many many fabs. Not sure what they're producing, but it 'aint PowerPC chips and it 'aint Transmeta chips, either! ;-) > The new doesn't point where or what is the problem. A problem > with the chip? Or perhaps a problem with the Code Morpher? The chip itself completely screws up from what the articles say. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 30 01:48:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA73726 for dynarec-outgoing; Thu, 30 Nov 2000 01:48:49 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Nov 2000 02:06:43 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Dynarec document started Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com It 'aint even closed to finished, but I thought I'd give everyone a view of my Dynarec document: http://www.dynarec.com/~neilb/drtheory113000.pdf In PDF form for friendly cross platform viewing. I've obviously got a ton to do, but I'd appreciate a read of what's there to figure out if what I'm saying actually makes sense. It's hard to know whether or not you're explaining a concept well enough when you're the one who understands it. ;-) Comments, please... -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 30 01:52:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA73739 for dynarec-outgoing; Thu, 30 Nov 2000 01:52:14 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Nov 2000 02:10:08 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Oh, and by the way... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [SYNTHCOM->neil: 1359] uptime 2:09AM up 171 days, 4:08, 2 users, load averages: 2.00, 2.00, 1.94 ;-) 2 CPUs with a load average of 2+ constantly for 171 days. Not too shabby! -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 30 01:58:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA73756 for dynarec-outgoing; Thu, 30 Nov 2000 01:58:34 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200011301010.LAA23080@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec document started In-Reply-To: "from Neil Bradley at Nov 30, 2000 02:06:43 am" To: dynarec@dynarec.com Date: Thu, 30 Nov 2000 11:10:25 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > It 'aint even closed to finished, but I thought I'd give everyone a view > of my Dynarec document: > > http://www.dynarec.com/~neilb/drtheory113000.pdf > > In PDF form for friendly cross platform viewing. > Well, in my 'plataform' (an old monochrome X terminal) it doesn't show propperly. But it is just a problem with the Acrobat Reader running over an Alpha server and displayed in a monochrome display. It's a luck I have a printer at hand ;). > I've obviously got a ton to do, but I'd appreciate a read of what's there > to figure out if what I'm saying actually makes sense. It's hard to know > whether or not you're explaining a concept well enough when you're the one > who understands it. ;-) > I will take a look, but now I'm at work ;). > > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 30 03:47:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA74009 for dynarec-outgoing; Thu, 30 Nov 2000 03:47:37 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200011301159.MAA31299@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec document started In-Reply-To: "from Neil Bradley at Nov 30, 2000 02:06:43 am" To: dynarec@dynarec.com Date: Thu, 30 Nov 2000 12:59:17 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've obviously got a ton to do, but I'd appreciate a read of what's there > to figure out if what I'm saying actually makes sense. It's hard to know > whether or not you're explaining a concept well enough when you're the one > who understands it. ;-) > > Comments, please... > Just a fast ones (before I leave to home). I think the problems to overcome in the intruction should be explained a bit further and perhaps extended (or may be is just my bad english :( ). It is interesting to see what point was more explained ;). The last paragraph in the introduction should be written with the largest font and in box so everyones can notice it ;). About the SIT approach: - I'm almost sure that there isn't a single dynamic binary translator that is multisource and multitarget. There are some which are somekind of multitarget but not very (ARDI for example, Shade). So that diagram is just theoric. But perhaps someday ... look above about UQDBT. - The IR is used (on existing dynarecs) more because of compiler kind optimizations and analysis rather than multisource or multitarget support. - The advantages in the SIT approach can be discussed. That is just the theory there are very heavy practical problems with being really multitarget/multisource. The disadvantages have a big weight over the benefits. Knowing the two architectures (source and target) I don't think it would be a bad thing if your main interest is PERFORMANCE rather than just portability (which I think is in fact the pupose of dynarec). Seems a good start :). You should know how the introduction resembles with hundreds of reports I have read before ;). Have you read any of them? BTW. Has anyone noticed that a guy from the UQBT (a retargetable binary translator by Cifuentes and company) has started UQDBT, a DYNAMIC and RETARGETABLE binary translator? I don't have now the name of the report where it is said. But the web page is: http://archive.csee.uq.edu.au/~csmweb/uqbt.html Cifuentes is in Sun now (sabbatical year she says), so I think (but perhaps for the UQDBT thing) UQBT is a bit stopped now. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 30 09:44:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA74287 for dynarec-outgoing; Thu, 30 Nov 2000 09:44:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Nov 2000 10:02:03 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec document started In-Reply-To: <200011301159.MAA31299@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > whether or not you're explaining a concept well enough when you're the one > > who understands it. ;-) > > Comments, please... > Just a fast ones (before I leave to home). I'm just waking up. ;-) > I think the problems to overcome in the intruction should be > explained a bit further and perhaps extended (or may be is > just my bad english :( ). It is interesting to see what point > was more explained ;). I'm not sure what you mean by this... Do you mean the SIT architecture approach? > - I'm almost sure that there isn't a single dynamic > binary translator that is multisource and multitarget. > There are some which are somekind of multitarget but > not very (ARDI for example, Shade). So that diagram > is just theoric. But perhaps someday ... look above > about UQDBT. I don't think anyone really knows because no one has released a recompiler for public perusal anyway. Are you saying that no one ever targets more than one CPU? If that's the case, then there's even less value in a SIT approach. > - The IR is used (on existing dynarecs) more because > of compiler kind optimizations and analysis rather > than multisource or multitarget support. I fail to see how one could even optimize an architecture like this. It'd make a lot more sense to optimize the target code than some intermediate representation. The more you're talking, I'm liking IR even less... > - The advantages in the SIT approach can be discussed. > That is just the theory there are very heavy practical > problems with being really multitarget/multisource. The > disadvantages have a big weight over the benefits. Yes, I intended on expanding on that. > Knowing the two architectures (source and target) I don't think > it would be a bad thing if your main interest is PERFORMANCE > rather than just portability (which I think is in fact the > pupose of dynarec). When you say "purpose of dynarec", I'm assuming you mean that PERFORMANCE is the main interest and not portability, correct? > You should know how the introduction resembles with hundreds > of reports I have read before ;). Have you read any of them? Uh... no. I'm not sure what you're referring to. > BTW. Has anyone noticed that a guy from the UQBT (a retargetable > binary translator by Cifuentes and company) has started UQDBT, a > DYNAMIC and RETARGETABLE binary translator? I don't have now > the name of the report where it is said. But the web page is: I'lltake a look at it more deeply, but the performance #s they post aren't too impressive. It also doesn't solve timing checks/problems, which we've already proven is a mistake. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 30 10:19:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA74330 for dynarec-outgoing; Thu, 30 Nov 2000 10:19:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004901c05afb$d21d4a80$e941ae3e@hal9000> From: "Victor Moya del Barrio \(DYNAREC\)" To: References: Subject: Re: DYNAREC: Dynarec document started Date: Thu, 30 Nov 2000 19:31:55 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > whether or not you're explaining a concept well enough when you're the one > > > who understands it. ;-) > > > Comments, please... > > Just a fast ones (before I leave to home). > > I'm just waking up. ;-) > And I'm just connecting to the net ;). (I only can connect at afternoons :( ) > > I think the problems to overcome in the intruction should be > > explained a bit further and perhaps extended (or may be is > > just my bad english :( ). It is interesting to see what point > > was more explained ;). > > I'm not sure what you mean by this... Do you mean the SIT architecture > approach? > No, it was about the general problems in a dynarec that you point in the introduction. > > - I'm almost sure that there isn't a single dynamic > > binary translator that is multisource and multitarget. > > There are some which are somekind of multitarget but > > not very (ARDI for example, Shade). So that diagram > > is just theoric. But perhaps someday ... look above > > about UQDBT. > > I don't think anyone really knows because no one has released a recompiler > for public perusal anyway. Are you saying that no one ever targets more > than one CPU? If that's the case, then there's even less value in a SIT > approach. > Well, I think just Ardi emulator already had version of its dynarec for more than one target CPU (I'm not sure what CPUs). But just one was real dynarec (x86?), the other where a fast threaded emulator of their IR. > > - The IR is used (on existing dynarecs) more because > > of compiler kind optimizations and analysis rather > > than multisource or multitarget support. > > I fail to see how one could even optimize an architecture like this. It'd > make a lot more sense to optimize the target code than some intermediate > representation. The more you're talking, I'm liking IR even less... > It is also used sometimes for saying it could be used for another target systems (never new sources) but it seems almost never is done. > > Knowing the two architectures (source and target) I don't think > > it would be a bad thing if your main interest is PERFORMANCE > > rather than just portability (which I think is in fact the > > pupose of dynarec). > > When you say "purpose of dynarec", I'm assuming you mean that PERFORMANCE > is the main interest and not portability, correct? > Yes, of course, I think it is the main interest. > > BTW. Has anyone noticed that a guy from the UQBT (a retargetable > > binary translator by Cifuentes and company) has started UQDBT, a > > DYNAMIC and RETARGETABLE binary translator? I don't have now > > the name of the report where it is said. But the web page is: > > I'lltake a look at it more deeply, but the performance #s they post aren't > too impressive. It also doesn't solve timing checks/problems, which we've > already proven is a mistake. > The slowdown seems to be 10X or so (they compare it with the performance of a normal interpreter emulator). But it seems they guy who is doing it (David Ung, I have been said that he is doing his PhD on this topic) has just started with it and there aren't any of the optimizations of the static translator. But I don't think it could never have a so good performance as a specially made for a target machine dynarec (and in the doc he points many problem with the multisource/multitarget approach). The name of the document is "Machine-Adaptable Dynamic Binary Translation" by David Ung and Cristina Cifuentes. The only 'serious' document which talks about timing in binary translation is TIBBIT (I finally could find and print it yesterday). But it isn't so useful. It points the obvious solution (time checkpoints inside translated block) and some statistics results for a given problem. But it can be a good reference for an university project ;). Or a start point if you don't know anything yet about the emuscene kind of emulation which is emulation of 'real time systems'. The full name is "Timing Insensitive Binary to Binary Translation of Real Time Systems" by Bryce Cogswell and Zary Segall. In fact I have been building a bibliography with the documents I already have. I thought to upload it to the dynarec account with all the documents. But I'm not sure, I'm almost sure that it is a bit illegal to mantein 'illegal' copies of some of the documents online. But in fact who cares if noone of them never will visit my page. So if you gave me permission to keep some MB (around 10 or in the worst 20 I don't know still) in my dynarec account I will build the 'Illegal Binary Translation Reference Library' ;)). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 30 11:24:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA74407 for dynarec-outgoing; Thu, 30 Nov 2000 11:24:49 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec document started From: "M.I.K.e" Message-ID: <00037750a68e8bc6_mailit@mail.dynarec.com> References: Date: Thu, 30 Nov 2000 20:40:05 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm just waking up. ;-) Now that you are awake some quick corrections: On page 1: "for full a full 1:1 representation" - I guess the first "full" is too much "There are may techniques" - many? "A module that contains code to emit actual target layer object code" - "module that contains code" sounds a bit disturbing, when we focus about code to be translated On page 2: "To solve these problems (and introduce a few more) called the" - "a method called the"? Otherwise it's a nice start and I'm longing for updates ;-) >> - I'm almost sure that there isn't a single dynamic >> binary translator that is multisource and multitarget. >> There are some which are somekind of multitarget but >> not very (ARDI for example, Shade). So that diagram >> is just theoric. But perhaps someday ... look above >> about UQDBT. >I don't think anyone really knows because no one has released a recompiler >for public perusal anyway. Are you saying that no one ever targets more >than one CPU? If that's the case, then there's even less value in a SIT >approach. I think SIT is a very nice theoretical idea, which I preferred for some time as well. But from my "grown-up" point of view it looks quite impractical now. >> - The IR is used (on existing dynarecs) more because >> of compiler kind optimizations and analysis rather >> than multisource or multitarget support. >I fail to see how one could even optimize an architecture like this. It'd >make a lot more sense to optimize the target code than some intermediate >representation. The more you're talking, I'm liking IR even less... Indeed, IR is only useful to reduce the work on multiple platforms, but since (at least IMO) of the traditional compiler optimization techniques only the peephole optimization is really of use the IR hinders more than it supports optimization. >> BTW. Has anyone noticed that a guy from the UQBT (a retargetable >> binary translator by Cifuentes and company) has started UQDBT, a >> DYNAMIC and RETARGETABLE binary translator? I don't have now >> the name of the report where it is said. But the web page is: >I'lltake a look at it more deeply, but the performance #s they post aren't >too impressive. It also doesn't solve timing checks/problems, which we've >already proven is a mistake. I still don't believe that their approach is that good. I think they are using the GCC RTL as IR, which is most likely one of the reasons why GCC optimization is crap for x86. I'm not sure of it was in this document or in another where they presented the advantages of special code tools by comparing a hand coded 286 disassambler and a generated SPARC disassembler, where the latter is much smaller. Well, maybe they can fool those who don't know these processors, but I know that disassembling SPARC instructions is much simpler than disassembling 286 instructions... >-->Neil -- M.I.K.e Do not meddle in the affairs of troff, for it is subtle and quick to anger. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 30 11:51:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA74439 for dynarec-outgoing; Thu, 30 Nov 2000 11:51:25 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec document started From: "M.I.K.e" Message-ID: <000377510892d1f1_mailit@mail.dynarec.com> References: <004901c05afb$d21d4a80$e941ae3e@hal9000> Date: Thu, 30 Nov 2000 21:07:30 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >And I'm just connecting to the net ;). (I only can connect at afternoons :( ) Poor pal :-( >Well, I think just Ardi emulator already had version of its dynarec for >more than one target CPU (I'm not sure what CPUs). But just one >was real dynarec (x86?), the other where a fast threaded emulator >of their IR. There you have it: the only dynarec produces x86 code, on all other platforms the threaded interpreter is run. >It is also used sometimes for saying it could be used for another >target systems (never new sources) but it seems almost never is done. Yeah, that's typical for university projects: "Hey, we might be able to extend it in some later project..." >The name of the document is "Machine-Adaptable Dynamic Binary Translation" by >David Ung and Cristina Cifuentes. Did you actually find something that I don't know yet? I only know * "Binary Translation: Static, Dynamic, Retargetable?", by Christina Cifuentes and Vishv Malhotra * "The Design of a Resourcable and Retargetable Binary Translator", by Cifuentes, Van Emmerik, and Ramsey * "UQBT: Adaptable Binary Translation at Low Cost", by Cifuentes and Van Emmerik. >The only 'serious' document which talks about timing in binary translation is >TIBBIT (I finally could find and print it yesterday). Hey, I know that thing is very hard to find. I think it's some static translator from 68K code. >But it isn't so useful. It points theobvious >solution (time checkpoints inside translated block) and some statistics >results for a given problem. Yeah, it mainly features some diagrams. For our interest quite lame... >The full name is "Timing Insensitive Binary to Binary Translation of Real >Time Systems" by Bryce Cogswell and Zary Segall. I know that of course ;-) But believe me, I was getting worried that you might have better resources than I have ;-) >In fact I have been building a bibliography with the documents I already >have. I thought to upload it to the dynarec account with all the documents. >But I'm not sure, I'm almost sure that it is a bit illegal to mantein >'illegal' copies of some of the documents online. Hm, the UQBT document I mentioned obove was password protected on all servers I was pointed to, so I did a search with Google and got a *direct* link to a PDF on some Japanese server, which turned out to be exactly what I was looking for ;-) >But in fact who cares if noone >of them never will visit my page. So if you gave me permission to keep >some MB (around 10 or in the worst 20 I don't know still) in my dynarec >account I will build the 'Illegal Binary Translation Reference Library' ;)). A library would be nice. In that case you'd be our libarian ;-) >Victor -- M.I.K.e It's a damn poor mind that can only think of one way to spell a word. -- Andrew Jackson --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 30 12:43:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA74493 for dynarec-outgoing; Thu, 30 Nov 2000 12:43:29 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001a01c05b0f$f585d640$e941ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <004901c05afb$d21d4a80$e941ae3e@hal9000> <000377510892d1f1_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec document started Date: Thu, 30 Nov 2000 21:56:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >It is also used sometimes for saying it could be used for another > >target systems (never new sources) but it seems almost never is done. > > Yeah, that's typical for university projects: "Hey, we might be able to > extend it in some later project..." > Well, we actually have problems with founding ;). > >The name of the document is "Machine-Adaptable Dynamic Binary Translation" > by > >David Ung and Cristina Cifuentes. > > Did you actually find something that I don't know yet? > I only know > * "Binary Translation: Static, Dynamic, Retargetable?", by Christina > Cifuentes and Vishv Malhotra > * "The Design of a Resourcable and Retargetable Binary Translator", by > Cifuentes, Van Emmerik, and Ramsey > * "UQBT: Adaptable Binary Translation at Low Cost", by Cifuentes and Van > Emmerik. > I know or I have (I'm still completing my library) all of them. It has been a bit of luck because I think this new report is rather new. But perhaps I could get some fresh information about this project ;). A PhD student (well the only one ;) of the Dixie group already knows Cifuentes (he found her in a stage in Sun last summer) and this January he will go again to Sun ;). And it could be possible someday I could go at small a stage there (Queensland) if I finally start PhD studies. I should have to improve my english ;(. > >The only 'serious' document which talks about timing in binary translation > is > >TIBBIT (I finally could find and print it yesterday). > > Hey, I know that thing is very hard to find. I think it's some static > translator from 68K code. > Yes. It is pointed to embedded and real time systems static binary translation. > >The full name is "Timing Insensitive Binary to Binary Translation of Real > >Time Systems" by Bryce Cogswell and Zary Segall. > > I know that of course ;-) > But believe me, I was getting worried that you might have better resources > than I have ;-) > Well my only real resource is google ;). Well I have from my university access to online libraries you haven't ;). > >In fact I have been building a bibliography with the documents I already > >have. I thought to upload it to the dynarec account with all the documents. > >But I'm not sure, I'm almost sure that it is a bit illegal to mantein > >'illegal' copies of some of the documents online. > > Hm, the UQBT document I mentioned obove was password protected on all servers > I was pointed to, so I did a search with Google and got a *direct* link to a > PDF on some Japanese server, which turned out to be exactly what I was > looking for ;-) > He!, I'm not sure where I get it but for me was unprotected ;). It was a kind of acm mirror or another 'universitary library' somewhere in Europe perhaps. http://citeseer.nj.nec.com/cs No, it seems Nec :0. > >But in fact who cares if noone > >of them never will visit my page. So if you gave me permission to keep > >some MB (around 10 or in the worst 20 I don't know still) in my dynarec > >account I will build the 'Illegal Binary Translation Reference Library' ;)). > > A library would be nice. In that case you'd be our libarian ;-) > Let see if this weekend I can setup it. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 30 13:35:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA74544 for dynarec-outgoing; Thu, 30 Nov 2000 13:35:26 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Nov 2000 13:53:28 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec document started In-Reply-To: <004901c05afb$d21d4a80$e941ae3e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > just my bad english :( ). It is interesting to see what point > > > was more explained ;). > > I'm not sure what you mean by this... Do you mean the SIT architecture > > approach? > No, it was about the general problems in a dynarec that you point > in the introduction. I intended to go into that a little later, specifically because I'm having a big problem with order precedence. Some things I can't explain until I've explained other concepts, so I wanted to gloss over it at the beginning and go into more detail later on. For example, for one to know why an IR doesn't work as well, the concept of the type of info being passed to the target layer must first be understood. > > > of compiler kind optimizations and analysis rather > > > than multisource or multitarget support. > > I fail to see how one could even optimize an architecture like this. It'd > > make a lot more sense to optimize the target code than some intermediate > > representation. The more you're talking, I'm liking IR even less... > It is also used sometimes for saying it could be used for another > target systems (never new sources) but it seems almost never is done. Sounds like everyone writing "portable" code that is never ported to another platform. Someone in love with the concept but throws all practicality out the window. > > I'lltake a look at it more deeply, but the performance #s they post aren't > > too impressive. It also doesn't solve timing checks/problems, which we've > > already proven is a mistake. > The only 'serious' document which talks about timing in binary > translation is TIBBIT (I finally could find and print it yesterday). > But it isn't so useful. It points the obvious solution (time > checkpoints inside translated block) and some statistics results for a > given problem. But it can be a good reference for an university > project ;). Or a start point if you don't know anything yet about the > emuscene kind of emulation which is emulation of 'real time systems'. The problem here is one of pollution. Once someone comes up with an idea, that idea is followed and is seldom if ever questioned again. People tend to be sheep - not leaders. > The full name is "Timing Insensitive Binary to Binary Translation of > Real Time Systems" by Bryce Cogswell and Zary Segall. That's just binary recompilation without timing. > In fact I have been building a bibliography with the documents I > already have. I thought to upload it to the dynarec account with all > the documents. But I'm not sure, I'm almost sure that it is a bit > illegal to mantein 'illegal' copies of some of the documents online. > But in fact who cares if noone of them never will visit my page. So > if you gave me permission to keep some MB (around 10 or in the worst > 20 I don't know still) in my dynarec account I will build the 'Illegal > Binary Translation Reference Library' ;)). Go for it. I think we've got about 3.someodd gigs free. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 30 13:37:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA74555 for dynarec-outgoing; Thu, 30 Nov 2000 13:37:49 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Nov 2000 13:55:51 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec document started In-Reply-To: <00037750a68e8bc6_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > On page 1: > "for full a full 1:1 representation" - I guess the first "full" is too much Yeah. That's what I get for typing when I'm on a plane that's bouncing around. > "There are may techniques" - many? Yup. > "A module that contains code to emit actual target layer object code" - > "module that contains code" sounds a bit disturbing, when we focus about code > to be translated > On page 2: > "To solve these problems (and introduce a few more) called the" - "a method > called the"? Yeah, I'll go back over it. > >for public perusal anyway. Are you saying that no one ever targets more > >than one CPU? If that's the case, then there's even less value in a SIT > >approach. > I think SIT is a very nice theoretical idea, which I preferred for some time > as well. But from my "grown-up" point of view it looks quite impractical now. Precisely. An IR, after I looked at it closely, didn't look like a good approach, and as I went through, the SIT approach becomes less and less palettable. > Indeed, IR is only useful to reduce the work on multiple platforms, but since > (at least IMO) of the traditional compiler optimization techniques only the > peephole optimization is really of use the IR hinders more than it supports > optimization. Precisely. > >I'lltake a look at it more deeply, but the performance #s they post aren't > >too impressive. It also doesn't solve timing checks/problems, which we've > >already proven is a mistake. > I still don't believe that their approach is that good. I think they are > using the GCC RTL as IR, which is most likely one of the reasons why GCC > optimization is crap for x86. Plus it does stack calling convnetions, which makes things really messy (and its register calling conventions are *HORRIBLE*). > disassambler and a generated SPARC disassembler, where the latter is much > smaller. Well, maybe they can fool those who don't know these processors, but > I know that disassembling SPARC instructions is much simpler than > disassembling 286 instructions... Oh yeah. By a long shot. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 30 13:59:34 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA74578 for dynarec-outgoing; Thu, 30 Nov 2000 13:59:26 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec document started From: "M.I.K.e" Message-ID: <00037752d1e38f5a_mailit@mail.dynarec.com> References: Date: Thu, 30 Nov 2000 23:15:22 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yeah. That's what I get for typing when I'm on a plane that's bouncing >around. In that case it's astonishing that I found only so few errors! >Yeah, I'll go back over it. No probs, I guess I had worse errors in the first draft of most of my documents. >Precisely. An IR, after I looked at it closely, didn't look like a good >approach, and as I went through, the SIT approach becomes less and less >palettable. Yeah, the appealing thing is that you don't need so many transators, actually only two per platform (from and to the IR), to have translations between every possible combination of architectures. This is also the favourite theory in natural language machine translation, but I think it was never used because we simply don't know yet how to encode semantics in the IR that the resulting translation isn't full of errors. Since instruction semantics are less complicated the "how" isn't the big problem, but that you either have lots and lots of internal instructions or lots of tiny instructions describing the bigger instruction, which leads to either an IR no one is willing to port to a platform because it's too large a task, or it's easy to port but due to each source instruction being represented by several tiny internal instruction you end up with very badly optimized target code. >> I know that disassembling SPARC instructions is much simpler than >> disassembling 286 instructions... >Oh yeah. By a long shot. Don't get me wrong, I didn't mean that using automatic methods to generate a disassembler is a bad thing, only that it's a bad joke to say it's good because the SPARC one is smaller than the 286 - it's just a very bad example. >-->Neil -- M.I.K.e If you think the United States has stood still, who built the largest shopping center in the world? -- Richard Nixon --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 1 00:40:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA75049 for dynarec-outgoing; Fri, 1 Dec 2000 00:40:31 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200012010852.JAA24929@abrell.ac.upc.es> Subject: Re: DYNAREC: Dynarec document started In-Reply-To: "from Neil Bradley at Nov 30, 2000 01:53:28 pm" To: dynarec@dynarec.com Date: Fri, 1 Dec 2000 09:52:29 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL77 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > The only 'serious' document which talks about timing in binary > > translation is TIBBIT (I finally could find and print it yesterday). > > But it isn't so useful. It points the obvious solution (time > > checkpoints inside translated block) and some statistics results for a > > given problem. But it can be a good reference for an university > > project ;). Or a start point if you don't know anything yet about the > > emuscene kind of emulation which is emulation of 'real time systems'. > > The problem here is one of pollution. Once someone comes up with an idea, > that idea is followed and is seldom if ever questioned again. People tend > to be sheep - not leaders. > Being a leader can be exhausting ;). > > The full name is "Timing Insensitive Binary to Binary Translation of > > Real Time Systems" by Bryce Cogswell and Zary Segall. > > That's just binary recompilation without timing. > Nop. I also thought it was a strange title, but it is the only document about binary recompilation WITH timing. Perhaps it wanted to mean that the result is insensitive to the timing in the new machine. > Go for it. I think we've got about 3.someodd gigs free. > Perhaps MIKe could contribute with his large library too ;). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 1 08:39:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA75616 for dynarec-outgoing; Fri, 1 Dec 2000 08:38:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 1 Dec 2000 08:56:46 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Ha ha Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com http://www.theregister.co.uk/content/2/15148.html -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 1 11:26:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA75747 for dynarec-outgoing; Fri, 1 Dec 2000 11:25:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: News from NG!!! From: "M.I.K.e" Message-ID: <00037764c7a28933_mailit@mail.dynarec.com> Date: Fri, 01 Dec 2000 20:40:59 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Yes that's right! I indeed received a message from Neil Griffiths, telling me that he is still alive, but currently trapped in the real world because he still doesn't have a phone line! He hopes that the problem might be fixed next week - fingers crossed. He asked me to inform you that he is still around and also reading our messages, but it would be too complicated to post messages. He'd also like to thank Bart for the credits on his 68k emu page; I second that! -- M.I.K.e Atlanta makes it against the law to tie a giraffe to a telephone pole or street lamp. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 1 12:53:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA75816 for dynarec-outgoing; Fri, 1 Dec 2000 12:52:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 1 Dec 00 16:01:40 -0500 Message-Id: <3.0.5.32.20001201125628.0083a100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 01 Dec 2000 12:56:28 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: News from NG!!! In-Reply-To: <00037764c7a28933_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >He'd also like to thank Bart for the credits on his 68k emu page; I second >that! You mean in the readme.txt? I didn't post them on the actual page :/ It's good to hear that NeilG is still around, hopefully he can resume posting soon! I guess I can kind of get an idea about some of the problems he must be having, I've been going through ISP hell lately, but I've settled on the free Juno service for now (using RASspy, I obtained the encrypted password and username it uses, and I can connect with normal dial-up networking and avoid that crappy client program they supply :)) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 1 12:58:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA75831 for dynarec-outgoing; Fri, 1 Dec 2000 12:57:59 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001101c05bdb$2cfcbbe0$df43ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <00037764c7a28933_mailit@mail.dynarec.com> Subject: Re: DYNAREC: News from NG!!! Date: Fri, 1 Dec 2000 22:10:45 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yes that's right! > I indeed received a message from Neil Griffiths, telling me that he is still > alive, but currently trapped in the real world because he still doesn't have > a phone line! He hopes that the problem might be fixed next week - fingers > crossed. These are really good news :). > He asked me to inform you that he is still around and also reading our > messages, but it would be too complicated to post messages. > Let's hope he will return as soon as possible. > He'd also like to thank Bart for the credits on his 68k emu page; I second > that! > Well, I think anyone of the list should second it ;). > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 1 13:09:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA75851 for dynarec-outgoing; Fri, 1 Dec 2000 13:09:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: News from NG!!! From: "M.I.K.e" Message-ID: <0003776633a88548_mailit@mail.dynarec.com> References: <3.0.5.32.20001201125628.0083a100@mailandnews.com> Date: Fri, 01 Dec 2000 22:22:47 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You mean in the readme.txt? I didn't post them on the actual page :/ Oops, my fault! >It's good to hear that NeilG is still around, hopefully he can resume >posting soon! I hope so too. >I guess I can kind of get an idea about some of the problems >he must be having, I've been going through ISP hell lately, but I've >settled on the free Juno service for now (using RASspy, I obtained the >encrypted password and username it uses, and I can connect with normal >dial-up networking and avoid that crappy client program they supply :)) Hehe ;-) Actually his problem reminds me more of a quote from Matrix: "They cut the hardline!" (BTW, I have it on DVD now, yes!) >Bart -- M.I.K.e "Calvin Coolidge was the greatest man who ever came out of Plymouth Corner, Vermont." -- Clarence Darrow --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 1 13:23:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA75873 for dynarec-outgoing; Fri, 1 Dec 2000 13:23:37 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001f01c05bde$c1b05500$df43ae3e@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Threaded emulators Date: Fri, 1 Dec 2000 22:35:59 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Anyone know if there is any threaded CPU emulator (and better if it is a open source one ;) out there? I think that all (or almost all) the CPU cores in the emuscene are rather tipical interpreter emulators. Well, ARDI's use threaded code I think but seems to be an exception and it is suposed to be a dynarec not a threaded emulator ;). Threaded emulators store the decodification of each executed instruction for later use. They use an array of pointers for each memory address (where code can be found). Something like our transmap ;). The pointer stores a pointer to the function which emulates the instruction located in this address of the emulated memory. Threaded code seems also to have been used more with C emulators rather than with assembler emulators ... strange (well, WHEN -rarely- it has been used of course). I was thoughting about using threaded code with 8080 or Z80 emulation (mainly to get me into more troubles when doing my 8080 core ;) but decode a Z80 instruction is usually a simple task and I'm not sure if it would be some profit from storing the decode information. With other CPUs this can be different. I think threaded code makes more sense with ISAs which are difficult to decode (for example x86 is very difficult) and makes a lot of sense to store the decoding for each instruction. Another example, with 68K emulation perhaps it could make sense also for don't using that large (64K entries) decode table. But it has the problem that now there is a 'transmap' or 'decode cache' (if it is only stored the address for the function or more info) which also would need more memory. I'm not sure if the trade off would make sense. The decode in a threaded emulator could be the same than in a common interpreter or a slower and simpler version (because theorically the decoding is done just one, the first, time, as in a dynarec). Threaded code also could help to add some simple optimizations which are usual in dynarecs: a simple flag calculation suppression (just looking for the next instruction, if it deletes the flags of the actual instruction a version of the function without flag calculation could be used rather than the one with flag calculation), and perhaps some grouping of instructions. Threaded code shares with dynarec the problem of self-modyfing code. When the code is overwritten the 'decode cache' must be erased. But perhaps it is less sensitive to this problem because in fact (more if it is using the same decoding technique than an optimized normal interpreter emulator) it doesn't add more time to the execution than just the decode phase which is also made in the interpreter. Threaded code can improve the performance if the decoding is slow. But it can also increase the memory used (althought it can decrease the memory used for decoding ..., which one would be worst for the cache decoding info or instruction decode info?). And perhaps it could be possible to add other interesting optimizations. Now that we are going to work with 68K emulation and we have some people here which already has worked with it. Do you think threaded code could be a good idea to improve the performance of C or assembler 68K cores? And in fact has anyone really tried this kind of things? Of course a properly done dynarec should be even better ;). Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 1 14:48:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA75943 for dynarec-outgoing; Fri, 1 Dec 2000 14:48:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <001f01c05bde$c1b05500$df43ae3e@hal9000> Subject: Re: DYNAREC: Threaded emulators From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Sat, 2 Dec 2000 00:01:36 +0100 Message-ID: <1ekzgxl.1knemgy13jh0g0M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id OAA75940 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, [Sorry if I don't elaborate more but I am a little sick those days...] > Anyone know if there is any threaded CPU emulator (and better if it is a > open source one ;) out there? Direct Threaded: g88 (88000), psim (PPC 604), some other simulators in the binutils package Call Threaded: Generator (68k), my experiment with UAE > Well, ARDI's use threaded code I think but seems to be an exception and > it is suposed to be a dynarec not a threaded emulator ;). Nope, Syn68k is supposed to be a *Direct Threaded Code* Interpreter, and portable thanks to gcc. It simply happens that they have a dynamic translator to native code for the X86 architecture. BTW, if gcc is not available, they would have used token threaded (bytecode in other words) or call threaded approaches. > Threaded code also could help to add some simple optimizations which > are usual in dynarecs: a simple flag calculation suppression Full live analysis doesn't cost that much but *yes*, a one-pass forward approach is faster than a two-pass approach. > Threaded code shares with dynarec the problem of self-modyfing code. > When the code is overwritten the 'decode cache' must be erased. I will talk about my experience with my experiment with UAE: Basically, I took the original core, added a decoder that generated pointers to instruction handlers implemented as functions, hence the "call threaded" term. I checksumed the block whenever it was executed, even if the last instruction of the block was a branch to the begining of the same block! Damn slow! That's why I got the emulator running 15% slower than the original core though it did things like: - flag calculation removal: ~75% of the instructions didn't need to compute the flags - lazy handling of the program counter: in fact, none was needed to be updated except when Exceptions() had to be processed. Much speed could be gained if I didn't checksumed each block but used mechanisms used in the current JIT compiler instead. BTW, I calculated that the approach I intended to take for my DTCi68k (68LC040) would have generated only ~750 synthetic instruction handlers/variants (CC and non-CC variants included). Thus making code size low. > Do you think threaded code could be a good idea to improve the performance > of C or assembler 68K cores? Yes. > And in fact has anyone really tried this kind of things? A real direct threaded core for 68k is still in project. Read: I still want my own open sourced Syn68k ;-) In fact, I need a pretranslator-based emulator in order to make MAE-style code patching without mass memory usage and with a mixed mode emulation scheme (native/synthetic). You may wonder why I simply don't use the always-decode-then-compile (ADTC) every block approach. The reason is simple: I found it way too slow. I tried a variant of JIT Basilisk II with a similar but faster decoder used in my old Call Threaded Emulator experiment but I saw so little gain over the "old" interpreter (actually, the JIT version was even slower!) with Direct Addressing that I backtracked straight away. BTW, the JIT version used memory banked addressing, IIRC so I might have to try again. -- Gwenolé Beauchesne --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 1 14:57:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA75960 for dynarec-outgoing; Fri, 1 Dec 2000 14:57:49 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec document started From: "M.I.K.e" Message-ID: <00037767795d6d01_mailit@mail.dynarec.com> References: <200012010852.JAA24929@abrell.ac.upc.es> Date: Fri, 01 Dec 2000 23:53:51 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Go for it. I think we've got about 3.someodd gigs free. >Perhaps MIKe could contribute with his large library too ;). Me? I don't have any illegal documents! ;-) I almost thought to volunteer as secondary librarian since we both should have the largest collection of dynarec related documents. >Victor -- M.I.K.e It's illegal in Wilbur, Washington, to ride an ugly horse. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 1 14:58:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA75969 for dynarec-outgoing; Fri, 1 Dec 2000 14:58:05 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Threaded emulators From: "M.I.K.e" Message-ID: <00037767bbffb683_mailit@mail.dynarec.com> References: <001f01c05bde$c1b05500$df43ae3e@hal9000> Date: Sat, 02 Dec 2000 00:12:29 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Anyone know if there is any threaded CPU emulator (and better if it is a >open source one ;) out there? I think that all (or almost all) the CPU cores >in the emuscene are rather tipical interpreter emulators. Generator! It's more a threaded emulator than anything else. The "dynarec" for ARM only generates real code for MOVE instructions and a branch to an emulating routine is emitted for everything else. Since Generator builds special code information blocks before the code emitter is put to work, it shouldn't be much of a problem to use these information blocks on non-ARM platform, although I'm not sure if it's really done or not. >I think threaded code makes more sense with ISAs which are difficult to decode I guess you're right. A threaded emulator for 6502 would be just senseless. >Threaded code also could help to add some simple optimizations which >are usual in dynarecs: a simple flag calculation suppression (just looking >for the next instruction, if it deletes the flags of the actual instruction a >version of the function without flag calculation could be used rather than >the one with flag calculation), and perhaps some grouping of instructions. Generator actually does that. This is the reason why there are two versions of almost every instruction emulation routine: one which generates all flags, and another which generates no flags. If the flags generated by an instruction aren't used or tested in anyway the address of the routine which generates no flags is added to the instruction information block. >Threaded code shares with dynarec the problem of self-modyfing code. True. But I guess Generator won't handle this because Genesis code normally should run in ROM. Any comments on this one Bart? >When the code is overwritten the 'decode cache' must be erased. But >perhaps it is less sensitive to this problem because in fact (more if it >is using the same decoding technique than an optimized normal >interpreter emulator) it doesn't add more time to the execution than >just the decode phase which is also made in the interpreter. Well, if you also want to do some optimizations then it shouldn't be that much faster than a well-designed dynarec can generate code. >Threaded code can improve the performance if the decoding is slow. >But it can also increase the memory used It *will* increase memory use, although probably not as much as a dynarec. >Now that we are going to work with 68K emulation and we have some >people here which already has worked with it. Do you think threaded >code could be a good idea to improve the performance of C or assembler >68K cores? And in fact has anyone really tried this kind of things? Ask James Ponder, who wrote Generator. I only know that David McEwen, who ported both Generator and DGen to RISC OS, didn't get any speed increase over DGen, but maybe the 68K emulation wasn't the bottle-neck, who knows? >Of course a properly done dynarec should be even better ;). Indeed ;-) >Victor -- M.I.K.e The average woman would rather have beauty than brains, because the average man can see better than he can think. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 1 14:59:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA75979 for dynarec-outgoing; Fri, 1 Dec 2000 14:59:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3A282F14.34FF6C8F@austin.rr.com> Date: Fri, 01 Dec 2000 15:07:00 -0800 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (WinNT; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Threaded emulators References: <001f01c05bde$c1b05500$df43ae3e@hal9000> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Victor Moya del Barrio wrote: > Anyone know if there is any threaded CPU emulator (and better if it is a > open source one ;) out there? I think that all (or almost all) the CPU cores > in the emuscene are rather tipical interpreter emulators. Threaded intepreters are definitely out there, the GCC docs specifically mention them as a possible use for labeled gotos. > code with 8080 or Z80 emulation (mainly to get me into more troubles when > doing my 8080 core ;) but decode a Z80 instruction is usually a simple task > and I'm not sure if it would be some profit from storing the decode > information. It would still remove the fetch-decode sequence from the core, whether it be unified or inlined. It does add another, rather large, lookup table to deal with, but accesses to this table will generally be nice and semi-sequential. For architectures with instruction size restrictions, or fixed instruction sizes, this table can be a bit smaller. > for don't using that large (64K entries) decode table. But it has the problem > that now there is a 'transmap' or 'decode cache' (if it is only stored the > address for the function or more info) which also would need more memory. The tradeoff is that the individual instruction covers are simplified, thus making it more likely for them to still be in the cache. It's use for the NES is probably questionable, but I'll see what can be done =) > Threaded code shares with dynarec the problem of self-modyfing code. > When the code is overwritten the 'decode cache' must be erased. But > perhaps it is less sensitive to this problem because in fact (more if it > is using the same decoding technique than an optimized normal > interpreter emulator) it doesn't add more time to the execution than > just the decode phase which is also made in the interpreter. One potential problem that could be quite 'interesting' to deal with would be to jump to the middle of an instruction, but I don't think that is a very common practice (I hope...) I've been out of the loop a bit, but you can completely remove the decoded flag lookup, and just point undecoded entries at the decoder function. > the memory used for decoding ..., which one would be worst for > the cache decoding info or instruction decode info?). And perhaps > it could be possible to add other interesting optimizations. Threading it should be kinder to the cache, as you are not jumping randomly around the table every instruction. On architectures where cache fetch hints are supported, you could avoid even the cache misses a conditional jump would incur. > Now that we are going to work with 68K emulation and we have some > people here which already has worked with it. Do you think threaded > code could be a good idea to improve the performance of C or assembler > 68K cores? And in fact has anyone really tried this kind of things? Another thing about the threaded core is that it is a logical step in the process of converting an existing intepretive core to a dynarec. With creative use of labels and memcpy, you might even be able to transform it into a cover based dynarec somewhat quickly. > Victor -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 1 15:22:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA76007 for dynarec-outgoing; Fri, 1 Dec 2000 15:22:19 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Threaded emulators From: "M.I.K.e" Message-ID: <00037768166853f8_mailit@mail.dynarec.com> References: <1ekzgxl.1knemgy13jh0g0M@[192.168.0.2]> Date: Sat, 02 Dec 2000 00:37:46 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >[Sorry if I don't elaborate more but I am a little sick those days...] I hope you get well soon! >Direct Threaded: g88 (88000), psim (PPC 604), some other simulators in >the binutils package Seems I still have to learn more about some emulators... >I checksumed the block whenever it was executed, even if the last >instruction of the block was a branch to the begining of the same block! >Damn slow! That's why I got the emulator running 15% slower than the >original core though it did things like: Checksumming is always the most obvious solution against self-modifying code, but I already assumed that it might be too slow. >- flag calculation removal: >~75% of the instructions didn't need to compute the flags Good to know. >- lazy handling of the program counter: >in fact, none was needed to be updated except when Exceptions() had to >be processed. Since you know the PC contents for every PC relative addressing and there is no instruction which manipulates the PC directly that's quite easy. ARM, in this case, is a different story though... >Much speed could be gained if I didn't checksumed each block but used >mechanisms used in the current JIT compiler instead. As there are? >BTW, I calculated that the approach I intended to take for my DTCi68k >(68LC040) would have generated only ~750 synthetic instruction >handlers/variants (CC and non-CC variants included). Thus making code >size low. Not bad! >In fact, I need a pretranslator-based emulator in order to make >MAE-style code patching without mass memory usage and with a mixed mode >emulation scheme (native/synthetic). You may wonder why I simply don't >use the always-decode-then-compile (ADTC) every block approach. The >reason is simple: I found it way too slow. I tried a variant of JIT >Basilisk II with a similar but faster decoder used in my old Call >Threaded Emulator experiment but I saw so little gain over the "old" >interpreter (actually, the JIT version was even slower!) with Direct >Addressing that I backtracked straight away. BTW, the JIT version used >memory banked addressing, IIRC so I might have to try again. Hmm... BTW, any chance that I might see a faster Basilisk II for BeOS someday? >Gwenolé Beauchesne -- M.I.K.e Acid -- better living through chemistry. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 2 03:43:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA78784 for dynarec-outgoing; Sat, 2 Dec 2000 03:43:23 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000901c05c56$e0d3e5a0$ac45ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <200012010852.JAA24929@abrell.ac.upc.es> <00037767795d6d01_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec document started Date: Sat, 2 Dec 2000 12:56:15 +0100 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> Go for it. I think we've got about 3.someodd gigs free. > >Perhaps MIKe could contribute with his large library too ;). > > Me? I don't have any illegal documents! ;-) > He ;). > I almost thought to volunteer as secondary librarian since we both should > have the largest collection of dynarec related documents. > Maybe the first ;). I'm sure your library is the largest one by far. In fact I strangely have some documents printed which I can't found anywhere in my HD ... Perhaps I printed them at job and I forgot to download the files later at home. The library is now 12 MB in size (7MB Zipped but zip doesn't seems to work in the dynarec server). I will begin to upload today or tomorrow. I'm still searching some documents and URLs. It looks ugly (like all my pages ;) but I'm not a web designer ;). > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 2 03:45:21 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA78797 for dynarec-outgoing; Sat, 2 Dec 2000 03:45:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000f01c05c57$2327e0a0$ac45ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <001f01c05bde$c1b05500$df43ae3e@hal9000> <00037767bbffb683_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Threaded emulators Date: Sat, 2 Dec 2000 12:58:07 +0100 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Anyone know if there is any threaded CPU emulator (and better if it is a > >open source one ;) out there? I think that all (or almost all) the CPU > cores > >in the emuscene are rather tipical interpreter emulators. > > Generator! It's more a threaded emulator than anything else. The "dynarec" > for ARM only generates real code for MOVE instructions and a branch to an > emulating routine is emitted for everything else. Since Generator builds > special code information blocks before the code emitter is put to work, it > shouldn't be much of a problem to use these information blocks on non-ARM > platform, although I'm not sure if it's really done or not. > I forgot that ... > >I think threaded code makes more sense with ISAs which are difficult to > decode > > I guess you're right. A threaded emulator for 6502 would be just senseless. > But I feel that a normal interpreter for my 8080 core is kinda boring ;). > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 2 03:57:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA78813 for dynarec-outgoing; Sat, 2 Dec 2000 03:57:44 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002201c05c58$de433dc0$ac45ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <001f01c05bde$c1b05500$df43ae3e@hal9000> <3A282F14.34FF6C8F@austin.rr.com> Subject: Re: DYNAREC: Threaded emulators Date: Sat, 2 Dec 2000 13:05:00 +0100 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > One potential problem that could be quite 'interesting' to deal with would be to > jump to the middle of an instruction, but I don't think that is a very common > practice (I hope...) I've been out of the loop a bit, but you can completely remove > the decoded flag lookup, and just point undecoded entries at the decoder function. > Well if you have a map or decode table for all the address where you can jump to. The addresses which aren't used (because of variable size instructions) point to a decode function, the address used to the propper emulated instruction function. Whenever you hit a non visited address you decode the instruction there and update the decode table. I don't think there would be any problem with a jump to the middle of an instruction, just there will be two decodifications for some of the bytes. > > Now that we are going to work with 68K emulation and we have some > > people here which already has worked with it. Do you think threaded > > code could be a good idea to improve the performance of C or assembler > > 68K cores? And in fact has anyone really tried this kind of things? > > Another thing about the threaded core is that it is a logical step in the process > of converting an existing intepretive core to a dynarec. With creative use of > labels and memcpy, you might even be able to transform it into a cover based > dynarec somewhat quickly. > Yes, that kind of (let's call it so ;) 'dynarec' can be easily extended from an interpreter emulator. > ReaperSMS - homepageless Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 2 03:57:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA78822 for dynarec-outgoing; Sat, 2 Dec 2000 03:57:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002301c05c58$e3914600$ac45ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <1ekzgxl.1knemgy13jh0g0M@[192.168.0.2]> Subject: Re: DYNAREC: Threaded emulators Date: Sat, 2 Dec 2000 13:10:30 +0100 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Anyone know if there is any threaded CPU emulator (and better if it is a > > open source one ;) out there? > > Direct Threaded: g88 (88000), psim (PPC 604), some other simulators in > the binutils package > Call Threaded: Generator (68k), my experiment with UAE > I have to study them, more information for my project ;). > A real direct threaded core for 68k is still in project. Read: I still > want my own open sourced Syn68k ;-) Looks interesting, but the low performance is a bit worrying. BTW, from what has been said I feel that almost all the those threaded emulators are implemented using GCC. Noone has tried to do one of them using assembler? (I think UAE cores is in C but I'm not sure) > -- > Gwenolé Beauchesne Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 2 10:50:00 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA79131 for dynarec-outgoing; Sat, 2 Dec 2000 10:49:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 2 Dec 2000 11:08:17 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Threaded emulators In-Reply-To: <001f01c05bde$c1b05500$df43ae3e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Anyone know if there is any threaded CPU emulator (and better if it is a > open source one ;) out there? I think that all (or almost all) the CPU cores > in the emuscene are rather tipical interpreter emulators. When you say "threaded CPU emulator", do you mean the emulator itself being threaded or emulating a threaded dual (or more) CPU? > for later use. They use an array of pointers for each memory address (where > code can be found). Something like our transmap ;). The pointer stores a > pointer to the function which emulates the instruction located in this address > of the emulated memory. I'm not sure what the point of doing something like this is. > I'm not sure if the trade off would make sense. The decode in a threaded > emulator could be the same than in a common interpreter or a slower and > simpler version (because theorically the decoding is done just one, the > first, time, as in a dynarec). This would be my thinking, too. > Threaded code also could help to add some simple optimizations which > are usual in dynarecs: a simple flag calculation suppression (just looking > for the next instruction, if it deletes the flags of the actual instruction a > version of the function without flag calculation could be used rather than > the one with flag calculation), and perhaps some grouping of instructions. The one very big problem with multithreading a CPU emulator (or an emulator in general) is that things are not always asynchronous. The only exception I've found is with the sound. It *SHOULD* be its own thread, and in some cases that means executing a CPU. > Threaded code shares with dynarec the problem of self-modyfing code. > When the code is overwritten the 'decode cache' must be erased. Self modifying code is a huge problem - one that I've yet to tackle, but it probably will wind up with us just keeping big lists around for starts of blocks. > Now that we are going to work with 68K emulation and we have some > people here which already has worked with it. Do you think threaded > code could be a good idea to improve the performance of C or assembler > 68K cores? And in fact has anyone really tried this kind of things? No, I don't, since all 68K instructions (the base instruction) is 16 bits and that fits nicely in a table. You can't get any faster than: jmp 68KOpTable[ebx*4] > Of course a properly done dynarec should be even better ;). Then the decoding is already done by the time the code is executed. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 2 10:54:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA79144 for dynarec-outgoing; Sat, 2 Dec 2000 10:54:22 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 2 Dec 2000 11:12:52 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Threaded emulators In-Reply-To: <00037767bbffb683_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > and another which generates no flags. If the flags generated by an > instruction aren't used or tested in anyway the address of the routine which > generates no flags is added to the instruction information block. I'm puzzled. Flag generation should NOT be a big time sink if the original code flag computation was efficient in the first place. I've had entire flag calculations come out in as littleas one instruction! The overhead of figuring out whether or not flags need to be computed is more than a highly optimized piece of code that computes them. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 2 10:56:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA79157 for dynarec-outgoing; Sat, 2 Dec 2000 10:56:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 2 Dec 2000 11:15:21 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Threaded emulators In-Reply-To: <3A282F14.34FF6C8F@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > is using the same decoding technique than an optimized normal > > interpreter emulator) it doesn't add more time to the execution than > > just the decode phase which is also made in the interpreter. > One potential problem that could be quite 'interesting' to deal with > would be to jump to the middle of an instruction, but I don't think > that is a very common practice (I hope...) I've been out of the loop a > bit, but you can completely remove the decoded flag lookup, and just > point undecoded entries at the decoder function. On older code with smaller CPUs, jumping in to the middle of a block is actually fairly common. I got around this problem by restoring the flags and jumping to that location. > > the memory used for decoding ..., which one would be worst for > > the cache decoding info or instruction decode info?). And perhaps > > it could be possible to add other interesting optimizations. > Threading it should be kinder to the cache, as you are not jumping > randomly around the table every instruction. On architectures where > cache fetch hints are supported, you could avoid even the cache misses > a conditional jump would incur. You'll find that there are several instructions that are *VERY* often executed, so they'd be in cache anyway. Sparseness isn't a problem unless it's using every instruction in the CPU. On any given game, it only uses about 30% of the instructions in the first place. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 2 23:43:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA79733 for dynarec-outgoing; Sat, 2 Dec 2000 23:42:58 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3A29FB41.72573131@austin.rr.com> Date: Sat, 02 Dec 2000 23:50:25 -0800 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (WinNT; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Threaded emulators References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > On older code with smaller CPUs, jumping in to the middle of a block is > actually fairly common. I got around this problem by restoring the flags > and jumping to that location. > I didn't mean jumping into the middle of a block, I meant taking advantage of the encoding of the data portion and jumping to IT =P > You'll find that there are several instructions that are *VERY* often > executed, so they'd be in cache anyway. Sparseness isn't a problem unless > it's using every instruction in the CPU. On any given game, it only uses > about 30% of the instructions in the first place. > True, it wouldn't affect the way the code cache was used, but the access patterns for the threaded interpreter are more linear and predictable than the access patterns for a regular interpreter. With the regular interpreter, you are still jumping around in the table, and even if you are only using 30% of the instruction set, it isn't likely that that 30% is very well confined to a portion of the table. Decoding on the fly will jump around this table a lot, causing it to munch a good large number of cache lines at once. Decoding once, and threading the execution will access the pointer table much the same way the main CPU fetches instructions. Code cache usage will not change much, aside from removing the decode portion from the often used part of execution. > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from > Synthcom Systems, Inc. The Simpsons > ICQ #29402898 -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 3 17:52:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA80802 for dynarec-outgoing; Sun, 3 Dec 2000 17:52:14 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701c05d6c$92664180$6340ae3e@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Binary Translation Library Date: Sun, 3 Dec 2000 22:04:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com My Internet connection seems to be worst than ever, I'm unable to upload the last MB of the 'tared' library :(. It is incredible but I can't even send anything to my ftp account from my ISP!!! I will try tomorrow from my Uni using a CDR ... Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 4 09:52:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA81719 for dynarec-outgoing; Mon, 4 Dec 2000 09:52:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701c05e1a$9f152e60$dc43ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <000701c05d6c$92664180$6340ae3e@hal9000> Subject: Re: DYNAREC: Binary Translation Library Date: Mon, 4 Dec 2000 18:49:57 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > My Internet connection seems to be worst than ever, I'm unable to upload > the last MB of the 'tared' library :(. It is incredible but I can't even send > anything to my ftp account from my ISP!!! > > I will try tomorrow from my Uni using a CDR ... > It is up. :) Try: http://www.dynarec.com/~victor/Project/Bibliography/Bibliography.htm Or just go to my main page. > Victor > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 4 11:11:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA81790 for dynarec-outgoing; Mon, 4 Dec 2000 11:11:54 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3A2BEE61.48FFDDB9@gmx.de> Date: Mon, 04 Dec 2000 20:20:01 +0100 From: Kai =?iso-8859-1?Q?Sch=FCtz?= X-Mailer: Mozilla 4.72 [en] (X11; I; Linux 2.2.14 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Binary Translation Library References: <000701c05d6c$92664180$6340ae3e@hal9000> <000701c05e1a$9f152e60$dc43ae3e@hal9000> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi ! Victor Moya del Barrio wrote: > > > > > My Internet connection seems to be worst than ever, I'm unable to upload > > the last MB of the 'tared' library :(. It is incredible but I can't even send > > anything to my ftp account from my ISP!!! > > > > I will try tomorrow from my Uni using a CDR ... > > > > It is up. :) > > Try: > > http://www.dynarec.com/~victor/Project/Bibliography/Bibliography.htm I found some links witch are broken because they contain a backslash instead of a slash. Guess you tested running on Windows ? Very interesting resource though. |/ |\ai --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 4 12:09:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA81838 for dynarec-outgoing; Mon, 4 Dec 2000 12:09:18 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000d01c05e23$ce5de460$dc43ae3e@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: HLE Date: Mon, 4 Dec 2000 19:55:42 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Someone knows if there is any document (for example some from the N64 emulation scene) about HLE? Althought it is basically the same as OS 'emulation' in static translation ... Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 4 12:21:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA81857 for dynarec-outgoing; Mon, 4 Dec 2000 12:21:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007801c05e31$6c4d7d40$01c93c9f@daves> From: "David Sharp" To: References: <000701c05d6c$92664180$6340ae3e@hal9000> <000701c05e1a$9f152e60$dc43ae3e@hal9000> Subject: Re: DYNAREC: Binary Translation Library Date: Mon, 4 Dec 2000 20:33:11 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Victor, Any chance of a kinder colour scheme - my eyes *really* hurt now! Cheers Dave > http://www.dynarec.com/~victor/Project/Bibliography/Bibliography.htm --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 4 12:58:51 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA81891 for dynarec-outgoing; Mon, 4 Dec 2000 12:58:50 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002101c05e36$d305ee00$0141ae3e@hal9000> From: "Victor Moya del Barrio \(DYNAREC\)" To: References: <000701c05d6c$92664180$6340ae3e@hal9000> <000701c05e1a$9f152e60$dc43ae3e@hal9000> <3A2BEE61.48FFDDB9@gmx.de> Subject: Re: DYNAREC: Binary Translation Library Date: Mon, 4 Dec 2000 22:11:50 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > > Try: > > > > http://www.dynarec.com/~victor/Project/Bibliography/Bibliography.htm > > I found some links witch are broken because they contain a backslash > instead of a slash. Guess you tested running on Windows ? Very > interesting resource though. > Well, I use Windows yes ;). It is my fault. I will fix them. > |/ > |\ai Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 4 13:00:28 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA81907 for dynarec-outgoing; Mon, 4 Dec 2000 13:00:27 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002501c05e37$0d2ae0e0$0141ae3e@hal9000> From: "Victor Moya del Barrio \(DYNAREC\)" To: References: <000701c05d6c$92664180$6340ae3e@hal9000> <000701c05e1a$9f152e60$dc43ae3e@hal9000> <007801c05e31$6c4d7d40$01c93c9f@daves> Subject: Re: DYNAREC: Binary Translation Library Date: Mon, 4 Dec 2000 22:13:28 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Victor, > > Any chance of a kinder colour scheme - my eyes *really* hurt now! > Any preferences? ;) I think I like the dark screens (since the old MS-DOS times). > Cheers > Dave > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 4 13:27:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA81934 for dynarec-outgoing; Mon, 4 Dec 2000 13:27:20 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Binary Translation Library From: "M.I.K.e" Message-ID: <000377a29e09c6f3_mailit@mail.dynarec.com> References: <000701c05d6c$92664180$6340ae3e@hal9000> <000701c05e1a$9f152e60$dc43ae3e@hal9000> <007801c05e31$6c4d7d40$01c93c9f@daves> Date: Mon, 04 Dec 2000 22:27:29 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Any chance of a kinder colour scheme - my eyes *really* hurt now! You should look at it without CSS activated (or with NetPositive, which doesn't support CSS)... I don't know which program generated the code but it's awful - don't get me wrong Victor, I mean the HTML code and not the work you've done. The strange thing is that the application set about every colour in the body tag, from background colour to all different link styles, but forgot to set the text colour, which leads to black text on dark grey background without CSS... It also defines the global language as "ES" just to do an "EN-GB" override for every little sentence, not to mention all the redundant font settings... I think I can write a page with the same look with one fith of the code... But it's a very long list of documents and I'll have to search long to find something that isn't included yet. Not bad Victor, only the HTML generator spoilt it a bit... >Dave -- M.I.K.e 7:30, Channel 5: The Bionic Dog (Action/Adventure) The Bionic Dog drinks too much and kicks over the National Redwood Forest. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 4 23:24:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA82363 for dynarec-outgoing; Mon, 4 Dec 2000 23:23:53 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200012050733.IAA01983@pons.ac.upc.es> Subject: Re: DYNAREC: Binary Translation Library In-Reply-To: <000377a29e09c6f3_mailit@mail.dynarec.com> "from M.I.K.e at Dec 4, 2000 10:27:29 pm" To: dynarec@dynarec.com Date: Tue, 5 Dec 2000 08:33:08 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You should look at it without CSS activated (or with NetPositive, which >doesn't support CSS)... >I don't know which program generated the code but it's awful - don't get me >wrong Victor, I mean the HTML code and not the work you've done. >The strange thing is that the application set about every colour in the body >tag, from background colour to all different link styles, but forgot to set >the text colour, which leads to black text on dark grey background without CSS... >It also defines the global language as "ES" just to do an "EN-GB" override >for every little sentence, not to mention all the redundant font settings... >I think I can write a page with the same look with one fith of the code... It has an easy explanation: it is Word ;). I actually started the list as the Bibliography for my project so I used the same file and the same editor for the page ;). Perhaps I could just copy the text with Frontpage or Netscape Composer and build again the page ... but setting all the links :(. And of course my Word version is Spanish, which explain the ES stuff. About the text color I think I changed the colors at the header at hand ... I don't know much about HTML. >M.I.K.e Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 5 01:55:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA82503 for dynarec-outgoing; Tue, 5 Dec 2000 01:55:27 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: primrose.csv.warwick.ac.uk: csuix owned process doing -bs Date: Tue, 5 Dec 2000 10:04:58 +0000 (GMT) From: David Sharp To: Subject: Re: DYNAREC: Binary Translation Library In-Reply-To: <002501c05e37$0d2ae0e0$0141ae3e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Any preferences? ;) > > I think I like the dark screens (since the old MS-DOS times). Black text on white background used to be nice! :o) Anything, just not the slightly off-black colour which I was struggling with. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 5 10:36:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA83055 for dynarec-outgoing; Tue, 5 Dec 2000 10:36:09 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <00037768166853f8_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Threaded emulators From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Tue, 5 Dec 2000 19:49:48 +0100 Message-ID: <1el05ok.15os4pyn2el60M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id KAA83049 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >[Sorry if I don't elaborate more but I am a little sick those days...] > I hope you get well soon! Yeah but that's still suboptimal. > >Direct Threaded: g88 (88000), psim (PPC 604), some other simulators in > >the binutils package I forgot the most important one: Apple's Threaded Code Interpreter implemented in the first line of PowerMacintosh ROMs. Later, they switched to a dynamic compiler to native code thus bringing around twice the speed. Apple's TCi68k is covered by patent #US05574873. You can get scans from Delphion: that used to be > >Much speed could be gained if I didn't checksumed each block but used > >mechanisms used in the current JIT compiler instead. > > As there are? Sorry for not reminding it but the JIT Compiler for Basilisk II does emulate a 68020/68040. Real-world code and well-behaved programs will have to explicitely flush the instruction cache. Those cache flush instructions are mapped to a hard i-cache flush of a soft (lazy) I-cache flush mechanism. That way, blocks are recompiled only when needed or when the translation cache got full. > Hmm... > BTW, any chance that I might see a faster Basilisk II for BeOS someday? Do you mean BeOS/x86 ? Actually, gcc can be used under BeOS if I remember correctly. Then you might be able to compile the JIT Basilisk II package. One problem though is how to do direct addressing ? I simply don't know. In fact, what is needed (if screen depth > 8) is a mechanism to protect a region of memory and catch any illegal references to it afterwards. That is simply done with Extended Signal Handlers (POSIX 1003.1b, IIRC) or thanks to a subterfuge such as the one for older (2.2.X) Linux kernels. Bye. -- Gwenolé Beauchesne - Web: JIT Basilisk II, FAQ fr.comp.sys.mac.programmation --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 5 10:36:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA83054 for dynarec-outgoing; Tue, 5 Dec 2000 10:36:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <002301c05c58$e3914600$ac45ae3e@hal9000> Subject: Re: DYNAREC: Threaded emulators From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Tue, 5 Dec 2000 19:49:57 +0100 Message-ID: <1el0lh1.acv6wc1dzvo31M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id KAA83048 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > > Anyone know if there is any threaded CPU emulator (and better if it is a > > > open source one ;) out there? > > > > Direct Threaded: g88 (88000), psim (PPC 604), some other simulators in > > the binutils package > > Call Threaded: Generator (68k), my experiment with UAE > > > I have to study them, more information for my project ;). I am sorry but I don't have the links on top of my head right now but if you want a good introduction to the terms search for example in Google for "threaded code" "gforth" > > A real direct threaded core for 68k is still in project. Read: I still > > want my own open sourced Syn68k ;-) > > Looks interesting, but the low performance is a bit worrying. As I said before low performance was due to over-checksuming the blocks and the use of call-threaded interpretation techniques. A Direct Threaded Interpreter would be much faster as Neil pointed out. > BTW, from what has been said I feel that almost all the those threaded > emulators are implemented using GCC. Those that are implemented using GCC are Direct Threaded Interpreters because GCC as the "Label as Value" extension which enables you to store the value of a label into a variable and do something like. goto **v_ip++; do dispatch to the next synthetic instruction GCC's "Labels as Values" extension exactly looks like "computed gotos" from Fortran. > Noone has tried to do one of them using assembler? (I think UAE cores is > in C but I'm not sure) If you search in the comp.compilers archive you will find another good introduction to threaded code interpreters and its implementation through instrumentation of the generated assembly code. IMHO, implementing a Direct Threaded Code Interpreter with GCC is just much easier than having several assembly postprocessors. UAE core is in C and postprocessed to remove unnecessary register saves/restores. Actually I had to experiments: - One in high level: purely call-threaded, i.e. I just decode a block and store a series of cpuop_func (pointers to instruction handlers) and dispatch to the next instruction while the virtual instruction pointer is not null. - One in low level: sort of token threaded, i.e. I further postprocessed (pipes are great! ;-) the output of cpuopti, removed more dumb register saves/restores and replaced the return instruction with code to directly jump to the next instruction handler. The initial entry loop just had to do goto *cpufunctbl[opcode]; Another optimization was to dramatically reduce the number of spcflags checks. In the original UAE core, we had to check the state of spcflags after each instruction was processed in order to know whether or not we had to process interrupts and other things. That test was simply removed and the spcflags handling was executed only when needed. In short, there is a table of pointers to actual instruction handlers and a table full of pointers to fake handlers that possibly run the do_specialties() function. So, the declarations were as follows: cpuop_func *fake_cpufunctbl; cpuop_func *real_cpufunctbl; cpuop_func **cpufunctbl; // initialized to fake_cpufunctbl spcflags changes were spotted when appropriate SPCFLAGS_CLEAR/SPCFLAGS_SET macros were called. Then the cpufunctbl was assigned either the fake a real cpufunctbl; So, the code above becomes similar to: goto **cpufunctbl[opcode]; Bye -- Gwenolé Beauchesne - Web: JIT Basilisk II, FAQ fr.comp.sys.mac.programmation --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 6 07:10:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA84123 for dynarec-outgoing; Wed, 6 Dec 2000 07:09:55 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Threaded emulators From: "M.I.K.e" Message-ID: <000377c5cbd49d76_mailit@mail.dynarec.com> References: <1el05ok.15os4pyn2el60M@[192.168.0.2]> Date: Wed, 06 Dec 2000 16:25:42 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> >[Sorry if I don't elaborate more but I am a little sick those days...] >> I hope you get well soon! >Yeah but that's still suboptimal. Welcome to the club, I also feel suboptimal today... >I forgot the most important one: Apple's Threaded Code Interpreter >implemented in the first line of PowerMacintosh ROMs. Later, they >switched to a dynamic compiler to native code thus bringing around twice >the speed. I didn't know that it was threaded at first. Wasn't Eric Traut one of the designers, who is now at Connectix? >Sorry for not reminding it but the JIT Compiler for Basilisk II does >emulate a 68020/68040. Real-world code and well-behaved programs will >have to explicitely flush the instruction cache. Those cache flush >instructions are mapped to a hard i-cache flush of a soft (lazy) I-cache >flush mechanism. Ah, that's the same method Apple's 68K dynarec uses. That only works with systems designed for harvard architectures of course. >Do you mean BeOS/x86 ? Yes. >Actually, gcc can be used under BeOS if I >remember correctly. Then you might be able to compile the JIT Basilisk >II package. I planned to but then I noticed that even the standard 'make' for BeOS fails, so I'll have to wait for a fixed version till I can try again... >One problem though is how to do direct addressing ? I simply >don't know. In fact, what is needed (if screen depth > 8) is a mechanism >to protect a region of memory and catch any illegal references to it >afterwards. That is simply done with Extended Signal Handlers (POSIX >1003.1b, IIRC) or thanks to a subterfuge such as the one for older >(2.2.X) Linux kernels. Don't ask me, I still haven't had the time to learn much about BeOS programming :-( >Gwenolé Beauchesne - Web: New URL? ;-) -- M.I.K.e Please take note: --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 7 12:59:50 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA85641 for dynarec-outgoing; Thu, 7 Dec 2000 12:59:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <000377c5cbd49d76_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Threaded emulators From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Thu, 7 Dec 2000 22:13:21 +0100 Message-ID: <1elair2.1u21h1y22igd5M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id MAA85638 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I didn't know that it was threaded at first. Wasn't Eric Traut one of the > designers, who is now at Connectix? I am sorry but I don't know that guy ? Any more info ? Thanks. BTW, any idea about the optimizations the VPC team made to their emulator so that it runs (supposedly) up to twice as fast as before ? Has someone happened to search the patents database for other dynarec technologies other than Transmeta's ? [About flushing translation cache when 68k i-cache is actually flushed] > Ah, that's the same method Apple's 68K dynarec uses. That only works with > systems designed for harvard architectures of course. Hmm, what do you mean by "harvard architectures" ? [About possibility of JIT Basilisk II/BeOS] > I planned to but then I noticed that even the standard 'make' for BeOS fails, > so I'll have to wait for a fixed version till I can try again... What does it say ? Did you try to install a port of GNU make ? > >Gwenolé Beauchesne - Web: > > New URL? ;-) Yes, especially more disk space (at least 100 MB ;-) Bye. -- Gwenolé Beauchesne - Web: JIT Basilisk II, FAQ fr.comp.sys.mac.programmation --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 7 13:03:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA85658 for dynarec-outgoing; Thu, 7 Dec 2000 13:03:26 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 7 Dec 2000 13:23:16 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Threaded emulators In-Reply-To: <1elair2.1u21h1y22igd5M@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Ah, that's the same method Apple's 68K dynarec uses. That only works with > > systems designed for harvard architectures of course. > Hmm, what do you mean by "harvard architectures" ? Separate code and data space. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 7 13:13:54 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA85674 for dynarec-outgoing; Thu, 7 Dec 2000 13:13:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Jack To: dynarec@dynarec.com Subject: Re: DYNAREC: Threaded emulators Date: Thu, 07 Dec 2000 16:23:33 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: <1elair2.1u21h1y22igd5M@[192.168.0.2]> In-Reply-To: X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, 7 Dec 2000 13:23:16 -0800 (PST), Neil Bradley wrote: >> > Ah, that's the same method Apple's 68K dynarec uses. That only works with >> > systems designed for harvard architectures of course. >> Hmm, what do you mean by "harvard architectures" ? > >Separate code and data space. Or more precisely: A Harvard Architecture allows a processor to fetch instructions from memory while concurrently reading or writing data to another memory location. This architecture uses two buses, a data memory bus and a program memory bus, and either two separate memories or a single dual-port memory. The compute stage of a processor, that may need to access data memory, need not compete with the execution unit, that must fetch the next instruction. -- Jack ---- "There is no reason anyone would want a computer in their home." - Ken Olson, president, chairman and founder of Digital Equipment Corp., 1977 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 7 13:33:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA85698 for dynarec-outgoing; Thu, 7 Dec 2000 13:33:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001701c06097$23cdec40$ce45ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <1elair2.1u21h1y22igd5M@[192.168.0.2]> Subject: Re: DYNAREC: Threaded emulators Date: Thu, 7 Dec 2000 22:46:20 +0100 Organization: Fenix Corp. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > I didn't know that it was threaded at first. Wasn't Eric Traut one of the > > designers, who is now at Connectix? > > I am sorry but I don't know that guy ? Any more info ? Thanks. Umm, it seems so ... It also seems that the people involved in emulation or binary translation is quite limited ;). It seems to be always the same people working in different places ;)). > Has someone happened to search the patents database for other dynarec > technologies other than Transmeta's ? > That could be a good idea ... Althought I don't think there are so many of them. Tomorrow is all-day-connection, so I will try a new search ;) . > Gwenolé Beauchesne - Web: > JIT Basilisk II, FAQ fr.comp.sys.mac.programmation Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 7 14:38:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA85755 for dynarec-outgoing; Thu, 7 Dec 2000 14:38:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Threaded emulators From: "M.I.K.e" Message-ID: <000377df9b4383ec_mailit@mail.dynarec.com> References: <1elair2.1u21h1y22igd5M@[192.168.0.2]> Date: Thu, 07 Dec 2000 23:13:16 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [Eric Traut] >I am sorry but I don't know that guy ? Any more info ? Thanks. He wrote the following articles about the Apple 68K DR and VPC, so I assumed he was one of the creators: http://devworld.apple.com/technotes/pt/pt_39.html http://www.byte.com/art/9711/sec4/art4.htm >BTW, any idea about the optimizations the VPC team made to their >emulator so that it runs (supposedly) up to twice as fast as before ? Nope, no idea. Even with the article above the technical info about VPC is very limited. >Has someone happened to search the patents database for other dynarec >technologies other than Transmeta's ? Not yet, but might be an idea. >[About flushing translation cache when 68k i-cache is actually flushed] >Hmm, what do you mean by "harvard architectures" ? Split data and instruction caches as opposed to a von Neumann architecture with one unified cache. For most Harvard architectures this means that you have to flush caches when you are working with self-modifying code. One of the rare exceptions are Pentium compatible processors, which handle that case automatically because the behaviour has to be "transparent" when running old code, which doesn't know about split caches yet. This also means that VPC must have some other method to detect self-modifying code, if it does, because you won't be able to do it by trapping cache flushes. >[About possibility of JIT Basilisk II/BeOS] >What does it say ? /boot/home/Downloads/BasiliskII/src/BeOS/clip_beos.cpp: In function `void PutScrap(long unsigned int, void *, long int)': /boot/home/Downloads/BasiliskII/src/BeOS/clip_beos.cpp:76: `dest_length' undeclared (first use this function) /boot/home/Downloads/BasiliskII/src/BeOS/clip_beos.cpp:76: (Each undeclared identifier is reported only once /boot/home/Downloads/BasiliskII/src/BeOS/clip_beos.cpp:76: for each function it appears in.) make: *** [obj.x86/clip_beos.o] Error 1 Sound like a BeOS specific error (and I haven't even tried to include the JIT compiler yet). Maybe I should contact Christian Bauer... >Did you try to install a port of GNU make ? I have GNU make version 3.77 pre-installed. >> New URL? ;-) >Yes, especially more disk space (at least 100 MB ;-) Not bad! ;-) >Gwenolé Beauchesne - Web: -- M.I.K.e Any sufficiently advanced technology is indistinguishable from a rigged demo. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 9 20:46:45 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA90596 for dynarec-outgoing; Sat, 9 Dec 2000 20:44:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 9 Dec 00 23:54:37 -0500 Message-Id: <3.0.5.32.20001209204840.0083fb90@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 09 Dec 2000 20:48:40 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: 68010 Loop Mode Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I was wondering if anyone on the list knew where information on the 68010's loop mode could be obtained? The M68000 Microprocessor User's Manual contains an appendix devoted to this topic, but it seems pretty lacking. I noticed Starscream generates a lot of loop mode code and data, but I'm not sure about the details of this. I'm thinking of adding 68010 support to Genital68K, and maybe 68020 later down the road :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 13 14:34:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA95236 for dynarec-outgoing; Wed, 13 Dec 2000 14:34:43 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <3.0.5.32.20001209204840.0083fb90@mailandnews.com> Subject: Re: DYNAREC: 68010 Loop Mode From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Wed, 13 Dec 2000 23:49:21 +0100 Message-ID: <1ellr4e.86lwn01azaguuM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id OAA95233 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, I am sorry but I have no clue for your query about the 68010 loop mode but the last sentence drew up my attention. > I'm thinking of adding 68010 support to Genital68K, and maybe 68020 later > down the road :) Swapped Address Space is not suitable for 68020 or higher processor (except the 68060 under certain circumstances, I was told) since they can access any data at any alignment. A viable solution for not spending time at byte{swapping,reversing} data, is to use the Reversed Address Space scheme. -- Gwenolé Beauchesne - Web: JIT Basilisk II, FAQ fr.comp.sys.mac.programmation --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 13 14:53:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA95258 for dynarec-outgoing; Wed, 13 Dec 2000 14:53:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 13 Dec 00 18:01:40 -0500 Message-Id: <3.0.5.32.20001213145523.00845a80@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 13 Dec 2000 14:55:23 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68010 Loop Mode In-Reply-To: <1ellr4e.86lwn01azaguuM@[192.168.0.2]> References: <3.0.5.32.20001209204840.0083fb90@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 11:49 PM 12/13/2000 +0100, you wrote: >Hi, > >I am sorry but I have no clue for your query about the 68010 loop mode >but the last sentence drew up my attention. Hmm, I think what I'll do is hack my Starscream/Genital68K comparison debugger to print out how long an instruction took. Then I can see how loop mode affects timing under Starscream to make sure I understand it correctly. >> I'm thinking of adding 68010 support to Genital68K, and maybe 68020 later >> down the road :) > >Swapped Address Space is not suitable for 68020 or higher processor >(except the 68060 under certain circumstances, I was told) since they >can access any data at any alignment. A viable solution for not spending >time at byte{swapping,reversing} data, is to use the Reversed Address >Space scheme. How does this work? I haven't heard of this scheme. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 14 11:20:39 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA96337 for dynarec-outgoing; Thu, 14 Dec 2000 11:20:14 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <3.0.5.32.20001213145523.00845a80@mailandnews.com> Subject: Re: DYNAREC: 68010 Loop Mode From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Thu, 14 Dec 2000 20:34:54 +0100 Message-ID: <1elnapb.ecppzchjlnggM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id LAA96334 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Hmm, I think what I'll do is hack my Starscream/Genital68K comparison > debugger to print out how long an instruction took. Then I can see how loop > mode affects timing under Starscream to make sure I understand it correctly. Actually, I don't know what is "Loop Mode". Does it have anything to do with DBcc instructions ? BTW, for another source a timings information, you may want to have a look at the latest UAE sources (0.8.15) or better, Bernie's JIT Compiler. It seems timings were greatly improved over past releases. > How does this work? I haven't heard of this scheme. ### Reversed Address Space mode is based on the following idea: Suppose, I have the following memory footprint in m68k byte order: 0x01 0x02 0x03 0x04 0x06 0x07 [...] It will be stored as follows in RAS mode: [...] 0x06 0x05 0x04 0x03 0x02 0x01 Then, finding out the right address in RAS mode is just a matter of subtracting an offset instead of adding one with a Byte Swapped Address Space. Read handlers for RAM would act as follows: - ReadByte: v = *((uint8 *)(RAMBaseByteDiff - virtual_address)) - ReadWord: v = *((uint16 *)(RAMBaseWordDiff - virtual_address)) - ReadLong: v = *((uint32 *)(RAMBaseLongDiff - virtual_address)) Where: - RAMBaseByteDiff = RAMBaseHost + RAMBaseVirtual + RAMSize - 1; - RAMBaseWordDiff = RAMBaseByteDiff - 1; - RAMBaseLongDiff = RAMBaseByteDiff - 3; Softmac from Emulators, Inc. implements that technique and is said to provide up to 40% more speed. I implemented that scheme for one of my experiments with Basilisk II but didn't reach that result. That's simply explained by the fact that at that time I still accessed memory from memory_banks instead of direct accesses. ### A few terms to make me understandable, I hope ;-) * "Memory-Banks based Addressing". Functions to memory handlers are stored in a table. A bank is 64K long in UAE and is 1 MB in some Basilisk II builds (my experiments + actually the Win32 port). That's what most emulators implement but that's really suboptimal. * "Direct Addressing". Memory is accessed only by adding or subtracting a fixed offset for all memory regions. That's MEMBaseDiff in BasiliskII. >From an implementation side whith a 24-bit address space, you can just allocate the whole 16 MB of addressable memory. Then, MEMBaseDiff = MEMBaseHost - MEMBaseVirtual. With a 32-bit address space, there are tricks and more system-dependant ways to proceed. In BasiliskII, that's very simple because there are only three big memory regions to handle. Moreover, ROM and Video regions are relocateable. So, I can easily manage to have: RAMBaseMac == RAMBaseHost + MEMBaseDiff ROMBaseMac == ROMBaseHost + MEMBaseDiff VIDBaseMac == VIDBaseHost + MEMBaseDiff More complicated regions or regions that require to be accessed only in read-only mode might require to write protect some regions and treat memory accesses on page faults and skipping the offending instruction. Real applications: UAE-JIT for Linux, BasiliskII/win32 (for skipping attempts to write to ROM), graphics in BasiliskII/Un*x (see below) In the Basilisk's CVS (or JIT Basilisk II sources), I placed which provides an implementation of fast screen updates in windowed mode. The idea is to write-protect the video buffer then when an attempt to write to a portion of the video buffer occurs, you simply reenable writing but record the matching page number. Later, when it's time to refresh the screen, only boxes that changed are redrawn and you can corretcly handle color conversions. Catching the address that caused a "segmentation fault" can be implemented in two main ways: - the "standard" way thanks to Extended POSIX Signal Handlers, those that provide a siginfo_t structure in parameter of the signal handler - "subterfuges" for systems that doesn't provide those extended signal handlers. e.g. Linux 2.2.X kernels. See Screen_fault_handler() in for more details. * "Real Addressing". VirtualAddress == HostAddress. You get the best performance from Real Addressing and with a Reversed Address Space, because emulated memory access is exactly equivalent to a native access to the memory. Bye. -- Gwenolé Beauchesne - Web: JIT Basilisk II, FAQ fr.comp.sys.mac.programmation --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 14 16:55:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA00244 for dynarec-outgoing; Thu, 14 Dec 2000 16:55:30 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 14 Dec 00 18:03:42 -0500 Message-Id: <3.0.5.32.20001214145724.00845100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 14 Dec 2000 14:57:24 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68010 Loop Mode In-Reply-To: <1elnapb.ecppzchjlnggM@[192.168.0.2]> References: <3.0.5.32.20001213145523.00845a80@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Actually, I don't know what is "Loop Mode". Does it have anything to do >with DBcc instructions ? Yes, when the DBcc is used a certain way, the 68010 automatically enters "loop mode" which executes the sequence without any fetches, only memory accesses if needed by the instructions. Only certain instructions can be paired with DBcc to achieve this. >> How does this work? I haven't heard of this scheme. > >### Reversed Address Space mode is based on the following idea: > >Suppose, I have the following memory footprint in m68k byte order: >0x01 0x02 0x03 0x04 0x06 0x07 [...] > >It will be stored as follows in RAS mode: >[...] 0x06 0x05 0x04 0x03 0x02 0x01 > >Then, finding out the right address in RAS mode is just a matter of >subtracting an offset instead of adding one with a Byte Swapped Address >Space. > >Read handlers for RAM would act as follows: >- ReadByte: v = *((uint8 *)(RAMBaseByteDiff - virtual_address)) >- ReadWord: v = *((uint16 *)(RAMBaseWordDiff - virtual_address)) >- ReadLong: v = *((uint32 *)(RAMBaseLongDiff - virtual_address)) > >Where: >- RAMBaseByteDiff = RAMBaseHost + RAMBaseVirtual + RAMSize - 1; >- RAMBaseWordDiff = RAMBaseByteDiff - 1; >- RAMBaseLongDiff = RAMBaseByteDiff - 3; Hmm, this would be extremely complicated to implement in Genital68K because Genital68K's emitter is very poor. I would have to change a ton of code to get this working. I used a few tricks, such as performing operations with operands directly following the given instruction (with an offset from the pointer in ESI) which would make for quite a nightmare if I had to change the memory scheme. :/ I don't think I will add 68020 support after all. Perhaps the RAINE project should just use a newer version of UAE's core? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 16 16:56:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA04844 for dynarec-outgoing; Sat, 16 Dec 2000 16:56:22 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001201c067c7$929401a0$3dc2fad4@taxx> From: "Neil Griffiths" To: Subject: DYNAREC: I'm back... kind of! Date: Sun, 17 Dec 2000 01:20:36 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3155.0 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3155.0 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Well, I'm at home using my laptop - still no phone line as of yet. I really hate electricity companies who crush pipes in the road so cable doesn't go down it... :-/ I've got lots of catching up to do in terms of e-mail, so I'll make a start and be careful to only reply to a few... else I'll not be getting any sleep tonight! :o And for those of you for Germany, look at this - "Germany - buy a Nokia 3310 mobile with a 24 months contract (first 3 months are free) and receive a SEGA Dreamcast for 0 DM - yes, ZERO DEUTSCHMARKS ! WHERE ? Media-Markt Koblenz is your place if you live in/near Germany" Cool news or what? Now all I need is the same in the UK - and some time to play on the damned thing! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 16 21:10:30 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA05068 for dynarec-outgoing; Sat, 16 Dec 2000 21:10:05 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 17 Dec 00 00:18:58 -0500 Message-Id: <3.0.5.32.20001216211110.00841100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 16 Dec 2000 21:11:10 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Sound Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I know this is quite a bit OT, but does anyone here know a good starting point for information on sound generation? I want to emulate the SN76489 PSG chip used in the Sega Genesis, but haven't really dealt with sound at this low of a level before. So far, I've made a little program which generates an 11025Hz, 8-bit, mono wave file with 1 second worth of sound data. I have some variables which can be tweaked to provide a frequency, and it generates a tone. I think my method works (it is very, very simple -- it seems too simple when I compare it against the tone generating code in the MAME SN76489 emulator) but I'm having problems finding the proper clock the Genesis uses (I can figure this out later, I think the SMS uses a 125000Hz clock) and, more importantly, figuring out what to use for the amplitude. The PSG chip allows you to specify a volume from 0 to 15 for the tone generated. I'm not sure how I should translate this to a value usable on PC hardware (because it's too quiet), I assume I can just guess and check or something ;) Also, I'm not quite sure how the layout of the wave should look like. I wrote a little test program that generates a tone and logged the wave output with Genecyst, it produced 8-bit mono data like this: 0x87 0x87 0x87..... 0x78 0x78 0x78 0x78... It looks as if the amplitude data was simply nibble-swapped. I don't quite understand how all of this works out, since all of my sound knowledge comes from a poorly written brief chapter in an assembly language book I have, and some assumptions I've made. I hope my questions were clear enough :/ I can't think of a good way to phrase what exactly it is that I'm having trouble with, but hopefully one of you gurus reading this can point me in the right direction :) If anyone would like to see the PSG documentation, I can paste it into an email, since it's really small and quite simple. It is little more than a square wave tone generator with 3 channels (it has a noise channel, but I'm not worrying about that yet ;) -- and I want to get 1 channel emulated, and worry about mixing later ;)) Thanks in advance, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 01:20:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA00247 for dynarec-outgoing; Sun, 17 Dec 2000 01:19:29 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000f01c06805$2b181e60$c045ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20001216211110.00841100@mailandnews.com> Subject: Re: DYNAREC: Sound Date: Sun, 17 Dec 2000 09:41:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hello, > > I know this is quite a bit OT, but does anyone here know a good starting > point for information on sound generation? Copy what others have made? ;). It uses to be my method, well not copying but being influenced ;)). > I want to emulate the SN76489 PSG chip used in the Sega Genesis, but > haven't really dealt with sound at this low of a level before. > Neither I have (or maybe I had), and you should test how horrible it sounds my PSG ;). > I think my method works (it is very, very simple -- it seems too simple > when I compare it against the tone generating code in the MAME SN76489 > emulator) but I'm having problems finding the proper clock the Genesis uses > (I can figure this out later, I think the SMS uses a 125000Hz clock) and, > more importantly, figuring out what to use for the amplitude. > Well, yes a 125Khz clock for the SMS for sound purpose (but it is impossible to generate something greater than 22 Khz real sound). And either it makes any sense. The PSG can use a (there is official doc about the chip out there, I think at SMS Power Tech Section) a 4 MHz clock wich is later divided a number of times to generate the sound (the first is by 16 which explains the 125Khz mas output or so) . I guess (and I have got some confirmation from de S8-Dev Forum) that the PSG uses the very same clock than the SMS MZ80 , 3.58 Mhz or so. And I think the MZ80 subsystem in Genesis is basically the same than a SMS. The MAME emulation it is kinda complex, I'm not sure why. Mine is simpler too. > The PSG chip allows you to specify a volume from 0 to 15 for the tone > generated. I'm not sure how I should translate this to a value usable on PC > hardware (because it's too quiet), I assume I can just guess and check or > something ;) PC samples go from 0 to 255 (unsigned 8-bit) or 0..65536 (16 bit unsigned, which I think isn't used ;). You have to split all this sample number space between all the different combinations of volumes you can have: this case 4*15. > Also, I'm not quite sure how the layout of the wave should look like. I > wrote a little test program that generates a tone and logged the wave > output with Genecyst, it produced 8-bit mono data like this: > > 0x87 0x87 0x87..... 0x78 0x78 0x78 0x78... > > It looks as if the amplitude data was simply nibble-swapped. I don't quite > understand how all of this works out, since all of my sound knowledge comes > from a poorly written brief chapter in an assembly language book I have, > and some assumptions I've made. > Not quite ;). The sound samples use to be signed. That is 0x87 is the negative value for 0x78 (or so). A square wave is generated with 1,-1 patterns (if signed). > I hope my questions were clear enough :/ I can't think of a good way to > phrase what exactly it is that I'm having trouble with, but hopefully one > of you gurus reading this can point me in the right direction :) Well I'm just trying to wonder why my PSG sounds so weird althought I think I generate the PSG data well. I think is related with SDL and the way I provide the samples to the audio system ... I'm sure I'm missing some samples to send in some frames (because bad synchronization between the sound callback and the emulation). I think the PSG emulation is quite simple and it is a bit harder to make a good synchronization. > If anyone would like to see the PSG documentation, I can paste it into an > email, since it's really small and quite simple. It is little more than a > square wave tone generator with 3 channels (it has a noise channel, but I'm > not worrying about that yet ;) -- and I want to get 1 channel emulated, and > worry about mixing later ;)) > There was a discussion in the S8-Dev Forum (SMS Power page) sometime ago, started by the guy from FreezeSMS. It was useful. Take a look if you can. I think it was around last october days and november (Search for DSP or Jason Star ;)). http://smspower.speedhost.com/dev/forum/index.shtml Take a look to my SMS code (it is in my page) if you want, but I'm not sure if it would be so useful ... The PSG section isn't precisely well commented. > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 04:42:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA00577 for dynarec-outgoing; Sun, 17 Dec 2000 04:42:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008c01c0682a$3067d480$e24aa8c2@taxx> From: "Neil Griffiths" To: Subject: DYNAREC: Food Fight Date: Sun, 17 Dec 2000 13:06:35 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3155.0 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3155.0 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Much as I hate to bring up an old discussion... Nah, who'm I kidding? This is right up my street! :) >And frankly, we can't understand why anyone outside the US is interested >in us! ;-) I can't say I particularly am - but I can't watch TV or go to the cinema without seeing lots of American references! ;) >> elevator - lift > >They are different things. A lift is a platform on a back of a truck (or >lorry as the English like to call it). An elevator by definition means it >services more than one floor. We actually do use the word elevator although we'd be more likely to say "escalator" because they're one and the same - those metal moving stair things... >> intersection - crossroads > >Not quite the same thing. A 3 way stop is not a crossroad but it is an >intersection, as there is no action of crossing at an intersection. And that'd be a T-junction... >> faucet - tap > >One implies water delivery - a tap does not. I.E. Faucet that gives hot >water or a tap on a beer keg. Nah, tap implies the emptying of liquid from some kind of storage/container. It also, of course, means to hit something lightly - but that's confusing the matter! :) >> Well, when I accidentally hear interviews on MTV then every second phrase >>is "you know"... > >Juding the US by MTV is like judging the English by the Teletubbies or the >Spice Girls. Teenagers don't really talk like that. I'll let you into a little secret. We really are like Tellytubbies. It happened in 1982 when Margaret Thatcher decided to perform a little "experiment" on all the British subjects. It left us scarred, both mentally and physically, but the upside is that we now all have TV's embedded in our stomachs - and ariels implanted in our heads. Always a bonus when you're a bit bored - or a great party trick when you're in another country. Simply whip off your top and you can watch the latest episode of your favourite program! Mind you, we do all have to say "Eh-oh" a lot of the time... ..Does anybody else think that not only is it past my bedtime, but also that I've had a tad too much too drink? Hic! :)) >> The exception of the rule... > >Huge exception, though I'm having trouble thinking of anyone under the >"rule". I can think of Anthony Hopkins... what other English actors have >been cast as the bad guy? Alan Rickman? Anthony Hopkins is Welsh. ;) Besides, he's been a bad guy too - think "Silence of the lambs"! And Alan Rickman is God as far as I'm concerned. Hardly anyone can play a bad guy as well as he can. Except that American guy. Who's name I've forgotten. You know the one. He's in "Leon" and "The Fifth Element" or "Der Funfte Elemente" for Mike... > >I thought French means shit! ;-) ;-) Man, where's ?Neil when you need > >him? ;-) > Damn, a little bit too late for this topic. But, damnit, I'm going to join in a month-old conversation. Because I'm quite, quite mad. But this, I think, you've realised already. Although I hardly think you can all call yourselves sane. Dynarec indeed. Hah! ;)) >> You're right, that's something for NG, but it seems he has vanished... >> I hope that Gwenole doesn't take that too serious ;-) > >He didn't seem to mind our incessant teasing before... No offense Gwenole >- we're all friends here who feel comfortable to let our pants down in >front of eachothers. In fact, I'm naked right now. ;-) Blimey, that's not a nice thought! All I can say is that I hope you wrote this message when you weren't on the plane! ;)) >> >Just trying to pass the time - waiting to hop a plane back to home... >> Hop, hop, and away... > >I'm back. Damn, what a scary flight! Lots of turbulence(sp?). We had a >go-round which resulted in gunning the engine and pulling up at a 45 >degree angle and me soiling myself. Turns out some dipshit didn't get off >the runway fast enough. Christ! I guess that was slightly more scary than the weather in Chicago! I've heard that with the wind-chill that it's something like -40! That's... cold. Certainly colder than my lowest temperature - which was -27 in Munich last February! >BTW - I wound up spending a bunch of time on the plane (between the >rocking motion of the plane) working on the dynamic recompilation >document. Anyone interested in seeing it so far? It's about like looking >at a frame of a car with a few of the parts put in, but it's getting >there! And if there's any mistakes on the document, you can always claim that you'd just hit your head when you wrote it. A good plan if I ever did see one! I really should sober up... :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 04:45:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA00590 for dynarec-outgoing; Sun, 17 Dec 2000 04:45:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00bf01c0682a$97870fa0$e24aa8c2@taxx> From: "Neil Griffiths" To: Subject: DYNAREC: Food Fight Date: Sun, 17 Dec 2000 13:09:28 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3155.0 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3155.0 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Elevator isn't used in British English, they use lift instead. I hope one of >the British buys on the list can confirm that. We don't have the same meaning of the word certainly! >Whiskey is Irish and whisky is Scottish... And I've drank too much of both. Hic! >Strange, Alan Rickman was my first choice... I'll try to think of other >examples. Oh, I got it wrong. Ah! Well, just look at the latest Bond movie. Guess which nationality the bad guy is? Just don't say "English" or the Scottish'd have your balls and eat them. Probably in haggis. And they'd probably eat babies too. The other other white meat. I sooooo hope you've seen Austin Powers 2 or you'll be thinking I'm strange right now. Yeah, yeah, I am strange. But not quite THAT strange... And the female lead, Sophie Marceau, was also bad. And French. I'll leave you to draw your own conclusions. Otherwise Gwenole will truly believe I hate the French. Not true. But I do get scared of women who don't shave their armpits. It's only right. Women with more hair under their arms than I have over my whole body just generally scare me! So at least Sophie Marceau has bitten the bullet and pulled out the razor of justness... ;) >I have to admit that it's even more true for German actors... I know that in both British and American cinema, Germans (not German actors) are usually portrayed as the bad guys. But that's because you wake up before anyone else and get all the good places on the beach on holiday! ;) >>He didn't seem to mind our incessant teasing before... No offense Gwenole >>- we're all friends here who feel comfortable to let our pants down in >>front of eachothers. In fact, I'm naked right now. ;-) > >Lucky you that you don't have a webcam ;-) Lucky *him*? It's not him who'd have lost their eyesight! ;p >>BTW - I wound up spending a bunch of time on the plane (between the >>rocking motion of the plane) working on the dynamic recompilation >>document. Anyone interested in seeing it so far? It's about like looking >>at a frame of a car with a few of the parts put in, but it's getting >>there! > >Very interested! Bring it on! I'm also interested though I suspect you've already linked to it by now! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 04:46:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA00600 for dynarec-outgoing; Sun, 17 Dec 2000 04:46:03 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00c901c0682a$b4fd7b00$e24aa8c2@taxx> From: "Neil Griffiths" To: Subject: DYNAREC: Food Fight Date: Sun, 17 Dec 2000 13:10:17 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3155.0 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3155.0 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> Well, which car makes are still English anyway... ? > >Rover. > >Oh dear, I'll get my coat.... And leg it too because I seem to remember that they were bought last year. And aren't British anymore. Bugger. So... at least we've got the Aston Martin. And the three wheelers are coming back! Yaay! Yaa... Okay, maybe I should watch my TV implant thing... ;) >Nah, a taps a tap, doesn't matter if it's pouring beer or water. Except when you hit something. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 04:46:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA00609 for dynarec-outgoing; Sun, 17 Dec 2000 04:46:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ce01c0682a$c8bb3100$e24aa8c2@taxx> From: "Neil Griffiths" To: Subject: DYNAREC: Finally... Date: Sun, 17 Dec 2000 13:10:50 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3155.0 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3155.0 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Found the link to the dynarec document, I'll comment tomorrow. But I want to know one thing. How the hell did I suddenly become to a "Salon Sex" newsletter on an e-mail address I never give out during a period when I've had no Internet access? I mean... that's just scary! But not half as scary as the actual contents. I don't want to know. Heeelp! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 04:47:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA00618 for dynarec-outgoing; Sun, 17 Dec 2000 04:47:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00d601c0682a$f3b03360$e24aa8c2@taxx> From: "Neil Griffiths" To: Subject: DYNAREC: And if you're wondering... Date: Sun, 17 Dec 2000 13:12:02 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3155.0 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3155.0 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ...those e-mails were written last night. But they didn't come through. Bugger! Anyway, they should do now! :o Neil. PS About to read the dynarec document now! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 04:53:23 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA00632 for dynarec-outgoing; Sun, 17 Dec 2000 04:53:22 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00e901c0682b$badcf860$e24aa8c2@taxx> From: "Neil Griffiths" To: Subject: Re: DYNAREC: HLE Date: Sun, 17 Dec 2000 13:17:32 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3155.0 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3155.0 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >Someone knows if there is any document (for example some from the N64 >emulation scene) about HLE? > >Althought it is basically the same as OS 'emulation' in static translation ... Yep, pretty much. And I've changed my opinion over the viability of Dreamcast emulation. I believe I've come up with a technique that would make it possible. A lot of Dreamcast titles use DirectX (others use SEGA's own things). HLE alongside other techniques would make it possible to have Dreamcast emulation even now. Which is very, very scary. Oh, and I've joined the dark side. Although NB is going to be upset, I've bought myself an Athlon 1GHz which I'll be running at a nice 1.2GHz. Stably. And for the money - that's a very VERY good deal! It was an ABIT KT7 motherboard, 128MB of LG PC133 memory and the 1GHz CPU for 269 pounds - ~$500. You cannot say fairer to that. Add to that two IBM 46GB drives for 122 each, 30 quid for a RAID controller and 87 quid for 256 more MB and I believe I'll have a nice system. ~90GB with an average transfer rate of 35-40MB/s is a little... nice. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 06:02:20 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA00702 for dynarec-outgoing; Sun, 17 Dec 2000 06:02:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003901c06835$5e6f9420$a02a989e@TomBrowne> From: "Tom Browne" To: References: <00e901c0682b$badcf860$e24aa8c2@taxx> Subject: Re: DYNAREC: HLE Date: Sun, 17 Dec 2000 14:26:38 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yep, pretty much. And I've changed my opinion over the viability of > Dreamcast emulation. I believe I've come up with a technique that would make > it possible. A lot of Dreamcast titles use DirectX (others use SEGA's own > things). HLE alongside other techniques would make it possible to have > Dreamcast emulation even now. Which is very, very scary. >From what I've heard, there are only a few games which use the Dreamcast's WinCE support, probably because a royalty is forthcoming to MS for the privilege. Only people doing ports from the PC use it, apparently... I don't see Dreamcast being done anytime soon... from what I recall, there are a number of undocumented instructions in the SH4 which Sega makes considerable use of, as well as this chip being very well suited to T&L operations due to its "Vector Accelerator". You'd probably need to be able to translate the vector code into SSE2 just to get barely decent performance on a top-end system... which sounds like fun... Naah... to honest, if you want to play Dreamcast games, just buy one. Poor old Sega needs all the help they can right now to beat off the eeevil Sony and their ill-conceived PS2 which makes the Saturn look like an elegant architecture... Developers who've worked on the DC seem to love it due to the simplicity of the design, but it's doomed to failure due to a lack of credibility, regardless of the really quite excellent games available for it... certainly pisses on what the PS2 has to offer right now... unless you want to spend all your time playing PS1 games on a 300 quid console... > Oh, and I've joined the dark side. Although NB is going to be upset, I've > bought myself an Athlon 1GHz which I'll be running at a nice 1.2GHz. Stably. > And for the money - that's a very VERY good deal! It was an ABIT KT7 > motherboard, 128MB of LG PC133 memory and the 1GHz CPU for 269 pounds - > ~$500. You cannot say fairer to that. Add to that two IBM 46GB drives for > 122 each, 30 quid for a RAID controller and 87 quid for 256 more MB and I > believe I'll have a nice system. ~90GB with an average transfer rate of > 35-40MB/s is a little... nice. :) Until next year when the P4-optimised stuff comes out, yes. :) It is scary to see how much faster the P4 has the potential to be... just remains to be seen whether Intel are going to play it daft and keep their optimising secrets under lock and key. - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 08:53:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA00833 for dynarec-outgoing; Sun, 17 Dec 2000 08:53:37 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701c0684d$506d8860$2744a8c2@taxx> From: "Neil Griffiths" To: Subject: Re: DYNAREC: HLE Date: Sun, 17 Dec 2000 17:18:01 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3155.0 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3155.0 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Tom Browne you say? I'm sure I know you. You know, if I didn't know any better, I'd have said that I saw you only yesterday! ;) >From what I've heard, there are only a few games which use the Dreamcast's >WinCE support, probably because a royalty is forthcoming to MS for the >privilege. Only people doing ports from the PC use it, apparently... Doesn't matter. I once said it wasn't possible just because of the way the pre-Kyro chip rendered. I've changed my mind now - it could be done with HLE. And even better if the end-PC has a Kyro! >I don't see Dreamcast being done anytime soon... from what I recall, there >are a number of undocumented instructions in the SH4 which Sega makes >considerable use of, as well as this chip being very well suited to T&L >operations due to its "Vector Accelerator". You'd probably need to be able >to translate the vector code into SSE2 just to get barely decent performance >on a top-end system... which sounds like fun... Yes, perhaps, but I've still changed my mind from "Not for a couple of years" to "possibly on todays machines" - by which I do, of course, mean the high-end 1.5GHz and above machines... >Naah... to honest, if you want to play Dreamcast games, just buy one. Poor >old Sega needs all the help they can right now to beat off the eeevil Sony >and their ill-conceived PS2 which makes the Saturn look like an elegant >architecture... I didn't say that I was going to do it. But someone will. I'd rather they didn't - I'd rather that Sony did have competition - and I believe that the Dreamcast can deliver it with a fair library of games now. Remember, we're all probably gamers here (which is why we like emulation) so I'm sure we would! I'm considering it - but I just wouldn't have time to play on it which would make the money spent on it rather useless to be honest. May as well buy one when I *do* have the time - and it'll be cheaper too! >Developers who've worked on the DC seem to love it due to the simplicity of >the design, but it's doomed to failure due to a lack of credibility, >regardless of the really quite excellent games available for it... certainly >pisses on what the PS2 has to offer right now... unless you want to spend >all your time playing PS1 games on a 300 quid console... And of course there's a fair amount of games which the PS2 can't play - any which didn't use Sony's toolkit. So it isn't even good for that! >Until next year when the P4-optimised stuff comes out, yes. :) You think I'd get a P4 for that price? ;p >It is scary to see how much faster the P4 has the potential to be... just >remains to be seen whether Intel are going to play it daft and keep their >optimising secrets under lock and key. RDRAM is scary too. Aren't Intel supporting DDR now too? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 09:51:46 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA00895 for dynarec-outgoing; Sun, 17 Dec 2000 09:51:44 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Food Fight From: "M.I.K.e" Message-ID: <000378a454aeec74_mailit@mail.dynarec.com> References: <008c01c0682a$3067d480$e24aa8c2@taxx> Date: Sun, 17 Dec 2000 17:55:20 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Much as I hate to bring up an old discussion... Nah, who'm I kidding? This >is right up my street! :) How typical for you! ;-) >..Does anybody else think that not only is it past my bedtime, but also that >I've had a tad too much too drink? Hic! :)) I wouldn't have noticed without you mentioning it ;-) >>Huge exception, though I'm having trouble thinking of anyone under the >>"rule". I can think of Anthony Hopkins... what other English actors have >>been cast as the bad guy? Alan Rickman? >Anthony Hopkins is Welsh. ;) >Besides, he's been a bad guy too - think "Silence of the lambs"! True. >And Alan Rickman is God as far as I'm concerned. Hardly anyone can play a >bad guy as well as he can. Except that American guy. Who's name I've >forgotten. You know the one. He's in "Leon" and "The Fifth Element" or "Der >Funfte Elemente" for Mike... First of all it's "Das Fünfte Element" and Gary Oldman was born in London, at least according to IMDB. >Damn, a little bit too late for this topic. But, damnit, I'm going to join >in a month-old conversation. Because I'm quite, quite mad. But this, I >think, you've realised already. Especially I have, because I had the oppurtunity to meet you in person! >Although I hardly think you can all call >yourselves sane. Dynarec indeed. Hah! ;)) Sane? I think I never was! >Neil. -- M.I.K.e An idea is an eye given by God for the seeing of God. Some of these eyes we cannot bear to look out of, we blind them as quickly as possible. -- Russell Hoban, "Pilgermann" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 09:51:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA00903 for dynarec-outgoing; Sun, 17 Dec 2000 09:51:56 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Food Fight From: "M.I.K.e" Message-ID: <000378a4c5f6a0c7_mailit@mail.dynarec.com> References: <00bf01c0682a$97870fa0$e24aa8c2@taxx> Date: Sun, 17 Dec 2000 18:27:01 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>Whiskey is Irish and whisky is Scottish... >And I've drank too much of both. Hic! Strange that there isn't anything like Welsh whisky, isn't it? >Oh, I got it wrong. Ah! Well, just look at the latest Bond movie. Guess >which nationality the bad guy is? Just don't say "English" or the Scottish'd >have your balls and eat them. I haven't seen the lates two ones... But as far as I know both the Jaws-like guys in these two films are German: Götz Otto and Jean-Claude Rudolph. The casting of these guys must have been quite interesting. Otto got 10 seconds to describe himslef and said "I'm big, I'm blonde, I'm German" and got the job. Rudolph was told to show the difference between kick-boxing and karate - he did and got the job... >>I have to admit that it's even more true for German actors... >I know that in both British and American cinema, Germans (not German actors) >are usually portrayed as the bad guys. But that's because you wake up before >anyone else and get all the good places on the beach on holiday! ;) Hey, I used to get up early when I was still in school but now I normally get up around noon... >>Lucky you that you don't have a webcam ;-) >Lucky *him*? It's not him who'd have lost their eyesight! ;p Do you always have to shock me like that!?! ;-) >Neil. -- M.I.K.e We are all agreed that your theory is crazy. The question which divides us is whether it is crazy enough to have a chance of being correct. My own feeling is that it is not crazy enough. -- Niels Bohr --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 09:52:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA00912 for dynarec-outgoing; Sun, 17 Dec 2000 09:52:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Food Fight From: "M.I.K.e" Message-ID: <000378a4ceac41ac_mailit@mail.dynarec.com> References: <00c901c0682a$b4fd7b00$e24aa8c2@taxx> Date: Sun, 17 Dec 2000 18:29:27 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>> Well, which car makes are still English anyway... ? >So... at least we've got the Aston Martin. But without the James Bond extras :-( >And the three wheelers are coming back! Robin Reliant, or how is it called? How about the Mini? >Neil. -- M.I.K.e Weiler's Law: Nothing is impossible for the man who doesn't have to do it himself. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 09:52:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA00919 for dynarec-outgoing; Sun, 17 Dec 2000 09:52:10 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: HLE From: "M.I.K.e" Message-ID: <000378a551588d42_mailit@mail.dynarec.com> References: <00e901c0682b$badcf860$e24aa8c2@taxx> <003901c06835$5e6f9420$a02a989e@TomBrowne> Date: Sun, 17 Dec 2000 19:05:59 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >From what I've heard, there are only a few games which use the Dreamcast's >WinCE support, probably because a royalty is forthcoming to MS for the >privilege. Only people doing ports from the PC use it, apparently... Indeed, and in that case you wouldn't need a Dreamcast emulator to play these games on the PC. Some are more like simple ports, like Half-Life, but especially that game is said to need some reoptimisation because it's too slow, most likely due to the use of WinCE. Another problem could be that each game comes with it's own version of WinCE and that version mix could be quite a mess to deal with. >I don't see Dreamcast being done anytime soon... Me neither. >from what I recall, there >are a number of undocumented instructions in the SH4 which Sega makes >considerable use of, as well as this chip being very well suited to T&L >operations due to its "Vector Accelerator". You'd probably need to be able >to translate the vector code into SSE2 just to get barely decent performance >on a top-end system... which sounds like fun... True. And one should never forget about the sound controller, which can also do a lot of tricks if wisely programmed. >Naah... to honest, if you want to play Dreamcast games, just buy one. Poor >old Sega needs all the help they can right now to beat off the eeevil Sony >and their ill-conceived PS2 which makes the Saturn look like an elegant >architecture... Dreamcast is probably the best balanced console at the moment, and the others are just overclocked junk. I know that it's a horror for many developers to program games for the PS2. >- Tom. -- M.I.K.e Every nonzero finite dimensional inner product space has an orthonormal basis. It makes sense, when you don't think about it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 09:52:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA00927 for dynarec-outgoing; Sun, 17 Dec 2000 09:52:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: I'm back... kind of! From: "M.I.K.e" Message-ID: <000378a43c812069_mailit@mail.dynarec.com> References: <001201c067c7$929401a0$3dc2fad4@taxx> Date: Sun, 17 Dec 2000 17:48:35 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well, I'm at home using my laptop - still no phone line as of yet. I really >hate electricity companies who crush pipes in the road so cable doesn't go >down it... :-/ Welcome back!! >I've got lots of catching up to do in terms of e-mail, so I'll make a start >and be careful to only reply to a few... else I'll not be getting any sleep >tonight! :o Sleep? Did I hear that word before? ;-) >And for those of you for Germany, look at this - "Germany - buy a Nokia 3310 >mobile with a 24 months contract (first 3 months are free) and receive a >SEGA Dreamcast for 0 DM - yes, ZERO DEUTSCHMARKS ! WHERE ? Media-Markt >Koblenz is your place if you live in/near Germany" Damn, I don't live in Koblenz and I also don't think that you'd get it for free without a mobile... >Neil. -- M.I.K.e A fool's brain digests philosophy into folly, science into superstition, and art into pedantry. Hence University education. -- G. B. Shaw --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 10:12:56 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA00955 for dynarec-outgoing; Sun, 17 Dec 2000 10:12:54 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701c06854$a82c7000$3442ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <00e901c0682b$badcf860$e24aa8c2@taxx> <003901c06835$5e6f9420$a02a989e@TomBrowne> Subject: Re: DYNAREC: HLE Date: Sun, 17 Dec 2000 19:10:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I don't see Dreamcast being done anytime soon... from what I recall, there > are a number of undocumented instructions in the SH4 which Sega makes > considerable use of, as well as this chip being very well suited to T&L > operations due to its "Vector Accelerator". You'd probably need to be able > to translate the vector code into SSE2 just to get barely decent performance > on a top-end system... which sounds like fun... > Well, the SH4 isn't a secret CPU precisely I think so undocumented instructions include wouldn't be a problem. What I don't know if it is being used in other computers. What is the MFLOPS output of the SH4? The VR2 could be also a problem because it is esentially different from all other 3D chips out there. > Naah... to honest, if you want to play Dreamcast games, just buy one. Poor > old Sega needs all the help they can right now to beat off the eeevil Sony > and their ill-conceived PS2 which makes the Saturn look like an elegant > architecture... > Sony only wanted the developers to get fun programming its new brand console ;). > Developers who've worked on the DC seem to love it due to the simplicity of > the design, but it's doomed to failure due to a lack of credibility, > regardless of the really quite excellent games available for it... certainly > pisses on what the PS2 has to offer right now... unless you want to spend > all your time playing PS1 games on a 300 quid console... > Well, if only Connectix would make a port of its fantastic VGS to Dreamcast ;). I don't care about the Bleem thing if someday it is finished. > > Until next year when the P4-optimised stuff comes out, yes. :) > > It is scary to see how much faster the P4 has the potential to be... just > remains to be seen whether Intel are going to play it daft and keep their > optimising secrets under lock and key. > Now that everybody is talking about how bad the P4 is because of the relative clock speeds and performance with the P3/K7? ;) I have talked with people who didn't even belive that it was possible for Intel to release such a thing ;)), really fun. An Intel engineer performed a presentation in my university but with my very bad english listening capabilities ;) and my low memory capacity I just got some basic concepts about the CPU. And I still haven't download the official documentation. In any case I don't know so much about the P4 althought the L1 cache seems a bit ... small. The branch predicton was told to be really impresive ... let see if it is real ;). > - Tom. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 10:12:58 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA00964 for dynarec-outgoing; Sun, 17 Dec 2000 10:12:57 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000d01c06855$3eff4700$3442ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <000701c0684d$506d8860$2744a8c2@taxx> Subject: Re: DYNAREC: HLE Date: Sun, 17 Dec 2000 19:14:48 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yes, perhaps, but I've still changed my mind from "Not for a couple of > years" to "possibly on todays machines" - by which I do, of course, mean the > high-end 1.5GHz and above machines... > Well, let see 5 * 300 Mhz is 1.5 Ghz ;)). I don't think that only a 5 slowdown factor would be possible, a dynarec with such a performance would be quite good ;), and there are still the graphics, the sound, the ARM 'thing' ;)). Just take a look to what needs a PSX to be emulated at full speed, a PSX is 25 Mhz with a low capability 3D hardware (low compared with anything from the PC world since the first Vodoo). > Neil. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 10:13:01 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA00972 for dynarec-outgoing; Sun, 17 Dec 2000 10:13:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001301c06855$c07250c0$3442ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <00e901c0682b$badcf860$e24aa8c2@taxx> Subject: Re: DYNAREC: HLE Date: Sun, 17 Dec 2000 19:18:26 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yep, pretty much. And I've changed my opinion over the viability of > Dreamcast emulation. I believe I've come up with a technique that would make > it possible. A lot of Dreamcast titles use DirectX (others use SEGA's own > things). HLE alongside other techniques would make it possible to have > Dreamcast emulation even now. Which is very, very scary. > After finding the HLE FAQ from the guy of the UltraHLE that HLE thing seems more like a collection of tricks that wouldn't make nearly to impossible to emulate more than a few games ... For real HLE it is needed a really standarized API or OS working under the game. And I don't think that it happens so in the console worl still ... > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 10:13:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA00979 for dynarec-outgoing; Sun, 17 Dec 2000 10:13:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001d01c06856$3f4d98a0$3442ae3e@hal9000> From: "Victor Moya del Barrio" To: References: <001201c067c7$929401a0$3dc2fad4@taxx> Subject: Re: DYNAREC: I'm back... kind of! Date: Sun, 17 Dec 2000 19:21:58 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > Well, I'm at home using my laptop - still no phone line as of yet. I really > hate electricity companies who crush pipes in the road so cable doesn't go > down it... :-/ > > I've got lots of catching up to do in terms of e-mail, so I'll make a start > and be careful to only reply to a few... else I'll not be getting any sleep > tonight! :o > > And for those of you for Germany, look at this - "Germany - buy a Nokia 3310 > mobile with a 24 months contract (first 3 months are free) and receive a > SEGA Dreamcast for 0 DM - yes, ZERO DEUTSCHMARKS ! WHERE ? Media-Markt > Koblenz is your place if you live in/near Germany" > > Cool news or what? Now all I need is the same in the UK - and some time to > play on the damned thing! :o > If someone had doubts about Neil returning to the list the collection of mails received would make impossible to don't believe it ;)). Only NG could write such mails to a serious dynarec list like this one is ;)))). Ummm ... wellcome back to the list :). > Neil. > > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 11:23:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA01044 for dynarec-outgoing; Sun, 17 Dec 2000 11:23:08 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001e01c06862$14e7e780$a02a989e@TomBrowne> From: "Tom Browne" To: References: <00e901c0682b$badcf860$e24aa8c2@taxx> <003901c06835$5e6f9420$a02a989e@TomBrowne> <000701c06854$a82c7000$3442ae3e@hal9000> Subject: Re: DYNAREC: HLE Date: Sun, 17 Dec 2000 19:45:46 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Naah... to honest, if you want to play Dreamcast games, just buy one. Poor > > old Sega needs all the help they can right now to beat off the eeevil Sony > > and their ill-conceived PS2 which makes the Saturn look like an elegant > > architecture... > Sony only wanted the developers to get fun programming its new brand > console ;). It is quite funny, really... when Sega brought out the Saturn, all the developers moaned how bad it was compared to the PS to develop for, but now the tables have turned. > > Developers who've worked on the DC seem to love it due to the simplicity of > > the design, but it's doomed to failure due to a lack of credibility, > > regardless of the really quite excellent games available for it... certainly > > pisses on what the PS2 has to offer right now... unless you want to spend > > all your time playing PS1 games on a 300 quid console... > Well, if only Connectix would make a port of its fantastic VGS to > Dreamcast ;). I don't care about the Bleem thing if someday it > is finished. Connectix still have the court case to deal with, don't they? > > Until next year when the P4-optimised stuff comes out, yes. :) > > It is scary to see how much faster the P4 has the potential to be... just > > remains to be seen whether Intel are going to play it daft and keep their > > optimising secrets under lock and key. > Now that everybody is talking about how bad the P4 is because > of the relative clock speeds and performance with the P3/K7? ;) > I have talked with people who didn't even belive that it was > possible for Intel to release such a thing ;)), really fun. Just you wait until people start using SSE2... combined with the potentially huge bandwidth of RDRAM (heh... or DDR... ;), it's going to be a bit... fast. I agree totally that for existing apps, it's generally inferior to a K7 (or indeed, a P3), but when P4 optimising compilers hit the market, which will automatically compile FPU code to use SSE2, the massive boost in floating point performance will be clear (I've been told it can do 4 single precision FP operations / cycle). Quake 3 already gives a glimpse of what the P4 is going to do, and that wasn't even written for it! > An Intel engineer performed a presentation in my university but > with my very bad english listening capabilities ;) and my low memory > capacity I just got some basic concepts about the CPU. And I still > haven't download the official documentation. I don't think many people have... it has been an extremely quiet launch by Intel standards. I suspect no-one in the general public even knows the P4 _has_ been released! Remind anyone else of when Intel were keeping the MMX launch quiet just before Christmas so the old machines would still sell? > In any case I don't know so much about the P4 althought the L1 > cache seems a bit ... small. The branch predicton was told to be > really impresive ... let see if it is real ;). Allegedly, the branch prediction is up to 96%, or something like that. I also read on the Register that they had to make some fairly severe cuts to keep the die size down. - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 12:25:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA01102 for dynarec-outgoing; Sun, 17 Dec 2000 12:25:34 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004001c0686a$cd381280$a02a989e@TomBrowne> From: "Tom Browne" To: References: <000701c0684d$506d8860$2744a8c2@taxx> Subject: Re: DYNAREC: HLE Date: Sun, 17 Dec 2000 20:48:29 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Tom Browne you say? I'm sure I know you. You know, if I didn't know any > better, I'd have said that I saw you only yesterday! ;) Are you sure it wasn't a different one? There are thousands of us, you know... :)) > >From what I've heard, there are only a few games which use the Dreamcast's > >WinCE support, probably because a royalty is forthcoming to MS for the > >privilege. Only people doing ports from the PC use it, apparently... > Doesn't matter. I once said it wasn't possible just because of the way the > pre-Kyro chip rendered. I've changed my mind now - it could be done with > HLE. And even better if the end-PC has a Kyro! The success of that very much depends on the API Sega has adopted, which may be specially tailored to the tile rendering style of the PVR technology - having a Kyro won't help you much on the PC, unless it has its own native API, like Glide or Metal. I doubt people are even thinking about the video chipset - just emulating the SH4 in realtime is hard enough... > Yes, perhaps, but I've still changed my mind from "Not for a couple of > years" to "possibly on todays machines" - by which I do, of course, mean the > high-end 1.5GHz and above machines... The main processor? Possibly on a P4 with SSE2. Anything else at the same time? I doubt it... If you had two P4s in SMP with a graphics card either capable of achieving the fillrate required for existing games (remember the overdraw catch-out for traditional renderers), or like Neil suggested, a Kyro with a native API, then I suspect you could potentially do the entire lot. But then you've just spent something like three grand for a complete system filled with RDRAM, that is if there _was_ a P4 dual processor board available... You could almost get a DC for the cost of a Kyro, anyway. > >Naah... to honest, if you want to play Dreamcast games, just buy one. Poor > >old Sega needs all the help they can right now to beat off the eeevil Sony > >and their ill-conceived PS2 which makes the Saturn look like an elegant > >architecture... > I didn't say that I was going to do it. But someone will. I'd rather they > didn't - I'd rather that Sony did have competition - and I believe that the > Dreamcast can deliver it with a fair library of games now. Too late. The games are fantastic (probably IMHO a better lineup than any console has had, given the time it has been around), but the big Sony corporate machine will crush anything in its path, apart from XBox, which is still a bit of an unknown quantity. When Sega said they were going to turn DC into a DVD chip, people knew the game was up. It's a real shame, but that's the power of marketing for you... > Remember, we're > all probably gamers here (which is why we like emulation) so I'm sure we > would! I've never owned a console, out of principle, and I probably never will... so I'm not "hardcore"... :) > I'm considering it - but I just wouldn't have time to play on it > which would make the money spent on it rather useless to be honest. May as > well buy one when I *do* have the time - and it'll be cheaper too! It'll probably be built into your next DVD player, providing it isn't a Sony... :)) > >pisses on what the PS2 has to offer right now... unless you want to spend > >all your time playing PS1 games on a 300 quid console... > And of course there's a fair amount of games which the PS2 can't play - any > which didn't use Sony's toolkit. So it isn't even good for that! Really? That's a bit shite... I was under the impression all the serious developers had their own custom libraries. The PS1 hardly had oodles of power, especially if you were trying to get a game running at a decent whack in high res mode... > >Until next year when the P4-optimised stuff comes out, yes. :) > You think I'd get a P4 for that price? ;p No, but the P4 fully optimised, even at current silly prices, kicks arse when it comes to price vs. single precision FP performance, as far as x86 goes. Next year, the P4 prices will be sensible, and the K7 will be the one looking silly, providing Intel do the right thing, and start giving developers the help they need to fully utilise SSE2. Telling people the P4 actually exists might be a good idea as well... > >It is scary to see how much faster the P4 has the potential to be... just > >remains to be seen whether Intel are going to play it daft and keep their > >optimising secrets under lock and key. > RDRAM is scary too. Aren't Intel supporting DDR now too? They want to... badly. It's become clear to the world and its dog that Rambus somehow managed to screw Intel over quite nicely, managing to negotiate a contract which puts them in a win-win situation no matter what Intel do in the future (for the next couple of years, anyway). With Rambus also suing any SDRAM manufacturer that isn't willing to pay them royalties (buggered if I can remember what the patent was, or even if it was one of my pet hates - a "bought" patent), Intel would do well to distance themselves from a company who appears to have little interest in developing products that work properly (re: motherboard fiasco), but rather more just raking in the cash... If all the SDRAM manufacturers got together, I would have thought they could buy out Rambus and dissolve the company to save them all this hassle. That's not a very nice thing to do, but people in glass houses... - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 13:22:26 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA01154 for dynarec-outgoing; Sun, 17 Dec 2000 13:22:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: HLE From: "M.I.K.e" Message-ID: <000378a839c28b78_mailit@mail.dynarec.com> References: <00e901c0682b$badcf860$e24aa8c2@taxx> <003901c06835$5e6f9420$a02a989e@TomBrowne> <000701c06854$a82c7000$3442ae3e@hal9000> Date: Sun, 17 Dec 2000 22:34:09 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well, the SH4 isn't a secret CPU precisely I think so undocumented >instructions include wouldn't be a problem. What I don't know if it is >being used in other computers. I think it's used in some arcade machines, but not much else. >What is the MFLOPS output of the SH4? According to Hitatchi 1.4 GFLOPS. >The VR2 could be also a problem because it is esentially different >from all other 3D chips out there. Radeon uses similar tricks although not to that extent as PowerVR2 does, but that's the reason why Radeon is almost as fast as GeForce although it has lower specs. But you're right that PowerVR2 is a problem. >Sony only wanted the developers to get fun programming its new brand >console ;). I'll ask David McEwen how much fun he has... >Victor -- M.I.K.e There can be no twisted thought without a twisted molecule. -- R. W. Gerard --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 13:22:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA01163 for dynarec-outgoing; Sun, 17 Dec 2000 13:22:27 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: HLE From: "M.I.K.e" Message-ID: <000378a84503bd1e_mailit@mail.dynarec.com> References: <000701c0684d$506d8860$2744a8c2@taxx> <004001c0686a$cd381280$a02a989e@TomBrowne> Date: Sun, 17 Dec 2000 22:37:17 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Are you sure it wasn't a different one? There are thousands of us, you >know... :)) As if one wasn't enough already... ;-) >I doubt people are even thinking about the video chipset - just emulating >the SH4 in realtime is hard enough... True. And you'll have the same problem with the ARM7. >- Tom. -- M.I.K.e I've known him as a man, as an adolescent and as a child -- sometimes on the same day. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 13:22:29 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA01171 for dynarec-outgoing; Sun, 17 Dec 2000 13:22:28 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: I'm back... kind of! From: "M.I.K.e" Message-ID: <000378a83d2cd790_mailit@mail.dynarec.com> References: <001201c067c7$929401a0$3dc2fad4@taxx> <001d01c06856$3f4d98a0$3442ae3e@hal9000> Date: Sun, 17 Dec 2000 22:35:06 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >If someone had doubts about Neil returning to the list the collection of >mails received would make impossible to don't believe it ;)). Only NG >could write such mails to a serious dynarec list like this one is ;)))). Don't try to pretend that the list ws much more serious without NG! ;-) >Victor -- M.I.K.e A year spent in artificial intelligence is enough to make one believe in God. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 14:49:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA01243 for dynarec-outgoing; Sun, 17 Dec 2000 14:48:58 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Dec 2000 15:00:10 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Sound In-Reply-To: <3.0.5.32.20001216211110.00841100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I know this is quite a bit OT, but does anyone here know a good starting > point for information on sound generation? I've got a ton of soft-synth experience, ranging from simple shift register creation to full-on mixing and tone generation. How can I help? > I think my method works (it is very, very simple -- it seems too simple > when I compare it against the tone generating code in the MAME SN76489 > emulator) but I'm having problems finding the proper clock the Genesis uses > (I can figure this out later, I think the SMS uses a 125000Hz clock) and, > more importantly, figuring out what to use for the amplitude. Most likely it gets divided down internally by 8 or something. > The PSG chip allows you to specify a volume from 0 to 15 for the tone > generated. I'm not sure how I should translate this to a value usable on PC > hardware (because it's too quiet), I assume I can just guess and check or > something ;) > Also, I'm not quite sure how the layout of the wave should look like. I > wrote a little test program that generates a tone and logged the wave > output with Genecyst, it produced 8-bit mono data like this: > 0x87 0x87 0x87..... 0x78 0x78 0x78 0x78... > It looks as if the amplitude data was simply nibble-swapped. Nah, it looks like you're doing unsigned sample data. I hope you know something about sound itself, otherwise my explanations are not going to make sense. If your data is unsigned, then 0x80 is your centerpoint, or 0 volts. Anything below it is negative going, anything above it is positive going. So what it looks like you've created is a square wave with an amplitude of 15 (0x87 - 0x78 = 15). If your data is signed, then 0x00 is your centerpoint, 0x7f being your high and 0x80 (-128) being your low. Beware of which you generate, because your target sound device may be signed or unsigned. The best way to deal with this is to keep everything signed when creating the sound (it's easier to mix, too) and convert it to unsigned (by adding 0x80 to the value) later on if necessary. > I don't quite > understand how all of this works out, since all of my sound knowledge comes > from a poorly written brief chapter in an assembly language book I have, > and some assumptions I've made. Uh oh... Well, if you want to make it louder, make sure you have the extremes go to higher (and lower values). > If anyone would like to see the PSG documentation, I can paste > it into an email, since it's really small and quite simple. It is > little more than a square wave tone generator with 3 channels (it has > a noise channel, but I'm not worrying about that yet ;) -- and I want > to get 1 channel emulated, and worry about mixing later ;)) When you get to mixing, contact me. Don't follow the examples of add/average. There's an easier/better way to do it. The PSG isn't quite as simple as you might think. There are various waveforms to choose from in addition to (I think) some amount of envelope generation that can control the amplitude or the frequency of the chip. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 14:52:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA01256 for dynarec-outgoing; Sun, 17 Dec 2000 14:52:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Dec 2000 15:03:59 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Sound In-Reply-To: <000f01c06805$2b181e60$c045ae3e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I know this is quite a bit OT, but does anyone here know a good starting > > point for information on sound generation? > Copy what others have made? ;). It uses to be my method, well not > copying but being influenced ;)). Because there are a *LOT* of bad examples. > > generated. I'm not sure how I should translate this to a value usable on PC > > hardware (because it's too quiet), I assume I can just guess and check or > > something ;) > PC samples go from 0 to 255 (unsigned 8-bit) or 0..65536 (16 bit unsigned, > which I think isn't used ;). You have to split all this sample number space > between all the different combinations of volumes you can have: this case > 4*15. Depends upon if it's signed or unsigned. It can vary even on the same card. > I think the PSG emulation is quite simple and it is a bit harder to > make a good synchronization. Not at all. As long as it's properly clocked to the Z80 emulator, you timestamp changes and apply them as the stream is created. Very simple. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 14:58:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA01269 for dynarec-outgoing; Sun, 17 Dec 2000 14:58:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 17 Dec 00 18:07:04 -0500 Message-Id: <3.0.5.32.20001217125627.008434d0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 17 Dec 2000 12:56:27 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: I'm back... kind of! In-Reply-To: <001201c067c7$929401a0$3dc2fad4@taxx> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I've got lots of catching up to do in terms of e-mail, so I'll make a start >and be careful to only reply to a few... else I'll not be getting any sleep >tonight! :o Welcome back! I can already see that your return has brought a load of fresh mail to my inbox :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 15:46:35 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA01315 for dynarec-outgoing; Sun, 17 Dec 2000 15:46:31 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009401c06886$e29e37a0$a02a989e@TomBrowne> From: "Tom Browne" To: References: <000701c0684d$506d8860$2744a8c2@taxx> <004001c0686a$cd381280$a02a989e@TomBrowne> <000378a84503bd1e_mailit@mail.dynarec.com> Subject: Re: DYNAREC: HLE Date: Mon, 18 Dec 2000 00:10:09 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Are you sure it wasn't a different one? There are thousands of us, you > >know... :)) > As if one wasn't enough already... ;-) Surely not... :) > >I doubt people are even thinking about the video chipset - just emulating > >the SH4 in realtime is hard enough... > True. And you'll have the same problem with the ARM7. The ARM7 is a relatively small problem in comparison, I think! I'd take a guess you'd need something like a PII-233 to do that in realtime. - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 16:29:41 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA01361 for dynarec-outgoing; Sun, 17 Dec 2000 16:29:29 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003401c0688b$181758e0$7027893e@oemcomputer> From: "David Sharp" To: References: <000701c0684d$506d8860$2744a8c2@taxx> <004001c0686a$cd381280$a02a989e@TomBrowne> <000378a84503bd1e_mailit@mail.dynarec.com> <009401c06886$e29e37a0$a02a989e@TomBrowne> Subject: Re: DYNAREC: HLE Date: Mon, 18 Dec 2000 00:40:14 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The ARM7 is a relatively small problem in comparison, I think! I'd take a > guess you'd need something like a PII-233 to do that in realtime. Erm, nope, ARM processors (and comparable RISCs) are a real bugger to emulate at decent speed, hence mine and Julian's previous projects http://www.dcw.warwick.ac.uk/~csuix/project/ Surely this is obvious from previous discussions? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 18:34:03 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA01457 for dynarec-outgoing; Sun, 17 Dec 2000 18:33:58 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Dec 2000 18:45:12 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight In-Reply-To: <008c01c0682a$3067d480$e24aa8c2@taxx> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> elevator - lift > >They are different things. A lift is a platform on a back of a truck (or > >lorry as the English like to call it). An elevator by definition means it > >services more than one floor. > We actually do use the word elevator although we'd be more likely to say > "escalator" because they're one and the same - those metal moving stair > things... Escalator != Elevator. An elevator is a thing where you hit the up or down button, a door opens, you get in, and it elevates you to another floor. An escalator is the moving stairs. > >> intersection - crossroads > >Not quite the same thing. A 3 way stop > is not a crossroad but it is an >intersection, as there is no action > of crossing at an intersection. > And that'd be a T-junction... That's a specific kind of intersection. Basically, any 2 or more streets that meet at an opposing angle. > >> faucet - tap > >One implies water delivery - a tap does not. I.E. Faucet that gives hot > >water or a tap on a beer keg. > Nah, tap implies the emptying of liquid from some kind of storage/container. > It also, of course, means to hit something lightly - but that's confusing > the matter! :) Or dancing, but we've had enough of Riverdance... > happened in 1982 when Margaret Thatcher decided to perform a little > "experiment" on all the British subjects. It left us scarred, both mentally > and physically, but the upside is that we now all have TV's embedded in our > stomachs - and ariels implanted in our heads. Always a bonus when you're a > bit bored - or a great party trick when you're in another country. Simply > whip off your top and you can watch the latest episode of your favourite > program! Mind you, we do all have to say "Eh-oh" a lot of the time... Well, please stop it, as it's scarring the rest of the world mentally and physically. ;-) But even having the TVs embedded in your stomachs every person must pay television tax. ;-) > And Alan Rickman is God as far as I'm concerned. Hardly anyone can play a > bad guy as well as he can. Except that American guy. Who's name I've > forgotten. You know the one. He's in "Leon" and "The Fifth Element" or "Der > Funfte Elemente" for Mike... Um... that's not Alan Rickman. That's Gary Oldman. And yes, he is *THE MAN*. > >- we're all friends here who feel comfortable to let our pants down in > >front of eachothers. In fact, I'm naked right now. ;-) > Blimey, that's not a nice thought! All I can say is that I hope you wrote > this message when you weren't on the plane! ;)) I can't do email while I'm on a plane. Well, I probably could, but that's like cybersex via email. No thanks. > >document. Anyone interested in seeing it so far? It's about like looking > >at a frame of a car with a few of the parts put in, but it's getting > >there! > And if there's any mistakes on the document, you can always claim that you'd > just hit your head when you wrote it. A good plan if I ever did see one! Sadly I haven't had time to get back ot it. Been busy with my pinball machines and trying to get my first product shipped. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 18:35:52 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA01470 for dynarec-outgoing; Sun, 17 Dec 2000 18:35:52 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Dec 2000 18:47:05 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Finally... In-Reply-To: <00ce01c0682a$c8bb3100$e24aa8c2@taxx> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Found the link to the dynarec document, I'll comment tomorrow. But I want to > know one thing. How the hell did I suddenly become to a "Salon Sex" > newsletter on an e-mail address I never give out during a period when I've > had no Internet access? I mean... that's just scary! But not half as scary > as the actual contents. I don't want to know. Heeelp! :o Web crawler probably pulled it from somewhere. You wouldn't believe how much spam I wind up getting. Probably 30+ a day. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 18:36:27 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA01479 for dynarec-outgoing; Sun, 17 Dec 2000 18:36:27 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Dec 2000 18:47:40 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: And if you're wondering... In-Reply-To: <00d601c0682a$f3b03360$e24aa8c2@taxx> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > ...those e-mails were written last night. But they didn't come through. > Bugger! Anyway, they should do now! :o Sorry 'bout that. We had sustained 70MPH winds last night which knocked out power to my area for about 2.5 hours. Damnit. Synthcom was up 189 days and counting, and now it got reset. Bugger! -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 18:41:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA01491 for dynarec-outgoing; Sun, 17 Dec 2000 18:41:41 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Dec 2000 18:52:55 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: HLE In-Reply-To: <00e901c0682b$badcf860$e24aa8c2@taxx> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Oh, and I've joined the dark side. Although NB is going to be upset, I've > bought myself an Athlon 1GHz which I'll be running at a nice 1.2GHz. Stably. I would imagine the pricepoint on the Athlon is better than the equivalent Intel CPUs. Dunno myself. I've still got PIII/500s. > And for the money - that's a very VERY good deal! It was an ABIT KT7 > motherboard, 128MB of LG PC133 memory and the 1GHz CPU for 269 pounds - > ~$500. You cannot say fairer to that. Add to that two IBM 46GB drives for > 122 each, 30 quid for a RAID controller and 87 quid for 256 more MB and I > believe I'll have a nice system. ~90GB with an average transfer rate of > 35-40MB/s is a little... nice. :) Highly improbable unless you really do have the configuration listed below... Even with 10KRPM drives that are running LVD SCSI, your max transfer rates (and yes, I have two of the 36GB 10KRPM IBM drives) are 25 Megabytes a second *PEAK*, which means around 20Megabytes each/sec sustatined, so if you RAIDed them I could see 35-40MB/sec. Is this the setup you've got? The reason I ask is there are IDE RAID controllers. And if they aren't 10KRPM drives, there's no bloody way in hell you'd get that peak - let alone average. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 18:45:10 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA01505 for dynarec-outgoing; Sun, 17 Dec 2000 18:45:09 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Dec 2000 18:56:23 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: HLE In-Reply-To: <003901c06835$5e6f9420$a02a989e@TomBrowne> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > ~$500. You cannot say fairer to that. Add to that two IBM 46GB drives for > > 122 each, 30 quid for a RAID controller and 87 quid for 256 more MB and I > > believe I'll have a nice system. ~90GB with an average transfer rate of > > 35-40MB/s is a little... nice. :) > Until next year when the P4-optimised stuff comes out, yes. :) Absolutely. The P4 at 1.5Ghz with P4 optimized code is actually quite incredible. As it stands now, a 1.5Ghz P4 is about like a 1.3Ghz PIII. > It is scary to see how much faster the P4 has the potential to be... just > remains to be seen whether Intel are going to play it daft and keep their > optimising secrets under lock and key. Hm... well, they never have before and it's certainly not in their best interest to keep it secret. I've looked at the P4 architecture from an inside perspective. It's absolutely stunning, and you can bet there'll be much higher speeds to come, especially if Intel actually uses the new manufacturing process of transistors they were touting a few weeks ago. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 18:48:13 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA01515 for dynarec-outgoing; Sun, 17 Dec 2000 18:48:12 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Dec 2000 18:59:26 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: HLE In-Reply-To: <000378a551588d42_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >WinCE support, probably because a royalty is forthcoming to MS for the > >privilege. Only people doing ports from the PC use it, apparently... > Indeed, and in that case you wouldn't need a Dreamcast emulator to play these > games on the PC. > Some are more like simple ports, like Half-Life, but especially that game is > said to need some reoptimisation because it's too slow, most likely due to > the use of WinCE. I'll take exception to this since I have worked with CE... CE Is basically a no overhead OS. During my profiling of Retrocade on CE 2.11 and CE 3.0, the OS consumed less than 1% of the overall execution time - far within the realm of possibility. So if it's taking to long, it 'aint CE doing it, or the coders did something wrong. It's not like that hasn't happened before. FWIW, We did a Dreamcast port of Retrocade and it ran great. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 18:51:37 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA01528 for dynarec-outgoing; Sun, 17 Dec 2000 18:51:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Dec 2000 19:02:50 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: HLE In-Reply-To: <000701c06854$a82c7000$3442ae3e@hal9000> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Now that everybody is talking about how bad the P4 is because > of the relative clock speeds and performance with the P3/K7? ;) > I have talked with people who didn't even belive that it was > possible for Intel to release such a thing ;)), really fun. I think people don't believe it's possible because they don't want to believe that chipzilla can do anything good for computing. It's popular to dis the big guy. And most of the people who don't believe it's possible don't have the technical knowledge to know whether or not it's possible. Many of them are writers for magazines, or possibly some quack like Tom from Tom's hardware, who is anti-Intel all the way. Not sure where he got the bug up his butt about it, but believing that a huge company like Intel couldn't do something that a smaller company like AMD could is just *STUPID*. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 18:58:06 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA01542 for dynarec-outgoing; Sun, 17 Dec 2000 18:58:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Dec 2000 19:09:20 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: HLE In-Reply-To: <004001c0686a$cd381280$a02a989e@TomBrowne> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >optimising secrets under lock and key. > > RDRAM is scary too. Aren't Intel supporting DDR now too? > They want to... badly. It's become clear to the world and its dog that > Rambus somehow managed to screw Intel over quite nicely, managing to > negotiate a contract which puts them in a win-win situation no matter what > Intel do in the future (for the next couple of years, anyway). My whole take on the Rambus thing was it was too little too late. Had the crap been put out 2 years prior to its release, it would've been the way to go. But seeing PC133 SDRAM kicking its ass sorta puts it out of its misery. > even if it was one of my pet hates - a "bought" patent), Intel would > do well to distance themselves from a company who appears to have > little interest in developing products that work properly (re: > motherboard fiasco), but rather more just raking in the cash... I thought I had read that that relationship has already been dissolved. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 19:07:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA01564 for dynarec-outgoing; Sun, 17 Dec 2000 19:07:11 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: HLE From: "M.I.K.e" Message-ID: <000378acfcc717a5_mailit@mail.dynarec.com> References: <000701c0684d$506d8860$2744a8c2@taxx> <004001c0686a$cd381280$a02a989e@TomBrowne> <000378a84503bd1e_mailit@mail.dynarec.com> <009401c06886$e29e37a0$a02a989e@TomBrowne> Date: Mon, 18 Dec 2000 04:15:00 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The ARM7 is a relatively small problem in comparison, I think! I'd take a >guess you'd need something like a PII-233 to do that in realtime. Do you mean dynamic recompilation or normal emulation? If you mean the latter then you should try the current Archimedes emulators (RedSquirrel, Archie), which barely get full speed on a PIII-500. Sure these have to emulate other things as well, but they only have to emulate an 8MHz ARM2 while the Dreamcast has a 45MHz ARM7! You never should underestimate the power you need to emulate an ARM, especially when you have to do the emulation of a SH-4 and an ARM7 at the same time. >- Tom. -- M.I.K.e SCCS, the source motel! Programs check in and never check out! -- Ken Thompson --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 19:07:14 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA01572 for dynarec-outgoing; Sun, 17 Dec 2000 19:07:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: HLE From: "M.I.K.e" Message-ID: <000378ad03ca1f19_mailit@mail.dynarec.com> References: Date: Mon, 18 Dec 2000 04:16:58 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'll take exception to this since I have worked with CE... >CE Is basically a no overhead OS. During my profiling of Retrocade on CE >2.11 and CE 3.0, the OS consumed less than 1% of the overall execution >time - far within the realm of possibility. >So if it's taking to long, it 'aint CE doing it, or the coders did >something wrong. It's not like that hasn't happened before. Ok, if it's not WinCE itself, maybe it's DirectX, or they really screwed up something with the port... >FWIW, We did a Dreamcast port of Retrocade and it ran great. I bet so! How about a BeOS port? ;-) >-->Neil -- M.I.K.e The universe does not have laws -- it has habits, and habits can be broken. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 19:11:43 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA01585 for dynarec-outgoing; Sun, 17 Dec 2000 19:11:38 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Dec 2000 19:22:52 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: HLE In-Reply-To: <000378ad03ca1f19_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >time - far within the realm of possibility. > >So if it's taking to long, it 'aint CE doing it, or the coders did > >something wrong. It's not like that hasn't happened before. > Ok, if it's not WinCE itself, maybe it's DirectX, or they really screwed up > something with the port... Um... well, I'll take exception to that, too. The DirectX stuff that was ported to the Dreamcast was really the GameX library, which I used in Retrocade. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 22:27:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA01727 for dynarec-outgoing; Sun, 17 Dec 2000 22:27:11 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 18 Dec 00 01:19:12 -0500 Message-Id: <3.0.5.32.20001217195536.00845990@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 17 Dec 2000 19:55:36 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Sound In-Reply-To: References: <3.0.5.32.20001216211110.00841100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Nah, it looks like you're doing unsigned sample data. I hope you know >something about sound itself, otherwise my explanations are not going to >make sense. I know just a little bit ;) >If your data is unsigned, then 0x80 is your centerpoint, or 0 >volts. Anything below it is negative going, anything above it is positive >going. So what it looks like you've created is a square wave with an >amplitude of 15 (0x87 - 0x78 = 15). > >If your data is signed, then 0x00 is your centerpoint, 0x7f being your >high and 0x80 (-128) being your low. Okay, I see. But why couldn't 0 be used as the center point of signed samples? >> If anyone would like to see the PSG documentation, I can paste >> it into an email, since it's really small and quite simple. It is >> little more than a square wave tone generator with 3 channels (it has >> a noise channel, but I'm not worrying about that yet ;) -- and I want >> to get 1 channel emulated, and worry about mixing later ;)) > >When you get to mixing, contact me. Don't follow the examples of >add/average. There's an easier/better way to do it. > >The PSG isn't quite as simple as you might think. There are various >waveforms to choose from in addition to (I think) some amount of envelope >generation that can control the amplitude or the frequency of the chip. The SMS/Genesis PSG can only do square waves. It does have a noise channel, too. But apart from that, it can't do much else. For the 3 tone channels, you can specify on/off, volume, and frequency, and nothing else... Maybe you were thinking of the NES hardware (or something else altogether, the Genesis PSG has to be one of the simplest around :))? BTW, do you know if signed 8-bit output is possible with the WAV format? My documentation on the format is pretty limited. I know how to toggle between signed and unsigned 16-bit output, but I wanted to experiment with 8-bit for now... My plan of attack is to get familiar with this stuff just by generating simple, 1-second long wave files, then to implement PSG logging to Genital, and finally have Genital output the sound itself once I get pretty comfortable with this. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 23:44:22 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA01788 for dynarec-outgoing; Sun, 17 Dec 2000 23:44:19 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200012180755.IAA02093@pons.ac.upc.es> Subject: Re: DYNAREC: Sound In-Reply-To: "from Neil Bradley at Dec 17, 2000 03:03:59 pm" To: dynarec@dynarec.com Date: Mon, 18 Dec 2000 08:55:58 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I think the PSG emulation is quite simple and it is a bit harder to > > make a good synchronization. > > Not at all. As long as it's properly clocked to the Z80 emulator, you > timestamp changes and apply them as the stream is created. Very simple. > Well, the problem it is I don't have now a double buffer for sound and I write directly to the buffer that SDL gives to me. I check in the sound callback (this times is a real callback not like the keyboard stuff ;) if the PSG has filled the full sound buffer and seems that some times it isn't. Now I think about a double buffer system should avoid that problem ... The problem was that SDL seemed to be a bit slow at first, later it seemed to be more a problem related with the sound buffer size (it seems that buffer sizes different from 1024,2048, 4096 and so sound horrible). The main problem with my sound is a kind of low level noise which is present all along with the sound. The sound seems to have somekind of strange vibration ... I just tried many things and none seemed to really work (but changing the buffer size in samples ...). And for mixing the PSG channels I just use addition. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 23:47:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA01801 for dynarec-outgoing; Sun, 17 Dec 2000 23:47:08 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 17 Dec 2000 23:58:26 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Sound In-Reply-To: <3.0.5.32.20001217195536.00845990@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >If your data is signed, then 0x00 is your centerpoint, 0x7f being your > >high and 0x80 (-128) being your low. > Okay, I see. But why couldn't 0 be used as the center point of signed > samples? Well, as I said above, "if your data is signed, then 0x00 is your centerpoint." .;-) > >The PSG isn't quite as simple as you might think. There are various > >waveforms to choose from in addition to (I think) some amount of envelope > >generation that can control the amplitude or the frequency of the chip. > The SMS/Genesis PSG can only do square waves. It does have a noise channel, > too. But apart from that, it can't do much else. For the 3 tone channels, > you can specify on/off, volume, and frequency, and nothing else... Maybe > you were thinking of the NES hardware (or something else altogether, the > Genesis PSG has to be one of the simplest around :))? Hm... might be something different. I'm used to the 8910, which has several operators. It's possible that the Genesis doesn't use a FULL PSG but some mutant thereof. > BTW, do you know if signed 8-bit output is possible with the WAV format? Yes. Mono/stereo, 8/16 bit, signed/unsigned, and any sample rate you choose. > My plan of attack is to get familiar with this stuff just by generating > simple, 1-second long wave files, then to implement PSG logging to Genital, > and finally have Genital output the sound itself once I get pretty > comfortable with this. Recommendation - do everything as 16 bit. This will yield better rounding results later on and easier scalability. And if you want to make 8 bit data, just shift right 8 times. The reverse sounds like *SHIT*. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 23:54:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA01814 for dynarec-outgoing; Sun, 17 Dec 2000 23:54:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200012180806.JAA26788@pons.ac.upc.es> Subject: Re: DYNAREC: Sound In-Reply-To: <3.0.5.32.20001217195536.00845990@mailandnews.com> "from Bart at Dec 17, 2000 07:55:36 pm" To: dynarec@dynarec.com Date: Mon, 18 Dec 2000 09:06:09 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >If your data is signed, then 0x00 is your centerpoint, 0x7f being your > >high and 0x80 (-128) being your low. > > Okay, I see. But why couldn't 0 be used as the center point of signed samples? > Well I think it is :), or you mean something different? > >The PSG isn't quite as simple as you might think. There are various > >waveforms to choose from in addition to (I think) some amount of envelope > >generation that can control the amplitude or the frequency of the chip. > > The SMS/Genesis PSG can only do square waves. It does have a noise channel, > too. But apart from that, it can't do much else. For the 3 tone channels, > you can specify on/off, volume, and frequency, and nothing else... Maybe > you were thinking of the NES hardware (or something else altogether, the > Genesis PSG has to be one of the simplest around :))? > It is surely the more simple PSG out there. I took a look to the Gameboy PSG and it is far more complex with different waveforms and other oddies ... It is really basic as sound hardware ;). > BTW, do you know if signed 8-bit output is possible with the WAV format? My > documentation on the format is pretty limited. I know how to toggle between > signed and unsigned 16-bit output, but I wanted to experiment with 8-bit > for now... I think I found a file about the WAV format somewhere but I don't have it at hand now, perhaps this afternoon :(. > My plan of attack is to get familiar with this stuff just by generating > simple, 1-second long wave files, then to implement PSG logging to Genital, > and finally have Genital output the sound itself once I get pretty > comfortable with this. > > I have also thought in generating a sound log for my PSG emulation to see if the problem is really with the callback and the buffers or it is a problem with the sound generated ... But lately I'm more involved with the 8080 emulator (BTW it's will be a bit hard to use mz80 for comparative testing, 8080 and Z80 seems to have more differences than I thought ;). Talking about the 8080. Someone knows if there is a standalone 8080 CPU emulator? In MAME there is a 8085 one but I'm not sure if it has the same timings and behaviour ... The Z80 sure it doesn't, I should tweak somethings to work in the same way. Another question I have is if the 8080 has or it doesn't a NMI. In the official documentation there is never talked about having a NMI. Just an INT, and it is told that if you disable interrupts and HALT the CPU you are end in a non-returning state, the 8080 is halted until a reset is received. A NMI would make that impossible. > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 23:55:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA01827 for dynarec-outgoing; Sun, 17 Dec 2000 23:55:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 18 Dec 2000 00:06:41 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Sound In-Reply-To: <200012180755.IAA02093@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Not at all. As long as it's properly clocked to the Z80 emulator, you > > timestamp changes and apply them as the stream is created. Very simple. > Well, the problem it is I don't have now a double buffer for > sound and I write directly to the buffer that SDL gives to me. Nothing wrong with that at all. Just render whatever you need, and apply the changes in a physical sample time to virtual sample time fashion. FWIW, My code was writing directly to the hardware's DSP buffer, so there wouldn't be any problem with this. > I check in the sound callback (this times is a real callback > not like the keyboard stuff ;) if the PSG has filled the full > sound buffer and seems that some times it isn't. Then the callbacks are asynchronous. If you have a callback system, you never, ever get glitches, dropouts or repeats. This is why I'm so violently opposed to anything other than synchronous callbacks. > at first, later it seemed to be more a problem related with > the sound buffer size (it seems that buffer sizes different > from 1024,2048, 4096 and so sound horrible). Shouldn't make any difference. > The main problem with my sound is a kind of low level noise > which is present all along with the sound. The sound seems > to have somekind of strange vibration ... Hm... are you doing 8 bit? If so, the noise floor is rather high, so you wind up getting a bunch of crappy audio in there. > And for mixing the PSG channels I just use addition. That works for signed samples! But that's all I use, so it's no problem. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 17 23:56:49 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA01836 for dynarec-outgoing; Sun, 17 Dec 2000 23:56:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 18 Dec 2000 00:08:06 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Sound In-Reply-To: <200012180806.JAA26788@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Talking about the 8080. Someone knows if there is a standalone > 8080 CPU emulator? Why do you need one? The z80 does fine. > In MAME there is a 8085 one but I'm not sure > if it has the same timings and behaviour ... It's an 8080 with two extra instructions having to do with interrupt masking. > The Z80 sure it doesn't, Yes it does. > I should tweak somethings to work in the same way. Another question > I have is if the 8080 has or it doesn't a NMI. Yes, the 8080 has an NMI. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 18 00:01:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA01855 for dynarec-outgoing; Mon, 18 Dec 2000 00:01:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200012180813.JAA20624@pons.ac.upc.es> Subject: Re: DYNAREC: Sound In-Reply-To: "from Neil Bradley at Dec 18, 2000 00:06:41 am" To: dynarec@dynarec.com Date: Mon, 18 Dec 2000 09:13:46 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Not at all. As long as it's properly clocked to the Z80 emulator, you > > > timestamp changes and apply them as the stream is created. Very simple. > > Well, the problem it is I don't have now a double buffer for > > sound and I write directly to the buffer that SDL gives to me. > > Nothing wrong with that at all. Just render whatever you need, and apply > the changes in a physical sample time to virtual sample time > fashion. FWIW, My code was writing directly to the hardware's DSP buffer, > so there wouldn't be any problem with this. > With SDL I don't think I'm really writing to a hardware buffer I could check the SDL sources in any case ;). > > I check in the sound callback (this times is a real callback > > not like the keyboard stuff ;) if the PSG has filled the full > > sound buffer and seems that some times it isn't. > > Then the callbacks are asynchronous. If you have a callback system, you > never, ever get glitches, dropouts or repeats. This is why I'm so > violently opposed to anything other than synchronous callbacks. > It could be possible I'm not sure how SDL handles the things internally. And I'm absolutely sure that the event 'callback' (keyboard, mouse and so) isn't a real callback. Seems that the Win32 port doesn't support well threads ... > > at first, later it seemed to be more a problem related with > > the sound buffer size (it seems that buffer sizes different > > from 1024,2048, 4096 and so sound horrible). > > Shouldn't make any difference. > But it does, and the smaller the buffer sampler the worst the sound. I was thoughting in change to DSound when I have time. > > The main problem with my sound is a kind of low level noise > > which is present all along with the sound. The sound seems > > to have somekind of strange vibration ... > > Hm... are you doing 8 bit? If so, the noise floor is rather high, so you > wind up getting a bunch of crappy audio in there. >a No, 16 bit signed samples, 44100 KHZ. And I think the PSG emulation doesn't generate saturate samples ... > > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 18 00:06:18 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA01869 for dynarec-outgoing; Mon, 18 Dec 2000 00:06:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200012180817.JAA03806@pons.ac.upc.es> Subject: Re: DYNAREC: Sound In-Reply-To: "from Neil Bradley at Dec 18, 2000 00:08:06 am" To: dynarec@dynarec.com Date: Mon, 18 Dec 2000 09:17:58 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Talking about the 8080. Someone knows if there is a standalone > > 8080 CPU emulator? > > Why do you need one? The z80 does fine. > Timing is a bit different (DEC and INC instructions for example) and so some flag behaviour. In any case I have already found some bugs using MZ80 and my 8080 working at the same time. > > I should tweak somethings to work in the same way. Another question > > I have is if the 8080 has or it doesn't a NMI. > > Yes, the 8080 has an NMI. > But I think is a bit strange that none of the 'official' documents doesn't talk about it. The 8080 just have an INTA pin. What PIN is used for the NMI? The INTA should be disabled with a DI instructions and an NMI can't be disabled. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 18 00:39:47 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA01901 for dynarec-outgoing; Mon, 18 Dec 2000 00:39:45 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000c01c068cf$95989e20$4d32893e@oemcomputer> From: "David Sharp" To: References: Subject: Re: DYNAREC: HLE Date: Mon, 18 Dec 2000 08:50:31 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com (I presume this was meant to be sent to the list so I'll reply to the list) Potentially thumb could be emulated fairly simply, but thumb is mainly used for embedded stuff for good code density and even then needs some 32bit ARM bits and pieces. It would be a bit perverse to emulate thumb without doing ARM well too, except for specific thumb-based applications. Cheers Dave ----- Original Message ----- From: Neil Bradley To: David Sharp Sent: Monday, December 18, 2000 2:21 AM Subject: Re: DYNAREC: HLE > > > The ARM7 is a relatively small problem in comparison, I think! I'd take a > > > guess you'd need something like a PII-233 to do that in realtime. > > Erm, nope, ARM processors (and comparable RISCs) are a real bugger to > > emulate at decent speed, hence mine and Julian's previous projects > > That's certainly true for the 32 bit stuff, but couldn't Thumb mode be > fairly straightforward, like with a 68K? > > -->Neil > > -------------------------------------------------------------------------- ----- > Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from > Synthcom Systems, Inc. The Simpsons > ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 18 12:59:02 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA02877 for dynarec-outgoing; Mon, 18 Dec 2000 12:45:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 18 Dec 2000 12:56:53 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: HLE In-Reply-To: <000c01c068cf$95989e20$4d32893e@oemcomputer> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Potentially thumb could be emulated fairly simply, but thumb is mainly used > for embedded stuff for good code density and even then needs some 32bit ARM > bits and pieces. It would be a bit perverse to emulate thumb without doing > ARM well too, except for specific thumb-based applications. Yeah, true. It starts up in non-Thumb mode anyway, plus Thumb mode code does wind up going in to regular ARM mode too. Scratch that idea. but I'm sure the relationship in speed of an emulated vs. dynarec'd ARM would be huge. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 18 14:19:44 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA02950 for dynarec-outgoing; Mon, 18 Dec 2000 14:19:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <013f01c06943$a565a040$a02a989e@TomBrowne> From: "Tom Browne" To: References: <000701c0684d$506d8860$2744a8c2@taxx> <004001c0686a$cd381280$a02a989e@TomBrowne> <000378a84503bd1e_mailit@mail.dynarec.com> <009401c06886$e29e37a0$a02a989e@TomBrowne> <000378acfcc717a5_mailit@mail.dynarec.com> Subject: Re: DYNAREC: HLE Date: Mon, 18 Dec 2000 22:41:20 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Dynarec is what I meant. I'll have to check out those emulators... didn't realise there was such a gulf there! - Tom. ----- Original Message ----- From: "M.I.K.e" To: Sent: Monday, December 18, 2000 3:15 AM Subject: Re: DYNAREC: HLE > >The ARM7 is a relatively small problem in comparison, I think! I'd take a > >guess you'd need something like a PII-233 to do that in realtime. > > Do you mean dynamic recompilation or normal emulation? > If you mean the latter then you should try the current Archimedes emulators > (RedSquirrel, Archie), which barely get full speed on a PIII-500. Sure these > have to emulate other things as well, but they only have to emulate an 8MHz > ARM2 while the Dreamcast has a 45MHz ARM7! > You never should underestimate the power you need to emulate an ARM, > especially when you have to do the emulation of a SH-4 and an ARM7 at the > same time. > > >- Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 18 15:25:16 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA03007 for dynarec-outgoing; Mon, 18 Dec 2000 15:25:09 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <014d01c06944$36a74b80$a02a989e@TomBrowne> From: "Tom Browne" To: References: <000701c0684d$506d8860$2744a8c2@taxx> <004001c0686a$cd381280$a02a989e@TomBrowne> <000378a84503bd1e_mailit@mail.dynarec.com> <009401c06886$e29e37a0$a02a989e@TomBrowne> <003401c0688b$181758e0$7027893e@oemcomputer> Subject: Re: DYNAREC: HLE Date: Mon, 18 Dec 2000 22:45:25 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > The ARM7 is a relatively small problem in comparison, I think! I'd take a > > guess you'd need something like a PII-233 to do that in realtime. > Erm, nope, ARM processors (and comparable RISCs) are a real bugger to > emulate at decent speed, hence mine and Julian's previous projects > http://www.dcw.warwick.ac.uk/~csuix/project/ DNS failure? > Surely this is obvious from previous discussions? Apparently not to me... what is the fastest someone has got an ARM dynarec on x86 to run? - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 18 16:35:36 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA03065 for dynarec-outgoing; Mon, 18 Dec 2000 16:35:29 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 18 Dec 00 18:25:26 -0500 Message-Id: <3.0.5.32.20001218151836.00847d20@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 18 Dec 2000 15:18:36 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Sound In-Reply-To: References: <3.0.5.32.20001217195536.00845990@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 11:58 PM 12/17/2000 -0800, you wrote: >> >If your data is signed, then 0x00 is your centerpoint, 0x7f being your >> >high and 0x80 (-128) being your low. > >> Okay, I see. But why couldn't 0 be used as the center point of signed >> samples? > >Well, as I said above, "if your data is signed, then 0x00 is your >centerpoint." .;-) D'oh! My mistake. >Hm... might be something different. I'm used to the 8910, which has >several operators. It's possible that the Genesis doesn't use a FULL PSG >but some mutant thereof. It's definitely a mutant -- obviously not of the X-Men sort ;) It's a good piece of hardware to start off with, IMHO, since it's so simple. The YM2612, on the other hand... the DAC channel should be simple, but everything else looks like a nightmare! Well, now I'm a bit more excited to begin another, more serious stab at this stuff! BTW, Victor: I'm going to check out your PSG sources today, I'll get back to you on that :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 18 19:11:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA03193 for dynarec-outgoing; Mon, 18 Dec 2000 19:11:28 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002201c0695c$f55b8f60$1211893e@oemcomputer> From: "David Sharp" To: References: Subject: Re: DYNAREC: HLE Date: Tue, 19 Dec 2000 01:42:29 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yeah, true. It starts up in non-Thumb mode anyway, plus Thumb mode code > does wind up going in to regular ARM mode too. Scratch that idea. but I'm > sure the relationship in speed of an emulated vs. dynarec'd ARM would be > huge. Definitely. Unfortunately I've done sod all project in about 2 weeks - have had a load of job interviews, got an offer from Merrill Lynch but need to reply by Jan 15th and ARM won't tell me either way until they've finished interviewing everyone else in february so they're out the window. Was interesting to get interviewed at Broadcom (aka element-14.com aka Acorn) by Sophie Wilson who designed the ARM ISA and various other people so I guess that sort of counts as progress. Came back from my last interview with McKinsey today (I think I'm going to make that the last interview) and went to the local pub which treated us good and didn't throw out until 1am (they're meant to at 11.20pm) unfortunately it's bloody cold outside. Bed... Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 19 03:36:12 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA03746 for dynarec-outgoing; Tue, 19 Dec 2000 03:35:55 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001c01c069b1$60d259a0$b5f3883e@oemcomputer> From: "David Sharp" To: References: <000701c0684d$506d8860$2744a8c2@taxx> <004001c0686a$cd381280$a02a989e@TomBrowne> <000378a84503bd1e_mailit@mail.dynarec.com> <009401c06886$e29e37a0$a02a989e@TomBrowne> <003401c0688b$181758e0$7027893e@oemcomputer> <014d01c06944$36a74b80$a02a989e@TomBrowne> Subject: Re: DYNAREC: HLE Date: Tue, 19 Dec 2000 11:46:49 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > DNS failure? Sorry it's http://www.dcs.warwick.ac.uk/~csuix/project/ > Apparently not to me... what is the fastest someone has got an ARM dynarec > on x86 to run? There's only one in existence (ARMphetamine by Julian Brown) it doesn't emulate all the extra stuff like processor modes, exceptions etc and is therefore more an instruction interpreter, though is pretty fast, I don't have stats to hand. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 21 13:41:19 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA06735 for dynarec-outgoing; Thu, 21 Dec 2000 13:40:38 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 21 Dec 2000 22:34:11 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: HLE Message-ID: In-Reply-To: <014d01c06944$36a74b80$a02a989e@TomBrowne> X-Organization: Home X-Mailer: Messenger v1.41d for RISC OS MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Posting-Agent: RISC OS Newsbase 0.61b Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com In message <014d01c06944$36a74b80$a02a989e@TomBrowne> you wrote: > > Surely this is obvious from previous discussions? > > Apparently not to me... what is the fastest someone has got an ARM dynarec > on x86 to run? That's probably me - the only benchmark I have is Dhrystone running on an AMD K6-2 450MHz Linux system under dynamic recompilation - the figure is about 34000 iterations/sec. That compares to 800000 or so with the benchmark running natively on the same system (23 times faster?). There are a couple of other numbers on my ARMphetamine webpage for real ARM systems and suchlike. I just reconfigured all my old mail-reading software, so I hope this works properly ;-) Jules -- Julian Brown, Sheffield | http://www.dynarec.com/~jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 21 23:15:15 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA07156 for dynarec-outgoing; Thu, 21 Dec 2000 23:15:08 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200012220727.IAA32417@pons.ac.upc.es> Subject: DYNAREC: [grup-dixie] Micro-33: Tutorial about Dynamic Binary Translation (fwd) To: dynarec@dynarec.com Date: Fri, 22 Dec 2000 08:27:23 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Forwarded message from Victor Moya del Barrio ----- >From owner-grup-dixie@ac.upc.es Thu Dec 21 09:12:28 2000 From: Victor Moya del Barrio Message-Id: <200012210812.JAA02738@pons.ac.upc.es> Subject: [grup-dixie] Micro-33: Tutorial about Dynamic Binary Translation To: grup-dixie@ac.upc.es Date: Thu, 21 Dec 2000 09:12:19 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] Sender: owner-grup-dixie@ac.upc.es Precedence: bulk Content-Length: 344 Three new docs. I just have found them so I don't know if they are really interesting ;). It seems another 'conference' about binary translation happened last week. http://www.microarch.org/micro33/ There is also a link to a conference about dynamic optimization which perhaps could have something useful ... Look for FDD0-3. Victor ----- End of forwarded message from Victor Moya del Barrio ----- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 24 05:24:42 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA12085 for dynarec-outgoing; Sun, 24 Dec 2000 05:24:05 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Merry Christmas From: "M.I.K.e" Message-ID: <0003792e0aaec304_mailit@mail.dynarec.com> Date: Sun, 24 Dec 2000 14:13:04 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I wish all the dynarecers on this list a Merry Christmas! -- M.I.K.e Year, n.: A period of three hundred and sixty-five disappointments. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 24 12:44:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA12413 for dynarec-outgoing; Sun, 24 Dec 2000 12:44:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 24 Dec 00 15:53:36 -0500 Message-Id: <3.0.5.32.20001224124619.00849100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 24 Dec 2000 12:46:19 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Merry Christmas In-Reply-To: <0003792e0aaec304_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 02:13 PM 12/24/2000 +0100, you wrote: >I wish all the dynarecers on this list a Merry Christmas! Bah humbug! ;) I wish everyone Merry Christmas and a Happy New Year, too :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 25 13:06:07 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA13641 for dynarec-outgoing; Mon, 25 Dec 2000 13:06:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 25 Dec 2000 13:19:23 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Merry Christmas In-Reply-To: <0003792e0aaec304_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I wish all the dynarecers on this list a Merry Christmas! Yes - Happy bearded fat guy day to everyone! My wife bought me a remote controlled car, I got a REALLY cool custom made wood chess set (my dad made it), a CompUSA gift card and other odds and ends. Quite the cool Christmas! Next year at this time my daughter will be about 10 months old, so it'll be far more interesting! -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 25 15:14:17 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA13741 for dynarec-outgoing; Mon, 25 Dec 2000 15:14:14 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Merry Christmas From: "M.I.K.e" Message-ID: <0003794a6dc3aede_mailit@mail.dynarec.com> References: Date: Tue, 26 Dec 2000 00:05:06 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yes - Happy bearded fat guy day to everyone! Hehe ;-) >My wife bought me a remote controlled car, She knows what big boys like ;-) >I got a REALLY cool custom made wood chess set (my dad >made it), That's cool indeed! >a CompUSA gift card and other odds and ends. Quite the cool >Christmas! Next year at this time my daughter will be about 10 months old, So the planned birth date is late February. I think it's also the first time you mention that it's a girl. >so it'll be far more interesting! Should be, but it's even more interesting when they are lightly older. I can still imagine last year when my then 5 year old niece was here, it was so entertaining to watch her opening her presents that I almost forgot to open mine ;-) >-->Neil -- M.I.K.e FLASH! Intelligence of mankind decreasing. Details at ... uh, when the little hand is on the .... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 25 17:00:57 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA13831 for dynarec-outgoing; Mon, 25 Dec 2000 17:00:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 25 Dec 2000 17:13:44 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Merry Christmas In-Reply-To: <0003794a6dc3aede_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I got a REALLY cool custom made wood chess set (my dad > >made it), > That's cool indeed! Here's a photo: http://www.synthcom.com/~neil/chessboard.jpg > >a CompUSA gift card and other odds and ends. Quite the cool > >Christmas! Next year at this time my daughter will be about 10 months old, > So the planned birth date is late February. I think it's also the first time > you mention that it's a girl. Yep. I'm just not looking forward to the poop. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 26 12:19:05 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14845 for dynarec-outgoing; Tue, 26 Dec 2000 12:18:41 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004a01c06f7b$03d62400$0200a8c0@laptop> From: "Neil Griffiths" To: References: <0003794a6dc3aede_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Merry Christmas Date: Tue, 26 Dec 2000 20:26:22 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >My wife bought me a remote controlled car, > > She knows what big boys like ;-) How'd you know that, I thought Neil didn't take any pictures when he was nuddie? ;p Damnit, I even make *myself* feel ill sometimes... :)) > >I got a REALLY cool custom made wood chess set (my dad > >made it), > > That's cool indeed! And I've seen the picture and it looks very cool indeed. But then I like chess so... Is the top of the board wood and varnished, or is it tiles? > >a CompUSA gift card and other odds and ends. Quite the cool > >Christmas! Next year at this time my daughter will be about 10 months old, > > So the planned birth date is late February. I think it's also the first time > you mention that it's a girl. I think so too. I was planning to write yesterday and wish a "Merry Christmas" and ask how your wife was getting on. But I forgot. Never mind, I'll do it now. How's it feel to know that this will be your last stress-free Christmas for some time? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 26 12:19:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14858 for dynarec-outgoing; Tue, 26 Dec 2000 12:19:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005501c06f7b$229c40e0$0200a8c0@laptop> From: "Neil Griffiths" To: References: <0003792e0aaec304_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Merry Christmas Date: Tue, 26 Dec 2000 20:33:39 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I wish all the dynarecers on this list a Merry Christmas! It's a little belated, but I also would join with you in wishing this. Merry Christmas, Froeliche Weihnachten and so on... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 26 13:33:25 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA14929 for dynarec-outgoing; Tue, 26 Dec 2000 13:33:11 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001901c06f85$4b494380$b8994ed4@menta.net> From: "Victor Moya del Barrio" To: References: <0003792e0aaec304_mailit@mail.dynarec.com> <005501c06f7b$229c40e0$0200a8c0@laptop> Subject: Re: DYNAREC: Merry Christmas Date: Tue, 26 Dec 2000 22:46:24 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > I wish all the dynarecers on this list a Merry Christmas! > > It's a little belated, but I also would join with you in wishing this. Merry > Christmas, Froeliche Weihnachten and so on... :) > Feliz Navidad. Althought a bit late ;). > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 27 07:08:38 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA15877 for dynarec-outgoing; Wed, 27 Dec 2000 07:08:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Merry Christmas From: "M.I.K.e" Message-ID: <0003796c21cdf42d_mailit@mail.dynarec.com> References: Date: Wed, 27 Dec 2000 16:17:40 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yep. I'm just not looking forward to the poop. ;-) I bet no one does! But wait for all the feeding in the night and till she gets her first teeth! >-->Neil -- M.I.K.e Paradise is exactly like where you are right now ... only much, much better. -- Laurie Anderson --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 27 07:08:40 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA15886 for dynarec-outgoing; Wed, 27 Dec 2000 07:08:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Merry Christmas From: "M.I.K.e" Message-ID: <0003796c243b5cba_mailit@mail.dynarec.com> References: <0003794a6dc3aede_mailit@mail.dynarec.com> <004a01c06f7b$03d62400$0200a8c0@laptop> Date: Wed, 27 Dec 2000 16:18:21 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Damnit, I even make *myself* feel ill sometimes... :)) Well, then it's severe! >Neil. -- M.I.K.e Bubble Memory, n.: A derogatory term, usually referring to a person's intelligence. See also "vacuum tube". --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 27 07:08:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA15893 for dynarec-outgoing; Wed, 27 Dec 2000 07:08:52 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Merry Christmas From: "M.I.K.e" Message-ID: <0003796c27ca48e2_mailit@mail.dynarec.com> References: <0003792e0aaec304_mailit@mail.dynarec.com> <005501c06f7b$229c40e0$0200a8c0@laptop> <001901c06f85$4b494380$b8994ed4@menta.net> Date: Wed, 27 Dec 2000 16:19:21 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Feliz Navidad. I guess that's Merry Christmas in Spanish... >Althought a bit late ;). Better late than never ;-) >Victor -- M.I.K.e Experience is something you don't get until just after you need it. -- Olivier --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 27 08:22:09 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA15963 for dynarec-outgoing; Wed, 27 Dec 2000 08:22:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com Subject: DYNAREC: Pentium 4 (sub)performance according to Emulators, Inc. From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Wed, 27 Dec 2000 17:36:40 +0100 Message-ID: <1emb6yb.rn8wfl169uknnM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id IAA15960 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, What do you think (especially Neil B.) about the following article ? He welcomes experiences and flames ;-) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 27 10:07:53 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA16050 for dynarec-outgoing; Wed, 27 Dec 2000 10:07:50 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 27 Dec 2000 10:21:37 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Pentium 4 (sub)performance according to Emulators, Inc. In-Reply-To: <1emb6yb.rn8wfl169uknnM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by dynarec.com id KAA16047 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > What do you think (especially Neil B.) about the following article ? > I've seen this before. Derek has long been known for being anti-Intel, and his article shows. Someone doing an honest assessment of a chip would resist bashing it until the tail end. He makes a *LOT* of speculation and really has no clue what he's talking about, and would have to have intimate knowledge of what's going on inside Intel's war rooms. But in any case, there's at least a small ring of truth - the P4 running PIII or earlier code will not run the code at an equivalent speed. My personal experience is that a P4 1.5Ghz is about like a PIII 1.2-1.3Ghz. Funnily enough, this SAME type of article was written when the Pentium Pro and later P55C models of Pentium came out. The P4 wasn't designed to run PIII code faster. What he's essentially complaining about is that it doesn't run PIII code as fast as a PIII at the same clock, and that's true. But the chip does have the capability of stunning performance - but the compilers haven't caught up yet, and it's only then we'll see the capability of the chip. I really love this quote: "What's worse, popular compiler tools, such as Microsoft's Visual C++ 6.0 are still producing code optimized for obsolete 486 and Pentium classic processors - they haven't even caught up to Pentium III levels yet." Well yeah, if you select 486, sure. Um... He might not realize this, but the PIII only offers additional instructions (SSE) and there are no other optimizations in the chip over the regular line of Pentium Pro. Clear case of ignorance right there. I don't mind honest assessments, but this raging idiot has a SERIOUS axe to grind. I'm personally not going to be getting a P4 for a bit of time - maybe a year or so when compilers catch up to it. But his article has so many holesin it, like talking about the P54C and AGI stalls (Which haven't existed on any chip Intel has produced in >5 years). Not only that, he PROMOTES TRANSMETA - which has been proven to be a HORRIBLE performer - most often 60% of the equvalently clocked Pentium! Anyway, Derek is a religious zealot/idiot with a serious chip on his shoulder and this article SCREAMS of it. He has been updating this for a couple of years now occasionally with new ways to slam the big guy. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 27 11:10:24 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA16107 for dynarec-outgoing; Wed, 27 Dec 2000 11:10:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 27 Dec 00 14:19:46 -0500 Message-Id: <3.0.5.32.20001227110909.0084ba10@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 27 Dec 2000 11:09:09 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Pentium 4 (sub)performance according to Emulators, Inc. In-Reply-To: References: <1emb6yb.rn8wfl169uknnM@[192.168.0.2]> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com "In the beginning, the computer dark ages of two decades ago, there was the 8086 chip, Intel's first 16-bit processor which delivered 8 16-bit registers and could manipulate 16 bits of data at a time. It could also address 16-bit of address space at a time (or 64K, much like the Atari 800 and Apple II of the same time period). Using a trick known as segment registers, a program could simultaneously address 4 such 64K segments at a time and have a total of 1 megabyte of addressable memory in the computer." Hmm... 64KB*4 != 1MB -- 64KB*4=256KB, I thought it was 64KB*16=1MB. Also, didn't the 8086 have a 20-bit address space? IIRC, the segment and offset would be converted to a physical 20-bit address. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 27 13:02:04 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA16198 for dynarec-outgoing; Wed, 27 Dec 2000 13:01:52 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c0704a$09c6fae0$b8994ed4@menta.net> From: "Victor Moya del Barrio" To: References: <1emb6yb.rn8wfl169uknnM@[192.168.0.2]> <3.0.5.32.20001227110909.0084ba10@mailandnews.com> Subject: Re: DYNAREC: Pentium 4 (sub)performance according to Emulators, Inc. Date: Wed, 27 Dec 2000 22:14:45 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > "In the beginning, the computer dark ages of two decades ago, there was the > 8086 chip, Intel's first 16-bit > processor which delivered 8 16-bit registers and could manipulate 16 bits > of data at a time. It could also address > 16-bit of address space at a time (or 64K, much like the Atari 800 and > Apple II of the same time period). Using a > trick known as segment registers, a program could simultaneously address 4 > such 64K segments at a time and > have a total of 1 megabyte of addressable memory in the computer." > > Hmm... 64KB*4 != 1MB -- 64KB*4=256KB, I thought it was 64KB*16=1MB. > Also, didn't the 8086 have a 20-bit address space? IIRC, the segment and > offset would be converted to a physical 20-bit address. > > True. But the 4 I think means four segment registers: DS, CS, ES and SS. Later added two more in the 386(?), FS and GS. > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 27 13:35:32 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA16236 for dynarec-outgoing; Wed, 27 Dec 2000 13:35:03 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c0704e$bd982a40$244aae3e@menta.net> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: Pentium 4 (sub)performance according to Emulators, Inc. Date: Wed, 27 Dec 2000 22:48:23 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > What do you think (especially Neil B.) about the following article ? > > > > I've seen this before. Derek has long been known for being anti-Intel, and > his article shows. Someone doing an honest assessment of a chip would > resist bashing it until the tail end. He makes a *LOT* of speculation and > really has no clue what he's talking about, and would have to have > intimate knowledge of what's going on inside Intel's war rooms. > > But in any case, there's at least a small ring of truth - the P4 running > PIII or earlier code will not run the code at an equivalent speed. My > personal experience is that a P4 1.5Ghz is about like a PIII 1.2-1.3Ghz. > And that is something that anyone in Intel actually REMARKS. With BIG letters. I was in a presentation in my university and the equivalence PIII 1Ghz to P4 1.4Ghz was the more constant thing in all the presentation. Intel isn't hiding absolutely nothing. > Funnily enough, this SAME type of article was written when the Pentium Pro > and later P55C models of Pentium came out. The P4 wasn't designed to run > PIII code faster. What he's essentially complaining about is that it > doesn't run PIII code as fast as a PIII at the same clock, and that's > true. But the chip does have the capability of stunning performance - but > the compilers haven't caught up yet, and it's only then we'll see the > capability of the chip. > Really and something else: Intel documentation remarks that P4 and the Net-burst architecture is intended to (quoting the same manual he sais to read): "The design goals of Intel NetBurst micro-architecture are: (a) to execute both the legacy IA-32 code and applications based on single-instruction, multiple-data (SIMD) technology at high processing rates; (b) to operate at high clock rates, and to scale to higher performance and clock rates in the future. To accomplish these design goals, the Intel NetBurst micro-architecture has many advanced features and improvements over the P6 micro-architecture." (b) is the important one. The one because it was designed the P4. I can't understand people, sometimes they blame Intel for mainteining old legacy code compatibility lowering the final architecture performance and later they say the go against legacy code performance ... Really incredible. But I think there is something that it can be true (and also because I'm interested on it). In the long run the best solution for legacy code is EMULATION, it can be static translation or dynamic or whatever but that is the only solution that perhaps could avoid so many problems. > I really love this quote: > > "What's worse, popular compiler tools, such as Microsoft's Visual C++ 6.0 > are still producing code optimized for obsolete 486 and Pentium classic > processors - they haven't even caught up to Pentium III levels yet." Well > yeah, if you select 486, sure. Um... He might not realize this, but the > PIII only offers additional instructions (SSE) and there are no other > optimizations in the chip over the regular line of Pentium Pro. Clear case > of ignorance right there. > My VisualC (6.0) admits MMX code so it can't be so outdated ;))). And of course it has a Pentium Pro optimization option. > I don't mind honest assessments, but this raging idiot has a SERIOUS axe > to grind. I'm personally not going to be getting a P4 for a bit of time - > maybe a year or so when compilers catch up to it. But his article has so > many holesin it, like talking about the P54C and AGI stalls (Which haven't > existed on any chip Intel has produced in >5 years). Not only that, he > PROMOTES TRANSMETA - which has been proven to be a HORRIBLE performer - > most often 60% of the equvalently clocked Pentium! > 60% for a dynarec is really a good performance ;)). I also think there isn't the time of the P4 a processor needs sometimes before it can be at the 'level' of the normal user. One of the things I really I worry about P4 is the low data (and code/trace) cache size ... It isn't really as the 486 because it is really as a 16KB cache but separated in data and code. It is like the Pentium one. The reason I got in the P4 presentation I assisted was because it was designed to be faster than usual L1 caches (half the latency?). But it still worries me a bit. The Athlon 128KB cache is a bit too large for a PC in those days in my own opinion but a 32KB L1 cache for the P4 would be a good idea. It would be interesting to know the Athlon L1 cache latency ... because a so madly big cache has to have some trade off behind it to be 'cheap'. Non-PC CPUs (Alpha, MIPS, whatever) has larger L1 caches but what is the cost? > > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 27 14:24:55 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA16281 for dynarec-outgoing; Wed, 27 Dec 2000 14:24:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 27 Dec 00 17:34:19 -0500 Message-Id: <3.0.5.32.20001227142531.0084cc20@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 27 Dec 2000 14:25:31 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Pentium 4 (sub)performance according to Emulators, Inc. In-Reply-To: <000b01c0704a$09c6fae0$b8994ed4@menta.net> References: <1emb6yb.rn8wfl169uknnM@[192.168.0.2]> <3.0.5.32.20001227110909.0084ba10@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 10:14 PM 12/27/2000 +0100, you wrote: >> "In the beginning, the computer dark ages of two decades ago, there was the >> 8086 chip, Intel's first 16-bit >> processor which delivered 8 16-bit registers and could manipulate 16 bits >> of data at a time. It could also address >> 16-bit of address space at a time (or 64K, much like the Atari 800 and >> Apple II of the same time period). Using a >> trick known as segment registers, a program could simultaneously address 4 >> such 64K segments at a time and >> have a total of 1 megabyte of addressable memory in the computer." >> >> Hmm... 64KB*4 != 1MB -- 64KB*4=256KB, I thought it was 64KB*16=1MB. >> Also, didn't the 8086 have a 20-bit address space? IIRC, the segment and >> offset would be converted to a physical 20-bit address. >> >> >True. But the 4 I think means four segment registers: DS, CS, ES and SS. >Later added two more in the 386(?), FS and GS. Ah, yes, probably... keyword: simultaneous. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 29 21:23:33 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA19063 for dynarec-outgoing; Fri, 29 Dec 2000 21:23:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 30 Dec 00 00:32:43 -0500 Message-Id: <3.0.5.32.20001229212026.0084c100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 29 Dec 2000 21:20:26 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: DJGPP/DPMI timer control Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I was wondering if anyone on this list knew anything about hooking the timer interrupt under DJGPP using DPMI. The problems I've been having with this have been driving me insane. I read the DJGPP documentation relating to this topic, and have looked at plenty of source code. It seems like a rather straightforward operation, and I had no trouble getting it to work initially. But what happens is: - If a state is saved/loaded in Genital, my timer handler seems to get "unhooked" - After an undefined amount of time (it's rather sporadic -- I think it has something to do with pages being paged out) the timer handler gets unhooked - Certain functions in Genital, primarily one called RemapKeys() (which doesn't do anything out of the ordinary compared to the rest of the program), cause the timer handler to become unhooked It's really an unusual problem. I don't know how else to describe it. Basically, the timer handler just stops working after a while. I have taken care to lock the code and data that the ISR uses, and I call the old handler at 18.2Hz (the handler I install is at 60Hz) -- though I have tried neglecting to call the old handler, it makes no difference. I used to hook interrupt 0x1c at 18.2Hz (I only needed it for FPS calculation) and I recall having similar problems, but not quite: Saving/loading (performing file I/O operations) didn't unhook it, but RemapKeys() and running it under pure DOS mode would. I noticed I wasn't calling the old 0x1C handler, and when I fixed this, the DOS problem went away. When I rewrote the timer system in order to hook INT 8 at 60Hz (for speed throttling and FPS calculation), entirely different problems arose, as I have described. I'm assuming this is some sort of DPMI issue, since that's all I use to manage my ISR. If I can get this problem sorted out, I'm definitely going to document it. Has anyone seen anything like this happen before? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 30 03:34:31 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA21579 for dynarec-outgoing; Sat, 30 Dec 2000 03:34:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c07256$979bd4e0$0200a8c0@laptop> From: "Neil Griffiths" To: References: <3.0.5.32.20001229212026.0084c100@mailandnews.com> Subject: Re: DYNAREC: DJGPP/DPMI timer control Date: Sat, 30 Dec 2000 11:49:37 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I was wondering if anyone on this list knew anything about hooking the > timer interrupt under DJGPP using DPMI. I know this doesn't solve your exact problem, but have you thought of using WDOSX as an extender? It's really quite cool - and well documented. Otherwise I'm not sure I can help. I used to use DJGPP a lot but then I moved onto Watcom and finally onto VC - and I've forgotten most of what I did know. Oops! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 30 09:57:48 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA21878 for dynarec-outgoing; Sat, 30 Dec 2000 09:57:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 30 Dec 00 13:07:18 -0500 Message-Id: <3.0.5.32.20001230095858.0084ba70@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 30 Dec 2000 09:58:58 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: DJGPP/DPMI timer control In-Reply-To: <000b01c07256$979bd4e0$0200a8c0@laptop> References: <3.0.5.32.20001229212026.0084c100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I know this doesn't solve your exact problem, but have you thought of using >WDOSX as an extender? It's really quite cool - and well documented. >Otherwise I'm not sure I can help. I used to use DJGPP a lot but then I >moved onto Watcom and finally onto VC - and I've forgotten most of what I >did know. Oops! WDOSX can't be applied to DJGPP executables (or can it?) because of all the DJGPP-specific stuff the C library relies on, I think. I have considered moving to a different compiler, but I have a feeling the problems might persist if they aren't DJGPP-related but instead have something to do with DPMI itself... Watcom would be interesting. I've heard a lot about how great the compiler is, but I wonder if it's good enough to add a significant speed-boost to Genital. I remember seeing the source code to an old Genesis emulator called st0rm, it was very complex and did several times more work to get anything done than Genital, yet it outperforms Genital, even with a slower 68K core -- maybe because its compiled under Watcom? :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 30 10:40:59 2000 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA21924 for dynarec-outgoing; Sat, 30 Dec 2000 10:40:57 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001a01c07292$3066a980$0200a8c0@laptop> From: "Neil Griffiths" To: References: <3.0.5.32.20001229212026.0084c100@mailandnews.com> <3.0.5.32.20001230095858.0084ba70@mailandnews.com> Subject: Re: DYNAREC: DJGPP/DPMI timer control Date: Sat, 30 Dec 2000 18:56:13 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > WDOSX can't be applied to DJGPP executables (or can it?) because of all the > DJGPP-specific stuff the C library relies on, I think. It can - I think it was written *for* DJGPP - though I could be wrong. > I have considered moving to a different compiler, but I have a feeling the > problems might persist if they aren't DJGPP-related but instead have > something to do with DPMI itself... One way to prove it! > Watcom would be interesting. I've heard a lot about how great the compiler > is, but I wonder if it's good enough to add a significant speed-boost to > Genital. I remember seeing the source code to an old Genesis emulator > called st0rm, it was very complex and did several times more work to get > anything done than Genital, yet it outperforms Genital, even with a slower > 68K core -- maybe because its compiled under Watcom? :) Maybe, maybe not. Not sure without seeing both pieces of source code - but Watcom *is* a very nice compiler. But my version 11.0 is broken now - not fair! :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jan 1 00:46:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA23739 for dynarec-outgoing; Mon, 1 Jan 2001 00:46:08 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 1 Jan 01 03:56:00 -0500 Message-Id: <3.0.5.32.20010101005753.0084d510@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 01 Jan 2001 00:57:53 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: DJGPP/DPMI timer control In-Reply-To: <001a01c07292$3066a980$0200a8c0@laptop> References: <3.0.5.32.20001229212026.0084c100@mailandnews.com> <3.0.5.32.20001230095858.0084ba70@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Maybe, maybe not. Not sure without seeing both pieces of source code - but >Watcom *is* a very nice compiler. But my version 11.0 is broken now - not >fair! :-/ Is it still possible to obtain Watcom? There's that openwatcom.org project, or something like that, but it hasn't done much yet. BTW... Happy New Year and New Millenium to everyone on the list! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jan 1 05:05:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA24113 for dynarec-outgoing; Mon, 1 Jan 2001 05:05:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001401c073f5$c2d20760$0200a8c0@laptop> From: "Neil Griffiths" To: References: <3.0.5.32.20001229212026.0084c100@mailandnews.com> <3.0.5.32.20001230095858.0084ba70@mailandnews.com> <3.0.5.32.20010101005753.0084d510@mailandnews.com> Subject: Re: DYNAREC: DJGPP/DPMI timer control Date: Mon, 1 Jan 2001 12:58:17 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Is it still possible to obtain Watcom? There's that openwatcom.org project, > or something like that, but it hasn't done much yet. Hadn't heard about that one. But if I can find the disks (yep, Watcom 11.0 on disks!) then I'll upload them somewhere... > BTW... Happy New Year and New Millenium to everyone on the list! Yep - Happy New Year (and possibly real New Millenium!) everyone! I'd have e-mailed before but it was rather late/early last night/this morning when I got in. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jan 1 11:28:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA24429 for dynarec-outgoing; Mon, 1 Jan 2001 11:28:07 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 1 Jan 01 14:38:01 -0500 Message-Id: <3.0.5.32.20010101114011.0084eb30@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 01 Jan 2001 11:40:11 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: DJGPP/DPMI timer control In-Reply-To: <001401c073f5$c2d20760$0200a8c0@laptop> References: <3.0.5.32.20001229212026.0084c100@mailandnews.com> <3.0.5.32.20001230095858.0084ba70@mailandnews.com> <3.0.5.32.20010101005753.0084d510@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Is it still possible to obtain Watcom? There's that openwatcom.org >project, >> or something like that, but it hasn't done much yet. > >Hadn't heard about that one. But if I can find the disks (yep, Watcom 11.0 >on disks!) then I'll upload them somewhere... Cool, if you ever do find the time to do so, I'd be very interested to check it out! How many floppy disks was it? Turbo C fit on floppies... but that's Turbo C ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jan 1 13:20:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA24522 for dynarec-outgoing; Mon, 1 Jan 2001 13:20:27 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 1 Jan 2001 13:35:36 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: DJGPP/DPMI timer control In-Reply-To: <3.0.5.32.20010101005753.0084d510@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Maybe, maybe not. Not sure without seeing both pieces of source code - but > >Watcom *is* a very nice compiler. But my version 11.0 is broken now - not > >fair! :-/ > Is it still possible to obtain Watcom? There's that openwatcom.org project, > or something like that, but it hasn't done much yet. I can fire you off a copy of the DOS only install of it, plus the appropriate batch file to run to connect everything. It's a 9MB ZIP file download and braindead easy to install. Want it? > BTW... Happy New Year and New Millenium to everyone on the list! You too! Finally someone who knows when the new millenium actually starts! -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jan 1 13:20:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA24532 for dynarec-outgoing; Mon, 1 Jan 2001 13:20:58 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 1 Jan 2001 13:36:07 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: DJGPP/DPMI timer control In-Reply-To: <001401c073f5$c2d20760$0200a8c0@laptop> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > project, > > or something like that, but it hasn't done much yet. > Hadn't heard about that one. But if I can find the disks (yep, Watcom 11.0 > on disks!) then I'll upload them somewhere... Be forewarned - version 11 is bug-gee! I have 10.6, which is the last "decent" version they released. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jan 1 15:55:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA24654 for dynarec-outgoing; Mon, 1 Jan 2001 15:55:40 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 1 Jan 01 19:05:34 -0500 Message-Id: <3.0.5.32.20010101153310.0084da20@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 01 Jan 2001 15:33:10 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: DJGPP/DPMI timer control In-Reply-To: References: <3.0.5.32.20010101005753.0084d510@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I can fire you off a copy of the DOS only install of it, plus the >appropriate batch file to run to connect everything. It's a 9MB ZIP file >download and braindead easy to install. > >Want it? Sure, that would be awesome! Would it be possible to download it via ftp or http? If not, you can send it over by email, I've got a 10MB attachment limit, so I guess that should fit just under the limit :) >From what I've heard, it should be a very good (superior) alternative to DJGPP. Hopefully this will fix the timer-related bugs. I have access to a PIII-500, and on that machine everything works fine (for the most part) but on my development P-180, it is extremely sensitive and the timer code stops working after a save state is loaded or -remapkeys is used. Strange :/ I'm also hoping it will give me a decent speed increase, I haven't been able to use GCC's -Ox options, and have had to manually specify some options for optimization (-mpentium, -malign-double, etc.) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jan 1 16:13:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA24682 for dynarec-outgoing; Mon, 1 Jan 2001 16:13:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 1 Jan 2001 16:28:35 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: DJGPP/DPMI timer control In-Reply-To: <3.0.5.32.20010101153310.0084da20@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >appropriate batch file to run to connect everything. It's a 9MB ZIP file > >download and braindead easy to install. > >Want it? > Sure, that would be awesome! Would it be possible to download it via ftp or > http? Yep: http://www.synthcom.com/~neil/watcom.zip There should be a batch file called WATCOM.BAT that sets up the environment. Just use wcc386 to compile it by itself, or wcl386 if you want to link, too. > If not, you can send it over by email, I've got a 10MB attachment > limit, so I guess that should fit just under the limit :) No, it won't because when you send something via email it balloons by 25%. Not only that, I have my email incoming (and outgoing) limited to 2MB each. > >From what I've heard, it should be a very good (superior) alternative to > DJGPP. > Hopefully this will fix the timer-related bugs. I have access to a > PIII-500, and on that machine everything works fine (for the most part) but > on my development P-180, it is extremely sensitive and the timer code stops > working after a save state is loaded or -remapkeys is used. Strange :/ I'm > also hoping it will give me a decent speed increase, I haven't been able to > use GCC's -Ox options, and have had to manually specify some options for > optimization (-mpentium, -malign-double, etc.) Just remember a few things: * Watcom likes register calling conventions, not stack calling conventions. This is where your biggest speed increase will come from. * You'll have to compile your "run at interrupt context" code with the /Gs option to make sure it selects the correct selector. * Make sure you crank up the optimization (wcl386 /? will yield its options) I've seen Watcom damn near double performance over gcc. Gcc really is pretty crappy - even with its best optimizations, and even pgcc. Bleugh. You get what you pay for. -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jan 1 21:58:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA24938 for dynarec-outgoing; Mon, 1 Jan 2001 21:58:01 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 2 Jan 01 01:07:55 -0500 Message-Id: <3.0.5.32.20010101220713.0084e6e0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 01 Jan 2001 22:07:13 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: DJGPP/DPMI timer control In-Reply-To: References: <3.0.5.32.20010101153310.0084da20@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Thanks a million!! I've been looking through sample programs and I like what I see, it seems like Watcom and DOS4GW give you a lot of flexibility and power over the system from the get-go. >There should be a batch file called WATCOM.BAT that sets up the >environment. Just use wcc386 to compile it by itself, or wcl386 if you >want to link, too. There is no WATCOM.BAT in the zip... What exactly has to be set up? I haven't tried compiling anything just yet. >* Watcom likes register calling conventions, not stack calling >conventions. This is where your biggest speed increase will come from. Now I can test that part of Genital68K out ;) >* You'll have to compile your "run at interrupt context" code with the /Gs >option to make sure it selects the correct selector. Interrupt code? I've been doing that in assembly and using DPMI under DJGPP. Does Watcom provide a global selector automatically, or is there a function I can call? Under DJGPP one could do: _farsetsel(_dos_ds); and it would put a far selector in FS. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 2 00:29:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA25059 for dynarec-outgoing; Tue, 2 Jan 2001 00:29:03 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 2 Jan 2001 00:44:20 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: DJGPP/DPMI timer control In-Reply-To: <3.0.5.32.20010101220713.0084e6e0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Thanks a million!! I've been looking through sample programs and I like > what I see, it seems like Watcom and DOS4GW give you a lot of flexibility > and power over the system from the get-go. What's amazing about Watcom is that, in some cases, it will completely rethink a chunk of code and optimize it completely differently if there's a better way to do it. > >There should be a batch file called WATCOM.BAT that sets up the > >environment. Just use wcc386 to compile it by itself, or wcl386 if you > >want to link, too. > There is no WATCOM.BAT in the zip... What exactly has to be set up? I > haven't tried compiling anything just yet. Just this: @echo off path=%path%;c:\watcom\binw set include=c:\watcom\h set lib=c:\watcom\lib386 set watcom=c:\watcom Then you're good to go. > >* You'll have to compile your "run at interrupt context" code with the /Gs > >option to make sure it selects the correct selector. > Interrupt code? I've been doing that in assembly and using DPMI under > DJGPP. Does Watcom provide a global selector automatically, or is there a > function I can call? Under DJGPP one could do: _farsetsel(_dos_ds); and it > would put a far selector in FS. Oh, if that's the case then you won't need it. I was just mentioning the /Gs option so that the proper selector would be loaded up had you written your interrupt routines in C. I'm hoping that you're using NASM.... -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 2 13:27:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA25823 for dynarec-outgoing; Tue, 2 Jan 2001 13:26:20 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 2 Jan 01 15:17:48 -0500 Message-Id: <3.0.5.32.20010102121935.007a35e0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 02 Jan 2001 12:19:35 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: DJGPP/DPMI timer control In-Reply-To: References: <3.0.5.32.20010101220713.0084e6e0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What's amazing about Watcom is that, in some cases, it will completely >rethink a chunk of code and optimize it completely differently if there's >a better way to do it. As in re-optimizing it, or some kind of higher-level optimization (algorithmic?) In any case, Watcom will be going open source and it will be interesting to see how it was done. >Then you're good to go. I've been having some trouble compiling programs. They crash with a page fault. I compile like this: wcl386 /l=dos4g screen.c I searched for help on compiling Watcom programs, and a lot of sites mention /l=dos4gw, yet over here it doesn't seem to recognize that system. At any rate, it does execute dos4gw and it's dos4gw that appears to crash. It's always at 127:00006F12 regardless of which program I try to compile. >Oh, if that's the case then you won't need it. I was just mentioning the >/Gs option so that the proper selector would be loaded up had you written >your interrupt routines in C. I didn't see a /Gs option listed anywhere. There was only /zg{f,p} . >I'm hoping that you're using NASM.... I haven't really used anything besides NASM for almost 2 years now :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jan 4 03:28:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA27876 for dynarec-outgoing; Thu, 4 Jan 2001 03:28:18 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003001c07643$ccb256e0$0200a8c0@laptop> From: "Neil Griffiths" To: Subject: DYNAREC: CPS2 emulation Date: Thu, 4 Jan 2001 11:42:42 -0000 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_NextPart_000_0026_01C07643.72B31800" X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This is a multi-part message in MIME format. ------=_NextPart_000_0026_01C07643.72B31800 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi, Quick message that could get the juices flowing - what does everyone = here think about CPS2 emulation (now it's been achieved)? Neil. ------=_NextPart_000_0026_01C07643.72B31800 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi,
 
Quick message that could get the juices = flowing -=20 what does everyone here think about CPS2 emulation (now it's been=20 achieved)?
 
Neil.
------=_NextPart_000_0026_01C07643.72B31800-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jan 4 03:49:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA27906 for dynarec-outgoing; Thu, 4 Jan 2001 03:49:59 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001f01c07646$1459ed80$2060893e@oemcomputer> From: "David Sharp" To: References: <003001c07643$ccb256e0$0200a8c0@laptop> Subject: Re: DYNAREC: CPS2 emulation Date: Thu, 4 Jan 2001 12:01:30 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Forgive me if I'm being a bit hasty or presumptuous but isn't it just an achievement of reverse engineering and the emulation achievement being triumphed is actually little more than has been around for years? Cheers Dave ----- Original Message ----- From: Neil Griffiths To: Sent: Thursday, January 04, 2001 11:42 AM Subject: DYNAREC: CPS2 emulation Hi, Quick message that could get the juices flowing - what does everyone here think about CPS2 emulation (now it's been achieved)? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jan 4 08:21:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA28145 for dynarec-outgoing; Thu, 4 Jan 2001 08:21:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002601c0766c$3e0f27a0$8e984ed4@menta.net> From: "Victor Moya del Barrio" To: References: <003001c07643$ccb256e0$0200a8c0@laptop> Subject: Re: DYNAREC: CPS2 emulation Date: Thu, 4 Jan 2001 17:34:43 +0100 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_NextPart_000_0021_01C07674.9F7FA340" X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This is a multi-part message in MIME format. ------=_NextPart_000_0021_01C07674.9F7FA340 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi, Quick message that could get the juices flowing - what does everyone = here think about CPS2 emulation (now it's been achieved)? Technical aspects or legal aspects? About legals I don't care. I'm not really interested in arcade games = only=20 RPG games ;). About technicals the CPS2 it just a slighty upgraded or more powerful = CPS1 so the emulation (as it has been already confirmed by the Callus = experiment and by Final Burn) it is quite simple. Starting you already have CPS1 = emulated of course. CPS1 or CPS2 are interesting machines to emulate though ;). As = interesting as a NeoGeo, the graphic engine seems to be fun to emulate. And = QSound ... ;)). Neil. Victor ------=_NextPart_000_0021_01C07674.9F7FA340 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
 

Hi,
 
Quick message that could get the = juices flowing -=20 what does everyone here think about CPS2 emulation (now it's been=20 achieved)?
 
Technical aspects or legal = aspects?
 
About legals I don't care.  I'm = not really=20 interested in arcade games only
RPG games ;).
 
About technicals the CPS2 it just a = slighty=20 upgraded or more powerful CPS1
so the emulation (as it has been = already=20 confirmed by the Callus experiment
and by Final Burn) it is quite = simple. =20 Starting you already have CPS1 emulated
of course.
 
CPS1 or CPS2 are interesting machines = to=20 emulate though ;).  As interesting
as a NeoGeo, the graphic engine seems = to be fun=20 to emulate.  And QSound ...
;)).
 
Neil.
 
Victor
------=_NextPart_000_0021_01C07674.9F7FA340-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jan 4 10:24:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA28244 for dynarec-outgoing; Thu, 4 Jan 2001 10:24:01 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 4 Jan 2001 10:39:57 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: CPS2 emulation In-Reply-To: <003001c07643$ccb256e0$0200a8c0@laptop> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Quick message that could get the juices flowing - what does everyone > here think about CPS2 emulation (now it's been achieved)? What's CPS2 and why is getting its emulation going so special? -->Neil ------------------------------------------------------------------------------- Neil Bradley "I'm so hungry I could eat at *ARBY'S*!" - Sheri from Synthcom Systems, Inc. The Simpsons ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jan 4 11:17:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA28342 for dynarec-outgoing; Thu, 4 Jan 2001 11:17:54 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: CPS2 emulation From: "M.I.K.e" Message-ID: <00037a10aa64998f_mailit@mail.dynarec.com> References: Date: Thu, 04 Jan 2001 20:35:26 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What's CPS2 and why is getting its emulation going so special? Capcom System 2, but I don't know much more... Callus emulates the Capcom System 1. >-->Neil -- M.I.K.e Anyone who hates Dogs and Kids Can't be All Bad. -- W. C. Fields --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jan 4 11:34:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA28369 for dynarec-outgoing; Thu, 4 Jan 2001 11:34:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001201c07687$3037ce00$8e984ed4@menta.net> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: CPS2 emulation Date: Thu, 4 Jan 2001 20:47:31 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Quick message that could get the juices flowing - what does everyone > > here think about CPS2 emulation (now it's been achieved)? > > What's CPS2 and why is getting its emulation going so special? > It is the CPS1 next version. A Capcom 2D arcade machine with games of the flavour of Street Fighter and so. The problem with that machine in the last two or so years was that the code ROMs (no the data and sound ROMs) where encripted. Along all this time a team called 'cps2shock' has been trying to decrypt that ROMs. This Christmast days (23 Dec?) they get a real progress and last weekend they released the first decrypted ROM for Street Fighter Zero. And now it is begining to be emulated: a patch in Callus and the new Final Burn. There isn't any problem with emulation as I said in last mail CPS2 is just a faster, with larger memory and perhaps a more powerful 2D graphic processor (more sprites or memory), version of the CPS1. Since CPS1 emulation is perfectly achieved since many years ago (three?) and althought it isn't well documented it is in MAME source, CPS2 emulation is just as trivial as it can be an emulation. It uses 2 68K at 12 Mhz (?), a Z80, FM and QSound for sound and the usual tile/sprite graphic engine of a powerful 2D arcade machine. The real thing with CPS2 was the big expectation of the emulation users for being able to play its games. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jan 4 13:02:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA28478 for dynarec-outgoing; Thu, 4 Jan 2001 13:02:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 4 Jan 01 14:55:09 -0500 Message-Id: <3.0.5.32.20010104115640.007a33a0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 04 Jan 2001 11:56:40 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: CPS2 emulation In-Reply-To: <00037a10aa64998f_mailit@mail.dynarec.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 08:35 PM 1/4/2001 +0100, you wrote: >>What's CPS2 and why is getting its emulation going so special? > >Capcom System 2, but I don't know much more... >Callus emulates the Capcom System 1. The ROMs are encrypted using a very strong hardware-based encryption scheme. Apparently, RAM is not encrypted and that's how they got a lot of their information, by loading programs in CPS2 RAM. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jan 5 08:09:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA29530 for dynarec-outgoing; Fri, 5 Jan 2001 08:09:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: CPS2 emulation From: "M.I.K.e" Message-ID: <00037a2190b0b207_mailit@mail.dynarec.com> References: <003001c07643$ccb256e0$0200a8c0@laptop> Date: Fri, 05 Jan 2001 16:45:10 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Quick message that could get the juices flowing - what does everyone here >think about CPS2 emulation (now it's been achieved)? http://www.overclocked.org/current.htm >Neil. -- M.I.K.e You have an unusual magnetic personality. Don't walk too close to metal objects which are not fastened down. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jan 5 08:24:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA29554 for dynarec-outgoing; Fri, 5 Jan 2001 08:24:27 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Jack To: dynarec@dynarec.com Subject: Re: DYNAREC: CPS2 emulation Date: Fri, 05 Jan 2001 11:34:21 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: <003001c07643$ccb256e0$0200a8c0@laptop> <00037a2190b0b207_mailit@mail.dynarec.com> In-Reply-To: <00037a2190b0b207_mailit@mail.dynarec.com> X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Fri, 05 Jan 2001 16:45:10 +0100, "M.I.K.e" wrote: >>Quick message that could get the juices flowing - what does everyone here >>think about CPS2 emulation (now it's been achieved)? > >http://www.overclocked.org/current.htm > >>Neil. I'm thinking that pages that don't load in Netscape are annoying. I'm also thinking that cracking the encryption itself is still going to be a bear. We'll see. -- Jack ---- "There is no reason anyone would want a computer in their home." - Ken Olson, president, chairman and founder of Digital Equipment Corp., 1977 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jan 5 11:11:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA29691 for dynarec-outgoing; Fri, 5 Jan 2001 11:11:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000901c0774d$ad7e5a20$0200a8c0@laptop> From: "Neil Griffiths" To: References: <003001c07643$ccb256e0$0200a8c0@laptop> <001f01c07646$1459ed80$2060893e@oemcomputer> Subject: Re: DYNAREC: CPS2 emulation Date: Fri, 5 Jan 2001 19:28:00 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Forgive me if I'm being a bit hasty or presumptuous but isn't it just an > achievement of reverse engineering and the emulation achievement being > triumphed is actually little more than has been around for years? That's very much my point (in my defence I actually meant to write "fiasco" but simply forgot!) - much more has been achieved but got much less coverage. Though nice to have CPS2 emulation, much more difficult things - Saturn emulation for instance(!) - been achieved. But hey, maybe that's just us who think that. :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jan 5 11:12:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA29701 for dynarec-outgoing; Fri, 5 Jan 2001 11:12:37 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001b01c0774d$6095efc0$8e984ed4@menta.net> From: "Victor Moya del Barrio" To: References: <003001c07643$ccb256e0$0200a8c0@laptop> <00037a2190b0b207_mailit@mail.dynarec.com> Subject: Re: DYNAREC: CPS2 emulation Date: Fri, 5 Jan 2001 20:26:17 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >>Quick message that could get the juices flowing - what does everyone here > >>think about CPS2 emulation (now it's been achieved)? > > > >http://www.overclocked.org/current.htm > > > >>Neil. > > I'm thinking that pages that don't load in Netscape are annoying. > Well, yes? Perhaps it is because of that I just use explorer ... > I'm also thinking that cracking the encryption itself is still going > to be a bear. We'll see. > Sure. But I guess if the same solution can be applied to all the differente boards rather than try to discover the encryptation method which would be hard. > -- > Jack > ---- Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jan 5 11:21:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA29723 for dynarec-outgoing; Fri, 5 Jan 2001 11:21:31 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Jack To: dynarec@dynarec.com Subject: Re: DYNAREC: CPS2 emulation Date: Fri, 05 Jan 2001 14:31:29 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: <4s7c5t83b5ipjmpm07eftp9pc16p99hnjg@4ax.com> References: <003001c07643$ccb256e0$0200a8c0@laptop> <00037a2190b0b207_mailit@mail.dynarec.com> <001b01c0774d$6095efc0$8e984ed4@menta.net> In-Reply-To: <001b01c0774d$6095efc0$8e984ed4@menta.net> X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Fri, 5 Jan 2001 20:26:17 +0100, "Victor Moya del Barrio" wrote: >> >>Quick message that could get the juices flowing - what does everyone here >> >>think about CPS2 emulation (now it's been achieved)? >> > >> >http://www.overclocked.org/current.htm >> > >> >>Neil. >> >> I'm thinking that pages that don't load in Netscape are annoying. >> >Well, yes? Perhaps it is because of that I just use explorer ... It's because of this that I keep IE around. Else I'd delete it. :) >> I'm also thinking that cracking the encryption itself is still going >> to be a bear. We'll see. >> >Sure. But I guess if the same solution can be applied to all >the differente boards rather than try to discover the encryptation >method which would be hard. True, but then we've have both the encrypted and un-encrypted ROM sets floating around. Better to be able to figure out the encryption and then just have the encrypted set being distributed. Also, if the encryption can be figured out, it might also be possible to figure out how to resurrect suicided boards without having to return them to Capcom. Just a thought - and another project. :) -- Jack ---- "There is no reason anyone would want a computer in their home." - Ken Olson, president, chairman and founder of Digital Equipment Corp., 1977 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jan 5 11:35:33 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA29749 for dynarec-outgoing; Fri, 5 Jan 2001 11:35:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 5 Jan 01 14:45:20 -0500 Message-Id: <3.0.5.32.20010105114646.007a8e00@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 05 Jan 2001 11:46:46 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: CPS2 emulation In-Reply-To: <000901c0774d$ad7e5a20$0200a8c0@laptop> References: <003001c07643$ccb256e0$0200a8c0@laptop> <001f01c07646$1459ed80$2060893e@oemcomputer> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That's very much my point (in my defence I actually meant to write "fiasco" >but simply forgot!) - much more has been achieved but got much less >coverage. Though nice to have CPS2 emulation, much more difficult things - >Saturn emulation for instance(!) - been achieved. But hey, maybe that's just >us who think that. :o I'm surprised Saturn emulation isn't getting more attention. The system is incredibly complex as far as emulation is concerned. It could be that SSF is in Japanese and that English translations aren't always readily available... but what kind of an excuse is that? I think emulation is over-exposed, and since most people aren't really into the technical side of things, they just care about playing games perfectly, they don't give a hoot about work-in-progress emulators and seeing how things change as they become a more complete product. I haven't been able to try SSF with any games because I simply don't have any Saturn CDs -- but that's about to change, I hope. I'm going to be purchasing a Saturn from a friend. I also need to order a PAR cart, and I can start doing some Saturn development :) SSF still won't exactly be playable on my system ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jan 5 13:27:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA29843 for dynarec-outgoing; Fri, 5 Jan 2001 13:27:40 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002701c07760$3f39eb20$8e984ed4@menta.net> From: "Victor Moya del Barrio" To: References: <003001c07643$ccb256e0$0200a8c0@laptop> <001f01c07646$1459ed80$2060893e@oemcomputer> <3.0.5.32.20010105114646.007a8e00@mailandnews.com> Subject: Re: DYNAREC: CPS2 emulation Date: Fri, 5 Jan 2001 22:41:22 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >That's very much my point (in my defence I actually meant to write "fiasco" > >but simply forgot!) - much more has been achieved but got much less > >coverage. Though nice to have CPS2 emulation, much more difficult things - > >Saturn emulation for instance(!) - been achieved. But hey, maybe that's just > >us who think that. :o > > I'm surprised Saturn emulation isn't getting more attention. The system is > incredibly complex as far as emulation is concerned. It could be that SSF > is in Japanese and that English translations aren't always readily > available... but what kind of an excuse is that? > I think emulation is over-exposed, and since most people aren't really > into the technical side of things, they just care about playing games > perfectly, they don't give a hoot about work-in-progress emulators and > seeing how things change as they become a more complete product. > Being a japanese emu must be one of the reasons, the other can be that is harder to find games. PSX games are far easier to find. It is also (sadly) possible that people is less interested in Saturn games. They sure like more that awful N64 stuff ;). > I haven't been able to try SSF with any games because I simply don't have > any Saturn CDs -- but that's about to change, I hope. I'm going to be > purchasing a Saturn from a friend. I also need to order a PAR cart, and I > can start doing some Saturn development :) SSF still won't exactly be > playable on my system ;) > > Still or even never ;). You should upgrade your PC ;). I have either tried SSF still ... I have manage to ... erm ... get some games and if I have time I will test it someday ;). I just don't know anything about Saturn but from what I have heart the less it can be said about its emulation is it will be really fun ;). I would like to have more time to learn about other systems ... BTW I should be starting the 'writing phase' of my university project. Let's hope I can finish it soon and have some free tiem. > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jan 5 19:09:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA30133 for dynarec-outgoing; Fri, 5 Jan 2001 19:09:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: CPS2 emulation From: "M.I.K.e" Message-ID: <00037a2b5aa87cdf_mailit@mail.dynarec.com> References: <003001c07643$ccb256e0$0200a8c0@laptop> <00037a2190b0b207_mailit@mail.dynarec.com> Date: Sat, 06 Jan 2001 04:25:53 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>http://www.overclocked.org/current.htm >I'm thinking that pages that don't load in Netscape are annoying. That page doesn't work with Netscape? Strange! Because I think I always viewed Overclocked with Netscape at work, and that page (apart from the JavaScript) works fine with NetPositive as well. >Jack -- M.I.K.e "There are some micro-organisms that exhibit characteristics of both plants and animals. When exposed to light they undergo photosynthesis; and when the lights go out, they turn into animals. But then again, don't we all?" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 10 18:57:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA38497 for dynarec-outgoing; Wed, 10 Jan 2001 18:57:22 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 10 Jan 01 22:05:21 -0500 Message-Id: <3.0.5.32.20010110190535.007ac8e0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 10 Jan 2001 19:05:35 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Godzilla2K interesting tidbit Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Something interesting: http://gfpoken.bigw.org/g2k/ Apparently the movie had a seen where the MAME What's New text file was scrolled on a computer screen. Neil B.'s name is visible. It has been confirmed, AFAIK, to be real. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 10 23:07:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA38708 for dynarec-outgoing; Wed, 10 Jan 2001 23:07:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200101110721.IAA22253@pons.ac.upc.es> Subject: Re: DYNAREC: Godzilla2K interesting tidbit In-Reply-To: <3.0.5.32.20010110190535.007ac8e0@mailandnews.com> "from Bart at Jan 10, 2001 07:05:35 pm" To: dynarec@dynarec.com Date: Thu, 11 Jan 2001 08:21:05 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Something interesting: > > http://gfpoken.bigw.org/g2k/ > > Apparently the movie had a seen where the MAME What's New text file was > scrolled on a computer screen. Neil B.'s name is visible. It has been > confirmed, AFAIK, to be real. > > It is really real? ;) What is that Neil? Subliminal influence over the world population to conquer it? ;)) BTW althought I haven't updated still my webpage the 'almost' last version of my (boring) Space Invaders emulator is there: www.dynarec.com/~victor/si2001.zip It needs DX7 and 16-bit video mode. > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jan 14 18:36:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA06351 for dynarec-outgoing; Sun, 14 Jan 2001 18:35:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001001c07e9e$7696c9e0$0200a8c0@laptop> From: "Neil Griffiths" To: Subject: DYNAREC: I'm back - for good! :o Date: Mon, 15 Jan 2001 02:54:14 -0000 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_NextPart_000_000B_01C07E9E.71938640" X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This is a multi-part message in MIME format. ------=_NextPart_000_000B_01C07E9E.71938640 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi, I actually have my own phone line now (at long last!) so now I can = e-mail. Woohoo! I could have got in touch since Friday (day of install) = - but I've been busy. Writing a 3D engine. It's taken around 2 days to = do one and still has some small bugs (the z-buffer and double buffering = don't work!) but I've impressed myself - pretty good for 2 days work! = Had to do it anyway, was a Uni assignment. If anyone is interested in looking at what it is like, go to = http://www.dynarec.com/~neilg/bc.zip or = http://www.dynarec.com/~neilg/bc.rar - I've written it for BC (part of = the assignment spec) but should work in most other compilers. And yes, the code is crap. And yes, I could easily optimise it. But I = had to finish it. Now. So this is as good as it's going to get. I've = learnt from my mistakes and I will write another, better, one at some = point. Maybe next week! :) Neil. ------=_NextPart_000_000B_01C07E9E.71938640 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi,
 
I actually have my own phone line now = (at long=20 last!) so now I can e-mail. Woohoo! I could have got in touch since = Friday (day=20 of install) - but I've been busy. Writing a 3D engine. It's taken around = 2 days=20 to do one and still has some small bugs (the z-buffer and double = buffering don't=20 work!) but I've impressed myself - pretty good for 2 days work! Had to = do it=20 anyway, was a Uni assignment.
 
If anyone is interested in looking at = what it is=20 like, go to http://www.dynarec.com/~nei= lg/bc.zip or=20 http://www.dynarec.com/~nei= lg/bc.rar=20 - I've written it for BC (part of the assignment spec) but should work = in most=20 other compilers.
 
And yes, the code is crap. And yes, I = could easily=20 optimise it. But I had to finish it. Now. So this is as good as it's = going to=20 get. I've learnt from my mistakes and I will write another, better, one = at some=20 point. Maybe next week! :)
 
Neil.
------=_NextPart_000_000B_01C07E9E.71938640-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 23 10:55:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA19627 for dynarec-outgoing; Tue, 23 Jan 2001 10:54:43 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701c0856f$e0c45080$f074393e@menta.net> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Some new docs Date: Tue, 23 Jan 2001 20:08:31 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com A Binary Translation related number of the Computer magazine ;) http://www.computer.org/computer/co2000/r3toc.htm I think some of the docs (all) are already known here. A Java Pipelined interpreted for a VLIW processor: http://citeseer.nj.nec.com/334621.html Would be next generation emus this way? MZ80 for I64 will be pipelined? ;)))) Victor P.S: I should be working in my doc .. :p --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 23 12:02:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA19692 for dynarec-outgoing; Tue, 23 Jan 2001 12:02:16 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003501c08579$09279560$2343fea9@daves> From: "David Sharp" To: References: <000701c0856f$e0c45080$f074393e@menta.net> Subject: Re: DYNAREC: Some new docs Date: Tue, 23 Jan 2001 20:14:03 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Has anyone managed to download the articles from computer, I can get the one about PA-RISC and IA-64 but the others are password protected? The java one looks vaguely interesting too. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 23 12:27:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA19723 for dynarec-outgoing; Tue, 23 Jan 2001 12:27:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Some new docs From: "M.I.K.e" Message-ID: <00037b8fd74cebba_mailit@mail.dynarec.com> References: <000701c0856f$e0c45080$f074393e@menta.net> <003501c08579$09279560$2343fea9@daves> Date: Tue, 23 Jan 2001 21:44:12 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Has anyone managed to download the articles from computer, I can get the one >about PA-RISC and IA-64 but the others are password protected? I think I had the same problem some time ago (sorry Victor I already knew the page...) and searched for some of the articles with Google. I actually got a direct link to an obscurely named PDF on some Japanese server and strangely enough I could download it and it was exactly the article I was looking for. BTW, I forgot to mention some time ago that the web extension of the book "Advanced Compiler Design and Implementation" features a chapter about "Object-Code Compilation" - yeah, it's static reacompilation but might be interesting (I didn't have the time to read it yet): http://www.mkp.com/books_catalog/catalog.asp?ISBN=1-55860-320-4 (Does anyone know the book and if it's worth the price?) -- M.I.K.e "You've got to have a gimmick if your band sucks." -- Gary Giddens --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 23 12:48:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA19752 for dynarec-outgoing; Tue, 23 Jan 2001 12:48:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004401c0857f$777e98a0$2343fea9@daves> From: "David Sharp" To: References: <000701c0856f$e0c45080$f074393e@menta.net> <003501c08579$09279560$2343fea9@daves> <00037b8fd74cebba_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Some new docs Date: Tue, 23 Jan 2001 21:00:06 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I think I had the same problem some time ago (sorry Victor I already knew the > page...) and searched for some of the articles with Google. I actually got a > direct link to an obscurely named PDF on some Japanese server and strangely > enough I could download it and it was exactly the article I was looking for. Any idea what that server was, I could do with some more nice articles? > BTW, I forgot to mention some time ago that the web extension of the book > "Advanced Compiler Design and Implementation" features a chapter about > "Object-Code Compilation" - yeah, it's static reacompilation but might be > interesting (I didn't have the time to read it yet): > http://www.mkp.com/books_catalog/catalog.asp?ISBN=1-55860-320-4 > (Does anyone know the book and if it's worth the price?) Erm, I've got it in front of me now! :o) I don't really feel qualified to comment though, it really depends on what you want it for? Just for all your information, I've written an ARM disassembler and interpreter (which has been tested on simple programs) I'm spending tonight trying to plug my interpreter into the Red Squirrel emulator (for an Acorn Archimedes RISC OS machine) to see if I can get it to work. Shortly after that (probably Thursday) I'm then going to start work on some form of dynarec using the interpreter and extensions to profile code into blocks, translate to an IR (this still needs more thought but will probably be modelled to some extent on Julian's phetacode + real processor stuff like exceptions and modes). That might change if reading back over Neil's stuff I get convinced that it's a waste of time and is really slow. What I really want is some method that I can get up and running fairly quickly (which isn't phetacode) but has scope for me to add optimisations and clever stuff like ARMphetamine so I actually get a degree once I've proved the concept works (which I don't think is Neil's design either). Answers on a postcard... I've got to present the finished results on 12th March at the earliest and have my report finished by April 30th so have plenty to think about in the meantime. Would people be interested in seeing my final report as it develops and giving comments on mistakes/omissions/ideas? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 23 13:02:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA19778 for dynarec-outgoing; Tue, 23 Jan 2001 13:02:20 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002b01c08581$b39d9be0$f074393e@menta.net> From: "Victor Moya del Barrio" To: References: <000701c0856f$e0c45080$f074393e@menta.net> <003501c08579$09279560$2343fea9@daves> <00037b8fd74cebba_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Some new docs Date: Tue, 23 Jan 2001 22:16:07 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Has anyone managed to download the articles from computer, I can get the one > >about PA-RISC and IA-64 but the others are password protected? > > I think I had the same problem some time ago (sorry Victor I already knew the > page...) and searched for some of the articles with Google. I actually got a > direct link to an obscurely named PDF on some Japanese server and strangely > enough I could download it and it was exactly the article I was looking for. > I said they wasn't new ;)) I think I already some in my page. In any case I downloaded the FULL big one (8 MB) and I think there there are all of them About the other server, yes, I think is Nec Library or something like that ;)). Thank to them for providing docs for free. Althought I could still get some from my university, which has an account in the ACM library ;))). Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 23 13:28:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA19808 for dynarec-outgoing; Tue, 23 Jan 2001 13:28:35 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004601c08585$5e407100$f074393e@menta.net> From: "Victor Moya del Barrio" To: References: <000701c0856f$e0c45080$f074393e@menta.net> <003501c08579$09279560$2343fea9@daves> <00037b8fd74cebba_mailit@mail.dynarec.com> <004401c0857f$777e98a0$2343fea9@daves> Subject: Re: DYNAREC: Some new docs Date: Tue, 23 Jan 2001 22:42:21 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I think I had the same problem some time ago (sorry Victor I already knew > the > > page...) and searched for some of the articles with Google. I actually got > a > > direct link to an obscurely named PDF on some Japanese server and > strangely > > enough I could download it and it was exactly the article I was looking > for. > > Any idea what that server was, I could do with some more nice articles? > Search in www.google.com for the name of the PDF. > Would people be interested in seeing my final report as it develops and > giving comments on mistakes/omissions/ideas? > Sure ;). But it is your choice. > Cheers > Dave > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 23 18:07:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA20223 for dynarec-outgoing; Tue, 23 Jan 2001 18:07:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: julesb@btinternet.com To: dynarec@dynarec.com Date: Wed, 24 Jan 2001 02:18:18 GMT Subject: DYNAREC: ARMphetamine updates Message-id: <3a6e3b6a.1173.0@btinternet.com> X-User-Info: 195.40.200.14 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I've uploaded the work I've done on ARMphetamine over the last six months or so (not much, admittedly) to the dynarec server: http://www.dynarec.com/~jules When I have the time and inclination, I'm trying to develop the project towards something useful rather than 'just' academic. To that end I've now implemented MMU emulation (though it's untested), several new instructions in the interpreter, and I'm intending to carry on implementing the VIDC and IOMD units of the Acorn Risc PC and similar. Also, I've half-designed a new intermediate representation and written a little bit about it, which is also on my dynarec page now. It might solve a couple of the nasty bits of the original one I used. Any feedback appreciated, as ever. Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 23 23:54:27 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA20495 for dynarec-outgoing; Tue, 23 Jan 2001 23:54:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200101240807.JAA25415@pons.ac.upc.es> Subject: DYNAREC: Strange download ... To: dynarec@dynarec.com Date: Wed, 24 Jan 2001 09:07:53 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm just wondering how in hell I could download the full magazime yesterday at home ... I have tried today, here in my work and of course it needs a password. Damnly strange I'm sure I'm not a Computer Society member ;). I will put them illegaly (of course) in my library. But I'm almost sure that most of them are already in the same or slighty different (tipical conference report, not a magazine one) form in my library. (That should be easy to test). Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 00:08:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA20537 for dynarec-outgoing; Wed, 24 Jan 2001 00:08:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200101240821.JAA04195@pons.ac.upc.es> Subject: Re: DYNAREC: Strange download ... In-Reply-To: <200101240807.JAA25415@pons.ac.upc.es> "from Victor Moya del Barrio at Jan 24, 2001 09:07:53 am" To: dynarec@dynarec.com Date: Wed, 24 Jan 2001 09:21:47 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > I'm just wondering how in hell I could download the > full magazime yesterday at home ... > > I have tried today, here in my work and of course it > needs a password. Damnly strange I'm sure I'm not > a Computer Society member ;). > > I will put them illegaly (of course) in my library. > > But I'm almost sure that most of them are already > in the same or slighty different (tipical conference > report, not a magazine one) form in my library. > (That should be easy to test). > > I checked my page and they are all there. But of course all the links are wrong in Unix systems ... Damn! Damn! Damn! .... ;P. I thought I fixed THAT long ago ... The links are (hopefully correct this time): www.dynarec.com/~victor/Project/Bibliography/Research/r3060.pdf www.dynarec.com/~victor/Project/Bibliography/Reports/r3040.pdf www.dynarec.com/~victor/Project/Bibliography/Reports/r3047.pdf www.dynarec.com/~victor/Project/Bibliography/Reports/r3060.pdf BTW, the full library is in a tar.gz file here (it is annoying to download every document one to one, don't you think so? ;) ): www.dynarec.com/~victor/Project/Bibliography/bibliography.tar.gz 10 MB (may be 9.8 MB but who cares? ;). In any case my page needs (desperately?) an update. > Victor Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 01:54:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA20630 for dynarec-outgoing; Wed, 24 Jan 2001 01:54:29 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001d01c085ed$4e17cd60$244bfea9@daves> From: "David Sharp" To: References: <3a6e3b6a.1173.0@btinternet.com> Subject: Re: DYNAREC: ARMphetamine updates Date: Wed, 24 Jan 2001 10:06:20 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Jules, Great to see you're still working on it. You may be interested to know that I've continued to work on my ARM dynarec project (don't really have a choice, my degree's on the line). My current problem is to get the interpreter to a stage which can run RISC OS, it's complete but still has bugs as a result of limited testing. Then I can move onto the dynarec stuff. I'm doing this by designing my interpreter (and therefore dynarec) so they can replace Red Squirrel's current interpreter and hopefully emulate an ARM3 properly. Graeme is pushing forward to support the Risc PC architecture with his current interpreting emulator with the hope that mine can be modified to 32bit later on (should be easier going 26 -> 32bit than the other way). I like the additions to pheta2, looks good, the meta instructions are very much the sort of thing that I was looking at adding to it when I come to design the IR. This could well be tomorrow as I'm spending today debugging the interpreter... (fun!) Cheers Dave ----- Original Message ----- From: To: Sent: Wednesday, January 24, 2001 2:18 AM Subject: DYNAREC: ARMphetamine updates > Hello, > > I've uploaded the work I've done on ARMphetamine > over the last six months or so (not much, admittedly) to > the dynarec server: > > http://www.dynarec.com/~jules > > When I have the time and inclination, I'm trying to > develop the project towards something useful rather > than 'just' academic. To that end I've now implemented > MMU emulation (though it's untested), several new > instructions in the interpreter, and I'm intending to carry > on implementing the VIDC and IOMD units of the Acorn > Risc PC and similar. > > Also, I've half-designed a new intermediate > representation and written a little bit about it, which is > also on my dynarec page now. It might solve a couple > of the nasty bits of the original one I used. > > Any feedback appreciated, as ever. > > Jules > -------------------------------------------------------------------------- - > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 01:56:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA20643 for dynarec-outgoing; Wed, 24 Jan 2001 01:56:45 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002601c085ed$9f589560$244bfea9@daves> From: "David Sharp" To: References: <200101240821.JAA04195@pons.ac.upc.es> Subject: Re: DYNAREC: Strange download ... Date: Wed, 24 Jan 2001 10:08:37 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > www.dynarec.com/~victor/Project/Bibliography/Research/r3060.pdf > www.dynarec.com/~victor/Project/Bibliography/Reports/r3040.pdf > www.dynarec.com/~victor/Project/Bibliography/Reports/r3047.pdf > www.dynarec.com/~victor/Project/Bibliography/Reports/r3060.pdf Thanks Victor, thought the r3060 link is still dead! Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 02:05:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA20833 for dynarec-outgoing; Wed, 24 Jan 2001 02:05:19 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200101241019.LAA31164@pons.ac.upc.es> Subject: Re: DYNAREC: Strange download ... In-Reply-To: <002601c085ed$9f589560$244bfea9@daves> "from David Sharp at Jan 24, 2001 10:08:37 am" To: dynarec@dynarec.com Date: Wed, 24 Jan 2001 11:19:11 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > www.dynarec.com/~victor/Project/Bibliography/Research/r3060.pdf > > www.dynarec.com/~victor/Project/Bibliography/Reports/r3040.pdf > > www.dynarec.com/~victor/Project/Bibliography/Reports/r3047.pdf > > www.dynarec.com/~victor/Project/Bibliography/Reports/r3060.pdf > > > Thanks Victor, thought the r3060 link is still dead! > Damn! ;))) The last one was: www.dynarec.com/~victor/Project/Bibliography/Reports/r3054.pdf One of Altman articles. The real r3060 is the Cifuentes' UQBT one in the Research section. > Cheers > Dave > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 10:55:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA21256 for dynarec-outgoing; Wed, 24 Jan 2001 10:54:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701c0863a$0a7c0920$0100a8c0@laptop> From: "Neil Griffiths" To: References: <200101241019.LAA31164@pons.ac.upc.es> Subject: DYNAREC: Hardware emulation Date: Wed, 24 Jan 2001 19:15:32 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, http://www.theregister.co.uk/content/3/16307.html It seems that the hardware emulation of the IA-64 is slow. Very slow. Slower than software - if the results are true. Just thought we'd all find this interesting. For "The Register", that was a good article. If only they hadn't mentioned Transmeta... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 11:20:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA21297 for dynarec-outgoing; Wed, 24 Jan 2001 11:20:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 24 Jan 2001 11:40:34 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Hardware emulation In-Reply-To: <000701c0863a$0a7c0920$0100a8c0@laptop> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > It seems that the hardware emulation of the IA-64 is slow. Very slow. Slower > than software - if the results are true. Just thought we'd all find this > interesting. They've probably got something wrong with their system, because I've witnessed it being much faster than this. But the main point of the IA-64 architecture is to be an IA-64 architecture - not to continue the x86 instruction set, so expectations of stellar x86 performance on the IA-64 is asinine. The Pentium and IA-64 stuff will coexist for years. > For "The Register", that was a good article. If only they hadn't mentioned > Transmeta... As if their contribution is something noteworthy. Transmeta's goals were to be a Pentium clone and didn't do a very good job at it. Intel's goals on the IA-64 were to do an IA-64 chip, not focus on Pentium performance. -->Neil ------------------------------------------------------------------------------- Neil Bradley "This tomaco tastes like gramma!" - Ralph Synthcom Systems, Inc. "You're right, it DOES taste like gramma!" - Chief Wiggam ICQ #29402898 The Simpsons --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 12:53:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA21376 for dynarec-outgoing; Wed, 24 Jan 2001 12:53:38 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001701c08649$a557c060$f074393e@menta.net> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: Hardware emulation Date: Wed, 24 Jan 2001 22:07:22 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > It seems that the hardware emulation of the IA-64 is slow. Very slow. Slower > > than software - if the results are true. Just thought we'd all find this > > interesting. > > They've probably got something wrong with their system, because I've > witnessed it being much faster than this. But the main point of the IA-64 > architecture is to be an IA-64 architecture - not to continue the x86 > instruction set, so expectations of stellar x86 performance on the IA-64 > is asinine. > Those number are really hard to believe ... in any case. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 14:01:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA21442 for dynarec-outgoing; Wed, 24 Jan 2001 14:01:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 24 Jan 2001 14:21:39 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Hardware emulation In-Reply-To: <001701c08649$a557c060$f074393e@menta.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > witnessed it being much faster than this. But the main point of the IA-64 > > architecture is to be an IA-64 architecture - not to continue the x86 > > instruction set, so expectations of stellar x86 performance on the IA-64 > > is asinine. > Those number are really hard to believe ... in any case. Also consider the source. The Register is the National Enquirer equivalent of the computer industry, and tend to be anarchists, and anti big corporation - whatever the cause, regardless of rationale. Support the underdog regardless of what makes sense (Apple Computer bigots, anyone)?! -->Neil ------------------------------------------------------------------------------- Neil Bradley "This tomaco tastes like gramma!" - Ralph Synthcom Systems, Inc. "You're right, it DOES taste like gramma!" - Chief Wiggam ICQ #29402898 The Simpsons --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 15:36:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA21527 for dynarec-outgoing; Wed, 24 Jan 2001 15:36:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001d01c08661$6c6ce740$0100a8c0@laptop> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Hardware emulation Date: Wed, 24 Jan 2001 23:57:23 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Also consider the source. The Register is the National Enquirer equivalent > of the computer industry, and tend to be anarchists, and anti big > corporation - whatever the cause, regardless of rationale. Support the > underdog regardless of what makes sense (Apple Computer bigots, anyone)?! Normally I'd agree with you (The Register don't usually check to see if their info is correct before reporting it - I've seen this for myself!) but The Register isn't actually the source - tweakers.net is. Looking at the graphs (on http://athena.tweakers.net/reviews.dsp?Document=191&Page=9) it doesn't look great. You do, admittedly, make a very good point about the IA-64 not meant to run x86 code - but that performance is terrible any way you look at it. Hell, MAME could out-perform it! ;) As for biggotting Apple, I'm all for that. I like being a biggot! ;) Finally, I find it quite interesting about the performance. It leaves the door open for people like us to write x86 dynarecs! Though I do, of course, think that programming for the IA-64 is going to be a little bit... how shall I say... complex? :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 15:44:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA21544 for dynarec-outgoing; Wed, 24 Jan 2001 15:44:46 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 24 Jan 2001 16:04:47 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Hardware emulation In-Reply-To: <001d01c08661$6c6ce740$0100a8c0@laptop> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > of the computer industry, and tend to be anarchists, and anti big > > corporation - whatever the cause, regardless of rationale. Support the > > underdog regardless of what makes sense (Apple Computer bigots, anyone)?! > Normally I'd agree with you (The Register don't usually check to see if > their info is correct before reporting it - I've seen this for myself!) but > The Register isn't actually the source - tweakers.net is. Looking at the > graphs (on http://athena.tweakers.net/reviews.dsp?Document=191&Page=9) it > doesn't look great. Nope, but at the same time, I've seen (with my own eyes) it run quite zippily. I cannot quote numbers due to my nondisclosure, but I can attest that it's NOT as bad as they say. > You do, admittedly, make a very good point about the > IA-64 not meant to run x86 code - but that performance is terrible any way > you look at it. Hell, MAME could out-perform it! ;) Well, I wouldn't go *THAT* far. > As for biggotting Apple, I'm all for that. I like being a biggot! ;) Um... I'm not sure what you mean, but being a bigot means you're a violent *PROPONENT* of something - not against it! > Finally, I find it quite interesting about the performance. It leaves the > door open for people like us to write x86 dynarecs! Though I do, of course, > think that programming for the IA-64 is going to be a little bit... how > shall I say... complex? :o Just a little bit, yeah. Those VLIW instructions are quite the challenge! Think parallel! -->Neil ------------------------------------------------------------------------------- Neil Bradley "This tomaco tastes like gramma!" - Ralph Synthcom Systems, Inc. "You're right, it DOES taste like gramma!" - Chief Wiggam ICQ #29402898 The Simpsons --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 15:58:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA21571 for dynarec-outgoing; Wed, 24 Jan 2001 15:58:35 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004c01c08664$8d3b4fe0$0100a8c0@laptop> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Hardware emulation Date: Thu, 25 Jan 2001 00:19:50 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Nope, but at the same time, I've seen (with my own eyes) it run quite > zippily. I cannot quote numbers due to my nondisclosure, but I can attest > that it's NOT as bad as they say. Well, I'm more prepared to believe you than them - but I will be looking out for more results (by other people). So, if you say it's faster than that then I'll believe you. :) > > IA-64 not meant to run x86 code - but that performance is terrible any way > > you look at it. Hell, MAME could out-perform it! ;) > > Well, I wouldn't go *THAT* far. What, emulating a 75MHz CPU on a CPU over 700MHz? That's MAME speeds if ever I saw them! ;) > > As for biggotting Apple, I'm all for that. I like being a biggot! ;) > > Um... I'm not sure what you mean, but being a bigot means you're a violent > *PROPONENT* of something - not against it! I know, it was meant to be full of innuendo - it just didn't work. It fell down flat on it's face. Oo-er - more innuendo ahoy! And I mis-spelt bigot. I'm blaming this laptop keyboard. ;) > > Finally, I find it quite interesting about the performance. It leaves the > > door open for people like us to write x86 dynarecs! Though I do, of course, > > think that programming for the IA-64 is going to be a little bit... how > > shall I say... complex? :o > > Just a little bit, yeah. Those VLIW instructions are quite the > challenge! Think parallel! I have problems just thinking... at all! ;)) Actually, speaking about thinking differently (I could bigot Apple you know!), I had great fun earlier this week trying to explain to someone just how OO works. They can't get their head around it. I always found it an easy concept. Never mind, they're just screwed given they had a Java assignment to be in for... today. Shouldn't have left it so late! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 16:13:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA21599 for dynarec-outgoing; Wed, 24 Jan 2001 16:13:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 24 Jan 2001 16:33:50 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Hardware emulation In-Reply-To: <004c01c08664$8d3b4fe0$0100a8c0@laptop> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > zippily. I cannot quote numbers due to my nondisclosure, but I can attest > > that it's NOT as bad as they say. > Well, I'm more prepared to believe you than them - but I will be looking out > for more results (by other people). So, if you say it's faster than that > then I'll believe you. :) But at the same time, it's nothing to write home about, either. It's just not *THAT* bad. > > > IA-64 not meant to run x86 code - but that performance is terrible any > > > you look at it. Hell, MAME could out-perform it! ;) > > Well, I wouldn't go *THAT* far. > What, emulating a 75MHz CPU on a CPU over 700MHz? That's MAME speeds if ever > I saw them! ;) Good point. MZ80 Emulates a Z80 operating at around 120MHZ on a Pentium Pro 200, so I guess those numbers above are a bit more realistic. ;-) > And I mis-spelt bigot. I'm blaming this laptop keyboard. ;) And you misspelled "mis-spelt". ;-) > Actually, speaking about thinking differently (I could bigot Apple you > know!), I had great fun earlier this week trying to explain to someone just > how OO works. They can't get their head around it. I always found it an easy > concept. Never mind, they're just screwed given they had a Java assignment > to be in for... today. Shouldn't have left it so late! Let's hope this downturn in PC sales (personal computer sales, not IBM PC compatible sales) will cause some of those less than capable idiots to be forced out of the industry. -->Neil ------------------------------------------------------------------------------- Neil Bradley "This tomaco tastes like gramma!" - Ralph Synthcom Systems, Inc. "You're right, it DOES taste like gramma!" - Chief Wiggam ICQ #29402898 The Simpsons --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 16:29:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA21626 for dynarec-outgoing; Wed, 24 Jan 2001 16:29:52 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00cf01c08668$e18cdd80$0100a8c0@laptop> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Hardware emulation Date: Thu, 25 Jan 2001 00:50:50 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Well, I'm more prepared to believe you than them - but I will be looking out > > for more results (by other people). So, if you say it's faster than that > > then I'll believe you. :) > > But at the same time, it's nothing to write home about, either. It's just > not *THAT* bad. If it works at a reasonable speed then cool. But, as you say, it's not meant to emulate the x86 - it just can. So if it does it slowly, who cares? I just want one! That amount of registers... Mmm. :) > > What, emulating a 75MHz CPU on a CPU over 700MHz? That's MAME speeds if ever > > I saw them! ;) > > Good point. MZ80 Emulates a Z80 operating at around 120MHZ on a Pentium > Pro 200, so I guess those numbers above are a bit more realistic. ;-) I thought you'd see my point. ;) > > And I mis-spelt bigot. I'm blaming this laptop keyboard. ;) > > And you misspelled "mis-spelt". ;-) Bloody american laptop keyboard! ;) > > Actually, speaking about thinking differently (I could bigot Apple you > > know!), I had great fun earlier this week trying to explain to someone just > > how OO works. They can't get their head around it. I always found it an easy > > concept. Never mind, they're just screwed given they had a Java assignment > > to be in for... today. Shouldn't have left it so late! > > Let's hope this downturn in PC sales (personal computer sales, not IBM PC > compatible sales) will cause some of those less than capable idiots to be > forced out of the industry. I hope so. I know the industry is big - but it would be nice if it was big and I knew that I could find the perfect job for me - and not find that some retard who knows nothing got there first... Java, the next big thing, eh? It's been out for over 3 years IIRC and it certainly hasn't become the big thing that was being suggested. Yes, it's used - but I think that it's used less now than it originally was. Cross-platform is great - but given most people use PC's... Nice in theory but appears to not be taking the world by storm as predicted. Which means that my prediction was right. Something will - but it wasn't Java. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 18:34:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA21731 for dynarec-outgoing; Wed, 24 Jan 2001 18:34:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002001c0867a$60753500$0100a8c0@laptop> From: "Neil Griffiths" To: Subject: DYNAREC: Fw: Snowhite and the Seven Dwarfs - The REAL story! Date: Thu, 25 Jan 2001 02:54:56 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Bit of a bugger - looks like someone has grabbed my address off the Dynarec website ('cos that's the only place where my dynarec mailname is known!) - so be warned, if any of you also got this (Mike, you'd be a prime candidate) - don't open the attachment - it's a doobrie virus! :-/ I've deleted the attachment that almost got forwarded with it just in case... Neil. ----- Original Message ----- From: "Hahaha" To: Sent: Thursday, January 25, 2001 12:38 AM Subject: Snowhite and the Seven Dwarfs - The REAL story! > Today, Snowhite was turning 18. The 7 Dwarfs always where very educated and > polite with Snowhite. When they go out work at mornign, they promissed a > *huge* surprise. Snowhite was anxious. Suddlently, the door open, and the Seven > Dwarfs enter... > > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 20:27:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA21835 for dynarec-outgoing; Wed, 24 Jan 2001 20:27:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 24 Jan 01 23:37:47 -0500 Message-Id: <3.0.5.32.20010124192318.007b4100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 24 Jan 2001 19:23:18 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Fw: Snowhite and the Seven Dwarfs - The REAL story! In-Reply-To: <002001c0867a$60753500$0100a8c0@laptop> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Bit of a bugger - looks like someone has grabbed my address off the Dynarec >website ('cos that's the only place where my dynarec mailname is known!) - >so be warned, if any of you also got this (Mike, you'd be a prime >candidate) - don't open the attachment - it's a doobrie virus! :-/ I've gotten this a few times, and I've also gotten something else with a screen saver attached. I deleted both of them. Don't touch that binary! You don't know where it's been ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 24 23:10:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA21961 for dynarec-outgoing; Wed, 24 Jan 2001 23:10:46 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200101250724.IAA29141@pons.ac.upc.es> Subject: Re: DYNAREC: Hardware emulation In-Reply-To: <004c01c08664$8d3b4fe0$0100a8c0@laptop> "from Neil Griffiths at Jan 25, 2001 00:19:50 am" To: dynarec@dynarec.com Date: Thu, 25 Jan 2001 08:24:22 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > IA-64 not meant to run x86 code - but that performance is terrible any > way > > > you look at it. Hell, MAME could out-perform it! ;) > > > > Well, I wouldn't go *THAT* far. > > What, emulating a 75MHz CPU on a CPU over 700MHz? That's MAME speeds if ever > I saw them! ;) > That is FAST for MAME ;). For MAME would be more likely emulating a 7.5 MHz CPU over a 700 MHz CPU ;). > > Just a little bit, yeah. Those VLIW instructions are quite the > > challenge! Think parallel! > Indeed an interesting way to think ;). Who wants to start the first VLWI emulator (emuscene related of course)? ;))) > I have problems just thinking... at all! ;)) > I think we already knew that. ;)))) > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jan 25 06:38:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA22497 for dynarec-outgoing; Thu, 25 Jan 2001 06:37:54 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006a01c086df$675497c0$0100a8c0@laptop> From: "Neil Griffiths" To: References: <200101250724.IAA29141@pons.ac.upc.es> Subject: Re: DYNAREC: Hardware emulation Date: Thu, 25 Jan 2001 14:59:15 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > That is FAST for MAME ;). For MAME would be more likely emulating a 7.5 MHz CPU > over a 700 MHz CPU ;). Heh. :) > Indeed an interesting way to think ;). Who wants to start the first > VLWI emulator (emuscene related of course)? ;))) Think of the irony if you could emulate an IA-64 at 75MHz on a 700MHz x86! ;) That isn't going to happen, BTW. :) > > I have problems just thinking... at all! ;)) > > > I think we already knew that. ;)))) Thanks. And I love you too. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jan 26 07:34:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA23765 for dynarec-outgoing; Fri, 26 Jan 2001 07:34:12 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Some new docs From: "M.I.K.e" Message-ID: <00037bc6f4944cd6_mailit@mail.dynarec.com> References: <000701c0856f$e0c45080$f074393e@menta.net> <003501c08579$09279560$2343fea9@daves> <00037b8fd74cebba_mailit@mail.dynarec.com> <004401c0857f$777e98a0$2343fea9@daves> Date: Fri, 26 Jan 2001 15:29:27 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> BTW, I forgot to mention some time ago that the web extension of the book >> "Advanced Compiler Design and Implementation" features a chapter about >> "Object-Code Compilation" - yeah, it's static reacompilation but might be >> interesting (I didn't have the time to read it yet): >> http://www.mkp.com/books_catalog/catalog.asp?ISBN=1-55860-320-4 >> (Does anyone know the book and if it's worth the price?) >Erm, I've got it in front of me now! :o) Spooky! ;-) >I don't really feel qualified to >comment though, it really depends on what you want it for? I'm searching for a book which features some good chapters about optimization, which might be interesting for dynarecs as well. What I found so far is so high-level language dependend that it doesn't work for our purposes, or at least not without a vast structural analysis, which surely is too slow for on-the-fly translation. >Dave -- M.I.K.e Parsley is gharsley. -- Ogden Nash --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jan 26 07:34:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA23756 for dynarec-outgoing; Fri, 26 Jan 2001 07:34:08 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Fw: Snowhite and the Seven Dwarfs - The REAL story! From: "M.I.K.e" Message-ID: <00037bc7148f16c2_mailit@mail.dynarec.com> References: <002001c0867a$60753500$0100a8c0@laptop> Date: Fri, 26 Jan 2001 15:38:23 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Bit of a bugger - looks like someone has grabbed my address off the Dynarec >website ('cos that's the only place where my dynarec mailname is known!) - >so be warned, if any of you also got this (Mike, you'd be a prime >candidate) How did you know? ;-) > - don't open the attachment - it's a doobrie virus! :-/ One other reason why I love email under BeOS! ;-) >I've deleted the attachment that almost got forwarded with it just in >case... Well done, although it wouldn't harm me... >Neil. -- M.I.K.e While anyone can admit to themselves they were wrong, the true test is admission to someone else. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jan 26 07:34:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA23761 for dynarec-outgoing; Fri, 26 Jan 2001 07:34:10 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Hardware emulation From: "M.I.K.e" Message-ID: <00037bc70e984201_mailit@mail.dynarec.com> References: <200101241019.LAA31164@pons.ac.upc.es> <000701c0863a$0a7c0920$0100a8c0@laptop> Date: Fri, 26 Jan 2001 15:36:43 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Hi, Seems that NG really got his phone line now ;-) >http://www.theregister.co.uk/content/3/16307.html >It seems that the hardware emulation of the IA-64 is slow. Very slow. Slower >than software - if the results are true. Just thought we'd all find this >interesting. Well, they aren't really objective, because otherwise they wouldn't call Itanium "just one awful chip", which it surely isn't. >For "The Register", that was a good article. If only they hadn't mentioned >Transmeta... And that's totally wrong again... Erm, did I just dream that or did they really claim in the end of the article that Crusoe might emulator Itanium and that claim is missing now? I already wanted to mention that it's stupid because I think Crusoe is 32 bit while Itanium is 64 bit. Hmm, either I was very tired when I read the article at first or they really removed that false claim... >Neil. -- M.I.K.e "Text processing has made it possible to right-justify any idea, even one which cannot be justified on any other grounds." -- J. Finnegan, USC. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jan 28 07:55:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA28563 for dynarec-outgoing; Sun, 28 Jan 2001 07:55:09 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 28 Jan 2001 17:02:22 +0100 From: Mario Rodriguez To: dynarec@dynarec.com Subject: DYNAREC: :[ to dynarec mailing list : self-dynrec coding : by rlyeh/www.emulNation.com ]: Message-Id: <3A74428EA0.691DRLYEH@correo.menorca.net> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="U3VuLCAyOCBKYW4gMjAwMSAxNzowMjoyMiArMDEwMA==" Content-Transfer-Encoding: 7bit X-Mailer: Becky! ver 1.25.07 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --U3VuLCAyOCBKYW4gMjAwMSAxNzowMjoyMiArMDEwMA== Content-Transfer-Encoding: 7bit Content-Type: text/plain see the attachment text file :-) --U3VuLCAyOCBKYW4gMjAwMSAxNzowMjoyMiArMDEwMA== Content-Type: application/octet-stream; name="attachment.txt" Content-Disposition: attachment; filename="attachment.txt" Content-Transfer-Encoding: base64 DQoJCTo6WyB0byB3d3cuZHluYXJlYy5jb20gbWFpbGluZyBsaXN0IF06Og0KDQogIC0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo6 WyBTZWxmLUR5bmFSZWMgQ29kaW5nIGJ5IHJseWVoL3d3dy5lbXVsTmF0aW9uLmNvbSwgZG9jdW1l bnQgcjAgXToNCiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0NCg0KDQoNCkJ5IG9uZSBoYW5kLCB0aGlzIGlzIG15IGZpcnN0IHBv c3QgaGVyZS4uLiBzbyBoaSBldmVyeWJvZHkhIDopDQpCeSBvdGhlciBoYW5kLCBJJ20gbm90IHVz ZWQgdG8gd3JpdGUgRW5nbGlzaCwgc28gSSBiZWcgeW91ciBwYXJkb24gZm9yIG15IG1pc3Rha2Vz ISA6KQ0KDQpXZWxsLCBsZXQncyBzdGFydC4uLg0KDQpJJ3ZlIG1ldCBhIGZyaWVuZCBvZiB5b3Vy cywgVmljdG9yLiBBbHRob3VnaCBJIG1ldCBoaW0gYXMgJ1JvT29ibycNCmF0IGFuIGlyYyBlbXVs YXRpb24gY2hhbm5lbC4gSGUgc2FpZCB0byBtZSBzdWJzY3JpYmluZyBoZXJlIHRvIHRlbGwgeW91 DQpteSB0aG91Z2hzIGFib3V0IHRoaXMgdG9waWMuLi4NCg0KSSdtIGEgY29kZXIgdGhhdCBtYWRl IHNvbWV0aW1lIGFnbyBhbiBlbXVsYXRvciBjYWxsZWQgJ0F0bOJhbnQnICh3aXRoIGFuIGF3ZXNv bWUgR1VJIDopDQpidXQgaXQgbmV2ZXIgd2FzIHJlbGVhc2VkIGR1ZSB0byBteSBsYWNrIG9mIHRp bWUgYW5kIHRlY2huaWNhbCBpbmZvIGFib3V0IFBTWC4gIA0KDQpSaWdodCBub3cgSSdtIGluIHRo ZSBkZXZlbG9wbWVudCBvZiBhIG5ldyBlbXVsYXRvciwgYW5kIEkndmUgZG9uZSAoQUxSRUFEWSBE T05FKSBhIGR5bmFyZWMgZW5naW5lDQp0byBlbXVsYXRlIG15IG1hY2hpbmVzLiBUaGUgZGlmZmVy ZW5jZSBpcyB0aGF0IHRoZSBkeW5hcmVjIGVuZ2luZSB1cGRhdGVzIGl0c2VsZi4NCg0KDQotLS0g V2hhdCB0aGlzIG1lYW4/DQoNCg0KV2VsbC4uLg0KDQppZiBJIGNvbXBpbGUgbXkgZW11bGF0b3Ig b24gYW4gYW1pZ2EgNTAwLCB0aGUgY29kZSB0aGF0IHRoZSBkeW5hcmVjIGdlbmVyYXRlcyBpcyBt NjhrIG9wdGltaXplZC4uLg0KaWYgSSBjb21waWxlIG15IGVtdWxhdG9yIG9uIGFuIGludGVsIHg4 NiwgdGhlIGNvZGUgdGhhdCB0aGUgZHluYXJlYyBnZW5lcmF0ZXMgaXMgeDg2IG9wdGltaXplZC4u Lg0KaWYgSSBjb21waWxlIG15IGVtdWxhdG9yIG9uIGFuIEFSTSwgdGhlIGNvZGUgdGhhdCB0aGUg ZHluYXJlYyBnZW5lcmF0ZXMgaXMgQVJNIG9wdGltaXplZC4uLg0KDQppZiBJIGNvbXBpbGUgbXkg ZW11bGF0b3Igb24gYW4gY2hpcCB0aGF0IHRvZGF5IGRvZXNudCBleGlzdCwgd2hlbiBpJ2QgYmUg YWJsZSB0byBjb21waWxlIGl0LA0KbWF5YmUgd2l0aGluIDIwIHllYXJzLCB0aGUgZHlucmVjIHdp bGwgZ2VuZXJhdGUgb3B0aW1pemVkIGNvZGUgZm9yIHRoYXQgY2hpcCENCg0KaGF2ZSB5b3UgZ290 IGl0PyA6KSBJdCdzIGEgZ2VuZXJpYyBkeW5hcmVjIGNvbXBpbGVyLCB3aGljaCBwcm9kdWNlcyBv cHRpbWl6ZWQgY29kZSA6KQ0KDQoNCi0tLSBIb3cgSSBkaWQgaXQ/DQoNCg0KVGhlIGNvbW1vbiB0 aGluZyBpcyBhc3NlbWJsaW5nIG5hdGl2ZSBjb2RlIGludG8gdGhlIG1haW4gLmMgZmlsZSwgYW5k IHdoaWxlIHlvdSBleGFtaW5hdGUgc291cmNlIGNvZGUNCnlvdSB0cmFuc2xhdGUgc291cmNlIGNv ZGUgaW50byBuYXRpdmUgY29kZSBmcm9tIHRoZSBkYXRhIG9mIHRoZSBtYWluIC5jIGZpbGUsIHJp Z2h0Pw0KDQpXZWxsLCBJIHN0aWxsIGRvaW5nIHRoYXQsIGJ1dCB0aGUgZGlmZmVyZW5jZSBpcyB0 aGF0IHRoZSBuYXRpdmUgY29kZSBJIHVzZSBmcm9tIHRoZSBtYWluIC5jIGZpbGUgaXMgZGluYW1p YywNCm5vdCBzdGF0aWMgXTopDQoNCkhvdyBJIGRvIHRoaXM/IFdlbGwsIHRoZSBlbmdpbmUgZ2Vu ZXJhdGVzIGl0cyBuYXRpdmUgY29kZSB3YXRjaGluZyBhdCBpdHNlbGYgXTopDQoNCg0KLS0tIERp ZG4ndCB5b3UgdW5kZXJzdGFuZCBpdD8NCg0KDQpJbWFnaW5lIHRoaXMgcGllY2Ugb2YgY29kZSBp bnRvIHlvdXIgcHJvZ3JhbToNCg0KLy8gcHNldWRvY29kZQ0KDQp0eXBlZGVmIHUxNiB1bnNpZ25l ZCBzaG9ydDsgLy8gdW5zaWduZWQsIDE2IGJpdHMgDQoNCnUxNiAqYSwgKmIsICpjOyAgDQoNCnZv aWQgZkFkZCgpDQp7DQogKCphKT0oKmIpKygqYykNCn0NCg0Kdm9pZCBmTlVMTCgpDQp7DQp9DQoN CllvdSBrbm93IHRoZSB3YXkgQyB3b3Jrcy4gU3RhY2sgdXNlIGZvciBwYXJhbWV0ZXJzIGlzIGFs d2F5cyBhdCBmaXJzdCBwbGFjZSAocHVzaCBjb2RlcyksIHRoZW4gY29kZSwgdGhlbiBwb3AgY29k ZXMsIHJpZ2h0Pw0KDQpBbmQgbm93LCB5b3Ugd2FudCB0byBtYWtlIGEgZHlucmVjIG9wY29kZSBv ZiB0aGUgQUREIG9wY29kZSAob3IgQUREVywgb3IgU1VNLCBvciB3aGF0ZXZlciBpdCBpcyBjYWxs ZWQgb24gdGhlDQpzb3VyY2UgbWFjaGluZSkuIEJ1dCwgaG93IEkgc3VwcG9zZSBJIGhhdmUgdG8g ZG8gaXQ/DQoJDQoxKSBTZWFyY2ggZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdHdvIGZ1bmN0aW9u cw0KMikgVGhlIGZpcnN0IGRpZmZlcmVuY2VzIGFyZSB0aGUgUFVTSCBjb2Rlcy4gQ29weSB0aGVt IHRvIGEgc2FmZSBwbGFjZS4NCjMpIFRoZSBsYXN0IGRpZmZlcmVuY2VzIGFyZSB0aGUgUE9QIGNv ZGVzLiBDb3B5IHRoZW0gdG8gYW5vdGhlciBzYWZlIHBsYWNlLg0KNCkgVGhlIG1pZGRsZSBieXRl cyBhcmUgdGhlIGhpZ2hseSBvcHRpbWl6ZWQgb3Bjb2RlcyBmb3IgYWRkaW5nICpiIHRvICpjIGlu dG8gKmEuDQoJTk9URSB0aGF0IHRoaXMgaXMgSElHSExZIG9wdGltaXplZCBieSB0aGUgY29tcGls ZXIgd2hlbiB5b3UgY29tcGlsZWQgdGhpcyBQUk9HUkFNIQ0KCUkgaGF2ZSB0ZXN0ZWQgdGhpcywg YW5kIHRoZSBhc3NlbWJsZXIgb2YgdGhlc2Ugb3Bjb2RlcyBhcmUgYWx3YXlzIGEgbG90IG9mIG9w dGltaXplZA0KCShidXQgaWYgeW91IGNvbXBpbGUgeW91ciBwcm9ncmFtIHdpdGhvdXQgb3B0aW1p emF0aW9ucywgdGhlc2Ugb3Bjb2RlcyBhcmVudCBvcHRpbWl6ZWQsIG9mIGNvdXJzZSA6KQ0KDQo1 KSBOb3cgbWFrZSBhIGR1bW15IGZ1bmN0aW9uIGluIG1lbW9yeSAoKiksIGllOg0KDQoJLy8gcHNl dWRvY29kZQ0KDQoJdm9pZCAoKkFERGR5bnJlYykoKTsNCg0KCUFERGR5bnJlYz1tYWxsb2MobnVt Ynl0ZXNvZihwdXNoY29kZSkrbnVtYnl0ZXNvZihjb2RlKStudW1ieXRlc29mKHBvcGNvZGUpKTsg DQoNCgljb3B5KHB1c2hjb2RlcyxBRERkeW5yZWMsbnVtYnl0ZXNvZihwdXNoY29kZSkpDQoNCglj b3B5KGNvZGUsQUREZHlucmVjK251bWJ5dGVzb2YocHVzaGNvZGVzKSxudW1ieXRlc29mKGNvZGUp KQ0KDQoJY29weShwb3Bjb2RlcyxBRERkeW5yZWMrbnVtYnl0ZXNvZihwdXNoY29kZXMpK251bWJ5 dGVzb2YoY29kZSksbnVtYnl0ZXNvZihwb3Bjb2RlKSkNCg0KCS8vIGFuZCB0aGF0J3MgaXQuDQoN Cg0KKCopIE15IGZpcnN0IGF0dGVtcHQgd2FzIHRvIGNyZWF0ZSB0aGUgZnVuY3Rpb24gb24gdGhl IHNhbWUgY29kZSBhcmVhIHJlc2VydmVkIGZvciB0aGUgcHJvZ3JhbS4NCglJbiBET1Mgd29ya3Ms IGJ1dCBXOVggbm90ICh0aGUgcHJvZ3JhbSBpcyAicHJvdGVjdGVkIiBhZ2FpbnN0IGFueXRoaW5n IHdyaXR0ZW4gaW4gaXRzIGNvZGUgYXJlYSkuDQoJU28gSSBmaXhlZCBpdCBtYWtpbmcgbXkgY29k ZSBhcmVhIGludG8gdGhlIGRhdGEgYXJlYSwgYW5kIHRoZW4ganVtcGluZyB0byBpdCBdOikNCglF YXN5IGFuZCBjb29sIHNvbHV0aW9uLCBJIHRoaW5rDQoNCjYpIFRvIGdldCB0aGUgdGhpbmcgd29y a2luZyBvbiwganVzdCBqdW1wIHRvIHlvdXIgKnBvaW50ZXINCg0KCS8vIHBzZXVkb2NvZGUNCg0K CSgqQUREZHlucmVjKSgpOw0KDQoNCi0tLSBIb3cgZG8gSSBrbm93IHRoYXQgdGhlIGVuZ2luZSBw cm9kdWNlcyBvcHRpbWl6ZWQgY29kZT8NCg0KQXMgSSBzYWlkIGF0IDQpOg0KDQoiNCkgVGhlIG1p ZGRsZSBieXRlcyBhcmUgdGhlIGhpZ2hseSBvcHRpbWl6ZWQgb3Bjb2RlcyBmb3IgYWRkaW5nICpi IHRvICpjIGludG8gKmEuDQoJTk9URSB0aGF0IHRoaXMgaXMgSElHSExZIG9wdGltaXplZCBieSB0 aGUgY29tcGlsZXIgd2hlbiB5b3UgY29tcGlsZWQgdGhpcyBQUk9HUkFNIQ0KCUkgaGF2ZSB0ZXN0 ZWQgdGhpcywgYW5kIHRoZSBhc3NlbWJsZXIgb2YgdGhlc2Ugb3Bjb2RlcyBhcmUgYWx3YXlzIGEg bG90IG9mIG9wdGltaXplZA0KCShidXQgaWYgeW91IGNvbXBpbGUgeW91ciBwcm9ncmFtIHdpdGhv dXQgb3B0aW1pemF0aW9ucywgdGhlc2Ugb3Bjb2RlcyBhcmVudCBvcHRpbWl6ZWQsIG9mIGNvdXJz ZSA6KSINCg0KVGhlIGZhY3QgaXMgdGhhdCBJIGRvIGlzIGNvcHlpbmcgc29tZSBjb2RlIGZyb20g b25lIHBvaW50IHRvIG90aGVyIHBvaW50LCBidXQgc2luY2UgdGhlIG9yaWdpbiBwb2ludCBpcw0K YWxyZWFkeSBjb21waWxlZCBhbmQgb3B0aW1pemVkIGJ5IHRoZSBjb21waWxlciwgSSBrbm93IHRo YXQgaXMgbW9yZSBvcHRpbWl6ZWQgdGhhbiB3aGF0IHlvdSBjb3VsZCB0aGluaw0KYXQgZmlyc3Qg aW1wcmVzc2lvbi4NCg0KDQotLS0gT3B0aW1pemluZw0KDQpJZiB5b3UgYXJlIGNvbXBpbGluZyBi bG9jayBvZiBpbnN0cnVjdGlvbnMgYmV0d2VlbiBqdW1wcywgeW91IGNhbiBhbHNvIHVzZSB0aGlz IHdpdGggeW91ciBjb2RlLg0KDQpUaGUgd2F5IHRoZSAidm9pZCBmdW5jdGlvbih2b2lkKSIgZnVu Y3Rpb25zIHdvcmsgYWxsb3cgeW91IGFkZGluZyBtYW55IHNvdXJjZSBvcGNvZGVzIGluIHRoZSBz YW1lIGZ1bmN0aW9uLg0KDQpJbWFnaW5lIHlvdSB3YW50IHRvIGNvbXBpbGUgYSBibG9jayBvZiBj b2RlLCBhbmQgeW91IGhhdmUgdG8gcmVjb21waWxhdGUgdGhpcyBibG9jazoNCg0KCQlzdGFydCBv ZiBjYWxsDQoJCUFERCBvcGNvZGUNCgkJTU9WIG9wY29kZQ0KCQlTVUIgb3Bjb2RlDQoJCU1PViBv cGNvZGUNCgkJQUREIG9wY29kZQ0KCQlbLi4uXQ0KCQlSRVQgb3Bjb2RlDQoNCllvdSBuZWVkbnQg dG8gbWFrZSBhIGZ1bmN0aW9uIGZvciBlYWNoIG9wY29kZSBpZiB5b3Ugd2FudCB0byBkbyBpdC4N CllvdSBjb3VsZCBkbyBzb21ldGhpbmcgbGlrZToNCg0KCQlEeW5SZWNGdW5jdGlvbigpDQoJCXsN CgkJUFVTSGNvZGUNCg0KCQlBRERkeW5yZWMgb3Bjb2RlDQoJCU1PVmR5bnJlYyBvcGNvZGUNCgkJ U1VCZHlucmVjIG9wY29kZQ0KCQlNT1ZkeW5yZWMgb3Bjb2RlDQoJCUFERGR5bnJlYyBvcGNvZGUN CgkJWy4uLl0NCg0KCQlQT1Bjb2RlDQoJCX0NCg0KDQotLS0gRW5kDQoNCkkgaG9wZSB0aGlzIHBv c3Qgd2lsbCBiZSBpbnRlcmVzdGluZyBmb3IgeW91IHN0dWRpbmcgYXQgZHluYXJlYyA6KQ0KDQpO b3cgSSBoYXZlIHRoaW5ncyB0byBkbywgbGlrZSB0aGUgd2ViIG9mIG15IGVtdSwgd2hpY2ggaXMg Y29kZWQgaXMganNjcmlwdCwgYnV0IHRoYXQncyBhbm90aGVyIHRhc2sgOikgQXMgSSBzYWlkIGJl Zm9yZSwNCnRoaXMgaXMgYW4gZXhwZXJpbWVudCB3aGljaCBJIGhhdmUgY29kZWQgZm9yIG15IGdl bmVyaWMgZW11bGF0b3IuIEl0cyBjYWxsZWQgImVtdWxOYXRpb24iLCBhbmQgdGhpcyBlbmdpbmUg aXMgaW4tYnVpbHQgaW4gaXQuDQoNCkkgZXhwZWN0IHlvdXIgc3VnZ2VzdGlvbnMvaWRlYXMvY29t bWVudHMvWy4uLl0gc29vbg0KDQpidHcsIHlvdSBjYW4gdmlzaXQgbXkgd3d3LmVtdWxuYXRpb24u Y29tIHVuZGVyIGNvbnN0cnVjdGlvbiBhbmQgc2F5IHdoYXQgeW91IHdhbnQuDQoNCmFsbCBhcmUg d2VsY29tZS4NCg0KDQotLS0gRG9jdW1lbnQgDQoNCnIwIC0gd3JpdHRlbiBhbmQgc2VudC4gTm8g Y2hhbmdlcyBvciByZXZpc2lvbnMuIEp1c3QgYSBwb3N0IDopDQoNCg0KLS0tLQ0KDQpybHllaCBs b2dnaW4nIG91dC4uLg0KcG9zdCA6OlsgIzAgXTo6IGF0IGR5bmFyZWMuY29tDQoNCg0K --U3VuLCAyOCBKYW4gMjAwMSAxNzowMjoyMiArMDEwMA==-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jan 28 08:16:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA28608 for dynarec-outgoing; Sun, 28 Jan 2001 08:16:25 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002d01c08948$d5d91c00$0100a8c0@laptop> From: "Neil Griffiths" To: References: <3A74428EA0.691DRLYEH@correo.menorca.net> Subject: Re: DYNAREC: :[ to dynarec mailing list : self-dynrec coding : by rlyeh/www.emulNation.com ]: Date: Sun, 28 Jan 2001 16:38:59 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Sounds interesting. I'd be very interested in seeing the source code for this to see how it works! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jan 28 08:26:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA28631 for dynarec-outgoing; Sun, 28 Jan 2001 08:26:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001701c08949$1e278be0$f074393e@menta.net> From: "Victor Moya del Barrio" To: References: <3A74428EA0.691DRLYEH@correo.menorca.net> <002d01c08948$d5d91c00$0100a8c0@laptop> Subject: Re: DYNAREC: :[ to dynarec mailing list : self-dynrec coding : by rlyeh/www.emulNation.com ]: Date: Sun, 28 Jan 2001 17:41:00 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > Sounds interesting. I'd be very interested in seeing the source code for > this to see how it works! :) > Me too, me too ;)). It is really a strange approach to dynarec: a very portable dynarec. When he told me about it I got really astonished ;). > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jan 28 09:10:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA28684 for dynarec-outgoing; Sun, 28 Jan 2001 09:10:54 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <001701c08949$1e278be0$f074393e@menta.net> Subject: Re: DYNAREC: :[ to dynarec mailing list : self-dynrec coding : by rlyeh/www.emulNation.com ]: From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Sun, 28 Jan 2001 18:27:30 +0100 Message-ID: <1enyik5.1mvwph11tflbuoM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id JAA28681 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > It is really a strange approach to dynarec: a very portable dynarec. When > he told me about it I got really astonished ;). I already though about it. The term known in the litterature is something like "code inlining". Actually, my idea was to write a direct threaded code interpreter by decomposing VM instructions as much as possible and then dynamically assemble templates (linking them actually). Oh, well I called that DynaLink ;-) Sources: File: dynalink.tar.gz Sorry, that's poorly commented and quite old now (September, 2000). Flaws: - the technique is highly optimized for an expression, not a block of expressions. - clever register allocation can't be done. - my experiment uses GCC and the "Label as Values" features BTW: the original paper where I took the idea from is "Optimizing Direct Threaded Code by Selective Inlining". Bye. -- Gwenolé Beauchesne - Web: JIT Basilisk II, FAQ fr.comp.sys.mac.programmation --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jan 28 10:44:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA28761 for dynarec-outgoing; Sun, 28 Jan 2001 10:44:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000501c0895c$6112ea40$f074393e@menta.net> From: "Victor Moya del Barrio" To: References: <1enyik5.1mvwph11tflbuoM@[192.168.0.2]> Subject: Re: DYNAREC: :[ to dynarec mailing list : self-dynrec coding : by rlyeh/www.emulNation.com ]: Date: Sun, 28 Jan 2001 19:59:02 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I already though about it. The term known in the litterature is >something like "code inlining". Actually, my idea was to write a direct >threaded code interpreter by decomposing VM instructions as much as >possible and then dynamically assemble templates (linking them >actually). Code inlining, dynamic code generation, whatever. With thousands of people researching in computer it is sure you will find almost everything out there ;). The problem is to find what you are searching for. But I had never heart about that before, it is an interesting technique. >Oh, well I called that DynaLink ;-) >Sources: >File: dynalink.tar.gz And as usual I will download it and I won't remember to take a look to it later ;))). Damn! >BTW: the original paper where I took the idea from is "Optimizing Direct >Threaded Code by Selective Inlining". Another piece for my collection ;)). My bibliography keeps growing fast. I think I would be able to present another full book just with all the bibliography references I have found. ;))) >Gwenolé Beauchesne - Web: Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jan 28 22:06:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA29345 for dynarec-outgoing; Sun, 28 Jan 2001 22:06:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <000501c0895c$6112ea40$f074393e@menta.net> Subject: Re: DYNAREC: :[ to dynarec mailing list : self-dynrec coding : by rlyeh/www.emulNation.com ]: From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Mon, 29 Jan 2001 07:23:16 +0100 Message-ID: <1enzizi.1vwsr9s11imlucM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id WAA29342 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >BTW: the original paper where I took the idea from is "Optimizing Direct > >Threaded Code by Selective Inlining". > > Another piece for my collection ;)). My bibliography keeps growing fast. > I think I would be able to present another full book just with all the > bibliography references I have found. ;))) Beware that ACM articles can't be redistributed. Wow, this makes me think that I should go back to the Research Institute (IRISA/INRIA) and grab some other articles, before my account gets closed at the end of this month. I already downloaded your bib, and that's really interesting though I already had most of the articles ;-))) Bye, Gwenolé. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jan 28 23:33:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA29415 for dynarec-outgoing; Sun, 28 Jan 2001 23:33:37 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200101290747.IAA23100@pons.ac.upc.es> Subject: Re: DYNAREC: :[ to dynarec mailing list : self-dynrec coding : by rlyeh/www.emulNation.com ]: In-Reply-To: <1enzizi.1vwsr9s11imlucM@[192.168.0.2]> "from Gwenole Beauchesne at Jan 29, 2001 07:23:16 am" To: dynarec@dynarec.com Date: Mon, 29 Jan 2001 08:47:42 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=ISO-8859-1 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > >BTW: the original paper where I took the idea from is "Optimizing Direct > > >Threaded Code by Selective Inlining". > > > > Another piece for my collection ;)). My bibliography keeps growing fast. > > I think I would be able to present another full book just with all the > > bibliography references I have found. ;))) > > Beware that ACM articles can't be redistributed. Wow, this makes me > think that I should go back to the Research Institute (IRISA/INRIA) and > grab some other articles, before my account gets closed at the end of > this month. > I know ;). I hope they will first make me a call if they found my library (something I think would be very rare) before calling lawsuits ;). It isn't a problem (or not too much), I have access to ACM (if you want some, just ask me but you SHOULD NOT say where you found it ;)). And that new Japanese site: http://citeseer.nj.nec.com has a lot of ACM and non-ACM articles (I could say no no I found them in a japanese site, not in ACM, or I had all the document mixed and seems that some ACM mixed with the non-ACM :). BTW, that article is from INRIA too, right? > I already downloaded your bib, and that's really interesting though I > already had most of the articles ;-))) > It uses to happen, many of them are five years old or even more ;). I have some new (or not so new) documents in my home (or at work). Let see if I finally arrange my page. > Bye, > Gwenolé. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jan 29 20:39:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA30649 for dynarec-outgoing; Mon, 29 Jan 2001 20:38:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 29 Jan 01 23:48:31 -0500 Message-Id: <3.0.5.32.20010129204633.007b9750@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 29 Jan 2001 20:46:33 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: PSG Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I've whipped up a primitive sound engine for the Genesis PSG (square-wave tone generator, 3 channels -- it has a noise channel as well, but I haven't emulated it yet.) However... it doesn't sound right at all :) Some of the tones seem to sound more-or-less correct but a lot of the time, the sound output sounds mangled and metallic. I fear it may be the mixing code, or the way I calculate the frequency. Victor has looked at it, and pointed out I should use 128+sample when writing to a signed WAV file, I've done this (it isn't reflected in the currently uploaded source archive) but the sound hasn't improved much... There is a version at: http://trzy.overclocked.org/PSG.ZIP PSG.ZIP contains: sonic1r.wav WAV file produced by Genecyst (PSG enabled only, FM and DAC turned off) sonic1.wav WAV file my sound program produced sonic1.gym A GYM log which my sound program converts to WAV format psg.c Sound engine psg.h Header file for sound engine psg2wav.c Program which uses the sound engine make.bat If you've got GCC installed, use this to build If anyone has the time and feels interested, try comparing sonic1r.wav to sonic1.wav to see the difference :/ I think they will play in Sound Recorder, but I've had problems in the past ... Winamp does the trick. The sound engine's pretty small and simple. When specifying frequencies, 10 bits are written to the PSG port, these 10 bits are divided into 125000 (or 124800): 125000/freq. I know the mixing is unoptimized and a little weird, but it's just a test ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jan 29 20:59:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA30675 for dynarec-outgoing; Mon, 29 Jan 2001 20:59:11 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 30 Jan 01 00:08:50 -0500 Message-Id: <3.0.5.32.20010129210631.007bed10@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 29 Jan 2001 21:06:31 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Fast i960 Instruction Decoding Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello again, This is a bit more on-topic. Recently I've been a bit curious about emulating the Intel i960 (80960KB) processor. If I get around to this project, I'll do it in C first (for testing purposes) but I'd eventually like to write a fast interpreter in assembly or perhaps even a dynarec core. One of the problems I see immediately is the size of the instructions: 32 bits! Within these 32 bits, most of which contain addressing mode data, there is a small 8-12 bit opcode. I counted the number of total opcodes and noticed there are 185. I think perhaps it might be feasible to "pre-process" the instructions. This would almost certainly yield a huge performance increase in an interpreter, and perhaps even in a dynarec. The idea is that since there are only 185 unique opcodes, perhaps they could be remapped to fit in single byte. The rest of the instruction could be sliced, diced, and mixed to make things easier for the intepreter. One of the formats (called REG) looks like this: 31-24=Opcode 23-19=SRC/DST 18-14=SRC2 13,12,11=M3,M2,M1 10-7=Opcode (it's fragmented) 6-5=0,0 4-0=SRC1 It could be rearranged as: Word 0: M3 M2 M1 Byte-Opcode SRC/DST Word 1: SRC2 SRC1 The M-bits specify how the operands are used, this would be helpful in emitting optimized handlers for specific M situations. SRC/DST references a register, so I could use optmizations similar to what I use in Genital68K: and edi, byte 0x1f ; EDI contains first opcode word mov edx, [reg+edi*4] Pre-processing would ideally occur once. The Model 2 hardware, which uses the i960, isn't likely to use self-modifying code. The ROM could easily be pre-processed and the resultant "pcode" could be copied to a separate buffer. This way, data is fetched from the real ROM data, and instructions are fetched from the "pcode" buffer. Self-modifying code could be handled too, by recompiling RAM when dirty. Just some thoughts... It sounds a lot like the intermediate code some dynarecs apparently use, except this is suited for an interpreter. I doubt I'd use this method, since the i960 runs at a very high clock rate and an assembly interpreter would be pretty useless... dynarec would be the way to go here. Translated ROM pages wouldn't really need to be discarded, and since all Model 2 code probably runs from ROM, it would make for some excellent speed :) BTW, how does cycle timing work in a dynarec? I remember looking through Mike's excellent document, but didn't see a complete explanation on that particular topic. My first guess would be that code is translated in blocks and during the process, timing is maintained ensuring that the instructions translated == the time requested. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jan 29 23:26:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA30792 for dynarec-outgoing; Mon, 29 Jan 2001 23:26:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200101300740.IAA11869@pons.ac.upc.es> Subject: Re: DYNAREC: Fast i960 Instruction Decoding In-Reply-To: <3.0.5.32.20010129210631.007bed10@mailandnews.com> "from Bart at Jan 29, 2001 09:06:31 pm" To: dynarec@dynarec.com Date: Tue, 30 Jan 2001 08:40:10 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hello again, > > I think perhaps it might be feasible to "pre-process" the instructions. > This would almost certainly yield a huge performance increase in an > interpreter, and perhaps even in a dynarec. The idea is that since there > are only 185 unique opcodes, perhaps they could be remapped to fit in > single byte. The rest of the instruction could be sliced, diced, and mixed > to make things easier for the intepreter. > One of the formats (called REG) looks like this: > That is a good idea, but rather than creating a new bytecode format I will directly either to dynarec or to a threaded interpreter (direct threaded interpreter?). This will avoid further decoding, I think it isn't any point to it. For example the Dixie ISA (the project I work in my university) uses 128-byte fixed lenght instructions. But we don't intepret them directly but we (or may be they, I didn't programmed it ;) first decode all the code into a decode structure. The decode structure has fields for each operands, options, sizes, and those informations. And it has a pointer to the function which implements the function (that means threaded interpreter). Perhaps the translation is huge and uses a lot of more memory but the idea is keep it this way, perhaps trying to save some memory space in some places. The interpreter loop is more or less: dvm_t *IR; .... (*(IR->fn))(); IR++; ... If you want to learn more about threaded code (in case you still don't know about it), try as a start for example the document that Gwenole pointed a couple of mails ago (in response to Mario posting). It introduces variuos forms of interpreters and threaded interpreters. > Pre-processing would ideally occur once. The Model 2 hardware, which uses > the i960, isn't likely to use self-modifying code. The ROM could easily be > pre-processed and the resultant "pcode" could be copied to a separate > buffer. This way, data is fetched from the real ROM data, and instructions > are fetched from the "pcode" buffer. Self-modifying code could be handled > too, by recompiling RAM when dirty. >a In fact I think I have seen such kind of perprocessing in some of the last emulators ... SMOG perhaps? It was released as source code because of lack of time by the programmer (perhaps it was Richard Mitton?). But I'm not sure now what machine is emulating or what CPU uses (i960 or perhaps Nec V60). And it is perfectly applicable for ROM based systems. > Just some thoughts... > It sounds a lot like the intermediate code some dynarecs apparently use, > except this is suited for an interpreter. I doubt I'd use this method, > since the i960 runs at a very high clock rate and an assembly interpreter > would be pretty useless... dynarec would be the way to go here. Translated > ROM pages wouldn't really need to be discarded, and since all Model 2 code > probably runs from ROM, it would make for some excellent speed :) > I didn't like this kind of intermediate representation, a decoded structure for the IR makes sense, but to perform TWO decodes for the transaltion (from source code to IR and from IR to target code) is waste of time in my thoughts. > BTW, how does cycle timing work in a dynarec? I remember looking through > Mike's excellent document, but didn't see a complete explanation on that > particular topic. My first guess would be that code is translated in blocks > and during the process, timing is maintained ensuring that the instructions > translated == the time requested. > Timing can be handled with different granularities, from a instruction by instruction timing (Neil approach for early CPUs) or a block based timing. The block based can be based in basic blocks, translated blocks, just pieces of code inside the translated block (for example test timing in a determinated number of intructions or cycles), or timing by functions ... It depends upon the how precisse must be the timing for the emulated machine. The usual, easier approach is to calculate the number of cycles needed for executing the translated block (usually just a basic block without jumps into itself, for more simplicity) and put a test before or after the block translation (prolog/epilog) for handle the timing. This can be expanded to more complex methods. BTW, bored of the Genesis? ;)) > > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 30 00:30:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA30856 for dynarec-outgoing; Tue, 30 Jan 2001 00:30:19 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Giovanni Bajo" To: Subject: R: DYNAREC: Fast i960 Instruction Decoding Date: Tue, 30 Jan 2001 09:39:26 +0100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) In-Reply-To: <200101300740.IAA11869@pons.ac.upc.es> X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Importance: Normal X-MDaemon-Deliver-To: dynarec@dynarec.com Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello to all the readers of this list, I've linked it some days ago. > In fact I think I have seen such kind of perprocessing in some of the > last emulators ... SMOG perhaps? It was released as source code because > of lack of time by the programmer (perhaps it was Richard Mitton?). > But I'm not sure now what machine is emulating or what CPU uses (i960 or > perhaps Nec V60). And it is perfectly applicable for ROM based systems. SMOG is trying to emulate Model 1, NEC V60, no source code ever released, he is still working on the CPU core. From this point of view, Modeler is more advanced, since it already displays the 2D graphics in Model1 games. Virtua is the discontinued Model 2 emulator (i960) by Richard Mitton, the source code has been released, and, if I don't remember well, he was using that static recompilation approach you were thinking about. My quick note about this thing is that it is feasable just because the processor has a fixed instruction size. > Timing can be handled with different granularities, from a instruction > by instruction timing (Neil approach for early CPUs) or a block based > timing. The block based can be based in basic blocks, translated blocks, > just pieces of code inside the translated block (for example test timing > in a determinated number of intructions or cycles), or timing by > functions > ... It depends upon the how precisse must be the timing for the emulated > machine. The usual, easier approach is to calculate the number of cycles > needed for executing the translated block (usually just a basic block > without jumps into itself, for more simplicity) and put a test before or > after the block translation (prolog/epilog) for handle the timing. This > can be expanded to more complex methods. I'd say that for a machine like Model2, perfect timing is not required, so a basic timing approach may be ok. RaskY --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 30 00:50:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA30885 for dynarec-outgoing; Tue, 30 Jan 2001 00:50:01 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200101300904.KAA01042@pons.ac.upc.es> Subject: Re: R: DYNAREC: Fast i960 Instruction Decoding In-Reply-To: "from Giovanni Bajo at Jan 30, 2001 09:39:26 am" To: dynarec@dynarec.com Date: Tue, 30 Jan 2001 10:04:24 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Hello to all the readers of this list, I've linked it some days ago. > Wellcome to the list then :). > SMOG is trying to emulate Model 1, NEC V60, no source code ever released, he > is still working on the CPU core. From this point of view, Modeler is more > advanced, since it already displays the 2D graphics in Model1 games. > > Virtua is the discontinued Model 2 emulator (i960) by Richard Mitton, the > source code has been released, and, if I don't remember well, he was using > that static recompilation approach you were thinking about. > Hehe! ;))) Just another good example of how my (bad) memory works. > My quick note about this thing is that it is feasable just because the > processor has a fixed instruction size. > > I know, I had a discussion about how can be static translation easier with fixed instruction size rather than with non-fixed instruction size a couple of months ago in my university work ;). And the fact we could simplify a lot our generic static compiler if we would be taking into account this fact. With fixed instruction size you just have to translate EVERYTHING, no problems with indirect jumps or differenciation between code and data, you have already translated all the possible accessed code ;). Perhaps you are wasting a bit of memory but who cares. Non fixed instruction size ISAs means that a jump can go almost everywhere in the memory so you have thousands (or millions) of possible translations of a given bunch of data. A fixed instruction size just can jump to aligned addresses (usually or from what I know), and as the instruction size is fixed there is just a way to translate the data. ... I think I posted something to the list that time about it (but who knows with my memory ;). > > I'd say that for a machine like Model2, perfect timing is not required, so a > basic timing approach may be ok. > I agree with that. But perhaps I don't know enough about Model2. > RaskY > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 30 01:08:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA30914 for dynarec-outgoing; Tue, 30 Jan 2001 01:08:11 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Giovanni Bajo" To: Subject: Re: R: DYNAREC: Fast i960 Instruction Decoding Date: Tue, 30 Jan 2001 10:17:20 +0100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) In-Reply-To: <200101300904.KAA01042@pons.ac.upc.es> X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Importance: Normal X-MDaemon-Deliver-To: dynarec@dynarec.com Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I know, I had a discussion about how can be static translation easier > with fixed instruction size rather than with non-fixed instruction size > a couple of months ago in my university work ;). And the fact we > could simplify a lot our generic static compiler if we would be taking > into account this fact. With fixed instruction size you just have > to translate EVERYTHING, no problems with indirect jumps or > differenciation > between code and data, you have already translated all the possible > accessed code ;). Perhaps you are wasting a bit of memory but who cares. > Non fixed instruction size ISAs means that a jump can go almost everywhere > in the memory so you have thousands (or millions) of possible translations > of a given bunch of data. A fixed instruction size just can jump to > aligned addresses (usually or from what I know), and as the > instruction size > is fixed there is just a way to translate the data. And, let me add, I may imagine it for a slight speedup as a pre-decoding step. I don't see any real gain in recompiling all statically, since you cannot optimize almost anything without a basis block approach (that can be obtained only via dynamic code analysis). And, if you think really to it, binary translation is nice for the code that gets recompiled once and execute tons of time, so after all if your instruction decoding is slightly slower, who cares :) RaskY --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 30 01:27:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA30940 for dynarec-outgoing; Tue, 30 Jan 2001 01:27:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200101300941.KAA21241@pons.ac.upc.es> Subject: Re: R: DYNAREC: Fast i960 Instruction Decoding In-Reply-To: "from Giovanni Bajo at Jan 30, 2001 10:17:20 am" To: dynarec@dynarec.com Date: Tue, 30 Jan 2001 10:41:13 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > I know, I had a discussion about how can be static translation easier > > with fixed instruction size rather than with non-fixed instruction size > > a couple of months ago in my university work ;). And the fact we > > could simplify a lot our generic static compiler if we would be taking > > into account this fact. With fixed instruction size you just have > > to translate EVERYTHING, no problems with indirect jumps or > > differenciation > > between code and data, you have already translated all the possible > > accessed code ;). Perhaps you are wasting a bit of memory but who cares. > > Non fixed instruction size ISAs means that a jump can go almost everywhere > > in the memory so you have thousands (or millions) of possible translations > > of a given bunch of data. A fixed instruction size just can jump to > > aligned addresses (usually or from what I know), and as the > > instruction size > > is fixed there is just a way to translate the data. > > And, let me add, I may imagine it for a slight speedup as a pre-decoding > step. I don't see any real gain in recompiling all statically, since you > cannot optimize almost anything without a basis block approach (that can be > obtained only via dynamic code analysis). And, if you think really to it, > binary translation is nice for the code that gets recompiled once and > execute tons of time, so after all if your instruction decoding is slightly > slower, who cares :) > Well, perhaps you could save a bit of time ... or perhaps not. The main reason to use static translation (or may be just to 'thread' the code) is because you don't have to worry about it at execution time, nor to have to deal with dynamic memory allocation, and perhaps because it could be a bit more easy to implement ;). Provided that you have enough memory of course to translate everything in one shot. If you can be a really static translator (and not just a 'thread' translator like Mitton's emu seemed to me or the start Bart proposal) making it in static time rather than dinamic makes sense because you can spend a lot of more times doing optimizations. But in the other hand HP Dynamo and other new developments have showed that dynamic analysis of code execution can reach to great improvements over static compilation/translation, so ... who knows. Binary translation has still a lot of space for investigation ;). Lately seems that everything we (or may be just me) know about static/dynamic translation has to be rethought ... For example for an arcade emulator with a limited (or even more VERY limited) number of games approach such FX!32 which use an interpreter/profiler with a background static translator could make some sense. Perhaps just using the profiling in the emulator programer side to provide an informed file which the emulator will use in the home of the emu user (in case you are worried about copyrights issues related with providing modified code from a game). This may be is limited approach of emulation (and I'm not sure that it will be useful with console/computer emulation), but some arcade are that limiteds. And in the final what really has importance (for me in any case) is performance and the more exact emulation possible with the minimun cost (not what MAME is doing for example :P). We want to play them, not to perform huge 'simulations' of the game/hardware emulated ;)). > RaskY > > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 30 16:38:04 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA31825 for dynarec-outgoing; Tue, 30 Jan 2001 16:37:46 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 30 Jan 01 19:25:53 -0500 Message-Id: <3.0.5.32.20010130145248.007ba8b0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 30 Jan 2001 14:52:48 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Fast i960 Instruction Decoding In-Reply-To: <200101300740.IAA11869@pons.ac.upc.es> References: <3.0.5.32.20010129210631.007bed10@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That is a good idea, but rather than creating a new bytecode format >I will directly either to dynarec or to a threaded interpreter >(direct threaded interpreter?). Not for a threaded interpreter, but a "normal" variety of interpreter, as in Genital68K. >The interpreter loop is more or less: > >dvm_t *IR; > > .... > > (*(IR->fn))(); > IR++; > > ... I don't know if a threaded interpreter would be worthwhile in my situation. Speed is the most important factor. >In fact I think I have seen such kind of perprocessing in some of the >last emulators ... SMOG perhaps? It was released as source code because >of lack of time by the programmer (perhaps it was Richard Mitton?). >But I'm not sure now what machine is emulating or what CPU uses (i960 or >perhaps Nec V60). And it is perfectly applicable for ROM based systems. Virtua by Richard Mitton. I haven't examined the CPU core thoroughly. SMOG isn't done yet. Virtua emulates the Model 2 hardware (well, a little bit ;)) which uses the i960... Model 1 uses the NEC V60. >I didn't like this kind of intermediate representation, a decoded structure >for the IR makes sense, but to perform TWO decodes for the transaltion >(from source code to IR and from IR to target code) is waste of time in >my thoughts. I think so, too. If I do a dynarec, I would translate immediately. Since the ROM blocks could be retained, there wouldn't be much of a performance hit. >Timing can be handled with different granularities, from a instruction >by instruction timing (Neil approach for early CPUs) or a block based >timing. The block based can be based in basic blocks, translated blocks, >just pieces of code inside the translated block (for example test timing >in a determinated number of intructions or cycles), or timing by functions >... It depends upon the how precisse must be the timing for the emulated >machine. The usual, easier approach is to calculate the number of cycles >needed for executing the translated block (usually just a basic block >without jumps into itself, for more simplicity) and put a test before or >after the block translation (prolog/epilog) for handle the timing. This >can be expanded to more complex methods. This is something I'll have to look into more carefully. I doubt Model 2 needs accurate timing ;) >BTW, bored of the Genesis? ;)) Kind of ;) I've been working on it for almost a year now. I'd like to devote time to some non-emulation projects. But I might also tackle this project -- if MAME isn't trying already :P Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 30 23:49:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA32143 for dynarec-outgoing; Tue, 30 Jan 2001 23:49:01 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200101310803.JAA20484@pons.ac.upc.es> Subject: Re: DYNAREC: Fast i960 Instruction Decoding In-Reply-To: <3.0.5.32.20010130145248.007ba8b0@mailandnews.com> "from Bart at Jan 30, 2001 02:52:48 pm" To: dynarec@dynarec.com Date: Wed, 31 Jan 2001 09:03:16 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >That is a good idea, but rather than creating a new bytecode format > >I will directly either to dynarec or to a threaded interpreter > >(direct threaded interpreter?). > > Not for a threaded interpreter, but a "normal" variety of interpreter, as > in Genital68K. > I just said that if you are going to change it, change it more than just arrange the bytecode ;). > >The interpreter loop is more or less: > > > >dvm_t *IR; > > > > .... > > > > (*(IR->fn))(); > > IR++; > > > > ... > > I don't know if a threaded interpreter would be worthwhile in my situation. > Speed is the most important factor. > Well, 'theorycally' a threaded interpreter is faster than a normal interpreter. In the best case where you can use a table to decode opcodes (Z80 or even 68K) into jump address to the rutines which emulate the instructions you are doing two access to perform de decoding: read the opcode from the main memory and read the jump table. With a threaded interpreter you just have perform an access: use the PC to index the table of decoded/threaded instructions. In any case, the kind of modification you told about is useful too because that way the decoding could be easily performed like in a 8-bit/16-bit CPU emulator. > >BTW, bored of the Genesis? ;)) > > Kind of ;) I've been working on it for almost a year now. I'd like to > devote time to some non-emulation projects. But I might also tackle this > project -- if MAME isn't trying already :P > > In any case MAME would need a P4 at 4 GHz and Geforce 4 to run that machine at full speed, so ... ;)) I think MAME doesn't want to get involved into 3D machines yet. > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 30 23:53:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA32159 for dynarec-outgoing; Tue, 30 Jan 2001 23:53:29 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200101310807.JAA27653@pons.ac.upc.es> Subject: Re: DYNAREC: Fast i960 Instruction Decoding In-Reply-To: <3.0.5.32.20010130145248.007ba8b0@mailandnews.com> "from Bart at Jan 30, 2001 02:52:48 pm" To: dynarec@dynarec.com Date: Wed, 31 Jan 2001 09:07:41 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >BTW, bored of the Genesis? ;)) > > Kind of ;) I've been working on it for almost a year now. I'd like to > devote time to some non-emulation projects. But I might also tackle this > project -- if MAME isn't trying already :P > > BTW, did someone noticed that you released some Mega CD related code? ;)) ... I'm also begining to be bored with my university project and I would want to be free to emulate something more interesting :P. > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 31 18:03:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA33175 for dynarec-outgoing; Wed, 31 Jan 2001 18:03:16 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 31 Jan 01 19:34:38 -0500 Message-Id: <3.0.5.32.20010131134743.007c8a80@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 31 Jan 2001 13:47:43 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Fast i960 Instruction Decoding In-Reply-To: <200101310803.JAA20484@pons.ac.upc.es> References: <3.0.5.32.20010130145248.007ba8b0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well, 'theorycally' a threaded interpreter is faster than a >normal interpreter. In the best case where you can use a table >to decode opcodes (Z80 or even 68K) into jump address to the >rutines which emulate the instructions you are doing two access >to perform de decoding: read the opcode from the main memory and >read the jump table. With a threaded interpreter you just have >perform an access: use the PC to index the table of decoded/threaded >instructions. I see, in C it sounds like I couldn't do it that way... unless I used those non-portable goto pointer extensions or something ;) I was thinking about it, and I believe a threaded interpreter might be best for C, just for the sake of simplicity. >In any case MAME would need a P4 at 4 GHz and Geforce 4 to >run that machine at full speed, so ... ;)) Probably more ;) >I think MAME doesn't want to get involved into 3D machines yet. They emulate Hard Drivin' and Stun Runner. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jan 31 20:42:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA33295 for dynarec-outgoing; Wed, 31 Jan 2001 20:42:27 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 31 Jan 01 19:45:32 -0500 Message-Id: <3.0.5.32.20010131164055.007c9be0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 31 Jan 2001 16:40:55 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Fast i960 Instruction Decoding In-Reply-To: <200101310807.JAA27653@pons.ac.upc.es> References: <3.0.5.32.20010130145248.007ba8b0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >BTW, did someone noticed that you released some Mega CD related code? ;)) Nope, you're the first one :) >... I'm also begining to be bored with my university project and >I would want to be free to emulate something more interesting :P. The Genesis/Sega CD will be a fun project, and I'll be interested in seeing what you come up with when you get working on it ;) When you need it, get in touch with me and I can send you the Genital v1.X sources. One cool thing is that you already have the PSG emulated, so you'll be able to have some sound going very quickly! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Feb 3 06:46:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA38556 for dynarec-outgoing; Sat, 3 Feb 2001 06:45:35 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Fast i960 Instruction Decoding From: "M.I.K.e" Message-ID: <00037c681d2de8f3_mailit@mail.dynarec.com> References: <3.0.5.32.20010129210631.007bed10@mailandnews.com> Date: Sat, 03 Feb 2001 15:45:38 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Uh, catching up a bit... >This is a bit more on-topic. Recently I've been a bit curious about >emulating the Intel i960 (80960KB) processor. Hmm, which machine uses it? I know that my printer has one, but apart from that... >I think perhaps it might be feasible to "pre-process" the instructions. > One of the formats (called REG) looks like this: >31-24=Opcode >23-19=SRC/DST >18-14=SRC2 >13,12,11=M3,M2,M1 >10-7=Opcode (it's fragmented) >6-5=0,0 >4-0=SRC1 >It could be rearranged as: >Word 0: M3 M2 M1 Byte-Opcode SRC/DST >Word 1: SRC2 SRC1 Well, with a little more space used you could come up with threaded code, meaning you don't store the opcode but the address to the interpreting routine. Otherwise you'll have all the problems of a dynarec (preprocessing a whole block before execution, problems with self-modifying code) yet still have to decode in instruction-like structure. >BTW, how does cycle timing work in a dynarec? I remember looking through >Mike's excellent document, but didn't see a complete explanation on that >particular topic. Erm, yeah I still have some work to do in that field... You'll find the most exact solution in Neil's DMZ80: a register functions as a interrupt countdown and is decreased and tested after each translated instruction. I guess no one wants to do single-cycle emulation with a dynarec... The other extreme would be to notify the emulator of the elapsed cycles after each translated basic block, which I often call the "sloppy method" and it'll cause many problems in timing sensitive systems. This also means that you cannot do intra-looping in translated basic blocks. There are probably unlimited stages in between when you add a check after several translated instructions if an interrupt should occur. Note that only the sloppy method accumulates elapsed cycles while all other methods decrease an interrupt countdown and leave the translated block when the counter becomes zero or negative. >Bart -- M.I.K.e Never count your chickens before they rip your lips off --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Feb 3 06:46:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA38560 for dynarec-outgoing; Sat, 3 Feb 2001 06:45:37 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Fast i960 Instruction Decoding From: "M.I.K.e" Message-ID: <00037c6842cb25ad_mailit@mail.dynarec.com> References: <3.0.5.32.20010129210631.007bed10@mailandnews.com> <3.0.5.32.20010130145248.007ba8b0@mailandnews.com> Date: Sat, 03 Feb 2001 15:56:09 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >This is something I'll have to look into more carefully. I doubt Model 2 >needs accurate timing ;) Apart from the way in which instruction and block timing methods treat the counters there is also a difference in register allocation. When you have block timing you also always have a prologue and epilogue for that block and you only enter and leave the block through these. This means that you can do dynamic register allocation which optimizes the register usage for each specific block. If you have instruction timing you theoretically can enter and leave the block at any arbitrary instruction point, so you'll have to use static register allocation for that case since I haven't figured how to dynamic register allocation then without memory wast because you'd need an prologue and epilogue for each single translated instruction. >Bart -- M.I.K.e World War Three can be averted by adherence to a strictly enforced dress code! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Feb 3 07:24:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA38612 for dynarec-outgoing; Sat, 3 Feb 2001 07:24:02 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003e01c08df7$1faddb60$7c5afea9@daves> From: "David Sharp" To: References: <3.0.5.32.20010129210631.007bed10@mailandnews.com> <00037c681d2de8f3_mailit@mail.dynarec.com> Subject: DYNAREC: ARM dynarec (eventually) continued... Date: Sat, 3 Feb 2001 15:36:47 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well, with a little more space used you could come up with threaded code, > meaning you don't store the opcode but the address to the interpreting > routine. Otherwise you'll have all the problems of a dynarec (preprocessing a > whole block before execution, problems with self-modifying code) yet still > have to decode in instruction-like structure. How does a threaded interpreter not have the same problems as a dynarec, i.e. self-modifying code? I only ask as I'm planning to use a threaded intepreter to test the compatability of my intermediate representation and hammer out all the problems before I attempt translating to x86 for speed. I've had a massive break through with my ARM interpreter this morning so that when it's plugged into Red Squirrel (an emulator for the Acorn Archimedes) it gets to the RISC OS desktop. This is no big deal in itself as RS already has an interpreter, however it does mean that I can now move onto a dispatching hash table and basic block identifying algorithm later today. Tomorrow I'm going to lay down my intermediate representation, probably similar to Julian's phetacode (why reinvent the wheel?) but with explicit instructions for flags/prefetch/processor modes/exceptions etc. etc. 3 things you guys can do for me if you're bored (and it is Sunday tomorrow): 1) I'd be interested if anyone can suggest a particularly good hashing function for 32 bit unsigned ints where the values will be spread across the whole range but will be clustered together where they occur. 2) How to do fastest memory allocation in MSVC++ to store the IR and eventually generated x86 code, what's the best way, new unit32[bufferSize] ? 3) A decent (cache-style) least-recently-used algorithm implementation that can be done quickly in software so that I can limit the recompiled code's buffer size. I couold just use if(size>threshold) dump cache; but that's not very nice. If anyone's interested there's the screenshots and project diary at http://www.dcs.warwick.ac.uk/~csuix/project/ Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Feb 3 08:45:04 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA38681 for dynarec-outgoing; Sat, 3 Feb 2001 08:45:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: ARM dynarec (eventually) continued... From: "M.I.K.e" Message-ID: <00037c6a06e2acdf_mailit@mail.dynarec.com> References: <3.0.5.32.20010129210631.007bed10@mailandnews.com> <00037c681d2de8f3_mailit@mail.dynarec.com> <003e01c08df7$1faddb60$7c5afea9@daves> Date: Sat, 03 Feb 2001 18:02:34 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >How does a threaded interpreter not have the same problems as a dynarec, >i.e. self-modifying code? The one and only advantage of threaded code is that it's portable if you do it in a high-level language. Otherwise it has just the same problems as a dynarec. >I've had a massive break through with my ARM interpreter this morning so >that when it's plugged into Red Squirrel (an emulator for the Acorn >Archimedes) it gets to the RISC OS desktop. This is no big deal in itself as >RS already has an interpreter, however it does mean that I can now move onto >a dispatching hash table and basic block identifying algorithm later today. Congrats! >Tomorrow I'm going to lay down my intermediate representation, probably >similar to Julian's phetacode (why reinvent the wheel?) but with explicit >instructions for flags/prefetch/processor modes/exceptions etc. etc. Sound interesting. >3 things you guys can do for me if you're bored (and it is Sunday tomorrow): I feel slightly enslaved ;-) >1) I'd be interested if anyone can suggest a particularly good hashing >function for 32 bit unsigned ints where the values will be spread across the >whole range but will be clustered together where they occur. Sorry, hashes isn't really my field of expertise... >2) How to do fastest memory allocation in MSVC++ to store the IR and >eventually generated x86 code, what's the best way, new unit32[bufferSize] ? ...this neither... >3) A decent (cache-style) least-recently-used algorithm implementation that >can be done quickly in software so that I can limit the recompiled code's >buffer size. I once wrote a small second-chance algorithm which was thought for dynamic register allocation, I hope it actually works because I never compiled it... HardReg reserve_register() { int temp; second_chance: if(HardRegs[reg_clock].ref == 0) /* LRU */ { free_register(reg_clock); HardRegs[reg_clock].holds = Temp; set_ref(reg_clock); } else /* second chance algorithm */ { if (HardRegs[reg_clock].holds >= 0) /* cached register*/ HardRegs[reg_clock].ref = 0; /* give it a second chance */ reg_clock++; if (reg_clock == MAXHARDREG) /* cycle */ reg_clock = 0; goto second_chance; } temp = reg_clock++; if (reg_clock == MAXHARDREG) /* cycle */ reg_clock = 0; return temp; } >Dave -- M.I.K.e This will be a memorable month -- no matter how hard you try to forget it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Feb 3 09:11:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA38717 for dynarec-outgoing; Sat, 3 Feb 2001 09:11:34 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00a201c08e06$25c9bd20$7c5afea9@daves> From: "David Sharp" To: References: <3.0.5.32.20010129210631.007bed10@mailandnews.com> <00037c681d2de8f3_mailit@mail.dynarec.com> <003e01c08df7$1faddb60$7c5afea9@daves> <00037c6a06e2acdf_mailit@mail.dynarec.com> Subject: Re: DYNAREC: ARM dynarec (eventually) continued... Date: Sat, 3 Feb 2001 17:24:20 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The one and only advantage of threaded code is that it's portable if you do > it in a high-level language. Otherwise it has just the same problems as a > dynarec. Oh right, sorry I thought you were trying to say that TI's don't have the problems of DR's and couldn't see how - I can see a shitload of problems! :o) > Congrats! Thanks. > I feel slightly enslaved ;-) Mike, you know for years now I've always called on you when I can't think of something immediately! :o) > Sorry, hashes isn't really my field of expertise... Fair comment. I've got some books... > I once wrote a small second-chance algorithm which was thought for dynamic > register allocation, I hope it actually works because I never compiled it... Thanks, I'll take a peak. I'm going to work on the dynamics of code allocation/deallocation tomorrow. BTW, has anyone got any idea where I can get the Killer Instinct arcade ROMs and Hard disk image from? Sorry to be so lame but I thought I'd reward myself with some impressive emulation gaming but can't find them anywhere??? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Feb 3 10:05:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA38776 for dynarec-outgoing; Sat, 3 Feb 2001 10:05:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002f01c08e0d$fa6647e0$8275393e@menta.net> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20010129210631.007bed10@mailandnews.com> <00037c681d2de8f3_mailit@mail.dynarec.com> <003e01c08df7$1faddb60$7c5afea9@daves> Subject: Re: DYNAREC: ARM dynarec (eventually) continued... Date: Sat, 3 Feb 2001 19:20:24 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > 1) I'd be interested if anyone can suggest a particularly good hashing > function for 32 bit unsigned ints where the values will be spread across the > whole range but will be clustered together where they occur. > :P I think I really hate hash functions, my answer use to be: a module with a prime number or somethink like that ;)). > 2) How to do fastest memory allocation in MSVC++ to store the IR and > eventually generated x86 code, what's the best way, new unit32[bufferSize] ? > If you want to be really fast why don't allocate everything at startup? And handle the memory buffer with your own functions. > 3) A decent (cache-style) least-recently-used algorithm implementation that > can be done quickly in software so that I can limit the recompiled code's > buffer size. I couold just use if(size>threshold) dump cache; but that's not > very nice. > I don't like translation cache flushes ... Do you really need that? > Cheers > Dave > Victor As usual so useless :))). --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Feb 3 11:15:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA38837 for dynarec-outgoing; Sat, 3 Feb 2001 11:15:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 3 Feb 2001 11:28:07 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: I'm pleased to announce... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Erin Michelle Bradley - Born 4:04PM yesterday (2/2). Mom & baby are doing excellent! Dad still wigging out... ;-) A photo is available at (and more on the way once Val gets around to doing the web site for her stuff): http://www.synthcom.com/~neil/Erin.jpg Consequently my next few days will be frazzled as expected, but I'm so happy she's healthy and here! I witnessed the birth first hand and heard her first cry. Wow. There is *NO* experience like it! -->Neil ------------------------------------------------------------------------------- Neil Bradley Torture is being forced to listen to a Kenny G., Yanni, Synthcom Systems, Inc. Philip Glass, and John Tesh collaboration. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Feb 3 11:58:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA38876 for dynarec-outgoing; Sat, 3 Feb 2001 11:58:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 03 Feb 2001 21:05:28 +0100 From: Mario Rodriguez To: dynarec@dynarec.com Subject: Re: DYNAREC: I'm pleased to announce... In-Reply-To: References: Message-Id: <3A7C64883C.A543RLYEH@correo.menorca.net> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Mailer: Becky! ver 1.25.07 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com congratulations neil :) i wish you happy years! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Feb 3 13:40:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA38969 for dynarec-outgoing; Sat, 3 Feb 2001 13:40:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: I'm pleased to announce... From: "M.I.K.e" Message-ID: <00037c6e11645947_mailit@mail.dynarec.com> References: Date: Sat, 03 Feb 2001 22:51:50 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com That's spooky; just a few hours ago I thought of asking when the great moment was going to happen ;-) >Erin Michelle Bradley - Born 4:04PM yesterday (2/2). Mom & baby are doing >excellent! Dad still wigging out... ;-) Congratulations to the proud father and to the mother who had all the work in the end ;-) >Consequently my next few days will be frazzled as expected, but I'm so >happy she's healthy and here! I witnessed the birth first hand and heard >her first cry. Wow. There is *NO* experience like it! I bet I have no idea what you are talking about, but I certainly can understand if you step a little shorter now. Best whishes to you and your growing family! >-->Neil -- M.I.K.e 7:30, Channel 5: The Bionic Dog (Action/Adventure) The Bionic Dog gets a hormonal short-circuit and violates the Mann Act with an interstate Greyhound bus. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Feb 4 00:03:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA39420 for dynarec-outgoing; Sun, 4 Feb 2001 00:02:50 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002f01c08e82$eb90c540$8275393e@menta.net> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: I'm pleased to announce... Date: Sun, 4 Feb 2001 09:17:30 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Erin Michelle Bradley - Born 4:04PM yesterday (2/2). Mom & baby are doing > excellent! Dad still wigging out... ;-) A photo is available at (and more > on the way once Val gets around to doing the web site for her stuff): > Congratulations :). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Feb 4 06:29:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA39892 for dynarec-outgoing; Sun, 4 Feb 2001 06:29:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: julesb@btinternet.com To: dynarec@dynarec.com Date: Sun, 4 Feb 2001 14:40:22 GMT Subject: Re: DYNAREC: ARM dynarec (eventually) continued... Message-id: <3a7d69d6.56fe.0@btinternet.com> X-User-Info: 195.40.196.44 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Saturday 03 February 2001 15:36, you wrote: > > I've had a massive break through with my ARM interpreter this morning so > that when it's plugged into Red Squirrel (an emulator for the Acorn > Archimedes) it gets to the RISC OS desktop. Wow, well done! I've been struggling to understand what's going on in the RISC OS (3.7) power-on self-test, which my interpreter now goes into an infinite loop somewhere in the middle of. Probably unsurprising, since none of the hardware other than the processor is there. Does anyone have any experience building ARM gcc cross-compiler toolchains under Linux by the way? I know about Chris Rutter's guide, but things have broken with later releases of gcc/glibc, it seems. > 3 things you guys can do for me if you're bored (and it is Sunday > tomorrow): Hey, I'm *always* bored on Sundays! > 1) I'd be interested if anyone can suggest a particularly good hashing > function for 32 bit unsigned ints where the values will be spread across > the whole range but will be clustered together where they occur. You could try doing something like: #define HASHFN(K,S) (((K)*17011)&((S)-1)) where K is your key, S is a power of 2 (the size of your table), and '17011' is a prime number. This avoids doing a division/modulus operation, but I don't know if it's actually any good at distributing values over the given range. I think it should be OK though. > 3) A decent (cache-style) least-recently-used algorithm implementation that > can be done quickly in software so that I can limit the recompiled code's > buffer size. I couold just use if(size>threshold) dump cache; but that's > not very nice. You could use a priority queue with a timestamp as the priority, perhaps. The level of complexity is probably overkill, but the people marking the project would love it... just don't ask me to explain how they're supposed to work ;-) (an algorithms book would do it much better anyway). I suggested using a circular fixed-size buffer cache in my dissertation I think, so rather than flushing the entire cache when it's full just continuing from the start of the buffer, 'unlinking' code as it's overwritten. This would get complicated if blocks of code had any interdependencies though. > If anyone's interested there's the screenshots and project diary at > http://www.dcs.warwick.ac.uk/~csuix/project/ Keep it up! Jules (sorry if the quoting is broken) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Feb 4 06:31:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA39906 for dynarec-outgoing; Sun, 4 Feb 2001 06:31:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: julesb@btinternet.com To: dynarec@dynarec.com Date: Sun, 4 Feb 2001 14:42:30 GMT Subject: Re: DYNAREC: I'm pleased to announce... Message-id: <3a7d6a56.5a48.0@btinternet.com> X-User-Info: 195.40.196.44 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Saturday 03 February 2001 19:28, you wrote: > Erin Michelle Bradley - Born 4:04PM yesterday (2/2). Mom & baby are doing > excellent! Dad still wigging out... ;-) A photo is available at (and more > on the way once Val gets around to doing the web site for her stuff): > > http://www.synthcom.com/~neil/Erin.jpg > > Consequently my next few days will be frazzled as expected, but I'm so > happy she's healthy and here! I witnessed the birth first hand and heard > her first cry. Wow. There is *NO* experience like it! Congratulations Neil! Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Feb 4 07:26:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA39968 for dynarec-outgoing; Sun, 4 Feb 2001 07:26:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004f01c08ec0$71ff5dc0$4a299fd4@laptop> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: I'm pleased to announce... Date: Sun, 4 Feb 2001 15:36:01 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Erin Michelle Bradley - Born 4:04PM yesterday (2/2). Mom & baby are doing > excellent! Dad still wigging out... ;-) A photo is available at (and more > on the way once Val gets around to doing the web site for her stuff): > > http://www.synthcom.com/~neil/Erin.jpg Congrats, man. Looks like you've got a beautiful baby daughter! > Consequently my next few days will be frazzled as expected, but I'm so > happy she's healthy and here! I witnessed the birth first hand and heard > her first cry. Wow. There is *NO* experience like it! Glad to hear it! Are mother and daughter (and your good self) okay now? :) Neil. PS Looking for a site for sleeping pills right now for you... ;) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Feb 4 07:30:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA39985 for dynarec-outgoing; Sun, 4 Feb 2001 07:30:19 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005001c08ec0$f799f120$4a299fd4@laptop> From: "Neil Griffiths" To: References: <3.0.5.32.20010129210631.007bed10@mailandnews.com> <00037c681d2de8f3_mailit@mail.dynarec.com> <003e01c08df7$1faddb60$7c5afea9@daves> Subject: Re: DYNAREC: ARM dynarec (eventually) continued... Date: Sun, 4 Feb 2001 15:40:32 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I've had a massive break through with my ARM interpreter this morning so > that when it's plugged into Red Squirrel (an emulator for the Acorn > Archimedes) it gets to the RISC OS desktop. This is no big deal in itself as > RS already has an interpreter, however it does mean that I can now move onto > a dispatching hash table and basic block identifying algorithm later today. > Tomorrow I'm going to lay down my intermediate representation, probably > similar to Julian's phetacode (why reinvent the wheel?) but with explicit > instructions for flags/prefetch/processor modes/exceptions etc. etc. Good news! Hope you get it working well! :) > 3 things you guys can do for me if you're bored (and it is Sunday tomorrow): > > 1) I'd be interested if anyone can suggest a particularly good hashing > function for 32 bit unsigned ints where the values will be spread across the > whole range but will be clustered together where they occur. I've got some good hashing functions - not sure if they'll be much good to you. If you're interested I'll take a look for you... > 2) How to do fastest memory allocation in MSVC++ to store the IR and > eventually generated x86 code, what's the best way, new unit32[bufferSize] ? Why bother about speeed - can't you (as Victor already suggested) create a table at startup? Although, thinking about it, perhaps you can't - you don't know what size you'd need. The cheaters way is to see the most amount of bytes per original opcode you'd create and multiply that by the memory of the machine - and do it that way. But that's crap. Fast, but crap. Hmm. Write your own function - malloc() is usually crap! Having said that, MSVC has some really good optimisations and maybe it isn't - I haven't ever looked at the output code... > 3) A decent (cache-style) least-recently-used algorithm implementation that > can be done quickly in software so that I can limit the recompiled code's > buffer size. I couold just use if(size>threshold) dump cache; but that's not > very nice. Mike has a possible solution, I'd advise trying it. And on with my very own project now... :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Feb 4 08:23:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA40043 for dynarec-outgoing; Sun, 4 Feb 2001 08:23:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001801c08ec7$d261ba30$b32bfea9@daves> From: "David Sharp" To: References: <3a7d69d6.56fe.0@btinternet.com> Subject: Re: DYNAREC: ARM dynarec (eventually) continued... Date: Sun, 4 Feb 2001 16:30:43 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Wow, well done! I've been struggling to understand what's going > on in the RISC OS (3.7) power-on self-test, which my interpreter > now goes into an infinite loop somewhere in the middle of. > Probably unsurprising, since none of the hardware other than the > processor is there. Thanks. I've spent the last 3 weeks staring at a pink/blue/black display and comparing 30 meg trace dumps looking for differences between my interpreter and red squirrel's. POST does really nasty stuff to the hardware so if you've not implemented anything else other than the processor you'll get nowhere. I'm considering doing the Edwin Dorr SWI-faking-and-loading-BASIC method for debugging the rest of it. BASIC works ok-ish in RISC OS but there are still major issues that will be a real sod to find now that non-determinism's creeping in (i.e. no two runs are the same). > Does anyone have any experience building ARM gcc cross-compiler > toolchains under Linux by the way? I know about Chris Rutter's > guide, but things have broken with later releases of gcc/glibc, > it seems. Sorry, not a clue. What do you want it for anyway, other than the obvious? > Hey, I'm *always* bored on Sundays! :o) > #define HASHFN(K,S) (((K)*17011)&((S)-1)) > where K is your key, S is a power of 2 (the size of your table), > and '17011' is a prime number. This avoids doing a > division/modulus operation, but I don't know if it's actually > any good at distributing values over the given range. I think it > should be OK though. Thanks. I asked my algorithms lecturer for suggestions given the requirements, she pointed me in the direction of universal hashing algorithms which all seem too slow for my purposes. Then again, if hash function collisions are reduced then every branch gets sped up... > You could use a priority queue with a timestamp as the priority, > perhaps. The level of complexity is probably overkill, but the > people marking the project would love it... just don't ask me to > explain how they're supposed to work ;-) (an algorithms book > would do it much better anyway). Ok cheers, I'll take a look at my mother of all algorithms books (Cormen, Leiserson and Rivest), if any one knows of any good books/URLs describing priority queues I'd appreciate it, CLR is notoriously heavy going. > I suggested using a circular fixed-size buffer cache in my > dissertation I think, so rather than flushing the entire cache > when it's full just continuing from the start of the buffer, > 'unlinking' code as it's overwritten. This would get complicated > if blocks of code had any interdependencies though. I'm planning to keep dependencies down by not chaining blocks together. Yes this does mean an extra epliogue and prologue (to a block) which could be avoided, but if I ever try and run RISC OS I expect block replacement to be fairly common. Circular buffers would probably do it but if I can do a cheap LRU that'd be real nice! > Keep it up! Will try my best. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Feb 4 08:32:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA40063 for dynarec-outgoing; Sun, 4 Feb 2001 08:32:10 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001f01c08ec9$1ee32ff0$b32bfea9@daves> From: "David Sharp" To: References: <3.0.5.32.20010129210631.007bed10@mailandnews.com> <00037c681d2de8f3_mailit@mail.dynarec.com> <003e01c08df7$1faddb60$7c5afea9@daves> <005001c08ec0$f799f120$4a299fd4@laptop> Subject: Re: DYNAREC: ARM dynarec (eventually) continued... Date: Sun, 4 Feb 2001 16:40:01 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Good news! Hope you get it working well! :) Thanks. > I've got some good hashing functions - not sure if they'll be much good to > you. If you're interested I'll take a look for you... I wouldn't mind! I'm vaguely curious as to how just taking the bottom few bits and top few bits of the address would perform... > Why bother about speeed - can't you (as Victor already suggested) create a > table at startup? Although, thinking about it, perhaps you can't - you don't > know what size you'd need. The cheaters way is to see the most amount of > bytes per original opcode you'd create and multiply that by the memory of > the machine - and do it that way. But that's crap. Fast, but crap. Hmm. > Write your own function - malloc() is usually crap! Having said that, MSVC > has some really good optimisations and maybe it isn't - I haven't ever > looked at the output code... Hmmm, not sure I like the idea of just declaring the biggest block of memory I can think of. I don't think it'd work either since there'll be overlap between blocks of code so theoretically it could go over that 'largest opcode' * 'available memory' allocation. The profiler will know the number of instructions in the block to be recompiled, this could be multiplied by the largest instruction + start/end block and so that can be used to dynamically allocate enough memory. I take it new uint32[buffer] is the best then? NB? JB? > And on with my very own project now... :o Good luck! Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Feb 4 13:20:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA40347 for dynarec-outgoing; Sun, 4 Feb 2001 13:19:57 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 4 Feb 01 16:30:40 -0500 Message-Id: <3.0.5.32.20010204132743.007bed60@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 04 Feb 2001 13:27:43 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: I'm pleased to announce... In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 11:28 AM 2/3/2001 -0800, you wrote: >Erin Michelle Bradley - Born 4:04PM yesterday (2/2). Mom & baby are doing >excellent! Dad still wigging out... ;-) A photo is available at (and more >on the way once Val gets around to doing the web site for her stuff): > >http://www.synthcom.com/~neil/Erin.jpg > >Consequently my next few days will be frazzled as expected, but I'm so >happy she's healthy and here! I witnessed the birth first hand and heard >her first cry. Wow. There is *NO* experience like it! Awesome! Congratulations Neil! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Feb 4 13:24:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA40363 for dynarec-outgoing; Sun, 4 Feb 2001 13:24:57 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 4 Feb 01 16:35:53 -0500 Message-Id: <3.0.5.32.20010204133238.007bf680@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 04 Feb 2001 13:32:38 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Z80 opcode clarification Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I've just completed a Z80 disassembler, but I have found a few inconsistencies between my documentation and the Psy-Q Z80 assembler I used to test stuff out with. 1. Is the opcode for OTDR 0xED 0xBB? Psy-Q generates 0xED 0x8B or something like that. 2. Is the opcode for JR ss,e 0x18 or 0x30? Psy-Q thinks it's the latter. The difference is a simple shift of the bits, so it could be a simple mistake made either by the author of my document, or the assembler's developers. 3. The assembler doesn't support "SLL", but I'm assuming this is a real instruction... 4. It doesn't recognize instructions like: "LD r,RLC (IX+d)", "LD r,SET b,(IY+d)", etc. I also assume these are real instructions. Any information on how I could get these problems resolved would be much appreciated. I haven't worked with the Z80 at all, except for plugging Z80 emulators into Genital ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Feb 4 17:23:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA40587 for dynarec-outgoing; Sun, 4 Feb 2001 17:23:05 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 05 Feb 2001 02:30:30 +0100 From: Mario Rodriguez To: dynarec@dynarec.com Subject: Re: DYNAREC: Z80 opcode clarification In-Reply-To: <3.0.5.32.20010204133238.007bf680@mailandnews.com> References: <3.0.5.32.20010204133238.007bf680@mailandnews.com> Message-Id: <3A7E0236BE.D3DBRLYEH@correo.menorca.net> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Mailer: Becky! ver 1.25.07 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com hi, im in the development of a dynrec emulator for z80 and other systems... i'll help you all i'll be able to... 1) yes, its 0xED 0xBB. i didnt know that 0xed 0x8b existed, but surely that's true. z80 have many duplicated opcodes which means the same mnemonic. 2) there are not the same, here you have: 30+8bitsoffset 12 ticks if jmp/7 if not $jr nc,pc that's mean if nc mov pc,offset 18+8bitsoffset 12 ticks $jr pc that's mean mov pc,X 3) yes, it's a hidden instruction, the half of the instruction set of Z80 are hidden instructions. SLL: cb30 8 ???0?p0? shl b 1 $sll b cb31 8 ???0?p0? shl c 1 $sll c cb32 8 ???0?p0? shl d 1 $sll d cb33 8 ???0?p0? shl e 1 $sll e cb34 8 ???0?p0? shl h 1 $sll h cb35 8 ???0?p0? shl l 1 $sll l cb36 15 ???0?p0? shl [hl] 1 $sll (hl) cb37 8 ???0?p0? shl a 1 $sll a 4) really there is not an instruction, it's a hidden instruction which mixes two of them into a single one... i suppose it's a z80 core bug. ------- I guess that you have not many technical info about z80, if you want, i'll send you some of that which i gathered around the web rlyeh / coder of emulNation --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Feb 4 21:03:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA00207 for dynarec-outgoing; Sun, 4 Feb 2001 21:03:20 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 5 Feb 01 00:12:49 -0500 Message-Id: <3.0.5.32.20010204210720.007be740@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 04 Feb 2001 21:07:20 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Z80 opcode clarification In-Reply-To: <3A7E0236BE.D3DBRLYEH@correo.menorca.net> References: <3.0.5.32.20010204133238.007bf680@mailandnews.com> <3.0.5.32.20010204133238.007bf680@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >2) there are not the same, here you have: > >30+8bitsoffset 12 ticks if jmp/7 if not $jr nc,pc >that's mean if nc mov pc,offset > >18+8bitsoffset 12 ticks $jr pc >that's mean mov pc,X I'm not sure what you mean. If the opcode is 0x18, it _is_ JR, correct? But what is this about opcode 0x30? There is a "JR s,e" instruction, where "s" is the condition (111=C,110=NC,101=Z,100=NZ) and "e" is the displacement. Its format is: 00ss s000 eeee eeee Could you describe opcode 0x30 more? My documentation does not list it. >I guess that you have not many technical info about z80, if you want, >i'll send you some of that which i gathered around the web Thanks, but I don't need it at the moment. I'm not planning on emulating the Z80, I just wanted to get a usable disassembler going :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Feb 4 22:33:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA00280 for dynarec-outgoing; Sun, 4 Feb 2001 22:33:42 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 4 Feb 2001 22:45:09 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Z80 opcode clarification In-Reply-To: <3.0.5.32.20010204133238.007bf680@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've just completed a Z80 disassembler, but I have found a few > inconsistencies between my documentation and the Psy-Q Z80 assembler I used > to test stuff out with. How come you just didn't use the Z80 disassembler in the old DRMZ80? > 1. Is the opcode for OTDR 0xED 0xBB? Psy-Q generates 0xED 0x8B or something > like that. They're undocumented opcodes... I think this has been answered. > 2. Is the opcode for JR ss,e 0x18 or 0x30? Psy-Q thinks it's the latter. > The difference is a simple shift of the bits, so it could be a simple > mistake made either by the author of my document, or the assembler's > developers. 0x30 = JR NC, e 0x18 = JR e (no condition) > 3. The assembler doesn't support "SLL", but I'm assuming this is a real > instruction... It's identical to RL, and it'd be silly to use it because it takes so much longer. > 4. It doesn't recognize instructions like: "LD r,RLC (IX+d)", "LD r,SET > b,(IY+d)", etc. I also assume these are real instructions. Sorta. They're "undocumented", meaning they are an accident that they work at all, but aren't official instructions. -->Neil ------------------------------------------------------------------------------- Neil Bradley Torture is being forced to listen to a Kenny G., Yanni, Synthcom Systems, Inc. Philip Glass, and John Tesh collaboration. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Feb 5 08:42:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA00943 for dynarec-outgoing; Mon, 5 Feb 2001 08:40:46 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-Originating-IP: [192.9.51.3] From: "Fred Weigel" To: dynarec@dynarec.com Subject: Re: DYNAREC: Z80 opcode clarification Date: Mon, 05 Feb 2001 11:50:19 -0500 Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 05 Feb 2001 16:50:19.0313 (UTC) FILETIME=[B9001A10:01C08F93] Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com 0x30 = 0011 0000 00ss s000 s = 110 (NC) so, 0x30 is "jr nc" ----Original Message Follows---- From: Bart Reply-To: dynarec@dynarec.com To: dynarec@dynarec.com Subject: Re: DYNAREC: Z80 opcode clarification Date: Sun, 04 Feb 2001 21:07:20 -0800 >2) there are not the same, here you have: > >30+8bitsoffset 12 ticks if jmp/7 if not $jr nc,pc >that's mean if nc mov pc,offset > >18+8bitsoffset 12 ticks $jr pc >that's mean mov pc,X I'm not sure what you mean. If the opcode is 0x18, it _is_ JR, correct? But what is this about opcode 0x30? There is a "JR s,e" instruction, where "s" is the condition (111=C,110=NC,101=Z,100=NZ) and "e" is the displacement. Its format is: 00ss s000 eeee eeee Could you describe opcode 0x30 more? My documentation does not list it. >I guess that you have not many technical info about z80, if you want, >i'll send you some of that which i gathered around the web Thanks, but I don't need it at the moment. I'm not planning on emulating the Z80, I just wanted to get a usable disassembler going :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Feb 5 14:40:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA01211 for dynarec-outgoing; Mon, 5 Feb 2001 14:39:59 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Giovanni Bajo" To: Subject: Re: DYNAREC: Z80 opcode clarification Date: Mon, 5 Feb 2001 23:47:39 +0100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 In-Reply-To: <3.0.5.32.20010204133238.007bf680@mailandnews.com> Importance: Normal X-MDaemon-Deliver-To: dynarec@dynarec.com Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Bart, > Hello, > > I've just completed a Z80 disassembler, but I have found a few > inconsistencies between my documentation and the Psy-Q Z80 > assembler I used > to test stuff out with. > > 1. Is the opcode for OTDR 0xED 0xBB? Psy-Q generates 0xED 0x8B or > something > like that. > 2. Is the opcode for JR ss,e 0x18 or 0x30? Psy-Q thinks it's the latter. > The difference is a simple shift of the bits, so it could be a simple > mistake made either by the author of my document, or the assembler's > developers. > 3. The assembler doesn't support "SLL", but I'm assuming this is a real > instruction... > 4. It doesn't recognize instructions like: "LD r,RLC (IX+d)", "LD r,SET > b,(IY+d)", etc. I also assume these are real instructions. > > Any information on how I could get these problems resolved would be much > appreciated. I haven't worked with the Z80 at all, except for plugging Z80 > emulators into Genital ;) > I suggest you to give a look to http://www.msxnet.org/tech/, where you can find some Z80 docs like "Undocumented features" that you may like. RaskY --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Feb 5 21:36:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA01518 for dynarec-outgoing; Mon, 5 Feb 2001 21:36:43 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 6 Feb 01 00:45:38 -0500 Message-Id: <3.0.5.32.20010205214245.007bfa80@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 05 Feb 2001 21:42:45 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Z80 opcode clarification In-Reply-To: References: <3.0.5.32.20010204133238.007bf680@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >How come you just didn't use the Z80 disassembler in the old DRMZ80? I don't have DRMZ80... I also wanted to do it myself because I want as much of Genital to be mine as possible. >0x30 = JR NC, e >0x18 = JR e (no condition) Oops, 0x30 is a JR ss,e form instruction. I should have seen this earlier. Thanks to everyone who pointed it out! Psy-Q is definitely generating the wrong opcode for the unconditional JR instruction... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 12:08:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14826 for dynarec-outgoing; Wed, 14 Feb 2001 12:08:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009701c096c2$e3082ec0$b32bfea9@daves> From: "David Sharp" To: References: <000701c05d6c$92664180$6340ae3e@hal9000> <000701c05e1a$9f152e60$dc43ae3e@hal9000> <007801c05e31$6c4d7d40$01c93c9f@daves> <002501c05e37$0d2ae0e0$0141ae3e@hal9000> Subject: DYNAREC: calling dynamically generated code Date: Wed, 14 Feb 2001 20:09:41 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Playing around with my intermediate representation generation (backpatching's going to be a pain) but want to look into the future at x86 issues. The big issue is, how do I call dynamically generated code from MS VC++. I know from ARMphetamine that Julian did it like this in GCC asm("pushl %%ebp\n\t" \ "movl %0,%%ebp\n\t" \ "call *%1\n\t" \ "popl %%ebp" : /* no outputs */ : "a" (reg), "b" (code->base) : "cx", "dx", "si", "di" Which I believe (from past experience with GCC) passes the address of (code->base) the machine code in as %1 and the address of the register file (reg) in as %0, sticks EBP on the stack, sets up reg in EBP, calls the code->base and then pops the previous EBP back off the stack before returning to C. Restoring cx,dx etc. to their undisturbed state. So, how to do this in MSVC++ v6? I'm not quite sure what kind of asm the above statement generates, IIRC GCC sticks lots of implicit stuff either side of the asm call which would probably be push cx,dx,si,di etc. and pop them out the other side, if so then I can probably explicitly code this myself. Suggestions, with example code please :o) are welcome! Cheers Dave PS: for those of you who know Acorns, despite the fact that filer windows are still broken (I've not even tried to improve the interpreter) I managed to use *filer_run from the CLI to load !Draw - lovely Bezier curves in my project presentation!!!! :o) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 12:41:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14860 for dynarec-outgoing; Wed, 14 Feb 2001 12:41:20 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 14 Feb 2001 12:55:19 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: calling dynamically generated code In-Reply-To: <009701c096c2$e3082ec0$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Playing around with my intermediate representation generation > (backpatching's going to be a pain) but want to look into the future at x86 > issues. The big issue is, how do I call dynamically generated code from MS > VC++. Wow... this is what I call the "hard way" of doing it: > asm("pushl %%ebp\n\t" \ > "movl %0,%%ebp\n\t" \ > "call *%1\n\t" \ > "popl %%ebp" > : /* no outputs */ > : "a" (reg), "b" (code->base) > : "cx", "dx", "si", "di" Why not do.... void (*Procedure)(void) = (void *) targetAddress; And doing: Procedure(); -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 13:14:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA14893 for dynarec-outgoing; Wed, 14 Feb 2001 13:13:59 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: calling dynamically generated code From: "M.I.K.e" Message-ID: <00037d4b13ffc8ab_mailit@mail.dynarec.com> References: Date: Wed, 14 Feb 2001 22:32:21 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Mail-It_--335000660" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --Mail-It_--335000660 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit >Wow... this is what I call the "hard way" of doing it: >> asm("pushl %%ebp\n\t" \ >> "movl %0,%%ebp\n\t" \ >> "call *%1\n\t" \ >> "popl %%ebp" >> : /* no outputs */ >> : "a" (reg), "b" (code->base) >> : "cx", "dx", "si", "di" That's what I told Jules when I found that in his ARMphetamine documentation... >Why not do.... > void (*Procedure)(void) = (void *) targetAddress; >And doing: > Procedure(); Taken from the DRFAQ: dyncode = (int(*)(Context*)) address; status = (*dyncode)(CTX); And take a look at the attached file, which shows the whole thing in a small working example (compile with GCC). The only thing you have to do is to figure out how the compiler passes parameters (if you need any). To do this write a small routine and copy the way how the parameters are handled. >-->Neil BTW, any news from Erin? ;-) -- M.I.K.e In 1880 the French captured Detroit but gave it back ... they couldn't get parts. --Mail-It_--335000660 Content-Type: text/x-source-code; name="dyncode.c" Content-Transfer-Encoding: base64 Content-Disposition: Attachment; filename="dyncode.c" LyogdGVzdCBjYWxsIG9mIGR5bmFtaWMgY29kZSAqLwovKiAoYykgTS5JLksuZSAgICAgICAgICAg ICAgICovCi8qIExhc3QgbW9kaWZpZWQ6IDIwMDAtMDYtMzAgKi8KCmludCAoKmR5bmNvZGUpKGlu dCk7ICAvKiBwcm90b3R5cGUgZm9yIGNhbGwgb2YgZHluYW1pYyBjb2RlICovCgp1bnNpZ25lZCBj aGFyIGNvZGVbXSA9IHsweDhCLDB4NDQsMHgyNCwweDA0LCAgLyogbW92IGVheCwgW2VzcCs0XSAq LwogICAgICAgICAgICAgICAgICAgICAgICAweDQwLCAgICAgICAgICAgICAgICAgLyogaW5jIGVh eCAgICAgICAgICAqLwogICAgICAgICAgICAgICAgICAgICAgICAweEMzICAgICAgICAgICAgICAg ICAgLyogcmV0ICAgICAgICAgICAgICAqLwogICAgICAgICAgICAgICAgICAgICAgIH07CgojaW5j bHVkZSA8c3RkaW8uaD4KCmludCBtYWluKHZvaWQpCnsKICBkeW5jb2RlID0gKGludCAoKikoaW50 KSkgbWFsbG9jKHNpemVvZihjb2RlKSk7CiAgbWVtY3B5KGR5bmNvZGUsIGNvZGUsIHNpemVvZihj b2RlKSk7CiAgcHJpbnRmKCJyZXR2YWwgPSAlZFxuIiwgKCpkeW5jb2RlKSg0MSkpOyAgLyogY2Fs bCB0aGUgY29kZSAqLyAgCiAgcmV0dXJuIDA7Cn0K --Mail-It_--335000660-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 13:15:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA14908 for dynarec-outgoing; Wed, 14 Feb 2001 13:15:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000c01c096cc$4e6b17f0$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: calling dynamically generated code Date: Wed, 14 Feb 2001 21:22:58 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Why not do.... > void (*Procedure)(void) = (void *) targetAddress; > And doing: > Procedure(); That seemed to work when I did void (*Procedure)(void) = (void (__cdecl *)(void)) machineCode; Procedure(); MSVC complained about the type I was casting machineCode to not being the same as the type I was assigning it to but this seemed ok. This still begs the question, how can I pass parameters such as the base of my register file into the generated code? My second big question for the night which has been puzzling me a bit is how can I call a C function from asm. I think the answer is probably to put the address of the function into a register and then call that register, rather than trying to compile the function offset directly into the call instruction. I'd be really grateful for a little piece of code which gets the function address into the reg and then calls it!! Neil? :o) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 13:18:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA14918 for dynarec-outgoing; Wed, 14 Feb 2001 13:18:31 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001b01c096cc$b5021040$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: calling dynamically generated code Date: Wed, 14 Feb 2001 21:25:51 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Forgot to mention that before I heard from NB I tried just rigging up _asm { call machineCode } where machine code is a uint8* to the code buffer and that worked pretty nicely too! That might be an easier way of getting the address of the register file into the generated code than trying to force it through a cast-to-function? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 13:39:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA14940 for dynarec-outgoing; Wed, 14 Feb 2001 13:39:41 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: julesb@btinternet.com To: dynarec@dynarec.com Date: Wed, 14 Feb 2001 21:50:20 GMT Subject: Re: DYNAREC: calling dynamically generated code Message-id: <3a8afd9c.4c38.0@btinternet.com> X-User-Info: 137.222.10.57 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >>Wow... this is what I call the "hard way" of doing it: >>> asm("pushl %%ebp\n\t" \ >>> "movl %0,%%ebp\n\t" \ >>> "call *%1\n\t" \ >>> "popl %%ebp" >>> : /* no outputs */ >>> : "a" (reg), "b" (code->base) >>> : "cx", "dx", "si", "di" > >That's what I told Jules when I found that in his ARMphetamine >documentation... I think I'd forgotten that ;-) I did it that way because I didn't know much about the way gcc called procedures, and I needed EBP to be set up differently anyway. That, and a habit of making things far more difficult for myself than they ought to be... Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 14:01:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA14970 for dynarec-outgoing; Wed, 14 Feb 2001 14:01:42 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005001c096d2$bdac2d10$b32bfea9@daves> From: "David Sharp" To: References: <001b01c096cc$b5021040$b32bfea9@daves> Subject: DYNAREC: buffers Date: Wed, 14 Feb 2001 22:09:02 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com While I'm asking lots of quick Q's, what's the best way to allocate a resizable buffer to store my IR, is malloc/realloc the best there is under Visual C++? Thanks for all the pointers by the way folks. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 14:02:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA14980 for dynarec-outgoing; Wed, 14 Feb 2001 14:02:52 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 14 Feb 2001 14:16:53 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: buffers In-Reply-To: <005001c096d2$bdac2d10$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > While I'm asking lots of quick Q's, what's the best way to allocate a > resizable buffer to store my IR, is malloc/realloc the best there is under > Visual C++? Resizable buffers are generally not a good idea (unless you're wanting to make them smaller), but the malloc/free is decent. You might want to consider making a custom memory allocation strategy yourself. How is it going to be used? And I'm sorry to hear that you're implementing an IR... -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 14:40:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA15016 for dynarec-outgoing; Wed, 14 Feb 2001 14:40:20 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007101c096d8$237eaaa0$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: buffers Date: Wed, 14 Feb 2001 22:47:40 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Resizable buffers are generally not a good idea (unless you're wanting to > make them smaller), but the malloc/free is decent. Ok, thanks. > You might want to consider making a custom memory allocation strategy > yourself. How is it going to be used? In order to hold the IR and scaling it up if the amount of IR code generated exceeds its size. > And I'm sorry to hear that you're implementing an IR... I knew you wouldn't like it much but I need to have something to show in my project and a straight recompiler would be a real sod to do for ARM code at this level of accuracy (processor modes, exceptions, etc.) Not to mention being practically undebuggable. Also my x86 skills are at best poor so I need a safety net to talk about in case I can't get anything working, an IR gives me that. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 15:01:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA15045 for dynarec-outgoing; Wed, 14 Feb 2001 15:01:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 14 Feb 2001 15:15:34 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: buffers In-Reply-To: <007101c096d8$237eaaa0$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > You might want to consider making a custom memory allocation strategy > > yourself. How is it going to be used? > In order to hold the IR and scaling it up if the amount of IR code generated > exceeds its size. Why not build a linked list of IR instructions and after it's done being assembled you create a big memory block to hold it all and deallocate all the little ones? > > And I'm sorry to hear that you're implementing an IR... > I knew you wouldn't like it much but I need to have something to show in my > project and a straight recompiler would be a real sod to do for ARM code at > this level of accuracy (processor modes, exceptions, etc.) Not to mention > being practically undebuggable. Also my x86 skills are at best poor so I > need a safety net to talk about in case I can't get anything working, an IR > gives me that. Ah - I see. It's for a class. That changes everything. And here all along I thought it was for "fun". ;-) But I'd be happy to help you with the x86 stuff. I don't agree that it's undebuggable doing a direct source->target translation, but lacking solid knowledge of the x86 would make such an endeavor quite difficult. -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 15:07:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA15060 for dynarec-outgoing; Wed, 14 Feb 2001 15:07:45 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: calling dynamically generated code From: "M.I.K.e" Message-ID: <00037d4ca230b3c7_mailit@mail.dynarec.com> References: <3a8afd9c.4c38.0@btinternet.com> Date: Thu, 15 Feb 2001 00:23:42 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>That's what I told Jules when I found that in his ARMphetamine >>documentation... >I think I'd forgotten that ;-) Amnesia is a wonderful thing, isn't it? ;-) >I did it that way because I didn't know much about the way gcc >called procedures, Function pointers are covered in K&R 2nd 5.11 pp. 118-121. You only have to find out how the compiler handels parameters, but that can be done by disassembling a simply function or for GCC just use '-S'. >and I needed EBP to be set up differently anyway. You could have done some generated glue code... >That, and a habit of making things far more difficult >for myself than they ought to be... Probably ;-) >Jules -- M.I.K.e //GO.SYSIN DD *, DOODAH, DOODAH --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 15:13:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA15077 for dynarec-outgoing; Wed, 14 Feb 2001 15:13:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007e01c096dc$c7777480$b32bfea9@daves> From: "David Sharp" To: References: <3a8afd9c.4c38.0@btinternet.com> <00037d4ca230b3c7_mailit@mail.dynarec.com> Subject: Re: DYNAREC: calling dynamically generated code Date: Wed, 14 Feb 2001 23:20:53 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Function pointers are covered in K&R 2nd 5.11 pp. 118-121. > You only have to find out how the compiler handels parameters, but that can > be done by disassembling a simply function or for GCC just use '-S'. Ok, finally a good excuse to get the good book. BTW, you think -S is nice, wait till you try VC++ where it can generate any combination of source mixed with asm mixed with machine code, absolutely brill! Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 15:18:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA15091 for dynarec-outgoing; Wed, 14 Feb 2001 15:18:18 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008501c096dd$717a1960$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: buffers Date: Wed, 14 Feb 2001 23:25:39 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Why not build a linked list of IR instructions and after it's done being > assembled you create a big memory block to hold it all and deallocate all > the little ones? That does seem a bit more sensible really doesn't it. I'll take your advice. > Ah - I see. It's for a class. That changes everything. And here all along > I thought it was for "fun". ;-) :o) I'm glad you can see my reasoning. I think I understand the pros and cons of IRs fairly well now but it's more about having something I can write 100-odd pages on really. > But I'd be happy to help you with the x86 stuff. I don't agree that it's > undebuggable doing a direct source->target translation, but lacking > solid knowledge of the x86 would make such an endeavor quite difficult. Thanks, I appreciate the offer of help, it *will* be required. :o) You're probably right, 'undebuggable' is a bit harsh but that said, I don't think I could do it with present knowledge! There'll be a nice section in the write up about the pros/cons of the IR and I'll be looking forward to a heated debate on here come Easter time... Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 15:46:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA15124 for dynarec-outgoing; Wed, 14 Feb 2001 15:46:16 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: calling dynamically generated code From: "M.I.K.e" Message-ID: <00037d4d13fe1ea4_mailit@mail.dynarec.com> References: <3a8afd9c.4c38.0@btinternet.com> <00037d4ca230b3c7_mailit@mail.dynarec.com> <007e01c096dc$c7777480$b32bfea9@daves> Date: Thu, 15 Feb 2001 00:55:31 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Ok, finally a good excuse to get the good book. What? You have been programming C and don't have K&R yet? >BTW, you think -S is nice, wait till you try VC++ where it can generate any >combination of source mixed with asm mixed with machine code, absolutely >brill! BTW, does the example code help you which I attached to one of the former messages? >Dave -- M.I.K.e Nothing astonishes men so much as common sense and plain dealing. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 16:05:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA15153 for dynarec-outgoing; Wed, 14 Feb 2001 16:05:11 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004601c096e4$9595b460$0200a8c0@cheetah> From: "Neil Griffiths" To: References: <008501c096dd$717a1960$b32bfea9@daves> Subject: Re: DYNAREC: buffers Date: Wed, 14 Feb 2001 23:52:12 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I'm glad you can see my reasoning. I think I understand the pros and cons of > IRs fairly well now but it's more about having something I can write 100-odd > pages on really. I take it that by IR, you mean Intermediate Recompiler? 'Cos if not, I've no idea what you mean. :) > You're probably right, 'undebuggable' is a bit harsh but that said, I don't > think I could do it with present knowledge! There'll be a nice section in > the write up about the pros/cons of the IR and I'll be looking forward to a > heated debate on here come Easter time... You reckon? You know as well as I do that come Easter, both of us will be struggling like hell to get our documentation done, finished and handed in! ;) Still, 3 months to go. Lalalalaaaaaaaa... :o And I've just broken my parser horribly so now I need to write a new text class. Heehee! This is getting to be just soooo much fun! :) 4 guaranteed exams, 1 of which makes up 100% of a module, the project and s**tloads of other stuff to do. I do so hope you aren't as busy as me. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 16:07:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA15164 for dynarec-outgoing; Wed, 14 Feb 2001 16:07:43 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005201c096e4$efd816c0$0200a8c0@cheetah> From: "Neil Griffiths" To: References: <3a8afd9c.4c38.0@btinternet.com> <00037d4ca230b3c7_mailit@mail.dynarec.com> <007e01c096dc$c7777480$b32bfea9@daves> <00037d4d13fe1ea4_mailit@mail.dynarec.com> Subject: Re: DYNAREC: calling dynamically generated code Date: Thu, 15 Feb 2001 00:19:05 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Ok, finally a good excuse to get the good book. > > What? You have been programming C and don't have K&R yet? Don't have a go at him! I've been programming for years - and I have no brain! :) > Nothing astonishes men so much as common sense and plain dealing. Well I'm a bit buggered then... :o And I'm in a strange mood right now (as if I'm not all the time), 'cos I've just spent 3 hours working out in a gym for the first time in a very long time. So put it down to dehydration or something. :) Oh yes, and my ISP (Plus Net) is closing down my account because I've been abusing it. By connecting for 2 hours a day. Gosh - overuse there! >:-( Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 14 16:23:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA15186 for dynarec-outgoing; Wed, 14 Feb 2001 16:23:08 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006401c096e7$166fa080$0200a8c0@cheetah> From: "Neil Griffiths" To: References: <3a8afd9c.4c38.0@btinternet.com> <00037d4ca230b3c7_mailit@mail.dynarec.com> <007e01c096dc$c7777480$b32bfea9@daves> <00037d4d13fe1ea4_mailit@mail.dynarec.com> <005201c096e4$efd816c0$0200a8c0@cheetah> Subject: Re: DYNAREC: calling dynamically generated code Date: Thu, 15 Feb 2001 00:33:18 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, While I'm at it, look at this: OffPeak accounts (Unmetered element only) Design 45 minutes Fair 1 hour 20 minutes Pushing it 1 hour 40 minutes Unfair 2 hours Out of Order * 2 hours 20 minutes Taking the Michael * 2 hours 40 minutes + * Customers who exceed these guides will receive warning and/or be subject to punitive action So there you go. I've been unfair. The... the... the [insert plural expletive here]! Neil. ----- Original Message ----- From: "Neil Griffiths" To: Sent: Thursday, February 15, 2001 12:19 AM Subject: Re: DYNAREC: calling dynamically generated code > Hi, > > > >Ok, finally a good excuse to get the good book. > > > > What? You have been programming C and don't have K&R yet? > > Don't have a go at him! I've been programming for years - and I have no > brain! :) > > > Nothing astonishes men so much as common sense and plain dealing. > > Well I'm a bit buggered then... :o > > And I'm in a strange mood right now (as if I'm not all the time), 'cos I've > just spent 3 hours working out in a gym for the first time in a very long > time. So put it down to dehydration or something. :) > > Oh yes, and my ISP (Plus Net) is closing down my account because I've been > abusing it. By connecting for 2 hours a day. Gosh - overuse there! >:-( > > Neil. > > -------------------------------------------------------------------------- - > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 00:00:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA15549 for dynarec-outgoing; Wed, 14 Feb 2001 23:58:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: Subject: Re: DYNAREC: buffers From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Thu, 15 Feb 2001 09:15:21 +0100 Message-ID: <1eov3dx.nnql1x1bgqi4gM@[192.168.0.2]> Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Why not build a linked list of IR instructions and after it's done being > assembled you create a big memory block to hold it all > and deallocate all the little ones? Or put them in a pool for later use... "pool/lazy allocation". I probably talked about it already. :-) > But I'd be happy to help you with the x86 stuff. I don't agree that it's > undebuggable doing a direct source->target translation, but lacking > solid knowledge of the x86 would make such an endeavor quite difficult. How do you manage combinations of source instructions into one target instruction [*] ? I think an IR may help for pattern matching sequences and generate better code [especially for a RISC source]. [*] Hmm, probably just like I would with an IR. Oh, forget about it ;-) Bye. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 00:05:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA15570 for dynarec-outgoing; Thu, 15 Feb 2001 00:04:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200102150814.JAA04608@pons.ac.upc.es> Subject: Re: DYNAREC: buffers In-Reply-To: <1eov3dx.nnql1x1bgqi4gM@[192.168.0.2]> "from Gwenole Beauchesne at Feb 15, 2001 09:15:21 am" To: dynarec@dynarec.com Date: Thu, 15 Feb 2001 09:14:32 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > But I'd be happy to help you with the x86 stuff. I don't agree that it's > > undebuggable doing a direct source->target translation, but lacking > > solid knowledge of the x86 would make such an endeavor quite difficult. > > How do you manage combinations of source instructions into one target > instruction [*] ? I think an IR may help for pattern matching sequences > and generate better code [especially for a RISC source]. > > [*] Hmm, probably just like I would with an IR. Oh, forget about it ;-) > We all agree that the almost only use of an IR is portability. Althought this could be discussed too ;). And of course 'professors' like it :)). Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 00:11:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA15583 for dynarec-outgoing; Thu, 15 Feb 2001 00:09:43 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Feb 2001 00:23:50 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: buffers In-Reply-To: <1eov3dx.nnql1x1bgqi4gM@[192.168.0.2]> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Why not build a linked list of IR instructions and after it's done being > > assembled you create a big memory block to hold it all > > and deallocate all the little ones? > Or put them in a pool for later use... "pool/lazy allocation". I > probably talked about it already. :-) You clipped my "maybe you should do your own buffer allocation strategy" quote, which this was exactly what I was getting at. ;-) > > But I'd be happy to help you with the x86 stuff. I don't agree that it's > > undebuggable doing a direct source->target translation, but lacking > > solid knowledge of the x86 would make such an endeavor quite difficult. > How do you manage combinations of source instructions into one target > instruction [*] ? More importantly, without an IR you can take advantage of knowledge of the target to directly translate an instruction, where doing an IR would be nasty (consider DAA or other weird translation instructions). Register allocation becomes tougher if you have a register starved target CPU like the x86, and IRs generally have many, many virtual registers. But you wouldn't run into a situation where combinations of source instructions would generate just one target instruction, and certainly not with an IR sitting in between it. > I think an IR may help for pattern matching sequences > and generate better code [especially for a RISC source]. You mean a RISC *TARGET*. Ultimately it's going to wind up on some other CPU and the best you can do is a 1:1 translation. But you're better off optimizing the source anyway. The source layer will equal or smaller to an IR in *ALL* cases, so it's much better to optimize your source and then your target once the code is emitted. Sorry - I've been down the IR path too many times to know that: A) It doesn't allow for source->target knowledge to take advantage of any shortcuts between the two CPUs B) People have mentioned portability, but you still have to write your target layer for the target CPU. C) I've already seen a Z80->x86 recompiler (I wrote) generate instructions on a 1:1 basis. You can't beat that with an IR especially on a register starved target! The only thing an IR buys you is only having to write one target layer per CPU type. That's it. If you want to look at an example of why an IR is a bad idea, gcc is a prime example. It generates decent code on a RISC CPU but generates lousy code on the x86. I'm wondering how many millions of clock cycles are eaten up by the unoptimized code it produces. -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 00:37:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA15615 for dynarec-outgoing; Thu, 15 Feb 2001 00:36:30 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200102150847.JAA25612@pons.ac.upc.es> Subject: Re: DYNAREC: buffers In-Reply-To: "from Neil Bradley at Feb 15, 2001 00:23:50 am" To: dynarec@dynarec.com Date: Thu, 15 Feb 2001 09:47:02 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > But I'd be happy to help you with the x86 stuff. I don't agree that it's > > > undebuggable doing a direct source->target translation, but lacking > > > solid knowledge of the x86 would make such an endeavor quite difficult. > > How do you manage combinations of source instructions into one target > > instruction [*] ? > > More importantly, without an IR you can take advantage of knowledge of the > target to directly translate an instruction, where doing an IR would be > nasty (consider DAA or other weird translation instructions). Register > allocation becomes tougher if you have a register starved target CPU like > the x86, and IRs generally have many, many virtual registers. > The main problem with IR as Mike pointed long ago are the differences between both target and source ISAs with the IR. The more different they are the more info is lost and thus less optimizations are possible. I think IR seems to be wonderful in the 'RISC dream world' with very similar ISAs and without nasty instructions. The problems arise when you discover how awfully different are machines told to be RISC. > A) It doesn't allow for source->target knowledge to take advantage of any > shortcuts between the two CPUs > In fact that is one of the intentions of an IR, hide the special characteristics of the CPUs ;). But people thinking about IRs seems to be more interested in 'ease' rather than performance. > B) People have mentioned portability, but you still have to write your > target layer for the target CPU. > It uses to be or it should be (if not what a mess of IR) faster and easier because the IR is well known, simpler and the write of the target layer is more 'automatized'. In fact the only real use of an IR as 'portable' use to be a C based interpreter of the IR like the one used in Ardi's and Generator (?). > C) I've already seen a Z80->x86 recompiler (I wrote) generate instructions > on a 1:1 basis. You can't beat that with an IR especially on a register > starved target! > x86 is a horrible machine for performing register allocation (and register allocation use to be hand to hand with IR). Register allocation between CPUs with a lot of registers is possible, or if the source has less registers than the targer. But when the target has so small register bank, as the x86, the only possible solution for register allocation is a static one or none at all. In any case I would want to test your idea with other CPUs rather than something so particular like a Z80 which is very similar to a x86 and the translation is easier. See for what happens for example when you are really out of registers. DR68K? ;) About how bad an IR can be ... I'm now working to translate Dixie ISA (the IR) to Mips. The Dixie ISA is designed so that the translation Alpha->Dixie Dixie->Mips is almost direct and one to one. Just for standard RISC type instruction of course ;). But when handling PowerPC or x86 ... I'm just testing those but I think there will a lot of useless code which will be hard to take care and remove later in a target optimization layer. > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 00:45:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA15628 for dynarec-outgoing; Thu, 15 Feb 2001 00:43:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Feb 2001 00:57:55 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: buffers In-Reply-To: <200102150847.JAA25612@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > A) It doesn't allow for source->target knowledge to take advantage of any > > shortcuts between the two CPUs > In fact that is one of the intentions of an IR, hide the special > characteristics of the CPUs ;). But people thinking about IRs > seems to be more interested in 'ease' rather than performance. I think it's a natural "reflex" - go with what you know. > > on a 1:1 basis. You can't beat that with an IR especially on a register > > starved target! > x86 is a horrible machine for performing register allocation (and > register allocation use to be hand to hand with IR). Register allocation > between CPUs with a lot of registers is possible, or if the source > has less registers than the targer. But when the target has so small > register bank, as the x86, the only possible solution for register > allocation is a static one or none at all. Correct. And in the case where your target has more registers than your source, you don't *NEED* register "allocation". > In any case I would want to test your idea with other CPUs rather > than something so particular like a Z80 which is very similar to > a x86 and the translation is easier. See for what happens for example > when you are really out of registers. DR68K? ;) You're screwed! Either you'll have to spend a bunch of time swapping things to RAM and keeping track of what blocks use what group of registers for what 68K register (slower) or you pick a few registers that are most often used (A0/A1/D0/D1) and put those in native x86 registers and swap the rest. -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 00:51:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA15645 for dynarec-outgoing; Thu, 15 Feb 2001 00:50:01 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200102150900.KAA28065@pons.ac.upc.es> Subject: Re: DYNAREC: buffers In-Reply-To: "from Neil Bradley at Feb 15, 2001 00:57:55 am" To: dynarec@dynarec.com Date: Thu, 15 Feb 2001 10:00:42 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You're screwed! Either you'll have to spend a bunch of time swapping > things to RAM and keeping track of what blocks use what group of registers > for what 68K register (slower) or you pick a few registers that are most > often used (A0/A1/D0/D1) and put those in native x86 registers and swap > the rest. > Hehehe. I know it is just I would want to see it working ;). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 04:18:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA15970 for dynarec-outgoing; Thu, 15 Feb 2001 04:18:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00b901c0974a$6c089610$b32bfea9@daves> From: "David Sharp" To: References: <008501c096dd$717a1960$b32bfea9@daves> <004601c096e4$9595b460$0200a8c0@cheetah> Subject: Re: DYNAREC: buffers Date: Thu, 15 Feb 2001 12:25:37 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I take it that by IR, you mean Intermediate Recompiler? 'Cos if not, I've no > idea what you mean. :) Intermediate Representation! > You reckon? You know as well as I do that come Easter, both of us will be > struggling like hell to get our documentation done, finished and handed in! > ;) It's going to be bad for the next month, I'm presenting my project in about 4 weeks time and have another 4000 word essay to do before then. Then I've got a relaxing period of about 7 weeks, most of them over the Easter hols to write up the project (that's 80% of the grade). > Still, 3 months to go. Lalalalaaaaaaaa... :o That's a fairly long time? > And I've just broken my parser horribly so now I need to write a new text > class. Heehee! This is getting to be just soooo much fun! :) What are you doing for your project anyway? > 4 guaranteed exams, 1 of which makes up 100% of a module, the project and > s**tloads of other stuff to do. I do so hope you aren't as busy as me. ;) Probably busier (see above). Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 04:21:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA15984 for dynarec-outgoing; Thu, 15 Feb 2001 04:21:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00c401c0974a$cc28bd90$b32bfea9@daves> From: "David Sharp" To: References: <3a8afd9c.4c38.0@btinternet.com> <00037d4ca230b3c7_mailit@mail.dynarec.com> <007e01c096dc$c7777480$b32bfea9@daves> <00037d4d13fe1ea4_mailit@mail.dynarec.com> <005201c096e4$efd816c0$0200a8c0@cheetah> <006401c096e7$166fa080$0200a8c0@cheetah> Subject: Re: DYNAREC: calling dynamically generated code Date: Thu, 15 Feb 2001 12:28:18 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > OffPeak accounts (Unmetered element only) > Design 45 minutes > Fair 1 hour 20 minutes > Pushing it 1 hour 40 minutes > Unfair 2 hours > Out of Order * 2 hours 20 minutes > Taking the Michael * 2 hours 40 minutes + > > > * Customers who exceed these guides will receive warning and/or be subject > to punitive action > > So there you go. I've been unfair. The... the... the [insert plural > expletive here]! If you're in the UK and it's available in your area (it is in most these days) go sign up for NTL. Marginally cheaper than the standard BT line rental and for your money you get a few cable TV channels and unlimited Internet access. When I say unlimited, I meant really good, they're by far the most reliable and best performing ISP I've ever tried! Cheers Dave PS: but their customer support/care is atrocious (almost as bad as BT) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 04:29:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA15997 for dynarec-outgoing; Thu, 15 Feb 2001 04:29:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00cd01c0974b$e7657020$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: buffers Date: Thu, 15 Feb 2001 12:36:13 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You clipped my "maybe you should do your own buffer allocation > strategy" quote, which this was exactly what I was getting at. ;-) I'm going to try not to reinvent the wheel unless I have to, I don't have time really. > More importantly, without an IR you can take advantage of knowledge of the > target to directly translate an instruction, where doing an IR would be > nasty (consider DAA or other weird translation instructions). Register > allocation becomes tougher if you have a register starved target CPU like > the x86, and IRs generally have many, many virtual registers. That's true except that the ARM doesn't have any weird instructions and most map quite nicely onto x86 with the exception of some flag bashing on the barrel shifter. I don't see reg allocation as much of a problem - it's all the pentium's fault, not mine. > But you wouldn't run into a situation where combinations of source > instructions would generate just one target instruction, and certainly not > with an IR sitting in between it. The chances of an ARM instruction being able to be mapped to an x86 instruction are *SLIM*. However, some do e.g. adds r0,r0,r1 -> addl r0,r1 but that's about it. If I was going x86->ARM then it would be a different story. > You mean a RISC *TARGET*. Ultimately it's going to wind up on some other > CPU and the best you can do is a 1:1 translation. But you're better off > optimizing the source anyway. The source layer will equal or smaller to an > IR in *ALL* cases, so it's much better to optimize your source and then > your target once the code is emitted. Not quite sure what you mean by optimise the source, I take it that you mean collect enough collateral information that in conjunction with the source you can see the redundancies in the source. > If you want to look at an example of why an IR is a bad idea, gcc is a > prime example. It generates decent code on a RISC CPU but generates lousy > code on the x86. I'm wondering how many millions of clock cycles are eaten > up by the unoptimized code it produces. Possibly, but GCC is so generic that it was enver going to be too good, my IR is being designed explicity as a decomposition of ARM instructions (much like phetacode) so that you can see the individual actions going on. The decomposition is limited by the need to map these decompositions to x86 instructions to take advantage of x86 flags so most of the emulated flag handling is still implicit. Which is a pain in the arse and I believe is why dynarec IR issues diverge pretty fast from compiler IRs. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 07:49:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA16154 for dynarec-outgoing; Thu, 15 Feb 2001 07:49:03 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003a01c09768$72c54de0$f48ed13e@cheetah> From: "Neil Griffiths" To: References: <008501c096dd$717a1960$b32bfea9@daves> <004601c096e4$9595b460$0200a8c0@cheetah> <00b901c0974a$6c089610$b32bfea9@daves> Subject: Re: DYNAREC: buffers Date: Thu, 15 Feb 2001 15:39:05 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Intermediate Representation! D'oh! I thought I knew what it was (I did) but I couldn't remember what the "R" was. At least I knew what you all meant. :) > It's going to be bad for the next month, I'm presenting my project in about > 4 weeks time and have another 4000 word essay to do before then. Then I've > got a relaxing period of about 7 weeks, most of them over the Easter hols to > write up the project (that's 80% of the grade). That's not fair! I've got 2 months to finish the project (bearable) and then a further month to write the documentation (giving me my 3 month total). But in the mean time, I still have 2 more assignments to complete. > > Still, 3 months to go. Lalalalaaaaaaaa... :o > > That's a fairly long time? It's actually under 3 months - the 5th of May is hand in date. But I'm being optimistic. :) > > And I've just broken my parser horribly so now I need to write a new text > > class. Heehee! This is getting to be just soooo much fun! :) > > What are you doing for your project anyway? A Simple Games Language(tm) where I have some really simple instructions that can create a game. And it's all horribly broken at the moment! > > 4 guaranteed exams, 1 of which makes up 100% of a module, the project and > > s**tloads of other stuff to do. I do so hope you aren't as busy as me. ;) > > Probably busier (see above). I'm not sure, but possibly. But then again, maybe not! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 07:49:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA16163 for dynarec-outgoing; Thu, 15 Feb 2001 07:49:16 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003b01c09768$79adcc40$f48ed13e@cheetah> From: "Neil Griffiths" To: References: <3a8afd9c.4c38.0@btinternet.com> <00037d4ca230b3c7_mailit@mail.dynarec.com> <007e01c096dc$c7777480$b32bfea9@daves> <00037d4d13fe1ea4_mailit@mail.dynarec.com> <005201c096e4$efd816c0$0200a8c0@cheetah> <006401c096e7$166fa080$0200a8c0@cheetah> <00c401c0974a$cc28bd90$b32bfea9@daves> Subject: Re: DYNAREC: calling dynamically generated code Date: Thu, 15 Feb 2001 15:41:04 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > If you're in the UK and it's available in your area (it is in most these > days) go sign up for NTL. Marginally cheaper than the standard BT line > rental and for your money you get a few cable TV channels and unlimited > Internet access. When I say unlimited, I meant really good, they're by far > the most reliable and best performing ISP I've ever tried! *Shudder* Don't talk to me about NTL. I went there in September to organise a line but they wanted to see the permission from the landlord. Got that after 6 bloody weeks. Went again. Kept going, no-one came out - or when they did, they had problems under the road. Found out in January - over 3 months later - that they couldn't actually install to this house and wouldn't be able to until May. And the worst thing? The woman said "Oh, sorry, we should have told you that last September. Didn't anyone write to you?". > PS: but their customer support/care is atrocious (almost as bad as BT) You don't say! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 09:16:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA16237 for dynarec-outgoing; Thu, 15 Feb 2001 09:16:14 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001c01c09774$09323620$b32bfea9@daves> From: "David Sharp" To: References: <00cd01c0974b$e7657020$b32bfea9@daves> Subject: DYNAREC: aaagh C++ Date: Thu, 15 Feb 2001 17:23:38 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I need a linked list for my IR generation but because my I'm out of practice with C/C++ am struggling with something. I know you guys love this sort of thing... I was busy writing my own generic linked list and things were going fine until I tried to return an IRinstruction object from the list with the type void* (this is a generic linked list remember) unfortunately C++ won't let me cast a class* to a void* then back to a class* in order to return it. In java I would use the base class Object but am loath to use inheritance or even STL since I have a belief that they're inefficient (unless someone wants to tell me otherwise)? So, how to do this? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 10:45:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA16314 for dynarec-outgoing; Thu, 15 Feb 2001 10:45:26 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002301c09781$73ec1140$9974393e@menta.net> From: "Victor Moya del Barrio" To: References: <00cd01c0974b$e7657020$b32bfea9@daves> <001c01c09774$09323620$b32bfea9@daves> Subject: Re: DYNAREC: aaagh C++ Date: Thu, 15 Feb 2001 19:59:41 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I need a linked list for my IR generation but because my I'm out of practice > with C/C++ am struggling with something. I know you guys love this sort of > thing... > > I was busy writing my own generic linked list and things were going fine > until I tried to return an IRinstruction object from the list with the type > void* (this is a generic linked list remember) unfortunately C++ won't let > me cast a class* to a void* then back to a class* in order to return it. In > java I would use the base class Object but am loath to use inheritance or > even STL since I have a belief that they're inefficient (unless someone > wants to tell me otherwise)? > > So, how to do this? > Are you using C++? Umm, well, write it in C. ;))) Oh! ... Lately everyone is using C++ and I'm still wondering why :(. I should begin to learn about that. > Cheers > Dave > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 10:56:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA16334 for dynarec-outgoing; Thu, 15 Feb 2001 10:56:03 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004101c09781$f84b1760$b32bfea9@daves> From: "David Sharp" To: References: <00cd01c0974b$e7657020$b32bfea9@daves> <001c01c09774$09323620$b32bfea9@daves> <002301c09781$73ec1140$9974393e@menta.net> Subject: Re: DYNAREC: aaagh C++ Date: Thu, 15 Feb 2001 19:03:18 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Erm, thanks, I think. It's in C++ because the emulator that I'm interfacing the CPU emulation to is written for MS Visual C++. I'm playing with the STL some more but examining the generated code, the map seems to throw up all sorts of stuff which looks like it's going to be inefficient. We'll see... Cheers Dave > Umm, well, write it in C. ;))) > > Oh! ... Lately everyone is using C++ and I'm still wondering why :(. I should > begin to learn about that. > > > Cheers > > Dave > > > > Victor > > -------------------------------------------------------------------------- - > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 11:18:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA16363 for dynarec-outgoing; Thu, 15 Feb 2001 11:18:01 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Feb 2001 11:32:15 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: aaagh C++ In-Reply-To: <002301c09781$73ec1140$9974393e@menta.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > even STL since I have a belief that they're inefficient (unless someone > > wants to tell me otherwise)? > > So, how to do this? > Are you using C++? > Umm, well, write it in C. ;))) > Oh! ... Lately everyone is using C++ and I'm still wondering why :(. > I should begin to learn about that. They don't even know why, either. We had two summer interns at Intel who were writing everything with class wrappers. I point blank asked them why, and eventually it mulled down to "Because that's the way we were taught to do it." I still assert that C++ is mostly a fashion language. Most of those who use it have no idea what they're doing or why they're doing it (present company aside). I've still not run in to a situation where I *HAD* to have it. Sure, the classes make some things quite convenient, but most don't know the consequences of using many of the C++ constructs and thusly create crappy code. And most don't even know that C++ started out as nothing more than a preprocessor to C in the late 80s. -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 11:41:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA16389 for dynarec-outgoing; Thu, 15 Feb 2001 11:41:43 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004801c09788$5c5dee20$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: aaagh C++ Date: Thu, 15 Feb 2001 19:49:07 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > down to "Because that's the way we were taught to do it." That is a good reason though!! The number of times recently I've come to a small project with a need to get something done and have just done it the only way I know how (not necessarily the best way) because I just need it done. However, I must confess that I've decided to implement my own linkedlist and hash table and revert to C structs rather than C++ classes for some of this stuff. I just want to get on and generate some IR code and play with my backpatching. I can't cope with some of the nasty compiler warnings I was getting trying to use STL, e.g: D:\Program Files\Microsoft Visual Studio\VC98\INCLUDE\xtree(200) : warning C4786: '?rbegin@?$_Tree@IU?$pair@$$CBIPAUArmlet@@@std@@U_Kfn@?$map@IPAUArmlet@@U?$l ess@I@std@@V?$allocator@PAUArmlet@@@3@@2@U?$less@I@2@V?$allocator@PAUArmlet@ @@2@@std@@QAE?A V?$reverse_bidirectional_iterator@Viterator@?$_Tree@IU?$pair@$$CBIPAUArmlet@ @@std@@U_Kfn@?$map@IPAUArmlet@@U?$less@I@std@@V?$allocator@PAUArmlet@@@3@@2@ U?$less@I@2@V?$allocator@PAUArmlet@@@2@@std@@U?$pair@$$CBIPAUArmlet@@@3@AAU4 3@PAU43@H@2@XZ' : ide ntifier was truncated to '255' characters in the browser information WTF!? > And most don't even know that C++ started out as nothing more than a > preprocessor to C in the late 80s. Might have been better if it had stayed that way. Me personally, I think Java's the best thing ever invented. Shame it's so damned slow. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 11:50:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA16408 for dynarec-outgoing; Thu, 15 Feb 2001 11:50:28 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000201c0978a$2d644180$0200a8c0@cheetah> From: "Neil Griffiths" To: References: <004801c09788$5c5dee20$b32bfea9@daves> Subject: Re: DYNAREC: aaagh C++ Date: Thu, 15 Feb 2001 20:00:15 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Might have been better if it had stayed that way. Me personally, I think > Java's the best thing ever invented. Shame it's so damned slow. Until you try to do anything like graphics or sound in it. Or use more than one mouse button. Then you're screwed... Or you have to find workarounds! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 12:39:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA16461 for dynarec-outgoing; Thu, 15 Feb 2001 12:38:58 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Feb 2001 12:53:13 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: aaagh C++ In-Reply-To: <004801c09788$5c5dee20$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > down to "Because that's the way we were taught to do it." > That is a good reason though!! The number of times recently I've come to a > small project with a need to get something done and have just done it the > only way I know how (not necessarily the best way) because I just need it > done. I flatly disagree that that's a good reason in general. The problem is people have a "just get it done" attitude about just about everything now, and no one bothers to think about the consequences of their actions. No one seems to want to better themselves, either, as if they NEVER think "gee, maybe there's a better way to do this", and schools tend to teach this malaise. They don't bother to learn about what's going on underneath. Consider this is a professional application distributed by a very large corporation. Case in point: We had an application that downloaded 30 byte log entries from a remote server. Starting out it was receiving about 50 a second, and as the list got longer and longer, the CPU usage would scale up and up, until it was taking 90% of the CPU time and doing 1 or 2 log entries a second. Downloading a full log entry would take over 10 minutes. This is unreasonable for someone who is just downloading a log to see what their server was up to. I investigated and found several things: * As the logs were coming in, they were being sorted - by default - on the ID column * The implementor chose to use the quicksort procedure in MFC (another big mistake), but didn't know that a near-ordered list is what takes quicksort the longest. It's an N^2 algorithm that is HORRIBLE on sorted lists. * Inside the "compare" procedure that one neeed to provide, he was doing a "new" on both elements, converting them from binary to ASCII, doing the compare, and then freeing the components. * When a new item was added, he'd allocate a larger slot of memory, copy everything into it and the new record, sort it, and delete the old chunk of memory for every log entry. So I modified the code to use a linked list (not MFCs linked list) and do an insertion sort as the data came in, and sorted based on the field that was to be sorted. The CPU utilization stayed at around 2% and the download took *10 SECONDS*. It was just as "hard" to do this as it was to do it wrong (above). It just required a bit of restraint to keep from resorting to the grab bag mentality. I confronted him on the "stupidity". He had many issues: 1) The implementor thought a quick sort routine was a "quick" sort algorithm, so he used it. He didn't know what a quicksort algorithm was. 2) He never considered doing comparisons on the ID field in a binary fashion. 3) He didn't know how to use a linked list (even though MFC provided a linked list class, but that's another story) 4) He never tested the app on any more than about 10 entires 5) He never stopped to think about the customer who would have to use this piece of garbage 6) On top of all this, he was VERY defensive about the implementation and I immediately went to his boss and explained what a total fuckup he was. He was fired 6 months later for a variety of other mistakes (includnig this one). Let's not talk about the time he knew the size of the data coming in but insisted on alocating a static sized buffer... Might be an extreme case, but this kind of thing happens *ALL* the time. My rule of thumb, if I can't find a good reason for what I'm doing, it's time to rethink what I'm doing, and I'm appalled that more people don't think the same thing. It's one thing to KNOW that you're doing a quick & dirty hack to get something to work, it's yet entirely something else to go along and do things because you have NO FUCKING IDEA how it *SHOULD* be done, and never bother to investigate. But I see this kind of thing all the time. That's why I work in the embedded systems world. You CAN'T get away with that sort of crap, and I can't stand working with people who are too lazy to do it right. Time constraints are never an excuse for sacrificing quality. > However, I must confess that I've decided to implement my own linkedlist and > hash table and revert to C structs rather than C++ classes for some of this > stuff. Good man. It's not like linked lists are tough to do. And frankly, if people don't know how to create something as simple as a linked list, they have no business using "libraries" to "help" them do it. > '?rbegin@?$_Tree@IU?$pair@$$CBIPAUArmlet@@@std@@U_Kfn@?$map@IPAUArmlet@@U?$l > ess@I@std@@V?$allocator@PAUArmlet@@@3@@2@U?$less@I@2@V?$allocator@PAUArmlet@ > @@2@@std@@QAE?A > V?$reverse_bidirectional_iterator@Viterator@?$_Tree@IU?$pair@$$CBIPAUArmlet@ > @@std@@U_Kfn@?$map@IPAUArmlet@@U?$less@I@std@@V?$allocator@PAUArmlet@@@3@@2@ > U?$less@I@2@V?$allocator@PAUArmlet@@@2@@std@@U?$pair@$$CBIPAUArmlet@@@3@AAU4 > 3@PAU43@H@2@XZ' : ide > ntifier was truncated to '255' characters in the browser information > WTF!? Yeouch! > > And most don't even know that C++ started out as nothing more than a > > preprocessor to C in the late 80s. > Might have been better if it had stayed that way. Me personally, I think > Java's the best thing ever invented. Shame it's so damned slow. Java is the *WORST* thing ever invented. Well, at least for serious applications. It might have its place on little web applets, but come on. What else is it useful for? Java certianly isn't as portable as everyone professes. What I find so frustrating is that more people who wouldn't have been able to program are now programming because of wizards/tools. What happened to sitting down and learning how to do it properly? Notice how are CPUs get faster and faster but code doesn't? -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 12:39:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA16476 for dynarec-outgoing; Thu, 15 Feb 2001 12:39:12 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: aaagh C++ From: "M.I.K.e" Message-ID: <00037d5e8304a403_mailit@mail.dynarec.com> References: <004801c09788$5c5dee20$b32bfea9@daves> Date: Thu, 15 Feb 2001 21:43:28 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >D:\Program Files\Microsoft Visual Studio\VC98\INCLUDE\xtree(200) : warning >C4786: >'?rbegin@?$_Tree@IU?$pair@$$CBIPAUArmlet@@@std@@U_Kfn@?$map@IPAUArmlet@@U?$l >ess@I@std@@V?$allocator@PAUArmlet@@@3@@2@U?$less@I@2@V?$allocator@PAUArmlet@ >@@2@@std@@QAE?A >V?$reverse_bidirectional_iterator@Viterator@?$_Tree@IU?$pair@$$CBIPAUArmlet@ >@@std@@U_Kfn@?$map@IPAUArmlet@@U?$less@I@std@@V?$allocator@PAUArmlet@@@3@@2@ >U?$less@I@2@V?$allocator@PAUArmlet@@@2@@std@@U?$pair@$$CBIPAUArmlet@@@3@AAU4 >3@PAU43@H@2@XZ' : ide >ntifier was truncated to '255' characters in the browser information >WTF!? Don't you just love Microsoft's name-mangling? >Might have been better if it had stayed that way. Me personally, I think >Java's the best thing ever invented. Shame it's so damned slow. Java is cleaner desinged than C++ but the JVM is crap! >Dave -- M.I.K.e The Heineken Uncertainty Principle: You can never be sure how many beers you had last night. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 12:39:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA16469 for dynarec-outgoing; Thu, 15 Feb 2001 12:39:09 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: aaagh C++ From: "M.I.K.e" Message-ID: <00037d5e7df4ff8f_mailit@mail.dynarec.com> References: Date: Thu, 15 Feb 2001 21:42:03 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Oh! ... Lately everyone is using C++ and I'm still wondering why :(. >> I should begin to learn about that. >They don't even know why, either. I'll have to learn it someday and I know why: most of the BeOS API is for C++ , but it seems to be quite cleanly designed. >We had two summer interns at Intel who were writing everything with >class wrappers. I point blank asked them why, and eventually it mulled >down to "Because that's the way we were taught to do it." Hehe ;-) When I started at university I actually had to learn ANSI C first because I was still hacking K&R C... >I still assert that C++ is mostly a fashion language. Most of those who >use it have no idea what they're doing or why they're doing it (present >company aside). I've still not run in to a situation where I *HAD* to have >it. Sure, the classes make some things quite convenient, but most don't >know the consequences of using many of the C++ constructs and thusly >create crappy code. Too true. And especially with smaller programs it's just plain stupid to start categrizing classes first than simply write it down on one go, probably with a few functions. >And most don't even know that C++ started out as nothing more than a >preprocessor to C in the late 80s. I know ;-) OT: This probably didn't come through in one of my older mails: Any news from your nice little daughter? >-->Neil -- M.I.K.e Best of all is never to have been born. Second best is to die soon. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 12:39:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA16488 for dynarec-outgoing; Thu, 15 Feb 2001 12:39:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: aaagh C++ From: "M.I.K.e" Message-ID: <00037d5e864a97ca_mailit@mail.dynarec.com> References: <004801c09788$5c5dee20$b32bfea9@daves> <000201c0978a$2d644180$0200a8c0@cheetah> Date: Thu, 15 Feb 2001 21:44:23 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Might have been better if it had stayed that way. Me personally, I think >> Java's the best thing ever invented. Shame it's so damned slow. >Until you try to do anything like graphics or sound in it. Or use more than >one mouse button. Then you're screwed... Or you have to find workarounds! Hey, that's what they call evolution! We all go back to the first Macs and get a single button mouse... >Neil. -- M.I.K.e "The Right Honorable Gentleman is indebted to his memory for his jests and to his imagination for his facts." -- Sheridan --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 12:39:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA16496 for dynarec-outgoing; Thu, 15 Feb 2001 12:39:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: buffers From: "M.I.K.e" Message-ID: <00037d5e9e62dae9_mailit@mail.dynarec.com> References: <200102150847.JAA25612@pons.ac.upc.es> Date: Thu, 15 Feb 2001 21:51:07 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The main problem with IR as Mike pointed long ago are the differences >between both target and source ISAs with the IR. The more different >they are the more info is lost and thus less optimizations are >possible. Yes, either the IR will be too complex or too simple, in either case the traget code will be inefficient. >I think IR seems to be wonderful in the 'RISC dream >world' with very similar ISAs and without nasty instructions. Especially the group of Alpha, MIPS, SuperH and MCore is quite a nice example, especially since they don't have any condition flags in the traditional meaning. >The problems arise when you discover how awfully different are >machines told to be RISC. Yeah, just take a look at PA-RISC and PowerPC! >In fact that is one of the intentions of an IR, hide the special >characteristics of the CPUs ;). But people thinking about IRs >seems to be more interested in 'ease' rather than performance. Which in the end screws up the whole idea of dynamic translation... >It uses to be or it should be (if not what a mess of IR) faster and >easier because the IR is well known, simpler and the write of the >target layer is more 'automatized'. In fact the only real use of >an IR as 'portable' use to be a C based interpreter of the IR like >the one used in Ardi's and Generator (?). Both use threaded code, which I wouldn't call an IR. I bet Gwenole has more details ;-) >About how bad an IR can be ... I'm now working to translate Dixie >ISA (the IR) to Mips. The Dixie ISA is designed so that the >translation Alpha->Dixie Dixie->Mips is almost direct and one to >one. Just for standard RISC type instruction of course ;). And since Alpha was highly influenced by MIPS (earlier DECstations used MIPS) you could even almost so a direct translation! >But when handling PowerPC or x86 ... I'm just testing those but I >think there will a lot of useless code which will be hard to >take care and remove later in a target optimization layer. Yeah, PowerPC and x86 can be real bitches! >Victor -- M.I.K.e Satellite Safety Tip #14: If you see a bright streak in the sky coming at you, duck. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 12:42:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA16510 for dynarec-outgoing; Thu, 15 Feb 2001 12:42:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Feb 2001 12:56:51 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: aaagh C++ In-Reply-To: <00037d5e7df4ff8f_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > OT: This probably didn't come through in one of my older mails: > Any news from your nice little daughter? I thought I posted about this already: http://www.synthcom.com/~neil/Erin.jpg Born 2/2/2001 (shares a birthday with Brent Spiner!) @ 4:04PM - 5 Pounds 6 ounces. Kinda small, but completely healthy! -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 12:53:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA16529 for dynarec-outgoing; Thu, 15 Feb 2001 12:52:58 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Feb 2001 13:07:14 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: buffers In-Reply-To: <00cd01c0974b$e7657020$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > You clipped my "maybe you should do your own buffer allocation > > strategy" quote, which this was exactly what I was getting at. ;-) > I'm going to try not to reinvent the wheel unless I have to, I don't have > time really. Doing suballocation routines is very, VERY easy to do. It'd take you all of 5 minutes. > > nasty (consider DAA or other weird translation instructions). Register > > allocation becomes tougher if you have a register starved target CPU like > > the x86, and IRs generally have many, many virtual registers. > That's true except that the ARM doesn't have any weird instructions and most > map quite nicely onto x86 with the exception of some flag bashing on the > barrel shifter. You're lucky. If you think a bit more general case (like the 34010 which is a prime candidate for recompilation), it has all kinds of weird instructions that completely breaks this. It's nice when you don't have to deal with multiple source CPUs. > I don't see reg allocation as much of a problem - it's all the pentium's > fault, not mine. True, but what I meant was register allocation in terms of the dynarec "swapping" registers in and out on a block of code depending upon their use. > > But you wouldn't run into a situation where combinations of source > > instructions would generate just one target instruction, and certainly not > > with an IR sitting in between it. > The chances of an ARM instruction being able to be mapped to an x86 > instruction are *SLIM*. However, some do e.g. > adds r0,r0,r1 -> addl r0,r1 > but that's about it. If I was going x86->ARM then it would be a different > story. Well, there are rotate instructions that do, as well as memory stores. > > CPU and the best you can do is a 1:1 translation. But you're better off > > optimizing the source anyway. The source layer will equal or smaller to an > > IR in *ALL* cases, so it's much better to optimize your source and then > > your target once the code is emitted. > Not quite sure what you mean by optimise the source, I take it that you mean > collect enough collateral information that in conjunction with the source > you can see the redundancies in the source. Yes, that's what I mean. Not only that, some sequences on the ARM (forgive me if my syntax is incorrect) can be collapsed into a simple x86 instruction. ADW Is crashing on me right now, so I can't get a good example to show you. ;=| > > prime example. It generates decent code on a RISC CPU but generates lousy > > code on the x86. I'm wondering how many millions of clock cycles are eaten > > up by the unoptimized code it produces. > Possibly, but GCC is so generic that it was enver going to be too good, my > IR is being designed explicity as a decomposition of ARM instructions (much > like phetacode) so that you can see the individual actions going on. The > decomposition is limited by the need to map these decompositions to x86 > instructions to take advantage of x86 flags so most of the emulated flag > handling is still implicit. Which is a pain in the arse and I believe is why > dynarec IR issues diverge pretty fast from compiler IRs. They still have the same problems, though. Generalization leads to less efficient code, which, IMHO, if you're not going for top speed, the entire reason for a recompiler (speed!) is moot. Unless of course you need to show something for a class project and don't know the target CPU well enough to know whether or not you can get it to work before it's due. ;-) Have you looked at any of the DRMZ80 code and some of the fun stuff that it does? -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 13:22:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA16567 for dynarec-outgoing; Thu, 15 Feb 2001 13:22:38 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: aaagh C++ From: "M.I.K.e" Message-ID: <00037d5f23ac30e8_mailit@mail.dynarec.com> References: Date: Thu, 15 Feb 2001 22:28:23 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I thought I posted about this already: >http://www.synthcom.com/~neil/Erin.jpg Yeah, you did, but I thought you had something new to report. Eg. you first experience in exchanging diapers ;-) >Born 2/2/2001 (shares a birthday with Brent Spiner!) @ 4:04PM - 5 Pounds 6 >ounces. Kinda small, but completely healthy! Maybe she'll be as fast as Data on the keyboard then ;-) >-->Neil -- M.I.K.e Zounds! I was never so bethumped with words since I first called my brother's father dad. -- William Shakespeare, "King John" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 13:27:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA16582 for dynarec-outgoing; Thu, 15 Feb 2001 13:27:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Feb 2001 13:41:30 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: aaagh C++ In-Reply-To: <00037d5f23ac30e8_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I thought I posted about this already: > >http://www.synthcom.com/~neil/Erin.jpg > Yeah, you did, but I thought you had something new to report. > Eg. you first experience in exchanging diapers ;-) Well, I wouldn't "exchange" them, I'd only change them. ;-) I have plenty of poop stories, but I didn't think it was of general interest. If you'd like, I'd be happy to share my stories of a daiper full of trouser chili. ;-=) -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 13:34:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA16598 for dynarec-outgoing; Thu, 15 Feb 2001 13:34:19 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004501c09798$adff8080$0200a8c0@cheetah> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: aaagh C++ Date: Thu, 15 Feb 2001 21:44:40 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Well, I wouldn't "exchange" them, I'd only change them. ;-) I have plenty > of poop stories, but I didn't think it was of general interest. If you'd > like, I'd be happy to share my stories of a daiper full of trouser > chili. ;-=) Why not, it's always funny to hear these things. I have heard a story from my Dad (I don't think he's ever forgiven me for it) that when I was little and he changed my nappy/diaper, he'd taken his slippers off first. And I, with a tremendous shot, managed to pee all the way across the room straight into one of them. I think he knew how I was going to turn out right then. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 13:43:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA16618 for dynarec-outgoing; Thu, 15 Feb 2001 13:43:28 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: aaagh C++ From: "M.I.K.e" Message-ID: <00037d5f9801bec6_mailit@mail.dynarec.com> References: Date: Thu, 15 Feb 2001 23:00:55 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Eg. you first experience in exchanging diapers ;-) >Well, I wouldn't "exchange" them, I'd only change them. ;-) Erm, yeah, that's what I meant... ;-) >I have plenty >of poop stories, but I didn't think it was of general interest. If you'd >like, I'd be happy to share my stories of a daiper full of trouser >chili. ;-=) As long as no one invents the smell-mail ;-) >-->Neil -- M.I.K.e There can be no twisted thought without a twisted molecule. -- R. W. Gerard --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 14:00:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA16656 for dynarec-outgoing; Thu, 15 Feb 2001 14:00:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00a501c0979b$b5bbc240$b32bfea9@daves> From: "David Sharp" To: References: <004801c09788$5c5dee20$b32bfea9@daves> <00037d5e8304a403_mailit@mail.dynarec.com> Subject: Re: DYNAREC: aaagh C++ Date: Thu, 15 Feb 2001 22:04:46 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Don't you just love Microsoft's name-mangling? It's a bit messy isn't it, I'm not sure it's completely their fault though, VC++ is generally pretty impressive as a development environment/compiler IMHO. > Java is cleaner desinged than C++ but the JVM is crap! No fair, the byte code's a little dodgy but some of the stuff they do in hotspot's very clever. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 14:00:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA16661 for dynarec-outgoing; Thu, 15 Feb 2001 14:00:18 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00a401c0979b$b2689fa0$b32bfea9@daves> From: "David Sharp" To: References: <004801c09788$5c5dee20$b32bfea9@daves> <000201c0978a$2d644180$0200a8c0@cheetah> Subject: Re: DYNAREC: aaagh C++ Date: Thu, 15 Feb 2001 21:18:10 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Until you try to do anything like graphics or sound in it. Or use more than > one mouse button. Then you're screwed... Or you have to find workarounds! True true, but if you're not doing games or intense graphics apps then it's great. As for the one button mouse, I hadn't even noticed... FYI, one git in my year's writing a NES emu in java for his project which is IMHO a cop out project, I could do it in two weeks. I'll further defend Java in my email to nb.... Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 14:03:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA16676 for dynarec-outgoing; Thu, 15 Feb 2001 14:03:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: aaagh C++ From: "M.I.K.e" Message-ID: <00037d5fa68093d7_mailit@mail.dynarec.com> References: <004501c09798$adff8080$0200a8c0@cheetah> Date: Thu, 15 Feb 2001 23:04:58 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Why not, it's always funny to hear these things. I have heard a story from >my Dad (I don't think he's ever forgiven me for it) that when I was little >and he changed my nappy/diaper, he'd taken his slippers off first. And I, >with a tremendous shot, managed to pee all the way across the room straight >into one of them. >I think he knew how I was going to turn out right then. :)) Now I know that you didn't have to become that sick, you've always been that sick! ;-) >Neil. -- M.I.K.e Baseball is a skilled game. It's America's game -- it, and high taxes. -- Will Rogers --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 14:03:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA16685 for dynarec-outgoing; Thu, 15 Feb 2001 14:03:20 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: aaagh C++ From: "M.I.K.e" Message-ID: <00037d5fdf13dfc4_mailit@mail.dynarec.com> References: Date: Thu, 15 Feb 2001 23:20:48 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [long horror story snipped] >I confronted him on the "stupidity". He had many issues: >1) The implementor thought a quick sort routine was a "quick" sort >algorithm, so he used it. He didn't know what a quicksort algorithm was. No comment... >2) He never considered doing comparisons on the ID field in a binary >fashion. You might laugh but if you take a look at some SQL books they actually recommend taking char(x) for primary keys! They'll never be able to convince me that a string compare can be only nearly as fast as a binary compare! I figured the best way is to take an increasing integer ID for the primary key. That way you also don't have problems, as the primary key and all dependend foreign keys should never change, which is probably the reason why you don't have an "on update cascade" in Oracle, only "on delete cascade". >3) He didn't know how to use a linked list (even though MFC provided a >linked list class, but that's another story) Erm... >4) He never tested the app on any more than about 10 entires Holy shit, my implementations are surely better tested than this! >6) On top of all this, he was VERY defensive about the implementation Well, if somebody presents me a better solution than mine I can accept that! >Might be an extreme case, but this kind of thing happens *ALL* the time. I know one guy who likes to create views for all possible select statements he might have to send to the DBMS. For one task he created 10 views of which one has 4 or 6 unions of some other views, yeah that is tremendously slow! I guess I'll have to clean that mess up someday when I'm done with the more important stuff like hunting down and eliminating bugs that have been in the application for years... >Java is the *WORST* thing ever invented. Well, at least for serious >applications. It might have its place on little web applets, but come on. >What else is it useful for? Java certianly isn't as portable as everyone >professes. I think there was some Java hype in the beginning and now that it got silent in the geek department the bosses hear the echo and make the programmers do everything in Java because they heard it's so great... >What I find so frustrating is that more people who wouldn't have been able >to program are now programming because of wizards/tools. What happened to >sitting down and learning how to do it properly? Notice how are CPUs get >faster and faster but code doesn't? Yeah, too true... >-->Neil -- M.I.K.e Academic politics is the most vicious and bitter form of politics, because the stakes are so low. -- Wallace Sayre --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 14:03:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA16693 for dynarec-outgoing; Thu, 15 Feb 2001 14:03:22 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: V86 & VME From: "M.I.K.e" Message-ID: <00037d5fb0eb1d91_mailit@mail.dynarec.com> Date: Thu, 15 Feb 2001 23:07:53 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Does anybody have experience with V86 monitors? I think a DOS box for BeOS might be nice ;-) -- M.I.K.e The day-to-day travails of the IBM programmer are so amusing to most of us who are fortunate enough never to have been one -- like watching Charlie Chaplin trying to cook a shoe. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 14:13:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA16713 for dynarec-outgoing; Thu, 15 Feb 2001 14:13:30 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008601c0979e$2926a7c0$0200a8c0@cheetah> From: "Neil Griffiths" To: References: <004501c09798$adff8080$0200a8c0@cheetah> <00037d5fa68093d7_mailit@mail.dynarec.com> Subject: Re: DYNAREC: aaagh C++ Date: Thu, 15 Feb 2001 22:20:43 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Now I know that you didn't have to become that sick, you've always been that > sick! ;-) Hey, it takes great skill to do that! Just imagine all the dynamics of it, the aiming etc. Come on! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 14:15:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA16726 for dynarec-outgoing; Thu, 15 Feb 2001 14:15:30 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ae01c0979d$d7ce6020$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: aaagh C++ Date: Thu, 15 Feb 2001 22:22:54 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I flatly disagree that that's a good reason in general. The problem is > people have a "just get it done" attitude about just about everything now, > and no one bothers to think about the consequences of their actions. >[snip] Fair comment, what I was trying to get at (and didn't get over) was the amount of time I have wasted sometimes trying to do things just right in terms of neatness, when not quite so clever is normally equally good in terms of performance etc. I think the other big problem a lot of my year group and good friends face is that they do all their programming in java (which is great for many things) and scripting and v high level languages but that leaves them totally unprepared for C/C++/asm etc. > We had an application that downloaded 30 byte log entries from a remote > server.[snip] That's an atrocious tale, how the hell did they get internships in the first place? > Good man. It's not like linked lists are tough to do. And frankly, if > people don't know how to create something as simple as a linked list, they > have no business using "libraries" to "help" them do it. True they're simple to write, my problem was with doing efficient polymorphic stuff in C++/C which I've never tried before. void*'s are great. >[snip] > > ntifier was truncated to '255' characters in the browser information > > WTF!? > Yeouch! No, I don't know what it means either. In the generated asm it does seem to truncate some labels in the STL libs though, god only knows why. > Java is the *WORST* thing ever invented. Well, at least for serious > applications. It might have its place on little web applets, but come on. > What else is it useful for? Java certianly isn't as portable as everyone > professes. Sorry that's not fair. 1) Java dumps on everything I've seen from a height for it's inherent debugging facilities: unrolling the procedure call stack and explicitly telling you exactly what's going wrong when you do null pointers etc. 2) Has the best set of libraries I've ever seen (consistent, easy, flexible) which makes developing general software (i.e. not embedded/games etc.) a breeze, probably why I got so frustrated when I couldn't just use new Hashtable() or new LinkedList() in C++, STL is shite in comparison. 3) Swing kicks ass. (Swing's the GUI from Java 1.2 onwards) It's *easy* to develop GUI programs that genuinely do run on most platforms without recompiling, e.g. Solaris and Windows. I know, I've done it without even trying. For those who are interested, see my Manchester Baby (Small Scale Experimental Machine) simulator of the world's first stored-program computer, that I did at Christmas for my History coursework. Good example of graphics/GUI and completely portable. It's also bloody accurate, the guy who built a replica for the 50th anniversary advised me and is planning to use the simulator for their demos at the museum the replica's housed at. http://www.dcs.warwick.ac.uk/~csuix/baby.zip > What I find so frustrating is that more people who wouldn't have been able > to program are now programming because of wizards/tools. What happened to > sitting down and learning how to do it properly? Notice how are CPUs get > faster and faster but code doesn't? That's true but that's not Java's fault. I've never used wizards/tools with java, you really don't need them. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 14:20:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA16739 for dynarec-outgoing; Thu, 15 Feb 2001 14:20:01 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00b101c0979e$7a085fd0$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: buffers Date: Thu, 15 Feb 2001 22:27:26 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Doing suballocation routines is very, VERY easy to do. It'd take you all > of 5 minutes. I'm not quite sure what you mean by suballocation, do tell? > You're lucky. If you think a bit more general case (like the 34010 which > is a prime candidate for recompilation), it has all kinds of weird > instructions that completely breaks this. It's nice when you don't have to > deal with multiple source CPUs. I'm not thinking about multiple CPUs! :o) > True, but what I meant was register allocation in terms of the dynarec > "swapping" registers in and out on a block of code depending upon their > use. Ah, fair comment. That is a problem! > Well, there are rotate instructions that do, as well as memory stores. True for rotates, there are probably a few other logic/arith instructions too. I need to add things like checks for data abort exceptions to memory access so that's not 1 to 1 either. > Yes, that's what I mean. Not only that, some sequences on the ARM (forgive > me if my syntax is incorrect) can be collapsed into a simple x86 > instruction. ADW Is crashing on me right now, so I can't get a good > example to show you. ;=| I'd be interested to see which sequences you mean if you can get some together!? > They still have the same problems, though. Generalization leads to less > efficient code, which, IMHO, if you're not going for top speed, the entire > reason for a recompiler (speed!) is moot. Unless of course you need to > show something for a class project and don't know the target CPU well > enough to know whether or not you can get it to work before it's due. ;-) That kind of sums it up really. Except that I know I can't get it to work before it's due. I'm taking the attitude of 'i'll have something interesting to talk about' and I do have a nifty interpreter that sort of works... > Have you looked at any of the DRMZ80 code and some of the fun stuff that > it does? I did a while ago but not recently, are there any particulars I should look at? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 14:26:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA16753 for dynarec-outgoing; Thu, 15 Feb 2001 14:26:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00bd01c0979f$4f46d410$b32bfea9@daves> From: "David Sharp" To: Subject: DYNAREC: deleting structs Date: Thu, 15 Feb 2001 22:33:10 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Quick one: I presume that if I do: typedef struct { uint8 a; uint8 b; } test; test* mytest = new test; I need to perform: delete mytest before I leave the function, otherwise I leak memory? Or do I use free, or are they the same? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 14:35:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA16772 for dynarec-outgoing; Thu, 15 Feb 2001 14:35:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Feb 2001 14:49:22 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: deleting structs In-Reply-To: <00bd01c0979f$4f46d410$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I presume that if I do: > > typedef struct { uint8 a; uint8 b; } test; > test* mytest = new test; > > I need to perform: > > delete mytest > > before I leave the function, otherwise I leak memory? Or do I use free, or > are they the same? Use delete if you do new, and free if you do malloc. If you interchange them, *BAD* things can happen... I unfortunately know this from experience. ;-9 -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 14:36:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA16782 for dynarec-outgoing; Thu, 15 Feb 2001 14:36:55 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Feb 2001 14:51:12 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: aaagh C++ In-Reply-To: <004501c09798$adff8080$0200a8c0@cheetah> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Well, I wouldn't "exchange" them, I'd only change them. ;-) I have plenty > > of poop stories, but I didn't think it was of general interest. If you'd > > like, I'd be happy to share my stories of a daiper full of trouser > > chili. ;-=) > Why not, it's always funny to hear these things. I have heard a story from > my Dad (I don't think he's ever forgiven me for it) that when I was little > and he changed my nappy/diaper, he'd taken his slippers off first. And I, > with a tremendous shot, managed to pee all the way across the room straight > into one of them. Okay, you asked for it. A few nights ago my daughter was being fussy. She acted like she had gas or some other problem and had a partially dirty diaper, so I unwrapped her to change the diaper. I heard a PFFFFFTT! Only to narrowly miss a stream of the squirts that shot about 7 feet from the changing table to the wall. Never in my life had I been both disguted and impressed at the same time. Now, back to our regularly scheduled dynarecing... -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 14:39:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA16791 for dynarec-outgoing; Thu, 15 Feb 2001 14:39:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Feb 2001 14:54:05 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: aaagh C++ In-Reply-To: <00037d5fdf13dfc4_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >2) He never considered doing comparisons on the ID field in a binary > >fashion. > You might laugh but if you take a look at some SQL books they actually > recommend taking char(x) for primary keys! They'll never be able to convince > me that a string compare can be only nearly as fast as a binary compare! Actually, the underpinnings create indexes based on the strings, and that's really what you're comparing. ;-) I know somthi'n about SQL... that was my primary task a few years ago at an accounting firm. Wanna hear *THAT* optimization story? It's a good one! > >6) On top of all this, he was VERY defensive about the implementation > Well, if somebody presents me a better solution than mine I can accept Yeah, me too. In my heyday of being an young, inexperienced slob, I couldn't, but now that I'm an experienced old slob, I can with no problem because I've had quite a few successes. ;-) I'm constantly reinventing how I do things to do them better, more efficiently, etc... > >Might be an extreme case, but this kind of thing happens *ALL* the time. > I know one guy who likes to create views for all possible select statements > he might have to send to the DBMS. For one task he created 10 views of which > one has 4 or 6 unions of some other views, yeah that is tremendously slow! I Jeezeuz.... outer joins?! That's *DEATH*! > I think there was some Java hype in the beginning and now that it got silent > in the geek department the bosses hear the echo and make the programmers do > everything in Java because they heard it's so great... Yeah, that's the danger of anything hyped. Management hears it's a good idea and manage to ram it down everyone else's throats. -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 14:48:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA16809 for dynarec-outgoing; Thu, 15 Feb 2001 14:48:12 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Jack To: dynarec@dynarec.com Subject: Re: DYNAREC: deleting structs Date: Thu, 15 Feb 2001 17:58:32 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: <00bd01c0979f$4f46d410$b32bfea9@daves> In-Reply-To: <00bd01c0979f$4f46d410$b32bfea9@daves> X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, 15 Feb 2001 22:33:10 -0000, "David Sharp" wrote: >Quick one: > >I presume that if I do: > > typedef struct { uint8 a; uint8 b; } test; > test* mytest = new test; > >I need to perform: > > delete mytest > >before I leave the function, otherwise I leak memory? Or do I use free, or >are they the same? There is no value I can see in using new (in this instance). Avoid it unless you really know why it is appropriate to your logic. Why use C++ syntax anyway? Using new would then require a delete before exiting the function. If you use a function scope variable of type test (rather than a pointer), it will get allocated off the stack at function start (via an implied new) then be discarded with the rest of the function's local variables at function exit (via an implied delete). -- Jack ---- "For god so loved the world, that he gave his only begotten son, that whosoever would believe in him, would believe in anything " "I'm a born-again atheist " - Seen in a newsgroup --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 14:48:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA16820 for dynarec-outgoing; Thu, 15 Feb 2001 14:48:35 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Feb 2001 15:02:52 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: aaagh C++ In-Reply-To: <00ae01c0979d$d7ce6020$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > people have a "just get it done" attitude about just about everything now, > > and no one bothers to think about the consequences of their actions. > Fair comment, what I was trying to get at (and didn't get over) was the > amount of time I have wasted sometimes trying to do things just right in > terms of neatness, when not quite so clever is normally equally good in > terms of performance etc. Sure - there is a balance. Doing things clever is almost never as good as doing things simple, unless you just gotta have that last ounce of optimization and have no other choice. > I think the other big problem a lot of my year group and good friends face > is that they do all their programming in java (which is great for many > things) and scripting and v high level languages but that leaves them > totally unprepared for C/C++/asm etc. Frankly, I think schools should force people to learn assembly (for CS or CE anyway) so they at least have a respect of what's going on down below. I came from the days of *HAVING* to use assembly to get things done. > > We had an application that downloaded 30 byte log entries from a remote > > server.[snip] > That's an atrocious tale, how the hell did they get internships in the first > place? That wasn't an intern - that was a contractor. He was a UI programmer and known for doing great UIs. His UI designs were great, but the dumbass manager who hired him didn't realize there'd be low level crap to deal with. I could forgive that kind of behavior from an intern, as we would expect them to be quite ignorant. > > Good man. It's not like linked lists are tough to do. And frankly, if > > people don't know how to create something as simple as a linked list, they > > have no business using "libraries" to "help" them do it. > True they're simple to write, my problem was with doing efficient > polymorphic stuff in C++/C which I've never tried before. void*'s are great. And problematic, and one of the weaknesses of the C language. Wanna pass multiple types to a procedure? Void *! Screw typechecking! ;-0 At least C++ allows some reprieve to this. > > > ntifier was truncated to '255' characters in the browser information > > > WTF!? > > Yeouch! > No, I don't know what it means either. In the generated asm it does seem to > truncate some labels in the STL libs though, god only knows why. It almost looks as if it's including a bunch of other stuff... a bug perhaps? > > Java is the *WORST* thing ever invented. Well, at least for serious > > applications. It might have its place on little web applets, but come on. > > What else is it useful for? Java certianly isn't as portable as everyone > > professes. > Sorry that's not fair. Sure it is - depending on the tasks. > 1) Java dumps on everything I've seen from a height for it's inherent > debugging facilities: unrolling the procedure call stack and explicitly > telling you exactly what's going wrong when you do null pointers etc. Pointers in Java? Not in any that I've used! > 2) Has the best set of libraries I've ever seen (consistent, easy, flexible) > which makes developing general software (i.e. not embedded/games etc.) Right, and my primary reason for languages is embedded systems/games optimization - something Java is in direct conflict with. > breeze, probably why I got so frustrated when I couldn't just use new > Hashtable() or new LinkedList() in C++, STL is shite in comparison. What's so hard about writing a 4 line hash table for yourself, or doing linked lists yourself? These are NOT hard tasks. I can imagine using something like a tree view library or dialog editor to help develop quicker, but come on, hash/linked lists? Jeez! This is data structures 101! And my statement above about it not being for serious applications - I should qualify "serious". Serious as in tedious UI (like sound wave editing), anything requiring speed, games, et... for just UI apps it's fine, but for anything hardcore, it's not the right tool. Such as, I wouldn't consider writing Photoshop or Sound Forge in Java, but I might consider writing a file conversion program in Java, or even a synthesizer patch editor. > > What I find so frustrating is that more people who wouldn't have been able > > to program are now programming because of wizards/tools. What happened to > > sitting down and learning how to do it properly? Notice how are CPUs get > > faster and faster but code doesn't? > That's true but that's not Java's fault. I've never used wizards/tools with > java, you really don't need them. Right - the problem isn't the language or anything else - it's the people. But at the same time, I wish people were forced to learn the basics before punishing us with bloated, slow and buggy applications. -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 15:00:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA16843 for dynarec-outgoing; Thu, 15 Feb 2001 15:00:10 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00a201c097a4$ae4ebb80$0200a8c0@cheetah> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: aaagh C++ Date: Thu, 15 Feb 2001 23:11:30 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Okay, I think I'll make this message the first of the day sticking to Dynarec topics. :) > > I think the other big problem a lot of my year group and good friends face > > is that they do all their programming in java (which is great for many > > things) and scripting and v high level languages but that leaves them > > totally unprepared for C/C++/asm etc. > > Frankly, I think schools should force people to learn assembly (for CS or > CE anyway) so they at least have a respect of what's going on down > below. I came from the days of *HAVING* to use assembly to get things > done. Do you know what's upsetting? I can program for several CPUs using assembly, so when I saw that "Microprocessors" was an option for one of this years modules, I chose it. The sad thing is that I'm one of the only ones - not enough people chose it, so it wasn't run. I'm sorry, but I agree with you Neil. People should be FORCED to learn assembly if they are going to program. That way they get a feeling for how things run in the processor and the rest of their code shows it! > > > What else is it useful for? Java certianly isn't as portable as everyone > > > professes. > > Sorry that's not fair. > > Sure it is - depending on the tasks. Portability shouldn't ever have been it's big selling point. It should have been sold as a solid language that could *also* run on multiple-platforms. Because they aimed at portability being a major part of the language, they had to cut down on things. Seriously, the one mouse button thing bugs me. > > 1) Java dumps on everything I've seen from a height for it's inherent > > debugging facilities: unrolling the procedure call stack and explicitly > > telling you exactly what's going wrong when you do null pointers etc. > > Pointers in Java? Not in any that I've used! That's against the Java spec, you're not meant to be able to have pointers - only instances of objects. What do you mean? > And my statement above about it not being for serious applications - I > should qualify "serious". Serious as in tedious UI (like sound wave > editing), anything requiring speed, games, et... for just UI apps it's > fine, but for anything hardcore, it's not the right tool. Such as, I > wouldn't consider writing Photoshop or Sound Forge in Java, but I might > consider writing a file conversion program in Java, or even a synthesizer > patch editor. I included this because I concur 100%. > Right - the problem isn't the language or anything else - it's the > people. But at the same time, I wish people were forced to learn the > basics before punishing us with bloated, slow and buggy applications. Java is going to be slow because of the VM. All people can do is write better VM's (think HotSpot) but Java is always going to be slower because of the cross-platform ability... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 15:04:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA16854 for dynarec-outgoing; Thu, 15 Feb 2001 15:04:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Feb 2001 15:18:38 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: buffers In-Reply-To: <00b101c0979e$7a085fd0$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Doing suballocation routines is very, VERY easy to do. It'd take you all > > of 5 minutes. > I'm not quite sure what you mean by suballocation, do tell? So in this case let's say you have a TON of little nodes that you need to allocate (I'll call them SOps) and deallocate on the fly, and it needs to be quick: struct sOp { UINT8 u8Used; UINT32 u32Opcode struct sOp *psNextLink; }; Let's say you need 10,000 of them, so you create a chunk of INIT code that does this: #define MAX_BLOCKS 10000 static UINT32 sg_u32NextPtr = 0; static struct sOp *sg_psBlockHead = NULL; static void InitHandler(void) { sg_psBlockHead = malloc(sizeof(struct sOp) * MAX_BLOCKS); assert(sg_psBlockHead); memset(sg_psBlockHead, 0, MAX_BLOCKS * sizeof(struct sOp)); } This sets up an array of 10,000 elements that can be accessed in a linear fashion. Normally, malloc/new will traverse a linked list to find you a new home, which can become and N^2 performance problem. malloc/new Are generic allocation and aren't good at doing very high amounts of allocation and frees - you'll fragment the snot out of memory and the garbage collection will kill performance. So, let's consider the allocation routine to get one of these blocks: static struct sOp *AllocateOp(void) { UINT32 u32StartPoint; struct sOp *psBlock = NULL; assert(sg_psBlockHead); u32StartPoint = sg_u32NextPtr; do { if (FALSE == sg_psBlockHead[sg_u32NextPtr].u8Used) { psBlock = &sg_psBlockHead[sg_u32NextPtr]; psBlock->u8Used = TRUE; break; } ++sg_u32NextPtr; if (sg_u32NextPtr >= MAX_BLOCKS) { sg_u32NextPtr = 0; } } while (sg_u32NextPtr != u32StartPoint); return(psBlock); } It'll allocate the next block of a fixed size that you want, and it'll do it very quickly. Even if you fragment the list, it'll be able to find free slots everywhere. And when you free, it's simple: psBlock->u8Used = FALSE; Now it's up for general allocation. This has been a great strategy > > You're lucky. If you think a bit more general case (like the 34010 which > > is a prime candidate for recompilation), it has all kinds of weird > > instructions that completely breaks this. It's nice when you don't have to > > deal with multiple source CPUs. > I'm not thinking about multiple CPUs! :o) Aha! ;-) > > Well, there are rotate instructions that do, as well as memory stores. > True for rotates, there are probably a few other logic/arith instructions > too. I need to add things like checks for data abort exceptions to memory > access so that's not 1 to 1 either. Yeouch. That means every memory read/write access must do a DA check. Well, on the Z80->x86 translation, we did stuff like: LD (3c00h), HL and hardcoded it to: mov [15323c00h], bx Because ahead of time we knew where the virtual 3c00h was, we could get away with stuff liket this. > > me if my syntax is incorrect) can be collapsed into a simple x86 > > instruction. ADW Is crashing on me right now, so I can't get a good > > example to show you. ;=| > I'd be interested to see which sequences you mean if you can get some > together!? We're moving offices, but yes, I'd like to get some exact sequences for you. That'll be next week, tho... > > reason for a recompiler (speed!) is moot. Unless of course you need to > > show something for a class project and don't know the target CPU well > > enough to know whether or not you can get it to work before it's due. ;-) > That kind of sums it up really. Except that I know I can't get it to work > before it's due. I'm taking the attitude of 'i'll have something interesting > to talk about' and I do have a nifty interpreter that sort of works... Yeah, clearly your goals are different from mine, and I know what a lousy thing school projects can to do cool stuff. > > Have you looked at any of the DRMZ80 code and some of the fun stuff that > > it does? > I did a while ago but not recently, are there any particulars I should look > at? Specifically, the output vs. the input and how things were translated. There are a lot of shortcuts it can take that an IR wouldn't allow. -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 15:25:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA16885 for dynarec-outgoing; Thu, 15 Feb 2001 15:25:55 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Giovanni Bajo" To: Subject: Re: DYNAREC: deleting structs Date: Fri, 16 Feb 2001 00:34:23 +0100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 In-Reply-To: <00bd01c0979f$4f46d410$b32bfea9@daves> Importance: Normal X-MDaemon-Deliver-To: dynarec@dynarec.com Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Always match new/delete and malloc/free. Actually, avoid malloc/free at all if coding in C++, and new/delete if coding in vanilla C. RaskY > Quick one: > > I presume that if I do: > > typedef struct { uint8 a; uint8 b; } test; > test* mytest = new test; > > I need to perform: > > delete mytest > > before I leave the function, otherwise I leak memory? Or do I use free, or > are they the same? > > Cheers > Dave > > ------------------------------------------------------------------ > --------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 15:29:04 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA16896 for dynarec-outgoing; Thu, 15 Feb 2001 15:29:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ae01c097a8$b6ac02c0$0200a8c0@cheetah> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: deleting structs Date: Thu, 15 Feb 2001 23:40:26 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Always match new/delete and malloc/free. Actually, avoid malloc/free at all > if coding in C++, and new/delete if coding in vanilla C. You can't even use new/delete in vanilla C because they're C++ keywords. And I disagree anyway! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 15:34:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA16911 for dynarec-outgoing; Thu, 15 Feb 2001 15:34:35 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Giovanni Bajo" To: Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 00:42:48 +0100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 In-Reply-To: <004801c09788$5c5dee20$b32bfea9@daves> Importance: Normal X-MDaemon-Deliver-To: dynarec@dynarec.com Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I just want to get on and generate some IR code and play with my > backpatching. I can't cope with some of the nasty compiler warnings I was > getting trying to use STL, e.g: > > D:\Program Files\Microsoft Visual Studio\VC98\INCLUDE\xtree(200) : warning > C4786: > '?rbegin@?$_Tree@IU?$pair@$$CBIPAUArmlet@@@std@@U_Kfn@?$map@IPAUAr > mlet@@U?$l > ess@I@std@@V?$allocator@PAUArmlet@@@3@@2@U?$less@I@2@V?$allocator@ > PAUArmlet@ > @@2@@std@@QAE?A > V?$reverse_bidirectional_iterator@Viterator@?$_Tree@IU?$pair@$$CBI > PAUArmlet@ > @@std@@U_Kfn@?$map@IPAUArmlet@@U?$less@I@std@@V?$allocator@PAUArml > et@@@3@@2@ > U?$less@I@2@V?$allocator@PAUArmlet@@@2@@std@@U?$pair@$$CBIPAUArmle > t@@@3@AAU4 > 3@PAU43@H@2@XZ' : ide > ntifier was truncated to '255' characters in the browser information > This is standard stuff when using STL under Visual C++. The problem arises because the compiler+linker can handle symbols with unlimited length, while the internal class browser and debugger cannot go over the 256 byte limit. The compiler is warning you that it must trucate the symbol in the browser information file to accomodate this restriction. FYI, an answer to your question may have been found in 10 seconds by looking for "warning C4786" in the KB. There is no way to avoid this. The only thing you can do is disabling that annoying warning: #pragma warning (disable : 4786) before including any STL-related header file. And (to reply to another post in this thread), STL are heavily algorithmically-optimized for high performance. As long as you use them in the proper way, they are fast as hell. The map<> is the most useful template ever, IMO :) RaskY --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 15:42:48 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA16930 for dynarec-outgoing; Thu, 15 Feb 2001 15:42:46 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00fb01c097aa$09427a40$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: aaagh C++ Date: Thu, 15 Feb 2001 23:49:46 -0000 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_00F8_01C097A9.F9B43D20" X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This is a multi-part message in MIME format. ------=_NextPart_000_00F8_01C097A9.F9B43D20 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit > Frankly, I think schools should force people to learn assembly (for CS or > CE anyway) so they at least have a respect of what's going on down > below. I came from the days of *HAVING* to use assembly to get things > done. Unfortunately Warwick only taught 68008 asm in 1 lecture and we never had to use it - about as much use a chocolate teapot and my one complaint about what otherwise is a f*ing good degree. > That wasn't an intern - that was a contractor. He was a UI programmer and > known for doing great UIs. His UI designs were great, but the dumbass > manager who hired him didn't realize there'd be low level crap to deal > with. You can only smile really. Those'll be the consultants getting 4 times the employees salary yeah? > And problematic, and one of the weaknesses of the C language. Wanna pass > multiple types to a procedure? Void *! Screw typechecking! ;-0 At least > C++ allows some reprieve to this. Is there any way round this other than templates (which I couldn't seem to get working) ? > It almost looks as if it's including a bunch of other stuff... a bug > perhaps? I suspect that the std::map is based on trees underneath and various other things as they seemed to be called in the asm. > Sure it is - depending on the tasks. Now you're just getting pathalogical, that makes you or I the worst thing in the world too. Depending on the task! :o) > Pointers in Java? Not in any that I've used! If you run the class file (on java >= 1.2) I've included then you get the error message on runtime: "Exception in thread "main" java.lang.NullPointerException at Test.main(Test.java:20)" > Right, and my primary reason for languages is embedded systems/games > optimization - something Java is in direct conflict with. Fairy nuff. > What's so hard about writing a 4 line hash table for yourself, or doing > linked lists yourself? These are NOT hard tasks. I can imagine using > something like a tree view library or dialog editor to help develop > quicker, but come on, hash/linked lists? Jeez! This is data structures > 101! It's not hard, but when you don't have one you've written before at hand, and the last big prog you wrote was in Java where if you look for it in the nice API HTML docs (very tidy indeed not at all like MSDN) you'll find it, then spending x minutes knocking your own one up is annoying. > And my statement above about it not being for serious applications - I > should qualify "serious". Serious as in tedious UI (like sound wave > editing), anything requiring speed, games, et... for just UI apps it's > fine, but for anything hardcore, it's not the right tool. Such as, I > wouldn't consider writing Photoshop or Sound Forge in Java, but I might > consider writing a file conversion program in Java, or even a synthesizer > patch editor. Again, fairy nuff. Though I do wonder how much the speed is a constraint of the language and not just a constraint of the byte code. > Right - the problem isn't the language or anything else - it's the > people. But at the same time, I wish people were forced to learn the > basics before punishing us with bloated, slow and buggy applications. Funny story for today: I was sat in a programming language semantics and design lecture this morning concerning type schemes when we were looking at a stack as an example abstract data type (demonstrating hidden types). The guy sat next to me who I know pretty well and he came 4th in the year last year had to ask me what it meant to pop the stack!!!! This guy is not stupid and warwick's compsci course is pretty highly thought of in the UK but it just goes to show the limited knowledge some 'top class' compsci graduates have if the knowledge isn't inside their text books/lecture notes. That said, he'll get a 1st, I'll get a 2.1! :o) Cheers Dave ------=_NextPart_000_00F8_01C097A9.F9B43D20 Content-Type: java/*; name="Test.java" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="Test.java" class Test { class Test2 { public Test2() { } int returnNum() { return 5; } } static Test2 x; public static void main(String args[]) { x.returnNum(); } } ------=_NextPart_000_00F8_01C097A9.F9B43D20 Content-Type: java/*; name="Test.class" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Test.class" yv66vgADAC0AGwcAEwcAFAcAFwoAAwAHCgACAAgJAAEACQwADQALDAAZAAoMABoAEAEAAygpSQEA AygpVgEAFihbTGphdmEvbGFuZy9TdHJpbmc7KVYBAAY8aW5pdD4BAARDb2RlAQAMSW5uZXJDbGFz c2VzAQAMTFRlc3QkVGVzdDI7AQAPTGluZU51bWJlclRhYmxlAQAKU291cmNlRmlsZQEABFRlc3QB AApUZXN0JFRlc3QyAQAJVGVzdC5qYXZhAQAFVGVzdDIBABBqYXZhL2xhbmcvT2JqZWN0AQAEbWFp bgEACXJldHVybk51bQEAAXgAIAABAAMAAAABAAgAGgAQAAAAAgAAAA0ACwABAA4AAAAdAAEAAQAA AAUqtwAEsQAAAAEAEQAAAAYAAQAAAAMACQAYAAwAAQAOAAAAJAABAAEAAAAIsgAGtgAFV7EAAAAB ABEAAAAKAAIAAAAUAAcAEgACABIAAAACABUADwAAAAoAAQACAAEAFgAA ------=_NextPart_000_00F8_01C097A9.F9B43D20-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 15:48:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA16946 for dynarec-outgoing; Thu, 15 Feb 2001 15:48:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-Originating-IP: [192.9.51.3] From: "Fred Weigel" To: dynarec@dynarec.com Subject: Re: DYNAREC: aaagh C++ Date: Thu, 15 Feb 2001 18:59:18 -0500 Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 15 Feb 2001 23:59:18.0985 (UTC) FILETIME=[4F2BDB90:01C097AB] Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Java (with VM) *doesn't* have to be slower because of the cross-platform ability. Indeed, it can be faster for a LARGE class of applications. First, the byte code can be denser than native machine code, resulting in programs that load faster. Second, using an interpreter and then optimizing code BY USE can be better than statically optimizing code where no constraints are semantically available (eg. programmer declares a "long long" type and never uses more than an "int" -- in a statically optimized program, "long long" arithmetic MUST be done, but in a dynamically optimized program, the "long long" may be converted to an "int" at which point exceptions may be used to re-compile the code for "long long" when it is actually needed.) Of course, these things may be done to C code (for example) as well. Or, to native binaries (HP Dynamo springs to mind). But, there isn't any reason why Java VM code must run slower than (say) HP Dynamo code. Data type transmogrification is one area where a VM based system can certainly work better than a statically compiled version. C++ attempts to use templates to appease this, but this approach means that all possible variants must be compiled in advance (and requires explicit programmer intervention). Not my cup of tea, thanks. Semantically, C is a very weak language. It is not possible to specify expected data ranges, or program usage (some compilers like SUNs do allow #pragma rarely-called, etc.). Because of this, a static optimizer is seriously hobbled. Even simple stuff, like branch prediction bits (ULTRA-SPARC II) becomes difficult. At least with a VM you have a usage trace (and can have a data range trace). Without a VM, you even have problems determining if aliasing is occuring. Of course, you could always supply two versions of a routine, using custom C extensions, one for possibly aliased data, and the other for non-aliased data. What a PITA! Of course, there shouldn't be aliased data in a JAVA program, but I still think the example is valid. Note that I consider the greatest weakness of Java to be it's usage of native types. It isn't possible to promote an "integer" type to a "long" type when the integer range is exceeded. (It is possible to down-size and fix though). Better OOP languages can certainly go both ways (Smalltalk, Ruby), thus resulting in more reliable software. No, JAVA isn't the "end all" of programming languages, but it is usable for many applications. And, implementations will get better. I don't think that the current crop of JVMs go far enough with optimizations (probably because of memory considerations). This year, 64MB seems to be the norm, next year it'll be 128MB. This provides headroom for more dynamic optimizations, which will make VMs more attractive. Ratboy. Fred Weigel. ----Original Message Follows---- From: "Neil Griffiths" Reply-To: dynarec@dynarec.com To: Subject: Re: DYNAREC: aaagh C++ Date: Thu, 15 Feb 2001 23:11:30 -0000 Hi, Okay, I think I'll make this message the first of the day sticking to Dynarec topics. :) > > I think the other big problem a lot of my year group and good friends face > > is that they do all their programming in java (which is great for many > > things) and scripting and v high level languages but that leaves them > > totally unprepared for C/C++/asm etc. > > Frankly, I think schools should force people to learn assembly (for CS or > CE anyway) so they at least have a respect of what's going on down > below. I came from the days of *HAVING* to use assembly to get things > done. Do you know what's upsetting? I can program for several CPUs using assembly, so when I saw that "Microprocessors" was an option for one of this years modules, I chose it. The sad thing is that I'm one of the only ones - not enough people chose it, so it wasn't run. I'm sorry, but I agree with you Neil. People should be FORCED to learn assembly if they are going to program. That way they get a feeling for how things run in the processor and the rest of their code shows it! > > > What else is it useful for? Java certianly isn't as portable as everyone > > > professes. > > Sorry that's not fair. > > Sure it is - depending on the tasks. Portability shouldn't ever have been it's big selling point. It should have been sold as a solid language that could *also* run on multiple-platforms. Because they aimed at portability being a major part of the language, they had to cut down on things. Seriously, the one mouse button thing bugs me. > > 1) Java dumps on everything I've seen from a height for it's inherent > > debugging facilities: unrolling the procedure call stack and explicitly > > telling you exactly what's going wrong when you do null pointers etc. > > Pointers in Java? Not in any that I've used! That's against the Java spec, you're not meant to be able to have pointers - only instances of objects. What do you mean? > And my statement above about it not being for serious applications - I > should qualify "serious". Serious as in tedious UI (like sound wave > editing), anything requiring speed, games, et... for just UI apps it's > fine, but for anything hardcore, it's not the right tool. Such as, I > wouldn't consider writing Photoshop or Sound Forge in Java, but I might > consider writing a file conversion program in Java, or even a synthesizer > patch editor. I included this because I concur 100%. > Right - the problem isn't the language or anything else - it's the > people. But at the same time, I wish people were forced to learn the > basics before punishing us with bloated, slow and buggy applications. Java is going to be slow because of the VM. All people can do is write better VM's (think HotSpot) but Java is always going to be slower because of the cross-platform ability... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 15:55:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA16963 for dynarec-outgoing; Thu, 15 Feb 2001 15:55:55 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-Originating-IP: [192.9.51.3] From: "Fred Weigel" To: dynarec@dynarec.com Subject: Re: DYNAREC: buffers Date: Thu, 15 Feb 2001 19:06:14 -0500 Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 16 Feb 2001 00:06:14.0768 (UTC) FILETIME=[46FF4F00:01C097AC] Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Please wrap the "sub-allocation" routines into a set of functions or macros. Your "sub-allocator" may incurr unintentional cache coherency problems in an MP system. We may well want to separate out the allocations by processor, especially if our dynamic recompiler is running on an MP box where the translation of one code section can be overlapped with execution of another part of the program. If the code is written to assume a simple array of IR nodes, this problem may easily manifest. The simple approach is to tag the IR element with the actual code block. If this is done, then multiple processors may be attempting to play in the same space. Also, IR production and live code generation may be scheduled on multiple processors. It's not that I find this an unattractive idea, just wrap it and guarantee that the only interface to such a critical data item is through the wrapper. Ratboy Fred Weigel. ----Original Message Follows---- From: Neil Bradley Reply-To: dynarec@dynarec.com To: dynarec@dynarec.com Subject: Re: DYNAREC: buffers Date: Thu, 15 Feb 2001 15:18:38 -0800 (PST) > > Doing suballocation routines is very, VERY easy to do. It'd take you all > > of 5 minutes. > I'm not quite sure what you mean by suballocation, do tell? So in this case let's say you have a TON of little nodes that you need to allocate (I'll call them SOps) and deallocate on the fly, and it needs to be quick: struct sOp { UINT8 u8Used; UINT32 u32Opcode struct sOp *psNextLink; }; Let's say you need 10,000 of them, so you create a chunk of INIT code that does this: #define MAX_BLOCKS 10000 static UINT32 sg_u32NextPtr = 0; static struct sOp *sg_psBlockHead = NULL; static void InitHandler(void) { sg_psBlockHead = malloc(sizeof(struct sOp) * MAX_BLOCKS); assert(sg_psBlockHead); memset(sg_psBlockHead, 0, MAX_BLOCKS * sizeof(struct sOp)); } This sets up an array of 10,000 elements that can be accessed in a linear fashion. Normally, malloc/new will traverse a linked list to find you a new home, which can become and N^2 performance problem. malloc/new Are generic allocation and aren't good at doing very high amounts of allocation and frees - you'll fragment the snot out of memory and the garbage collection will kill performance. So, let's consider the allocation routine to get one of these blocks: static struct sOp *AllocateOp(void) { UINT32 u32StartPoint; struct sOp *psBlock = NULL; assert(sg_psBlockHead); u32StartPoint = sg_u32NextPtr; do { if (FALSE == sg_psBlockHead[sg_u32NextPtr].u8Used) { psBlock = &sg_psBlockHead[sg_u32NextPtr]; psBlock->u8Used = TRUE; break; } ++sg_u32NextPtr; if (sg_u32NextPtr >= MAX_BLOCKS) { sg_u32NextPtr = 0; } } while (sg_u32NextPtr != u32StartPoint); return(psBlock); } It'll allocate the next block of a fixed size that you want, and it'll do it very quickly. Even if you fragment the list, it'll be able to find free slots everywhere. And when you free, it's simple: psBlock->u8Used = FALSE; Now it's up for general allocation. This has been a great strategy > > You're lucky. If you think a bit more general case (like the 34010 which > > is a prime candidate for recompilation), it has all kinds of weird > > instructions that completely breaks this. It's nice when you don't have to > > deal with multiple source CPUs. > I'm not thinking about multiple CPUs! :o) Aha! ;-) > > Well, there are rotate instructions that do, as well as memory stores. > True for rotates, there are probably a few other logic/arith instructions > too. I need to add things like checks for data abort exceptions to memory > access so that's not 1 to 1 either. Yeouch. That means every memory read/write access must do a DA check. Well, on the Z80->x86 translation, we did stuff like: LD (3c00h), HL and hardcoded it to: mov [15323c00h], bx Because ahead of time we knew where the virtual 3c00h was, we could get away with stuff liket this. > > me if my syntax is incorrect) can be collapsed into a simple x86 > > instruction. ADW Is crashing on me right now, so I can't get a good > > example to show you. ;=| > I'd be interested to see which sequences you mean if you can get some > together!? We're moving offices, but yes, I'd like to get some exact sequences for you. That'll be next week, tho... > > reason for a recompiler (speed!) is moot. Unless of course you need to > > show something for a class project and don't know the target CPU well > > enough to know whether or not you can get it to work before it's due. ;-) > That kind of sums it up really. Except that I know I can't get it to work > before it's due. I'm taking the attitude of 'i'll have something interesting > to talk about' and I do have a nifty interpreter that sort of works... Yeah, clearly your goals are different from mine, and I know what a lousy thing school projects can to do cool stuff. > > Have you looked at any of the DRMZ80 code and some of the fun stuff that > > it does? > I did a while ago but not recently, are there any particulars I should look > at? Specifically, the output vs. the input and how things were translated. There are a lot of shortcuts it can take that an IR wouldn't allow. -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 16:05:04 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA16980 for dynarec-outgoing; Thu, 15 Feb 2001 16:04:56 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Giovanni Bajo" To: Subject: Re: DYNAREC: deleting structs Date: Fri, 16 Feb 2001 01:13:23 +0100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 In-Reply-To: <00ae01c097a8$b6ac02c0$0200a8c0@cheetah> Importance: Normal X-MDaemon-Deliver-To: dynarec@dynarec.com Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com That's the rule, but as you prolly know most people use plain C coding with a C++-capable compiler, and use some C++ features here and there where "needed". My suggestion was to stick to the language choice. Which part do you disagree? In plain C++, you should avoid any explicit memory allocation because you can do it better without it, and you won't have to deal with pointer madness. If you want to create/destroy a dynamic object (not a memory buffer), new/delete is the way. Malloc/free are useless in C++, IMO. Was this the point? RaskY > > Hi, > > > > Always match new/delete and malloc/free. Actually, avoid malloc/free at > all > > if coding in C++, and new/delete if coding in vanilla C. > > You can't even use new/delete in vanilla C because they're C++ > keywords. And > I disagree anyway! > > Neil. > > ------------------------------------------------------------------ > --------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 16:07:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA16993 for dynarec-outgoing; Thu, 15 Feb 2001 16:07:14 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00d501c097ae$0b6d73c0$0200a8c0@cheetah> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 00:17:12 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Java (with VM) *doesn't* have to be slower because of the > cross-platform ability. Indeed, it can be faster for a > LARGE class of applications. You're right, it doesn't have to be. And you're right, it can be. It's just that small fact that it ISN'T. :) And I'll tell you what. I'll take that back if you can show me a useful program - any program - which is faster than, say, the same C++ program. > First, the byte code can be denser than native machine > code, resulting in programs that load faster. This has absolutely nothing to do with runtime speed (though I do agree). In fact, you're right - generally speaking it should be faster at loading. > Second, > using an interpreter and then optimizing code BY USE > can be better than statically optimizing code where > no constraints are semantically available (eg. programmer > declares a "long long" type and never uses more than > an "int" -- in a statically optimized program, "long long" > arithmetic MUST be done, but in a dynamically optimized > program, the "long long" may be converted to an "int" > at which point exceptions may be used to re-compile > the code for "long long" when it is actually needed.) No, now here I completely disagree. Using a good optimiser (the one VC++ to name but one, CodeWarrior being another) then this would never happen. Come on, please compare like for like. I do see your point, you're just not correct in this. > Of course, these things may be done to C code (for example) > as well. Or, to native binaries (HP Dynamo springs to mind). > But, there isn't any reason why Java VM code must run slower > than (say) HP Dynamo code. If HP Dynamo code is written for that processor (I don't know HP Dynamo) then Java VM is still going to be slower. Let's say that I assume everything you've said is correct. And let's assume that I was right about Dynamo. Because your Java VM has to optimise as it goes on, the first few loops are not going to be very fast. Already the Dynamo is in the lead. And assuming there are many loops followed by more loops, the Dynamo is going to build up a heavy lead. So maybe after the 10th time in a loop, the code produced by your Java VM is as good as the Dynamo code (I really can't say it'd be faster because optimising on-the-fly should *never* be as fast as statically optimising), the Dynamo would still win - so what I said is true. > Note that I > consider the greatest weakness of Java to be it's usage > of native types. It isn't possible to promote an "integer" > type to a "long" type when the integer range is exceeded. > (It is possible to down-size and fix though). Better OOP > languages can certainly go both ways (Smalltalk, Ruby), > thus resulting in more reliable software. While you're at it, include Ada. And then I can trounce you with my Ada knowledge. ;) > No, JAVA isn't the "end all" of programming languages, > but it is usable for many applications. And, implementations > will get better. I don't think that the current crop of > JVMs go far enough with optimizations (probably because of > memory considerations). This year, 64MB seems to be the norm, > next year it'll be 128MB. This provides headroom for more > dynamic optimizations, which will make VMs more attractive. We'll see. I do get your point, but if you want to maintain speed, you can't do the sort of optimisations dynamically as you can static. You can do other optimisations dynamically - as you said - that you can't statically, but overall I don't believe the speed will be the same. Prove me wrong! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 16:13:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA17008 for dynarec-outgoing; Thu, 15 Feb 2001 16:13:41 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00e001c097ae$f2eb8980$0200a8c0@cheetah> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: deleting structs Date: Fri, 16 Feb 2001 00:23:11 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > That's the rule, but as you prolly know most people use plain C coding with > a C++-capable compiler, and use some C++ features here and there where > "needed". My suggestion was to stick to the language choice. Okay, gotcha. :) > Which part do you disagree? In plain C++, you should avoid any explicit > memory allocation because you can do it better without it, and you won't > have to deal with pointer madness. If you want to create/destroy a dynamic > object (not a memory buffer), new/delete is the way. Malloc/free are useless > in C++, IMO. Was this the point? Okay, now I see what you mean. You see, I disagree because there was no way in hell I'd create a memory buffer in C++ using "new". But now you've said "not a memory buffer", I see what you mean. Okay, I'll let it pass. ;) Besides, you can only use new when dealing with classes. It depends if you really must use a class. I tend to use malloc anyway and I only use new/delete whenever dealing with objects. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 16:17:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA17022 for dynarec-outgoing; Thu, 15 Feb 2001 16:17:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Feb 2001 16:31:54 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: buffers In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Please wrap the "sub-allocation" routines into a set of > functions or macros. > > Your "sub-allocator" may incurr unintentional cache > coherency problems in an MP system. We may well want > to separate out the allocations by processor, especially > if our dynamic recompiler is running on an MP box where > the translation of one code section can be overlapped > with execution of another part of the program. I'm not sure who you're directing this message to... me? I was just recommending a possible approach to David. If you want to create separate pools for different CPUs, hey, the algorithm is still applicable - just use different pools. Besides, WRT cache coherency, you'll incurr that problem much more when you access the nodes than when they're allocated. > It's not that I find this an unattractive idea, just > wrap it and guarantee that the only interface to such > a critical data item is through the wrapper. I fail to see how macro wrappers would do any good to solve cache coherency issues. If MP is the problem, wrap critical section handlers around the functions that access the region array. If cache coherency is really that big of a problem, then create separate pools. Regardless, the algorithm/approach still applies. -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 16:24:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA17037 for dynarec-outgoing; Thu, 15 Feb 2001 16:24:28 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Giovanni Bajo" To: Subject: Re: DYNAREC: deleting structs Date: Fri, 16 Feb 2001 01:33:41 +0100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 In-Reply-To: <00e001c097ae$f2eb8980$0200a8c0@cheetah> Importance: Normal X-MDaemon-Deliver-To: dynarec@dynarec.com Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Which part do you disagree? In plain C++, you should avoid any explicit > > memory allocation because you can do it better without it, and you won't > > have to deal with pointer madness. If you want to > create/destroy a dynamic > > object (not a memory buffer), new/delete is the way. Malloc/free are > useless > > in C++, IMO. Was this the point? > > Okay, now I see what you mean. You see, I disagree because there > was no way in hell I'd create a memory buffer in C++ using "new". But now you've said > "not a memory buffer", I see what you mean. Okay, I'll let it pass. ;) > Besides, you can only use new when dealing with classes. It depends if you > really must use a class. I tend to use malloc anyway and I only use > new/delete whenever dealing with objects. What do you mean with "no way in hell"? You mean "no ways I like"? Because I assume you know that you can do: char* myMemBuf = new char[128*1024]; .... delete [] myMemBuf; This basically is a malloc/free clone, but it is more C++-ish. My suggestion was to avoid creating memory buffers *at all*. If you need 128K of dynamic data, you should do: std::vector myMemBuf(128*1024); myMemBuf[34] = 54; .... etc. You won't have any pointer around, you won't have any memory leak problem, you can increase/decrease the buffer if needed, etc. RaskY --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 16:38:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA17057 for dynarec-outgoing; Thu, 15 Feb 2001 16:38:27 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00f801c097b2$61410d80$0200a8c0@cheetah> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: deleting structs Date: Fri, 16 Feb 2001 00:48:39 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > What do you mean with "no way in hell"? You mean "no ways I like"? Because I > assume you know that you can do: > > char* myMemBuf = new char[128*1024]; > > .... > > delete [] myMemBuf; Yes, I knew this. But why? It offers no advantage over malloc()/free()! So, to clarify, I wouldn't do this - not because it wouldn't work but because it's not my style. > This basically is a malloc/free clone, but it is more C++-ish. My suggestion > was to avoid creating memory buffers *at all*. If you need 128K of dynamic > data, you should do: > > std::vector myMemBuf(128*1024); > > myMemBuf[34] = 54; > .... > etc. > > > You won't have any pointer around, you won't have any memory leak problem, > you can increase/decrease the buffer if needed, etc. I'll freely admit that I didn't know I could do this, that's interesting. If this is a C++ thing and not just VC++ (I assume it's the former) then I may well use this in the future! You learn something new everyday, so it doesn't look good for today given it's 12:45am! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 18:10:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA17152 for dynarec-outgoing; Thu, 15 Feb 2001 18:10:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <013901c097be$a5318400$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 02:17:17 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > There is no way to avoid this. The only thing you can do is disabling that > annoying warning: > #pragma warning (disable : 4786) > before including any STL-related header file. Thanks very much for that brilliant hint! I'll know where to look for issues in future too, thanks! > And (to reply to another post in this thread), STL are heavily > algorithmically-optimized for high performance. As long as you use them in > the proper way, they are fast as hell. The map<> is the most useful template > ever, IMO :) I'm probably going to use std::map in place of my hash table which although it worked ok wasn't pretty at all and I don't trust things with that many void*s in. :o) Do you know much about the std::list, it seems to need a allocator object (haven't read too much into this stuff yet) and I can't seem to work out how to use it or find an example in the MSDN? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 21:21:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA17310 for dynarec-outgoing; Thu, 15 Feb 2001 21:21:10 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Feb 2001 21:35:31 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: aaagh C++ In-Reply-To: <00fb01c097aa$09427a40$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > CE anyway) so they at least have a respect of what's going on down > > below. I came from the days of *HAVING* to use assembly to get things > Unfortunately Warwick only taught 68008 asm in 1 lecture and we never had to > use it - about as much use a chocolate teapot and my one complaint about > what otherwise is a f*ing good degree. When I was in school, they required mastery of at least one low level and one high level language. Before you even went to school, it was required that you knew both already. 28 People entered in the two semester compilers course - 12 survived. ;-) I resented the instructor for being so harsh, but I got more out of that class than any course I took in college. > > known for doing great UIs. His UI designs were great, but the dumbass > > manager who hired him didn't realize there'd be low level crap to deal > > with. > You can only smile really. Those'll be the consultants getting 4 times the > employees salary yeah? And the first to be laid off/fired at the first sign of recession. > > And problematic, and one of the weaknesses of the C language. Wanna pass > > multiple types to a procedure? Void *! Screw typechecking! ;-0 At least > > C++ allows some reprieve to this. > Is there any way round this other than templates (which I couldn't seem to > get working) ? Not really. > > It almost looks as if it's including a bunch of other stuff... a bug > > perhaps? > I suspect that the std::map is based on trees underneath and various other > things as they seemed to be called in the asm. That's the way it looks. Either that, or something forgot to null terminate something inside the code. > > Sure it is - depending on the tasks. > Now you're just getting pathalogical, that makes you or I the worst thing in > the world too. Depending on the task! :o) Heh. True. But the point being something will either be great or suck depending upon what you're trying to do with it. > > Pointers in Java? Not in any that I've used! > If you run the class file (on java >= 1.2) I've included then you get the > error message on runtime: > "Exception in thread "main" java.lang.NullPointerException > at Test.main(Test.java:20)" We can also do try/catch blocks which accomplish the same thing. > > something like a tree view library or dialog editor to help develop > > quicker, but come on, hash/linked lists? Jeez! This is data structures > > 101! > It's not hard, but when you don't have one you've written before at hand, Why do you need one you've written before? They're braindead simple functions and they take no time to write! > and the last big prog you wrote was in Java where if you look for it in the > nice API HTML docs (very tidy indeed not at all like MSDN) you'll find it, > then spending x minutes knocking your own one up is annoying. Takes less time than looking up the function in the MSDN docs. ;-) I mean writing a tree control I can understand, but hash functions or linked lists? Those should be automatic when programming. It's like having to add 2 + 2 together - "Where's my calculator?". > > consider writing a file conversion program in Java, or even a synthesizer > > patch editor. > Again, fairy nuff. Though I do wonder how much the speed is a constraint of > the language and not just a constraint of the byte code. I'd say that it's mostly the bytecode stuff now, but the language (as does C++) have some runtime checks that are unseen which affect performance. > year had to ask me what it meant to pop the stack!!!! This guy is not stupid > and warwick's compsci course is pretty highly thought of in the UK but it > just goes to show the limited knowledge some 'top class' compsci graduates > have if the knowledge isn't inside their text books/lecture notes. That > said, he'll get a 1st, I'll get a 2.1! :o) I've found that a college degree is meaningless in terms of ability. The best software engineers I've worked with in the past 15 years have been those without formal education. I've met a lot of PHDs who were so high on themselves that they were worthless. -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 15 23:41:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA17429 for dynarec-outgoing; Thu, 15 Feb 2001 23:41:30 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200102160752.IAA22833@pons.ac.upc.es> Subject: Re: DYNAREC: aaagh C++ In-Reply-To: <00a201c097a4$ae4ebb80$0200a8c0@cheetah> "from Neil Griffiths at Feb 15, 2001 11:11:30 pm" To: dynarec@dynarec.com Date: Fri, 16 Feb 2001 08:52:07 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > I think the other big problem a lot of my year group and good friends > face > > > is that they do all their programming in java (which is great for many > > > things) and scripting and v high level languages but that leaves them > > > totally unprepared for C/C++/asm etc. > > > > Frankly, I think schools should force people to learn assembly (for CS or > > CE anyway) so they at least have a respect of what's going on down > > below. I came from the days of *HAVING* to use assembly to get things > > done. > > Do you know what's upsetting? I can program for several CPUs using assembly, > so when I saw that "Microprocessors" was an option for one of this years > modules, I chose it. The sad thing is that I'm one of the only ones - not > enough people chose it, so it wasn't run. I'm sorry, but I agree with you > Neil. People should be FORCED to learn assembly if they are going to > program. That way they get a feeling for how things run in the processor and > the rest of their code shows it! > Umm ... Here in my university learn a bit of ASM is mandatory, just a bit of x86 but, everyone learns a bit how this looks like ;). And of course also CPU internals, one of the subjects is to learn how a simple CPU is internally built (Rudimentary Machine is called ;). In my opinion, since I started into ASM long before I started in university, I think that one of the faults in todays programmers (and I think it will happens more frequently in the future ...) is that they don't care about the low level work. High level languages or very high level languages have their purpose but abuse of them and rely in the increasing power of modern CPUs is just silly. That is the reason because now we have applications which run almost as 'bad' or even better with the same funcionality than with ten years ago computers. I really liked to deal directly with the machine (sometimes I know is silly, it is better to use libraries or a high level language) and it is a bit sad that nowadays is hard to find where to program this way (just too much Java crap). In any case I can still do that for fun and emulation is very useful for that :). > > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 00:07:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA17462 for dynarec-outgoing; Fri, 16 Feb 2001 00:06:57 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200102160817.JAA25891@pons.ac.upc.es> Subject: Re: DYNAREC: aaagh C++ In-Reply-To: "from Neil Bradley at Feb 15, 2001 09:35:31 pm" To: dynarec@dynarec.com Date: Fri, 16 Feb 2001 09:17:20 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > year had to ask me what it meant to pop the stack!!!! This guy is not stupid > > and warwick's compsci course is pretty highly thought of in the UK but it > > just goes to show the limited knowledge some 'top class' compsci graduates > > have if the knowledge isn't inside their text books/lecture notes. That > > said, he'll get a 1st, I'll get a 2.1! :o) > > I've found that a college degree is meaningless in terms of ability. The > best software engineers I've worked with in the past 15 years have been > those without formal education. I've met a lot of PHDs who were so high on > themselves that they were worthless. > Taking into account I learnt more about computers the four years before I started in the university just reading books from public libraries and doing some stuff in my free time than in a couple of years in the university that make sense ;). >From my experience an university isn't teaching precisely good programming techniques. A lot of technical stuff about graphics, architecture, OSes, databases and whatever but about programming the student has to learn by himself (not so bad though). But if your programming assignaments are just 'tested' running them and if it works it's ok (nobody takes a looks to the real code). Of course a program has to run correctly, but after that what you have to take care about is how has been programmed .... I'm thoughting about starting a PHD and I'm thinking about the time I will have to save for learning by myself 'real world' programming ;). Emulation rules :). PHD has is purpose but it isn't precisily to improve programming skills. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 00:27:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA17489 for dynarec-outgoing; Fri, 16 Feb 2001 00:27:18 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Giovanni Bajo" To: Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 09:36:02 +0100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Importance: Normal In-Reply-To: <013901c097be$a5318400$b32bfea9@daves> X-MDaemon-Deliver-To: dynarec@dynarec.com Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > And (to reply to another post in this thread), STL are heavily > > algorithmically-optimized for high performance. As long as you > use them in > > the proper way, they are fast as hell. The map<> is the most useful > template > > ever, IMO :) > > I'm probably going to use std::map in place of my hash table > which although it worked ok wasn't pretty at all and I don't trust things with that many > void*s in. :o) The point of STL is to not reinvent the wheel everytime. If you need something like a hash map of any kind, use std::map<>. It is implemented through a balanced search tree, and it is efficient. > Do you know much about the std::list, it seems to need a allocator object > (haven't read too much into this stuff yet) and I can't seem to > work out how to use it or find an example in the MSDN? Not really. The whole point about STL containers is that you can use them with standard type (int, char, float, etc.) or with any of your classes, as long as you provide at least a default constructor, a copy constructor, and an assignment operator. Remember that the assignment/copy constructor operator is not needed if you need just to manually copy all the members of the class, and the members are only standard types, or any other class that already defines its own assignment and copy constructor. If you search "list" in your MSDN library, you should find the help for the list<> template and a bunch of basic samples (addition, removal, iteration, etc.). If you need some help, ask :) RaskY --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 03:00:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA17768 for dynarec-outgoing; Fri, 16 Feb 2001 02:59:52 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <016c01c09808$a1464070$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 11:07:17 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > And the first to be laid off/fired at the first sign of recession. :o) > > > Pointers in Java? Not in any that I've used! > > If you run the class file (on java >= 1.2) I've included then you get the > > error message on runtime: > > "Exception in thread "main" java.lang.NullPointerException > > at Test.main(Test.java:20)" > We can also do try/catch blocks which accomplish the same thing. eh? > Why do you need one you've written before? They're braindead simple > functions and they take no time to write! > Takes less time than looking up the function in the MSDN docs. ;-) I mean > writing a tree control I can understand, but hash functions or linked > lists? Those should be automatic when programming. It's like having to add > 2 + 2 together - "Where's my calculator?". What, a hash table with chaining? All I can say is you must be able to type bloody fast if it only takes you 2 minutes. > I'd say that it's mostly the bytecode stuff now, but the language (as does > C++) have some runtime checks that are unseen which affect performance. True. > I've found that a college degree is meaningless in terms of ability. The > best software engineers I've worked with in the past 15 years have been > those without formal education. I've met a lot of PHDs who were so high on > themselves that they were worthless. What, PHDs full of themselves? never. :o) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 03:01:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA17787 for dynarec-outgoing; Fri, 16 Feb 2001 03:01:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <017501c09808$d3b070d0$b32bfea9@daves> From: "David Sharp" To: References: <200102160817.JAA25891@pons.ac.upc.es> Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 11:08:43 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Taking into account I learnt more about computers the four years > before I started in the university just reading books from public > libraries and doing some stuff in my free time than in a couple > of years in the university that make sense ;). Cripes, I hope you don't mean that! My degree's taught me a hell of a lot I didn't even know existed before I started. Academia has it's limitations but it shouldn't be that bad... Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 03:15:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA17805 for dynarec-outgoing; Fri, 16 Feb 2001 03:15:45 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 16 Feb 2001 03:30:10 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: aaagh C++ In-Reply-To: <017501c09808$d3b070d0$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > before I started in the university just reading books from public > > libraries and doing some stuff in my free time than in a couple > > of years in the university that make sense ;). > Cripes, I hope you don't mean that! My degree's taught me a hell of a lot I > didn't even know existed before I started. Academia has it's limitations but > it shouldn't be that bad... Yeah, it's "that bad". Lately the universities have gotten VERY lax. They're passing CS majors who can't program at all, have no concept of structure, or even a flying clue what they're doing. University studies are an OK start, but true programming prowess comes from lots of self study and many years of practice outsider of school. (I sound like an old man...) Back in my day of school, they taught structured programming and respect for the underpinnings of the system. That all seems to be lost now. ;-( -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 03:20:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA17819 for dynarec-outgoing; Fri, 16 Feb 2001 03:20:35 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 16 Feb 2001 03:35:00 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: aaagh C++ In-Reply-To: <016c01c09808$a1464070$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > "Exception in thread "main" java.lang.NullPointerException > > > at Test.main(Test.java:20)" > > We can also do try/catch blocks which accomplish the same thing. > eh? Null pointer exceptions: try { *blah = 5; } catch { printf("Threw an exception!"); } Same deal! Of course, one can "throw" too... > > writing a tree control I can understand, but hash functions or linked > > lists? Those should be automatic when programming. It's like having to add > > 2 + 2 together - "Where's my calculator?". > What, a hash table with chaining? All I can say is you must be able to type > bloody fast if it only takes you 2 minutes. You didn't say hash tables - you said hash functions, as in something that just simply hashes a chunk of data. Call it 10 minutes then. ;-) > > best software engineers I've worked with in the past 15 years have been > > those without formal education. I've met a lot of PHDs who were so high on > > themselves that they were worthless. > What, PHDs full of themselves? never. :o) Piled Higher & Deeper. That's what PHD stands for. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 06:40:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA17988 for dynarec-outgoing; Fri, 16 Feb 2001 06:40:40 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <01c901c09828$6f548de0$d3994ed4@menta.net> From: "Victor Moya del Barrio" To: References: <200102160817.JAA25891@pons.ac.upc.es> <017501c09808$d3b070d0$b32bfea9@daves> Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 15:54:58 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Taking into account I learnt more about computers the four years > > before I started in the university just reading books from public > > libraries and doing some stuff in my free time than in a couple > > of years in the university that make sense ;). > > Cripes, I hope you don't mean that! My degree's taught me a hell of a lot I > didn't even know existed before I started. Academia has it's limitations but > it shouldn't be that bad... > Perhaps I have expressed badly ;). I just talked about the first and a perhaps the second year (my university studies goes through 5 years). The first year works a bit (or maybe really a lot) like a test one, and it is used to 'filter' the students who don't get enough notes. After the first year the chance to be out of the university decrease a lot. Of course I have learnt a lot in my university but for the matter we were talking about, programming, I have to admit that the formation is insuficient. A lot of technical stuff like I said, I know a lot of about database (well, when my memory works, or course ;), or about how an OS work internally or a CPU. But about programming I have been teached just the needed for solving small or middle problems and not quite well. And that taking into account I already knew about programming a lot before I started in university. Just think about people who starting programming when the started in university. The reason for that are diverse, but one I would want to note it is that professors seem to think in 'universitary' students as futures project leaders and analyst not as programmers. In reality that is false becuase everyone starts as a programmer before going up in the work chain ;), but the university seems to be unaware of that. Taking into account that I'm seriously in the way of spending a lot of time in a PHD (I will try to change a bit Neil's thoughts about PHDs ;)), it would be stupid to blame at all university studies ;). In any case that doesn't means that I couldn't talk about what I think it is missing in those studies. > Cheers > Dave > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 07:27:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA18032 for dynarec-outgoing; Fri, 16 Feb 2001 07:27:25 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007101c0982e$9993ed20$0200a8c0@cheetah> From: "Neil Griffiths" To: References: <200102160752.IAA22833@pons.ac.upc.es> Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 15:33:50 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > In my opinion, since I started into ASM long before I started in university, > I think that one of the faults in todays programmers (and I think it will > happens more frequently in the future ...) is that they don't care about > the low level work. High level languages or very high level languages > have their purpose but abuse of them and rely in the increasing power of > modern CPUs is just silly. That is the reason because now we have > applications which run almost as 'bad' or even better with the same > funcionality than with ten years ago computers. The one thing I hate is that people rely on the faster processors to make up for their poorly coded programs. Here's something that's slightly interesting. Did any of you use MS Word 2? If so, remember how fast it was? Do you remember how disappointing it was to move to Word 6.0 after that because of the slowness. Do you know *why* that and MS Office products after that became slower? Because they're not written entirely in C/C++. There's actually an awful lot of pseudocode in there that has to be parsed at run-time. That accounts for both the size and speed. So, if you didn't know that before, you know that now. And if you're wondering where my sources are for that, there's a few - but I've remembered this ever since reading an article about it in PC Magazine in about 1994. > I really liked to deal directly with the machine (sometimes I know > is silly, it is better to use libraries or a high level language) and > it is a bit sad that nowadays is hard to find where to program this > way (just too much Java crap). In any case I can still do that for fun > and emulation is very useful for that :). Yes. Although I will say that I like Universities choosing Java to teach students how to program - it is a fairly full featured language and is well suited for the task. I just can't defend people who say untrue things about the relative speeds of Java. I actually researched this for my project on my last University course, I know a fair amount about Java now. Hell, I've even written stuff in bytecode which most people can't claim to do. So I can argue like hell when it comes to Java. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 07:27:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA18040 for dynarec-outgoing; Fri, 16 Feb 2001 07:27:30 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007201c0982e$9e2953c0$0200a8c0@cheetah> From: "Neil Griffiths" To: References: <200102160817.JAA25891@pons.ac.upc.es> <017501c09808$d3b070d0$b32bfea9@daves> Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 15:37:28 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Taking into account I learnt more about computers the four years > > before I started in the university just reading books from public > > libraries and doing some stuff in my free time than in a couple > > of years in the university that make sense ;). > > Cripes, I hope you don't mean that! My degree's taught me a hell of a lot I > didn't even know existed before I started. Academia has it's limitations but > it shouldn't be that bad... My degree has also taught me a lot that I didn't know before. I don't know how useful it's going to be in the real world (it certainly wasn't in Germany!) but I concur with you. I would say that University never really taught me anything about programming - but it has taught me more about design which is just as important. And I've just realised that you're about 30 miles away from me, Dave. :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 08:00:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA18075 for dynarec-outgoing; Fri, 16 Feb 2001 07:59:54 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <01b001c09832$8c679800$b32bfea9@daves> From: "David Sharp" To: References: <200102160817.JAA25891@pons.ac.upc.es> <017501c09808$d3b070d0$b32bfea9@daves> <007201c0982e$9e2953c0$0200a8c0@cheetah> Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 16:07:22 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com A quick break from trying to put several conditionally executing instructions under one condition check in my intermediate representation (herafter known as armlets)... > I would say that University never really taught me anything about > programming - but it has taught me more about design which is just as > important. Just to give a few examples of practical stuff I've been specifically taught at Warwick: 1st year: Java and OO Unix scripting awk etc. and Perl ML (very handy for a headache) 2nd year: OO software design (the Fusion method) UML etc. Systematic software development (interesting if rarely applicable). Forced to learn GUI design and implementation in Java Swing. Prolog (more migraines) 3rd year: Compiler design AI (heuristic searches A* etc. ,so far) Graphics - lots of algorithms and matrices I wouldn't be half the compsci I am today without my degree! > And I've just realised that you're about 30 miles away from me, Dave. :o Ah, help! :o) Where are you? Birmingham? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 08:02:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA18091 for dynarec-outgoing; Fri, 16 Feb 2001 08:02:28 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <01b301c09832$e8a666a0$b32bfea9@daves> From: "David Sharp" To: References: <200102160752.IAA22833@pons.ac.upc.es> <007101c0982e$9993ed20$0200a8c0@cheetah> Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 16:09:57 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yes. Although I will say that I like Universities choosing Java to teach > students how to program - it is a fairly full featured language and is well > suited for the task. I just can't defend people who say untrue things about > the relative speeds of Java. I actually researched this for my project on my > last University course, I know a fair amount about Java now. Hell, I've even > written stuff in bytecode which most people can't claim to do. So I can > argue like hell when it comes to Java. :) The most impressive thing about Java is developing programs using Swing. I never appreciated Java before that but the flexibility and apparent speed is boggling. There is generally a slow down over C++ apps to a certain degree, but it doesn't seem to slow down much more when you do lots of horrendous things to it like antialiasing and drawing lines/circles all over the place. Has anyone taken a look at my Baby simulator yet? back to work... Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 09:17:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA18162 for dynarec-outgoing; Fri, 16 Feb 2001 09:16:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00a501c0983d$e3b08f80$0200a8c0@cheetah> From: "Neil Griffiths" To: References: <200102160817.JAA25891@pons.ac.upc.es> <017501c09808$d3b070d0$b32bfea9@daves> <007201c0982e$9e2953c0$0200a8c0@cheetah> Subject: DYNAREC: Transmeta review! :)) Date: Fri, 16 Feb 2001 16:01:00 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, I know you're going to be interested in reading about this. Take a look at the actual speed in Sysmark! :o http://www.tomshardware.com/consumer/01q1/010215/index.html Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 09:55:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA18204 for dynarec-outgoing; Fri, 16 Feb 2001 09:55:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00c601c09843$41cda1c0$0200a8c0@cheetah> From: "Neil Griffiths" To: References: <200102160817.JAA25891@pons.ac.upc.es> <017501c09808$d3b070d0$b32bfea9@daves> <007201c0982e$9e2953c0$0200a8c0@cheetah> <01b001c09832$8c679800$b32bfea9@daves> Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 17:43:04 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Just to give a few examples of practical stuff I've been specifically taught > at Warwick: > > 1st year: > Java and OO Already knew it. Didn't learn much in the 1st year (for obvious reasons). > Unix scripting awk etc. and Perl I learnt this last year - and used it at Eurocopter (in Germany)! > 2nd year: > OO software design (the Fusion method) UML etc. Done this for 4 years solid now. > Forced to learn GUI design and implementation in Java Swing. I did Usable Interfaces - but now using Java! > Prolog (more migraines) Haha! I learnt to use both Prolog AND Miranda. And you speak about migraines... ;) > 3rd year: > Compiler design > AI (heuristic searches A* etc. ,so far) Learnt this while studying Prolog and Miranda... :-/ > Graphics - lots of algorithms and matrices Same here. Learnt a lot more about 3D - wrote my own engine. Did anyone look at the binary I posted a couple of months back? > > And I've just realised that you're about 30 miles away from me, Dave. :o > > Ah, help! :o) No. ;) > Where are you? Birmingham? Not quite, Stafford in fact. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 09:55:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA18213 for dynarec-outgoing; Fri, 16 Feb 2001 09:55:16 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00c701c09843$433ee500$0200a8c0@cheetah> From: "Neil Griffiths" To: References: <200102160752.IAA22833@pons.ac.upc.es> <007101c0982e$9993ed20$0200a8c0@cheetah> <01b301c09832$e8a666a0$b32bfea9@daves> Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 17:43:56 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > The most impressive thing about Java is developing programs using Swing. I > never appreciated Java before that but the flexibility and apparent speed is > boggling. There is generally a slow down over C++ apps to a certain degree, > but it doesn't seem to slow down much more when you do lots of horrendous > things to it like antialiasing and drawing lines/circles all over the place. > Has anyone taken a look at my Baby simulator yet? If it doesn't slow down much more when doing anti-aliasing, it must already be slow! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 10:00:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA18230 for dynarec-outgoing; Fri, 16 Feb 2001 10:00:37 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00cf01c09844$02bb47c0$0200a8c0@cheetah> From: "Neil Griffiths" To: References: <200102160817.JAA25891@pons.ac.upc.es> <017501c09808$d3b070d0$b32bfea9@daves> <007201c0982e$9e2953c0$0200a8c0@cheetah> <01b001c09832$8c679800$b32bfea9@daves> <00c601c09843$41cda1c0$0200a8c0@cheetah> Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 18:12:06 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I did Usable Interfaces - but now using Java! Brain somewhere else, that should read "but not using Java!". Oops! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 10:19:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA18261 for dynarec-outgoing; Fri, 16 Feb 2001 10:19:45 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <01da01c09846$162f86c0$b32bfea9@daves> From: "David Sharp" To: Subject: DYNAREC: one-pass optimisations Date: Fri, 16 Feb 2001 18:26:44 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm looking into possible optimisations that might be made during the ARM->armlet translation phase. I'm sticking to a one-pass translation, most optimisation will be optional and done in a second pass. However, I'm looking into what optimisations can be performed cheaply in the first pass, the only one I have at present is: cmp r1,r2 addne r0,r0,#1 addne r2,r2,#1 whatever would naively translate to cmp r1,r2 beq label1 mov t0,#1 add r0,t0 .label1 beq label2 mov t1,#1 add r2,t0 .label2 whatever but I'm planning to translate to cmp r1,r2 beq label3 mov t0,#1 add r0,t0 mov t1,#1 add r2,t0 .label3 whatever Spot the difference? Can anyone think of any other optimisations that can occur fairly simply in the one pass translation? Things like t0 and t1 getting allocated the same value will be sorted out later, so don't count. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 10:19:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA18256 for dynarec-outgoing; Fri, 16 Feb 2001 10:19:42 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <01d901c09846$1424e9b0$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: buffers Date: Fri, 16 Feb 2001 18:21:48 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >[snip] > psBlock->u8Used = FALSE; > > Now it's up for general allocation. This has been a great strategy I like it, nice one Neil. I may well look into using that. > Yeouch. That means every memory read/write access must do a DA > check. Well, on the Z80->x86 translation, we did stuff like: > LD (3c00h), HL > and hardcoded it to: > mov [15323c00h], bx > Because ahead of time we knew where the virtual 3c00h was, we could get > away with stuff liket this. Oh yeah, each read write is going to be very expensive in the first version of the dynarec, possibly faster later on for real world software! > We're moving offices, but yes, I'd like to get some exact sequences for > you. That'll be next week, tho... That's ok, I can wait that long I guess. I'll look forward to seeing them. > Yeah, clearly your goals are different from mine, and I know what a lousy > thing school projects can to do cool stuff. :o) > Specifically, the output vs. the input and how things were translated. > There are a lot of shortcuts it can take that an IR wouldn't allow. Ok, will take a look. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 10:23:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA18277 for dynarec-outgoing; Fri, 16 Feb 2001 10:23:16 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <01e301c09846$93db9d70$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 18:30:40 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Null pointer exceptions: > > try > { > *blah = 5; > } > catch > { > printf("Threw an exception!"); > } > Same deal! Of course, one can "throw" too... Ah but when you physically can't leave those tests out (as in java) it makes debugging programs in that language a lot easier. There probably are ways of almost forcing you to do this in C++ but it's not the same as actually not being able to cock it up. Of course there is a noticable performance cost will all this. > You didn't say hash tables - you said hash functions, as in something that > just simply hashes a chunk of data. Call it 10 minutes then. ;-) Sorry, falling as asleep at the keyboard. > Piled Higher & Deeper. That's what PHD stands for. ;-) I'll remember that one! :o) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 10:24:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA18287 for dynarec-outgoing; Fri, 16 Feb 2001 10:24:41 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <01ea01c09846$c6fa29b0$b32bfea9@daves> From: "David Sharp" To: References: <200102160752.IAA22833@pons.ac.upc.es> <007101c0982e$9993ed20$0200a8c0@cheetah> <01b301c09832$e8a666a0$b32bfea9@daves> <00c701c09843$433ee500$0200a8c0@cheetah> Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 18:32:11 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > If it doesn't slow down much more when doing anti-aliasing, it must already > be slow! ;) Sorry didn't mean to say that, it's not true. Anti-aliasing slows it down a helluva lot, it's just so damn beautiful and easy to use, I mean like: setAntialiasing(true); ..that it's hard to forget! :o) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 10:28:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA18300 for dynarec-outgoing; Fri, 16 Feb 2001 10:27:38 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <01f701c09847$3083fc30$b32bfea9@daves> From: "David Sharp" To: References: <200102160817.JAA25891@pons.ac.upc.es> <017501c09808$d3b070d0$b32bfea9@daves> <007201c0982e$9e2953c0$0200a8c0@cheetah> <01b001c09832$8c679800$b32bfea9@daves> <00c601c09843$41cda1c0$0200a8c0@cheetah> Subject: Re: DYNAREC: aaagh C++ Date: Fri, 16 Feb 2001 18:35:03 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Already knew it. Didn't learn much in the 1st year (for obvious reasons). > [snip] I'm not really trying to get at who knows what, so much as just demonstrating that some uni courses do cover a lot of really good stuff and I didn't even mention using low level C (for a 68008) and lots of flip flops and things in Computer Organisation and Architecture. > Not quite, Stafford in fact. :) Not quite sure where that is. Quite close to Birmingham isn't it!? ;o) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 10:29:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA18309 for dynarec-outgoing; Fri, 16 Feb 2001 10:27:52 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: aaagh C++ From: "M.I.K.e" Message-ID: <00037d70f77b1ed5_mailit@mail.dynarec.com> References: <200102160752.IAA22833@pons.ac.upc.es> <007101c0982e$9993ed20$0200a8c0@cheetah> <01b301c09832$e8a666a0$b32bfea9@daves> Date: Fri, 16 Feb 2001 19:44:31 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Has anyone taken a look at my Baby simulator yet? I bet NB doesn't have the need for a baby simulator ;-) Just kidding, I know the Baby simulator you wrote for RISC OS (wasn't it called babe and had the face of Alicia Silverstone as program icon?), but I didn't take a look at the new one yet... >Dave -- M.I.K.e Democracy is a government where you can say what you think even if you don't think. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 10:55:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA18349 for dynarec-outgoing; Fri, 16 Feb 2001 10:55:18 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: one-pass optimisations From: "M.I.K.e" Message-ID: <00037d715cfcee96_mailit@mail.dynarec.com> References: <01da01c09846$162f86c0$b32bfea9@daves> Date: Fri, 16 Feb 2001 20:12:54 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm looking into possible optimisations that might be made during the >ARM->armlet translation phase. I'm sticking to a one-pass translation, most >optimisation will be optional and done in a second pass. However, I'm >looking into what optimisations can be performed cheaply in the first pass, >the only one I have at present is: >cmp r1,r2 >addne r0,r0,#1 >addne r2,r2,#1 >whatever I wonder where you got that idea from ;-) >Can anyone think of any other optimisations that can occur fairly simply in >the one pass translation? One of the biggest disadvantages (IMO) is the strange immediate coding of ARM. You should try to combine all instructions that produce one literal into one instruction in the immediate code. Otherwise you'll have a hard time to optimize that later. You also might take a look at chapter 6 of Furber's book (it's called "Architectural Support for High-Level Languages", just in case the chapter numbers changed in your edition) , which lists the common code for conditional statements and loops. I think I'd need some code examples to come up with further optimizations... Maybe Jules or NB have some ideas? >Dave -- M.I.K.e Everything is controlled by a small evil group to which, unfortunately, no one we know belongs. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 12:04:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA18420 for dynarec-outgoing; Fri, 16 Feb 2001 12:03:52 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: one-pass optimisations From: "M.I.K.e" Message-ID: <00037d719ce20ac1_mailit@mail.dynarec.com> References: <01da01c09846$162f86c0$b32bfea9@daves> Date: Fri, 16 Feb 2001 20:30:46 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Can anyone think of any other optimisations that can occur fairly simply in >the one pass translation? Just had another idea: Transform all "weird" instructions with a literal 2nd operand by calculating that operand. BIC (= AND NOT) becomes AND MVN (= MOVE NOT) becomes MOV CMN (= COMPARE NEGATED) becomes CMP Also remember that RSB Rd, Rs, #0 is a NEG. >Dave -- M.I.K.e Suddenly, Professor Liebowitz realizes he has come to the seminar without his duck ... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 12:41:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA18463 for dynarec-outgoing; Fri, 16 Feb 2001 12:41:12 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <020c01c09859$d6cd3d60$b32bfea9@daves> From: "David Sharp" To: References: <01da01c09846$162f86c0$b32bfea9@daves> <00037d715cfcee96_mailit@mail.dynarec.com> Subject: Re: DYNAREC: one-pass optimisations Date: Fri, 16 Feb 2001 20:48:37 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I wonder where you got that idea from ;-) I forget. :o) > One of the biggest disadvantages (IMO) is the strange immediate coding of > ARM. You should try to combine all instructions that produce one literal into > one instruction in the immediate code. Otherwise you'll have a hard time to > optimize that later. It will be interesting to see, and I'll certainly build it into my code to check, how often this happens. I suspect, though haven't checked this yet that because of optimisations like invariant hoisting out of loops that this might not happen too much in code that's to be recompiled (i.e. loops) and that scanning over every recompiled block to see where it does occur could be more expensive than good. I'll try and test it. > You also might take a look at chapter 6 of Furber's book (it's called > "Architectural Support for High-Level Languages", just in case the chapter > numbers changed in your edition) , which lists the common code for > conditional statements and loops. Thanks, I'll have a look. > I think I'd need some code examples to come up with further optimizations... > Maybe Jules or NB have some ideas? I've given it some thought myself but can't think of any more that need putting in at this stage, I'll certainly be interested in other peoples ideas though. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 16:53:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA18711 for dynarec-outgoing; Fri, 16 Feb 2001 16:53:03 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: julesb@btinternet.com To: dynarec@dynarec.com Date: Sat, 17 Feb 2001 01:03:55 GMT Subject: Re: DYNAREC: one-pass optimisations Message-id: <3a8dcdfb.2b28.0@btinternet.com> X-User-Info: 195.40.198.52 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>Can anyone think of any other optimisations that can occur fairly simply in >>the one pass translation? > >Just had another idea: Transform all "weird" instructions with a literal 2nd >operand by calculating that operand. > >BIC (= AND NOT) becomes AND >MVN (= MOVE NOT) becomes MOV >CMN (= COMPARE NEGATED) becomes CMP > >Also remember that RSB Rd, Rs, #0 is a NEG. Be *very* careful though. CMN is analogous to ADD as CMP is to SUB - but the opposite carry-flag issue on ARM/x86 might bite you if you do this switch naively (that's why my phetacode maintained CMN as an opcode). Same goes for RSB & NEG. My stance on the matter became something like leave things in the intermediate representation if taking them out would cause more hassle in the long run. Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Feb 16 17:12:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA18740 for dynarec-outgoing; Fri, 16 Feb 2001 17:12:05 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003001c0987f$b0cf5460$b32bfea9@daves> From: "David Sharp" To: References: <3a8dcdfb.2b28.0@btinternet.com> Subject: Re: DYNAREC: one-pass optimisations Date: Sat, 17 Feb 2001 01:19:34 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Be *very* careful though. CMN is analogous to ADD as CMP is to > SUB - but the opposite carry-flag issue on ARM/x86 might bite > you if you do this switch naively (that's why my phetacode > maintained CMN as an opcode). Same goes for RSB & NEG. My stance > on the matter became something like leave things in the > intermediate representation if taking them out would cause more > hassle in the long run. Thinking about it, I reckon you're right it would hurt a lot to cope with the inverted carry in the IR. Then again, might be nicer dealing with it completely there than in x86 where I'm going to be horribly lost... I too am going to leave cmp/tst etc. in the IR though was thinking about doing away with them and having a specialised form of adds (or whatever) that ditched the result to a null register. However, given that the x86 has a nice little cmp instruction that seemed a bit silly. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Feb 17 05:34:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA21577 for dynarec-outgoing; Sat, 17 Feb 2001 05:33:52 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003901c098e7$53138770$b32bfea9@daves> From: "David Sharp" To: Subject: DYNAREC: interesting.... Date: Sat, 17 Feb 2001 13:41:24 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MIMEOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com For those of you who know about ARM this might be interesting. The problem that concerns me is; does it ever occur that the same piece of code is run in more than one processor mode i.e. a routine gets called in user mode and then later in irq mode (or whatever)? If not then I can happily recompile my code for the processor mode at the time of recompilation. If so, then I have to have to record the processor mode at the start of recompilation and only allow the recompiled code to be executed if that predicate matches the current processor state. Alternatively I can recompile the decision making into the generated code (but that seems a bit poor). This got me thinking as to whether I even need to support other modes in the dynarec and could I use my interpreting emulation as a base and justify only supporting user mode in the recompilation. This would still be a dynarec and would probably get the biggest boost because most of the time it would be recompiling (long sentence). However a little bit of profiling of ARM execution showed these results: mode=3 count=45 mode=0 count=5 mode=3 count=45 mode=0 count=2 mode=3 count=45 mode=0 count=7 mode=3 count=45 mode=0 count=2 mode=3 count=919 mode=0 count=43 mode=3 count=119 mode=0 count=26 mode=3 count=767 mode=0 count=23 mode=3 count=269 mode=0 count=10 mode=3 count=269 mode=0 count=359 mode=3 count=54 mode=0 count=5 mode=3 count=45 where mode is the processor mode and count is the number of instructions executed before the mode changed again, mode=3 is supervisor mode and mode=0 is user mode. In a similar repeat test run, the total number of instructions executed in the different modes was: usr= 2013023 fiq= 51038 irq= 2423683 svc=135169731 The profiling was from the start of booting RISC OS through to loading and using Draw to draw a bezier curve, which leads me to believe it's svc mode I should be concentrating on! Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 21 16:56:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA27643 for dynarec-outgoing; Wed, 21 Feb 2001 16:56:11 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005401c09c6b$5ba3d070$b32bfea9@daves> From: "David Sharp" To: Subject: DYNAREC: Throw an old argument back into the ring... Date: Thu, 22 Feb 2001 01:03:41 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Dynamic Vs Static register allocation. I think I know most peoples opinions on the subject but would welcome some discussion on the matter in these particular circumstances before I hit it head on sometime next week... I've done some quick hack profiling of ARM register usage (my standard test, booting RISC OS, loading draw, bezier curve...) Here's my figures for access (in order of least->most total accesses): read write total r9 3568269 2711516 6279785 r8 4694252 3094507 7788759 r7 7228750 2582867 9811617 r3 7843215 5098956 12942171 r6 7425475 6129804 13555279 r12 9700546 4048706 13749252 r2 9865509 4282319 14147828 r11 10455096 7860477 18315573 r4 10600975 8020386 18621361 r5 12412240 7614757 20026997 r10 11429202 9863937 21293139 r13 11289609 11271137 22560746 <- normally Stack ptr r0 15509685 10138046 25647731 r1 16697067 11473918 28170985 r14 19376225 15908822 35285047 <- Link register (return address) r15 236589784 205393128 441982912 <- PC This is kind of what I had expected from my knowledge of ARM asm and the Procedure Call Standard. R15 can be largely discounted since it's to be statically determined in the recompiled code when read and will leave the chunk when written to, it's probably skewed by instruction fetch too IIRC. R14 can probably go a similar way in that it'll be used for every subroutine. What does interest me is that r0 and r1 are used so much and I am wondering what people think as to whether this makes them candidates for being statically allocated to x86 regs for the duration of the chunk and doing all other register's access direct to/from the register file in memory. Comments? Cheers Dave PS: impending deadline, panic setting in... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 21 17:06:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA27662 for dynarec-outgoing; Wed, 21 Feb 2001 17:06:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Feb 2001 17:22:17 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Throw an old argument back into the ring... In-Reply-To: <005401c09c6b$5ba3d070$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've done some quick hack profiling of ARM register usage (my standard test, > booting RISC OS, loading draw, bezier curve...) Here's my figures for access > (in order of least->most total accesses): Very cool! Does this include "stuff done with the register between memory reads/writes", to? Meaning, like shifts, and other accesses - add/sub/mul, etc..? If not, then you might want to consider adding it in, as it'll most likely skew your results. > r13 11289609 11271137 22560746 <- normally Stack ptr > r0 15509685 10138046 25647731 > r1 16697067 11473918 28170985 > r14 19376225 15908822 35285047 <- Link register (return address) > r15 236589784 205393128 441982912 <- PC > This is kind of what I had expected from my knowledge of ARM asm and the > Procedure Call Standard. R15 can be largely discounted since it's to be > statically determined in the recompiled code when read and will leave the > chunk when written to, it's probably skewed by instruction fetch too IIRC. I Agree. But it does make sense that r0/r1 are used often, as is the stack pointer, and if you notice they tend to be used/allocated from r0 upward. I'm sure that the code will skew the results. What you also want to watch for is not only what registers are used but how often they're used. That's a MUCH tougher step to create. > What does interest me is that r0 and r1 are used so much and I am wondering > what people think as to whether this makes them candidates for being > statically allocated to x86 regs for the duration of the chunk and doing all > other register's access direct to/from the register file in memory. I think so. But if it isn't already this way, I'd also look at more than just memory accesses. -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 22 03:12:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA28264 for dynarec-outgoing; Thu, 22 Feb 2001 03:11:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: primrose.csv.warwick.ac.uk: csuix owned process doing -bs Date: Thu, 22 Feb 2001 11:21:54 +0000 (GMT) From: David Sharp To: Subject: Re: DYNAREC: Throw an old argument back into the ring... In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Very cool! Does this include "stuff done with the register between memory > reads/writes", to? Meaning, like shifts, and other accesses - add/sub/mul, > etc..? If not, then you might want to consider adding it in, as it'll most > likely skew your results. I added the counters to the get/set methods for registers so they're real stats for how much they're to be used in a dynarec. > I Agree. But it does make sense that r0/r1 are used often, as is the stack > pointer, and if you notice they tend to be used/allocated from r0 > upward. I'm sure that the code will skew the results. What do you mean, code skew the results, do you mean the type of programs run in the testing? > What you also want to watch for is not only what registers are used but > how often they're used. That's a MUCH tougher step to create. Yeah, I don't think I'll worry about that one otherwise I'll be getting into a whole other project on dynamic profiling of ARM code... > I think so. But if it isn't already this way, I'd also look at more than > just memory accesses. What do you mean about more than just memory accesses? I was thinking that I can allocated r0 and r1 to two x86 regs for throughout every chunk of recompiled code and then all other ARM registers used would be loaded from reg[regNumber] into a temp x86 reg for emulation and stored back to reg[regNumber] immediately afterwards. Thinking about it, it's probably better to determine the two most used regs in a given chunk at recompile time and statically allocate them rather than just choosing r0 and r1 throughout the program. Chunks aren't enterable half way through anyway (except for branches back within the chunk). Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 22 14:54:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA28823 for dynarec-outgoing; Thu, 22 Feb 2001 14:54:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 22 Feb 2001 15:10:22 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Throw an old argument back into the ring... In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > reads/writes", to? Meaning, like shifts, and other accesses - add/sub/mul, > > etc..? If not, then you might want to consider adding it in, as it'll most > > likely skew your results. > I added the counters to the get/set methods for registers so they're real > stats for how much they're to be used in a dynarec. Okay - so it does cover usages. When I saw the "read" and "write" columns, I was assumign that meant read/write MEMORY locations with those registers - not actually using them. > > I Agree. But it does make sense that r0/r1 are used often, as is the stack > > pointer, and if you notice they tend to be used/allocated from r0 > > upward. I'm sure that the code will skew the results. > What do you mean, code skew the results, do you mean the type of programs > run in the testing? Yes. The compiler will generically start allocating of registers from 0 upward. For example, If the high level code uses the variable that's is represented by r5 more than r0 or r1, then r5 will get a higher count for that section of code. The only way to truly know the most often used is to do profiling/execution. > > I think so. But if it isn't already this way, I'd also look at more than > > just memory accesses. > What do you mean about more than just memory accesses? Explained in my first response above. > I can allocated r0 and r1 to two x86 regs for throughout every chunk of > recompiled code and then all other ARM registers used would be loaded from > reg[regNumber] into a temp x86 reg for emulation and stored back to > reg[regNumber] immediately afterwards. Thinking about it, it's probably > better to determine the two most used regs in a given chunk at recompile > time and statically allocate them rather than just choosing r0 and r1 > throughout the program. Chunks aren't enterable half way through anyway > (except for branches back within the chunk). And this is precisely what I've been arguing to everyone for the last year to those who think that dynamic register allocation on a register starved CPU is actually a good idea. -->Neil ------------------------------------------------------------------------------- Neil Bradley Mechanical engineers build weapons. Civil engineers Synthcom Systems, Inc. build targets. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Feb 27 17:47:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA37483 for dynarec-outgoing; Tue, 27 Feb 2001 17:46:37 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 27 Feb 01 20:57:06 -0500 Message-Id: <3.0.5.32.20010227175209.007d6500@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 27 Feb 2001 17:52:09 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Calculating sound frequency Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I figured with all the talent on this list, someone might be able to help out with this simple question... ;) I need to recalculate the sound frequency the PSG is working at so that it works within 11, 22, or 44KHz. My square wave sound generating code is really simple, and basically it goes through each sample and writes data until the cycle_step[] counter expires, then the wave flips (the data is negated in order to complete the other half of the square wave) and so on. Currently, I'm calculating the half-period of a wave like this: cycle_step[i] = rate / (PSG_CLOCK / ((!freq[i]) ? 1 : freq[i])) / 2; The (PSG_CLOCK / ((!freq[i]) ? 1 : freq[i])) stuff isn't important (frequencies written to the Genesis PSG are divided into PSG_CLOCK), so a better way to show that is: cycle_step[i] = rate / psg_tone_frequency / 2; Where "rate" is the sound rate at which playback on the PC will occur (11025, 22050, 44100 Hz, etc.) and "psg_tone_frequency" is the frequency at which the PSG is generating its sound. That method seems to generate sound which is a bit more high-pitched than it should be (not twice as high, though.) The problem might not be in the above code, but I have a feeling it is. Is there a way to specify signed sound in WAV files? I currently have to do everything unsigned... it's kind of a pain :/ And what exactly is the difference between the kbps rate and the KHz? How can a 128kbps sound file be played at 44KHz. The WAV files I produce are 44kbps and 44KHz (assuming 44KHz was the chosen sound rate.) Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Feb 27 18:11:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA37524 for dynarec-outgoing; Tue, 27 Feb 2001 18:11:05 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 27 Feb 2001 18:28:34 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Calculating sound frequency In-Reply-To: <3.0.5.32.20010227175209.007d6500@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I need to recalculate the sound frequency the PSG is working at so that it > works within 11, 22, or 44KHz. My square wave sound generating code is > really simple, and basically it goes through each sample and writes data > until the cycle_step[] counter expires, then the wave flips (the data is > negated in order to complete the other half of the square wave) and so on. The half wave approach tends to be problematic and you often wind up with incorrect tone generation unless you account for overflow inaccuracies. It IS cumulative. So what I do (which works prefectly) is this: UINT8 u8SquareWave[] = {0x7f,0x7f,-0x7f,-0x7f}; Then I create a # of samples per cycle variable in 24.8 fixed point notation: UINT32 u32SamplesPerCycle = (u32SampleRate << 8) / u32Freq; Now that I have the number of samples per cycle, I can find out how often I need to step. UINT32 u32Step = (sizeof(u8SquareWave) << 16) / u32SamplesPerCycle; Here's a for example: Let's assume the sample rate is 44100hz and a frequency of 1000hz: u32SamplesPerCycle = (44100 * 256) / 1000, or 0x2c19, so there are 0x2c.0x19 digital samples in one cycle at 44.1khz. Now let's find our step size - we need to divide 4 (size of u8SquareWave - shifted left 16 bits due to fixed point math) by 0x2c19, which gives us 0x17, or 0x0.0x17 steps through the u8SquareWave per one sample of the output sound buffer. The plus to this approach is that it will adjust itself to *ANY* sample rate, provided that the frequency isn't higher than half the sample rate (otherwise you get oddball harmonics that I can explain in greater detail later on). Even if it's an oddball sample rate. Remember that your maximum frequency is your sample rate / the size of u8SquareWave, which assumes that u8SquareWave is a single cycle. One could also do it in two bytes, which makes this algorithm good all the way to 22,050hz! So in my main rendering loop, it looks like this: while (u8Count--) { *pu8SampleData++ = u8SquareWave[u32Pos >> 8]; u32Pos += u32Step; if ((u32Pos >> 8) >= sizeof(u8SquareWave)) { u32Pos -= (sizeof(u8SquareWave) << 8); } } And when you need to change the frequency, you just recalculate the samples per cycle and u32Step and it falls right in line. > That method seems to generate sound which is a bit more high-pitched than > it should be (not twice as high, though.) The problem might not be in the > above code, but I have a feeling it is. Yep. It's because it doesn't account for step overflow. It'll always round/align. My above algorithm takes care of that problem, plus it's more flexible. You can be as specific or generic as you'd like with the waveform and it'll adjust. Of course, you could also add in oversampling if the actual waveform is longer. As it stands above, it'll give you quite the stairstepped waveform if the wave needs to be stretched, but it'll sound 100% accurate. > Is there a way to specify signed sound in WAV files? I currently have to > do everything unsigned... It's part of the header in .WAV format, and making it signed just subtracts 0x80 from each sample (if 8 bit) or 0x8000 if 16 bit. > it's kind of a pain :/ And what exactly is the > difference between the kbps rate and the KHz? How can a 128kbps sound file > be played at 44KHz. The WAV files I produce are 44kbps and 44KHz (assuming > 44KHz was the chosen sound rate.) No, your "kilobits per second" are going to be sample rate * 8 if they're 8 bit samples, or sample rate * 16 if they're 16 bit samples. Digital audio is not spoken of in kilobits per second. That's an MP3 thing so you can equate whether or not it's streaming can be supported by your link speed, and it doesn't really apply as it's compressed data and wave files are not. For what you're doing, kilobits per second is a meaningless, useless, and potentially confusing term to use. Just stick with sample rate. That's really what you're after. -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Feb 27 18:53:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA37569 for dynarec-outgoing; Tue, 27 Feb 2001 18:52:59 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 23 Jan 1959 14:41:46 -0600 (CST) From: Graham Toal Message-Id: <195901232041.OAA17911@gtoal.com> To: dynarec@dynarec.com Subject: DYNAREC: related project: static recompilation (CCPU) Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi folks - I found the dynarec web page for the first time today (too muxch time on my hands - in bed with a flu...) and I thought I'd say hello and let you know what I'm working on. Although not strictly dynamic recompilation (or binary code translation), what I have been doing is quite similar in spirit. I've been hacking a static recompiler which takes a binary for the cinematronics CPU and converts it into a low-level C program which when executed does the same calculations that an emulator would have done, but without the overhead of a code-fetching loop, i.e. each instruction naturally follows through to the next. I.e. it is a binbary code translator using C as an intermediate code. (If C were replaced by a dynamic compiler such as `C then I guess it would be a true dynamic recompiler) One thing that you can take advantage of with this technique is that the many CPU flags etc that are set on every emulated instruction don't really need to be set most of the time, so by using a good compiler, most of these redundant loads and stores can be optimised out by the compiler. (Yes, the translator could also do it, but why reinvent the wheel?) The project is still very much 'in progress' but I like to work in the truest meaning of "open source" by making my working directory visible on the net, so if anyone wants to see what has been done so far, it's online at: http://www.gtoal.com/athome/tailgunner/ I haven't yet written any of it up, but there is a rough sketch of the structure of the thing near the end of this page: http://www.gtoal.com/athome/utils/ (both those URLs can be a *tiny* bit out of date at times because the master source was moved to a PC, on account of the Unix being so puny (66MHz 486, 16Mb) and my PC being a bit newer. I copy the files back to unix regularly) Neil, who manages this mailing list, has been helping me out with it quite a bit. (Actually I'm surprised he didn't mention the existence of this list to me, probably didn't occur to him that there was much overlap between static and dynamic reconpilation, but I think there is) What's in there is pretty much the first iteration of this project as I as finding my feet. One of the things I learned fairly late on is something that if I were doing it again, I would make more central: I found a great way to verify a new implementation of a CPU core, whether interpretive, statically translated, or dynamically translated: simply build a harness which includes a known working core PLUS the new one you are building, and run the two in lockstep. After each instruction is executed, compare all the registers, and stop (into debug mode?) as soon as you find a difference. (Strictly you should stop on ram differences too, but it's very hard to generate a ram difference that wasn't caused by a register difference, unless your basic load/store to ram in various addressing modes is faulty. Obviously checking all Ram is a high overhead) I'd been struggling for some time with my code generation for the CCPU until I incorporated this, at which point I finished the engine to 100% compatibility in an evening. It's *really* useful when you move from getting the basic engine working, to pulling some risky optimisations. For instance, I tried out the technique of "partial compilation" which is that you run the program, and use knowlege of the actual execution to modify the generated code. In my case, I checked all registers at the entry to every basic block, and whenever a register was invariant, I fed it as a hint to the code generator. This allowed a lot of simplification of instructions such as indexed loads (eg ram[P<<4+I] could be replaced by ram[0x64]) Ultimately I would like to extend this project to be genuine decompilation, back to a usable source, but doing that is a level of complexity higher than I want to take on right now. The reason for doing this project, by the way, is that traditional emulation has too much of an overhead to allow these vector games to run on a palm pilot in real time. I'm hoping that by removing the interpretive loop, and optimising away many of the redundant instructions that each CCPU instruction expands to, I can end up with a binary that has no more than say 4 real instructions to 1 CCPU instruction, which is the target I need to be able to meet in order to run on the Palm. One recent idea I had which I would like to spin off is this: it would be pretty easy to generate Java rather than C. By doing this we could port any video game to Java with a good chance of it running in real time, without the overhead of a java-written interpreter. The code I'm generating right now though is rather large and I don't know anything about Java such as whether it can support 100K source procedures or huge switch statements. What I've generated has broken a couple of compilers along the way; I suspect it's even more likely to blow away an interpreter! Graham --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Feb 27 21:30:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA37713 for dynarec-outgoing; Tue, 27 Feb 2001 21:30:28 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 27 Feb 2001 21:48:00 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: related project: static recompilation (CCPU) In-Reply-To: <195901232041.OAA17911@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > calculations that an emulator would have done, but without the > overhead of a code-fetching loop, i.e. each instruction naturally > follows through to the next. I.e. it is a binbary code translator > using C as an intermediate code. (If C were replaced by a dynamic > compiler such as `C then I guess it would be a true dynamic > recompiler) Looks quite cool! Recompilation is recompilation - no matter what the target or source, so it's extremely on topic - far more so than we've been on this list for quite some time! > instruction don't really need to be set most of the time, so > by using a good compiler, most of these redundant loads and stores > can be optimised out by the compiler. (Yes, the translator > could also do it, but why reinvent the wheel?) I've taken a look at the code generated and I cannot see how a compiler would take out some of the redundancies. In fact, I see how your recompiler could be able to collapse things: register_A = cmp_new = 0; cmp_old = register_A; cmp_new = 0x1e; register_A = flag_C = acc_a0 = 0x001e; So don't sell optimization short! ;-) Most compilers (at least widely used, like gcc) aren't very good at complex optimization. We've got 1Ghz CPUs now and hey, so what if it's slow? ;-( > The project is still very much 'in progress' but I like to > work in the truest meaning of "open source" by making my > working directory visible on the net, so if anyone wants to > see what has been done so far, it's online at: This is very cool - thanks for the peek! > it quite a bit. (Actually I'm surprised he didn't mention the > existence of this list to me, probably didn't occur to him that > there was much overlap between static and dynamic reconpilation, > but I think there is) Or more likely I've been out of emulation so long that I haven't thought to contact anyone about it... > I found a great way to verify a new implementation of a CPU > core, whether interpretive, statically translated, or dynamically > translated: simply build a harness which includes a known working > core PLUS the new one you are building, and run the two in lockstep. Yeah, I did this for DRMZ80. > After each instruction is executed, compare all the registers, > and stop (into debug mode?) as soon as you find a difference. Aha - that works unless you've got something that doesn't properly resolve when you're not single stepping. It happens all the time in assembly. > I'd been struggling for some time with my code generation for > the CCPU until I incorporated this, at which point I finished the > engine to 100% compatibility in an evening. Wait... what part did you finish in an evening? This looks like much more of an evening to me! > It's *really* useful when you move from getting the basic engine > working, to pulling some risky optimisations. For instance, I tried > out the technique of "partial compilation" which is that you run > the program, and use knowlege of the actual execution to modify the > generated code. In my case, I checked all registers at the entry to > every basic block, and whenever a register was invariant, I fed it > as a hint to the code generator. This allowed a lot of simplification > of instructions such as indexed loads (eg ram[P<<4+I] could be > replaced by ram[0x64]) This works just like my idea for flag hints passed in to DRMZ80. > The reason for doing this project, by the way, is that traditional > emulation has too much of an overhead to allow these vector games to > run on a palm pilot in real time. I'm hoping that by removing the > interpretive loop, and optimising away many of the redundant > instructions that each CCPU instruction expands to, I can end up > with a binary that has no more than say 4 real instructions to > 1 CCPU instruction, which is the target I need to be able to meet > in order to run on the Palm. I think you'll still be bottlenecked with the graphics, though. I'm still very, very interested in seeing the results! > One recent idea I had which I would like to spin off is this: it > would be pretty easy to generate Java rather than C. By doing this > we could port any video game to Java with a good chance of it running > in real time, without the overhead of a java-written interpreter. Shudder... Java... it's a 4 letter word! > The code I'm generating right now though is rather large and I > don't know anything about Java such as whether it can support > 100K source procedures or huge switch statements. What I've generated > has broken a couple of compilers along the way; I suspect it's even > more likely to blow away an interpreter! We shall see! Actually, I converted Zonn's 16 bit core to 32 bit, and there are a LOT of optimizations that could occur that don't. But I'd say that even with inlined compiled code you'd be hard pressed to whomp the x86 assembly version of the CCPU emulator! -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Feb 27 23:34:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA37805 for dynarec-outgoing; Tue, 27 Feb 2001 23:34:49 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200102280746.IAA07489@pons.ac.upc.es> Subject: Re: DYNAREC: related project: static recompilation (CCPU) In-Reply-To: <195901232041.OAA17911@gtoal.com> "from Graham Toal at Jan 24, 1959 02:41:46 pm" To: dynarec@dynarec.com Date: Wed, 28 Feb 2001 08:46:10 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com It's my mail client or your mail take a lot of time to arrive ;). (it says someday 1959, and of course it was at the bottom of a 1600 mails ...). Well, nothing really important just the usual stupid joke it can be expected from me :P. > Hi folks - I found the dynarec web page for the first time > today (too muxch time on my hands - in bed with a flu...) > and I thought I'd say hello and let you know what I'm working > on. > Welcome to the list. :) > spirit. I've been hacking a static recompiler which takes > a binary for the cinematronics CPU and converts it into > a low-level C program which when executed does the same > calculations that an emulator would have done, but without the > overhead of a code-fetching loop, i.e. each instruction naturally > follows through to the next. I.e. it is a binbary code translator I think it has been used before and I remember some bibliography related with the topic (mainly decompilation related), but neither I have read them or they are in my (still non working) BT Library. I found sometime ago something similar in the emuscene (if you are interested to take a look). It's a *ehem* Richard Mitton (don't tell to Neil ;) static recompiler of the m68705. > One thing that you can take advantage of with this technique > is that the many CPU flags etc that are set on every emulated > instruction don't really need to be set most of the time, so > by using a good compiler, most of these redundant loads and stores > can be optimised out by the compiler. (Yes, the translator > could also do it, but why reinvent the wheel?) > I think I would prefer real binary translation (either static or dynamic) but this is also an interesting approach. Perhaps the two main problems (differences) are that the different difficulty of translating assembly to assembly than assembly to C (but which would be the more one?), and the fact than in a BT translator the code is optimized as you implement it and in the other one is as optimized as the C compiler is able to do. > > http://www.gtoal.com/athome/tailgunner/ > > > http://www.gtoal.com/athome/utils/ > I will take a look if I have time (and I'm actually writting my project documentation :P). Ummm ... decompilation or C based static translation ... I think I have missed that topic in the introduction ;), thank to tell me (or remind me) thata > I found a great way to verify a new implementation of a CPU > core, whether interpretive, statically translated, or dynamically > translated: simply build a harness which includes a known working > core PLUS the new one you are building, and run the two in lockstep. > After each instruction is executed, compare all the registers, > and stop (into debug mode?) as soon as you find a difference. Yes is a good technique and an usual one (it just a cheap version of comparing with the real CPU). I found it useful for my 8080 emulator (althought a bit limited because I was using Neil's MZ80 as the reference emulator and z80 and 8080 have some differences). I think with static/dynamic translation is a bit hard to implement because if you translate in a block based approach many times you can not stop after each instruction (or if you do you aren't really implementing the final real behaviour of the translator). > One recent idea I had which I would like to spin off is this: it > would be pretty easy to generate Java rather than C. By doing this > we could port any video game to Java with a good chance of it running > in real time, without the overhead of a java-written interpreter. > Ummm, not sure if it is a good idea, Java is just very slow either as pure language or implementing an interpreter with it ;). But if you can generate C code you can generate almost any other kind of high level language code. > > Graham > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Feb 27 23:48:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA37824 for dynarec-outgoing; Tue, 27 Feb 2001 23:48:44 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200102280759.IAA12156@pons.ac.upc.es> Subject: Re: DYNAREC: related project: static recompilation (CCPU) In-Reply-To: <200102280746.IAA07489@pons.ac.upc.es> "from Victor Moya del Barrio at Feb 28, 2001 08:46:10 am" To: dynarec@dynarec.com Date: Wed, 28 Feb 2001 08:59:36 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I think it has been used before and I remember some bibliography > related with the topic (mainly decompilation related), but neither > I have read them or they are in my (still non working) BT Library. > > I found sometime ago something similar in the emuscene (if you > are interested to take a look). It's a *ehem* Richard Mitton > (don't tell to Neil ;) static recompiler of the m68705. > Ops! As usually I forgot the link: www.mitton.fsnet.co.uk/archive/m688705/kayamcu.zip If you want some 'technical' stuff related with decompilation try some of the papers from Cristina Cifuentes (Queensland University). www.csee.uq.edu.au/~cristina For example in the BTL (fixed link :( last \ must be /): A structuring Algorithm For Decompilation http://www.dynarec.com/~victor/Project/Bibliography/Reports/clei2.ps Victor > > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 28 21:30:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA38994 for dynarec-outgoing; Wed, 28 Feb 2001 21:30:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 24 Jan 1959 17:19:30 -0600 (CST) From: Graham Toal Message-Id: <195901242319.RAA23080@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: related project: static recompilation (CCPU) Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > It's my mail client or your mail take a lot of time to arrive ;). > (it says someday 1959, and of course it was at the bottom of a > 1600 mails ...). Well, nothing really important just the usual > stupid joke it can be expected from me :P. Y2K bug. Only fix is a new motherboard, and since the date is the only known symptom, it's not worth buying a new machine just to fix it... > I found sometime ago something similar in the emuscene (if you > are interested to take a look). It's a *ehem* Richard Mitton > (don't tell to Neil ;) static recompiler of the m68705. > www.mitton.fsnet.co.uk/archive/m688705/kayamcu.zip his site appears to be mostly offline. > I will take a look if I have time (and I'm actually writting my > project documentation :P). Ummm ... decompilation or C based > static translation ... I think I have missed that topic in the > introduction ;), thank to tell me (or remind me) thata Here are some more ideas for your intro: as I said, what I've done so far is my first hack at this, and in doing it I learned some lessons that I'd do differently next time. The main one is this: in the first hack at a code translator, I did a static analysis of the original program to identify all the code in the roms that could be executed, i.e. if, while scanning the rom, I found a conditional branch I would both explore the branch *and* drop through. This should have located all the executable code, with the exception of any jump targets which were computed dynamically or were table-driven. Those I would add manually via a config file, generated as follows: I would tanslate the code, run the emulator, and if it ever hit a rom address that was not already marked as code, it would print the address and exit. I'ld then add that address to the list of initial entry points to the rom, and perform the tree-walk on the code again, and generate a new binary. Although this meant an edit/compile/run loop, it was't very onerous and I think I managed to identify all of the code (as opposed to data, in the roms) in about a day. Each rom byte was tagged with whether it was an opcode, operand, piece of data, jump destination etc. In hindsight, this was not the best way to identify the code. After I had added the 'dual cpu' technique to help debugging, I saw that it would have been ideal for tagging the rom as above too. (Actually I suspected this would be the case before I wrote the static analyser, but what I didn't realise then was how easy it was to integrate someone else's emulator into the project) So... the correct way to do this is as follows: start with an emulator. Code it up so that you have a procedure such as execute(PC); which executes some instructions. You'll need two of these - one that fetches the opcode at PC, and does a traditional emulation based on the opcode - and one which uses the PC to branch to actual C code which executes the program directly without interpreter overhead. This way you can have a hybrid: where you've translated some of the Rom to C, you execute C; otherwise you emulate. When you want to execute, look at the flags that tag the opcode, and if it says "translated already", run the native C version until it returns control to the main loop; if the opcode doesn't have that flag set, run the emulator for a SINGLE INSTRUCTION and return to the main loop, to check the next instruction. When you first run this program, there is no translated C to run - that version of the execute() function is a dummy. As you run, the traditional emulator tags each rom address it emulates as being an opcode. It can also note which addresses are jumped to, which is useful information later. *After* you run the program, you then automatically invoke the translator, which uses the info that was dumped at the end of the program run, to generate native C for segments of the rom which have now been identified as code (by virtue of having been executed). Recompile, and run again. This time, most calls to execute(PC); will be handled by the translated code, not the interpreter. When that code eventually branches to somewhere that has not previously been executed (eg. you reached a new level in the game, or had to enter your name in the high-score for the first time), then control is passed back to the traditional emulator which continues as if nothing had happened. Most likely it will emulate a few instructions and then hit some translated code again and pass control back to the 'fast' emulator. The tables tagging the rom are loaded, modified, and stored on each run of the program, so the results of running are cumulative, and after enough exhaustive playtesting, you will find that *all* the code is being executed by the translated C and none by the emulator. At this point you can remove the emulator code from the binary for a space saving. This is VERY similar to dynamic translation, except that the granularity is much rougher :-) I don't know if anyone is doing it this way, but my code could be converted to do this very easily, and probably will before I tackle the translation of any other games. (So far, Tailgunner is the only one I'm interested in and the translator was quite tailgunner-specific in places) I know Skeezix would like to see a C native core for Rip Off (his favourite game) so I may tackle that one next to see how well the above automated procedure works. > I think with static/dynamic translation is a bit hard to implement > because if you translate in a block based approach many times you > can not stop after each instruction (or if you do you aren't really > implementing the final real behaviour of the translator). What I'm doing is translating instruction by instruction. However the C I generate can either have a case label in front of every emulated intruction, or I can suppress the labels for all but those instructions I have positively identified as jump targets. If I get it wrong, and omit one that is eventually jumped to, the default case for the switch/jump array will hand control back to the traditional emulator and all will continue to run. However, it will *also* tag the destination address as a jump destination, and on the next compile/run iteration, there *will* be a label there for it to jump to. My only inserting the necessary labels in the code, and omitting all those that are never jumped to, we give the C compiler great freedom in identifying (and therefore optimising) basic blocks, which is where a *significant* part of the speedup comes from. So in answer to our point above, it is *not* a block-based approach, *BUT* it is equivalent to one in the end because the external compiler intuits where the basic blocks are, from the control flow. Summary: one good reason for this low-granularity dynamic translation using C as an intermediate code is that you get to reuse all the work done by the C compiler writer for every target that you run on or port to, and don't need *any* knowlege of the binary architecture of the target yourself nor do you need to do the expensive job of generating code on the fly as you execute. That part is done *between* executions. I think this method is somewhat more powerful than plain static translation, but easier to implement than full dynamic recompilation. The only price you pay is that the first few executions of the code are mostly interpreted, and you have to go to some lengths to ensure total coverage of all the code paths. (I also like the fact that at the end of the day, you have a C version of the game, whih can run anywhere, not just on the system which did the translation... ie in my case, on the Palm...) > > One recent idea I had which I would like to spin off is this: it > > would be pretty easy to generate Java rather than C. By doing this > > we could port any video game to Java with a good chance of it running > > in real time, without the overhead of a java-written interpreter. > > > > Ummm, not sure if it is a good idea, Java is just very slow either > as pure language or implementing an interpreter with it ;). But > if you can generate C code you can generate almost any other kind > of high level language code. I've never written in Java so I can't be accused of being a Java bigot (indeed I'm a vanilla C rather than C++ programmer too) *but* I am a convert to the idea that in the future a significant amount of programming will be able to be run straight off the web, without everyone needing a local copy of the binary, and at the moment the only platform to offer that is Java. I would *love* for people to be able to play tailgunner just by entering my URL. I think the MAME philosophy of everything in one huge binary is wrong, and these systems are so big and hard to manage that very few people download and play with them compared to who would *like to* if it were easier to do so. > If you want some 'technical' stuff related with decompilation try > some of the papers from Cristina Cifuentes (Queensland University). > > www.csee.uq.edu.au/~cristina Thanks, I had researched quite a bit of these things while I was writing my code including that page, which I agree is one of the better ones. It was interesting to note that all this is being done as regular Computer Science and doesn't appear to have trickled down into the emulation world at all (at least I thought that until I discovered this mailing list yesterday) Our somewhat restricted field actually gives us some advantages over general purpose binary translators I think. Graham --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 28 21:42:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA39013 for dynarec-outgoing; Wed, 28 Feb 2001 21:42:53 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 24 Jan 1959 17:32:24 -0600 (CST) From: Graham Toal Message-Id: <195901242332.RAA23112@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: related project: static recompilation (CCPU) Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've taken a look at the code generated and I cannot see how a compiler > would take out some of the redundancies. In fact, I see how your > recompiler could be able to collapse things: > > register_A = cmp_new = 0; > cmp_old = register_A; cmp_new = 0x1e; > register_A = flag_C = acc_a0 = 0x001e; > > So don't sell optimization short! ;-) Most compilers (at least widely > used, like gcc) aren't very good at complex optimization. We've got 1Ghz > CPUs now and hey, so what if it's slow? ;-( Actually I was brought up on compilers that were *much* better than GCC and I tend to take for granted that they would automatically optimise the above to: cmp_old = 0; cmp_new = 0x1e; register_A = flag_C = acc_a0 = 0x001e; Now if those lines had been followed by a few more similar lines, with different values, that segment would eventually have become just register_A = 0x001e; Any time a variable is reloaded with a different value, without having been used, the earlier load can be thrown away. It seems quite a trivial optimisation, but when a CCPU instruction sets maybe 3 or 4 of these anciliary variables but never uses them, a sequence of many instructions in which most of them are elided might lose 75% of its code. And I expect the compiler to do that. This is the primary reason that I build multiple instructions up into larger basic blocks than a single instruction at a time, so that the compiler knows that it is allowed to remove these redundant loads and dead stores. A true interpreter *cannot* make these optimisations. A dynamic recompiler might be able to, but it would be so expensive working it out on the fly that I suspect none ever will. Actualy I spent a long time looking for a C source-to-source optimiser that would physically excise them from the generated source file, but no such tool seems to exist. (One of my classmates at Edinburgh wrote a Pascal source-to-source optimiser which did just that, and more, in 1980. I was surprised no-one has done it for C since then. (There may be an SGI tool that does something similar but it's proprietary and I can't get my hands on an SGI to try it out)) G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 28 21:48:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA39026 for dynarec-outgoing; Wed, 28 Feb 2001 21:48:37 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 24 Jan 1959 17:38:00 -0600 (CST) From: Graham Toal Message-Id: <195901242338.RAA23124@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: related project: static recompilation (CCPU) Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > After each instruction is executed, compare all the registers, > > and stop (into debug mode?) as soon as you find a difference. > > Aha - that works unless you've got something that doesn't properly resolve > when you're not single stepping. It happens all the time in assembly. Actually it always works. You don't need to execute just one instruction at a time and then compare registers. If you have some sequence that is being handled specially (eg 12 consecutive MUL instructions in the CCPU to do a single 12-bit multiply) then you simply tag the next opcode after the sequence as a merge point, and check the registers there. One emulator can execute 16 MULs and the other can execute a single C "*" operation and skip the other 11 opcodes, but the machine state must be the same after this is all done or your emulation is not correct. The binary code translator can do the tagging of the rom as it translates, so that the runtime knows when not to halt and compare registers. Easy! G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 1 00:03:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA39126 for dynarec-outgoing; Wed, 28 Feb 2001 23:59:41 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200103010811.JAA10382@pons.ac.upc.es> Subject: Re: DYNAREC: related project: static recompilation (CCPU) In-Reply-To: <195901242319.RAA23080@gtoal.com> "from Graham Toal at Jan 25, 1959 05:19:30 pm" To: dynarec@dynarec.com Date: Thu, 1 Mar 2001 09:11:04 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > www.mitton.fsnet.co.uk/archive/m688705/kayamcu.zip > > his site appears to be mostly offline. > I think there too '8' in the url ;). Well, the correct one is (I hope): www.mitton.fsnet.co.uk/archive/m68705/kayamcu.zip (or go to the raw address, an search tech->m68705) > This should have located all the executable code, with the exception > of any jump targets which were computed dynamically or were table-driven. > Those I would add manually via a config file, generated as follows: > I think I already know a bit how a static translator works ;). I'm actually working in a project in my university which is a multitarget - multisource (machine that is) static translator, named Dixie. It seems now I'm no more the only static expert of the list, Mike. BTW, Dixie is more a pure static translation, it uses a virtual machine (DVM) to which original code is translated and later this virtual code can be translated to another target CPU. (And it is innefficient as hell). > I would tanslate the code, run the emulator, and if it ever hit a > rom address that was not already marked as code, it would print the > address and exit. I'ld then add that address to the list of initial > entry points to the rom, and perform the tree-walk on the code again, > and generate a new binary. Although this meant an edit/compile/run > loop, it was't very onerous and I think I managed to identify all > of the code (as opposed to data, in the roms) in about a day. > In Dixie it works in a similar manner, we translate the binary and we run it, when it hits an untranslated address we stop, generate a feedback file and we translate the binary again. Although now we implement it for all the implemented ISAs we think that this pass could be innecessary with architectures with fixed-lenght opcodes (RISC machines). In this case it is just needed to know what can be potentially code and translate everything (perhaps you overtranslate a bit but it would work). That would work better with our target binary, Unix, because there are separate sections for code and data. Of course it doesn't work on CISC variable isntruction size CPUs. > > This way you can have a hybrid: where you've translated some of > the Rom to C, you execute C; otherwise you emulate. > That is of course the usual approach for using an static translator with many binaries without having to translate all of them at a time. The mixed translator/interpreter has been used in many 'commercial' static translators, mainly Digital ones, for example FX!32 or de old one FreePort (sure?). It is also common to have an interpreter/dynamic translator mixture. The interpreter for the first execution of the code and for profiling and the dynarec for compiling optimicing the more used blocks (Transmeta and others). All of them, from what I know, are real static translators. Of course they implement all the static optimizations which can be found in a real compiler. > MAME philosophy of everything in one huge binary is wrong, and > these systems are so big and hard to manage that very few people > download and play with them compared to who would *like to* if it > were easier to do so. > About the first thing, I agree, MAME is too big and it would be better to be used for reference and other programmers could implement in a more optimized way the different emulated machines. But I don't think that is keeping noone from using it, just perhaps if they have an old computer, because of the 'increible' speed of MAME. > Thanks, I had researched quite a bit of these things while I was > writing my code including that page, which I agree is one of the > better ones. It was interesting to note that all this is being > done as regular Computer Science and doesn't appear to have > trickled down into the emulation world at all (at least I thought > that until I discovered this mailing list yesterday) > Well, I think static compilation in the emulation scene has not been used (or not a lot). Althought I think for arcade machines could be very well suited (not for console emulation). Of course most of the information about binary translation is found in in the Academic world, but Mike's DRFAQ, there is not documentation about bt or dynarec or starec (staticrec? ;) in the emuscene. (One of the reasons for this list) > Our somewhat restricted field actually gives us some advantages > over general purpose binary translators I think. > Of course, most of the Cifuentes' work is multitarget and this limites how it can work. It is better to use it as a general approach and specialize it for each problem. > Graham > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 1 01:29:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA39209 for dynarec-outgoing; Thu, 1 Mar 2001 01:29:41 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 1 Mar 2001 01:47:31 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: related project: static recompilation (CCPU) In-Reply-To: <195901242332.RAA23112@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > So don't sell optimization short! ;-) Most compilers (at least widely > > used, like gcc) aren't very good at complex optimization. We've got 1Ghz > > CPUs now and hey, so what if it's slow? ;-( > Actually I was brought up on compilers that were *much* better > than GCC and I tend to take for granted that they would automatically > optimise the above to: FWIW, Watcom optimizes that section nicely. Gcc really sucks - at least for x86 stuff. > Any time a variable is reloaded with a different value, without > having been used, the earlier load can be thrown away. Yep - assignment pruning. An often missed step in compilers because it's a pain to implement. > elided might lose 75% of its code. And I expect the compiler > to do that. This is the primary reason that I build multiple > instructions up into larger basic blocks than a single instruction > at a time, so that the compiler knows that it is allowed to > remove these redundant loads and dead stores. You can pass "hints" to the recompiler (this is what I planned on doing in drmz80) where you can indicate where an entry/exit point is. Sometimes you don't know if you're jumping in to the middle of a block and it may be critical to that code, but not to the code before the point it jumps into. > A true interpreter *cannot* make these optimisations. True. But at the same time a regular emulator can (in assembly) take advantage of things that C would have to manually calculate out, so what it loses in having to manually calculate the flags it can make up for by having the processor do it. Nothing beats hand crafted assembly! ;-) > A dynamic > recompiler might be able to, but it would be so expensive working > it out on the fly that I suspect none ever will. Dunno about that. Lack of flag calculation is a common optimization tip, and provided you had good data to begin with (I.E. info on what relied on what and what was the middle of a block), it's not hard to do and can pay off big time. > did just that, and more, in 1980. I was surprised no-one has > done it for C since then. Because computers that run fast enough to run horrible code will still run it at an acceptable rate. Plus, the optimizations that those programs made usually didn't help even in their heyday (unless the code was really bad to begin with). Also, one "more optimal" approach on one compiler wouldn't be as good on another. -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 1 01:31:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA39225 for dynarec-outgoing; Thu, 1 Mar 2001 01:31:40 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 1 Mar 2001 01:49:30 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: related project: static recompilation (CCPU) In-Reply-To: <195901242338.RAA23124@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Aha - that works unless you've got something that doesn't properly resolve > > when you're not single stepping. It happens all the time in assembly. > Actually it always works. Whoa - slight disconnect. I was referring to an assembly emulator (an emulator written in assembly language) giving different results from running a # of cycles and doing a single step - not what you mentioneed below. >> You don't need to execute just one instruction > at a time and then compare registers. If you have some sequence that > is being handled specially (eg 12 consecutive MUL instructions in the > CCPU to do a single 12-bit multiply) then you simply tag the next > opcode after the sequence as a merge point, and check the registers > there. Fine, until the routine you're examining makes a mistake that's covered up by the instructions on the outside. ;-) > The binary code translator can do the tagging of the rom as it > translates, so that the runtime knows when not to halt and compare > registers. Easy! I'll still do a recompiler for the 68K someday... probably May/June timeframe I'll start back into it. I'm so swamped with projects now that I can't even breathe... -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 1 01:34:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA39234 for dynarec-outgoing; Thu, 1 Mar 2001 01:34:42 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 1 Mar 2001 01:52:32 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: related project: static recompilation (CCPU) In-Reply-To: <200103010811.JAA10382@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > MAME philosophy of everything in one huge binary is wrong, and > > these systems are so big and hard to manage that very few people > > download and play with them compared to who would *like to* if it > > were easier to do so. They COULD download a different emulator to use. there's more than MAME! But it's a double edged sword. If they broke things up into different modules, then end users would whine about "I'm getting *.dll not found when I play game X, but it's fine elsewhere.". I can see why they aren't motivated to break it up. > About the first thing, I agree, MAME is too big and it would be > better to be used for reference and other programmers could > implement in a more optimized way the different emulated machines. > But I don't think that is keeping noone from using it, just > perhaps if they have an old computer, because of the 'increible' > speed of MAME. Yeah. Just today I was reading about someone who was running MAME on a 486/33 (Pacman). "Works great with a frameskip of 8, sound at 11khz!" and he acted like that was acceptable. Retrocade can run it at 1.5x the original speed with 44.1khz sound on the same machine. It clearly proves the architecture of MAME has *SEVERE* problems in the optimization area. -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 1 01:46:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA39253 for dynarec-outgoing; Thu, 1 Mar 2001 01:46:11 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200103010957.KAA19426@pons.ac.upc.es> Subject: Re: DYNAREC: related project: static recompilation (CCPU) In-Reply-To: "from Neil Bradley at Mar 1, 2001 01:49:30 am" To: dynarec@dynarec.com Date: Thu, 1 Mar 2001 10:57:31 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > The binary code translator can do the tagging of the rom as it > > translates, so that the runtime knows when not to halt and compare > > registers. Easy! > > I'll still do a recompiler for the 68K someday... probably May/June > timeframe I'll start back into it. I'm so swamped with projects now that I > can't even breathe... > Good! Nice to know you haven't forgotten about DR68K :)) (just a joke of course). And probably (if you still want to do it as a list effort and does not just in your own) it will be a good date for me ;) (and if it isnot a good date, it doesn't matter either), I'm just in the writing process of my project documentation and seems it will take me longer than I thought (may be it will end by the end of March or April Start). Umm .. perhaps I will put it in my web if someone is interested to read it before I end it (archeology of the building of a memory or something like that ;). Now it is just a too long 20 pages introduction, with unchecked spelling and missing graphics. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 1 01:52:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA39271 for dynarec-outgoing; Thu, 1 Mar 2001 01:52:42 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200103011003.LAA08691@pons.ac.upc.es> Subject: Re: DYNAREC: related project: static recompilation (CCPU) In-Reply-To: "from Neil Bradley at Mar 1, 2001 01:52:32 am" To: dynarec@dynarec.com Date: Thu, 1 Mar 2001 11:03:57 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > About the first thing, I agree, MAME is too big and it would be > > better to be used for reference and other programmers could > > implement in a more optimized way the different emulated machines. > > But I don't think that is keeping noone from using it, just > > perhaps if they have an old computer, because of the 'increible' > > speed of MAME. > > Yeah. Just today I was reading about someone who was running MAME on a > 486/33 (Pacman). "Works great with a frameskip of 8, sound at 11khz!" and > he acted like that was acceptable. Retrocade can run it at 1.5x the > original speed with 44.1khz sound on the same machine. It clearly proves > the architecture of MAME has *SEVERE* problems in the optimization area. > Hehe! I remember that too. When I was using my old 486/66 and I compared Pacman (and others) with Dave Spicer Sparcade, MAME was almost unplayable and Sparcade worked just nice, including some GG and Master System games (even faster than other Master/GG emulators). A more modern topic would be the fact I tested the first realease of MAME 0.37b12 with the new CPS2 driver and the C core and later I tested the same version (or perhaps just CPS2MAME) with (or it was said that) the ASM core and it run at the same speed (ummm ... CPU not being the bottleneck?), around 40fps in my PII 350. It was really strange ... > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 1 01:53:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA39281 for dynarec-outgoing; Thu, 1 Mar 2001 01:53:20 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <012001c0a236$a58a1e80$9a00a8c0@daves> From: "David Sharp" To: Subject: DYNAREC: reg allocation paper Date: Thu, 1 Mar 2001 10:01:39 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I could really do with getting my hands on this paper, http://www.acm.org/pubs/citations/journals/toplas/1999-21-5/p895-poletto/ I seem to remember that Victor had an ACM account or was I wrong? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 1 02:01:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA39458 for dynarec-outgoing; Thu, 1 Mar 2001 02:01:40 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200103011013.LAA04336@pons.ac.upc.es> Subject: Re: DYNAREC: reg allocation paper In-Reply-To: <012001c0a236$a58a1e80$9a00a8c0@daves> "from David Sharp at Mar 1, 2001 10:01:39 am" To: dynarec@dynarec.com Date: Thu, 1 Mar 2001 11:13:12 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I could really do with getting my hands on this paper, >http://www.acm.org/pubs/citations/journals/toplas/1999-21-5/p895-poletto/ >I seem to remember that Victor had an ACM account or was I wrong? I actually have it ;). Well I have downloaded it so I can send it to you but if you want you can also get it from: http://citeseer.nj.nec.com/poletto99linear.html citeseer.nj.nec.com has almost all the ACM papers and I think is freely available. I have found that is a good practice to use google with the document names and most of times it founds them. And the most it this server (so in fact just a search in this page would be enough). If you are unable to download from that address (or you prefer a mail), tell me ASAP and I will send it to you. >Cheers >Dave Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 1 02:12:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA39474 for dynarec-outgoing; Thu, 1 Mar 2001 02:12:12 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200103011023.LAA15732@pons.ac.upc.es> Subject: Re: DYNAREC: reg allocation paper In-Reply-To: <200103011013.LAA04336@pons.ac.upc.es> "from Victor Moya del Barrio at Mar 1, 2001 11:13:12 am" To: dynarec@dynarec.com Date: Thu, 1 Mar 2001 11:23:45 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >I could really do with getting my hands on this paper, > > >http://www.acm.org/pubs/citations/journals/toplas/1999-21-5/p895-poletto/ > >I seem to remember that Victor had an ACM account or was I wrong? > > Now I think about it (and althought I haven't still fixed the links in the BTL) if some of you know about documents which would be interesting for our interests (emulation, binary translation, whatever) please send me a mail with the reference and I will try to find them and add (and FIX!) to the library, Of course another thing is if someone uses or will use it someday ;). Now it seems it only works as a backup archive for my own archive. If Word wouldn't have generated that DOS kind links ... > >Cheers > >Dave > > Victor > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 1 02:25:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA39494 for dynarec-outgoing; Thu, 1 Mar 2001 02:25:45 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <014001c0a23b$2d7e3570$9a00a8c0@daves> From: "David Sharp" To: References: <200103011013.LAA04336@pons.ac.upc.es> Subject: Re: DYNAREC: reg allocation paper Date: Thu, 1 Mar 2001 10:34:20 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Cheers Victor, I've got it now! Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 1 17:20:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA40261 for dynarec-outgoing; Thu, 1 Mar 2001 17:19:59 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002501c0a2b8$bbb8b360$0200a8c0@cheetah> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: related project: static recompilation (CCPU) Date: Fri, 2 Mar 2001 01:29:28 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I'll still do a recompiler for the 68K someday... probably May/June > timeframe I'll start back into it. I'm so swamped with projects now that I > can't even breathe... Now that's interesting, because I was going to suggest that we resume (er... actually START) our 68k dynarec in June time... I'll be pretty much free by then, I hope! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Mar 2 05:19:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA41012 for dynarec-outgoing; Fri, 2 Mar 2001 05:18:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004301c0a31c$7da0dd00$9a00a8c0@daves> From: "David Sharp" To: Subject: DYNAREC: constant evaluation and propagation Date: Fri, 2 Mar 2001 13:27:11 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Looking ahead to optimisations that can be done once I've got my intermediate code generated, I'm looking at the issue of constant evaluation and propagation (substituting constants in for emulated regs if you know they're constant) i.e. the instruction LDR R0,[PC,#16] will convert to something like getpc t0 ; get PC into t0 (PC is statically determinable) movc t1,#16 ; stick the constant offset into t0 add t0,t0,t1 ; add the PC and the constant to get the address ldw r0,t0 ; load the value from address into r0 but could just be done like movc t0,#0x???????? ; put value of PC+16 into t0 ldw r0,t0 ; load value from address likewise because of awkward immediate encoding on the ARM, to get 0x12345678 in a reg we have to either load it from RAM or do this mov rx,#0x12 << 24 orr rx,rx,#34 << 16 orr rx,rx,#56 << 8 orr rx,rx,#78 which could evaluate to armlet movc rx,#0x12345678 Most of the compiler books I've looked at tend to be too high level and deal with global constant propagation which I don't believe is useful here. Most of the cases I'll look at will be peephole style optimisations over 3-4 instructions max, does anyone have any suggestions as to how to identify when these occur and evaluate the constant, I've not given much thought to the algorithm myself yet as time is short. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 5 13:07:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA47450 for dynarec-outgoing; Mon, 5 Mar 2001 13:06:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <04b601c0a5b9$58bedc90$9a00a8c0@daves> From: "David Sharp" To: Subject: DYNAREC: x86 generation and x86 flags Date: Mon, 5 Mar 2001 21:15:03 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com My intermediate code generation is now complete (certainly broken but complete), I'm looking towards x86 generation. Instruction selection i.e. matching add r0,r1,r2 to mov r0,r2 add r0,r1 will be worked out soon, using standard compiler techniques. What I want from you guys is suggestions on how to generate the machine code that I need. Julian has said I can use his data from ARMphetamine (thank Jules) though I'm just checking what other options are available before I dive in. The other thing is, seeing as I'm very new to x86 code, I need to know everything I can about setting the values of the sign, zero, carry and overflow flags and getting them from the x86 flags back into a reg. I know about setX and lahf/sahf but are there any more? The presentation's a week on Tuesday and I'm (pardon my French) shitting myself. Cheers Dave PS: neil, I hope you don't mind if I fire off x86 questions to you whenever the crop up, I've got a lot of books but I expect they won't be detailed enough... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 5 14:38:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA47527 for dynarec-outgoing; Mon, 5 Mar 2001 14:38:05 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 5 Mar 2001 14:57:07 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: x86 generation and x86 flags In-Reply-To: <04b601c0a5b9$58bedc90$9a00a8c0@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The other thing is, seeing as I'm very new to x86 code, I need to know > everything I can about setting the values of the sign, zero, carry and > overflow flags and getting them from the x86 flags back into a reg. I know > about setX and lahf/sahf but are there any more? There are tricks you can do, like xor reg, reg to set registers to certain states, but if you want to store or clear specifics, the lahf/sahf is the only way. Well, you could do a pushf/popf, but that's slower than the lahf/sahf. The other option is to just keep AH for flags throughout the code. That's what I've done on all my CPU emulators and it has worked out well. > PS: neil, I hope you don't mind if I fire off x86 questions to you whenever > the crop up, I've got a lot of books but I expect they won't be detailed > enough... Not at all. I'm here to help. -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 5 14:48:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA47543 for dynarec-outgoing; Mon, 5 Mar 2001 14:48:54 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3AA401F0.B33BBA7E@cognitoy.com> Date: Mon, 05 Mar 2001 16:15:28 -0500 From: Kent Quirk X-Mailer: Mozilla 4.7 [en] (Win98; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: Advice needed Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya folks. I've lurked on and off for the last few months. My company makes a computer game where you program robots to compete with one another. To implement it, we built a virtual machine that was modeled after the Java VM (but has a few extra tricks) and a bytecoded machine language for it. We then built a compiler to generate code for it (i.e., we own the code generator as well as the target architecture). The VM is a stack machine, with no registers and a separate return address stack (makes it easy to walk back the stack). It also supports objects and strings directly. The VM run loop is written as a switch statement in C++. Portability is an issue for us; we need to be able to run on multiple CPU architectures, so I'd like to avoid resorting to assembly-level code if possible. We believe that it will be relatively straightforward to get a 2x performance gain through straightforward C++ code optimization and a replacement of our memory management system for VMs. But I'd like to find a lot more than that. So I'm asking this group a fairly high-level question -- how would you solve this problem? Dynamic recompilation, at least in the way I see you all talking about it, seems more machine-specific than I'd like. But maybe there are some techniques in that area that would prove useful. Or perhaps a threaded bytecode interpreter? Are there other techniques we should research? Your thoughts would be appreciated. Kent -- ----------------------------------------------------------------------- Kent Quirk | MindRover: "Astonishingly creative." Game Architect | Check it out! kent_quirk@cognitoy.com | http://www.mindrover.com/ _____________________________|_________________________________________ --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 5 16:30:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA47653 for dynarec-outgoing; Mon, 5 Mar 2001 16:28:58 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 6 Mar 2001 00:39:06 +0000 (GMT) From: J Brown X-Sender: brown@maxx To: dynarec@dynarec.com cc: d.p.sharp@warwick.ac.uk Subject: Re: DYNAREC: x86 generation and x86 flags Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > What I want from you guys is suggestions on how to generate the machine > code that I need. Julian has said I can use his data from ARMphetamine > (thank Jules) though I'm just checking what other options are available > before I dive in. No probs, but check out the new run-time assembler I've written since first - it's been in the armphetamine tgz on my page on dynarec.com for a while. It should lead to *much* clearer code generation, with a couple of caveats: it's *still* untested after lots of months, and you'll need a copy of Perl to generate some of the C source from a definition file (which was extracted directly via a dubious hacking session from the pdf of Intel's architecture reference manual :-)). The important files are rtasm.c, rtasm.h, rtasm_fns.c, rtasm_fns.h. Go on all of you, flame me that the thing is horrible, I dare you... ;-) > The other thing is, seeing as I'm very new to x86 code, I need to know > everything I can about setting the values of the sign, zero, carry and > overflow flags and getting them from the x86 flags back into a reg. I > know about setX and lahf/sahf but are there any more? Specifically for the carry flag: SEC, CLC, CMC are obvious, BT (bit test) is less so, but could prove very useful in some situations. > The presentation's a week on Tuesday and I'm (pardon my French) shitting > myself. Eek, good luck ;-) You may be interested that I wrote a little article last Friday detailing a little technique I thought of (original? I'm not sure) for solving the problem of what to do with indirect jumps pretty quickly and entirely within recompiled code - whilst avoiding a global 'transmap', possibly making it more useful for systems with MMUs. That's also on my dynarec page. I think I made a silly mistake in the example x86 code though... Jules (sick of BTinternet's web mail interface, but I've only just subscribed this address and I'm not sure if this'll get through - hence cc'd) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 5 23:57:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA48000 for dynarec-outgoing; Mon, 5 Mar 2001 23:57:40 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200103060809.JAA21610@pons.ac.upc.es> Subject: Re: DYNAREC: Advice neededy In-Reply-To: <3AA401F0.B33BBA7E@cognitoy.com> "from Kent Quirk at Mar 5, 2001 04:15:28 pm" To: dynarec@dynarec.com Date: Tue, 6 Mar 2001 09:09:11 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > So I'm asking this group a fairly high-level question -- how would you > solve this problem? > > Dynamic recompilation, at least in the way I see you all talking about > it, seems more machine-specific than I'd like. But maybe there are some > techniques in that area that would prove useful. > > Or perhaps a threaded bytecode interpreter? > > Are there other techniques we should research? > > Your thoughts would be appreciated. > A threaded interpreter seems the best suited for this case (unless you want to code a target layer for each architecture to which you would like the VM running). There are a lot of papers about optimizing Java Virtual Machine out there, just search for them with google or the specialized library in citeseer.nj.nec.com. If, as you say, your VM is very similar to the Java VM you could find in those papers useful techniques for optimizing it. The paper which Gwenole told me some weeks ago: "Optimizing direct threaded code by selective inlining" (Ian Piumarta, Fabio Riccardi) INRIA (it can be found at: http://citeseer.nj.nec.com/piumarta98optimizing.html or http://www-sor.inria.fr/publi/ODCSI_pldi98.html ) seems very interesting, althought the technique used it is perhaps a bit harder to implement than a standard threaded interpreter. > Kent > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 6 03:46:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA48343 for dynarec-outgoing; Tue, 6 Mar 2001 03:43:34 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: primrose.csv.warwick.ac.uk: csuix owned process doing -bs Date: Tue, 6 Mar 2001 11:55:35 +0000 (GMT) From: David Sharp To: Subject: Re: DYNAREC: x86 generation and x86 flags In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > No probs, but check out the new run-time assembler I've written since > first - it's been in the armphetamine tgz on my page on dynarec.com for a > while. It should lead to *much* clearer code generation, with a couple of > caveats: it's *still* untested after lots of months, and you'll need a > copy of Perl to generate some of the C source from a definition file > (which was extracted directly via a dubious hacking session from the pdf > of Intel's architecture reference manual :-)). The important files are > rtasm.c, rtasm.h, rtasm_fns.c, rtasm_fns.h. Go on all of you, flame me > that the thing is horrible, I dare you... ;-) Thanks, I'll take a look. > Specifically for the carry flag: SEC, CLC, CMC are obvious, BT (bit > test) is less so, but could prove very useful in some situations. Interesting. I was writing the User mode IR generation for TEQP etc. last night having inconveniently forgotten it before and was generating IR like [xxxx,NZxx] eor result, rn, rm [xxxx,xxxx] movc t0,#29 [xxxx,xxxx] lsr t1, result, t0 [xxxx,xxxx] movc t0,#1 [xxxx,xxCx] and cflag,t1,t0 but if I want to use BT I'm going to need an equivalent instruction in the IR. > > The presentation's a week on Tuesday and I'm (pardon my French) shitting > > myself. > Eek, good luck ;-) Thanks, it's too late for luck though! :o) > You may be interested that I wrote a little article last Friday detailing > a little technique I thought of (original? I'm not sure) for solving the > problem of what to do with indirect jumps pretty quickly and entirely > within recompiled code - whilst avoiding a global 'transmap', possibly > making it more useful for systems with MMUs. That's also on my dynarec > page. I think I made a silly mistake in the example x86 code though... Interesting read. I've taken the attitude (particularly with mode changing and exceptions) that I have to leave the code since inlining it was horrendous and the PC is going to change anyway (even if to a statically-determinable location). As a result of all that I think I'm going to continue that way (largely because I don't have time to do anything else). Julian where's your implementation section? - Your're not changing into an academic I hope! ;o) One last problem. I think I mentioned before that I was trying to put sequential instructions that have the same conditional execution under just one condition check at the start (on the caveat that none of them hit the condition flags) e.g. cmp r0,r1 addgt ... subgt ... mov r0,#1 becomes cmp r0,r1 goto x add ... sub ... x=> mov r0,#1 Foolishly I forgot about the case where a later branch jumps back in to the middle of these condition codes and I'll therefore have to add in the conditional goto at branch destination, or detect this in advance and not bother trying to put conditional instructions under one condition check. Thoughts? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 6 11:35:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA48721 for dynarec-outgoing; Tue, 6 Mar 2001 11:34:41 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 6 Mar 2001 11:53:57 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: x86 generation and x86 flags In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > (which was extracted directly via a dubious hacking session from the pdf > of Intel's architecture reference manual :-)). The important files are > rtasm.c, rtasm.h, rtasm_fns.c, rtasm_fns.h. Go on all of you, flame me > that the thing is horrible, I dare you... ;-) Yes, Intel's architecture reference manual does suck lots and lots. > making it more useful for systems with MMUs. That's also on my dynarec > page. I think I made a silly mistake in the example x86 code though... Do tell! -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 6 12:53:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA48799 for dynarec-outgoing; Tue, 6 Mar 2001 12:53:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 6 Mar 2001 20:57:20 +0000 (GMT) From: J Brown X-Sender: brown@maxx To: dynarec@dynarec.com Subject: Re: DYNAREC: x86 generation and x86 flags In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Tue, 6 Mar 2001, Neil Bradley wrote: > > (which was extracted directly via a dubious hacking session from the pdf > > of Intel's architecture reference manual :-)). The important files are > > rtasm.c, rtasm.h, rtasm_fns.c, rtasm_fns.h. Go on all of you, flame me > > that the thing is horrible, I dare you... ;-) > > Yes, Intel's architecture reference manual does suck lots and lots. That's not quite what I meant, but you're probably right ;-) Speaking of which, when they give the opcode for, eg, 'BT' as: 0F A3 I presume they're being inconsistent with their own notation, and actually mean this: 0F A3 /r Can you confirm/deny this? > > making it more useful for systems with MMUs. That's also on my dynarec > > page. I think I made a silly mistake in the example x86 code though... > > Do tell! The URL is , but I'll try and paraphrase quickly here if you like. I'm assuming a profiling+recompilation system in which blocks have 'real' register allocation applied to them hence may only be executed from their start addresses. These start addresses are mapped using a global (presumably, comparatively sparse) hash table by the start address of the corresponding original code block. If one of the recompiled blocks ends with an indirect jump, the only previous sensible option was to return control to an underlying emulator, suffering any overhead that incurs. Note that either directly, or at some later invocation of that block, the program counter address after an indirect jump may correspond to a translated block. So, what I propose is this: because most indirect jumps *probably* only ever transfer control to one of a handful of destination addresses, dynamically compile the equivalent of a switch statement based on some hash function of the emulated program counter address directly into the translated code at the appropriate point. This switch statement should have several important properties: * Each case should ensure the program counter is actually the right value (several addresses may hash to a particular entry) * The fall-through case should be used to check multiple addresses for the same reason, essentially implementing a closed hash table (if I remember my data structures & algorithms lectures right ;-)) * The last entry should be followed by a jump to the first entry, to keep things symmetric for each hash entry * There must be at least one empty case (jumping to the default case) * The default case should be used to cause the hash table/switch statement to be modified to contain the previously unknown address which has caused the 'miss' to occur. This stage might grow the table, perhaps even change the hash function used to balance the table better, etc. If more appropriate to the design of the dynarec, this could add a 'callback' of some description to defer the table rewriting until the referenced translated block was actually available. So now, when an indirect jump occurs, the overhead in jumping to the equivalent translated code should be just about as low at it could conceivably be. (Well, as long as you stubbornly insist on doing proper register allocation anyway - but the switch-table rewrite idea might still have some relevance even if you aren't). As for the mistake in the x86 example, "jmp *hashbase_0(,%ecx,8)" both has the wrong value for 8 (I think, but you're fairly limited with your choices with that sort of addressing mode anyway aren't you? So it probably'd need another instruction anyway), and also jumps indirectly to the address contained in hashbase_0(8*ecx), rather than just setting the program counter to hashbase+8*ecx, which is what I meant. Can you actually do this in one instruction in x86 or not? My knowledge of x86 seems to be much poorer than I thought it was... Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 6 16:10:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA48973 for dynarec-outgoing; Tue, 6 Mar 2001 16:10:16 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 30 Jan 1959 12:03:26 -0600 (CST) From: Graham Toal Message-Id: <195901301803.MAA21500@gtoal.com> To: dynarec@dynarec.com Subject: DYNAREC: 68K dynarec Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I've just realised that a few postings I made to this list didn't get here (and I didn't get a bounce message), because I was posting from an address other than the one I registered with. Here's the most recent of them. Didn't keep a copy of the others I'm afraid so any words of wisdom I may have had to impart have been lost to eternity :-) > Date: Tue, 6 Mar 2001 12:54:11 -0600 (CST) > From: Graham Toal > To: dynarec@dynarec.com > Subject: Re: DYNAREC: related project: static recompilation (CCPU) > > > > I'll still do a recompiler for the 68K someday... probably May/June > > > timeframe I'll start back into it. I'm so swamped with projects now that I > > > can't even breathe... > > > > Now that's interesting, because I was going to suggest that we resume (er... > > actually START) our 68k dynarec in June time... I'll be pretty much free by > > then, I hope! > > > > Neil. > > Relevant to this, and a link worth adding to the web site: > > http://gwenole.beauchesne.online.fr/basilisk2/index.html > > G If you follow the link above a few more steps you find a GPL'd 68K JIT which he's using as his dynarec. I suspect some of you may already know of it, but I didn't. Since that wasn't a very weighty post, I thought I'd also mention... http://www.ciunga.it/giochianteprima3_e.html is one page in a site that has several genuine emulations of arcade games running in Java in the browser. And yes, it seems to work. And in real-time. (Some of them such as that one - Pacman - work better with IE than Netscape unfortunately) (and yes, this is a *tiny* display. Maybe he does have problems if it is larger, I don't know.) I had a peek at the java source with a decompiler, just to see what it looked like. Seems fairly simple and regular, no special clever emulator tricks. In fact it looks far from optimal. Just an FYI to the people who said that Java would never run fast enough. If it handles an averagely-written Z80 emulation OK, it should definitely be fast enough to run a statically translated Cinematronics... (esp. since some Java implementations are JIT-compiled) Graham --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 6 16:15:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA48987 for dynarec-outgoing; Tue, 6 Mar 2001 16:15:12 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 6 Mar 2001 16:34:31 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K dynarec In-Reply-To: <195901301803.MAA21500@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Just an FYI to the people who said that Java would never run fast > enough. Depends upon the game and machine. sure, single simple graphics Z80 games could be emulated in Java, albeit slowly and it'd require a decent amount of CPU horsepower. but try something like Galaga or Toobin' with multiple scrolling layers and a 68K and Java won't have a prayer. It doesn't change the fact that Java wasn't designed for high speed graphics. It's still an emulation running an emulation. All of us who talked about Java already knew about the other Java emulators (ever seen the original Phoenix emulator in Java?). But having to have a ton of CPU horsepower to emulate something so simply is just plain wrong and the sole reason why we have big, bloated sluggish applications. CPUs are getting faster, but software isn't. -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 6 16:59:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA49037 for dynarec-outgoing; Tue, 6 Mar 2001 16:59:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005101c0a6a3$d0a30ac0$0200a8c0@cheetah> From: "Neil Griffiths" To: References: <195901301803.MAA21500@gtoal.com> Subject: Re: DYNAREC: 68K dynarec Date: Wed, 7 Mar 2001 01:09:26 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Just an FYI to the people who said that Java would never run fast > enough. If it handles an averagely-written Z80 emulation OK, it should > definitely be fast enough to run a statically translated Cinematronics... > (esp. since some Java implementations are JIT-compiled) Hmm, that'd be me then, wouldn't it? I never said Java would never run fast enough. I said it would never run fast. There's a difference. 'Cos once your CPU reaches a certain speed, the program will run fast enough under Java. The problem is that the same program written in C++ (I choose this as an example as it's also OO) would already be faster. And a Z80... Come on, I'd be impressed if it was a TMS34810. Okay, that's unfair. I'd be impressed if it was running several Z80's - or 2 68K cores. Thing is, though it will - you're going to need one hell of a machine to do it! But now I've slagged off Java, I'll say something good about it. At least you don't need to worry about video fillrate being too low! ;) Okay, that's cruel. Why is it that while CPU's get excessively faster, applications don't? Is Java a good example of this? I think so... I already knew about many emulations under Java. It's just that I've tried a Speccy emulator under Java - and that was really slow on my PII-450. Well, okay, not REALLY slow - but not full speed. But I've not tried it with my 1GHz I'm using now... I'm just not interested enough. I have other things to do - such as work! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 6 17:32:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA49095 for dynarec-outgoing; Tue, 6 Mar 2001 17:31:54 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-pair-Authenticated: 24.112.81.210 Message-ID: <018901c0a6a8$3cc42d20$d2517018@cr147232c> From: "Sunil Puri" To: Subject: DYNAREC: Dynamic Compiling and Dynamic Optimization Date: Tue, 6 Mar 2001 20:45:04 -0500 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello All Dynarec-ers, I've been following the dynarec mailing list off and on for the past few months. I have been working on a "portal" for dynamic optimization technologies since September. I thought you all would be interested since it complements dynarec and dynamic compiling. Check it out: www.codeonthefly.com and let me know what you think. I would be happy to get your feedback on the site. I hope to get more technical articles on the site one day. Also, I am currently trying to find ways to cover the cost of hosting. I will provide advertising services at a low rate ($5/month). If you know of any companies or anyone that would be willing to advertise or even donate because they believe in the site, please pass the site onto them. Kind Regards, Sunil sunil@puri.ca spuri@codeonthefly.com --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 7 03:00:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA49730 for dynarec-outgoing; Wed, 7 Mar 2001 03:00:31 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <027801c0a6f7$18caf120$9a00a8c0@daves> From: "David Sharp" To: References: <195901301803.MAA21500@gtoal.com> <005101c0a6a3$d0a30ac0$0200a8c0@cheetah> Subject: Re: DYNAREC: 68K dynarec Date: Wed, 7 Mar 2001 11:09:27 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Okay, that's cruel. Why is it that while CPU's get excessively faster, > applications don't? Is Java a good example of this? I think so... Java's also a very good example of bringing together a lot of very good programming language features in one language. > I already knew about many emulations under Java. It's just that I've tried a > Speccy emulator under Java - and that was really slow on my PII-450. I can only presume you're referring to jasper which has been around for yonks?(http://www.spectrum.lovely.net/Elite.html) I've just seen it running Elite on my PII-450 at consistently over 1000%+ of normal speed, nothing special, just IE - click on the speed bar to remove speed limitation. Incidentally (and forgive me if I've moaned about this before) some guy on my course is writing a NES emu in java for his third year project which is actually pretty impressive despite the fact that NES emulation has been done to death and I can't think of any other CPUs that are anywhere near as easy to emulate as the NES's 6502. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 7 06:55:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA49924 for dynarec-outgoing; Wed, 7 Mar 2001 06:55:19 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000d01c0a718$d27c7780$7b984ed4@menta.net> From: "Victor Moya del Barrio" To: References: <195901301803.MAA21500@gtoal.com> <005101c0a6a3$d0a30ac0$0200a8c0@cheetah> <027801c0a6f7$18caf120$9a00a8c0@daves> Subject: Re: DYNAREC: 68K dynarec Date: Wed, 7 Mar 2001 16:11:01 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Okay, that's cruel. Why is it that while CPU's get excessively faster, > > applications don't? Is Java a good example of this? I think so... > > Java's also a very good example of bringing together a lot of very good > programming language features in one language. > I can agree with that, Java is a good OO language in my opinion (better than C++ I think). But what I´m against that it is an interpreted language. Running a virtual machine over another virtual machine is just crazy. But of course we will get faster and faster CPUs every day and the programming will become worse and worse at the same rate. I don't think this will be stoped, probably in a couple of decades we will have virtual machines running virtual machines running virtual machine running and program in an interpreted language or just another similar crap. Sadly. Because I think real programming must be done taking into account the real hardware. (Perhaps I'm exagerating a bit ;))). > > Cheers > Dave > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 7 07:33:48 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA49965 for dynarec-outgoing; Wed, 7 Mar 2001 07:33:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 31 Jan 1959 03:27:31 -0600 (CST) From: Graham Toal Message-Id: <195901310927.DAA24967@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K dynarec Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > (better than C++ I think). But what I'm against that it is an interpreted > language. Running a virtual machine over another virtual machine is just > crazy. But of course we will get faster and faster CPUs every day and But it's not. Or at least, it doesn't have to be. There is NO reason why a java runtime can't treat the java bytecodes as an intermediate code from a compiler, and compile to binary. Currently they don't, entirely, but the JIT compilers do make a stab at it - it's just a binary translation of the opcodes however (the sort of stuff this group tries to do) but without the optimisations of full compiling. Anyway, I didn't mean to start a religious war. Obviously there's some strong feeling here about Java. It's somewhat ironic because I'm not a java programmer myself or even a fan of OO languages. I tend to think they're mostly syntactic sugar, and the OO parts of it you can implement perfectly well in normal languages (eg by pointers to procedures). However... what this little discussion has brought out is that I think a few folks (and in particular Neil, who has written some very fast ASM cores) have an absolute sense of speed rather than a relative sense. Yes, you can probably get a factor of 2 improvement if you have a poor C compiler by switching to assembler, and that big an increase is not to be sneezed at, but if the machines we're all running now go at 20 times the speed needed to emulate, why write in asm if you're starting such a project today? All you're doing is throwing out portability in order to get more unused idle cycles. This is tied in to the Java thing because if the java speed is good enough, then why not use it, if it gives you a big portability win? (And I happen to think that running in a browser *is* a big improvement.) Anyway, I wasn't trying to start another religious war, I'm just putting my own views on record in case the subject comes up again. I do *not* believe it's important to be compatible with the lowest common denominator. Even if I write something in C that 10% of users can't yet run, by this time next year that'll be 1% of users. I'm a great believer in the algorithm of "it it's too expensive to do on today's CPU, put it on the shelf for a year and then do it..." :-) My feeling is that the heavy work should be done by the compiler writers, not repeated for every platform by the applications writers. If the counter-argument to some of the above is that the compiler writers are not doing their job, then I can agree with that, but eventually they will; code always gets better, not worse. (Someone mentioned code bloat - that's not quite what's happening; it's that with bigger systems available, people are cramming more stuff into them. that's why things are larger and slower. But the original code still works, is the same size, and gets faster every year.) Enough chatter. I have some coding to do. I'm starting work on re-implementing my static translator this weekend, more in the style of how I described how it should be than how it actually was - the first time round was when I was learning on the job. This time I hope it will be a bit neater, and maybe more suitable for writing up if you guys will give me some web space to write up the project on. (I'm also expecting a copy of Codewarrior Pro for the Palm to turn up today. Skeezix tried a quick port of my Tailgunner C core to the palm for me the other day, and it ran at something like 3FPS. There's something BADLY wrong with this picture, so I'm going to have to do some work on it and find out what the compiler is doing wrong. I can't guarantee I can get full 38FPS the game wants, but my back of the envelope calculations had suggested I should at least be getting in the 15-20FPS range. There must have been some compiler option set way wrong) The only good news in the above was that the game ran first time on the palm at the first compile, not a single error. Just damned slow. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 7 11:12:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA50136 for dynarec-outgoing; Wed, 7 Mar 2001 11:12:11 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 7 Mar 2001 11:31:42 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K dynarec In-Reply-To: <195901310927.DAA24967@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Graham, you might want to check your date - it's showing up as January 31st, 1959. ;-) > But it's not. Or at least, it doesn't have to be. There is NO reason > why a java runtime can't treat the java bytecodes as an intermediate > code from a compiler, and compile to binary. Currently they don't, > entirely, but the JIT compilers do make a stab at it - it's just a > binary translation of the opcodes however (the sort of stuff this group > tries to do) but without the optimisations of full compiling. And I think you've hit the nail on the head right there. That's our largest objection to Java. We're not attacking it as a language, only attacking it as a poor implementation that goes against EVERYTHING that dynarecing tries to accomplish. > not a java programmer myself or even a fan of OO languages. I tend to > think they're mostly syntactic sugar, and the OO parts of it you can > implement perfectly well in normal languages (eg by pointers to procedures). Until the day comes when Java is actually compiled, Java is nothing more than a toy language. > However... what this little discussion has brought out is that I think a > few folks (and in particular Neil, who has written some very fast ASM cores) > have an absolute sense of speed rather than a relative sense. Yes, you can > probably get a factor of 2 improvement if you have a poor C compiler Uh - no. After bashing my brains out with Watcom 10.6 (which still does a better job at compilation than any compiler I've worked with) compiling C, I wrote an assembly core and got *5X*, not 2X. However, if I had started with a CPU that was easier to optimize for (PPC?) the speed benefit wouldn't have been so great and more like the 2X you mentioned. But I'm no slouch when it comes to writing optimal C code, and I still got a 5X improvement over the C core. > by > switching to assembler, and that big an increase is not to be sneezed at, > but if the machines we're all running now go at 20 times the speed needed > to emulate, why write in asm if you're starting such a project today? That's just like saying, "Hey, we've got tons of RAM these days and lots of resources. Why not be a fat ass and use it just because it's there instead of being frugal?" Instead of our machines getting faster and faster, they're staying the same speed. Programmers have no sense of frugality. They have become wasteful, bloated slobs who use resources with no respect for the consequences. When computers were first released, programmers didn't have the luxury to be fat. They couldn't, otherwise the app would run so slow that no one would use it. > All > you're doing is throwing out portability in order to get more unused idle > cycles. Tell that to the minions who run modest games on MAME, like Galaga, which requires a Pentium II 233 or higher to run full speed under MAME, when other emulators can do it full speed on a 486/66. And you're not always getting back "unused" CPU cycles. People put up with frameskip because those "extra cycles" aren't available for doing other things, and with a little bit of optimization it could run far better. It just takes some thought up front - something that most people won't do. That's not to say that everything should be written in assembly. That'd be crazy. But writing drop in assembly replacements for a C module? Nothing wrong with that! Portability is bantered around like a religion. Let's face it. 90% Of what people use are Intel CPUs. The other is practically noise (with the exception of the PowerPC perhaps). I've seen hoards of code made "portable" with no intention of ever porting it. > This is tied in to the Java thing because if the java speed is > good enough, then why not use it, if it gives you a big portability win? Because it isn't good enough. At least not for emulation. Well, maybe for small single CPU simple graphics games, but anything sizable, forget it. > (And I happen to think that running in a browser *is* a big improvement.) I flatly disagree with that assertion. The browser is a horrible environment. Uses up another 16 megabytes on top of the operating system already, and for what? > Anyway, I wasn't trying to start another religious war, I'm just putting > my own views on record in case the subject comes up again. I do *not* > believe it's important to be compatible with the lowest common denominator. > Even if I write something in C that 10% of users can't yet run, by this > time next year that'll be 1% of users. I'm a great believer in the algorithm > of "it it's too expensive to do on today's CPU, put it on the shelf for a > year and then do it..." :-) How about "Spend some time optimizing the algorithm to make it perform better on today's CPUs"? What's wrong with that? Are we all just getting lazy? > My feeling is that the heavy work should be done by the compiler writers, > not repeated for every platform by the applications writers. If the > counter-argument to some of the above is that the compiler writers are not > doing their job, then I can agree with that, but eventually they will; > code always gets better, not worse. Where do you get *THIS* idea? Now that we have faster and faster CPUs, the compilers are stagnating in terms of optimization! gcc Hasn't gotten better, nor have any of the MS compilers. > (Someone mentioned code bloat - that's > not quite what's happening; it's that with bigger systems available, people > are cramming more stuff into them. that's why things are larger and slower. No, not the case. It's things like people who use a single function in MFC to do linked lists (which they should be able to do themselves) and it pulls in a 4 megabyte DLL. *THAT*'s the reason things are getting slower. Tell me this: Why does taskmgr.exe require 1.4 megabytes of RAM to run? Why does ICQ.exe require 11.5 megabytes of RAM to run? Why does CRT.exe (telnet client I'm using) require 4.6 megabytes of RAM? Why does playing an MP3 require 6.3 megabytes of RAM to run? Why does IIS require 8.4 megabytes of RAM to run? These are not complicated applications. None of them are. It's because they're using DLLs and libraries and no one is paying any mind to how it'll impact the system performance. I have an MP3 player that has 128K of RAM that plays back my MP3s with no problems. ICQ Is not a complex application and has no excuse for eating up that much RAM when idle. These are prime examples that refute the claim that programs are just doing more. They aren't. In the total above of 31 megabytes . But hey, RAM is cheap. Let's be wasteful, fat assed sloppy programmers because RAM and hard drive space is cheap, eh? No thank you. This is but one part of what sucks about the industry. We have a LOT of people who ordinarily wouldn't be able to program, but since computers are so fast now their crappy programming techniques and lack of understanding of their environment still allows the apps to run quickly, they can program. Thank God I'm in the embedded systems world where one cannot afford to be wasteful. I'd start killing people. Regardless, Java goes against everything that Dynarec stuff is about. Dynarec is about getting the maximum performance out of everything so there's plenty left over to do graphics (which is required for higher end games). > time round was when I was learning on the job. This time I hope it will > be a bit neater, and maybe more suitable for writing up if you guys will > give me some web space to write up the project on. Let me know when you'd like one. I'd be happy to give you an account/space on dynarec.com. Anything to further the cause! > (I'm also expecting a copy of Codewarrior Pro for the Palm to turn > up today. Skeezix tried a quick port of my Tailgunner C core to the > palm for me the other day, and it ran at something like 3FPS. There's !!!! Yeouch! > something BADLY wrong with this picture, so I'm going to have to do some > work on it and find out what the compiler is doing wrong. I can't guarantee > I can get full 38FPS the game wants, but my back of the envelope calculations > had suggested I should at least be getting in the 15-20FPS range. There > must have been some compiler option set way wrong) Yeah. Either that or optimization not turned on. But it'd still be neat to see a full blown binary translation of the game. What type of CPU does your Palm have in it? My experience with handheld devices has been "limited" to the stronger PocketPC machines (E-105, etc...) > The only good news in the above was that the game ran first time on the > palm at the first compile, not a single error. Just damned slow. But the Palm will get faster, so why not shelve it for a year and wiat for a faster one to come out? ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 7 13:18:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA50258 for dynarec-outgoing; Wed, 7 Mar 2001 13:18:07 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002601c0a74e$4b83f240$7b984ed4@menta.net> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: 68K dynarec Date: Wed, 7 Mar 2001 22:33:47 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Althought perhaps Graham has said somethings that could be true I must admit I'm more with Neil. And the facts are telling everyone of us the true. Take a look to horrible videogames for PC which never work in the lower machines. Games which could even work in a 286 which need now Pentium III. Don't make me laugh please. While hardware is getting better, the software is getting worse, in fact I think we have arrived to a point the software is getting worse faster than the hardware better but who knows ... About the 'good' compiler we actually have I remember something I was told by me project director after the speech about Dynamo (a dynamic binary optimizer). The reason because that kind of software could be useful is because the companies are compiling WITHOUT optimization (to avoid crashes it seems, compiler errors or programmers errors who knows). It doesn't care if the compilers become amazing good because they aren't being used either. It seems it doesn't take the effort to spend a bit more of time making the applications to work with optimizations enabled. > > not a java programmer myself or even a fan of OO languages. I tend to > > think they're mostly syntactic sugar, and the OO parts of it you can > > implement perfectly well in normal languages (eg by pointers to procedures). > > Until the day comes when Java is actually compiled, Java is nothing more > than a toy language. > On the other hand that would mean that the 'use' for Java would be killed as well, because is intended for 'portability' (shit). In any case I already think Java is a wonderful language as OO ... if it was compiled. > That's just like saying, "Hey, we've got tons of RAM these days and lots > of resources. Why not be a fat ass and use it just because it's there > instead of being frugal?" Instead of our machines getting faster and > faster, they're staying the same speed. Programmers have no sense of > frugality. They have become wasteful, bloated slobs who use resources with > no respect for the consequences. When computers were first released, > programmers didn't have the luxury to be fat. They couldn't, otherwise the > app would run so slow that no one would use it. > I think I was born a couple of years later ... sigh > That's not to say that everything should be written in assembly. That'd be > crazy. But writing drop in assembly replacements for a C module? Nothing > wrong with that! Portability is bantered around like a religion. Let's > face it. 90% Of what people use are Intel CPUs. The other is practically > noise (with the exception of the PowerPC perhaps). I've seen hoards of > code made "portable" with no intention of ever porting it. > And although it seems the trend is to go to hyper high level languages (just tell the 'compiler' "I want a SI emulator" and it is already done) I think the real programmer must know the machine he (she) is working on. That means assembly and that means to know how the hardware is used, to know how the OS works. And to use this knowledge while programming. The bullshit of every time higher level languages (what it is now 4GL or 5GL?). What is the point of being a programmer or a computer science expert if everyone with a stupid language (Visual Basic?) can build the same programs you are doing? Of course the Visual Basic program should be far slower and worst than the made by the 'expert' ... oh! but it seems it isn't. Something wrong here. > > (And I happen to think that running in a browser *is* a big improvement.) > > I flatly disagree with that assertion. The browser is a horrible > environment. Uses up another 16 megabytes on top of the operating system > already, and for what? > Browser just helps to get better crashes in the computer ... > > How about "Spend some time optimizing the algorithm to make it perform > better on today's CPUs"? What's wrong with that? Are we all just getting > lazy? > Or perhaps time is money? Let's sell beta software and the users will be our free betatesters ... where have I seen that? > Thank God I'm in the embedded systems world where one cannot afford to be > wasteful. I'd start killing people. > Perhaps I should be moving to the embedded world ;). The thing I loved about computers was to be able of working them in the lower level, if it is needed of course. I don't feel like working over hypervirtualized system would be interesting for me. It is a luck we have emulation in our free time ... > > Let me know when you'd like one. I'd be happy to give you an account/space > on dynarec.com. Anything to further the cause! > It will be interesting a static translation/decompilation (?) page in dynarec. Keep working on it, and good luck ;). > -->Neil > Victor BTW ... Why in hell I'm answering two mails in a single one? ;)))))) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 8 17:04:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA51740 for dynarec-outgoing; Thu, 8 Mar 2001 17:03:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004201c0a836$bc0ddf60$0200a8c0@cheetah> From: "Neil Griffiths" To: References: <195901310927.DAA24967@gtoal.com> Subject: Re: DYNAREC: 68K dynarec Date: Fri, 9 Mar 2001 01:17:26 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, It's taken me some time to reply. No matter! :) > But it's not. Or at least, it doesn't have to be. There is NO reason > why a java runtime can't treat the java bytecodes as an intermediate > code from a compiler, and compile to binary. Currently they don't, > entirely, but the JIT compilers do make a stab at it - it's just a > binary translation of the opcodes however (the sort of stuff this group > tries to do) but without the optimisations of full compiling. My problem isn't with Java as a language. It's the implementation of the JVM. As NB mentioned before, it goes against everything we try to achieve as dynarecers (wow, I invented a new word!). > This is tied in to the Java thing because if the java speed is > good enough, then why not use it, if it gives you a big portability win? > (And I happen to think that running in a browser *is* a big improvement.) Okay, I completely disagree with these two opinions. a) If the Java speed is good enough, wouldn't it be even faster if natively compiled? b) Running in a browser is a big improvement? How, exactly? Browsers are pretty much big, slow and clunky - and what may look good in one may not in another, and I still mean Java here. I mean, Netscape and IE have some real differences in handling applets... > Even if I write something in C that 10% of users can't yet run, by this > time next year that'll be 1% of users. I'm a great believer in the algorithm > of "it it's too expensive to do on today's CPU, put it on the shelf for a > year and then do it..." :-) Okay, but you may spend an extra month optimising it - and then lots of people can use it RIGHT NOW! Oh, and it looks especially good, 'cos everyone else won't be doing it for a year or so later! > My feeling is that the heavy work should be done by the compiler writers, > not repeated for every platform by the applications writers. If the > counter-argument to some of the above is that the compiler writers are not > doing their job, then I can agree with that, but eventually they will; > code always gets better, not worse. (Someone mentioned code bloat - that's > not quite what's happening; it's that with bigger systems available, people > are cramming more stuff into them. that's why things are larger and slower. > But the original code still works, is the same size, and gets faster every > year.) When you need a several hundred MHz CPU to run an office application, like Word, I'm sorry, but this point is moot. :) Anyway, on another (good!) point, managed to get my hands on Michael Abrash's book "Graphics Programming Black Book: Special Edition" today. Should make for an interesting read, even though it is a few years old now... :) Neil --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 8 20:04:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA51892 for dynarec-outgoing; Thu, 8 Mar 2001 20:04:03 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 1 Feb 1959 15:58:32 -0600 (CST) From: Graham Toal Message-Id: <195902012158.PAA04064@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K dynarec Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Okay, I completely disagree with these two opinions. > b) Running in a browser is a big improvement? How, exactly? Browsers are > pretty much big, slow and clunky - and what may look good in one may not in > another, and I still mean Java here. I mean, Netscape and IE have some real > differences in handling applets... Ok, I swore to myself I wasn't going to get in an argument over any replies to my post - I was just letting you know my opinions, and I was interested to read your opinions in reply. However I think this one needs a little more explanation let you all think I'm an idiot. I'm sorry if this is off topic, I'll do my best to bring it back on topic soon. Of course I understand that browsers are bloated and that they have practically become a complete operating system by virtue of throwing everything into the one program, a concept that is anathema to good OS design, never mind program design. However... the combination of a browser, and Java to run applications in a (hopefully) secure sandpit, is a first faltering step towards a true net-wide distributed operating system. Let me change the subject a little and give an example of something related that I'm also working on intermittently: TeX. TeX is probably the best typesetting engine in the world, but is barely used by anyone except a very small intelligencia. For several reasons. One reason (though not the main one) is that a full TeX distribution is *huge*. If you're browsing the web, you wouldn't want to have to have a full TeX distribution just to view a few TeX-based web pages for instance - maybe a 3-line maths formula in some report. So what I wanted to do for the TeX community was write a TeX previewer (more previsely a dvi previewer implemented as a browser plugin) which had *no* local installation at all. When it viewed a DVI file, if it needed a font, it would go to website www.texfonts.org and pick up the file on the fly. (It might cache files locally, but that would be transparent to the users) So instead of having a 100Mb TeX installation, you have a 40K plugin and that's all. The guts of the application (ie the smart program which generates fonts on the fly at any given resolution using metafont) would exist only on www.texfonts.org, and the fonts it generated would be shared by all net users - i.e. one set on one hard disk, not countless 100's of megabytes on tens of thousands of disks. (Yes, I'm assuming a broadband future here. It's not that far away.) This (getting back on topic) is my view of the future of emulation: instead of us all having upteen emulators on our hard drives, and thousands of roms, we have people on the net who host each video game on their web servers - click on the Pacman icon to download a java pacman emulator and rom image on the fly, play it, and when you're done you leave the page and there's no detritus left on your disk. I am assuing that in a relatively short time (say by the time we all have broadband connections) that running Java pacman will be indistinguishable from running it locally off your hard disk. Something that is clearly not the case at the moment. So that was my point: java and a browser are a first _very crude_ hack at a distributed operating system. I think the idea of your applications having their home somewhere other than on your local disk is going to catch on, even if in a few years time the players are completely different - maybe it'll all move back into the operating system again where it belongs rather than the browser; or the file system; maybe java will die but we'll be able to run any language at all in a more secure sandbox using VM to make it secure, and military-grade fine-grain access permissions as to what a program can do. Who knows. I just think it's coming and should be encouraged, and that was what I was referring to in my earlier post. G PS I just bought my wife a flat panel monitor for her birthday - she's been unpacking it and getting it online as I type - and it's one of the ones that you can rotate 90degrees for A4 format. I'm just dying for a chance to be alone with it to play Pacman in the right aspect ratio for a change :-))) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Mar 9 00:38:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA52104 for dynarec-outgoing; Fri, 9 Mar 2001 00:37:11 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 6 Mar 2001 00:39:06 +0000 (GMT) From: J Brown X-Sender: brown@maxx To: dynarec@dynarec.com cc: d.p.sharp@warwick.ac.uk Subject: Re: DYNAREC: x86 generation and x86 flags Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > What I want from you guys is suggestions on how to generate the machine > code that I need. Julian has said I can use his data from ARMphetamine > (thank Jules) though I'm just checking what other options are available > before I dive in. No probs, but check out the new run-time assembler I've written since first - it's been in the armphetamine tgz on my page on dynarec.com for a while. It should lead to *much* clearer code generation, with a couple of caveats: it's *still* untested after lots of months, and you'll need a copy of Perl to generate some of the C source from a definition file (which was extracted directly via a dubious hacking session from the pdf of Intel's architecture reference manual :-)). The important files are rtasm.c, rtasm.h, rtasm_fns.c, rtasm_fns.h. Go on all of you, flame me that the thing is horrible, I dare you... ;-) > The other thing is, seeing as I'm very new to x86 code, I need to know > everything I can about setting the values of the sign, zero, carry and > overflow flags and getting them from the x86 flags back into a reg. I > know about setX and lahf/sahf but are there any more? Specifically for the carry flag: SEC, CLC, CMC are obvious, BT (bit test) is less so, but could prove very useful in some situations. > The presentation's a week on Tuesday and I'm (pardon my French) shitting > myself. Eek, good luck ;-) You may be interested that I wrote a little article last Friday detailing a little technique I thought of (original? I'm not sure) for solving the problem of what to do with indirect jumps pretty quickly and entirely within recompiled code - whilst avoiding a global 'transmap', possibly making it more useful for systems with MMUs. That's also on my dynarec page. I think I made a silly mistake in the example x86 code though... Jules (sick of BTinternet's web mail interface, but I've only just subscribed this address and I'm not sure if this'll get through - hence cc'd) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Mar 9 01:28:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA52164 for dynarec-outgoing; Fri, 9 Mar 2001 01:28:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 9 Mar 2001 01:48:29 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K dynarec In-Reply-To: <195902012158.PAA04064@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > to my post - I was just letting you know my opinions, and I was interested > to read your opinions in reply. However I think this one needs a little > more explanation let you all think I'm an idiot. I'm sorry if this is > off topic, I'll do my best to bring it back on topic soon. Nah, we don't think you're an idiot. > Of course I understand that browsers are bloated and that they have > practically become a complete operating system by virtue of throwing > everything into the one program, a concept that is anathema to good > OS design, never mind program design. But it lacks a VM subsystem, video drivers, network services, a multitasking kernel, protected memory - all of which are basic OS services that a browser does not (and cannot) support. > However... the combination of a browser, and Java to run applications in > a (hopefully) secure sandpit, is a first faltering step towards a true > net-wide distributed operating system. It's a really LOUSY first step, actually, and with all first steps should be completely thrown out. > So instead of having a 100Mb TeX installation, you have a 40K plugin > and that's all. The guts of the application (ie the smart program which > generates fonts on the fly at any given resolution using metafont) > would exist only on www.texfonts.org, and the fonts it generated would > be shared by all net users - i.e. one set on one hard disk, not countless > 100's of megabytes on tens of thousands of disks. (Yes, I'm assuming > a broadband future here. It's not that far away.) But that's well and good for viewing files. It isn't a solution for playing high speed games. > This (getting back on topic) is my view of the future of emulation: instead > of us all having upteen emulators on our hard drives, and thousands of > roms, we have people on the net who host each video game on their web > servers - click on the Pacman icon to download a java pacman emulator > and rom image on the fly, play it, and when you're done you leave the > page and there's no detritus left on your disk. You're also forgetting the copyright issues. It'd be easy to shut down/sue a site with "Play pacman! Click here!" on it and it would be nearly impossible to skirt the "law" with that approach. Lots of emulator users are warezy type people, and hosting web sites like that wouldn't last long. > I am assuing that in > a relatively short time (say by the time we all have broadband connections) > that running Java pacman will be indistinguishable from running it locally > off your hard disk. Something that is clearly not the case at the moment. Yes, it'll be just as slow either way. ;-) > So that was my point: java and a browser are a first _very crude_ hack > at a distributed operating system. I think the idea of your applications > having their home somewhere other than on your local disk is going to catch > on, even if in a few years time the players are completely different - Why do you think this? I and many others *HATE* when I am bound to a network service that is slow or nonexistent. For example, I would flatly never buy anything that would require me to be connected to a remote network service to use it. This is the distributed/network computing ideas that people have been dying to get away from for YEARS. The NetPC tried doing this and it bombed miserably. > maybe it'll all move back into the operating system again where it belongs > rather than the browser; or the file system; maybe java will die but we'll > be able to run any language at all in a more secure sandbox using VM to > make it secure, and military-grade fine-grain access permissions as to what > a program can do. Who knows. I just think it's coming and should be > encouraged, and that was what I was referring to in my earlier post. Even though I flatly disagree with you about the distributed computing model, there is an element of coolness that COULD happen with something like this - Host based recompilation. Imagine a universal binary that, when seen by an operating system, would recompile itself to the native processor type. All it would require is that the OS writer write a "back end" of sorts to translate the p-code language (or whatever) into machine code. Voila. There's your speed return (or most of it). No more pcode interpreting. But until the time when said coolness occurs, I will consider Java nothing more than an ornamental toy. And really Java was created to do nothing more than to sell CPUs/architectures. -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Mar 9 01:28:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA52174 for dynarec-outgoing; Fri, 9 Mar 2001 01:28:42 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000201c0a87d$9f0a3ac0$305c073e@nibble> From: "Kieron Wilkinson" To: References: <195901310927.DAA24967@gtoal.com> <004201c0a836$bc0ddf60$0200a8c0@cheetah> Subject: Re: DYNAREC: 68K dynarec Date: Fri, 9 Mar 2001 09:13:38 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "Neil Griffiths" Hi Neil. :) > My problem isn't with Java as a language. It's the implementation of the > JVM. As NB mentioned before, it goes against everything we try to achieve as > dynarecers (wow, I invented a new word!). Stack based, yeuck. I agree. > a) If the Java speed is good enough, wouldn't it be even faster if natively > compiled? Natively compliled Java has been shown to be nearly as fast as C++. But then it has also shown to be faster by some people, so you can never quite tell by 3rd party tests... > b) Running in a browser is a big improvement? How, exactly? Browsers are > pretty much big, slow and clunky - and what may look good in one may not in > another, and I still mean Java here. I mean, Netscape and IE have some real > differences in handling applets... Actually that is not true anymore. There is a generic plugin now made by Sun which fits into IE, Netscape and Opera (and probably any other that supports OBJECT EBED tags), so now there are no differences at all. Granted most people do not have this plug-in however, but it is install on demand, and not too big. Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Mar 9 08:26:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA52671 for dynarec-outgoing; Fri, 9 Mar 2001 08:25:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 9 Mar 2001 16:35:05 +0000 (GMT) From: J Brown X-Sender: brown@maxx To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K dynarec In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Fri, 9 Mar 2001, Neil Bradley wrote: > Even though I flatly disagree with you about the distributed computing > model, there is an element of coolness that COULD happen with something > like this - Host based recompilation. > > Imagine a universal binary that, when seen by an operating system, would > recompile itself to the native processor type. All it would require is > that the OS writer write a "back end" of sorts to translate the p-code > language (or whatever) into machine code. Voila. There's your speed return > (or most of it). No more pcode interpreting. > > But until the time when said coolness occurs, I will consider Java nothing > more than an ornamental toy. And really Java was created to do nothing > more than to sell CPUs/architectures. You've just described Tao/Elate, which has been around for a while and has been licensed for use by the next-gen Amiga thing. They've gone in quite heavily for Java, interestingly, and it looks like their implementation might actually be halfway reasonable. Not seen it first-hand though. Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Mar 11 07:07:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA57287 for dynarec-outgoing; Sun, 11 Mar 2001 07:06:58 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006101c0aa3e$da493920$bd8cd13e@cheetah> From: "Neil Griffiths" To: References: <195902012158.PAA04064@gtoal.com> Subject: Re: DYNAREC: 68K dynarec Date: Sun, 11 Mar 2001 15:14:29 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Ok, I swore to myself I wasn't going to get in an argument over any replies > to my post - I was just letting you know my opinions, and I was interested > to read your opinions in reply. However I think this one needs a little > more explanation let you all think I'm an idiot. I'm sorry if this is > off topic, I'll do my best to bring it back on topic soon. I don't think you're an idiot, we just don't agree over this point. That's fair enough, there'll always be people with different opinions - and if there wasn't, we wouldn't have evolved so fast - technologically speaking, of course! > Of course I understand that browsers are bloated and that they have > practically become a complete operating system by virtue of throwing > everything into the one program, a concept that is anathema to good > OS design, never mind program design. But they don't though, the most they could possibly do is share the resources that they have access to - which isn't the same as actually being an OS. > So instead of having a 100Mb TeX installation, you have a 40K plugin > and that's all. The guts of the application (ie the smart program which > generates fonts on the fly at any given resolution using metafont) > would exist only on www.texfonts.org, and the fonts it generated would > be shared by all net users - i.e. one set on one hard disk, not countless > 100's of megabytes on tens of thousands of disks. (Yes, I'm assuming > a broadband future here. It's not that far away.) This is an interesting idea - and certainly something I do want to see, where we can share files easily. > This (getting back on topic) is my view of the future of emulation: instead > of us all having upteen emulators on our hard drives, and thousands of > roms, we have people on the net who host each video game on their web > servers - click on the Pacman icon to download a java pacman emulator > and rom image on the fly, play it, and when you're done you leave the > page and there's no detritus left on your disk. I am assuing that in > a relatively short time (say by the time we all have broadband connections) > that running Java pacman will be indistinguishable from running it locally > off your hard disk. Something that is clearly not the case at the moment. The problem is that, like it or not, if you have a ROM that you're using and you don't have the machine, it's piracy. If things like ROMs were kept on a server and that's where you played them from, the server would get shut down and emulation would crumble! I see your point, but this would be a bad example. :) > So that was my point: java and a browser are a first _very crude_ hack > at a distributed operating system. I think the idea of your applications > having their home somewhere other than on your local disk is going to catch > on, even if in a few years time the players are completely different - > maybe it'll all move back into the operating system again where it belongs > rather than the browser; or the file system; maybe java will die but we'll > be able to run any language at all in a more secure sandbox using VM to > make it secure, and military-grade fine-grain access permissions as to what > a program can do. Who knows. I just think it's coming and should be > encouraged, and that was what I was referring to in my earlier post. Well, I hate the idea of having my applications stored somewhere other than on my hard disk. Why? Because, sooner or later, a model will be introduced where we pay for each time we load an application. I don't want that - at least not for office applications! Also, what happens if the network service stops (either for repairs or whatever). We can't do anything then! I really believe this is a bad idea. As far as before, where we can share files easily or have a server do work for us easily, this idea is great. But actually keeping no local files? No, I don't like this at all... > PS I just bought my wife a flat panel monitor for her birthday - she's > been unpacking it and getting it online as I type - and it's one of the > ones that you can rotate 90degrees for A4 format. I'm just dying for > a chance to be alone with it to play Pacman in the right aspect ratio > for a change :-))) Now THAT is interesting. I hope you have fun with it! Just remember... it's hers, not your arcade screen! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Mar 11 19:01:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA57911 for dynarec-outgoing; Sun, 11 Mar 2001 19:01:02 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-Originating-IP: [24.157.19.225] From: "Fred Weigel" To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K dynarec Date: Sun, 11 Mar 2001 22:13:03 -0500 Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 12 Mar 2001 03:13:04.0073 (UTC) FILETIME=[5A2D8390:01C0AAA2] Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Java is not "opposed" to dynarec. Indeed its the same scheme. There are some performance numbers on the 'net (I can dig up the reference), comparing GCC with -O (baseline), GCC -O3 (and other opts), MSVC 6 (max opts), SUN Hotspot and IBM JVM on the same algorithms. Now, understand that the Java code used NO special optimization flags. In many cases the JVM outperformed the static compiled code by a factor of 2. Now, the claim is that assembly will get you x5. So Java is with x2 of hand tuned assembler. And is ALREADY doing better than most C/C++ implementations. I'll dig up and post the reference (if anyone wants it). Now -- I'm biased. I actually work for SUN. Of course, my opinions are mine alone, and don't belong to or represent my employer. Ratboy666 ----Original Message Follows---- From: "Neil Griffiths" Reply-To: dynarec@dynarec.com To: Subject: Re: DYNAREC: 68K dynarec Date: Fri, 9 Mar 2001 01:17:26 -0000 Hi, It's taken me some time to reply. No matter! :) > But it's not. Or at least, it doesn't have to be. There is NO reason > why a java runtime can't treat the java bytecodes as an intermediate > code from a compiler, and compile to binary. Currently they don't, > entirely, but the JIT compilers do make a stab at it - it's just a > binary translation of the opcodes however (the sort of stuff this group > tries to do) but without the optimisations of full compiling. My problem isn't with Java as a language. It's the implementation of the JVM. As NB mentioned before, it goes against everything we try to achieve as dynarecers (wow, I invented a new word!). > This is tied in to the Java thing because if the java speed is > good enough, then why not use it, if it gives you a big portability win? > (And I happen to think that running in a browser *is* a big improvement.) Okay, I completely disagree with these two opinions. a) If the Java speed is good enough, wouldn't it be even faster if natively compiled? b) Running in a browser is a big improvement? How, exactly? Browsers are pretty much big, slow and clunky - and what may look good in one may not in another, and I still mean Java here. I mean, Netscape and IE have some real differences in handling applets... > Even if I write something in C that 10% of users can't yet run, by this > time next year that'll be 1% of users. I'm a great believer in the algorithm > of "it it's too expensive to do on today's CPU, put it on the shelf for a > year and then do it..." :-) Okay, but you may spend an extra month optimising it - and then lots of people can use it RIGHT NOW! Oh, and it looks especially good, 'cos everyone else won't be doing it for a year or so later! > My feeling is that the heavy work should be done by the compiler writers, > not repeated for every platform by the applications writers. If the > counter-argument to some of the above is that the compiler writers are not > doing their job, then I can agree with that, but eventually they will; > code always gets better, not worse. (Someone mentioned code bloat - that's > not quite what's happening; it's that with bigger systems available, people > are cramming more stuff into them. that's why things are larger and slower. > But the original code still works, is the same size, and gets faster every > year.) When you need a several hundred MHz CPU to run an office application, like Word, I'm sorry, but this point is moot. :) Anyway, on another (good!) point, managed to get my hands on Michael Abrash's book "Graphics Programming Black Book: Special Edition" today. Should make for an interesting read, even though it is a few years old now... :) Neil --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 02:26:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA58400 for dynarec-outgoing; Mon, 12 Mar 2001 02:26:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000801c0aae0$2e22e950$9a00a8c0@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: 68K dynarec Date: Mon, 12 Mar 2001 10:35:36 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Please do post it, I need to do some research on Java JITs for my presentation anyway (tomorrow, aagh!) - it's the only previous exposure my lecturers have had to this kind of thing. I don't normally like propaganda but anything that enhances my love of java has to be a good thing. Cheers Dave > Java is not "opposed" to dynarec. Indeed its the same scheme. > There are some performance numbers on the 'net (I can dig up > the reference), comparing GCC with -O (baseline), GCC -O3 (and > other opts), MSVC 6 (max opts), SUN Hotspot and IBM JVM on the > same algorithms. Now, understand that the Java code used NO > special optimization flags. In many cases the JVM outperformed > the static compiled code by a factor of 2. Now, the claim is > that assembly will get you x5. So Java is with x2 of hand tuned > assembler. And is ALREADY doing better than most C/C++ implementations. I'll > dig up and post the reference (if anyone > wants it). > > Now -- I'm biased. I actually work for SUN. Of course, my > opinions are mine alone, and don't belong to or represent > my employer. > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 02:36:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA58422 for dynarec-outgoing; Mon, 12 Mar 2001 02:36:41 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 12 Mar 2001 02:57:26 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K dynarec In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Java is not "opposed" to dynarec. Indeed its the same scheme. How so? Java implementations of today are interpreted bytecode. Dynarec is a binary->binary translation! It would be better stated that Java and emulation are the same scheme, but not dynmaic recompilation. > There are some performance numbers on the 'net (I can dig up > the reference), comparing GCC with -O (baseline), GCC -O3 (and > other opts), MSVC 6 (max opts), SUN Hotspot and IBM JVM on the > same algorithms. Now, understand that the Java code used NO > special optimization flags. In many cases the JVM outperformed > the static compiled code by a factor of 2. Now, the claim is > that assembly will get you x5. So Java is with x2 of hand tuned > assembler. And is ALREADY doing better than most C/C++ implementations. I'll > dig up and post the reference (if anyone > wants it). I seriously doubt this. Maybe some specialized function or operation (ala Apple computer marketing), sure, but not overall. Something smells VERY fishy here and there IS a rational explanation for the above. I'd like to see those performance numbers. Write a ray tracer program in C and one in Java and the Java version will be a pig (if it even can be done!). And show me it running on any desktop PC at that reasonable speed. 'Aint gonna happen! After all, Java is just a way for Sun to sell more machines and get their name out there. Sorry, but cross-platform as the goal, my ass. It's a way for Sun to sell their hardware! > Now -- I'm biased. I actually work for SUN. Of course, my > opinions are mine alone, and don't belong to or represent > my employer. Ooooh... ;-) Whoops... ;-) Why are there Java lovers on this list? Dynamic recompilation is the goal, here - ultimate speed, and Java does not offer that. Unless of course one wants to recompile Java bytecode to native machine code? -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 02:46:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA58441 for dynarec-outgoing; Mon, 12 Mar 2001 02:46:02 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200103121057.LAA05834@pons.ac.upc.es> Subject: Re: DYNAREC: 68K dynarec In-Reply-To: "from Neil Bradley at Mar 12, 2001 02:57:26 am" To: dynarec@dynarec.com Date: Mon, 12 Mar 2001 11:57:51 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Java is not "opposed" to dynarec. Indeed its the same scheme. > > How so? Java implementations of today are interpreted bytecode. Dynarec is > a binary->binary translation! It would be better stated that Java and > emulation are the same scheme, but not dynmaic recompilation. > Well Java 'recompilation' JIT, Hot Spot or whatever they call it ..., is erm ... virtual binary to binary translation. And of course the implementation of a Virtual Machine has a lot of to do with emulation. > Write a ray tracer program in C and one in Java and the Java version will > be a pig (if it even can be done!). And show me it running on any desktop > PC at that reasonable speed. 'Aint gonna happen! After all, Java is just a > way for Sun to sell more machines and get their name out there. Sorry, but > cross-platform as the goal, my ass. It's a way for Sun to sell their > hardware! > If you want cross-plataform why don't use binary translation rather than Java? Digital, until it was bought by Compaq and killed the project, showed how binary translation could be possible. FX!32 is a good example, FreePort (Sparc to Alpha) and the previous VAX to Alpha (I don't remember now the name VEST?) showed that cross-plataform using binary translation is possible. In any case I already think that if you want a good application with a good performance you have to expend the time implementing it on all the target machines ... > > Why are there Java lovers on this list? Dynamic recompilation is the goal, > here - ultimate speed, and Java does not offer that. Unless of course one > wants to recompile Java bytecode to native machine code? > May be as I said before, JIT. Umm ... Why a stack machine? It is better for building VMs? It is better for the compiler? Whatever ... > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 03:31:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA58493 for dynarec-outgoing; Mon, 12 Mar 2001 03:31:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004001c0aae9$5bf10d40$9a00a8c0@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: 68K dynarec Date: Mon, 12 Mar 2001 11:40:14 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Why are there Java lovers on this list? Dynamic recompilation is the goal, > here - ultimate speed, and Java does not offer that. Unless of course one > wants to recompile Java bytecode to native machine code? I don't know whether you have (and I'm assuming you haven't) but go away and write a non-power hungry small program that uses a GUI (no not a raytracer / next-gen emulator / thermonuclear simulation) in Java using Swing. It's painless, standard libraries are there for everything you want (almost). Then try running that program on another architecture (not a different OS, a different processor machine) whatever you like. Watch it run identically without any effort on your part. Then appreciate that in about 10 minutes flat you can strip it down to an applet and shove it in a webpage. That's why people like java. While you're at it you might also like to actively try crashing your computer with a java program, you won't. There is nothing else I have ever seen that can do all this. As for why java lovers are on the list, it's cos they're trying to write a raytracer/next-gen emulator or thermonuclear simulator in java and are having issues - nothing's perfect. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 05:05:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA58583 for dynarec-outgoing; Mon, 12 Mar 2001 05:04:55 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004501c0aaf7$03b4d2c0$0200a8c0@cheetah> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: 68K dynarec Date: Mon, 12 Mar 2001 12:54:15 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Java is not "opposed" to dynarec. Indeed its the same scheme. Nah, it's not. Firstly, if I wanted to be anal, Java is a language anyway... ;) But I know what you mean is the JVM - and you're wrong then as HotSpot is the nearest I've seen it get to dynarec, otherwise it's like bog-standard emulation. > There are some performance numbers on the 'net (I can dig up > the reference), comparing GCC with -O (baseline), GCC -O3 (and > other opts), MSVC 6 (max opts), SUN Hotspot and IBM JVM on the > same algorithms. Now, understand that the Java code used NO > special optimization flags. In many cases the JVM outperformed > the static compiled code by a factor of 2. Now, the claim is > that assembly will get you x5. So Java is with x2 of hand tuned > assembler. And is ALREADY doing better than most C/C++ implementations. I'll > dig up and post the reference (if anyone > wants it). I want to see these. Now. 'Cos I don't believe this. :) > Now -- I'm biased. I actually work for SUN. Of course, my > opinions are mine alone, and don't belong to or represent > my employer. I don't mind Sun, I've used SPARCs a lot. But Java is, as NB said, a way for Sun to sell their machines. Java, as a language, is a good language. I can't - and WON'T - knock that. It's when it runs that I knock it. Apart from anything else (like speed!), they've had to limit their virtual machine so that it runs on more than one type of hardware - so that limits the sort of things you can do in your programs. I think it would be a good language if programs were natively compiled - and could use all the features of your machine. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 05:05:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA58596 for dynarec-outgoing; Mon, 12 Mar 2001 05:05:02 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004701c0aaf7$0a7bbf60$0200a8c0@cheetah> From: "Neil Griffiths" To: References: <200103121057.LAA05834@pons.ac.upc.es> Subject: Re: DYNAREC: 68K dynarec Date: Mon, 12 Mar 2001 13:08:29 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Well Java 'recompilation' JIT, Hot Spot or whatever they call it ..., > is erm ... virtual binary to binary translation. And of course > the implementation of a Virtual Machine has a lot of to do with > emulation. Well, HotSpot kinda is like that. Except that it translates the code the more time it gets run. So even that's not a dynarec, it profiles the code at the same time. But maybe a technique from HotSpot could be used for dynarec (we'd need to get one written to test it) which is to profile the code, when you know which part gets run the most, optimise it more. But then, with a good dynarec which outputs good code, this may not be required. > If you want cross-plataform why don't use binary translation rather > than Java? Digital, until it was bought by Compaq and killed the > project, showed how binary translation could be possible. FX!32 is > a good example, FreePort (Sparc to Alpha) and the previous VAX > to Alpha (I don't remember now the name VEST?) showed that cross-plataform > using binary translation is possible. I agree, but if Sun did this, they wouldn't be able to patent it and control it - and use it to sell their stuff... ;) > In any case I already think that if you want a good application > with a good performance you have to expend the time implementing it > on all the target machines ... Yes, I agree. > May be as I said before, JIT. Umm ... Why a stack machine? It is > better for building VMs? It is better for the compiler? Whatever ... Nooo, stack-based machines are good. I'm joking. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 05:05:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA58588 for dynarec-outgoing; Mon, 12 Mar 2001 05:04:58 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004601c0aaf7$0894fe00$0200a8c0@cheetah> From: "Neil Griffiths" To: References: <004001c0aae9$5bf10d40$9a00a8c0@daves> Subject: Re: DYNAREC: 68K dynarec Date: Mon, 12 Mar 2001 13:03:02 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I don't know whether you have (and I'm assuming you haven't) but go away and > write a non-power hungry small program that uses a GUI (no not a raytracer / > next-gen emulator / thermonuclear simulation) in Java using Swing. It's > painless, standard libraries are there for everything you want (almost). I don't believe that neither NB or myself are knocking the language as a language. I think it's a good language and easy to code for. Having said that, it's only OO and that may not be the best idea in the world. I do like OO - and have used it for my project, but I also know when I shouldn't use it too. :) > Then try running that program on another architecture (not a different OS, a > different processor machine) whatever you like. Watch it run identically > without any effort on your part. Then appreciate that in about 10 minutes > flat you can strip it down to an applet and shove it in a webpage. That's > why people like java. While you're at it you might also like to actively try > crashing your computer with a java program, you won't. Then try clicking the right mouse button just before realising that Java doesn't support this because it supports macintoshes... > There is nothing else I have ever seen that can do all this. BASIC? 10 PRINT "Hello world!" 20 GOTO 10 Heheheh! ;) > As for why java lovers are on the list, it's cos they're trying to write a > raytracer/next-gen emulator or thermonuclear simulator in java and are > having issues - nothing's perfect. The language is pretty good, it's just the implementation that lets it down. If someone's up for writing a Java bytecode dynarec, then I won't be able to say anything. But until then... ;) That was actually going to be my final year project, but the fact I had a broken arm right up until December making typing a bit of a pain in the arse, so I chose something else... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 06:39:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA58691 for dynarec-outgoing; Mon, 12 Mar 2001 06:39:38 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00cf01c0ab03$996fb3a0$9a00a8c0@daves> From: "David Sharp" To: References: <004001c0aae9$5bf10d40$9a00a8c0@daves> <004601c0aaf7$0894fe00$0200a8c0@cheetah> Subject: Re: DYNAREC: 68K dynarec Date: Mon, 12 Mar 2001 14:49:09 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Then try clicking the right mouse button just before realising that Java > doesn't support this because it supports macintoshes... I can't believe that's a reason for your doubts about java/OO/bytecode/jvms ! > > There is nothing else I have ever seen that can do all this. > BASIC? > 10 PRINT "Hello world!" > 20 GOTO 10 > Heheheh! ;) Sorry, I meant all the GUI and browser stuff as well. > The language is pretty good, it's just the implementation that lets it down. > If someone's up for writing a Java bytecode dynarec, then I won't be able to > say anything. But until then... ;) You've clearly heard of hotspot, how do you feel that it doesn't qualify as a bytecode dynarec? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 08:44:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA58798 for dynarec-outgoing; Mon, 12 Mar 2001 08:43:44 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Throw an old argument back into the ring... From: "M.I.K.e" Message-ID: <00037f5247d23eab_mailit@mail.dynarec.com> References: <005401c09c6b$5ba3d070$b32bfea9@daves> Date: Mon, 12 Mar 2001 17:58:19 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >r13 11289609 11271137 22560746 <- normally Stack ptr >r0 15509685 10138046 25647731 >r1 16697067 11473918 28170985 >r14 19376225 15908822 35285047 <- Link register (return address) >r15 236589784 205393128 441982912 <- PC >This is kind of what I had expected from my knowledge of ARM asm and the >Procedure Call Standard. R15 can be largely discounted since it's to be >statically determined in the recompiled code when read and will leave the >chunk when written to, it's probably skewed by instruction fetch too IIRC. Exactly, you can ditch R15 because it's value is known during translation. >R14 can probably go a similar way in that it'll be used for every >subroutine. I'm actually surprised that R14 is used that often, because it sould be mainly used in BL and MOVS PC, LR... >What does interest me is that r0 and r1 are used so much No wonder. According to the APCS (ARM Procedure Call Standard) R0 to R3 are used as argument registers and R0 also acts as the return value register. It seems that most procedures seem to have an average of 2 arguments. Also the registers R0 and R3 don't have to be saved by the called procedure, therefore an assembly programmer and a good compiler will try to put everything into these registers if possible. >and I am wondering >what people think as to whether this makes them candidates for being >statically allocated to x86 regs for the duration of the chunk and doing all >other register's access direct to/from the register file in memory. >Comments? You know that I'm a devotee of the dynamic allocation process, but with these profiles I guess it would be the best idea to make them satically. -- M.I.K.e He had occasional flashes of silence that made his conversation perfectly delightful. -- Sydney Smith --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 09:35:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA58851 for dynarec-outgoing; Mon, 12 Mar 2001 09:35:02 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-Originating-IP: [192.9.51.3] From: "Fred Weigel" To: dynarec@dynarec.com Subject: DYNAREC: JAVA JVM Performance Information Date: Mon, 12 Mar 2001 12:47:05 -0500 Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 12 Mar 2001 17:47:06.0207 (UTC) FILETIME=[74201EF0:01C0AB1C] Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com A few people on the list have asked my for the Java JVM performance reference I cited. Since I composed the original whilst at home, I did not have the reference at hand... Here it is: http://www.aceshardware.com/Spades/read.php?article_id=153 Some comments - 1 - I have not verified this work. Source, etc. is available so that independent verification is possible. 2 - Again, I work for SUN (as a Staff Engineer). Assume any bias you want. 3 - These are "toy" programs. They specifically make no attempt at testing libraries and user interfaces. If anything, I suppose that would make JAVA look even better. Your milage may vary. 4 - I have no affiliation with this site. As far as I know, SUN doesn't either. 5 - I have always promoted (see some of my other postings) that dynamic compilation ("dynrec") techniques can result in better performance than static compilation. I also promote garbage collection as a performance enhancing technique as well. Note that the way I use "dynamice compilation" would probably best be described by others on this list as "profile and recompile". Ratboy666 _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 10:04:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA58885 for dynarec-outgoing; Mon, 12 Mar 2001 10:04:08 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K dynarec From: "M.I.K.e" Message-ID: <00037f537b8d2dab_mailit@mail.dynarec.com> References: <195901310927.DAA24967@gtoal.com> <004201c0a836$bc0ddf60$0200a8c0@cheetah> Date: Mon, 12 Mar 2001 19:24:21 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >My problem isn't with Java as a language. It's the implementation of the >JVM. Indeed. If Sun thought of dynamic translation when they designed the JVM (as I think they claimed) then they shouldn't have taken a stack based architecture but *lots* of virtual registers, eg. 256. Why so? Because in the stack approach you basically still have the semantic tree and you have to do all the register allocation in the JITC. But good register allocation is slow, so they should have put that into the compiler, allocate 256 registers, which are then allocated to hardware registers with a simple second chance algorithm (easy form of LRU) - yes I got that idea when thinking about page replacement algorithms. Another thing is that the compiler should mark the beginning of the basic block, which makes it much easier for the JITC to optimize the blocks without having to find them first. In my opinion Sun missed many opportunities to put optimization work into the Java compiler instead of the JITC. This leads to extra work for the JITC and therefore slower speed. Just imagine how fast Java code could be had they done it right... Also in this special case of bytecode programs, which should be much cleaner than the hacks in real binary code, I'd actually prefer a static translation of the program which is triggered by the installation routine. That way the binary is portable to all platforms that have a bytecode compiler *and* you'd have the advantage of static native code. >As NB mentioned before, it goes against everything we try to achieve as >dynarecers (wow, I invented a new word!). Actually we are dynaracers and most others are dynawreckers ;-) >Neil -- M.I.K.e Don't kiss an elephant on the lips today. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 10:04:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA58891 for dynarec-outgoing; Mon, 12 Mar 2001 10:04:11 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K dynarec From: "M.I.K.e" Message-ID: <00037f535e7a7b34_mailit@mail.dynarec.com> References: Date: Mon, 12 Mar 2001 19:16:14 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You've just described Tao/Elate, which has been around for a while and has >been licensed for use by the next-gen Amiga thing. They've gone in quite >heavily for Java, interestingly, and it looks like their implementation >might actually be halfway reasonable. Not seen it first-hand though. Elate was originally named Taos, being the first OS to operate on hybrid multiple processors, with ARM being the first target. They have a virtual processor, called VP in Taos and VP2 in Elate. I was interested in VP, but they don't provide much information about it :-( >Jules -- M.I.K.e Never call a man a fool; borrow from him. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 16:04:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59181 for dynarec-outgoing; Mon, 12 Mar 2001 16:04:35 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002f01c0ab53$2f873800$2584d13e@cheetah> From: "Neil Griffiths" To: References: <004001c0aae9$5bf10d40$9a00a8c0@daves> <004601c0aaf7$0894fe00$0200a8c0@cheetah> <00cf01c0ab03$996fb3a0$9a00a8c0@daves> Subject: Re: DYNAREC: 68K dynarec Date: Tue, 13 Mar 2001 00:15:46 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Then try clicking the right mouse button just before realising that Java > > doesn't support this because it supports macintoshes... > > I can't believe that's a reason for your doubts about java/OO/bytecode/jvms > ! That's not the only one, but I can't believe that a simple limitation like that doesn't worry you! Hey, I've got a good idea! Let's look at the most used input device, then limit it! Yeah, *that's* a good idea! ;) And anyway, that's not my doubts about Java/OO/bytecode - just the JVM. > > Heheheh! ;) > > Sorry, I meant all the GUI and browser stuff as well. Yeah, I know, but that was just wide open. :) > > The language is pretty good, it's just the implementation that lets it > down. > > If someone's up for writing a Java bytecode dynarec, then I won't be able > to > > say anything. But until then... ;) > > You've clearly heard of hotspot, how do you feel that it doesn't qualify as > a bytecode dynarec? Because a dynarec dynamically recompiles from the start. HotSpot doesn't. HotSpot runs the code at least once as per the normal JIT interpreter. It only recompiles when it runs the same piece of code more than once. How do you feel that this qualifies as a dynarec? It's not a true one - it just uses some of the same techniques. Kinda like these other "dynarecs" that we see in current emulators that don't actually recompile - and aren't dynamic. :) Neil. PS Dave, isn't it your presentation tomorrow (or today, depending on when you read this). If so - good luck! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 16:15:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59206 for dynarec-outgoing; Mon, 12 Mar 2001 16:15:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003d01c0ab54$baf07fe0$2584d13e@cheetah> From: "Neil Griffiths" To: References: <195901310927.DAA24967@gtoal.com> <004201c0a836$bc0ddf60$0200a8c0@cheetah> <00037f537b8d2dab_mailit@mail.dynarec.com> Subject: Re: DYNAREC: 68K dynarec Date: Tue, 13 Mar 2001 00:29:44 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Indeed. If Sun thought of dynamic translation when they designed the JVM (as > I think they claimed) then they shouldn't have taken a stack based > architecture but *lots* of virtual registers, eg. 256. > Why so? Because in the stack approach you basically still have the semantic > tree and you have to do all the register allocation in the JITC. But good > register allocation is slow, so they should have put that into the compiler, > allocate 256 registers, which are then allocated to hardware registers with a > simple second chance algorithm (easy form of LRU) - yes I got that idea when > thinking about page replacement algorithms. I agree 100% with you. > Another thing is that the compiler should mark the beginning of the basic > block, which makes it much easier for the JITC to optimize the blocks without > having to find them first. Hmm. Yep! > In my opinion Sun missed many opportunities to put optimization work into the > Java compiler instead of the JITC. This leads to extra work for the JITC and > therefore slower speed. Just imagine how fast Java code could be had they > done it right... And just think, they still could. But that would mean they'd have to stop defending it and do something about it! > Also in this special case of bytecode programs, which should be much cleaner > than the hacks in real binary code, I'd actually prefer a static translation > of the program which is triggered by the installation routine. That way the > binary is portable to all platforms that have a bytecode compiler *and* you'd > have the advantage of static native code. How's this for an idea for the group: after we finish (or, even better, start!) the 68k dynarec, how about we design our own virtual machine. Using our own techniques. Which will also be platform independant. Except we can do it the *correct* way using good techniques. Then make it freely available! Or is this just a mad idea like I often have? :o > >As NB mentioned before, it goes against everything we try to achieve as > >dynarecers (wow, I invented a new word!). > > Actually we are dynaracers and most others are dynawreckers ;-) Heh. There are times when I've wanted to write to emu authors and explain that what they've done isn't actually a dynarec, they just output the code that the interpreter would have run anyway. But I don't want to spoil their illusions. I'll let dynarec.com do that. :) Speaking of which, I'll write a document about something dynarec at some point and actually put it on! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 16:48:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59243 for dynarec-outgoing; Mon, 12 Mar 2001 16:48:22 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009201c0ab58$a497fdf0$9a00a8c0@daves> From: "David Sharp" To: References: <004001c0aae9$5bf10d40$9a00a8c0@daves> <004601c0aaf7$0894fe00$0200a8c0@cheetah> <00cf01c0ab03$996fb3a0$9a00a8c0@daves> <002f01c0ab53$2f873800$2584d13e@cheetah> Subject: Re: DYNAREC: 68K dynarec Date: Tue, 13 Mar 2001 00:56:15 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > That's not the only one, but I can't believe that a simple limitation like > that doesn't worry you! > Hey, I've got a good idea! Let's look at the most used input device, then > limit it! Yeah, *that's* a good idea! ;) Yeah, but I mean, if a mac only has one button and all pointer PDA/palmtops only have one button (or at least a tap) then surely it ain't that much of a limitation. It might mean you can't do nice weapon swapping/firing in FPS games but then there aren't too many of them in java. Kind of like a set of logical operators being logically adequate (so you can make any other logical operator from the ones you have defined) in that having one mouse button might not be quite so good as having 10+mousewheel but it'll still do the job of 10+mousewheel and therefore is adequate. Besides, since whether people like it or not java is cross-platform (and very very good at it too), surely it doesn't make sense to throw that down the pan just to get >1 mouse button to play FPS. In case anyone's wondering, yep my brain is hurting. I tried to prove you could write a dynarec backend in 3 days and nearly succeeded. nearly. > Because a dynarec dynamically recompiles from the start. HotSpot doesn't. > HotSpot runs the code at least once as per the normal JIT interpreter. It > only recompiles when it runs the same piece of code more than once. How do > you feel that this qualifies as a dynarec? It's not a true one - it just > uses some of the same techniques. Kinda like these other "dynarecs" that we > see in current emulators that don't actually recompile - and aren't dynamic. > :) So you're saying that to be a dynarec the program has to recompile everything to native code and cannot be a dynarec if it uses an interpreter to profile which pieces of code it thinks are worth recompiling? (just clarifying) > PS Dave, isn't it your presentation tomorrow (or today, depending on when > you read this). If so - good luck! Cheers. Unfortunately my reg allocation across basic blocks is a bit knackered which I'm trying to get done by 2am so my generated x86 code at least appears like it might work. OHP slides are all done though... Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 17:09:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA59276 for dynarec-outgoing; Mon, 12 Mar 2001 17:09:16 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00bf01c0ab5c$38936aa0$2584d13e@cheetah> From: "Neil Griffiths" To: References: <004001c0aae9$5bf10d40$9a00a8c0@daves> <004601c0aaf7$0894fe00$0200a8c0@cheetah> <00cf01c0ab03$996fb3a0$9a00a8c0@daves> <002f01c0ab53$2f873800$2584d13e@cheetah> <009201c0ab58$a497fdf0$9a00a8c0@daves> Subject: Re: DYNAREC: 68K dynarec Date: Tue, 13 Mar 2001 01:23:07 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Yeah, but I mean, if a mac only has one button and all pointer PDA/palmtops > only have one button (or at least a tap) then surely it ain't that much of a > limitation. It might mean you can't do nice weapon swapping/firing in FPS > games but then there aren't too many of them in java. How about if you're writing an office application? I don't know about you, but I use the right button a lot when I use office applications. I'm certainly not thinking about games when I talk about both mouse buttons - indeed, I've seen the speed you can get out of AWT and writing FPS isn't the sort of thing I'd consider. Yeah, yeah, I know, there's a 3D API, I just can't remember the name of it at present! > Kind of like a set of logical operators being logically adequate (so you can > make any other logical operator from the ones you have defined) in that > having one mouse button might not be quite so good as having 10+mousewheel > but it'll still do the job of 10+mousewheel and therefore is adequate. > Besides, since whether people like it or not java is cross-platform (and > very very good at it too), surely it doesn't make sense to throw that down > the pan just to get >1 mouse button to play FPS. No, but given that over 75% (guesstimate) of people using Java (Sun boxes and PC's) have more than one button, I know what I'd support! > In case anyone's wondering, yep my brain is hurting. I tried to prove you > could write a dynarec backend in 3 days and nearly succeeded. nearly. Cool! Well... apart from the hurting brain bit... :) > So you're saying that to be a dynarec the program has to recompile > everything to native code and cannot be a dynarec if it uses an interpreter > to profile which pieces of code it thinks are worth recompiling? (just > clarifying) That's what a dynarec is, so yes. Otherwise it's a hybrid that just uses some dynarec techniques. And yes, I know I'm a bit of a purist. But then, I guess we all are if we're on this list! > > PS Dave, isn't it your presentation tomorrow (or today, depending on when > > you read this). If so - good luck! > > Cheers. Unfortunately my reg allocation across basic blocks is a bit > knackered which I'm trying to get done by 2am so my generated x86 code at > least appears like it might work. OHP slides are all done though... When do you have to get your project finished by? Mine's got to be handed in at the beginning of May, giving me about 3 weeks to finish my project and 4 weeks to write up the documentation... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 17:14:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA59293 for dynarec-outgoing; Mon, 12 Mar 2001 17:14:55 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 12 Mar 2001 17:35:49 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K dynarec In-Reply-To: <009201c0ab58$a497fdf0$9a00a8c0@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yeah, but I mean, if a mac only has one button and all pointer PDA/palmtops > only have one button (or at least a tap) then surely it ain't that much of a > limitation. It might mean you can't do nice weapon swapping/firing in FPS > games but then there aren't too many of them in java. It's a serious limitation - one that the Mac community can't seem to grasp. There are a zillion control-click options that would be alleviated with another mouse button. Besides, Macs can use multiple button mice, too, but it does seem stupid that support for something this simple isn't there. How hard would it be to just put in something that indicates how many buttons it has? > very very good at it too), surely it doesn't make sense to throw that down > the pan just to get >1 mouse button to play FPS. Try doing any sort of file management when you want to change an option on a given file and a right click-properties flatly won't work. ;-( Makes everything a serious pain in the ass. > In case anyone's wondering, yep my brain is hurting. I tried to prove you > could write a dynarec backend in 3 days and nearly succeeded. nearly. Ah! So you know how *I* feel right now! ;-) > > you feel that this qualifies as a dynarec? It's not a true one - it just > > uses some of the same techniques. Kinda like these other "dynarecs" that > > see in current emulators that don't actually recompile - and aren't > > :) > So you're saying that to be a dynarec the program has to recompile > everything to native code and cannot be a dynarec if it uses an interpreter > to profile which pieces of code it thinks are worth recompiling? (just > clarifying) I'd say yes. How does it *KNOW* just by that simple profiling what does and doesn't need to be recompiled? The fact is, it doesn't, unless it has intimate knowledge of how the code works. It can't automatically know, because the code, for that run, may not hit all of the critical spots. Recompiling a little bit is just as "hard" are recompiling everything, so why not? > > PS Dave, isn't it your presentation tomorrow (or today, depending on when > > you read this). If so - good luck! > Cheers. Unfortunately my reg allocation across basic blocks is a bit > knackered which I'm trying to get done by 2am so my generated x86 code at > least appears like it might work. OHP slides are all done though... ;-( Let me know if I can help. I'm just as frazzled as you, but misery loves company! -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 17:23:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA59315 for dynarec-outgoing; Mon, 12 Mar 2001 17:23:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009d01c0ab5d$8633bde0$9a00a8c0@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: 68K dynarec Date: Tue, 13 Mar 2001 01:32:51 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > ;-( Let me know if I can help. I'm just as frazzled as you, but misery > loves company! Cheers, I'll answer the other stuff tomorrow, right now I could really do with a nice way of setting the x86 NZCV flags or whatever they're called SZCO I think. Basically each emulated ARM flag has been spilt to a byte in memory using SETcc and I need a nice way to restore them from memory. Right now I'm trying to spill regs from one reg allocation if they're not needed in the next one and then allocate the next one where necessary. I'm gonna get soooo pissed tomorrow. Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 17:28:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA59332 for dynarec-outgoing; Mon, 12 Mar 2001 17:28:19 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00a201c0ab5e$3a0697c0$9a00a8c0@daves> From: "David Sharp" To: References: Subject: DYNAREC: cloning structs Date: Tue, 13 Mar 2001 01:37:54 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com One more Q, sorry for being off topic. Is there a nice way to clone structs e.g. do something like void copyMyStruct(MyStruct* old) { MyStruct* X = new MyStruct; X = (MyStruct)old return X; // return ptr to new copy of old } at the mo I'm physically copying all members of the struct and I know there must be a better way? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 17:29:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA59345 for dynarec-outgoing; Mon, 12 Mar 2001 17:29:52 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 12 Mar 2001 17:50:46 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: cloning structs In-Reply-To: <00a201c0ab5e$3a0697c0$9a00a8c0@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > One more Q, sorry for being off topic. Is there a nice way to clone structs > e.g. do something like > void copyMyStruct(MyStruct* old) > { > MyStruct* X = new MyStruct; > X = (MyStruct)old > return X; // return ptr to new copy of old > } > at the mo I'm physically copying all members of the struct and I know there > must be a better way? Simple: MyStruct *X = new MyStruct; memcpy((void *) X, (void *) &OldStruct, sizeof(*X)); All done! -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Mar 12 17:30:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA59361 for dynarec-outgoing; Mon, 12 Mar 2001 17:30:58 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 12 Mar 2001 17:51:52 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K dynarec In-Reply-To: <009d01c0ab5d$8633bde0$9a00a8c0@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Cheers, I'll answer the other stuff tomorrow, right now I could really do > with a nice way of setting the x86 NZCV flags or whatever they're called > SZCO I think. Basically each emulated ARM flag has been spilt to a byte in > memory using SETcc and I need a nice way to restore them from memory. You could build a translation table from ARM->x86 and restore them that way, and the reverse, too. > Right now I'm trying to spill regs from one reg allocation if they're not > needed in the next one and then allocate the next one where necessary. I'm > gonna get soooo pissed tomorrow. Register allocation on x86 - >very, very bad idea. But we warned you. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 13 08:25:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA60225 for dynarec-outgoing; Tue, 13 Mar 2001 08:24:40 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-Originating-IP: [192.9.51.3] From: "Fred Weigel" To: dynarec@dynarec.com Subject: Re: DYNAREC: cloning structs Date: Tue, 13 Mar 2001 11:36:47 -0500 Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 13 Mar 2001 16:36:48.0096 (UTC) FILETIME=[CC593600:01C0ABDB] Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Structure assignment is a standard part of ANSI C, as is structure passing and return. Eg. MyStruct *copyMyStruct(MyStruct* old) { MyStruct *X = malloc(sizeof(MyStruct)); *X = *old; return X; /* return ptr to new copy of old */ } should be just fine. I am not up on C++, but this is ok with ANSI C. But, structures are "first class" in that they can be assigned, passed and returned (unfortunately, not compared). So, a better way is - MyStruct copyMyStruct(MyStruct *old) { return *old; } which degenerates to avoiding the call... { MyStruct aStruct, aCopyOfaStruct; aCopyOfaStruct = aStruct; } Without a larger piece of code to review, I can't really make more detailed comments... Ratboy666 ----Original Message Follows---- From: "David Sharp" Reply-To: dynarec@dynarec.com To: Subject: DYNAREC: cloning structs Date: Tue, 13 Mar 2001 01:37:54 -0000 One more Q, sorry for being off topic. Is there a nice way to clone structs e.g. do something like void copyMyStruct(MyStruct* old) { MyStruct* X = new MyStruct; X = (MyStruct)old return X; // return ptr to new copy of old } at the mo I'm physically copying all members of the struct and I know there must be a better way? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 13 09:34:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA60287 for dynarec-outgoing; Tue, 13 Mar 2001 09:33:46 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 6 Feb 1959 05:31:20 -0600 (CST) From: Graham Toal Message-Id: <195902061131.FAA24624@gtoal.com> To: dynarec@dynarec.com Subject: DYNAREC: Merced? Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Well, it's at least one year later than I expected and maybe will be two years late by the time it comes out, but I think the Merced architecture is finally going to happen. I wonder if anyone here has given any thought to what will be fun to do once we have a nice shining new architecture to play with that isn't X86 (except in emulation mode). It's clear Merced will have a shit-hot X86 emulator from the day it's released. It has to run existing PC apps, and to be attractive as a replacement for PCs, it's PC-compatible mode should be faster, even under emulation, than actual hardware PCs. [Which means that all those carefully hand-crafted X86 assembly emulators will be running under an emulator themselves :-) (Just teaking you, Neil! I know you hate the thought of emulating an emulator)] Anyway, the reason I bring this up now is to suggest that maybe it would be more interesting to target your M68K project at Merced rather than another X86 version, given the relatively imminent arrival of Merced on roughly the same sort of timescale as your M68K project? I doubt very much the machine will have a 68K emulator at launch, except maybe for whatever portable C emulators are around. (It might be more accurate to say that it's unlikely to have a 68K emulator that is anywhere near as good as its X86 emulator.) I think that the Merced is going to do for the X86 on PCs, what the Power PC did for the 68K on the Macintosh - somewhere between 2 and 5 years after its introduction, the X86 architecture will be a faint memory and barely supported by new software. Wouldn't it make more sense to be first on the block with a new emulator for the next generation of PC architectures than to start a 68K->586 project so late in the game? I don't know how much info is out there on the details of Merced yet. But it strikes me that a serious project would have no trouble getting the info from Intel. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 13 09:38:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA60303 for dynarec-outgoing; Tue, 13 Mar 2001 09:38:34 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3AAE5DF1.F85EB3B4@austin.rr.com> Date: Tue, 13 Mar 2001 09:50:41 -0800 From: John Allensworth X-Mailer: Mozilla 4.5 [en] (WinNT; I) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Merced? References: <195902061131.FAA24624@gtoal.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Graham Toal wrote: > I don't know how much info is out there on the details of Merced yet. But > it strikes me that a serious project would have no trouble getting the info > from Intel. Overall it looks interesting... Intel dumped the full architecture docs on their webpage (3-4 obscenely huge PDF's) along with some implementation notes for the initial Itaniums. Look for IA-64. > G -- ReaperSMS - homepageless The difference between math and physics is the difference between masturbation and sex. -- Paul Tomblin, alt.sysadmin.recovery --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 13 10:46:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA60369 for dynarec-outgoing; Tue, 13 Mar 2001 10:46:49 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000f01c0abef$7ef283d0$3fb5c3c1@FOSSIL> From: "Kieron Wilkinson" To: References: <004001c0aae9$5bf10d40$9a00a8c0@daves> <004601c0aaf7$0894fe00$0200a8c0@cheetah> <00cf01c0ab03$996fb3a0$9a00a8c0@daves> <002f01c0ab53$2f873800$2584d13e@cheetah> <009201c0ab58$a497fdf0$9a00a8c0@daves> <00bf01c0ab5c$38936aa0$2584d13e@cheetah> Subject: Re: DYNAREC: 68K dynarec Date: Tue, 13 Mar 2001 18:57:47 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > How about if you're writing an office application? I don't know about you, > but I use the right button a lot when I use office applications. I'm > certainly not thinking about games when I talk about both mouse buttons - I really SO NOT understand what you guys are talking about! My job is basically programming in java all day long, and the applications I write use the right mouse button all the time! It is really useful for help text and popup menus and stuff. I can also use the middle mouse button in my applications, but I tend to not do that so often. I have _even_ seen a java application use the mouse wheel! (okay okay, that one was using a native dll) Where did you guys here about only having one mouse button in Java???? > indeed, I've seen the speed you can get out of AWT and writing FPS isn't the > sort of thing I'd consider. Yeah, yeah, I know, there's a 3D API, I just > can't remember the name of it at present! Java3D believe it or not... ;) No FPS games in Java? Try this Quake engine in Java out: http://hem.passagen.se/carebear/fragisland.htm > No, but given that over 75% (guesstimate) of people using Java (Sun boxes > and PC's) have more than one button, I know what I'd support! It does! All this is very :)) btw, I just want to put you guys strait, sorry about the off topic-ness, but you lot started it! :) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 13 10:51:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA60386 for dynarec-outgoing; Tue, 13 Mar 2001 10:51:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003801c0abf0$2e020940$3fb5c3c1@FOSSIL> From: "Kieron Wilkinson" To: References: <004001c0aae9$5bf10d40$9a00a8c0@daves> <004601c0aaf7$0894fe00$0200a8c0@cheetah> <00cf01c0ab03$996fb3a0$9a00a8c0@daves> <002f01c0ab53$2f873800$2584d13e@cheetah> <009201c0ab58$a497fdf0$9a00a8c0@daves> <00bf01c0ab5c$38936aa0$2584d13e@cheetah> Subject: Re: DYNAREC: 68K dynarec (Java mouse button control) Date: Tue, 13 Mar 2001 19:02:41 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Oh by the way, I believe _for_Java_ applications on the mac, a mouse click combined with keys simulates the right and middle button on a *normal* mouse. This I could be wrong about, but I am fairly sure I read it somewhere... It was either Mac or Psion or both.... Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 13 12:07:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA60464 for dynarec-outgoing; Tue, 13 Mar 2001 12:07:07 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00a101c0abfb$70039d80$e674393e@menta.net> From: "Victor Moya del Barrio" To: References: <195902061131.FAA24624@gtoal.com> Subject: Re: DYNAREC: Merced? Date: Tue, 13 Mar 2001 21:23:16 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well, it's at least one year later than I expected and maybe will be > two years late by the time it comes out, but I think the Merced > architecture is finally going to happen. I wonder if anyone here > has given any thought to what will be fun to do once we have a nice > shining new architecture to play with that isn't X86 (except in emulation > mode). > We talked about a bit many months ago ;). We found it could be really interesting. We requested if Neil could send us a free Merced for testing but it seems he can't :))))))). > It's clear Merced will have a shit-hot X86 emulator from the day it's > released. It has to run existing PC apps, and to be attractive as a > replacement for PCs, it's PC-compatible mode should be faster, even > under emulation, than actual hardware PCs. > But it seems it isn't. > [Which means that all those carefully hand-crafted X86 assembly emulators > will be running under an emulator themselves :-) (Just teaking you, Neil! > I know you hate the thought of emulating an emulator)] > Just until someone implement a new ones in IA-64. > Anyway, the reason I bring this up now is to suggest that maybe it would > be more interesting to target your M68K project at Merced rather than > another X86 version, given the relatively imminent arrival of Merced > on roughly the same sort of timescale as your M68K project? I doubt very much > the machine will have a 68K emulator at launch, except maybe for whatever > portable C emulators are around. (It might be more accurate to say that > it's unlikely to have a 68K emulator that is anywhere near as good as its > X86 emulator.) > I don´t think so. P4 is still the reference to the desktop PCs and it is x86. Itanium is still designed for servers and other applications. We won't see a Itanium in our homes for a long time still ;). That is a reason for not doing our 68K dynarec in Merced ... still of course ;). And it is the main reason if we don't have the hardware hardly we will can write for it. But it could be a good prove of the flexibility of Neil's approach, we just should change the target layer. Other problem I can see that IA-64 is a VLIW and implement a dynarec supporting ILP (Instruction Level Parallelism) is an even more hard task. Just take a look to the work of the IBM's Daisy group or they HP IA-64 translator. BTW I found a new document from the Daisy group. > I don't know how much info is out there on the details of Merced yet. But > it strikes me that a serious project would have no trouble getting the info > from Intel. > I found a lot of info month ago, but I don't have now the time to investigate further the topic. > G > Victor Moya --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 13 16:32:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA60666 for dynarec-outgoing; Tue, 13 Mar 2001 16:31:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001801c0ac1f$7ce91e70$b32bfea9@daves> From: "David Sharp" To: References: <004001c0aae9$5bf10d40$9a00a8c0@daves> <004601c0aaf7$0894fe00$0200a8c0@cheetah> <00cf01c0ab03$996fb3a0$9a00a8c0@daves> <002f01c0ab53$2f873800$2584d13e@cheetah> <009201c0ab58$a497fdf0$9a00a8c0@daves> <00bf01c0ab5c$38936aa0$2584d13e@cheetah> <000f01c0abef$7ef283d0$3fb5c3c1@FOSSIL> Subject: Re: DYNAREC: 68K dynarec Date: Wed, 14 Mar 2001 00:41:11 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I really SO NOT understand what you guys are talking about! My job is > basically programming in java all day long, and the applications I write use > the right mouse button all the time! It is really useful for help text and > popup menus and stuff. Yeah, what are you talking about ng, I took what you said at face value before but it took me all of about 30 secs in the java API to find references to multiple mouse buttons... Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 13 19:51:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA60822 for dynarec-outgoing; Tue, 13 Mar 2001 19:51:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005a01c0ac3c$002342e0$c18ad13e@cheetah> From: "Neil Griffiths" To: References: <195902061131.FAA24624@gtoal.com> Subject: Re: DYNAREC: Merced? Date: Wed, 14 Mar 2001 04:03:01 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Well, it's at least one year later than I expected and maybe will be > two years late by the time it comes out, but I think the Merced > architecture is finally going to happen. I wonder if anyone here > has given any thought to what will be fun to do once we have a nice > shining new architecture to play with that isn't X86 (except in emulation > mode). The reason we are (well, *I* am!) interested in the IA-64 is the number of registers. That just makes emulation so much easier... :) > Anyway, the reason I bring this up now is to suggest that maybe it would > be more interesting to target your M68K project at Merced rather than > another X86 version, given the relatively imminent arrival of Merced > on roughly the same sort of timescale as your M68K project? I doubt very much > the machine will have a 68K emulator at launch, except maybe for whatever > portable C emulators are around. (It might be more accurate to say that > it's unlikely to have a 68K emulator that is anywhere near as good as its > X86 emulator.) We don't need to because we're using NB's intermediate layer. We can target processors easily by only changing the output codes. So when one of us gets a Merced to mess around with, they can change the output layer and get a good dynarec straight away! > I think that the Merced is going to do for the X86 on PCs, what the > Power PC did for the 68K on the Macintosh - somewhere between 2 and 5 years > after its introduction, the X86 architecture will be a faint memory and > barely supported by new software. Wouldn't it make more sense to be first on > the block with a new emulator for the next generation of PC architectures > than to start a 68K->586 project so late in the game? I think so too, but I also think that it's going to be too expensive for at least another year yet... :( Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 13 20:01:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA60847 for dynarec-outgoing; Tue, 13 Mar 2001 20:01:22 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006e01c0ac3d$72f64aa0$c18ad13e@cheetah> From: "Neil Griffiths" To: References: <004001c0aae9$5bf10d40$9a00a8c0@daves> <004601c0aaf7$0894fe00$0200a8c0@cheetah> <00cf01c0ab03$996fb3a0$9a00a8c0@daves> <002f01c0ab53$2f873800$2584d13e@cheetah> <009201c0ab58$a497fdf0$9a00a8c0@daves> <00bf01c0ab5c$38936aa0$2584d13e@cheetah> <000f01c0abef$7ef283d0$3fb5c3c1@FOSSIL> Subject: Re: DYNAREC: 68K dynarec Date: Wed, 14 Mar 2001 04:12:43 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I can also use the middle mouse button in my applications, but I tend to not > do that so often. > > I have _even_ seen a java application use the mouse wheel! (okay okay, that > one was using a native dll) > > Where did you guys here about only having one mouse button in Java???? Well, that'd be me - and me only. But, and this is for certain, the original 1.0 version of Java could NOT support more than one mouse button. At all. Nope. And if I'm wrong about this, so are all the Java books that talk about Java 1.0 - they all say about pressing keys if you want to have menus and stuff, it was all to do with Mac compatibility. They've obviously addressed the issue - but not told me. ;) > Java3D believe it or not... ;) Well... sod. Hey, no fair! Since when has any programmer given a library an obvious name! ;) > No FPS games in Java? Try this Quake engine in Java out: > > http://hem.passagen.se/carebear/fragisland.htm I never said that though, I just said that the speed would suck. I'll try that link out later and see for myself, but I'd be surprised if it worked well... > > No, but given that over 75% (guesstimate) of people using Java (Sun boxes > > and PC's) have more than one button, I know what I'd support! > > It does! > > All this is very :)) btw, I just want to put you guys strait, sorry about > the off topic-ness, but you lot started it! :) No, I started it. I'll take the blame for that one. Damn Sun for putting it in Java 1.2/2 - they've taken away one of my favourite niggles! Oh well, I still have the JVM to take the piss out of, so... :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 13 20:01:27 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA60856 for dynarec-outgoing; Tue, 13 Mar 2001 20:01:26 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006f01c0ac3d$75496260$c18ad13e@cheetah> From: "Neil Griffiths" To: References: <004001c0aae9$5bf10d40$9a00a8c0@daves> <004601c0aaf7$0894fe00$0200a8c0@cheetah> <00cf01c0ab03$996fb3a0$9a00a8c0@daves> <002f01c0ab53$2f873800$2584d13e@cheetah> <009201c0ab58$a497fdf0$9a00a8c0@daves> <00bf01c0ab5c$38936aa0$2584d13e@cheetah> <003801c0abf0$2e020940$3fb5c3c1@FOSSIL> Subject: Re: DYNAREC: 68K dynarec (Java mouse button control) Date: Wed, 14 Mar 2001 04:14:33 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Oh by the way, I believe _for_Java_ applications on the mac, a mouse click > combined with keys simulates the right and middle button on a *normal* > mouse. > > This I could be wrong about, but I am fairly sure I read it somewhere... > > It was either Mac or Psion or both.... Then they've changed it for 1.2 (as they should have done), but really... taking away my favourite Java niggle. That's just not cricket! :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 13 20:01:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA60864 for dynarec-outgoing; Tue, 13 Mar 2001 20:01:30 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007001c0ac3d$776a1f80$c18ad13e@cheetah> From: "Neil Griffiths" To: References: <004001c0aae9$5bf10d40$9a00a8c0@daves> <004601c0aaf7$0894fe00$0200a8c0@cheetah> <00cf01c0ab03$996fb3a0$9a00a8c0@daves> <002f01c0ab53$2f873800$2584d13e@cheetah> <009201c0ab58$a497fdf0$9a00a8c0@daves> <00bf01c0ab5c$38936aa0$2584d13e@cheetah> <000f01c0abef$7ef283d0$3fb5c3c1@FOSSIL> <001801c0ac1f$7ce91e70$b32bfea9@daves> Subject: Re: DYNAREC: 68K dynarec Date: Wed, 14 Mar 2001 04:15:33 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Yeah, what are you talking about ng, I took what you said at face value > before but it took me all of about 30 secs in the java API to find > references to multiple mouse buttons... Waah! Leave me alone! ;) Neil. PS I don't care anyway, I've been out all night drinking. 2 for 1 - and I was on vodka shots! Which kind of explains why I'm still up now - but not why I'm writing e-mail! Or telling people about it! :o --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 13 23:10:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA61028 for dynarec-outgoing; Tue, 13 Mar 2001 23:10:30 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 6 Feb 1959 19:08:35 -0600 (CST) From: Graham Toal Message-Id: <195902070108.TAA26763@gtoal.com> To: dynarec@dynarec.com Subject: DYNAREC: Language support for low-level programming Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Way back in the 60's when computers were first getting going, Edinburgh University and Manchester developed a language called IMP(AA) which was a follow-on to the original Atlas Autocode. The compiler-writers of the time were real mean bit-twiddlers and insisted that their compilers produced as good or better code than hand-coders. The language went through a few iterations and lasted about 15-20 years before dwindling into even deeper obscurity that it originally had. One of the few working Imp compilers left incidentally runs on the Acorn Archimedes. (the other is for the Vax. In its heyday it must have run on something like 20 different architectures) Back when I was working for Acorn in the 80's, I was writing semi-automated chip layout software, and all the software developers hada chance to design their own chips for the initial test run. I designed a MMU for the 6809, and build a 6809 second processor which attached to the BBC Micro IO processor over the Acorn "tube" (A bi-directional 8-bit fifo). Which brings us to the emulator bit... while waiting for the chips to be fab'd, I wrote an emulator for the 6809 which ran on Acorns other second processor of the time, the NatSemi32016. (This was pre-ARM days) I was fairly pleased that it ran faster than full speed on the 32016, even though it was written in a high-level language (Imp77) The point of this story is that Imp, although an Algol-like language, was very close to the machine. Right from the beginning, one of the compiler options had always been to generate a listing which interspersed the generated assembler with the Imp source so you could see what you were writing. The language had several great features for low-level control. One was embedded assembler as a language feature, not an add-on as in C's asm("..") pseudo-call. You could have something like this: i = j * k[25] *SVC_254,i Statements starting with * were assembly statements, but they could reference high-level objects from the language. This could be taken quite far, such as *LDA_R1,j * k[25] which would generate a sequence of instructions to evaluate the expression and then a final LDA which would put that result in R1. There were commands to tell the high-level software to leave some register alone in the code generation for some section of code that you could mark, and my favourite one was that you could declare register variables as in C, *but* you could also tell it which register to put them in, eg %register (R4) %integer emu_R0 Which would declare an integer called emu_R0 and it would *always* be held in R4. The 'register' attribute was NOT just a hint in this language, unlike C. Using this, and the nice array of registers that the 32016 had, I was able to write a 6809 emulator that had all the 6809 registers slaved to specific real registers, and using the disassembly listing feature I could tweak the code so that the overall code was as tight as I could write it by hand. (For instance I remember forcing the equivalent of the main switch statement to be implemented by a jump table in a single machine instruction. The language allowed what was effectively arrays of labels) Using Imp gave the best of both worlds; tightly crafted binaries where you knew what was happening, and high-level portability that could be taken to a different architecture and still compile, albeit to slightly less efficient code until you examined it carefully and made some equivalent tweaks. I rather miss those features in today's programs in C. By the way, I had a hard disk crash at Acorn *and* a floppy backup failure and lost the sources to that emulator, one of the most frustrating losses I've ever suffered. I did have a paper backup of a version about 3 days from completion but even that is currently lost. I hope I'll find it again some day so I can scan it back in for historical amusement if nothing else. Graham --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 13 23:58:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA61072 for dynarec-outgoing; Tue, 13 Mar 2001 23:58:35 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200103140810.JAA04964@pons.ac.upc.es> Subject: Re: DYNAREC: Language support for low-level programming In-Reply-To: <195902070108.TAA26763@gtoal.com> "from Graham Toal at Feb 7, 1959 07:08:35 pm" To: dynarec@dynarec.com Date: Wed, 14 Mar 2001 09:10:43 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > was a follow-on to the original Atlas Autocode. The compiler-writers > of the time were real mean bit-twiddlers and insisted that their > compilers produced as good or better code than hand-coders. The Really interesting ;). This language seems really interesting, perhaps it would make the effort to search a bit about it (someday). > > I rather miss those features in today's programs in C. > Well C seemed to be the more low level language someone could find out there. Abusing pointers, using asm directive and some more stuff like this permits you a lot of freedom. > By the way, I had a hard disk crash at Acorn *and* a floppy backup failure > and lost the sources to that emulator, one of the most frustrating losses > I've ever suffered. I did have a paper backup of a version about 3 days > from completion but even that is currently lost. I hope I'll find it again > some day so I can scan it back in for historical amusement if nothing else. > Damn! ;P. You could try to send the specifications to the GNU people and hope they become enough interested to develop a GNU version of the language for every architecture ;). If it is free of course. > Graham > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 14 01:02:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA61143 for dynarec-outgoing; Wed, 14 Mar 2001 01:02:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002101c0ac67$0d75b240$3fb5c3c1@FOSSIL> From: "Kieron Wilkinson" To: References: <004001c0aae9$5bf10d40$9a00a8c0@daves> <004601c0aaf7$0894fe00$0200a8c0@cheetah> <00cf01c0ab03$996fb3a0$9a00a8c0@daves> <002f01c0ab53$2f873800$2584d13e@cheetah> <009201c0ab58$a497fdf0$9a00a8c0@daves> <00bf01c0ab5c$38936aa0$2584d13e@cheetah> <000f01c0abef$7ef283d0$3fb5c3c1@FOSSIL> <006e01c0ac3d$72f64aa0$c18ad13e@cheetah> Subject: Re: DYNAREC: 68K dynarec Date: Wed, 14 Mar 2001 09:13:32 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well, that'd be me - and me only. But, and this is for certain, the original > 1.0 version of Java could NOT support more than one mouse button. At all. > Nope. And if I'm wrong about this, so are all the Java books that talk about > Java 1.0 - they all say about pressing keys if you want to have menus and > stuff, it was all to do with Mac compatibility. I have just looked in my Java 1.1 book and it is in there. So I assume that it was the original "bare-bones" 1.0 java that had no support for a right button. > They've obviously addressed the issue - but not told me. ;) LOL! :) > > No FPS games in Java? Try this Quake engine in Java out: > > http://hem.passagen.se/carebear/fragisland.htm > I never said that though, I just said that the speed would suck. I'll try > that link out later and see for myself, but I'd be surprised if it worked > well... I actually first tried it a few years ago on a Cyrix 150 and it was nearly full speed. It is only a 240x200 or something window however I will admit. > No, I started it. I'll take the blame for that one. Damn Sun for putting it > in Java 1.2/2 - they've taken away one of my favourite niggles! Oh well, I > still have the JVM to take the piss out of, so... :o 1.1 :) Sorry Neil, just had to put things right.... :) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 14 01:53:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA61191 for dynarec-outgoing; Wed, 14 Mar 2001 01:53:34 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 14 Mar 2001 02:14:50 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Merced? In-Reply-To: <195902061131.FAA24624@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well, it's at least one year later than I expected and maybe will be > two years late by the time it comes out, but I think the Merced > architecture is finally going to happen. I wonder if anyone here > has given any thought to what will be fun to do once we have a nice > shining new architecture to play with that isn't X86 (except in emulation > mode). Go crazy with the VLIW instructions. ;-) > It's clear Merced will have a shit-hot X86 emulator from the day it's > released. It has to run existing PC apps, and to be attractive as a > replacement for PCs, it's PC-compatible mode should be faster, even > under emulation, than actual hardware PCs. Don't hold your breath. Remember, I work for Intel in the very division that makes this product. ;-) > [Which means that all those carefully hand-crafted X86 assembly emulators > will be running under an emulator themselves :-) (Just teaking you, Neil! > I know you hate the thought of emulating an emulator)] Hey, a hardware emulator is OK! > Anyway, the reason I bring this up now is to suggest that maybe it would > be more interesting to target your M68K project at Merced rather than > another X86 version, given the relatively imminent arrival of Merced > on roughly the same sort of timescale as your M68K project? You could write a target module for Merced! But really, you'd just write a target layer for any given source layer and go from there. If we all had Merceds, then well, I'd consider it, but they're costly machines and won't be in the hands of the consumer for quite some time. > I think that the Merced is going to do for the X86 on PCs, what the > Power PC did for the 68K on the Macintosh - somewhere between 2 and 5 years > after its introduction, the X86 architecture will be a faint memory and > barely supported by new software. Wouldn't it make more sense to be first on > the block with a new emulator for the next generation of PC architectures > than to start a 68K->586 project so late in the game? Early on would be good. > I don't know how much info is out there on the details of Merced yet. But > it strikes me that a serious project would have no trouble getting the info > from Intel. There's a ton of it on Intel's web site. Huge-assed PDFs. -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 14 17:36:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA62129 for dynarec-outgoing; Wed, 14 Mar 2001 17:36:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Mar 2001 01:45:32 +0000 (GMT) From: J Brown X-Sender: brown@pani To: dynarec Subject: Re: DYNAREC: 68K dynarec In-Reply-To: <002101c0ac67$0d75b240$3fb5c3c1@FOSSIL> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, I just found this whilst trawling through sourceforge's software map, and I don't recall it being mentioned before: http://sourceforge.net/projects/m682386/ It looks like a static translator from 68020 to x86 code, but there's bugger all documentation and it doesn't seem to work for me on the (one instruction!) example given in the archive. Might be interesting though, if it does actually work as well as its author claims - apparently it has successfully been used for porting games from Amiga to PC. Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 15 09:15:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA63023 for dynarec-outgoing; Thu, 15 Mar 2001 09:15:03 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 8 Feb 1959 05:13:32 -0600 (CST) From: Graham Toal Message-Id: <195902081113.FAA05420@gtoal.com> To: dynarec@dynarec.com Subject: DYNAREC: Looking at assembly output of GCC??? Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I mentioned the otherday about the language I used to use (Imp) which trivially would generate an assembly listing interspersed with the high-level source (actually it wasn't trivial because it did attempt to keep things aligned, even when exbedding code and moving things in and out of procedure entry sequences etc). I know GCC can generate an assembly listing, but I have studied the GCC docs at length many times and I have never found a way to generate a listing with the assembler and source code matched up together. (Even CodeWarrior for the 68K has this as a standard option) Does anyone know if it is possible, and if so, how do I do it? You know I'm working on this semi static translator for the CINEM. I'ld like eventually to be able to automatically match up the input assembler to the translated assembler, and in order to do that I need to match up the intermediate C as well. I can do it manually but it gets tedious after a few dozen instructions. VERY tedious. Thanks G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 15 10:21:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA63085 for dynarec-outgoing; Thu, 15 Mar 2001 10:21:07 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 15 Mar 2001 18:29:43 +0000 (GMT) From: J Brown X-Sender: brown@maxx To: dynarec@dynarec.com Subject: Re: DYNAREC: Looking at assembly output of GCC??? In-Reply-To: <195902081113.FAA05420@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Sun, 8 Feb 1959, Graham Toal wrote: > Does anyone know if it is possible, and if so, how do I do it? Skimming through http://gcc.gnu.org/onlinedocs/gcc_3.html#SEC11, it seems not. I can imagine what their excuse would be - something along the lines of losing source information when converting to RTL, use of funny optimisations or compiling code a function, not a line, at a time. ICBW, of course. (-dP, which supposedly prints the RTL for an instruction as a comment before each line of assembler was the closest I found.) > You know I'm working on this semi static translator for the CINEM. I'ld > like eventually to be able to automatically match up the input assembler > to the translated assembler, and in order to do that I need to match up > the intermediate C as well. I can do it manually but it gets tedious > after a few dozen instructions. VERY tedious. I can imagine. I remember trying to do something very similar for ARMphetamine. Chocolate-coated coffee beans are helpful ;-) Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 15 10:38:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA63107 for dynarec-outgoing; Thu, 15 Mar 2001 10:37:54 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001a01c0ad80$6b544d80$b32bfea9@daves> From: "David Sharp" To: References: <195902081113.FAA05420@gtoal.com> Subject: Re: DYNAREC: Looking at assembly output of GCC??? Date: Thu, 15 Mar 2001 18:47:40 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Graham, This may not be relevant depending on your target platform (I've not been paying too much attention) but MSVC does a pretty nice asm output annotated with C source but then that's x86 only I believe. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 15 11:19:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA63151 for dynarec-outgoing; Thu, 15 Mar 2001 11:19:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3AB11925.D61237E9@gmx.de> Date: Thu, 15 Mar 2001 20:33:57 +0100 From: Kai =?iso-8859-1?Q?Sch=FCtz?= X-Mailer: Mozilla 4.72 [en] (X11; I; Linux 2.4.1 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Looking at assembly output of GCC??? References: <195902081113.FAA05420@gtoal.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Graham Toal wrote: > Does anyone know if it is possible, and if so, how do I do it? There are two ways to accomplish that: First is to use the objdump utility which belongs to binutils, so it's already installed on your system I guess. It has an options '-S' which mixes source and asm (you must compile with '-g' to include debug info into the objects/program files) Second is to use the showasm utility I wrote. It's a short perl script which takes the output of gcc before assembling and uses this to display source and asm intermixed. It also relies on the debug info that gcc generates so results should basically be the same, but: showasm does some really nice colorization of the output ! Perhabs you can also use the perl code as a starting point for an (semi-)automatic matching of the source lines ! I can send you the showasm package, or you can also download it from sunsite. If I remember right it finally settled somewhere in unix/scripts/misc or the like - not exactly the prominent place you dream of ! -- |/ |\ai --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 15 11:45:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA63183 for dynarec-outgoing; Thu, 15 Mar 2001 11:45:40 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3AB11F42.2242D7A6@gmx.de> Date: Thu, 15 Mar 2001 21:00:02 +0100 From: Kai =?iso-8859-1?Q?Sch=FCtz?= X-Mailer: Mozilla 4.72 [en] (X11; I; Linux 2.4.1 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: constant evaluation and propagation References: <004301c0a31c$7da0dd00$9a00a8c0@daves> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com David Sharp wrote: > > Looking ahead to optimisations that can be done once I've got my > intermediate code generated, I'm looking at the issue of constant evaluation > and propagation (substituting constants in for emulated regs if you know > they're constant) > > i.e. the instruction > > LDR R0,[PC,#16] > > will convert to something like > > getpc t0 ; get PC into t0 (PC is statically determinable) > movc t1,#16 ; stick the constant offset into t0 > add t0,t0,t1 ; add the PC and the constant to get the address > ldw r0,t0 ; load the value from address into r0 > > but could just be done like > > movc t0,#0x???????? ; put value of PC+16 into t0 > ldw r0,t0 ; load value from address > > likewise because of awkward immediate encoding on the ARM, to get 0x12345678 > in a reg we have to either load it from RAM or do this > > mov rx,#0x12 << 24 > orr rx,rx,#34 << 16 > orr rx,rx,#56 << 8 > orr rx,rx,#78 > > which could evaluate to armlet > > movc rx,#0x12345678 Doesn't the ARM instruction set have PC relative addressing ? That would solve your problem in a more elegant way ! -- |/ |\ai --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 15 11:52:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA63200 for dynarec-outgoing; Thu, 15 Mar 2001 11:52:56 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 8 Feb 1959 07:51:33 -0600 (CST) From: Graham Toal Message-Id: <195902081351.HAA13919@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Looking at assembly output of GCC??? Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I can imagine. I remember trying to do something very similar for > ARMphetamine. Chocolate-coated coffee beans are helpful ;-) You know, before Acorn used NorCroft for their C compiler, they were looking at the 3L C compiler which shared the same back-end with the Imp compiler for the Arm which they were already using. That one had the nice asm listing option too. You might be interested in a couple of Arm programs I found recently - have a look in http://www.gtoal.com/oldjunk/ I was mailing the guys at 3L at the time with some hints about improving the compiler, and I had generated source vs asm listings for 3L Imp and Norcroft C on similar programs. Also in that directory is an ARM disassembler I wrote (I must have understood the instruction set pretty well once, but looking over this old code I have to say it is not immediately rushing back to memory! - it was from 1987 I guess...) which was in fact the forebear of my current CINEM static translator, at least from the point of view of doing a code walk to determine all the opcodes as opposed to embedded data. You could generally take output from this disassembler and reassemble it, even if you made changes to the program that moved labels or data around etc. There's not that much of a jump from a disassembler to a first hack crude emulator I suspect. Graham --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 15 12:13:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA63228 for dynarec-outgoing; Thu, 15 Mar 2001 12:13:44 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 8 Feb 1959 08:12:22 -0600 (CST) From: Graham Toal Message-Id: <195902081412.IAA15019@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Looking at assembly output of GCC??? Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > There are two ways to accomplish that: First is to use the objdump > utility which belongs to binutils, so it's already installed on your Thanks! You can stare at 50 pages of GCC options for weeks and never think to look for a different command unless you already know about it. > I can send you the showasm package, or you can also download it from > sunsite. If I remember right it finally settled somewhere in > unix/scripts/misc or the like - not exactly the prominent place you > dream of ! You're a gent. Thanks. EIther of those may be just the ticket. I'll track it down myself, no need to mail it (unless you've updated it from what you put on sunsite?) G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 15 13:55:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA63315 for dynarec-outgoing; Thu, 15 Mar 2001 13:55:28 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: constant evaluation and propagation From: "M.I.K.e" Message-ID: <00037f92c6fbf368_mailit@mail.dynarec.com> References: <004301c0a31c$7da0dd00$9a00a8c0@daves> <3AB11F42.2242D7A6@gmx.de> Date: Thu, 15 Mar 2001 22:55:10 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Doesn't the ARM instruction set have PC relative addressing ? That would >solve your problem in a more elegant way ! Erm, Dave translates from ARM to x86, so the possibility of PC relative addressing doesn't get him anywhere... But the ARM is capable of PC relative addressing of course. >|/ >|\ai -- M.I.K.e Some programming languages manage to absorb change, but withstand progress. -- Epigrams in Programming, ACM SIGPLAN Sept. 1982 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Mar 18 12:06:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA69171 for dynarec-outgoing; Sun, 18 Mar 2001 12:05:20 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701c0afe8$fd6e1f60$6e994ed4@menta.net> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Page updated Date: Sun, 18 Mar 2001 21:21:16 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com After 4 months without any update I have updated my web page at dynarec.com ;). The links in the Binary Translation Library are now fixed (Unix kind directory paths), or I hope so. There is the "new" (the last I wrote some months ago) Space Invaders Tutorial document. I have added also my Space Invaders emulator for Win32 with the source code. MAS, the Master System emulator, has also a new version. Game Gear emulation has been added, some bugs have been corrected and now admits options in the command line (it is a bit more friendly and not just a test thing). The source, as usual, is also available. I have also uploaded a very very preliminar draft of my university project document. ... just in case someone is interested :)). Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Mar 18 12:22:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA69201 for dynarec-outgoing; Sun, 18 Mar 2001 12:22:43 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <026201c0afeb$0f37e2b0$0200a8c0@home.local> From: "Neil Griffiths" To: References: <000701c0afe8$fd6e1f60$6e994ed4@menta.net> Subject: Re: DYNAREC: Page updated Date: Sun, 18 Mar 2001 20:35:49 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > After 4 months without any update I have updated my web page at > dynarec.com ;). Good point, I should look at changing something there! :o > There is the "new" (the last I wrote some months ago) Space Invaders > Tutorial document. I have added also my Space Invaders emulator for Win32 > with the source code. Cool, you should post that to the mul8 mailing list too - possibly spark some info there again! > I have also uploaded a very very preliminar draft of my university project > document. Cool! > ... just in case someone is interested :)). No. ;) Only joking, I like to be mean. Ask Mike, he knows - he's met me! ;)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Mar 18 23:31:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA69761 for dynarec-outgoing; Sun, 18 Mar 2001 23:31:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200103190743.IAA27662@pons.ac.upc.es> Subject: Re: DYNAREC: Page updated In-Reply-To: <026201c0afeb$0f37e2b0$0200a8c0@home.local> "from Neil Griffiths at Mar 18, 2001 08:35:49 pm" To: dynarec@dynarec.com Date: Mon, 19 Mar 2001 08:43:43 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> There is the "new" (the last I wrote some months ago) Space Invaders >> Tutorial document. I have added also my Space Invaders emulator for Win32 >> with the source code. >Cool, you should post that to the mul8 mailing list too - possibly spark >some info there again! It seems that the Mul8 is already dead. Neil (the other one ;) closed it (in any case noone was using it). I will send here the updates of the SI tutorial (in fact is a part of my universitary project) as some people from the Mul8 page is in this list (Kieron?). >Neil. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 21 16:58:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA73361 for dynarec-outgoing; Wed, 21 Mar 2001 16:57:57 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-pair-Authenticated: 24.112.81.210 Message-ID: <007c01c0b26d$14e957f0$d2517018@cr147232c> From: "Sunil Puri" To: Subject: DYNAREC: NEGating a quadword Date: Wed, 21 Mar 2001 20:11:52 -0500 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello everyone, I am trying to implement the NEG operation for a Java LONG, which is 8 bytes on the x86: Lets the the data is in EBX:EAX. I want the result in EDX:ECX. So I do: mov ecx, eax neg ecx xor edx, edx sbb edx, ebx I am wondering whether anyone knows of any better solutions. I have the feeling that the last two lines can be improved upon. Sunil sunil@puri.ca --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 21 18:22:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA73455 for dynarec-outgoing; Wed, 21 Mar 2001 18:22:05 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003c01c0b278$cd6127d0$0200a8c0@home.local> From: "Neil Griffiths" To: References: <007c01c0b26d$14e957f0$d2517018@cr147232c> Subject: Re: DYNAREC: NEGating a quadword Date: Thu, 22 Mar 2001 02:35:16 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > I am trying to implement the NEG operation for a Java LONG, which is 8 bytes > on the x86: Okay... > Lets the the data is in EBX:EAX. I want the result in EDX:ECX. > > So I do: > > mov ecx, eax > neg ecx > xor edx, edx > sbb edx, ebx > > I am wondering whether anyone knows of any better solutions. I have the > feeling that the last two lines can be improved upon. Let's see... mov ecx, eax neg ecx That's 1 cycle each - and they won't run concurrently in the U/V pipelines 'cos ECX is accessed by both instructions. xor edx, edx sbb edx, ebx Same deal, 1 cycle each. Same reason as before. So that's 4 cycles in total. If you re-order those instructions to become: mov ecx, eax xor edx, edx neg ecx sbb edx, ebx That should be 2 cycles 'cos it will use the pipelines. At worst, if I'm wrong, it'll be 3 cycles, but I think, looking at Intel docs (which I had to because I didn't know how many cycles SBB was) it should be 2 cycles. And I don't think you're going to get any faster than that! Having said that, Neil Bradley is your man! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 22 13:37:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA74514 for dynarec-outgoing; Thu, 22 Mar 2001 13:37:37 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-pair-Authenticated: 24.112.81.210 Message-ID: <004401c0b31a$4943de00$d2517018@cr147232c> From: "Sunil Puri" To: References: <007c01c0b26d$14e957f0$d2517018@cr147232c> <003c01c0b278$cd6127d0$0200a8c0@home.local> Subject: Re: DYNAREC: NEGating a quadword Date: Thu, 22 Mar 2001 16:13:00 -0500 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Thanks for helping me out. But there is another subtley in here that I would like to point out: > > I am trying to implement the NEG operation for a Java LONG, which is 8 > > bytes on the x86: > > Lets the the data is in EBX:EAX. I want the result in EDX:ECX. > > So I do: > > mov ecx, eax > > neg ecx > > xor edx, edx > > sbb edx, ebx This code is actually WRONG! The XOR clears CF which needs to be maintained from NEG for SBB. However, reordering the instructions for performance actually fixes this bug: > If you re-order those instructions to become: > mov ecx, eax > xor edx, edx > neg ecx > sbb edx, ebx > > That should be 2 cycles 'cos it will use the pipelines. At worst, if I'm Thanks Neil for killing two birds with 1 stone. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 22 13:37:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA74523 for dynarec-outgoing; Thu, 22 Mar 2001 13:37:58 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-pair-Authenticated: 24.112.81.210 Message-ID: <004401c0b31a$4943de00$d2517018@cr147232c> From: "Sunil Puri" To: References: <007c01c0b26d$14e957f0$d2517018@cr147232c> <003c01c0b278$cd6127d0$0200a8c0@home.local> Subject: Re: DYNAREC: NEGating a quadword Date: Thu, 22 Mar 2001 16:13:00 -0500 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Thanks for helping me out. But there is another subtley in here that I would like to point out: > > I am trying to implement the NEG operation for a Java LONG, which is 8 > > bytes on the x86: > > Lets the the data is in EBX:EAX. I want the result in EDX:ECX. > > So I do: > > mov ecx, eax > > neg ecx > > xor edx, edx > > sbb edx, ebx This code is actually WRONG! The XOR clears CF which needs to be maintained from NEG for SBB. However, reordering the instructions for performance actually fixes this bug: > If you re-order those instructions to become: > mov ecx, eax > xor edx, edx > neg ecx > sbb edx, ebx > > That should be 2 cycles 'cos it will use the pipelines. At worst, if I'm Thanks Neil for killing two birds with 1 stone. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Mar 24 16:48:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA79441 for dynarec-outgoing; Sat, 24 Mar 2001 16:47:59 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006d01c0b4c7$330d5fe0$0200a8c0@home.local> From: "Neil Griffiths" To: References: <007c01c0b26d$14e957f0$d2517018@cr147232c> <003c01c0b278$cd6127d0$0200a8c0@home.local> <004401c0b31a$4943de00$d2517018@cr147232c> Subject: Re: DYNAREC: NEGating a quadword Date: Sun, 25 Mar 2001 02:00:48 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > This code is actually WRONG! The XOR clears CF which needs to be maintained > from NEG for SBB. However, reordering the instructions for performance > actually fixes this bug: Funny. I'd like to claim that I did that on purpose, but that was just a co-incidence! > Thanks Neil for killing two birds with 1 stone. No problem, glad I could help! Would I be right in thinking you're writing some sort of Java dynarec VM? I ask because you say it's for the Java NEG instruction, that's all... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Mar 24 23:18:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA79772 for dynarec-outgoing; Sat, 24 Mar 2001 23:18:28 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-pair-Authenticated: 24.112.81.210 Message-ID: <009801c0b4fd$d6355980$d2517018@cr147232c> From: "Sunil Puri" To: References: <007c01c0b26d$14e957f0$d2517018@cr147232c> <003c01c0b278$cd6127d0$0200a8c0@home.local> <004401c0b31a$4943de00$d2517018@cr147232c> <006d01c0b4c7$330d5fe0$0200a8c0@home.local> Subject: Re: DYNAREC: NEGating a quadword Date: Sun, 25 Mar 2001 02:23:15 -0500 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > No problem, glad I could help! Would I be right in thinking you're writing > some sort of Java dynarec VM? I ask because you say it's for the Java NEG > instruction, that's all... Yes, I am writing the x86 backend of a Java JIT compiler. I hope to eventually get more involved in the dynamic optimization side of things. Sunil --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 28 06:37:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA84203 for dynarec-outgoing; Wed, 28 Mar 2001 06:36:59 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00c101c0b796$0d839b00$b32bfea9@daves> From: "David Sharp" To: Subject: DYNAREC: report writing.... Date: Wed, 28 Mar 2001 15:47:17 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Cracking on with writing up my project report, the dynarec isn't complete but then since the report is 80% of the mark this has to take precedence. I was hoping for comments on a couple of things as I know there are a lot of people on this list who have more knowledge than I do... Would anyone care to provide a definition of emulation (i've got the oxford english dictionary one already)? Can anyone tell me about hardware emulation for types of hardware other than printers? Does anyone have any brief details of IA32 emulation for IA64, like how it'll seem to the user? btw is IA64 set to replace IA32 or just an alternative? I seem to recall Apple providing a 68k emulator for backwards compatability with their powermacs , can anyone point me in the direction of some details? In case anyone's wondering, I'm just trying to justify that emulation is a useful tool. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 28 14:22:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA84611 for dynarec-outgoing; Wed, 28 Mar 2001 14:21:57 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 28 Mar 2001 14:47:03 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: report writing.... In-Reply-To: <00c101c0b796$0d839b00$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Would anyone care to provide a definition of emulation (i've got the oxford > english dictionary one already)? In terms of computers, I'd say "Exact operation and behavior of a device on a dissimilar device." Sorta simple, but hey, it's decent. > Can anyone tell me about hardware emulation for types of hardware other than > printers? The Pentium III is an emulator. It's really a superscalar RISC machine emulating x86 instructions. > Does anyone have any brief details of IA32 emulation for IA64, like how > it'll seem to the user? btw is IA64 set to replace IA32 or just an > alternative? I can't comment on this. > I seem to recall Apple providing a 68k emulator for backwards compatability > with their powermacs , can anyone point me in the direction of some details? There's not much detail. They had/have a 68K emulator in software that did emulation of all the UI routines on the initial PowerMacs. It also ran legacy applications as well. Not too much excitement there. > In case anyone's wondering, I'm just trying to justify that emulation is a > useful tool. Emulation is a horribly userful tool. It's particularly handy when you don't yet have the hardware and you need to develop software for a platform that doesn't yet exist. Also consider this scenario: A company has been shipping a product for years on a given CPU. Now the micro is being end of life'd or the source code is completely lost. Rather than investing the time to rewrite everything, write an emulator for the environment and run it on a new chip. You get all the same benefit of the old intellectual property of the old code while being able to move to a differen architecture. -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 28 14:40:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA84640 for dynarec-outgoing; Wed, 28 Mar 2001 14:40:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Jack To: dynarec@dynarec.com Subject: Re: DYNAREC: report writing.... Date: Wed, 28 Mar 2001 17:53:15 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: <45q4ctgdn601ka65fv9pgljmhvbm5up9m1@4ax.com> References: <00c101c0b796$0d839b00$b32bfea9@daves> In-Reply-To: X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 28 Mar 2001 14:47:03 -0800 (PST), Neil Bradley wrote: >> In case anyone's wondering, I'm just trying to justify that emulation is a >> useful tool. > >Emulation is a horribly userful tool. It's particularly handy when you >don't yet have the hardware and you need to develop software for a >platform that doesn't yet exist. At ATI we use emulation extensively when preparing new chip designs - first a high level emulation using a behavioral model and modified drivers (which can run marginally well on a single developer's machine), then lower level emulation where server farms run the actual hardware code the chips will be built from and simulate output. Finally we run actual cycle for cycle emulation of a hardware device (on a VERY expensive machine). These actually boot up and run just like real hardware, except reaaaaaaaaly slow. I believe it contains stacks of boards containing multiple FPGAs into which the code is downloaded and run. -- ------------------------------------------------------------------------------ |Jack Follansbee | Disclaimer: Unless otherwise explicitly stated, | |Senior Software Engineer | these opinions are mine alone and do not | |ATI Research Inc. | represent the opinions of ATI, it's stockholders | |http://www.ati.com | or management, blah, blah, blah. | ------------------------------------------------------------------------------ --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 28 14:49:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA84659 for dynarec-outgoing; Wed, 28 Mar 2001 14:49:02 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 28 Mar 2001 15:14:08 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: report writing.... In-Reply-To: <45q4ctgdn601ka65fv9pgljmhvbm5up9m1@4ax.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > (on a VERY expensive machine). These actually boot up and run just > like real hardware, except reaaaaaaaaly slow. I believe it contains > stacks of boards containing multiple FPGAs into which the code is > downloaded and run. You weren't by any chance using a QuickTurn machine, were you? We did 450NX chipset validation that way. -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 28 15:21:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA84707 for dynarec-outgoing; Wed, 28 Mar 2001 15:21:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003301c0b7df$daae4d20$0300a8c0@home.local> From: "Neil Griffiths" To: References: <00c101c0b796$0d839b00$b32bfea9@daves> <45q4ctgdn601ka65fv9pgljmhvbm5up9m1@4ax.com> Subject: Re: DYNAREC: report writing.... Date: Thu, 29 Mar 2001 00:33:58 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > At ATI we use emulation extensively when preparing new chip designs - > first a high level emulation using a behavioral model and modified > drivers (which can run marginally well on a single developer's > machine), then lower level emulation where server farms run the actual > hardware code the chips will be built from and simulate output. > Finally we run actual cycle for cycle emulation of a hardware device > (on a VERY expensive machine). These actually boot up and run just > like real hardware, except reaaaaaaaaly slow. I believe it contains > stacks of boards containing multiple FPGAs into which the code is > downloaded and run. Interesting, since I know for sure that S3 do exactly the same. It's just that I suspect the tests aren't as rigourous as, say... well, sod it - anyone else's. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 28 15:29:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA84737 for dynarec-outgoing; Wed, 28 Mar 2001 15:29:44 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003601c0b7e0$fb85ef70$0300a8c0@home.local> From: "Neil Griffiths" To: References: <00c101c0b796$0d839b00$b32bfea9@daves> Subject: Re: DYNAREC: report writing.... Date: Thu, 29 Mar 2001 00:41:21 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Would anyone care to provide a definition of emulation (i've got the oxford > english dictionary one already)? NB's is as good as any I'd make up. > Can anyone tell me about hardware emulation for types of hardware other than > printers? Think of a chip, during development it will be tested. Graphics, sound, blah, blah, blah etc... :) > Does anyone have any brief details of IA32 emulation for IA64, like how > it'll seem to the user? btw is IA64 set to replace IA32 or just an > alternative? Brief? Okay: it'll run like crap if you want speed because although Intel do emulate the IA32, they haven't concentrated on it - their main aim is to get people to swap to IA64 - which, believe me, I'd want to swap to. Registers... registers! :) > I seem to recall Apple providing a 68k emulator for backwards compatability > with their powermacs , can anyone point me in the direction of some details? Er... No. Other than http://www.apple.com that is! > In case anyone's wondering, I'm just trying to justify that emulation is a > useful tool. Tell 'em that I said so, and if they don't like it then the dynarec mailing list will come 'round with baseball bats. Er, no - don't say that. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 28 16:12:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA84805 for dynarec-outgoing; Wed, 28 Mar 2001 16:12:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001b01c0b7e6$656087c0$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: report writing.... Date: Thu, 29 Mar 2001 01:22:26 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > In terms of computers, I'd say "Exact operation and behavior of a device > on a dissimilar device." Sorta simple, but hey, it's decent. Not bad, thanks. > The Pentium III is an emulator. It's really a superscalar RISC machine > emulating x86 instructions. I'd heard a bit about things like this - can you point me in the direction of any online docs on the subject as I'm interested to know how this works? I'm going to give transmeta a mention (viable product or not it's still very innovative) and I'd like to give PIII with standard emulation techniques a go too. > There's not much detail. They had/have a 68K emulator in software that did > emulation of all the UI routines on the initial PowerMacs. It also ran > legacy applications as well. Not too much excitement there. Oh right. > Emulation is a horribly userful tool. It's particularly handy when you > don't yet have the hardware and you need to develop software for a > platform that doesn't yet exist. > Also consider this scenario: A company has been shipping a product for > years on a given CPU. Now the micro is being end of life'd or the source > code is completely lost. Rather than investing the time to rewrite > everything, write an emulator for the environment and run it on a new > chip. You get all the same benefit of the old intellectual property of the > old code while being able to move to a differen architecture. Got those two already, thanks NB, now all I need to do is inject some enthusiasm into the paper. I'll be uploading a draft copy in about 2 weeks for peer review... Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 28 16:18:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA84826 for dynarec-outgoing; Wed, 28 Mar 2001 16:18:46 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004601c0b7e7$d57de560$0300a8c0@home.local> From: "Neil Griffiths" To: References: <001b01c0b7e6$656087c0$b32bfea9@daves> Subject: Re: DYNAREC: report writing.... Date: Thu, 29 Mar 2001 01:33:01 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > The Pentium III is an emulator. It's really a superscalar RISC machine > > emulating x86 instructions. > > I'd heard a bit about things like this - can you point me in the direction > of any online docs on the subject as I'm interested to know how this works? > I'm going to give transmeta a mention (viable product or not it's still very > innovative) and I'd like to give PIII with standard emulation techniques a > go too. It's been done since the original Pentium. The official term is "Hybrid". I wrote about this back at my last Uni on my last course - simply search (use google) for "hybrid cisc risc pentium" without the quotes and I bet you find all the stuff you need very quickly! > Got those two already, thanks NB, now all I need to do is inject some > enthusiasm into the paper. I'll be uploading a draft copy in about 2 weeks > for peer review... The cane is at the ready. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 28 17:46:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA84911 for dynarec-outgoing; Wed, 28 Mar 2001 17:46:07 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-pair-Authenticated: 24.112.81.210 Message-ID: <01b101c0b7f4$0e03b0c0$d2517018@cr147232c> From: "Sunil Puri" To: Subject: DYNAREC: Instruction sets: register based vs stack based Date: Wed, 28 Mar 2001 20:20:07 -0500 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I have been hearing how people don't like Java's stack based bytecode. I believe the reason for choosing is that it is much smaller than a register-oriented bytecode because the operands are implicit. But what are the pros/cons of stack-based bytecode over a register-oriented bytecode? Sunil --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 28 19:01:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA84987 for dynarec-outgoing; Wed, 28 Mar 2001 19:01:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 21 Feb 1959 14:40:33 -0600 (CST) From: Graham Toal Message-Id: <195902212040.OAA09151@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Instruction sets: register based vs stack based Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I have been hearing how people don't like Java's stack based bytecode. I > believe the reason for choosing is that it is much smaller than a > register-oriented bytecode because the operands are implicit. But what are > the pros/cons of stack-based bytecode over a register-oriented bytecode? I was going to keep out of the java hornets nest after the last time I was jumped on :-) but this happens to be something I know a little about. Computers are Turing machines. You can emulate any kind of machine with any other. Eventually you get down to the 'real' hardware (though sometimes even that isn't the truth) and only then does the choice of stack/register really matter. For most interpreters, having pseudo-registers is no better or worse than a stack, or even just treating everything as Ram. Because it *is* all ram. With a 'classic' bytecode interpreter - NOT compiling, there's nothing to chose between them. However here's the important bit: for a compiler, *even though the compiled code is targetted at a big register bank*, the compiler's intermediate code (assuming you do have an intermediate code and a multi-pass compiler) does *NOT* have to be register based. In fact it turns out that life is a lot simpler if the intermediate code is stack based. But here's the critical thing and this has to be thought about carefully, not dismissed out of hand: the intermediate code is *NOT* a bytecode to be executed, it is instructions to a compiling engine. When the intermediate code pushes something on the stack, it is not asking the runtime to do so; what it is pushing on the stack is a *DESCRIPTOR* of the operand to be worked on. With this form of intermediate code you can target any machine with a code generator of maximum optimisation. You are not limited to a stack architecture. There's a big HOWEVER in all of this. It turns out that an intermediate code that is stack-based and ideal for multi-target cross compilation is *NOT* suitable for direct execution with a traditional bytecode style interpreter. In fact if you wanted to do that, you'd have to have a compiler back-end that generated code for a stack-based machine. It might have a lot in common with the intermediate code but it can't be identical. I don't expect you to take my word on this (or even believe it) but there has been some very good work on machine independent intermediate codes and it is accepted canon now. I may be able to drag up some references if pushed. Although current compilers like GCC actually keep their parse tree in ram and pass that to the various backends, going via an intermediate code is technology that was developed in the late 60's to late 70's and is pretty well understood and has been stable for 20 years. The corollary of this is that a bytecode designed for direct interpretation is not ideal for use as an intermediate code for code generation. This is what we have with Java. So yes - all computers are Turing machines, and one represetation can be shown as equivalent to another, but the actual work in converting from one to another is sometimes just too great (eg 586 opcodes to high-level C is real tough) Having said that, Java Bytecode *does* have sufficient extra information in it that you can go all the way back to java source, which implies that in the worst case, you can fully decompile and then recompile with a targetted optimising compiler, so I guess in the Turing sense, Java bytecode is equivalent (and relatively close to) a good intermediate code. But that's my warning: if you treat the java bytecode as a ready to use intermediate code for code generation, you won't get optimal code without a hell of a lot of work. My personal take on this problem would be to decompile and recompile, and forget all about the bytecode. I suspect that overall this would be cheaper than trying to use an interpretive bytecode as if it were a compiler intermediate code. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Mar 28 19:08:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA85006 for dynarec-outgoing; Wed, 28 Mar 2001 19:08:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 21 Feb 1959 14:47:04 -0600 (CST) From: Graham Toal Message-Id: <195902212047.OAA09178@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: report writing.... Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Also consider this scenario: A company has been shipping a product for > years on a given CPU. Now the micro is being end of life'd or the source > code is completely lost. Rather than investing the time to rewrite > everything, write an emulator for the environment and run it on a new > chip. You get all the same benefit of the old intellectual property of the > old code while being able to move to a differen architecture. 100% correct. There are two scenarios here. The one I think Neil is describing is the way the Vax emulated a PDP11 as an upgrade path; another is when a third party sees a retired machine as a gap in the market; here's just such a machine... http://www.ccuruser.org/news.html (Interdata 3200 series - an old favourite of mine. Did you know that the early Interdatas were 32K core memory desktop PCs with the same instruction set as the IBM370 (or VERY close to it)?) G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 29 05:22:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA85646 for dynarec-outgoing; Thu, 29 Mar 2001 05:22:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Giovanni Bajo" To: Subject: Re: DYNAREC: Instruction sets: register based vs stack based Date: Thu, 29 Mar 2001 15:35:44 +0200 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Importance: Normal In-Reply-To: <195902212040.OAA09151@gtoal.com> X-MDaemon-Deliver-To: dynarec@dynarec.com Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Computers are Turing machines. > > [...] > > G Graham, your explanation is very exhaustive, but I've been a little confused. Can you confirm me that an intermediate code (designed _uniquely_ to be recompiled into target code and _never_ interpred) can succesfully be succesfully implemented with a stack based architecture? I am interested in this stack-based vs register-based thread, but only for recompilation (I could not care less the interpreters, right now). Can you point me to some papers, resources, whatever? Thanks RaskY --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 29 06:47:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA85726 for dynarec-outgoing; Thu, 29 Mar 2001 06:46:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 22 Feb 1959 02:25:57 -0600 (CST) From: Graham Toal Message-Id: <195902220825.CAA10339@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Instruction sets: register based vs stack based Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Can you confirm me that an intermediate code (designed _uniquely_ to be > recompiled into target code and _never_ interpred) can succesfully be > succesfully implemented with a stack based architecture? Yes it can, with no real problems, but you do not try to execute the intermediate code; you still have to have a second-pass compilation stage where the intermediate code is used to drive a code generator which outputs instructions for the stack-based machine. It is probably one of the easier back-ends to write. > I am interested in this stack-based vs register-based thread, but only for > recompilation (I could not care less the interpreters, right now). Can you > point me to some papers, resources, whatever? I lost my library of papers on this subject when I moved from Britain to the USA. The only one I can quote from memory is because it happened to be writen by someone I know. That aside, it is actually one of the best papers on the subject. Peter S Robertson's PhD Thesis from Edinbugh University (I think around 1980 give or take 2 years) with a title something like "Use of intermediate codes for highly optimising compilers" You might try mailing him directly to ask for a reference and any leads to other intermediate code systems - he will undoubtedly know them all - he continued working in the compiler field for another 20 years after his PhD. http://www.threel.co.uk/company/3l.htm Graham --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 29 07:02:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA85755 for dynarec-outgoing; Thu, 29 Mar 2001 07:02:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 22 Feb 1959 02:41:43 -0600 (CST) From: Graham Toal Message-Id: <195902220841.CAA10378@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Instruction sets: register based vs stack based Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Can you confirm me that an intermediate code (designed _uniquely_ to be > recompiled into target code and _never_ interpred) can succesfully be > succesfully implemented with a stack based architecture? I'm sorry, re-reading your mail, I think I answered a question you weren't asking. You meant "does this work with a stack-based intermediate code" (presumably as opposed to an intermediate code for some other model of virtual machine such as one that perhaps has a set of registers). Yes, in fact it's the best choice. It's *easy* to map from a 0-register model to any given set of registers. It's much harder to map from a given set of registers to a differently-sized set or to none. In the case where the intermediate code engine has more registers than the machine, it's an obvious bad fit. And it's worse than the 0-register intermediate code case because some allocation of variables to registers has already taken place. You basically have to undo that in order to re-allocate optimally. Even if the intermediate code engine assumes a smaller set of registers than the actual machine, so that a 1:1 correspondence is possible, you're still not generating optimum code, because you're not using all the possible registers - there will be cases where you could have used them to produce better code. With the 0-register stack case, you're working from what is effectively a 1:1 mapping of the parse tree, so you have the full information and can make the appropriate allocation to registers that you would want to do in the first place, without some earlier pass of the compiler having messed things up for you. Only when the intermediate code is a 1:1 exact mapping to the registers of the hardware would a register-based intermediate code be worthwhile, but that totally throws away the whole point of using an intermediate code, which is to have N+M passes rather than N*M, for all languages N and back-ends M. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 29 14:24:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA86142 for dynarec-outgoing; Thu, 29 Mar 2001 14:24:41 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: report writing.... From: "M.I.K.e" Message-ID: <000380ad1e898cd8_mailit@mail.dynarec.com> References: <00c101c0b796$0d839b00$b32bfea9@daves> Date: Fri, 30 Mar 2001 00:46:00 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Cracking on with writing up my project report, the dynarec isn't complete >but then since the report is 80% of the mark this has to take precedence. Probably a good idea. >I was hoping for comments on a couple of things as I know there are a lot of >people on this list who have more knowledge than I do... Don't underestimate your own knowledge! I still didn't write an emulator... >Would anyone care to provide a definition of emulation (i've got the oxford >english dictionary one already)? I guess NB's definition gets to the essence without the use of too many words. >Can anyone tell me about hardware emulation for types of hardware other than >printers? What do you mean by printer emulation? PCL emulation or GDI printers? If it's GDI printers then you have to count winmodems and passive ISDN cards as well... And I'll have to queue up in the line of all the others that new hardware (especially processors) is often emulated as well. More to your project, the ARM was emulated in BBC Basic long before the first ARM1 prototype was built. >Does anyone have any brief details of IA32 emulation for IA64, like how >it'll seem to the user? Someone on a newsgroup claimed that with the right firmware you should be able to boot IA32 systems, but if the works similar to ARM/Thumb (and the took a great deal from that methology) or the V86 mode every exception will throw the processor back into IA64 mode, so this won't work. My idea is that you can only run IA64 operating systems that can optionally run IA32 apps, just like Windows running in protected mode can run real mode DOS apps in the V86 mode. I hope this is at least partly right... >btw is IA64 set to replace IA32 or just an alternative? Well, I think Intel actually wanted to abandon IA32 some time ago, but customers didn't let them. Nevertheless I don't think that IA64 will replace IA32 in the near future. My guess is that IA64 will be for servers in the beginning, but that it'll likely replace IA32 after some time. >I seem to recall Apple providing a 68k emulator for backwards compatability >with their powermacs , can anyone point me in the direction of some details? I only know of the document for the DR 68k emulator for Mac: http://devworld.apple.com/technotes/pt/pt_39.html But I bet that Gwenole has more information about that topic... >In case anyone's wondering, I'm just trying to justify that emulation is a >useful tool. It is! And it's fun as well! ;-) Well, emulation is actually quite an old idea. I think someone mentioned VAX being slightly compatible to PDP-11, but DEC also went a step further since the Alpha has lots of FP operations that are only because of VAX compatibility and because they are faster to do in hardware than in software, but everything else is different from VAX, so Alpha doesn't include a VAX emulator but support *for* a VAX emulator. >Dave -- M.I.K.e Don't change the reason, just change the excuses! -- Joe Cointment --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 29 15:32:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA86213 for dynarec-outgoing; Thu, 29 Mar 2001 15:32:31 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <02e801c0b8aa$0c14ba50$b32bfea9@daves> From: "David Sharp" To: References: <00c101c0b796$0d839b00$b32bfea9@daves> <000380ad1e898cd8_mailit@mail.dynarec.com> Subject: Re: DYNAREC: report writing.... Date: Fri, 30 Mar 2001 00:42:55 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Probably a good idea. I'm starting to get a bit scraed about the whole thing, time's running away from me... > Don't underestimate your own knowledge! I still didn't write an emulator... It's pretty good if a little hazy now from end of term celebrations! > What do you mean by printer emulation? PCL emulation or GDI printers? If it's > GDI printers then you have to count winmodems and passive ISDN cards as > well... It's just the thing where one brand of printer is said to emulate another, the opener to my report goes something like this: "Emulation allows software written for one computer system to be run on another. In this context, the emulator creates an artificial environment in which it simulates exactly all the operations of the emulated system that the software would expect. As a result, the software can be made to run on the native system identically to the way it would have run on the source system, despite the fact that they may have different underlying hardware. The term emulation is also used in computing to describe when one piece of hardware emulates the interface of another so that it is compatable with all the systems that use the emulated hardware. This has been used to great effect in printing where competitors products are compatible with the large number of systems that use the market-leader’s hardware. These two uses of the the term emulation are quite different and should not be confused, this project concerns the former." I don't think it's a very good opener, in fact I would go so far to say it's dull, digressive and almost misses the point. I think I'll rewrite it... > And I'll have to queue up in the line of all the others that new hardware > (especially processors) is often emulated as well. More to your project, the > ARM was emulated in BBC Basic long before the first ARM1 prototype was built. Yeah, Graham's been telling me about it. > Someone on a newsgroup claimed that with the right firmware you should be > able to boot IA32 systems, but if the works similar to ARM/Thumb (and the > took a great deal from that methology) or the V86 mode every exception will > throw the processor back into IA64 mode, so this won't work. > My idea is that you can only run IA64 operating systems that can optionally > run IA32 apps, just like Windows running in protected mode can run real mode > DOS apps in the V86 mode. > I hope this is at least partly right... hmm, interesting. > I only know of the document for the DR 68k emulator for Mac: > http://devworld.apple.com/technotes/pt/pt_39.html Ah yes, I had that one already, too many resources... > Well, emulation is actually quite an old idea. I think someone mentioned VAX > being slightly compatible to PDP-11, but DEC also went a step further since > the Alpha has lots of FP operations that are only because of VAX > compatibility and because they are faster to do in hardware than in software, > but everything else is different from VAX, so Alpha doesn't include a VAX > emulator but support *for* a VAX emulator. I'm just finding it hard to get thoughts down on paper, it's not nice at all... Anyway, enough blathering. BTW, has anyone seen the GBA emulators that are out there running fzero, very trippy. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 29 16:24:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA86264 for dynarec-outgoing; Thu, 29 Mar 2001 16:24:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 30 Mar 2001 01:36:05 +0100 (BST) From: J Brown X-Sender: brown@maxx To: dynarec Subject: Re: DYNAREC: report writing.... In-Reply-To: <02e801c0b8aa$0c14ba50$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Fri, 30 Mar 2001, David Sharp wrote: > BTW, has anyone seen the GBA emulators that are out there running fzero, > very trippy. Not sure if I've seen that one, but I have to say I'm a little surprised at just how quickly people have got started on GBA emulators! The machine's barely released yet, but some of the things look like they've been around for a while... Actually, I admit to being slightly disappointed that the thing 'only' runs at 16MHz or so. Even still, that *really* pushes traditional emulation of the ARM on anything but the newest machines (about 16 frames/sec on my crummy K6/2. Even my 'work' machine (800MHz PIII Xeon, don't ask why...) only seems to manage about 30 frames/sec for iGBA. So anyway, I spent today writing some preliminary Thumb support into ARMphetamine (now on Sourceforge, not sure if I've mentioned that). Very tedious, but hey it might be fun if it works ;-) Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 29 18:04:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA86349 for dynarec-outgoing; Thu, 29 Mar 2001 18:03:59 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 22 Feb 1959 13:43:24 -0600 (CST) From: Graham Toal Message-Id: <195902221943.NAA13346@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: report writing.... (other kinds of emulators) Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com i almost forgot; paper tape reader emulators (http://www.westnc.com/hs2.html) and punched card (Hollerith card) emulators (http://hissa.nist.gov/mlists/ibm1620/200001/20000129-2.html) but most important: eprom emulators. (Esp the dual-port kind). I've worked on many projects that would never have seen the light of day if we actually had to blow eproms in order to test them. Cuts the development cycle from 30 minutes to 30 seconds. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 29 21:47:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA86525 for dynarec-outgoing; Thu, 29 Mar 2001 21:46:23 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Jack To: dynarec@dynarec.com Subject: Re: DYNAREC: report writing.... Date: Fri, 30 Mar 2001 01:00:37 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: <2CDEOvQD6TOXj+NmCt+0zUeVM=hE@4ax.com> References: <45q4ctgdn601ka65fv9pgljmhvbm5up9m1@4ax.com> In-Reply-To: X-Mailer: Forte Agent 1.6/32.525 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 28 Mar 2001 15:14:08 -0800 (PST), Neil Bradley wrote: >> (on a VERY expensive machine). These actually boot up and run just >> like real hardware, except reaaaaaaaaly slow. I believe it contains >> stacks of boards containing multiple FPGAs into which the code is >> downloaded and run. > >You weren't by any chance using a QuickTurn machine, were you? We did >450NX chipset validation that way. Both Quickturn and IKOS. -- Jack ---- "Vir, Intelligence has nothing to do with politics" - Peter Jurasik as Ambassador Londo Molari, "Babylon 5" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Mar 29 21:50:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA86545 for dynarec-outgoing; Thu, 29 Mar 2001 21:50:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Jack To: dynarec@dynarec.com Subject: Re: DYNAREC: report writing.... Date: Fri, 30 Mar 2001 01:04:34 -0500 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: References: <00c101c0b796$0d839b00$b32bfea9@daves> <45q4ctgdn601ka65fv9pgljmhvbm5up9m1@4ax.com> <003301c0b7df$daae4d20$0300a8c0@home.local> In-Reply-To: <003301c0b7df$daae4d20$0300a8c0@home.local> X-Mailer: Forte Agent 1.6/32.525 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, 29 Mar 2001 00:33:58 +0100, "Neil Griffiths" wrote: >Hiya, > >> At ATI we use emulation extensively when preparing new chip designs - >> first a high level emulation using a behavioral model and modified >> drivers (which can run marginally well on a single developer's >> machine), then lower level emulation where server farms run the actual >> hardware code the chips will be built from and simulate output. >> Finally we run actual cycle for cycle emulation of a hardware device >> (on a VERY expensive machine). These actually boot up and run just >> like real hardware, except reaaaaaaaaly slow. I believe it contains >> stacks of boards containing multiple FPGAs into which the code is >> downloaded and run. > >Interesting, since I know for sure that S3 do exactly the same. It's just >that I suspect the tests aren't as rigourous as, say... well, sod it - >anyone else's. :) Are you abusing ATI or S3 here? I need to know if I should be offended. :) -- Jack ---- "Anime - Drugs would be cheaper" - Seen on a bumper sticker. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Mar 30 00:28:27 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA86679 for dynarec-outgoing; Fri, 30 Mar 2001 00:28:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002401c0b8f4$eb6798e0$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: report writing.... Date: Fri, 30 Mar 2001 09:39:21 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Not sure if I've seen that one, but I have to say I'm a little surprised > at just how quickly people have got started on GBA emulators! The > machine's barely released yet, but some of the things look like they've > been around for a while... The official docs were leaked months ago, along with an anonymous emulator (which I couldn't get working) this kicked off a lot of homebrew demo development (www.gbadev.org), so much so that iGBA was able to run fzero before it was launched (although I don't think they knew this until afterwards). You can get the stuff from http://igba.multimania.com and alt.binaries.emulators.gameboy* > Actually, I admit to being slightly disappointed that the thing 'only' > runs at 16MHz or so. Even still, that *really* pushes traditional > emulation of the ARM on anything but the newest machines (about 16 > frames/sec on my crummy K6/2. Even my 'work' machine (800MHz PIII Xeon, > don't ask why...) only seems to manage about 30 frames/sec for iGBA. I get a lowly ~24fps in fzero on my 450Mhz PII. Since the gfx stuff isn't that much more complex than the SNES, I think we can blame it squarely on the ARM emulation being slow. Snes9x runs fzero at about 100fps (unlimited) on mine. On another point, it's a bit sad that the fzero SNES game is practically identical to the GBA, I hope more snazzy stuff starts to appear soon. > So anyway, I spent today writing some preliminary Thumb support into > ARMphetamine (now on Sourceforge, not sure if I've mentioned that). Very > tedious, but hey it might be fun if it works ;-) Interested to see you got linear scan working, is it any good? (i.e. much better than a crappy heuristic of try not spill any variables used in this armlet or the next?) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Mar 30 00:33:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA86700 for dynarec-outgoing; Fri, 30 Mar 2001 00:33:25 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 30 Mar 2001 00:58:53 -0800 (PST) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: report writing.... In-Reply-To: <001b01c0b7e6$656087c0$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > The Pentium III is an emulator. It's really a superscalar RISC machine > I'd heard a bit about things like this - can you point me in the direction > of any online docs on the subject as I'm interested to know how this works? > I'm going to give transmeta a mention (viable product or not it's still very > innovative) and I'd like to give PIII with standard emulation techniques a > go too. I'll take exception to Transmeta being "innovative", and I wouldn't mention them. What they've done is copy techniques that (at least) Intel and DEC have been using since the early 90s, giving it a new name, and repackaging it. The result is nothing more than a less than stellar performing Pentium clone. The only thing that Transmeta did do is give a lower power chip, and even that was outdone by Intel not more than 8 months later. And it also performs at full speed, whereas the Transmeta chip is roughly 50-60% equivalent performance at Pentium III clock speed. Transmeta has made it very clear they are a marketing organization, and certainly not innovators. Sorry... you won't find any Transmeta "sympathizers" on this list. We all hate 'em. -->Neil ------------------------------------------------------------------------------- Neil Bradley There'd be no more N'Sync if everyone had guns. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Mar 30 01:32:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA86763 for dynarec-outgoing; Fri, 30 Mar 2001 01:32:18 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003801c0b8fd$d9960c60$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: report writing.... Date: Fri, 30 Mar 2001 10:42:47 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Sorry... you won't find any Transmeta "sympathizers" on this list. We all > hate 'em. And MAME and Java and Marat... :o) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Mar 30 01:41:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA86785 for dynarec-outgoing; Fri, 30 Mar 2001 01:41:23 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200103300954.LAA21051@pons.ac.upc.es> Subject: Re: DYNAREC: report writing.... In-Reply-To: <003801c0b8fd$d9960c60$b32bfea9@daves> "from David Sharp at Mar 30, 2001 10:42:47 am" To: dynarec@dynarec.com Date: Fri, 30 Mar 2001 11:54:36 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Sorry... you won't find any Transmeta "sympathizers" on this list. We all > > hate 'em. > > And MAME and Java and Marat... :o) > Right, Neil forgot about those topics ;))). BTW, good luck with your project document. I think my own is going in a bad direction althought if my professor says is ok ... Well he must know more about project evaluations than me ;). > Cheers > Dave > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Apr 1 09:36:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA92064 for dynarec-outgoing; Sun, 1 Apr 2001 09:35:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002e01c0bacb$c1f7e4f0$0300a8c0@home.local> From: "Neil Griffiths" To: Subject: DYNAREC: Thumb Candy Date: Sun, 1 Apr 2001 17:48:51 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, Oops, forgot to select the account I'm using to normally post! I sent this last night... Neil. ----- Original Message ----- From: "Neil Griffiths" To: Sent: Saturday, March 31, 2001 11:56 PM Subject: Thumb Candy Hiya, Damn, I hope that someone on this list is recording a program on C4 right now called "Thumb Candy". Pretty interesting, it's about the first games and the people who wrote them - and why! I didn't know it was on, just turned the TV on for a bit of a break from my project work... It's interesting! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Apr 1 10:39:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA92135 for dynarec-outgoing; Sun, 1 Apr 2001 10:39:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 1 Apr 2001 18:48:45 +0100 (BST) From: J Brown X-Sender: brown@pani To: dynarec Subject: Re: DYNAREC: Thumb Candy In-Reply-To: <002e01c0bacb$c1f7e4f0$0300a8c0@home.local> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Sun, 1 Apr 2001, Neil Griffiths wrote: > Damn, I hope that someone on this list is recording a program on C4 right > now called "Thumb Candy". Pretty interesting, it's about the first games and > the people who wrote them - and why! > > I didn't know it was on, just turned the TV on for a bit of a break from my > project work... > > It's interesting! Any programme which starts with the presenter playing Space War on an emulator with the man who wrote it, and has Matthew Smith of Jet Set Willy fame in it is good in my book! (And he looked exactly like the spinning head on his home page, only *more* frazzled...) I don't have a VCR though :-/ Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Apr 1 13:55:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA92327 for dynarec-outgoing; Sun, 1 Apr 2001 13:55:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005f01c0baf2$2b57cc00$5da4fea9@burp> From: "Tom Browne" To: References: <002e01c0bacb$c1f7e4f0$0300a8c0@home.local> Subject: Re: DYNAREC: Thumb Candy Date: Sun, 1 Apr 2001 22:24:43 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Bugger! I wanted to watch that... was reading about it in Edge last month... :( - Tom. ----- Original Message ----- From: "Neil Griffiths" To: Sent: Sunday, April 01, 2001 5:48 PM Subject: DYNAREC: Thumb Candy > Hiya, > > Oops, forgot to select the account I'm using to normally post! I sent this > last night... > > Neil. > > ----- Original Message ----- > From: "Neil Griffiths" > To: > Sent: Saturday, March 31, 2001 11:56 PM > Subject: Thumb Candy > > > Hiya, > > Damn, I hope that someone on this list is recording a program on C4 right > now called "Thumb Candy". Pretty interesting, it's about the first games and > the people who wrote them - and why! > > I didn't know it was on, just turned the TV on for a bit of a break from my > project work... > > It's interesting! > > Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Apr 1 14:21:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA92367 for dynarec-outgoing; Sun, 1 Apr 2001 14:21:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006b01c0baf3$c3289590$0300a8c0@home.local> From: "Neil Griffiths" To: References: <002e01c0bacb$c1f7e4f0$0300a8c0@home.local> <005f01c0baf2$2b57cc00$5da4fea9@burp> Subject: Re: DYNAREC: Thumb Candy Date: Sun, 1 Apr 2001 22:35:49 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Then it's not going to impress you too much if I tell you it was an interesting program then, will it? I didn't realise it was on, it was just pure luck! Neil. ----- Original Message ----- From: "Tom Browne" To: Sent: Sunday, April 01, 2001 10:24 PM Subject: Re: DYNAREC: Thumb Candy > Bugger! I wanted to watch that... was reading about it in Edge last > month... :( > > - Tom. > > > ----- Original Message ----- > From: "Neil Griffiths" > To: > Sent: Sunday, April 01, 2001 5:48 PM > Subject: DYNAREC: Thumb Candy > > > > Hiya, > > > > Oops, forgot to select the account I'm using to normally post! I sent this > > last night... > > > > Neil. > > > > ----- Original Message ----- > > From: "Neil Griffiths" > > To: > > Sent: Saturday, March 31, 2001 11:56 PM > > Subject: Thumb Candy > > > > > > Hiya, > > > > Damn, I hope that someone on this list is recording a program on C4 right > > now called "Thumb Candy". Pretty interesting, it's about the first games > and > > the people who wrote them - and why! > > > > I didn't know it was on, just turned the TV on for a bit of a break from > my > > project work... > > > > It's interesting! > > > > Neil. > > > -------------------------------------------------------------------------- - > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Apr 1 14:27:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA92387 for dynarec-outgoing; Sun, 1 Apr 2001 14:27:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: primrose.csv.warwick.ac.uk: csuix owned process doing -bs Date: Sun, 1 Apr 2001 22:41:08 +0100 (BST) From: David Sharp To: Subject: Re: DYNAREC: Thumb Candy In-Reply-To: <006b01c0baf3$c3289590$0300a8c0@home.local> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Then it's not going to impress you too much if I tell you it was an > interesting program then, will it? > I didn't realise it was on, it was just pure luck! I stumbled across it too, saw the whole thing and was pretty impressed they'd managed to get access to all those groundbreaking programmers. Was also impressed by my own knowledge of video game history, I don't think there was a single game I didn't already know most of the origin of. I was particularly impressed by the origins of the name pac man though! :o) Sorry, no video. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Apr 2 02:16:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA93140 for dynarec-outgoing; Mon, 2 Apr 2001 02:16:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002101c0bb57$5267d820$3fb5c3c1@FOSSIL> From: "Kieron Wilkinson" To: References: Subject: Re: DYNAREC: Thumb Candy Date: Mon, 2 Apr 2001 10:28:48 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm trying to get somebody to digitise the video they made of the program (I missed it too). I'll tell you guys if I have any luck... Kieron ----- Original Message ----- From: "David Sharp" To: Sent: Sunday, April 01, 2001 10:41 PM Subject: Re: DYNAREC: Thumb Candy > > > Then it's not going to impress you too much if I tell you it was an > > interesting program then, will it? > > I didn't realise it was on, it was just pure luck! > > I stumbled across it too, saw the whole thing and was pretty impressed > they'd managed to get access to all those groundbreaking programmers. Was > also impressed by my own knowledge of video game history, I don't think > there was a single game I didn't already know most of the origin of. I > was particularly impressed by the origins of the name pac man though! :o) > > Sorry, no video. > > Cheers > Dave > > -------------------------------------------------------------------------- - > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Apr 6 13:44:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA98866 for dynarec-outgoing; Fri, 6 Apr 2001 13:39:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Vacation From: "M.I.K.e" Message-ID: <0003814c94b9b869_mailit@mail.dynarec.com> Date: Fri, 06 Apr 2001 23:00:42 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi guys, I'm going on vacation tomorrow, so I won't be available till April 22nd. I hope that there won't be too much traffic during the period that I'm still able to catch up when I'm back ;-) -- M.I.K.e "I don't think so," said Ren'e Descartes. Just then, he vanished. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Apr 7 09:09:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA02138 for dynarec-outgoing; Sat, 7 Apr 2001 09:09:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ac01c0bf7e$ba37fdb0$b32bfea9@daves> From: "David Sharp" To: Subject: DYNAREC: formulae Date: Sat, 7 Apr 2001 17:20:55 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com As part of my report I'm looking at the different ways of emulating the processor (in justifying what I've done). I'm trying to express the total cost of the three ways of emulating a chunk of code in terms of the following formulae: interpreting x * I jit (recompile everything - no interpreter) R + (x * C) hotspot (only recompile hotspots) (t * I) + R + ((x - t) * C) where: x - number of times chunk of code emulated t - number of times to be interpreted before recompiling I - cost of interpreting the chunk of code once R - cost of recompiling the chunk of code (assuming no adaptive recompilation) C - cost of calling the recompiled code (and it doing it's stuff) I'm then plotting a line graph of these formulae against the number of times the said chunk is executed, dividing each result by the number of times executed, in order to get the 'average cost of emulating a chunk' using each method for a given number of emulations. Obviously the three costs vary according to the length and complexity of the chunk being recompiled. So, 3 questions: 1) Does anyone see any problems with this or things I've missed? 2) Does anyone know of any published stats concerning how many times different pieces of code get executed in a program e.g. 20% of code gets executed once, 10% gets executed 2-5 times, etc. obviously very application specific? 3) Does anyone have any opinions (or better still data) on the cost of recompilation against interpreting against invoking recompiled code? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Apr 25 06:31:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA26861 for dynarec-outgoing; Wed, 25 Apr 2001 06:29:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00b801c0cd8e$0d515ce0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <00ac01c0bf7e$ba37fdb0$b32bfea9@daves> Subject: DYNAREC: For you UK people... Date: Wed, 25 Apr 2001 14:37:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, Any chance that anyone else is thinking of going to this? http://www.c64audio.com/bitlive/bitlive.htm It's basically a nightclub with retro-themes with loads of celebs from the 8-bit era. Even though I never had a C64 (I was a CPC guy), my friends did and I certainly know a lot of the people going (like Jeff Minter). Luckily for me, it falls right slap-bang on the day of my exam and my next exam is 7 days later, so I can afford to go. Just wondering if anyone else would be up for going? It would be cool to meet you if you do go! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 01:44:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA36428 for dynarec-outgoing; Tue, 1 May 2001 01:43:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c0d21d$038a1740$3fb5c3c1@FOSSIL> From: "Kieron Wilkinson" To: References: <00ac01c0bf7e$ba37fdb0$b32bfea9@daves> <00b801c0cd8e$0d515ce0$0100a8c0@home.local> Subject: DYNAREC: Thumb Candy (again) Date: Tue, 1 May 2001 09:59:21 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Well, after a lot of searching I have managed to get Thumb Candy! The one off UK Channel 4 programme about the origin of Video Games, with none other than that embassasement from The 11 o'clock show Mr. Ian Lee. But it is a very cool program, with interviews of the makers of Pong, Asteroids, Manic Miner (heh), Mario and then some crap about the playstation. :) It is 300Mb DivX in 3 parts... Problem is, where am I going to put it... Neal B's FTP? (actually I have only managed to get Part 1 so far (100Mb) but I should be getting each of the other parts each night from now...) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 05:48:48 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA36814 for dynarec-outgoing; Tue, 1 May 2001 05:48:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001a01c0d23f$80a5b550$0100a8c0@home.local> From: "Neil Griffiths" To: References: <00ac01c0bf7e$ba37fdb0$b32bfea9@daves> <00b801c0cd8e$0d515ce0$0100a8c0@home.local> <000b01c0d21d$038a1740$3fb5c3c1@FOSSIL> Subject: Re: DYNAREC: Thumb Candy (again) Date: Tue, 1 May 2001 13:56:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Well, after a lot of searching I have managed to get Thumb Candy! Cool! At first I thought you meant the image convolver, but now I know what you mean! > The one off UK Channel 4 programme about the origin of Video Games, with > none other than that embassasement from The 11 o'clock show Mr. Ian Lee. But > it is a very cool program, with interviews of the makers of Pong, Asteroids, > Manic Miner (heh), Mario and then some crap about the playstation. :) Yep. It was an interesting program, I'd like to see it again. > It is 300Mb DivX in 3 parts... ...bugger. :o > Problem is, where am I going to put it... Neal B's FTP? Oooh, I think both him and me should kick your arse for spelling the name wrong! ;) But then again, you know where to get the files, so maybe I won't. :) Well, I'm fairly certain that Neil said there was something like 2GB free originally, so I'd imagine there's space. But it's actually up to Neil to give his permission, so... > (actually I have only managed to get Part 1 so far (100Mb) but I should be > getting each of the other parts each night from now...) Where are you getting the files from, BTW? Neil. PS Neil... say "Yes, please upload!". ;) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 06:47:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA36868 for dynarec-outgoing; Tue, 1 May 2001 06:47:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c0d247$78eaf930$3fb5c3c1@FOSSIL> From: "Kieron Wilkinson" To: References: <00ac01c0bf7e$ba37fdb0$b32bfea9@daves> <00b801c0cd8e$0d515ce0$0100a8c0@home.local> <000b01c0d21d$038a1740$3fb5c3c1@FOSSIL> <001a01c0d23f$80a5b550$0100a8c0@home.local> Subject: Re: DYNAREC: Thumb Candy (again) Date: Tue, 1 May 2001 15:03:17 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Oooh, I think both him and me should kick your arse for spelling the name > wrong! ;) Oops! Actually I always spell Neil, "Neil". You know that Neil - It's just we have had a guy start work call Neal, who I work on things with... Sorry! :) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 06:50:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA36884 for dynarec-outgoing; Tue, 1 May 2001 06:50:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000f01c0d247$d816ae90$3fb5c3c1@FOSSIL> From: "Kieron Wilkinson" To: References: <00ac01c0bf7e$ba37fdb0$b32bfea9@daves> <00b801c0cd8e$0d515ce0$0100a8c0@home.local> <000b01c0d21d$038a1740$3fb5c3c1@FOSSIL> <001a01c0d23f$80a5b550$0100a8c0@home.local> Subject: Re: DYNAREC: Thumb Candy (again) Date: Tue, 1 May 2001 15:05:57 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Where are you getting the files from, BTW? Uploaded to me by the guy who captured it, but due to the fact that I would get my arse kicked, I can't allow public downloads... Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 08:57:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA36987 for dynarec-outgoing; Tue, 1 May 2001 08:57:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002301c0d259$cf2fea00$0100a8c0@home.local> From: "Neil Griffiths" To: References: <00ac01c0bf7e$ba37fdb0$b32bfea9@daves> <00b801c0cd8e$0d515ce0$0100a8c0@home.local> <000b01c0d21d$038a1740$3fb5c3c1@FOSSIL> <001a01c0d23f$80a5b550$0100a8c0@home.local> <000b01c0d247$78eaf930$3fb5c3c1@FOSSIL> Subject: Re: DYNAREC: Thumb Candy (again) Date: Tue, 1 May 2001 16:52:20 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Oops! Actually I always spell Neil, "Neil". You know that Neil - It's just > we have had a guy start work call Neal, who I work on things with... I'm just teasing anyway, Kearen. ;) Naah, it doesn't bother me. Well, not that much. Hell, my own Grandmother can't spell my name right, so (nope, I'm not joking about that one!)... Heheheh! Mind you, she often can't *remember* my name and I get called by many other names of people in my family. Although last week I was Jason - and I don't even KNOW anyone called Jason outside of Greek mythology, so... :) > Sorry! :) It's actually no problem! I just thought I'd reply and hopefully get the Dynarec mailing list actually doing something. Oh, and I'm sarcastic and I couldn't let something like that slide. Sorry! :) I'm in my final week here now, finishing off my project report. I have exams right up until May 24th, but then I'm finished. So, is anyone up for the 68k dynarec round about the beginning of June? It seems as if both Mike and myself will be working on a seperate emulation at the same time anyway, but I'm planning on taking a couple of months break before actually looking for a job - problem is that I'll be returning to Germany in July and going to America in September (my cousin's wedding) and I have a sneaking suspicion that employers will not be too impressed about that... So I'll just take a break and just do something fun - something I'm interested in! So, anyone up for it? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 08:57:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA36992 for dynarec-outgoing; Tue, 1 May 2001 08:57:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002401c0d259$d0dbc540$0100a8c0@home.local> From: "Neil Griffiths" To: References: <00ac01c0bf7e$ba37fdb0$b32bfea9@daves> <00b801c0cd8e$0d515ce0$0100a8c0@home.local> <000b01c0d21d$038a1740$3fb5c3c1@FOSSIL> <001a01c0d23f$80a5b550$0100a8c0@home.local> <000f01c0d247$d816ae90$3fb5c3c1@FOSSIL> Subject: Re: DYNAREC: Thumb Candy (again) Date: Tue, 1 May 2001 16:53:24 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > > Where are you getting the files from, BTW? > > Uploaded to me by the guy who captured it, but due to the fact that I would > get my arse kicked, I can't allow public downloads... That's no problem, I was just wondering. I figured it would be something like that as I'm sure you would have given us a URL if it was public. Are you also on a 56k modem? If so, that's going to take some time, isn't it? :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 11:10:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA37132 for dynarec-outgoing; Tue, 1 May 2001 11:10:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 1 May 2001 11:27:44 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <001a01c0d23f$80a5b550$0100a8c0@home.local> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Problem is, where am I going to put it... Neal B's FTP? > Oooh, I think both him and me should kick your arse for spelling the name > wrong! ;) Yes. Consider your ass kicked. > Well, I'm fairly certain that Neil said there was something like 2GB free > originally, so I'd imagine there's space. But it's actually up to Neil to > give his permission, so... Hell yes. There's 2.9gb free right now. Gotta fill it up with something! -->Neil ------------------------------------------------------------------------------- Neil Bradley Play a song wrong once and it's a mistake. Synthcom Systems, Inc. Play a song wrong twice and it's Jazz. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 11:22:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA37154 for dynarec-outgoing; Tue, 1 May 2001 11:22:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002901c0d26e$160b51d0$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Thumb Candy (again) Date: Tue, 1 May 2001 19:39:30 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Yes. Consider your ass kicked. I think he does. :) > Hell yes. There's 2.9gb free right now. Gotta fill it up with something! Cool. Kieron - get uploading! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 11:34:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA37176 for dynarec-outgoing; Tue, 1 May 2001 11:34:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 1 May 2001 11:51:21 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <002301c0d259$cf2fea00$0100a8c0@home.local> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Oops! Actually I always spell Neil, "Neil". You know that Neil - It's just > > we have had a guy start work call Neal, who I work on things with... > Naah, it doesn't bother me. It does me. ;-| I'm regularly amazed that the Neil/Neal ratio is 10:1, yet EVERYONE wants to spell it Neal. It's an archaic spelling. > > Sorry! :) > It seems as if both Mike and myself will be working on a seperate emulation I think you mean "both Mike and me". ;-) Never use a reflexive when it's the topic of conversation! Common grammar mistake... > Germany in July and going to America in September (my cousin's wedding) and > I have a sneaking suspicion that employers will not be too impressed about > that... So I'll just take a break and just do something fun - something I'm > interested in! So, anyone up for it? Absolutely! I was thinking about Dynarecing today quite a bit, actually, and I'm certainly up for it. We should probably spend the next month or two figuring how how we want to go about it and how we want to design it. Shall I start? -->Neil ------------------------------------------------------------------------------- Neil Bradley Play a song wrong once and it's a mistake. Synthcom Systems, Inc. Play a song wrong twice and it's Jazz. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 12:06:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA37221 for dynarec-outgoing; Tue, 1 May 2001 12:06:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003b01c0d274$36e524c0$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Thumb Candy (again) Date: Tue, 1 May 2001 20:23:23 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > It does me. ;-| I'm regularly amazed that the Neil/Neal ratio is 10:1, yet > EVERYONE wants to spell it Neal. It's an archaic spelling. It used to bother me, but I think that I'm getting used to it now! > I think you mean "both Mike and me". ;-) Never use a reflexive when it's > the topic of conversation! Common grammar mistake... Mein Englisch ist sehr gut, danke! ;) You're right, of course. It's just not something that I take much care about. In fact, I should have written "both Mike and I", but I didn't. D'oh! > Absolutely! I was thinking about Dynarecing today quite a bit, actually, > and I'm certainly up for it. Okay, that makes two of us then... Anyone else for anyone else? > We should probably spend the next month or two figuring how how we want to > go about it and how we want to design it. I agree, that would make sense. > Shall I start? Please do, you have more experience than myself (joke) with CPU cores and with your DRZ80K, you definitely know more than I do. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 13:43:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA37320 for dynarec-outgoing; Tue, 1 May 2001 13:43:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 1 May 2001 14:00:54 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <003b01c0d274$36e524c0$0100a8c0@home.local> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I think you mean "both Mike and me". ;-) Never use a reflexive when it's > > the topic of conversation! Common grammar mistake... > Mein Englisch ist sehr gut, danke! ;) Heh. > You're right, of course. It's just not something that I take much care > about. In fact, I should have written "both Mike and I", but I didn't. D'oh! Yeah, in that case, Mike and I would've been correct. > > Shall I start? > Please do, you have more experience than myself (joke) with CPU cores and > with your DRZ80K, you definitely know more than I do. Okay - message to follow this one. -->Neil ------------------------------------------------------------------------------- Neil Bradley Play a song wrong once and it's a mistake. Synthcom Systems, Inc. Play a song wrong twice and it's Jazz. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 14:32:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37376 for dynarec-outgoing; Tue, 1 May 2001 14:32:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Thumb Candy (again) From: "M.I.K.e" Message-ID: <00038344425c8f9c_mailit@mail.dynarec.com> References: Date: Tue, 01 May 2001 23:55:24 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Mein Englisch ist sehr gut, danke! ;) >Heh. He wrote "My English is very good, thanks!" in perfect German - congrats NG! >Yeah, in that case, Mike and I would've been correct. I thought that both "Mike and I" and "Mike and me" was correct. BTW, some guy on Usenet claims: "Fact: The 80186 WAS made for DOS. DOS was made with the 80186 in mind." Sounds weird to me! What do you think? >-->Neil -- M.I.K.e TAURUS (Apr 20 - May 20) You are practical and persistent. You have a dogged determination and work like hell. Most people think you are stubborn and bull headed. You are a Communist. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 14:41:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37396 for dynarec-outgoing; Tue, 1 May 2001 14:41:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 1 May 2001 14:58:19 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <00038344425c8f9c_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Yeah, in that case, Mike and I would've been correct. > I thought that both "Mike and I" and "Mike and me" was correct. In that sentence, it wouldn't have been. "It seems as if both Mike and I will be working on a seperate emulation..." It boils down to "Mike will be working on..." and "I will be working on..." Whenever there's a question as to whether it's "I" or "Me", just take the sentence apart: "That's a picture of Bob and me." That's a picture of Bob, that's a picture of me. Sounds right! That's a picture of Bob, that's a picture of I. Not right! The only time "myself" is valid grammar is when *YOU* are the topic. In the sentence above, the topic is "emulation", not Mike or "I". > BTW, some guy on Usenet claims: > "Fact: The 80186 WAS made for DOS. DOS was made with the 80186 in mind." > Sounds weird to me! What do you think? It's weird because it's wrong. The 8086/8088 predated it by at least 3 years and MS-DOS was originally QDOS - a CP/M clone - which originated before the 186. The 186 had additional stuff on it like timers and DMA. It was really designed to be an embedded 8086. Considering DOS used neither the DMA controllers on-chip nor the timers, I'd be hard pressed to agree with his assertion. -->Neil ------------------------------------------------------------------------------- Neil Bradley Play a song wrong once and it's a mistake. Synthcom Systems, Inc. Play a song wrong twice and it's Jazz. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 14:41:48 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37406 for dynarec-outgoing; Tue, 1 May 2001 14:41:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 1 May 2001 14:59:05 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <00038344425c8f9c_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > TAURUS (Apr 20 - May 20) > You are practical and persistent. You have a dogged > determination and work like hell. Most people think you are > stubborn and bull headed. You are a Communist. That would be me. ;-) My birthday is Sunday. -->Neil ------------------------------------------------------------------------------- Neil Bradley Play a song wrong once and it's a mistake. Synthcom Systems, Inc. Play a song wrong twice and it's Jazz. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 14:49:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37420 for dynarec-outgoing; Tue, 1 May 2001 14:49:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006901c0d28b$11a902f0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <00038344425c8f9c_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Thumb Candy (again) Date: Tue, 1 May 2001 23:06:49 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > He wrote "My English is very good, thanks!" in perfect German - congrats NG! Thanks! I do try... ;) It must be those German songs you sent me. ;) > >Yeah, in that case, Mike and I would've been correct. > > I thought that both "Mike and I" and "Mike and me" was correct. It's tough to explain, but Neil was right... > BTW, some guy on Usenet claims: > "Fact: The 80186 WAS made for DOS. DOS was made with the 80186 in mind." > Sounds weird to me! What do you think? That's wrong - MS-DOS was available for the 8086 anyway! I remember using the IBM 1512 machine based around the 8086 and the 80186 certainly was later than that. It pre-dated the 286, but never took off. Don't know why... > TAURUS (Apr 20 - May 20) > You are practical and persistent. You have a dogged > determination and work like hell. Most people think you are > stubborn and bull headed. You are a Communist. My Sister's a Taurus, but that's not her! :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 14:58:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37440 for dynarec-outgoing; Tue, 1 May 2001 14:58:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Thumb Candy (again) From: "M.I.K.e" Message-ID: <0003834497968ff3_mailit@mail.dynarec.com> References: Date: Wed, 02 May 2001 00:19:14 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> TAURUS (Apr 20 - May 20) >> You are practical and persistent. You have a dogged >> determination and work like hell. Most people think you are >> stubborn and bull headed. You are a Communist. > >That would be me. ;-) My birthday is Sunday. And me as well! Mine is on Monday ;-) >-->Neil -- M.I.K.e "You can't teach people to be lazy - either they have it, or they don't." -- Dagwood Bumstead --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 14:58:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA37448 for dynarec-outgoing; Tue, 1 May 2001 14:58:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Thumb Candy (again) From: "M.I.K.e" Message-ID: <00038344a25f0e49_mailit@mail.dynarec.com> References: Date: Wed, 02 May 2001 00:22:15 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> I thought that both "Mike and I" and "Mike and me" was correct. >In that sentence, it wouldn't have been. [snip] Nice explanation, thanks! >It's weird because it's wrong. The 8086/8088 predated it by at least 3 >years and MS-DOS was originally QDOS - a CP/M clone - which originated >before the 186. I know, but I wanted to have your thoughts on that topic. >The 186 had additional stuff on it like timers and DMA. It was really >designed to be an embedded 8086. That's what I read as well. >Considering DOS used neither the DMA >controllers on-chip nor the timers, I'd be hard pressed to agree with his >assertion. Well, that guy seems to think of himself as a half-god anyway and calls me a troll... >-->Neil -- M.I.K.e Song Title of the Week: "They're putting dimes in the hole in my head to see the change in me." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 15:08:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA37469 for dynarec-outgoing; Tue, 1 May 2001 15:08:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 1 May 2001 15:25:33 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <00038344a25f0e49_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Considering DOS used neither the DMA > >controllers on-chip nor the timers, I'd be hard pressed to agree with his > >assertion. > Well, that guy seems to think of himself as a half-god anyway and calls me a > troll... Which newsgroup? What thread? I'd like to take a look... -->Neil ------------------------------------------------------------------------------- Neil Bradley Play a song wrong once and it's a mistake. Synthcom Systems, Inc. Play a song wrong twice and it's Jazz. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 15:15:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA37488 for dynarec-outgoing; Tue, 1 May 2001 15:15:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00b101c0d28e$b0d98bd0$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Thumb Candy (again) Date: Tue, 1 May 2001 23:32:55 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Which newsgroup? What thread? I'd like to take a look... Me too, actually. Knowing Mike, I bet it's alt.os.beos - but I wouldn't know which thread. Mike? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 15:15:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA37498 for dynarec-outgoing; Tue, 1 May 2001 15:15:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <200105012231.XAA24349@inputplus.demon.co.uk> To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: Message from Neil Bradley of "Tue, 01 May 2001 15:25:33 PDT." Date: Tue, 01 May 2001 23:31:32 +0100 From: Ralph Corderoy Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi girls, > > >Considering DOS used neither the DMA controllers on-chip nor the > > >timers, I'd be hard pressed to agree with his assertion. > > Well, that guy seems to think of himself as a half-god anyway and > > calls me a troll... > > Which newsgroup? What thread? I'd like to take a look... Is this the mailing list for discussion about dynarecs? Ralph. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 15:17:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA37508 for dynarec-outgoing; Tue, 1 May 2001 15:17:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 1 May 2001 15:35:16 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <200105012231.XAA24349@inputplus.demon.co.uk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Well, that guy seems to think of himself as a half-god anyway and > > > calls me a troll... > > Which newsgroup? What thread? I'd like to take a look... > Is this the mailing list for discussion about dynarecs? Yeah. And 50000 other loosely related things, and a few completely off topic rants. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Play a song wrong once and it's a mistake. Synthcom Systems, Inc. Play a song wrong twice and it's Jazz. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 15:23:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA37523 for dynarec-outgoing; Tue, 1 May 2001 15:23:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Thumb Candy (again) From: "M.I.K.e" Message-ID: <00038344fe173f84_mailit@mail.dynarec.com> References: <200105012231.XAA24349@inputplus.demon.co.uk> Date: Wed, 02 May 2001 00:47:54 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Hi girls, I didn't know that I had the sex change already ;-) >Is this the mailing list for discussion about dynarecs? More or less ;-) >Ralph. -- M.I.K.e Any clod can have the facts, but having opinions is an art. -- Charles McCabe --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 15:23:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA37531 for dynarec-outgoing; Tue, 1 May 2001 15:23:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Thumb Candy (again) From: "M.I.K.e" Message-ID: <00038344f4e07fcc_mailit@mail.dynarec.com> References: <00b101c0d28e$b0d98bd0$0100a8c0@home.local> Date: Wed, 02 May 2001 00:45:19 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Which newsgroup? What thread? I'd like to take a look... >Me too, actually. Knowing Mike, I bet it's alt.os.beos - but I wouldn't know >which thread. Mike? Man, you *do* know me too well! It *is* "alt.os.beos", the thread is "Why BeOS is gonna fail..." and that self-acclaimed half-god is named "Joe Bloe". >Neil. -- M.I.K.e "I found out why my car was humming. It had forgotten the words." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 15:52:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA37588 for dynarec-outgoing; Tue, 1 May 2001 15:52:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ef01c0d293$dc1dcd60$0100a8c0@home.local> From: "Neil Griffiths" To: References: <200105012231.XAA24349@inputplus.demon.co.uk> Subject: Re: DYNAREC: Thumb Candy (again) Date: Wed, 2 May 2001 00:07:08 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Hi girls, Er... If I'm a girl, by god, I've got problems. I've got this strange growth down by my bikini-line and... ;) > Is this the mailing list for discussion about dynarecs? You're new here, aren't you? No, don't tell me - we can tell. ;)) We do discuss dynarecs and indeed have done on many occasions. But we're also crazy and go off on strange tangents. We put it down to genius, but it could be madness. It is, after all, a very thin line between the two. But don't worry, we will be getting onto Dynarec topics soon - we're just waiting for Neil B to get around to writing his part of the plan for our 68k dynarec. Have you got any topics you want to discuss at all, BTW? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 15:55:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA37599 for dynarec-outgoing; Tue, 1 May 2001 15:55:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00fb01c0d294$35236a00$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Thumb Candy (again) Date: Wed, 2 May 2001 00:11:18 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yeah. And 50000 other loosely related things, and a few completely off > topic rants. ;-) The list has been lonely for a number of days, we all have to help nurse it back to life... ;) Did we mention that we're kooky here? That's why we're interested in dynarec material. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 15:55:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA37611 for dynarec-outgoing; Tue, 1 May 2001 15:55:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00fc01c0d294$36c31040$0100a8c0@home.local> From: "Neil Griffiths" To: References: <200105012231.XAA24349@inputplus.demon.co.uk> <00038344fe173f84_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Thumb Candy (again) Date: Wed, 2 May 2001 00:12:02 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I didn't know that I had the sex change already ;-) You didn't tell me you were going at it at all, Michelle! ;) > >Is this the mailing list for discussion about dynarecs? > > More or less ;-) Let's be fair here... Less. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 16:07:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA37634 for dynarec-outgoing; Tue, 1 May 2001 16:07:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004a01c0d295$616ae790$b32bfea9@daves> From: "David Sharp" To: References: <00fb01c0d294$35236a00$0100a8c0@home.local> Subject: DYNAREC: you've all woken up just in time.... Date: Wed, 2 May 2001 00:20:57 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ...I've finished my project report tonight, finally, having spent the last 5 weeks solid churning it out. It's a bit of a behemoth but once I've got it submitted tomorrow I'll see what I can do about PDFing it and sticking it online somewhere (can I have an account on dynarec.com NB?) so you can all throw abuse in my general direction. There's still a lot of work that needs doing to Tarmac before it does anything useful and I think I've discovered the same fundamental truth that Julian did - it's all a bit nasty really. However, it does do some fairly clever stuff and time permitting I'd like to do some more work on it and get something useful out. If only to be able to do some speed tests and finally work out whats better static/dynamic reg allocation, more/less optimisations etc. etc. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 16:08:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA37644 for dynarec-outgoing; Tue, 1 May 2001 16:08:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 1 May 2001 16:26:08 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: you've all woken up just in time.... In-Reply-To: <004a01c0d295$616ae790$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > ...I've finished my project report tonight, finally, having spent the last 5 > weeks solid churning it out. It's a bit of a behemoth but once I've got it > submitted tomorrow I'll see what I can do about PDFing it and sticking it > online somewhere (can I have an account on dynarec.com NB?) so you can all > throw abuse in my general direction. Sure! What do you want your login to be? > There's still a lot of work that needs doing to Tarmac before it does > anything useful and I think I've discovered the same fundamental truth that > Julian did - it's all a bit nasty really. However, it does do some fairly > clever stuff and time permitting I'd like to do some more work on it and get > something useful out. If only to be able to do some speed tests and finally > work out whats better static/dynamic reg allocation, more/less optimisations > etc. etc. Refresh my memory... were you doing ARM -> x86? -->Neil ------------------------------------------------------------------------------- Neil Bradley Play a song wrong once and it's a mistake. Synthcom Systems, Inc. Play a song wrong twice and it's Jazz. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 16:29:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA37670 for dynarec-outgoing; Tue, 1 May 2001 16:29:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007801c0d298$807e80d0$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: you've all woken up just in time.... Date: Wed, 2 May 2001 00:43:18 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Sure! What do you want your login to be? "dave" would be great! > Refresh my memory... were you doing ARM -> x86? oh yeah Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 16:35:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA37689 for dynarec-outgoing; Tue, 1 May 2001 16:35:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <01d501c0d299$ea6746c0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <00fb01c0d294$35236a00$0100a8c0@home.local> <004a01c0d295$616ae790$b32bfea9@daves> Subject: Re: DYNAREC: you've all woken up just in time.... Date: Wed, 2 May 2001 00:53:12 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > ...I've finished my project report tonight, finally, having spent the last 5 > weeks solid churning it out. It's a bit of a behemoth but once I've got it > submitted tomorrow I'll see what I can do about PDFing it and sticking it > online somewhere (can I have an account on dynarec.com NB?) so you can all > throw abuse in my general direction. You bugger, for finishing yours before mine. :P I'm finishing it tomorrow, just need to add some finishing touches. When's yours got to be in by? Friday? If so, same as me... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 16:39:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA37700 for dynarec-outgoing; Tue, 1 May 2001 16:39:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008501c0d299$cc5055a0$b32bfea9@daves> From: "David Sharp" To: References: <00fb01c0d294$35236a00$0100a8c0@home.local> <004a01c0d295$616ae790$b32bfea9@daves> <01d501c0d299$ea6746c0$0100a8c0@home.local> Subject: Re: DYNAREC: you've all woken up just in time.... Date: Wed, 2 May 2001 00:52:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You bugger, for finishing yours before mine. :P :) > I'm finishing it tomorrow, just need to add some finishing touches. When's > yours got to be in by? Friday? If so, same as me... Noon Thursday. Not much of a celebration though, finals are a bit too close for comfort... Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 16:43:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA37715 for dynarec-outgoing; Tue, 1 May 2001 16:43:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <01dd01c0d29b$09652000$0100a8c0@home.local> From: "Neil Griffiths" To: References: <00fb01c0d294$35236a00$0100a8c0@home.local> <004a01c0d295$616ae790$b32bfea9@daves> <01d501c0d299$ea6746c0$0100a8c0@home.local> <008501c0d299$cc5055a0$b32bfea9@daves> Subject: Re: DYNAREC: you've all woken up just in time.... Date: Wed, 2 May 2001 01:01:15 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > You bugger, for finishing yours before mine. :P > > :) Out of interest, how many people have done web-based projects? There's many people here getting away with doing simple webpages with ASP back-ends as their final year project - that's not on! I've struggled like hell to finish mine and I could do theirs in a day! > > I'm finishing it tomorrow, just need to add some finishing touches. When's > > yours got to be in by? Friday? If so, same as me... > > Noon Thursday. Not much of a celebration though, finals are a bit too close > for comfort... Same here. :( I take it that no-one is up for Birmingham (the C64 night) then? :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 16:50:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA37732 for dynarec-outgoing; Tue, 1 May 2001 16:50:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00a401c0d29b$64c99430$b32bfea9@daves> From: "David Sharp" To: References: <00fb01c0d294$35236a00$0100a8c0@home.local> <004a01c0d295$616ae790$b32bfea9@daves> <01d501c0d299$ea6746c0$0100a8c0@home.local> <008501c0d299$cc5055a0$b32bfea9@daves> <01dd01c0d29b$09652000$0100a8c0@home.local> Subject: Re: DYNAREC: you've all woken up just in time.... Date: Wed, 2 May 2001 01:04:00 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Out of interest, how many people have done web-based projects? There's many > people here getting away with doing simple webpages with ASP back-ends as > their final year project - that's not on! I've struggled like hell to finish > mine and I could do theirs in a day! There are a few doing things like that but not very many at all. One of my mates did a 20-odd thousand word discussion of CGI vs JSP vs Enterprise Java with some code examples. But by and large they've been fairly tricky things: an algorithm animation language (pretty damned good too), a concurrent programming toolkit (supposedly quite nifty). Actually you can see the list of titles http://www.dcs.warwick.ac.uk/~sgm/projects/students00/cs.html What's your project neil? > I take it that no-one is up for Birmingham (the C64 night) then? :)) Err, nope. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 16:59:48 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA37747 for dynarec-outgoing; Tue, 1 May 2001 16:59:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <01f401c0d29d$3c3a8360$0100a8c0@home.local> From: "Neil Griffiths" To: References: <00fb01c0d294$35236a00$0100a8c0@home.local> <004a01c0d295$616ae790$b32bfea9@daves> <01d501c0d299$ea6746c0$0100a8c0@home.local> <008501c0d299$cc5055a0$b32bfea9@daves> <01dd01c0d29b$09652000$0100a8c0@home.local> <00a401c0d29b$64c99430$b32bfea9@daves> Subject: Re: DYNAREC: you've all woken up just in time.... Date: Wed, 2 May 2001 01:16:02 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, Your projects don't sound so bad. Perhaps it's just the people I know, but I'm not impressed that their projects were authorised... > What's your project neil? A simple games programming language. Except that I couldn't create a full language, so I cheat by outputting C++ code instead. Whatever, it works... just about. When I finish the report tomorrow (and I will, I have to get it bound!), I'll spend Thursday making sure it actually works properly before handing it in properly on Friday... > > I take it that no-one is up for Birmingham (the C64 night) then? :)) > > Err, nope. I will, I simply have to. Luckily enough, it's on May 16th - the day of one of my exams. My next exam is on the 22nd, so I can go to it. But any club that has 8-bit programming guys coming along for the night with remixed C64 tunes is certainly worth a gander at... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 17:06:27 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA37767 for dynarec-outgoing; Tue, 1 May 2001 17:06:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 27 Mar 1959 12:07:01 -0600 (CST) From: Graham Toal Message-Id: <195903271807.MAA15394@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I've waited with bated breath all day for this upload, on account of Texas not getting a very good signal for CH4 and this being the only way I can view what sounds like a good program. Either the delay is due to a 56K modem somewhere in the loop, as suggested, or cold feet on the part of anyone publishing the URL of a bootlegged program on what is a relatively public forum. So if the latter, please email me the address privately as I'm desperate to see this proggie! G (ex-pat) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 17:13:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA37783 for dynarec-outgoing; Tue, 1 May 2001 17:13:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <020301c0d29f$1b5719e0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <195903271807.MAA15394@gtoal.com> Subject: Re: DYNAREC: Thumb Candy (again) Date: Wed, 2 May 2001 01:30:11 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've waited with bated breath all day for this upload, on account of > Texas not getting a very good signal for CH4 and this being the only > way I can view what sounds like a good program. Either the delay is > due to a 56K modem somewhere in the loop, as suggested, or cold feet > on the part of anyone publishing the URL of a bootlegged program on > what is a relatively public forum. Texas can pick up CH4? That's impressive! Do you have to pay for that (which would be ironic) or something? > So if the latter, please email me the address privately as I'm desperate > to see this proggie! Don't worry, Kieron is going to upload it to Dynarec.com. Aren't you Kieron? *nods head frantically* :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 17:22:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA37801 for dynarec-outgoing; Tue, 1 May 2001 17:22:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 27 Mar 1959 12:23:10 -0600 (CST) From: Graham Toal Message-Id: <195903271823.MAA15432@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: you've all woken up just in time.... Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I was following Dave's link to his classmate's projects and found this one which I think is rather interesting: http://www.davos.co.uk/cgi-bin/cgiwrap/davos/nescafe.pl G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 1 23:19:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA38109 for dynarec-outgoing; Tue, 1 May 2001 23:18:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ed01c0d2d1$e6567f00$40984ed4@menta.net> From: "Victor Moya del Barrio" To: References: <00fb01c0d294$35236a00$0100a8c0@home.local> <004a01c0d295$616ae790$b32bfea9@daves> Subject: Re: DYNAREC: you've all woken up just in time.... Date: Wed, 2 May 2001 08:34:10 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Twenty seven new mails in the dynarec list since last night ... I think I have seen this situation before. So the list seems to be active again and I'm the last to post, hehehe! : ) > ...I've finished my project report tonight, finally, having spent the last 5 > weeks solid churning it out. It's a bit of a behemoth but once I've got it > submitted tomorrow I'll see what I can do about PDFing it and sticking it > online somewhere (can I have an account on dynarec.com NB?) so you can all > throw abuse in my general direction. > I knew you would finish before me (I'm too lazy and slow). You can try to read (I don't recommend it) my 'draft' (or whatever) inn a unchecked very bad english and without any picture at my page. And sure plenty of errors ... let see if I start the graphic and sound part and I close it (or I just skip this part and I close it anyway :)). www.dynarec.com/~victor/docs/EmuProgStudy.zip > There's still a lot of work that needs doing to Tarmac before it does > anything useful and I think I've discovered the same fundamental truth that > Julian did - it's all a bit nasty really. However, it does do some fairly > clever stuff and time permitting I'd like to do some more work on it and get > something useful out. If only to be able to do some speed tests and finally > work out whats better static/dynamic reg allocation, more/less optimisations > etc. etc. > I added a small reference to you project, so now I will have to update to a full reference as you have already finished it ;). > Cheers > Dave > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 00:10:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA38170 for dynarec-outgoing; Wed, 2 May 2001 00:10:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 00:27:42 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Dynarec - the first testament Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Okay, so here's the "layout" and direction I think we should go with the project. The goal here is to solicit input and figure out the best way for us all to proceed. Some initial thoughts about project "management" that I'd first like to put out for everyone to chew on: * I'd like to treat this as a professional product. Not as a hack & slash little toy as we've come to know (but not necessarily love) in so many freeware "products". This includes documentation and plenty of comments throughout the code. * Decide on a coding standard and stick to it. Looking over a massive kludge of a project like MAME and seeing 5000 styles all merged together just makes my skin crawl. Plus, it makes it tougher to debug. Having a consistent coding methodology allows the reader to get used to one style and know what to expect elsewhere. * Figure out how integration and source code coordination will be handled. * Make it publicly available, source and all, under the BSD license (not the GNU license - too restrictive). * Make a list of technical requirements for the dynarec. ----------------- With all the above in mind, here are my recommendations: * Requirements list for the dynarec: + Generate the fastest executing code possible + Be extensible to other source and targer processors + Provide source and target level optimization + Work with any standard stack based or register based calling convention compiler + Provide both lax and tight timing + Optionally allow passing in of "hints" to the Dynarec from the client API to change its optimization behavior, but still generate optimal code regardless. + Leverage existing CPU emulator core APIs (Starscream, MZ80, etc...) to allow simple porting/integration when it's released. + Leverage existing CPU emulator cores for comparisons to ensure that recompiled code generated actually executes properly - timing, operation, and flag. + Provide target processor libraries for generating binary output. As an example, an x86 opcode generator library would emit x86 opcodes that may be used by many target layers. + Optionally optimize by doing a depth traversal on the call tree. This will eliminate jump lookups. + Allow recompilation of more than one instance of a CPU + Write it in C (no need to make it unnecessarily complex or slower) + Provide fundamental routines (such as opcode node allocation/deallocation) for the target and source layers + Implement a disassembler API for each target and source CPU supported + Provide "kernel" based logging of disassemblies and progress so we can debug this thing. It'll be a bear to debug. * We need someone to work on documentation for this puppy. I'm really not up to it due to the fact that I'm doing nothing but writing documentation elsewhere. Anyone up for doing a little 50/50 work? * Coordination - I'd happily nominate myself as a source code coordinator. This is part of what I do at work and can turn things around quickly/accurately. * What are our initial source and target layers? I recommend 68K source and x86 target. * What should we use as our Guinea pig to execute the recompiled code? In the past I had recommended Food Fight because of its simplicity. Any other recommendations or objections? Remember that we don't want to kill ourselves with a platform that we don't understand. Food Fight is well documented, it's simple to teach, plus I know it. ;-) * What platforms/OSes should we initially develop under? I'd recommend at lesat one of the following: gnu C (Linux, BeOS, whatever), MSVC (as much as we all loathe MS, there WILL be Windows developers interested) * A debugger is HIGHLY desirable in this case. Being able to step through code in source form (object form maybe not, I'm certainly not up for writing a virtual machine nor emulating something natively present in any debugger) in a nice environment will make debugging quite a bit easier. Throughout all of this, I want everyone to keep in mind that the code is the boss - not any one of us, and that any decision made about the source should be that of consensus and not one of dictatorship. AFter all, we're all here to learn and venture in to uncharted territory. ;-) Comments? Once we figure out WHAT we then can figure out HOW... -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 00:21:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA38186 for dynarec-outgoing; Wed, 2 May 2001 00:20:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001401c0d2da$2cab9640$b32bfea9@daves> From: "David Sharp" To: References: <195903271823.MAA15432@gtoal.com> Subject: Re: DYNAREC: you've all woken up just in time.... Date: Wed, 2 May 2001 08:33:24 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Oh yeah, I know about that one. The guys done well to get it to work so well, however, it is just a NES emulator and he had to run it on a souped-up JVM to get any speed out of it. That said, I'm planning (if I get time) to experiment with adding a threaded interpreter to it to see if it speeds it up once he opens the source code. I wasn't too happy about him doing that as a project, mainly on the basis that I felt it was too simple an emulation for a project and partly on the basis that I was breaking my balls on a dynarec and he was doing something that I could probably have rolled off fairly quickly. Still, I would have felt like a fraud doing a pure interpreting emulator. All that said, NESCafe's fairly impressive so take a look. Cheers Dave > I was following Dave's link to his classmate's projects and found this > one which I think is rather interesting: > > http://www.davos.co.uk/cgi-bin/cgiwrap/davos/nescafe.pl > > G > -------------------------------------------------------------------------- - > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 00:31:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA38205 for dynarec-outgoing; Wed, 2 May 2001 00:31:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002101c0d2dc$21aabe90$3fb5c3c1@FOSSIL> From: "Kieron Wilkinson" To: References: <002901c0d26e$160b51d0$0100a8c0@home.local> Subject: Re: DYNAREC: Thumb Candy (again) Date: Wed, 2 May 2001 08:47:26 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hell yes. There's 2.9gb free right now. Gotta fill it up with something! I'll start up'ing the first part now - still haven't got the next two yet... :( Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 00:33:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA38216 for dynarec-outgoing; Wed, 2 May 2001 00:33:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001d01c0d2dc$04d57530$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: Dynarec - the first testament Date: Wed, 2 May 2001 08:46:37 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > + Generate the fastest executing code possible You have to be careful that the trade off between optimisation time and generated code quality doesn't get you. Some of my sums seemed to show that you might be better off doing hardly any optimisation since you're unlikely to recoup the benefit (i've ignored this in my project so as to make it more interesting and because I basically don't trust the sums). Can I recommend that any optimisation which does practically any work at all, be optional when building the dynarec in order that we can experiment once the system is running real code and we can get some speed stats. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 00:37:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA38228 for dynarec-outgoing; Wed, 2 May 2001 00:37:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 00:54:58 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <001d01c0d2dc$04d57530$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > + Generate the fastest executing code possible > You have to be careful that the trade off between optimisation time and > generated code quality doesn't get you. Some of my sums seemed to show that > you might be better off doing hardly any optimisation since you're unlikely > to recoup the benefit (i've ignored this in my project so as to make it more > interesting and because I basically don't trust the sums). Can I recommend > that any optimisation which does practically any work at all, be optional > when building the dynarec in order that we can experiment once the system is > running real code and we can get some speed stats. That's implied, but wasn't very clear. The + also indicates the ULTIMATE goal. Of course when we're starting out, we won't code up all the optimizations in, but at the same time we need to keep hardcore optimizations in mind when designing so we don't paint ourselves into a corner. And optimization will certainly recoup the benefit... Always. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 00:55:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA38252 for dynarec-outgoing; Wed, 2 May 2001 00:55:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105020810.KAA01325@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: "from Neil Bradley at May 2, 2001 00:54:58 am" To: dynarec@dynarec.com Date: Wed, 2 May 2001 10:10:52 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > + Generate the fastest executing code possible > > You have to be careful that the trade off between optimisation time and > > generated code quality doesn't get you. Some of my sums seemed to show that > > you might be better off doing hardly any optimisation since you're unlikely > > to recoup the benefit (i've ignored this in my project so as to make it more > > interesting and because I basically don't trust the sums). Can I recommend > > that any optimisation which does practically any work at all, be optional > > when building the dynarec in order that we can experiment once the system is > > running real code and we can get some speed stats. > > That's implied, but wasn't very clear. The + also indicates the ULTIMATE > goal. Of course when we're starting out, we won't code up all the > optimizations in, but at the same time we need to keep hardcore > optimizations in mind when designing so we don't paint ourselves into a > corner. > > And optimization will certainly recoup the benefit... Always. > An optimization would not have benefit if it is executed just once and the time performing the optimization is bigger than the benefit from one execution of the optimization. Most of the 'serious' projects about dynamic translation work with different levels of optimizations and perform retranslations (or reoptimizations of the more executed blocks of code). In fact the first execution uses to be through an interpreter ;). > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 01:01:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA38271 for dynarec-outgoing; Wed, 2 May 2001 01:01:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 01:18:39 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <200105020810.KAA01325@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > And optimization will certainly recoup the benefit... Always. > An optimization would not have benefit if it is executed just once > and the time performing the optimization is bigger than the benefit > from one execution of the optimization. Then it won't really matter, will it? The amount of time to execute a single block of code vs. the recompilation is miniscule. I have a feeling we've been down this path before... recompilation doesn't take much time at all - certainly not noticeable if the code is only executed once. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 01:12:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA38289 for dynarec-outgoing; Wed, 2 May 2001 01:12:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105020828.KAA02476@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: "from Neil Bradley at May 2, 2001 00:27:42 am" To: dynarec@dynarec.com Date: Wed, 2 May 2001 10:28:05 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > * I'd like to treat this as a professional product. Not as a hack & slash > little toy as we've come to know (but not necessarily love) in so many > freeware "products". This includes documentation and plenty of comments > throughout the code. > This would be nice. I would also find interesting that it could introduce a methodology for building dynarecs for any source and target. And perhaps a small toolset to enhance the process of implementing new dynarecs. > * Decide on a coding standard and stick to it. Looking over a massive > kludge of a project like MAME and seeing 5000 styles all merged together > just makes my skin crawl. Plus, it makes it tougher to debug. Having a > consistent coding methodology allows the reader to get used to one style > and know what to expect elsewhere. > This will have to be decided. What do you mean a coding standard? Alignaments, variable and function names convention, etc? > * Figure out how integration and source code coordination will be handled. > CVS? At hand? > * Make it publicly available, source and all, under the BSD license (not > the GNU license - too restrictive). > I don't have an opinion here ... as long as nobody uses it for its own comercial purpose it is fine to me ;). If it uses it I will just blame it though :)). > * Make a list of technical requirements for the dynarec. > > ----------------- > > With all the above in mind, here are my recommendations: > > * Requirements list for the dynarec: > > + Generate the fastest executing code possible This reminds me something about optimizers in compiler theory. There is demonstration that for an existant code optimizer it will always exist a better code optimizer ;). So the 'perfect' optimizer doesn not exist. > + Allow recompilation of more than one instance of a CPU This just means to have separata context (and in the context the pointer to the translation cache and transmap). > + Write it in C (no need to make it unnecessarily complex or slower) Damn! Why not in Java? ;))). > * We need someone to work on documentation for this puppy. I'm really not > up to it due to the fact that I'm doing nothing but writing documentation > elsewhere. Anyone up for doing a little 50/50 work? > I would advice to fnnd someone with a better english than me ;). So if someone is interested I will forget about my dynarec list official documentator title(in any case i haven't done anything) :). I think that was an old story/post :)). > * Coordination - I'd happily nominate myself as a source code > coordinator. This is part of what I do at work and can turn things around > quickly/accurately. > Who else could be? It is your idea and you are the best prepared for this work. If it was democratic you would have my vote. > * What are our initial source and target layers? I recommend 68K source > and x86 target. > Fine. I'm interested also in complet the Z80 one (just Z80 love mania). What about a x86 to x86 someday? :). > * What platforms/OSes should we initially develop under? I'd recommend at > lesat one of the following: gnu C (Linux, BeOS, whatever), MSVC (as much > as we all loathe MS, there WILL be Windows developers interested) > I will go for MSVC because my Linux partition is dead ... > Throughout all of this, I want everyone to keep in mind that the code is > the boss - not any one of us, and that any decision made about the source > should be that of consensus and not one of dictatorship. AFter all, we're > all here to learn and venture in to uncharted territory. ;-) > Beware the barbarians ... > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 01:14:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA38299 for dynarec-outgoing; Wed, 2 May 2001 01:14:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105020830.KAA02730@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: "from Neil Bradley at May 2, 2001 01:18:39 am" To: dynarec@dynarec.com Date: Wed, 2 May 2001 10:30:00 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > And optimization will certainly recoup the benefit... Always. > > An optimization would not have benefit if it is executed just once > > and the time performing the optimization is bigger than the benefit > > from one execution of the optimization. > > Then it won't really matter, will it? The amount of time to execute a > single block of code vs. the recompilation is miniscule. > > I have a feeling we've been down this path before... recompilation doesn't > take much time at all - certainly not noticeable if the code is only > executed once. > Recompilation or translation perhaps does not take so much time. Somekind of optimizations will take it. > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 01:44:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA38355 for dynarec-outgoing; Wed, 2 May 2001 01:43:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <200105020858.JAA03351@inputplus.demon.co.uk> To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: Message from "Neil Griffiths" of "Wed, 02 May 2001 00:07:08 BST." <00ef01c0d293$dc1dcd60$0100a8c0@home.local> Date: Wed, 02 May 2001 09:58:49 +0100 From: Ralph Corderoy Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Have you got any topics you want to discuss at all, BTW? Not really. I was hoping for a comp.compilers with a dynarec twist. If you're looking at a new project you might be interested in checking out the New Jersey Machine-Code Toolkit http://www.eecs.harvard.edu/~nr/toolkit/ http://www.eecs.harvard.edu/~nr/pubs/tk-usenix.ps and GNU Lightning http://www.gnu.org/software/lightning/ Even if they're not applicable this time they could be useful resources to link from the dynarec.com web page. Ralph. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 02:21:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA38562 for dynarec-outgoing; Wed, 2 May 2001 02:20:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008101c0d2eb$5cfebdc0$3fb5c3c1@FOSSIL> From: "Kieron Wilkinson" To: References: <002901c0d26e$160b51d0$0100a8c0@home.local> <002101c0d2dc$21aabe90$3fb5c3c1@FOSSIL> Subject: DYNAREC: Thumb Candy (again again) Date: Wed, 2 May 2001 10:36:27 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Right, the 1st part is up. It's in the Incomming directory. I created a bit of a mess in there, because for some reason the directories were not being created, and then suddenly appeared later... CuteFTP caching maybe, so sorry about that Neil. In this 1st part: Computer Space Pong Atari I'm jealous Mr. Ian Lee. Anyway, enjoy... Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 02:42:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA38591 for dynarec-outgoing; Wed, 2 May 2001 02:41:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <200105020957.TAA32489@mail.alphalink.com.au> Date: Wed, 02 May 2001 19:55:40 +1000 To: dynarec@dynarec.com From: Evan Clarke Subject: Re: DYNAREC: Thumb Candy (again) + A small question.. X-Mailer: Opera 5.11 build 904 X-Priority: 3 (Normal) Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com 2/05/01 5:47:26 PM, "Kieron Wilkinson" wrote: >> Hell yes. There's 2.9gb free right now. Gotta fill it up with something! > >I'll start up'ing the first part now - still haven't got the next two yet... >:( > >Kieron Once it is all uploaded, I am wondering if there is any living in Australia that has downloaded it, and if so, would they mind burning me a copy (damn shitty 56k internet connection)? For a nominal fee of course. And the second question - after writing a simple emulator for the 6502, I am beginning to think about writing a dynarec emulator... but I was wondering if there is a good cpu to emulate for a beginner in the subject. Something that has few registers and no (or very simple) interupts and a limited instruction set. Then if I can do that, I will move onto bigger projects. Any suggestions? -- Evan Clarke --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 02:49:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA38604 for dynarec-outgoing; Wed, 2 May 2001 02:48:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105021003.MAA06659@pons.ac.upc.es> Subject: Re: DYNAREC: Thumb Candy (again) + A small question.. In-Reply-To: <200105020957.TAA32489@mail.alphalink.com.au> "from Evan Clarke at May 2, 2001 07:55:40 pm" To: dynarec@dynarec.com Date: Wed, 2 May 2001 12:03:35 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Once it is all uploaded, I am wondering if there is any living in Australia that has downloaded it, and if so, would they mind burning me a copy (damn shitty 56k internet > connection)? For a nominal fee of course. > Hehe! I love by cable connection :). > And the second question - after writing a simple emulator for the 6502, I am beginning to think about writing a dynarec emulator... but I was wondering if there is a good cpu to > emulate for a beginner in the subject. Something that has few registers and no (or very simple) interupts and a limited instruction set. Then if I can do that, I will move onto > bigger projects. Any suggestions? > The smaller and simpler CPU i can think about is intel 8080. One of my friends is implementing a dynarec for the 8080 to be used in a Space Invaders emulator (in any case it is not because of a speed problem). I'm not sure how much work he has done yet. > -- > > Evan Clarke > > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 03:25:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA38658 for dynarec-outgoing; Wed, 2 May 2001 03:24:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004201c0d2f3$eec8d940$b32bfea9@daves> From: "David Sharp" To: References: <200105020957.TAA32489@mail.alphalink.com.au> Subject: Re: DYNAREC: Thumb Candy (again) + A small question.. Date: Wed, 2 May 2001 11:37:48 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > And the second question - after writing a simple emulator for the 6502, I am beginning to think about writing a dynarec emulator... but I was wondering if there is a good cpu to > emulate for a beginner in the subject. Something that has few registers and no (or very simple) interupts and a limited instruction set. Then if I can do that, I will move onto > bigger projects. Any suggestions? I don't think they come much easier than the 6502. If you really want to make it easy, recompile 6502 to ARM as the condition flag calculations are practically identical. As for simple systems you could use, something like a BBC B emulating in text mode or a NES with only the simplest mappers are probably your best bet. If you're feeling more adventurous the PC Engine, Atari Lynx and SNES all use processors with 6502-type roots. Can I recommend you use the approach I've taken for my project, grab the source to an existing emulator and try and add a dynarec to it. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 03:28:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA38671 for dynarec-outgoing; Wed, 2 May 2001 03:27:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <200105021042.LAA06286@inputplus.demon.co.uk> To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) + A small question.. In-Reply-To: Message from Evan Clarke of "Wed, 02 May 2001 19:55:40 +1000." <200105020957.TAA32489@mail.alphalink.com.au> Date: Wed, 02 May 2001 11:42:55 +0100 From: Ralph Corderoy Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > And the second question - after writing a simple emulator for the > 6502, I am beginning to think about writing a dynarec emulator... but > I was wondering if there is a good cpu to emulate for a beginner in > the subject. Something that has few registers and no (or very > simple) interupts and a limited instruction set. I doubt anyone has done Knuth's MIX before, although his MMIX has many registers. Ralph. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 05:14:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA38780 for dynarec-outgoing; Wed, 2 May 2001 05:13:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006a01c0d303$bfca9060$0100a8c0@home.local> From: "Neil Griffiths" To: References: <200105020957.TAA32489@mail.alphalink.com.au> Subject: Re: DYNAREC: Thumb Candy (again) + A small question.. Date: Wed, 2 May 2001 12:09:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Once it is all uploaded, I am wondering if there is any living in Australia that has > downloaded it, and if so, would they mind burning me a copy (damn shitty 56k > internet connection)? For a nominal fee of course. I suspect not, this program didn't seem to get much media coverage. I suspect there isn't that many people who even know about it - which is a shame as it was very interesting! > And the second question - after writing a simple emulator for the 6502, I am beginning to think about writing a dynarec emulator... but I was wondering if there is a good cpu to > emulate for a beginner in the subject. Something that has few registers and no (or very simple) interupts and a limited instruction set. Then if I can do that, I will move onto > bigger projects. Any suggestions? Why not a Dynarec for the 6502? Although the extra speed is hardly required, if you know the CPU then this will make life so much more easier for you. Then, as you say, you can move onto bigger projects - you will gain much knowledge from doing that. And damn, that last sentence made me sound like Yoda. :) Victor suggested in another message that you use the 8080 - another simple CPU. However, the 8080 is very similar to the Z80 - and the Z80 is certainly more complex than the 6502! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 05:14:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA38785 for dynarec-outgoing; Wed, 2 May 2001 05:13:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006b01c0d303$c300b520$0100a8c0@home.local> From: "Neil Griffiths" To: References: <200105020858.JAA03351@inputplus.demon.co.uk> Subject: Re: DYNAREC: Thumb Candy (again) Date: Wed, 2 May 2001 12:11:34 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Not really. I was hoping for a comp.compilers with a dynarec twist. Here, we're more interested in dynamically recompiling code from one CPU to another. There's no reason why the same techniques can't be aplied to comp. compilers however... > If you're looking at a new project you might be interested in checking > out the New Jersey Machine-Code Toolkit > > http://www.eecs.harvard.edu/~nr/toolkit/ > http://www.eecs.harvard.edu/~nr/pubs/tk-usenix.ps > > and GNU Lightning > > http://www.gnu.org/software/lightning/ > > Even if they're not applicable this time they could be useful resources > to link from the dynarec.com web page. Thanks, I shall take a look at them later on... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 05:14:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA38789 for dynarec-outgoing; Wed, 2 May 2001 05:13:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006c01c0d303$c62d8b10$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Dynarec - the first testament Date: Wed, 2 May 2001 13:25:15 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > * I'd like to treat this as a professional product. Not as a hack & slash > little toy as we've come to know (but not necessarily love) in so many > freeware "products". This includes documentation and plenty of comments > throughout the code. Agreed - this also has the benefit of it being able to code for easily - if we were to just hack, we'd get results - but maintaining it would be harder. > * Decide on a coding standard and stick to it. Looking over a massive > kludge of a project like MAME and seeing 5000 styles all merged together > just makes my skin crawl. Plus, it makes it tougher to debug. Having a > consistent coding methodology allows the reader to get used to one style > and know what to expect elsewhere. I also agree, so this means that we need to discuss the philosophy/methodology that we will use to design it. Although I have learnt from experience now that it will be better to design and plan out this before we start work. > * Figure out how integration and source code coordination will be handled. Yeah... now that could be interesting. I suggest we use some sort of CVS system, probably making use of the dynarec server... > * Make it publicly available, source and all, under the BSD license (not > the GNU license - too restrictive). I don't know what the differences are between the two licenses, but I imagine you know more about this than me, so I will go along with this. > * Requirements list for the dynarec: > > + Generate the fastest executing code possible Agreed, this would be nice. > + Work with any standard stack based or register based calling convention > compiler Also important. > + Optionally allow passing in of "hints" to the Dynarec from the client > API to change its optimization behavior, but still generate optimal code > regardless. That could be interesting... > + Leverage existing CPU emulator core APIs (Starscream, MZ80, etc...) to > allow simple porting/integration when it's released. I agree 100% here, this way we can test our core with current emulators - we can just plug it in! > + Leverage existing CPU emulator cores for comparisons to ensure that > recompiled code generated actually executes properly - timing, > operation, and flag. Yep, probably by doing what I suggested one paragraph above... > + Optionally optimize by doing a depth traversal on the call tree. This > will eliminate jump lookups. You've been thinking about this, haven't you? :) > + Allow recompilation of more than one instance of a CPU Good idea, I hadn't even thought about this. > + Write it in C (no need to make it unnecessarily complex or slower) Agreed. > + Implement a disassembler API for each target and source CPU supported Good idea, also good for debugging purposes. > + Provide "kernel" based logging of disassemblies and progress so we can > debug this thing. It'll be a bear to debug. Yes, I was going to suggest this myself. :) > * Coordination - I'd happily nominate myself as a source code > coordinator. This is part of what I do at work and can turn things around > quickly/accurately. I second this - I believe that you'd be the best guy for the job. You've got more experience than any of us, IMO! > * What are our initial source and target layers? I recommend 68K source > and x86 target. And I concur, mainly because that's what I thought we had planned for originally... > * What should we use as our Guinea pig to execute the recompiled code? In > the past I had recommended Food Fight because of its simplicity. Any other > recommendations or objections? Remember that we don't want to kill > ourselves with a platform that we don't understand. Food Fight is well > documented, it's simple to teach, plus I know it. ;-) I concur, mainly because I downloaded the ROMs at the time and made some attempt to understand the MAME "driver" at that point in time! > * What platforms/OSes should we initially develop under? I'd recommend at > lesat one of the following: gnu C (Linux, BeOS, whatever), MSVC (as much > as we all loathe MS, there WILL be Windows developers interested) I recommend MSVC. As much as I dislike MS, I like this development suite. We'll have to vote on it, of course, but I vote for development in MSVC and just making sure it works in GCC. That, or design it for GCC and I'll port it to MSVC. > * A debugger is HIGHLY desirable in this case. Being able to step through > code in source form (object form maybe not, I'm certainly not up for > writing a virtual machine nor emulating something natively present in any > debugger) in a nice environment will make debugging quite a bit easier. I agree, this is going to be very useful to us for our own debugging purposes too. > Throughout all of this, I want everyone to keep in mind that the code is > the boss - not any one of us, and that any decision made about the source > should be that of consensus and not one of dictatorship. AFter all, we're > all here to learn and venture in to uncharted territory. ;-) Ahoy there! :) > Comments? Once we figure out WHAT we then can figure out HOW... Agreed. > -------------------------------------------------------------------------- ----- > Neil Bradley C++ - A language where you can make your > Synthcom Systems, Inc. privates public > ICQ #29402898 Have you seen my my signature from Uni? That is remarkably similar, which is a little worrying. Mine actually says "C++ - where else do friends make your privates public?"... :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 05:14:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA38794 for dynarec-outgoing; Wed, 2 May 2001 05:13:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006d01c0d303$c9823450$0100a8c0@home.local> From: "Neil Griffiths" To: References: <200105020828.KAA02476@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec - the first testament Date: Wed, 2 May 2001 13:30:14 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > This will have to be decided. What do you mean a coding standard? > Alignaments, variable and function names convention, etc? I think so, yes. > > + Write it in C (no need to make it unnecessarily complex or slower) > Damn! Why not in Java? ;))). Who fancies a Spanish Man kebab? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 08:13:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA38943 for dynarec-outgoing; Wed, 2 May 2001 08:12:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 08:30:07 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <200105020828.KAA02476@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 2 May 2001, Victor Moya del Barrio wrote: > > freeware "products". This includes documentation and plenty of comments > > throughout the code. > This would be nice. I would also find interesting that it could introduce > a methodology for building dynarecs for any source and target. And > perhaps a small toolset to enhance the process of implementing new > dynarecs. Precisely. That's what I was getting at. > > just makes my skin crawl. Plus, it makes it tougher to debug. Having a > > consistent coding methodology allows the reader to get used to one style > > and know what to expect elsewhere. > This will have to be decided. What do you mean a coding standard? > Alignaments, variable and function names convention, etc? Yes - all of the above. Regardless, it needs to be consistent. There's nothing more irritating than having to page through code where 400 people have had their hands. > > * Figure out how integration and source code coordination will be handled. > CVS? At hand? I'm thinking a single point of integration. I don't think we need to go CVS. > > * Make it publicly available, source and all, under the BSD license (not > > the GNU license - too restrictive). > I don't have an opinion here ... as long as nobody uses it for its own > comercial purpose it is fine to me ;). If it uses it I will just > blame it though :)). GNU Requires you to release the sources for whatever you create with it. BSD Does not. > > + Generate the fastest executing code possible > This reminds me something about optimizers in compiler theory. There > is demonstration that for an existant code optimizer it will always > exist a better code optimizer ;). So the 'perfect' optimizer doesn > not exist. Of course! But the point being to make it generate the fastest executing code that we know how to make. I don't want to see people focus on anything other than speed. If speed isn't the ultimate, then what's the point of a Dynarec? > > + Allow recompilation of more than one instance of a CPU > This just means to have separata context (and in the context the > pointer to the translation cache and transmap). Yep - but again, it needs to be designed in. > > + Write it in C (no need to make it unnecessarily complex or slower) > Damn! Why not in Java? ;))). Why not Visual BASIC? ;-) > > * We need someone to work on documentation for this puppy. I'm really not > > up to it due to the fact that I'm doing nothing but writing documentation > > elsewhere. Anyone up for doing a little 50/50 work? > I would advice to fnnd someone with a better english than me ;). > So if someone is interested I will forget about my dynarec list > official documentator title(in any case i haven't done anything) :). > I think that was an old story/post :)). Your dialect of English is fine, Victor. It's not perfect, but then agan, not many people have that, either... > > coordinator. This is part of what I do at work and can turn things around > > quickly/accurately. > Who else could be? It is your idea and you are the best prepared > for this work. If it was democratic you would have my vote. It is democratic. Unless someone else has a major woody for doing such things, I'd be happy to do it. > > * What are our initial source and target layers? I recommend 68K source > > and x86 target. > Fine. I'm interested also in complet the Z80 one (just Z80 love mania). > What about a x86 to x86 someday? :). x86 To x86? You're sick, man. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 08:16:04 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA38956 for dynarec-outgoing; Wed, 2 May 2001 08:15:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 08:32:29 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) + A small question.. In-Reply-To: <200105020957.TAA32489@mail.alphalink.com.au> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > And the second question - after writing a simple emulator for the > 6502, I am beginning to think about writing a dynarec emulator... but > I was wondering if there is a good cpu to emulate for a beginner in > the subject. Something that has few registers and no (or very simple) > interupts and a limited instruction set. Then if I can do that, I > will move onto bigger projects. Any suggestions? The 6502 is a really braindead chip and would be easy to do. Well, easier. Not like writing a recompiler is an easy thing, tho. You may just want to write an extension to the Dynarec core. Have you written a regular emulator? This might be a good place to start. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 08:22:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA38975 for dynarec-outgoing; Wed, 2 May 2001 08:21:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 08:38:59 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <006c01c0d303$c62d8b10$0100a8c0@home.local> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > * Make it publicly available, source and all, under the BSD license (not > > the GNU license - too restrictive). > I don't know what the differences are between the two licenses, but I > imagine you know more about this than me, so I will go along with this. BSD = Always Free. GNU = Semi-sorta free, where you have to release sources to any aggregate piece of software you make. > > + Optionally allow passing in of "hints" to the Dynarec from the client > > API to change its optimization behavior, but still generate optimal code > > regardless. > That could be interesting... The idea is being able to say "The area from x-y is data" and "The section from x-y is timing critical, but the rest isn't", etc... That way we can hone the optimization. We can also give the recompiler other entry points to recompile - points that may be referenced by a jump table and not inside the code. It wouldn't necessarily be picked up automatically by a depth traversal recompilation, but still would be nice to have. > > + Leverage existing CPU emulator core APIs (Starscream, MZ80, etc...) to > > allow simple porting/integration when it's released. > I agree 100% here, this way we can test our core with current emulators - we > can just plug it in! Or nearly plug it in. There's some initialization that'll need to happen that doesn't quite line up with all existing cores, but as long as we make the transition painless, we'll be good to go. > > ourselves with a platform that we don't understand. Food Fight is well > > documented, it's simple to teach, plus I know it. ;-) > I concur, mainly because I downloaded the ROMs at the time and made some > attempt to understand the MAME "driver" at that point in time! It might just confuse you. ;-) But seriously, everything but the graphics should be easy to understand. Just be thankful I'm not sicking Toobin' on you. ;-) > > * What platforms/OSes should we initially develop under? I'd recommend at > > lesat one of the following: gnu C (Linux, BeOS, whatever), MSVC (as much > > as we all loathe MS, there WILL be Windows developers interested) > I recommend MSVC. As much as I dislike MS, I like this development suite. Yeah, I gotta give props to MS for that. Their environment is nice. > We'll have to vote on it, of course, but I vote for development in MSVC and > just making sure it works in GCC. That, or design it for GCC and I'll port > it to MSVC. I think we can do straight up ANSI C and leave the platform specific stuff in one place and the platform independent in another. I'll just make sure to crank up all the warnings as high as they'll go in MSVC, and someone needs to do the same for GCC. > > Neil Bradley C++ - A language where you can make your > > Synthcom Systems, Inc. privates public > Have you seen my my signature from Uni? That is remarkably similar, which is > a little worrying. Mine actually says "C++ - where else do friends make your > privates public?"... :)) Haven't seen it... The quote I had above was told to me back in 1994 by a coworker. ;-) Probably similar origin. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 09:03:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA39015 for dynarec-outgoing; Wed, 2 May 2001 09:02:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001601c0d323$5dd17ca0$40984ed4@menta.net> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: Dynarec - the first testament Date: Wed, 2 May 2001 18:17:18 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > GNU Requires you to release the sources for whatever you create with it. > BSD Does not. > This is fine for me. I usually go for releasing the code but I will say nothing if someone else doesn't want to release it. > Of course! But the point being to make it generate the fastest executing > code that we know how to make. I don't want to see people focus on > anything other than speed. If speed isn't the ultimate, then what's the > point of a Dynarec? > Complex, hard to understand emulators programed by mad people? ;) > > > + Write it in C (no need to make it unnecessarily complex or slower) > > Damn! Why not in Java? ;))). > > Why not Visual BASIC? ;-) > No real BASIC would be even funner (GW-Basic for DOS or QBASIC for example). :) > > Your dialect of English is fine, Victor. It's not perfect, but then agan, > not many people have that, either... > Dialect? Ummm, a dialect written by a single person? ;) > > > * What are our initial source and target layers? I recommend 68K source > > > and x86 target. > > Fine. I'm interested also in complet the Z80 one (just Z80 love mania). > > What about a x86 to x86 someday? :). > > x86 To x86? You're sick, man. > :))) > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 10:36:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA39106 for dynarec-outgoing; Wed, 2 May 2001 10:35:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008a01c0d330$b6aff650$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Dynarec - the first testament Date: Wed, 2 May 2001 18:50:33 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > BSD = Always Free. GNU = Semi-sorta free, where you have to release > sources to any aggregate piece of software you make. Ah, I see. Okay, then I agree with the BSD licence. That way, if anyone writes an emulator using our CPU core, they don't have to make it open-source. > The idea is being able to say "The area from x-y is data" and "The section > from x-y is timing critical, but the rest isn't", etc... That way we can > hone the optimization. We can also give the recompiler other entry points > to recompile - points that may be referenced by a jump table and not > inside the code. It wouldn't necessarily be picked up automatically by a > depth traversal recompilation, but still would be nice to have. Agreed, this is possibly more than slightly useful - this could be necessary! > Or nearly plug it in. There's some initialization that'll need to happen > that doesn't quite line up with all existing cores, but as long as we make > the transition painless, we'll be good to go. It was more a pattern of speech, but I understand. > It might just confuse you. ;-) You were there, then? God, MAME drivers are tough to read. Especially so for a "documentation" project. :)) > But seriously, everything but the graphics > should be easy to understand. Just be thankful I'm not sicking Toobin' on > you. ;-) I remember the problems you had with Retrocade. I am thankful. :-P > > I recommend MSVC. As much as I dislike MS, I like this development suite. > > Yeah, I gotta give props to MS for that. Their environment is nice. Indeed. And after writing half of my project using it, I know the IDE pretty well now. And I like it, I've yet to see a nicer programming user interface... > I think we can do straight up ANSI C and leave the platform specific stuff > in one place and the platform independent in another. I'll just make sure > to crank up all the warnings as high as they'll go in MSVC, and someone > needs to do the same for GCC. Okay, that sounds fair. Well, I know one person who - if they get involved - will be using GCC. Hello Mike, are your ears burning? ;) > Haven't seen it... The quote I had above was told to me back in 1994 by a > coworker. ;-) Probably similar origin. I'm scared - I made that one up myself. There just CAN'T be someone else with as weird a sense of humour as me, can there? :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 10:43:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA39123 for dynarec-outgoing; Wed, 2 May 2001 10:40:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009801c0d331$82c4fce0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <001601c0d323$5dd17ca0$40984ed4@menta.net> Subject: Re: DYNAREC: Dynarec - the first testament Date: Wed, 2 May 2001 18:53:06 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Complex, hard to understand emulators programed by mad people? ;) You make a good point. :) > No real BASIC would be even funner (GW-Basic for DOS or QBASIC > for example). :) Another good point here. Damn, you're sharp today aren't you, Victor? > Dialect? Ummm, a dialect written by a single person? ;) Why not? Basque is fairly unique too! ;) > > x86 To x86? You're sick, man. > > > :))) Although Neil won the prize for making me laugh today with that comment. :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 12:27:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA39229 for dynarec-outgoing; Wed, 2 May 2001 12:26:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 08:32:29 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) + A small question.. In-Reply-To: <200105020957.TAA32489@mail.alphalink.com.au> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > And the second question - after writing a simple emulator for the > 6502, I am beginning to think about writing a dynarec emulator... but > I was wondering if there is a good cpu to emulate for a beginner in > the subject. Something that has few registers and no (or very simple) > interupts and a limited instruction set. Then if I can do that, I > will move onto bigger projects. Any suggestions? The 6502 is a really braindead chip and would be easy to do. Well, easier. Not like writing a recompiler is an easy thing, tho. You may just want to write an extension to the Dynarec core. Have you written a regular emulator? This might be a good place to start. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 12:33:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA39245 for dynarec-outgoing; Wed, 2 May 2001 12:32:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 08:38:59 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <006c01c0d303$c62d8b10$0100a8c0@home.local> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > * Make it publicly available, source and all, under the BSD license (not > > the GNU license - too restrictive). > I don't know what the differences are between the two licenses, but I > imagine you know more about this than me, so I will go along with this. BSD = Always Free. GNU = Semi-sorta free, where you have to release sources to any aggregate piece of software you make. > > + Optionally allow passing in of "hints" to the Dynarec from the client > > API to change its optimization behavior, but still generate optimal code > > regardless. > That could be interesting... The idea is being able to say "The area from x-y is data" and "The section from x-y is timing critical, but the rest isn't", etc... That way we can hone the optimization. We can also give the recompiler other entry points to recompile - points that may be referenced by a jump table and not inside the code. It wouldn't necessarily be picked up automatically by a depth traversal recompilation, but still would be nice to have. > > + Leverage existing CPU emulator core APIs (Starscream, MZ80, etc...) to > > allow simple porting/integration when it's released. > I agree 100% here, this way we can test our core with current emulators - we > can just plug it in! Or nearly plug it in. There's some initialization that'll need to happen that doesn't quite line up with all existing cores, but as long as we make the transition painless, we'll be good to go. > > ourselves with a platform that we don't understand. Food Fight is well > > documented, it's simple to teach, plus I know it. ;-) > I concur, mainly because I downloaded the ROMs at the time and made some > attempt to understand the MAME "driver" at that point in time! It might just confuse you. ;-) But seriously, everything but the graphics should be easy to understand. Just be thankful I'm not sicking Toobin' on you. ;-) > > * What platforms/OSes should we initially develop under? I'd recommend at > > lesat one of the following: gnu C (Linux, BeOS, whatever), MSVC (as much > > as we all loathe MS, there WILL be Windows developers interested) > I recommend MSVC. As much as I dislike MS, I like this development suite. Yeah, I gotta give props to MS for that. Their environment is nice. > We'll have to vote on it, of course, but I vote for development in MSVC and > just making sure it works in GCC. That, or design it for GCC and I'll port > it to MSVC. I think we can do straight up ANSI C and leave the platform specific stuff in one place and the platform independent in another. I'll just make sure to crank up all the warnings as high as they'll go in MSVC, and someone needs to do the same for GCC. > > Neil Bradley C++ - A language where you can make your > > Synthcom Systems, Inc. privates public > Have you seen my my signature from Uni? That is remarkably similar, which is > a little worrying. Mine actually says "C++ - where else do friends make your > privates public?"... :)) Haven't seen it... The quote I had above was told to me back in 1994 by a coworker. ;-) Probably similar origin. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 12:39:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA39260 for dynarec-outgoing; Wed, 2 May 2001 12:38:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <200105021845.TAA19345@inputplus.demon.co.uk> To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: Message from "Neil Griffiths" of "Wed, 02 May 2001 12:11:34 BST." <006b01c0d303$c300b520$0100a8c0@home.local> Date: Wed, 02 May 2001 19:45:27 +0100 From: Ralph Corderoy Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Not really. I was hoping for a comp.compilers with a dynarec > > twist. > > Here, we're more interested in dynamically recompiling code from one > CPU to another. Yes, that's what I'm interested in. > There's no reason why the same techniques can't be aplied to comp. > compilers however... I meant that I wanted the level of signal/noise ratio that is normally present on comp.compilers :-) Ralph. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 12:49:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA39279 for dynarec-outgoing; Wed, 2 May 2001 12:47:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005b01c0d343$4003bbf0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <200105021845.TAA19345@inputplus.demon.co.uk> Subject: Re: DYNAREC: Thumb Candy (again) Date: Wed, 2 May 2001 21:05:20 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Yes, that's what I'm interested in. That's lucky then. :) > I meant that I wanted the level of signal/noise ratio that is normally > present on comp.compilers :-) It is the same ratio. Just the other way around. we've got a noise/signal ratio here. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:00:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA39297 for dynarec-outgoing; Wed, 2 May 2001 12:59:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <200105022015.VAA21743@inputplus.demon.co.uk> To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: Message from "Neil Griffiths" of "Wed, 02 May 2001 21:05:20 BST." <005b01c0d343$4003bbf0$0100a8c0@home.local> Date: Wed, 02 May 2001 21:15:02 +0100 From: Ralph Corderoy Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > It is the same ratio. Just the other way around. we've got a > noise/signal ratio here. ;) I'm sure with a little less youthful exuberance and a bit more consideration of others it would improve no end. :-) Some of us don't have the tuits to spend on reading noise. On a noisey list is that the list's loss or the tuit-starved subscriber? Ralph. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:05:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA39315 for dynarec-outgoing; Wed, 2 May 2001 13:04:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 28 Mar 1959 08:05:33 -0600 (CST) From: Graham Toal Message-Id: <195903281405.IAA20361@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Not really. I was hoping for a comp.compilers with a dynarec > > > twist. > > > > Here, we're more interested in dynamically recompiling code from one > > CPU to another. > > Yes, that's what I'm interested in. > > > There's no reason why the same techniques can't be aplied to comp. > > compilers however... Apropos of something that the quotes above were probably not intended to say, but it reminded me of something I meant to discuss here...: I think we have been looking at this dynarec thing ass-about-face - instead of working from an emulator framework and generating binary rather than just executing those same instructions as we interpret, I have a nagging suspicion that the optimum way to approach this whole 'dynamic recompilation' thing is not by focussing on the 'dynamic' (i.e. the interpreter/emulator) part, but on the 'compilation' part of 'recompilation'. In other words, the basic framework to build first is the compiler: take a good compiler for the target architecture, then modify it so that it can generate and execute code on the fly rather than as two separate operations. Once you have a dynamic compiler, *then* you add the conversion from native opcodes via the emulator/interpreter. Because you started with a full-blown good compiler, most of the optimisations you're looking for will fall out in the wash, especially with respect to compiling basic blocks where the numerous little flag- setting instructions that each opcode makes can be thrown away except where they actually need to be used. Back in 1976 I used exactly such a dynamic compiler: it was written by Peter Robertson (I mentioned his 1981 PhD work on intermediate codes here a few weeks ago - recently found my copy of that by the way) for a language called Imp (similar to algol in many ways). You typed in high level statements directly to a prompt. Declarations took effect straight away. Imperative statements were executed immediately. If you started an 'if' block, if it was true, the statements would be executed; if it was false they'd be skipped up to the 'else'. For loops would remember the text until the end of the loop, then start executing; You could write procedures and call them interactively. You could edit a procedure written on the fly, make changes, close the editor, and calls to the procedure from anywhere in the program would now call the updated version. It was a very clever piece of code and great for prototyping. I don't think he ever thought of the idea of using it to write emulators at the time, but if it still existed I'm sure it would be ideal. Peter wrote that interactive compiler starting from a known working Imp compiler (for ICL4/75 architecture - a clone of the IBM360) in about 3 months. Adding the translation of an architecture to a high-level language intermediate code (as I did for the CINEMU) should be about 1 month's work on top of that. My Cinemu translator in fact would be 90% of the way to what was needed - just feed the generated C to an internal procedure to translate, rather than writing it to an external file and exiting, compiling, and running. With this framework, targetting a new architecture means writing a new dynamic compiler, which I suspect (if say we use GCC as the basis for all of them) might be less work than writing a new recompiler from scratch? Just an idea to kick around... Graham --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:05:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA39321 for dynarec-outgoing; Wed, 2 May 2001 13:04:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 13:22:28 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <200105022015.VAA21743@inputplus.demon.co.uk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > It is the same ratio. Just the other way around. we've got a > > noise/signal ratio here. ;) > I'm sure with a little less youthful exuberance and a bit more > consideration of others it would improve no end. :-) > Some of us don't have the tuits to spend on reading noise. On a noisey > list is that the list's loss or the tuit-starved subscriber? No, but some of us just complain when things aren't on topic, never contribute anything on topic, and only add to the off topic noise. In other words, you're not helping, Ralph, but you could be. If you don't like the content of the messages, how about posting something topical and steering the conversation to something more on topic? Just complaining about it won't improve things. There has been plenty of on topic activity in the last 24-48 hours. Have you seen any of it? I've not seen any comments from you, so I'll assume you haven't. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:11:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA39346 for dynarec-outgoing; Wed, 2 May 2001 13:10:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007301c0d346$5ce50be0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <200105022015.VAA21743@inputplus.demon.co.uk> Subject: Re: DYNAREC: Thumb Candy (again) Date: Wed, 2 May 2001 21:27:28 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I'm sure with a little less youthful exuberance and a bit more > consideration of others it would improve no end. :-) Not really, notice how there's been no messages for the last few weeks? :P > Some of us don't have the tuits to spend on reading noise. On a noisey > list is that the list's loss or the tuit-starved subscriber? Hey, not being funny, but no-one asked you to join. On the dynarec.com page, it quite clearly states "The Dynarec Mailing List is provided for discussions about dynamic recompilation and general emulation, but don't be surprised if other topics are covered as well ;-)" That's because we are interested in dynarec as a matter of interest and a matter of enjoyment. It's our "youthful exuberance", as you put it, that keeps us interested in this topic! If you want to see more signal/noise, try posting something to spark discussion! :) The reason for the signal/noise is mainly because of the very few people interested in this topic. We all know each other here and it is pretty much a group of friends. So we all have good points to make, but we also tease each other. Sorry, but we're having fun. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:18:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA39363 for dynarec-outgoing; Wed, 2 May 2001 13:16:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <01b701c0d346$ba415870$b32bfea9@daves> From: "David Sharp" To: References: Subject: DYNAREC: this should get some tongues wagging (ON TOPIC!) Date: Wed, 2 May 2001 21:30:27 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I've uploaded a PDF of my Tarmac report for consumption of people on the group only. It's not for wide distribution just yet as universities can be a bit funny about this sort of thing. I'd really appreciate comments from people and any thoughts on the things in the report. It treads much of the same path as ARMphetamine (unsurprisingly) though is far far longer and looks at the annoying problems of real processor emulation. I've written a fair bit about reg allocation and different optimisation methods and that's probably the most interesting part but I'll leave it for you to decide. Say anything you like, with 2 exceptions: 1) Please don't point out any grammatical/spelling errors you find - I've handed it in this morning and would just rather not know! 2) Please don't go on about the use or not of intermediate code, it's been done to death and there's a lot more interesting stuff to talk about. http://www.dcs.warwick.ac.uk/~csuix/tarmacreport.zip (2.8Mb compressed) Cheers Dave PS: I know about the cocked up flow charts - it's a problem with AcrobatDistiller/Word/Visio and printed out fine. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:19:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA39375 for dynarec-outgoing; Wed, 2 May 2001 13:18:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <200105022034.VAA22427@inputplus.demon.co.uk> To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: Message from Neil Bradley of "Wed, 02 May 2001 13:22:28 PDT." Date: Wed, 02 May 2001 21:34:28 +0100 From: Ralph Corderoy Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi Neal, > No, but some of us just complain when things aren't on topic, never > contribute anything on topic, and only add to the off topic noise. > > In other words, you're not helping, Ralph, but you could be. If you > don't like the content of the messages, how about posting something > topical and steering the conversation to something more on topic? > Just complaining about it won't improve things. I did. A couple of links for the *empty* links page on dynarec.com to the New Jersey Machine-Code Toolkit and GNU Lightning. Don't you read posts to this list? I've been subscribed to list this for some time. Nothing came out of it. Then loads of chatter, not relevant to the majority of the list, by a bunch of girls having what should have been a private conversation. The only technical stuff so far has been a discussion about the next big project (code counts by the way, talk is cheap) that has people moving away from CVS towards a single bottleneck of integration, and towards a Microsoft development environment. It also fails to grasp that highly optimised output of a dynarec is not top priority if it takes too long to produce it. > There has been plenty of on topic activity in the last 24-48 hours. > Have you seen any of it? I've not seen any comments from you, so I'll > assume you haven't. I have. I was just waiting for posts by those that have something useful technically to say. Looking forward to Sharp's paper on tARMac. (See, another sign I've been reading the list.) Ralph. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:22:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA39387 for dynarec-outgoing; Wed, 2 May 2001 13:21:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 13:38:43 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <195903281405.IAA20361@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I think we have been looking at this dynarec thing ass-about-face - instead > of working from an emulator framework and generating binary rather than > just executing those same instructions as we interpret, I have a nagging > suspicion that the optimum way to approach this whole 'dynamic recompilation' > thing is not by focussing on the 'dynamic' (i.e. the interpreter/emulator) > part, but on the 'compilation' part of 'recompilation'. I don't think it's backwards at all. There's a 1:1 mapping of instructions for recompilers - there isn't for a higher level language like C. I've been down that path. What you're proposing is a "middleware" intermediate representation, right? If so, this has been a time honored argument on this list for some time and back in the heyday when I was writing DRMZ80, I found a lot of situations where the IR would just cause optimizations to be lost. IT made things MUCH harder with the only added gain of being able to write a source layer and no target layer. There are so many tradeoffs and I'd rather not go down that time consuming path of explaining it. If necessary, I can dig up the old Dynarec message archives that explains some examples, but with my acid test of DRMZ80, a lot of shortcuts that I did or planned wouldn't have been possible with an IR. Somebody, please make a FAQ for a serious case against an IR. I don't have time nor the energy and I'm deathly tired of reexplaining it - especially after I've gone through the painful process of implementing a recompiler whose optimizations wouldn't have been possible with an IR. I'm sorry, but I'm immovable on this one. Experience and a ton of thought has taught me that an IR is nonoptimal performance wise. > In other words, the basic framework to build first is the compiler: take > a good compiler for the target architecture, then modify it so that it > can generate and execute code on the fly rather than as two separate > operations. Uh... no. Compiler cover generators are all messy. I'd rather write my own so it can do specifically what I want, and we wouldn't have to include linking or any of that other fixup crap. The problem is the compiler cover generators are designed for a compiler architecture. The last thing I want to have to do is spend a bunch of time learning someone else's architecture and having to 1) Modify it, 2) Shoehorn it if it doesn't fit or 3) > Because you started with a full-blown good compiler, most of the > optimisations you're looking for will fall out in the wash, especially > with respect to compiling basic blocks where the numerous little flag- > setting instructions that each opcode makes can be thrown away except > where they actually need to be used. I've not yet seen a compiler that has intimate knowledge of the flag operations. Just for > < != = operations (or boolean operators) perhaps, but when's the last time you've seen a compiler take advantage of carry or the aux carry flag? > With this framework, targetting a new architecture means writing a new > dynamic compiler, which I suspect (if say we use GCC as the basis for > all of them) might be less work than writing a new recompiler from scratch? gcc Is a horrid piece of crap. Hard to read, hard to follow, bad formatting, *POOR* optimizer, and outputs to object files - not binary code, and I'm sure as hell not going to have any desire to take a mess like it and shoehorn it in for the sake of reusing code. Being an author of several compilers myself, it won't work optimally, and besides, the target layer can be greatly simplified. However, I think part of the spirit of what you're saying is that we need a good opcode generator - a generic x86 generator - that can be used by other target layer glue code. Certainly true. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:23:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA39397 for dynarec-outgoing; Wed, 2 May 2001 13:22:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <200105022038.VAA22453@inputplus.demon.co.uk> To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: Message from "Neil Griffiths" of "Wed, 02 May 2001 21:27:28 BST." <007301c0d346$5ce50be0$0100a8c0@home.local> Date: Wed, 02 May 2001 21:38:25 +0100 From: Ralph Corderoy Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > The reason for the signal/noise is mainly because of the very few > people interested in this topic. Oh, there's lots interested in this topic thesedays. Could it just be that those interested in the topic don't find this mailing list a useful place to be. In which case, lessening the noise, even if the list becomes silent again, could be beneficial in attracting more signal in the long term. Or it can just stay as a list for a bunch of friends. Sorry, but as an outsider I think you should consider how the list appears to me if you want to attract more subscribers and hence build the value and usefulness of the list. Ralph. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:25:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA39406 for dynarec-outgoing; Wed, 2 May 2001 13:24:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 13:42:14 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <200105022034.VAA22427@inputplus.demon.co.uk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've been subscribed to list this for some time. Nothing came out of > it. Then loads of chatter, not relevant to the majority of the list, > by a bunch of girls having what should have been a private > conversation. > The only technical stuff so far has been a discussion about the next > big project (code counts by the way, talk is cheap) Then you would've noticed me posting the sources to DRMZ80? But like any decent software design, you have to decide first, then move forward. Anyone who has an inkling of how software is created knows this. > that has people > moving away from CVS towards a single bottleneck of integration, and > towards a Microsoft development environment. It also fails to grasp > that highly optimised output of a dynarec is not top priority if it > takes too long to produce it. Ralph - Contribute to some of the ideas or get off the list. In other words, put up or shut up. I expect your next message to be on topic and not just whine about "things aren't on topic". -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:30:48 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA39431 for dynarec-outgoing; Wed, 2 May 2001 13:29:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <01c801c0d348$7f57a410$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: Thumb Candy (again) Date: Wed, 2 May 2001 21:43:08 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Somebody, please make a FAQ for a serious case against an IR. I don't have > time nor the energy and I'm deathly tired of reexplaining it - especially > after I've gone through the painful process of implementing a recompiler > whose optimizations wouldn't have been possible with an IR. Depends on the form of the intermediate code -> Can I point anyone interested towards the tarmac report, particularly the sections on the 'explicit-implicit problem' and the entire 'Armlets - An Intermediate code' section. I've just written about 20k words on dynarecs and am not in the mood to do much more. Plus the pub beckons. Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:34:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA39454 for dynarec-outgoing; Wed, 2 May 2001 13:33:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <200105022049.VAA22781@inputplus.demon.co.uk> To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: Message from Graham Toal of "Sat, 28 Mar 1959 08:05:33 CST." <195903281405.IAA20361@gtoal.com> Date: Wed, 02 May 2001 21:49:03 +0100 From: Ralph Corderoy Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi Graham, > In other words, the basic framework to build first is the compiler: > take a good compiler for the target architecture, then modify it so > that it can generate and execute code on the fly rather than as two > separate operations. GCC is normally considered complex in this area. Would lcc be a suitable proof-of-concept? It has, amongst others, an x86 backend. Not hot on optimisation but that helps with the simplicity of it. > With this framework, targetting a new architecture means writing a > new dynamic compiler, which I suspect (if say we use GCC as the basis > for all of them) might be less work than writing a new recompiler > from scratch? Would using a `neutral' instruction set like GNU Lightning's be an alternative? Have front ends that use its instruction-producing macros. Have Lightning's existing backends produce x86, Sparc, PowerPC, etc. instructions for immediate execution. This might be an alternative as it avoids the complexity of interfacing with a compiler's back-end (symbol table, etc.) and also a compiler's back-end might not be optimised for speed of machine instruction production, but rather the speed of the produced code, which can be less important in a dynarec. Anyone have experience of Lightning or NJ MC Toolkit in a dynarec environment? I've wondered if Lightning had too few registers for a RISC target. Ralph. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:38:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA39467 for dynarec-outgoing; Wed, 2 May 2001 13:37:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 13:55:12 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <200105022049.VAA22781@inputplus.demon.co.uk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > that it can generate and execute code on the fly rather than as two > > separate operations. > GCC is normally considered complex in this area. Would lcc be a > suitable proof-of-concept? It has, amongst others, an x86 backend. > Not hot on optimisation but that helps with the simplicity of it. I haven't looked at LCC in eons. Does it require you to go through a link step? All compiler backends I've seen require this, and unfortunately isn't suitable for this application. > Would using a `neutral' instruction set like GNU Lightning's be an > alternative? Have front ends that use its instruction-producing > macros. Have Lightning's existing backends produce x86, Sparc, > PowerPC, etc. instructions for immediate execution. As everyone knows, I'm not a fan of IR for a variety of reasons. Differences in actions for each different instruction across CPUs, such as DEC/INC (do they modify cary? Set the direction flag? Is there a direction flag? etc...). Making an IR into something that covers all types of CPUs to be recopmiled (68K or 34010 may be rational targets) would come up with an absolutely HUGE IR. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:45:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA39481 for dynarec-outgoing; Wed, 2 May 2001 13:44:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 14:01:51 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: this should get some tongues wagging (ON TOPIC!) In-Reply-To: <01b701c0d346$ba415870$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've uploaded a PDF of my Tarmac report for consumption of people on the > group only. It's not for wide distribution just yet as universities can be a > bit funny about this sort of thing. >From what I've read so far, BRAVO! Excllent work! Looks great/well organized - I only hope my docs come out as good as yours has. I hope you've gotten an excellent grade on it... I'll read & grok the intermediate section, then give you my feedback on it. > 1) Please don't point out any grammatical/spelling errors you find - I've > handed it in this morning and would just rather not know! > 2) Please don't go on about the use or not of intermediate code, it's been > done to death and there's a lot more interesting stuff to talk about. What about register reallocation and how it relates to intermediate code generation on a register starved target layer? ;-) ;-) Just kidding... > PS: I know about the cocked up flow charts - it's a problem with > AcrobatDistiller/Word/Visio and printed out fine. Hm... they look OK here in Acrobat... -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:47:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA39503 for dynarec-outgoing; Wed, 2 May 2001 13:45:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 14:03:30 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <01c801c0d348$7f57a410$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Somebody, please make a FAQ for a serious case against an IR. I don't have > > time nor the energy and I'm deathly tired of reexplaining it - especially > > after I've gone through the painful process of implementing a recompiler > > whose optimizations wouldn't have been possible with an IR. > Depends on the form of the intermediate code -> Can I point anyone > interested towards the tarmac report, particularly the sections on the > 'explicit-implicit problem' and the entire 'Armlets - An Intermediate code' > section. I think it was Mike (maybe Neil?) that mentioned that really what my "two tier" approach is has an IR of sorts - it's just married (superglued?) to the target layer so much that I'm not distinguishing between the two. I'll do a rehashing of target code generation ideas I've had and used in DRMZ80, for the sake of review for those who've been there before, and the sake of education for those who have not. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:45:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA39487 for dynarec-outgoing; Wed, 2 May 2001 13:44:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <200105022100.WAA23135@inputplus.demon.co.uk> To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: Message from Neil Bradley of "Wed, 02 May 2001 13:42:14 PDT." Date: Wed, 02 May 2001 22:00:18 +0100 From: Ralph Corderoy Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi Neal, > But like any decent software design, you have to decide first, then > move forward. Anyone who has an inkling of how software is created > knows this. >From that comment you're probably a spotty teenager! Anyone who has been paid for software production knows that theorectical prancing about before hand, especially with remote developers, is doomed to failure. Instead, get something started. Work out what's wrong. Go back and re-work that section. Do some more. Take patches from others. Allow good patchers to check-in. Re-work another poor area. And so on. Avoid bit-rot. Throw one away (piecemeal) because you will anyway. Re-factor (as the posh new jargon has it). Oh, BTW, been paid for producing software since 1986. > > that has people moving away from CVS towards a single bottleneck of > > integration, and towards a Microsoft development environment. It > > also fails to grasp that highly optimised output of a dynarec is > > not top priority if it takes too long to produce it. > > Ralph - Contribute to some of the ideas or get off the list. In other > words, put up or shut up. I expect your next message to be on topic > and not just whine about "things aren't on topic". Why did you ignore the criticism there: `fails to grasp that highly optimised output of a dynarec is not top priority if it takes too long to produce it.'. Surely that was on topic? Instead you insult -- more noise. Ralph. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 13:50:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA39537 for dynarec-outgoing; Wed, 2 May 2001 13:49:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <200105022105.WAA23396@inputplus.demon.co.uk> To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: Message from Neil Bradley of "Wed, 02 May 2001 13:38:43 PDT." Date: Wed, 02 May 2001 22:05:00 +0100 From: Ralph Corderoy Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Somebody, please make a FAQ for a serious case against an IR. I don't > have time nor the energy and I'm deathly tired of reexplaining it - > especially after I've gone through the painful process of > implementing a recompiler whose optimizations wouldn't have been > possible with an IR. Was that optimisations for space, time of production, or time of execution of produced code? Ralph. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 14:06:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA39584 for dynarec-outgoing; Wed, 2 May 2001 14:05:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 14:22:42 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <200105022100.WAA23135@inputplus.demon.co.uk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi Neal, > > > But like any decent software design, you have to decide first, then > > move forward. Anyone who has an inkling of how software is created > > knows this. For those who care, Ralf is off the list and I've blocked his site. We don't need assholes on our list like this. He claims he had been on the list for months - he signed up yesterday at 1PM. Liar. The last thing we need is a demotivator like him on this list. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 14:18:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA39631 for dynarec-outgoing; Wed, 2 May 2001 14:17:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Jack To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) Date: Wed, 02 May 2001 17:32:38 -0400 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: <02v0ft8j9tl8pcdve19h0q2iaa3o0buoni@4ax.com> References: <200105022100.WAA23135@inputplus.demon.co.uk> In-Reply-To: X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 2 May 2001 14:22:42 -0700 (PDT), Neil Bradley wrote: >> Hi Neal, >> >> > But like any decent software design, you have to decide first, then >> > move forward. Anyone who has an inkling of how software is created >> > knows this. > >For those who care, Ralf is off the list and I've blocked his site. We >don't need assholes on our list like this. He claims he had been on the >list for months - he signed up yesterday at 1PM. Liar. > >The last thing we need is a demotivator like him on this list. Damn, I was really hoping for brawl! You guys all get along too well. A *little* contention might be interesting for us folks in the galleries. :) IMO you should have given him a little more time to prove his worth. -- Jack ---- "I love to go down to the schoolyard and watch all the little children jump up and down and run around yelling and screaming.... They don't know I'm only using blanks." - Emo Phillips --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 14:24:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA39647 for dynarec-outgoing; Wed, 2 May 2001 14:23:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 14:40:34 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <02v0ft8j9tl8pcdve19h0q2iaa3o0buoni@4ax.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >The last thing we need is a demotivator like him on this list. > Damn, I was really hoping for brawl! I'm done brawlin'. Spent too much of my twenties doing that. ;-) > You guys all get along too well. A *little* contention might be > interesting for us folks in the galleries. :) > IMO you should have given him a little more time to prove his worth. Sorry, but calling people "girls" is just flatly disrespectful. No amount of "worth" can overcome that. We might argue on this list from time to time, but we have tremendous respect for one another (well, at least I do for others - dunno about the reverse!) I'm actually surprised there's >50 people on the list - especially since it's unpublished. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 14:43:04 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA39688 for dynarec-outgoing; Wed, 2 May 2001 14:41:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Jack To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) Date: Wed, 02 May 2001 17:57:14 -0400 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: <8sv0ft4elb0gj2vi59eevsd6rl3bspqn9q@4ax.com> References: <02v0ft8j9tl8pcdve19h0q2iaa3o0buoni@4ax.com> In-Reply-To: X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 2 May 2001 14:40:34 -0700 (PDT), Neil Bradley wrote: >Sorry, but calling people "girls" is just flatly disrespectful. No amount >of "worth" can overcome that. Hmmm. Can't really argue with you there. >We might argue on this list from time to time, but we have tremendous >respect for one another (well, at least I do for others - dunno about the >reverse!) Amongst you regular posters I see a great deal of deserved respect being shown. I only wish I had the time to be a contributing member. >I'm actually surprised there's >50 people on the list - especially since >it's unpublished. Ten regulars, fourty wanna-be's. :) -- Jack ---- Famous last words: "I wonder what this button does?" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 16:05:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA39862 for dynarec-outgoing; Wed, 2 May 2001 16:04:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <026201c0d35e$1b27e5c0$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: this should get some tongues wagging (ON TOPIC!) Date: Thu, 3 May 2001 00:17:49 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >From what I've read so far, BRAVO! Excllent work! Looks great/well > organized - I only hope my docs come out as good as yours has. I hope > you've gotten an excellent grade on it... I'll read & grok the > intermediate section, then give you my feedback on it. Thanks very much, that's praise indeed. I'm sure you won't like thie bit about using an intermediate code - I still have my doubts about the IC slowing the compilation but it seems to make optimisations easier for a RISC CPU but then I have my doubts about doing any optimisations at all from playing with the figures in that JIT/Hotspot/Interpreting average speed graph in excel. > What about register reallocation and how it relates to intermediate code > generation on a register starved target layer? ;-) ;-) Just kidding... AAAAGGGGGHHH! :) > Hm... they look OK here in Acrobat... Strange. At my end in figures 3 and 14 the colours and borders of the diamond-shaped decisions are all cocked up, are they ok for you? Cheers Dave PS: Did you get a chance to set up my dynarec account yet Neil? I'd ideally like to migrate tarmac there ASAP before i graduate and warwick kicks me off. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 16:05:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA39869 for dynarec-outgoing; Wed, 2 May 2001 16:04:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <011d01c0d35e$bc2dab30$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Thumb Candy (again) Date: Wed, 2 May 2001 23:54:16 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > For those who care, Ralf is off the list and I've blocked his site. We > don't need assholes on our list like this. He claims he had been on the > list for months - he signed up yesterday at 1PM. Liar. I just want to go on record right now as backing Neil up on this. I agree wholeheartedly with this decision. > The last thing we need is a demotivator like him on this list. Agreed. He's not just a demotivator, but from some of the things that he said, an asshole. IMO, of course. Especially the sexist statements, which really guiles me - I can't stand sexism... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 16:05:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA39874 for dynarec-outgoing; Wed, 2 May 2001 16:04:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <011e01c0d35e$bdc11c70$0100a8c0@home.local> From: "Neil Griffiths" To: References: <200105022100.WAA23135@inputplus.demon.co.uk> <02v0ft8j9tl8pcdve19h0q2iaa3o0buoni@4ax.com> Subject: Re: DYNAREC: Thumb Candy (again) Date: Wed, 2 May 2001 23:59:31 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Damn, I was really hoping for brawl! Sorry. ;) > You guys all get along too well. A *little* contention might be > interesting for us folks in the galleries. :) Heh! Well, perhaps you'll see something when we start work on DR68K (I assume this will be the working name, right?). But I assume that we're all reasonable coders, so I hope that we'll sort things out for this project. I really want to produce a good dynarec and I certainly want to learn from this experience. I have my own ideas, as I'm sure everyone else does - so if we can use only the best, or learn from our experiences, then so much the better. I guess that's why Neil wants a dedicated documenter... :o > IMO you should have given him a little more time to prove his worth. IMO he should have waited to see what the list was like before he decided if he wanted to stay on it or not. It wasn't obligatory for him to stay on - all he had to do was join, stay in the background for a little, see what came out of the list and then decide if he wanted to leave, lurk or contribute. > "I love to go down to the schoolyard and watch all the little > children jump up and down and run around yelling and > screaming.... They don't know I'm only using blanks." > > - Emo Phillips Am I twisted for laughing at that? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 16:05:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA39879 for dynarec-outgoing; Wed, 2 May 2001 16:04:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <011f01c0d35e$bf8ba340$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Thumb Candy (again) Date: Thu, 3 May 2001 00:09:52 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I'm done brawlin'. Spent too much of my twenties doing that. ;-) That's okay, I'll do it for you. I'm 21. ;) > Sorry, but calling people "girls" is just flatly disrespectful. No amount > of "worth" can overcome that. Agreed. > We might argue on this list from time to time, but we have tremendous > respect for one another (well, at least I do for others - dunno about the > reverse!) Oh, I think we do. I know I do - there's quite a few people on this list that I have a great deal of respect for - the usual posters. There's you, Neil, who has proved yourself by writing CPU cores and experimenting with DRZ80, Mike and Victor who impress me constantly with their knowledge, David and Julian who have written dyarec cores and who's research makes for interesting reading (Dave, I've read some but I'll have to read yours properly at a later date). Then there's other people who pop back onto the list every now and again and add relevant input into the discussions. I like to think of this as a kind of think-tank of like-minded individuals with a common interest. Heh, then there's me - I come up with some jewels of information every now and again and try to think of interesting new techniques to recompile! And while I'm seriously interested in emulation and dynamic recompilation, as I think we all are, we don't have to be serious all the time! I know I'm not! > I'm actually surprised there's >50 people on the list - especially since > it's unpublished. Actually, so am I - incredibly surprised, actually. There's more people interested in dynamic recompilation than I actually thought - so we really should get DR68K going in a few weeks so that we'll all have something to discuss. I don't know about anyone else, but I'm really looking forward to it! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 18:56:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA40158 for dynarec-outgoing; Wed, 2 May 2001 18:55:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 19:13:28 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: this should get some tongues wagging (ON TOPIC!) In-Reply-To: <026201c0d35e$1b27e5c0$b32bfea9@daves> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > organized - I only hope my docs come out as good as yours has. I hope > > you've gotten an excellent grade on it... I'll read & grok the > > intermediate section, then give you my feedback on it. > Thanks very much, that's praise indeed. I'm sure you won't like thie bit > about using an intermediate code - It's still very will written even if I don't agree that an IR is a good idea for optimal execution. Here are a few examples of why: 1) Flag handling is different on each CPU. There isn't a 1:1 mapping of all instructions and all flag operations on each CPU. One would have to implement an IR of the aggregation of ALL CPUs it supported. (I.E. differences in SBC and SBB between processors). For instance, the 6809 only affects the zero flag, but on the x86 it affects 6 of the flags. The only way around this is to implement multiple of the same instruction. Eeew... 2) An IR requires calculation of all flags (half carry, interrupt masks, etc...) that the IR supports, and the target layer must handle them all - even if they aren't used. 3) The 6502 does both binary and BCD addition depending upon a flag being set. We couldn't predict beforehand that it's not in one mode or the other - it's the same instruction, just a flag difference. I'm not clear how it could be made generic without checking the flag at runtime and that'd be an execution expensive check to be making at every add/sub instruction. 4) Let's assume we have an IR that looks something like this that was generated from some unknown CPU: mov r0, #val1 mov [r4], r0 mov r1, #val2 mov [r5], r1 mov r2, #val3 mov [r6], r2 mov r3, #val4 mov [r7], r3 A 1:1 code mapping on the x86 might do something like this since it cannot guarantee that the register used before it will not be used later on: mov eax, #val1 mov ebx, [r4] mov [ebx], eax mov ecx, #val2 mov edx, [r5] mov [edx], ecx mov [r0], eax mov [r4], ebx mov eax, #val3 mov ebx, [r6] mov [ebx], eax mov [r1], ecx mov [r5], edx mov ecx, #val4 mov edx, [r7] mov [edx], ecx When the original code looked like this: mov [memr4], #val1 mov [memr5], #val2 mov [memr6], #val3 mov [memr7], #val4 I don't have an intermediate representation potentially expanding instructions then I can do tricky decisions because I'm aware of the source CPU and target CPU and know what I can and cannot safely do. Granted that you could solve the above by extending the IR instructions, but that'd just leave you with a buttload more instructions to implement and you're better off just writing a glue layer that ties the x86 library to the source CPU (to each of the source CPUs). Flags fall in this same category. I also can make assumptions about which source registers are being used and what target registers they'll reside in. For example, let's say for a moment that our source CPU has only 16 bit registers, yet on the target I know that I can write some funky instructions to temporarily use 16 bits of an x86 register by shifting it left 16 bits, using it, and shifting it back, rather than storing a register to memory and pulling it back (or push/pop). Shifts are far faster and pipelineable. How would something like this be represented in an intermediate language? I would think you'd wind up having to store to memory and restore rather than the shift approach. I don't see how it could be done with an IR. > I still have my doubts about the IC > slowing the compilation but it seems to make optimisations easier for a RISC > CPU but then I have my doubts about doing any optimisations at all from > playing with the figures in that JIT/Hotspot/Interpreting average speed > graph in excel. I don't think I've ever mentioned the IC slowing things down, but it'd be a bit slower. Still, overall, I don't think recompilation will take any time compared to the amount of time actually executing the code. I really doubt it's noticeable. > > Hm... they look OK here in Acrobat... > Strange. At my end in figures 3 and 14 the colours and borders of the > diamond-shaped decisions are all cocked up, are they ok for you? I'm not sure what "cocked up" means, but figure 3 looks OK, and 14 has that pretty little green coloring below the comparison. Is that what you're talking about? -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 21:39:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA40322 for dynarec-outgoing; Wed, 2 May 2001 21:37:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <018501c0d38d$4944d0b0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <01b701c0d346$ba415870$b32bfea9@daves> Subject: Re: DYNAREC: this should get some tongues wagging (ON TOPIC!) Date: Thu, 3 May 2001 05:55:15 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, I've just come to read your report just now as I'm approaching the end of mine (I'll be finished in about 2 hours) and I've come to the conclusion that I hate you. You seem to be much more free in the way that you can write it. We have been told that we have to research and write about two methodologies, pick one, show the designs that we used and so on. It's boring! Oh, and I can't use the word "I" at all in it, it has to be entirely third person. This is going to bore the pants off anyone who reads it. I reckon that I try subliminal writing and intersperse words like "Give this man a first" in the document. That may work. :)) Anyway, your report is interesting and it appears that your project was more interesting than mine. Bugger. Never mind, I've enjoyed it anyway - and I've learnt about writing compilers, so I'm certain that I've also gained some experience there. Can you see this self-persuasion thing going on here? Also, note that the time is 5:53am, I haven't been to bed and I suspect I won't be seeing it until tonight. So if weird messages start coming from me (more weird than normal, that is), now you know why. So when you see the "Ooga-booga!" message, you know that I'm running low on caffiene. For anyone that's seen the Underpants Gnomes from South Park, I'd just like to say that I am in fact doing a Tweek right now and I've had waaay too much caffiene tonight. Oops. Still, at least I can hand the project in a day early... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 21:41:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA40337 for dynarec-outgoing; Wed, 2 May 2001 21:40:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 3 May 01 00:54:50 -0400 Message-Id: <3.0.5.32.20010502215209.0080a100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 02 May 2001 21:52:09 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: 68000 Profile Report Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, Today, I hooked a profiler up to my 68K emulator, and will be analyzing Sega Genesis program execution to see which instructions are used most. I figured once I get some good data collected and tabulated (I want to see averages based on data obtained from ALL games running for a certain fixed time each) I'll make it public. Hopefully, seeing as how DR68K is hopefully going to become a reality soon, this could be of some use. I really haven't worked with dynarec yet (despite being on this list for quite a while), since I've been busy with so many non-emulation-related projects. Would it still be possible to help out with the DR68K project? But back to the profiling stuff... I figured if I rearranged the order in which instructions are emitted (currently, it's alphabetical order ;)), I could somewhat improve cache performance. I've experienced some very noticable speed gains by fine-tuning the link order in my Genesis emulator. The 68000 emulator alone is the biggest single object in the program, so I figure perhaps some speed could be gained by emitting the instructions in a more intelligent fashion. Dave: I want to download your report tomorrow, what I've heard on the list has made me eager to read it :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 21:49:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA40351 for dynarec-outgoing; Wed, 2 May 2001 21:48:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 22:05:47 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: <3.0.5.32.20010502215209.0080a100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Today, I hooked a profiler up to my 68K emulator, and will be analyzing > Sega Genesis program execution to see which instructions are used most. I > figured once I get some good data collected and tabulated (I want to see > averages based on data obtained from ALL games running for a certain fixed > time each) I'll make it public. Hopefully, seeing as how DR68K is hopefully > going to become a reality soon, this could be of some use. Oooh... this will be useful information. Not only am I interested in the instructions executed, I'd also like to know about which registers are used the most during execution. Any way we can extract that information out of your profiler? That'd at least give us an idea of what we should cache in x86 registers. > I really haven't worked with dynarec yet (despite being on this list for > quite a while), since I've been busy with so many non-emulation-related > projects. Would it still be possible to help out with the DR68K project? Well, according to Ralf, we all should just sit down and write code and beat it into shape. We can beat anything into a recompiler - even a hello world program. ;-) Of *COURSE* it's still possible! One of the things that I'd like us to do is discuss and figure out a direction. That process is only about 24 hours old, so if you'd take a gander at the prior emails on the list (ignore everything from Ralf and my repliest to him) I've put down some ideas as to the direction I think things should go. Comments - please! > But back to the profiling stuff... I figured if I rearranged the order in > which instructions are emitted (currently, it's alphabetical order ;)), I But we all know that the most important instructions are executed in alphabetical order, right? ;-) > could somewhat improve cache performance. I've experienced some very > noticable speed gains by fine-tuning the link order in my Genesis emulator. Oh yes... Good locality of cache reference will help tremendously. > Dave: I want to download your report tomorrow, what I've heard on the list > has made me eager to read it :) Yeah. It's so good it's disgusting. Easy reading, very nice. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 22:31:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA40399 for dynarec-outgoing; Wed, 2 May 2001 22:30:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 22:48:02 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Get to know your CPU interface API Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Contrary to what Ralf believes about designing your products before coding them, I'd like to continue the topic for the sake of putting everyone on the same page and give an opportunity for everyone to say their peace... This will give the newcomers an introduction of how a client would use the API and the oldtimers a refresher (I could use it, too!). Here's a little discussion on how I think the interface to DRM68K should go. This is based on Starscream, which is also based on MZ80. These are a bit of a departure from the existing APIs, but not changed too terribly much. It's still the same where it counts. Let me first mention the type notation I'm using. It's what I consider to be a "good" implementation of Microsoft's horribly botched "Hungarian" notation. I've seen it used in many UNIXen source packages and it's becoming more common. 5 Years ago if you told me to use it I'd tell you to go to hell, but now I can't live without it. It makes the code read easier - ESPECIALLY when it's not your code. Anyway, these are the prefixes on variable names: s_ - Static g_ - Global (public) sg_ - Static global (modular) u8 - 8 Bit unsigned integer u16 - 16 Bit unsigned integer u32 - 32 Bit unsigned integer s8 - 8 Bit signed integer s16 - 16 Bit signed integer s32 - 32 Bit signed integer p - Pointer pp - Pointer to pointer ppp - Pointer to pointer to pointer.... s - Structure e - Enumeration v - Void And when defining structures and enums: S - Structure E - Enumeration Basically, "char" and "int" are off limits. Instead use the unambiguous UINT8/UINT16/UINT32/INT8/INT16/INT32. First, let's get the basic structures and CONTEXT structure out of the way (and defined!): typedef struct { UINT32 u32LowAddress; UINT32 u32HighAddress; void *pvData; } SExecRegion; typedef struct { UINT32 u32LowAddress; UINT32 u32HighAddress; void *pvMemoryHandler; void *pvUserData; } SMemoryRegion; You create these tables based upon the architecture of the platform. The SExecRegion is a block of code data. So if the memory map had ROM mapped from 0-3ffff, it'd look like this: SExecRegion sg_sToobinROM[] = { {0x00000000, 0x0003ffff, NULL}, {0xffffffff, 0xffffffff, NULL} }; The execution would allocate (0x3ffff-0x0)+1 bytes and plug its pointer into pvData (the third structure member), and of course load the ROMs in the region(s). There can be more than one ROMable region here, too. The memory region is a bit different, as you must define one for UINT8/UINT16/UINT32 accesses for both read and writes (6 total structures). We've found that breaking this out rather than doing individual byte writes/reads (or UINT16 writes/reads) is actually quite a bit faster - by as much as 40%. I'll give an idea for the 32 bit region now: SMemoryRegion sg_sToobinUINT32MapWrite[] = { {0x00040000, 0x0004ffff, NULL, NULL}, // No handler - it's RAM {0x00980000, 0x00983fff, Pokey1, NULL}, // Pokey 1 handler {0x00984000, 0x00987fff, Pokey2, NULL}, // Pokey 2 handler {0xffffffff, 0xffffffff, NULL, NULL} }; The caller would fill in the second NULL in the 0x40000-0x4ffff region with a pointer to 64K of allocated RAM. Since the handler column is NULL, that means "just assume it's RAM that's pointed to by the last column" (pvUserdata). In the case of 0x980000-0x983fff being written to, Pokey1() would be called, and the pvUserdata parameter would be passed in: void Pokey1(UINT32 u32Address, UINT32 u32Data, void *pvUserData) { ... Pokey handler goes here } So you could choose to use pvUserData... or not! Clear as mud? Now that that's out of the way, here's the proposed context for a 68K: typedef struct { SExecRegion *psExec; SMemoryRegion *psUINT8Write; SMemoryRegion *psUINT16Write; SMemoryRegion *psUINT32Write; SMemoryRegion *psUINT8Read; SMemoryRegion *psUINT16Read; SMemoryRegion *psUINT32Read; void (*ResetHandler)(void); UINT32 u32DataRegisters[8]; UINT32 u32AddressRegisters[7]; UINT32 u32StackPointer; UINT32 u32PC; UINT32 u32ElapsedTicks; UINT32 u32SR; (only using lower 16 bits - alignment!) } CONTEXT; Hopefully this will make perfect sense... does it? Here are the basic APIs and their functional descriptions: DRSTATUS void DRM68kInit(void) Initializes the recompiler subsystem entirely. Must be called before any recompilation activity occurs. DRSTATUS void DRM68kShutdown(void) Frees all resources used by DRM68k. DRM68kAllocateContext(CONTEXT **ppsContext, ECPUType eCpuType) Initializes and creates a new context. eCpuType dictates whether it's a 68000 or 68010 emulation (they do carry different timing characteristics). DRM68kFreeContext(CONTEXT *ppsContext) Deinitializes, deallocates, and shuts down a context. UINT32 DRM68kExec(UINT32 u32Cycles) Execute for u32Cycles # of 68000 cycles. Returns a code indicating the address it tried to jump to that's invalid or else 0x80000000 indicating that the execution was successful. UINT32 DRM68kGetElapsedTicks(BOOL bClear) Get the # of 68K clock cycles that have passed since the last time the counter was reset with a call to DRM68kGetElapsedTicks(TRUE). DRSTATUS DRM68kSetContext(CONTEXT *psContext) Set the currently executing context to "psContext". This allows the recompiler to set up some internal goodies for fast action rather than indirecting everything. Used for setting up a new emulated (recompiled) CPU to use. DRSTATUS DRM68kGetContext(CONTEXT *psContext) Gets the currently executing context to what psContext points to. DRSTATUS DRM68kReset(void) Resets the virtual CPU DRSTATUS DRM68kInterrupt(UINT8 u8IntNum) Causes a virtual interrupt in the 68K (interrupt # in u8IntNum) DRSTATUS DRM68kReleaseTimeslice(void) This call only does something in the context of a memory read/write handler. The above API is fine and all, but how does one use this crap? Like this (error codes not : #define INTERRUPT_INTERVAL 12000000/60 // One interrupt per frame void main(int argc, char **argv) { CONTEXT *ps68KContext; UINT32 u32Result; UINT32 u32Adjust = 0; DRM68kInit(); DRM68kAllocateContext(&ps68KContext, CPU_68000); // Assume setting of memory handlers in ps68KContext here.... // ROMs are loaded while (1) { u32Result = DRM68kExec((INTERRUPT_INTERVAL - u32Adjust)); if (u32Result != 0x80000000) { // Something coredumped on us break; } // Cause an interrupt on IRQ 2 DRM68kInt(2); u32Adjust = DRM68kGetElapsedTicks(TRUE) - INTERRUPT_INTERVAL; } DRM68kReleaseContext(&ps68KContext); DRM68kShutdown(); } The weird adjustment math is just in case we don't EXACTLY get 12000000/60 cycles. It's typical for this not to happen, and we don't want any timing "drift" over executions. This is the kind of crap that causes disappearing sprites and other annoying time related things. OKAY! Any questions/comments on this? -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 23:05:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA40452 for dynarec-outgoing; Wed, 2 May 2001 23:04:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 08:18:10 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: To: Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by dynarec.com id XAA40449 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 2 May 2001, Neil Bradley wrote: > Oooh... this will be useful information. Not only am I interested in the > instructions executed, I'd also like to know about which registers are > used the most during execution. Any way we can extract that information > out of your profiler? That'd at least give us an idea of what we should > cache in x86 registers. I have those for Basilisk II/JIT, including scratch registers. Do you want me to post a sample here ? BTW I won't move from the following point: what we should cache in x86 registers is what the dynamic register allocater has decided to be. Bye, Gwenolé. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 23:29:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA40484 for dynarec-outgoing; Wed, 2 May 2001 23:27:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105030643.IAA22452@pons.ac.upc.es> Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <01c801c0d348$7f57a410$b32bfea9@daves> "from David Sharp at May 2, 2001 09:43:08 pm" To: dynarec@dynarec.com Date: Thu, 3 May 2001 08:43:04 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Depends on the form of the intermediate code -> Can I point anyone > interested towards the tarmac report, particularly the sections on the > 'explicit-implicit problem' and the entire 'Armlets - An Intermediate code' > section. > Printing it I will read this afternoon. > I've just written about 20k words on dynarecs and am not in the mood to do > much more. Plus the pub beckons. > I have written 50K words about emulation and I think I already have other 10K or 20K for ending my document ;). A discussion about IR or not IR would be interesting, I have just put some small comments in my doc, which in any case is general about emulation and not specific about dynarec. But IR are intended for a compiler based binary translator rather than the idea Neil has about direct translation (which I find refreshing and interesting). Ah! And for static binary translators which translate to a Virtual Machine language which is then executed with a threaded code interpreter and when finally translated to a different target ISA it is still around 50-100 times slower. And I know what I'm talking about ;). > Dave > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 23:38:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA40500 for dynarec-outgoing; Wed, 2 May 2001 23:37:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 08:51:22 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: To: Subject: Re: DYNAREC: Dynarec - the first testament Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by dynarec.com id XAA40497 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [Repost: I realized I didn't put a correct From: header] On Wed, 2 May 2001, Victor Moya del Barrio wrote: > Recompilation or translation perhaps does not take so much time. Somekind > of optimizations will take it. I already gave the following figures for the 68040 JIT compiler used in Basilisk II: ~8% of the total emulation time is spent for compiling/optimizing blocks under MacOS 8 and only 2% is spent under MacOS 7.x. The JIT compiler does the following optimizations: - register aliasing - FP register aliasing - lazy constant offsetting - dynamic register allocation - block chaining - support for conditional moves - support for partial register stalls detection. Well, not really ;-) But let me remind you that we *don't* compile every single block, that's a waste of time (see principle of locality). Rather, the most frequently used blocks are recompiled. The "frequency rule" is: compile a block if it is executed for than 10 times. Bye, Gwenolé. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 23:39:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA40506 for dynarec-outgoing; Wed, 2 May 2001 23:38:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105030653.IAA18223@pons.ac.upc.es> Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: "from Neil Bradley at May 2, 2001 01:55:12 pm" To: dynarec@dynarec.com Date: Thu, 3 May 2001 08:53:40 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Would using a `neutral' instruction set like GNU Lightning's be an > > alternative? Have front ends that use its instruction-producing > > macros. Have Lightning's existing backends produce x86, Sparc, > > PowerPC, etc. instructions for immediate execution. > > As everyone knows, I'm not a fan of IR for a variety of > reasons. Differences in actions for each different instruction across > CPUs, such as DEC/INC (do they modify cary? Set the direction flag? Is > there a direction flag? etc...). Making an IR into something that covers > all types of CPUs to be recopmiled (68K or 34010 may be rational > targets) would come up with an absolutely HUGE IR. > He! Really huge sure. Dixie ISA (the project where I work) started as a clean RISC ISA very similar to the Alpha architecture (well with vectorial instructions because it started for translating the Convex vectorial architecture, but it does not matter) and as it started to be implemented new architectures it started to become a mess. Flags and whatever. The problem is that if you aren't incrementing your ISA for each architecture you will have to produce huge and inefficient translation which should be later handled by a too smart backend which should retrieve the semantics of the intermediate translation and try to generate the best code. Really hard. I think it is better to mantein as information as possible between the two phases. We have to remember thatn one of the purposes of intermediate representations in compilers is portability (rather than build NxN compilers build N frontends and N backends). But I don't think we want to produce 'portable but just the slow performance payback of portability' dynarecs. Our purpose is to build the faster possible dynarecs. > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 23:41:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA40523 for dynarec-outgoing; Wed, 2 May 2001 23:40:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 2 May 2001 23:58:32 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > used the most during execution. Any way we can extract that information > > out of your profiler? That'd at least give us an idea of what we should > > cache in x86 registers. > I have those for Basilisk II/JIT, including scratch registers. Do you want > me to post a sample here ? Most definitely - yes! > BTW I won't move from the following point: what we should cache in x86 > registers is what the dynamic register allocater has decided to be. I'm not sure what you mean by this, but I'm guessing that what you meant to say is that you want the ability to configure the DRM68K to be able to say which registers are cached in x86 regs? If so, yeah, I'm there. I agree. 'Cause it'll be different for each code being executed. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 2 23:44:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA40533 for dynarec-outgoing; Wed, 2 May 2001 23:43:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105030658.IAA17796@pons.ac.upc.es> Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: "from Neil Bradley at May 2, 2001 02:40:34 pm" To: dynarec@dynarec.com Date: Thu, 3 May 2001 08:58:55 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > You guys all get along too well. A *little* contention might be > > interesting for us folks in the galleries. :) > > IMO you should have given him a little more time to prove his worth. > > Sorry, but calling people "girls" is just flatly disrespectful. No amount > of "worth" can overcome that. > Strange start for a 'serious' dynarec list. It just reminds me some irc channels I try to avoid ... > I'm actually surprised there's >50 people on the list - especially since > it's unpublished. > Strange because no one as been posting in months. I know there are some guys I invited here and are just lurking, I supose a similar advertisement system happened with the other members of the list;). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 00:08:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA40571 for dynarec-outgoing; Thu, 3 May 2001 00:07:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105030722.JAA23597@pons.ac.upc.es> Subject: Re: DYNAREC: Get to know your CPU interface API In-Reply-To: "from Neil Bradley at May 2, 2001 10:48:02 pm" To: dynarec@dynarec.com Date: Thu, 3 May 2001 09:22:56 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > OKAY! Any questions/comments on this? > I'm already used to this kind core API (remember I started learning about emulation withh the MZ80 ;), everything seems fine for me. (Noise mail :)). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 02:28:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA40880 for dynarec-outgoing; Thu, 3 May 2001 02:27:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701c0d3b5$84e97e90$3fb5c3c1@FOSSIL> From: "Kieron Wilkinson" To: References: <200105030722.JAA23597@pons.ac.upc.es> Subject: DYNAREC: Thumb Candy - Part 2 Date: Thu, 3 May 2001 10:43:33 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Interesting Noise: Thumb Candy - Part 2 is now up (after the 3rd attempt!) In this installment: Space Invaders Space Invaders the dance (worth downloading all by itself!) Asteroids "Puckman" (hehe) The Spectrum Enjoy Upping part 3 now... Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 04:02:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA41022 for dynarec-outgoing; Thu, 3 May 2001 04:02:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001001c0d3c2$bd0288f0$3fb5c3c1@FOSSIL> From: "Kieron Wilkinson" To: References: <200105030722.JAA23597@pons.ac.upc.es> <000701c0d3b5$84e97e90$3fb5c3c1@FOSSIL> Subject: DYNAREC: Thumb Candy - Part 3 Date: Thu, 3 May 2001 12:18:09 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Last bit of Interesting Noise from me for a while before I go back into lurking: Thumb Candy - Part 3 (final part) is now up. In this installment: Birth of the British Gaming Industry (the bedroom programmer) Manic Miner Interview with Mathew Smith (woah!) 80's Collapse of the arcade/console gaming markets Nintendo Mario Bros. Tetris Playstation I&II (& Tombraider) People say that this was too much of a jump... Where was the Amiga/SNES/MegaDrive? A bit of an 8-bit -> 32/64 bit gap there. But IMO the older stuff was the most interesting, and if they only had one programme to do it all in, then I am glad they concentrated on what they did... Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 08:54:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA41314 for dynarec-outgoing; Thu, 3 May 2001 08:54:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001c01c0d3eb$d6a1b0f0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <200105030722.JAA23597@pons.ac.upc.es> <000701c0d3b5$84e97e90$3fb5c3c1@FOSSIL> <001001c0d3c2$bd0288f0$3fb5c3c1@FOSSIL> Subject: Re: DYNAREC: Thumb Candy - Part 3 Date: Thu, 3 May 2001 17:12:05 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, It may just be me, but where is this incoming directory - I can't see it! I've done a "find / -name incoming" and found nothing, so I don't know what I'm looking for now! > People say that this was too much of a jump... Where was the > Amiga/SNES/MegaDrive? A bit of an 8-bit -> 32/64 bit gap there. But IMO the > older stuff was the most interesting, and if they only had one programme to > do it all in, then I am glad they concentrated on what they did... Agreed. While it was a jump, I preferred that they covered what they did! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 09:12:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA41346 for dynarec-outgoing; Thu, 3 May 2001 09:12:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 29 Mar 1959 04:14:02 -0600 (CST) From: Graham Toal Message-Id: <195903291014.EAA24556@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy - Part 3 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > It may just be me, but where is this incoming directory - I can't see it! > I've done a "find / -name incoming" and found nothing, so I don't know what > I'm looking for now! And there's no anonymous login to ftp.dynarec.com - will someone please move the files somewhere visible and post the URL? thanks G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 09:19:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA41360 for dynarec-outgoing; Thu, 3 May 2001 09:19:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 09:37:23 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy - Part 3 In-Reply-To: <195903291014.EAA24556@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I've done a "find / -name incoming" and found nothing, so I don't know what > > I'm looking for now! > And there's no anonymous login to ftp.dynarec.com - will someone please > move the files somewhere visible and post the URL? I see what happened. You uploaded them to archive.synthcom.com... ;-) I'll move the files after I get back from work (gotta go in and talk biz with the boss)... -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 10:03:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA41422 for dynarec-outgoing; Thu, 3 May 2001 10:03:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007001c0d3f5$704f3020$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: DYNAREC: ...and I've finished too! Date: Thu, 3 May 2001 18:18:29 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, So, my final year project is complete and handed in. All done. I've been up for 31 hours straight and I'm not tired. Bugger. Anyway, I'm pretty happy. Dave, you're not alone in being overjoyed! =) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 10:23:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA41448 for dynarec-outgoing; Thu, 3 May 2001 10:23:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: primrose.csv.warwick.ac.uk: csuix owned process doing -bs Date: Thu, 3 May 2001 18:38:50 +0100 (BST) From: David Sharp To: Subject: Re: DYNAREC: ...and I've finished too! In-Reply-To: <007001c0d3f5$704f3020$0100a8c0@home.local> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Anyway, I'm pretty happy. Dave, you're not alone in being overjoyed! =) Who said anything about being overjoyed - I've just come back from 9 hours straight revising real compilers... Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 10:45:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA41497 for dynarec-outgoing; Thu, 3 May 2001 10:45:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 29 Mar 1959 05:47:14 -0600 (CST) From: Graham Toal Message-Id: <195903291147.FAA24759@gtoal.com> To: dynarec@dynarec.com Subject: DYNAREC: IR: Intermediate Representation Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Due to a thinko yesterday, I failed to post (and lost any copy of) an article following up my earlier comments on dynamic *compilers* (not recompilers). Anyway, to avoid spending another hour rewriting it, I'll just make one point in this post: NeilG is adamantly opposed to "IR" (which I understand now stands for Intermediate Representation), eg the Gnu Lightning approach of a 'portable' intermediate code representing either an imaginary or even a real machine, from which a back end generates codes for a real target such as x86. Just for the record, I agree with this completely. Where I diverge from his opinion is in what I see is a suitable intermediate code. In my opinion, a Register Transfer Language (RTL) is the *perfect* intermediate code, because it describes exactly the behaviour of the emulated machine. A mythical dynarec compiler, which took a RTL of the emulated machine, and an RTL of the target machine, and generated an optimal mapping between the two, would be a good system. What I was saying in my post (that got lost) was that in the absence of a good RTL, the C code which we use in our traditional emulators is as close to a simple machine description as we're likely to get; the C code doesn't know about things like the host processor's flags, or instruction pipelines or anything, it's just a very minimalist description of what the emulated process has to do to an emulated environment in order to make that environment behave the same was as the real processor. So, if you take a sequence of instructions to be emulated (a "Basic Block" in compiler-writer terms), convert it into the sequence of C instructions that a traditional emulator would have called (but in our case, exbedded from that framework, with no fetch/execute loop and no jump target labels within the basic block), then I maintain that a good C compiler has the potential to convert that sequence to the minimal equivalent native code sequence that a direct hand translation would have given, where on average 1 emulated instruction is replaced by one target instruction. I.e. what I am asserting is that the use of C in this way is *not* equivalen to an IR (such as Gnu Lightning, or David's "Armlets") but is very close to a RTL, and I assert than an RTL is the ideal representation to use when converting from one machine format to another. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 10:47:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA41508 for dynarec-outgoing; Thu, 3 May 2001 10:47:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009001c0d3fb$91970720$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: ...and I've finished too! Date: Thu, 3 May 2001 19:04:47 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Who said anything about being overjoyed - I've just come back from 9 hours > straight revising real compilers... Sounds like a fun time to me! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 11:04:33 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA41529 for dynarec-outgoing; Thu, 3 May 2001 11:04:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 29 Mar 1959 06:06:06 -0600 (CST) From: Graham Toal Message-Id: <195903291206.GAA24802@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: IR: Intermediate Representation Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > It's still very will written even if I don't agree that an IR is a good > idea for optimal execution. Here are a few examples of why: > > 1) Flag handling is different on each CPU. There isn't a 1:1 mapping of > all instructions and all flag operations on each CPU. One would have to > implement an IR of the aggregation of ALL CPUs it supported. (I.E. > differences in SBC and SBB between processors). For instance, the 6809 > only affects the zero flag, but on the x86 it affects 6 of the flags. The > only way around this is to implement multiple of the same > instruction. Eeew... > > 2) An IR requires calculation of all flags (half carry, interrupt masks, > etc...) that the IR supports, and the target layer must handle them all - > even if they aren't used. No it doesn't, if the IR is an RTL and the translator optimises on basic blocks, not individual instructions: > 3) The 6502 does both binary and BCD addition depending upon a flag being > set. We couldn't predict beforehand that it's not in one mode or the > other - it's the same instruction, just a flag difference. I'm not clear > how it could be made generic without checking the flag at runtime and > that'd be an execution expensive check to be making at every add/sub > instruction. I don't think that's correct is it? My recollection of the 6809 (I admit it's been about 10 years since I wrote a 6809 emulator or did much programming for it so I'll accept corrections if I'm wrong) is that there is a Half-carry bit in the status register which is set on any ADD or similar operation (but not subtracts) and that bit is used in the DAA instruction (decimal-adjust-accumulator). There isn't a mode that needs to be checked on every instruction. An ADD is always a binary ADD. And in fact this is a perfect example of how using a RTL, or even C, is ideal as input to an optimising translator: Every 6809 add instruction will naively translate to something like: ADD opd -> recCC.H = halfcarry(regA, opd); regA = regA + opd; if you translate a basic block of code, which contains several of these translations, such as: ADD opd1 ADD opd2 ADD opd3 DAA -> recCC.H = halfcarry(regA, opd1); regA = regA + opd1; recCC.H = halfcarry(regA, opd2); regA = regA + opd2; recCC.H = halfcarry(regA, opd3); regA = regA + opd3; regA = adjust(regA, recCC.h) then the first two assignments to regCC.H can both be thrown away. (In fact for this processor almost all assignments of the half carry flag will be thrown away - it's seldom used) this would give us: regA = regA + opd1; regA = regA + opd2; recCC.H = halfcarry(regA, opd3); regA = regA + opd3; regA = adjust(regA, recCC.h) and simply compiling this normally would generate close to optimal code. (I'll post more convincing examples from a real emulator some time later) G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 13:08:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA41633 for dynarec-outgoing; Thu, 3 May 2001 13:08:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 13:26:24 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: IR: Intermediate Representation In-Reply-To: <195903291206.GAA24802@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > 2) An IR requires calculation of all flags (half carry, interrupt masks, > > etc...) that the IR supports, and the target layer must handle them all - > > even if they aren't used. > No it doesn't, if the IR is an RTL and the translator optimises on > basic blocks, not individual instructions: I think what you're seeing is there are no "basic blocks" in recompilation. Dynamic recompilation is 1:1 instructions, not higher level. > > 3) The 6502 does both binary and BCD addition depending upon a flag being > > set. We couldn't predict beforehand that it's not in one mode or the > I don't think that's correct is it? My recollection of the 6809 (I admit I said 6502, not 6809. And yes, it's most definitely correct. > it's been about 10 years since I wrote a 6809 emulator or did much > programming for it so I'll accept corrections if I'm wrong) is that > there is a Half-carry bit in the status register which is set on any > ADD or similar operation (but not subtracts) and that bit is used in > the DAA instruction (decimal-adjust-accumulator). There isn't a mode > that needs to be checked on every instruction. An ADD is always a binary ADD. Not in the 6502 it's not. > Every 6809 add instruction will naively translate to something > like: Fine if you take just that CPU. Now take an aggregation to the 68K, the 34010, the Z80, the 6502, the 6808, 6809, and any other CPU and you'll find the intermediate language needs to be FAR more expansive than you'd ever imagine. > if you translate a basic block of code, which contains several of these > translations, such as: > > ADD opd1 > ADD opd2 > ADD opd3 > DAA But the decimal vs. binary is determined at runtime on the 6502 (it HAS to!), not at compile time. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 14:15:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA41709 for dynarec-outgoing; Thu, 3 May 2001 14:15:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 3 May 01 17:30:40 -0400 Message-Id: <3.0.5.32.20010503142807.0080e760@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 03 May 2001 14:28:07 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Get to know your CPU interface API In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >ppp - Pointer to pointer to pointer.... I never like dealing with those, eeew ;) >typedef struct >{ > UINT32 u32LowAddress; > UINT32 u32HighAddress; > void *pvData; >} SExecRegion; > >typedef struct >{ > UINT32 u32LowAddress; > UINT32 u32HighAddress; > void *pvMemoryHandler; > void *pvUserData; >} SMemoryRegion; Will the pointer to memory have the base address subtracted from it? This can save an instruction or 2. I do it in Genital68K. >typedef struct >{ > SExecRegion *psExec; > SMemoryRegion *psUINT8Write; > SMemoryRegion *psUINT16Write; > SMemoryRegion *psUINT32Write; > SMemoryRegion *psUINT8Read; > SMemoryRegion *psUINT16Read; > SMemoryRegion *psUINT32Read; > void (*ResetHandler)(void); > UINT32 u32DataRegisters[8]; > UINT32 u32AddressRegisters[7]; > UINT32 u32StackPointer; > UINT32 u32PC; > UINT32 u32ElapsedTicks; > UINT32 u32SR; (only using lower 16 bits - alignment!) >} CONTEXT; What about the user/supervisor address space distinction? The real M68K is actually even more complicated, I think, because it has user data, user program, supervisor data, supervisor program, and something else (I forget exactly.) Starscream makes you set up pointers for supervisor and user address spaces. Genital68K does this too, but also includes an option to forget about the distinction. A total of 3 sets of memory and fetch pointers would be needed if you wanted to do it this way. I haven't dealt with a system where this matters, though... Also, what about having a status variable? I didn't look to see how Starscream handles it, but when a STOP instruction is executed in Genital68K, a bit is set in the status variable. The PC will not advance until this bit is cleared again (an interrupt is processed, reset occurs, etc.) Also, why only 7 A-registers? You'll need an SSP and USP distinction, I'd suggest: UINT32 u32AddressRegisters[8]; UINT32 u32InactiveSP; When the privilege mode is supervisor, u32InactiveSP contains the USP and A7 is the SSP. When the privilege mode is user, u32InactiveSP contains the SSP and A7 has the USP. You'll also need an interrupt array. At least 7 bytes are needed, 1 per level. The array will contain vectors of pending interrupts, or 0 if none is pending. You can use an 8th element to store the number of pending interrupts (for easy checking.) For the 68010, a breakpoint handler will be necessary. It would take one argument: the breakpoint number. >DRSTATUS DRM68kInterrupt(UINT8 u8IntNum) > >Causes a virtual interrupt in the 68K (interrupt # in u8IntNum) You must have 2 arguments: UINT8 u8IntNum UINT32 vector Not all systems use auto-vectored interrupts. If an auto-vectored interrupt is desired, a special value needs to be passed as "vector." Other than that, sounds great to me! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 14:19:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA41719 for dynarec-outgoing; Thu, 3 May 2001 14:19:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 3 May 01 17:35:09 -0400 Message-Id: <3.0.5.32.20010503143233.0080b100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 03 May 2001 14:32:33 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: References: <3.0.5.32.20010502215209.0080a100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Oooh... this will be useful information. Not only am I interested in the >instructions executed, I'd also like to know about which registers are >used the most during execution. Any way we can extract that information >out of your profiler? That'd at least give us an idea of what we should >cache in x86 registers. I can't log register usage, sorry :( Gwenole mentioned he has a good profiler. I'll submit my findings once I finish gathering the data. I've already been taking a look at some of the results, and they're a bit surprising in some cases. MOVE isn't used nearly as much as I thought it would be. One game, Contra, hardly ever uses BSR/JSR and RTS. I guess it's just a bunch of spaghetti code. >Well, according to Ralf, we all should just sit down and write code and >beat it into shape. We can beat anything into a recompiler - even a hello >world program. ;-) Sounds like how I did Genital68K ;) And I regret it. To tell you the truth, I actually did sort of plan things out first, but not well enough! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:02:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41781 for dynarec-outgoing; Thu, 3 May 2001 15:02:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 15:20:08 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Get to know your CPU interface API In-Reply-To: <3.0.5.32.20010503142807.0080e760@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >ppp - Pointer to pointer to pointer.... > I never like dealing with those, eeew ;) You know, I didn't either. But after a while, it grew on me. As long as they weren't the crappy Microsoft directives, it worked great. Not only that, from anyone who has read my code, whether or not they agree about the formatting, etc... have always said that it's extremely readable. That's the goal! > > UINT32 u32LowAddress; > > UINT32 u32HighAddress; > > void *pvData; > >} SExecRegion; > > UINT32 u32LowAddress; > > UINT32 u32HighAddress; > > void *pvMemoryHandler; > > void *pvUserData; > >} SMemoryRegion; > Will the pointer to memory have the base address subtracted from it? This > can save an instruction or 2. I do it in Genital68K. Point taken. Hm... will a dynarec ever have to scan this table? I don't think the pvUserData needs subtraction for recompilation, so we could do the subtraction for the user when we generate the code. The plan was to check these ranges when a read/write occurs as inlined code rather than scanning the actual table. Hm.... Let me think about this one, but yes, let's figure out if it's needed first. It may not be in the world of recompilation. > > void (*ResetHandler)(void); > > UINT32 u32DataRegisters[8]; > > UINT32 u32AddressRegisters[7]; > > UINT32 u32StackPointer; > > UINT32 u32PC; > > UINT32 u32ElapsedTicks; > > UINT32 u32SR; (only using lower 16 bits - alignment!) > >} CONTEXT; > What about the user/supervisor address space distinction? The real M68K is > actually even more complicated, I think, because it has user data, user > program, supervisor data, supervisor program, and something else (I forget > exactly.) > > Starscream makes you set up pointers for supervisor and user address > spaces. Genital68K does this too, but also includes an option to forget > about the distinction. A total of 3 sets of memory and fetch pointers would > be needed if you wanted to do it this way. > > I haven't dealt with a system where this matters, though... Right. Can you give me a 50,000 foot level view of the user/supervisor operation? I'm not clear on it, and the book I have spreads the description out all over the book. Starscream doesn't implement both, does it? I mean, will executing a supervisor only instruction cause a trap? I honestly don't know. > Also, what about having a status variable? Isn't that what u32SR is for? > I didn't look to see how Starscream handles it, but when a STOP instruction > is executed in Genital68K, a bit is set in the status variable. The PC will > not advance until this bit is cleared again (an interrupt is processed, > reset occurs, etc.) I see - that's different from SR. Sort of a "sleep" mode of sorts, or HALT. Yeah, I agree - it's needed, too. > Also, why only 7 A-registers? I thought that A8 was the user SP. > You'll need an SSP and USP distinction, I'd > suggest: > > UINT32 u32AddressRegisters[8]; > UINT32 u32InactiveSP; Then shouldn't they be called USP/SSP respectively rather than u32InactiveSP? > When the privilege mode is supervisor, u32InactiveSP contains the USP and > A7 is the SSP. When the privilege mode is user, u32InactiveSP contains the > SSP and A7 has the USP. Weird. So the mode they're in causes them to swap, eh? I now see the rationale behind calling it u32InactiveSP. > You'll also need an interrupt array. At least 7 bytes are needed, 1 per > level. The array will contain vectors of pending interrupts, or 0 if none > is pending. You can use an 8th element to store the number of pending > interrupts (for easy checking.) Or just a mask of the pending interrupts. Does the 68K internally latch interrupts? I guess it would have to if interrupts came in at different priorities. Okay. I'll add it. One question - how come Starscream doesn't have anything like that in its context? > For the 68010, a breakpoint handler will be necessary. It would take one > argument: the breakpoint number. Ok. How are breakpoints generated? > >DRSTATUS DRM68kInterrupt(UINT8 u8IntNum) > >Causes a virtual interrupt in the 68K (interrupt # in u8IntNum) > You must have 2 arguments: > UINT8 u8IntNum > UINT32 vector > Not all systems use auto-vectored interrupts. If an auto-vectored interrupt > is desired, a special value needs to be passed as "vector." Ah - gotcha. I understand. So it needs to look like this: DRSTATUS DRM68KInterrupt(UINT8 u8IntNum, UINT32 u32VectorNumber); Does that look right? Depending on your feedback, I'll cobble together a .H file for DRM68K and you can scrutinize it with your 68K experience. ;-) I'm quite rusty at it... -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:03:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41791 for dynarec-outgoing; Thu, 3 May 2001 15:03:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 15:21:28 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: <3.0.5.32.20010503143233.0080b100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >out of your profiler? That'd at least give us an idea of what we should > >cache in x86 registers. > I can't log register usage, sorry :( Gwenole mentioned he has a good > profiler. But if you have the instruction #s themselves then we could derive it. > I've already been taking a look at some of the results, and they're a bit > surprising in some cases. MOVE isn't used nearly as much as I thought it > would be. One game, Contra, hardly ever uses BSR/JSR and RTS. I guess it's > just a bunch of spaghetti code. Just put everything in main(). ;-) > >Well, according to Ralf, we all should just sit down and write code and > >beat it into shape. We can beat anything into a recompiler - even a hello > >world program. ;-) > Sounds like how I did Genital68K ;) And I regret it. To tell you the truth, > I actually did sort of plan things out first, but not well enough! Precisely. The idea is to minimize the amount of rearchitecting one has to do if it wasn't thought out beforehand. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:18:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41823 for dynarec-outgoing; Thu, 3 May 2001 15:17:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 15:35:07 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > But let me remind you that we *don't* compile every single block, that's a > waste of time (see principle of locality). I really don't understand why everyone is focusing so much on the "time to recompile". It's *INSIGNIFICANT* compared to the overall execution! Why write a recompiler *AND* an emulator? Just to avoid recompiling less often used blocks of code? I can understand worrying about continually recompiling code that's self modifying, but I cannot understand why everyone's going crazy about recompilation time. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:18:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41834 for dynarec-outgoing; Thu, 3 May 2001 15:18:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 15:36:44 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy (again) In-Reply-To: <200105030658.IAA17796@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I'm actually surprised there's >50 people on the list - especially since > > it's unpublished. > Strange because no one as been posting in months. I know there are some > guys I invited here and are just lurking, I supose a similar advertisement > system happened with the other members of the list;). I've actually closed the list for now. Ralf tried to resubscribe at least once and I wanted to avoid him doing that. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:21:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41856 for dynarec-outgoing; Thu, 3 May 2001 15:21:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004901c0d421$d6e58830$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Dynarec - the first testament Date: Thu, 3 May 2001 23:38:42 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I really don't understand why everyone is focusing so much on the "time to > recompile". It's *INSIGNIFICANT* compared to the overall execution! Why > write a recompiler *AND* an emulator? Just to avoid recompiling less often > used blocks of code? I was one of the guys who originally mentioned this and I've now moved around to NB's point of view. He's right, why worry about it? > I can understand worrying about continually recompiling code that's self > modifying, but I cannot understand why everyone's going crazy about > recompilation time. Agreed, it shouldn't be too much (if any) slower than a normal emulator - and we should have speed increases everywhere else! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:23:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41871 for dynarec-outgoing; Thu, 3 May 2001 15:23:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 29 Mar 1959 10:25:51 -0600 (CST) From: Graham Toal Message-Id: <195903291625.KAA25427@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: IR: Intermediate Representation Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > No it doesn't, if the IR is an RTL and the translator optimises on > > basic blocks, not individual instructions: > > I think what you're seeing is there are no "basic blocks" in > recompilation. Dynamic recompilation is 1:1 instructions, not higher > level. Aha, now we're cutting past the cobwebs to the important stuff. I maintain that in order to do really good recompilation, you *must* identify basic blocks, and translate at the block level. This is done with possibly an initial static tree-walk of the code, but mainly by dynamic profiling as it runs, noting jump sources and destinations. You need to make a strongly educated guess at what is a basic block, then if you later generate either 1) a jump into that block or 2) an instruction which changes the code within that block (yech) then you have to invalidate the previously generated code, and start again for those instructions. Also keeping a permanent global history is almost essential, for correcting these mistakes. (However the mistakes do not cause run-time errors. They just cause code to be thrown away and generated differently) You'll need an efficient mechanism for identifying generated code sequences which are invalidated by changes to the binary or jumps into the middle of an existing block. Both are easily implemented with large arrays of flags, assuming you have the space, or binary search tables, if you don't and want to trade some speed for space. Given the above, you *can* work with basic blocks, and if you do, you get a *MAJOR* optimisation win over a translation that is instruction by instruction. Perhaps given the above you can now see why I think an optimising compiler should be the core of a dynarec rather than the emulator code and and assembly generator. I expect you to come back with specific examples from some architectures that will suggest that identifying basic blocks is impossible, but I betcha there are just as many architectures where it definitely is possible. *Especially* in video games where the code is usually in eprom so self- modifying code is not a real issue. I have an existence proof that it is possible for at least one game on one architecture. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:28:33 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41885 for dynarec-outgoing; Thu, 3 May 2001 15:28:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00b001c0d422$49b26ae0$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: Thumb Candy (again) Date: Thu, 3 May 2001 23:42:08 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've actually closed the list for now. Ralf tried to resubscribe at least > once and I wanted to avoid him doing that. Of course, I'm a Brit and have been living under an oppresive regime all my life without even knowing it, but doesn't this sort of count as "abridging the freedom of speech" :) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:30:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41900 for dynarec-outgoing; Thu, 3 May 2001 15:30:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Immediate Representation From: "M.I.K.e" Message-ID: <0003836d1c2cb0b9_mailit@mail.dynarec.com> References: Date: Fri, 04 May 2001 00:39:37 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >As everyone knows, I'm not a fan of IR for a variety of >reasons. Differences in actions for each different instruction across >CPUs, such as DEC/INC (do they modify cary? Set the direction flag? Is >there a direction flag? etc...). Making an IR into something that covers >all types of CPUs to be recopmiled (68K or 34010 may be rational >targets) would come up with an absolutely HUGE IR. Ok, most know this story, but since we have some new guys on the list... Some time ago I liked the idea of having an intermediate representation (I even had a name for it: Virtual Intermediate Processor - VIP for short). I analysed many architectures (about half a dozen CISC and over half a dozen RISC) and revised my idea... Sure, the processors seem to do the same, but as soon as you consider flags it gets complicated, and then you have processors with very "weird" instructions. If you wanted to create a VIP for such a collection of architectures there are two extremes: 1. You try to cover about any instruction in all the architectures. This will lead to several hundred, maybe even close to thousand "instructions" for the VIP and no one would like to implement it. You'd be really surprised how many different instructions some architectures have just for logic arithmetics. And as soon as you bring division into play it gets very confusing because there are architectures: with no division, with a simple division, a division which generates a remainder, a division which works in 1-bit step, a division which works in 8-bit steps, and so on! 2. You make the VIP very simple and cover everything in instruction sequences. In this case it will be quite easy to write traget code emitter because you only have to translate very basic instructions. But the source to immediate code translator will be very time consuming to write, as you have to split up every instruction into very basic parts. Not to mention that you simply cannot optimize such immediate code, which will lead to very bad target code especially when source and target are quite similar. So you either have something that no one wants write a target layer for, because it's just huge. Or you have something where no one wants to write a source layer and also leads to poor traget code. Of course you could try to find a compromise between the two extremes, but it'll be very hard to find it, and it's likely to become unbalanced with any new architecture you might want to add. Belive me, I loved the idea of having to write two translators for each architecture, one from architecture to VIP and the other vice versa. But I had to realize that it's not practical. I even tried if it might be possible just for RISC, but when you take a look at PowerPC and PA-RISC you'll notice that RISC instruction sets aren't necessarily easy and not too similar either... Sure, intermediate code is nice for compilers, but in that case you are dealing with a high-level language on the source layer and not machine code! I hope this was on-topic enough for Ralph... >-->Neil -- M.I.K.e Oh, I am a C programmer and I'm okay I muck with indices and structs all day And when it works, I shout hoo-ray Oh, I am a C programmer and I'm okay --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:30:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41908 for dynarec-outgoing; Thu, 3 May 2001 15:30:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec - the first testament From: "M.I.K.e" Message-ID: <0003836c6caaf70e_mailit@mail.dynarec.com> References: Date: Thu, 03 May 2001 23:50:32 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Okay, so here's the "layout" and direction I think we should go with the >project. Better late than never: Here are my thoughts... >* I'd like to treat this as a professional product. Not as a hack & slash >little toy as we've come to know (but not necessarily love) in so many >freeware "products". This includes documentation and plenty of comments >throughout the code. I also want a well-structured and well-documented product, since I'm fed up with those quick and dirty hacks where nobody knows whats going on, including the programmer himself after a few weeks... >* Decide on a coding standard and stick to it. This is advisable, I guess. >* Figure out how integration and source code coordination will be handled. I don't have much experience with revision control systems but a person certainly brings much more intelligence into play that it's probably less likely that someone will screw up the code (if it wasn't the coordinator himself). I think NB already voluteered for the job of the coordinator and he'd have my full trust. >* Make it publicly available, source and all, under the BSD license (not >the GNU license - too restrictive). True. We want the code to be used and if the license is too restrictive not too many programmers will use it. >* Requirements list for the dynarec: >+ Generate the fastest executing code possible FTL! ;-) >+ Be extensible to other source and targer processors Yes, we'd certainly want to have a slight modular approach that decoders, and guest code optimizers won't have to be rewritten for each new host system. But I think we all agreed on this point anyway. >+ Provide source and target level optimization Indeed, source level optimization would be portable and the target level one will have to be written for each host. So we should pack as much into the source level as possible, but not too much, as that might hinder translation between similar machines. >+ Work with any standard stack based or register based calling convention > compiler Good idea. >+ Provide both lax and tight timing Agreed. >+ Optionally allow passing in of "hints" to the Dynarec from the client > API to change its optimization behavior, but still generate optimal code > regardless. Also a nice idea, since optimizations can depend on the code you want to run. >+ Leverage existing CPU emulator core APIs (Starscream, MZ80, etc...) to > allow simple porting/integration when it's released. >+ Leverage existing CPU emulator cores for comparisons to ensure that > recompiled code generated actually executes properly - timing, > operation, and flag. I guess we all agreed on these points some months ago. >+ Provide target processor libraries for generating binary output. As an > example, an x86 opcode generator library would emit x86 opcodes that may > be used by many target layers. Very good idea! This will make the development of new dynarecs and the retargetting of existing ones much easier. >+ Optionally optimize by doing a depth traversal on the call tree. This > will eliminate jump lookups. For readers of the "Shade" document: it's called "chaining" there... >+ Allow recompilation of more than one instance of a CPU It's clear that NB emulated arcade machines ;-) >+ Write it in C (no need to make it unnecessarily complex or slower) I don't think that we'd need OOP for this one, so C is the best choice. >+ Provide fundamental routines (such as opcode node > allocation/deallocation) for the target and source layers Hmm, reminds me of programming exercises: "Develop linked lists" ;-) But it's a good idea to make our basic tools as efficient as possible. >+ Implement a disassembler API for each target and source CPU supported Certainly, otherwise we had no chance to debug the code. >+ Provide "kernel" based logging of disassemblies and progress so we can > debug this thing. It'll be a bear to debug. I haven't debugged a dynarec, but I can imagine that it won't be that much fun... >* We need someone to work on documentation for this puppy. I'm really not >up to it due to the fact that I'm doing nothing but writing documentation >elsewhere. Anyone up for doing a little 50/50 work? Well, if I get the work I applied for then I'll probably update handbooks for a few months, so I'm not sure if I'd be so happy with documentation... >* Coordination - I'd happily nominate myself as a source code >coordinator. This is part of what I do at work and can turn things around >quickly/accurately. My vote for NB! >* What are our initial source and target layers? I recommend 68K source >and x86 target. The target should be something we all have, which should be x86. The source could be about anything, but we already did some work on the 68K and we certainly shouldn't pick something that doesn't benefit from dynamic recompilation (eg. most 8-bit processors) or that are already done to death - even if not properly (like MIPS). Another interesting candidate might be SuperH, but we could set it back for a later project. >* What should we use as our Guinea pig to execute the recompiled code? In >the past I had recommended Food Fight because of its simplicity. Any other >recommendations or objections? Remember that we don't want to kill >ourselves with a platform that we don't understand. Food Fight is well >documented, it's simple to teach, plus I know it. ;-) Well, we shouldn't pick anything complicated because the CPU emulation will be complicated enough, and it should help when somebody knows the system. If NB thinks we could do Food Fight then let's do it. >* What platforms/OSes should we initially develop under? I'd recommend at >lesat one of the following: gnu C (Linux, BeOS, whatever), MSVC (as much >as we all loathe MS, there WILL be Windows developers interested) I think you mentioned the most important ones. >Throughout all of this, I want everyone to keep in mind that the code is >the boss - not any one of us, and that any decision made about the source >should be that of consensus and not one of dictatorship. AFter all, we're >all here to learn and venture in to uncharted territory. ;-) To boldly go... ;-) >Comments? Once we figure out WHAT we then can figure out HOW... Uh, then comes the difficult part... >-->Neil -- M.I.K.e You will be a winner today. Pick a fight with a four-year-old. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:30:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41916 for dynarec-outgoing; Thu, 3 May 2001 15:30:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec - the first testament From: "M.I.K.e" Message-ID: <0003836c83e5b6a3_mailit@mail.dynarec.com> References: Date: Thu, 03 May 2001 23:57:02 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> What about a x86 to x86 someday? :). >x86 To x86? You're sick, man. I think Kevin Lawton actually thought of adding a x86->x86 dynarec to Bochs... Now he's working on Plex86 instead, which isn't too dissimilar, since priviliged instructions are replaced by a breakpoint to simulate them. >-->Neil -- M.I.K.e This Fortue Examined By INSPECTOR NO. 2-14 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:30:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41924 for dynarec-outgoing; Thu, 3 May 2001 15:30:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec - the first testament From: "M.I.K.e" Message-ID: <0003836c8b52fc66_mailit@mail.dynarec.com> References: <008a01c0d330$b6aff650$0100a8c0@home.local> Date: Thu, 03 May 2001 23:59:07 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Okay, that sounds fair. Well, I know one person who - if they get involved - >will be using GCC. Hello Mike, are your ears burning? ;) No, Steely Dan is hot, but not *that* hot ;-) >Neil. -- M.I.K.e Just remember: when you go to court, you are trusting your fate to twelve people that weren't smart enough to get out of jury duty! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:30:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41932 for dynarec-outgoing; Thu, 3 May 2001 15:30:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Thumb Candy (again) From: "M.I.K.e" Message-ID: <0003836c9465f43b_mailit@mail.dynarec.com> References: <200105022015.VAA21743@inputplus.demon.co.uk> <007301c0d346$5ce50be0$0100a8c0@home.local> Date: Fri, 04 May 2001 00:01:39 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Hey, not being funny, but no-one asked you to join. On the dynarec.com page, >it quite clearly states "The Dynarec Mailing List is provided for >discussions about dynamic recompilation and general emulation, but don't be >surprised if other topics are covered as well ;-)" I wrote that text because I know that we can get off-topic "sometimes" ;-) >Neil. -- M.I.K.e Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:30:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41940 for dynarec-outgoing; Thu, 3 May 2001 15:30:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Thumb Candy (again) From: "M.I.K.e" Message-ID: <0003836cc1a88a8e_mailit@mail.dynarec.com> References: <200105022038.VAA22453@inputplus.demon.co.uk> Date: Fri, 04 May 2001 00:14:18 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Oh, there's lots interested in this topic thesedays. But most seem to pass away as soon as they see how complicated it is... >Could it just be that those interested in the topic don't find this >mailing list a useful place to be. Even at times with *very* on-topic discussion (I'm talking about ca. 50-100 messages a day about various dynarec related topics) these were mainly written by 4 hardcore guys! Isn't that strange? We always had much more lurkers than anyone would have guessed because they didn't take part in *any* on-topic discussion. >In which case, lessening the noise, even if the list becomes silent >again, could be beneficial in attracting more signal in the long term. >Or it can just stay as a list for a bunch of friends. That wouldn't be too bad either. I think Neil mainly established the list because it was too unproductive to mail with Victor and me separately. The list is a tool of communication and with some veterans on the list it's no wonder that it's almost a private atmosphere. >Sorry, but as an outsider I think you should consider how the list >appears to me if you want to attract more subscribers and hence build >the value and usefulness of the list. Maybe we should put up a list of terms, since I got the opinion that "outsiders" probably don't understand all the terms we are using... >Ralph. -- M.I.K.e The shortest distance between two points is under construction. -- Noelie Alito --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:30:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41948 for dynarec-outgoing; Thu, 3 May 2001 15:30:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Thumb Candy (again) From: "M.I.K.e" Message-ID: <0003836d24f1b7b3_mailit@mail.dynarec.com> References: Date: Fri, 04 May 2001 00:42:04 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >For those who care, Ralf is off the list and I've blocked his site. We >don't need assholes on our list like this. He claims he had been on the >list for months - he signed up yesterday at 1PM. Liar. >The last thing we need is a demotivator like him on this list. I have some experience with trolls in Usenet, but on the list it's quite new... >-->Neil -- M.I.K.e A cynic is a person searching for an honest man, with a stolen lantern. -- Edgar A. Shoaff --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:30:48 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41956 for dynarec-outgoing; Thu, 3 May 2001 15:30:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Thumb Candy (again) From: "M.I.K.e" Message-ID: <0003836d3a6cdb45_mailit@mail.dynarec.com> References: Date: Fri, 04 May 2001 00:48:05 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Sorry, but calling people "girls" is just flatly disrespectful. No amount >of "worth" can overcome that. Hehe ;-) >We might argue on this list from time to time, We do, especially when it comes to register allocation ;-) >but we have tremendous respect for one another And we can accept different opinions as long as they are reasonable. >(well, at least I do for others - dunno about the reverse!) In the beginning you were the "emulation god" type for me. Later I noticed you're just a "normal freak", and now I respect you as a friend. Victor should have beaten me in terms of collected dynarec documents by now, which indeed deserves my respect! But I cannot have any respect for NG ;-) >I'm actually surprised there's >50 people on the list - especially since >it's unpublished. Uh, that many?? >-->Neil -- M.I.K.e Why is the alphabet in that order? Is it because of that song? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:30:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA41963 for dynarec-outgoing; Thu, 3 May 2001 15:30:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: this should get some tongues wagging (ON TOPIC!) From: "M.I.K.e" Message-ID: <0003836c9da645cd_mailit@mail.dynarec.com> References: <01b701c0d346$ba415870$b32bfea9@daves> Date: Fri, 04 May 2001 00:04:14 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I've uploaded a PDF of my Tarmac report for consumption of people on the >group only. >http://www.dcs.warwick.ac.uk/~csuix/tarmacreport.zip (2.8Mb compressed) Cool! I didn't have the time to read much of it, but it certainly looks interesting, and I get even credits! ;-) I only wonder why you also listed my ARM architecture article... And this reminds me that I not only have to translate the last part of the article but also have to put *plenty* of work into the DRFAQ... -- M.I.K.e ... and furthermore ... I don't like your trousers. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:41:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA42017 for dynarec-outgoing; Thu, 3 May 2001 15:41:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 15:58:59 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: IR: Intermediate Representation In-Reply-To: <195903291625.KAA25427@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I think what you're seeing is there are no "basic blocks" in > > recompilation. Dynamic recompilation is 1:1 instructions, not higher > > level. > Aha, now we're cutting past the cobwebs to the important stuff. > I maintain that in order to do really good recompilation, you > *must* identify basic blocks, and translate at the block level. I think you're equating things that are named the same but aren't. A "basic block" in a compiler is a well defined set of things. It's a compare, an add, a shift, a store, etc... A basic recompiled block is a chunk of code that can be any group of instructions up to a terminal which could be anything. > This is done with possibly an initial static tree-walk of the code, > but mainly by dynamic profiling as it runs, noting jump sources and > destinations. This requires emulation as well as recompilation. Why profile it at all? Just recompile the whole thing up front, and as you hit jump tables and conditional branches, recompile it. > You need to make a strongly educated guess at what is a basic > block, then if you later generate either > > 1) a jump into that block > > or > > 2) an instruction which changes the code within that block (yech) You have no way of guaranteeing that you've hit all the possibilities. But nowhere in my work do I intend on dealing with self modifying code. > then you have to invalidate the previously generated code, and > start again for those instructions. Also keeping a permanent global > history is almost essential, for correcting these mistakes. You also can't optimize in that case, either. You'd have to rip up all kinds of blocks and mark them as noncompiled. Yeuck. All jumps would have to do lookups. You couldn't just emit a hardcoded x86 address jump even if you knew where it was. > You'll need an efficient mechanism for identifying generated code > sequences which are invalidated by changes to the binary or jumps > into the middle of an existing block. Both are easily implemented > with large arrays of flags, assuming you have the space, or binary > search tables, if you don't and want to trade some speed for space. We call that a transmap. A virtual->physical location mapping. But again, I don't plan on dealing with code that changes out from underneath me. > Perhaps given the above you can now see why I think an optimising compiler > should be the core of a dynarec rather than the emulator code and and > assembly generator. Optimization should occur on two levels - the source AND the target level. What you're forgetting is that flag handling gets *REALLY WEIRD* between CPUs. > I expect you to come back with specific examples from some architectures > that will suggest that identifying basic blocks is impossible, but I betcha > there are just as many architectures where it definitely is possible. > *Especially* in video games where the code is usually in eprom so self- > modifying code is not a real issue. I have an existence proof that it > is possible for at least one game on one architecture. I've only encountered a handful of games that do any self modifying code - Stargate being one (it's 6809 based). No 68K games I've encountered do any of that sort of thing. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 15:50:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA42060 for dynarec-outgoing; Thu, 3 May 2001 15:50:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 16:07:59 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <0003836c6caaf70e_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >* Figure out how integration and source code coordination will be handled. > I don't have much experience with revision control systems but a person > certainly brings much more intelligence into play that it's probably less > likely that someone will screw up the code (if it wasn't the coordinator > himself). > I think NB already voluteered for the job of the coordinator and he'd have my > full trust. I actually just meant who'd handle code integrations at this point. When projects are starting, having CVS is just a pain and adds unnecessarily to the overall development process. Later on it's certainly a consideration, but we'll have our hands full just getting things going. > >* Make it publicly available, source and all, under the BSD license (not > >the GNU license - too restrictive). > True. We want the code to be used and if the license is too restrictive not > too many programmers will use it. Stallman has become sort of a tree hugging freak as of late, and I'd rather not "support" him if you know what I mean. > >+ Provide target processor libraries for generating binary output. As an > > example, an x86 opcode generator library would emit x86 opcodes that may > > be used by many target layers. > Very good idea! This will make the development of new dynarecs and the > retargetting of existing ones much easier. Yeah. The initial "burn" will be tougher, tho. > >+ Optionally optimize by doing a depth traversal on the call tree. This > > will eliminate jump lookups. > For readers of the "Shade" document: it's called "chaining" there... Bleugh. Bad term. > >+ Write it in C (no need to make it unnecessarily complex or slower) > I don't think that we'd need OOP for this one, so C is the best choice. No, we need OOP. We just don't need C++. C++ != OOP! > >+ Provide fundamental routines (such as opcode node > > allocation/deallocation) for the target and source layers > Hmm, reminds me of programming exercises: "Develop linked lists" ;-) > But it's a good idea to make our basic tools as efficient as possible. And quick allocation. Rather than malloc()ing each node, we should have blocks of them and internally manage them. > >+ Provide "kernel" based logging of disassemblies and progress so we can > > debug this thing. It'll be a bear to debug. > I haven't debugged a dynarec, but I can imagine that it won't be that much > fun... The saving grace is that we do have a bunch of working emulators to compare against. > > >* What are our initial source and target layers? I recommend 68K source > >and x86 target. > The target should be something we all have, which should be x86. > The source could be about anything, but we already did some work on the 68K > and we certainly shouldn't pick something that doesn't benefit from dynamic > recompilation (eg. most 8-bit processors) or that are already done to death - > even if not properly (like MIPS). > Another interesting candidate might be SuperH, but we could set it back for a > later project. I think so. 8 Bit CPUs were a good exercise for me, but the 16 bit stuff is where it'll really pay off. How many 68K emulations do you know of that are less than up to snuff? I'd like to see 68K games run full bore on anything. > >* What platforms/OSes should we initially develop under? I'd recommend at > >lesat one of the following: gnu C (Linux, BeOS, whatever), MSVC (as much > >as we all loathe MS, there WILL be Windows developers interested) > I think you mentioned the most important ones. Okay, I can handle MSVC. Who is going to handle the "gcc"able version of it? I'd like to lock-step with someone on that so we don't get divergent. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 16:00:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA42099 for dynarec-outgoing; Thu, 3 May 2001 16:00:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 3 May 01 19:15:12 -0400 Message-Id: <3.0.5.32.20010503161238.0080d1d0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 03 May 2001 16:12:38 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Get to know your CPU interface API In-Reply-To: References: <3.0.5.32.20010503142807.0080e760@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> >ppp - Pointer to pointer to pointer.... >> I never like dealing with those, eeew ;) > >You know, I didn't either. But after a while, it grew on me. As long as >they weren't the crappy Microsoft directives, it worked great. I like the method of Hungarian notation you presented much better than the MS stuff. I hate the MS form. It confuses me much more than it helps. >Point taken. Hm... will a dynarec ever have to scan this table? I don't >think the pvUserData needs subtraction for recompilation, so we could do >the subtraction for the user when we generate the code. The plan was to >check these ranges when a read/write occurs as inlined code rather than >scanning the actual table. Hm.... > >Let me think about this one, but yes, let's figure out if it's needed >first. It may not be in the world of recompilation. I can't really answer this since I don't know too much about recompilation yet. But wouldn't the dynarec have to scan it a few times while translating the code? Also, I hope there's going to be a way to change the memory map during run-time. This might be tough to implement, especially when the user wants to change the memory map from within the handler. There are a few systems which need this sort of behavior. The Sega CD is the best example. And I believe Sega's System 16 arcade hardware needs it too. >Right. Can you give me a 50,000 foot level view of the user/supervisor >operation? I'm not clear on it, and the book I have spreads the >description out all over the book. It has to do with the function code output lines. If you have the "M68000 8-/16-/32-Bit Microprocessor User's Manual" (Ninth Edition -- M68000UM/AD REV 8) you'll see a paragraph and a little table about it on page 6-3 (section 6.1.4 -- "Reference Classification".) Basically, all it says is that the processor classifies references according to the encoding of the 3 function code output lines. It doesn't explicitly talk about how this all relates to the privilege mode bit in the SR, but here's the table: FC2 FC1 FC0: Address Space: 000 (undefined, reserved for future use by Motorola) 001 User Data 010 User Program 011 (undefined, reserved for user definition) 100 (undefined, reserved for future use by Motorola) 101 Supervisor Data 110 Supervisor Program 111 CPU Space "CPU Space" is said to be "used by interrupt acknowledge cycles." IIRC, Karl Stenerud's Musashi (MAME 68K) core dealt with the FC pins in a more accurate way than Genital68K and Starscream. >Starscream doesn't implement both, does it? I mean, will executing a >supervisor only instruction cause a trap? I honestly don't know. It implements "user" and "supervisor." Users of Starscream are responsible for setting up fetch and data memory maps for both "user" and "supervisor" modes. When a legitimate privilege mode change occurs (interrupt, RTE, SR manipulation), the appropriate pointers are copied into a general set of pointers. It changes between the different memory maps by copying the pointers into a third area accessed directly by Starscream ... I hope that made sense. It's actually pretty simple, I think I just made it sound way more complicated. Executing a supervisor only instruction causes a trap, just like on a real 68K. Genital68K has an option to emulate it with a trap, or to exit Genital68KRun() with an error code. >> I didn't look to see how Starscream handles it, but when a STOP instruction >> is executed in Genital68K, a bit is set in the status variable. The PC will >> not advance until this bit is cleared again (an interrupt is processed, >> reset occurs, etc.) > >I see - that's different from SR. Sort of a "sleep" mode of sorts, or >HALT. Yeah, I agree - it's needed, too. I also have other bits in the "status." An "interrupt" bit, which indicates interrupts are being processed, and a "running" bit, which indicates Genital68K is executing code or processing interrupts (working.) The "interrupt" bit probably isn't needed. The "running" bit probably isn't required either. The reason I use the latter is because I have functions which will read/write to the address space using the memory maps hooked up to Genital68K. Genital68K does some funky stuff with the PC sometimes, and I make these functions check the "running" bit to compensate. It's really kind of a hack. I don't think we'll need functions to read/write the address space, the users can handle that in their own way. >> UINT32 u32AddressRegisters[8]; >> UINT32 u32InactiveSP; > >Then shouldn't they be called USP/SSP respectively rather than >u32InactiveSP? > >> When the privilege mode is supervisor, u32InactiveSP contains the USP and >> A7 is the SSP. When the privilege mode is user, u32InactiveSP contains the >> SSP and A7 has the USP. > >Weird. So the mode they're in causes them to swap, eh? I now see the >rationale behind calling it u32InactiveSP. Yes. The USP can be accessed in supervisor mode with the "MOVE USP" instruction, since A7 becomes the SSP. There are some emulators which implement it differently, 7 A-registers and then SSP followed by USP. These emulators don't swap, they look at the privilege mode each time they want to access A7. It's an uneccessary hassle. Swapping is a much cleaner way of doing it. >> You'll also need an interrupt array. At least 7 bytes are needed, 1 per >> level. The array will contain vectors of pending interrupts, or 0 if none >> is pending. You can use an 8th element to store the number of pending >> interrupts (for easy checking.) > >Or just a mask of the pending interrupts. Does the 68K internally latch >interrupts? I guess it would have to if interrupts came in at different >priorities. Okay. I'll add it. The vectors must be stored. I think some systems can actually cancel interrupts as well. The 68K doesn't seem to support this, but they do it through some sort of trickery which I don't understand. I remember Charles MacDonald did some tests on the Genesis VDP a while back which indicated that the VDP is somehow able to cancel interrupts. I don't remember the details. But, I do remember that to have a 100% accurate simulation of interrupt handling, you would need a callback, similar to how Musashi does it. I think the 68K requests the vector once the interrupt priority mask allows it to go ahead. Once again, I'm unclear on this... A CancelInterrupt() function might be a good idea to implement down the road. It shouldn't be a concern now, though. There's some more stuff about spurious and uninitialized interrupts which isn't known, because Motorola's documentation is so vague. I hope we won't be emulating address errors and bus errors :) >One question - how come Starscream doesn't have anything like that in its >context? It does: unsigned char interrupts[8]; >Ok. How are breakpoints generated? When the BKPT instruction is hit, the 68010 runs a "breakpoint acknowledge cycle" and then does an illegal instruction exception. The breakpoint acknowledge cycles puts the vector number on the bus. I think this is to aid hardware debuggers, or something. More details on this can be found in the manual I mentioned earlier, on page 5-11. Oh, and if you turn to page 5-9, there's some more information on the "CPU Space" I mentioned earlier. >Does that look right? Yes. >Depending on your feedback, I'll cobble together a .H file for DRM68K and >you can scrutinize it with your 68K experience. ;-) I'm quite rusty at >it... Cool, I'll be glad to take a look at it. I'm finally getting into Sega Saturn development (great 2D hardware! I'm learning how to work it slowly, it's actually very complicated.) The Saturn has a 68000 as its sound processor. Although write now, I'm thinking of doing a Gorilla clone for the system (because my #1 priority is to get familiarized with the graphics hardware), I also want to write a 68000 debugger. I wanted to figure out how some of the undefined flags are calculated. I figure it would be a nice resource to have. Similar to your Z80 ISA board. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 16:04:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA42111 for dynarec-outgoing; Thu, 3 May 2001 16:04:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 3 May 01 19:19:48 -0400 Message-Id: <3.0.5.32.20010503161714.008129f0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 03 May 2001 16:17:14 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: References: <3.0.5.32.20010503143233.0080b100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 03:21 PM 5/3/2001 -0700, you wrote: >> >out of your profiler? That'd at least give us an idea of what we should >> >cache in x86 registers. >> I can't log register usage, sorry :( Gwenole mentioned he has a good >> profiler. > >But if you have the instruction #s themselves then we could derive it. All I have is the mnemonics. The output looks something like this: ABCD 0 (0.0%) OR 0 (0.0%) SUB 0 (0.0%) ... So it's really, really handicapped :) I could never get down to the actual opcode #s (well, I could, but it would involve generating huge files and would be a real mess), the closest I could get is down to the level at which Genital68K handles it (usually 1 handler for 8 instructions.) Hopefully, we can build something more functional into DR68K. I could pop DR68K into Genital and get some results. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 16:29:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA42194 for dynarec-outgoing; Thu, 3 May 2001 16:27:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 3 May 01 19:42:25 -0400 Message-Id: <3.0.5.32.20010503163951.007a4d10@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 03 May 2001 16:39:51 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >* Decide on a coding standard and stick to it. Looking over a massive >kludge of a project like MAME and seeing 5000 styles all merged together >just makes my skin crawl. Plus, it makes it tougher to debug. Having a >consistent coding methodology allows the reader to get used to one style >and know what to expect elsewhere. The notation you presented looks good, I have no problems with it. What about tabs? I still use Windows mostly, and MS-DOS Editor (don't laugh ;)) which converts tabs into spaces. I usually use 4 spaces per tab, a lot of people use 8. >+ Provide "kernel" based logging of disassemblies and progress so we can > debug this thing. It'll be a bear to debug. I can think of a bunch of evil games on the Genesis which would be perfect testing material to make sure the emulation is accurate. Debugging the actual program itself sounds like it's going to be even tougher. >* Coordination - I'd happily nominate myself as a source code >coordinator. This is part of what I do at work and can turn things around >quickly/accurately. I don't know much about revision control, and I've been doing most of my work lately under Windows/DOS... >* What are our initial source and target layers? I recommend 68K source >and x86 target. > >* What should we use as our Guinea pig to execute the recompiled code? In >the past I had recommended Food Fight because of its simplicity. Any other >recommendations or objections? Remember that we don't want to kill >ourselves with a platform that we don't understand. Food Fight is well >documented, it's simple to teach, plus I know it. ;-) Sega Genesis. :) Probably not as the "main" Guinea pig, but I could easily add DR68K to Genital. It isn't the simplest system in the world, mainly because of the VDP, but it's not too bad. It has ROM from 0x000000-0x3FFFFF, that makes 4MB (Super Street Fighter 2 uses bank switching for 5MB, it's the only game that does this. A couple of games map battery back-up RAM into and out of the ROM space.) RAM is from 0xE00000-0xFFFFFF, there's only 64KB and it's mirrored throughout this space. The most commonly used mirror is 0xFF0000-0xFFFFFF. I/O space is from 0xA00000-0xAFFFFF. Z80 RAM occupies the first 8KB. The rest is just registers for Z80 control and peripheral input. The VDP is accessed through a few registers in the 0xCXXXXX range. No matter how well DR68K runs Food Fight, you can bet the Sega Genesis is going to reveal a ton of problems ;) Games do crazy stuff on that system... >* What platforms/OSes should we initially develop under? I'd recommend at >lesat one of the following: gnu C (Linux, BeOS, whatever), MSVC (as much >as we all loathe MS, there WILL be Windows developers interested) gcc (DJGPP) under DOS, too? >* A debugger is HIGHLY desirable in this case. Being able to step through >code in source form (object form maybe not, I'm certainly not up for >writing a virtual machine nor emulating something natively present in any >debugger) in a nice environment will make debugging quite a bit easier. A debugger for the source or target? A simple 68K debugger would be easy to do. I use a line-oriented debugger I wrote, if anyone's interested they can check it out at: http://trzy.overclocked.org/gen68k -- it's called 68kdb. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 17:18:27 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA42249 for dynarec-outgoing; Thu, 3 May 2001 17:16:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 29 Mar 1959 12:18:45 -0600 (CST) From: Graham Toal Message-Id: <195903291818.MAA25719@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: IR: Intermediate Representation Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I think you're equating things that are named the same but aren't. A > "basic block" in a compiler is a well defined set of things. It's a > compare, an add, a shift, a store, etc... A basic recompiled block is a > chunk of code that can be any group of instructions up to a terminal which > could be anything. I'm not confused. I know what a basic block is, in compiler writing. (I've been writing compilers since 1977...) It's a straight-through flow of control with one entry point and one exit point. To quote from Richard Bornat: The smallest unit of a program which can be optimised is a Basic Block: a collection of statements which can only be entered at the beginning and which doesn't contain any intermediate labels, procedures or function calls. Within a basic block the initial order of events is obvious and linear. Provided that when control leaves the basic block the net effect which has been produced is that specified by the source program, the user has no way of telling whether the program has been optimised or not. ... (several paragraphs later) ... The end of a basic block is signalled by a labelled statement, a procedure or a function call. In principle control can arrive at a label from any number of different control contexts and therefore simple optimisations must be abandoned when a label is encountered - constant values must be forgotten, deferred STORE instructions generated, and so on. ... later on he mentions: ... four techniques which can be used to improve the code which is the translation of a basic block: constant folding, deferred storage, global register allocation and redundant code elimination. My particular hobby horse is the deferred storage and redundant code elimination, but I suspect he also has a good point there about global register allocation - doing it on a basic block level rather than globally may be a good trick for a dynarec, when the target doesn't have enough registers to slave every one from the host computer. Again, I assert that the only way you will get a high quality translation of a host machine is to convert from that machines opcodes to an RTL describing what is actually happening, then using standard compiler techniques to best map that description of execution to the available opcodes. I happen to think that a high level language such as C is a good working approximation to an RTL. We don't have a library of RTL definitions for many machines, but we *do* have a huge collection of C source describing what each opcode does in explicit terms, with no unnecessary introduction of unwanted side effects as you would get from an arbitrary fixed intermediate code (such as Neil's VIP or GNU Lightning) Any other approach, working on one opcode at a time, must generate more opcodes than there are on input (unless you cheat and do some peepholing, but then you're really doing the things you're telling me that you shouldn't be doing). This approach generates a minimal sequence of target instructions, assuming an optimum compiler. It's even possible to generate *fewer* instructions than the original. G [PS Bornat's comments about labels *and* procedure/function calls are because he wrote that before the days of global flow analysis in compilers. Nowadays we'd know if a procedure had side effects, which is really where the problem came in. Basically his statements above don't apply to any procedure that could be exbedded as a macro call rather than an actual subroutine call, and the expansion was also linear code. Similarly for loops and if/then/else - if you can successfully merge the contexts at the end of these constructs, you can get away with including them in your basic block. If it makes it easier to follow, re-read his comments with just the labels as being significant and forget about procedure calls] --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 17:28:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA42268 for dynarec-outgoing; Thu, 3 May 2001 17:28:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00af01c0d433$a0f81f50$0100a8c0@home.local> From: "Neil Griffiths" To: References: <3.0.5.32.20010503163951.007a4d10@mailandnews.com> Subject: Re: DYNAREC: Dynarec - the first testament Date: Fri, 4 May 2001 01:43:03 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > What about tabs? I still use Windows mostly, and MS-DOS Editor (don't laugh > ;)) which converts tabs into spaces. I usually use 4 spaces per tab, a lot > of people use 8. I won't laugh at you Bart, I still use EDIT.COM frequently, though much less now than I used to. > I can think of a bunch of evil games on the Genesis which would be perfect > testing material to make sure the emulation is accurate. Cool. That would be useful. > Debugging the actual program itself sounds like it's going to be even tougher. It will. By god, it will. > I don't know much about revision control, and I've been doing most of my > work lately under Windows/DOS... I *do* know about revision control because I used this when I was in Germany working. However, this was all done for me with a nice (kinda) interface. > Sega Genesis. :) Probably not as the "main" Guinea pig, but I could easily > add DR68K to Genital. It isn't the simplest system in the world, mainly > because of the VDP, but it's not too bad. That's a bonus to having you on our side, Bart. You've got a Genesis emu that you can plug it into! > It has ROM from 0x000000-0x3FFFFF, that makes 4MB (Super Street Fighter 2 > uses bank switching for 5MB, it's the only game that does this. A couple of > games map battery back-up RAM into and out of the ROM space.) > > RAM is from 0xE00000-0xFFFFFF, there's only 64KB and it's mirrored > throughout this space. The most commonly used mirror is 0xFF0000-0xFFFFFF. > > I/O space is from 0xA00000-0xAFFFFF. Z80 RAM occupies the first 8KB. The > rest is just registers for Z80 control and peripheral input. > > The VDP is accessed through a few registers in the 0xCXXXXX range. Now I know as much about the Genesis as you! Oh, okay, perhaps not... > No matter how well DR68K runs Food Fight, you can bet the Sega Genesis is > going to reveal a ton of problems ;) Games do crazy stuff on that system... It's always the way. I suggest that we only aim it at Food Fight for starters and then once that is working, it would be nice for Bart to see how it runs inside Genital. Bart, you're a sick, sick man for choosing that name for your emulator. ;) > gcc (DJGPP) under DOS, too? Yes, very much so. > A debugger for the source or target? A simple 68K debugger would be easy to > do. I use a line-oriented debugger I wrote, if anyone's interested they can > check it out at: http://trzy.overclocked.org/gen68k -- it's called 68kdb. Well, we'll be needing it for the target layer, but it wouldn't be much of a hassle to have source layer debugging in there too - that could be quite handy now that I come to think about it! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 17:37:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA42285 for dynarec-outgoing; Thu, 3 May 2001 17:37:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 17:55:19 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Get to know your CPU interface API In-Reply-To: <3.0.5.32.20010503161238.0080d1d0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >You know, I didn't either. But after a while, it grew on me. As long as > >they weren't the crappy Microsoft directives, it worked great. > I like the method of Hungarian notation you presented much better than the > MS stuff. I hate the MS form. It confuses me much more than it helps. Yeah. They've got some stupid stuff like "lp" - long pointer. WTF Is a "long pointer" A pointer to long? All pointers are "long" these days. And why "c" for count, and "i" for integer? Isn't a count an integer? And wouldn't you be able to indicate that it's a count by properly naming the variable in the first place? Okay... I'm off my soapbox... > >Let me think about this one, but yes, let's figure out if it's needed > >first. It may not be in the world of recompilation. > I can't really answer this since I don't know too much about recompilation > yet. I'm thinking we won't need to scan it. Let's say we have the following ranges: 0x00000000 - 0x0000ffff 0x00980000 - 0x00983fff 0x00988000 - 0x009fffff It'd generate code like this: cmp eax, 0ffffh ja notRange1 mov edi, call readHandler sjmp continueRunning notRange1: cmp eax, 980000h jb notInRange cmp eax, 983fffh ja notRange2 mov edi, call ReadHandler sjmp continueRunning notRange2: cmp eax, 988000h jb notInRange cmp eax, 9fffffh ja notInRange mov edi, call ReadHandler sjmp continueRunning notInRange: mov bl, 0ffh ; Unhandled... continueRunning: .... We'd inline the code because it actually makes things quite a bit faster. This may not be the case for HUGE amounts of code since we'd be increasing the size of the stack. And of course, for direct moves into a specific memory location, it'd be easy to just do a single: mov [address], value instruction rather than seeing if a register has a handler. We can look that up. However, we might consider doing the range check in a single place. We'll have to experiment with this (it'll make smaller code) > But wouldn't the dynarec have to scan it a few times while translating the > code? I don't think so. > Also, I hope there's going to be a way to change the memory map during > run-time. This might be tough to implement, especially when the user wants > to change the memory map from within the handler. Dead God, no. Why would we want to do that? If you want to create a new memory map, create a different context for it. > There are a few systems which need this sort of behavior. The Sega CD is > the best example. And I believe Sega's System 16 arcade hardware needs it too. Surely there's an aggregation of all the area it'd encompass. > >Starscream doesn't implement both, does it? I mean, will executing a > >supervisor only instruction cause a trap? I honestly don't know. > It's actually pretty simple, I think I just made it sound way more > complicated. Yeah. I'll take a look at the code to grok what you're saying. > Executing a supervisor only instruction causes a trap, just like on a real > 68K. Genital68K has an option to emulate it with a trap, or to exit > Genital68KRun() with an error code. Are there any often executed supervisor only instructions? I'd hate to have to check to see if it's in the appropriate mode for each of those instructions if they're high use. > There are some emulators which implement it differently, 7 A-registers and > then SSP followed by USP. These emulators don't swap, they look at the > privilege mode each time they want to access A7. It's an uneccessary > hassle. Swapping is a much cleaner way of doing it. Of course. > The vectors must be stored. Agreed, but are the interrupts latched? Meaning if I deassert a particular interrupt from the 68K, internally does it wait until a higher priority interrupt exits before executing? On chips like the Z80 and many other micros, it doesn't. > I hope we won't be emulating address errors and bus errors :) We might have it as an option during debugging. ;-) Unaligned writes, etc... might not be a bad idea. > >One question - how come Starscream doesn't have anything like that in its > >context? > It does: unsigned char interrupts[8]; Ok. > >Ok. How are breakpoints generated? > When the BKPT instruction is hit, the 68010 runs a "breakpoint acknowledge > cycle" and then does an illegal instruction exception. There is absolutely no reference to this instruction anywhere in my books. Shouldn't be too hard to add. > debugger. I wanted to figure out how some of the undefined flags are > calculated. I figure it would be a nice resource to have. Similar to your > Z80 ISA board. You could probably buy an old Mac classic and write some code for your tests. They're cheap these days. That is if you can stand using a Mac. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 17:38:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA42295 for dynarec-outgoing; Thu, 3 May 2001 17:38:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 17:56:18 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: <3.0.5.32.20010503161714.008129f0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >But if you have the instruction #s themselves then we could derive it. > All I have is the mnemonics. The output looks something like this: Crap. ;-( But you could keep a 64k*4 byte array of counts for each instruction and just profile it that way. ;-) > Hopefully, we can build something more functional into DR68K. I could pop > DR68K into Genital and get some results. It'd be interesting if we had a trace feature. That is, a register/flag dump after each executed instruction. Then we could go instruction by instruction and compare notes. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 17:39:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA42306 for dynarec-outgoing; Thu, 3 May 2001 17:39:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00c201c0d435$1a2743f0$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Dynarec - the first testament Date: Fri, 4 May 2001 01:54:24 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I actually just meant who'd handle code integrations at this point. When > projects are starting, having CVS is just a pain and adds unnecessarily to > the overall development process. Later on it's certainly a consideration, > but we'll have our hands full just getting things going. If no-one else wants to do this, then I will - but I've just suggested to NB that if Victor doesn't want to do the documentation then maybe I should. But I won't do both - I still want to implement and if I'm doing this, it will take too much time away from what I actually want to do. > No, we need OOP. We just don't need C++. C++ != OOP! Remember, C always had STRUCTures - and in C++, a STRUCT is treated as a class where everything is public - I believe you can even create functions in a STRUCT in C++, though I can't say that I've tried. Be careful saying such broad things about OOP, Victor! You'll get the Java people coming out again! ;) Having said that, I have worked with Java recently and I do like it as a language - it's growing on me in that way. I just don't like the implementation that much. Perhaps it will bother me one day enough for me to do something about it! > The saving grace is that we do have a bunch of working emulators to > compare against. Indeed, this will save us many headaches IMO. > Okay, I can handle MSVC. Who is going to handle the "gcc"able version of > it? I'd like to lock-step with someone on that so we don't get divergent. Perhaps Bart or Mike? I won't use gcc - I've paid for MSVC now, so I'm sodding going to use it! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 17:41:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA42318 for dynarec-outgoing; Thu, 3 May 2001 17:41:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 17:59:36 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <3.0.5.32.20010503163951.007a4d10@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > What about tabs? I still use Windows mostly, and MS-DOS Editor (don't laugh > ;)) which converts tabs into spaces. I usually use 4 spaces per tab, a lot > of people use 8. I CANNOT stand spaces. It makes things much harder to edit. If I need to remove an indentation from a particular grouping, I have to type 4 times the number of deletes. Yuk. Plus, if I don't like your tabbing/formatting, I'm stuck with it. ;-( It also makes the file unnecessarily bigger, but I do agree with the 4 space tabs. > >+ Provide "kernel" based logging of disassemblies and progress so we can > > debug this thing. It'll be a bear to debug. > I can think of a bunch of evil games on the Genesis which would be perfect > testing material to make sure the emulation is accurate. Bring 'em on! I'd love to have a serious acid test. > Debugging the actual program itself sounds like it's going to be even tougher. Yeah. Debugging will go on for years. Literally. > It has ROM from 0x000000-0x3FFFFF, that makes 4MB (Super Street Fighter 2 > uses bank switching for 5MB, it's the only game that does this. A couple of > games map battery back-up RAM into and out of the ROM space.) Wow... a 16 megabyte Transmap. ;-) > RAM is from 0xE00000-0xFFFFFF, there's only 64KB and it's mirrored > throughout this space. The most commonly used mirror is 0xFF0000-0xFFFFFF. You can create memory regions that all just point to the same RAM space. > I/O space is from 0xA00000-0xAFFFFF. Z80 RAM occupies the first 8KB. The > rest is just registers for Z80 control and peripheral input. Shouldn't be too heinous. > No matter how well DR68K runs Food Fight, you can bet the Sega Genesis is > going to reveal a ton of problems ;) Games do crazy stuff on that system... Yeah, I know. Food Fight is simple, and for now we need that. I'd rather not be scratching my head because of a flag problem because I have NO IDEA where the problem really is. > >lesat one of the following: gnu C (Linux, BeOS, whatever), MSVC (as much > >as we all loathe MS, there WILL be Windows developers interested) > gcc (DJGPP) under DOS, too? If it compiles on any gcc, it should compile just fine for DJGPP, too. BTW, I insist on enabling as many warnings as makes sense. > >writing a virtual machine nor emulating something natively present in any > >debugger) in a nice environment will make debugging quite a bit easier. > A debugger for the source or target? A simple 68K debugger would be easy to > do. I use a line-oriented debugger I wrote, if anyone's interested they can > check it out at: http://trzy.overclocked.org/gen68k -- it's called 68kdb. Source. It'd be nice if we could view the equivalent recompiled code, but we don't need to step through the recompiled code. We just need to be able to step through the source code. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 17:46:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA42333 for dynarec-outgoing; Thu, 3 May 2001 17:46:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00cb01c0d436$33b6bbb0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <195903291818.MAA25719@gtoal.com> Subject: Re: DYNAREC: IR: Intermediate Representation Date: Fri, 4 May 2001 02:02:28 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Graham, I'm not sure that we're both necessarily talking about the same thing. > I'm not confused. I know what a basic block is, in compiler writing. In dynamic recompilation, basic blocks aren't the same as a basic block would be for a compiler. > Again, I assert that the only way you will get a high quality translation > of a host machine is to convert from that machines opcodes to an RTL > describing what is actually happening, then using standard compiler > techniques to best map that description of execution to the available > opcodes. I happen to think that a high level language such as C is > a good working approximation to an RTL. We don't have a library of > RTL definitions for many machines, but we *do* have a huge collection > of C source describing what each opcode does in explicit terms, with > no unnecessary introduction of unwanted side effects as you would > get from an arbitrary fixed intermediate code (such as Neil's VIP > or GNU Lightning) Okay, how about I put what I think you're saying into words that I can understand (I've been awake for over 40 hours now, thinking is difficult): You think that we should generalise our approach and have a middle-layer which would then be used to convert things such as flags and endians between the source layer and target layer, right? You want a general middleware semi-CPU that will work to translate between the source and target layers, right? If so, I don't believe we need to do that. If we were writing a general core where we wanted to pull out the source or target layers and replace them, I think your idea would be great. However, we *know* that the target is the x86 and we *know* that the source is the 68k. So if we have this knowledge, why can't we use it to better optimise and handle the source and target layer without the need for a middle layer. You're worried about creating more opcodes (which I don't think will happen), but more than this - having a middle-ware will slow it down, IMO, much more than using our more direct and hand-tuned source to target layer transfer. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 17:59:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA42353 for dynarec-outgoing; Thu, 3 May 2001 17:59:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <010301c0d437$f2576f00$0100a8c0@home.local> From: "Neil Griffiths" To: References: <0003836d3a6cdb45_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Thumb Candy (again) Date: Fri, 4 May 2001 02:16:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > In the beginning you were the "emulation god" type for me. Later I noticed > you're just a "normal freak", and now I respect you as a friend. > Victor should have beaten me in terms of collected dynarec documents by now, > which indeed deserves my respect! > But I cannot have any respect for NG ;-) What, just because I told you that I didn't want to recieve any love-letters from you? Bitchy! ;)) There are a few more people in here that I also respect that I didn't mention yesterday, like Bart and Gwenole. Sorry guys, didn't mean to exclude you! But after that comment, I'm going to stop respecting you, Mike. ;) > >I'm actually surprised there's >50 people on the list - especially since > >it's unpublished. > > Uh, that many?? So you're as surprised as me, huh? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 18:05:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA42374 for dynarec-outgoing; Thu, 3 May 2001 18:05:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 18:22:58 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: IR: Intermediate Representation In-Reply-To: <195903291818.MAA25719@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > "basic block" in a compiler is a well defined set of things. It's a > > compare, an add, a shift, a store, etc... A basic recompiled block is a > > chunk of code that can be any group of instructions up to a terminal which > > could be anything. > I'm not confused. I know what a basic block is, in compiler writing. (I've > been writing compilers since 1977...) It's a straight-through flow of > control with one entry point and one exit point. Wasn't trying to belittle your knowledge, Graham. I'm not aware of everyone's expertise, so my playing things back was only to make sure we are talking about the same thing. A recompiled block sounds like a cousin of the basic block. I too, am aware of what a basic block is. However, a recompiled basic block is a gouping of code that continues until an absolute terminal is hit. Here are some examples: l0066: ld a,#01 ld (#6822),a xor a ld (#6822),a call #00a9 ret And... l0357: ld hl,#9a60 ld de,#6810 ld bc,#0010 ldir ld a,(#9a70) ld (#6805),a ld a,(#9a71) ld (#680a),a ld a,(#9a72) ld (#680f),a ret Basically, a "ret" or "jmp" are absolute terminals. Now I'm not sure how blocks of the above instruction groups would be broken down to basic blocks as it relates to a compiler. But it would be nice to know that I could do a "rep movsb" when "ldir" is hit. That would require knowledge that I'm taking HL and putting it in ESI, DE and putting it in EDI, and BC and putting it in ECX. With an intermediate representation, how can I guarantee things like that or do optimizations of the sort? > Again, I assert that the only way you will get a high quality translation > of a host machine is to convert from that machines opcodes to an RTL > describing what is actually happening, There's far more to it than that. You don't have to deal with flags and funky processorisms in the C basic block world. You do in processor land, and it gets extremely ugly later on when you've got differences in flag handling between the source and target processors. It gets VERY ugly. > Any other approach, working on one opcode at a time, must generate > more opcodes than there are on input (unless you cheat and do some > peepholing, but then you're really doing the things you're telling me > that you shouldn't be doing). This approach generates a minimal > sequence of target instructions, assuming an optimum compiler. It's > even possible to generate *fewer* instructions than the original. Code can be eliminated in both the source and target layers. You can't get away from the more than one instruction per emulated instruction, but there are a lot of situations where it can be optimized to be much less. So, as an example, let's take this sequence (since it's simple and it's a good example and it's a REAL recompiler generated output): 18d4: 310024 LD SP, 2400h 18d7: 0600 LD B, 00h 18d9: cde601 CALL 01e6h Beginning recompilation: 82cc71c8: c7058467c88200240000 mov dword [0x82c86784],0x2400; LD SP,2400h 82cc71d2: 83ef0a sub edi,byte +0xa ; 10 T-States 82cc71d5: 7839 js 0x82cc7210 ; Bail out if done 82cc71d7: b500 mov ch,0x0 ; LD B, 00h 82cc71d9: 83ef07 sub edi,byte +0x7 ; 7 82cc71dc: 783c js 0x82cc721a Note the above could be reduced (with peephole optimization) to: mov [0x82c86784], 0x2400 xor ch, ch sub edi, 0x11 js 0x82cc721a You claim above that the only way I can get a high quality translation is with an IR approach. Correct me if I'm wrong, but this is 1:1 and still maintains original machine timing - something that's going to be required. I also have more sequences that are more complex that generate similar code. I hadn't gotten to optimization yet. It just did a subtraction of the overall remaining clock after every instruction to make it deadly accurate, but I can assure you the code can be drastically reduced. It's not that I disagree with you in spirit. I think if you showed us a working example of how it could work, across multiple sources and targets, in a generic and extremely optimal fashion, I'd be with you in a heartbeat. But I've already been down the IR path and found too many shortcuts I couldn't take (worked it out on paper for weeks) because of the IR, so the two tier approach I've found to be superior. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 18:05:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA42384 for dynarec-outgoing; Thu, 3 May 2001 18:05:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 3 May 01 21:21:03 -0400 Message-Id: <3.0.5.32.20010503181828.0080fb60@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 03 May 2001 18:18:28 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <00af01c0d433$a0f81f50$0100a8c0@home.local> References: <3.0.5.32.20010503163951.007a4d10@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> No matter how well DR68K runs Food Fight, you can bet the Sega Genesis is >> going to reveal a ton of problems ;) Games do crazy stuff on that >system... > >It's always the way. I suggest that we only aim it at Food Fight for >starters and then once that is working, it would be nice for Bart to see how >it runs inside Genital. Bart, you're a sick, sick man for choosing that name >for your emulator. ;) I was just trying to be clever when I came up with "Genital." I guess it is kind of disgusting, but I've been using it for so long that I now equate the word "genital" with "Genesis" :) My favorite Genesis emulator, and the first Genesis emulator I ever tried was Genecyst. I always thought names like "Genecyst" and "NESticle" were catchy. So I came up with Genital, which is a bit more exciting than my alternatives: BGen, TGen, "Genesis Emulator." Plus, it's easy to type, too :) >> gcc (DJGPP) under DOS, too? > >Yes, very much so. I can try working with the project under DJGPP. I really should start getting into the details of how dynamic recompilation works. I hope I can contribute something useful to this project. This seems like it's going to be a very tough project, even for a dynarec! >Well, we'll be needing it for the target layer, but it wouldn't be much of a >hassle to have source layer debugging in there too - that could be quite >handy now that I come to think about it! Isn't the target layer the X86? And the source is the 68K? Am I backwards here? We'll have to write a debugger from scratch. I prefer line-oriented debuggers. I'm not a fan of MAME-style GUI debuggers (though they do have lots of weighty pluses.) The main reason is that with a line-oriented debugger, you can fit multiple register dumps on the screen, which shows what's been happening in a more detailed light. X86 debugging facilities (a disassembler, to see how things are being translated, commands to deal with code block and other internal data structures, etc.) will be needed. Perhaps we should have a special debugging API, a superset of the normal user-level API. This "debugging" API would allow us to access internal structures in a clean and orderly fashion. Debugging could could be #ifdef'd out when needed. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 18:22:48 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA42428 for dynarec-outgoing; Thu, 3 May 2001 18:22:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <013901c0d43b$365dcd90$0100a8c0@home.local> From: "Neil Griffiths" To: References: <3.0.5.32.20010503163951.007a4d10@mailandnews.com> <3.0.5.32.20010503181828.0080fb60@mailandnews.com> Subject: Re: DYNAREC: Dynarec - the first testament Date: Fri, 4 May 2001 02:40:16 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I was just trying to be clever when I came up with "Genital." I guess it is > kind of disgusting, but I've been using it for so long that I now equate > the word "genital" with "Genesis" :) Ooh dear, I feel sorry for your kids if you ever have any. They'll be going around referring to their Genesis' in their pants. ;) > My favorite Genesis emulator, and the first Genesis emulator I ever tried > was Genecyst. I always thought names like "Genecyst" and "NESticle" were > catchy. So I came up with Genital, which is a bit more exciting than my > alternatives: BGen, TGen, "Genesis Emulator." Plus, it's easy to type, too :) I can see where the link from NESticle and Genital came from. ;) > I can try working with the project under DJGPP. Cool! > I really should start getting into the details of how dynamic recompilation > works. I hope I can contribute something useful to this project. This seems > like it's going to be a very tough project, even for a dynarec! I hope so too, it will be tough, but I hope it's worth it! > Isn't the target layer the X86? And the source is the 68K? Am I backwards > here? Yeah, I should have explained that better. I smacked my head against the wall after typing that. I meant, of course, that the output should be for the target layer - the x86. And you should see the source layer (68k) when you do it! > We'll have to write a debugger from scratch. I prefer line-oriented > debuggers. I'm not a fan of MAME-style GUI debuggers (though they do have > lots of weighty pluses.) The main reason is that with a line-oriented > debugger, you can fit multiple register dumps on the screen, which shows > what's been happening in a more detailed light. Agreed. Sometimes a GUI debugger can be nice - other times it's a pain in the arse. > X86 debugging facilities (a disassembler, to see how things are being > translated, commands to deal with code block and other internal data > structures, etc.) will be needed. Yeah. That'll be fun, won't it? In this case, I think line-based is necessary! > Perhaps we should have a special debugging API, a superset of the normal > user-level API. This "debugging" API would allow us to access internal > structures in a clean and orderly fashion. Debugging could could be > #ifdef'd out when needed. It's an idea. I like it. What about you others, guys? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 19:05:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA42477 for dynarec-outgoing; Thu, 3 May 2001 19:04:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 3 May 01 22:19:54 -0400 Message-Id: <3.0.5.32.20010503191717.0080ee00@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 03 May 2001 19:17:17 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Get to know your CPU interface API In-Reply-To: References: <3.0.5.32.20010503161238.0080d1d0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >We'd inline the code because it actually makes things quite a bit >faster. This may not be the case for HUGE amounts of code since we'd be >increasing the size of the stack. And of course, for direct moves into a >specific memory location, it'd be easy to just do a single: > > mov [address], value > >instruction rather than seeing if a register has a handler. We can look >that up. > >However, we might consider doing the range check in a single place. We'll >have to experiment with this (it'll make smaller code) This sounds like a great example of a "speed vs. size" trade-off. Another thing that you could do is check a couple of the most important and most frequently-used addresses, and then, if no match is found, call a handler which does a more detailed check. I could see this being implemented with another member in the memory map structures: "frequency". So you could have: { 0x000000, 0x3fffff, &MyROMHandler, NULL, 0 }, { 0xff0000, 0xffffff, &MyRAMHandler, NULL, 0 }, { 0xe00000, 0xfeffff, &MyRAMHandler, NULL, 1 }, ... A frequency of 0 indicates this range is special and is accessed very frequently. 1 would be the opposite. I think it's too complex, and a better solution could be devised. Just a thought, though ;) >Surely there's an aggregation of all the area it'd encompass. Yes, certainly. The ability to dynamically modify the memory map would make things easier for the user, though. But the complexity it adds to the emulator isn't worth it. >Are there any often executed supervisor only instructions? I'd hate to >have to check to see if it's in the appropriate mode for each of those >instructions if they're high use. The test shouldn't be that expensive in terms of performance and size. RTE is the most commonly executed supervisor-only instruction. >> When the BKPT instruction is hit, the 68010 runs a "breakpoint acknowledge >> cycle" and then does an illegal instruction exception. > >There is absolutely no reference to this instruction anywhere in my >books. Shouldn't be too hard to add. What books are you using? Do you have the Motorola manuals? It isn't even a supervisor instruction. BTW, about the context you typed up earlier, that was just for the 68000, right? For the 68010, I just remembered you'd have to add members for SFC/DFC (3 bits each), and VBR. 68010 Loop Mode is going to be a pain. We're going to have to make timing very flexible, localized, and easy to work with. >You could probably buy an old Mac classic and write some code for your >tests. They're cheap these days. That is if you can stand using a Mac. Well, the idea was to execute code side-by-side with Genital68K and detect any inconsistencies. It should be pretty easy once I get familiarized with how the 68K works in the Saturn. The cable which links the PC and the Saturn (via a special PCI card and a Pro Action Replay cartridge in the Saturn) is super-easy to interface with :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 19:43:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA42518 for dynarec-outgoing; Thu, 3 May 2001 19:43:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 29 Mar 1959 14:45:04 -0600 (CST) From: Graham Toal Message-Id: <195903292045.OAA26100@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: IR: Intermediate Representation Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > In dynamic recompilation, basic blocks aren't the same as a basic block > would be for a compiler. I'm still having some difficulty seeing the difference. Your example in your other post would appear to be a basic block under either definition. Can you clarify for me what's different in the kind of blocks you're talking about from what is generally accepted as the definition in regular compiling? Or more significantly - forget arguing about definitions, what I really want to know is why you think we *can't* identify any sort of basic block in source-machine code. > You think that we should generalise our approach and have a middle-layer > which would then be used to convert things such as flags and endians between > the source layer and target layer, right? You want a general middleware > semi-CPU that will work to translate between the source and target layers, > right? No, that's not quite what I'm saying. Yes, I suggest a middle layer, but I'm saying the middle layer should be an optimised no-frills description of exactly what is being executed. Not a pseudo-code for a hypothetical middle-machine which brings along its own baggage, but a minimalist raw description of the behaviour of the source machine. As I said, an RTL would be perfect for this, but the folks here (myself included) are programmers, not VLSI engineers[*], so we're not really in a position to do that. But the C code which most of our 'traditional emulators' executes for any instruction (assuming written for portability and not for one particular target) is pretty damn close to what I'm talking about. ([*] Actually I am a VLSI engineer but a real crap one and dropped out of an MSc in VLSI design) For instance, in the BeebEm 6502 emulator, we have: case 0x68: /* PLA */ StackReg++; Accumulator = WholeRam[0x100+StackReg]; PSR&=~(FlagZ | FlagN); PSR|=((Accumulator==0)<<1) | (Accumulator & 128); break; So I'm saying that a dynarec for the 6502 would generate the C code StackReg++; Accumulator = WholeRam[0x100+StackReg]; PSR&=~(FlagZ | FlagN); PSR|=((Accumulator==0)<<1) | (Accumulator & 128); for that instruction. Flow dropping through from the previous instruction and passing on to the next instruction. (There may be better ways to encode the opcode - I'm not arguing about the efficiency of this particular emulator - let's just assume it's a reasonable one) Add a few more opcodes before and afterwards, and you soon start to see where a regular compiler will be able to remove some of the flag setting that isn't used in later opcodes. I don't see that feeding this code into a compiler can possibly generate anything *worse* than an instruction-by-instruction translation, or one that uses some arbitrary intermediate code that looks more like pseudo opcodes as opposed to the above which is basically just a machine description - i.e. a fairly manageable equivalent to an RTL (and not as complex because for our purposes we really don't care about stuff like when particular internal latches are tri-stated to particular busses etc) So I'm saying generate an intermediate representation, but make the representation as close a description of the source machine as possible. Then identify basic blocks - sequences of code that are never jumped into - and compile these larger regions so that a good compiler has something to work with to perform optimisations. To do this we need an on-the-fly compiler. (Or use the technique I did in my cinemu code that uses large granularity between compilations, effectively recompiling only between runs - but I don't seriously recommend this hack - it was fun, but not a production technique). My contention is that with no compiler optimisations at all, this technique is at least equivalent to instruction-by-instruction translation - *but* we can take advantage of 20 years of compiler research by using optimising compiler technology on these larger blocks and get whatever wins we normally expect from such compilers. What's more, we're working on *generated* code, which in itself almost always gives us more opportunities for optimisation than human-written code does. So... do you disgree with any of my assumptions or conclusions? Assuming that we had a good dynamic compiler, do you think that this technique would work? If not, why not? If the argument is that you cannot identify suitably large basic blocks to compile, explain why not, because I really can't see it. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 21:04:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA42594 for dynarec-outgoing; Thu, 3 May 2001 21:04:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 21:22:21 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <00c201c0d435$1a2743f0$0100a8c0@home.local> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > the overall development process. Later on it's certainly a consideration, > > but we'll have our hands full just getting things going. > If no-one else wants to do this, then I will - but I've just suggested to NB > that if Victor doesn't want to do the documentation then maybe I should. But > I won't do both - I still want to implement and if I'm doing this, it will > take too much time away from what I actually want to do. Really, I don't see a hell of a lot of writing going on. It'll mostly be pulling information off the mailing list and just organizing it. Maybe a blurb here and there. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 21:10:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA42614 for dynarec-outgoing; Thu, 3 May 2001 21:10:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 21:28:30 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <3.0.5.32.20010503181828.0080fb60@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >it runs inside Genital. Bart, you're a sick, sick man for choosing that name > >for your emulator. ;) > I was just trying to be clever when I came up with "Genital." I guess it is > kind of disgusting, but I've been using it for so long that I now equate > the word "genital" with "Genesis" :) This reminds me of the Giant Internet Masturbator. It's an online IC reference. If you've ever experienced one first hand it's always called "xxx Master" or "Master xxx" or master that. Masturbator was a great name, because it poked fun at the guys who called everything "Master", as if they were stroking themselves by giving it a name like that. ;-) > I really should start getting into the details of how dynamic recompilation > works. I hope I can contribute something useful to this project. This seems > like it's going to be a very tough project, even for a dynarec! Yeah, it is. Have you downloaded and looked at DRMZ80? That might be a good place to start. > >hassle to have source layer debugging in there too - that could be quite > >handy now that I come to think about it! > Isn't the target layer the X86? And the source is the 68K? Am I backwards > here? No, you're absolutely correct. Neil G. shouldn't be fatigued and type at the same time. ;-) > We'll have to write a debugger from scratch. I prefer line-oriented > debuggers. I'm not a fan of MAME-style GUI debuggers (though they do have > lots of weighty pluses.) The main reason is that with a line-oriented > debugger, you can fit multiple register dumps on the screen, which shows > what's been happening in a more detailed light. It'd be nice to have something full screen and UI-like. That way it'd be easy to extend, but I still want my command window, damnit. ;-) Having memory, register dumps, trace history, and command listings. Retrocade has a debugger (basically that's where MAME got the idea for the format/layout). > X86 debugging facilities (a disassembler, to see how things are being > translated, commands to deal with code block and other internal data > structures, etc.) will be needed. We already have an x86 debugger (ripped from NASM) and a 68K debugger that I believe someone (perhaps you, Bart?) improved. > Perhaps we should have a special debugging API, a superset of the normal > user-level API. This "debugging" API would allow us to access internal > structures in a clean and orderly fashion. Debugging could could be > #ifdef'd out when needed. Certainly. I also am a firm believer in ASSERTs, too and we should figure out what #defines we'll have for enabling/disabling certain features (like debugging). -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 21:14:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA42624 for dynarec-outgoing; Thu, 3 May 2001 21:14:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 21:32:24 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Get to know your CPU interface API In-Reply-To: <3.0.5.32.20010503191717.0080ee00@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >However, we might consider doing the range check in a single place. We'll > >have to experiment with this (it'll make smaller code) > This sounds like a great example of a "speed vs. size" trade-off. Another > thing that you could do is check a couple of the most important and most > frequently-used addresses, and then, if no match is found, call a handler > which does a more detailed check. Possibly. > I could see this being implemented with another member in the memory map > structures: "frequency". So you could have: Eeew... ;-) Sorry. How about just listing the most commonly accessed region first? > >Surely there's an aggregation of all the area it'd encompass. > Yes, certainly. The ability to dynamically modify the memory map would make > things easier for the user, though. But the complexity it adds to the > emulator isn't worth it. Really? How would it be easier? > >Are there any often executed supervisor only instructions? I'd hate to > >have to check to see if it's in the appropriate mode for each of those > >instructions if they're high use. > The test shouldn't be that expensive in terms of performance and size. > RTE is the most commonly executed supervisor-only instruction. That's good. As long as it isn't something like MOVE. ;-) > >There is absolutely no reference to this instruction anywhere in my > >books. Shouldn't be too hard to add. > What books are you using? Do you have the Motorola manuals? It isn't even a > supervisor instruction. No, I know. It's weird. I have "The Motorola MC 68000 Microprocessor Family" book and a 68K guide that I'd rather not mention because it sucks so bad. > BTW, about the context you typed up earlier, that was just for the 68000, > right? For the 68010, I just remembered you'd have to add members for > SFC/DFC (3 bits each), and VBR. Sure. We should do an aggregate context that handles both 68K and 68010. > 68010 Loop Mode is going to be a pain. We're going to have to make timing > very flexible, localized, and easy to work with. Shouldn't be too heinous, actually. > >You could probably buy an old Mac classic and write some code for your > >tests. They're cheap these days. That is if you can stand using a Mac. > Well, the idea was to execute code side-by-side with Genital68K and detect > any inconsistencies. You were talking about getting a 68K on a board to figure out how undocumented flags would work. I'm not sure that a side by side would help you find that out. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 21:29:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA42643 for dynarec-outgoing; Thu, 3 May 2001 21:29:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 4 May 01 00:44:46 -0400 Message-Id: <3.0.5.32.20010503214157.00810100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 03 May 2001 21:41:57 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: References: <3.0.5.32.20010503181828.0080fb60@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> I really should start getting into the details of how dynamic recompilation >> works. I hope I can contribute something useful to this project. This seems >> like it's going to be a very tough project, even for a dynarec! > >Yeah, it is. Have you downloaded and looked at DRMZ80? That might be a >good place to start. No, where can I get it? >We already have an x86 debugger (ripped from NASM) and a 68K debugger that >I believe someone (perhaps you, Bart?) improved. Aaron Giles' disassembler? I believe I did send you guys an updated version. I did some more work on it recently, it wasn't recognizing a couple of 68010 opcodes. You can get it at: http://trzy.overclocked.org/gen68k/68kdb030.zip It's mashed in (completely intact and functional :)) at the end of DEBUG.C. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 21:37:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA42659 for dynarec-outgoing; Thu, 3 May 2001 21:37:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 4 May 01 00:53:01 -0400 Message-Id: <3.0.5.32.20010503215028.00812100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 03 May 2001 21:50:28 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Get to know your CPU interface API In-Reply-To: References: <3.0.5.32.20010503191717.0080ee00@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Eeew... ;-) Sorry. How about just listing the most commonly accessed >region first? Didn't think of that... that would be a better way! >Really? How would it be easier? When I was trying to get the Sega CD emulated, I developed a CPU abstraction interface which managed Genital68K's memory map arrays for me. I could remove and insert certain regions whenever necessary. The alternative way would have been to use a handler, and do all the work there when time came to read/write to memory. But I found this was kind of a pain. Too much overhead, and it was really messy. A bad implementation on my part, no doubt, but even if it were redone and done well, it would still have been a bit nasty. >No, I know. It's weird. I have "The Motorola MC 68000 Microprocessor >Family" book and a 68K guide that I'd rather not mention because it sucks >so bad. I recommend the "Programmer's Reference Manual" and the "User's Manual" to everyone on the list. It's free... free shipping too in the US. If anyone would like a direct link to where these are located on the Motorola site, I could find them. Having the exact same documentation might help out a bit. >You were talking about getting a 68K on a board to figure out how >undocumented flags would work. I'm not sure that a side by side would help >you find that out. ;-) Not side-by-side, but just examining the output itself should be sufficient. Side-by-side would be useful for testing the accuracy of Genital68K's flag calculation. I'm pretty sure all of the Genesis games I tested have helped me eliminate pretty much all of the flag bugs. I don't have any undocumented flags emulated correctly, though. I seeing a MAME WIP report some weeks ago which caught my eye, apparently there's a Neo-Geo game which relies on undocumented flags. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 21:40:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA42677 for dynarec-outgoing; Thu, 3 May 2001 21:40:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 29 Mar 1959 16:42:55 -0600 (CST) From: Graham Toal Message-Id: <195903292242.QAA26555@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Yeah, it is. Have you downloaded and looked at DRMZ80? That might be a > >good place to start. > > No, where can I get it? Just what I was going to ask. It's not listed on http://www.dynarec.com/dynarecs.html Which reminds me - where did Thumb Candy end up? I'm still itching to see it! G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 21:42:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA42686 for dynarec-outgoing; Thu, 3 May 2001 21:42:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 4 May 01 00:57:37 -0400 Message-Id: <3.0.5.32.20010503215502.00813e70@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 03 May 2001 21:55:02 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <013901c0d43b$365dcd90$0100a8c0@home.local> References: <3.0.5.32.20010503163951.007a4d10@mailandnews.com> <3.0.5.32.20010503181828.0080fb60@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Ooh dear, I feel sorry for your kids if you ever have any. They'll be going >around referring to their Genesis' in their pants. ;) Hehe. Hopefully they won't be referring to their friends' gaming systems as Genitals, NESticles, and penises. >Agreed. Sometimes a GUI debugger can be nice - other times it's a pain in >the arse. Quick and easy modification of registers is a plus, and GUI debuggers have the advantage of being able to view a memory dump while code is running. I think a hybrid is best. But then comes the problem of video resolution. A standard 80x25 text display might not be sufficient (unless you've got a nifty text-drawn window-based GUI.) Under Windows, it's not a real problem, but under DOS... I don't want to have to deal with VESA and all that crap ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 21:54:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA42701 for dynarec-outgoing; Thu, 3 May 2001 21:54:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 22:12:48 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: IR: Intermediate Representation In-Reply-To: <195903292045.OAA26100@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > In dynamic recompilation, basic blocks aren't the same as a basic block > > would be for a compiler. > I'm still having some difficulty seeing the difference. Your example > in your other post would appear to be a basic block under either definition. > Can you clarify for me what's different in the kind of blocks you're > talking about from what is generally accepted as the definition in > regular compiling? Okay - I just looked up the definition in my dragon book and now know exactly what you're talking about. For some reason I thought you meant the individual nodes in an IR tree. The problem is I don't know people's backgrounds, so I tend to ignore the definitions and judge based on the descriptions. This after many years of people using the WRONG terms for things and being led down the wrong path. I rely on description only, and in the context of a dynarec it didn't immediately make sense. In any case, I'm with you - I understand. We speak the same language, brother. ;-) > Or more significantly - forget arguing about definitions, what I really > want to know is why you think we *can't* identify any sort of basic > block in source-machine code. How much source machine code have you looked at? From what I've seen, there isn't a lot of room for improvement, mostly because things are either coded in assembly or else done with a compiler that's reasonable and works well on higher register count CPUs (like the 68K). In the case of the Z80, 6502, etc... you won't find a lot of pruning capabilities. If you convert the code into a higher level language like C per your example, you'll find the code gets LOTS longer than the equivalent assembly. Let's take the following checksum code out of Galaga (this is just an example): ld hl, 3000h ld bc, 1ffeh ld de, 0h loop: ld a,(hl) add e, a adc d, 0 inc hl dec bc jr nz, loop With my ideas of recompilation (And some practical theory), it recompiles to this in x86 land: mov ebx, 3000h mov ecx, 1ffeh xor edx, edx loop: mov al, [ebx + ebp] sahf add dl, al lahf adc dh, 0 inc bx lahf dec ecx sahf jnz loop You can't get too much better than that, but a peephole optimizer could do some funkiness in there to write some slightly better code, but there is no way in hell that any C compiler would beat that - or any high level compiler. No possible way. It'd have to manually compute flags and that alone is a longer process than one trip through the loop. I think you might be giving compilers a bit too much credit. Most of them aren't that good. Even the best compilers won't do expression recomputation pruning. gcc Certainly does not even on maximum optimization. > > which would then be used to convert things such as flags and endians between > > the source layer and target layer, right? You want a general middleware > > semi-CPU that will work to translate between the source and target layers, > > right? > No, that's not quite what I'm saying. Yes, I suggest a middle layer, but > I'm saying the middle layer should be an optimised no-frills description > of exactly what is being executed. Not a pseudo-code for a hypothetical > middle-machine which brings along its own baggage, but a minimalist > raw description of the behaviour of the source machine Ah, I see. I think that's similar to what I already have in mind - if not the same idea exactly, it's the same spirit of what you're saying. Just done differently. Really, the big time sink will be generation of flags and timing adjustment code. Compared to the actual work performed on the instruction, the flags are going to be most of the code. It's certainly the case in all of my emulator cores. In my prior example, the time generation is the "sub edi, x/js end" pairs. My plan is to have the source layer pass hints to the target layer. The source layer should know every single instruction it's going to recompile. In that, it'll contain a list of flags it relies on in input and the flags that it affects on output. It also knows where terminals, conditional terminals, and nonterminals are, so it will pass the following information to the target layer: * If the target layer should create flag preamble code (get it ready for processing) * If the target layer should create flag postamble code (store the results of the processing) * If the target layer should generate timing glue or not Then we can do optimization in the source layer and eliminate unnecessary flag generation as well as unnecessary timing information where per instruction timing isn't important. Also, the source layer can figure out, since it knows where the end of the block is, the source layer can determine if timing info is on a per instruction basis or it can be subtracted at the end of a block. > So I'm saying that a dynarec for the 6502 would generate the C code > StackReg++; > Accumulator = WholeRam[0x100+StackReg]; > PSR&=~(FlagZ | FlagN); > PSR|=((Accumulator==0)<<1) | (Accumulator & 128); > for that instruction. Flow dropping through from the previous instruction > and passing on to the next instruction. I see what you're saying, but it'll wind up acting, at best, on whether or not PSR has been modified, not *HOW* it has been modified. > that isn't used in later opcodes. I don't see that feeding this code > into a compiler can possibly generate anything *worse* than an > instruction-by-instruction translation, I suggest you try it. ;-) Some of the code the compilers generate are pretty horrific. Regardless, it'll still have to manually compute something that a source->target layer recompiler can eliminate just as easily. > So I'm saying generate an intermediate representation, but make the > representation as close a description of the source machine as possible. So a different IR for each source layer? Eeew! > Then identify basic blocks - sequences of code that are never jumped > into - and compile these larger regions so that a good compiler has > something to work with to perform optimisations. Another cool thing is each time a conditional terminal or predictable terminal is hit (anything other than RTS), call the recompiler with that address. In my idealistic perfect recompiler world, you'd wind up with a depth traversal that would just recompile everything that's reachable by the tree and there'd be very little that would have to be looked up in the table. I think maybe as we go along you'll begin to see that my approach is simpler to implement but accomplishes the same thing. > My contention is that with no compiler optimisations at all, this > technique is at least equivalent to instruction-by-instruction > translation - *but* we can take advantage of 20 years of compiler > research by using optimising compiler technology on these larger > blocks and get whatever wins we normally expect from such compilers. I think the approach I have in mind will do the same job without us having to go to the effort of implementing > What's more, we're working on *generated* code, which in itself > almost always gives us more opportunities for optimisation than > human-written code does. Sure. But in the case where we're emitting target x86 code, we first emit a linked list of x86 instructions. Jumps within that basic block are just pointers to an x86 op structure (not the opcode itself), so it'd be easy to move things around in a form where we wouldn't have to go through and do massive fixups on jumps. Hell, we could even apply the same technique on the target layer later on, too. And if we combine the depth traversal recompilation, our basic blocks will be huge. At the tail end we'll wind up with a linked list of the entire tree and all we need to do is massive fixup, but peephole optimization there would really rock. I'm envisioning this thing generating some pretty awesome code - all without an intermediate language. Granted that hints would be passed from the source layer to the target layer would really, in effect, be an intermediate layer. But it's much more specific. > So... do you disgree with any of my assumptions or conclusions? > Assuming that we had a good dynamic compiler, do you think that > this technique would work? If not, why not? If the argument is > that you cannot identify suitably large basic blocks to compile, > explain why not, because I really can't see it. Now that we're on the same page, I agree with the concept of what you're getting at and I believe that I'm solving the same things. What I don't agree with is the assertion that compilers will generate code better than the aforementioned approach. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 21:56:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA42714 for dynarec-outgoing; Thu, 3 May 2001 21:56:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 22:14:15 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <3.0.5.32.20010503214157.00810100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Yeah, it is. Have you downloaded and looked at DRMZ80? That might be a > >good place to start. > No, where can I get it? http://www.synthcom.com/~neil/dynarec.zip > >We already have an x86 debugger (ripped from NASM) and a 68K debugger that > >I believe someone (perhaps you, Bart?) improved. > Aaron Giles' disassembler? I believe I did send you guys an updated > version. I did some more work on it recently, it wasn't recognizing a > couple of 68010 opcodes. You can get it at: > http://trzy.overclocked.org/gen68k/68kdb030.zip I'll snag it. > It's mashed in (completely intact and functional :)) at the end of DEBUG.C. I'll see what I can do. If you've fixed bugs, I'll take it. ;-) But we might want to think of a generic disassembler API. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 22:06:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA42736 for dynarec-outgoing; Thu, 3 May 2001 22:05:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 22:23:35 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Get to know your CPU interface API In-Reply-To: <3.0.5.32.20010503215028.00812100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The alternative way would have been to use a handler, and do all the work > there when time came to read/write to memory. But I found this was kind of > a pain. Too much overhead, and it was really messy. My thoughts exactly. My initial emulator cores did this and when I did the direct writes it sped the emulator up by 50%. > I recommend the "Programmer's Reference Manual" and the "User's Manual" to > everyone on the list. It's free... free shipping too in the US. If anyone > would like a direct link to where these are located on the Motorola site, I > could find them. Having the exact same documentation might help out a bit. I'd love it. Trying to navigate Moto's site is not fun. > Genital68K's flag calculation. I'm pretty sure all of the Genesis games I > tested have helped me eliminate pretty much all of the flag bugs. Do you have any games that don't run on Genital? > I don't have any undocumented flags emulated correctly, though. I seeing a > MAME WIP report some weeks ago which caught my eye, apparently there's a > Neo-Geo game which relies on undocumented flags. That might be a recompiler option. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 22:07:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA42742 for dynarec-outgoing; Thu, 3 May 2001 22:06:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 22:24:22 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <195903292242.QAA26555@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Which reminds me - where did Thumb Candy end up? I'm still itching > to see it! Hey guys, get off my back will ya? ;-) ;-) I'm too busy answering your damned emails. Jeez... no traffic on this list for months and now it's uncontrollable. ;-) I'll get the FTP site setup sometime and the files moved across. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 22:43:48 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA46384 for dynarec-outgoing; Thu, 3 May 2001 22:42:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 23:00:38 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: ARM Candy Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I can't bloody get wu-ftpd to work right and am tired of dicking with it. Find the stuff here: ftp://romz:idsasucks@archive.synthcom.com Take a look at Incoming. It should be obvious. Enjoy. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 22:45:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA46394 for dynarec-outgoing; Thu, 3 May 2001 22:44:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 3 May 2001 23:02:11 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: ARM Candy In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I can't bloody get wu-ftpd to work right and am tired of dicking with > it. Find the stuff here: > ftp://romz:idsasucks@archive.synthcom.com > Take a look at Incoming. It should be obvious. Enjoy. And the Space Invaders dance is ungodly lame. Fitting for the 70s. But I liked hearing Heart Of Glass and Cars... ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 3 23:38:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA46444 for dynarec-outgoing; Thu, 3 May 2001 23:38:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105040653.IAA14521@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <00c201c0d435$1a2743f0$0100a8c0@home.local> "from Neil Griffiths at May 4, 2001 01:54:24 am" To: dynarec@dynarec.com Date: Fri, 4 May 2001 08:53:30 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I actually just meant who'd handle code integrations at this point. When > > projects are starting, having CVS is just a pain and adds unnecessarily to > > the overall development process. Later on it's certainly a consideration, > > but we'll have our hands full just getting things going. > > If no-one else wants to do this, then I will - but I've just suggested to NB > that if Victor doesn't want to do the documentation then maybe I should. But > I won't do both - I still want to implement and if I'm doing this, it will > take too much time away from what I actually want to do. > I haven't exactly said I don't want but I just advised you about how a document written by me could be (just take a look to THAT ugly draft ;). If there is nobody which would want (Mike? ;) this part of the work I will go for it. > Indeed, this will save us many headaches IMO. > > > Okay, I can handle MSVC. Who is going to handle the "gcc"able version of > > it? I'd like to lock-step with someone on that so we don't get divergent. > > Perhaps Bart or Mike? I won't use gcc - I've paid for MSVC now, so I'm > sodding going to use it! :) > I should have to download the latest version (I discovered I could not compile MAME last time :P) and it is a pain ... > Neil. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 00:01:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA46477 for dynarec-outgoing; Fri, 4 May 2001 00:01:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105040716.JAA14982@pons.ac.upc.es> Subject: Re: DYNAREC: Immediate Representation In-Reply-To: <0003836d1c2cb0b9_mailit@mail.dynarec.com> "from M.I.K.e at May 4, 2001 00:39:37 am" To: dynarec@dynarec.com Date: Fri, 4 May 2001 09:16:53 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Belive me, I loved the idea of having to write two translators for each > architecture, one from architecture to VIP and the other vice versa. But I > had to realize that it's not practical. > I even tried if it might be possible just for RISC, but when you take a look > at PowerPC and PA-RISC you'll notice that RISC instruction sets aren't > necessarily easy and not too similar either... > Sure, intermediate code is nice for compilers, but in that case you are > dealing with a high-level language on the source layer and not machine code! > I agree with everything above. The Dixie Virtual Machine and ISA *HAS* those problems. I could post some translations from PowerPC to the Dixie ISA which are really horrible because of the particular instructions that the Power architecture has. And now we are having problems with some MIPS instructions (natural divisions and multiplications) and theorically MIPS is very RISCy ... > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 00:04:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA46487 for dynarec-outgoing; Fri, 4 May 2001 00:04:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 09:17:47 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: To: Subject: DYNAREC: 68040 Profile Report Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="-1463780095-2119067058-988960667=:17867" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. ---1463780095-2119067058-988960667=:17867 Content-Type: TEXT/PLAIN; charset=US-ASCII The following statistics come from compiling blocks after they had been executed more than 10 times. I simply instrumented readreg_general(), writereg_general(), rmw_general(). [Sorry for those that don't like attachments] Note: this versions of Basilisk II/JIT was compiled with gcc-3.0 ---1463780095-2119067058-988960667=:17867 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="regusage.1.txt" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Starting MacOS with extensions OFF, then shutting down Content-Disposition: attachment; filename="regusage.1.txt" KFN0YXJ0aW5nIE1hY09TIDggd2l0aCBleHRlbnNpb25zIG9mZiB0aGVuIHNo dXR0aW5nIGRvd24pDQoNCiMjIyBSZWdpc3RlciBhY2Nlc3MgY291bnRzDQpT MiAgICAgIDogICAgMTM0MDM4ICAgICA5MjYwNyAgICAyMjY2NDUgKDI5LDIl KQ0KUzEgICAgICA6ICAgIDExNTIwMSAgICAgMzc5NjggICAgMTUzMTY5ICgx OSw3JSkNCkQwICAgICAgOiAgICAgMzUyNjcgICAgIDIwNjA4ICAgICA1NTg3 NSAoNywyJSkNCkZMQUdUTVAgOiAgICAgIDI4ODcgICAgIDQ2MzIzICAgICA0 OTIxMCAoNiwzJSkNClMzICAgICAgOiAgICAgMjUxMzQgICAgIDE1MDQ2ICAg ICA0MDE4MCAoNSwyJSkNCkE3ICAgICAgOiAgICAgMzc4OTkgICAgICAxNjYy ICAgICAzOTU2MSAoNSwxJSkNCkE2ICAgICAgOiAgICAgMjkwNzggICAgICA2 ODkxICAgICAzNTk2OSAoNCw2JSkNClM0ICAgICAgOiAgICAgMTIwODQgICAg ICA3NTY4ICAgICAxOTY1MiAoMiw1JSkNCkEwICAgICAgOiAgICAgMTc0ODcg ICAgICAxMTMyICAgICAxODYxOSAoMiw0JSkNCkQxICAgICAgOiAgICAgMTA0 OTYgICAgICA1ODQ3ICAgICAxNjM0MyAoMiwxJSkNClBDX1AgICAgOiAgICAg IDgwMjIgICAgICA3ODgwICAgICAxNTkwMiAoMiwwJSkNCkQzICAgICAgOiAg ICAgIDgzNjYgICAgICA0ODc3ICAgICAxMzI0MyAoMSw3JSkNCkEyICAgICAg OiAgICAgMTAzOTQgICAgICAyNjE5ICAgICAxMzAxMyAoMSw3JSkNCkEzICAg ICAgOiAgICAgIDkyNDUgICAgICAzMDM1ICAgICAxMjI4MCAoMSw2JSkNCkE0 ICAgICAgOiAgICAgIDkzNDggICAgICAyNDY0ICAgICAxMTgxMiAoMSw1JSkN CkExICAgICAgOiAgICAgIDkzNjQgICAgICAxMjM3ICAgICAxMDYwMSAoMSw0 JSkNCkQ0ICAgICAgOiAgICAgIDU3OTAgICAgICAzNTEwICAgICAgOTMwMCAo MSwyJSkNCkQyICAgICAgOiAgICAgIDU0MzkgICAgICAzMzQwICAgICAgODc3 OSAoMSwxJSkNCkQ3ICAgICAgOiAgICAgIDQ3MjUgICAgICAyNTgyICAgICAg NzMwNyAoMCw5JSkNCkQ1ICAgICAgOiAgICAgIDQ1NjQgICAgICAyNjA1ICAg ICAgNzE2OSAoMCw5JSkNCkQ2ICAgICAgOiAgICAgIDQ1NzcgICAgICAyNTY4 ICAgICAgNzE0NSAoMCw5JSkNCkE1ICAgICAgOiAgICAgIDM2MTcgICAgICAg Mjk5ICAgICAgMzkxNiAoMCw1JSkNCkZMQUdYICAgOiAgICAgICAxNTggICAg ICAgMTU4ICAgICAgIDMxNiAoMCwwJSkNClM1ICAgICAgOiAgICAgICAgNjQg ICAgICAgIDYyICAgICAgIDEyNiAoMCwwJSkNClM2ICAgICAgOiAgICAgICAg NjAgICAgICAgIDYwICAgICAgIDEyMCAoMCwwJSkNCk5FWFRfSEFORExFUiAg ICA6ICAgICAgICAgMCAgICAgICAgIDAgICAgICAgICAwICgwLDAlKQ0KUzcg ICAgICA6ICAgICAgICAgMCAgICAgICAgIDAgICAgICAgICAwICgwLDAlKQ0K UzggICAgICA6ICAgICAgICAgMCAgICAgICAgIDAgICAgICAgICAwICgwLDAl KQ0KUzkgICAgICA6ICAgICAgICAgMCAgICAgICAgIDAgICAgICAgICAwICgw LDAlKQ0KUzEwICAgICA6ICAgICAgICAgMCAgICAgICAgIDAgICAgICAgICAw ICgwLDAlKQ0KUzExICAgICA6ICAgICAgICAgMCAgICAgICAgIDAgICAgICAg ICAwICgwLDAlKQ0KUzEyICAgICA6ICAgICAgICAgMCAgICAgICAgIDAgICAg ICAgICAwICgwLDAlKQ0K ---1463780095-2119067058-988960667=:17867 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="regusage.2.txt" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: MacOS 8, all Speedometer 4.x benchtests Content-Disposition: attachment; filename="regusage.2.txt" KEJvb3RpbmcgTWFjT1MgOCB3aXRoIGV4dGVuc2lvbnMgT0ZGLCBydW5uaW5n IEFMTCBTcGVlZG9tZXRlciA0LnggYmVuY2h0ZXN0cyBhbmQgc2h1dHRpbmcg ZG93bikNCg0KPEpJVCBjb21waWxlcj4gOiBjb21waWxlIEZQVSBpbnN0cnVj dGlvbnMgOiB5ZXMNCjxKSVQgY29tcGlsZXI+IDogcmVxdWVzdGVkIHRyYW5z bGF0aW9uIGNhY2hlIHNpemUgOiA4MTkyIEtCDQpNYXggQ1BVSUQgbGV2ZWw9 MiBQcm9jZXNzb3IgaXMgR2VudWluZUludGVsDQo8SklUIGNvbXBpbGVyPiA6 IHRhcmdldCBwcm9jZXNzb3IgaGFzIENNT1YgaW5zdHJ1Y3Rpb25zIDogeWVz DQo8SklUIGNvbXBpbGVyPiA6IHRhcmdldCBwcm9jZXNzb3IgY2FuIHN1ZmZl ciBmcm9tIHBhcnRpYWwgcmVnaXN0ZXIgc3RhbGxzIDogeWVzIDxKSVQgY29t cGlsZXI+IDogdHJhbnNsYXRpb24gY2FjaGUgZmx1c2ggOiBsYXp5LCB2ZXJz aW9uIDENCjxKSVQgY29tcGlsZXI+IDogb3B0aW1pemVyIDogb2ZmDQo8SklU IGNvbXBpbGVyPiA6IGxvdy1sZXZlbCBvcHRpbWl6ZXIgOiBvZmYNCjxKSVQg Y29tcGlsZXI+IDogcmVnaXN0ZXIgYWxpYXNpbmcgOiBvbg0KPEpJVCBjb21w aWxlcj4gOiBGUCByZWdpc3RlciBhbGlhc2luZyA6IG9uDQo8SklUIGNvbXBp bGVyPiA6IGxhenkgY29uc3RhbnQgb2Zmc2V0dGluZyA6IG9uDQo8SklUIGNv bXBpbGVyPiA6IHNlcGFyYXRlIGJsb2NraW5mbyBhbGxvY2F0aW9uIDogb2Zm DQo8SklUIGNvbXBpbGVyPiA6IGJ1aWxkaW5nIGNvbXBpbGVyIGZ1bmN0aW9u IHRhYmxlcw0KPEpJVCBjb21waWxlcj4gOiBzdXBwb3NlZGx5IDQyMzgxIGNv bXBpbGVhYmxlIG9wY29kZXMhDQo8SklUIGNvbXBpbGVyPiA6IGFjdHVhbCB0 cmFuc2xhdGlvbiBjYWNoZSBzaXplIDogODE5MiBLQiBhdCAweDQyOUIxMDAw DQo8SklUIGNvbXBpbGVyPiA6IGdhdGhlciBzdGF0aXN0aWNzIG9uIHZpcnR1 YWwgcmVnaXN0ZXIgdXNhZ2UNCjxKSVQgY29tcGlsZXI+IDogZ2F0aGVyIHN0 YXRpc3RpY3Mgb24gdHJhbnNsYXRpb24gdGltZQ0KDQojIyMgUmVnaXN0ZXIg YWNjZXNzIGNvdW50cw0KUzIgICAgICA6ICAgIDM1MTE2NiAgICAyNDI2MTUg ICAgNTkzNzgxICgyOSwyJSkNClMxICAgICAgOiAgICAzMDE3NDMgICAgIDk5 OTc5ICAgIDQwMTcyMiAoMTksOCUpDQpEMCAgICAgIDogICAgIDkyNTQ3ICAg ICA1NDcyMSAgICAxNDcyNjggKDcsMiUpDQpGTEFHVE1QIDogICAgICA3MDkz ICAgIDEyMTI0MSAgICAxMjgzMzQgKDYsMyUpDQpBNyAgICAgIDogICAgMTAx OTQ1ICAgICAgNDI4NyAgICAxMDYyMzIgKDUsMiUpDQpTMyAgICAgIDogICAg IDY2MjUwICAgICAzOTc0NCAgICAxMDU5OTQgKDUsMiUpDQpBNiAgICAgIDog ICAgIDczNzQzICAgICAxNzM3OCAgICAgOTExMjEgKDQsNSUpDQpTNCAgICAg IDogICAgIDMwNzQ5ICAgICAxOTQ5MiAgICAgNTAyNDEgKDIsNSUpDQpBMCAg ICAgIDogICAgIDQ0MzgzICAgICAgMzAxMCAgICAgNDczOTMgKDIsMyUpDQpE MSAgICAgIDogICAgIDI4MDk1ICAgICAxNjAxOCAgICAgNDQxMTMgKDIsMiUp DQpQQ19QICAgIDogICAgIDIxMDU5ICAgICAyMDcwMiAgICAgNDE3NjEgKDIs MSUpDQpEMyAgICAgIDogICAgIDIyOTAzICAgICAxMzI3NyAgICAgMzYxODAg KDEsOCUpDQpBMiAgICAgIDogICAgIDI2NzI3ICAgICAgNjU4NyAgICAgMzMz MTQgKDEsNiUpDQpBMyAgICAgIDogICAgIDIzMDI4ICAgICAgNzU0MCAgICAg MzA1NjggKDEsNSUpDQpBNCAgICAgIDogICAgIDIzMDc0ICAgICAgNjE5MiAg ICAgMjkyNjYgKDEsNCUpDQpBMSAgICAgIDogICAgIDIzNDYzICAgICAgMzEw MiAgICAgMjY1NjUgKDEsMyUpDQpENCAgICAgIDogICAgIDE1NDcyICAgICAg OTA0NCAgICAgMjQ1MTYgKDEsMiUpDQpEMiAgICAgIDogICAgIDE0OTM5ICAg ICAgOTI3NSAgICAgMjQyMTQgKDEsMiUpDQpENyAgICAgIDogICAgIDEzMDg5 ICAgICAgNjk0MyAgICAgMjAwMzIgKDEsMCUpDQpENiAgICAgIDogICAgIDEy NzYwICAgICAgNjg3NCAgICAgMTk2MzQgKDEsMCUpDQpENSAgICAgIDogICAg IDExODQ5ICAgICAgNjc0MCAgICAgMTg1ODkgKDAsOSUpDQpBNSAgICAgIDog ICAgICA5NzYyICAgICAgIDgxMCAgICAgMTA1NzIgKDAsNSUpDQpGTEFHWCAg IDogICAgICAgNDc2ICAgICAgIDQ3NiAgICAgICA5NTIgKDAsMCUpDQpTNSAg ICAgIDogICAgICAgMjAwICAgICAgIDE5OCAgICAgICAzOTggKDAsMCUpDQpT NiAgICAgIDogICAgICAgMTk2ICAgICAgIDE5NiAgICAgICAzOTIgKDAsMCUp DQpORVhUX0hBTkRMRVIgICAgOiAgICAgICAgIDAgICAgICAgICAwICAgICAg ICAgMCAoMCwwJSkNClM3ICAgICAgOiAgICAgICAgIDAgICAgICAgICAwICAg ICAgICAgMCAoMCwwJSkNClM4ICAgICAgOiAgICAgICAgIDAgICAgICAgICAw ICAgICAgICAgMCAoMCwwJSkNClM5ICAgICAgOiAgICAgICAgIDAgICAgICAg ICAwICAgICAgICAgMCAoMCwwJSkNClMxMCAgICAgOiAgICAgICAgIDAgICAg ICAgICAwICAgICAgICAgMCAoMCwwJSkNClMxMSAgICAgOiAgICAgICAgIDAg ICAgICAgICAwICAgICAgICAgMCAoMCwwJSkNClMxMiAgICAgOiAgICAgICAg IDAgICAgICAgICAwICAgICAgICAgMCAoMCwwJSkNCiANCiMjIyBDb21waWxl IEJsb2NrIHN0YXRpc3RpY3MNCk51bWJlciBvZiBjYWxscyB0byBjb21waWxl X2Jsb2NrIDogMzQxMzY5DQpUb3RhbCBlbXVsYXRpb24gdGltZSAgIDogNTQs MCBzZWMNClRvdGFsIGNvbXBpbGF0aW9uIHRpbWUgOiAzLDYgc2VjICg2LDgl KQ0K ---1463780095-2119067058-988960667=:17867 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="regusage.3.txt" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Decompressing/Installing some files Content-Disposition: attachment; filename="regusage.3.txt" KEJvb3RpbmcgTWFjT1MgOCB3aXRoIGV4dGVuc2lvbnMgT0ZGLCBkZWNvbXBy ZXNzaW5nL2luc3RhbGxpbmcgdmFyaW91cyBmaWxlcyB0aGF0IGNhbiBiZSBm b3VuZCBhdCBodHRwOi8vbWVzLmVtdXVubGltLmNvbS8gaW4gdGhlIHJlYWwg d29ybGQgYmVuY2ggdGVzdHMgc2VjdGlvbikNCg0KIyMjIFJlZ2lzdGVyIGFj Y2VzcyBjb3VudHMNClMyICAgICAgOiAgIDE2MTc0NTcgICAxMTIzMzU2ICAg Mjc0MDgxMyAoMjksMiUpDQpTMSAgICAgIDogICAxNDA3ODg0ICAgIDQ2ODEx NSAgIDE4NzU5OTkgKDIwLDAlKQ0KRDAgICAgICA6ICAgIDQxMjcwOCAgICAy NDExMTYgICAgNjUzODI0ICg3LDAlKQ0KRkxBR1RNUCA6ICAgICAyOTM5NiAg ICA1NTIyNzAgICAgNTgxNjY2ICg2LDIlKQ0KQTcgICAgICA6ICAgIDUwNDQz MyAgICAgMjExMjMgICAgNTI1NTU2ICg1LDYlKQ0KUzMgICAgICA6ICAgIDMw MDk3MiAgICAxNzYwODkgICAgNDc3MDYxICg1LDElKQ0KQTYgICAgICA6ICAg IDM0MzczOSAgICAgODc5NTQgICAgNDMxNjkzICg0LDYlKQ0KUzQgICAgICA6 ICAgIDE0MDM3OCAgICAgODc2NDQgICAgMjI4MDIyICgyLDQlKQ0KQTAgICAg ICA6ICAgIDIwNDIwMCAgICAgMTEzODkgICAgMjE1NTg5ICgyLDMlKQ0KUENf UCAgICA6ICAgIDEwMTYyMCAgICAxMDAxOTcgICAgMjAxODE3ICgyLDIlKQ0K RDMgICAgICA6ICAgIDExMjk2NyAgICAgNjYwNjQgICAgMTc5MDMxICgxLDkl KQ0KQTIgICAgICA6ICAgIDE0MzY2OCAgICAgMzQwOTcgICAgMTc3NzY1ICgx LDklKQ0KRDEgICAgICA6ICAgIDExMjA2NSAgICAgNjQyNjIgICAgMTc2MzI3 ICgxLDklKQ0KQTMgICAgICA6ICAgIDEwOTUxNiAgICAgMzYwMDQgICAgMTQ1 NTIwICgxLDYlKQ0KQTQgICAgICA6ICAgICA5NzY2NSAgICAgMjc4ODkgICAg MTI1NTU0ICgxLDMlKQ0KQTEgICAgICA6ICAgIDExMDQ0MyAgICAgMTE5MTYg ICAgMTIyMzU5ICgxLDMlKQ0KRDQgICAgICA6ICAgICA3MzQzMiAgICAgNDM1 MzkgICAgMTE2OTcxICgxLDIlKQ0KRDIgICAgICA6ICAgICA1NjYyOCAgICAg MzQ5MzIgICAgIDkxNTYwICgxLDAlKQ0KRDYgICAgICA6ICAgICA1MTk3OSAg ICAgMjg5OTkgICAgIDgwOTc4ICgwLDklKQ0KRDUgICAgICA6ICAgICA1MDc1 OCAgICAgMjkwOTkgICAgIDc5ODU3ICgwLDklKQ0KRDcgICAgICA6ICAgICA1 MDA0OCAgICAgMjc4MzQgICAgIDc3ODgyICgwLDglKQ0KQTUgICAgICA6ICAg ICA1NDA3MCAgICAgIDMzMTIgICAgIDU3MzgyICgwLDYlKQ0KRkxBR1ggICA6 ICAgICAgMTkzNyAgICAgIDE5MzcgICAgICAzODc0ICgwLDAlKQ0KUzUgICAg ICA6ICAgICAgIDk2NiAgICAgICA5NjQgICAgICAxOTMwICgwLDAlKQ0KUzYg ICAgICA6ICAgICAgIDk1NiAgICAgICA5NTYgICAgICAxOTEyICgwLDAlKQ0K TkVYVF9IQU5ETEVSICAgIDogICAgICAgICAwICAgICAgICAgMCAgICAgICAg IDAgKDAsMCUpDQpTNyAgICAgIDogICAgICAgICAwICAgICAgICAgMCAgICAg ICAgIDAgKDAsMCUpDQpTOCAgICAgIDogICAgICAgICAwICAgICAgICAgMCAg ICAgICAgIDAgKDAsMCUpDQpTOSAgICAgIDogICAgICAgICAwICAgICAgICAg MCAgICAgICAgIDAgKDAsMCUpDQpTMTAgICAgIDogICAgICAgICAwICAgICAg ICAgMCAgICAgICAgIDAgKDAsMCUpDQpTMTEgICAgIDogICAgICAgICAwICAg ICAgICAgMCAgICAgICAgIDAgKDAsMCUpDQpTMTIgICAgIDogICAgICAgICAw ICAgICAgICAgMCAgICAgICAgIDAgKDAsMCUpDQogDQojIyMgQ29tcGlsZSBC bG9jayBzdGF0aXN0aWNzDQpOdW1iZXIgb2YgY2FsbHMgdG8gY29tcGlsZV9i bG9jayA6IDE0MDIzMjcNClRvdGFsIGVtdWxhdGlvbiB0aW1lICAgOiAyNTUs NCBzZWMNClRvdGFsIGNvbXBpbGF0aW9uIHRpbWUgOiAxOCw1IHNlYyAoNywy JSkNCg== ---1463780095-2119067058-988960667=:17867 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="regusage.4.txt" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Opening and filtering a big picture Content-Disposition: attachment; filename="regusage.4.txt" KEJvb3RpbmcgTWFjT1MgOCB3aXRoIGV4dGVuc2lvbnMgT0ZGLCBjYXJyeWlu ZyBvdXQgInJlYWwgd29ybGQiIGJlbmNodGVzdHMgd2l0aCBHcmFwaGljQ29u dmVydGVyIC0tIHNlZSA8aHR0cDovL21lcy5lbXV1bmxpbS5jb20vYmVuY2h0 ZXN0cy9uZXd0ZXN0cy9pbmRleC5odG0+KQ0KDQojIyMgUmVnaXN0ZXIgYWNj ZXNzIGNvdW50cw0KUzIgICAgICA6ICAgIDQ5NTcwMyAgICAzNDM5MDEgICAg ODM5NjA0ICgyOSwzJSkNClMxICAgICAgOiAgICA0MjcxMzggICAgMTQxNjMw ICAgIDU2ODc2OCAoMTksOSUpDQpEMCAgICAgIDogICAgMTI5MzEwICAgICA3 NjI0OSAgICAyMDU1NTkgKDcsMiUpDQpGTEFHVE1QIDogICAgICA5MjM4ICAg IDE2OTM3OCAgICAxNzg2MTYgKDYsMiUpDQpBNyAgICAgIDogICAgMTQ3NjQz ICAgICAgNjA4OCAgICAxNTM3MzEgKDUsNCUpDQpTMyAgICAgIDogICAgIDkz MjMwICAgICA1NTYxMyAgICAxNDg4NDMgKDUsMiUpDQpBNiAgICAgIDogICAg MTAzMDIxICAgICAyNDkxOSAgICAxMjc5NDAgKDQsNSUpDQpTNCAgICAgIDog ICAgIDQzMTAyICAgICAyNzE3NyAgICAgNzAyNzkgKDIsNSUpDQpBMCAgICAg IDogICAgIDYzMjU3ICAgICAgMzcyNyAgICAgNjY5ODQgKDIsMyUpDQpQQ19Q ICAgIDogICAgIDMwMDE5ICAgICAyOTUyNyAgICAgNTk1NDYgKDIsMSUpDQpE MSAgICAgIDogICAgIDM3Mjg2ICAgICAyMTE5MCAgICAgNTg0NzYgKDIsMCUp DQpEMyAgICAgIDogICAgIDMxOTcxICAgICAxODgwMiAgICAgNTA3NzMgKDEs OCUpDQpBMiAgICAgIDogICAgIDM5Mzc0ICAgICAgOTYwOCAgICAgNDg5ODIg KDEsNyUpDQpBMyAgICAgIDogICAgIDMzMDkxICAgICAxMDg3NyAgICAgNDM5 NjggKDEsNSUpDQpBNCAgICAgIDogICAgIDMyMTM5ICAgICAgODcxMiAgICAg NDA4NTEgKDEsNCUpDQpBMSAgICAgIDogICAgIDMyOTI3ICAgICAgMzg4OCAg ICAgMzY4MTUgKDEsMyUpDQpENCAgICAgIDogICAgIDIxNDY1ICAgICAxMjY2 OCAgICAgMzQxMzMgKDEsMiUpDQpEMiAgICAgIDogICAgIDE5MTc3ICAgICAx MTczOCAgICAgMzA5MTUgKDEsMSUpDQpENyAgICAgIDogICAgIDE3ODQzICAg ICAgOTY4MCAgICAgMjc1MjMgKDEsMCUpDQpENiAgICAgIDogICAgIDE3MzY5 ICAgICAgOTUxNiAgICAgMjY4ODUgKDAsOSUpDQpENSAgICAgIDogICAgIDE2 Mjg3ICAgICAgOTMwNiAgICAgMjU1OTMgKDAsOSUpDQpBNSAgICAgIDogICAg IDE0MTMwICAgICAgMTA0NyAgICAgMTUxNzcgKDAsNSUpDQpGTEFHWCAgIDog ICAgICAgNjQ2ICAgICAgIDY0NiAgICAgIDEyOTIgKDAsMCUpDQpTNSAgICAg IDogICAgICAgMjQ5ICAgICAgIDI0NyAgICAgICA0OTYgKDAsMCUpDQpTNiAg ICAgIDogICAgICAgMjQxICAgICAgIDI0MSAgICAgICA0ODIgKDAsMCUpDQpO RVhUX0hBTkRMRVIgICAgOiAgICAgICAgIDAgICAgICAgICAwICAgICAgICAg MCAoMCwwJSkNClM3ICAgICAgOiAgICAgICAgIDAgICAgICAgICAwICAgICAg ICAgMCAoMCwwJSkNClM4ICAgICAgOiAgICAgICAgIDAgICAgICAgICAwICAg ICAgICAgMCAoMCwwJSkNClM5ICAgICAgOiAgICAgICAgIDAgICAgICAgICAw ICAgICAgICAgMCAoMCwwJSkNClMxMCAgICAgOiAgICAgICAgIDAgICAgICAg ICAwICAgICAgICAgMCAoMCwwJSkNClMxMSAgICAgOiAgICAgICAgIDAgICAg ICAgICAwICAgICAgICAgMCAoMCwwJSkNClMxMiAgICAgOiAgICAgICAgIDAg ICAgICAgICAwICAgICAgICAgMCAoMCwwJSkNCiANCiMjIyBDb21waWxlIEJs b2NrIHN0YXRpc3RpY3MNCk51bWJlciBvZiBjYWxscyB0byBjb21waWxlX2Js b2NrIDogNDU0ODUyDQpUb3RhbCBlbXVsYXRpb24gdGltZSAgIDogMTA1LDMg c2VjDQpUb3RhbCBjb21waWxhdGlvbiB0aW1lIDogNSwyIHNlYyAoNCw5JSkN Cg== ---1463780095-2119067058-988960667=:17867-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 00:07:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA46500 for dynarec-outgoing; Fri, 4 May 2001 00:07:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105040722.JAA14425@pons.ac.upc.es> Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <3.0.5.32.20010503163951.007a4d10@mailandnews.com> "from Bart at May 3, 2001 04:39:51 pm" To: dynarec@dynarec.com Date: Fri, 4 May 2001 09:22:28 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >* What should we use as our Guinea pig to execute the recompiled code? In > >the past I had recommended Food Fight because of its simplicity. Any other > >recommendations or objections? Remember that we don't want to kill > >ourselves with a platform that we don't understand. Food Fight is well > >documented, it's simple to teach, plus I know it. ;-) > > Sega Genesis. :) Probably not as the "main" Guinea pig, but I could easily > add DR68K to Genital. It isn't the simplest system in the world, mainly > because of the VDP, but it's not too bad. > Well we always could use M.A.M.E. and implement his ugly API for CPUs ;). It is plenty of 68K based machines. If there is interest for different testing it with different emulators (in any case when it would be almost finished in the last phases of testing) I could ask the author of Nebula (one of those CPS2 emulators) which I know a bit ... And MIKe if you are interested in SH4 emulation he already a working emulator which uses this CPU ;). > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 00:10:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA46514 for dynarec-outgoing; Fri, 4 May 2001 00:10:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 09:23:57 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: To: Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by dynarec.com id AAA46511 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 2 May 2001, Neil Bradley wrote: > > I have those for Basilisk II/JIT, including scratch registers. Do you want > > me to post a sample here ? > > Most definitely - yes! Done. I also had profiles for the interpreter. It stored results in a big 64K-entries table. Unfortunately, I don't happen to remember were I put the experiments code/results. Do I need to recover ? ;-) > > BTW I won't move from the following point: what we should cache in x86 > > registers is what the dynamic register allocater has decided to be. > > I'm not sure what you mean by this, but I'm guessing that what you meant > to say is that you want the ability to configure the DRM68K to be able to > say which registers are cached in x86 regs? If so, yeah, I'm there. I > agree. 'Cause it'll be different for each code being executed. I meant, the ability for the register allocator to choose which 68k registers will be cached on a block basis. i.e. the cache rules will likely to differ from block to block. For example, something like the "Linear scan register allocation" mechanism. [Q] BTW, what Jules appears to have done for ARMphetamine is probably the "binpacking" algorithm, not the "real" linear scan register allocator published in September, 1999 ? Bye, Gwenolé. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 00:21:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA46530 for dynarec-outgoing; Fri, 4 May 2001 00:21:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 00:39:26 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > to say is that you want the ability to configure the DRM68K to be able to > > say which registers are cached in x86 regs? If so, yeah, I'm there. I > > agree. 'Cause it'll be different for each code being executed. > I meant, the ability for the register allocator to choose which 68k > registers will be cached on a block basis. i.e. the cache rules will > likely to differ from block to block. For example, something like the > "Linear scan register allocation" mechanism. Bad, bad, bad, bad idea. Now consider the case where several different routines, all with different register allocation strategies, jump into the MIDDLE of one of those blocks. Wonder what the code would do. ;-) The logistics of trying to something like that is horribly complex, and it really isn't worth the time. You'll spend most of your time using a subset of registers, and in the case where you're not, there's nothing you can do anyway because there aren't enough registers to do the job anyway. You'll be swapping like crazy. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 00:25:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA46543 for dynarec-outgoing; Fri, 4 May 2001 00:25:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 00:43:12 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: DRM68K Layout Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Okay, here's a directory structure layout I recommend. Comments please! \Emulators\Starscream - Emulator directory \Core - Core dynarec code \Disasm\68K - Disassembly directory (68K) \Docs - Documentation \Objs\Win32 - Object files (Windows) \Objs\DJDOS - Object files (DJGPP-DOS) \OSDep\Win32 - OS Dependent files (Windows) \OSDep\DJDOS - OS Dependent files (DJGPP-DOS) \Sources\68K - Source layers (68K family) \Targets\x86 - Target layers (x86 family) \Example - Example code (Food Fight!) The idea of OSDep is for OS dependent files, including project files or workspaces if present. Thoughts? I'll create a project like this if everyone thinks it's OK and workable on other platforms. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 00:34:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA46560 for dynarec-outgoing; Fri, 4 May 2001 00:34:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 00:52:48 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Almost forgot... Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-1419854174-988962768=:10039" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-1419854174-988962768=:10039 Content-Type: TEXT/PLAIN; charset=US-ASCII /Scripts This is for generation of emitter layers. Remember this format that we discussed last summer? Check out the attached. for those that don't this is basically a way for us to automatically generate opcode generation framework for any processor type. BTW, I have a working (debugged) lexer that we could use to make a utility to emit this stuff. Anyone interested in working on it? It's sort of parallel to putting the Dynarec framework together. Damn, I really wish Alex was still with us. This is a most excellent idea. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --0-1419854174-988962768=:10039 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="insx86.txt" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="insx86.txt" Ly8gQ1BVIGRlc2NyaXB0aW9uIGZpbGUgZm9yICJYODYiDQovLyBBSlAgMjAw MDA3MDUNCg0KLy8gdGhpcyBvbmUgaXMgYSByZWFsIHBhaW4NCi8vIHRoZSBm aWxlIGZvciBhICJ3ZWxsLWJlaGF2ZWQiIENQVSBpcyBjb25zaWRlcmFibHkg c2hvcnRlcg0KDQovLyBGSVhNRTogY29udmVydCBhbGwgdGhlIFJNMzIgc3R1 ZmYgdG8gUk0zMl9SLCBSTTMyX0FUUiwgZXRjDQoNCltjcHVpbmZvXQ0KDQpO YW1lID0gWDg2Ow0KDQovLyBhbGwgaW5zdHJ1Y3Rpb25zIGFyZSBtdWx0aXBs ZXMgb2YgdGhpcyBtYW55IGJpdHMNCkluc3RydWN0aW9uR3JhbnVsYXJpdHkg PSA4Ow0KDQoNCltvcGVyYW5kc10NCg0KLy8gdGhpcyBzZWN0aW9uIGRlZmlu ZXMgdGhlIHR5cGVzIG9mIG9wZXJhbmRzIHRoaXMgQ1BVIHVuZGVyc3RhbmRz DQoNCi8vIHRoZSAidGV4dCBzdHJpbmdzIiBmb3IgdGhlIGRhc20gbmVlZCB0 byBiZSBhZGRlZCB0byB0aGlzIHNlY3Rpb24NCg0KLy8gb3BlcmFuZCB7QSwg QiwgQywgRH0NCi8vIEEgPSBvcGVyYW5kIHNpemUgKGJpdHMpDQovLyBCID0g dHlwZSAobnVtZXJpYy9rZXlzL2ZpeGVkKQ0KLy8gQyA9IGhvdyB0byBwcm9j ZXNzIHRoZSBkYXRhIHdoZW4gYXNzZW1ibGluZw0KLy8gRCA9IGhvdyB0byBw cm9jZXNzIHRoZSBkYXRhIHdoZW4gZGlzYXNzZW1ibGluZw0KDQovLyBleGFt cGxlczoNCi8vIE5PRkZTRVQgezMyLCBudW1lcmljLCB+WCwgflggfTsgIC8v IGEgMzItYml0IG9mZnNldCB0aGF0IGlzIHN0b3JlZCBiaXQtZmxpcHBlZA0K Ly8gQVRSRUcgezIsIGtleXMgPSB7UkEgPSAwLCBSQiA9IDIsIFJDID0gMywg UkQgPSA0fSB9OyAvLyBpbmRpcmVjdCBtZW1vcnkgcmVmZXJlbmNlDQoNCi8v IG9wZXJhbmRzIGRlbm90ZWQgImZpeGVkIiBhcmUgbm90IHZhcmlhYmxlDQov LyB0aGV5IGRlbm90ZSBhIHNwZWNpYWwgaW5zdHJ1Y3Rpb24gZW5jb2Rpbmcg Zm9yIGEgcGFydGljdWxhciBhcmd1bWVudA0KLy8gYW5kIGFyZSBvbmx5IHBy ZXNlbnQgdG8gYWlkIGluIGRpc2Fzc2VtYmx5DQovLw0KLy8gZm9yIGV4YW1w bGUNCi8vIG1vdiBhbCwgW21vZmZzXSAgIC0tLT4gICB4eHh4IHh4eHggeHh4 eCAoMzJ4TSkgfE1PVnxBTCBNT0ZGUz1NfA0KLy8gb25seSBhbCBpcyBhbGxv d2VkIGFzIHRoZSByZWdpc3RlciBpbiB0aGlzIGluc3RydWN0aW9uDQoNCkRC ICAgIHsgOCwgbnVtZXJpYyB9Ow0KUkQgICAgeyAzLCBrZXlzID0ge0VBWD0w LCBFQ1g9MSwgRURYPTIsIEVCWD0zLCBFU1A9NCwgRUJQPTUsIEVTST02LCBF REk9N30gfTsNClJXICAgIHsgMywga2V5cyA9IHtBWD0wLCBDWD0xLCBEWD0y LCBCWD0zLCBTUD00LCBCUD01LCBTST02LCBEST03fSB9Ow0KUkIgICAgeyAz LCBrZXlzID0ge0FMPTAsIENMPTEsIERMPTIsIEJMPTMsIEFIPTQsIENIPTUs IERIPTYsIEJIPTd9IH07DQpJTU0zMiB7MzIsIG51bWVyaWN9Ow0KSU1NMTYg ezE2LCBudW1lcmljfTsNCklNTTggIHsgOCwgbnVtZXJpY307DQpSTThfRElT UDggeyA4LCBudW1lcmljfTsNClJNOF9ESVNQMzIgezMyLCBudW1lcmljfTsN ClJNMTZfRElTUDggeyA4LCBudW1lcmljfTsNClJNMTZfRElTUDMyIHszMiwg bnVtZXJpY307DQpSTTMyX0RJU1A4IHsgOCwgbnVtZXJpY307DQpSTTMyX0RJ U1AzMiB7MzIsIG51bWVyaWN9Ow0KTU9GRlMgezMyLCBudW1lcmljfTsNCkFM ICAgIHsgMCwgZml4ZWR9Ow0KQVggICAgeyAwLCBmaXhlZH07DQpFQVggICB7 IDAsIGZpeGVkfTsNCkNMICAgIHsgMCwgZml4ZWR9Ow0KMSAgICAgeyAwLCBm aXhlZH07DQpSOCAgICB7IDMsIGtleXMgPSB7QUw9MCwgQ0w9MSwgREw9Miwg Qkw9MywgQUg9NCwgQ0g9NSwgREg9NiwgQkg9N30gfTsNClIxNiAgIHsgMywg a2V5cyA9IHtBWD0wLCBDWD0xLCBEWD0yLCBCWD0zLCBTUD00LCBCUD01LCBT ST02LCBEST03fSB9Ow0KUjMyICAgeyAzLCBrZXlzID0ge0VBWD0wLCBFQ1g9 MSwgRURYPTIsIEVCWD0zLCBFU1A9NCwgRUJQPTUsIEVTST02LCBFREk9N30g fTsNCkNDICAgIHsgNCwga2V5cyA9IHsNCgkJQT0weDA3LCBBRT0weDAzLCBC PTB4MDIsIEJFPTB4MDYsIEM9MHgwMiwgRT0weDA0LCBHPTB4MGYsIEdFPTB4 MGQsIA0KCQlMPTB4MGMsIExFPTB4MGUsIE5BPTB4MDYsIE5BRT0weDAyLCBO Qj0weDAzLCBOQkU9MHgwNywgTkM9MHgwMywgTkU9MHgwNSwgDQoJCU5HPTB4 MGUsIE5HRT0weDBjLCBOTD0weDBkLCBOTEU9MHgwZiwgTk89MHgwMSwgTlA9 MHgwYiwgTlM9MHgwOSwgTlo9MHgwNSwgDQoJCU89MHgwMCwgUD0weDBhLCBQ RT0weDBhLCBQTz0weDBiLCBTPTB4MDgsIFo9MHgwNCwgfSB9Ow0KUkVMOCAg eyA4LCBudW1lcmljIH07DQpSRUwzMiB7MzIsIG51bWVyaWMgfTsNClJNOF9S ICAgeyAzLCBrZXlzID0ge0FMPTAsIENMPTEsIERMPTIsIEJMPTMsIEFIPTQs IENIPTUsIERIPTYsIEJIPTd9IH07ICAgICAgICAgIC8vIHJtOCBpcyByZWc4 DQpSTTE2X1IgIHsgMywga2V5cyA9IHtBWD0wLCBDWD0xLCBEWD0yLCBCWD0z LCBTUD00LCBCUD01LCBTST02LCBEST03fSB9OyAgICAgICAgICAvLyBybTE2 IGlzIHJlZzE2DQpSTTMyX1IgIHsgMywga2V5cyA9IHtFQVg9MCwgRUNYPTEs IEVEWD0yLCBFQlg9MywgRVNQPTQsIEVCUD01LCBFU0k9NiwgRURJPTd9IH07 ICAvLyBybTMyIGlzIHJlZzMyDQpSTThfQVRSICB7IDMsIGtleXMgPSB7RUFY PTAsIEVDWD0xLCBFRFg9MiwgRUJYPTMsIEVTST02LCBFREk9N30gfTsgICAg ICAgICAgICAgICAvLyBybTggaXMgOEByZWcNClJNOF9BVFJEICB7IDMsIGtl eXMgPSB7RUFYPTAsIEVDWD0xLCBFRFg9MiwgRUJYPTMsIEVCUD01LCBFU0k9 NiwgRURJPTd9IH07ICAgICAgIC8vIHJtOCBpcyA4QHJlZytkaXNwDQpSTTE2 X0FUUiAgeyAzLCBrZXlzID0ge0VBWD0wLCBFQ1g9MSwgRURYPTIsIEVCWD0z LCBFU0k9NiwgRURJPTd9IH07ICAgICAgICAgICAgICAvLyBybTE2IGlzIDE2 QHJlZw0KUk0xNl9BVFJEICB7IDMsIGtleXMgPSB7RUFYPTAsIEVDWD0xLCBF RFg9MiwgRUJYPTMsIEVCUD01LCBFU0k9NiwgRURJPTd9IH07ICAgICAgLy8g cm0xNiBpcyAxNkByZWcrZGlzcA0KUk0zMl9BVFIgIHsgMywga2V5cyA9IHtF QVg9MCwgRUNYPTEsIEVEWD0yLCBFQlg9MywgRVNJPTYsIEVEST03fSB9OyAg ICAgICAgICAgICAgLy8gcm0zMiBpcyAzMkByZWcNClJNMzJfQVRSRCAgeyAz LCBrZXlzID0ge0VBWD0wLCBFQ1g9MSwgRURYPTIsIEVCWD0zLCBFQlA9NSwg RVNJPTYsIEVEST03fSB9OyAgICAgIC8vIHJtMzIgaXMgMzJAcmVnK2Rpc3AN ClNDTCAgIHsyLCBrZXlzID0ge01VTDE9MCwgTVVMMj0xLCBNVUw0PTIsIE1V TDg9M30gfTsNCg0KLy8gRklYTUU6IHRlbXBvcmFyeSBoYWNrDQpSTTggezIs IG51bWVyaWN9Ow0KUk0xNiB7MiwgbnVtZXJpY307DQpSTTMyIHsyLCBudW1l cmljfTsNCg0KW2ZsYWdzXQ0KDQovLyB0aGlzIHNlY3Rpb24gZGVmaW5lcyB0 aGUgZmxhZ3MgZm9yIHRoaXMgQ1BVDQoNCi8vIHRoZXNlIHNob3VsZCBqdXN0 IHJlc3VsdCBpbiAjZGVmaW5lcyBsaWtlIEZMQUdfWDg2X049MHgwMDgwLCBG TEFHX1g4Nl9DMHgwMDAxLCBldGMNCg0KTiA9IHsgMHgwMDgwLCAic2lnbiIg fTsNCkMgPSB7IDB4MDAwMSwgImNhcnJ5IiB9Ow0KWiA9IHsgMHgwMDQwLCAi emVybyIgfTsNClYgPSB7IDB4MDEwMCwgIm92ZXJmbG93IiB9Ow0KDQoNCltp bnN0cnVjdGlvbnNdDQoNCi8vIHRoaXMgc2VjdGlvbiBkZWZpbmVzIHRoZSBp bnN0cnVjdGlvbiBzZXQNCi8vIGVhY2ggbGluZSBjb250YWluczoNCg0KLy8g QUFBQSBBQUFBIEFBQUEgQUFBQSB8QkJCQnxDQyBDQyBDQ3xERHxFRXxGIEcg SA0KDQovLyBBID0gaW5zdHJ1Y3Rpb24gYml0cyAtLSBvbmx5IDAgYW5kIDEg YXJlIGxpdGVyYWwNCi8vDQovLyAgICAgKG54QyksIGVnICg4eEQpIG1lYW5z ICJpbnNlcnQgbiBDJ3MiDQovLyAgICAgYWxsIG90aGVyIGNoYXJhY3RlcnMg Y2FuIG1hdGNoIGVpdGhlciB3YXkNCi8vICAgICB0aGUgb3BlcmFuZHMgd2ls bCBzcGVjaWZ5IHBvc2l0aW9uIGJ5IHRoZSBjaGFyYWN0ZXJzIGhlcmUNCi8v DQovLyBCID0gaW5zdHJ1Y3Rpb24gbmFtZSwgZWcgTU9WDQovLyBDID0gb3Bl cmFuZHMgKGFzIGRlZmluZWQgaW4gW29wZXJhbmRzXSBzZWN0aW9uKQ0KLy8g ICAgIHRoZXNlIGxvb2sgbGlrZSBPcGVyYW5kTmFtZT1Db3ZlckNoYXIsIGVn IFJFRzMyPVIgb3IgSU1NMzI9SQ0KLy8gRCA9IGZsYWdzIHdyaXR0ZW4gKGFz IGRlZmluZWQgaW4gW2ZsYWdzXSBzZWN0aW9uLCBlZyBOQ1YNCi8vIEUgPSBm bGFncyByZWFkIChhcyBkZWZpbmVkIGluIFtmbGFnc10gc2VjdGlvbg0KLy8g RiA9IGNhY2hlIGhpdCB0aW1pbmcNCi8vIEcgPSBjYWNoZSBtaXNzIHRpbWlu Zw0KLy8gSCA9IGRvZXMgdGhpcyBpbnN0cnVjdGlvbiBmb3JjZSB0aGUgc291 cmNlIGxheWVyIHRvIGVuZCBhIGJsb2NrPw0KDQovLyBDLCBELCBhbmQgRSBj YW4gYmUgbGVmdCBvdXQgY29tcGxldGVseQ0KDQovLyBlYXJsaWVyIGluc3Ry dWN0aW9ucyBoYXZlIHByZWNlZGVuY2UgaW4gdGhpcyB0YWJsZQ0KDQovLyBj b250cm9sIG9wZXJhdGlvbnMNCiAgICAgICAgICAgMTAwMSAwMDAwICB8Tk9Q fHx8fDEgMSAwOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBub3AN CiAgICAgICAgICAgMTEwMCAwMDExICB8UkVUfHx8fDEgMSAwOyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAvLyByZXQNCiAgICAgICAgICAgMTAwMSAx MTExIHxMQUhGfHx8fDEgMSAwOyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAvLyBsYWhmDQogICAgICAgICAgIDEwMDEgMTExMCB8U0FIRnx8fHwyIDIg MDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gc2FoZg0KICAgICAg ICAgICAxMTExIDEwMDAgIHxDTEN8fHx8MSAxIDA7ICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC8vIGNsYw0KDQowMDAwIDExMTEgIDEwMDEgMDAwMCAg WFhZWSBZTU1NIHxTRVRPfFJNOD1YfHx8MiAyIDA7ICAgICAgICAgICAgICAv LyBzZXRvIHIvbTgNCjAwMDAgMTExMSAgMTAwMSBDQ0NDICBYWFlZIFlNTU0g fFNFVH58Q0M9QyBSTTg9WHx8fDIgMiAwOyAgICAgICAgICAgICAgLy8gc2V0 Y2Mgci9tOA0KDQowMTEwIDAxMTAgIDExMTEgMTExMSAgWFgwMSAwUlJSIHxD QUxMfFJNMTY9WHx8fDEgMSAwOyAgICAgICAgICAgICAvLyBjYWxsIHIvbTE2 DQogICAgICAgICAgIDExMTEgMTExMSAgWFgwMSAwUlJSIHxDQUxMfFJNMzI9 WHx8fDEgMSAwOyAgICAgICAgICAgICAvLyBjYWxsIHIvbTMyDQoNCjAxMTAg MTAwMCAgKDMyeEkpICAgICAgfFBVU0h8SU1NMzI9SXx8fDEgMSAwOyAgICAg ICAgICAgICAgICAgICAgICAgLy8gcHVzaCBpbW1lZGlhdGUzMg0KDQovLyBq dW1wIGluc3RydWN0aW9ucw0KICAgICAgICAgICAgICAgICAgICAgIDAxMTEg Q0NDQyAgfEooSiVzIDB4JTA4bHgpfENDPUMgUkVMOCAgIHx8fDEgMSAwOyAg ICAgICAgLy8gamNjIHJlbDgNCiAgICAgICAgICAgMDAwMCAxMTExICAxMDAw IENDQ0MgIHxKfnxDQyBSRUwzMiAgfHx8MSAxIDA7ICAgICAgICAvLyBqY2Mg cmVsMzINCiAgICAgICAgICAgICAgICAgICAgICAxMTEwIDEwMTEgfEpNUHxS RUw4ICAgICAgfHx8MSAxIDA7ICAgICAgICAvLyBqbXAgcmVsOA0KICAgICAg ICAgICAgICAgICAgICAgIDExMTAgMTAwMSB8Sk1QfFJFTDMyICAgICB8fHwx IDEgMDsgICAgICAgIC8vIGptcCByZWwzMg0KICAgICAgICAgICAxMTExIDEx MTEgIFhYMTAgMFlZWSB8Sk1QfFJNMzI9WCAgICAgIHx8fDEgMSAwOyAgICAg ICAgLy8gam1wIHJtMzIgIChhYnMpDQoNCi8vIHNpZ24gZXh0ZW5kIGluc3Ry dWN0aW9ucw0KICAgICAgICAgICAxMDAxIDEwMDEgIHxDRFF8fHx8MSAxIDA7 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNkcSAgKGVheCAtLT4g ZWR4OmVheCkNCg0KLy8gYml0IG1hbmlwdWxhdGlvbg0KMDAwMCAxMTExICAx MDEwIDAwMTEgIFhYUlIgUk1NTSAgICAgICB8QlR8Uk0zMj1YIFIzMj1SICB8 fHwxIDEgMDsgICAvLyBiaXQgdGVzdCBybTMyIChiaXQgaW4gcjMyKSAtLT4g Q0YNCjAwMDAgMTExMSAgMTAxMSAxMDEwICBYWDEwIDBNTU0gKDh4SSkgfEJU fFJNMzI9WCBJTU04PUkgfHx8MSAxIDA7ICAgLy8gYml0IHRlc3Qgcm0zMiAo Yml0IGluIGltbTgpIC0tPiBDRg0KMDAwMCAxMTExICAxMDExIDExMDAgIFhY UlIgUk1NTSAgICAgIHxCU0N8UjMyPVIgUk0zMj1YICB8fHwxIDEgMDsgICAv LyBiaXQgc2NhbiBmb3J3YXJkIG9uIHJtMzIgLS0+IHIzMg0KMDAwMCAxMTEx ICAxMDExIDExMDEgIFhYUlIgUk1NTSAgICAgIHxCU1J8UjMyPVIgUk0zMj1Y ICB8fHwxIDEgMDsgICAvLyBiaXQgc2NhbiByZXZlcnNlIG9uIHJtMzIgLS0+ IHIzMg0KDQovLyBtb3ZlIGluc3RydWN0aW9ucw0KICAgICAgICAgICAxMDAw IDEwMDAgIFhYUlIgUk1NTSB8TU9WfFJNOD1YICBSOD1SICAgfHx8MSAxIDA7 ICAgICAgICAvLyBtb3Ygci9tOCwgcjgNCjAxMTAgMDExMCAgMTAwMCAxMDAx ICBYWFJSIFJNTU0gfE1PVnxSTTE2PVggUjE2PVIgIHx8fDEgMSAwOyAgICAg ICAgLy8gbW92IHIvbTE2LCByMTYNCiAgICAgICAgICAgMTAwMCAxMDAxICBY WFJSIFJNTU0gfE1PVnxSTTMyPVggUjMyPVIgIHx8fDEgMSAwOyAgICAgICAg Ly8gbW92IHIvbTMyLCByMzINCiAgICAgICAgICAgMTAwMCAxMDEwICBYWFJS IFJNTU0gfE1PVnxSOD1SICAgUk04PVggIHx8fDEgMSAwOyAgICAgICAgLy8g bW92IHI4LCByL204DQowMTEwIDAxMTAgIDEwMDAgMTAxMSAgWFhSUiBSTU1N IHxNT1Z8UjE2PVIgIFJNMTY9WCB8fHwxIDEgMDsgICAgICAgIC8vIG1vdiBy MTYsIHIvbTE2DQogICAgICAgICAgIDEwMDAgMTAxMSAgWFhSUiBSTU1NIHxN T1Z8UjMyPVIgIFJNMzI9WCB8fHwxIDEgMDsgICAgICAgIC8vIG1vdiByMzIs IHIvbTMyDQogICAgICAgICAgIDEwMTAgMDAwMCAgKDMyeE0pICAgIHxNT1Z8 QUwgTU9GRlM9TSAgICB8fHwxIDEgMDsgICAgICAgIC8vIG1vdiBhbCwgW21v ZmZzXQ0KMDExMCAwMTEwICAxMDEwIDAwMDEgICgzMnhNKSAgICB8TU9WfEFY IE1PRkZTPU0gIHx8fDEgMSAwOyAgICAgICAgLy8gbW92IGF4LCBbbW9mZnNd DQogICAgICAgICAgIDEwMTAgMDAwMSAgKDMyeE0pICAgIHxNT1Z8RUFYIE1P RkZTPU0gfHx8MSAxIDA7ICAgICAgICAvLyBtb3YgZWF4LCBbbW9mZnNdDQog ICAgICAgICAgIDEwMTAgMDAxMCAgKDMyeE0pICAgIHxNT1Z8TU9GRlM9TSBB TCAgfHx8MSAxIDA7ICAgICAgICAvLyBtb3YgW21vZmZzXSwgYWwNCjAxMTAg MDExMCAgMTAxMCAwMDExICAoMzJ4TSkgICAgfE1PVnxNT0ZGUz1NIEFYICB8 fHwxIDEgMDsgICAgICAgIC8vIG1vdiBbbW9mZnNdLCBheA0KICAgICAgICAg ICAxMDEwIDAwMTEgICgzMnhNKSAgICB8TU9WfE1PRkZTPU0gRUFYIHx8fDEg MSAwOyAgICAgICAgLy8gbW92IFttb2Zmc10sIGVheA0KICAgICAgICAgICAx MDExIDBSUlIgICg4eEkpICAgICB8TU9WfFJCPVIgSU1NOD1JICAgfHx8MSAx IDA7ICAgICAgICAvLyBtb3YgcmVnOCwgaW1tOA0KMDExMCAwMTEwICAxMDEx IDFSUlIgICgxNnhJKSAgICB8TU9WfFJXPVIgSU1NMTY9SSAgfHx8MSAxIDA7 ICAgICAgICAvLyBtb3YgcmVnMTYsIGltbTE2DQogICAgICAgICAgIDEwMTEg MVJSUiAgKDMyeEkpICAgIHxNT1Z8UkQ9UiBJTU0zMj1JICB8fHwxIDEgMDsg ICAgICAgIC8vIG1vdiByZWczMiwgaW1tMzINCiAgICAgICAgICAgMTEwMCAw MTEwICBYWDAwIDBNTU0gKDh4SSkgIHxNT1Z8Uk04PVggSU1NOD1JICB8fHwx IDEgMDsgICAgICAgIC8vIG1vdiByL204LCBpbW04DQowMTEwIDAxMTAgIDEx MDAgMDExMSAgWFgwMCAwTU1NICgxNnhJKSB8TU9WfFJNMTY9WCBJTU0xNj1J fHx8MSAxIDA7ICAgICAgICAvLyBtb3Ygci9tMTYsIGltbTE2DQogICAgICAg ICAgIDExMDAgMDExMSAgWFgwMCAwTU1NICgzMnhJKSB8TU9WfFJNMzI9WCBJ TU0zMj1JfHx8MSAxIDA7ICAgICAgICAvLyBtb3Ygci9tMzIsIGltbTMyDQoN Ci8vIGFkZC9hZGMgaW5zdHJ1Y3Rpb25zDQogICAgICAgICAgIDAwMDAgMDEw MCAgKDh4SSkgICAgICAgICAgICB8QUREfEFMICAgICBJTU04PUkgfHx8MSAx IDA7ICAgICAvLyBhZGQgYWwsIGltbTgNCjAxMTAgMDExMCAgMDAwMCAwMTAx ICAoMTZ4SSkgICAgICAgICAgIHxBRER8QVggICAgIElNTTE2PUl8fHwxIDEg MDsgICAgIC8vIGFkZCBheCwgaW1tMTYNCiAgICAgICAgICAgMDAwMCAwMTAx ICAoMzJ4SSkgICAgICAgICAgIHxBRER8RUFYICAgIElNTTMyPUl8fHwxIDEg MDsgICAgIC8vIGFkZCBlYXgsIGltbTMyDQogICAgICAgICAgIDEwMDAgMDAw MCAgWFgwMCAwTU1NICg4eEkpICB8QUREfFJNOD1YICBJTU04PUkgfHx8MSAx IDA7ICAgICAvLyBhZGQgci9tOCwgaW1tOA0KMDExMCAwMTEwICAxMDAwIDAw MDEgIFhYMDAgME1NTSAoMTZ4SSkgfEFERHxSTTE2PVggSU1NMTY9SXx8fDEg MSAwOyAgICAgLy8gYWRkIHIvbTE2LCBpbW0xNg0KICAgICAgICAgICAxMDAw IDAwMDEgIFhYMDAgME1NTSAoMzJ4SSkgfEFERHxSTTMyPVggSU1NMzI9SXx8 fDEgMSAwOyAgICAgLy8gYWRkIHIvbTMyLCBpbW0zMg0KMDExMCAwMTEwICAx MDAwIDAwMTEgIFhYMDAgME1NTSAoOHhJKSAgfEFERHxSTTE2PVggSU1NOD1J IHx8fDEgMSAwOyAgICAgLy8gYWRkIHIvbTE2LCAoc2lnbmVkKSBpbW04DQog ICAgICAgICAgIDEwMDAgMDAxMSAgWFgwMCAwTU1NICg4eEkpICB8QUREfFJN MzI9WCBJTU04PUkgfHx8MSAxIDA7ICAgICAvLyBhZGQgci9tMzIsIChzaWdu ZWQpIGltbTgNCiAgICAgICAgICAgMDAwMCAwMDAwICBYWFJSIFJNTU0gfEFE RHxSTTg9WCAgUjg9UiAgIHx8fDEgMSAwOyAgICAgLy8gYWRkIHIvbTgsIHI4 DQowMTEwIDAxMTAgIDAwMDAgMDAwMSAgWFhSUiBSTU1NIHxBRER8Uk0xNj1Y IFIxNj1SICB8fHwxIDEgMDsgICAgIC8vIGFkZCByL20xNiwgcjE2DQogICAg ICAgICAgIDAwMDAgMDAwMSAgWFhSUiBSTU1NIHxBRER8Uk0zMj1YIFIzMj1S ICB8fHwxIDEgMDsgICAgIC8vIGFkZCByL20zMiwgcjMyDQogICAgICAgICAg IDAwMDAgMDAxMCAgWFhSUiBSTU1NIHxBRER8Ujg9UiAgIFJNOD1YICB8fHwx IDEgMDsgICAgIC8vIGFkZCByOCwgci9tOA0KMDExMCAwMTEwICAwMDAwIDAw MTEgIFhYUlIgUk1NTSB8QUREfFIxNj1SICBSTTE2PVggfHx8MSAxIDA7ICAg ICAvLyBhZGQgcjE2LCByL20xNg0KICAgICAgICAgICAwMDAwIDAwMTEgIFhY UlIgUk1NTSB8QUREfFIzMj1SICBSTTMyPVggfHx8MSAxIDA7ICAgICAvLyBh ZGQgcjMyLCByL20zMg0KDQogICAgICAgICAgIDAwMDEgMDEwMCAgKDh4SSkg ICAgICAgICAgICB8QURDfEFMIElNTTg9SSAgIHx8fDEgMSAwOyAgICAgLy8g YWRjIGFsLCBpbW04DQowMTEwIDAxMTAgIDAwMDEgMDEwMSAgKDE2eEkpICAg ICAgICAgICB8QURDfEFYIElNTTE2PUkgIHx8fDEgMSAwOyAgICAgLy8gYWRj IGF4LCBpbW0xNg0KICAgICAgICAgICAwMDAxIDAxMDEgICgzMnhJKSAgICAg ICAgICAgfEFEQ3xFQVggSU1NMzI9SSB8fHwxIDEgMDsgICAgIC8vIGFkYyBl YXgsIGltbTMyDQogICAgICAgICAgIDEwMDAgMDAwMCAgWFgwMSAwTU1NICg4 eEkpICB8QURDfFJNOD1YIElNTTg9SSAgfHx8MSAxIDA7ICAgICAvLyBhZGMg ci9tOCwgaW1tOA0KMDExMCAwMTEwICAxMDAwIDAwMDEgIFhYMDEgME1NTSAo MTZ4SSkgfEFEQ3xSTTE2PVggSU1NMTY9SXx8fDEgMSAwOyAgICAgLy8gYWRj IHIvbTE2LCBpbW0xNg0KICAgICAgICAgICAxMDAwIDAwMDEgIFhYMDEgME1N TSAoMzJ4SSkgfEFEQ3xSTTMyPVggSU1NMzI9SXx8fDEgMSAwOyAgICAgLy8g YWRjIHIvbTMyLCBpbW0zMg0KMDExMCAwMTEwICAxMDAwIDAwMTEgIFhYMDEg ME1NTSAoOHhJKSAgfEFEQ3xSTTE2PVggSU1NOD1JIHx8fDEgMSAwOyAgICAg Ly8gYWRjIHIvbTE2LCAoc2lnbmVkKSBpbW04DQogICAgICAgICAgIDEwMDAg MDAxMSAgWFgwMSAwTU1NICg4eEkpICB8QURDfFJNMzI9WCBJTU04PUkgfHx8 MSAxIDA7ICAgICAvLyBhZGMgci9tMzIsIChzaWduZWQpIGltbTgNCiAgICAg ICAgICAgMDAwMSAwMDAwICBYWFJSIFJNTU0gfEFEQ3xSTTg9WCBSOD1SICAg IHx8fDEgMSAwOyAgICAgLy8gYWRjIHIvbTgsIHI4DQowMTEwIDAxMTAgIDAw MDEgMDAwMSAgWFhSUiBSTU1NIHxBREN8Uk0xNj1YIFIxNj1SICB8fHwxIDEg MDsgICAgIC8vIGFkYyByL20xNiwgcjE2DQogICAgICAgICAgIDAwMDEgMDAw MSAgWFhSUiBSTU1NIHxBREN8Uk0zMj1YIFIzMj1SICB8fHwxIDEgMDsgICAg IC8vIGFkYyByL20zMiwgcjMyDQogICAgICAgICAgIDAwMDEgMDAxMCAgWFhS UiBSTU1NIHxBREN8Ujg9UiBSTTg9WCAgICB8fHwxIDEgMDsgICAgIC8vIGFk YyByOCwgci9tOA0KMDExMCAwMTEwICAwMDAxIDAwMTEgIFhYUlIgUk1NTSB8 QURDfFIxNj1SIFJNMTY9WCAgfHx8MSAxIDA7ICAgICAvLyBhZGMgcjE2LCBy L20xNg0KICAgICAgICAgICAwMDAxIDAwMTEgIFhYUlIgUk1NTSB8QURDfFIz Mj1SIFJNMzI9WCAgfHx8MSAxIDA7ICAgICAvLyBhZGMgcjMyLCByL20zMg0K --0-1419854174-988962768=:10039-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 00:40:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA46577 for dynarec-outgoing; Fri, 4 May 2001 00:40:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105040755.JAA16458@pons.ac.upc.es> Subject: Re: DYNAREC: DRM68K Layout In-Reply-To: "from Neil Bradley at May 4, 2001 00:43:12 am" To: dynarec@dynarec.com Date: Fri, 4 May 2001 09:55:54 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Okay, here's a directory structure layout I recommend. Comments please! > > \Emulators\Starscream - Emulator directory > \Core - Core dynarec code > \Disasm\68K - Disassembly directory (68K) > \Docs - Documentation > \Objs\Win32 - Object files (Windows) > \Objs\DJDOS - Object files (DJGPP-DOS) > \OSDep\Win32 - OS Dependent files (Windows) > \OSDep\DJDOS - OS Dependent files (DJGPP-DOS) > \Sources\68K - Source layers (68K family) > \Targets\x86 - Target layers (x86 family) > \Example - Example code (Food Fight!) > > The idea of OSDep is for OS dependent files, including project files or > workspaces if present. > > Thoughts? I'll create a project like this if everyone thinks it's OK and > workable on other platforms. > I we will need a x86 dissassembler. Perhaps if we implement tools (for example that parser you started for parsing ISA definition files) we could add a tools directory or a directory for each of those tools. About the documentation I think someone should start to recopile those mails (the coding standards and API mail for example) and put them in the docs directory. We also have some interesting mails from past discussions which could get into the doc section (the foodfight explanation for example, NB start document about his idea, DRZ80 source may be, etc). We could also have documentation about the target and source ISAs for a reference (the PDFs must be somewhere I think I have some ...). Perhaps in a doc/architecture directory? Are we already going around the definition files? I think MIKE implemented the last version of the M68K file. Bart is going to be very useful here since he knows very well the 68K now ;). BTW, Bart how is your 68K emulator compared with Starscream? If it has more or less the same accuracy we could use it, we have the programmer near to ask how it works ;). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 01:22:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA46624 for dynarec-outgoing; Fri, 4 May 2001 01:22:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 10:35:53 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: To: Subject: DYNAREC: Vmgen Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com See --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 01:37:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA46646 for dynarec-outgoing; Fri, 4 May 2001 01:37:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3AF26E02.ECF79556@austin.rr.com> Date: Fri, 04 May 2001 01:53:22 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: Lurker roundup 2001 References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'll be damned... list activity... hell freeze over or something? =P The crazy mmap abusing psycho is back... finally got a grip on a nasty EverQuest habit (TWICE as addictive as crack!) and started coding again. Stank will rise again, in a kinder, gentler, multi-platform incarnation. Still haven't gotten around to a CPU that a dynarec would really be helpful (or efficient) for, but once the NES portion is ported, I plan on going into the dreaded realm of PSX emulation... (I want to play SOTN again, and all the PSX emulators I've found suck unbelievably huge troll-nads) Keep up the nice discussions, haven't seen anything to add some comments to yet, but that will change =) Incidentally, I'm, uh, borrowing that memory map structure =P -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 01:52:33 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA46666 for dynarec-outgoing; Fri, 4 May 2001 01:52:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 11:06:10 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: To: Subject: Re: DYNAREC: 68000 Profile Report (fwd) Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [Repost: yet forgot to change the From: field...] On Fri, 4 May 2001, Neil Bradley wrote: > Bad, bad, bad, bad idea. Now consider the case where several different > routines, all with different register allocation strategies, jump into the > MIDDLE of one of those blocks. Wonder what the code would do. ;-) Why do you want an instruction to jump right in the middle of another block ? Recompiled blocks are chained. Let us have an example: Source blocks: Block_A: ... ... (terminal, say RETURN) Block_B: ... (terminal, say JUMP -- here, to ) Compiled blocks: TBlock_A: Block_A/instr_[1-N] TBlock_B: Block_B/instr_[1-N] chained to block B1 TBlock_B1: Block_A/instr_[K-N] Redundant ? Not really, because TBlock_B1 is better optimised for that portion (register usage/flag usage/etc.). > The logistics of trying to something like that is horribly complex, and it > really isn't worth the time. You'll spend most of your time using a subset > of registers, and in the case where you're not, there's nothing you can do > anyway because there aren't enough registers to do the job anyway. You'll > be swapping like crazy. Since you seem to like real/working examples, check {UAE,Basilisk}-JIT out. ;-) No, linear scan register allocation though. This 68040 JIT compiler is even slightly faster than Syn68k. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 01:54:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA46676 for dynarec-outgoing; Fri, 4 May 2001 01:54:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105040909.LAA17086@pons.ac.upc.es> Subject: Re: DYNAREC: IR: Intermediate Representation In-Reply-To: <195903292045.OAA26100@gtoal.com> "from Graham Toal at Mar 30, 1959 02:45:04 pm" To: dynarec@dynarec.com Date: Fri, 4 May 2001 11:09:36 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Are you very influenced by Cifuentes and UQBT team works? They actually use this approach (including the concept of RTL). And they are not generating native code (as we are starting to do with Dixie) but C code which is later feed in a C compiler for the target CPU. Cifuentes comes from the decompilation world and this is the reason because it uses this approach rather than typical direct generation of native code. Well one of the members for the Dixie team was working with them and it seems they have really interesting definition languages for machines and CPUs and a complet toolset. And the code generated (after compilation) seems to be very fast. But they have also some problems, they're compatibility is still small, they can just run small programs (Dixie passes all or most of the SpecInt and in some case SpecFP for the translated architectures). And I think they're main target are RISC CPUs. > For instance, in the BeebEm 6502 emulator, we have: > > case 0x68: /* PLA */ > StackReg++; > Accumulator = WholeRam[0x100+StackReg]; > PSR&=~(FlagZ | FlagN); > PSR|=((Accumulator==0)<<1) | (Accumulator & 128); > break; > > > So I'm saying that a dynarec for the 6502 would generate the C code > > StackReg++; > Accumulator = WholeRam[0x100+StackReg]; > PSR&=~(FlagZ | FlagN); > PSR|=((Accumulator==0)<<1) | (Accumulator & 128); > > for that instruction. Flow dropping through from the previous instruction > and passing on to the next instruction. > And how could a compiler be enough smart to know that the PSR is a status word which carries flag? And how could use the target CPU own flags to emulate the source CPU flags? Because in direct translation this add could be implemented even with flag calculation with one to three or four instructions. The own flags, for example, of the x86 can be used to store and calculate the source CPU flags. Take a look at how it works MZ80, Starscream or Gen68K in this aspect. That is because in a direct translation you have all the information about both targets. Any IR (unless it is an exact combination of the source ISA and/or the target ISA) will hide information which could be useful. The C languages hides completely the real ISA and behaviour of the target CPU so we are losing many optimizations oportunities. The idea of Neil is that we are going to use our own knowledge of the source and target CPUs to produce the better possible code. I think that making the assumption that any C compiler produces very optimized code is wrong. > To do this we need an on-the-fly compiler. (Or use the technique > I did in my cinemu code that uses large granularity between > compilations, effectively recompiling only between runs - but I > don't seriously recommend this hack - it was fun, but not a production > technique). > I think than an on-the-fly compiler would be by far harder to implement, slower to execute (but if it is not slow it will not matter either it will run just once for each translation) than a code emiter and a source to target direct translator with optimizations. And the code generated would not be faster. Even more if the source code is a hand made or very tricky code in an arcade machine or console, not the product of a high level language with an unknown level of optimization. > G > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 02:08:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA46855 for dynarec-outgoing; Fri, 4 May 2001 02:08:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105040923.LAA19609@pons.ac.upc.es> Subject: Re: DYNAREC: 68000 Profile Report (fwd) In-Reply-To: "from Gwenole Beauchesne at May 4, 2001 11:06:10 am" To: dynarec@dynarec.com Date: Fri, 4 May 2001 11:23:35 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Compiled blocks: > > TBlock_A: Block_A/instr_[1-N] > TBlock_B: Block_B/instr_[1-N] chained to block B1 > TBlock_B1: Block_A/instr_[K-N] > > Redundant ? Not really, because TBlock_B1 is better optimised for that > portion (register usage/flag usage/etc.). > Interesting, different translations of the same code block. Each optimized for the context where it is going to be executed. It would increase the cache usage but the code locality could be still good because the different instances of the same original block will be used in different context and in different time moments. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 02:46:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA46895 for dynarec-outgoing; Fri, 4 May 2001 02:46:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 29 Mar 1959 21:48:40 -0600 (CST) From: Graham Toal Message-Id: <195903300348.VAA27098@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Bad, bad, bad, bad idea. Now consider the case where several different > routines, all with different register allocation strategies, jump into the > MIDDLE of one of those blocks. Wonder what the code would do. ;-) if you're jumping into the middle of block A, then by definition it wasn't a block. Throw it away, and recompile from the new entry point B, and next time you hit the original entry point, compile only up to that entry label. I experimented with that suggestion that was posted, which was to have two sequences of code, (A.B) and (B), but it rapidly got out of hand wrt space, although it did generate correctly functioning and effiient code. The very point you are making above is exactly why you need to identify basic blocks. Because you can fix the input conditions at start and the output conditions at finish, but what's in the middle is no-one's business. Implement it as best you can with whatever source registers mapped to whichever target registers as you will - it doesn't have to be the same mapping as anywhere else in the program, because *you do not jump into the middle of a block* and the internals of a block are invisible to the rest of the system. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 03:04:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA46920 for dynarec-outgoing; Fri, 4 May 2001 03:04:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105041019.MAA15020@pons.ac.upc.es> Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: <195903300348.VAA27098@gtoal.com> "from Graham Toal at Mar 30, 1959 09:48:40 pm" To: dynarec@dynarec.com Date: Fri, 4 May 2001 12:19:20 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > if you're jumping into the middle of block A, then by definition > it wasn't a block. Throw it away, and recompile from the new entry point B, > and next time you hit the original entry point, compile only up to > that entry label. > The problem is that definitions an the reality are different things :P. > > The very point you are making above is exactly why you need to identify > basic blocks. Because you can fix the input conditions at start and the > output conditions at finish, but what's in the middle is no-one's > business. Implement it as best you can with whatever source registers > mapped to whichever target registers as you will - it doesn't have to > be the same mapping as anywhere else in the program, because *you do not > jump into the middle of a block* and the internals of a block are > invisible to the rest of the system. > The problem is how you can ensure that a given block is a basic block in execution time. Are you going to analize all the possible code and paths before start the emulation? Are you going to execute the code through an interpreter N times before performing the translation? Method one is the static translation approach and although it is the best it can be assured ever (unless a very complex and expensive algorithm for switch cases and jump tables analysis is implemented). Method 2 is the one used in most dynamic translators (or in the documentation it can be found out there). It has three main problems how many times you run the code through the interpreter before trasnlating, how reliable is the information gathered by the interpreter (and it will have to provide a method for solving a miss in the basic block algorithm) and it needs an interpreter. That is you are doubling the code, the memory usage and the complexity of the project. Real basic blocks in a high level language can be very easily discovered (the algorithm is trivial, search for entry points, jumps and whatever and you have them). In machine source code this is a task which in some architectures it is never possible to fulfill in a 100%. Fixed lenght opcode ISAs help a bit, but a variable lengh opcode ISA is a really pain in the ass about the data-code separation. > G > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 03:13:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA46937 for dynarec-outgoing; Fri, 4 May 2001 03:13:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 29 Mar 1959 22:15:55 -0600 (CST) From: Graham Toal Message-Id: <195903300415.WAA27160@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: IR: Intermediate Representation Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Are you very influenced by Cifuentes and UQBT team works? They actually > use this approach (including the concept of RTL). And they are not > generating native code (as we are starting to do with Dixie) but > C code which is later feed in a C compiler for the target CPU. Cifuentes Actually no, by coincidence the first time I read about UQBT was this evening after making those posts :-) "Independent invention", which is often the case when something is blatantly obvious as the Right Thing To Do ;-) By the way, I looked at GCC for the first time today also, and discovered that GCC's internal intermediate code representation is actually RTL. So maybe all that's needed is GCC's back-ends, and not an actual C parser, and we generate RTL directly... > > StackReg++; > > Accumulator = WholeRam[0x100+StackReg]; > > PSR&=~(FlagZ | FlagN); > > PSR|=((Accumulator==0)<<1) | (Accumulator & 128); > > > > for that instruction. Flow dropping through from the previous instruction > > and passing on to the next instruction. > > > And how could a compiler be enough smart to know that the PSR is a > status word which carries flag? And how could use the target CPU own Now did I not say not to criticise this particular emulation because I had just picked a convenient one I had handy. OK, if you're going to nitpick at that level, I'll be more specific: in my 6809 emulator, I kept each bit of the CC in a separate variable, and only ever concatenated them into a single 'CC' register whenever that register was accessed as a whole object, which as far as I remember was only when it was pushed or popped to the stack. So the equivalent of the code above would be something like CC_N = A < 0; CC_Z = A == 0; I wasn't trying to suggest anything particularly clever like the compiler keeping track of constant bits within an integer... > The C languages hides completely the real ISA and behaviour of the target > CPU so we are losing many optimizations oportunities. The idea of Neil No! Those real flags still exist on the target machine and it is up to the C compiler's back-end and optimiser to make best use of them. For some reason you guys seem to be very jaded about the quality of compilers. My background is from a university that did extremely good work on optimising compilers and *frequently* produced compilers that actually turned out code sequences which were *better* than what was thought to be the best manually hand-coded assembler. > is that we are going to use our own knowledge of the source and target > CPUs to produce the better possible code. You can do so only at the level of single instructions, or maybe peepholing a few instructions. What if you have 1000's of instructions and want to do global optimising over that entire block, eg by smart register slaving of variables to registers using some fancy register colouring allocator? Not possible at the myopic level you're talking about, but a compiler can do it easily. > I think that making the assumption > that any C compiler produces very optimized code is wrong. We'll just have to agree to differ on that one. I'm sorry you guys haven't been exposed to good compilers. > I think than an on-the-fly compiler would be by far harder to > implement, slower to execute (but if it is not slow it will not > matter either it will run just once for each translation) than > a code emiter and a source to target direct translator with > optimizations. It's not. I have seen it done once. For some reason, though, apart from `C, it seems to be a lost technology. I find this rather sad, but I think the effort in reinventing this technology might be repaid by giving us a high quality portable framework for dynarecs. > And the code generated would not be faster. Even > more if the source code is a hand made or very tricky code > in an arcade machine or console, not the product of a high > level language with an unknown level of optimization. You're missing the point, the optimisation is not from optimising the carefully hand-crafted original program, it's from doing away with all the crud that results from a 1:1 translation to another aechitecture in cases where that translation forces lots of extra housekeeping instructions upon you in order to preserve the flags of the original machine, in cases where there is not a 1:1 mapping to the target machine. If your source and target are well matched and most of your translations are 1:1 as in some of Neil's examples earlier, you don't have a problem, but when there's a significant mismatch (eg one machine has a V flag but the other doesn't), but *every* instruction is defined as doing something to that V flag, and 99.999% of the time the program never even looks at the V flag, then my approach will mean that the housekeeping code to set that V flag is simply not generated on almost all instructions except perhaps at the exit points of basic blocks. It's not a very sexy optimisation but if each insruction would normally have 2 or 3 extra assignments going along with it which aren't needed, then you get a 100% - 200% speedup by doing away with them. When/if I have some time at the weekend I will post some concrete examples from my Cinemu translator. Although not dynamic, it's close enough to what we're discussing to prove the point. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 03:26:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA46957 for dynarec-outgoing; Fri, 4 May 2001 03:25:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 29 Mar 1959 22:28:13 -0600 (CST) From: Graham Toal Message-Id: <195903300428.WAA27196@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The problem is how you can ensure that a given block is a basic > block in execution time. Are you going to analize all the possible > code and paths before start the emulation? Are you going to execute > the code through an interpreter N times before performing the > translation? Yes! Exactly. Now you have it. Both of the above. Plus correcting any mistakes made, should you later find yourself jumping into the middle of what you thought was a BB. > Method one is the static translation approach and although it is > the best it can be assured ever (unless a very complex and expensive > algorithm for switch cases and jump tables analysis is implemented). True, hence why you need the interpreter, or at least an instruction- by-instruction dynarec as a backup. > Method 2 is the one used in most dynamic translators (or in the > documentation it can be found out there). It has three main problems > how many times you run the code through the interpreter before > trasnlating, how reliable is the information gathered by the > interpreter (and it will have to provide a method for solving > a miss in the basic block algorithm) and it needs an interpreter. > That is you are doubling the code, the memory usage and the > complexity of the project. So is that a bad thing? Won't the wins be worth the effort? I have a friend who wrote one of the dynarecs from Insignia, and I seem to recall when last we discussed what he was working on (this was some years ago, before I was interested in doing this myself, so I wasn't taking notes, should any insignia mafia be reading this ;-) ) that was pretty much exactly what he said they were doing in the Insignia dynarecs. They obviously thought it was worth it. > Real basic blocks in a high level language can be very easily discovered > (the algorithm is trivial, search for entry points, jumps and whatever > and you have them). In machine source code this is a task which in > some architectures it is never possible to fulfill in a 100%. Fixed True, if talking about a static pre-analysis; not true if you gather this info as you execute using your interpreter. Also you may need to make some real-world assumptions such as no self-modifying code. > lenght opcode ISAs help a bit, but a variable lengh opcode ISA is a > really pain in the ass about the data-code separation. That's not where the problem comes from. It comes from some undiscovered jump table causing a jump into the middle of a block. As I said, throw it away, recompile that part of the block, and update your global tables so you don't make the same mistake again. After a few executions of the program it'll have settled down so that it generates the right code first time. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 03:38:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA46979 for dynarec-outgoing; Fri, 4 May 2001 03:38:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105041054.MAA24694@pons.ac.upc.es> Subject: Re: DYNAREC: IR: Intermediate Representation In-Reply-To: <195903300415.WAA27160@gtoal.com> "from Graham Toal at Mar 30, 1959 10:15:55 pm" To: dynarec@dynarec.com Date: Fri, 4 May 2001 12:54:08 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Actually no, by coincidence the first time I read about UQBT was this > evening after making those posts :-) "Independent invention", which > is often the case when something is blatantly obvious as the Right Thing > To Do ;-) > Hehehe! :)) > By the way, I looked at GCC for the first time today also, and discovered > that GCC's internal intermediate code representation is actually RTL. > So maybe all that's needed is GCC's back-ends, and not an actual C parser, > and we generate RTL directly... > Yes I think I remembered I heart something similar in some of my classes about compilers. I'm not a compiler expert though. > CC_N = A < 0; > CC_Z = A == 0; > > I wasn't trying to suggest anything particularly clever like the > compiler keeping track of constant bits within an integer... > I was more talking about the advantage of using the own target CPU flags for encoding the emulated flags. > > No! Those real flags still exist on the target machine and it is up > to the C compiler's back-end and optimiser to make best use of them. > A compiler will never think that your variable CC_N is a flag and it is calculated in the same (or very similar) way than in the target CPU. And NEVER will use the own target CPU status word for storing it. That is the reason I like the idea of direct translation, because you are free to take *full* advantage of the features and characteristhics of both the source and target CPU. If you put a C backend you will lose some of the target CPU features, if you put an IR before the between the source decoding and the translation you miss some characteristhics of the source machine. > For some reason you guys seem to be very jaded about the quality of > compilers. My background is from a university that did extremely good > work on optimising compilers and *frequently* produced compilers that > actually turned out code sequences which were *better* than what was > thought to be the best manually hand-coded assembler. > I also come from an university and although there are compilers which produce really impresive code, even better than human made code that is not always the case. First compilers work better with high level languages. They perform a best work with complex tasks (for example parallellism and VLIW instruction scheduling). But we are talking now about source machine code. Actually there are some native to native optimizers (a guy in my research group is working in one of this, Alto) which can optimize even more than the original compiler. But in any case they have a cost. This program, Alto, takes hours and days to analyze everything in the binary and produce an optimized output. It is not precisily what we want. > You can do so only at the level of single instructions, or maybe > peepholing a few instructions. What if you have 1000's of instructions > and want to do global optimising over that entire block, eg by smart > register slaving of variables to registers using some fancy register > colouring allocator? Not possible at the myopic level you're talking > about, but a compiler can do it easily. > Global optimization? Overhead of our own translation? The idea is to avoid as much overhead as possible at start and then perform peephole optimization for the rest. Global optimizations of what? The source code? For our targer machines most of times it will never be nothing to optimize. In other cases (Transmeta executing standard non optimized x86 applications, Daisy *scheduling* and reordering instructions for a VLIW) it could make some sense. But for a Genesis emulator or a Food Fight emulator I don't think is the best idea. Later we would try to see how global optimizations could be performed with this approach but not now. > > I think that making the assumption > > that any C compiler produces very optimized code is wrong. > > We'll just have to agree to differ on that one. I'm sorry you guys > haven't been exposed to good compilers. >a The problem with a compiler is that it doesn't know what the programmer really ones, while a good asm programmers has this knowledge and almost the same optimizing power for small rutines (the ones we are last are important). > > It's not. I have seen it done once. For some reason, though, > apart from `C, it seems to be a lost technology. I find this rather > sad, but I think the effort in reinventing this technology might > be repaid by giving us a high quality portable framework for > dynarecs. > Dynamic generation of code, recompilation and dynamic optimizations. Yes I know a bit of these bibliography and in fact is nothing more than an intend of standarice and formalize self-modyfying code which wild programmers use. But I don't think it has as much importance for dynarec. They're purpose is other, use runtime information for enhance the algorithm used (for example a basic one is convert variables in constants in the inner loops). > > You're missing the point, the optimisation is not from optimising > the carefully hand-crafted original program, it's from doing away > with all the crud that results from a 1:1 translation to another > aechitecture in cases where that translation forces lots of extra > housekeeping instructions upon you in order to preserve the flags of > the original machine, in cases where there is not a 1:1 mapping to the > target machine. If your source and target are well matched and most > of your translations are 1:1 as in some of Neil's examples earlier, > you don't have a problem, but when there's a significant mismatch > (eg one machine has a V flag but the other doesn't), but *every* > instruction is defined as doing something to that V flag, and 99.999% > of the time the program never even looks at the V flag, then my > approach will mean that the housekeeping code to set that V flag > is simply not generated on almost all instructions except perhaps > at the exit points of basic blocks. It's not a very sexy optimisation > but if each insruction would normally have 2 or 3 extra assignments > going along with it which aren't needed, then you get a 100% - 200% > speedup by doing away with them. > Neil approach will only calculate flags when it is really needed. This optimizations is really easily perfomed in the source layer. So I don't see what is your point here. And our intention as I said before is to avoid any overhead of the 1 to 1 translation as early as possible. If not in the source layer then in the target layer. > When/if I have some time at the weekend I will post some concrete > examples from my Cinemu translator. Although not dynamic, it's > close enough to what we're discussing to prove the point. > I will like to see that. In case I'm being misundertood I want to investigate this matters and see the points from everyone. Many of the differences between people is because many of the ideas have not been fully implemented and tested. I want to see all them working, and Neil approach is very different from the already implemented ones, to see what are the best and for which cases. > G > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 03:51:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA47002 for dynarec-outgoing; Fri, 4 May 2001 03:51:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 13:05:13 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: To: Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: <200105041019.MAA15020@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Fri, 4 May 2001, Victor Moya del Barrio wrote: > interpreter (and it will have to provide a method for solving > a miss in the basic block algorithm) and it needs an interpreter. The need of an interpreter is also useful for complex instructions that are not worth compiling or are way too complex to be compiled. In that case, we simply call the appropriate instruction handler. > That is you are doubling the code, the memory usage and the > complexity of the project. In practice, it *does* work pretty well that way. ;-) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 03:54:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA47019 for dynarec-outgoing; Fri, 4 May 2001 03:54:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105041109.NAA25385@pons.ac.upc.es> Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: <195903300428.WAA27196@gtoal.com> "from Graham Toal at Mar 30, 1959 10:28:13 pm" To: dynarec@dynarec.com Date: Fri, 4 May 2001 13:09:25 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Method 2 is the one used in most dynamic translators (or in the > > documentation it can be found out there). It has three main problems > > how many times you run the code through the interpreter before > > trasnlating, how reliable is the information gathered by the > > interpreter (and it will have to provide a method for solving > > a miss in the basic block algorithm) and it needs an interpreter. > > That is you are doubling the code, the memory usage and the > > complexity of the project. > > So is that a bad thing? Won't the wins be worth the effort? > The problem is that I don't see the wins ;). That is the typical approach used in any serious dynamic binary translator and even more in the static ones. This includes our hated Transmeta, IBM's Daisy, FX!32 (this is really once which makes the worth to study ...) and all the previous Digital static translators. First the machines we want to emulate are not the typical machines for which those emulators are implemented. Second I find that there are interesting possibilities in Neil idea which make the worth of producing a working implementation. Further testing will say if we are wrong or not. > > > lenght opcode ISAs help a bit, but a variable lengh opcode ISA is a > > really pain in the ass about the data-code separation. > > That's not where the problem comes from. It comes from some undiscovered > jump table causing a jump into the middle of a block. As I said, throw > it away, recompile that part of the block, and update your global tables > so you don't make the same mistake again. After a few executions of the > program it'll have settled down so that it generates the right code first > time. > In a variable lenght ISA you have additional problems for found the real translation but you are true is not the main problem. The benefit of a fixed lenght instruction is that you can translate all the code in a 1:1 basis and you don't have to worry about indirect jumps or un discovered code. I mean static translation. With a variable lenght ISA that is impossible because you can jump everywhere. > G Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 03:57:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA47034 for dynarec-outgoing; Fri, 4 May 2001 03:57:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105041112.NAA25743@pons.ac.upc.es> Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: "from Gwenole Beauchesne at May 4, 2001 01:05:13 pm" To: dynarec@dynarec.com Date: Fri, 4 May 2001 13:12:58 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > On Fri, 4 May 2001, Victor Moya del Barrio wrote: > > > interpreter (and it will have to provide a method for solving > > a miss in the basic block algorithm) and it needs an interpreter. > > The need of an interpreter is also useful for complex instructions that > are not worth compiling or are way too complex to be compiled. In that > case, we simply call the appropriate instruction handler. > The complexity of complex instructions is the same in a dynarec than in an interpreter. In the extreme case you just has to inline the call to the handler and it would work, or inline the full function ;))). It can also be treated as a single instruction block which is the same for all the instances of the instruction. So I think there is no benefit here from a interpreter ;). > > That is you are doubling the code, the memory usage and the > > complexity of the project. > > In practice, it *does* work pretty well that way. ;-) > I'm not saying that it does not work. I'm saying that it takes more time to develop and to debug. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 04:04:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA47053 for dynarec-outgoing; Fri, 4 May 2001 04:04:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105041119.NAA25748@pons.ac.upc.es> Subject: Re: DYNAREC: Lurker roundup 2001 In-Reply-To: <3AF26E02.ECF79556@austin.rr.com> "from tarquin at May 4, 2001 01:53:22 am" To: dynarec@dynarec.com Date: Fri, 4 May 2001 13:19:43 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I'll be damned... list activity... hell freeze over or something? =P > > The crazy mmap abusing psycho is back... finally got a grip on a nasty EverQuest > habit (TWICE as addictive as crack!) and started coding again. Stank will rise > again, in a kinder, gentler, multi-platform incarnation. > Have you tried something about the use virtual drivers in win9x for mmaping? I stopped any work about this topic after I implemented the MZ80 bankswitched version (and I'm now a bit busy to continue with it). > > Incidentally, I'm, uh, borrowing that memory map structure =P > Hehe ;). > -- > ReaperSMS - John Allensworth Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 07:59:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA47256 for dynarec-outgoing; Fri, 4 May 2001 07:58:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: primrose.csv.warwick.ac.uk: csuix owned process doing -bs Date: Fri, 4 May 2001 16:14:11 +0100 (BST) From: David Sharp To: Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Bad, bad, bad, bad idea. Now consider the case where several different > routines, all with different register allocation strategies, jump into the > MIDDLE of one of those blocks. Wonder what the code would do. ;-) I gotta admit, I think both Jules and I ran straight into that problem and neither of us had a nice solution other than hammer the allocation just before the branch, which is a real pain in the arse to do. That said, I still maintain dynamic allocation's a hell of a lot faster for the ARM or any processor with so many general purpose registers relative to the target. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 08:02:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA47272 for dynarec-outgoing; Fri, 4 May 2001 08:02:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: primrose.csv.warwick.ac.uk: csuix owned process doing -bs Date: Fri, 4 May 2001 16:18:31 +0100 (BST) From: David Sharp To: Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: <195903300348.VAA27098@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The very point you are making above is exactly why you need to identify > basic blocks. Because you can fix the input conditions at start and the > output conditions at finish, but what's in the middle is no-one's > business. Implement it as best you can with whatever source registers > mapped to whichever target registers as you will - it doesn't have to > be the same mapping as anywhere else in the program, because *you do not > jump into the middle of a block* and the internals of a block are > invisible to the rest of the system. The problem I found was that this meant the recompiled blocks were very very small as any conditional execution or small loop would end the block. As a result, the thing would be thrashing in and out of recompiled code every few instructions which isn't very nice. Read up on the chunk thing I did, it's not ideal but it's better than basic blocks. Of course all optimisations and reg allocations are done on basic blocks within the chunk. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 08:56:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA47335 for dynarec-outgoing; Fri, 4 May 2001 08:56:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 30 Mar 1959 03:59:02 -0600 (CST) From: Graham Toal Message-Id: <195903300959.DAA29361@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The problem I found was that this meant the recompiled blocks were very > very small as any conditional execution or small loop would end the block. > As a result, the thing would be thrashing in and out of recompiled code > every few instructions which isn't very nice. Read up on the chunk thing I > did, it's not ideal but it's better than basic blocks. Of course all > optimisations and reg allocations are done on basic blocks within the > chunk. I think that rather than use the strict definition of basic block (terminating at any branch) you have to expand it by merging contexts at the end of if/then/else chains and loops. As long as the entry to a construct is in your flow of control within the same block, and not coming in from somewhere totally outside, that you have no knowlege of, you can treat it all as one unit. Maybe that is in fact what you mean by a chunk? (Is anyone not sure what I mean by context merging? I'll explain if needed) G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 10:01:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA47400 for dynarec-outgoing; Fri, 4 May 2001 10:00:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3AF2E3F4.15D58EA2@austin.rr.com> Date: Fri, 04 May 2001 10:16:36 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Lurker roundup 2001 References: <200105041119.NAA25748@pons.ac.upc.es> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Victor Moya del Barrio wrote: > > I'll be damned... list activity... hell freeze over or something? =P > > > > The crazy mmap abusing psycho is back... finally got a grip on a nasty EverQuest > > habit (TWICE as addictive as crack!) and started coding again. Stank will rise > > again, in a kinder, gentler, multi-platform incarnation. > > > Have you tried something about the use virtual drivers in win9x for > mmaping? I stopped any work about this topic after I implemented > the MZ80 bankswitched version (and I'm now a bit busy to continue > with it). I looked around the 95/98 DDK's, but I wasn't able to find much in the way of page remapping support. After things are working again I was going to find out how small the allocation unit in 2000 is. The Win32 analog of mmap is almost completely unusable for bankswitching, as the smallest unit it can deal with is an allocation unit, which is 64k on 95/98. The Address Windowing Extensions under 2k took out the most interesting bit with it's no-page-aliasing requirement. None of em like interesting code =) The other side of things is that the graphics code takes up 80% of the runtime anyways, and it tends to use blocks that are smaller than x86 pages anyways. Back to the drawing board =) > Victor -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 10:14:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA47418 for dynarec-outgoing; Fri, 4 May 2001 10:14:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68000 Profile Report From: "M.I.K.e" Message-ID: <0003837d038a8906_mailit@mail.dynarec.com> References: <195903300959.DAA29361@gtoal.com> Date: Fri, 04 May 2001 19:38:03 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think that rather than use the strict definition of basic block >(terminating at any branch) you have to expand it by merging contexts >at the end of if/then/else chains and loops. I think we agreed some time ago on the fact that using larger "translations units" that are only terminated by unconditional jumps, and I think that Neil used it in DRMZ80 already. For dynamic register allocation it's better to stick to basic blocks, I think. And although I normally favour the approach of dynamic recompilation, I have to admit that static register allocation (which Neil favours) has certain advantages: * every recompiled instruction shares the same glue code (prologue/epilogue), which means a block can be entered and left at any arbitrary point, which is a plus for timing sensitive systems * if you perform instruction-per-instruction translation without much optimization you can use a TransMap (a table that holds a target code address for each source address; for systems with an address width larger than 16-bit a Paged TransMap is used) * Since you can leave the translated code every time when it's necessary, you can even reduce the amount of time spent in the dispatcher loop by setting a direct jump to the next block as soon as it has been translated. This is what Neil means with "depth-traversal". With these methods you will end up with a quite contigious traget code after some time, and you'll only have to leave the translated code to check for interrupts. >G -- M.I.K.e The Consultant's Curse: When the customer has beaten upon you long enough, give him what he asks for, instead of what he needs. This is very strong medicine, and is normally only required once. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 10:42:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA47453 for dynarec-outgoing; Fri, 4 May 2001 10:42:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 30 Mar 1959 05:44:43 -0600 (CST) From: Graham Toal Message-Id: <195903301144.FAA29677@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: IR: Intermediate Representation Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com That was quite a good rebuttal from Victor, I think I'll leave him with the last word. I've more or less managed to explain my suggestion which was all I wanted to do. Just in case you all think I'm a hopeless megalomaniac who thinks he knows the only way to do something, I was really just playing Devil's Advicate to some extent, and suggesting a method that I knew was quite opposite from what you all normally consider, just to throw up some (maybe) new ideas and see if there was a strategy you hadn't considered that was worth some thought before you started on your project. But everyone seems fairly sure you're doing the right thing, so I guess it's time to get on board with Neil's design and get cracking. Is there any documentation on Neil's "two-level" design, apart from the source code, or are you all familiar with it only through having been on this mailing list for a couple of years longer than me? G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 11:32:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA47522 for dynarec-outgoing; Fri, 4 May 2001 11:31:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001701c0d4ca$a8a76980$6f73393e@menta.net> From: "Victor Moya del Barrio" To: References: <195903301144.FAA29677@gtoal.com> Subject: Re: DYNAREC: IR: Intermediate Representation Date: Fri, 4 May 2001 20:47:20 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > That was quite a good rebuttal from Victor, I think I'll leave him with > the last word. I've more or less managed to explain my suggestion which > was all I wanted to do. Just in case you all think I'm a hopeless megalomaniac > who thinks he knows the only way to do something, I was really just playing > Devil's Advicate to some extent, and suggesting a method that I knew was > quite opposite from what you all normally consider, just to throw up some > (maybe) new ideas and see if there was a strategy you hadn't considered > that was worth some thought before you started on your project. But everyone > seems fairly sure you're doing the right thing, so I guess it's time to > get on board with Neil's design and get cracking. > I think your approach is also interesting but I'm more interested now in Neil approach. One of the reasons. as Mike has pointed too in another mail, is the fact that the dynarec can be implemented with exact timing which is important in this context. And because I love to play with assembly language too ;). I hope to see your Cinemac emulator working. After the guy of our Dixie team which went to work with the UQBT people explained how they used C language for portability I get a bit curious about how it could work with our Dixie ISA. Maybe someday I will try it. > Is there any documentation on Neil's "two-level" design, apart from the > source code, or are you all familiar with it only through having been > on this mailing list for a couple of years longer than me? > Neil started some time ago a document about it and posted it here. Something like a year it was the original discussion between Neil, Mike and me ... I think I have the mails a bit 'cleaned' of our off-topic discussion somewhere. We could start the documentation part with this information. I will begin to search for it. The full dynarec list mail archive must be somewhere (Neil sure has it) but it would be a pain to search in more than (how many now Mike I lost the count) 2000 posts. > G > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 12:16:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA47586 for dynarec-outgoing; Fri, 4 May 2001 12:15:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00a101c0d4d0$ceee8c80$6f73393e@menta.net> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Stuff collection Date: Fri, 4 May 2001 21:31:22 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I have reenabled (permision) the file with DRZ80 and the other docs related with this topic as we are starting again with it. I haven't found yet Neil document, in any case I have it in my work account, but sure Neil will have it more at hand. www.dynarec.com/~victor/drarchive.zip Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 13:32:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA47660 for dynarec-outgoing; Fri, 4 May 2001 13:32:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 30 Mar 1959 08:34:37 -0600 (CST) From: Graham Toal Message-Id: <195903301434.IAA00133@gtoal.com> To: dynarec@dynarec.com Subject: DYNAREC: Thumb Candy Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com *BIG* thanks for digitising and uploading this!!! It was worth the download time. (About 3 hours) G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 14:18:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA47711 for dynarec-outgoing; Fri, 4 May 2001 14:17:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 14:36:00 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy In-Reply-To: <195903301434.IAA00133@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > *BIG* thanks for digitising and uploading this!!! > It was worth the download time. (About 3 hours) Most definitely. I could've done without the Apple ads and the UK country pride crap, though the interviews with the original authors of the games is priceless. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 14:22:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA47725 for dynarec-outgoing; Fri, 4 May 2001 14:22:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 14:40:42 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: DRM68K Layout In-Reply-To: <200105040755.JAA16458@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > \Emulators\Starscream - Emulator directory > > \Disasm\68K - Disassembly directory (68K) > > \Objs\Win32 - Object files (Windows) > > \Objs\DJDOS - Object files (DJGPP-DOS) > > \OSDep\Win32 - OS Dependent files (Windows) > > \OSDep\DJDOS - OS Dependent files (DJGPP-DOS) > I we will need a x86 dissassembler. Perhaps if we implement tools > (for example that parser you started for parsing ISA definition files) > we could add a tools directory or a directory for each of those tools. That's the idea. The "emulators" and "disasm" directories will grow with others later on. > past discussions which could get into the doc section (the foodfight > explanation for example, NB start document about his idea, DRZ80 source > may be, etc). I have the entire Dynarec email archive (since day one) if anyone is interested. It's >10MB. > We could also have documentation about the target and source ISAs > for a reference (the PDFs must be somewhere I think I have some ...). > Perhaps in a doc/architecture directory? We might not want to carry it around in our development sources depending upon its sice. > Are we already going around the definition files? I think MIKE implemented > the last version of the M68K file. Bart is going to be very useful here > since he knows very well the 68K now ;). I'm still looking for the old 68K file. I've found an x86 file. So who wants to do the opcode framework emitter code? -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 14:25:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA47743 for dynarec-outgoing; Fri, 4 May 2001 14:25:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 14:43:09 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Lurker roundup 2001 In-Reply-To: <3AF26E02.ECF79556@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Still haven't gotten around to a CPU that a dynarec would really be helpful (or > efficient) for, but once the NES portion is ported, I plan on going into the > dreaded realm of PSX emulation... (I want to play SOTN again, and all the PSX > emulators I've found suck unbelievably huge troll-nads) Hopefully we'll have a cool enough framework that you'll be able to plug things in. You'll note that the R4000 is kind of an odd beast, and my guess is the time spent is not in emulation rather graphics processing. > Keep up the nice discussions, haven't seen anything to add some comments to yet, > but that will change =) > Incidentally, I'm, uh, borrowing that memory map structure =P Hey, steal with pride. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 14:28:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA47754 for dynarec-outgoing; Fri, 4 May 2001 14:28:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 14:46:06 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report (fwd) In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Bad, bad, bad, bad idea. Now consider the case where several different > > routines, all with different register allocation strategies, jump into the > > MIDDLE of one of those blocks. Wonder what the code would do. ;-) > Why do you want an instruction to jump right in the middle of another > block ? Recompiled blocks are chained. Let us have an example: That would require the code get lots larger, plus you'd have to know where the code is going to go before jumping to it. And if you didn't know where the code wa sjumping, you'd have to keep a transmap for not only a single region, but a multiple of the number of "optimizations". That uses a buttload of memory, plus it further increases the amount of cache usage. > > of registers, and in the case where you're not, there's nothing you can do > > anyway because there aren't enough registers to do the job anyway. You'll > > be swapping like crazy. > Since you seem to like real/working examples, check {UAE,Basilisk}-JIT > out. ;-) No, linear scan register allocation though. This 68040 JIT > compiler is even slightly faster than Syn68k. Regardless, I have no intention of implementing dynamic register allocation, nor leaving the framework open for it. You'll use so much extra memory that it won't be worthwhile. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 14:32:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA47775 for dynarec-outgoing; Fri, 4 May 2001 14:32:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 14:50:11 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report (fwd) In-Reply-To: <200105040923.LAA19609@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > TBlock_A: Block_A/instr_[1-N] > > TBlock_B: Block_B/instr_[1-N] chained to block B1 > > TBlock_B1: Block_A/instr_[K-N] > > Redundant ? Not really, because TBlock_B1 is better optimised for that > > portion (register usage/flag usage/etc.). > Interesting, different translations of the same code block. > Each optimized for the context where it is going to be executed. It would > increase the cache usage but the code locality could be still good > because the different instances of the same original block will > be used in different context and in different time moments. And you'd need a transmap for each mapping and to keep track of it. And if you didn't want to use that much memory, you'd have to store it some other, slower, searchable way. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 14:39:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA47791 for dynarec-outgoing; Fri, 4 May 2001 14:39:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 14:57:26 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: <195903300348.VAA27098@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Bad, bad, bad, bad idea. Now consider the case where several different > > routines, all with different register allocation strategies, jump into the > > MIDDLE of one of those blocks. Wonder what the code would do. ;-) > if you're jumping into the middle of block A, then by definition > it wasn't a block. Not true. In particular, Z80 code jumps into the middle of blocks all the time. Throwing it out and recompiling it again will just cause unnecessary thrashing (recompilation). You cannot possibly predict every single destination point unless you've exercised every condition in every section of code. > Throw it away, and recompile from the new entry point B, > and next time you hit the original entry point, compile only up to > that entry label. That would required us to eliminate the possibility of hardcoded jumps. If I'm recompiling and a reference is made to jump to an address, why should I be forced to have to look up its destination address when I already know what it is? It's a difference between 4 instructions and one instruction. > I experimented with that suggestion that was posted, which was to have > two sequences of code, (A.B) and (B), but it rapidly got out of hand > wrt space, although it did generate correctly functioning and effiient > code. And uses more memory/cache, too. > The very point you are making above is exactly why you need to identify > basic blocks. You can't predict it, and depending upon the path, what a basic block actually is will change depending on the path it took to get there! -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 14:48:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA47809 for dynarec-outgoing; Fri, 4 May 2001 14:48:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 4 May 01 18:03:12 -0400 Message-Id: <3.0.5.32.20010504150039.00817eb0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 04 May 2001 15:00:39 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: DRM68K Layout In-Reply-To: <200105040755.JAA16458@pons.ac.upc.es> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Are we already going around the definition files? I think MIKE implemented >the last version of the M68K file. Bart is going to be very useful here >since he knows very well the 68K now ;). BTW, Bart how is your 68K emulator >compared with Starscream? If it has more or less the same accuracy we >could use it, we have the programmer near to ask how it works ;). Genital68K vs. Starscream? Genital68K is more accurate, the speed is about the same. Timing accuracy isn't as good (many instructions are off by a few cycles), but I don't see this as a serious problem. There are a few serious bugs I can identify in Starscream which will make comparisons a real pain. BTW, the current release of Genital68K, v0.3, has a bug where RTD (68010 only) is emitted even when the mode is 68000. I've already fixed it, I should release it soon. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 14:51:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA47822 for dynarec-outgoing; Fri, 4 May 2001 14:51:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 4 May 01 18:05:38 -0400 Message-Id: <3.0.5.32.20010504150308.00817980@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 04 May 2001 15:03:08 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: <195903300348.VAA27098@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 09:48 PM 3/29/1970 -0600, you wrote: >> Bad, bad, bad, bad idea. Now consider the case where several different >> routines, all with different register allocation strategies, jump into the >> MIDDLE of one of those blocks. Wonder what the code would do. ;-) > >if you're jumping into the middle of block A, then by definition >it wasn't a block. Throw it away, and recompile from the new entry point B, >and next time you hit the original entry point, compile only up to >that entry label. I was wondering about how this would be handled. Is this the most commonly used solution? And how are we going to deal with it? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 14:52:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA47832 for dynarec-outgoing; Fri, 4 May 2001 14:52:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 15:10:19 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: IR: Intermediate Representation In-Reply-To: <195903300415.WAA27160@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > And how could a compiler be enough smart to know that the PSR is a > > status word which carries flag? And how could use the target CPU own > Now did I not say not to criticise this particular emulation because > I had just picked a convenient one I had handy. You're missing the impact of just how important this is, though. Flag calculation is by far the largest time sink, and utilization of the CPUs ability to calculate flags for us is something that a high level language like C will not be able to do. > For some reason you guys seem to be very jaded about the quality of > compilers. My background is from a university that did extremely good > work on optimising compilers and *frequently* produced compilers that > actually turned out code sequences which were *better* than what was > thought to be the best manually hand-coded assembler. Don't leave us hanging! Can you recommend a good compiler? Don't say any of the GNU tools. They're awful - at least on the x86. They weren't very good assembly programmers, then. I have yet to find a condition where a compiler could outdo my own assembly programming on any platform I've used (Sparc, x86, MCS-51, ARM). Granted that the delta of improvement between assembly over C on a RISC chip like the ARM is smaller than say assembly over C on an x86. I found that my assembly emulator cores are about 5X the speed of any C core even with the best compilers. The delta is smaller on RISC like CPUs. > > is that we are going to use our own knowledge of the source and target > > CPUs to produce the better possible code. > You can do so only at the level of single instructions, or maybe > peepholing a few instructions. What if you have 1000's of instructions > and want to do global optimising over that entire block, eg by smart > register slaving of variables to registers using some fancy register > colouring allocator? Not possible at the myopic level you're talking > about, but a compiler can do it easily. Not needed at the level we're talking about. > > I think that making the assumption > > that any C compiler produces very optimized code is wrong. > We'll just have to agree to differ on that one. I'm sorry you guys > haven't been exposed to good compilers. I have, but no compiler is that good. > > And the code generated would not be faster. Even > > more if the source code is a hand made or very tricky code > > in an arcade machine or console, not the product of a high > > level language with an unknown level of optimization. > You're missing the point, the optimisation is not from optimising > the carefully hand-crafted original program, it's from doing away > with all the crud that results from a 1:1 translation to another > aechitecture in cases where that translation forces lots of extra > housekeeping instructions upon you in order to preserve the flags of > the original machine, Wait a minute... I already answered this one. The source layer passes hints to the target layer on whether or not flag pre/postamble occurs! That uses a simpler method that still accomplishes the same thing. > in cases where there is not a 1:1 mapping to the > target machine. But in almost all cases, there is. > (eg one machine has a V flag but the other doesn't), but *every* > instruction is defined as doing something to that V flag, and 99.999% > of the time the program never even looks at the V flag, then my > approach will mean that the housekeeping code to set that V flag > is simply not generated on almost all instructions except perhaps > at the exit points of basic blocks. But I already mentioned that the source level takes care of this! > When/if I have some time at the weekend I will post some concrete > examples from my Cinemu translator. Although not dynamic, it's > close enough to what we're discussing to prove the point. So far you have not acknowledged that I'm still accomplishing the same thing with far less pain.... -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 14:54:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA47842 for dynarec-outgoing; Fri, 4 May 2001 14:54:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 15:12:24 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: <195903300428.WAA27196@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > lenght opcode ISAs help a bit, but a variable lengh opcode ISA is a > > really pain in the ass about the data-code separation. > That's not where the problem comes from. It comes from some undiscovered > jump table causing a jump into the middle of a block. As I said, throw > it away, recompile that part of the block, and update your global tables > so you don't make the same mistake again. You make the assumption that it's a "mistake". Often the entry point into a block will alter depending upon the caller, and will thrash. I've seen plenty of Z80 code that does this, and several 68K programs that do it as well. > After a few executions of the > program it'll have settled down so that it generates the right code first > time. Not if it's continually called from two different places to two different entry points. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 14:57:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA47854 for dynarec-outgoing; Fri, 4 May 2001 14:57:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 15:15:05 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: <3.0.5.32.20010504150308.00817980@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >if you're jumping into the middle of block A, then by definition > >it wasn't a block. Throw it away, and recompile from the new entry point B, > >and next time you hit the original entry point, compile only up to > >that entry label. > I was wondering about how this would be handled. Is this the most commonly > used solution? And how are we going to deal with it? Set your flag context before jumping to that point if you want to be absolutely sure. Later on we can add optimization that checks to see if the destination has generated flag preamble (or not), and if it hasn't, it doesn't generate an SAHF. On conditional jumps or unknown jumps, it'll always have to be done. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 15:02:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA47872 for dynarec-outgoing; Fri, 4 May 2001 15:02:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 15:20:41 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Bad, bad, bad, bad idea. Now consider the case where several different > > routines, all with different register allocation strategies, jump into the > > MIDDLE of one of those blocks. Wonder what the code would do. ;-) > I gotta admit, I think both Jules and I ran straight into that problem and > neither of us had a nice solution other than hammer the allocation just > before the branch, which is a real pain in the arse to do. Interestingly enough, depending upon the code being recompiled, if we could assume that each routine was monolithic then we could easily get away with register caching. > That said, I still maintain dynamic allocation's a hell of a lot faster > for the ARM or any processor with so many general purpose registers > relative to the target. How can you say that? -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 15:07:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA47886 for dynarec-outgoing; Fri, 4 May 2001 15:07:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 15:25:20 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: <195903300959.DAA29361@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > every few instructions which isn't very nice. Read up on the chunk thing I > > did, it's not ideal but it's better than basic blocks. Of course all > > optimisations and reg allocations are done on basic blocks within the > I think that rather than use the strict definition of basic block > (terminating at any branch) you have to expand it by merging contexts > at the end of if/then/else chains and loops How do you know where they are? Take this actual code fragment: l0084: add a,(hl) inc hl djnz #0084 ; (-4) dec c jr nz,#0084 ; (-7) cp #ff jr z,#0092 ; (2) ld a,#11 cp #5a jz l0084 l0091: ld (de),a l0092: ld a,(de) and a jr nz,#0092 ; (-4) xor a ld (#6822),a ; Start NMIs Yuck! I think you might be spoiled by binary output generated by a compiler. It's far neater than stuff like this. And also, l0091 and l0092 are entry points to this procedure and they're called alternately. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 15:24:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA47908 for dynarec-outgoing; Fri, 4 May 2001 15:23:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 15:42:00 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: IR: Intermediate Representation In-Reply-To: <195903301144.FAA29677@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > That was quite a good rebuttal from Victor, I think I'll leave him with > the last word. I've more or less managed to explain my suggestion which > was all I wanted to do. Just in case you all think I'm a hopeless megalomaniac > who thinks he knows the only way to do something, It's certainly nothing like that! I was just disappointed you didn't meet some of my challenges head on, specifically because I wanted to see if you had thought of a solution that I didn't! Like I've said before, I agree with the ultimate goal in spirit - it was the method of getting there that > I was really just playing > Devil's Advicate to some extent, and suggesting a method that I knew was > quite opposite from what you all normally consider, just to throw up some > (maybe) new ideas and see if there was a strategy you hadn't considered > that was worth some thought before you started on your project. But everyone > seems fairly sure you're doing the right thing, so I guess it's time to > get on board with Neil's design and get cracking. I don't think you'll be disappointed. And what's more, we'll be able to change the course/direction as we go. > Is there any documentation on Neil's "two-level" design, apart from the > source code, or are you all familiar with it only through having been > on this mailing list for a couple of years longer than me? Unfortuantely, no, there isn't. I've actually had to reexplain this many, many times to people. You might think I'm a right ass because of my firm responses, but it comes from having them challeneged multiple times, me beating these problems to death with a stick on paper and some actual code, and so far I've yet to see them come unseated with a better plan. Not to say my work isn't flawed, but there has been a lot of time spent honing it. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 15:29:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA47932 for dynarec-outgoing; Fri, 4 May 2001 15:29:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 15:47:13 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: DRM68K Layout In-Reply-To: <3.0.5.32.20010504150039.00817eb0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Genital68K is more accurate, the speed is about the same. Timing accuracy > isn't as good (many instructions are off by a few cycles), but I don't see > this as a serious problem. I DO! I know of at least 4 68K games that require *EXACT*/*CORRECT* timing. > There are a few serious bugs I can identify in > Starscream which will make comparisons a real pain. Do you have them documented anywhere? > BTW, the current release of Genital68K, v0.3, has a bug where RTD (68010 > only) is emitted even when the mode is 68000. I've already fixed it, I > should release it soon. Can you give me a URL to it, and would you mind me using it for the sake of our project? Sounds like it's a bit more accurate than Starscream is, and we should probably use it. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 15:47:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA47972 for dynarec-outgoing; Fri, 4 May 2001 15:46:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 4 May 01 19:01:57 -0400 Message-Id: <3.0.5.32.20010504155924.00815ec0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 04 May 2001 15:59:24 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: DRM68K Layout In-Reply-To: References: <3.0.5.32.20010504150039.00817eb0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 03:47 PM 5/4/2001 -0700, you wrote: >> Genital68K is more accurate, the speed is about the same. Timing accuracy >> isn't as good (many instructions are off by a few cycles), but I don't see >> this as a serious problem. > >I DO! I know of at least 4 68K games that require *EXACT*/*CORRECT* >timing. I meant for this project. For comparisons of instruction execution, it should be fine, unless you also want to compare cycle timings. >Do you have them documented anywhere? No, I remember a few off the top of my head, though: - When a long write to memory is performed, Starscream ROLs a 32-bit register by 16, but forgets the ROL it back. This causes the N flag to be set incorrectly almost everytime a 32-bit write is performed. - CHK didn't seem to work when I tried it - NBCD negates the wrong data (some registers get trashed, it actually ends up using the carry flag as data) - I've heard DBT is interpreted as an invalid instruction (didn't test this myself) There might be some more. >Can you give me a URL to it, and would you mind me using it for the sake >of our project? Sounds like it's a bit more accurate than Starscream is, >and we should probably use it. The un-fixed version (with RTD still being emitted) is at: http://trzy.overclocked.org/gen68k/g68k030.zip There's also a g68k030.tgz, if you prefer it. The emitter is really nasty, don't look at it too much ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 15:58:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA47990 for dynarec-outgoing; Fri, 4 May 2001 15:58:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: primrose.csv.warwick.ac.uk: csuix owned process doing -bs Date: Sat, 5 May 2001 00:14:33 +0100 (BST) From: David Sharp To: Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Interestingly enough, depending upon the code being recompiled, if we > could assume that each routine was monolithic then we could easily get > away with register caching. Not quite sure what your saying - that dynamic reg allocation and coercing the allocations when jumps happen so that allocation is carried across basic blocks is only good if you have large chunks of code? Depends how big your code is, I don't know any console/arcade platforms except gameboy, however with the ARM you have a lot of exception checking with every memory access and with a load/store architecture that happens a helluva lot so you do get some nasty big chunks of code with lots of temp variables. > > That said, I still maintain dynamic allocation's a hell of a lot faster > > for the ARM or any processor with so many general purpose registers > > relative to the target. > How can you say that? To my mind, when you have a lot of source registers relative to target ones and few are used significantly more than others, (not to mention a load of temporaries) if you statically allocate any of these to native registers you'll end up with a the vast majority of those variables having to always be accessed in memory. Look at the graph of reg usage in the report!! Imagine the measuring native register access by the total of the top 3 used regs (for example) and then the sum total of all the others. Except of course it's worse as you have temps too. I'll readily admit that static reg allocation is great for Z80 and 6502 (probably other 8 bit CPUs too, though I don't know) and probably 16bit 68k stuff too if certain regs are used a lot more than others (as I'm told they are) but for something like the ARM you're going to really hurt performance if you force 70% of accesses to emulated registers to go to memory every time. The point I was making before is that for the fastest generated code for an ARM (or any other machine with so many gp regs - i don't mean x86) you're going to need dynamic reg allocation, I stand by that. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 16:34:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA48032 for dynarec-outgoing; Fri, 4 May 2001 16:34:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 16:52:45 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Interestingly enough, depending upon the code being recompiled, if we > > could assume that each routine was monolithic then we could easily get > > away with register caching. > Not quite sure what your saying - that dynamic reg allocation and coercing > the allocations when jumps happen so that allocation is carried across > basic blocks is only good if you have large chunks of code? Not quite - what I really meant is if there's nothing that jumps into the middle of a basic block, you can get away with register reallocation of any sort. However, if you consider the case that things DO jump into the middle of a basic block, you'll have all kinds of register reallocation thrashing, increase in the number of generated blocks, etc... I've mapped out a bunch of 68K code on paper and seen what it would create. The code would be 2-4 times bigger, the algorithm to do so much more complex, and the cache hit would negate and even hurt anything gained by register caching > > > relative to the target. > > How can you say that? > to always be accessed in memory. Look at the graph of reg usage in the > report!! Imagine the measuring native register access by the total of the > top 3 used regs (for example) and then the sum total of all the others. > Except of course it's worse as you have temps too. I'll readily admit that > static reg allocation is great for Z80 and 6502 (probably other 8 bit CPUs > too, though I don't know) and probably 16bit 68k stuff too if certain regs > are used a lot more than others (as I'm told they are) but for something > like the ARM you're going to really hurt performance if you force 70% of > accesses to emulated registers to go to memory every time. But in the ARM, the register distribution is still heavily biased toward r0 and r13. And if you're lucky enough to see evenly distributed register usage, you'll wind up getting screwed because you'll be forced to swap. > The point I was making before is that for the fastest generated code for > an ARM (or any other machine with so many gp regs - i don't mean x86) > you're going to need dynamic reg allocation, I stand by that. Don't underestimate the cache impact of having to have much larger code, as blocks will have to be recompiled more than once, which means you use quite a bit more cache, and have to keep more transmaps on hand. However, I would agree with you 100% if we could guarantee the code wouldn't jump into the middle of a basic block, but from the 68K code I've seen so far (and lots of Z80 code), this isn't the case. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 17:32:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA48094 for dynarec-outgoing; Fri, 4 May 2001 17:31:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 17:49:49 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Issues Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com A few things have come across my mind on how we want to handle a joint project like this. * We've briefly touched on this, but if this gets finished and works as advertised, there's no question we'll draw attention from commercial vendors, and I'd even bet someone like Microsoft would be interested in it. Playstation games for the XBox? Yeah, that'd work! But in any case, if we're faced with commercial possibilities, my recommendations are as follows: + Regardless, the rights to it being open source and free for noncommercial use must still remain. This is what I demanded when I sold a license to MZ80, and turned down licensing rights to one company because they wanted exclusitivity. + Percentage of distribution of the funds would be decided amongst the contributors. We decide it as a group. We're all adults here, right? I'm not a greedy bastard and I'm not going to argue over money and I'm assuming that everyone else won't either. I think it's petty. I firmly believe that we're fundamentally good people and we'll want what's best for everyone. I'm an honor man. Relationships should not be destroyed nor should any hard feelings be felt because of a few $$. I'm also willing to give up % points of my own pocket to keep people happy. + We may have to sign noncompetitive agreements if we decide to sell. That means we might not be able to create a Playstation emulator that competes with their Playstation emulator, but it doesn't mean noncontributors couldn't. ;-) It just has to stipulate that we can't. + Some of the code will have to be pitched since it's not ours. The disassemblers specifically. We'd have to write our own or just not include them. * I like having the BSD license. I've just been OK'd to "steal with pride" from the FreeBSD team and use their license. However, it doesn't prohibit commerical development and distribution of the code, which bothers me a little. I'd like to add a stipulation that says something to the effect of: "Derivative works cannot be sold. If someone wants to sell a recompiler, they have to come up with it themselves. Every line of code must be their own original work. They can't take our work and sell it - not even a single line." So based on how we all feel about this, we can: 1) Keep the project public, open, and free for noncommercial use and understand that we might sell a license to it and contributors would be compensated in an open book policy, decided amongst contributors. 2) Individuals can choose not to contribute and not discuss it at all for fear their ideas may be absorbed. 3) We can decide who the core team is and take the project private My feelings are that #1 is probably the best option. Comments? I really don't want any hard feelings here, so we should probably decide up front what we all think about this. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 18:11:33 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA48140 for dynarec-outgoing; Fri, 4 May 2001 18:11:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00b901c0d502$d23910e0$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Issues Date: Sat, 5 May 2001 02:28:47 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, You've given this some serious thought - it's scary, I'd never even given this a though, but it's really important, isn't it? > * We've briefly touched on this, but if this gets finished and works as > advertised, there's no question we'll draw attention from commercial > vendors, and I'd even bet someone like Microsoft would be interested in > it. Playstation games for the XBox? Yeah, that'd work! But in any case, if > we're faced with commercial possibilities, my recommendations are as > follows: You're right, this could happen! I guess I'm thinking about this from a hobbyist point of view, but there could be commercial interest... > + Regardless, the rights to it being open source and free for > noncommercial use must still remain. This is what I demanded when I sold a > license to MZ80, and turned down licensing rights to one company because > they wanted exclusitivity. Agreed, I'm all for this. Sometimes I think that Open Source is a bad idea, but for this project? We *need* this to be open source else there's no point! > + Percentage of distribution of the funds would be decided amongst the > contributors. We decide it as a group. We're all adults here, right? I'm > not a greedy bastard and I'm not going to argue over money and I'm > assuming that everyone else won't either. I think it's petty. I firmly > believe that we're fundamentally good people and we'll want what's best > for everyone. I'm an honor man. Relationships should not be destroyed nor > should any hard feelings be felt because of a few $$. I'm also willing to > give up % points of my own pocket to keep people happy. Unless there is a major disagreement, I suggest that we split any money between the contributors. So if there are 10 contributors, 10% each, 100 contributors = 1% each. That's the easiest way IMO - unless someone majorly disagrees. That said, who's actually in on coding this? So far, I know of 5: Neil Bradley Victor Mike Bart Myself Is anyone else getting involved, or have I missed their comments? Can we have a little list of the interested parties? Also, remember, you will be asked to work - and there may not be money. I know for a fact that I'm doing this because I'm interested in dynarec techniques! > + We may have to sign noncompetitive agreements if we decide to sell. That > means we might not be able to create a Playstation emulator that competes > with their Playstation emulator, but it doesn't mean noncontributors > couldn't. ;-) It just has to stipulate that we can't. We'll discuss this if the opportunity occurs, I'm not going to worry about it. Though it's important that you raised the point! > + Some of the code will have to be pitched since it's not ours. The > disassemblers specifically. We'd have to write our own or just not include > them. Well, if we have to, we have to. But for now, I'd rather not. :) > * I like having the BSD license. I've just been OK'd to "steal with > pride" from the FreeBSD team and use their license. However, it doesn't > prohibit commerical development and distribution of the code, which > bothers me a little. I'd like to add a stipulation that says something to > the effect of: > > "Derivative works cannot be sold. If someone wants to sell a recompiler, > they have to come up with it themselves. Every line of code must be their > own original work. They can't take our work and sell it - not even a > single line." I completely agree - we don't want people benefitting (money-wise) from our hard work. Well spotted! > So based on how we all feel about this, we can: > > 1) Keep the project public, open, and free for noncommercial use and > understand that we might sell a license to it and contributors would be > compensated in an open book policy, decided amongst contributors. > > 2) Individuals can choose not to contribute and not discuss it at all for > fear their ideas may be absorbed. > > 3) We can decide who the core team is and take the project private > > My feelings are that #1 is probably the best option. Well, I'd go with #1 either, my next favourite would be #3. But #1 is way out in front. > Comments? I really don't want any hard feelings here, so we should > probably decide up front what we all think about this. I'm glad you've thought about this, it will solve problems before they occur. I want to say that I'm in agreement with you here and my feelings are above. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 19:03:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA48193 for dynarec-outgoing; Fri, 4 May 2001 19:02:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 4 May 01 22:18:20 -0400 Message-Id: <3.0.5.32.20010504191537.00815c90@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 04 May 2001 19:15:37 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Issues In-Reply-To: <00b901c0d502$d23910e0$0100a8c0@home.local> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You're right, this could happen! I guess I'm thinking about this from a >hobbyist point of view, but there could be commercial interest... I feel the same way. >Unless there is a major disagreement, I suggest that we split any money >between the contributors. So if there are 10 contributors, 10% each, 100 >contributors = 1% each. That's the easiest way IMO - unless someone majorly >disagrees. Sounds good to me. >That said, who's actually in on coding this? So far, I know of 5: >Bart Hopefully :) I've been looking through DRMZ80. Some of the concepts I can handle, though there are still a lot of things that elude my understanding. Every good dynarec is complex software, but this project sounds like it's going to be exceptionally difficult. Perhaps it's just newbie anxiety. >Is anyone else getting involved, or have I missed their comments? Can we >have a little list of the interested parties? Also, remember, you will be >asked to work - and there may not be money. I know for a fact that I'm doing >this because I'm interested in dynarec techniques! Yeah, I really want to learn how this stuff works. It's a very interesting topic. >> + Some of the code will have to be pitched since it's not ours. The >> disassemblers specifically. We'd have to write our own or just not include >> them. > >Well, if we have to, we have to. But for now, I'd rather not. :) I believe that things outside of the core software can be replaced later. Disassemblers shouldn't be too big of a problem. You guys have discussed using the instruction set description tables to generate disassemblers. That seems like a good idea. >> "Derivative works cannot be sold. If someone wants to sell a recompiler, >> they have to come up with it themselves. Every line of code must be their >> own original work. They can't take our work and sell it - not even a >> single line." > >I completely agree - we don't want people benefitting (money-wise) from our >hard work. Well spotted! If this becomes an issue, we might have to seek out the help of an IP lawyer. Or, read up on the topic and do it ourselves... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 19:15:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA48215 for dynarec-outgoing; Fri, 4 May 2001 19:15:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3AF36432.177070F2@austin.rr.com> Date: Fri, 04 May 2001 19:23:46 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues References: <00b901c0d502$d23910e0$0100a8c0@home.local> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Is anyone else getting involved, or have I missed their comments? Can we > have a little list of the interested parties? Also, remember, you will be > asked to work - and there may not be money. I know for a fact that I'm doing > this because I'm interested in dynarec techniques! Heh, consider me interested, my preferred areas of coding tend towards the way-lowlevel stuff. Content is hard, code is pure =) As for work, point me at something and I'll see what I can do =) -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 19:27:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA48235 for dynarec-outgoing; Fri, 4 May 2001 19:27:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001301c0d50d$6c8bdb50$0100a8c0@home.local> From: "Neil Griffiths" To: References: <00b901c0d502$d23910e0$0100a8c0@home.local> <3AF36432.177070F2@austin.rr.com> Subject: Re: DYNAREC: Issues Date: Sat, 5 May 2001 03:45:07 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Heh, consider me interested, my preferred areas of coding tend towards the > way-lowlevel stuff. Content is hard, code is pure =) Heh. ;) > As for work, point me at something and I'll see what I can do =) Have you (and has everyone else who's interested) taken a look at DRZ80 yet? I'd advise it, this is the kind of code we'll be producing! I think that, unless there is anyone else who wants to do it, I will be the code maintainer. So that's one job sorted. In fact, let's compile a list of jobs: Project manager: Neil Bradley Code Maintainer: Neil Griffiths Documentation: Victor Moya del Barrio Scary bearded guy who tries to scare me all the time: Michael Koenig. There has to be more than those 3 jobs, other than the actual coding of it, which I'm sure we'll all be interested in. But bugger me if I can think of any more. Team member count: 5 Programmers (alphabetical order): Bart Mike Neil B Neil G Victor Right, Neil has covered the coding style, we're discussing important things like the implementation. Not sure what else we can do! Apart from implement it, but I won't be starting that until June - but hey, that's only a month away! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 20:08:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA48292 for dynarec-outgoing; Fri, 4 May 2001 20:08:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002c01c0d513$180d3eb0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <00b901c0d502$d23910e0$0100a8c0@home.local> <3AF36432.177070F2@austin.rr.com> <001301c0d50d$6c8bdb50$0100a8c0@home.local> Subject: Re: DYNAREC: Issues Date: Sat, 5 May 2001 04:25:44 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, I totally ignored Tarquin, didn't I? Despite the fact that I was replying to him! Team member count: 6 Programmers (alphabetical order): Bart Mike Neil B Neil G Tarquin Victor Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 20:19:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA48312 for dynarec-outgoing; Fri, 4 May 2001 20:19:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 20:37:13 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues In-Reply-To: <00b901c0d502$d23910e0$0100a8c0@home.local> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > noncommercial use must still remain. This is what I demanded when I sold a > > license to MZ80, and turned down licensing rights to one company because > > they wanted exclusitivity. > Agreed, I'm all for this. Sometimes I think that Open Source is a bad idea, > but for this project? We *need* this to be open source else there's no > point! I prefer to just think of it as freeware. The "Open Source" rings of things like Linux and Richard Stallman - neither of whom are on my highly respected list. > Unless there is a major disagreement, I suggest that we split any money > between the contributors. So if there are 10 contributors, 10% each, 100 > contributors = 1% each. That's the easiest way IMO - unless someone majorly > disagrees. I actually disagree with that. If 1 person does 90% of the work, that's not fair. My intention there was to give people appropriate distribution for their work, and we'll all know what each person has contributed and we can agree amongst ourselves to work it out. > Is anyone else getting involved, or have I missed their comments? Can we > have a little list of the interested parties? Also, remember, you will be > asked to work - and there may not be money. I know for a fact that I'm doing > this because I'm interested in dynarec techniques! Maybe David, Gwenole or Graham might want to join in if we haven't scared 'em away. ;-) > > with their Playstation emulator, but it doesn't mean noncontributors > > couldn't. ;-) It just has to stipulate that we can't. > We'll discuss this if the opportunity occurs, I'm not going to worry about > it. Though it's important that you raised the point! There are some simple ways around it, tho. > > + Some of the code will have to be pitched since it's not ours. The > > disassemblers specifically. We'd have to write our own or just not include > Well, if we have to, we have to. But for now, I'd rather not. :) And we can later replace it if it ever comes to that. The disassembler is only useful for debugging while we implement. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 20:19:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA48324 for dynarec-outgoing; Fri, 4 May 2001 20:19:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68040 Profile Report From: "M.I.K.e" Message-ID: <0003838557b56011_mailit@mail.dynarec.com> References: Date: Sat, 05 May 2001 05:34:15 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Note: this versions of Basilisk II/JIT was compiled with gcc-3.0 BTW, how hard is it to include the JIT into Basilisk II? I'd like to speed up the BeOS version and the latest snapshot compiles fine under BeOS, which the latest release didn't... -- M.I.K.e "Two sure ways to tell a sexy male; the first is, he has a bad memory. I forget the second." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 20:19:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA48332 for dynarec-outgoing; Fri, 4 May 2001 20:19:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: DRM68K Layout From: "M.I.K.e" Message-ID: <000383856b34d001_mailit@mail.dynarec.com> References: Date: Sat, 05 May 2001 05:39:42 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Mail-It_--335000660" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --Mail-It_--335000660 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit >> Are we already going around the definition files? I think MIKE implemented >> the last version of the M68K file. Bart is going to be very useful here >> since he knows very well the 68K now ;). >I'm still looking for the old 68K file. I've found an x86 file. I've attached my old (unfinished) 68K file... >-->Neil -- M.I.K.e According to the latest official figures, 43% of all statistics are totally worthless. --Mail-It_--335000660 Content-Type: text/x-source-code; name="68K.def" Content-Transfer-Encoding: base64 Content-Disposition: Attachment; filename="68K.def" Ly8gQ1BVIGRlc2NyaXB0aW9uIGZpbGUgZm9yICI2OEsiCi8vIE0uSS5LLmUgMjAwMC0wNy0wOQoK W2NwdWluZm9dCk5hbWUgPSA2OEs7Ckluc3RydWN0aW9uR3JhbnVsYXJpdHkgPSAxNjsKCltvcGVy YW5kc10KRFJFRyAgeyAzLCBrZXlzID0ge0QwPTAsIEQxPTEsIEQyPTIsIEQzPTMsIEQ0PTQsIEQ1 PTUsIEQ2PTYsIEQ3PTd9IH07CkFSRUcgIHsgMywga2V5cyA9IHtBMD0wLCBBMT0xLCBBMj0yLCBB Mz0zLCBBND00LCBBNT01LCBBNj02LCBTUD03fSB9OwpSRUcgICB7IDQsIGtleXMgPSB7RDA9MCwg RDE9MSwgRDI9MiwgRDM9MywgRDQ9NCwgRDU9NSwgRDY9NiwgRDc9NywKICAgICAgICAgICAgICAg ICAgIEEwPTgsIEExPTksIEEyPTEwLCBBMz0xMSwgQTQ9MTIsIEE1PTEzLCBBNj0xNCwgU1A9MTV9 IH07CkNDICAgIHsgNCwga2V5cyA9IHtUPTAsIEY9MSwgSEk9MiwgTFM9MywgQ0M9NCwgQ1M9NSwg TkU9NiwgRVE9NywgVkM9OCwKICAgICAgICAgICAgICAgICAgIFZTPTksIFBMPTEwLCBNST0xMSwg R0U9MTIsIExUPTEzLCBHVD0xNCwgTEU9MTV9IH07CkFCUzMgIHsgMywgbnVtZXJpY307ICAvLyB1 bnNpZ25lZCAzIGJpdCB2YWx1ZQpBQlM0ICB7IDQsIG51bWVyaWN9OyAgLy8gdW5zaWduZWQgNCBi aXQgdmFsdWUKQUJTOCAgeyA4LCBudW1lcmljfTsgIC8vIHVuc2lnbmVkIDggYml0IHZhbHVlCkFC UzE2IHsxNiwgbnVtZXJpY307ICAvLyB1bnNpZ25lZCAxNiBiaXQgdmFsdWUKQUJTMzIgezMyLCBu dW1lcmljfTsgIC8vIHVuc2lnbmVkIDMyIGJpdCB2YWx1ZQpSRUw4ICB7IDgsIG51bWVyaWN9OyAg Ly8gc2lnbmVkIDggYml0IHZhbHVlClJFTDE2IHsxNiwgbnVtZXJpY307ICAvLyBzaWduZWQgMTYg Yml0IHZhbHVlClJFTDMyIHszMiwgbnVtZXJpY307ICAvLyBzaWduZWQgMzIgYml0IHZhbHVlCk9G RjggIHsgOCwgbnVtZXJpYywgUEMrMitYLCBQQysyK1h9OyAgLy8gOCBiaXQgb2Zmc2V0Ck9GRjE2 IHsxNiwgbnVtZXJpYywgUEMrMitYLCBQQysyK1h9OyAgLy8gMTYgYml0IG9mZnNldAoKW2ZsYWdz XQpDID0geyAweDAwMDEsICJjYXJyeSIgfTsKViA9IHsgMHgwMDAyLCAib3ZlcmZsb3ciIH07Clog PSB7IDB4MDAwNCwgInplcm8iIH07Ck4gPSB7IDB4MDAwOCwgIm5lZ2F0aXZlIiB9OwpYID0geyAw eDAwMTAsICJleHRlbmQiIH07CgpbaW5zdHJ1Y3Rpb25zXQovLyAwMDAwIEJpdCBNYW5pcHVsYXRp b24vTU9WRVAvSW1tZWRpYXRlCi8vIDAwMDEgTW92ZSBCeXRlCi8vIDAwMTAgTW92ZSBMb25nCi8v IDAwMTEgTW92ZSBXb3JkCi8vIDAxMDAgTWlzY2VsbGFuZW91cwowMTAwMTExMDAxMTEwMDAxIHxO T1B8fHx8NCA0IE47ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBub3AKMDEwMDEwMTAx MTExMTEwMCB8SUxMRUdBTHx8fHwzNCAzNCBUOyAgICAgICAgICAgICAgICAgICAgICAgLy8gaWxs ZWdhbAowMTAwMTExMDAxMTEwMDAwIHxSRVNFVHx8fHwxMzIgMTMyIE47ICAgICAgICAgICAgICAg ICAgICAgICAvLyByZXNldAowMTAwMTExMDAxMTEwMDExIHxSVEV8fENWWk5YfHwyMCAyMCBUOyAg ICAgICAgICAgICAgICAgICAgICAvLyBydGUKMDEwMDExMTAwMTExMDExMSB8UlRSfHxDVlpOWHx8 MjAgMjAgVDsgICAgICAgICAgICAgICAgICAgICAgLy8gcnRyCjAxMDAxMTEwMDExMTAxMDEgfFJU U3x8fHwxNiAxNiBUOyAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHJ0cwowMTAwMTExMDAx MTEwMDEwICgxNnhJKSB8U1RPUHxBQlMxNj1JfENWWk5YfHw0IDQgVDsgICAgICAgICAvLyBzdG9w ICNjb25zdAowMTAwMTExMDAxMDBWVlZWIHxUUkFQfEFCUzQ9Vnx8Q1ZaTlh8MzggMzggVDsgICAg ICAgICAgICAgICAvLyB0cmFwICN2ZWMKMDEwMDExMTAwMTExMDExMCB8VFJBUFZ8fHxDVlpOWHwz NCA0IEM7ICAgICAgICAgICAgICAgICAgICAgLy8gdHJhcHYKMDEwMDExMTAwMTAxMEFBQSAoMTZ4 TykgfExJTkt8QVJFRz1BIFJFTDE2PU98fHwxOCAxOCBOOyAgICAgLy8gbGluayBBbiwgI2Rpc3QK MDEwMDExMTAwMTAxMUFBQSB8VU5MS3xBUkVHPUF8fHwxMiAxMiBOOyAgICAgICAgICAgICAgICAg ICAgLy8gdW5sayBBbgowMTAwMTAwMDAxMDAwREREIHxTV0FQfERSRUc9RHxOWlZDfHw0IDQgTjsg ICAgICAgICAgICAgICAgICAvLyBzd2FwIERuCi8vIDAxMDEgQUREUS9TVUJRL1NjYy9EQmNjCjAx MDEwMDAwMTEwMDFEREQgKDE2eE8pIHxEQlR8RFJFRz1EIE9GRjE2PU98fHwxMCAxMiBOOyAgICAg IC8vIGRidCBEbiwgb2Zmc2V0CjAxMDEwMDAxMTEwMDFEREQgKDE2eE8pIHxEQlJBfERSRUc9RCBP RkYxNj1PfHx8MTAgMTIgQzsgICAgIC8vIGRicmEgRG4sIG9mZnNldAowMTAxMDEwMDExMDAxRERE ICgxNnhPKSB8REJDQ3xEUkVHPUQgT0ZGMTY9T3x8Q3wxMCAxMiBDOyAgICAvLyBkYmNjIERuLCBv ZmZzZXQKMDEwMTAxMDExMTAwMURERCAoMTZ4TykgfERCQ1N8RFJFRz1EIE9GRjE2PU98fEN8MTAg MTIgQzsgICAgLy8gZGJjcyBEbiwgb2Zmc2V0CjAxMDEwMTExMTEwMDFEREQgKDE2eE8pIHxEQkVR fERSRUc9RCBPRkYxNj1PfHxafDEwIDEyIEM7ICAgIC8vIGRiZXEgRG4sIG9mZnNldAowMTAxMTEw MDExMDAxREREICgxNnhPKSB8REJHRXxEUkVHPUQgT0ZGMTY9T3x8TlZ8MTAgMTIgQzsgICAvLyBk YmdlIERuLCBvZmZzZXQKMDEwMTExMTAxMTAwMURERCAoMTZ4TykgfERCR1R8RFJFRz1EIE9GRjE2 PU98fE5WWnwxMCAxMiBDOyAgLy8gZGJndCBEbiwgb2Zmc2V0CjAxMDEwMDEwMTEwMDFEREQgKDE2 eE8pIHxEQkhJfERSRUc9RCBPRkYxNj1PfHxDWnwxMCAxMiBDOyAgIC8vIGRiaGkgRG4sIG9mZnNl dAowMTAxMTExMTExMDAxREREICgxNnhPKSB8REJMRXxEUkVHPUQgT0ZGMTY9T3x8Wk5WfDEwIDEy IEM7ICAvLyBkYmxlIERuLCBvZmZzZXQKMDEwMTAwMTExMTAwMURERCAoMTZ4TykgfERCTFN8RFJF Rz1EIE9GRjE2PU98fENafDEwIDEyIEM7ICAgLy8gZGJscyBEbiwgb2Zmc2V0CjAxMDExMTAxMTEw MDFEREQgKDE2eE8pIHxEQkxUfERSRUc9RCBPRkYxNj1PfHxOVnwxMCAxMiBDOyAgIC8vIGRibHQg RG4sIG9mZnNldAowMTAxMTAxMTExMDAxREREICgxNnhPKSB8REJNSXxEUkVHPUQgT0ZGMTY9T3x8 TnwxMCAxMiBDOyAgICAvLyBkYm1pIERuLCBvZmZzZXQKMDEwMTAxMTAxMTAwMURERCAoMTZ4Tykg fERCTkV8RFJFRz1EIE9GRjE2PU98fFp8MTAgMTIgQzsgICAgLy8gZGJuZSBEbiwgb2Zmc2V0CjAx MDExMDEwMTEwMDFEREQgKDE2eE8pIHxEQlBMfERSRUc9RCBPRkYxNj1PfHxOfDEwIDEyIEM7ICAg IC8vIGRicGwgRG4sIG9mZnNldAowMTAxMTAwMDExMDAxREREICgxNnhPKSB8REJWQ3xEUkVHPUQg T0ZGMTY9T3x8VnwxMCAxMiBDOyAgICAvLyBkYnZjIERuLCBvZmZzZXQKMDEwMTEwMDExMTAwMURE RCAoMTZ4TykgfERCVlN8RFJFRz1EIE9GRjE2PU98fFZ8MTAgMTIgQzsgICAgLy8gZGJ2cyBEbiwg b2Zmc2V0Ci8vIDAxMTAgQmNjL0JTUgowMTEwMDAwMDAwMDAwMDAwICgxNnhPKSB8QlJBLkx8T0ZG MTY9T3x8fDEwIDEwIFQ7ICAgICAgICAgICAvLyBicmEubCBvZmZzZXQKMDExMDAwMDBPT09PT09P TyAgICAgICAgfEJSQS5TfCBPRkY4PU98fHwxMCAxMCBUOyAgICAgICAgICAgLy8gYnJhLnMgb2Zm c2V0CjAxMTAwMDAxMDAwMDAwMDAgKDE2eE8pIHxCU1IuTHxPRkYxNj1PfHx8MTggMTggVDsgICAg ICAgICAgIC8vIGJzci5sIG9mZnNldAowMTEwMDAwMU9PT09PT09PICAgICAgICB8QlNSLlN8IE9G Rjg9T3x8fDE4IDE4IFQ7ICAgICAgICAgICAvLyBic3IucyBvZmZzZXQKMDExMDAxMDAwMDAwMDAw MCAoMTZ4TykgfEJDQy5MfE9GRjE2PU98fEN8MTAgMTIgQzsgICAgICAgICAgLy8gYmNjLmwgb2Zm c2V0CjAxMTAwMTAxMDAwMDAwMDAgKDE2eE8pIHxCQ1MuTHxPRkYxNj1PfHxDfDEwIDEyIEM7ICAg ICAgICAgIC8vIGJjcy5sIG9mZnNldAowMTEwMDExMTAwMDAwMDAwICgxNnhPKSB8QkVRLkx8T0ZG MTY9T3x8WnwxMCAxMiBDOyAgICAgICAgICAvLyBiZXEubCBvZmZzZXQKMDExMDExMDAwMDAwMDAw MCAoMTZ4TykgfEJHRS5MfE9GRjE2PU98fE5WfDEwIDEyIEM7ICAgICAgICAgLy8gYmdlLmwgb2Zm c2V0CjAxMTAxMTEwMDAwMDAwMDAgKDE2eE8pIHxCR1QuTHxPRkYxNj1PfHxOVlp8MTAgMTIgQzsg ICAgICAgIC8vIGJndC5sIG9mZnNldAowMTEwMDAxMDAwMDAwMDAwICgxNnhPKSB8QkhJLkx8T0ZG MTY9T3x8Q1p8MTAgMTIgQzsgICAgICAgICAvLyBiaGkubCBvZmZzZXQKMDExMDExMTEwMDAwMDAw MCAoMTZ4TykgfEJMRS5MfE9GRjE2PU98fFpOVnwxMCAxMiBDOyAgICAgICAgLy8gYmxlLmwgb2Zm c2V0CjAxMTAwMDExMDAwMDAwMDAgKDE2eE8pIHxCTFMuTHxPRkYxNj1PfHxDWnwxMCAxMiBDOyAg ICAgICAgIC8vIGJscy5sIG9mZnNldAowMTEwMTEwMTAwMDAwMDAwICgxNnhPKSB8QkxULkx8T0ZG MTY9T3x8TlZ8MTAgMTIgQzsgICAgICAgICAvLyBibHQubCBvZmZzZXQKMDExMDEwMTEwMDAwMDAw MCAoMTZ4TykgfEJNSS5MfE9GRjE2PU98fE58MTAgMTIgQzsgICAgICAgICAgLy8gYm1pLmwgb2Zm c2V0CjAxMTAwMTEwMDAwMDAwMDAgKDE2eE8pIHxCTkUuTHxPRkYxNj1PfHxafDEwIDEyIEM7ICAg ICAgICAgIC8vIGJuZS5sIG9mZnNldAowMTEwMTAxMDAwMDAwMDAwICgxNnhPKSB8QlBMLkx8T0ZG MTY9T3x8TnwxMCAxMiBDOyAgICAgICAgICAvLyBicGwubCBvZmZzZXQKMDExMDEwMDAwMDAwMDAw MCAoMTZ4TykgfEJWQy5MfE9GRjE2PU98fFZ8MTAgMTIgQzsgICAgICAgICAgLy8gYnZjLmwgb2Zm c2V0CjAxMTAxMDAxMDAwMDAwMDAgKDE2eE8pIHxCVlMuTHxPRkYxNj1PfHxWfDEwIDEyIEM7ICAg ICAgICAgIC8vIGJ2cy5sIG9mZnNldAowMTEwMDEwME9PT09PT09PICAgICAgICB8QkNDLlN8IE9G Rjg9T3x8Q3wxMCAxMiBDOyAgICAgICAgICAvLyBiY2MucyBvZmZzZXQKMDExMDAxMDFPT09PT09P TyAgICAgICAgfEJDUy5TfCBPRkY4PU98fEN8MTAgMTIgQzsgICAgICAgICAgLy8gYmNzLnMgb2Zm c2V0CjAxMTAwMTExT09PT09PT08gICAgICAgIHxCRVEuU3wgT0ZGOD1PfHxafDEwIDEyIEM7ICAg ICAgICAgIC8vIGJlcS5zIG9mZnNldAowMTEwMTEwME9PT09PT09PICAgICAgICB8QkdFLlN8IE9G Rjg9T3x8TlZ8MTAgMTIgQzsgICAgICAgICAvLyBiZ2UucyBvZmZzZXQKMDExMDExMTBPT09PT09P TyAgICAgICAgfEJHVC5TfCBPRkY4PU98fE5WWnwxMCAxMiBDOyAgICAgICAgLy8gYmd0LnMgb2Zm c2V0CjAxMTAwMDEwT09PT09PT08gICAgICAgIHxCSEkuU3wgT0ZGOD1PfHxDWnwxMCAxMiBDOyAg ICAgICAgIC8vIGJoaS5zIG9mZnNldAowMTEwMTExMU9PT09PT09PICAgICAgICB8QkxFLlN8IE9G Rjg9T3x8Wk5WfDEwIDEyIEM7ICAgICAgICAvLyBibGUucyBvZmZzZXQKMDExMDAwMTFPT09PT09P TyAgICAgICAgfEJMUy5TfCBPRkY4PU98fENafDEwIDEyIEM7ICAgICAgICAgLy8gYmxzLnMgb2Zm c2V0CjAxMTAxMTAxT09PT09PT08gICAgICAgIHxCTFQuU3wgT0ZGOD1PfHxOVnwxMCAxMiBDOyAg ICAgICAgIC8vIGJsdC5zIG9mZnNldAowMTEwMTAxMU9PT09PT09PICAgICAgICB8Qk1JLlN8IE9G Rjg9T3x8TnwxMCAxMiBDOyAgICAgICAgICAvLyBibWkucyBvZmZzZXQKMDExMDAxMTBPT09PT09P TyAgICAgICAgfEJORS5TfCBPRkY4PU98fFp8MTAgMTIgQzsgICAgICAgICAgLy8gYm5lLnMgb2Zm c2V0CjAxMTAxMDEwT09PT09PT08gICAgICAgIHxCUEwuU3wgT0ZGOD1PfHxOfDEwIDEyIEM7ICAg ICAgICAgIC8vIGJwbC5zIG9mZnNldAowMTEwMTAwME9PT09PT09PICAgICAgICB8QlZDLlN8IE9G Rjg9T3x8VnwxMCAxMiBDOyAgICAgICAgICAvLyBidmMucyBvZmZzZXQKMDExMDEwMDFPT09PT09P TyAgICAgICAgfEJWUy5TfCBPRkY4PU98fFZ8MTAgMTIgQzsgICAgICAgICAgLy8gYnZzLnMgb2Zm c2V0Ci8vIDAxMTEgTU9WRVEKMDExMURERDBJSUlJSUlJSSB8TU9WRVF8UkVMOD1JfE5aVkN8fDQg NCBOOyAgICAgICAgICAgICAgICAgLy8gbW92ZXEgI3NpZ25lZCwgRG4KLy8gMTAwMCBPUi9ESVYv U0JDRAovLyAxMDAxIFNVQi9TVUJYCi8vIDEwMTAgKExpbmUtQSkKLy8gMTAxMSBDTVAvRU9SCi8v IDExMDAgQU5EL01VTC9BQkNEL0VYRwoxMTAwWFhYMTAxMDAwWVlZIHxFWEd8RFJFRz1YIERSRUc9 WXx8fDYgNiBOOyAgICAgICAgICAgICAgICAvLyBleGcgRHgsIER5CjExMDBYWFgxMDEwMDFZWVkg fEVYR3xBUkVHPVggQVJFRz1ZfHx8NiA2IE47ICAgICAgICAgICAgICAgIC8vIGV4ZyBBeCwgQXkK MTEwMFhYWDExMDAwMVlZWSB8RVhHfERSRUc9WCBBUkVHPVl8fHw2IDYgTjsgICAgICAgICAgICAg ICAgLy8gZXhnIER4LCBBeQovLyAxMTAxIEFERC9BRERYCi8vIDExMTAgU2hpZnQvUm90YXRlCi8v IDExMTEgKExpbmUtRikKCi8vIEVPRgo= --Mail-It_--335000660-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 20:19:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA48340 for dynarec-outgoing; Fri, 4 May 2001 20:19:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec - the first testament From: "M.I.K.e" Message-ID: <0003838530970704_mailit@mail.dynarec.com> References: Date: Sat, 05 May 2001 05:23:19 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Very good idea! This will make the development of new dynarecs and the >> retargetting of existing ones much easier. >Yeah. The initial "burn" will be tougher, tho. The start is always hard, but with a clean design it should be easier as soon as more platforms are to be added. >> For readers of the "Shade" document: it's called "chaining" there... >Bleugh. Bad term. I was just teasing you, because I know you don't like the term ;-) >No, we need OOP. We just don't need C++. C++ != OOP! Yeah, sorry I was a bit unprecise... >And quick allocation. Rather than malloc()ing each node, we should have >blocks of them and internally manage them. True, system functions are always slower. >I think so. 8 Bit CPUs were a good exercise for me, Sure, but it's nothing serious since we could run 8-bit CPUs at full speed with traditional emulation a few years ago, so there is no need for a dynarec. >but the 16 bit stuff is where it'll really pay off. Indeed. >How many 68K emulations do you know of that >are less than up to snuff? I'd like to see 68K games run full bore on >anything. Especially 68K seems to be a problem. Maybe it's the big-endian byte order or the instructions or both, but 68K emulation often seems to be slower than MIPS emulation eg. >Okay, I can handle MSVC. Who is going to handle the "gcc"able version of >it? I'd like to lock-step with someone on that so we don't get divergent. I'm not a GCC expert, but that's what I have on BeOS, so if no one else uses GCC, I guess I'm your man. >-->Neil -- M.I.K.e Experience is what causes a person to make new mistakes instead of old ones. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 20:19:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA48348 for dynarec-outgoing; Fri, 4 May 2001 20:19:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec - the first testament From: "M.I.K.e" Message-ID: <0003838550f24cb4_mailit@mail.dynarec.com> References: <200105040653.IAA14521@pons.ac.upc.es> Date: Sat, 05 May 2001 05:32:22 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I haven't exactly said I don't want but I just advised you about how >a document written by me could be (just take a look to THAT ugly >draft ;). If there is nobody which would want (Mike? ;) this part of >the work I will go for it. Well, I could do it if I have to... I guess since I'm probably the least experienced x86 coder here that might be even a good idea... >Victor -- M.I.K.e Egotism is the anesthetic given by a kindly nature to relieve the pain of being a damned fool. -- Bellamy Brooks --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 20:19:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA48356 for dynarec-outgoing; Fri, 4 May 2001 20:19:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec - the first testament From: "M.I.K.e" Message-ID: <000383855be2fe00_mailit@mail.dynarec.com> References: <200105040722.JAA14425@pons.ac.upc.es> Date: Sat, 05 May 2001 05:35:25 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >And MIKe if you are >interested in SH4 emulation he already a working emulator which uses >this CPU ;). Hmm, SH-2 would be easier for a start... The SH-4 could be a bitch... >Victor -- M.I.K.e I've had a perfectly wonderful evening. But this wasn't it. -- Groucho Marx --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 20:19:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA48364 for dynarec-outgoing; Fri, 4 May 2001 20:19:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Lurker roundup 2001 From: "M.I.K.e" Message-ID: <00038385743fc50b_mailit@mail.dynarec.com> References: Date: Sat, 05 May 2001 05:42:14 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Mail-It_--335000660" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --Mail-It_--335000660 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit >>I plan on going into the dreaded realm of PSX emulation... >Hopefully we'll have a cool enough framework that you'll be able to plug >things in. You'll note that the R4000 is kind of an odd beast, and my >guess is the time spent is not in emulation rather graphics processing. Actually the PSX has a R3000A, which is easier to emulate than the R4000. I've attached the unfinished R3000 definition file I started togehter with the 68K one, just in case someone is interested... >-->Neil -- M.I.K.e Only through hard work and perseverance can one truly suffer. --Mail-It_--335000660 Content-Type: text/x-source-code; name="R3000.def" Content-Transfer-Encoding: base64 Content-Disposition: Attachment; filename="R3000.def" Ly8gQ1BVIGRlc2NyaXB0aW9uIGZpbGUgZm9yICJSMzAwMCIKLy8gTS5JLksuZSAyMDAwLTA3LTA3 CgpbY3B1aW5mb10KTmFtZSA9IFIzMDAwOwpJbnN0cnVjdGlvbkdyYW51bGFyaXR5ID0gMzI7Cgpb b3BlcmFuZHNdClJFRyAgICA9IHsgNSwga2V5cyA9IHtaRVJPPTAsIFIxPTEsIFIyPTIsIFIzPTMs IFI0PTQsIFI1PTUsIFI2PTYsIFI3PTcsIFI4PTgsIFI5PTksCiAgICAgICAgICAgICAgICAgICAg ICBSMTA9MTAsIFIxMT0xMSwgUjEyPTEyLCBSMTM9MTMsIFIxND0xNCwgUjE1PTE1LCBSMTY9MTYs IFIxNz0xNywKICAgICAgICAgICAgICAgICAgICAgIFIxOD0xOCwgUjE5PTE5LCBSMjA9MjAsIFIy MT0yMSwgUjIyPTIyLCBSMjM9MjMsIFIyND0yNCwgUjI1PTI1LAogICAgICAgICAgICAgICAgICAg ICAgUjI2PTI2LCBSMjc9MjcsIFIyOD0yOCwgUjI5PTI5LCBSMzA9MzAsIFJBPTMxfSB9OwpTSEFN VCAgPSB7IDUsIG51bWVyaWN9OwpJTU0gICAgPSB7MTYsIG51bWVyaWN9OwpPRkYgICAgPSB7MTYs IG51bWVyaWN9OwpBRFIgICAgPSB7MjYsIG51bWVyaWN9OwpDT0RFMjAgPSB7MjAsIG51bWVyaWN9 OwpDT0RFMTAgPSB7MTAsIG51bWVyaWN9OwoKW2ZsYWdzXQovLyBub25lCgpbaW5zdHJ1Y3Rpb25z XQowMDAwMDAgMDAwMDAgMDAwMDAgMDAwMDAgMDAwMDAgMDAwMDAwIHxOT1B8fHx8MSAxIDA7ICAg ICAgICAgICAgICAgICAgICAgLy8gbm9wCjAwMDAwMCAwMDAwMCBXV1dXVyBERERERCBTU1NTUyAw MDAwMDAgfFNMTHxSRUc9RCBSRUc9VyBTSEFNVD1TfHx8MSAxIDA7ICAvLyBzbGwgZCwgdywgc2gK MDAwMDAwIDAwMDAwIFdXV1dXIEREREREIFNTU1NTIDAwMDAxMCB8U1JMfFJFRz1EIFJFRz1XIFNI QU1UPVN8fHwxIDEgMDsgIC8vIHNybCBkLCB3LCBzaAowMDAwMDAgMDAwMDAgV1dXV1cgREREREQg U1NTU1MgMDAwMDExIHxTUkF8UkVHPUQgUkVHPVcgU0hBTVQ9U3x8fDEgMSAwOyAgLy8gc3JhIGQs IHcsIHNoCjAwMDAwMCBTU1NTUyBUVFRUVCBERERERCAwMDAwMCAwMDAxMDAgfFNMTFZ8UkVHPUQg UkVHPVQgUkVHPVN8fHwxIDEgMDsgICAvLyBzbGx2IGQsIHQsIHMKMDAwMDAwIFNTU1NTIFRUVFRU IEREREREIDAwMDAwIDAwMDExMCB8U1JMVnxSRUc9RCBSRUc9VCBSRUc9U3x8fDEgMSAwOyAgIC8v IHNybHYgZCwgdCwgcwowMDAwMDAgU1NTU1MgVFRUVFQgREREREQgMDAwMDAgMDAwMTExIHxTUkFW fFJFRz1EIFJFRz1UIFJFRz1TfHx8MSAxIDA7ICAgLy8gc3JhdiBkLCB0LCBzCjAwMDAwMCBTU1NT UyAwMDAwMCAwMDAwMCAwMDAwMCAwMDEwMDAgfEpSfFJFRz1TfHx8PyA/IDI7ICAgICAgICAgICAg ICAgICAvLyBqciBzCjAwMDAwMCBTU1NTUyAwMDAwMCAxMTExMSAwMDAwMCAwMDEwMDEgfEpBTFJ8 UkVHPVN8fHw/ID8gMjsgICAgICAgICAgICAgICAvLyBqYWxyIHMKMDAwMDAwIFNTU1NTIDAwMDAw IEREREREIDAwMDAwIDAwMTAwMSB8SkFMUnxSRUc9RCBSRUc9U3x8fD8gPyAyOyAgICAgICAgIC8v IGphbHIgZCwgcwowMDAwMDAgQ0NDQ0MgQ0NDQ0MgQ0NDQ0MgQ0NDQ0MgMDAxMTAwIHxTWVNDQUxM fENPREU9Q3x8fD8gPyAyOyAgICAgICAgICAgLy8gc3lzY2FsbCBjb2RlCjAwMDAwMCBDQ0NDQyBD Q0NDQyAwMDAwMCAwMDAwMCAwMDExMDEgfEJSRUFLfENPREU9Q3x8fD8gPyAyOyAgICAgICAgICAg ICAvLyBicmVhayBjb2RlCjAwMDAwMCAwMDAwMCAwMDAwMCBERERERCAwMDAwMCAwMTAwMDAgfE1G SEl8UkVHPUR8fHw/ID8gMDsgICAgICAgICAgICAgICAvLyBtZmhpIGQKMDAwMDAwIFNTU1NTIDAw MDAwIDAwMDAwIDAwMDAwIDAxMDAwMSB8TVRISXxSRUc9U3x8fD8gPyAwOyAgICAgICAgICAgICAg IC8vIG10aGkgcwowMDAwMDAgMDAwMDAgMDAwMDAgREREREQgMDAwMDAgMDEwMDEwIHxNRkxPfFJF Rz1EfHx8PyA/IDA7ICAgICAgICAgICAgICAgLy8gbWZsbyBkCjAwMDAwMCBTU1NTUyAwMDAwMCAw MDAwMCAwMDAwMCAwMTAwMTEgfE1UTE98UkVHPVN8fHw/ID8gMDsgICAgICAgICAgICAgICAvLyBt dGxvIHMKMDAwMDAwIFNTU1NTIFRUVFRUIDAwMDAwIDAwMDAwIDAxMTAwMCB8TVVMVHxSRUc9UyBS RUc9VHx8fD8gPyAwOyAgICAgICAgIC8vIG11bHQgcywgdAowMDAwMDAgU1NTU1MgVFRUVFQgMDAw MDAgMDAwMDAgMDExMDAxIHxNVUxUVXxSRUc9UyBSRUc9VHx8fD8gPyAwOyAgICAgICAgLy8gbXVs dHUgcywgdAowMDAwMDAgU1NTU1MgVFRUVFQgMDAwMDAgMDAwMDAgMDExMDEwIHxESVZ8UkVHPVMg UkVHPVR8fHw/ID8gMDsgICAgICAgICAgLy8gZGl2IHMsIHQKMDAwMDAwIFNTU1NTIFRUVFRUIDAw MDAwIDAwMDAwIDAxMTAxMSB8RElWVXxSRUc9UyBSRUc9VHx8fD8gPyAwOyAgICAgICAgIC8vIGRp dnUgcywgdAowMDAwMDAgU1NTU1MgVFRUVFQgREREREQgMDAwMDAgMTAwMDAwIHxBRER8UkVHPUQg UkVHPVMgUkVHPVR8fHwxIDEgMDsgICAgLy8gYWRkIGQsIHMsIHQKMDAwMDAwIFNTU1NTIFRUVFRU IEREREREIDAwMDAwIDEwMDAwMSB8QUREVXxSRUc9RCBSRUc9UyBSRUc9VHx8fDEgMSAwOyAgIC8v IGFkZHUgZCwgcywgdAowMDAwMDAgU1NTU1MgVFRUVFQgREREREQgMDAwMDAgMTAwMDEwIHxTVUJ8 UkVHPUQgUkVHPVMgUkVHPVR8fHwxIDEgMDsgICAgLy8gc3ViIGQsIHMsIHQKMDAwMDAwIFNTU1NT IFRUVFRUIEREREREIDAwMDAwIDEwMDAxMSB8U1VCVXxSRUc9RCBSRUc9UyBSRUc9VHx8fDEgMSAw OyAgIC8vIHN1YnUgZCwgcywgdAowMDAwMDAgU1NTU1MgVFRUVFQgREREREQgMDAwMDAgMTAwMTAw IHxBTkR8UkVHPUQgUkVHPVMgUkVHPVR8fHwxIDEgMDsgICAgLy8gYW5kIGQsIHMsIHQKMDAwMDAw IFNTU1NTIFRUVFRUIEREREREIDAwMDAwIDEwMDEwMSB8T1J8UkVHPUQgUkVHPVMgUkVHPVR8fHwx IDEgMDsgICAgIC8vIG9yIGQsIHMsIHQKMDAwMDAwIFNTU1NTIFRUVFRUIEREREREIDAwMDAwIDEw MDExMCB8WE9SfFJFRz1EIFJFRz1TIFJFRz1UfHx8MSAxIDA7ICAgIC8vIHhvciBkLCBzLCB0CjAw MDAwMCBTU1NTUyBUVFRUVCBERERERCAwMDAwMCAxMDAxMTEgfE5PUnxSRUc9RCBSRUc9UyBSRUc9 VHx8fDEgMSAwOyAgICAvLyBub3IgZCwgcywgdAowMDAwMDAgU1NTU1MgVFRUVFQgREREREQgMDAw MDAgMTAxMDEwIHxTTFR8UkVHPUQgUkVHPVMgUkVHPVR8fHwxIDEgMDsgICAgLy8gc2x0IGQsIHMs IHQKMDAwMDAwIFNTU1NTIFRUVFRUIEREREREIDAwMDAwIDEwMTAxMSB8U0xUVXxSRUc9RCBSRUc9 UyBSRUc9VHx8fDEgMSAwOyAgIC8vIHNsdHUgZCwgcywgdAowMDAwMDEgU1NTU1MgMDAwMDAgT09P T08gT09PT08gT09PT09PIHxCTFRafFJFRz1TIE9GRj1PfHx8PyA/IDE7ICAgICAgICAgLy8gYmx0 eiBzLCBvZmYKMDAwMDAxIFNTU1NTIDAwMDAxIE9PT09PIE9PT09PIE9PT09PTyB8QkdFWnxSRUc9 UyBPRkY9T3x8fD8gPyAxOyAgICAgICAgIC8vIGJnZXogcywgb2ZmCjAwMDAwMSBTU1NTUyAxMDAw MCBPT09PTyBPT09PTyBPT09PT08gfEJMVFpBTHxSRUc9UyBPRkY9T3x8fD8gPyAxOyAgICAgICAv LyBibHR6YWwgcywgb2ZmCjAwMDAwMSBTU1NTUyAxMDAwMSBPT09PTyBPT09PTyBPT09PT08gfEJH RVpBTHxSRUc9UyBPRkY9T3x8fD8gPyAxOyAgICAgICAvLyBiZ2V6YWwgcywgb2ZmCjAwMDAxMCBU VFRUVCBUVFRUVCBUVFRUVCBUVFRUVCBUVFRUVFQgfEp8QURSPVR8fHw/ID8gMjsgICAgICAgICAg ICAgICAgICAvLyBqIHRhcmdldAowMDAwMTEgVFRUVFQgVFRUVFQgVFRUVFQgVFRUVFQgVFRUVFRU IHxKQUx8QURSPVR8fHw/ID8gMjsgICAgICAgICAgICAgICAgLy8gamFsIHRhcmdldAowMDAxMDAg U1NTU1MgVFRUVFQgT09PT08gT09PT08gT09PT09PIHxCRVF8UkVHPVMgUkVHPVQgT0ZGPU98fHw/ ID8gMTsgICAgLy8gYmVxIHMsIHQsIG9mZgowMDAxMDEgU1NTU1MgVFRUVFQgT09PT08gT09PT08g T09PT09PIHxCTkV8UkVHPVMgUkVHPVQgT0ZGPU98fHw/ID8gMTsgICAgLy8gYm5lIHMsIHQsIG9m ZgowMDAxMTAgU1NTU1MgMDAwMDAgT09PT08gT09PT08gT09PT09PIHxCTEVafFJFRz1TIE9GRj1P fHx8PyA/IDE7ICAgICAgICAgLy8gYmxleiBzLCBvZmYKMDAwMTExIFNTU1NTIDAwMDAwIE9PT09P IE9PT09PIE9PT09PTyB8QkdUWnxSRUc9UyBPRkY9T3x8fD8gPyAxOyAgICAgICAgIC8vIGJndHog cywgb2ZmCjAwMTAwMCBTU1NTUyBERERERCBJSUlJSSBJSUlJSSBJSUlJSUkgfEFEREl8UkVHPUQg UkVHPVMgT0ZGPUl8fHwxIDEgMDsgICAvLyBhZGRpIGQsIHMsIGltbQowMDEwMDEgU1NTU1MgRERE REQgSUlJSUkgSUlJSUkgSUlJSUlJIHxBRERJVXxSRUc9RCBSRUc9UyBPRkY9SXx8fDEgMSAwOyAg Ly8gYWRkaXUgZCwgcywgaW1tCjAwMTAxMCBTU1NTUyBERERERCBJSUlJSSBJSUlJSSBJSUlJSUkg fFNMVEl8UkVHPUQgUkVHPVMgT0ZGPUl8fHwxIDEgMDsgICAvLyBzbHRpIGQsIHMsIGltbQowMDEw MTEgU1NTU1MgREREREQgSUlJSUkgSUlJSUkgSUlJSUlJIHxTTFRJVXxSRUc9RCBSRUc9UyBPRkY9 SXx8fDEgMSAwOyAgLy8gc2x0aXUgZCwgcywgaW1tCjAwMTEwMCBTU1NTUyBERERERCBJSUlJSSBJ SUlJSSBJSUlJSUkgfEFOREl8UkVHPUQgUkVHPVMgSU1NPUl8fHwxIDEgMDsgICAvLyBhbmRpIGQs IHMsIGltbQowMDExMDEgU1NTU1MgREREREQgSUlJSUkgSUlJSUkgSUlJSUlJIHxPUkl8UkVHPUQg UkVHPVMgSU1NPUl8fHwxIDEgMDsgICAgLy8gb3JpIGQsIHMsIGltbQowMDExMTAgU1NTU1MgRERE REQgSUlJSUkgSUlJSUkgSUlJSUlJIHxYT1JJfFJFRz1EIFJFRz1TIElNTT1JfHx8MSAxIDA7ICAg Ly8geG9yaSBkLCBzLCBpbW0KMDAxMTExIDAwMDAwIEREREREIElJSUlJIElJSUlJIElJSUlJSSB8 TFVJfFJFRz1EIElNTT1JfHx8MSAxIDA7ICAgICAgICAgIC8vIGx1aSBkLCBpbW0KCi8vIEVPRgo= --Mail-It_--335000660-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 20:19:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA48371 for dynarec-outgoing; Fri, 4 May 2001 20:19:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Thumb Candy (again) From: "M.I.K.e" Message-ID: <000383854216f992_mailit@mail.dynarec.com> References: <0003836d3a6cdb45_mailit@mail.dynarec.com> <010301c0d437$f2576f00$0100a8c0@home.local> Date: Sat, 05 May 2001 05:28:12 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> But I cannot have any respect for NG ;-) >What, just because I told you that I didn't want to recieve any love-letters >from you? Bitchy! ;)) Oh, you're just too sweet! ;-) >There are a few more people in here that I also respect that I didn't >mention yesterday, like Bart and Gwenole. Sorry guys, didn't mean to exclude >you! Especially Bart and Gwenole could be very helpful during the new project since they both know much about 68K emulation! And I forgot to thank Dave and Jules for their great reports! >But after that comment, I'm going to stop respecting you, Mike. ;) Hmm, maybe I shouldn't start war with someone who can use the Matrix quote: "I know jiu-jitsu"... But nothing a good Kellerbier couldn't fix - eh? ;-) >Neil. -- M.I.K.e Jacquin's Postulate on Democratic Government: No man's life, liberty, or property are safe while the legislature is in session. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 20:33:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA48401 for dynarec-outgoing; Fri, 4 May 2001 20:33:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004d01c0d516$9d74acc0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <0003836d3a6cdb45_mailit@mail.dynarec.com> <010301c0d437$f2576f00$0100a8c0@home.local> <000383854216f992_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Thumb Candy (again) Date: Sat, 5 May 2001 04:50:54 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Oh, you're just too sweet! ;-) Stop it, stop it! ;) > Especially Bart and Gwenole could be very helpful during the new project > since they both know much about 68K emulation! Yep, there are some very talented guys in here. I don't think I forgot anyone, but then it's me - I probably did. If so - sorry! > And I forgot to thank Dave and Jules for their great reports! I second that. > >But after that comment, I'm going to stop respecting you, Mike. ;) > > Hmm, maybe I shouldn't start war with someone who can use the Matrix quote: > "I know jiu-jitsu"... Who'd that be? *looks around innocently* > But nothing a good Kellerbier couldn't fix - eh? ;-) Slightly more than the one though, yeah. I've noticed that people who are intoxicated suddenly believe that they are posessed with mystical martial arts powers. I was going to write a really good punchline there, but I got writers block, so I'm going to leave that as some sort of philisophical statement... Although it could have been "which is quite funny until they fall over backwards by trying to raise their foot more than it takes to walk"... Anyway, I've ignored all the technical stuff because today has been a day of celebration for me, marking the last of my assignment hand-ins. I now only have exams! Oh, and I've been drinking. Anyway, I'll go through the... 50+ goddam e-mails and write some replies tomorrow. So instead of the MMM (Mike's Mass Mailings), it'll be from me. :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 20:55:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA48438 for dynarec-outgoing; Fri, 4 May 2001 20:55:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Issues From: "M.I.K.e" Message-ID: <00038385b8999057_mailit@mail.dynarec.com> References: Date: Sat, 05 May 2001 06:01:21 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >A few things have come across my mind on how we want to handle a joint >project like this. This man thinks ahead... >* We've briefly touched on this, but if this gets finished and works as >advertised, there's no question we'll draw attention from commercial >vendors, I wouldn't count on it but it's not impossible. >+ Regardless, the rights to it being open source and free for >noncommercial use must still remain. This is what I demanded when I sold a >license to MZ80, and turned down licensing rights to one company because >they wanted exclusitivity. Sure, the main idea is to provide it to the emulation scene, so there is no reason for exclusive use. >+ Percentage of distribution of the funds would be decided amongst the >contributors. We decide it as a group. We're all adults here, right? I'm >not a greedy bastard and I'm not going to argue over money and I'm >assuming that everyone else won't either. I think we had a discussion some time ago where we more or less agreed that we actually had some kind of communistic ideology, and I will be the last one to argue about money. >+ We may have to sign noncompetitive agreements if we decide to sell. That >means we might not be able to create a Playstation emulator that competes >with their Playstation emulator, but it doesn't mean noncontributors >couldn't. ;-) It just has to stipulate that we can't. I haven't even thought about that case... >+ Some of the code will have to be pitched since it's not ours. The >disassemblers specifically. We'd have to write our own or just not include >them. Well, it depends on the license of the included code of course. If we don't find any code which agrees with our own license then we'd have to write our own modules... >"Derivative works cannot be sold. If someone wants to sell a recompiler, >they have to come up with it themselves. Every line of code must be their >own original work. They can't take our work and sell it - not even a >single line." Hey, how about patenting code white-space? ;-) >So based on how we all feel about this, we can: >1) Keep the project public, open, and free for noncommercial use and >understand that we might sell a license to it and contributors would be >compensated in an open book policy, decided amongst contributors. >2) Individuals can choose not to contribute and not discuss it at all for >fear their ideas may be absorbed. >3) We can decide who the core team is and take the project private >My feelings are that #1 is probably the best option. >Comments? I really don't want any hard feelings here, so we should >probably decide up front what we all think about this. Somehow I feel that having a core team might be better than having a totally open development like the N64 emulator 1964... But we could have public documentation and progress reports until the code is ready to be released. >-->Neil -- M.I.K.e unix soit qui mal y pense --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 20:55:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA48446 for dynarec-outgoing; Fri, 4 May 2001 20:55:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Issues From: "M.I.K.e" Message-ID: <00038385d2076168_mailit@mail.dynarec.com> References: <00b901c0d502$d23910e0$0100a8c0@home.local> <3AF36432.177070F2@austin.rr.com> <001301c0d50d$6c8bdb50$0100a8c0@home.local> Date: Sat, 05 May 2001 06:08:27 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >In fact, let's compile a list of jobs: >Project manager: Neil Bradley >Code Maintainer: Neil Griffiths >Documentation: Victor Moya del Barrio >Scary bearded guy who tries to scare me all the time: Michael Koenig. Cool, I have the longest job description ;-) It seems that apart from being bearded I might also have the GCC work, and I could do a web-based progress report, since I'm one of the webmasters and my HTML should be better than Victor's. If the documentation should be in HTML then I might do that too. I also have my Atari ST around for direct hardware checking... >Team member count: 6 It's growing... >Programmers (alphabetical order): Good, we're all equal so alphabetical order is the best choice. >Bart >Mike >Neil B >Neil G >Tarquin >Victor As NB suggested I also hope that Dave, Gwenole, and Graham consider joining the team. >Neil. -- M.I.K.e What sane person could live in this world and not be crazy? -- Ursula K. LeGuin --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 21:30:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA48486 for dynarec-outgoing; Fri, 4 May 2001 21:30:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 21:48:39 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues In-Reply-To: <3.0.5.32.20010504191537.00815c90@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hopefully :) I've been looking through DRMZ80. Some of the concepts I can > handle, though there are still a lot of things that elude my understanding. > Every good dynarec is complex software, but this project sounds like it's > going to be exceptionally difficult. Perhaps it's just newbie anxiety. Questions? I'll do my best to explain them. Please post them on the list for all to see. > >I completely agree - we don't want people benefitting (money-wise) from our > >hard work. Well spotted! > If this becomes an issue, we might have to seek out the help of an IP > lawyer. Or, read up on the topic and do it ourselves... The BSD license has that already done and I've (unfortunately )got enough legal experience to know how to properly word it. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 21:31:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA48496 for dynarec-outgoing; Fri, 4 May 2001 21:31:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 21:49:09 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues In-Reply-To: <3AF36432.177070F2@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Heh, consider me interested, my preferred areas of coding tend towards the > way-lowlevel stuff. Content is hard, code is pure =) > As for work, point me at something and I'll see what I can do =) Hey - we don't work like that! ;-) Seriously, though. I'd like to match your skill set to the most appropriate portion of the Dynarec. What kinds of things have you done? -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 21:32:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA48505 for dynarec-outgoing; Fri, 4 May 2001 21:32:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 21:50:22 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <0003838530970704_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Okay, I can handle MSVC. Who is going to handle the "gcc"able version of > >it? I'd like to lock-step with someone on that so we don't get divergent. > I'm not a GCC expert, but that's what I have on BeOS, so if no one else uses > GCC, I guess I'm your man. Okay. Then you and Bart can share makefiles. ;-) He'll be doing the DJGPP version (right Bart, or am I mistaken?) -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 21:32:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA48514 for dynarec-outgoing; Fri, 4 May 2001 21:32:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 21:50:39 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <0003838550f24cb4_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >draft ;). If there is nobody which would want (Mike? ;) this part of > >the work I will go for it. > Well, I could do it if I have to... > I guess since I'm probably the least experienced x86 coder here that might be > even a good idea... You or Victor - Just pick one! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 21:47:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA48533 for dynarec-outgoing; Fri, 4 May 2001 21:46:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 5 May 01 01:02:22 -0400 Message-Id: <3.0.5.32.20010504215943.008166f0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 04 May 2001 21:59:43 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: References: <0003838530970704_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Okay. Then you and Bart can share makefiles. ;-) He'll be doing the DJGPP >version (right Bart, or am I mistaken?) Yep, DJGPP. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 21:53:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA48546 for dynarec-outgoing; Fri, 4 May 2001 21:53:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 May 2001 22:12:02 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Mini-coding standard Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-162766878-989039381=:14410" Content-ID: Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-162766878-989039381=:14410 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII Content-ID: As promised, here's a proposed mini coding standard: * Typecast notation is to be used: s_ - Static g_ - Global (public) sg_ - Static global (modular) u8 - 8 Bit unsigned integer u16 - 16 Bit unsigned integer u32 - 32 Bit unsigned integer s8 - 8 Bit signed integer s16 - 16 Bit signed integer s32 - 32 Bit signed integer p - Pointer pp - Pointer to pointer ppp - Pointer to pointer to pointer.... s - Structure e - Enumeration v - Void And when defining structures and enums: S - Structure E - Enumeration * "int", "char" And other basic types are NOT allowed for reasons of portability * 4 Column tab stops (*NOT* spaces!) * Open and closed curly braces are on the same line - not on the end of the line: if (expression) { } else if (expression) { } * More than one expression in a conditional must have each condition surrounded in parenthesis: if ((sg_u8Flag) || (psBarf)) { } * "if"/"while" statements must ALWAYS have curly braces even if there is only one line of operation. * Use macros sparingly, if at all * Never check against == TRUE. Check against != FALSE. "TRUE" Is defined to be nonzero, not any specific value. * Enumerations shall be typedef'd * Thou shalt use ASSERT() where prudent * Recommendation: Use "if (constant == variable)" not "if (variable == constant)" to avoid possible assignment (leaving off a single =. * #ifdef/#endif is not allowed unless group consensus agrees (to help avoid overuse of #ifdefs * Comments of // are preferred in code sections and /* */ in headers, but either is allowed * Nonglobal variables and functions are to be declared as static - always * The code must not compile with any warnings * Maximum warning are used at all times * No platform specific code in the core * Each .h file will have a #ifdef _HEADER_H_ #endif header guard * Variables will not be defined in headers * When avoidable, procedures are always reversed referenced, not forward referenced. In other words, if you need to call a procedure within a module, make sure it's *ABOVE* the reference. Makes things easier to find when doing searches. This isn't always possible, but when possible, this is what should be done. * Each module in the dynarec core will contain header.c's disclaimer * Each procedure in the dynarec core will contain procheader.c's comments - filled in - Indentation already provided below each label in the header. * Function definitions shall look like this: static void ProcedureName(UINT8 u8Var1, UINT32 u32Var2, SBarfPuke *psBarf) { ... } Each formal parameter is on a separate line. * No unused variables! * Thou shalt check all return codes. If return codes aren't used, a comment explicitly stating why it's ignore is required * gotos are only allowed for error cleanup My goal tomorrow is to set up the entire framework with placeholders for a decent amount of the modules. Once that's done, I'll repropose the idea of a script file to help generate target and source structures/opcode generators. Comments? -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --0-162766878-989039381=:14410 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII; NAME="header.c" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: ATTACHMENT; FILENAME="header.c" LyoNCiAqIENvcHlyaWdodCAoYykgMjAwMSwgVGhlIER5bmFyZWMgdGVhbQ0K ICogRGVyaXZlZCBmcm9tIHRoZSBGcmVlQlNEIExpY2Vuc2UsIENvcHlyaWdo dCAoYykgMjAwMSwgRGF2aWQgR3JlZW5tYW4NCiAqIEFsbCByaWdodHMgcmVz ZXJ2ZWQuDQogKg0KICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0DQogKiBtb2Rp ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s bG93aW5nIGNvbmRpdGlvbnMNCiAqIGFyZSBtZXQ6DQogKiAxLiBSZWRpc3Ry aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl IGNvcHlyaWdodA0KICogICAgbm90aWNlIHVubW9kaWZpZWQsIHRoaXMgbGlz dCBvZiBjb25kaXRpb25zLCBhbmQgdGhlIGZvbGxvd2luZw0KICogICAgZGlz Y2xhaW1lci4NCiAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0DQogKiAgICBu b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93 aW5nIGRpc2NsYWltZXIgaW4gdGhlDQogKiAgICBkb2N1bWVudGF0aW9uIGFu ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp YnV0aW9uLg0KICogMy4gUmVkaXN0cmlidXRpb25zIGZvciBjb21tZXJjaWFs IHB1cnBvc2VzIGFyZSBvbmx5IGFsbG93ZWQgaWYgYWdyZWVkIHRvDQogKiAg ICBieSBhbGwgZHluYXJlYyBtZW1iZXJzIG9yIHByb3BlciBsaWNlbnNpbmcg aXMgbWFkZS4NCiAqIDQuIERlcml2YXRpb25zIHVzaW5nIHRoaXMgY29kZSBh cmUgZnJlZSBmb3IgYW55IG5vbmNvbW1lcmNpYWwgdXNlLg0KICoNCiAqIFRI SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBBTkQgQ09O VFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQNCiAqIEFOWSBFWFBSRVNTIE9SIElN UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg VE8sIFRIRQ0KICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UNCiAq IEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhP UiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFDQogKiBGT1IgQU5ZIERJUkVD VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg T1IgQ09OU0VRVUVOVElBTA0KICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P RFMNCiAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQ0KICogSE9XRVZFUiBD QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS IElOIENPTlRSQUNULCBTVFJJQ1QNCiAqIExJQUJJTElUWSwgT1IgVE9SVCAo SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO IEFOWSBXQVkNCiAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YNCiAqIFNV Q0ggREFNQUdFLg0KICoNCiAqLw0KDQo= --0-162766878-989039381=:14410 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII; NAME="procheader.c" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: ATTACHMENT; FILENAME="procheader.c" LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiANCioNCiogICBO YW1lOg0KKiAgICAgIA0KKgkNCiogICBEZXNjcmlwdGlvbjoNCiogICAgIA0K KiAgDQoqICAgU2lkZSBFZmZlY3RzOg0KKiAgICAgDQoqDQoqICAgUmV0dXJu IFZhbHVlOg0KKiAgICAgDQoqIA0KKiAgIEZvcm1hbCBwYXJhbWV0ZXJzOg0K Kg0KKg0KKiAgIEFzc3VtcHRpb25zL3JlcXVpcmVtZW50czoNCiogICAgIA0K Kg0KKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQo= --0-162766878-989039381=:14410-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 23:11:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA48625 for dynarec-outgoing; Fri, 4 May 2001 23:10:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 5 May 01 02:26:18 -0400 Message-Id: <3.0.5.32.20010504232338.008151e0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 04 May 2001 23:23:38 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Mini-coding standard In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >* 4 Column tab stops (*NOT* spaces!) This isn't possible with MS-DOS Editor, unless it would be permissable to run source code submissions through a program which turns every 4 spaces into a tab. > if (expression) > { > } > else > if (expression) > { > } > if (exp1) { } else if (exp2) { } is not allowed? >* Function definitions shall look like this: > >static void ProcedureName(UINT8 u8Var1, > UINT32 u32Var2, > SBarfPuke *psBarf) >{ > ... >} > >Each formal parameter is on a separate line. Do you want the second argument and onward to be aligned on a column with the first, like this: static void Proc(UINT8 x, UINT8 y, ... ? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 23:15:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA48638 for dynarec-outgoing; Fri, 4 May 2001 23:15:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 5 May 01 02:30:34 -0400 Message-Id: <3.0.5.32.20010504232756.0081abb0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 04 May 2001 23:27:56 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Mini-coding standard In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Comments? >Attachment Converted: "d:\eudora\attach\header.c" > >Attachment Converted: "d:\eudora\attach\procheader.c" In the actual project, will the 8.3 file name convention be enforced? I like it, since I work under DOS. It would definitely benefit portability. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 23:21:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA48652 for dynarec-outgoing; Fri, 4 May 2001 23:21:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002c01c0d52d$ce0bd360$6f73393e@menta.net> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: Issues Date: Sat, 5 May 2001 08:37:03 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > A few things have come across my mind on how we want to handle a joint > project like this. > > * We've briefly touched on this, but if this gets finished and works as > advertised, there's no question we'll draw attention from commercial > vendors, and I'd even bet someone like Microsoft would be interested in > it. Playstation games for the XBox? Yeah, that'd work! But in any case, if > we're faced with commercial possibilities, my recommendations are as > follows: > You are scaring me ... > + Regardless, the rights to it being open source and free for > noncommercial use must still remain. This is what I demanded when I sold a > license to MZ80, and turned down licensing rights to one company because > they wanted exclusitivity. > That is an absolutely necesary condition for me. > + We may have to sign noncompetitive agreements if we decide to sell. That > means we might not be able to create a Playstation emulator that competes > with their Playstation emulator, but it doesn't mean noncontributors > couldn't. ;-) It just has to stipulate that we can't. > You could still use the hidden programmer trick (or say it was your small ten years brother) ;))). > + Some of the code will have to be pitched since it's not ours. The > disassemblers specifically. We'd have to write our own or just not include > them. > All this work will take a long time. Do you have an estimation of the time we could need? > So based on how we all feel about this, we can: > > My feelings are that #1 is probably the best option. > #1. #3 would be only if we find really serious problems with other people working in the project in my opinion. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 23:25:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA48668 for dynarec-outgoing; Fri, 4 May 2001 23:25:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003b01c0d52e$5f815fe0$6f73393e@menta.net> From: "Victor Moya del Barrio" To: References: <00b901c0d502$d23910e0$0100a8c0@home.local> <3AF36432.177070F2@austin.rr.com> <001301c0d50d$6c8bdb50$0100a8c0@home.local> Subject: Re: DYNAREC: Issues Date: Sat, 5 May 2001 08:41:08 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > In fact, let's compile a list of jobs: > > Documentation: Victor Moya del Barrio > Damn! I'm doomed ;). I'm not still from writing a very large document and I'm starting again. It seems it is my sin. > Apart from implement it, but I won't be starting that until June - but hey, > that's only a month away! :) > In any case most of the people here is either working or studying so I don't expect a super fast development team ;)). > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 23:30:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA48681 for dynarec-outgoing; Fri, 4 May 2001 23:30:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005801c0d52f$10a67ee0$6f73393e@menta.net> From: "Victor Moya del Barrio" To: References: <0003838530970704_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec - the first testament Date: Sat, 5 May 2001 08:46:06 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Yeah. The initial "burn" will be tougher, tho. > > The start is always hard, but with a clean design it should be easier as soon > as more platforms are to be added. > I know. Just know seems that the Dixie toolset is becoming complet the project started three or four years or so ago (I'm just there a year though). > >I think so. 8 Bit CPUs were a good exercise for me, > > Sure, but it's nothing serious since we could run 8-bit CPUs at full speed > with traditional emulation a few years ago, so there is no need for a > dynarec. > That is not necesarily true. What about NES emulation in the GBA ;) as a small example. > -- > M.I.K.e > Vicotr --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 23:33:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA48691 for dynarec-outgoing; Fri, 4 May 2001 23:33:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 May 2001 08:46:50 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: To: Subject: Re: DYNAREC: 68040 Profile Report In-Reply-To: <0003838557b56011_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Sat, 5 May 2001, M.I.K.e wrote: > >Note: this versions of Basilisk II/JIT was compiled with gcc-3.0 > > BTW, how hard is it to include the JIT into Basilisk II? > I'd like to speed up the BeOS version and the latest snapshot compiles fine > under BeOS, which the latest release didn't... If you use GCC and if calling conventions are the same for the cpu core (i.e. return value in %eax and first parameter in %eax as well), the integration of the JIT should be trivial. Unfortunately, it relies on direct or real addressing which need some hacks with graphics (see. VOSF in Unix/). I dropped support for banked memory addressing because it's at least twice as slow as the direct addressing mode. Basically, what you have to do is: - provide a way to retrieve the faultive address on SIGSEGV signals - port the VOSF/blitters thing to video_beos.cpp. - don't forget to make main_beos.cpp/FlushCodeCache() consistent with the JIT (i.e. call flush_icache). Guidance: in Unix/ sysdeps.h, main_unix.cpp, video_*.{h,cpp} follow DIRECT_ADDRESSING, REAL_ADDRESSING, ENABLE_VOSF slices. [Note: the latest Basilisk snapshot (from CVS) is likely to become the latest release soon...] Bye, Gwenole. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 4 23:39:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA48705 for dynarec-outgoing; Fri, 4 May 2001 23:39:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008f01c0d530$46a5ee80$6f73393e@menta.net> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20010504232756.0081abb0@mailandnews.com> Subject: Re: DYNAREC: Mini-coding standard Date: Sat, 5 May 2001 08:54:46 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Comments? > >Attachment Converted: "d:\eudora\attach\header.c" > > > >Attachment Converted: "d:\eudora\attach\procheader.c" > > In the actual project, will the 8.3 file name convention be enforced? I > like it, since I work under DOS. It would definitely benefit portability. > > And I think than more than 8 characters for a source file starts to become a pain (damn! just look at those window style file and directories /program archive/visual studio pro edition 3/I'm the best file in all this directory.c :PPP). > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 00:01:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA48738 for dynarec-outgoing; Sat, 5 May 2001 00:01:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 5 May 01 03:17:08 -0400 Message-Id: <3.0.5.32.20010505001427.00811e90@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 05 May 2001 00:14:27 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Mini-coding standard In-Reply-To: <008f01c0d530$46a5ee80$6f73393e@menta.net> References: <3.0.5.32.20010504232756.0081abb0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >And I think than more than 8 characters for a source file starts >to become a pain (damn! just look at those window style file and >directories /program archive/visual studio pro edition 3/I'm the best file >in all this directory.c :PPP). It's a pain dealing with long directory names under DOS: cd progra~1\micros~3\vc98\bin Or, for C:\Program Files\Claris Corp\Claris Home Page 2.0\ \progra~1\claris~1\claris~1.0 :P Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 02:21:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA49048 for dynarec-outgoing; Sat, 5 May 2001 02:20:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3AF3C7DA.DC193765@austin.rr.com> Date: Sat, 05 May 2001 02:28:58 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > Heh, consider me interested, my preferred areas of coding tend towards the > > way-lowlevel stuff. Content is hard, code is pure =) > > As for work, point me at something and I'll see what I can do =) > > Hey - we don't work like that! ;-) Seriously, though. I'd like to match > your skill set to the most appropriate portion of the Dynarec. What kinds > of things have you done? Largest projects have been a small OpenGL doom engine, stanknes (in a number of forms) and some stuff for Flatline Studios. Mostly seriously twisted methods of doing graphics and/or general debugging/improvement on a really, REALLY nasty codebase (#include anyone?) I was just starting on my third attempt at finishing off a 6502 core, most of my time with stanknes has been pointed at graphics and sound optimization. So far my attempts at creating grand higher level design structures kind of die out and mutate into codefests right now =P > -->Neil -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 03:43:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA51228 for dynarec-outgoing; Sat, 5 May 2001 03:42:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Thumb Candy (again) From: "M.I.K.e" Message-ID: <000383860b952f4f_mailit@mail.dynarec.com> References: <0003836d3a6cdb45_mailit@mail.dynarec.com> <010301c0d437$f2576f00$0100a8c0@home.local> <000383854216f992_mailit@mail.dynarec.com> <004d01c0d516$9d74acc0$0100a8c0@home.local> Date: Sat, 05 May 2001 06:24:33 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Stop it, stop it! ;) Ok. >Slightly more than the one though, yeah. I've noticed that people who are >intoxicated suddenly believe that they are posessed with mystical martial >arts powers. I was going to write a really good punchline there, but I got >writers block, so I'm going to leave that as some sort of philisophical >statement... Hmm, you've watch "Drunken Master" too many times, did you? >Anyway, I've ignored all the technical stuff because today has been a day of >celebration for me, marking the last of my assignment hand-ins. I now only >have exams! Oh, and I've been drinking. Anyway, I'll go through the... 50+ >goddam e-mails and write some replies tomorrow. So instead of the MMM >(Mike's Mass Mailings), it'll be from me. :o Hey, I didn't write that many in the past few days... >Neil. -- M.I.K.e Maybe you can't buy happiness, but these days you can certainly charge it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 04:10:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA51266 for dynarec-outgoing; Sat, 5 May 2001 04:10:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: primrose.csv.warwick.ac.uk: csuix owned process doing -bs Date: Sat, 5 May 2001 12:26:18 +0100 (BST) From: David Sharp To: Subject: Re: DYNAREC: Issues In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I actually disagree with that. If 1 person does 90% of the work, that's > not fair. My intention there was to give people appropriate distribution > for their work, and we'll all know what each person has contributed and we > can agree amongst ourselves to work it out. Definitely. > Maybe David, Gwenole or Graham might want to join in if we haven't scared > 'em away. ;-) No, I'm not scared away. However, I have a lot of personal obligations at the moment as well as a need to get Tarmac to do something useful so won't commit myself to any other project at the moment. I've worked too hard for a while without a break to take on any extra responsibilities at the moment. That said, I'll be on the list and will probably end up contributing to any discussion or work that appeals. (are we still talking about a 68k->x86 dynarec or something with more platofrms involved?) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 04:19:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA51297 for dynarec-outgoing; Sat, 5 May 2001 04:19:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007901c0d557$71c0b6a0$6f73393e@menta.net> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: Issues Date: Sat, 5 May 2001 13:35:10 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > (are we still talking about a 68k->x86 dynarec or something with more > platofrms involved?) > I think the plan is to start with 68K to x86 and build a framework, a tool set and a set of 'techniques' which will be useful later for the other architectures. It will also have the purpose of making the source and target layers indepent so it could be reused. > Cheers > Dave > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 04:59:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA51344 for dynarec-outgoing; Sat, 5 May 2001 04:59:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec - the first testament From: "M.I.K.e" Message-ID: <0003838cbb7a7be0_mailit@mail.dynarec.com> References: <0003838530970704_mailit@mail.dynarec.com> <3.0.5.32.20010504215943.008166f0@mailandnews.com> Date: Sat, 05 May 2001 14:23:14 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>Okay. Then you and Bart can share makefiles. ;-) He'll be doing the DJGPP >>version (right Bart, or am I mistaken?) >Yep, DJGPP. Good, then I'm not alone ;-) >Bart -- M.I.K.e Some programming languages manage to absorb change, but withstand progress. -- Epigrams in Programming, ACM SIGPLAN Sept. 1982 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 04:59:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA51340 for dynarec-outgoing; Sat, 5 May 2001 04:59:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec - the first testament From: "M.I.K.e" Message-ID: <0003838cb89e9cbb_mailit@mail.dynarec.com> References: Date: Sat, 05 May 2001 14:22:26 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> I guess since I'm probably the least experienced x86 coder here that might >>be even a good idea... >You or Victor - Just pick one! ;-) What do you say Victor? Do you want to do the documentation or do you want to do more coding? I'm sure you have programmed more x86 code than I have and although I'd like to be part of the code generation as well, it's probably better when I stick with some of the easier opcodes or I might be introducing too many errors or cause too much delay... Also if the documentation should be in HTML (which I'd recommend since it should work on all systems) then I'm probably more experienced for that part. >-->Neil -- M.I.K.e ... Had this been an actual emergency, we would have fled in terror, and you would not have been informed. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 10:05:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA51679 for dynarec-outgoing; Sat, 5 May 2001 10:05:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 May 2001 10:24:04 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues In-Reply-To: <00038385b8999057_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >* We've briefly touched on this, but if this gets finished and works as > >advertised, there's no question we'll draw attention from commercial > I wouldn't count on it but it's not impossible. It's actually a bit more probable than you might think. > >+ Some of the code will have to be pitched since it's not ours. The > >disassemblers specifically. We'd have to write our own or just not include > Well, it depends on the license of the included code of course. If we don't > find any code which agrees with our own license then we'd have to write our > own modules... I already have permission from the authors of the x86 disassembler (NASM boys, who has since changed hands) and from Aaron Giles. I know that neither of them would take too kindly to commercial sales of their disassemblers, but we can give them the option of us removing their work or us paying them for their fair share. > >3) We can decide who the core team is and take the project private > >My feelings are that #1 is probably the best option. > >Comments? I really don't want any hard feelings here, so we should > >probably decide up front what we all think about this. > Somehow I feel that having a core team might be better than having a totally > open development like the N64 emulator 1964... Sure. I don't think it'd be a good idea to have something this complex and theoretical in a "design by committee" model. > But we could have public documentation and progress reports until the code is > ready to be released. Sure. My thinking is perhaps we should close the list to just the core developers/contributors - unless of course others want to join in and follow what we're doing. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 10:09:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA51690 for dynarec-outgoing; Sat, 5 May 2001 10:09:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 May 2001 10:27:31 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Mini-coding standard In-Reply-To: <3.0.5.32.20010504232338.008151e0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >* 4 Column tab stops (*NOT* spaces!) > This isn't possible with MS-DOS Editor, unless it would be permissable to > run source code submissions through a program which turns every 4 spaces > into a tab. Can't you use something other than edit.com? I can find you another editor. Perhaps I can give you Brief? It's a far better editor for zillions of reasons, and it's just as easy to use as Edit is. Easier, in fact. > if (exp1) > { > } > else if (exp2) > { > } > is not allowed? I wouldn't think so, and here's why: * Keeping like things aligned makes patterns easy to spot when you're running through code * The two semi-blank lines in the "else" and "if" lines breaks up the monotony of code and makes the blocks much easier to spot * It's not consistent. Why *NOT* make them consistent? > >static void ProcedureName(UINT8 u8Var1, > > UINT32 u32Var2, > > SBarfPuke *psBarf) > Do you want the second argument and onward to be aligned on a column with > the first, like this: > static void Proc(UINT8 x, > UINT8 y, > ... I think I know what you're saying, but it didn't come across. On my screen, now neither are aligned, but yes, I was thinking they were lined up on the same column. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 10:09:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA51700 for dynarec-outgoing; Sat, 5 May 2001 10:09:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 May 2001 10:28:15 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Mini-coding standard In-Reply-To: <3.0.5.32.20010504232756.0081abb0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Attachment Converted: "d:\eudora\attach\procheader.c" > In the actual project, will the 8.3 file name convention be enforced? I > like it, since I work under DOS. It would definitely benefit portability. Well, crap, I didn't think about that. Yes, I'll make every 8.3 enforced. At least everything NOT under the Win32 directory. I still advocate that we have free reign under the platform specific stuff. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 10:13:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA51713 for dynarec-outgoing; Sat, 5 May 2001 10:13:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 May 2001 10:31:47 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues In-Reply-To: <002c01c0d52d$ce0bd360$6f73393e@menta.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > + Some of the code will have to be pitched since it's not ours. The > > disassemblers specifically. We'd have to write our own or just not include > > them. > All this work will take a long time. Do you have an estimation of the time > we could need? I dunno. Probably 3-4 weeks for each disassembler for one person working on it nightly. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 10:15:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA51726 for dynarec-outgoing; Sat, 5 May 2001 10:15:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 May 2001 10:33:31 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: <0003838530970704_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I think so. 8 Bit CPUs were a good exercise for me, > Sure, but it's nothing serious since we could run 8-bit CPUs at full speed > with traditional emulation a few years ago, so there is no need for a > dynarec. That's not necessarily true. One of the biggest Dynarec benefits would be on PocketPC devices running CE. They're strong enough to do rudimentary emulation, but no amount of optimization makes them any faster. Dynarecs would allow something like Galaga (which uses three Z80s) to run full speed on a CE device. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 10:16:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA51735 for dynarec-outgoing; Sat, 5 May 2001 10:16:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 May 2001 10:34:18 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues In-Reply-To: <003b01c0d52e$5f815fe0$6f73393e@menta.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Documentation: Victor Moya del Barrio > Damn! I'm doomed ;). I'm not still from writing a very large > document and I'm starting again. It seems it is my sin. Hopefully the job isn't that big of a deal because it's mostly just taking notes off the list and collecting them for the doc. If you really don't want to do it, Mike, you want to? I would imagine that the documentation would be fairly big up front, but taper off as development got going. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 10:17:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA51744 for dynarec-outgoing; Sat, 5 May 2001 10:17:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 May 2001 10:35:41 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68040 Profile Report In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > BTW, how hard is it to include the JIT into Basilisk II? > > I'd like to speed up the BeOS version and the latest snapshot compiles fine > > under BeOS, which the latest release didn't... > If you use GCC and if calling conventions are the same for the cpu core > (i.e. return value in %eax and first parameter in %eax as well), Hm... I recall GCC uses stack calling conventions. But regardless, I'll certainly make it flexible so that both stack and register calling conventions can be used. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 10:20:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA51757 for dynarec-outgoing; Sat, 5 May 2001 10:20:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 May 2001 10:39:01 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Maybe David, Gwenole or Graham might want to join in if we haven't scared > > 'em away. ;-) > No, I'm not scared away. However, I have a lot of personal obligations at > the moment as well as a need to get Tarmac to do something useful so won't > commit myself to any other project at the moment. I've worked too hard for > a while without a break to take on any extra responsibilities at the > moment. That said, I'll be on the list and will probably end up > contributing to any discussion or work that appeals. Okay - so we'll consider you a guerilla contributor or a lurker for the time being. ;-) > (are we still talking about a 68k->x86 dynarec or something with more > platofrms involved?) The idea is to start with 68K->x86. This will accomplish a few things: * It'll get an x86 opcode generation library created so others can use it * It'll have all the "glue" necessary already * The source level APIs will be honed The most difficult will be the first - without question. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 10:56:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA51798 for dynarec-outgoing; Sat, 5 May 2001 10:56:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004b01c0d58e$e61ff420$6f73393e@menta.net> From: "Victor Moya del Barrio" To: References: <0003838cb89e9cbb_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec - the first testament Date: Sat, 5 May 2001 20:12:06 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> I guess since I'm probably the least experienced x86 coder here that might > >>be even a good idea... > >You or Victor - Just pick one! ;-) > > What do you say Victor? > Do you want to do the documentation or do you want to do more coding? What is the mail equivalent of throwing a coin to decide ;). I have separate feelings. : P > I'm sure you have programmed more x86 code than I have and although I'd like > to be part of the code generation as well, it's probably better when I stick > with some of the easier opcodes or I might be introducing too many errors or > cause too much delay... You should know I like (too much) to write (mainly very extent almost useless docs ;) but I'm also a bit tired with my own project. And I think for the sake of clarity (you have a better english) and size contention (I would double the size of any you could write) MIKe could be a best choice. If he agrees of course, you can still run away ;)). In any case if it is needed a third documentor or a partial time documentor I will be still here as all the other members. I see the benefits of a separation of tasks but we are still working together and we can share the tasks if it is needed. > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 11:04:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA51815 for dynarec-outgoing; Sat, 5 May 2001 11:04:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005101c0d58f$ff9b95c0$6f73393e@menta.net> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: Issues Date: Sat, 5 May 2001 20:19:59 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >* We've briefly touched on this, but if this gets finished and works as > > >advertised, there's no question we'll draw attention from commercial > > I wouldn't count on it but it's not impossible. > > It's actually a bit more probable than you might think. > I first want to see it finished in any case ;). BTW, do you sold MZ80? What kind of company used it? Because of the other aspect of my interest in emulation/binary translation I could be interested in that (that ugly retargetable resourceable virtual machine based static binary translator called Dixie ... I should get paid each time I 'advertise' it ;)) ). > Sure. My thinking is perhaps we should close the list to just the core > developers/contributors - unless of course others want to join in and > follow what we're doing. > I would want to say dynarec was being used too as a general (or in any case 'advanced') emulation list. But since in the last month or months noone posted nothing and when something is posted it is usually by a core or near core member ... I don't know, perhaps another list will be a better idea. This new list would be the closed one and we could leave dynarec for the people interested in the topic. In the year or so it is open we have found many interesting people: Julian, Bart, Dave, Gwenole and all the others. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 11:14:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA51834 for dynarec-outgoing; Sat, 5 May 2001 11:13:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007101c0d591$aa4c3870$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Issues Date: Sat, 5 May 2001 19:30:23 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > It's actually a bit more probable than you might think. Yes, I think that too now. > I already have permission from the authors of the x86 disassembler (NASM > boys, who has since changed hands) and from Aaron Giles. I know that > neither of them would take too kindly to commercial sales of their > disassemblers, but we can give them the option of us removing their work > or us paying them for their fair share. There's that too. The disassembler shouldn't be too hard to write when we've written our layers, but if we use someone's code, perhaps that's an option. > > Somehow I feel that having a core team might be better than having a totally > > open development like the N64 emulator 1964... > > Sure. I don't think it'd be a good idea to have something this complex and > theoretical in a "design by committee" model. No, that's why I'd prefer to get anyone who's going to help onboard now and then "close" the doors, as it were. We can't design this as an open model, if you see what I mean, we have to keep it down to a few people. > Sure. My thinking is perhaps we should close the list to just the core > developers/contributors - unless of course others want to join in and > follow what we're doing. I would suggest creating a different list, but then I wonder what would get posted to this one. Hmm... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 11:14:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA51845 for dynarec-outgoing; Sat, 5 May 2001 11:14:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: primrose.csv.warwick.ac.uk: csuix owned process doing -bs Date: Sat, 5 May 2001 19:30:31 +0100 (BST) From: David Sharp To: Subject: Re: DYNAREC: Dynarec - the first testament In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > That's not necessarily true. One of the biggest Dynarec benefits would be > on PocketPC devices running CE. They're strong enough to do rudimentary > emulation, but no amount of optimization makes them any faster. Dynarecs > would allow something like Galaga (which uses three Z80s) to run full > speed on a CE device. Might work, but I'd counter that by the example of Symbain's JVM for the EPOC platform (used with Psion palmtops). Faced with the problem of running Java fast on a 36MHz ARM with 16Mb RAM tops they ditched the idea of recompilation and had to settle for an ARM asm interpreter (incidentally about the only program for the platform not written in C++). However, CE machines tend to have faster processors and a bit more memory so could well be useful. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 11:19:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA51858 for dynarec-outgoing; Sat, 5 May 2001 11:19:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007701c0d592$6c355570$0100a8c0@home.local> From: "Neil Griffiths" To: References: <0003838cb89e9cbb_mailit@mail.dynarec.com> <004b01c0d58e$e61ff420$6f73393e@menta.net> Subject: Re: DYNAREC: Dynarec - the first testament Date: Sat, 5 May 2001 19:33:02 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Do you want to do the documentation or do you want to do more coding? > What is the mail equivalent of throwing a coin to decide ;). > > I have separate feelings. : P What would you like to do then? > You should know I like (too much) to write (mainly very extent almost > useless docs ;) but I'm also a bit tired with my own project. And I think > for the sake of clarity (you have a better english) and size contention > (I would double the size of any you could write) MIKe could be a best > choice. If he agrees of course, you can still run away ;)). How about you both take on documentation? > In any case if it is needed a third documentor or a partial time documentor > I will be still here as all the other members. I see the benefits of a > separation of tasks but we are still working together and we can share > the tasks if it is needed. Agreed. That's what I want to get clear. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 11:22:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA51911 for dynarec-outgoing; Sat, 5 May 2001 11:22:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 5 May 01 14:38:10 -0400 Message-Id: <3.0.5.32.20010505113525.008198a0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 05 May 2001 11:35:25 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Mini-coding standard In-Reply-To: References: <3.0.5.32.20010504232338.008151e0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Can't you use something other than edit.com? I can find you another >editor. Perhaps I can give you Brief? It's a far better editor for >zillions of reasons, and it's just as easy to use as Edit is. Easier, in >fact. I can try. It probably won't be THAT big of a deal. I'm just so attached to edit.com because I've been using it for a very long time, I like the clean and simple GUI (usually I'm not a huge GUI fan), and I'm really used to the keystroke commands... Ctrl-C and Ctrl-V have grown on me ;) I once thought about writing my own MS-DOS Editor clone, to support tabs (because I can't write Makefiles with edit.com), but I don't think I'll do that. >> >static void ProcedureName(UINT8 u8Var1, >> > UINT32 u32Var2, >> > SBarfPuke *psBarf) >> Do you want the second argument and onward to be aligned on a column with >> the first, like this: >> static void Proc(UINT8 x, >> UINT8 y, >> ... > >I think I know what you're saying, but it didn't come across. On my >screen, now neither are aligned, but yes, I was thinking they were lined >up on the same column. Hehe, they aren't aligned anymore on my screen either. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 11:26:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA51927 for dynarec-outgoing; Sat, 5 May 2001 11:26:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008701c0d593$76f6f9e0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <005101c0d58f$ff9b95c0$6f73393e@menta.net> Subject: DYNAREC: DR68K platforms Date: Sat, 5 May 2001 19:44:03 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Well, seeing as I'm in charge of maintaining the source code, I am now wondering what platform we'll be using - and who's in charge of those platforms... Win32 -----> Neil Bradley -----> Neil Griffiths BeOS -----> Mike DOS -----> Bart Looks like we have no-one for Linux (oh dear, I feel terrible about that! Heh!) Anyway, we need to sort out tasks and so on, but I just want to get the outer layers sorted before we get into that. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 11:26:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA51936 for dynarec-outgoing; Sat, 5 May 2001 11:26:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008801c0d593$788d7860$0100a8c0@home.local> From: "Neil Griffiths" To: References: <3.0.5.32.20010504232338.008151e0@mailandnews.com> <3.0.5.32.20010505113525.008198a0@mailandnews.com> Subject: Re: DYNAREC: Mini-coding standard Date: Sat, 5 May 2001 19:44:39 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I can try. It probably won't be THAT big of a deal. I'm just so attached to > edit.com because I've been using it for a very long time, I like the clean > and simple GUI (usually I'm not a huge GUI fan), and I'm really used to the > keystroke commands... Ctrl-C and Ctrl-V have grown on me ;) How about using Notepad? > I once thought about writing my own MS-DOS Editor clone, to support tabs > (because I can't write Makefiles with edit.com), but I don't think I'll do > that. Been there, done that. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 11:29:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA51947 for dynarec-outgoing; Sat, 5 May 2001 11:29:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec - the first testament From: "M.I.K.e" Message-ID: <000383922cc8146c_mailit@mail.dynarec.com> References: <0003838cb89e9cbb_mailit@mail.dynarec.com> <004b01c0d58e$e61ff420$6f73393e@menta.net> Date: Sat, 05 May 2001 20:52:49 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What is the mail equivalent of throwing a coin to decide ;). Send a 8-bit mail to an arbitrary mail server and see if it gets converted to 7-bit? ;-) >You should know I like (too much) to write (mainly very extent almost >useless docs ;) but I'm also a bit tired with my own project. And I think >for the sake of clarity (you have a better english) and size contention >(I would double the size of any you could write) MIKe could be a best >choice. If he agrees of course, you can still run away ;)). Ok, then count me as documentor from now on. Victor could still be the back- up documentor if we need one. Victor, that was close, eh? ;-) >Victor -- M.I.K.e An Englishman never enjoys himself, except for a noble purpose. -- A. P. Herbert --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 11:29:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA51955 for dynarec-outgoing; Sat, 5 May 2001 11:29:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Issues From: "M.I.K.e" Message-ID: <000383921e57bf9b_mailit@mail.dynarec.com> References: Date: Sat, 05 May 2001 20:48:47 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I already have permission from the authors of the x86 disassembler (NASM >boys, who has since changed hands) and from Aaron Giles. I know that >neither of them would take too kindly to commercial sales of their >disassemblers, but we can give them the option of us removing their work >or us paying them for their fair share. Ok, sounds like a good decision for the time. >Sure. I don't think it'd be a good idea to have something this complex and >theoretical in a "design by committee" model. Indeed. >Sure. My thinking is perhaps we should close the list to just the core >developers/contributors - unless of course others want to join in and >follow what we're doing. Actually that was what I was thinking of. Thus the list could function as our communication tool without the lurkers. If we need a more direct discussion method we could even think of using IRC from time to time. >-->Neil -- M.I.K.e We cannot put the face of a person on a stamp unless said person is deceased. My suggestion, therefore, is that you drop dead. -- James E. Day, Postmaster General --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 11:35:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA51972 for dynarec-outgoing; Sat, 5 May 2001 11:35:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 5 May 01 14:50:53 -0400 Message-Id: <3.0.5.32.20010505114814.00818b90@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 05 May 2001 11:48:14 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Mini-coding standard In-Reply-To: <008801c0d593$788d7860$0100a8c0@home.local> References: <3.0.5.32.20010504232338.008151e0@mailandnews.com> <3.0.5.32.20010505113525.008198a0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >How about using Notepad? I don't like notepad... I prefer text mode ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 11:38:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA51984 for dynarec-outgoing; Sat, 5 May 2001 11:38:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 5 May 01 14:54:01 -0400 Message-Id: <3.0.5.32.20010505115124.008183d0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 05 May 2001 11:51:24 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Issues In-Reply-To: <000383921e57bf9b_mailit@mail.dynarec.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>Sure. My thinking is perhaps we should close the list to just the core >>developers/contributors - unless of course others want to join in and >>follow what we're doing. > >Actually that was what I was thinking of. Thus the list could function as our >communication tool without the lurkers. >If we need a more direct discussion method we could even think of using IRC >from time to time. I like the idea of a closed mailing list as well. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 11:38:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA51995 for dynarec-outgoing; Sat, 5 May 2001 11:38:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00b701c0d595$21ba6140$0100a8c0@home.local> From: "Neil Griffiths" To: References: <3.0.5.32.20010504232338.008151e0@mailandnews.com> <3.0.5.32.20010505113525.008198a0@mailandnews.com> <3.0.5.32.20010505114814.00818b90@mailandnews.com> Subject: Re: DYNAREC: Mini-coding standard Date: Sat, 5 May 2001 19:56:34 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I don't like notepad... I prefer text mode ;) How about loading it, pressing ALT+Space, then X. Apart from the blue, what's the big difference? :P Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 11:40:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA52009 for dynarec-outgoing; Sat, 5 May 2001 11:40:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00bc01c0d595$62b81b10$0100a8c0@home.local> From: "Neil Griffiths" To: References: <000383921e57bf9b_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Issues Date: Sat, 5 May 2001 19:58:16 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Actually that was what I was thinking of. Thus the list could function as our > communication tool without the lurkers. It would be useful, yes. > If we need a more direct discussion method we could even think of using IRC > from time to time. Heh. Neil and me have been discussing this regularly on ICQ for the past few days. IRC is an option if we can all find servers that don't suck ass. I'd suggest using ICQ and using the messageboard options, but I'm not sure that we all have access to ICQ or even want to use it. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 11:42:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA52018 for dynarec-outgoing; Sat, 5 May 2001 11:42:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00b901c0d595$54218460$6f73393e@menta.net> From: "Victor Moya del Barrio" To: References: <000383921e57bf9b_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Issues Date: Sat, 5 May 2001 20:58:08 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Actually that was what I was thinking of. Thus the list could function as our > communication tool without the lurkers. > If we need a more direct discussion method we could even think of using IRC > from time to time. > There is always this nasty time difference though. ;) > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 12:07:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA52053 for dynarec-outgoing; Sat, 5 May 2001 12:07:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <010b01c0d598$bd73c4c0$6f73393e@menta.net> From: "Victor Moya del Barrio" To: References: <000383921e57bf9b_mailit@mail.dynarec.com> <00bc01c0d595$62b81b10$0100a8c0@home.local> Subject: Re: DYNAREC: Issues Date: Sat, 5 May 2001 21:22:32 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Heh. Neil and me have been discussing this regularly on ICQ for the past few > days. IRC is an option if we can all find servers that don't suck ass. I'd > suggest using ICQ and using the messageboard options, but I'm not sure that > we all have access to ICQ or even want to use it. > I have never used it ... The efnet servers I usually use use to work good. I think I know a few more (newnet?) which are not efnet related. And I don't think you would want to come to the Spanish main irc net ;). (IRC-Hispano). > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 12:11:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA52067 for dynarec-outgoing; Sat, 5 May 2001 12:11:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 5 May 01 15:26:37 -0400 Message-Id: <3.0.5.32.20010505122353.0081e700@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 05 May 2001 12:23:53 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Mini-coding standard In-Reply-To: <00b701c0d595$21ba6140$0100a8c0@home.local> References: <3.0.5.32.20010504232338.008151e0@mailandnews.com> <3.0.5.32.20010505113525.008198a0@mailandnews.com> <3.0.5.32.20010505114814.00818b90@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 07:56 PM 5/5/2001 +0100, you wrote: >> I don't like notepad... I prefer text mode ;) > >How about loading it, pressing ALT+Space, then X. Apart from the blue, >what's the big difference? :P The blue and white text :) Also, the text looks a bit "nicer" to me under text mode. I'll go find myself a text editor that works under DOS. It shouldn't be too hard. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 12:12:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA52077 for dynarec-outgoing; Sat, 5 May 2001 12:12:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 5 May 01 15:28:15 -0400 Message-Id: <3.0.5.32.20010505122534.0081d210@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 05 May 2001 12:25:34 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Issues In-Reply-To: <00bc01c0d595$62b81b10$0100a8c0@home.local> References: <000383921e57bf9b_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Heh. Neil and me have been discussing this regularly on ICQ for the past few >days. IRC is an option if we can all find servers that don't suck ass. I'd >suggest using ICQ and using the messageboard options, but I'm not sure that >we all have access to ICQ or even want to use it. Message board options? I'm still using ICQ 98 (time for an upgrade :)). Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 12:28:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA52100 for dynarec-outgoing; Sat, 5 May 2001 12:28:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00dd01c0d59c$0f513a90$0100a8c0@home.local> From: "Neil Griffiths" To: References: <000383921e57bf9b_mailit@mail.dynarec.com> <00b901c0d595$54218460$6f73393e@menta.net> Subject: Re: DYNAREC: Issues Date: Sat, 5 May 2001 20:46:09 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > There is always this nasty time difference though. ;) True. What is everybodies time zones anyway? If we work from GMT, I'm GMT+1 at the moment because of BST (British Summer Time). That would make Mike and Victor GMT + 2. I know that Neil is GMT -7. How about everyone else on the project? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 12:31:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA52134 for dynarec-outgoing; Sat, 5 May 2001 12:31:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ea01c0d59c$796f5dd0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <3.0.5.32.20010504232338.008151e0@mailandnews.com> <3.0.5.32.20010505113525.008198a0@mailandnews.com> <3.0.5.32.20010505114814.00818b90@mailandnews.com> <3.0.5.32.20010505122353.0081e700@mailandnews.com> Subject: Re: DYNAREC: Mini-coding standard Date: Sat, 5 May 2001 20:47:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >How about loading it, pressing ALT+Space, then X. Apart from the blue, > >what's the big difference? :P > > The blue and white text :) If you cut a couple of the wires in your VGA lead, you can reproduce that... ;) > Also, the text looks a bit "nicer" to me under text mode. I'll go find > myself a text editor that works under DOS. It shouldn't be too hard. *coughs* Noooo. ;) If you're using DGJPP, why not use that free IDE thing that comes with it? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 12:31:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA52146 for dynarec-outgoing; Sat, 5 May 2001 12:31:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00eb01c0d59c$7b182bd0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <000383921e57bf9b_mailit@mail.dynarec.com> <3.0.5.32.20010505122534.0081d210@mailandnews.com> Subject: Re: DYNAREC: Issues Date: Sat, 5 May 2001 20:49:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Message board options? Sorry, my bad. I don't know what I was thinking when I wrote that! I meant ICQ chat - kinda like IRC, but computer to computer without the server. And it's not like IRC's DCC - we can actually talk to more than 1 person at one time... > I'm still using ICQ 98 (time for an upgrade :)). If you have ICQ chat as an option, don't bother. That was just me being thick. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 14:47:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA52330 for dynarec-outgoing; Sat, 5 May 2001 14:46:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: primrose.csv.warwick.ac.uk: csuix owned process doing -bs Date: Sat, 5 May 2001 23:02:51 +0100 (BST) From: David Sharp To: Subject: Re: DYNAREC: Issues In-Reply-To: <000383921e57bf9b_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Sure. My thinking is perhaps we should close the list to just the core > >developers/contributors - unless of course others want to join in and > >follow what we're doing. > Actually that was what I was thinking of. Thus the list could function as our > communication tool without the lurkers. > If we need a more direct discussion method we could even think of using IRC > from time to time. I'm confused, why limit access to the list, surely, by definition, lurkers aren't going to intrude on the discussion and if they don't intrude on the discussion what's the problem? Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 15:37:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA52403 for dynarec-outgoing; Sat, 5 May 2001 15:37:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004e01c0d5b6$c4effc00$05ac2ac0@mingming> From: "Graeme Barnes" To: Subject: DYNAREC: Tight timing issues Date: Sat, 5 May 2001 23:57:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6600 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6600 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Someone brought up the issue of tight timing, I lost track who. I'm currently trying to sort out the timing code under RedSquirrel. My emulation currently has a free running interpreted ARM. From this it has to generate the 2mhz system timers used by most RISC OS apps/games. I currently do this using an adaptive mul/div timed against the Windows performance timers. On my 500mhz pIII the ARM runs about 5 mips and the timing is not too bad - the RISC OS clock drifts by about 10 seconds in an hour). Two issues: Some very old RISC OS games assume that the arm is running at exactly 8Mhz (~4Mips) and time themselves from this. Is there a prescribed way to pace the processor emulation? and keep the system timers correct? How do you keep a steady 2mhz system timer with a dynarec core when you're constantly switching between interpreting, compiling, and executing? Cheers, Graeme --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 15:58:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA52430 for dynarec-outgoing; Sat, 5 May 2001 15:58:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <011f01c0d5b9$7444b5e0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <004e01c0d5b6$c4effc00$05ac2ac0@mingming> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 00:16:33 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Someone brought up the issue of tight timing, I lost track who. All of us at one point or another. :) > I'm currently trying to sort out the timing code under RedSquirrel. My > emulation currently has a free running interpreted ARM. From this it has to > generate the 2mhz system timers used by most RISC OS apps/games. I currently > do this using an adaptive mul/div timed against the Windows performance > timers. On my 500mhz pIII the ARM runs about 5 mips and the timing is not > too bad - the RISC OS clock drifts by about 10 seconds in an hour). > > Two issues: > > Some very old RISC OS games assume that the arm is running at exactly 8Mhz > (~4Mips) and time themselves from this. Is there a prescribed way to pace > the processor emulation? and keep the system timers correct? You have to emulate the timer too in the normal fashion. How do you do it in a normal core? It's the same for dynarec. Remember, you're emulating the timer and you know how long an instruction takes - you just have to keep track of it and know if any interrupts or suchlike kick in then you deal with them. The main difference between the standard interpreted emulation and dynarec is the way you execute the code, but the way you emulate the hardware is still the same. > How do you keep a steady 2mhz system timer with a dynarec core when you're > constantly switching between interpreting, compiling, and executing? How do you do it in a standard emulator? The same way. You just run an instruction, check for interrupts and timers, deal with them, run another instruction and so on. Not much difference at all! I hope I explained that okay! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 17:19:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA52513 for dynarec-outgoing; Sat, 5 May 2001 17:19:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004b01c0d5c6$b3f395a0$5da4fea9@burp> From: "Tom Browne" To: References: <004e01c0d5b6$c4effc00$05ac2ac0@mingming> <011f01c0d5b9$7444b5e0$0100a8c0@home.local> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 01:51:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > > Someone brought up the issue of tight timing, I lost track who. > All of us at one point or another. :) I'm actually having to deal with this very problem at work right now, trying to figure out a method of generating _accurate_ MIDI timecode as a secondary task within a pseudo-multitasking application using only a PC with no additional hardware. :) This software has to run accurately on machines from a lowly P133 up to a rather nicer Celeron 400. It wouldn't seem that big of a deal at first, but when you actually look at the MTC format, and realise that neither RTC not PIT will give particularly accurate quarter frames for all 24,25,30,and 30D resolutions, you start to bang your head a little... > > I'm currently trying to sort out the timing code under RedSquirrel. My > > emulation currently has a free running interpreted ARM. From this it has > to > > generate the 2mhz system timers used by most RISC OS apps/games. Which is fair enough if you've got nothing going on, but once you have other stuff happening, keeping the clock consistent is a nightmare... > I currently > > do this using an adaptive mul/div timed against the Windows performance > > timers. On my 500mhz pIII the ARM runs about 5 mips and the timing is not > > too bad - the RISC OS clock drifts by about 10 seconds in an hour). That is pretty good! My own high-resolution timing solution which should give nigh-on perfect results (hm... as I've mapped it out - not implemented, and probably won't be because it's just too much work) involves using both the PIT and the RTC clocks, with the PIT being effectively watchdogged by the RTC interrupt handler, which resets it on the precise point of overflow, which running at over 1MHz doesn't take much over an hour. It also would maintain a 64-bit counter based on the PIT, and deals with the midnight problem. Two problems with this... one is predicting when the PIT is about to overflow, given that the RTC can only run at up to 8192 ticks/sec, and the secondary one is the mandatory "everybody wait" delay before the PIT is reset, which would need to be very precisely done, and would also take time away from the CPU. Doing some performance tests, I found that achieving <200ppm drift was good going in general using the hardware clocks on a modern PC, unless you were casually locking to something far slower, like the RTC calendar clock. The old P100 testbed on my desk gives much better RTC and PIT accuracy than the newer PCs, with a drift of less than 80ppm! That's less than a second for 10 hours... I've also found another nasty thing... running the RTC at 8192 ticks has a very noticeable slowdown on the PC performance! I knew INs and OUTs were bloody slow in pmode, but I didn't think it was as bad as it appears to be! > > Some very old RISC OS games assume that the arm is running at exactly 8Mhz > > (~4Mips) and time themselves from this. Is there a prescribed way to pace > > the processor emulation? and keep the system timers correct? > You have to emulate the timer too in the normal fashion. How do you do it in > a normal core? It's the same for dynarec. Remember, you're emulating the > timer and you know how long an instruction takes Yes, but you also need to know how long it's taking on the PC! > - you just have to keep > track of it and know if any interrupts or suchlike kick in then you deal > with them. At 8MHz, I would have thought this is nigh-on impossible to achieve! You also have the _PC_ interrupts to deal with, which can take an incredibly long time to deal with! > The main difference between the standard interpreted emulation > and dynarec is the way you execute the code, but the way you emulate the > hardware is still the same. I think Graeme's point was that without the very straightforward decoding structure of a pure interpreter, and no possible use of a hardware timer, it becomes necessary to profile the PC's own performance to a very accurate degree also. > > How do you keep a steady 2mhz system timer with a dynarec core when you're > > constantly switching between interpreting, compiling, and executing? > How do you do it in a standard emulator? The same way. You just run an > instruction, check for interrupts and timers, deal with them, run another > instruction and so on. Not much difference at all! Neil - I think the real problem here is doing it efficiently. While it may be possible to achieve, you'll have to be spending a lot of CPU time keeping the timer maintained which could be spent on the core emulation functions. Reg. the whole 68K->x86 thing, I find it all very interesting, but just don't have time to participate "properly" (heh - other than a beta tester for the emulators the core is used in!), unfortunately. When I find the time, I'll no doubt swipe the core of the good stuff for my x86->ARM dynarec. :) - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 17:30:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA52534 for dynarec-outgoing; Sat, 5 May 2001 17:30:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 May 2001 17:48:45 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Tight timing issues In-Reply-To: <004e01c0d5b6$c4effc00$05ac2ac0@mingming> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Someone brought up the issue of tight timing, I lost track who. That would be me... > I'm currently trying to sort out the timing code under RedSquirrel. My > emulation currently has a free running interpreted ARM. From this it has to > generate the 2mhz system timers used by most RISC OS apps/games. I currently > do this using an adaptive mul/div timed against the Windows performance > timers. On my 500mhz pIII the ARM runs about 5 mips and the timing is not > too bad - the RISC OS clock drifts by about 10 seconds in an hour). Man, that's impressive! Running emulation THIS accurate is a major bitch. > Some very old RISC OS games assume that the arm is running at exactly 8Mhz > (~4Mips) and time themselves from this. Is there a prescribed way to pace > the processor emulation? and keep the system timers correct? It really depends on the system. > How do you keep a steady 2mhz system timer with a dynarec core when you're > constantly switching between interpreting, compiling, and executing? That's a VERY broad question to answer, but perhaps the work I did on Retrocade and how I solved it would help. Most video games have a certain framerate, say 60FPS. The main CPU ran at 3072000Hz, so I divided 3072000/60=51200 cycles. I'd execute 51200 cycles, render a frame, and wait for the next 1/60th of a second (driven by interrupt/timer callbacks) to come around. It was a sempahore, so if it took longer to emulate, it'd eventually "catch up". Granted, this works because there's nothing realtime intensive about the video games I've emulated, but it's one approach that may be applicable. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 17:36:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA52549 for dynarec-outgoing; Sat, 5 May 2001 17:36:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 May 2001 17:54:41 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Tight timing issues In-Reply-To: <004b01c0d5c6$b3f395a0$5da4fea9@burp> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Someone brought up the issue of tight timing, I lost track who. > > All of us at one point or another. :) > I'm actually having to deal with this very problem at work right now, trying > to figure out a method of generating _accurate_ MIDI timecode as a secondary > task within a pseudo-multitasking application using only a PC with no > additional hardware. :) > This software has to run accurately on machines from a lowly P133 up to a > rather nicer Celeron 400. It wouldn't seem that big of a deal at first, but > when you actually look at the MTC format, and realise that neither RTC not > PIT will give particularly accurate quarter frames for all 24,25,30,and 30D > resolutions, you start to bang your head a little... MIDI Work? What are you working on? I just got done doing a firmware rewrite on an old synthesizer (Jupiter 6). Yeah, and the problem is even worse when the MIDI interface has its own latencies to deal with. With resolutions down to a second, generating accurate and consistent MTC and MIDI clock is very, VERY tough. > old P100 testbed on my desk gives much better RTC and PIT accuracy than the > newer PCs, with a drift of less than 80ppm! That's less than a second for > 10 hours... That's not too bad. > I've also found another nasty thing... running the RTC at 8192 ticks has a > very noticeable slowdown on the PC performance! I knew INs and OUTs were > bloody slow in pmode, but I didn't think it was as bad as it appears to be! Jeez, in/out is terrible if you're not running @ ring 0. You're going through a bunch of VXDs to get there. The other problem reading the RTC is the OS needs to block the register # and read/write windows so nothing gets clobbered. Can you tell I've done a stint or two in OS and BIOS development. ;-) > > - you just have to keep > > track of it and know if any interrupts or suchlike kick in then you deal > > with them. > At 8MHz, I would have thought this is nigh-on impossible to achieve! You > also have the _PC_ interrupts to deal with, which can take an incredibly > long time to deal with! Especially if you're doing something multimedia or audio based, in which case you're doing a LOT of PCI traffic and hard drive traffic, and it's even worse when the IDE HD I/O is programmed I/O. > > instruction, check for interrupts and timers, deal with them, run another > > instruction and so on. Not much difference at all! > Neil - I think the real problem here is doing it efficiently. While it may > be possible to achieve, you'll have to be spending a lot of CPU time keeping > the timer maintained which could be spent on the core emulation functions. And sometimes you can't predict how long the time will be. Things like MUL/DIV instructions may or may not take consistent times, which makes it really tough to be 100% accurate unless you model the actual gating on the target CPU. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 17:37:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA52560 for dynarec-outgoing; Sat, 5 May 2001 17:37:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <015b01c0d5c7$43c3d690$0100a8c0@home.local> From: "Neil Griffiths" To: References: <004e01c0d5b6$c4effc00$05ac2ac0@mingming> <011f01c0d5b9$7444b5e0$0100a8c0@home.local> <004b01c0d5c6$b3f395a0$5da4fea9@burp> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 01:54:47 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > You have to emulate the timer too in the normal fashion. How do you do it > in > > a normal core? It's the same for dynarec. Remember, you're emulating the > > timer and you know how long an instruction takes > > Yes, but you also need to know how long it's taking on the PC! No you don't. Perhaps to your way of thinking, not to mine. Let's see if I can explain my way of thinking: Let's assume that we know how many clocks that each 68k instruction will take. Let's assume that there is an interrupt generated every 15 ticks and the code has not been executed before. Instruction 1 takes 6 clocks, the dynarec generates the code, executes it and then returns. The core checks if 15 ticks have occurred. It hasn't. Instruction 2 takes 13 ticks, the dynarec generates the code, executes it and then returns. The core checks if 15 ticks have occurred since the last interrupt. They have. The interrupt code gets executed. It returns... And so on. Now, what's the problem? I don't see that you need to slow down the whole computer - doing it my way means that the WHOLE emulation gets slowed down if anything gets slowed down - but the timing inside the emulator will stay 100% accurate. This is great for Windows emulators too because if someone swaps out of the emulator, nothing gets screwed up. If you can think of reasons why my technique wouldn't work, I'd be happy to hear them - because I think it would. Heh, but don't tell me reasons why it's crap. ;) No, actually, do. :) > At 8MHz, I would have thought this is nigh-on impossible to achieve! You > also have the _PC_ interrupts to deal with, which can take an incredibly > long time to deal with! My way doesn't have to deal with them... :P > I think Graeme's point was that without the very straightforward decoding > structure of a pure interpreter, and no possible use of a hardware timer, it > becomes necessary to profile the PC's own performance to a very accurate > degree also. But I don't see the need to take the host PC's speed into regard, other than to slow it down. My method, described above, should keep the emulation speed 100% intact. > Neil - I think the real problem here is doing it efficiently. While it may > be possible to achieve, you'll have to be spending a lot of CPU time keeping > the timer maintained which could be spent on the core emulation functions. Perhaps. I really don't think my method is slow though. > Reg. the whole 68K->x86 thing, I find it all very interesting, but just > don't have time to participate "properly" (heh - other than a beta tester > for the emulators the core is used in!), unfortunately. When I find the > time, I'll no doubt swipe the core of the good stuff for my x86->ARM > dynarec. :) Thief! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 17:56:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA52589 for dynarec-outgoing; Sat, 5 May 2001 17:56:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000d01c0d5c9$f6d4fc30$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 02:14:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > And sometimes you can't predict how long the time will be. Things like > MUL/DIV instructions may or may not take consistent times, which makes it > really tough to be 100% accurate unless you model the actual gating on the > target CPU. ;-) Trust you to piss on my bonfire. ;) Still, I hold that if I could find a way to make it work, it would be bloody good emulation. :P Hmm, I never thought about the whole MUL/DIV not taking the same amount of time. However, if the only time difference is when dealing with memory addresses and registers, then I can model this. I don't want to give up on a good idea. :-P Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 18:53:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA52658 for dynarec-outgoing; Sat, 5 May 2001 18:53:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Happy Birthday NB! From: "M.I.K.e" Message-ID: <0003839864b561f5_mailit@mail.dynarec.com> Date: Sun, 06 May 2001 04:17:58 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi Neil, I know it's too early for you, but in Germany it's already Sunday, so: Happy Birthday Neil! -- M.I.K.e "You can't teach people to be lazy - either they have it, or they don't." -- Dagwood Bumstead --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 18:55:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA52674 for dynarec-outgoing; Sat, 5 May 2001 18:55:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <014501c0d5d2$1dbf7930$0100a8c0@home.local> From: "Neil Griffiths" To: References: <0003839864b561f5_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Happy Birthday NB! Date: Sun, 6 May 2001 03:13:06 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I know it's too early for you, but in Germany it's already Sunday, so: > > Happy Birthday Neil! Good point - Happy Birthday Neil! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 5 21:34:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA52824 for dynarec-outgoing; Sat, 5 May 2001 21:34:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 5 May 2001 21:50:32 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues Message-ID: <20010505215032.A10635@hetfield.patsoffice.com> References: <3.0.5.32.20010504191537.00815c90@mailandnews.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-md5; protocol="application/pgp-signature"; boundary="liOOAslEiF7prFVr" Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from neil@synthcom.com on Fri, May 04, 2001 at 09:48:39PM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --liOOAslEiF7prFVr Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable > > If this becomes an issue, we might have to seek out the help of an IP > > lawyer. Or, read up on the topic and do it ourselves... >=20 > The BSD license has that already done and I've (unfortunately )got enough > legal experience to know how to properly word it. I can vouch for Neil's license text. When I wrote m6809, it the m6502 license was so good that all I did was change m6502 to m6809 and Neil Bradley to me. As for handling the license issues, I'd suggest leaving that up to Neil as well. He's got the experience and understanding of the issues involved that I suspect many of us don't have (I know I didn't.) So, in summation, "In Neil I trust!" I can't recall him ever steering me wrong before. :-) Pat --=20 "You are not a beautiful and unique snowflake!" - Tyler Durden --liOOAslEiF7prFVr Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.4 (GNU/Linux) Comment: For info see http://www.gnupg.org iEYEARECAAYFAjr02BgACgkQrNiXbbxh4Oeb1gCfZp3/aql2hUqNaZrtidfEUKe+ vzAAn0x69VDvEGJplT5uLd9J1hIJTtOz =v+C7 -----END PGP SIGNATURE----- --liOOAslEiF7prFVr-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 01:58:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA53044 for dynarec-outgoing; Sun, 6 May 2001 01:58:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00b401c0d60f$4ce678c0$5da4fea9@burp> From: "Tom Browne" To: References: <000d01c0d5c9$f6d4fc30$0100a8c0@home.local> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 10:31:15 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > > And sometimes you can't predict how long the time will be. Things like > > MUL/DIV instructions may or may not take consistent times, which makes it > > really tough to be 100% accurate unless you model the actual gating on the > > target CPU. ;-) > Trust you to piss on my bonfire. ;) Nice one NB... :) > Still, I hold that if I could find a way to make it work, it would be bloody > good emulation. :P It can be done, but as NB says, I would have thought it would take an extremely accurate model of the CPU. And I was under the impression the fastest emulators tend to take shortcuts whenever they can! I take your point about the potential irrelevancy of the PC clock (my mind is locked onto the realtime sync mindset right now with all the things I'm working on - both at home and work), but maintaining an 8MHz super-accurate software clock as I see it could easily suck something like 30% of a fast CPU... - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 02:24:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA53228 for dynarec-outgoing; Sun, 6 May 2001 02:24:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00b701c0d612$d6bc6480$5da4fea9@burp> From: "Tom Browne" To: References: Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 10:56:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > MIDI Work? What are you working on? I just got done doing a firmware > rewrite on an old synthesizer (Jupiter 6). Mix automation software... to be more precise Amek SuperTrue 4, for which I'm now mostly responsible, after having rewritten large chunks of the graphics code to get some dramatic speedups... :) Whilst it clearly doesn't make a lot of sense to have the console as timecode master in a real studio, it is still bloody useful for debugging and showcasing, etc... > Yeah, and the problem is even worse when the MIDI interface has its own > latencies to deal with. With resolutions down to a second, generating > accurate and consistent MTC and MIDI clock is very, VERY tough. I really love the way the bastards that came up with MTC decided that 1 byte received = a quarter frame has passed. In a pseudo-multitasking environment, that's a whole lot of fun to do when your routine is being called only, say 110 times/sec, with no real consistency, and then I've got three different timecode formats which I have to continuously be switching between... internal, RTC, and MTC. It wouldn't be a problem if I could just have the RTC interrupt handler I've written call a C function, but in practice, this seems to be _extremely_ flaky, more than half the time causing 0Es... any ideas why? I'm backing up the flags, and all the registers that should matter... There is a "third way", I guess... write all the timecode stuff in assembler. > > old P100 testbed on my desk gives much better RTC and PIT accuracy than the > > newer PCs, with a drift of less than 80ppm! That's less than a second for > > 10 hours... > That's not too bad. For internal TC, it's not too bad. Loosely locking to the calendar clock would be much better (think 1 second / month) but also a fair amount of work. > > I've also found another nasty thing... running the RTC at 8192 ticks has a > > very noticeable slowdown on the PC performance! I knew INs and OUTs were > > bloody slow in pmode, but I didn't think it was as bad as it appears to be! > Jeez, in/out is terrible if you're not running @ ring 0. Well, it's a 32-bit DPMI application... using eeevil BC45 with the "PowerPack". :)) We've got a copy of Watcom on the shelf. No, I don't know why we're still using BC45! > Can you tell I've done a stint or two in OS and BIOS development. ;-) Yep. :) BIOS dev. is something I may need to go into for my audio project... a custom BIOS for an i815EP chipset motherboard to use in an embedded Linux app? Hmm... :) > > > - you just have to keep > > > track of it and know if any interrupts or suchlike kick in then you deal > > > with them. > > At 8MHz, I would have thought this is nigh-on impossible to achieve! You > > also have the _PC_ interrupts to deal with, which can take an incredibly > > long time to deal with! > Especially if you're doing something multimedia or audio based, in which > case you're doing a LOT of PCI traffic and hard drive traffic, and it's > even worse when the IDE HD I/O is programmed I/O. HD access is evil! I don't know how you're meant to maintain a 1ms critical thread in Win2K when you've got virtual memory to worry about as well! Heh... not my problem... that's for the team working on the new digital console to worry about. :) - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 02:46:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA53264 for dynarec-outgoing; Sun, 6 May 2001 02:46:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <200105061002.UAA22833@mail.alphalink.com.au> Date: Sun, 06 May 2001 20:00:25 +1000 To: dynarec@dynarec.com From: Evan Clarke Subject: Re: DYNAREC: Issues X-Mailer: Opera 5.11 build 904 X-Priority: 3 (Normal) Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com 6/05/01 8:02:51 AM, David Sharp wrote: > >> >Sure. My thinking is perhaps we should close the list to just the core >> >developers/contributors - unless of course others want to join in and >> >follow what we're doing. >> Actually that was what I was thinking of. Thus the list could function as our >> communication tool without the lurkers. >> If we need a more direct discussion method we could even think of using IRC >> from time to time. > >I'm confused, why limit access to the list, surely, by definition, lurkers >aren't going to intrude on the discussion and if they don't intrude on the >discussion what's the problem? > >Cheers >Dave > As a fellow lurker, I can only agree with this. I am _extremely_ interested in the whole process, and I cannot see what harm could come about from me 'listening' in. In the worst case senario I might actually have something useful to contribute. BTW: Is archive.synthcom.com down? I finally found someone who lives near me (Australia) with a cable connection willing to download it, and all he gets is connection refused. If the ftp is down due to people leeching too many roms, can somebody set up a server with _just_ the avi's on it? -- Evan Clarke --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 03:20:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA53303 for dynarec-outgoing; Sun, 6 May 2001 03:20:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003601c0d618$febf8f60$05ac2ac0@mingming> From: "Graeme Barnes" To: References: <004e01c0d5b6$c4effc00$05ac2ac0@mingming> <011f01c0d5b9$7444b5e0$0100a8c0@home.local> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 11:40:37 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6600 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6600 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You have to emulate the timer too in the normal fashion. How do you do it in > a normal core? It's the same for dynarec. Remember, you're emulating the > timer and you know how long an instruction takes - you just have to keep > track of it and know if any interrupts or suchlike kick in then you deal > with them. The main difference between the standard interpreted emulation > and dynarec is the way you execute the code, but the way you emulate the > hardware is still the same. It's easy enough to get the 2mhz timers correct wrt to the Arm clock, although in RedSquirrel that's not so important as it's trying to emulate many different systems from a lowly Arm2 (8Mhz ~4Mips) up to a StrongArm (287Mhz ??? mips). Some of which have instruction/data caches and tlbs for address lookup which effectively make timing impossible. This is a _good_thing_ from my point of view. Ok the StrongArm is a bit of a fantasy atm but hopefully David will solve that this summer. What matters is that the timers are correct wrt real time as they have to be fairly accurate wrt sound interrupts which are real time as they're generated by Windows (Ok maybe real time is a bit strong :-) > > How do you keep a steady 2mhz system timer with a dynarec core when you're > > constantly switching between interpreting, compiling, and executing? > > How do you do it in a standard emulator? The same way. You just run an > instruction, check for interrupts and timers, deal with them, run another > instruction and so on. Not much difference at all! Because I'm generating the system clock from the processor clock, if the processor clock suddenly stops (compiling) or goes faster (executing) the system/processor timing adjuster will get very confused. It currently relys on the Arm core executing at a fairly steady rate. Yes, if I switch to another task or start an mp3 it hiccups - especially in sound - but that's Ok, I'm doing something else. However it should be consistent if I'm playing a game. Do any other emulators deal with this issue? The other issue wrt running an Arm at 4Mips is the interesting one for me. How do I write an emulator that runs at 4Mips, whether interpreted or dynarec, on a 300Mhz, 700Mhz, or 1200Mhz machine? Bear in mind that it has to process sound interrupts at around 7-9ms intervals so it can't sleep. I need to insert some sort of wait states I suppose. I've considered variable video frame rate but it's a bit coarse. Cheers, Graeme --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 04:45:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA53403 for dynarec-outgoing; Sun, 6 May 2001 04:45:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003601c0d624$8a6bef30$0100a8c0@home.local> From: "Neil Griffiths" To: References: <000d01c0d5c9$f6d4fc30$0100a8c0@home.local> <00b401c0d60f$4ce678c0$5da4fea9@burp> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 13:00:45 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Trust you to piss on my bonfire. ;) > > Nice one NB... :) Oh, nice.... ;) > > Still, I hold that if I could find a way to make it work, it would be > bloody > > good emulation. :P > > It can be done, but as NB says, I would have thought it would take an > extremely accurate model of the CPU. And I was under the impression the > fastest emulators tend to take shortcuts whenever they can! I don't think it will. I think it will only need to know the timing difference between reading from memory, reading from a register and reading from the cache. Oh, and ports as well. If you use that for your timing model, Bob's your auntie's best friend's sister's mother's uncle. Perhaps. ;) > I take your point about the potential irrelevancy of the PC clock (my mind > is locked onto the realtime sync mindset right now with all the things I'm > working on - both at home and work), but maintaining an 8MHz super-accurate > software clock as I see it could easily suck something like 30% of a fast > CPU... I had figured as such about being locked onto realtime. I can see where you're coming from with that, it's just that I don't think it's necessary. I also don't think it would suck up 30%, but it could suck up about 10% - I'll grant that. However, if you want the timing perfect, you have to sacrifice something - and I believe my method will give the ultimate perfection at a small cost of speed. When we have written DR68K, I *will* change it to use my timing model. That way, not only can I prove it, but we'll have a dynarec core with superb timing. Which would rock. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 05:00:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA53428 for dynarec-outgoing; Sun, 6 May 2001 05:00:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003c01c0d626$b8e5c0a0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <004e01c0d5b6$c4effc00$05ac2ac0@mingming> <011f01c0d5b9$7444b5e0$0100a8c0@home.local> <003601c0d618$febf8f60$05ac2ac0@mingming> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 13:18:37 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > It's easy enough to get the 2mhz timers correct wrt to the Arm clock, > although in RedSquirrel that's not so important as it's trying to emulate > many different systems from a lowly Arm2 (8Mhz ~4Mips) up to a StrongArm > (287Mhz ??? mips). Some of which have instruction/data caches and tlbs for > address lookup which effectively make timing impossible. This is a > _good_thing_ from my point of view. What, making timing tough is a good thing? You're a sick man, Graeme, you're a sick man! Mind you, I'd already figured that out because of your emulation of the Archimedes. Heh. ;)) > Ok the StrongArm is a bit of a fantasy atm but hopefully David will solve > that this summer. What matters is that the timers are correct wrt real time > as they have to be fairly accurate wrt sound interrupts which are real time > as they're generated by Windows (Ok maybe real time is a bit strong :-) Heh. But I still hold that my method is perhaps the best way to do it, though I definitely see why you're doing it your way. I will demonstrate that my way works (or I will demonstrate that it's impossible) in the future when we finish DR68K. > Because I'm generating the system clock from the processor clock, if the > processor clock suddenly stops (compiling) or goes faster (executing) the > system/processor timing adjuster will get very confused. It currently relys > on the Arm core executing at a fairly steady rate. Yes, if I switch to > another task or start an mp3 it hiccups - especially in sound - but that's > Ok, I'm doing something else. However it should be consistent if I'm playing > a game. Do any other emulators deal with this issue? I'm not sure, to be honest, Neil Bradley would be the best person to answer - but it's his birthday today, so perhaps he won't be able to answer that today. Also, my method would also cause the sound to hiccup (slow down, in fact) if you swap tasks, but there would be no problems with timing - everything inside the emulation would still be perfectly timed, just slower. And when you swap back into the task, you'd be running at full speed again. > The other issue wrt running an Arm at 4Mips is the interesting one for me. > How do I write an emulator that runs at 4Mips, whether interpreted or > dynarec, on a 300Mhz, 700Mhz, or 1200Mhz machine? Bear in mind that it has > to process sound interrupts at around 7-9ms intervals so it can't sleep. I > need to insert some sort of wait states I suppose. I've considered variable > video frame rate but it's a bit coarse. Agreed. Not sure. Let me think about that one... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 05:46:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA53485 for dynarec-outgoing; Sun, 6 May 2001 05:46:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002301c0d62f$0d003be0$5da4fea9@burp> From: "Tom Browne" To: References: <000d01c0d5c9$f6d4fc30$0100a8c0@home.local> <00b401c0d60f$4ce678c0$5da4fea9@burp> <003601c0d624$8a6bef30$0100a8c0@home.local> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 14:17:40 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > It can be done, but as NB says, I would have thought it would take an > > extremely accurate model of the CPU. And I was under the impression the > > fastest emulators tend to take shortcuts whenever they can! > I don't think it will. I think it will only need to know the timing > difference between reading from memory, reading from a register and reading > from the cache. Oh, and ports as well. When you go beyond the processors of ancient times, you also have order-of-execution, memory alignment, and caching to worry about, to name a few... it basically comes down to a cycle-accurate profile, which is never, ever going to be fast. If you truely want to have a scalable core, it has to be applicable to modern processors as well... > > I take your point about the potential irrelevancy of the PC clock (my mind > > is locked onto the realtime sync mindset right now with all the things I'm > > working on - both at home and work), but maintaining an 8MHz > super-accurate > > software clock as I see it could easily suck something like 30% of a fast > > CPU... > I had figured as such about being locked onto realtime. I can see where > you're coming from with that, it's just that I don't think it's necessary. > I also don't think it would suck up 30%, but it could suck up about 10% - > I'll grant that. Talking realtime, I estimated optimistically how many cycles per second it would take to maintain an 8MHz clock, shooting for 100ppm accuracy, and using an 800MHz CPU. This came to about 30% CPU usage. There are probably a few tricks you can use to reduce this further, but I think 10% is highly unrealistic. If you can maintain this _realtime_ clock using 10 cycles/tick whilst other stuff is happening, I want to see the code that works on more than one exact combination of CPU and motherboard. Regardless of the method, you still need to keep the timer maintained fast enough to keep up with the rest of the emulator! Fundamentally, a dynarec is meant to be spending >90% of its time executing native code... this is what makes it fast. If it was possible to work out the timing during the recompilation, and the times remained constant, then everything would be peachy... IF... you were working out the processor clock, and just dealing with a few simple instructions. uint64 CPUcounter; // cycle counter a = b + 5; // recompiled code CPUcounter += 3; // calculated by dynarec virtual profiler c = a * 21; // recompiled code CPUcounter += 12; // calculated by dynarec virtual profiler ... But you might not be. You may need the speed of an external clock... one which is anything BUT an exact divider of the CPU clock. This is where the nightmare really begins... using a bit of shifting to retain some precision, combined with a lot of lookup, it may be possible to get in the ballpark of accurate, but it's not going to be perfect at any decent speed. Onto the trickier stuff, memory misaligns are something you can't always pre-calculate timings for, realistically - you'd kill the performance of the dynarec doing things like block copies and writes, because when running the natively generated code you'd sometimes have to keep checking where the registers pointed to before such an operation takes place, and know how long it would have taken to do on the real machine. > However, if you want the timing perfect, you have to > sacrifice something - and I believe my method will give the ultimate > perfection at a small cost of speed. Ultimate perfection is a phrase you don't use unless you've eliminated uncertainty from the equation. :) 1ppm jitter is perfect in my book. AFAIK, not achieveable for MHz speeds without liquid nitrogen cooling, however... > When we have written DR68K, I *will* change it to use my timing model. That > way, not only can I prove it, but we'll have a dynarec core with superb > timing. Which would rock. :) Show meee the money! :) - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 06:33:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA53549 for dynarec-outgoing; Sun, 6 May 2001 06:33:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008e01c0d633$4bdc9f80$6f73393e@menta.net> From: "Victor Moya del Barrio" To: References: <000d01c0d5c9$f6d4fc30$0100a8c0@home.local> <00b401c0d60f$4ce678c0$5da4fea9@burp> <003601c0d624$8a6bef30$0100a8c0@home.local> <002301c0d62f$0d003be0$5da4fea9@burp> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 15:48:55 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > When you go beyond the processors of ancient times, you also have > order-of-execution, memory alignment, and caching to worry about, to name a > few... it basically comes down to a cycle-accurate profile, which is never, > ever going to be fast. > > If you truely want to have a scalable core, it has to be applicable to > modern processors as well... > Not necesarely true. If we have a very hard problem figuring and emulating the timing of a modern CPU someone implementing a program relying in an exact timing for this CPU will have the same problem. In any case I think in modern very fast, and with all those mechanism which make timing so hard to calculate, CPUs a program that will need a very accurate timing will be very hard to find. The oposite happens in the old less powerful CPUs where it is far easier to find such a programs. > Talking realtime, I estimated optimistically how many cycles per second it > would take to maintain an 8MHz clock, shooting for 100ppm accuracy, and > using an 800MHz CPU. This came to about 30% CPU usage. There are probably > a few tricks you can use to reduce this further, but I think 10% is highly > unrealistic. If you can maintain this _realtime_ clock using 10 cycles/tick > whilst other stuff is happening, I want to see the code that works on more > than one exact combination of CPU and motherboard. > I think it was Bedichek ... (small break for search the info) ... wrong ... In a paper from the 93 it is described TIBBIT (timing insensitive binary to bynary translation of real time system) which studies this problem. It is the implementation of a static binary translator which is intend for emulating real time machines and programs. It shows some numbers about how expensive can be a given accuracy level and the precision it has in the point level and in the general level. I think it is in my BT 'library' > - Tom. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 06:34:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA53559 for dynarec-outgoing; Sun, 6 May 2001 06:34:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00a601c0d633$6f59b4c0$6f73393e@menta.net> From: "Victor Moya del Barrio" To: References: <0003839864b561f5_mailit@mail.dynarec.com> <014501c0d5d2$1dbf7930$0100a8c0@home.local> Subject: Re: DYNAREC: Happy Birthday NB! Date: Sun, 6 May 2001 15:49:55 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I know it's too early for you, but in Germany it's already Sunday, so: > > > > Happy Birthday Neil! > > Good point - Happy Birthday Neil! :) > That is. I hope it is a happy birthday ;). > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 06:45:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA53581 for dynarec-outgoing; Sun, 6 May 2001 06:45:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008501c0d635$5ae98cc0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <000d01c0d5c9$f6d4fc30$0100a8c0@home.local> <00b401c0d60f$4ce678c0$5da4fea9@burp> <003601c0d624$8a6bef30$0100a8c0@home.local> <002301c0d62f$0d003be0$5da4fea9@burp> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 15:02:23 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > When you go beyond the processors of ancient times, you also have > order-of-execution, memory alignment, and caching to worry about, to name a > few... it basically comes down to a cycle-accurate profile, which is never, > ever going to be fast. You suck. ;) How about the guys at Eurocopter, who I worked with (as you know!) who used the 68K? We had to work right down to the cycles. If they can do it, so can I. :P > If you truely want to have a scalable core, it has to be applicable to > modern processors as well... It would. > Talking realtime, I estimated optimistically how many cycles per second it > would take to maintain an 8MHz clock, shooting for 100ppm accuracy, and > using an 800MHz CPU. This came to about 30% CPU usage. There are probably > a few tricks you can use to reduce this further, but I think 10% is highly > unrealistic. If you can maintain this _realtime_ clock using 10 cycles/tick > whilst other stuff is happening, I want to see the code that works on more > than one exact combination of CPU and motherboard. And you will. > Regardless of the method, you still need to keep the timer maintained fast > enough to keep up with the rest of the emulator! Fundamentally, a dynarec > is meant to be spending >90% of its time executing native code... this is > what makes it fast. If it was possible to work out the timing during the > recompilation, and the times remained constant, then everything would be > peachy... IF... you were working out the processor clock, and just dealing > with a few simple instructions. > > uint64 CPUcounter; // cycle counter > > a = b + 5; // recompiled code > CPUcounter += 3; // calculated by dynarec virtual profiler > c = a * 21; // recompiled code > CPUcounter += 12; // calculated by dynarec virtual profiler > ... Which is my plan > But you might not be. You may need the speed of an external clock... one > which is anything BUT an exact divider of the CPU clock. This is where the > nightmare really begins... using a bit of shifting to retain some precision, > combined with a lot of lookup, it may be possible to get in the ballpark of > accurate, but it's not going to be perfect at any decent speed. Perhaps. We'll see. > > However, if you want the timing perfect, you have to > > sacrifice something - and I believe my method will give the ultimate > > perfection at a small cost of speed. > > Ultimate perfection is a phrase you don't use unless you've eliminated > uncertainty from the equation. :) Nah, I'm perfect - just look at me! Oh, hang on... don't. :) > > When we have written DR68K, I *will* change it to use my timing model. > That > > way, not only can I prove it, but we'll have a dynarec core with superb > > timing. Which would rock. :) > > Show meee the money! :) I'm going to. So there. Nyah. :P Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 08:23:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA53679 for dynarec-outgoing; Sun, 6 May 2001 08:23:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005001c0d644$f851bb40$5da4fea9@burp> From: "Tom Browne" To: References: <000d01c0d5c9$f6d4fc30$0100a8c0@home.local> <00b401c0d60f$4ce678c0$5da4fea9@burp> <003601c0d624$8a6bef30$0100a8c0@home.local> <002301c0d62f$0d003be0$5da4fea9@burp> <008e01c0d633$4bdc9f80$6f73393e@menta.net> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 16:55:26 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > When you go beyond the processors of ancient times, you also have > > order-of-execution, memory alignment, and caching to worry about, to name a > > few... it basically comes down to a cycle-accurate profile, which is never, > > ever going to be fast. > > If you truely want to have a scalable core, it has to be applicable to > > modern processors as well... > Not necesarely true. If we have a very hard problem figuring and > emulating the timing of a modern CPU someone implementing a > program relying in an exact timing for this CPU will have the same > problem. It is certainly true that there is little to no advantage from making the timer any more accurate than it was in the real machine. However, just getting to those sort of rates (let's be generous, and assume +/- 300ppm variation) is no mean feat. > In any case I think in modern very fast, and with all those > mechanism which make timing so hard to calculate, CPUs a program that > will need a very accurate timing will be very hard to find. The oposite > happens in the old less powerful CPUs where it is far easier to find > such a programs. True, but this very much depends on the sort of applications you're running on the emulator. > > Talking realtime, I estimated optimistically how many cycles per second it > > would take to maintain an 8MHz clock, shooting for 100ppm accuracy, and > > using an 800MHz CPU. This came to about 30% CPU usage. There are probably > > a few tricks you can use to reduce this further, but I think 10% is highly > > unrealistic. If you can maintain this _realtime_ clock using 10 cycles/tick > > whilst other stuff is happening, I want to see the code that works on more > > than one exact combination of CPU and motherboard. > I think it was Bedichek ... (small break for search the info) ... wrong ... > In a paper from the 93 it is described TIBBIT (timing insensitive binary to > bynary translation of real time system) which studies this problem. Are we talking about the same problem? In this particular case, I was talking about the problem of generating an accurate realtime clock in software for application use, rather than an emulated timer. > It is the implementation of a static binary translator which is intend for emulating > real time machines and programs. It shows some numbers about how > expensive can be a given accuracy level and the precision it has in the > point level and in the general level. I think it is in my BT 'library' BT library? Hmm? - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 09:01:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA53748 for dynarec-outgoing; Sun, 6 May 2001 09:01:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006d01c0d64a$548992c0$5da4fea9@burp> From: "Tom Browne" To: References: <000d01c0d5c9$f6d4fc30$0100a8c0@home.local> <00b401c0d60f$4ce678c0$5da4fea9@burp> <003601c0d624$8a6bef30$0100a8c0@home.local> <002301c0d62f$0d003be0$5da4fea9@burp> <008501c0d635$5ae98cc0$0100a8c0@home.local> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 17:33:49 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > > When you go beyond the processors of ancient times, you also have > > order-of-execution, memory alignment, and caching to worry about, to name > > a few... it basically comes down to a cycle-accurate profile, which is > > never, ever going to be fast. > You suck. ;) What are you implying, sir? :) > How about the guys at Eurocopter, who I worked with (as you know!) who used > the 68K? We had to work right down to the cycles. If they can do it, so can > I. :P I never said it couldn't be done for the 68K... I'm no expert on that CPU, having only done a few short assembler programs for it, and I'm sure it is quite predictable for you to be even suggesting this approach. That doesn't mean it will be fast to do. > > If you truely want to have a scalable core, it has to be applicable to > > modern processors as well... > It would. By scalable, I mean the performance doesn't take a huge nose dive because the virtual profiler is suddenly taking up more time figuring out how long the real CPU will be taking, rather than actually running the recompiled code. :) A more complex processor is harder to profile. Simple as that. > > Talking realtime, I estimated optimistically how many cycles per second it > > would take to maintain an 8MHz clock, shooting for 100ppm accuracy, and > > using an 800MHz CPU. This came to about 30% CPU usage. There are > probably > > a few tricks you can use to reduce this further, but I think 10% is highly > > unrealistic. If you can maintain this _realtime_ clock using 10 > cycles/tick > > whilst other stuff is happening, I want to see the code that works on more > > than one exact combination of CPU and motherboard. > And you will. You were, for some reason, questioning my estimate on the time taken to maintain a _realtime_ clock for an application, not an emulated one. It isn't possible in 10 cycles in the circumstances described. Period. I stand by my 30% estimate. To even attempt a realtime clock in 10 cycles, the application would have to be running Ring 0, specially compiled for an exact platform, with the timer code strategically interspersed with the rest of the code (probably spending many hours with VTune, and scrutinsing the output from the compiler), and even then, if an interrupt occured, or you tried to run it on a slightly different machine, the code would break. I'm sure NB will put into context just how easy it is to lose 10 cycles on Intels based on the PPro architecture... No... a realtime software timer at these sort of rates is extremely hard to do. Come to think of it, RDTSC can certainly lend a helping hand, but exact divisors are still a nightmare. > Nah, I'm perfect - just look at me! > Oh, hang on... don't. :) Heh-heh... :) > > Show meee the money! :) > I'm going to. So there. Nyah. :P Go on then. :) - Tom. P.S. If you're reading this, you're probably missing REM's performance on C4... :) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 09:22:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA53777 for dynarec-outgoing; Sun, 6 May 2001 09:22:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009501c0d64b$33c42e00$0100a8c0@home.local> From: "Neil Griffiths" To: References: <000d01c0d5c9$f6d4fc30$0100a8c0@home.local> <00b401c0d60f$4ce678c0$5da4fea9@burp> <003601c0d624$8a6bef30$0100a8c0@home.local> <002301c0d62f$0d003be0$5da4fea9@burp> <008501c0d635$5ae98cc0$0100a8c0@home.local> <006d01c0d64a$548992c0$5da4fea9@burp> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 17:39:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > > How about the guys at Eurocopter, who I worked with (as you know!) who > used > > the 68K? We had to work right down to the cycles. If they can do it, so > can > > I. :P > > I never said it couldn't be done for the 68K... I'm no expert on that CPU, > having only done a few short assembler programs for it, and I'm sure it is > quite predictable for you to be even suggesting this approach. That doesn't > mean it will be fast to do. But I don't believe it will take so long to do. Anyway, I don't want to talk about it anymore. I'm going to implement it and prove you wrong - or prove you right. Either way, I'll prove it. Actions = louder than words. :) > By scalable, I mean the performance doesn't take a huge nose dive because > the virtual profiler is suddenly taking up more time figuring out how long > the real CPU will be taking, rather than actually running the recompiled > code. :) There is no virtual profiler. I'm wondering exactly what you think I'll be doing?! > A more complex processor is harder to profile. Simple as that. But... I'm not profiling. You're right though! But you seem to have gone off at a tangent... > > And you will. > > You were, for some reason, questioning my estimate on the time taken to > maintain a _realtime_ clock for an application, not an emulated one. It > isn't possible in 10 cycles in the circumstances described. Period. I > stand by my 30% estimate. But... aargh! You've gone off at some surreal tangent here and I've no clue what you're talking about anymore. > To even attempt a realtime clock in 10 cycles, the application would have to > be running Ring 0, specially compiled for an exact platform, with the timer > code strategically interspersed with the rest of the code (probably spending > many hours with VTune, and scrutinsing the output from the compiler), and > even then, if an interrupt occured, or you tried to run it on a slightly > different machine, the code would break. But... but... but... AAARGH! I *never* mentioned a realtime clock, so... :P > I'm sure NB will put into context just how easy it is to lose 10 cycles on > Intels based on the PPro architecture... Same here, but... > No... a realtime software timer at these sort of rates is extremely hard to > do. Come to think of it, RDTSC can certainly lend a helping hand, but exact > divisors are still a nightmare. Did I, or did I not suggest a way that required no realtime timers? I believe so... :) > > > Show meee the money! :) > > I'm going to. So there. Nyah. :P > > Go on then. :) You have watched too much Jerry Maguire, though. > P.S. If you're reading this, you're probably missing REM's performance on > C4... :) Excuse my French, but fuck. Yes, I sodding missed it. Bugger! :-/ Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 09:32:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA53804 for dynarec-outgoing; Sun, 6 May 2001 09:32:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Dynarec.com Projects From: "M.I.K.e" Message-ID: <000383a4a6fa1bce_mailit@mail.dynarec.com> Date: Sun, 06 May 2001 18:55:29 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I thought I could start some work in the project documentation department... Just take a look at http://www.dynarec.com/ ;-) -- M.I.K.e Dimensions will always be expressed in the least usable term. Velocity, for example, will be expressed in furlongs per fortnight. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 09:45:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA53830 for dynarec-outgoing; Sun, 6 May 2001 09:45:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00a101c0d64e$76496ad0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <000383a4a6fa1bce_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Dynarec.com Projects Date: Sun, 6 May 2001 18:03:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I thought I could start some work in the project documentation department... > Just take a look at http://www.dynarec.com/ ;-) Well done. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 09:57:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA53850 for dynarec-outgoing; Sun, 6 May 2001 09:57:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00af01c0d650$1dbb3630$0100a8c0@home.local> From: "Neil Griffiths" To: References: <000383a4a6fa1bce_mailit@mail.dynarec.com> <00a101c0d64e$76496ad0$0100a8c0@home.local> Subject: Re: DYNAREC: Dynarec.com Projects Date: Sun, 6 May 2001 18:14:55 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Speaking of which, soon, I'll be doing a complete overhaul of Dynarec.com - together with Mike, of course. I've decided that it's not professional enough looking and I have some nice designs in my head. How does a nice light metallica blue colour sound, guys? :) Neil. ----- Original Message ----- From: "Neil Griffiths" To: Sent: Sunday, May 06, 2001 6:03 PM Subject: Re: DYNAREC: Dynarec.com Projects > Hi, > > > > I thought I could start some work in the project documentation > department... > > Just take a look at http://www.dynarec.com/ ;-) > > Well done. :) > > Neil. > > -------------------------------------------------------------------------- - > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 10:41:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA53901 for dynarec-outgoing; Sun, 6 May 2001 10:41:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <009701c0d658$450697e0$5da4fea9@burp> From: "Tom Browne" To: References: <000d01c0d5c9$f6d4fc30$0100a8c0@home.local> <00b401c0d60f$4ce678c0$5da4fea9@burp> <003601c0d624$8a6bef30$0100a8c0@home.local> <002301c0d62f$0d003be0$5da4fea9@burp> <008501c0d635$5ae98cc0$0100a8c0@home.local> <006d01c0d64a$548992c0$5da4fea9@burp> <009501c0d64b$33c42e00$0100a8c0@home.local> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 19:13:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > > > How about the guys at Eurocopter, who I worked with (as you know!) who > > used > > > the 68K? We had to work right down to the cycles. If they can do it, so > > can > > > I. :P > > I never said it couldn't be done for the 68K... I'm no expert on that CPU, > > having only done a few short assembler programs for it, and I'm sure it is > > quite predictable for you to be even suggesting this approach. That > doesn't > > mean it will be fast to do. > But I don't believe it will take so long to do. Are we talking development time or runtime CPU usage? :) > There is no virtual profiler. I'm wondering exactly what you think I'll be > doing?! Without a virtual profiler, how can you know how many cycles the emulated CPU would really be using?! Do you plan to develop a psychic dynarec? :) > > You were, for some reason, questioning my estimate on the time taken to > > maintain a _realtime_ clock for an application, not an emulated one. It > > isn't possible in 10 cycles in the circumstances described. Period. I > > stand by my 30% estimate. > But... aargh! You've gone off at some surreal tangent here and I've no clue > what you're talking about anymore. I'm talking about a realtime clock, not an emulated one. :) > > No... a realtime software timer at these sort of rates is extremely hard > > to do. Come to think of it, RDTSC can certainly lend a helping hand, but > exact > > divisors are still a nightmare. > Did I, or did I not suggest a way that required no realtime timers? I > believe so... :) I wasn't talking about an emulated timer. > > > > Show meee the money! :) > > > I'm going to. So there. Nyah. :P > > Go on then. :) > You have watched too much Jerry Maguire, though. It's just a great catchphrase. :) BTW, I got Payback onto a single 80 minute CD-R after all. Just to prove to myself it could be done. :) Video encoding only took 2 hours. You need to use the older codec. Lower quality, but it is VFW compatible, which means it's a piece of cake to add the audio with VirtualDub. The finished product was a bit close to the mark, though, at 696MB... :) > > P.S. If you're reading this, you're probably missing REM's performance on > > C4... :) > Excuse my French, but fuck. Yes, I sodding missed it. Bugger! :-/ I watched all of the Corrs and REM numbers, but only managed to record most of "Man On The Moon". The sound quality was absolutely shite, as is typical for Channel 4 events. If it's any consolation, I missed the whole of Jools on Friday night, on account of being asleep. Yes, me asleep at 11pm... shocked? :) - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 10:46:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA53915 for dynarec-outgoing; Sun, 6 May 2001 10:46:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 May 2001 11:05:07 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Happy Birthday NB! In-Reply-To: <014501c0d5d2$1dbf7930$0100a8c0@home.local> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I know it's too early for you, but in Germany it's already Sunday, so: > > Happy Birthday Neil! > Good point - Happy Birthday Neil! :) Thanks for the HBs... We partied pretty hard. No brain cells killed, but we had a great dinner and played lots of video games. A good time was had by all. Wished you all could've joined me! -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 10:48:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA53925 for dynarec-outgoing; Sun, 6 May 2001 10:48:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 May 2001 11:07:23 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Tight timing issues In-Reply-To: <00b401c0d60f$4ce678c0$5da4fea9@burp> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I take your point about the potential irrelevancy of the PC clock (my mind > is locked onto the realtime sync mindset right now with all the things I'm > working on - both at home and work), but maintaining an 8MHz super-accurate > software clock as I see it could easily suck something like 30% of a fast > CPU... Yeah, easily. Another alternative would be to check the refresh timer or the performance counters on the Pentium itself. But all that eats up CPU time, and when you're at the mercy of a pseudo-realtime OS like Windows you'll still get cases where a longer period of time has passed and you somehow have to account for it. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 10:51:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA53959 for dynarec-outgoing; Sun, 6 May 2001 10:51:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00bb01c0d657$c426f480$0100a8c0@home.local> From: "Neil Griffiths" To: References: <000d01c0d5c9$f6d4fc30$0100a8c0@home.local> <00b401c0d60f$4ce678c0$5da4fea9@burp> <003601c0d624$8a6bef30$0100a8c0@home.local> <002301c0d62f$0d003be0$5da4fea9@burp> <008501c0d635$5ae98cc0$0100a8c0@home.local> <006d01c0d64a$548992c0$5da4fea9@burp> <009501c0d64b$33c42e00$0100a8c0@home.local> <009701c0d658$450697e0$5da4fea9@burp> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 19:09:24 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > > But I don't believe it will take so long to do. > > Are we talking development time or runtime CPU usage? :) None of the above. I was talking about the timing inside the emulated CPU. > > There is no virtual profiler. I'm wondering exactly what you think I'll be > > doing?! > > Without a virtual profiler, how can you know how many cycles the emulated > CPU would really be using?! Do you plan to develop a psychic dynarec? :) Because I would know how many clock cycles a 68K instruction would take by using a list of rules. The same way as I had to do at Eurocopter. > > But... aargh! You've gone off at some surreal tangent here and I've no > > clue what you're talking about anymore. > > I'm talking about a realtime clock, not an emulated one. :) Right, well I'm not. :) > > Did I, or did I not suggest a way that required no realtime timers? I > > believe so... :) > > I wasn't talking about an emulated timer. But I was, which is why I was confused answering this mail! :) > > You have watched too much Jerry Maguire, though. > > It's just a great catchphrase. :) Who's with me? Come on, who's with me? ;) > BTW, I got Payback onto a single 80 minute CD-R after all. Just to prove to > myself it could be done. :) ...purely as a backup, of course. :) > Video encoding only took 2 hours. You need to use the older codec. Lower > quality, but it is VFW compatible, which means it's a piece of cake to add > the audio with VirtualDub. The finished product was a bit close to the > mark, though, at 696MB... :) Funky, though I never had to use VirtualDub... > > Excuse my French, but fuck. Yes, I sodding missed it. Bugger! :-/ > > I watched all of the Corrs and REM numbers, but only managed to record most > of "Man On The Moon". The sound quality was absolutely shite, as is typical > for Channel 4 events. Yeah, I know. But still - aaargh! > If it's any consolation, I missed the whole of Jools on Friday night, on > account of being asleep. Yes, me asleep at 11pm... shocked? :) Yeah, actually. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 10:57:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA53974 for dynarec-outgoing; Sun, 6 May 2001 10:57:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 May 2001 11:15:48 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Tight timing issues In-Reply-To: <00b701c0d612$d6bc6480$5da4fea9@burp> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > MIDI Work? What are you working on? I just got done doing a firmware > > rewrite on an old synthesizer (Jupiter 6). > Mix automation software... to be more precise Amek SuperTrue 4, for which > I'm now mostly responsible, after having rewritten large chunks of the > graphics code to get some dramatic speedups... :) That rocks! I actually have sympathy for you. Europa (The Jupiter 6's upgrade) is over a megabyte of *ASSEMBLY* source code and doing UI and operational work is REALLY tough. We have to interpolate single arpeggio sync pulses to 24ppqn MIDI clock - effectively a phased locked loop in software. And if it drifts a little, we need to be able to track it between beats, so we wind up doing a lot of measurement and resetting of timers. BTW, I used an Amek Angela for a few years in a studio back in the late 80s. Great board! > I really love the way the bastards that came up with MTC decided that 1 byte > received = a quarter frame has passed. In a pseudo-multitasking > environment, that's a whole lot of fun to do when your routine is being > called only, say 110 times/sec, with no real consistency, and then I've got > three different timecode formats which I have to continuously be switching > between... internal, RTC, and MTC. And it's even worse when there are FIFOs in your MIDI interface that cause all kinds of additional delays and throw off your count and you need to do averaging to smooth out the bumps. ;-( > It wouldn't be a problem if I could just have the RTC interrupt handler I've > written call a C function, but in practice, this seems to be _extremely_ > flaky, more than half the time causing 0Es... any ideas why? I'm backing up > the flags, and all the registers that should matter... A pretty good idea why - You need to disable interrupts when doing port 70/71 access. We had this problem in BIOS where interrupts would come in and access the ports right in the middle of an access and cause us no end of pain. For example, let's say the foreground code writes a 5ah to 70h. Then an interupt comes in, and it loads some other value into 70h and reads/writes to 71h. Now we have a new, non-5ah value latched at 70h, and when the foreground code continues, it writes the value it wanted to put in the 5ah offset location, but it's now something else, and bam - corrupted CMOS. > There is a "third way", I guess... write all the timecode stuff in > assembler. Yeah! ;-) I'll help if you decide to do it. > > > bloody slow in pmode, but I didn't think it was as bad as it appears to > > Jeez, in/out is terrible if you're not running @ ring 0. > Well, it's a 32-bit DPMI application... using eeevil BC45 with the > "PowerPack". :)) EEEEEEEEEEEEEEEEwwwwwwwwwwwwwwwwww.. Yuck. I've not like any of Borland's compilers. > We've got a copy of Watcom on the shelf. No, I don't know why we're still > using BC45! Watcom does a much better job optimizing. I've found code speed jump 20-40% just by switching compilers. > BIOS dev. is something I may need to go into for my audio project... a > custom BIOS for an i815EP chipset motherboard to use in an embedded Linux > app? Hmm... :) Don't use Linux if you want any sort of consistent response. It 'aint a good choice. > > Especially if you're doing something multimedia or audio based, in which > > case you're doing a LOT of PCI traffic and hard drive traffic, and it's > > even worse when the IDE HD I/O is programmed I/O. > HD access is evil! I don't know how you're meant to maintain a 1ms critical > thread in Win2K when you've got virtual memory to worry about as well! Yeah, but that's what you get. ;-) At least the timers catch up on themselves. The only other way around it would be to write a ring 0 device driver so you can get in front of (and perhaps interrupt) other devices. > Heh... not my problem... that's for the team working on the new digital > console to worry about. :) Wish I could have that job... -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 10:58:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA53984 for dynarec-outgoing; Sun, 6 May 2001 10:58:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 May 2001 11:16:41 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues In-Reply-To: <200105061002.UAA22833@mail.alphalink.com.au> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >aren't going to intrude on the discussion and if they don't intrude on the > >discussion what's the problem? > As a fellow lurker, I can only agree with this. I am _extremely_ interested in the whole process, and I cannot see what harm could come about from me 'listening' in. In the > worst case senario I might actually have something useful to contribute. Good point - I'll leave the list open for now. > BTW: Is archive.synthcom.com down? I finally found someone who lives > near me (Australia) with a cable connection willing to download it, > and all he gets is connection refused. If the ftp is down due to > people leeching too many roms, can somebody set up a server with > _just_ the avi's on it? How about instead I just fix the FTP site? ;-) For some reason Serv-U wasn't responding to incoming requests. I shut it down and started it back up again and it's working great now. Try again. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 11:06:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA54004 for dynarec-outgoing; Sun, 6 May 2001 11:06:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00d501c0d65b$cf59a2e0$5da4fea9@burp> From: "Tom Browne" To: References: <000d01c0d5c9$f6d4fc30$0100a8c0@home.local> <00b401c0d60f$4ce678c0$5da4fea9@burp> <003601c0d624$8a6bef30$0100a8c0@home.local> <002301c0d62f$0d003be0$5da4fea9@burp> <008501c0d635$5ae98cc0$0100a8c0@home.local> <006d01c0d64a$548992c0$5da4fea9@burp> <009501c0d64b$33c42e00$0100a8c0@home.local> <009701c0d658$450697e0$5da4fea9@burp> <00bb01c0d657$c426f480$0100a8c0@home.local> Subject: Re: DYNAREC: Tight timing issues Date: Sun, 6 May 2001 19:38:56 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > > > But I don't believe it will take so long to do. > > Are we talking development time or runtime CPU usage? :) > None of the above. I was talking about the timing inside the emulated CPU. The timing calculations have to be done, and as I said, you can't anticipate all of them before the recompiled code is actually running. > > Without a virtual profiler, how can you know how many cycles the emulated > > CPU would really be using?! Do you plan to develop a psychic dynarec? :) > Because I would know how many clock cycles a 68K instruction would take by > using a list of rules. The same way as I had to do at Eurocopter. Isn't it rather more important that the dynarec knows than you do? :) These rules would form the basis of a virtual profiler which would give you the offset information to increment the clock timer within the recompiled code, interspersed as I showed in the basic example. (Of course, there's no point in doing separate increments until the timer is actually required, other than for debug purposes, so you could add a lot of these together rather than doing it after each instruction.) Unless you're thinking of something rather less obvious... > Who's with me? Come on, who's with me? ;) > > BTW, I got Payback onto a single 80 minute CD-R after all. Just to prove > to > > myself it could be done. :) > ...purely as a backup, of course. :) Of course. :) > > Video encoding only took 2 hours. You need to use the older codec. Lower > > quality, but it is VFW compatible, which means it's a piece of cake to add > > the audio with VirtualDub. The finished product was a bit close to the > > mark, though, at 696MB... :) > Funky, though I never had to use VirtualDub... How'd you add the audio, then? - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 11:08:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA54014 for dynarec-outgoing; Sun, 6 May 2001 11:08:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 May 2001 11:26:48 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Basic variable types Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm running in to a collision of the basic types: typedef unsigned long int UINT32; typedef unsigned short int UINT16; typedef unsigned char UINT8; etc.... With some of the standard Windows stuff, and the thought crossed my mind that we might see this same problem on other platforms. Plus, these basic variable definition types really do need to be platform specific. So my plan is for each platform/compiler type to have a "plattype.h" file, and part of the build process will copy it from where it resides into the \Objs directory, and the main dynarec.h module will just #include "Objs/plattype.h". If you can think of a better way to do it, let me know, but there's no way for me to #undef those types for our own use. And yes, I'm using forward slashes instead of backslashes. The other plan is to make #includes reference forward only. So rather than have #include "../../core/dynarec.h", it'll just be "core/dynarec.h" and we'll assume only 1 include path - the root. This will prevent us from accidentally including the wrong file. Once I'm done putting all this together, I'd like someone in gcc land to get a makefile going for it and point out any warnings/errors that might have occurred, and I'll do my best to keep it in sync once we have it up front. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 11:53:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA54066 for dynarec-outgoing; Sun, 6 May 2001 11:53:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec.com Projects From: "M.I.K.e" Message-ID: <000383a5f7f0dd10_mailit@mail.dynarec.com> References: <000383a4a6fa1bce_mailit@mail.dynarec.com> <00a101c0d64e$76496ad0$0100a8c0@home.local> <00af01c0d650$1dbb3630$0100a8c0@home.local> Date: Sun, 06 May 2001 20:29:42 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Speaking of which, soon, I'll be doing a complete overhaul of Dynarec.com - It's about time... Maybe we could fill in some of the blanks as well... >together with Mike, of course. Thanks that you haven't forgotten me ;-) >I've decided that it's not professional enough looking Well, it was your design ;-) >and I have some nice designs in my head. Hmm, where do I have the can opener? >How does a nice light metallica blue colour sound, guys? :) What? Sounding colour? Now you're totally nuts! ;-) Maybe you could show us examples that we know what you mean. >Neil. -- M.I.K.e The opossum is a very sophisticated animal. It doesn't even get up until 5 or 6 p.m. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 11:53:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA54070 for dynarec-outgoing; Sun, 6 May 2001 11:53:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Happy Birthday NB! From: "M.I.K.e" Message-ID: <000383a5eb3dba8e_mailit@mail.dynarec.com> References: Date: Sun, 06 May 2001 20:26:09 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Thanks for the HBs... We partied pretty hard. No brain cells killed, but Well, the necessity of alcohol for a good party is overrated anyway. >we had a great dinner and played lots of video games. Sounds nice. >A good time was had by all. Glad to hear. >Wished you all could've joined me! Seems we missed something... >-->Neil -- M.I.K.e >From the moment I picked your book up until I put it down I was convulsed with laughter. Some day I intend reading it. -- Groucho Marx, from "The Book of Insults" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 19:53:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA54536 for dynarec-outgoing; Sun, 6 May 2001 19:53:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 1 Apr 1959 14:57:21 -0600 (CST) From: Graham Toal Message-Id: <195904012057.OAA09032@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Tight timing issues Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I'm currently trying to sort out the timing code under RedSquirrel. My > emulation currently has a free running interpreted ARM. From this it has to > generate the 2mhz system timers used by most RISC OS apps/games. I currently > do this using an adaptive mul/div timed against the Windows performance > timers. On my 500mhz pIII the ARM runs about 5 mips and the timing is not > too bad - the RISC OS clock drifts by about 10 seconds in an hour). > > Two issues: > > Some very old RISC OS games assume that the arm is running at exactly 8Mhz > (~4Mips) and time themselves from this. Is there a prescribed way to pace > the processor emulation? and keep the system timers correct? by the time the Arm was designed, *everyone* who was anyone knew not to write video games using timing loops (or running flat out), having been through that loop with the release of various speeds of Beebs. Right from the start, the recommended procedure was to call the 'wait for vsync' osbyte. As long as you can hook the vsync call to the real hardware vsync, I for one am happy with any emulator that runs flat out and then sleeps while waiting for vsync. Note I believe this is also the case with many arcade games - you're generally not emulating a machine and OS combination, you're emulating just a raw machine used in a very narrow context. I know that in the Cinematronics (the only one I've done so far) there is no timing hardware anywhere, and the only timing is forced by the wait for flyback instruction. Obviously on some machines exact timing will be more crucial, but on many it won't, and for those, I recommend an option where you allow the machine to run flat out but make the wait for vsync hardware or OS call use the target system vsync. By the way, in the Beeb Elite, there was a display panel at the bottom of the screen which if I remember right used either a pallete or a screen mode which was changed on the fly during a *horizontal* sync, calculated using a timer reset on vsync! If you can make that work your timing emulation is pretty damned good. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 19:59:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA54550 for dynarec-outgoing; Sun, 6 May 2001 19:59:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 1 Apr 1959 15:03:16 -0600 (CST) From: Graham Toal Message-Id: <195904012103.PAA09054@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Thumb Candy Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Most definitely. I could've done without the Apple ads and the UK country > pride crap, though the interviews with the original authors of the games > is priceless. My niggle was that, being C4, they couldn't bring themselves to give the true credit to the BBC Micro, and instead hyped Clive's Rectum as being responsible for bringing video games to the home. The BBC Micro games were arcade quality, the Spectrum games were toys. Neil Raine's clone of Defender was pixel-perfect, and Tim & Jonathan's clone of Pacman (aka Snapper) was so good that having only ever played the Beeb clone (excessively, while working late at Acorn waiting for compilations) that the first time I played on a real arcade machine I went straight into the high score. He even had the same little dead spots where you could go have a coffee break... G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 20:33:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA54598 for dynarec-outgoing; Sun, 6 May 2001 20:33:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 1 Apr 1959 15:37:09 -0600 (CST) From: Graham Toal Message-Id: <195904012137.PAA09142@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > + Some of the code will have to be pitched since it's not ours. The > > > disassemblers specifically. We'd have to write our own or just not include > > > them. > > All this work will take a long time. Do you have an estimation of the time > > we could need? > > I dunno. Probably 3-4 weeks for each disassembler for one person working > on it nightly. Disassemblers plural? I didn't realise you were working on anything that needed other than 68K disassembly. If you need an ARM disassembly for any reason I have quite an intelligent one (wrt jump destinations etc) at: http://www.gtoal.com/oldjunk/adec.imp.html It's in a funny language :-) but a manual translation to C wouldn't take more than an hour or three methinks. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 20:40:04 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA54616 for dynarec-outgoing; Sun, 6 May 2001 20:40:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 1 Apr 1959 15:44:07 -0600 (CST) From: Graham Toal Message-Id: <195904012144.PAA09166@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Maybe David, Gwenole or Graham might want to join in if we haven't scared > > 'em away. ;-) I was hoping I'ld be allowed to kibbitz this project if you take it off-list. I'm not volunteering to work on it (I've learned the lesson of over-commiting in the past) and I'll try to keep quiet and just watch, but I'ld like to keep track of what's happening just in case there's something useful I may have to say. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 20:51:48 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA54633 for dynarec-outgoing; Sun, 6 May 2001 20:51:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 1 Apr 1959 15:55:50 -0600 (CST) From: Graham Toal Message-Id: <195904012155.PAA09187@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Skills: I am really poor at starting documentation of any kind but I can edit the hell out of anything! At some point down the road, I'ld be happy to take Victor's content and dot i's, cross t's, and generally revamp it as if originally written by a native english speaker, with his permission. (Those of you who don't know me from my word-games site - English language has always been a preoccupation of mine (as well as other languages) and I've spent a couple of years doing linguistics as well; computing is my second love, not my first.) Graham --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 20:57:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA54646 for dynarec-outgoing; Sun, 6 May 2001 20:57:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 1 Apr 1959 16:01:41 -0600 (CST) From: Graham Toal Message-Id: <195904012201.QAA09208@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I prefer to just think of it as freeware. The "Open Source" rings of > things like Linux and Richard Stallman - neither of whom are on my highly > respected list. FYI Stallman is "FSF" - *Free* Software Foundation. He is extremely anti the Open Source movement (self-styled leader, that poseur Raymond). Stallman is 100% freeware. He's also a extreme left wing communist, which is why a lot of people in the US don't like him. I find him OK, except for his rationale of "doesn't matter if the software is huge, by the time it's finished, ram and disk will be so cheap no-one will notice". Graham --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 21:11:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA54669 for dynarec-outgoing; Sun, 6 May 2001 21:11:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 1 Apr 1959 16:15:24 -0600 (CST) From: Graham Toal Message-Id: <195904012215.QAA09237@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > That's not where the problem comes from. It comes from some undiscovered > > jump table causing a jump into the middle of a block. As I said, throw > > it away, recompile that part of the block, and update your global tables > > so you don't make the same mistake again. > > You make the assumption that it's a "mistake". Often the entry point into > a block will alter depending upon the caller, and will thrash. I've seen > plenty of Z80 code that does this, and several 68K programs that do it as > well. > > > After a few executions of the > > program it'll have settled down so that it generates the right code first > > time. > > Not if it's continually called from two different places to two different > entry points. MAJOR POINT here guys. If you are getting thrashing, then you're not doing what I'm suggesting. Just can't happen. If you have an entry point at A, then another entry point a few instrs later at B, then once you have entered at both addresses once you have tagged both A and B as the start of blocks, and by implication B causes the end of block A. (More specifically B causes you to tag that address with a 'destination label' (what might be jokingly called a "wild come-from statement"), which has the same effect in code generation as ending a basic block, i.e. "forget all context") There have been several posts talking about the terrible run-time overhead of this sort of approach (ie busting a block of you later discover a jump into the middle of it). I've just realised why you think that: I was taking it as a given that the information collected during any run of an emulated program - locating jump destinations, identifying invariant registers, all the dynamic info you can collect which helps code generation - would be preserved from one run to the next. So sure, it may be a hellish overhead the first time a new program is run, but who cares. First time was probably by one of the developers anyway. All subsequent runs in a production environment should be fast because you're leaning heavily on work the dynarec did in previous runs. If this *isn't* a valid assumption about how you have planned to structure your dynarec, please give it some consideration! Graham --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 21:15:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA54682 for dynarec-outgoing; Sun, 6 May 2001 21:15:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 7 May 01 00:31:09 -0400 Message-Id: <3.0.5.32.20010506212817.00820600@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 06 May 2001 21:28:17 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: 68000 profiling results Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi everyone, I managed to do some profiling today! The data isn't all that detailed, as you'll see, but it suits my purposes and hopefully it'll be of some use: 68000 Profiling Results ----------------------- Based on 29 Sega Genesis games. Each game was left alone for 2 minutes (control pads were untouched). My system is a P180 with 80MB RAM. The tests were conducted under Windows. A frame skip of 2 was used. The Z80 was only enabled for games which required it to operate. The resolution was 320x200. The precision was "float." Total=3520169728 TST = 18.456861% (649712832) BEQ = 16.773160% (590443712) BNE = 14.701383% (517513632) MOVE = 11.716452% (412439008) CMP = 7.897858% (278018016) CMPI = 3.701348% (130293736) DBF = 2.890507% (101750768) ADD = 2.143055% (75439184) BTST = 1.936656% (68173568) BCS = 1.568744% (55222464) ADDQ = 1.118771% (39382632) BRA = 1.093789% (38503244) LEA = 1.057299% (37218712) RTS = 1.033851% (36393304) MOVEA = 0.989770% (34841584) ANDI = 0.909211% (32005756) ADDA = 0.750317% (26412432) SUBQ = 0.639766% (22520832) MOVEQ = 0.626871% (22066908) SUB = 0.614205% (21621064) JSR = 0.608587% (21423292) BLT = 0.599791% (21113676) BCC = 0.569181% (20036144) LSL = 0.522729% (18400952) SWAP = 0.518907% (18266416) LSR = 0.467847% (16469004) BSR = 0.428488% (15083507) AND = 0.420328% (14796243) EXT = 0.374897% (13196998) OR = 0.365083% (12851525) CLR = 0.356954% (12565402) MOVEM = 0.348804% (12278484) BPL = 0.299572% (10545428) MOVE_to_SR = 0.288956% (10171741) NOP = 0.274307% (9656057) ADDI = 0.273154% (9615468) BMI = 0.217103% (7642390) BGE = 0.205655% (7239399) BGT = 0.162442% (5718225) JMP = 0.157656% (5549768) CMPA = 0.142774% (5025877) ASL = 0.134249% (4725782) SUBI = 0.129025% (4541882) BLE = 0.127413% (4485147) BHI = 0.121146% (4264555) MULS = 0.107794% (3794521) ASR = 0.107383% (3780049) RTE = 0.100872% (3550864) NEG = 0.097832% (3443853) ROL = 0.077262% (2719749) BCLR = 0.071191% (2506061) EOR = 0.066257% (2332349) ORI = 0.057204% (2013668) NOT = 0.055164% (1941851) BLS = 0.040060% (1410186) MOVE_USP = 0.039761% (1399660) ROXL = 0.037814% (1331103) BSET = 0.036918% (1299571) DBLE = 0.032138% (1131318) MOVE_from_SR = 0.029498% (1038377) SUBA = 0.027090% (953630) ROXR = 0.025774% (907272) EORI = 0.025135% (884783) DIVS = 0.024461% (861055) MULU = 0.024249% (853617) ADDX = 0.020965% (737994) ST = 0.017875% (629233) ROR = 0.017627% (620485) ORI_to_SR = 0.016410% (577671) MOVE_to_CCR = 0.013961% (491464) DBEQ = 0.010752% (378498) DBMI = 0.009397% (330773) EXG = 0.008431% (296796) UNLK = 0.008253% (290532) LINK = 0.008235% (289879) DIVU = 0.007383% (259897) SF = 0.006663% (234560) ANDI_to_CCR = 0.006177% (217450) BVS = 0.005764% (202919) PEA = 0.005552% (195446) ANDI_to_SR = 0.004015% (141325) BCHG = 0.003623% (127552) SEQ = 0.003220% (113349) BVC = 0.002235% (78677) SMI = 0.001457% (51302) ORI_to_CCR = 0.000962% (33871) SLE = 0.000825% (29043) RTR = 0.000517% (18196) DBNE = 0.000284% (10001) TRAP = 0.000242% (8509) SNE = 0.000224% (7891) SBCD = 0.000091% (3190) DBLS = 0.000068% (2382) SUBX = 0.000009% (310) SGE = 0.000006% (210) ABCD = 0.000005% (179) CMPM = 0.000002% (73) MOVEP = 0.000001% (40) SCC = 0.000001% (34) DBPL = 0.000001% (18) SCS = 0% (2) SPL = 0% (1) CHK = 0% (0) DBT = 0% (0) DBHI = 0% (0) DBCC = 0% (0) DBCS = 0% (0) DBVC = 0% (0) DBVS = 0% (0) DBGE = 0% (0) DBLT = 0% (0) DBGT = 0% (0) EORI_to_CCR = 0% (0) EORI_to_SR = 0% (0) ILLEGAL = 0% (0) NBCD = 0% (0) NEGX = 0% (0) RESET = 0% (0) SHI = 0% (0) SLS = 0% (0) SVC = 0% (0) SVS = 0% (0) SLT = 0% (0) SGT = 0% (0) STOP = 0% (0) TAS = 0% (0) TRAPV = 0% (0) Line_1010_Emulator= 0% (0) Line_1111_Emulator= 0% (0) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 21:18:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA54692 for dynarec-outgoing; Sun, 6 May 2001 21:18:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 May 2001 21:36:47 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues In-Reply-To: <195904012137.PAA09142@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I dunno. Probably 3-4 weeks for each disassembler for one person working > > on it nightly. > Disassemblers plural? I didn't realise you were working on anything that > needed other than 68K disassembly. You need an x86 disassembler to verify that what you've dumped into memory via the opcodes is actually what you intended! But you'd need a disassembler for each source and target layer, otherwise debugging would be nearly impossible. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 21:19:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA54711 for dynarec-outgoing; Sun, 6 May 2001 21:19:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 May 2001 21:38:08 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues In-Reply-To: <195904012155.PAA09187@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > (Those of you who don't know me from my word-games site - English > language has always been a preoccupation of mine (as well as other > languages) and I've spent a couple of years doing linguistics as > well; computing is my second love, not my first.) In college I was an English major. I switched to CS when I found that with a degree like that I wasn't qualified for anything but teaching, so I switched to CS since I had plenty of computer experience. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 21:23:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA54726 for dynarec-outgoing; Sun, 6 May 2001 21:23:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 May 2001 21:42:23 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues In-Reply-To: <195904012201.QAA09208@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I prefer to just think of it as freeware. The "Open Source" rings of > > things like Linux and Richard Stallman - neither of whom are on my highly > > respected list. > FYI Stallman is "FSF" - *Free* Software Foundation. He is extremely > anti the Open Source movement (self-styled leader, that poseur Raymond). Like I said, it rings of things like Richard Stallman. > Stallman is 100% freeware. And a major mooch from what I've been told by people who associate with him on a regular basis. > He's also a extreme left wing communist, which > is why a lot of people in the US don't like him. I don't understand... what does him being a left wing communist have to do with why people in the US don't think much of him? > I find him OK, except > for his rationale of "doesn't matter if the software is huge, by the > time it's finished, ram and disk will be so cheap no-one will notice". And his rationale of "Software should be completely free, and anyone who charges for software ought to be strung up.". -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 21:25:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA54739 for dynarec-outgoing; Sun, 6 May 2001 21:25:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 1 Apr 1959 16:29:48 -0600 (CST) From: Graham Toal Message-Id: <195904012229.QAA09271@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Throw it away, and recompile from the new entry point B, > > and next time you hit the original entry point, compile only up to > > that entry label. > > That would required us to eliminate the possibility of hardcoded jumps. If > I'm recompiling and a reference is made to jump to an address, why should > I be forced to have to look up its destination address when I already know > what it is? It's a difference between 4 instructions and one instruction. Guys, it's getting late, and I'm having to rush through responses. I'll leave this one as an exercise to the reader. It is *not* necessary to give up hardcoded jumps. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 21:29:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA54748 for dynarec-outgoing; Sun, 6 May 2001 21:29:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 May 2001 21:48:06 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: <195904012215.QAA09237@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > After a few executions of the > > > program it'll have settled down so that it generates the right code first > > > time. > > Not if it's continually called from two different places to two different > > entry points. > MAJOR POINT here guys. If you are getting thrashing, then you're not doing > what I'm suggesting. Just can't happen. If you have an entry point at A, > then another entry point a few instrs later at B, then once you have entered > at both addresses once you have tagged both A and B as the start of blocks, > and by implication B causes the end of block A. (More specifically B > causes you to tag that address with a 'destination label' (what might be > jokingly called a "wild come-from statement"), which has the same effect in > code generation as ending a basic block, i.e. "forget all context") You had mentioned "Throw it out and recompile it". That made us assume that you were mentioning getting rid of the ENTIRE block, so are you now saying you don't do this? Not only that, you'd have to: * Keep track of all blocks and their sizes (so you could get rid of them) * Never do any absolute jumps between blocks even if it has already been recompiled (it might be ripped up!) * It forces transmap lookups for each jump * Code size is larger I do not see how, with the above problems, that register reallocation could possibly overcome the speed problems induced by the above. > If this *isn't* a valid assumption about how you have planned to structure > your dynarec, please give it some consideration! There are no plans to do it this way. I flatly do not believe that register reallocation will offset the problems it creates. However, you can still use the source/target layer tools - just eliminate the middle layer and put your own in. The tools will be there for you to prove me wrong! -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 21:31:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA54761 for dynarec-outgoing; Sun, 6 May 2001 21:31:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 May 2001 21:49:45 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 68000 Profile Report In-Reply-To: <195904012229.QAA09271@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > That would required us to eliminate the possibility of hardcoded jumps. If > > I'm recompiling and a reference is made to jump to an address, why should > > I be forced to have to look up its destination address when I already know > > what it is? It's a difference between 4 instructions and one instruction. > Guys, it's getting late, and I'm having to rush through responses. > I'll leave this one as an exercise to the reader. It is *not* necessary > to give up hardcoded jumps. I don't see how. If you hardcode a jump because you've already recompiled that block, and later on you need to rip up a prior recompiled block that has hardcoded jumps referenced directly to it, how can you go back and patch up all the jumps that reference it? That is, hardcoded jumps BETWEEN blocks - not within basic blocks (obviously those are still possible). -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 23:03:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA54833 for dynarec-outgoing; Sun, 6 May 2001 23:03:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 6 May 2001 23:19:09 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Issues Message-ID: <20010506231909.D1775@hetfield.patsoffice.com> References: <195904012201.QAA09208@gtoal.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-md5; protocol="application/pgp-signature"; boundary="TybLhxa8M7aNoW+V" Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from neil@synthcom.com on Sun, May 06, 2001 at 09:42:23PM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --TybLhxa8M7aNoW+V Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable > And his rationale of "Software should be completely free, and anyone who > charges for software ought to be strung up.". Now, that's completely untrue. I'm not a Stallman fanatic by any means, but he is not against charging for software. His license states that you need to give your changes back to the community. You can charge whatever the hell you want for it. Anyhow, pick a BSD license with "Neil" mods and move on. This is getting a bit OT in a way that doesn't seem too productive. Pat --=20 "You are not a beautiful and unique snowflake!" - Tyler Durden --TybLhxa8M7aNoW+V Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.4 (GNU/Linux) Comment: For info see http://www.gnupg.org iEYEARECAAYFAjr2Pl0ACgkQrNiXbbxh4Od56ACg42sPWeYc9PiuYRomJfoo0WqK eLIAnRaHDQfF+Iv0hxat/g5bO8u4M4eW =Snck -----END PGP SIGNATURE----- --TybLhxa8M7aNoW+V-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 6 23:52:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA54876 for dynarec-outgoing; Sun, 6 May 2001 23:52:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 00:11:16 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Core work in progress Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com For those who are interested, I have a work in progress that I'm still in the process of getting finished up: http://www.synthcom.com/~neil/dr.zip It contains a Win32 buildable frameworks, complete with memory allocation help, debugging assistance (such as ASSERT), the start of a Food Fight test program, compilable disassemblers, and logging support routines. I'd like to accomplish the following before I drop the flag for other porters to create a makefile for it: * Get the 68K source layer header file and functions in place * Code up Food Fight to the point where all ROMs are loaded and the appropriate 68K structure is initialized * Add hooks for initializing a graphics surface to work with * Build up the main loop framework for Food Fight This shouldn't take more than a couple of evenings, but I really want to get things started off right and set a good example. Those who are using GCC (Mike? Bart?), feel free to have a look, but keep in mind I'm still changing things around. If you feel you can create a makefile that would be easy to extend later on (with additional files), by all means go for it. I'll include it in the drop and do my best to stay in sync with it. Here's a mini "porters" guide: * Create a plattype.h and have the makefile copy it into the Objs/ directory before anything is compiled * Create equivalent procedures that exist in Osdep/win32/win32.c for your particular OS. Note that you must provide a main(), as the platform specific code is the entry point. * Compile everything in /Core * Compile dis486.c, insnsd.c, sync.c, and dasm68k.c that are located in the /Disasm directory * Compile Example/foodfhgt.c * Be sure to define MEMCHK, ASSERTS, and DRLOG on the compilation command line As I said before, I'm deathly opposed to #ifdefing unless it really is needed. I want to avoid putting in things like #ifdef DJGPP or any compiler/OS specific stuff. Let's do our best to keep #defines out of the core - ESPECIALLY if they're platform specific. The 3 defines I've got right now are as follows: MEMCHK - This causes the memory subsystem to track allocation and deallocation of memory blocks. It also adds a header and footer to each block allocated and creates a signature. On freeing, if that block has its header or footer corrupted, it'll assert and exit, so hopefully you'll at least be narrowed down to who wrote past the end of their memory block. When MEMCHK isn't present, the memory subsystem is just a wrapper for malloc() and free(). ASSERTS - Causes the DRASSERT() macro to perform a standard assertion on the expression. When not defined, DRASSERT() functions will be compiled out of the source. If an assertion occurs, it'll report the expression, module, and line # of the "offending" assertion and call a Hostxxx() function to display the assertion. This gives the platform specific code the ability to do whatever emergency resource cleanup is necessary (deinitializing a video mode, etc...) before showing the assertion. DRLOG - Causes the DRLog() function to do a printf style log entry to the log file. When not compiled in, no logging is performed. Note that I use the Hostxxxx() function naming convention to indicate that the call is to a platform specific function rather than a core function. Whew! Have a look, enjoy... etc... I'm going to bed. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 00:32:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA54962 for dynarec-outgoing; Mon, 7 May 2001 00:32:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000d01c0d6ca$97e24460$05ac2ac0@mingming> From: "Graeme Barnes" To: References: <195904012057.OAA09032@gtoal.com> Subject: Re: DYNAREC: Tight timing issues Date: Mon, 7 May 2001 08:51:56 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6600 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6600 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > By the way, in the Beeb Elite, there was a display panel at the > bottom of the screen which if I remember right used either a pallete > or a screen mode which was changed on the fly during a *horizontal* > sync, calculated using a timer reset on vsync! If you can make that > work your timing emulation is pretty damned good. This isn't true of the Archimedes version of Elite but it is used in Lemmings and Twinworld (at least). Any yes it does work! Cheers, Graeme --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 00:47:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA54982 for dynarec-outgoing; Mon, 7 May 2001 00:47:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <1BFCEA4AB90BD411B9680008C7E6E07A02439209@EFRMANT213.fr.eu.ericsson.se> From: "Daniel Gracia Perez (ESF)" To: "'dynarec@dynarec.com'" Subject: DYNAREC: comments Date: Mon, 7 May 2001 10:03:38 +0200 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.5.2653.19) Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id AAA54979 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com hi everybody, i'm Daniel Gracia Pérez (a new spanish guy in the list aarrrggghhh!!!!) and i'm a friend of Victor. i have been a long time connected to the mailing list and i would like to participate in your project if it is possible, even if i am what you can call a newbie. i could help with coding, debugging or documenting it depends on where is the people needed. i have been for a short time in the emulation scene and my only project related with it is a space invaders emulator using dynarec to emulate the cpu (i think victor spoke about me in one of his old emails). before starting it i have been reading a lot of documents and other emulators to know how do they work. i will like to make some comments (technical and not technical) about the project: + don't make another mailing list just for the people inside the project, there is a lot of people that could help just giving a simple idea that everybody in the project was missing. and don't use other system than the mailing list, it is the simple method to send info and everybody has access to it (i can not install icq in the office and at home i pay the connection so it is not to stay chatting for hours). + about commercial use of the project: even if everybody seems a little bit communist in the list the one who works more should get more. personally i don't have any interest for the money the project can be making, but i will not say no if we can make any money of it. + now a little bit more technical: a basic block should not finish with the jump instruction. in my emu of si there is constantly jumps thing that would make my basic blocks really small and a little bit useless to make optimizations at block level. i am sure that before starting writing that mail i had more comments but now i don't remember them, i will try to post them in next mails (and i will try to participate "more" in the project/list). finally i think the Neil B said that there are 50 people on the list, isn't it? i would like to make you notice that maybe some people is logged twice, like me (email in the office and home) so maybe the number of people is less than 50. note: if you have an email that ends with qtx.ericsson.se delete it, it was my mail when i was working in sweden but now i am in france so it is useless to keep it (sorry i forgot to unsubscribe me from the list when i left frow sweden and now i don't have access to the email account). well that's all for now, bye people, dani. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 06:31:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA55429 for dynarec-outgoing; Mon, 7 May 2001 06:30:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003201c0d6fc$7d84c610$0100a8c0@home.local> From: "Neil Griffiths" To: References: <1BFCEA4AB90BD411B9680008C7E6E07A02439209@EFRMANT213.fr.eu.ericsson.se> Subject: Re: DYNAREC: comments Date: Mon, 7 May 2001 14:48:18 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > + now a little bit more technical: a basic block should not finish with the jump > instruction. in my emu of si there is constantly jumps thing that would make my > basic blocks really small and a little bit useless to make optimizations at block level. Not sure if you know that we mean the basic block ends with a jump (no condition) and not something like a jz - a jump condition? I would find it odd if you had lots of JMP commands in the Z80 SI code so close together... > finally i think the Neil B said that there are 50 people on the list, isn't it? i would like > to make you notice that maybe some people is logged twice, like me (email in the > office and home) so maybe the number of people is less than 50. note: if you have > an email that ends with qtx.ericsson.se delete it, it was my mail when i was working > in sweden but now i am in france so it is useless to keep it (sorry i forgot to > unsubscribe me from the list when i left frow sweden and now i don't have access to > the email account). You make a good point, I'm also subscribed twice (once for my German e-mail account, still active, and one for my Dynarec address)! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 06:38:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA55446 for dynarec-outgoing; Mon, 7 May 2001 06:38:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00c601c0d6fd$308eaaa0$d49b4ed4@menta.net> From: "Victor Moya del Barrio" To: References: <195904012155.PAA09187@gtoal.com> Subject: Re: DYNAREC: Issues Date: Mon, 7 May 2001 15:54:08 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Skills: I am really poor at starting documentation of any kind > but I can edit the hell out of anything! > > At some point down the road, I'ld be happy to take Victor's content > and dot i's, cross t's, and generally revamp it as if originally > written by a native english speaker, with his permission. > I think we finally agreed that Mike will be the one working in the documentation. > (Those of you who don't know me from my word-games site - English > language has always been a preoccupation of mine (as well as other > languages) and I've spent a couple of years doing linguistics as > well; computing is my second love, not my first.) > It seems we have many people interested in languages here. Maybe we should change the name of the list ;). > Graham > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 06:56:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA55473 for dynarec-outgoing; Mon, 7 May 2001 06:56:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <1BFCEA4AB90BD411B9680008C7E6E07A0243920A@EFRMANT213.fr.eu.ericsson.se> From: "Daniel Gracia Perez (ESF)" To: "'dynarec@dynarec.com'" Subject: RE: DYNAREC: comments Date: Mon, 7 May 2001 16:12:24 +0200 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.5.2653.19) Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id GAA55470 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com hej, >-----Message d'origine----- >De: Neil Griffiths [mailto:neilg@dynarec.com] >Date: lundi 7 mai 2001 15:48 >À: dynarec@dynarec.com >Objet: Re: DYNAREC: comments > > >Hi, > > >> + now a little bit more technical: a basic block should not >finish with >the jump >> instruction. in my emu of si there is constantly jumps thing >that would >make my >> basic blocks really small and a little bit useless to make >optimizations >at block level. > >Not sure if you know that we mean the basic block ends with a jump (no >condition) and not something like a jz - a jump condition? I >would find it >odd if you had lots of JMP commands in the Z80 SI code so >close together... well i think i wrote it a little bit fast and that i was missing the point of conditional jumps. what i wanted to say is that you can not say that if you find an unconditional jump you can affirm directly that it is the end of a block (or at least so drastically), maybe the jump can be the end of loop. and you are right neil, i don't have a lot of unconditional jumps together, 'i have a lot of jumps together'. and just a note: when writing emails on the list try to be a little more sensible with people that doesn't control english as well as others. my god, for someone that doesn't know what the hell is Food Fight and why does Neil B means by Guinea Pig (cerdo de guinea???? victor habias escuchado eso antes), a sentence with Food Fight and Guinea Pig is a little bit cumbersome. it took me ten mails more to be sure that it was a video game. > >> finally i think the Neil B said that there are 50 people on the list, >isn't it? i would like >> to make you notice that maybe some people is logged twice, >like me (email >in the >> office and home) so maybe the number of people is less than >50. note: if >you have >> an email that ends with qtx.ericsson.se delete it, it was my >mail when i >was working >> in sweden but now i am in france so it is useless to keep it (sorry i >forgot to >> unsubscribe me from the list when i left frow sweden and now >i don't have >access to >> the email account). > >You make a good point, I'm also subscribed twice (once for my >German e-mail >account, still active, and one for my Dynarec address)! > >Neil. > thanks again neil. bye, dani. >--------------------------------------------------------------- >------------ >** To UNSUBSCRIBE from dynarec, send a message with >"UNSUBSCRIBE" in the >** message body to dynarec-request@dynarec.com. Please direct other >** questions, comments, or problems to neilb@dynarec.com. > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 07:02:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA55490 for dynarec-outgoing; Mon, 7 May 2001 07:02:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00d401c0d700$94c53d60$d49b4ed4@menta.net> From: "Victor Moya del Barrio" To: References: <1BFCEA4AB90BD411B9680008C7E6E07A0243920A@EFRMANT213.fr.eu.ericsson.se> Subject: Re: DYNAREC: comments Date: Mon, 7 May 2001 16:18:25 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > and just a note: when writing emails on the list try to be a little more > sensible with people that doesn't control english as well as others. my god, > for someone that doesn't know what the hell is Food Fight and why does Neil > B means by Guinea Pig (cerdo de guinea???? victor habias escuchado eso antes), He! I think the correct spanish translation is 'conejillo de indias' ;). BTW (it seems the mail I sent from the work does not arrived ...) I have more than two (or three ;)) accounts subscribed ... :)) Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 08:39:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA55567 for dynarec-outgoing; Mon, 7 May 2001 08:38:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 08:57:19 -0700 (PDT) From: Neil Bradley To: "'dynarec@dynarec.com'" Subject: Re: DYNAREC: comments In-Reply-To: <1BFCEA4AB90BD411B9680008C7E6E07A02439209@EFRMANT213.fr.eu.ericsson.se> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > + about commercial use of the project: even if everybody seems a > little bit communist in the list the one who works more should get > more. personally i don't have any interest for the money the project > can be making, but i will not say no if we can make any money of it. I would tend to "play" with the money a bit. I'd find a way to funnel some of it back into the project, like new HDs for everyone or something, or upgrading the dynarec server (which I just incidentally renewed for another 2 years). -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 08:43:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA55582 for dynarec-outgoing; Mon, 7 May 2001 08:43:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 09:02:21 -0700 (PDT) From: Neil Bradley To: "'dynarec@dynarec.com'" Subject: RE: DYNAREC: comments In-Reply-To: <1BFCEA4AB90BD411B9680008C7E6E07A0243920A@EFRMANT213.fr.eu.ericsson.se> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > and just a note: when writing emails on the list try to be a little more > sensible with people that doesn't control english as well as others. my god, > for someone that doesn't know what the hell is Food Fight and why does Neil > B means by Guinea Pig (cerdo de guinea???? victor habias escuchado eso antes), > a sentence with Food Fight and Guinea Pig is a little bit cumbersome. it took > me ten mails more to be sure that it was a video game. Also keep in mind that when something is an integral part of the language that it's nearly impossible to get all of the slang out. I never would've thought twice about Guinea Pig, nor would I have seen it as anything out of the ordinary. But in any case, a Guinea Pig is a little rodent that is often used in scientific experiments - medical usually. Over decades of use, it has come to mean a "test subject". -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 10:07:27 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA55659 for dynarec-outgoing; Mon, 7 May 2001 10:06:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 10:25:21 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Transmeta shares battered Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Distantly on topic: http://cnnfn.cnn.com/2001/05/07/technology/transmeta_stock/ The only good thing they've done so far is given Intel a kick to the groin for power consumption. They've contributed NOTHING else to the world of computing except hype. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 10:23:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA55683 for dynarec-outgoing; Mon, 7 May 2001 10:23:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <01fa01c0d71f$001afaa0$5da4fea9@burp> From: "Tom Browne" To: References: Subject: Re: DYNAREC: Transmeta shares battered Date: Mon, 7 May 2001 18:56:10 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Anyone else seen this table? http://www.tech-report.com/cpu/ The Motorolas come out looking impressive... even though they do seem to be stuck at fairly low clockrates these days... - Tom. ----- Original Message ----- From: "Neil Bradley" To: Sent: Monday, May 07, 2001 6:25 PM Subject: DYNAREC: Transmeta shares battered > Distantly on topic: > > http://cnnfn.cnn.com/2001/05/07/technology/transmeta_stock/ > > The only good thing they've done so far is given Intel a kick to the groin > for power consumption. They've contributed NOTHING else to the world of > computing except hype. > > -->Neil --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 10:54:27 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA55714 for dynarec-outgoing; Mon, 7 May 2001 10:54:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 11:12:56 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Transmeta shares battered In-Reply-To: <01fa01c0d71f$001afaa0$5da4fea9@burp> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Anyone else seen this table? > http://www.tech-report.com/cpu/ > The Motorolas come out looking impressive... even though they do seem to be > stuck at fairly low clockrates these days... Actually, they don't. All the Moto CPUs are tons slower, and this table doesn't include the mobile Pentium IIIs which consume less power than the G3/G4s do and have significantly better performance. Also, I have a feeling that these numbers are somehow biased. I recall, after reading some spec sheets, the G4 being closer to the 24 watt range rather than the 11 that's reported in this table. Though I am surprised at how much current the Alphas take, and I do notice that the Athlon 1ghz consumes 65 watts where the 1Ghz PIII take 33. That surprises me! The fastest frontside bus for a moto CPU is 133Mhz, where even the Durons have DDR RAM (effectively 200Mhz) and Intel has the quad pumped FSB (effectively 400Mhz). There's also 150Mhz front side bus as well. The G4 *JUST* got 133Mhz. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 13:04:48 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA55857 for dynarec-outgoing; Mon, 7 May 2001 13:03:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c0d735$5b31c200$5da4fea9@burp> From: "Tom Browne" To: References: Subject: Re: DYNAREC: Transmeta shares battered Date: Mon, 7 May 2001 21:36:07 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-Mimeole: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Anyone else seen this table? > > http://www.tech-report.com/cpu/ > > The Motorolas come out looking impressive... even though they do seem to be > > stuck at fairly low clockrates these days... > Actually, they don't. All the Moto CPUs are tons slower, Hmm? I thought Apple had been banging on for years about how superior the Motorola architecture was to Intels? Carmack suggested there wasn't much between the G4 and P3... just flawed in different areas. The only thing I can remember about the Motorolas (probably whilst reading up the now-shelved GameCube) is that they were meant to have a very fast multiply... > and this table > doesn't include the mobile Pentium IIIs which consume less power than the > G3/G4s do and have significantly better performance. What are the pros and cons of the G4, in your opinion? > Also, I have a > feeling that these numbers are somehow biased. I recall, after reading > some spec sheets, the G4 being closer to the 24 watt range rather than the > 11 that's reported in this table. There is no mention how they got the data... I'm sure the dissipation will vary depending upon what the CPU is doing. > Though I am surprised at how much current the Alphas take, and I do notice > that the Athlon 1ghz consumes 65 watts where the 1Ghz PIII take 33. That > surprises me! Well... the PIII is on a slightly lower voltage, and has a lot less transistors! > The fastest frontside bus for a moto CPU is 133Mhz, where even the Durons > have DDR RAM (effectively 200Mhz) and Intel has the quad pumped FSB > (effectively 400Mhz). There's also 150Mhz front side bus as well. The G4 > *JUST* got 133Mhz. Memory bandwidth is a very serious issue with the SIMD extensions featured on both families. Looks like the P4 is waaay ahead right now, but where are the apps?! - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 13:23:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA55885 for dynarec-outgoing; Mon, 7 May 2001 13:22:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 13:41:39 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Transmeta shares battered In-Reply-To: <000b01c0d735$5b31c200$5da4fea9@burp> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > stuck at fairly low clockrates these days... > > Actually, they don't. All the Moto CPUs are tons slower, > Hmm? I thought Apple had been banging on for years about how superior the > Motorola architecture was to Intels? Well, Intel doesn't have an "architecture", they have a CPU, which is a bit different than the Moto lineup. It's a PowerPC architecture, and the G3/G4 happen to be the CPUs. And it's also not much of a fair comparison. The x86 stuff, when the PowerPC architecture came out, was 16 years old. That's like me comparing cars of today to a car made 16 years ago. I rather like the PowerPC architecture. It 'aint RISC, though like some would like to believe. IT has all kinds of CISC instructions, but the orthogonality of the instruction set of course is a Godsend. Well, the number of registers are a godsend. ;-) That's really the x86's weakest link right there. > Carmack suggested there wasn't much > between the G4 and P3... just flawed in different areas. In the areas that he used yes, there isn't much difference. The FP units in both CPUs are excellent. They are/were certainly comparable, but I recall the Pentium being able to add/sub/mul/div in FP faster than or equal to the PowerPC series of CPUs due to it having dedicated hardware for each type of instruction. However, one thing remains - The PowerPC is far more constrained by memory bandwidth than the x86 is. The average # of bytes for an instruction on x86 is 2.8, where on the PowerPC it's around 6. This means the increased internal clock speed of the Pentiums gives more of an advantage because it typically has to access external memory less often. You can get around this by increasing the cache size, but you do hit limitations, especially if you have an application that broadly accesses memory. > > and this table > > doesn't include the mobile Pentium IIIs which consume less power than the > > G3/G4s do and have significantly better performance. > What are the pros and cons of the G4, in your opinion? Replace "G4" with PowerPC: Pros: Clean/simple design. Very useful and orthogonal instruction set (I believe better than Intel's overall). Cons: Instruction size. Cache size. Memory speed bandwidth. The last set there is a killer. The PowerPC architecture is really constrained by the memory bus speed, moreso than any Intel platform. > > feeling that these numbers are somehow biased. I recall, after reading > > some spec sheets, the G4 being closer to the 24 watt range rather than the > > 11 that's reported in this table. > There is no mention how they got the data... I'm sure the dissipation will > vary depending upon what the CPU is doing. But not by *THAT* much... unless you're considering "what the CPU is doing" to mean things like powerdown or power conservation mode. ;-) > > have DDR RAM (effectively 200Mhz) and Intel has the quad pumped FSB > > (effectively 400Mhz). There's also 150Mhz front side bus as well. The G4 > > *JUST* got 133Mhz. > Memory bandwidth is a very serious issue with the SIMD extensions featured > on both families. Looks like the P4 is waaay ahead right now, but where are > the apps?! And not only that, not all apps can take advantage of the SIMD extensions. But as with anything, it'll take time. The same deal with the P4 optimization. We don't have compilers that can generate P4 specific code, so we haven't seen the P4's true potential yet. Then again, the same thing was said about the PowerPC when it was first released. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 14:23:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA55947 for dynarec-outgoing; Mon, 7 May 2001 14:22:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 14:41:27 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Food Fight! Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com And yes, it's a video game. ;-) Quite a good one, actually! I'm trying to figure out what the best way to proceed is, here and wanted to get some input from the contributors as to why it'd be better than the alternatives: * Create a single procedure that runs Food Fight on both a 68K core and on the dynarec at the same time. We step each emulator core one instruction and we can compare registers, flags, and timing after each execution. Game graphics are blitted to the same display surface - the emulation being at one side and the recompilation being at the other. * Create two separate procedures that run Food Fight - one on an emulated 68K core and one on the dynarec. They couldn't be run at the same time, but it'd simplify the main loop and allow us to choose one or the other. I'm thinking that the first option above would be better, but I'd like to hear why the second might be. We even could selectively enable either or both in option #1 above... Thoughts? -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 14:46:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA55979 for dynarec-outgoing; Mon, 7 May 2001 14:46:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 7 May 01 18:01:34 -0400 Message-Id: <3.0.5.32.20010507145839.0081e8e0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 07 May 2001 14:58:39 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Stuff Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, There are a few things I wanted to mention, I figured I could stuff them into one message: - Genital68K Version 0.35 is up (http://trzy.overclocked.org/gen68k.) Unless I forgot something and have to do another release, this is the version I recommend for testing against DR68K. - DR68K is going to need a special mode for PC-relative reads. This is a pretty weird situation. Apparently, the only convenient way to emulate the CPS-2 arcade hardware at the moment is to have the read/write handlers access the encrypted ROMs, and PC-relative reads access the decrypted ROMs. Yes, it sounds weird to me, too ;) Since I've never looked into CPS-2 emulation, I don't know if there is in fact a better way to do it, but MAME supports this method, and all the CPS-2 emulator authors say they can't live without it. It's some sort of a trick to get CPS-2 games running, but it works, and is needed for the time being... Recently, ElSemi, author of Nebula (CPS-2 emulator) mentioned that Genital68K runs CPS-2 games better than Starscream (he made PC-relative modifications of his own to it), and is faster. So, I'm a bit pleased to here that ;) - I've only glanced at the instruction set definition scripts, so I don't know too much about them, but I wanted to ask if they support weird instruction behavior. Specifically with flags. Take a look at ASL/ASR (the V flag), ADDX (the Z flag), etc. Neil: I'm just about to go fire up Brief. I also downloaded the DR.ZIP archive you posted, I'll try to get it compiling with DJGPP and let you know how it goes. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 14:53:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA55993 for dynarec-outgoing; Mon, 7 May 2001 14:53:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 15:12:40 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Stuff In-Reply-To: <3.0.5.32.20010507145839.0081e8e0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > - Genital68K Version 0.35 is up (http://trzy.overclocked.org/gen68k.) > Unless I forgot something and have to do another release, this is the > version I recommend for testing against DR68K. My initial plans for this test is to use Starscream, however I think we'll want to modify it to use Genital68K instead. The only reason for this is that I know Starscream and I know that Food Fight works with it. I'd rather not be debugging both the glue and the CPU at one time, > - DR68K is going to need a special mode for PC-relative reads. > Recently, ElSemi, author of Nebula (CPS-2 emulator) mentioned that > Genital68K runs CPS-2 games better than Starscream (he made PC-relative > modifications of his own to it), and is faster. So, I'm a bit pleased to > here that ;) That's very cool to hear. > - I've only glanced at the instruction set definition scripts, so I don't > know too much about them, but I wanted to ask if they support weird > instruction behavior. Specifically with flags. Take a look at ASL/ASR (the > V flag), ADDX (the Z flag), etc. There's really no "support" - it just generates framework and tables for later parsing/processing. The end user will still have to do a bit of filling in the blanks if there's any funky processing to be done. > Neil: I'm just about to go fire up Brief. I think you'll like it. Let me know if you have any questions about it. The one thing you won't like is the key repeat rate. It's fairly insane. > I also downloaded the DR.ZIP > archive you posted, I'll try to get it compiling with DJGPP and let you > know how it goes. Sounds good! Keep my notes handy, and let me know of any changes/warnings that had to be made. I'm compiling with all warnings being treated as errors and at the highest warning level, though I suspect gcc's error checking is better than MSVC's. When you get a proper makefile made, let me know and I'll drop it in the archive. Hopefully I can also compile it under UNIX as well. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 15:04:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56014 for dynarec-outgoing; Mon, 7 May 2001 15:04:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 7 May 01 18:20:07 -0400 Message-Id: <3.0.5.32.20010507151714.00823710@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 07 May 2001 15:17:14 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Food Fight! In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >* Create a single procedure that runs Food Fight on both a 68K core and on >the dynarec at the same time. We step each emulator core one instruction >and we can compare registers, flags, and timing after each execution. Game >graphics are blitted to the same display surface - the emulation being at >one side and the recompilation being at the other. How's the OS-dependant stuff going to work? Will there be some functions like FoodFightOSDInit(), FoodFightOSDGetInput(), FoodFightOSDBlit(), etc? I could use some of Genital's VGA and keyboard code for the DOS port. I like the idea of step-by-step comparisons. It'll really help a lot. What are we going to use as a debugger? Will there be different debuggers for the different OS ports? >* Create two separate procedures that run Food Fight - one on an emulated >68K core and one on the dynarec. They couldn't be run at the same time, >but it'd simplify the main loop and allow us to choose one or the other. > >I'm thinking that the first option above would be better, but I'd like to >hear why the second might be. We even could selectively enable either or >both in option #1 above... The second option would be beneficial as well because it could help us seek out problematic areas which appear later in the game (graphical corruption, etc.) We could then switch over to side-by-side mode. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 15:11:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56032 for dynarec-outgoing; Mon, 7 May 2001 15:11:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 15:30:41 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight! In-Reply-To: <3.0.5.32.20010507151714.00823710@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >and we can compare registers, flags, and timing after each execution. Game > >graphics are blitted to the same display surface - the emulation being at > >one side and the recompilation being at the other. > How's the OS-dependant stuff going to work? Will there be some functions > like FoodFightOSDInit(), FoodFightOSDGetInput(), FoodFightOSDBlit(), etc? I > could use some of Genital's VGA and keyboard code for the DOS port. A few functions I had in mind: HostCreateDisplaySurface(x, y, depth); HostCreateBackbuffer(x, y, depth); HostGetBackbufferPitch(); HostBlitImage(backbuffer, sourcex, sourcey, xsize, ysize, destx, desty); HostShutdownDisplaySurface(); I didn't intend to put in any keyboard or controller control just yet, but that can be added later. Note that I will expect that any OS we write it for can do controller callbacks rather than polled I/O. > I like the idea of step-by-step comparisons. It'll really help a lot. Yeah, and I think we should be able to selectively enable or disable it, and having them run side by side for a visual comparison might be a good idea. > What are we going to use as a debugger? Will there be different debuggers > for the different OS ports? I would imagine that the components are all the same (disassemblers, etc...) but I can't really envision a UI based debugger that'd be the same for all platforms without a TON of work. We also have to decide what the debugger will actually do? > >I'm thinking that the first option above would be better, but I'd like to > >hear why the second might be. We even could selectively enable either or > >both in option #1 above... > The second option would be beneficial as well because it could help us seek > out problematic areas which appear later in the game (graphical corruption, > etc.) We could then switch over to side-by-side mode. Okay, so I think I'm hearing you say that you like option #1 provided we have the ability to do one and/or the other simultaneously. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 15:13:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56043 for dynarec-outgoing; Mon, 7 May 2001 15:13:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 15:29:48 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight! Message-ID: <20010507152948.G2506@hetfield.patsoffice.com> References: <3.0.5.32.20010507151714.00823710@mailandnews.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-md5; protocol="application/pgp-signature"; boundary="qxfKREH7IwbezJ+T" Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <3.0.5.32.20010507151714.00823710@mailandnews.com>; from trzy@mailandnews.com on Mon, May 07, 2001 at 03:17:14PM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --qxfKREH7IwbezJ+T Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable > How's the OS-dependant stuff going to work? Will there be some functions > like FoodFightOSDInit(), FoodFightOSDGetInput(), FoodFightOSDBlit(), etc?= I > could use some of Genital's VGA and keyboard code for the DOS port. I'm assuming that it'd just blit into a block of memory and not actually to a screen. Displaying memory one step at a time is pretty boring. > I like the idea of step-by-step comparisons. It'll really help a lot. My (limited) experience has found they are good in the beginning, but once the initial framework is working they tend to be more of a hassle (eg. you find a bug in the old CPU core and it sets off an error flag since it affected memory differently, etc.) > What are we going to use as a debugger? Will there be different debuggers > for the different OS ports? I think Neil is initally just planning on debugging to STDOUT but could be wrong about that. As for editors, I tend to like VIM. You probably won't dig it coming from edit.exe, but it's a kick-ass VI clone that has a DOS port (I haven't tried the DOS port.) Pat --=20 "You are not a beautiful and unique snowflake!" - Tyler Durden --qxfKREH7IwbezJ+T Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.4 (GNU/Linux) Comment: For info see http://www.gnupg.org iEYEARECAAYFAjr3IdwACgkQrNiXbbxh4Odz/ACcDmyXHcsK+zCYs6Oh+dz1oeMQ KTYAoNouIvRGlZPNsbVx13IVnPOphKx0 =zQ95 -----END PGP SIGNATURE----- --qxfKREH7IwbezJ+T-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 15:18:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56056 for dynarec-outgoing; Mon, 7 May 2001 15:18:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Jack To: dynarec@dynarec.com Subject: Re: DYNAREC: Stuff Date: Mon, 07 May 2001 18:34:04 -0400 Organization: Three Indians Loony Bin and Fast Food Joint Message-ID: <7i8eftkqam3hfvn5gnbb02ufk6u2v9tl2f@4ax.com> References: <3.0.5.32.20010507145839.0081e8e0@mailandnews.com> In-Reply-To: X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Mon, 7 May 2001 15:12:40 -0700 (PDT), Neil Bradley wrote: >> Neil: I'm just about to go fire up Brief. > >I think you'll like it. Let me know if you have any questions about >it. The one thing you won't like is the key repeat rate. It's fairly >insane. There is a setting that fixes that. Keyboard is fully PC-compatible: >No< That used to drive me insane until I fixed it. -- Jack ---- "I love to go down to the schoolyard and watch all the little children jump up and down and run around yelling and screaming.... They don't know I'm only using blanks." - Emo Phillips --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 15:35:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56081 for dynarec-outgoing; Mon, 7 May 2001 15:35:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 7 May 01 18:51:24 -0400 Message-Id: <3.0.5.32.20010507154823.008272f0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 07 May 2001 15:48:23 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Stuff In-Reply-To: <7i8eftkqam3hfvn5gnbb02ufk6u2v9tl2f@4ax.com> References: <3.0.5.32.20010507145839.0081e8e0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>I think you'll like it. Let me know if you have any questions about >>it. The one thing you won't like is the key repeat rate. It's fairly >>insane. > >There is a setting that fixes that. > >Keyboard is fully PC-compatible: >No< > >That used to drive me insane until I fixed it. Hehe, I noticed the keyboard speed. Thanks for the tip, I'll try the setting. But, overall, Brief is kind of strange :) Really simple, yes, but I'm not sure... I'll have to play around with it some more. I downloaded the evaluation copy of Boxer, and so far it's a pretty impressive editor. Very customizable! Reminds me a lot of Edit, except on steroids or something! Still, are you sure I just can't write a utility to convert 4 spaces into a tab? I could even make it somewhat intelligent, for example, it could skip over commented areas, if necessary ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 15:38:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA56092 for dynarec-outgoing; Mon, 7 May 2001 15:38:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 15:57:42 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Stuff In-Reply-To: <3.0.5.32.20010507154823.008272f0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > But, overall, Brief is kind of strange :) Really simple, yes, but I'm not > sure... I'll have to play around with it some more. Strange isn't a word I'd use. It's very simple, but EXTREMELY powerful. It has quite the macro expansion capability. And you don't have the clumsy ALT interaction like you wind up with in Edit. > Still, are you sure I just can't write a utility to convert 4 spaces into a > tab? I could even make it somewhat intelligent, for example, it could skip > over commented areas, if necessary ;) Why would you bother? Edit sucks compared to Brief or any decent editor that DOESN'T convert all the tabs to spaces. Tabs do not harm people who like spaces, but the reverse is certainly true. I can understand an attachment to tabs, but why spaces? -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 16:11:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA56134 for dynarec-outgoing; Mon, 7 May 2001 16:11:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 7 May 01 19:27:23 -0400 Message-Id: <3.0.5.32.20010507162427.00828be0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 07 May 2001 16:24:27 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Stuff In-Reply-To: References: <3.0.5.32.20010507154823.008272f0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Still, are you sure I just can't write a utility to convert 4 spaces into a >> tab? I could even make it somewhat intelligent, for example, it could skip >> over commented areas, if necessary ;) > >Why would you bother? Edit sucks compared to Brief or any decent editor >that DOESN'T convert all the tabs to spaces. Tabs do not harm people who >like spaces, but the reverse is certainly true. I can understand an >attachment to tabs, but why spaces? I'm not attached to spaces at all, I just really like edit.com ;) I personally wouldn't mind writing a tab converter. Boxer is shaping up to be nice, though. It's very felxible... I could picture myself using that. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 16:17:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA56148 for dynarec-outgoing; Mon, 7 May 2001 16:17:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 7 May 01 19:32:28 -0400 Message-Id: <3.0.5.32.20010507162928.00822d10@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 07 May 2001 16:29:28 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Food Fight! In-Reply-To: References: <3.0.5.32.20010507151714.00823710@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >HostCreateDisplaySurface(x, y, depth); >HostCreateBackbuffer(x, y, depth); >HostGetBackbufferPitch(); >HostBlitImage(backbuffer, sourcex, sourcey, xsize, ysize, destx, desty); >HostShutdownDisplaySurface(); Sounds good... What's the resolution required for Food Fight? >We also have to decide what the debugger will actually do? Trace, breakpoint, step-over, dump, disassemble... the basics. A cool feature I think would be useful is a "load file" command, to load files directly into the 68K address space. Simple programs could be loaded up and tested. >Okay, so I think I'm hearing you say that you like option #1 provided we >have the ability to do one and/or the other simultaneously. Yes. Though, if I had to choose between one or the other, and not both, I would go with #1. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 16:32:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA56170 for dynarec-outgoing; Mon, 7 May 2001 16:32:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 16:51:36 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Stuff In-Reply-To: <3.0.5.32.20010507162427.00828be0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >like spaces, but the reverse is certainly true. I can understand an > >attachment to tabs, but why spaces? > I'm not attached to spaces at all, I just really like edit.com ;) You're sick, man. ;-) Ever try editing a file >200K with edit? 'Aint gonna happen... > Boxer is shaping up to be nice, though. It's very felxible... I could > picture myself using that. So's Brief. What objections do you have with it? I found Boxer to just get in the way. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 16:40:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA56188 for dynarec-outgoing; Mon, 7 May 2001 16:40:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 16:58:57 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight! In-Reply-To: <3.0.5.32.20010507162928.00822d10@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >HostBlitImage(backbuffer, sourcex, sourcey, xsize, ysize, destx, desty); > >HostShutdownDisplaySurface(); > Sounds good... What's the resolution required for Food Fight? The display area of the game is 256x240, so we'd double it to 512x240 if we ran them side by side. The HostCreateDisplaySurface() just has to be AT LEAST the x and y sizes passed in - it can be bigger! > >We also have to decide what the debugger will actually do? > Trace, breakpoint, step-over, dump, disassemble... the basics. Sure, but *HOW*? Command line? Click? UI? That's really where the hard work comes in. At least initially, it'd be good to just do DRLOG() style of traces. Later on we can write a full featured UI-like interface, or something that's in graphics mode that'll run on all OSes and whatnot, but I think initially we just need logging to compare what's going on. Or at least something to say "I just executed this instruction. Under emulation, I got these results, and under recompilation I got these other results." And we can fix them as we go along. This is how I did the Z80 stuff with Space Invaders (not as elegantly) and it worked well. > A cool feature I think would be useful is a "load file" command, to load > files directly into the 68K address space. Simple programs could be loaded > up and tested. But you have to define where your code fetch region would be and allocate memory for it. We'd have to define some sort of architecture up front. > >Okay, so I think I'm hearing you say that you like option #1 provided we > >have the ability to do one and/or the other simultaneously. > Yes. Though, if I had to choose between one or the other, and not both, I > would go with #1. I think we can make -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 16:49:33 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA56203 for dynarec-outgoing; Mon, 7 May 2001 16:49:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 2 Apr 1959 11:53:38 -0600 (CST) From: Graham Toal Message-Id: <195904021753.LAA12250@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight! Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I'm trying to figure out what the best way to proceed is, here and wanted > to get some input from the contributors as to why it'd be better than the > alternatives: > > * Create a single procedure that runs Food Fight on both a 68K core and on > the dynarec at the same time. We step each emulator core one instruction > and we can compare registers, flags, and timing after each execution. Game > graphics are blitted to the same display surface - the emulation being at > one side and the recompilation being at the other. I did this with my Cinemu core in parallel with Zonn's emulator. It is the perfect way to find bugs - got me from nowhere to done in less than 2 days. What was nice was that the harness could execute *both* emulators and still play the game in realtime, so you could debug by playtesting. You may or may not also want to check memory every now and then. In principle if your registers always match, memory should too, assuming your load and store operations are manually debugged first, but since the Cinemu ram was only 256 bytes max, I ran checks on it too, and actually caught some errors. (Careless ones rather than bad design ones) The problem comes when one interpreter tries to be smart, for instance Zonn's would see 8 MUL instructions in a row and conflate them into one step, whereas mine would execute all 8 instructions, with the result that the two interpreters got out of synch. If this is possible, you need a mechanism for allowing them to run free in certain places and then merging again, at which point you then compare all the regs etc. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 17:03:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA56228 for dynarec-outgoing; Mon, 7 May 2001 17:03:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 7 May 01 20:19:09 -0400 Message-Id: <3.0.5.32.20010507171603.00821780@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 07 May 2001 17:16:03 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Food Fight! In-Reply-To: References: <3.0.5.32.20010507162928.00822d10@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The display area of the game is 256x240, so we'd double it to 512x240 if >we ran them side by side. The HostCreateDisplaySurface() just has to be AT >LEAST the x and y sizes passed in - it can be bigger! Hmmm, 512x240... I'll have to do some VESA work. I haven't dealt much with VESA (since my card only supports 1.2, no fast frame bufer support :( I need to get SDD), but I'll see what I can whip up. >Sure, but *HOW*? Command line? Click? UI? That's really where the hard >work comes in. At least initially, it'd be good to just do DRLOG() style >of traces. Later on we can write a full featured UI-like interface, or >something that's in graphics mode that'll run on all OSes and whatnot, but >I think initially we just need logging to compare what's going on. Or at >least something to say "I just executed this instruction. Under emulation, >I got these results, and under recompilation I got these other results." >And we can fix them as we go along. This is how I did the Z80 stuff with >Space Invaders (not as elegantly) and it worked well. Logging sounds good, initially. A command line might be the most easily portable way of doing it. As long as we can see where the differences are, we should be fine, initially. >> A cool feature I think would be useful is a "load file" command, to load >> files directly into the 68K address space. Simple programs could be loaded >> up and tested. > >But you have to define where your code fetch region would be and allocate >memory for it. We'd have to define some sort of architecture up front. We could just load the file up where there's RAM or ROM already. If someone tries loading the file into an unmapped area, it just wouldn't load anything. >I think we can make Didn't come through... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 17:12:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA56253 for dynarec-outgoing; Mon, 7 May 2001 17:12:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 2 Apr 1959 12:16:13 -0600 (CST) From: Graham Toal Message-Id: <195904021816.MAA12343@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight! Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >We also have to decide what the debugger will actually do? > > Trace, breakpoint, step-over, dump, disassemble... the basics. If you can afford the overhead (I could but had an easy CPU to emulate) generate a run-time trace of instructions being executed into a cyclic buffer *all the time* - not just when you have a problem - because you may not be able to duplicate the playtest that triggered the problem. When you detect a problem (eg from comparing your two CPUs, or when you hit an unwritten instruction) you can immediately print out the last 100-odd instructions executed and see how all the registers came to be set the way they were etc. (Actually, instead of a cyclic buffer you can just output to hard disk, but this gets tedious if you're running for more than a few seconds.) Also, log all IO registers to a buffer every time you look at them, so that you can replay the game by feeding the same values back in. If you use a run-length encoding scheme (i.e. only take more space when the IO register changes) an entire game can be encoded in a few 10's of K. Replaying a game is the second most useful debugging technique I found after the dual CPU technique. I have some code for doing the encoding if you want it. (Currently offline due to a DSL failure but I'll produce it if you want it) G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 17:17:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA56267 for dynarec-outgoing; Mon, 7 May 2001 17:17:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 17:36:50 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight! In-Reply-To: <195904021753.LAA12250@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You may or may not also want to check memory every now and then. In > principle if your registers always match, memory should too, assuming > your load and store operations are manually debugged first, but since the > Cinemu ram was only 256 bytes max, I ran checks on it too, and actually > caught some errors. (Careless ones rather than bad design ones) Yeah, that's really handy if it's that small. ;) It's easy to see why a problem could actually show up *LONG* after the real culprit went away, which is why the memory comparison would be so important. > one step, whereas mine would execute all 8 instructions, with the > result that the two interpreters got out of synch. If this is possible, > you need a mechanism for allowing them to run free in certain places > and then merging again, at which point you then compare all the regs etc. Fortunately, there's no funkiness like that going on in these emulator cores, so we're safe. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 17:32:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA56288 for dynarec-outgoing; Mon, 7 May 2001 17:32:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 7 May 01 20:47:39 -0400 Message-Id: <3.0.5.32.20010507174432.008243b0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 07 May 2001 17:44:32 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Stuff In-Reply-To: References: <3.0.5.32.20010507162427.00828be0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You're sick, man. ;-) Ever try editing a file >200K with edit? 'Aint gonna >happen... For huge files, I'll usually use something else. Dirmagic, UltraEdit, etc. The file size restriction isn't Edit at its best ;) I don't often have to edit files that large. >> Boxer is shaping up to be nice, though. It's very felxible... I could >> picture myself using that. > >So's Brief. What objections do you have with it? I found Boxer to just get >in the way. Well, I've been browsing through the online help, getting familiarized with it, but the initial configuration is kind of strange. For example, alt-m is pretty neat, but I'm really used to manipulating blocks with the shift key. I realize I'm just being extremely picky for no good reason, but I can't help it ;) Some of the key assignments are pretty strange. Why can't ESC==quit? :) I haven't yet tried the search/replace functions... edit.com has a nice way of doing searches/replaces. It invokes a simple dialog, where you can select case sensitivity, and in the case of replacement, wether or not to replace all or individually (w/ confirmation.) It's nice because it's all in one command, and with a couple presses of the tab key, I can get it all set up for me ;) Drag-down windows for easy multiple file editing, and ALT-W-1,2,3... shortcuts for multiple files also make edit fairly comfortable. I'll try doing some practical editing with Brief, and I might still try that tab-inserter program. If it turns out to be intelligent enough, I'll be happy. But hopefully I can get used to Brief by then :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 17:37:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA56302 for dynarec-outgoing; Mon, 7 May 2001 17:37:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 17:56:35 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Stuff In-Reply-To: <3.0.5.32.20010507174432.008243b0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >So's Brief. What objections do you have with it? I found Boxer to just get > >in the way. > Well, I've been browsing through the online help, getting familiarized with > it, but the initial configuration is kind of strange. Strange isn't the right word for that... > For example, alt-m is pretty neat, but I'm really used to manipulating > blocks with the shift key. I realize I'm just being extremely picky for no > good reason, but I can't help it ;) And you also can do columnar copies, deletes, etc... by doing alt-c and highlighting text, which you absolutely cannot do in edit. > Some of the key assignments are pretty strange. Why can't ESC==quit? :) Why would ESC be quit? I'm not familiar with any editor that does it, and even edit's "quit" isn't as straightforward. It's Alt-X in Brief. But you can reset the keys to be assigned to whatever you want. > I haven't yet tried the search/replace functions... edit.com has a nice way > of doing searches/replaces. It invokes a simple dialog, where you can > select case sensitivity, and in the case of replacement, wether or not to > replace all or individually (w/ confirmation.) It's nice because it's all > in one command, and with a couple presses of the tab key, I can get it all > set up for me ;) You can hit F5 and type in what you're looking for. That's easier. Plus, you can also do regular expression searching and control case sensitivity (ctrl-F5). Who needs a dialog box? > Drag-down windows for easy multiple file editing, and ALT-W-1,2,3... > shortcuts for multiple files also make edit fairly comfortable. You can open as many files as you want in Brief and do Alt-N or Alt - to shift between them. Plus you can do multifile views, where you have two files open and can see them on the screen simultaneously. > I'll try doing some practical editing with Brief, and I might still try > that tab-inserter program. If it turns out to be intelligent enough, I'll > be happy. But hopefully I can get used to Brief by then :) Brief is a well respected, very easy to use, and extremely powerful editor. It's definitely worth the effort to ditch edit, as you'll also note that Brief emulation is in just about every editor out there (Codewright is one!). -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 17:38:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA56312 for dynarec-outgoing; Mon, 7 May 2001 17:38:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 17:57:24 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Food Fight! In-Reply-To: <3.0.5.32.20010507171603.00821780@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >The display area of the game is 256x240, so we'd double it to 512x240 if > >we ran them side by side. The HostCreateDisplaySurface() just has to be AT > >LEAST the x and y sizes passed in - it can be bigger! > Hmmm, 512x240... I'll have to do some VESA work. I haven't dealt much with > VESA (since my card only supports 1.2, no fast frame bufer support :( I > need to get SDD), but I'll see what I can whip up. It doesn't have to be 512x240, it just has to be *BIGGER* than 512x240. 640x480 would do absolutely fine! > As long as we can see where the differences are, we should be fine, initially. Yeah. I'm thinking that logging will be enough for starters. > >But you have to define where your code fetch region would be and allocate > >memory for it. We'd have to define some sort of architecture up front. > We could just load the file up where there's RAM or ROM already. If someone > tries loading the file into an unmapped area, it just wouldn't load anything. Or better yet, says "Hey dummy, you just tried to load code into an unmapped area". > >I think we can make > Didn't come through... it work either way. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 20:28:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA56464 for dynarec-outgoing; Mon, 7 May 2001 20:28:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 7 May 01 23:43:47 -0400 Message-Id: <3.0.5.32.20010507204020.00823640@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 07 May 2001 20:40:20 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Core work in progress In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >* Compile dis486.c, insnsd.c, sync.c, and dasm68k.c that are located in >the /Disasm directory I ran into some trouble with the X86 disassembler: D:\dr>make gcc -I. -Wall -g -c -DMEMCHK -DASSERTS -DDRLOG Disasm/x86/insnsn.c -o Objs/insns n.o Disasm/x86/insnsn.c:469: `I_CMOVcc' undeclared here (not in a function) Disasm/x86/insnsn.c:469: initializer element is not constant Disasm/x86/insnsn.c:469: (near initialization for `ico[0]') Disasm/x86/insnsn.c:470: `I_Jcc' undeclared here (not in a function) Disasm/x86/insnsn.c:470: initializer element is not constant Disasm/x86/insnsn.c:470: (near initialization for `ico[1]') Disasm/x86/insnsn.c:472: `I_SETcc' undeclared here (not in a function) Disasm/x86/insnsn.c:472: initializer element is not constant Disasm/x86/insnsn.c:472: (near initialization for `ico[2]') Disasm/x86/insnsn.c:5: warning: `insn_names' defined but not used Disasm/x86/insnsn.c:461: warning: `icn' defined but not used Disasm/x86/insnsn.c:468: warning: `ico' defined but not used make.exe: *** [Objs/insnsn.o] Error 1 Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 20:36:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA56480 for dynarec-outgoing; Mon, 7 May 2001 20:36:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 7 May 01 23:51:43 -0400 Message-Id: <3.0.5.32.20010507204814.00825100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 07 May 2001 20:48:14 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Stuff In-Reply-To: References: <3.0.5.32.20010507174432.008243b0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You can open as many files as you want in Brief and do Alt-N or Alt - to >shift between them. Plus you can do multifile views, where you have two >files open and can see them on the screen simultaneously. Edit can do simultaneous viewing. But can Brief jump to a certain file instantly, instead of cycling through all available files? It also doesn't move to the previous line when the beginning of the current line has been hit with backspace. BTW, can it do 80x25? 80x50 is nice, but sometimes 80x25 is preferrable (since I'm so used to it, it's easier on my 4 eyes ;)) I wrote my DR makefile in Brief, though, so I'm starting to get the hang of it :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 20:51:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA56497 for dynarec-outgoing; Mon, 7 May 2001 20:49:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 8 May 01 00:05:10 -0400 Message-Id: <3.0.5.32.20010507210142.008255f0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 07 May 2001 21:01:42 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Food Fight! In-Reply-To: <195904021816.MAA12343@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >If you can afford the overhead (I could but had an easy CPU to emulate) >generate a run-time trace of instructions being executed into a cyclic >buffer *all the time* - not just when you have a problem - because you >may not be able to duplicate the playtest that triggered the problem. Sounds like a good idea. >Also, log all IO registers to a buffer every time you look at them, so >that you can replay the game by feeding the same values back in. If you >use a run-length encoding scheme (i.e. only take more space when the >IO register changes) an entire game can be encoded in a few 10's of K. I'm sure CPU logs could be made very compact. Only the modified registers would have to be saved. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 21:06:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA56522 for dynarec-outgoing; Mon, 7 May 2001 21:05:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3AF77260.C4A9882A@austin.rr.com> Date: Mon, 07 May 2001 21:13:20 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Core work in progress References: <3.0.5.32.20010507204020.00823640@mailandnews.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Bart wrote: > >* Compile dis486.c, insnsd.c, sync.c, and dasm68k.c that are located in > >the /Disasm directory > > I ran into some trouble with the X86 disassembler: > > D:\dr>make > gcc -I. -Wall -g -c -DMEMCHK -DASSERTS -DDRLOG Disasm/x86/insnsn.c -o > Objs/insns > n.o insnsn.c is not meant to be compiled seperately, it's #include'd in names.c, which is in turn #include'd in dis486.c, after a few important #include's, one of which which defines the obscenely huge enum that generates all the symbolic definitions. Ick-code at it's worst. > Bart > > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 21:14:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA56536 for dynarec-outgoing; Mon, 7 May 2001 21:12:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 21:31:43 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Core work in progress In-Reply-To: <3AF77260.C4A9882A@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >* Compile dis486.c, insnsd.c, sync.c, and dasm68k.c that are located in > > >the /Disasm directory > > I ran into some trouble with the X86 disassembler: > > D:\dr>make > > gcc -I. -Wall -g -c -DMEMCHK -DASSERTS -DDRLOG Disasm/x86/insnsn.c -o > > Objs/insns > > n.o > insnsn.c is not meant to be compiled seperately, it's #include'd in names.c, Yeah, what John said. You're only supposed to compile dis486.c, insnsd.c, and sync. > which is in turn #include'd in dis486.c, after a few important #include's, one > of which which defines the obscenely huge enum that generates all the symbolic > definitions. > Ick-code at it's worst. No kidding. #including a .c file in a .h file should be punishable by death. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 21:20:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA56549 for dynarec-outgoing; Mon, 7 May 2001 21:19:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3AF775BE.B87D95AF@austin.rr.com> Date: Mon, 07 May 2001 21:27:43 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Core work in progress References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Ick-code at it's worst. > > No kidding. #including a .c file in a .h file should be punishable by > death. Agreed, I had to put up with such gems as this: #include "gui2.cpp" (gui2.cpp was 11.2K, and defined some functions involving ship class type creation...) more often than not at Flatline. Then there was the garbage subdir... > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley C++ - A language where you can make your > Synthcom Systems, Inc. privates public > ICQ #29402898 -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 21:46:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA56575 for dynarec-outgoing; Mon, 7 May 2001 21:44:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 8 May 01 01:00:23 -0400 Message-Id: <3.0.5.32.20010507215652.008243c0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 07 May 2001 21:56:52 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Core work in progress In-Reply-To: <3AF77260.C4A9882A@austin.rr.com> References: <3.0.5.32.20010507204020.00823640@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >insnsn.c is not meant to be compiled seperately, it's #include'd in names.c, >which is in turn #include'd in dis486.c, after a few important #include's, one >of which which defines the obscenely huge enum that generates all the symbolic >definitions. Thanks! It compiles fine now. >Ick-code at it's worst. Oh yeah :) They should have at least used a .h extension. ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 21:48:27 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA56588 for dynarec-outgoing; Mon, 7 May 2001 21:46:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 8 May 01 01:02:27 -0400 Message-Id: <3.0.5.32.20010507215857.00826330@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 07 May 2001 21:58:57 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Core work in progress In-Reply-To: References: <3AF77260.C4A9882A@austin.rr.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=====================_989323137==_" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --=====================_989323137==_ Content-Type: text/plain; charset="us-ascii" >Yeah, what John said. You're only supposed to compile dis486.c, insnsd.c, >and sync. Done, done, and done. ;) I've attached a sample makefile in case you wanted to see it. It isn't great, and should probably be rewritten. The LD stuff isn't even used, and there will probably need to be many more rules. But it works! --=====================_989323137==_ Content-Type: text/plain; charset="us-ascii" Content-Disposition: attachment; filename="makefile.dos" # # 'DJDOS' Sample Makefile # Hey, Neil, I used Brief to write this thing! Aarghhh! =P # # # Compilers, Assemblers, and Linkers -- oh, my! # CC = gcc AS = nasm LD = ld # # Options # CMACROS = -DMEMCHK -DASSERTS -DDRLOG CFLAGS = -I. -Wall -g -c $(CMACROS) AFLAGS = -f coff LFLAGS = # # Output Binary # OUTPUT = dr.exe # # "Global" Header Files # GLOBAL_H = Objs/plattype.h Osdep/osdep.h # # Objects # OBJ_OSDEP = Objs/djdos/djdos.o OBJ_CORE = Objs/dynarec.o Objs/memory.o OBJ_DISASM = Objs/dasm68k.o Objs/dis486.o Objs/insnsd.o Objs/sync.o OBJ_EXAMPLES = Objs/foodfght.o # # Rules # all: $(OBJ_OSDEP) $(OBJ_CORE) $(OBJ_DISASM) $(OBJ_EXAMPLES) $(GLOBAL_H) gcc -o $(OUTPUT) $(OBJ_OSDEP) $(OBJ_CORE) $(OBJ_DISASM) $(OBJ_EXAMPLES) clean: del Objs\djdos\*.o del Objs\*.o Objs/plattype.h: copy Osdep\djdos\plattype.h Objs Objs/%.o: %.c %.h $(GLOBAL_H) $(CC) $(CFLAGS) $< -o $@ Objs/djdos/%.o: Osdep/djdos/%.c Osdep/djdos/%.h $(GLOBAL_H) $(CC) $(CFLAGS) $< -o $@ Objs/%.o: Core/%.c Core/%.h $(GLOBAL_H) $(CC) $(CFLAGS) $< -o $@ Objs/%.o: Disasm/68k/%.c Disasm/68k/%.h $(GLOBAL_H) $(CC) $(CFLAGS) $< -o $@ Objs/%.o: Disasm/x86/%.c Disasm/x86/%.h $(GLOBAL_H) $(CC) $(CFLAGS) $< -o $@ Objs/%.o: Disasm/x86/%.c Disasm/x86/disasm.h $(GLOBAL_H) # for dis486.c $(CC) $(CFLAGS) $< -o $@ Objs/%.o: Example/%.c Example/%.h $(GLOBAL_H) $(CC) $(CFLAGS) $< -o $@ --=====================_989323137==_ Content-Type: text/plain; charset="us-ascii" Bart --=====================_989323137==_-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 22:06:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA56612 for dynarec-outgoing; Mon, 7 May 2001 22:05:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 22:24:05 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Stuff In-Reply-To: <3.0.5.32.20010507204814.00825100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >shift between them. Plus you can do multifile views, where you have two > >files open and can see them on the screen simultaneously. > Edit can do simultaneous viewing. Really? > But can Brief jump to a certain file instantly, instead of cycling through > all available files? Sure. There's a way to do it, but I don't see why it'd really be needed... > It also doesn't move to the previous line when the beginning of the current > line has been hit with backspace. If you put it in document editing mode it will do that, but I can't imagine why. > BTW, can it do 80x25? 80x50 is nice, but sometimes 80x25 is preferrable > (since I'm so used to it, it's easier on my 4 eyes ;)) Jeez... you really are an Edit bigot, aren't you? ;-) There's a setup.exe program in the Brief directory and there's an option in there to set 25 line mode. > I wrote my DR makefile in Brief, though, so I'm starting to get the hang of > it :) Yeah. It took me about a week to get used to it, but it's worth the burn of time to figure itout. It really is a powerful editor and you dont' have a UI to get in your way, either. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 22:35:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA56639 for dynarec-outgoing; Mon, 7 May 2001 22:34:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 8 May 01 01:49:37 -0400 Message-Id: <3.0.5.32.20010507224603.00794a30@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 07 May 2001 22:46:03 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Stuff In-Reply-To: References: <3.0.5.32.20010507204814.00825100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 10:24 PM 5/7/2001 -0700, you wrote: >> >shift between them. Plus you can do multifile views, where you have two >> >files open and can see them on the screen simultaneously. >> Edit can do simultaneous viewing. > >Really? Yep, under the View menu, "split window." Okay, only 2 at a time, but it's not bad ;) >> But can Brief jump to a certain file instantly, instead of cycling through >> all available files? > >Sure. There's a way to do it, but I don't see why it'd really be needed... I'll have to figure it out... I actually use that feature a lot. For example, say I'm editing 5 files (mixing and matching, cutting and pasting, making a general mess of things.) I can switch between 1 and 3 easily... ALT-V-1, ALT-V-3, and when I have to fetch something from file #5, ALT-V-5, and back to ALT-V-3 again. I love it :) >> It also doesn't move to the previous line when the beginning of the current >> line has been hit with backspace. > >If you put it in document editing mode it will do that, but I can't >imagine why. I found myself cutting out a few lines while writing the Makefile, and wanted to use backspace to move the lines below back up. Habit, I suppose. >Jeez... you really are an Edit bigot, aren't you? ;-) There's a setup.exe >program in the Brief directory and there's an option in there to set 25 >line mode. The options are 50 or 43, apparently 43 == 25 (perhaps my card doesn't support 43-line mode and it uses 25? It mentioned something about special cards.) >Yeah. It took me about a week to get used to it, but it's worth the burn >of time to figure itout. It really is a powerful editor and you dont' have >a UI to get in your way, either. I'm starting to see that it is powerful, and hopefully once I start messing around with macros, I'll really learn to appreciate it. But you have to admit, MS-DOS Editor has _some_ advantages ;) It's probably just me, though! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 23:16:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA56681 for dynarec-outgoing; Mon, 7 May 2001 23:15:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105080630.IAA22062@pons.ac.upc.es> Subject: Re: DYNAREC: Food Fight! In-Reply-To: "from Neil Bradley at May 7, 2001 02:41:27 pm" To: dynarec@dynarec.com Date: Tue, 8 May 2001 08:30:52 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > And yes, it's a video game. ;-) Quite a good one, actually! > > I'm trying to figure out what the best way to proceed is, here and wanted > to get some input from the contributors as to why it'd be better than the > alternatives: > > * Create a single procedure that runs Food Fight on both a 68K core and on > the dynarec at the same time. We step each emulator core one instruction > and we can compare registers, flags, and timing after each execution. Game > graphics are blitted to the same display surface - the emulation being at > one side and the recompilation being at the other. > I would go for a one to one comparation. When working in the 8080 emulator I used this approach running with your MZ80 and it was quite easy to find bugs. In fact, as the SI screen was so small I separated the graphic generation for both cores. It was fun to play in a kind of doubled SI ;) (there were differences between the two cores). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 7 23:39:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA56703 for dynarec-outgoing; Mon, 7 May 2001 23:38:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 7 May 2001 23:57:01 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Stuff In-Reply-To: <3.0.5.32.20010507224603.00794a30@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Really? > Yep, under the View menu, "split window." Okay, only 2 at a time, but it's > not bad ;) Brief can go as crazy as you'd like. ;-) > >Sure. There's a way to do it, but I don't see why it'd really be needed... > I'll have to figure it out... I actually use that feature a lot. For You can select which file you want. There's a way to do it. I just find hitting alt-N a few times will get me there just as quickly. > >If you put it in document editing mode it will do that, but I can't > >imagine why. > I found myself cutting out a few lines while writing the Makefile, and > wanted to use backspace to move the lines below back up. Habit, I suppose. Have you used the + and - keys on the keypad? Those are shortcuts for line cuts and "copy". > >Jeez... you really are an Edit bigot, aren't you? ;-) There's a setup.exe > >program in the Brief directory and there's an option in there to set 25 > >line mode. > The options are 50 or 43, apparently 43 == 25 (perhaps my card doesn't > support 43-line mode and it uses 25? It mentioned something about special > cards.) No, 50/43 mode are synonymous. What's 50 line mode on some cards is 43 on others (old EGA - doesn't apply any longer). If you select it, it'll ask you if you want 50 line mode or not. Just say no! > But you have to admit, MS-DOS Editor has _some_ advantages ;) Nope. Can't say that I do. ;-) > It's probably > just me, though! Yeah. Definitely! ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 8 07:28:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA57237 for dynarec-outgoing; Tue, 8 May 2001 07:28:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002401c0d7cd$ad7e58a0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <3.0.5.32.20010507204020.00823640@mailandnews.com> <3AF77260.C4A9882A@austin.rr.com> Subject: Re: DYNAREC: Core work in progress Date: Tue, 8 May 2001 15:33:01 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Ick-code at it's worst. My god, that's horrible. Off with his head! They should shoot the programmer who did that, that's just *terrible* coding practice! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 8 07:28:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA57232 for dynarec-outgoing; Tue, 8 May 2001 07:28:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002301c0d7cd$abcc62e0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <3.0.5.32.20010507204814.00825100@mailandnews.com> <3.0.5.32.20010507224603.00794a30@mailandnews.com> Subject: Re: DYNAREC: Stuff Date: Tue, 8 May 2001 15:32:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > I'll have to figure it out... I actually use that feature a lot. For > example, say I'm editing 5 files (mixing and matching, cutting and > pasting, making a general mess of things.) I can switch between 1 > and 3 easily... ALT-V-1, ALT-V-3, and when I have to fetch something > from file #5,ALT-V-5, and back to ALT-V-3 again. I love it :) Bart, you know there's an even *quicker* way to do this, don't you? Don't hit the V key. Just ALT+1 or ALT+2 and so on works... 'Cor, call yourself an edit user? ;) > The options are 50 or 43, apparently 43 == 25 (perhaps my card doesn't > support 43-line mode and it uses 25? It mentioned something about special > cards.) What is your card, anyway, Bart? I remember you saying about it only supporting VESA 1.2 (which is when VESA sucked - IMO, of course). > But you have to admit, MS-DOS Editor has _some_ advantages ;) It's > probably just me, though! It's quick and easy, that's the advantages. I still use it, but there *are* better editors. Like Brief. I just haven't used them! :) Mind you, I'm trying to stay solely Win32 now (apart from BeOS before Mike goes crazy!), so I'll use Notepad or whatever else... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 8 12:17:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA57503 for dynarec-outgoing; Tue, 8 May 2001 12:16:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ef01c0d7f8$0c4ce0c0$5da4fea9@burp> From: "Tom Browne" To: References: <3.0.5.32.20010507204814.00825100@mailandnews.com> <3.0.5.32.20010507224603.00794a30@mailandnews.com> Subject: Re: DYNAREC: Stuff Date: Tue, 8 May 2001 19:54:13 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-Mimeole: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > At 10:24 PM 5/7/2001 -0700, you wrote: > >> >shift between them. Plus you can do multifile views, where you have two > >> >files open and can see them on the screen simultaneously. > >> Edit can do simultaneous viewing. > >Really? Yep. We're all talking about version 2 that came with Win95 onwards, right? And it can open big files as well. I've done much more than 4MB... > >Yeah. It took me about a week to get used to it, but it's worth the burn > >of time to figure itout. It really is a powerful editor and you dont' have > >a UI to get in your way, either. > I'm starting to see that it is powerful, and hopefully once I start messing > around with macros, I'll really learn to appreciate it. A long, long time ago... I was writing a colour coded editor for the language known (to the few who've heard of it) as Moonrock. It was a very purist editor, visually, with only a single status line at the top. Had syntax colour coding, but I never got around to finishing it. Compiled, it was around 16KB or so. > But you have to admit, MS-DOS Editor has _some_ advantages ;) It's probably > just me, though! EDIT v2 is very nice. It has saved my arse loads of times thanks to the binary editing feature... - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 8 14:59:48 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA57656 for dynarec-outgoing; Tue, 8 May 2001 14:56:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 8 May 01 18:11:44 -0400 Message-Id: <3.0.5.32.20010508150808.008219e0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 08 May 2001 15:08:08 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Stuff In-Reply-To: <002301c0d7cd$abcc62e0$0100a8c0@home.local> References: <3.0.5.32.20010507204814.00825100@mailandnews.com> <3.0.5.32.20010507224603.00794a30@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Bart, you know there's an even *quicker* way to do this, don't you? Don't >hit the V key. Just ALT+1 or ALT+2 and so on works... Damn, I didn't even see those shortcuts in the View menu. Thanks for the tip! >'Cor, call yourself an edit user? ;) Bah, it's the affection for it that counts :) >What is your card, anyway, Bart? I remember you saying about it only >supporting VESA 1.2 (which is when VESA sucked - IMO, of course). Hercules Stingray 128 (Voodoo Rush -- not Banshee.) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 8 15:14:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA57681 for dynarec-outgoing; Tue, 8 May 2001 15:14:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00df01c0d80e$d7e8bdb0$0100a8c0@home.local> From: "Neil Griffiths" To: References: <3.0.5.32.20010507204814.00825100@mailandnews.com> <3.0.5.32.20010507224603.00794a30@mailandnews.com> <3.0.5.32.20010508150808.008219e0@mailandnews.com> Subject: Re: DYNAREC: Stuff Date: Tue, 8 May 2001 23:27:21 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Damn, I didn't even see those shortcuts in the View menu. Thanks for the tip! No probs, but you're a brief user now, aren't you? ;) > >'Cor, call yourself an edit user? ;) > > Bah, it's the affection for it that counts :) Yeah, yeah, say it to the hand... ;) > Hercules Stingray 128 (Voodoo Rush -- not Banshee.) Ah, based around the Voodoo... Quite a nice card. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 8 16:45:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA57771 for dynarec-outgoing; Tue, 8 May 2001 16:45:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 8 May 2001 17:04:31 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Core work in progress In-Reply-To: <002401c0d7cd$ad7e58a0$0100a8c0@home.local> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Ick-code at it's worst. > My god, that's horrible. Off with his head! They should shoot the programmer > who did that, that's just *terrible* coding practice! :o I've always asserted that free software just lets you see how bad the code you're running really is. BTW, NASM Spends >48% of its time in the symbol table manager, and takes over a minute on a PII/350 to assembly Starscream's output. Bleugh. It should be LOTS faster than that. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 8 18:17:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA57859 for dynarec-outgoing; Tue, 8 May 2001 18:16:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 8 May 01 21:32:11 -0400 Message-Id: <3.0.5.32.20010508182750.00827100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 08 May 2001 18:27:50 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Core work in progress In-Reply-To: References: <002401c0d7cd$ad7e58a0$0100a8c0@home.local> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I've always asserted that free software just lets you see how bad the code >you're running really is. > >BTW, NASM Spends >48% of its time in the symbol table manager, and takes >over a minute on a PII/350 to assembly Starscream's output. Bleugh. It >should be LOTS faster than that. Try it on a 180MHz machine ;) Other than the performance, I really like NASM. Whatever happened to the project? Last I heard it was dropped from SourceForge and another team was trying to further develop the program. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 8 22:57:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA58106 for dynarec-outgoing; Tue, 8 May 2001 22:56:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 8 May 2001 23:15:44 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Dynarec progress Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Guys - sorry for the silence for the last couple of days. No advancement has been made. In short I'm completely emotionally drained because of work related issues and it just got resolution today. It more than firmly makes me hate passive agressive people. Even though the problems are resolved, the draining rage I've felt over the last couple of days needs to wear off and I think a good night's sleep will take care of it. On the upside, my next goal is to get Starscream to emulate Food Fight and get all the graphics subsystem crap working under Windows. Needless to say, I'm not looking too forward to messing with DirectX again, but it sure beats direct video writes. ;-) I'll get some sleep and I'll hit it tomorrow.. Promise. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 8 23:01:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA58122 for dynarec-outgoing; Tue, 8 May 2001 23:01:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 8 May 2001 23:20:56 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Core work in progress In-Reply-To: <3.0.5.32.20010508182750.00827100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >BTW, NASM Spends >48% of its time in the symbol table manager, and takes > >over a minute on a PII/350 to assembly Starscream's output. Bleugh. It > >should be LOTS faster than that. > Try it on a 180MHz machine ;) Yeah. I developed Retrocade on a P150 so I'm fully aware of it. ;-) > Other than the performance, I really like NASM. Whatever happened to the > project? Last I heard it was dropped from SourceForge and another team was > trying to further develop the program. Yeah, I really like NASM, too. Simon dropped the project some time ago, and it was picked up by Sourceforge and then dropped again, and now it has made its home here: http://nasm.2y.net/?page=news Doesn't look like anything has been done with it since it was taken over. There's no news, and 0.98 is still current. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 9 18:37:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA59287 for dynarec-outgoing; Wed, 9 May 2001 18:37:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 4 Apr 1959 13:42:37 -0600 (CST) From: Graham Toal Message-Id: <195904041942.NAA19774@gtoal.com> To: dynarec@dynarec.com Subject: DYNAREC: A Modest Proposal Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm going to make what on the face of it seems a modest request, but has an ulterior motive behind it... You will be generating code into ram. You'll have a disassembler available. So add an option such that at the end of a run of an emulated program, you dump the entire translated program from ram (in original host system order) to a file. The file *could* be a simple .asm file, but equally useful would be some sort of binary dump file (and a utility to trivially convert it to an asm file) I.e. as a side effect of the dynamic translation, you produce a static translation that can be assembled. Little overhead, nice gain, you were probably going to do it anyway, right :-) OK, ulterior motive time: 1) As mentioned in a previous post, it would be really nice to keep info about the translation from run to run, recording things like jump destinations, profiling info, even the generated code to make for a very quick translation. This would be very easy to merge into the dump of the object code suggested above. 2) Here's where the work isn't so trivial, and you're unlikely to want to do this at the moment, but some day in the future it may seem like a good idea :-) ... rather than write a dynarec that is tied to some particular emulated system architecture (ram layout, sound chips, etc), just have a raw engine, but when translating particular instructions (such as storing a byte in a Pokey register), don't handle them with custom code, but with a call to a bound procedure from a user veneer level, i.e. there's a user program linked with the core and coupled with a particular rom to emulate which handles all the machine specific parts. Now we get to the tricky bit: in the Cinematronics for instance, vectors are calculated as X/Y coordinates, then those coordinates are mangled into values to send to DACs to drive the vector beam. In the current emulators, those DAC values are reverse- engineered back to X/Y values by the emulator. A more optimal scheme would be to identify the section of code where the XY values are known and then converted to DAC values and sent to the display, and replace that whole section of code with a dircet call to the display using the raw X/Y values. I.e. we want to be able to recognise code sequences, and patch them out at run time with a replacement C call to the machine architecture code. Now... if we're using the 'dump and restore partial translation' idea from above, then I suggest it might be a nice thing for the programmer to get in at the translated assembly code level and make manual tweaks. When the dynarec reloads the saved info, it can detect those tweaks and if it generates or runs that sequence of code again, it uses the tweaked version. This scheme allows for the possibility of much higher-level opimisations being done to the translated code, as long as someone goes to the bother of understanding what the program is doing... and the 'modest proposal' above, useful in its own right, gives a possible framework for implementing this crazy idea. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 9 22:23:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA59458 for dynarec-outgoing; Wed, 9 May 2001 22:22:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 9 May 2001 22:42:23 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal In-Reply-To: <195904041942.NAA19774@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You will be generating code into ram. You'll have a disassembler > available. So add an option such that at the end of a run of an > emulated program, you dump the entire translated program from ram (in > original host system order) to a file. The file *could* be a simple > .asm file, but equally useful would be some sort of binary dump file (and a > utility to trivially convert it to an asm file) Tall order, but I think it can be done with what I have in mind. When a recompilation block is about to be recompiled, it's nothing more than a linked list of structures indicating the opcodes (so they can be reverse and forward scanned). The target layer will emit a code sequence for each source layer sequence - all target opcodes are nothing more than a linked list of structures that contain each individual opcode. This is for simple and easy optimization later on and isn't committed to the actual system memory until the actual emission is done. Once it becomes object code the target opcode linked list gets freed, but there's no reason we couldn't emit a > I.e. as a side effect of the dynamic translation, you produce a static > translation that can be assembled. Neat idea. > Little overhead, nice gain, you were probably going to do it anyway, right :-) I hadn't planned on it, but it'd be fairly simple to do. > OK, ulterior motive time: 1) As mentioned in a previous post, it would be > really nice to keep info about the translation from run to run, recording > things like jump destinations, profiling info, even the generated code > to make for a very quick translation. This would be very easy to merge > into the dump of the object code suggested above. So are you saying keep a list of all the entry points and keep expanding it, and later on when another run is done, that information is fed to the recompiler beforehand so that no runtime recompilation will take place? If so, that's in the plan, as well as the ability to do call tree depth traversal based on the info to generate the most optimal code. Basically, you'd wind up with a *HUGE* target opcode linked list of the entire program, and all one would have to do is walk the list and emit instructions in source form. > 2) Here's where the work isn't so trivial, and you're unlikely to want to > do this at the moment, but some day in the future it may seem like a good > idea :-) ... rather than write a dynarec that is tied to some particular > emulated system architecture (ram layout, sound chips, etc), The Dynarec isn't tied to any particular architecture. That information is derived from the context structure for the source processor emulated. There is nothing architecture specific about the Dynarec - all that stuff is set up by the caller before even a byte of dynarec code is executed. > just have a > raw engine, but when translating particular instructions (such as storing > a byte in a Pokey register), don't handle them with custom code, but with > a call to a bound procedure from a user veneer level, i.e. there's a user > program linked with the core and coupled with a particular rom to emulate > which handles all the machine specific parts. That's already how it works. > engineered back to X/Y values by the emulator. A more optimal scheme > would be to identify the section of code where the XY values are known > and then converted to DAC values and sent to the display, and replace > that whole section of code with a dircet call to the display using the > raw X/Y values. So you're saying a call to do a fake beam on a raster display and change the display whenever the DAC shifts position rather than computing the start/end points and just doing a linedraw? This is exactly how DVE (Vectrex) works and I can tell you that this is a FAR worse way to do things considering how much power you need to run DVE (and it's the graphics that's taking all the time!). A linedraw routine can be done easily/quickly. With the approach I think you're proposing, you'd have to scale each X and Y pixel to the display as they're written. That's a significant increase in the number of multiplies or divides - one per pixel rather than 2 per line. I'm not sure I see the advantage. > I.e. we want to be able to recognise code sequences, and patch them out > at run time with a replacement C call to the machine architecture code. When drawing a line, it's far more efficient to cram it into a tiny loop to draw from point to point rather than individually having the code plop the pixels in place. > Now... if we're using the 'dump and restore partial translation' idea > from above, then I suggest it might be a nice thing for the programmer > to get in at the translated assembly code level and make manual tweaks. Nah. We just make the recompiler generate better code. ;-) > This scheme allows for the possibility of much higher-level opimisations > being done to the translated code, as long as someone goes to the bother > of understanding what the program is doing... and the 'modest proposal' > above, useful in its own right, gives a possible framework for implementing > this crazy idea. Anything that we can do to automatically generate better code is something we certainly should do. And even having a way for the end user to be able to tweak the assembly output would be a good thing, too, though I don't think the example above you gave about pixel drawing is a very good one. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 9 23:37:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA59522 for dynarec-outgoing; Wed, 9 May 2001 23:37:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 9 May 2001 23:56:39 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Status Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Got progress tonight! Food Fight's ROMs are loaded, all Starscream structures are created, and the reset vector is in place. I have Starscream fetching the first instruction! It's not as easy as it sounds, as I'm making the routines a bit more generic so they can be used by other emulations. Next I'll dig in to the specific memory map (including the Pokey emulator core that MUST be there) and wire all that stuff up. Then I'll write the main loop and be certain that things are executing as expected... I imagine this will take a few evenings to get going fully. More news as I know it! -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 10 00:09:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA59568 for dynarec-outgoing; Thu, 10 May 2001 00:09:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 4 Apr 1959 19:15:21 -0600 (CST) From: Graham Toal Message-Id: <195904050115.TAA20221@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > So you're saying a call to do a fake beam on a raster display and change > the display whenever the DAC shifts position rather than computing the > start/end points and just doing a linedraw? This is exactly how DVE Unfortunately you got my example ass-about-face, but it doesn't matter because as you say it was a bad example, and since you agreed about all the other stuff in my posting I'll shut up while I'm ahead :-) You obviously understood the underlying mechanism I was asking for and I'm sure you can come up with more appropriate examples of your own. thanks G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 10 00:59:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA59616 for dynarec-outgoing; Thu, 10 May 2001 00:57:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3AFA4BC5.9B16D085@austin.rr.com> Date: Thu, 10 May 2001 01:05:25 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: Off on a tangent... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Over the last couple days I've been tinkering around with 6502 emulation (win32 doesn't seem to have the allocation granularity to toy with hardware bankswitching, and I need a cycle-accurate core to do the 2600...) and have had a few ideas about creating a state of the art CPU core. What follows is a quick description of how my current core works, followed by some brainstorming I did earlier. My current core runs dog-slow (a whopping 3MHz in Debug mode, 9.3MHz in Release, on a PII-300) BUT it is completely cycle accurate (almost, I don't fire off a bus read/write every cycle). m6502_exec(5); will execute EXACTLY 5 cycles. The main loop looks like this: (Using this form of core efficiently will require some radical program design changes) while (cycles) { (*ctx.upc++)(); cycles--; } To get that I have two large tables, one generated at runtime, and the other (hopefully) will be soon. The first one is uopdecode, an array of pointers to function pointers, which decodes a 6502 opcode into a uop table address. This one is created at runtime from the uop table. The uop table implements every instruction or execution sequence (RESET, IRQ, NMI) at an operation by operation level. It is an array of function pointers, where each pointer is either a marker value or points to a uop function. An example is in order: ... // SBC $zp, X - F5 OP_MARKER(F5), FETCH_ZP, INDEX_ZPX, READ_ZP_EXEC, SBC, FETCH, ... OP_MARKER() is a macro, that sticks a recognizable address into the table. These are used to generate the decode table. They were put in after I found a bug in a couple of instructions, and faced the possibility of either doing this, or manually changing a half million #define's. In general, each uop function takes one cycle, with a few exceptions. Uops ending in _EXEC fall through to the next one without bailing back out to the main loop. Here's where the interesting stuff comes in. On happy mostly-orthogonal ISA's, like the 6502, it shouldn't be horribly difficult to generate the entire uop table at runtime. Using an x86 code generator, better uops could be produced at runtime, via a static table. These could take advantage of host flag computation. With the freedom of runtime-generated uops, the basic cycle counting semantics can be modified to act like a regular instruction-granular core (with a good speedup), a threaded interpreter. With those, a rudimentary dynamic translator could be created that used the uoptable as a guide to code generation. The static uop generation table could be parsed in from a script file. Depending on the emulated chip, it might be possible to reduce the input even further, and have it read in a description of the instruction decoding, basic addressing modes, ALU operation, and required register context storage in from a file, generate uops, generate either instructions, or a uop table and uopdecode table, and the infrastructure wrappings involving interrupt generation, basic execution, and memory access. At this point, you have a core-on-demand, that could be configured for cycle-granular, instruction-granular, or block-granular execution, dynamic translation, threaded interpretation, etc, and that could possibly do it for multiple source architectures. The meatier parts of the generator would be target specific, but a couple mechanisms are coming to mind that would be able to determine whether or not host-flag-storage optimization would be usable given an input flag calculation description and a target machine code generator. For the really picky, the generated tables and whatnot could be saved out to disk to save on redundant effort. So far, I have the hardcoded uops and uop table, and am working on a way to generate the uoptable at runtime. I have a large ugly function that can decode 6502 instructions programmatically (only luts are some small ones for ALU function selection, and some for the Bxx and CLx/SEx series) that was able, when pumped with $00-$FF, to reproduce the opcode map from the C64 programmer's manual perfectly. It does not recognize the undocumented instructions, however. Right now I'm teaching that function to return a 6502 macro-op that could produce the uop sequence relatively easily, and trying to clean up the decoder a bit (it is a really nasty set of subfunctions, if-trees, and a few small switches). If you couldn't tell, I have a certain interest in programs that dynamically reconfigure themselves automagically ^_^ Comments, questions, etc. welcome. No, I never, ever approach a problem from the normal route =) -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 10 17:13:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA60642 for dynarec-outgoing; Thu, 10 May 2001 17:13:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008b01c0d9b1$c62c3a80$0100a8c0@home.local> From: "Neil Griffiths" To: References: <3AFA4BC5.9B16D085@austin.rr.com> Subject: Re: DYNAREC: Off on a tangent... Date: Fri, 11 May 2001 01:31:05 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > At this point, you have a core-on-demand, that could be configured for > cycle-granular, instruction-granular, or block-granular execution, dynamic > translation, threaded interpretation, etc, and that could possibly do it for > multiple source architectures. The meatier parts of the generator would be target > specific, but a couple mechanisms are coming to mind that would be able to > determine whether or not host-flag-storage optimization would be usable given an > input flag calculation description and a target machine code generator. Interesting. I have my own ideas on cycle efficiency. Discussed with Neil Bradley, we both think it would work. I'm glad to see other people have given it as much thought! :) > So far, I have the hardcoded uops and uop table, and am working on a way to > generate the uoptable at runtime. I have a large ugly function that can decode 6502 > instructions programmatically (only luts are some small ones for ALU function > selection, and some for the Bxx and CLx/SEx series) that was able, when pumped with > $00-$FF, to reproduce the opcode map from the C64 programmer's manual perfectly. It > does not recognize the undocumented instructions, however. The C64 was a 6510, though, right? I seem to remember that from when I used to go round to friend's houses and play with their C64's... 'Cos I was a Z80 based Amstrad CPC guy... :) > Comments, questions, etc. welcome. No, I never, ever approach a problem from > the normal route =) Thus dynarec. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 10 19:43:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA60808 for dynarec-outgoing; Thu, 10 May 2001 19:42:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005b01c0d9c6$9b952a10$0100a8c0@home.local> From: "Neil Griffiths" To: References: <195904050115.TAA20221@gtoal.com> Subject: Re: DYNAREC: A Modest Proposal Date: Fri, 11 May 2001 04:00:50 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Actually, the one thing I'm waiting for here is to find out about the amazing optimising compilers that Graham wrote about. While I think that there is some merit to this idea that Graham wrote about, to be fair, he *does* always say that people don't understand. I know he's done it to me before now. The point about explaining ideas is that if people don't understand, you haven't done your job properly in explaining it. And that does seem to be because Graham doesn't understand fully what he's trying to explain. Perhaps I'm wrong, Graham, but that's how it comes off to me. And I would guess it's how it comes off to other people too. Anyway, if Grahams idea also included pumping the output back into the recompiler, forget that bit. No. Not doing it. I don't believe we need to. :) This idea certainly has some merit (not dissimilar to my own ideas on static compilation which was discussed on this list a loooong time ago now), but previous ideas (such as the intermediate CPU) were really... different because you said that compiling techniques would be better. Perhaps we could agree with you when you show us these amazing optimising compilers. Because I don't believe they exist. But hey, that's just me - right? I don't understand, do I? ;) Just to add something else... Neil B in his words "wants to understand what you're saying and asks you for clarification, but you never seem to answer them - only strip out his questions..." It's a mutual feeling. :o Neil. ----- Original Message ----- From: "Graham Toal" To: Sent: Sunday, April 05, 1959 2:15 AM Subject: Re: DYNAREC: A Modest Proposal > > So you're saying a call to do a fake beam on a raster display and change > > the display whenever the DAC shifts position rather than computing the > > start/end points and just doing a linedraw? This is exactly how DVE > > Unfortunately you got my example ass-about-face, but it doesn't matter > because as you say it was a bad example, and since you agreed about all > the other stuff in my posting I'll shut up while I'm ahead :-) You > obviously understood the underlying mechanism I was asking for and I'm > sure you can come up with more appropriate examples of your own. > > thanks > > G > > -------------------------------------------------------------------------- - > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 10 19:56:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA60840 for dynarec-outgoing; Thu, 10 May 2001 19:56:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 10 May 2001 20:15:50 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal In-Reply-To: <005b01c0d9c6$9b952a10$0100a8c0@home.local> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Actually, the one thing I'm waiting for here is to find out about the > amazing optimising compilers that Graham wrote about. Me too! (Neil B. Rubs hands briskly...) > Just to add something else... Neil B in his words "wants to understand what > you're saying and asks you for clarification, but you never seem to answer > them - only strip out his questions..." I don't recall saying this. Did I? You're probably paraphrasing me wishing for explanations, but I don't think I've said what you've said above. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 10 21:06:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA60907 for dynarec-outgoing; Thu, 10 May 2001 21:06:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 5 Apr 1959 16:12:33 -0600 (CST) From: Graham Toal Message-Id: <195904052212.QAA23508@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Actually, the one thing I'm waiting for here is to find out about the > amazing optimising compilers that Graham wrote about. I'm working on it. Unfortunately most of the compilers I have experience with are no longer in service; Peter Robertson's compilers for the PDP11 were very good; Peter Stevens compiler for the ICL 4/75 was excellent. Hamish Dewar wrote an amazing compiler for the pdp9/15. Just because they're old doesn't diminish how good they were. I'm scrounging around old docs trying to find some code examples and if/when I do I'll post them here. (By the way, Peter Stevens and the group that did the main production compilers for Edinburgh broke off from the University and now form "Edinburgh Portable Compilers" ( http://www.epcc.ed.ac.uk/epcc-tec/seminars/seminar-Apr99.1-material/index.htm ) - they're now working on an optimising compiler for the Merced. Peter Robertson turned his compilers into a business too and sold them from his company "3L" (aka Lattice Logic Limited) for many years. They ended up specialising in compilers for systems such as the Transputer and following that various DSPs. (Company now defunct) (http://esofta.com/dev_dir/transputer/n_cmpiler.html, http://www.iay.pwp.blueyonder.co.uk/threel/company/3l.htm) I did find a couple of comments on a mailing list about Edinburgh compilers: > I infiltrated Newcastle University's purity in 1972 or so by porting the > ERCC Imp and Fortran compilers to MTS. The professional support people > there, staunch handcoders to a man, were completely gobsmacked at the code > IMP could generate. Their view of high level languages was utterly > conditioned by things like AlgolW and PL360. and > Prof Wulf's "Optimising Compiler" book contains a PDP-11 coding sequence > for Ackermann, generated by his compiler, which he asserts was optimal > because he himself could not handcode it more tightly. Unfortunately > Peter's PDP-11 IMP compiler takes 2 instructions off the "optimal" code > displayed in the book. > While I think that there is some merit to this idea that Graham wrote about, > to be fair, he *does* always say that people don't understand. I know he's > done it to me before now. The point about explaining ideas is that if people > don't understand, you haven't done your job properly in explaining it. :-) I'm sure I went on to clarify. If I said that someone had misunderstood me it's only because I didn't want a wrong re-statement of something you thought I said being taken as what I actually said by anyone else. I certainly hope I never gave the impression that I thought anyone *couldn't* understand anything I was trying to say. I admit I'm quite likely to say things like "you won't *like* this idea" but it would never cross my mind to say "you won't understand this idea"! > Just to add something else... Neil B in his words "wants to understand what > you're saying and asks you for clarification, but you never seem to answer > them - only strip out his questions..." I've tried to reply to everything people have said in comments on my posts with two exceptions: 1) where I agree with their comments, so no followup needed; or 2) where the reply that is necessary is just too long for me to rattle out when reading my evening mail. I do actually have a couple of folks posts in my 'pending' file that I was hoping to get to at the weekend, but they require some work (one was finding examples of extremely good compiler work, and the other was to give some concrete examples from my Cinemu translator) I'm afraid pressure of work has been pretty hefty lately, otherwise I'd be writing code rather than just talking about it. Also, one last reason I didn't follow up all comments in the last couple of days was that the list is now being used for real work and I didn't want silly unimportant arguments cluttering it up and distracting folks while they were trying to work. That said, if there's anything from previous conversations you'ld like me to go back over, just drop me a note and I ought to have time this weekend to make some comments, although unless it's a particularly interesting point, I'd rather spend the weekend working on my translator than arguing in email. As far as I can see, I got most of the points I wanted to make across - I don't care if anyone agrees or not, just wanted you to consider some ideas you might not have considered before (or to explain to me why they won't work, if you've already tried them) regards G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 10 21:38:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA60942 for dynarec-outgoing; Thu, 10 May 2001 21:38:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3AFB6EAB.467E05DC@austin.rr.com> Date: Thu, 10 May 2001 21:46:35 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Off on a tangent... References: <3AFA4BC5.9B16D085@austin.rr.com> <008b01c0d9b1$c62c3a80$0100a8c0@home.local> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Griffiths wrote: > Hiya, > > > At this point, you have a core-on-demand, that could be configured for > > cycle-granular, instruction-granular, or block-granular execution, dynamic > > translation, threaded interpretation, etc, and that could possibly do it > for > > multiple source architectures. The meatier parts of the generator would be > target > > specific, but a couple mechanisms are coming to mind that would be able to > > determine whether or not host-flag-storage optimization would be usable > given an > > input flag calculation description and a target machine code generator. > > Interesting. I have my own ideas on cycle efficiency. Discussed with Neil > Bradley, we both think it would work. I'm glad to see other people have > given it as much thought! :) Since the atari 2600 is on my list of systems to emulate, exact cycle perfect emulation is something I've been keeping in mind. It's a hellish system to deal with, decent graphics required the cart to hold the gfx chip's hand through the screen draw... and then there's the REAL kicker, the 2600 didn't run R/W to the cart. The bankswitching hardware was on the cart, and will trigger on any access to the address, (ie reads) Add the extra reads/writes the 6502 generates, and you have great potential for games that will NOT run right if you use an instruction-granular core =) The usual emulation core seems rather inefficient the way it's typically implemented. Aside from timers, there really isn't much reason to continually check the cycle counter. The optimal way to run things would be to simply set the cpu core executing, and have the register access handlers take care of keeping the various components synchronized. I've just about figured out all the obvious problems for the NES, with the exception of scanline IRQ's. Unfortunately the simplest perfect solution I can think of requires the ability to undo the effect of a number of cycles, which is difficult at best =P > pumped with > > $00-$FF, to reproduce the opcode map from the C64 programmer's manual > perfectly. It > > does not recognize the undocumented instructions, however. > > The C64 was a 6510, though, right? I seem to remember that from when I used > to go round to friend's houses and play with their C64's... 'Cos I was a Z80 > based Amstrad CPC guy... :) The 6510 is a 6502 with a built in 8-bit IO port (stuck at $0000 and $0001 in the address space) and the ability to tri-state the address lines, thus making DMA and multiprocessing a little bit easier. The 6502 has no way of taking itself off of the bus, so it effectively executes a memory access every cycle. > > Comments, questions, etc. welcome. No, I never, ever approach a problem > from > > the normal route =) > > Thus dynarec. ;) Even dynarec is semi-normal, haven't heard of many runtime-generated interpretive cores =) > Neil. -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 11 07:55:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA61594 for dynarec-outgoing; Fri, 11 May 2001 07:55:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003201c0da2d$0b217760$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: A Modest Proposal Date: Fri, 11 May 2001 15:32:53 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Actually, the one thing I'm waiting for here is to find out about the > > amazing optimising compilers that Graham wrote about. > > Me too! (Neil B. Rubs hands briskly...) Hehehe... :) It's not that I don't think it CAN be done... It's just that I think it hasn't been done. I mean, it's possible that we could take any of our layers (source or target) and use them to write an optimising compiler at the end. In fact... that's not such a bad idea. We'd need to include data about timing for each instruction, but that's a possibility. Anyway, that's off at a complete tangent now... > > Just to add something else... Neil B in his words "wants to understand what > > you're saying and asks you for clarification, but you never seem to answer > > them - only strip out his questions..." > > I don't recall saying this. Did I? You're probably paraphrasing me wishing > for explanations, but I don't think I've said what you've said above. You're right, sorry. I put the second quote in completely the wrong place. I should have said "wants to understand" but I didn't. Oops! Sorry about that! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 13 13:44:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA66727 for dynarec-outgoing; Sun, 13 May 2001 13:43:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: A Modest Proposal From: "M.I.K.e" Message-ID: <00038434ee636904_mailit@mail.dynarec.com> References: <195904041942.NAA19774@gtoal.com> Date: Sun, 13 May 2001 23:03:22 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Sorry for the long silence but I was kind of busy... >You will be generating code into ram. You'll have a disassembler >available. So add an option such that at the end of a run of an >emulated program, you dump the entire translated program from ram (in >original host system order) to a file. You cannot do a simple dump since you can never be sure if you translated the complete code (unless you deal with a modern object format, but even in that case you might have self-modifying code) and the code will not be in linear but run-time order. But you could dump the translation units to a database-like file, which is done in FX!32 eg., with the only difference that FX!32 translates after runtime and uses profile information collected during the interpreter run. >The file *could* be a simple .asm file, but equally useful would be some sort of binary dump file (and a >utility to trivially convert it to an asm file) Assembly text would be too unefficient, not that good in such a database environment you'd need, and you'd have to assemble it again when you reload it. >Little overhead, nice gain, you were probably going to do it anyway, right : - >) Well, if you already have a saved translation the ultimate goal would be to reuse it, but what I still have no information for is the fact if searching a database for a translated block, checking the original block for possible self-modification, and loading the saved translation is really faster than simply translating the block. >OK, ulterior motive time: 1) As mentioned in a previous post, it would be >really nice to keep info about the translation from run to run, recording >things like jump destinations, profiling info, even the generated code >to make for a very quick translation. This would be very easy to merge >into the dump of the object code suggested above. This again sounds like FX!32, where an interpreter gathers profiling data and sends it to the binary translator after runtime. The profiler only collects information about: * branch targets (thus marking basic blocks with the next branch instruction) * indirect addressing (because that's the biggest problem of static binary translation apart from self-modifying code) * unaligned memory accesses (that's mainly for the Alpha code generation since unalinged access is quite complicated) If you want to read more about FX!32: http://research.compaq.com/wrl/DECarchives/DTJ/DTJP01/DTJP01PF.PDF >2) Here's where the work isn't so trivial, and you're unlikely to want to >do this at the moment, but some day in the future it may seem like a good >idea :-) ... rather than write a dynarec that is tied to some particular >emulated system architecture (ram layout, sound chips, etc), just have a >raw engine, What is your exact idea about this "raw engine"? Is it just some kind of loader that loads and links the different emulation parts? >but when translating particular instructions (such as storing >a byte in a Pokey register), don't handle them with custom code, but with >a call to a bound procedure from a user veneer level, Hmm, that sound a bit like the very slow driver concept of MAME... >i.e. there's a user >program linked with the core and coupled with a particular rom to emulate >which handles all the machine specific parts. Do I understand that right that you want to include the original ROM? Emulation surely is a grey matter in terms of legality, but including a ROM surely is against copyright law. >Now... if we're using the 'dump and restore partial translation' idea >from above, then I suggest it might be a nice thing for the programmer >to get in at the translated assembly code level and make manual tweaks. >When the dynarec reloads the saved info, it can detect those tweaks >and if it generates or runs that sequence of code again, it uses the >tweaked version. Hmm, this sounds like high-level emulation with patches to ROMs as UltraHLE does it... >This scheme allows for the possibility of much higher-level opimisations >being done to the translated code, as long as someone goes to the bother >of understanding what the program is doing... Maybe I'm too much a fan of computer emulation, but this scheme surely only helps with emulators that runs a few ROMs but no emulator that is simulating a a computer system which might run hundreds of different programs. Don't get me wrong, but IMHO if you need to patch the software you are about to emulate you've probably done something wrong with the emulator. Patching operating systems might be a good idea to increase the speed of heavily used system functions, but I wouldn't want to patch singular software. >G -- M.I.K.e Parsley is gharsley. -- Ogden Nash --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 13 19:41:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA67086 for dynarec-outgoing; Sun, 13 May 2001 19:40:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 8 Apr 1959 14:49:06 -0600 (CST) From: Graham Toal Message-Id: <195904082049.OAA21830@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >The file *could* be a simple .asm file, but equally useful would be some > sort of binary dump file (and a > >utility to trivially convert it to an asm file) > > Assembly text would be too unefficient, not that good in such a database > environment you'd need, and you'd have to assemble it again when you reload > it. Agreed. byt he way I think we're talking about two things here. One is a trace of the last instructions executed, for debugging purposes - you want to disassemble and print those to a file when the program exits; the other is the saving of the translated code between runs. The latter is relatively easy, since the translated binary is already in ram and we already know how many bytes of translated code map to how many bytes of input code. We just need to dump that internal information plus the code in a little block, like a .o file record. I'm not sure of the implementation details of the easiest way to feed tweaked object code back into the system, but anything is possible with some effort. I did mean to store the binary that was being executed, not a disassembly of it. In order to spin off a static translation from the dynamic one, you just run through the translated blocks in source ROM order and disassemble each block to a file. > Well, if you already have a saved translation the ultimate goal would be to > reuse it, but what I still have no information for is the fact if searching a > database for a translated block, checking the original block for possible > self-modification, and loading the saved translation is really faster than > simply translating the block. Given that all blocks are linked from one to the next, I was more envisaging something that on loading the very first block, pulled in 99% of the entire program (at least after a few runs, once 99% of the program had been exercised). Generally after a program has been run a few times, the only paths through the code left unexercised tend to be various early exits due to detecting errors (at least that's what I found some years ago when working on automatic coverage testing by a pascal compiler that attempted to ensure every path through a program had been exercised at least once) In the case of video games, the unexercised paths may be things like the really high-score screens that play-testers have not yet reached. > If you want to read more about FX!32: > http://research.compaq.com/wrl/DECarchives/DTJ/DTJP01/DTJP01PF.PDF Thanks, I haven't read that yet. Will do. As you can probably tell I'm still catching up on a lot of this stuff. > >2) Here's where the work isn't so trivial, and you're unlikely to want to > >do this at the moment, but some day in the future it may seem like a good > >idea :-) ... rather than write a dynarec that is tied to some particular > >emulated system architecture (ram layout, sound chips, etc), just have a > >raw engine, > > What is your exact idea about this "raw engine"? Is it just some kind of > loader that loads and links the different emulation parts? As Neil G points out, I'm sometimes not 100% that I know what I'm saying, but what I think I'm saying is that there's a distributable core that is pure CPU, and in order to run a program you pass to this code both a rom, and an architecture description. The architecture description probably being a .o file, and the runtime system being a linker that brings them all together, as you suggest - either statically with a traditional linker, or at run time by having a dynamic linker built into the core. > >but when translating particular instructions (such as storing > >a byte in a Pokey register), don't handle them with custom code, but with > >a call to a bound procedure from a user veneer level, > > Hmm, that sound a bit like the very slow driver concept of MAME... Bleh, I hope not. Where I'm coming from is an idea that there are only a limited number of arcade games out there, and eventually all of them will have been worked on one by one. So I'm thinking that someone will get into the generated code of the game, find where it's doing some operation that can be replaced at a high level, and write a 'patch' for the harness that goes with that rom which does the operation faster than emulating the rom would do. Apparently what UltraHLE is doing. (I'm still catching up on this field, you can tell, right?) This is precisely what I was working on with my Cinemu code a few weeks ago - finding a sequence of MUL instructions (each one being a 1-bit shift-and-add using Booth's algorithm) and replacing them with a single C multiply operation. I expect the work for any one architecture will be easily translated to all the roms that run under that architecture, but want to leave open the possibility of per-rom tweaks. To make it generalised, it has to be some sort of pattern matching on the binary rather than just a list of addresses to be patched. > Do I understand that right that you want to include the original ROM? > Emulation surely is a grey matter in terms of legality, but including a ROM > surely is against copyright law. No, quite the reverse. I want the core to be just a CPU, and the actual run-time for any one rom to be the cpu linked with an architecture harness (possibly customised to the particular rom) plus a load of the rom. I.e. I specifically want to physically separate the particular systems architecture from the CPU core. > Maybe I'm too much a fan of computer emulation, but this scheme surely only > helps with emulators that runs a few ROMs but no emulator that is simulating > a a computer system which might run hundreds of different programs. Yeah, I guess that's what I'm saying, at least for arcade game hardware. The situation is somewhat different for generic computers, but arcade hardware is extremely simple and well defined and makes it much easier to 'cheat' without causing nasty side-effects. For instance, the programs are almost always in eprom, so you can make an assumption that they're not self modifying. Also, you have the complete total of compiled programs available to you, and you can examine them all and find out if there are anu other assumptions that hold - for instance, we were talking about the 6502 Decimal flag the other day. It may be that for any given piece of code, it is *only* ever executed in one mode - either binary, or decimal, but not both. With this knowlege, you can make a simplifying assumption at translate time and generate code for the current D flag state, avoiding the run-time test. > Don't get me wrong, but IMHO if you need to patch the software you are about > to emulate you've probably done something wrong with the emulator. Patching > operating systems might be a good idea to increase the speed of heavily used > system functions, but I wouldn't want to patch singular software. I'd agree in the case of a general purpose computer, but not in the case of something like say the Pacman motherboard... Just FYI, my personal goal is to use my Cinemu translator to statically translate all the cinemu games (about a dozen) into C, so that from then on, no-one will ever need to write another cinemu emulator - all you'll need to do is implement a few primitives such as drawline (x1,y1, x2,y2), clearscreen() and some joystick and button input fakery. So far I have a pretty good core for Tailgunner. I'll produce the rest when I rewrite the translater and make it more dynarec style than static style as it is now, although if recent weeks are anything to go by, it's going to be a long time before I get some uninterrupted days to work on it :-( (If you know any people who can run an ISP single-handed and want my job, so I can have a year's sabattical, send them my way ;-) ) G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 13 19:51:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA67106 for dynarec-outgoing; Sun, 13 May 2001 19:51:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 8 Apr 1959 14:59:24 -0600 (CST) From: Graham Toal Message-Id: <195904082059.OAA21843@gtoal.com> To: dynarec@dynarec.com Subject: DYNAREC: 6502 D flag Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This is more just plain emulation that dynamic, but in the absence of the emul8 mailing list, I wanted to put this on the record *somewhere*... For whatever reason, I spent some time this weekend looking at the sources of various 6502 emulators (in C). There's a lot of variation in coding technique and tightness of coding; some of them I groaned at, some of them I take my hat off to. However... in view of the discussions earlier about the Decimal mode, I was interested to note that none of them did what looks to me an obvious optimisation: have two 'main loop' copies of the emulator code, one which assumes you're in decimal mode, one which assumes you're not. only when you execute an instruction which changes mode, do you break out of your current loop and fall in to the other one. The code for each ADC/SBC instruction in each loop is therefore the simple version that knows which mode it is in and has no runtime overhead for checking the mode. One copy does a binary-only op and the other copy does a BCD-only op. This should work pretty well in a pure interpreter; it's unfortunate that it's less applicable for a dynarec. (Though it could still work, if you embedded a single D flag test at the start of each basic block and returned to the dynarec to rebuild, if you were in the wrong mode). I have a strong suspicion however that the assumption I mentioned in my previous post (that for any given piece of code, it's always executed either in D or non-D but not both) is probably true. I could be wrong though. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 13 20:01:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA67129 for dynarec-outgoing; Sun, 13 May 2001 20:01:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 13 May 2001 20:22:19 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal In-Reply-To: <195904082049.OAA21830@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > pure CPU, and in order to run a program you pass to this code both a > rom, and an architecture description. The architecture description > probably being a .o file, and the runtime system being a linker that > brings them all together, as you suggest - either statically with a > traditional linker, or at run time by having a dynamic linker built > into the core. As I mentioned before, this is not a new/novel concept. All emulator cores (except for some NES 6502 specific cores) do this. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 13 20:06:48 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA67146 for dynarec-outgoing; Sun, 13 May 2001 20:06:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 13 May 2001 20:27:15 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 6502 D flag In-Reply-To: <195904082059.OAA21843@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The code for each ADC/SBC instruction in each loop is therefore the simple > version that knows which mode it is in and has no runtime overhead for > checking the mode. One copy does a binary-only op and the other copy > does a BCD-only op. This would use twice the cache to avoid a single test/jump. Certainly not worth it. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 13 20:16:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA67171 for dynarec-outgoing; Sun, 13 May 2001 20:16:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 8 Apr 1959 15:24:20 -0600 (CST) From: Graham Toal Message-Id: <195904082124.PAA21897@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > As I mentioned before, this is not a new/novel concept. All emulator cores > (except for some NES 6502 specific cores) do this. Really? Every single one I've looked at has the target architecture support compiled into the same binary as the CPU core. Look around and you see a VIC20 emulator, an Atari emulator, a BBC B emulator - not a 6502 engine with an Atari veener config file. Of course there may not be any big advantage in delaying the binding to run time, it just seems more aesthetically appealing to me. Sort of the polar opposite of the MAME approach. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 13 20:33:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA67194 for dynarec-outgoing; Sun, 13 May 2001 20:32:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 13 May 2001 20:53:27 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal In-Reply-To: <195904082124.PAA21897@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > As I mentioned before, this is not a new/novel concept. All emulator cores > > (except for some NES 6502 specific cores) do this. > Really? Every single one I've looked at has the target architecture > support compiled into the same binary as the CPU core. Look around > and you see a VIC20 emulator, an Atari emulator, a BBC B emulator - > not a 6502 engine with an Atari veener config file. You're not looking very deeply, then. *ALL* Of my emulator cores and Starscream and Gential's 68k core are *ALL* this way. ftp://ftp.synthcom.com/pub/emulators/cpu > Of course there may not be any big advantage in delaying the binding > to run time, it just seems more aesthetically appealing to me. Sort > of the polar opposite of the MAME approach. MAME's CPU cores are generic, too. I'm not sure why you'd think they aren't. Their memory interface is abysmal, however. No wonder why it's so bloody slow. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 13 20:55:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA67224 for dynarec-outgoing; Sun, 13 May 2001 20:55:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 8 Apr 1959 16:03:19 -0600 (CST) From: Graham Toal Message-Id: <195904082203.QAA21956@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: 6502 D flag Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > The code for each ADC/SBC instruction in each loop is therefore the simple > > version that knows which mode it is in and has no runtime overhead for > > checking the mode. One copy does a binary-only op and the other copy > > does a BCD-only op. > > This would use twice the cache to avoid a single test/jump. Certainly not > worth it. I absolutely disagree. I spent 4 years writing 6502 code and I can barely remember when I used BCD. A program would run 99.9% of the time in the loop with the binary-only instructions, and throwing out the BCD test overhead has to be a win of some description. Maybe just a percent or two, but in emulation almost everything is just a percent or two until you've done enough of them. It would absolutely not trash the cache switching from one to the other all the time. Another trick I didn't notice anyone using is performing arithmetic ops and flag calculations using lookup tables. 8bit x 8bit = 64K per table, so it probably offends some purists, but in most of the hosts that emulate 8 bit machines, I bet a 64K LUT or two is not an issue (for instance, in the 6502, you could handle the BCD version of SBC with A = SBC[C][A][opd]). A similar lookup could give you the overflow flags etc. Quite a few operations could be handled this way. (To forestall a criticism: yes, the instruction pipeline cache does make 2 or 3 in-line instructions sometimes faster than a single array fetch, in some machines. You'ld only do this on machines where it was faster...) OK, I'll tell you the reason I spent the weekend looking at the 6502 - I want to generalise the semi-dynarec I'm working on, which is currently Cinematronics only, and I wanted to look at other architectures to see how much was needed to make the translator table driven and portable. Since I wrote the cinemu for my favorite game (tailgunner), I thought the next one I should look at should be the 6502 for my second-favourite game, Snapper - Acorn's rip-off of pacman. I'ld like to produce a stand-alone Snapper that doesn't require a full Beeb emulation... G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 13 21:02:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA67244 for dynarec-outgoing; Sun, 13 May 2001 21:02:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 8 Apr 1959 16:10:38 -0600 (CST) From: Graham Toal Message-Id: <195904082210.QAA21977@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > MAME's CPU cores are generic, too. I'm not sure why you'd think they > aren't. Their memory interface is abysmal, however. No wonder why it's so > bloody slow. I guess this is one of those days where I appear to not be communicating very well. MAME's cores et al are all linked to the architecture part at build time, generating a huge binary with everything in it. I was suggesting that the equivalent of the .exe is just a small program that executes the CPU and not much else, and that the systems architecture is handled by some user-level support code customised to a platform or even a specific game on a platform. But pulled in *dynamically* or as near as dammit, at execution time. I *know* MAME doesn't work that way, and I'm pretty sure yours don't either. You're arguing that there is already a logical separation between the CPU core and the systems architecture, I'm arguing for a physical separation between the two. Is that clearer? G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 13 21:10:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA67266 for dynarec-outgoing; Sun, 13 May 2001 21:10:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 13 May 2001 21:30:29 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: 6502 D flag In-Reply-To: <195904082203.QAA21956@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > checking the mode. One copy does a binary-only op and the other copy > > > does a BCD-only op. > > This would use twice the cache to avoid a single test/jump. Certainly not > > worth it. > I absolutely disagree. I spent 4 years writing 6502 code and I can > barely remember when I used BCD. Graham, I feel like you fight me at every opportunity you get and just look for stuff to find wrong in my answers, and avoid addressing any legitimate rebuttals. Let me speak from personal experience, as an author of 9 6502 emulators (in both C and assembly) with well over 800 games run on it (that includes the NES which doesn't have Decimal mode capability!). Taken directly from make6502, this is the code that decides binary or decimal: readExit68: test [_altFlags], byte 08h ; Are we in decimal mode? je binaryMode0 ; It's binary mode jmp decimalMode0 ; Yup - go handle dec mode This was written >4 years ago and could be optimized to: readExit68: test [_altFlags], byte 08h ; Are we in decimal mode? jnz decimalMode0 ; It's decimal! .. otherwise binary For those instructions you're looking at most 3 clocks for the old version of the code. This is absolutely dwarfed by all of the rest of the flag processing. That being said, there are also a good 20% of the video games out there that, oddly, use BCD to compute vector graphics addresses. Lunar Lander, Black Widow, and Gravitar to name 3 off the top of my head. > A program would run 99.9% of the > time in the loop with the binary-only instructions, and throwing out > the BCD test overhead has to be a win of some description. Maybe just > a percent or two, I'm telling you from experience it makes no difference. > or two until you've done enough of them. It would absolutely not trash > the cache switching from one to the other all the time. I didn't say it would trash cache, I said it would use more cache, and it absolutely will. > Another trick I didn't notice anyone using is performing arithmetic > ops and flag calculations using lookup tables. 8bit x 8bit = 64K One of my cores does exactly this, and you'd need 128K of size - one for binary and one for decimal. > SBC with A = SBC[C][A][opd]). A similar lookup could give you the > overflow flags etc. Quite a few operations could be handled this > way. Yeah, there are already tables to handle sign, nonzero/zero, parity, > (To forestall a criticism: yes, the instruction pipeline cache does > make 2 or 3 in-line instructions sometimes faster than a single array > fetch, in some machines. You'ld only do this on machines where it > was faster...) It's always faster than manually computing out the flags, especially when you're in BCD mode. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun May 13 21:13:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA67280 for dynarec-outgoing; Sun, 13 May 2001 21:13:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 13 May 2001 21:33:43 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal In-Reply-To: <195904082210.QAA21977@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I was suggesting that the equivalent of the .exe is just a small program > that executes the CPU and not much else, and that the systems architecture > is handled by some user-level support code customised to a platform or > even a specific game on a platform. But pulled in *dynamically* or as > near as dammit, at execution time. Effectively, having each of the CPU cores as DLLs (or equivalent). And the advantage of this would be what exactly? There were several other emulators that did this (Replay and one I can't remember) already, and both authors said "It sounded like a good idea, but it didn't really matter after it was all finished". > I *know* MAME doesn't work that way, and I'm pretty sure yours don't > either. Yours... emulator cores? My emulator cores? You could very easily wrap them in any API and make them DLLable. I didn't think anything like that was appropriate because dynamic loading is done differently on all platforms, and if the author cared about it, he could do it easily. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 14 00:54:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA67459 for dynarec-outgoing; Mon, 14 May 2001 00:54:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3AFF9118.894683ED@austin.rr.com> Date: Mon, 14 May 2001 01:02:32 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal References: <195904082210.QAA21977@gtoal.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Graham Toal wrote: > I was suggesting that the equivalent of the .exe is just a small program > that executes the CPU and not much else, and that the systems architecture > is handled by some user-level support code customised to a platform or > even a specific game on a platform. But pulled in *dynamically* or as > near as dammit, at execution time. I had this in my redesign plans for stank, it *was* going to be completely modular, and load just about everything at runtime. The glue to tie various bits and pieces together would just be nes.so or whatnot, with the CPU cores and various gfx chips, sound chips, etc being dynamically loaded. Here's why it didn't turn out to be the greatest idea: It won't help the disk space issue - you will use even more disk space. DLL's/so's have to have all the symbol info included, and in the case of ELF, all calls will generate procedure lookup tables, and all calls to the DLL go through about 2-3 layers of indirection. The only solution around the PLT braindead-ness is to write your own ELF loader and come up with some conventions for it. On FAT systems you will also end up with a lot of small-to-medium files as opposed to one large one. It won't help the memory footprint - the overhead of unused portions in memory is likely to be nominal on any modern demand-paged system. Sure, you'll take up the spots in the page table, but that memory isn't really there. Just don't use an exe compressor on it, whatever you do. The individual modules will end up consuming more memory than they would if linked regularly, as they will most likely be expanded out to the nearest allocation unit boundary, which is 64k on most Win32 boxes. It adds an extra level of complexity, and making a system like that multi-platform is "fun". Win32 is somewhat limited as far as directory tree searching, and just between Win32 and Linux the semantics of the DLL load call differ. 8 bit CPU cores are not likely to be the memory or disk space hogs. Those will be 16-bit systems where the coder decided to use a 64k * sizeof(void *) LUT for decoding. The greatest gains are likely to come from alternative forms of compression, like the runtime-generated core I mentioned a couple of days ago. > I *know* MAME doesn't work that way, and I'm pretty sure yours don't > either. Mame's size issues derive from the fact that most people compile in every last driver in the project. Allowing THESE to be dynamically loaded *might* help a bit, but you would likely end up with a couple hundred 4-15k objects. It also tosses around a crapload of truly huge structures on a whim to let them generalize arcade graphics. > You're arguing that there is already a logical separation between > the CPU core and the systems architecture, I'm arguing for a physical > separation between the two. I'm suggesting that a physical seperation would serve little to no use =P > Is that clearer? > G -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 14 06:21:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA67948 for dynarec-outgoing; Mon, 14 May 2001 06:21:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005401c0dc7b$4bc6c5e0$01010a0a@home.local> From: "Neil Griffiths" To: References: <195904082124.PAA21897@gtoal.com> Subject: Re: DYNAREC: A Modest Proposal Date: Mon, 14 May 2001 14:30:48 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Really? Every single one I've looked at has the target architecture > support compiled into the same binary as the CPU core. Look around > and you see a VIC20 emulator, an Atari emulator, a BBC B emulator - > not a 6502 engine with an Atari veener config file. Most do, but there are a couple I can think of that don't. > Of course there may not be any big advantage in delaying the binding > to run time, it just seems more aesthetically appealing to me. Sort > of the polar opposite of the MAME approach. You say "big advantage" - but what advantages are there to making it modular? I can't think of any. It's not even like it would be easier to debug for or anything. The only possible improvement that I can think of is that you can decrease compilation time by only compiling the parts that haven't been altered - but compilers like VC do this automatically anyway. I see and understand what you're suggesting, I just don't understand *why* you'd want to do this? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 14 08:30:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA68069 for dynarec-outgoing; Mon, 14 May 2001 08:29:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 9 Apr 1959 03:38:15 -0600 (CST) From: Graham Toal Message-Id: <195904090938.DAA24174@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com OK, everyone seems unanimous that there's no big win to splitting up the parts of an emulator at run time. You've convinced me. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 14 10:22:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA68172 for dynarec-outgoing; Mon, 14 May 2001 10:22:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000f01c0dc9c$ee77ee60$0100a8c0@home.local> From: "Neil Griffiths" To: References: <195904090938.DAA24174@gtoal.com> Subject: Re: DYNAREC: A Modest Proposal Date: Mon, 14 May 2001 18:39:41 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > OK, everyone seems unanimous that there's no big win to splitting up > the parts of an emulator at run time. You've convinced me. Just don't think we're all against you - that's not the case. It's just that we don't think there are any benefits to this idea. There's no harm in coming up with new ideas - hell, that's how it works here on this list. We are all pioneers - so we need to get ideas flowing. So don't think that we're against you - that's not true. It's just... this idea was bad and other ideas just seemed, to me, to be not well explained. None of us hate you or anything... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 15 16:44:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA70008 for dynarec-outgoing; Tue, 15 May 2001 16:43:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005701c0dd9b$6b5229b0$0100a8c0@home.local> From: "Neil Griffiths" To: "Dynarec" Subject: DYNAREC: OT: Object Oriented stuff Date: Wed, 16 May 2001 01:01:45 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, I took an exam today - AOOMA. Advanced Object Oriented Methods and Applications. So, "Advanced Object Oriented". Right? Guess what they didn't ask about in the exam? :o Yes, spot on! Objects. Sooo... never mind. That's 1 exam down - 3 more to go! One more tomorrow. I have something to post to the list about the project, but I haven't worked on it much recently because of revision. So expect something from me towards the end of the week... Two weeks... Then I can start work on the project properly Woohoo! :-) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 10:56:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA71062 for dynarec-outgoing; Wed, 16 May 2001 10:55:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 16 May 2001 11:16:51 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Color depth Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm about ready to start displaying graphics in Food Fight now and am wondering about the color depth. 16Bpp seems like it's the most common. Any objections to me just making the output 16bpp and calling it good? I'd rather not have to go make tons of different output capabilities. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 12:39:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA71172 for dynarec-outgoing; Wed, 16 May 2001 12:38:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B02D933.68DF2EF@austin.rr.com> Date: Wed, 16 May 2001 12:46:59 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > I'm about ready to start displaying graphics in Food Fight now and am > wondering about the color depth. 16Bpp seems like it's the most > common. Any objections to me just making the output 16bpp and calling it > good? I'd rather not have to go make tons of different output > capabilities. 16bpp and 32bpp tend to be almost identical from an implementation standpoint most of the time. They're generally simpler than 8 bit at least =P > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley C++ - A language where you can make your > Synthcom Systems, Inc. privates public > ICQ #29402898 -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 13:25:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA71237 for dynarec-outgoing; Wed, 16 May 2001 13:25:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001101c0de48$b57db560$8469393e@menta.net> From: "Victor Moya del Barrio" To: References: <3B02D933.68DF2EF@austin.rr.com> Subject: Re: DYNAREC: Color depth Date: Wed, 16 May 2001 22:42:14 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Neil Bradley wrote: > > > I'm about ready to start displaying graphics in Food Fight now and am > > wondering about the color depth. 16Bpp seems like it's the most > > common. Any objections to me just making the output 16bpp and calling it > > good? I'd rather not have to go make tons of different output > > capabilities. > > 16bpp and 32bpp tend to be almost identical from an implementation standpoint most > of the time. They're generally simpler than 8 bit at least =P > > > -->Neil I only have 16 or 24 so go on for 16 bits, it is far easy ;). Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 14:57:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA71334 for dynarec-outgoing; Wed, 16 May 2001 14:57:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 16 May 01 18:13:31 -0400 Message-Id: <3.0.5.32.20010516150913.0082c100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 16 May 2001 15:09:13 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Color depth In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 11:16 AM 5/16/2001 -0700, you wrote: >I'm about ready to start displaying graphics in Food Fight now and am >wondering about the color depth. 16Bpp seems like it's the most >common. Any objections to me just making the output 16bpp and calling it >good? I'd rather not have to go make tons of different output >capabilities. 8bpp would be really helpful for DOS... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 15:03:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA71356 for dynarec-outgoing; Wed, 16 May 2001 15:03:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ca01c0de56$a16bbc80$0100a8c0@home.local> From: "Neil Griffiths" To: References: <3.0.5.32.20010516150913.0082c100@mailandnews.com> Subject: Re: DYNAREC: Color depth Date: Wed, 16 May 2001 23:21:52 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > 8bpp would be really helpful for DOS... Agreed, but why can't you use VESA? Neil, how many colours are in the original version? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 15:32:33 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA71404 for dynarec-outgoing; Wed, 16 May 2001 15:32:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 16 May 2001 15:49:11 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth Message-ID: <20010516154911.H16132@hetfield.patsoffice.com> References: <3.0.5.32.20010516150913.0082c100@mailandnews.com> <00ca01c0de56$a16bbc80$0100a8c0@home.local> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-md5; protocol="application/pgp-signature"; boundary="xs+9IvWevLaxKUtW" Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <00ca01c0de56$a16bbc80$0100a8c0@home.local>; from neilg@dynarec.com on Wed, May 16, 2001 at 11:21:52PM +0100 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com --xs+9IvWevLaxKUtW Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable > Neil, how many colours are in the original version? IIRC, less than 256 for Food Fight (it's been a long time since that was added to Retrocade.) Pat --=20 "You are not a beautiful and unique snowflake!" - Tyler Durden --xs+9IvWevLaxKUtW Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.4 (GNU/Linux) Comment: For info see http://www.gnupg.org iEYEARECAAYFAjsDA+cACgkQrNiXbbxh4Of62QCbBxFpCln3LETUm3TRB783Qjhg LtMAnjLoFKi+71CM2JFdxx2+Zm/wbWiE =fL0d -----END PGP SIGNATURE----- --xs+9IvWevLaxKUtW-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 15:54:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA71450 for dynarec-outgoing; Wed, 16 May 2001 15:54:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 16 May 2001 16:15:59 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth In-Reply-To: <3.0.5.32.20010516150913.0082c100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >common. Any objections to me just making the output 16bpp and calling it > >good? I'd rather not have to go make tons of different output > >capabilities. > 8bpp would be really helpful for DOS... This is what I'm trying to avoid. I want to create an engine that does nothing but one output. There's a big difference in doing 8bpp and 16bpp and I'd rather not have to code for both. However, I'm thinking about doing 8bpp and leaving it at that. I'll leave it up to the host to do 8->16. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 16:15:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA71496 for dynarec-outgoing; Wed, 16 May 2001 16:15:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00ca01c0de62$c95499e0$5da4fea9@burp> From: "Tom Browne" To: References: <3.0.5.32.20010516150913.0082c100@mailandnews.com> Subject: Re: DYNAREC: Color depth Date: Thu, 17 May 2001 00:49:01 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > At 11:16 AM 5/16/2001 -0700, you wrote: > >I'm about ready to start displaying graphics in Food Fight now and am > >wondering about the color depth. 16Bpp seems like it's the most > >common. Any objections to me just making the output 16bpp and calling it > >good? I'd rather not have to go make tons of different output > >capabilities. > 8bpp would be really helpful for DOS... Also, 16bpp is rather slow unaccelerated, so unless your graphics card and library supports VBE/AF... - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 16:24:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA71518 for dynarec-outgoing; Wed, 16 May 2001 16:24:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 11 Apr 1959 11:34:56 -0600 (CST) From: Graham Toal Message-Id: <195904111734.LAA04911@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >common. Any objections to me just making the output 16bpp and calling it > > >good? I'd rather not have to go make tons of different output > > >capabilities. > > 8bpp would be really helpful for DOS... > > This is what I'm trying to avoid. I want to create an engine that does > nothing but one output. There's a big difference in doing 8bpp and 16bpp > and I'd rather not have to code for both. > > However, I'm thinking about doing 8bpp and leaving it at that. I'll leave > it up to the host to do 8->16. Newbie question, just want to make explicit some of the things you folks already understyand implictly... Here are three possible scenarios: 1) The emulated screen layout is defined by the system architecture, and all writing to display by the program is to a virtual screen memory in simulated ram. Then the harness around the program copies from emulated screen to real display. If everything is fast enough, it can just transfer the whole image once every frame; if speed is an issue, you can have a coarse 'dirty' map, which tells the transfer process to copy only particular rectangles which have been written to. But the internals of the emulator don't know about the real display memory, they just know about the emulated display layout. The transfer of internal to external screen memory is loosely coupled, maybe even being invoked on a timer interrupt routine. 2) Writing to screen is intercepted at the emulation level and directly mapped such that poking a word into the emulated screen causes the data to be poked into the real screen at the appropriate place, performing various mappings from virtual screen memory layout to physical screen memory layout. This is faster but requires that the emulator have intimate low-level knowlege of both screen layouts. 3) similar to (2), but instead of the virtual machine poking bytes into ram, it either sends it to an IO port or it calls a high-level procedure which can be intercepted by the emulator (eg OSBYTE/VDU in the BBC micro) and converted to a generic graphics call in some library or other, where the programmer doesn't even need to know the physical screen memory layout. My guess about why you're asking what bpp to use is that you're doing type 2? thanks Graham --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 16:36:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA71549 for dynarec-outgoing; Wed, 16 May 2001 16:35:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <010b01c0de63$87703420$0100a8c0@home.local> From: "Neil Griffiths" To: References: <195904111734.LAA04911@gtoal.com> Subject: Re: DYNAREC: Color depth Date: Thu, 17 May 2001 00:54:12 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > if speed is an issue, you can have a > coarse 'dirty' map, which tells the transfer process to copy only > particular rectangles which have been written to. This is called "dirty buffering", BTW - in case you didn't know or couldn't remember. > My guess about why you're asking what bpp to use is that you're doing > type 2? ...or, simply, the resolution that we will be using to display Food Fight. :) You're trying to confuse us again, aren't you? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 16:42:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA71568 for dynarec-outgoing; Wed, 16 May 2001 16:42:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 16 May 2001 17:04:03 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth In-Reply-To: <00ca01c0de56$a16bbc80$0100a8c0@home.local> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > 8bpp would be really helpful for DOS... > Agreed, but why can't you use VESA? > Neil, how many colours are in the original version? 256 Colors exactly. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 16:57:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA71593 for dynarec-outgoing; Wed, 16 May 2001 16:56:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 16 May 2001 17:18:05 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth In-Reply-To: <195904111734.LAA04911@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > 1) The emulated screen layout is defined by the system architecture, > and all writing to display by the program is to a virtual screen memory > in simulated ram. Then the harness around the program copies from emulated > screen to real display. If everything is fast enough, it can just transfer > the whole image once every frame; if speed is an issue, you can have a > coarse 'dirty' map, which tells the transfer process to copy only > particular rectangles which have been written to. But the internals > of the emulator don't know about the real display memory, they just > know about the emulated display layout. The transfer of internal to > external screen memory is loosely coupled, maybe even being invoked > on a timer interrupt routine. That's a complicated way to say the original hardware had a tile/sprite mapping system that doesn't exist on video cards, and thusly must be handled by the software - pixel by pixel, including dirty tiling/buffering. > My guess about why you're asking what bpp to use is that you're doing > type 2? I'm asking about the final surface buffer, whether it's 8bpp or 16bpp or whatever. The big deal here is that coding it twice for two different display modes. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 20:59:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA71780 for dynarec-outgoing; Wed, 16 May 2001 20:59:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 11 Apr 1959 16:09:49 -0600 (CST) From: Graham Toal Message-Id: <195904112209.QAA08250@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You're trying to confuse us again, aren't you? ;) heh, no actually it was a serious request for information, because you guys take all this for granted and I really don't know what scheme you're using although I might take a guess at it from hints you've dropped. One of the replies implied that the dirty buffering scheme automatically meant that the display must be some sort of character cell/sprite affair (I think pacman is like this?) - actually I was assuming that something like that would be needed on *any* mapping that wasn't 1:1 I've seen displays such as the BBC micro where the ram layout was optimised for 8x8bit text cells, ie byte addresses: 0 8 10 ... ... ... ... 1 9 11 2 a 12 3 b 13 4 c 14 5 d 15 6 e 16 7 f 17 140 ... ... ... 141 ... ... ... 142 ... ... ... . . . i.e. successive bytes (8 pixels wide in a monochrome mode) go vertically for only 8 bytes then the next byte is one across. Great for text, confusing for line drawing. Other displays I've used are laid out like this: 0 1 2 3 4 5 6 7 8 9 a b ... etc 40 41 42 43 ... etc i.e. nice and simple, horizontal pixels all in a row across the screen. Even with those schemes, however the individual bits within a pixel can be 'endian'ed. low bit can be on the left in one system and on the right in another. Not to mention whether the low addresses are at the top or bottom of the display, or if increasing byte addresses are left to right as above, or right to left... So my assumption was that the emulator had to write to a screen image that was laid out exactly the same as the hardware (esp. in systems that can read back from the screen) and that there was some external process which copied from this buffer to a real screen, quickly, either with just very fast code or optimising using dirty buffering. But since you guys are real speed freaks, it crossed my mind you might not like that solution and might do the translation from original hardware layout to host PC layout on the fly, which is definitely faster but less modular (ie the emulator programmer has to know about the screen stuff too, can't leave it to someone else) So..? Which are you doing? Or something else? G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 22:15:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA71856 for dynarec-outgoing; Wed, 16 May 2001 22:14:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 17 May 01 01:30:59 -0400 Message-Id: <3.0.5.32.20010516222641.0082d330@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 16 May 2001 22:26:41 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Color depth In-Reply-To: <00ca01c0de56$a16bbc80$0100a8c0@home.local> References: <3.0.5.32.20010516150913.0082c100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 11:21 PM 5/16/2001 +0100, you wrote: >Hi, > >> 8bpp would be really helpful for DOS... > >Agreed, but why can't you use VESA? VESA's a pain ;) I haven't dealt with it much. But I suppose I could give it a shot, it wouldn't be too bad. However, not having VESA2 makes things a bit more complex. I don't think VESA 1.2 is nearly as fast as VESA2, but I could be mistaken. How complex is the Food Fight graphics hardware? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 22:17:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA71873 for dynarec-outgoing; Wed, 16 May 2001 22:17:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 17 May 01 01:33:34 -0400 Message-Id: <3.0.5.32.20010516222916.0082f100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 16 May 2001 22:29:16 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Color depth In-Reply-To: References: <3.0.5.32.20010516150913.0082c100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >This is what I'm trying to avoid. I want to create an engine that does >nothing but one output. There's a big difference in doing 8bpp and 16bpp >and I'd rather not have to code for both. > >However, I'm thinking about doing 8bpp and leaving it at that. I'll leave >it up to the host to do 8->16. What are we going to be drawing to the display (besides Food Fight)? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 16 23:41:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA71953 for dynarec-outgoing; Wed, 16 May 2001 23:41:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105170657.IAA18847@pons.ac.upc.es> Subject: Re: DYNAREC: Color depth In-Reply-To: <3.0.5.32.20010516222641.0082d330@mailandnews.com> "from Bart at May 16, 2001 10:26:41 pm" To: dynarec@dynarec.com Date: Thu, 17 May 2001 08:57:18 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > At 11:21 PM 5/16/2001 +0100, you wrote: > >Hi, > > > >> 8bpp would be really helpful for DOS... > > > >Agreed, but why can't you use VESA? > > VESA's a pain ;) I haven't dealt with it much. But I suppose I could give > it a shot, it wouldn't be too bad. > > However, not having VESA2 makes things a bit more complex. I don't think > VESA 1.2 is nearly as fast as VESA2, but I could be mistaken. > > How complex is the Food Fight graphics hardware? > > In any case, but for DOS we could SDL for the specific graphic layer. It seems to work with Linux, BeoS and Win32. I have used it in win32 and it is quite easy to use (far easy than directx). I'm not sure the compatibility issues though, i haven't tried to port my program to Linux (my Linux is in a 'dead' partition :P). > > Bart > > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 00:01:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA71976 for dynarec-outgoing; Wed, 16 May 2001 23:59:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <1BFCEA4AB90BD411B9680008C7E6E07A02439210@EFRMANT213.fr.eu.ericsson.se> From: "Daniel Gracia Perez (ESF)" To: "'dynarec@dynarec.com'" Subject: RE: DYNAREC: Color depth Date: Thu, 17 May 2001 09:15:51 +0200 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.5.2653.19) Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id XAA71973 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >-----Message d'origine----- >De: Victor Moya del Barrio [mailto:vmoya@ac.upc.es] >Date: jeudi 17 mai 2001 08:57 >À: dynarec@dynarec.com >Objet: Re: DYNAREC: Color depth > > >> At 11:21 PM 5/16/2001 +0100, you wrote: >> >Hi, >> > >> >> 8bpp would be really helpful for DOS... >> > >> >Agreed, but why can't you use VESA? >> >> VESA's a pain ;) I haven't dealt with it much. But I suppose >I could give >> it a shot, it wouldn't be too bad. >> >> However, not having VESA2 makes things a bit more complex. I >don't think >> VESA 1.2 is nearly as fast as VESA2, but I could be mistaken. >> >> How complex is the Food Fight graphics hardware? >> >> >In any case, but for DOS we could SDL for the specific graphic layer. >It seems to work with Linux, BeoS and Win32. I have used it in win32 >and it is quite easy to use (far easy than directx). I'm not sure >the compatibility issues though, i haven't tried to port my program >to Linux (my Linux is in a 'dead' partition :P). i was going to propose the same. i played some time ago with SDL and it seemed easy to work with. it also takes care (if i remember well) of all the color depth conversions you can need (ex.16bpp->8bpp), or at least makes them really easy to make. and yes, it is much easier to use than directx. about the compatibility issues i think you will not have to worry about it with the linux platform. the commercial games that appear for linux are mostly developed with SDL, actually SDL was developed from a guy from loki games to make games conversion from windows to linux easier (at least it is was i heard). > >> >> Bart >> >> >Victor > >--------------------------------------------------------------- >------------ >** To UNSUBSCRIBE from dynarec, send a message with >"UNSUBSCRIBE" in the >** message body to dynarec-request@dynarec.com. Please direct other >** questions, comments, or problems to neilb@dynarec.com. > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 00:44:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA72029 for dynarec-outgoing; Thu, 17 May 2001 00:43:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 17 May 2001 01:05:01 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth In-Reply-To: <195904112209.QAA08250@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > heh, no actually it was a serious request for information, because > you guys take all this for granted and I really don't know what scheme > you're using although I might take a guess at it from hints you've > dropped. This probably is indicative of me needing to give a description of the Food Fight graphics hardware. Food Fight is comprised of a character layer and a MOB (Motion Object Block - Atari's word for "sprite") layer that always appears in front of it. The palette is a 256 color palette, settable by word writes to the palette RAM. Each color has 3 significant bits, so 8 levels for red, green, and blue. The character layer is a 32x32 character array, each character being 8x8 pixels. They are hardcoded in the graphics ROMs. The character array is a 2048 byte buffer - one byte being the character to display at that location and the other which color grouping to use. Each character is capable of displaying 4 colors simultaneously, and each character indexes into the color palette. The MOB RAM (motion object block - Atari's word for sprite) is a linked list of "stuff to draw" loaded into RAM. Basically, it indicates the sprite #, the X/Y coordinate, the color palette grouping to use (uses 8 colors at a time), and its orientation (horizontal and vertical flipping). When the link points to 0, it's done drawing it. The sprites are 16x16 pixels with 3 bits per pixel. It has transparency capabilities as well, as a pixel with a 0th entry on a per pixel basis indicates transparency. Since video card hardware doesn't support a mapping like this, we need to simulate it on a 2D backbuffer surface. So from now on, we'll call the 2D surface the "backbuffer" and the video card's display RAM the "display surface" to avoid confusion. A 32x32 dirty character buffer is kept. IF a sprite is drawn, the characters underneath it are dirtied. The same holds true if a write occurs to the character RAM and the character is different from what's already there. >From that dirty character list we have a "list of 16x16 rectangles" to blit from the backbuffer to the dispaly surface. That way we don't move unnecessary data. All of the changed data is blitted 60 times a second. If no data changes, nothing is blitted. Someone suggested just writing the graphics directly to the backbuffer or the display surface. That won't work for several reasons: * The character RAM and MOB RAM must be read/writable completely * Lots of characters are rewritten to the screen in the exact position with the same character. Don't ask me why, but we get >50% increase in speed by doing this check to see if it has changed * Under DirectX one must lock a surface before it can write to it. Doing this for each write is expensive and slows the game down Effectively, we're caching up the character/sprite writes until once per frame. Unfortunately, I speak with experience in the reasoning above. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 00:56:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA72052 for dynarec-outgoing; Thu, 17 May 2001 00:56:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105170812.KAA09365@pons.ac.upc.es> Subject: Re: DYNAREC: Color depth In-Reply-To: "from Neil Bradley at May 17, 2001 01:05:01 am" To: dynarec@dynarec.com Date: Thu, 17 May 2001 10:12:18 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > * Under DirectX one must lock a surface before it can write to it. Doing > this for each write is expensive and slows the game down > Well in my Space Invader emulator I manteined locked the surface while I was drawing the frame until I had to blit it. Then I unlocked it, performed the blit and locked it again. And all the SI writes to VRAM are directly emulated as writes to the directx buffer. Now I don't remember what kind of DX buffer was ... It worked but not sure if it is a *good* implementation ;). > Effectively, we're caching up the character/sprite writes until once per > frame. > Nothing like my line by line master system emulator which draws everything every frame :)))))) If someday I have time I should have to change that (although scroll games are still a problem). > Unfortunately, I speak with experience in the reasoning above. > Are you interested in writing a graphics and sound emulation tutorial? ;) (BTW I'm starting those sections in my document, they will show how much I do *not* know about this topic :). I think they will be smallest chapters). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 05:27:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA72439 for dynarec-outgoing; Thu, 17 May 2001 05:27:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004101c0decf$56b36d90$0100a8c0@home.local> From: "Neil Griffiths" To: References: <3.0.5.32.20010516150913.0082c100@mailandnews.com> <3.0.5.32.20010516222641.0082d330@mailandnews.com> Subject: Re: DYNAREC: Color depth Date: Thu, 17 May 2001 13:32:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > However, not having VESA2 makes things a bit more complex. I don't think > VESA 1.2 is nearly as fast as VESA2, but I could be mistaken. Actually, that's crap. Is there no software solution (Scitech Display Doctor or otherwise) that would allow VESA2 for your card? You see, you don't have a LFB (Linear FrameBuffer) in VESA 1.2 - IIRC it's all planar/banked. Which totally sucks. Later on here, someone suggests SDL. Well, I know I suggested that about a year ago when we originally discussed this idea. SDL is an option - if it supports DOS. Not sure that it does. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 05:27:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA72449 for dynarec-outgoing; Thu, 17 May 2001 05:27:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004301c0decf$59e1ca20$0100a8c0@home.local> From: "Neil Griffiths" To: References: <200105170812.KAA09365@pons.ac.upc.es> Subject: Re: DYNAREC: Color depth Date: Thu, 17 May 2001 13:38:39 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Well in my Space Invader emulator I manteined locked the surface while > I was drawing the frame until I had to blit it. Then I unlocked it, > performed the blit and locked it again. And all the SI writes to VRAM > are directly emulated as writes to the directx buffer. Now I don't > remember what kind of DX buffer was ... It worked but not sure if it > is a *good* implementation ;). Do you want me to answer that? ;) > Nothing like my line by line master system emulator which draws everything > every frame :)))))) Mia Culpa! Er... that's about the closest I can get to swearing in Spanish... ;) That's a terrible solution... Well, it works, but just to think of the speed loss... Eeek! > If someday I have time I should have to change that (although scroll games > are still a problem). You can't get around that, other than to know that scrolling games shouldn't be scrolling every frame, so you would still get some speed benefits. > Are you interested in writing a graphics and sound emulation tutorial? ;) I may, in the future, write something about graphics emulation, but never sound emulation. I think I could do it, but I'm no sound expert. If anyone was going to do this, I'd nominate Neil B! Being a sound engineer and all... But that's a secondary target... :) > (BTW I'm starting those sections in my document, they will show how much > I do *not* know about this topic :). I think they will be smallest > chapters). So it will say: Video ------ You have to emulate this. It's quite difficult. Sound -------- You have to emulate this too. It's also difficult. Huh? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 05:27:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA72444 for dynarec-outgoing; Thu, 17 May 2001 05:27:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004201c0decf$584cf950$0100a8c0@home.local> From: "Neil Griffiths" To: References: <3.0.5.32.20010516150913.0082c100@mailandnews.com> <3.0.5.32.20010516222916.0082f100@mailandnews.com> Subject: Re: DYNAREC: Color depth Date: Thu, 17 May 2001 13:33:01 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > What are we going to be drawing to the display (besides Food Fight)? We'll probably want to be able to draw some characters to the screen to give some indication of processing power and so on. That would be optional though... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 06:41:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA72521 for dynarec-outgoing; Thu, 17 May 2001 06:41:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B03D704.DC1E1C52@austin.rr.com> Date: Thu, 17 May 2001 06:49:56 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth References: <200105170812.KAA09365@pons.ac.upc.es> <004301c0decf$59e1ca20$0100a8c0@home.local> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Griffiths wrote: > Hiya, > > Do you want me to answer that? ;) > > > Nothing like my line by line master system emulator which draws everything > > every frame :)))))) > > Mia Culpa! Er... that's about the closest I can get to swearing in > Spanish... ;) > > That's a terrible solution... Well, it works, but just to think of the speed > loss... Eeek! It depends on the target platform, but a general dirty-buffered renderer for the consoles can be a bit of a problem. First, drawing every line every frame tends to result in a nice constant or close to constant time render, narrowing the gap between best case and worst case frames. Second, a number of things make dirty buffer methods really somewhat difficult to implement. (All the following apply to the NES) Games will generally DMA the sprite table every single frame, changes or no. To generate dirty sprite info you'd have to do a byte by byte comparison on this as opposed to just memcpy'ing it. No, you don't want to just read it from the place it's DMA'd from. Sprite/background priority can be particularly painful, generally involving a painters algorithm on the sprites. The entire sprite list CAN be completely rewritten every frame, and is likely to be on the more extreme games due to sprite cycling. While not every game scrolls every frame, just about every game dicks with the scroll settings mid-frame to handle a status bar. To effectively dirty this correctly, you would need to check the vram start address of each scanline, and dirty them correctly on all vram writes. A few of them like to change palettes mid-frame. One particularly fun little %&*#(@ can bankswitch the character roms on a tile fetch. Generally stanknes' profile looked like this: 40% backbuffer->frontbuffer copy (5 bit planar->32bpp chunky decoder, planar decoder wasn't horribly optimized) 30-40% BG tile fetch/shuffling 10% sprite fetch/shuffling 10%ish other stuff Most of my optimization has been focused on reducing the BG tile fetch/shuffle time. Unlike a general dirty buffer method, the fetched planar BG data is quite cacheable, and more importantly, gives you zero-refetch scrolling in most cases. In short, there's quite a lot of state that gets fiddled with mid-frame, and while it may not actually be drawing anything new, detecting that is not the easiest (or fastest) thing on the planet =P If it's easy to come up with a good dirty buffer method on arcades, I think adding the few arcade machines I want to Stank will be heavenly compared =) > Neil. -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 07:54:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA72586 for dynarec-outgoing; Thu, 17 May 2001 07:54:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Color depth From: "M.I.K.e" Message-ID: <000384809608327b_mailit@mail.dynarec.com> References: <200105170657.IAA18847@pons.ac.upc.es> Date: Thu, 17 May 2001 17:18:57 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >In any case, but for DOS we could SDL for the specific graphic layer. >It seems to work with Linux, BeoS and Win32. I'd also vote for SDL, if only for egoistical reasons, since I don't know much about graphics and sound programming and hopefully could use an SDL implementation without any changes on BeOS... >Victor -- M.I.K.e You too can wear a nose mitten. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 07:54:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA72590 for dynarec-outgoing; Thu, 17 May 2001 07:54:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Color depth From: "M.I.K.e" Message-ID: <000384809969dfbf_mailit@mail.dynarec.com> References: <3.0.5.32.20010516150913.0082c100@mailandnews.com> <3.0.5.32.20010516222641.0082d330@mailandnews.com> <004101c0decf$56b36d90$0100a8c0@home.local> Date: Thu, 17 May 2001 17:19:54 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Later on here, someone suggests SDL. Well, I know I suggested that about a >year ago when we originally discussed this idea. SDL is an option - if it >supports DOS. Not sure that it does. Nope, I don't think that there is an SDL implementation for DOS... >Neil. -- M.I.K.e Mother told me to be good, but she's been wrong before. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 08:24:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA72627 for dynarec-outgoing; Thu, 17 May 2001 08:24:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 12 Apr 1959 03:35:13 -0600 (CST) From: Graham Toal Message-Id: <195904120935.DAA10818@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >In any case, but for DOS we could SDL for the specific graphic layer. > >It seems to work with Linux, BeoS and Win32. > > I'd also vote for SDL, if only for egoistical reasons, since I don't know > much about graphics and sound programming and hopefully could use an SDL > implementation without any changes on BeOS... My only experience with portable graphics packages recently has been Allegro, and I really didn't like it. It works fine as long as the program is running, but when you exit the program it randomly causes a crash. My guess was a race condition when uninstalling the timer interrupts. I used that one because it was the only one I could find which worked with GCC on my Win95 machine out of the box (although it did take over the whole screen, DOS style, rather than support working in actual windows) G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 10:26:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA72763 for dynarec-outgoing; Thu, 17 May 2001 10:26:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00e501c0def8$ccff1a20$8469393e@menta.net> From: "Victor Moya del Barrio" To: References: <200105170812.KAA09365@pons.ac.upc.es> <004301c0decf$59e1ca20$0100a8c0@home.local> Subject: Re: DYNAREC: Color depth Date: Thu, 17 May 2001 19:42:15 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > remember what kind of DX buffer was ... It worked but not sure if it > > is a *good* implementation ;). > > Do you want me to answer that? ;) > In any case it works and at almost 700 fps in my 366 MHz P-II (the equivalent INVMZ in DJGPP works at around 2000 fps, but of course it is not windows, it is not 16 bit color depth and it is not my crap C unoptimized 8080 core :))). > > Nothing like my line by line master system emulator which draws everything > > every frame :)))))) > > Mia Culpa! Er... that's about the closest I can get to swearing in > Spanish... ;) > Spanish? I think it is latin ... > That's a terrible solution... Well, it works, but just to think of the speed > loss... Eeek! > CPU (MZ80BS) around 7 % CPU time. BG layer (SMS just has a bg layer and a sprite layer over it) around 20-30 %. Sprite layer a bit more (max 64 sprites, 8 in a line so ...). Blitting, doubling and bilinear filter around the 80% of the CPU time :)))). > So it will say: > > Video > ------ > You have to emulate this. It's quite difficult. > > Sound > -------- > You have to emulate this too. It's also difficult. > > Huh? ;) > Well I use to write a few more than this ... you know I will say exactly the same but with around thousand times the number of words ;)) (It is a document for an university ...). > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 10:44:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA72783 for dynarec-outgoing; Thu, 17 May 2001 10:44:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 17 May 2001 11:06:06 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth In-Reply-To: <3.0.5.32.20010516222916.0082f100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >However, I'm thinking about doing 8bpp and leaving it at that. I'll leave > >it up to the host to do 8->16. > What are we going to be drawing to the display (besides Food Fight)? I didn't think anything but two Food Fight displays. Obviously, later on we could extend it to something crazy like a debugger... ;-) Anyone up for that? -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 10:45:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA72796 for dynarec-outgoing; Thu, 17 May 2001 10:45:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 17 May 2001 11:06:34 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth In-Reply-To: <200105170657.IAA18847@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > However, not having VESA2 makes things a bit more complex. I don't think > > VESA 1.2 is nearly as fast as VESA2, but I could be mistaken. > > How complex is the Food Fight graphics hardware? > In any case, but for DOS we could SDL for the specific graphic layer. > It seems to work with Linux, BeoS and Win32. I have used it in win32 SDL Doesn't support windowed mode under Windows, and we need that. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 10:47:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA72805 for dynarec-outgoing; Thu, 17 May 2001 10:47:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 17 May 2001 11:08:42 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth In-Reply-To: <200105170812.KAA09365@pons.ac.upc.es> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > * Under DirectX one must lock a surface before it can write to it. Doing > > this for each write is expensive and slows the game down > Well in my Space Invader emulator I manteined locked the surface while > I was drawing the frame until I had to blit it. Then I unlocked it, You're not supposed to do that. ;-) But we'll be running in Windowed mode under Windows so we can see debug output, and locking the surface is not something that's possible to allow cooperation. > > Effectively, we're caching up the character/sprite writes until once per > > frame. > Nothing like my line by line master system emulator which draws everything > every frame :)))))) Lots of NES emulators have to do the same thing to do raster effects. > If someday I have time I should have to change that (although scroll games > are still a problem). Yup. The only thing you can do there is reblit the entire screen unless it hasn't scrolled since the last frame. > > Unfortunately, I speak with experience in the reasoning above. > Are you interested in writing a graphics and sound emulation tutorial? ;) No. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 13:15:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA73006 for dynarec-outgoing; Thu, 17 May 2001 13:15:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002f01c0df10$576ff640$8469393e@menta.net> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: Color depth Date: Thu, 17 May 2001 22:30:53 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > However, not having VESA2 makes things a bit more complex. I don't think > > > VESA 1.2 is nearly as fast as VESA2, but I could be mistaken. > > > How complex is the Food Fight graphics hardware? > > In any case, but for DOS we could SDL for the specific graphic layer. > > It seems to work with Linux, BeoS and Win32. I have used it in win32 > > SDL Doesn't support windowed mode under Windows, and we need that. > What do you mean windowed? My emulator works perfectly in a window (the problems are in the fullscreen modes :P). If you mean we need to deal with win32 window API (for creating debug windows or whatever) then we will have a problem perhaps. SDL main() does not (unless this has changed in las version) has an application (main windows) handler :P. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 13:17:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA73025 for dynarec-outgoing; Thu, 17 May 2001 13:17:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 17 May 01 16:34:04 -0400 Message-Id: <3.0.5.32.20010517131521.0082a390@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 17 May 2001 13:15:21 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Color depth In-Reply-To: <004101c0decf$56b36d90$0100a8c0@home.local> References: <3.0.5.32.20010516150913.0082c100@mailandnews.com> <3.0.5.32.20010516222641.0082d330@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 01:32 PM 5/17/2001 +0100, you wrote: >Hi, > > >> However, not having VESA2 makes things a bit more complex. I don't think >> VESA 1.2 is nearly as fast as VESA2, but I could be mistaken. > >Actually, that's crap. Is there no software solution (Scitech Display Doctor >or otherwise) that would allow VESA2 for your card? You see, you don't have >a LFB (Linear FrameBuffer) in VESA 1.2 - IIRC it's all planar/banked. Which >totally sucks. There is a VESA2 TSR for my card, but it's pretty weird. I'm not sure how it works, because it's persistant across multiple DOS boxes, so I guess it modifies the video BIOS or something... It causes lots of problems, though. I remember all sorts of crazy stuff would happen if I tried to switch from text mode to any graphics mode (including non-VESA modes.) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 13:18:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA73033 for dynarec-outgoing; Thu, 17 May 2001 13:18:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 17 May 01 16:34:08 -0400 Message-Id: <3.0.5.32.20010517132949.008329e0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 17 May 2001 13:29:49 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Color depth In-Reply-To: <004301c0decf$59e1ca20$0100a8c0@home.local> References: <200105170812.KAA09365@pons.ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Nothing like my line by line master system emulator which draws everything >> every frame :)))))) > >Mia Culpa! Er... that's about the closest I can get to swearing in >Spanish... ;) > >That's a terrible solution... Well, it works, but just to think of the speed >loss... Eeek! I don't see how else to do it. It's one of the fastest ways, actually. For the Sega Genesis, it's the only way to go. The Genesis has 2 background layers with 2 priorities each. So you can visualize it as 4 layers: Scroll B Low Scroll A Low Scroll B High Scroll A High Plus, there can be a Window. When the Window is drawn, Scroll A cannot be drawn wherever the Window is. The rest of Scroll A will still be visible, and scrollable, but the Window is always fixed. The Window also has high and low priorities. If Scroll B tiles are set to high, they can appear on top of Scroll A, and vice versa. Every line of Scroll A and Scroll B can be scrolled independently, adding to the complications. And, to top it all off, sprites are a real pain because they have to be drawn in a front-to-back fashion to be truly accurate (Genital sorts them and draws them back to front, but this isn't a proper solution in some cases.) Sprites have either a high or low priority. High priority sprites appear above everything, low priority sprites appear only above low priority Scroll tiles, but below high priority tiles. It's not so bad, really, until you realize that sprites also have priority betweeen themselves according to how they appear in the sprite list. This creates some nightmarish (to me, at least :)) scenarios where you can have a low priority sprite which appears in the list before a high priority sprite and this happens: The low priority sprite is behind a high priority tile. The high priority sprite is above it. But because the low priority sprite is first in the list, parts of it will appear on TOP of the high priority sprite. So if you had a character hiding behind a tree, and something floated over the tree, the moment any pixels of the floating object were above the hidden character, the hidden character would appear on top of the floating sprite (but not the tree.) I hope that made sense :/ Many games make use of this feature (Sonic the Hedgehog, Sonic Spinball, Ballz, Castlevania, etc.) There are some real clever ways of emulating this behavior properly, but they all involve redrawing the whole screen. If you're interested, I might be able to hook you up with a document describing how Genecyst's rendering engine works (I'd have to ask permission from the author of the document.) NESticle supposedly uses this approach as well. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 13:30:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA73069 for dynarec-outgoing; Thu, 17 May 2001 13:30:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 17 May 2001 13:52:21 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth In-Reply-To: <002f01c0df10$576ff640$8469393e@menta.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > In any case, but for DOS we could SDL for the specific graphic layer. > > > It seems to work with Linux, BeoS and Win32. I have used it in win32 > > SDL Doesn't support windowed mode under Windows, and we need that. > What do you mean windowed? My emulator works perfectly in a window (the > problems are in the fullscreen modes :P). If you mean we need to deal with > win32 window API (for creating debug windows or whatever) then we will have > a problem perhaps. SDL main() does not (unless this has changed in las version) > has an application (main windows) handler :P. It doesn't do DirectX windowed, it does DIB windowed, which is slow as crap. In any case, I have my answer. I'll make the Win32 version do DirectX. If you want to do an SDL version, let's do that later. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 13:31:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA73083 for dynarec-outgoing; Thu, 17 May 2001 13:31:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 17 May 2001 13:53:05 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth In-Reply-To: <3.0.5.32.20010517131521.0082a390@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >or otherwise) that would allow VESA2 for your card? You see, you don't have > >a LFB (Linear FrameBuffer) in VESA 1.2 - IIRC it's all planar/banked. Which > >totally sucks. > There is a VESA2 TSR for my card, but it's pretty weird. I'm not sure how > it works, because it's persistant across multiple DOS boxes, so I guess it > modifies the video BIOS or something... Just how old is your card? Video cards made since around 1994 have had VESA 2.0 or higher built in to the card's BIOS. With LFB capabilities, it's very easy to work with. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 13:32:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA73097 for dynarec-outgoing; Thu, 17 May 2001 13:32:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 17 May 2001 13:54:18 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth In-Reply-To: <3.0.5.32.20010517132949.008329e0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> Nothing like my line by line master system emulator which draws everything > >> every frame :)))))) > >Mia Culpa! Er... that's about the closest I can get to swearing in > >Spanish... ;) That would be "Mea Culpa", meaning "I am to blame". What you really mean is "Sacre bleu" which is French for the equivalent of "God Damnit!". -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 15:56:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA73238 for dynarec-outgoing; Thu, 17 May 2001 15:56:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002301c0df27$1fbca830$0100a8c0@home.local> From: "Neil Griffiths" To: References: <200105170812.KAA09365@pons.ac.upc.es> <3.0.5.32.20010517132949.008329e0@mailandnews.com> Subject: Re: DYNAREC: Color depth Date: Fri, 18 May 2001 00:14:02 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I don't see how else to do it. I do. I think. ;) > There are some real clever ways of emulating this behavior properly, but > they all involve redrawing the whole screen. If you're interested, I might > be able to hook you up with a document describing how Genecyst's rendering > engine works (I'd have to ask permission from the author of the document.) > NESticle supposedly uses this approach as well. Actually, they should involve you refreshing your buffer - but you should only need to redraw to video memory what has actually changed on the screen. While I see what you're talking about - which certainly sounds complicated because of the tiling/layers, you should still be able to use dirty buffering. Let's say the screen is split into 8 rectangles (you'd obviously use more, but who cares for this explanation?) - no matter about your background and foreground, the only actual differences to the screen are in rectangles 1 and 8. Therefore, you merely blit only to those rectangles. You have avoided writing to the other 6 rectangles and so you have a healthy speed boost. Well, perhaps not by an amazing amount, but certainly faster than writing to the whole screen... I hope! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 16:06:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA73264 for dynarec-outgoing; Thu, 17 May 2001 16:06:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004501c0df28$9883e340$0100a8c0@home.local> From: "Neil Griffiths" To: References: <200105170812.KAA09365@pons.ac.upc.es> <004301c0decf$59e1ca20$0100a8c0@home.local> <00e501c0def8$ccff1a20$8469393e@menta.net> Subject: Re: DYNAREC: Color depth Date: Fri, 18 May 2001 00:21:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > Do you want me to answer that? ;) > > > In any case it works and at almost 700 fps in my 366 MHz P-II (the equivalent > INVMZ in DJGPP works at around 2000 fps, but of course it is not windows, > it is not 16 bit color depth and it is not my crap C unoptimized 8080 core :))). 700fps is not enough! We need *MORE*! Hehehe! ;) > > Mia Culpa! Er... that's about the closest I can get to swearing in > > Spanish... ;) > > > Spanish? I think it is latin ... I know. As I said, that's about the closest I can get... ;) > CPU (MZ80BS) around 7 % CPU time. BG layer (SMS just has a bg layer > and a sprite layer over it) around 20-30 %. Sprite layer a bit more (max 64 > sprites, 8 in a line so ...). Blitting, doubling and bilinear filter around the 80% > of the CPU time :)))). Ah... a good use of processing time. :) > Well I use to write a few more than this ... you know I will say exactly the > same but with around thousand times the number of words ;)) (It is a document > for an university ...). Ah, gotcha. Yes, okay, you need to write a little bit more than that... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 16:06:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA73273 for dynarec-outgoing; Thu, 17 May 2001 16:06:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004601c0df28$9a345260$0100a8c0@home.local> From: "Neil Griffiths" To: References: <3.0.5.32.20010516150913.0082c100@mailandnews.com> <3.0.5.32.20010516222641.0082d330@mailandnews.com> <3.0.5.32.20010517131521.0082a390@mailandnews.com> Subject: Re: DYNAREC: Color depth Date: Fri, 18 May 2001 00:23:10 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > There is a VESA2 TSR for my card, but it's pretty weird. I'm not sure how > it works, because it's persistant across multiple DOS boxes, so I guess it > modifies the video BIOS or something... It's probably a software video BIOS - I've used these before. But if that's the case, you should load it before loading Windows... > It causes lots of problems, though. I remember all sorts of crazy stuff > would happen if I tried to switch from text mode to any graphics mode > (including non-VESA modes.) If I'm right, this is why you should load it before loading Windows! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 16:08:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA73291 for dynarec-outgoing; Thu, 17 May 2001 16:08:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004b01c0df28$cd44fbf0$0100a8c0@home.local> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Color depth Date: Fri, 18 May 2001 00:26:15 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > > >Mia Culpa! Er... that's about the closest I can get to swearing in > > >Spanish... ;) > > That would be "Mea Culpa", meaning "I am to blame". What you really mean > is "Sacre bleu" which is French for the equivalent of "God Damnit!". Is it "Mea Culpa"? I couldn't remember whether it was "Mia" or "Mea" this morning, so it appears I chose the wrong one! So "Culpa" is the word base for "Culprit" then? And as for "Sacre Bleu" - yeah, but no-one says that in France anymore. If I wanted to swear in French, I'd probably use "Putain" (which I've probably just spelt wrong!) which means... well, whore. Essentially. Don't ask me, ask Gwenole! Speaking of which, he hasn't been around recently, are you still with us? :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 21:27:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA73604 for dynarec-outgoing; Thu, 17 May 2001 21:26:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Color depth From: "M.I.K.e" Message-ID: <0003848bde23d52d_mailit@mail.dynarec.com> References: <004b01c0df28$cd44fbf0$0100a8c0@home.local> Date: Fri, 18 May 2001 06:46:32 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Is it "Mea Culpa"? It *is* "mea culpa" - this happens when English people try to write languages which they don't pronounce correctly ;-) >I couldn't remember whether it was "Mia" or "Mea" "mia" should be Italian. >Neil. -- M.I.K.e There's no real need to do housework -- after four years it doesn't get any worse. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 23:16:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA73715 for dynarec-outgoing; Thu, 17 May 2001 23:16:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105180632.IAA05266@pons.ac.upc.es> Subject: Re: DYNAREC: Color depth In-Reply-To: <3.0.5.32.20010517132949.008329e0@mailandnews.com> "from Bart at May 17, 2001 01:29:49 pm" To: dynarec@dynarec.com Date: Fri, 18 May 2001 08:32:36 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> Nothing like my line by line master system emulator which draws everything > >> every frame :)))))) > > > >Mia Culpa! Er... that's about the closest I can get to swearing in > >Spanish... ;) > > > >That's a terrible solution... Well, it works, but just to think of the speed > >loss... Eeek! > > > There are some real clever ways of emulating this behavior properly, but > they all involve redrawing the whole screen. If you're interested, I might > be able to hook you up with a document describing how Genecyst's rendering > engine works (I'd have to ask permission from the author of the document.) > NESticle supposedly uses this approach as well. > > I would be very interested in this document ;). > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 17 23:37:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA73741 for dynarec-outgoing; Thu, 17 May 2001 23:37:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B04C533.E121D7D3@austin.rr.com> Date: Thu, 17 May 2001 23:46:11 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Color depth References: <200105170812.KAA09365@pons.ac.upc.es> <3.0.5.32.20010517132949.008329e0@mailandnews.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > they all involve redrawing the whole screen. If you're interested, I might > be able to hook you up with a document describing how Genecyst's rendering > engine works (I'd have to ask permission from the author of the document.) > NESticle supposedly uses this approach as well. If it results in correct output in all cases, nesticle probably isn't using it =) It seems to use a tile-based engine that has some specific hacks to get basic splitscreens working... It's ironic that people praise nesticle for being "compatible", when any game with raster effects more complex than a single status bar switch are likely to be rendered incorrectly =P > Bart -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 18 19:25:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA74891 for dynarec-outgoing; Fri, 18 May 2001 19:24:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 18 May 01 22:37:55 -0400 Message-Id: <3.0.5.32.20010518193330.0082eb20@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 18 May 2001 19:33:30 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Color depth In-Reply-To: <200105180632.IAA05266@pons.ac.upc.es> References: <3.0.5.32.20010517132949.008329e0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I would be very interested in this document ;). I'll get it to you :) I'll send it directly to your email. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 18 19:27:48 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA74908 for dynarec-outgoing; Fri, 18 May 2001 19:27:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 18 May 01 22:42:03 -0400 Message-Id: <3.0.5.32.20010518193738.008329e0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 18 May 2001 19:37:38 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Color depth In-Reply-To: <3B04C533.E121D7D3@austin.rr.com> References: <200105170812.KAA09365@pons.ac.upc.es> <3.0.5.32.20010517132949.008329e0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 11:46 PM 5/17/2001 -0700, you wrote: >> they all involve redrawing the whole screen. If you're interested, I might >> be able to hook you up with a document describing how Genecyst's rendering >> engine works (I'd have to ask permission from the author of the document.) >> NESticle supposedly uses this approach as well. > >If it results in correct output in all cases, nesticle probably isn't using it =) Or perhaps the method NESticle uses doesn't apply to the NES. The key behind the method is using the unused color bits to store data. It makes a lot of sense on the Sega Genesis, but when you want to use shadow/hilight mode (which effectively allows the Genesis to display about 192 colors), things get tricky. Charles MacDonald has figured out a way of doing it, but Genecyst simply doesn't emulate shadow/hilight mode. >It seems to use a tile-based engine that has some specific hacks to get basic >splitscreens working... > >It's ironic that people praise nesticle for being "compatible", when any game >with raster effects more complex than a single status bar switch are likely to be >rendered incorrectly =P I've never seen a problem. But then again, I don't play many NES games... except maybe for RCR, Mario, and Megaman. Hehe ;) NESticle and Genecyst are still extremely impressive. Genecyst moreso, if you keep in mind that it can emulate a Genesis at full speed on a Pentium 75, apparently without frame skipping (for v0.32 at least, vX.XX is a bit slower.) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 18 20:11:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA74964 for dynarec-outgoing; Fri, 18 May 2001 20:11:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002801c0e013$e1105bc0$0100a8c0@cheetah> From: "Neil Griffiths" To: References: <200105170812.KAA09365@pons.ac.upc.es> <3.0.5.32.20010517132949.008329e0@mailandnews.com> <3.0.5.32.20010518193738.008329e0@mailandnews.com> Subject: Re: DYNAREC: Color depth Date: Sat, 19 May 2001 04:15:33 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > NESticle and Genecyst are still extremely impressive. Genecyst moreso, if > you keep in mind that it can emulate a Genesis at full speed on a Pentium > 75, apparently without frame skipping (for v0.32 at least, vX.XX is a bit > slower.) Yes, that was always very impressive for me... KGEN was also fast, but not as much. I'm looking forward to a Genesis/Megadrive emulator that can emulate the required raster effects to properly play Sonic2 in split screen mode. I think there is one out there that hacks it, but it doesn't work properly! Having said that, I haven't tried one for at least a year now, so it could be that one is now working! If not, Bart, then you know what your next task is for Genital! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 18 20:31:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA74994 for dynarec-outgoing; Fri, 18 May 2001 20:31:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 18 May 01 23:47:20 -0400 Message-Id: <3.0.5.32.20010518204252.008344a0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 18 May 2001 20:42:52 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Color depth In-Reply-To: <002801c0e013$e1105bc0$0100a8c0@cheetah> References: <200105170812.KAA09365@pons.ac.upc.es> <3.0.5.32.20010517132949.008329e0@mailandnews.com> <3.0.5.32.20010518193738.008329e0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm looking forward to a Genesis/Megadrive emulator that can emulate the >required raster effects to properly play Sonic2 in split screen mode. I >think there is one out there that hacks it, but it doesn't work properly! >Having said that, I haven't tried one for at least a year now, so it could >be that one is now working! ? I think you've fallen behind in keeping track of Genesis emulator technology. For shame! ;) DGen has had this working for at least a couple of years. It works fine in Gens, too. It even works properly in Genital :) Except, Genital doesn't emulate a second control pad (not that it would be difficult, I could do it in minutes, if I wasn't so lazy ;)) >If not, Bart, then you know what your next task is for Genital! ;) Way ahead of you there :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 18 20:35:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA75013 for dynarec-outgoing; Fri, 18 May 2001 20:35:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003001c0e017$54153700$0100a8c0@cheetah> From: "Neil Griffiths" To: References: <200105170812.KAA09365@pons.ac.upc.es> <3.0.5.32.20010517132949.008329e0@mailandnews.com> <3.0.5.32.20010518193738.008329e0@mailandnews.com> <3.0.5.32.20010518204252.008344a0@mailandnews.com> Subject: Re: DYNAREC: Color depth Date: Sat, 19 May 2001 04:53:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I think you've fallen behind in keeping track of Genesis emulator > technology. For shame! ;) Oh yes, I certainly have - that's true... > DGen has had this working for at least a couple of years. It works fine in > Gens, too. Last time I played it with DGen, it was a hack and it didn't work properly - the second player simply saw what the first player did. That was roughly a year ago. Not 2 years... :P > It even works properly in Genital :) Except, Genital doesn't emulate a > second control pad (not that it would be difficult, I could do it in > minutes, if I wasn't so lazy ;)) Well, it does seem that I've falled behind though! > >If not, Bart, then you know what your next task is for Genital! ;) > > Way ahead of you there :) Damn... Er... No, no more bright ideas. Except a dynarec 68k core... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 18 21:57:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA75084 for dynarec-outgoing; Fri, 18 May 2001 21:57:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 19 May 01 01:10:36 -0400 Message-Id: <3.0.5.32.20010518220611.0082d580@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 18 May 2001 22:06:11 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Color depth In-Reply-To: <003001c0e017$54153700$0100a8c0@cheetah> References: <200105170812.KAA09365@pons.ac.upc.es> <3.0.5.32.20010517132949.008329e0@mailandnews.com> <3.0.5.32.20010518193738.008329e0@mailandnews.com> <3.0.5.32.20010518204252.008344a0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Last time I played it with DGen, it was a hack and it didn't work properly - >the second player simply saw what the first player did. That was roughly a >year ago. Not 2 years... :P I think you played v1.21. Version 1.17 (and possibly earlier versions) had perfectly working Interlace 2 mode graphics. Version 1.21 does seem strangely broken. Interlace 2 is buggy again. I don't think Dave noticed that he messed it up. >Damn... Er... No, no more bright ideas. Except a dynarec 68k core... ;) Hehe, dynarec will rule ;) There's still more to be done with Genital. I've put my Sound Blaster code on hold for a few months, but once I find the time/motivation to resume it again, hopefully I can add sound to Genital (PSG and DAC should be no problem, YM2612 FM will.) Also, I wanted to look into emulating the Sega Virtua Processor (SVP) used in Virtua Racing. I need the internal ROM of the DSP itself, but since it's a custom-packaged chip (exactly what kind of a DSP it is is a mystery, although I've found a few possible candidates) with internal ROM, it's not going to be easy and might very well never happen. Recently, it's been discovered that the cartridge has some test functions. There's some debug menu code hidden in the Virtua Racing ROM (although not enough of it has been preserved to actually run) that reveals some registers mapped into the 0xA1XXXX range. One of the functions is "READ DSP ROM." Not sure wether this returns data in the registers, or maps it in somewhere in the ROM space, but it could be the key to dumping the SVP ROM. Unfortunately, the SVP probably has to be running for it to respond to these register commands, and that would mean simulating the Genesis somehow. Perhaps a modified cartridge could be built with custom ROM code, and a PC->Genesis link cable (via the cartridge port) for the actual data transfer. Hmmm... :) For the time being, by returning 0xFF for reads from the SVP RAM (mapped in the cartridge space), the game runs in Genital, but without polygons. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 22 00:38:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA81392 for dynarec-outgoing; Tue, 22 May 2001 00:38:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c0e294$8591b590$3fb5c3c1@FOSSIL> From: "Kieron Wilkinson" To: Subject: DYNAREC: 1964 Recompiler Doc Date: Tue, 22 May 2001 08:55:08 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MIMEOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Anyone read this? http://www.emuhq.com/1964/ http://www.emuhq.com/1964/1964_Recompiler.pdf Looks like a lovely introduction to recompilation to me... How good do you people think it is? Neil G: Finished your exams yet? :) Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 22 00:38:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA81402 for dynarec-outgoing; Tue, 22 May 2001 00:38:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B0A19A2.49470DC3@austin.rr.com> Date: Tue, 22 May 2001 00:47:46 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: State of the core References: <200105170812.KAA09365@pons.ac.upc.es> <3.0.5.32.20010517132949.008329e0@mailandnews.com> <3.0.5.32.20010518193738.008329e0@mailandnews.com> <3.0.5.32.20010518204252.008344a0@mailandnews.com> <3.0.5.32.20010518220611.0082d580@mailandnews.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com List seems to have quieted down a bit, guess it's time for another update from the Top Secret Mad Scientist R&D Facility down here in Irvine. The programmatic decode didn't work out too great, things got annoyingly complex in places, so I fell back on a nice lut that turns an 8 bit 6502 opcode into a 16 bit expanded code that's a lot easier to parse. The uop and decode tables are now completely generated from these, through some hardcoded addressing mode templates. I wrote up a preliminary script to try and generate a core from, and I'm working on parsing the format now. The basic format looks like a good old .ini file, brief section descriptions follow: [name] - non-empty lines will be printed, basic name of the CPU (e.g. NMOS M6502(A)) [flags] - primitive type and a string that gives single character names to each bit (e.g. U8 NVOBDIZC) [regs] - gives primitive type and a name for each register that needs to be stored (e.g. P16 PC, P16 is a 8/16bit pair like AX on the x86, example would be addressable as the 16 bit PC, or 8 bit PCL, PCH) [opcodefmt] - names bits in the opcode format passed in, bytes are listed in LSB-first order, bits are MSB-first. Repeated characters form a multi-bit field, these are used in the amode definitions (e.g. RWAAAAA, R - op reads, W - op writes, A - addressing mode) [units] - lines name functional units, used to implement the OP pseudo-op, and accessible for amode decoding. (e.g. IRQJSR) [ops] - START/END pairs define operations for a given unit. START takes a single argument, the name of the unit, END ignores any trailers. (e.g. START ALU / ORA / AND / ... / END ALU) [amodes] - defines addressing mode templates and match parameters, the special template TAIL will be pasted onto the end of all opcode blocks. Individual lines are either uop names, the psuedo-op OP, or conditional statements that evaluate to a NULL or uop name. This is where the field names in [opcodefmt] come into play, A00h is shorthand for (A == 00h). OP uses the [units] and [ops] sections to select the correct uop. (e.g. START ZP A00h FETCH_ZP (!W) ? ((R) ? READ_ZP_EXEC : READ_ZP) OP (W) ? STORE END ZP [uops] - The biggie. This section defines the operation of each uop, the language is still in the formative stages, but here's the basic description as of right now: All statements are one line, and are seperated by newlines, /'s are used in examples to save space. Uops begin with a START NAME line and end with an END line. END ignores everything but the end. (e.g. START TAD / D = A / TICK / END TAD) Immediates are suffixed with h or b to indicate hexadecimal or binary. Unsuffixed immediates are in decimal. It can handle limited expression parsing. Right now I'm lazy, so I've explicitly defined the order of operations via parenthesis. Mostly used for calculating overflow and in the conditional tests. The majority of the recognized symbols are defined in the [regs] section. The flags register (if it exists) can be accessed at the bit level via, say, P_Z, P_N, etc. You can reference multiple flags at once with P_NZ, etc. Other operations and operands are as follows: F[idx] - fetches a byte from the referenced place in codespace. idx can be a register or immediate. M[idx] - loads or stores a byte from/to the referenced place in memory, via the appropriate memspace table. Special areas of memory can be accessed directly (e.g., I have a M8 ZP in my [regs] section, and reference via ZP[ADL] when possible, same for ST[]) = - simple assignment 8Z16() and 8S16() - zero or sign extends the 8 bit quantity out to 16 bits. (e.g. AD = 8Z16(F[PC]) when fetching a ZP address from somewhere when you need ADH cleared) ++ - postfix only, only been used on registers so far +=, &=, |=, ^= - binary assignment-op. SHL_C, SHR_C, RCL, RCR - shift into carry, rotate through carry, binary. TICK - increments cycle counter, checks and bails if cycle-granular execution is requested, increments UPC, jumps. TICK_INSTR - increments cycle counter, checks and bails if either cycle or instruction granular execution is requested, increments UPC, jumps CHAIN - increments UPC, jumps. These should be able to be elided together in most cases GOTO - transfers control to another uop PRINT str () () () ... - does a printf, passes format string and () delimited arguments. Currently only used in the unimplemented opcode uop DECODE() - returns the uop address for a given instruction, pass as immediate or register NZ() - least well-defined in my head right now, basically used in the line P_NZ = NZ(D) a lot, think I might need a macro/inline function section ()?: - the granddaddy of them all, your friend and mine, the ternary conditional operator. If the expression in the ()'s evaluates to true or non-zero, the statement immediately after the ? is used. Otherwise, the statement after the : is used if the : exists, or it proceeds on as if nothing happened. I'm going to make sure it can handle the nice compact case of say, P_Z = (A & D) ? 0 : 1. Combined with GOTO this gives you any control flow you want - looping probably won't come up a whole lot. ---- Now for the rationale. I had compactness and "Make this dirt easy to parse" in mind when I came up with the uop language. Basic target optimization methods were next on the list, I may add some special case operations (such as ADC) but short of coming across some serious show-stopper issue, I think this will work out. Some things are coming to mind to be able to support things like the Z80 register shadows intelligently, and for different mem spaces depending on access size. I'm somewhat split about how to handle target CPUs. On one hand, it might be possible to come up with a similar script that describes the machine code encoding and basic operation of the target CPU (including flag operation) and code up a glue layer that covers translation between the two. On the other hand it might be easier just to come up with a large, scary, baby-eating macro system to generate x86 machine code, and hard code an x86 translator for the uop language. Either way, I'll burn that bridge once I have the parser for the uop language coded up. I'm also trying to think up how to describe options in the source script, and the target script if I go that route, things like whether or not to ignore decimal mode for SBC/ADC on the 6502, changes to the actual opcodes emitted for TICK for cycle/instruction/block granular execution, etc. The script parser will eventually have a single entry point, gen_core, that returns a structure of function pointers to manipulate the core (exec, init, reset, nmi, int, etc) As for size, right now the script/parser weighs in at 15k of source/headers, whereas the various trappings of the 6502 core they will replace weigh in at about 33k. The language parser and target script/generator will increase things a bit, as will getting the 8->16 decode table in there, but it should still come out on top on size, and way on top for speed and flexibility. If I really wanted to be evil I could compare the target script/generator to the code generator in GCC, but that would be unfair ^_^ Questions, comments, suggestions, flames welcome. -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 22 00:48:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA81426 for dynarec-outgoing; Tue, 22 May 2001 00:48:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105220804.KAA18649@pons.ac.upc.es> Subject: Re: DYNAREC: 1964 Recompiler Doc In-Reply-To: <000b01c0e294$8591b590$3fb5c3c1@FOSSIL> "from Kieron Wilkinson at May 22, 2001 08:55:08 am" To: dynarec@dynarec.com Date: Tue, 22 May 2001 10:04:33 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Anyone read this? > > http://www.emuhq.com/1964/ > http://www.emuhq.com/1964/1964_Recompiler.pdf > > Looks like a lovely introduction to recompilation to me... > Damn! More bibliography ;P Now I had almost finished my doc ... :))) > How good do you people think it is? > I will try to read it ... I'm a bit out of time this last weeks before ending my project. > > Kieron > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 22 01:01:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA81455 for dynarec-outgoing; Tue, 22 May 2001 01:01:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B0A1EDF.8F253D03@austin.rr.com> Date: Tue, 22 May 2001 01:10:07 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: 1964 Recompiler Doc References: <000b01c0e294$8591b590$3fb5c3c1@FOSSIL> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Kieron Wilkinson wrote: > Anyone read this? > > http://www.emuhq.com/1964/ > http://www.emuhq.com/1964/1964_Recompiler.pdf > > Looks like a lovely introduction to recompilation to me... Just read it, interesting... > How good do you people think it is? Well, I noticed he described that evil, nasty, deplorable thing called dynamic register allocation ^_^ The system described would be able to handle different entry points, but he wasn't specific as to whether it was a win or not. Hmm, while thinking about that one idea did come up: For source architectures with more GP regs than your target has GP regs (basically, anything more complex than a 6502 -> x86) what about using the x86 regs as a direct-mapped cache, e.g., say you have 32 source regs, and 8 target regs (I wish, but it's an example...) numbered S0-S31, T0-T7 S0, S8, S16, and S24 would map to T0 S1, S9, S17, and S25 would map to T1 S2, S10, S18, and S26 would map to T2 ... S7, S15, S23, and S31 would map to T7 For most binary/ternary ops, almost every case should degenerate into a reg, mem or mem, reg operation. It would at least save a potentially time-consuming search through a dynamic allocation table to find a free or dumpable reg... You would probably still have to check a lot, but the more registers there are on the chip, the more likely it was coded in a high level language, and the less likely it is to jump into the middle of a block. That would allow you to glob all the reg allocation stuff at the beginning/end of a block at least... > Neil G: Finished your exams yet? :) > > Kieron > > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 22 01:10:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA81476 for dynarec-outgoing; Tue, 22 May 2001 01:10:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105220826.KAA19958@pons.ac.upc.es> Subject: Re: DYNAREC: 1964 Recompiler Doc In-Reply-To: <000b01c0e294$8591b590$3fb5c3c1@FOSSIL> "from Kieron Wilkinson at May 22, 2001 08:55:08 am" To: dynarec@dynarec.com Date: Tue, 22 May 2001 10:26:51 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Looks like a lovely introduction to recompilation to me... > > How good do you people think it is? > Really interesting, it doesn't talk about any impressive advanced cool technique about dynamic recompilation but it is easy to understand and explains the basics around dynarec. (That means, it is far better than my fat boring doc ;))). I think it achieves it's objective to introduce how it works recompiling. In any case the first example of 'dynarec' (generate calls to interpreter functions) is more an example of threaded code than real dynarec, but who cares ;). > Kieron > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 22 06:41:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA81935 for dynarec-outgoing; Tue, 22 May 2001 06:41:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005801c0e2c7$70f3f7a0$0100a8c0@cheetah> From: "Neil Griffiths" To: References: <200105170812.KAA09365@pons.ac.upc.es> <3.0.5.32.20010517132949.008329e0@mailandnews.com> <3.0.5.32.20010518193738.008329e0@mailandnews.com> <3.0.5.32.20010518204252.008344a0@mailandnews.com> <3.0.5.32.20010518220611.0082d580@mailandnews.com> <3B0A19A2.49470DC3@austin.rr.com> Subject: Re: DYNAREC: State of the core Date: Tue, 22 May 2001 14:55:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > As for size, right now the script/parser weighs in at 15k of source/headers, > whereas the various trappings of the 6502 core they will replace weigh in at > about 33k. The language parser and target script/generator will increase things a > bit, as will getting the 8->16 decode table in there, but it should still come > out on top on size, and way on top for speed and flexibility. If I really wanted > to be evil I could compare the target script/generator to the code generator in > GCC, but that would be unfair ^_^ > > Questions, comments, suggestions, flames welcome. Sounds very interesting. It's a different way to generate the core and you've certainly given it some thought. I think that it's scary that you're using Prolog/Miranda style declarations (predicates) though. ;) You did know that my final year project was a language, so I also wrote a parser and so on? :) I'll think about releasing the source once I've actually passed the course... :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 22 06:41:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA81930 for dynarec-outgoing; Tue, 22 May 2001 06:41:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005701c0e2c7$6f4201e0$0100a8c0@cheetah> From: "Neil Griffiths" To: References: <000b01c0e294$8591b590$3fb5c3c1@FOSSIL> Subject: Re: DYNAREC: 1964 Recompiler Doc Date: Tue, 22 May 2001 14:41:42 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Anyone read this? > > http://www.emuhq.com/1964/ > http://www.emuhq.com/1964/1964_Recompiler.pdf > > Looks like a lovely introduction to recompilation to me... Nope, haven't read it, but I will do now! > How good do you people think it is? I'll have to let you know! > Neil G: Finished your exams yet? :) Grr. Is that a good enough answer for you? ;) 3 down, 1 to go - I've just come back from one now. Real Time Systems on Thursday and then I'm finished... Which means that I can officially donate 100% of my time to our dynarec core. Although seriously, don't expect anything until next Monday now... Christ, I'm going to get soooo drunk on Thursday, and continue straight on through Friday... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 22 08:32:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA82038 for dynarec-outgoing; Tue, 22 May 2001 08:32:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 22 May 2001 08:54:47 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Status Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I got done with the code to handle all the memory regions, graphics, and sound and realized that I'd basically have to cut & paste the code again - once for emulation and once for recompilation. So now I'm faced with redoing everything to be more modular, so that we can route either emulation or recompilation to the same set of routines. Sigh... Coupled with the fact that this is my second day back at work after parental leave and I'm going to be slammed up until the weekend at least. ;-( I get to see my wife & daughter for about 45 minutes during each day of this week. ;-( I'll be back on it early next week. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 22 11:42:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA82215 for dynarec-outgoing; Tue, 22 May 2001 11:42:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B0AB53F.5376B3A6@austin.rr.com> Date: Tue, 22 May 2001 11:51:43 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: State of the core References: <200105170812.KAA09365@pons.ac.upc.es> <3.0.5.32.20010517132949.008329e0@mailandnews.com> <3.0.5.32.20010518193738.008329e0@mailandnews.com> <3.0.5.32.20010518204252.008344a0@mailandnews.com> <3.0.5.32.20010518220611.0082d580@mailandnews.com> <3B0A19A2.49470DC3@austin.rr.com> <005801c0e2c7$70f3f7a0$0100a8c0@cheetah> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Griffiths wrote: > Sounds very interesting. It's a different way to generate the core and > you've certainly given it some thought. I think that it's scary that you're > using Prolog/Miranda style declarations (predicates) though. ;) lol, never seen prolog or miranda code, I just wanted something that would be dirt easy to parse, I wrote an assembler once, parsing wasn't quite fun ^_^ The first time through the script I had some IF/ELSE/ENDIF blocks, but I yanked those to keep things down to one line per construct. > You did know that my final year project was a language, so I also wrote a > parser and so on? :) Didn't know this, but I did write an imaginary assembler once... 90% of the code consisted of two functions, Parser and Lexer, both of which were generally obscenely huge nested case statements... bout 5 pages total. Learned what *NOT* to do then ^_^ > I'll think about releasing the source once I've actually passed the > course... :o lol > Neil. -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 22 18:42:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA82580 for dynarec-outgoing; Tue, 22 May 2001 18:41:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <037301c0e32c$28602670$0100a8c0@cheetah> From: "Neil Griffiths" To: References: <200105170812.KAA09365@pons.ac.upc.es> <3.0.5.32.20010517132949.008329e0@mailandnews.com> <3.0.5.32.20010518193738.008329e0@mailandnews.com> <3.0.5.32.20010518204252.008344a0@mailandnews.com> <3.0.5.32.20010518220611.0082d580@mailandnews.com> <3B0A19A2.49470DC3@austin.rr.com> <005801c0e2c7$70f3f7a0$0100a8c0@cheetah> <3B0AB53F.5376B3A6@austin.rr.com> Subject: Re: DYNAREC: State of the core Date: Wed, 23 May 2001 03:00:18 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > lol, never seen prolog or miranda code, I just wanted something that would be > dirt easy to parse, I wrote an assembler once, parsing wasn't quite fun ^_^ Your statement "P_Z = (A & D) ? 0 : 1". Just compare it with Miranda and Prolog code... You'll be surprised how similar they are! Not sure if that's something to be proud of though! ;) > Didn't know this, but I did write an imaginary assembler once... 90% of the > code consisted of two functions, Parser and Lexer, both of which were generally > obscenely huge nested case statements... bout 5 pages total. Learned what *NOT* > to do then ^_^ Well, mine was a language, so it consisted of a huge list of CASE statements, but only to run the routines for each command. I simplified my language (cheated) by making the command the first on the line... Then the parser has to do next to no work! :) I'm so glad I'd seen emitting like Neil B had done... That made it much easier... Worst thing is that my project is meant to be one of the best in the year. We'll see how true that is when I get my mark! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 24 07:40:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA00200 for dynarec-outgoing; Thu, 24 May 2001 07:40:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003601c0e456$4e2f58a0$0100a8c0@cheetah> From: "Neil Griffiths" To: "Dynarec" References: <200105170812.KAA09365@pons.ac.upc.es> <3.0.5.32.20010517132949.008329e0@mailandnews.com> <3.0.5.32.20010518193738.008329e0@mailandnews.com> <3.0.5.32.20010518204252.008344a0@mailandnews.com> <3.0.5.32.20010518220611.0082d580@mailandnews.com> <3B0A19A2.49470DC3@austin.rr.com> <005801c0e2c7$70f3f7a0$0100a8c0@cheetah> <3B0AB53F.5376B3A6@austin.rr.com> Subject: DYNAREC: I have finished... Date: Thu, 24 May 2001 14:29:50 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ...University officially now, 'cos my last exam was today... And I will be very, very drunk tonight! That's slightly off-topic (how unusual!), so I'll bring it back around by saying I'm going to be making a start on the whole thing next week. I will be drunk today, suffering tomorrow, packing on Saturday, moving on Sunday, then still sorting stuff out until Tuesday, I'd have thought. So around Wednesday... Around then, that's when I'll be working on the dynarec. I still have to finish a document on it, I'll do that first, then we'll have a discussion on what we want to do... Free time! I've got free time! What's that, then? :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 24 08:36:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA00314 for dynarec-outgoing; Thu, 24 May 2001 08:36:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B0B2823.6D93B662@austin.rr.com> Date: Tue, 22 May 2001 20:01:55 -0700 From: tarquin X-Mailer: Mozilla 4.76 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: State of the core References: <200105170812.KAA09365@pons.ac.upc.es> <3.0.5.32.20010517132949.008329e0@mailandnews.com> <3.0.5.32.20010518193738.008329e0@mailandnews.com> <3.0.5.32.20010518204252.008344a0@mailandnews.com> <3.0.5.32.20010518220611.0082d580@mailandnews.com> <3B0A19A2.49470DC3@austin.rr.com> <005801c0e2c7$70f3f7a0$0100a8c0@cheetah> <3B0AB53F.5376B3A6@austin.rr.com> <037301c0e32c$28602670$0100a8c0@cheetah> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Griffiths wrote: > Hi, > > Your statement "P_Z = (A & D) ? 0 : 1". Just compare it with Miranda and > Prolog code... You'll be surprised how similar they are! heh, declare P_Z, A, and D, and shove a semicolon onto the end and you have valid C ^_^ The pseudo-code's similarity to the C I converted from probably beats the prolog/miranda angle =P > Not sure if that's something to be proud of though! ;) Considering how my roommate is viewing his programming languages course, probably not (he cheered when he finished the Lisp section... then they jumped into Prolog...) > Well, mine was a language, so it consisted of a huge list of CASE > statements, but only to run the routines for each command. I simplified my > language (cheated) by making the command the first on the line... Then the > parser has to do next to no work! :) Heh, I hand-inlined switch/cases to parse numeric constants out of a string =P Those were fun... I'll bet the compiler just loved that set of cases, heh. > I'm so glad I'd seen emitting like Neil B had done... That made it much > easier... Worst thing is that my project is meant to be one of the best in > the year. We'll see how true that is when I get my mark! :) Good luck =) > Neil. -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 24 23:01:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA01055 for dynarec-outgoing; Thu, 24 May 2001 23:01:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200105250615.IAA20486@pons.ac.upc.es> Subject: Re: DYNAREC: I have finished... In-Reply-To: <003601c0e456$4e2f58a0$0100a8c0@cheetah> "from Neil Griffiths at May 24, 2001 02:29:50 pm" To: dynarec@dynarec.com Date: Fri, 25 May 2001 08:15:54 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > ...University officially now, 'cos my last exam was today... And I will be > very, very drunk tonight! > You are really luckyly :))). (Ummm ... whatever it means that :))), I should go again to the english school). > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 25 09:44:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA01762 for dynarec-outgoing; Fri, 25 May 2001 09:43:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-Originating-IP: [192.9.51.3] From: "Fred Weigel" To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal Date: Fri, 25 May 2001 12:58:30 -0400 Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 25 May 2001 16:58:30.0903 (UTC) FILETIME=[ED098870:01C0E53B] Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Actually, my JRI system does exactly that. And further, the CPU is NOT in the main, but is ALSO dynamically linked. For example: # Create an Intel 8080 cpu running CP/M-80 2.2 cpu=8080 device=ram "0x0 0x10000" device=uxcon device=cbios "LST=lst A=H,CPM B=H,/projects/jri/cpm_tapes/WORK2" and # Create a MOS 6502 CPU running KIM-1 cpu=6502 device=kim-1 "1200 kim_tapes/KIM0 kim_tapes/KIM1" device=ram "0x2000 0xD000" Each model (cpu, ram, rom, i/o) is mapped into a complete system. The models are called name.drv (8080.drv, ram.drv, etc.) and can certainly be shared. Mix and match if you will. JRI isn't released, but I wanted to give you a heads-up that this is possible. Fred Weigel. ----Original Message Follows---- From: Graham Toal Reply-To: dynarec@dynarec.com To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal Date: Wed, 8 Apr 1959 16:10:38 -0600 (CST) > MAME's CPU cores are generic, too. I'm not sure why you'd think they > aren't. Their memory interface is abysmal, however. No wonder why it's so > bloody slow. I guess this is one of those days where I appear to not be communicating very well. MAME's cores et al are all linked to the architecture part at build time, generating a huge binary with everything in it. I was suggesting that the equivalent of the .exe is just a small program that executes the CPU and not much else, and that the systems architecture is handled by some user-level support code customised to a platform or even a specific game on a platform. But pulled in *dynamically* or as near as dammit, at execution time. I *know* MAME doesn't work that way, and I'm pretty sure yours don't either. You're arguing that there is already a logical separation between the CPU core and the systems architecture, I'm arguing for a physical separation between the two. Is that clearer? G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 25 09:49:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA01775 for dynarec-outgoing; Fri, 25 May 2001 09:49:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 25 May 2001 10:10:35 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Each model (cpu, ram, rom, i/o) is mapped into a complete > system. The models are called name.drv (8080.drv, ram.drv, etc.) > and can certainly be shared. Mix and match if you will. > JRI isn't released, but I wanted to give you a heads-up that > this is possible. I think you didn't see my other email. ;-) There are other emulators (such as Replay and one other I forgot the name of) that already do this. Everyone knows it's possible and it's not novel or new. But again I'd ask, if memory usage is not a consideration, then what would be the advantage of doing so (vs. just linking it in at compile time) other than to just do it? It reminds me of people I've run into who have used threads for no other reason than they wanted to use threads. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 25 09:52:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA01788 for dynarec-outgoing; Fri, 25 May 2001 09:52:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-Originating-IP: [192.9.51.3] From: "Fred Weigel" To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal Date: Fri, 25 May 2001 13:07:07 -0400 Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 25 May 2001 17:07:08.0129 (UTC) FILETIME=[2153F510:01C0E53D] Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com The benefit is to be able to share device models, and CPU cores. For example, a CPM-86 box with a 68K co-processor. Or, an 8-way SPARC box, with an IDE hard disc. Or, tie a PC style keyboard into a Commodore. Since my interest is in system modeling and device driver/OS debugging, I STRONGLY support separate modules. That way, I don't have to rebuild my platform for the simplest device changes. You guys have a different goal in mind, so, YMMV. Fred Weigel ----Original Message Follows---- From: "Neil Griffiths" Reply-To: dynarec@dynarec.com To: Subject: Re: DYNAREC: A Modest Proposal Date: Mon, 14 May 2001 18:39:41 +0100 Hiya, > OK, everyone seems unanimous that there's no big win to splitting up > the parts of an emulator at run time. You've convinced me. Just don't think we're all against you - that's not the case. It's just that we don't think there are any benefits to this idea. There's no harm in coming up with new ideas - hell, that's how it works here on this list. We are all pioneers - so we need to get ideas flowing. So don't think that we're against you - that's not true. It's just... this idea was bad and other ideas just seemed, to me, to be not well explained. None of us hate you or anything... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 25 10:03:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA01807 for dynarec-outgoing; Fri, 25 May 2001 10:03:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 25 May 2001 10:25:16 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: A Modest Proposal In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The benefit is to be able to share device models, > and CPU cores. > For example, a CPM-86 box with a 68K co-processor. > Or, an 8-way SPARC box, with an IDE hard disc. > Or, tie a PC style keyboard into a Commodore. I think he was speaking on the context of emulator libraries. I think the reasons are obvious why you'd want dynamic libraries for device drivers (loading up every device driver that could or would ever be needed would suck lots and lots of RAM). It just isn't applicable to emulation unless memory is a consideration. I'm all for modularization and dynamic loading, but only where it really makes sense. -->Neil ------------------------------------------------------------------------------- Neil Bradley C++ - A language where you can make your Synthcom Systems, Inc. privates public ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 26 12:54:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA05485 for dynarec-outgoing; Sat, 26 May 2001 12:52:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 26 May 2001 21:07:14 +0100 (BST) From: J Brown X-Sender: brown@maxx To: dynarec@dynarec.com Subject: DYNAREC: Control flow & things Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Any of you following the (extrememly slow) progress of my ARMphetamine project might be interested to look at this file (when the dynarec webserver's alive again): http://www.dynarec.com/~jules/divgraph.ps.gz It demonstrates some of the most recently added stuff, including register renaming, branch optimisation, linear-scannable intermediate representation and some almost-clean-and-tidy flag culling and condition code abstraction, to cut down dramatically on all that tedious flag save and restore code... The code the graph was generated from is here: http://www.dynarec.com/~jules/divide.arm.s Notice that although the IR is very verbose, *less* x86 code is usually generated since so much of the intermediate code is concerned solely with book-keeping. Whether such a long-winded IR is a good idea or not remains to be seen, though the x86 code I'm generating is already about 40% better than ARMphetamine v1. That's with an unfinished code generator on a sample size of one, mind ;-) Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 6 09:08:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA22113 for dynarec-outgoing; Wed, 6 Jun 2001 09:06:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701c0eea4$ebe255e0$dc9b4ed4@menta.net> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Emulation document, last steps Date: Wed, 6 Jun 2001 18:22:45 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, It seems that another traffic reduction has happened to the list (test message) so I thought I could send something (test message). Well, as ever I'm very slow and my document is still unfinished (and the dead line is really near now), but I was (incredible!) able to finish the writing part, so no more text (or just a few more) will be written. Now I'm 'drawing' a bit (I hate that part) because my director says only text would be boring ... but isn't it already the intention of such document? ;) So I'm drawing and doing some 'figures' or whatever they are ... Here it is, in bad english (I finally used Word corrector to fix it, or may be, introduce even more errors): www.dynarec.com/~victor/docs/EmuProgStudy.zip Victor (PS. I know Neil hates test messages ;)))) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 6 10:50:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA22254 for dynarec-outgoing; Wed, 6 Jun 2001 10:50:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001501c0eeb3$b25119b0$522d7bd5@cheetah> From: "Neil Griffiths" To: References: <000701c0eea4$ebe255e0$dc9b4ed4@menta.net> Subject: Re: DYNAREC: Emulation document, last steps Date: Wed, 6 Jun 2001 19:04:13 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Here it is, in bad english (I finally used Word corrector to fix it, or may be, > introduce even more errors): I'm currently downloading and I'll read it in a bit, I'll let you know what I think... > (PS. I know Neil hates test messages ;)))) He does, you're right. Be glad you didn't write "test" as your subject line... ;) Neil. PS Due to popular demand (okay, okay, I'm lying), I've uploaded a little movie of me via a webcam so that you all know what I look like. Don't be too scared! ;) http://www.dynarec.com/~neilg/neil2.wmv Yes, it's Windows Media. Don't complain. I was trying to get a picture from it and it just wasn't having any of it... :o --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 6 11:17:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA22293 for dynarec-outgoing; Wed, 6 Jun 2001 11:17:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001d01c0eeb7$7b550850$522d7bd5@cheetah> From: "Neil Griffiths" To: References: <000701c0eea4$ebe255e0$dc9b4ed4@menta.net> Subject: Re: DYNAREC: Emulation document, last steps Date: Wed, 6 Jun 2001 19:33:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Here it is, in bad english (I finally used Word corrector to fix it, or may be, > introduce even more errors): First impressions is it's good, good overview, but with spelling errors (which I'm blaming on Word). I wasn't allowed to write like that, I could never say "I" in my report! But it does seem good overall... I'll let you know exactly what I think when I've read it properly though! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 7 16:54:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA24003 for dynarec-outgoing; Thu, 7 Jun 2001 16:52:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "The Clarkes" To: Subject: DYNAREC: Mailing list archieves Date: Fri, 8 Jun 2001 10:10:17 +1000 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) Importance: Normal X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello all, I was wondering if there was an archieve of all messages sent to the mailing list? I recently lost the contents of my hard drive including all of my email. It would be great if I could get it back. Now back to lurking. /me slides backwards into the shadows... -- Evan Clarke --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 11 17:24:27 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA31412 for dynarec-outgoing; Mon, 11 Jun 2001 17:23:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 11 Jun 2001 17:49:41 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Translation fun Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com http://www.eetimes.com/story/OEG20010611S0108 -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 11 17:37:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA31433 for dynarec-outgoing; Mon, 11 Jun 2001 17:37:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000f01c0f2da$86e8a600$9f5f063e@cheetah> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Translation fun Date: Tue, 12 Jun 2001 01:55:39 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > http://www.eetimes.com/story/OEG20010611S0108 Interesting link, Neil. I'd like to learn more about that, this sounds remarkably similar to what we're doing - more so than Transmeta did. But that's from what I can make out, it may still be different... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 12 06:58:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA32213 for dynarec-outgoing; Tue, 12 Jun 2001 06:58:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "Giovanni Bajo" To: Subject: DYNAREC: DAG for translation Date: Tue, 12 Jun 2001 16:15:53 +0200 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Importance: Normal X-MDaemon-Deliver-To: dynarec@dynarec.com Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >From the article Neil posted, I see that those guys are using an acyclic graph as intermediate representation for translation. AFAIK this is what also compilers do (GCC for example), and they use a pattern-matching (with cost calculation) to reduce the graph into target processor code. The patterns (and their associated costs) are dependent of target cpu, and they actually are what it's needed to add a new target cpu. First, where can I find some online bibliography on the graph representation for intermediate code? Second, pros and cons? Some thoughts? Thanks RaskY --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 18 15:51:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA42642 for dynarec-outgoing; Mon, 18 Jun 2001 15:50:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 18 Jun 01 19:06:24 -0400 Message-Id: <3.0.5.32.20010618155814.00848a40@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 18 Jun 2001 15:58:14 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Saturn 68K debugger released Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hey everyone, I've released my Sega Saturn MC68EC000 debugger. Feel free to check it out: http://trzy.overclocked.org/saturn It does, unfortunately, need some special hardware to run: a PC Comm Card, Pro Action Replay, and a Sega Saturn. I think it might come in handy in case we need to check some code out on a real 68K. Hopefully, within a week or so, I'll be uploading a document containing my findings about the undocumented flags. They're actually quite simple! I've already figured out how they work for ABCD and SBCD. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 20 03:33:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA44765 for dynarec-outgoing; Wed, 20 Jun 2001 03:31:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200106201047.MAA18109@pons.ac.upc.es> Subject: DYNAREC: Workshop of Binary Translation - 2001 To: dynarec@dynarec.com Date: Wed, 20 Jun 2001 12:47:14 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id DAA44762 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com It seems that this year the WBT will be here in Barcelona, perhaps i will have the chance to give a look to what the 'serious' people do about binary translation ;). I think last year was not very interesting. Victor ----- Forwarded message from Workshop on Binary Translation ----- >From wbt@watson.ibm.com Thu Jun 14 16:50:26 2001 Date: Thu, 14 Jun 2001 10:50:28 -0400 From: Workshop on Binary Translation Message-Id: <200106141450.KAA35232@liberty.watson.ibm.com> To: roger@ac.upc.es Subject: Workshop on Binary Translation - 2001 Content-Length: 4294 *************************************************************************** CALL FOR PAPERS *************************************************************************** Workshop on Binary Translation - 2001 WBT-2001 In Conjunction with the International Conference on Parallel Architectures and Compilation Techniques (PACT'2001) http://www.ac.upc.es/pact01 Barcelona, Catalunya, Spain PACT'2001: September 8-12, 2001 ------------------------------------------------------------------------ OBJECTIVE --------- WBT-2001 seeks to continue the high level of interest in the first two Workshops on Binary Translation held with PACT'99 and PACT'2000. There are many academic and industrial projects on binary translation and WBT-2001 will provide a forum for researchers and practitioners to meet, thus stimulating the exchange of ideas and experiences with binary translation, and opening new avenues of research. WBT-2001 seeks submissions describing novel ideas or experience with building binary translation systems. There will be a limited number of talks in order to allow the audience to participate. IMPORTANT DATES --------------- July 2, 2001 Papers Due August 7, 2001 Notification of Acceptance August 21, 2001 Final Papers Due September 8, 2001 Workshop FORMAT AND SUBMISSION --------------------- o Electronic submissions only to: wbt@watson.ibm.com o 10 pages or less o In PDF or Level 1 or 2 PostScript o Viewable in Ghostview o Printable on USLetter (8.5 x 11 inch page) sized paper Please include the following information in plain text with the submitted paper: [1] Author Name(s), [2] Postal Address, [3] Phone Number, [4] FAX Number, [5] Email Address, [6] Title of Paper, [7] 5 Keywords, and [8] Abstract. PROCEEDINGS ----------- o Photocopied Proceedings will be distributed at the workshop ------------------------------------------------------------------------ TOPICS ------ -> Dynamic (Runtime) Translation o With operating system support o Without operating system support o Java o From traditional architectures such as Alpha, IA32, MIPS, PowerPC, and SPARC to new architectures -> Static Translation o With no runtime assistance/translation o With runtime assistance/translation (Hybrid Translation) -> General techniques and problems o Compatibility * Self-modifying code * Self-referential code * Precise exceptions * Other issues o Scheduling and optimization o Adapting code to changing program behavior o On-the-fly reconstruction of CFG's and data dependences o Management of translated code o Other compilation challenges -> Hardware Support o Hardware Assists for Binary Translation * Interpretation Engines * Profiling Branch Directions, Instructions with Cache Misses, etc. o Hardware Mechanisms Employing Binary Translation Techniques * Pipeline cracking CISC operations into micro-ops, a la Pentium Pro * Cached hardware schedules a la DIF * Other Mechanisms ORGANIZERS ---------- Erik Altman IBM T.J. Watson Research Center David Kaeli Northeastern University Program Committee ----------------- Sanjeev Banerjia InCert Cristina Cifuentes University of Queensland/Sun Jim Dehnert Transmeta Evelyn Duesterwald HP Cambridge Labs Kemal Ebcioglu IBM T.J. Watson Research Center Roger Espasa Universitat Politecnica de Catalunya Shalom Goldenberg Intel Israel Jose Gonzalez Universidad de Murcia David Keppel Transmeta Andreas Krall Technical University of Vienna Bilha Mendelson IBM Israel Soo-Mook Moon Seoul National University Shubu Mukherjee Compaq Ravi Nair IBM T.J. Watson Research Center Markus Pilz University of Zurich Norman Ramsey Harvard University Michiel Ronsse Ghent University Richard Schooler InCert Jim Smith University of Wisconsin Amitabh Srivastava Microsoft Research Youfeng Wu Intel ----- End of forwarded message from Workshop on Binary Translation ----- ----- End of forwarded message from Roger Espasa ----- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 29 12:47:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA59045 for dynarec-outgoing; Fri, 29 Jun 2001 12:47:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 29 Jun 2001 13:17:49 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Transmeta sued over Crusoe performance claims Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com In a word - DUH! Serves them right. http://www.theregister.co.uk/content/3/20058.html -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 29 16:31:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59224 for dynarec-outgoing; Fri, 29 Jun 2001 16:31:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001301c100f6$2a21d660$5d4c063e@Cheetah> From: "Neil Griffiths" To: References: Subject: DYNAREC: Problems... Date: Sat, 30 Jun 2001 00:46:47 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Well, I wrote some stuff for the Dynarec, including a document that I wrote at Neil B's request about how to write the CPU specs (essentially). I sent it to the list, but it got bounced back to me, not sure if this was due to server downtime or 'net problems, but it was a couple of weeks back... Anyway, I have now lost everything on my hard drives due to partition table errors - as in the partition table has been corrupted by something and I've been busy rescuing data, but it seems that some data is invalid, something quite worrying to me. Anyway, that's to explain my silence for some time - and I will be silent for more time because as of tomorrow, I'm off to Germany for 2 weeks to drink, drink and, er drink. Hopefully when I get back, we can start some work on the project - it appears I will have to start all over on the document again! Oh well... See you guys soon, Neil. PS Neil, that was a funny link you sent me... The Register, a known Transmeta fan, having to report that... well, that's funny, apart from the news reported! :o --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 29 22:15:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA59474 for dynarec-outgoing; Fri, 29 Jun 2001 22:15:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 30 Jun 01 01:33:09 -0400 Message-Id: <3.0.5.32.20010629222337.00853490@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 29 Jun 2001 22:23:37 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: 68K undocumented flags documented :) Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I think I've figured out all of the 68000's undocumented flags. Check out: http://trzy.overclocked.org/files/68knotes.txt Comments? Questions? Corrections? :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 30 14:32:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA62427 for dynarec-outgoing; Sat, 30 Jun 2001 14:31:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 30 Jun 2001 15:02:53 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Problems... In-Reply-To: <001301c100f6$2a21d660$5d4c063e@Cheetah> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well, I wrote some stuff for the Dynarec, including a document that I wrote > at Neil B's request about how to write the CPU specs (essentially). I sent > it to the list, but it got bounced back to me, not sure if this was due to > server downtime or 'net problems, but it was a couple of weeks back... Eh? I never saw this message.... > Anyway, I have now lost everything on my hard drives due to partition table > errors - as in the partition table has been corrupted by something and I've > been busy rescuing data, but it seems that some data is invalid, something > quite worrying to me. Do you still have this information sitting around somewhere? -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 2 22:23:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA65223 for dynarec-outgoing; Mon, 2 Jul 2001 22:21:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 3 Jul 01 01:39:19 -0400 Message-Id: <3.0.5.32.20010702222914.00854510@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 02 Jul 2001 22:29:14 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Fast Z80 emulation Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I've been kicking around the idea of writing a super-fast Neo Geo Pocket Color emulator (all of the current NGPC emulators are unexcusably slow... the system isn't that complex, either.) The NGPC uses a Toshiba TLCS-900/H running at 6.144MHz (I think there is a 384KHz mode, too, but I have a gut feeling that no games are going to be using this :)) Anyhow, the TLCS-900 is a superset of the Z80 architecture. The Z80 makes me cringe because of how the opcodes are of variable sizes, which makes the fetch/decode process less straightforward (the 68000 isn't pretty either, but you never have to look at more than the first word to determine the instruction.) I don't have a copy of Neil's MZ80 here anymore (I tried downloading it today, but ftp.synthcom.com seems to be down or something), so I had to take a look at how RAZE does things. It uses multiple jump tables, which seems logical, but makes me wonder wether it is the best way to go about doing it. Couldn't a 64K-element jump table be used? For those instructions which use a 2-byte opcode, this would permit decoding in a single step, and for 1-byte opcodes, only the MSB of the opcode would matter. The LSB would be ignored, so 256 different jump table entries would be used by a single 1-byte instruction. It's been a while since I wrote my crappy Z80 disassembler (which, by the way, didn't use any look up tables, just an array of instruction descriptors), but I don't think any Z80 instructions had more than 2 bytes to their opcode (though a number of Z80 instructions had 3 or more bytes when data was accounted for.) Thoughts? Also, how can the half carry flag be emulated efficiently? It seems kind of nasty as well, since the X86 has nothing like it. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 2 23:11:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA65273 for dynarec-outgoing; Mon, 2 Jul 2001 23:11:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200107030628.IAA01574@pons.ac.upc.es> Subject: Re: DYNAREC: Fast Z80 emulation In-Reply-To: <3.0.5.32.20010702222914.00854510@mailandnews.com> "from Bart at Jul 2, 2001 10:29:14 pm" To: dynarec@dynarec.com Date: Tue, 3 Jul 2001 08:28:39 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hello, > > I've been kicking around the idea of writing a super-fast Neo Geo Pocket > Color emulator (all of the current NGPC emulators are unexcusably slow... > the system isn't that complex, either.) The NGPC uses a Toshiba TLCS-900/H > running at 6.144MHz (I think there is a 384KHz mode, too, but I have a gut > feeling that no games are going to be using this :)) > They work pretty well ... in a Pentium II :). And these seems to be the rule in modern emulators/games/applications. > I don't have a copy of Neil's MZ80 here anymore (I tried downloading it > today, but ftp.synthcom.com seems to be down or something), so I had to > take a look at how RAZE does things. It uses multiple jump tables, which > seems logical, but makes me wonder wether it is the best way to go about > doing it. > Strange, if you need it I can mail it to you, I'm not sure but perhaps is with the MAS source in my page in the dynarec site. That is the modified version with support for banks. BTW, the Genesis Z80 uses banks? If it does how it is being used MZ80 for emulating it. > Couldn't a 64K-element jump table be used? For those instructions which use > a 2-byte opcode, this would permit decoding in a single step, and for > 1-byte opcodes, only the MSB of the opcode would matter. The LSB would be > ignored, so 256 different jump table entries would be used by a single > 1-byte instruction. > It can be done, perhaps the only reason because it wasn't implemented this way was because it required a lot of memory (almost the same as a M68K emulator). And since MZ80 was developed for low end computers the memory usage (cache perhaps) could be a problem. Neil B could say more about this topic. Perhaps another reason could be if the extended opcode instructions are very used or not. Some are really very used but others aren't. > It's been a while since I wrote my crappy Z80 disassembler (which, by the > way, didn't use any look up tables, just an array of instruction > descriptors), but I don't think any Z80 instructions had more than 2 bytes > to their opcode (though a number of Z80 instructions had 3 or more bytes > when data was accounted for.) > Yes, with 2 bytes should be enough for most cases, but perhaps the combination of extended opcodes CB (Bit operations) and ED/FD (extra index registers). I think there were a few cases with this two extended bytes and with some strange behaviour (CB Instr Opcode Byte ED data). I don't have here (work) the info about Z80 so I can't say more. > Thoughts? > a What about a dynarec? We already have DRZ80 as a start point if Neil B agrees with. > Also, how can the half carry flag be emulated efficiently? It seems kind of > nasty as well, since the X86 has nothing like it. > > Half carry? You mean the bit 3 carry? X86 HAS IT ... There is no problem emulating them, this is one of the reasons it is so easy to implement Z80 flags in x86. > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 2 23:30:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA65304 for dynarec-outgoing; Mon, 2 Jul 2001 23:30:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200107030647.IAA01843@pons.ac.upc.es> Subject: DYNAREC: Project finished To: dynarec@dynarec.com Date: Tue, 3 Jul 2001 08:47:39 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com My university project is already finished and the document I presented is in the usual location: www.dynarec.com/~victor/docs/EmuProgStudy.zip Althought I get the maximun score (or the maximun it can be directly achieved ...) I'm not so happy about the document and if it was for being useful for the emuscene it should be changed a bit (or a lot). (This makes me question about how the university projects are scored in my university ...). In any case if I see some interest in using and improving it I will take it as a Beta Version 0.10 and I will continue it (first improvement should be check all the english spelling :P). So I'm now free to do other things. What about dr68K? And I hope I can start with the Sega CD/Genesis emulator I was planning from long ago ... Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 2 23:33:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA65314 for dynarec-outgoing; Mon, 2 Jul 2001 23:33:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 3 Jul 2001 00:04:55 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Fast Z80 emulation In-Reply-To: <3.0.5.32.20010702222914.00854510@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Anyhow, the TLCS-900 is a superset of the Z80 architecture. The Z80 makes > me cringe because of how the opcodes are of variable sizes, which makes the > fetch/decode process less straightforward (the 68000 isn't pretty either, > but you never have to look at more than the first word to determine the > instruction.) Certainly less straightforward. MZ80 Uses multiple tables for each of the 5 groupings. > I don't have a copy of Neil's MZ80 here anymore (I tried downloading it > today, but ftp.synthcom.com seems to be down or something) [SYNTHCOM->neil: 1337] uptime 11:55PM up 86 days, 3:28, 3 users, load averages: 2.04, 2.01, 2.00 Nope. ;-) Also, Dynarec.com sits behind Synthcom so if it's down, Dynarec is down, too. FWIW, Synthcom is always bloody up. It has NEVER had any downtime. Check your traceroutes before saying Synthcom is down. ;-) It 'aint - ever! > , so I had to > take a look at how RAZE does things. Blasphemy! ;-) He took that idea from MZ80. > It uses multiple jump tables, which > seems logical, but makes me wonder wether it is the best way to go about > doing it. It is... > Couldn't a 64K-element jump table be used? For those instructions which use > a 2-byte opcode, this would permit decoding in a single step, and for > 1-byte opcodes, only the MSB of the opcode would matter. The LSB would be > ignored, so 256 different jump table entries would be used by a single > 1-byte instruction. Sounds good in theory, but I tried this approach. Turns out the unaligned word reads (16 bit fetches are fairly expensive) slow things down significantly. > It's been a while since I wrote my crappy Z80 disassembler (which, by the > way, didn't use any look up tables, just an array of instruction > descriptors), but I don't think any Z80 instructions had more than 2 bytes > to their opcode (though a number of Z80 instructions had 3 or more bytes > when data was accounted for.) Some have as much as 4 - LD A, (IX+xxh) for example. > Also, how can the half carry flag be emulated efficiently? It seems kind of > nasty as well, since the X86 has nothing like it. It's the same as the AUX carry flag in the x86. The correct FTP site for makez80.zip: ftp://ftp.synthcom.com/pub/emulators/cpu/makez80.zip Seems to be responding from two different machines outside my local intranet. -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 2 23:59:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA65340 for dynarec-outgoing; Mon, 2 Jul 2001 23:59:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 3 Jul 01 03:16:39 -0400 Message-Id: <3.0.5.32.20010703000636.008582c0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 03 Jul 2001 00:06:36 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Fast Z80 emulation In-Reply-To: <200107030628.IAA01574@pons.ac.upc.es> References: <3.0.5.32.20010702222914.00854510@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >They work pretty well ... in a Pentium II :). And these seems >to be the rule in modern emulators/games/applications. It doesn't cut it when you're running on a 180MHz system :( >Strange, if you need it I can mail it to you, I'm not sure but perhaps >is with the MAS source in my page in the dynarec site. That is the >modified version with support for banks. BTW, the Genesis Z80 uses >banks? If it does how it is being used MZ80 for emulating it. If you could mail it to me, that would be appreciated! The Genesis doesn't really use banks like the SMS does (well, except maybe when it's in SMS compatibility mode, but no Genesis emulator bothers with that ;)). There actually is a window in the Z80's address space which can be used to access the 68K's address space. This is mostly used to fetch sound data from ROM (because there is no ROM for the Z80 in the Genesis, only RAM.) I've never seen code being executed from the window space, so to emulate it, you just use a memory read/write handler and forward accesses to this space to the 68K handlers. >It can be done, perhaps the only reason because it wasn't implemented >this way was because it required a lot of memory (almost the same as >a M68K emulator). And since MZ80 was developed for low end computers >the memory usage (cache perhaps) could be a problem. Neil B could say >more about this topic. Perhaps another reason could be if the extended >opcode instructions are very used or not. Some are really very used >but others aren't. Right, the Z80 emulator would be significantly larger with a 64KB*4 table :/ But... for the NGPC, this isn't much of a consideration. The NGPC would require 2 Z80 emulators... one which emulates the 16-bit superset TLCS-900/H, and another to emulate the standard Z80 which is used for sound processing. All in all, I don't think this would come out to be much bigger than a 68K emulator. My 68K emulator is exceptionally large, and I doubt a Z80 emulator would come out to be that big, even if it was written by me ;) Also, the table could easily be generated at run-time... A small compressed table could be carried around in the binary, and this table wouldn't be anywhere near the size of the decompressed result. >Yes, with 2 bytes should be enough for most cases, but perhaps the >combination of extended opcodes CB (Bit operations) and ED/FD (extra index >registers). I think there were a few cases with this two extended bytes >and with some strange behaviour (CB Instr Opcode Byte ED data). I don't >have here (work) the info about Z80 so I can't say more. Oh, right... I took a quick glance at a Z80 document I have, and those instructions appear to only use 2 byte opcodes. So it probably wouldn't be a big deal. >> Thoughts? >> a >What about a dynarec? We already have DRZ80 as a start point if Neil B >agrees with. I still don't really understand dynarec too well. I should really start asking some questions, but lately, I haven't had much time to look into it (I've been busy with too many of my own projects.) The hardest parts of dynamic recompilation to me are code generation and management of the translated code blocks -- how to detect when they should be discarded, and how to handle things such as jumps from other blocks into the middle of a code block which has already been recompiled. Also, I'm not quite sure of how the actual implementation works. I'll have to study DRMZ80 some more. I think this is one of those subjects where concepts can be very, very abstract, and a big conceptual leap has to be taken when actually implementing the code. >Half carry? You mean the bit 3 carry? X86 HAS IT ... There is no >problem emulating them, this is one of the reasons it is so easy to >implement Z80 flags in x86. Oh, you're right! The AF flag! Hmm.... One of the manual says that this flag is used in BCD operations, but I see it is set with most non-BCD arithmetic operations as well. The LAHF instruction stores this flag in AH as well... Cool! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 3 00:04:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA65360 for dynarec-outgoing; Tue, 3 Jul 2001 00:04:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 3 Jul 01 03:22:26 -0400 Message-Id: <3.0.5.32.20010703001213.0085ada0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 03 Jul 2001 00:12:13 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Project finished In-Reply-To: <200107030647.IAA01843@pons.ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 08:47 AM 7/3/2001 +0200, you wrote: > >My university project is already finished and the document I >presented is in the usual location: > >www.dynarec.com/~victor/docs/EmuProgStudy.zip I'm downloading it now. I'll read it tomorrow as I'm just about to call it a night. >So I'm now free to do other things. What about dr68K? And I hope >I can start with the Sega CD/Genesis emulator I was planning from >long ago ... I'm still interested in DR68K. BTW, the API we came up with is going to need changes. It turns out that interrupts are handled in a very different way than I thought, so the Starscream/Turbo68K approach isn't going to work. We have to use callbacks. The idea is that the 68K never puts interrupts in a pending state, it is purely up to the interrupting device to handle this. I'm looking forward to your SCD/Genesis emulation project. The Genesis will probably end up being pretty easy for you, since the VDP is quite similar to the Master System's VDP -- though much, much more robust ;) Are you subscribed to the SegaDev mailing list? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 3 00:13:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA65378 for dynarec-outgoing; Tue, 3 Jul 2001 00:13:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 3 Jul 2001 00:45:23 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Project finished In-Reply-To: <3.0.5.32.20010703001213.0085ada0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >So I'm now free to do other things. What about dr68K? And I hope > >I can start with the Sega CD/Genesis emulator I was planning from > >long ago ... > I'm still interested in DR68K. Me too. I'm just trying to get my damn product shipped so I can get back to it! > BTW, the API we came up with is going to > need changes. It turns out that interrupts are handled in a very different > way than I thought, so the Starscream/Turbo68K approach isn't going to > work. We have to use callbacks. Gee, darn... ;-) ;-) Can you tell I'm sarcastically disappointed - *NOT*! Callbacks are a good thing. > The idea is that the 68K never puts > interrupts in a pending state, it is purely up to the interrupting device > to handle this. The z80 doesn't either, but it's so commonly done that I included in the core. There's another API I created - something like mz80clearpendingirq or something like that. -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 3 00:13:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA65387 for dynarec-outgoing; Tue, 3 Jul 2001 00:13:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200107030731.JAA03164@pons.ac.upc.es> Subject: Re: DYNAREC: Project finished In-Reply-To: <3.0.5.32.20010703001213.0085ada0@mailandnews.com> "from Bart at Jul 3, 2001 00:12:13 am" To: dynarec@dynarec.com Date: Tue, 3 Jul 2001 09:31:00 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I'm downloading it now. I'll read it tomorrow as I'm just about to call it > a night. > I will see if I can pdfing it :). Now it is in nasty Word format. > I'm looking forward to your SCD/Genesis emulation project. The Genesis will > probably end up being pretty easy for you, since the VDP is quite similar > to the Master System's VDP -- though much, much more robust ;) > He! I think it isn't just a SMS VDP :). It seems a bit more complex than that with those additional features (windows, different cell sizes and so). > Are you subscribed to the SegaDev mailing list? > > I have been following the SegaDev posts since a few weeks ago, just lurking of course :). > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 3 03:23:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA65696 for dynarec-outgoing; Tue, 3 Jul 2001 03:23:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: larry.ztnet.com: Host [195.57.80.12] claimed to be megavia Date: Tue, 03 Jul 2001 12:41:46 +0200 From: Mario Rodriguez To: dynarec@dynarec.com Subject: Re: DYNAREC: Project finished In-Reply-To: <200107030647.IAA01843@pons.ac.upc.es> References: <200107030647.IAA01843@pons.ac.upc.es> Message-Id: <3B41A16A12C.3598RLYEH@mail.emulnation.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Mailer: Becky! ver 1.25.07 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com rooobo gay!!! you finally did it :) congratulations dude! ^__^ --- rlyeh/coder of emulNation pd: Now that we have more expectatives with your new project (that segacd emu) than with the EmuProgStudy stuff... be quicker!!!!!!!!! :DDDDD --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 3 05:36:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA65813 for dynarec-outgoing; Tue, 3 Jul 2001 05:36:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00e901c103bf$57033770$3fb5c3c1@FOSSIL> From: "Kieron Wilkinson" To: References: <3.0.5.32.20010703001213.0085ada0@mailandnews.com> Subject: Re: DYNAREC: Project finished Date: Tue, 3 Jul 2001 13:54:47 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Are you subscribed to the SegaDev mailing list? I am doing a SMS emu (when I get the time), but I have not seen this, can you provide more info? Cheers, Kieron --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 3 09:39:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA66048 for dynarec-outgoing; Tue, 3 Jul 2001 09:39:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 3 Jul 2001 10:11:27 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Fast Z80 emulation In-Reply-To: <3.0.5.32.20010703000636.008582c0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Man, you just completely ignored my email! ;-) Did it not get through? > :/ But... for the NGPC, this isn't much of a consideration. The NGPC would > require 2 Z80 emulators... one which emulates the 16-bit superset > TLCS-900/H, and another to emulate the standard Z80 which is used for sound > processing.\ You'd get better cache use if you just had it all in one emulator. Are the TLCS-900/H instructions a superset to the Z80? If so, you can just extend them and add those instructions. > than a 68K emulator. My 68K emulator is exceptionally large, and I doubt a > Z80 emulator would come out to be that big, even if it was written by me ;) I agree that it'd not be bigger than a 68K core. > Also, the table could easily be generated at run-time... A small compressed > table could be carried around in the binary, and this table wouldn't be > anywhere near the size of the decompressed result. That's how Starscream does it. But compression works great on and it doesn't add significantly to download time. You'll wind up using the RAM either way. > >Yes, with 2 bytes should be enough for most cases, but perhaps the > >combination of extended opcodes CB (Bit operations) and ED/FD (extra index > >have here (work) the info about Z80 so I can't say more. > Oh, right... > I took a quick glance at a Z80 document I have, and those instructions > appear to only use 2 byte opcodes. So it probably wouldn't be a big deal. Try the ones that use 4, where it's like: op op xx op For: LD A,(IX+xx) Yuck! > >What about a dynarec? We already have DRZ80 as a start point if Neil B > >agrees with. > (I've been busy with too many of my own projects.) The hardest parts of > dynamic recompilation to me are code generation and management of the > translated code blocks Already solved. > -- how to detect when they should be discarded, They shouldn't ever be discarded. > and > how to handle things such as jumps from other blocks into the middle of a > code block which has already been recompiled. Already solved as well. Give DRMZ80 a download and have a look. > Also, I'm not quite sure of how the actual implementation works. I'll have > to study DRMZ80 some more. I think this is one of those subjects where > concepts can be very, very abstract, and a big conceptual leap has to be > taken when actually implementing the code. What also makes it worse is the problem of people going into it with a predisposition of how it shold work, so not only do you have to learn a new method of working, you also have to unlearn the preconceptions! > Hmm.... One of the manual says that this flag is used in BCD operations, > but I see it is set with most non-BCD arithmetic operations as well. The > LAHF instruction stores this flag in AH as well... Cool! You really should look at makez80. It handles this (and all the other flags) "intelligently". Makez80 is about the 5th Z80 emulator I've written, so it's quite well debugged and you can get a lot of good, honed ideas from it. It was good enough that RAZE copied all kinds of things from it (and is still 2-3 times slower than MZ80!). -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 3 10:09:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA66093 for dynarec-outgoing; Tue, 3 Jul 2001 10:09:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 3 Jul 01 13:26:30 -0400 Message-Id: <3.0.5.32.20010703100850.00858db0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 03 Jul 2001 10:08:50 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Project finished In-Reply-To: <00e901c103bf$57033770$3fb5c3c1@FOSSIL> References: <3.0.5.32.20010703001213.0085ada0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 01:54 PM 7/3/2001 +0100, you wrote: >> Are you subscribed to the SegaDev mailing list? > >I am doing a SMS emu (when I get the time), but I have not seen this, can >you provide more info? I don't remember the direct link off the top of my head, but it's linked at my Saturn development page: http://trzy.overclocked.org/saturn By far, most discussions are about the Genesis, with the occasional Saturn post, but the list is open to discussion for any Sega machines. There are a lot of lurkers on the list which include a number of emulator authors, including of SMS machines (Zoop is subscribed to the list, I believe.) It's kind of quiet, and discussions usually happen in bursts. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 3 10:09:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA66102 for dynarec-outgoing; Tue, 3 Jul 2001 10:09:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 3 Jul 01 13:26:59 -0400 Message-Id: <3.0.5.32.20010703101526.0085a1b0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 03 Jul 2001 10:15:26 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Fast Z80 emulation In-Reply-To: References: <3.0.5.32.20010702222914.00854510@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Sounds good in theory, but I tried this approach. Turns out the unaligned >word reads (16 bit fetches are fairly expensive) slow things down >significantly. What about 2 consecutive byte reads? Couldn't that save you a jump? mov ch, [esi] mov cl, [esi+1] jmp [jmptab+esi*4] It could really increase code size, though... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 3 10:16:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA66117 for dynarec-outgoing; Tue, 3 Jul 2001 10:16:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 3 Jul 01 13:34:25 -0400 Message-Id: <3.0.5.32.20010703102425.0085e100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 03 Jul 2001 10:24:25 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Fast Z80 emulation In-Reply-To: References: <3.0.5.32.20010703000636.008582c0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Man, you just completely ignored my email! ;-) Did it not get through? Which email? I think I just replied to it a few minutes ago. >You'd get better cache use if you just had it all in one emulator. Are the >TLCS-900/H instructions a superset to the Z80? If so, you can just extend >them and add those instructions. I'm not sure yet, all I know is that Toshiba describes it as a superset, but it's also considered a 16-bit MCU, so I think it could be more than just an extension of the instruction set. I downloaded the instruction set manual, and I'll be looking at it today. >Try the ones that use 4, where it's like: > >op op xx op > >For: > >LD A,(IX+xx) > >Yuck! I'd definitely need another table for that one! >> Also, I'm not quite sure of how the actual implementation works. I'll have >> to study DRMZ80 some more. I think this is one of those subjects where >> concepts can be very, very abstract, and a big conceptual leap has to be >> taken when actually implementing the code. > >What also makes it worse is the problem of people going into it with a >predisposition of how it shold work, so not only do you have to learn a >new method of working, you also have to unlearn the preconceptions! Well, I don't really have any preconceptions, so hopefully that's good ;) >You really should look at makez80. It handles this (and all the other >flags) "intelligently". Makez80 is about the 5th Z80 emulator I've >written, so it's quite well debugged and you can get a lot of good, honed >ideas from it. It was good enough that RAZE copied all kinds of things >from it (and is still 2-3 times slower than MZ80!). Yeah, RAZE's speed can hamper things down. I've just added DAC sound emulation to Genital. I've always noticed that some games run slow with Z80 emulation, while some run fast (usually because the Z80 is stuck in some idle loop.) I'm going to be switching over to MZ80 soon. The only reason I've been putting it off is because I haven't been paying much attention to the Z80 aspect of the Genesis until now. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 3 10:56:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA66152 for dynarec-outgoing; Tue, 3 Jul 2001 10:56:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 3 Jul 2001 11:27:49 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Fast Z80 emulation In-Reply-To: <3.0.5.32.20010703101526.0085a1b0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Sounds good in theory, but I tried this approach. Turns out the unaligned > >word reads (16 bit fetches are fairly expensive) slow things down > >significantly. > What about 2 consecutive byte reads? Couldn't that save you a jump? > mov ch, [esi] > mov cl, [esi+1] > jmp [jmptab+esi*4] Uh... did you mean jmp [jmptab+ecx*4] Now it's 3 instructions instead of two. Yeah, tried that. It's about the same speed as doing a 16 bit fetch. -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 3 11:05:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA66171 for dynarec-outgoing; Tue, 3 Jul 2001 11:05:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B420DA1.9CEB447@austin.rr.com> Date: Tue, 03 Jul 2001 11:23:30 -0700 From: tarquin X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Fast Z80 emulation References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > mov ch, [esi] > > mov cl, [esi+1] > > jmp [jmptab+esi*4] > jmp [jmptab+ecx*4] > > Now it's 3 instructions instead of two. Yeah, tried that. It's about the > same speed as doing a 16 bit fetch. Off the top of my head, you'd probably also need to prefix the block with xor ecx, ecx or an equivalent to prevent a pipeline stall as well. Reading the full reg after writing just a part is a bad thing... > -->Neil -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 3 12:32:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA66238 for dynarec-outgoing; Tue, 3 Jul 2001 12:32:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 3 Jul 2001 13:04:32 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Fast Z80 emulation In-Reply-To: <3B420DA1.9CEB447@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > mov ch, [esi] > > > mov cl, [esi+1] > > > jmp [jmptab+esi*4] > > jmp [jmptab+ecx*4] > > > > Now it's 3 instructions instead of two. Yeah, tried that. It's about the > > same speed as doing a 16 bit fetch. > Off the top of my head, you'd probably also need to prefix the block with xor ecx, > ecx or an equivalent to prevent a pipeline stall as well. Reading the full reg > after writing just a part is a bad thing... I think the ch/cl mov will pair (from memory, I may be wrong). But adding the additional xor will just wind up taking more time anyway. ;-( -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 3 12:40:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA66255 for dynarec-outgoing; Tue, 3 Jul 2001 12:40:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 3 Jul 2001 13:12:09 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Fast Z80 emulation In-Reply-To: <3.0.5.32.20010703102425.0085e100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Man, you just completely ignored my email! ;-) Did it not get through? > Which email? I think I just replied to it a few minutes ago. I think so. It was fairly long winded and you replied (a few minutes ago) to it with just a single query (the 2 consecutive byte reads msg). > >You'd get better cache use if you just had it all in one emulator. Are the > >TLCS-900/H instructions a superset to the Z80? If so, you can just extend > >them and add those instructions. > I'm not sure yet, all I know is that Toshiba describes it as a superset, > but it's also considered a 16-bit MCU, so I think it could be more than > just an extension of the instruction set. I downloaded the instruction set > manual, and I'll be looking at it today. It's possible that the external data bus is 16 bits but internally is still 8 bits - sorta the 8088/8086 relationship. > >written, so it's quite well debugged and you can get a lot of good, honed > >ideas from it. It was good enough that RAZE copied all kinds of things > >from it (and is still 2-3 times slower than MZ80!). > Yeah, RAZE's speed can hamper things down. I've just added DAC sound > emulation to Genital. I've always noticed that some games run slow with Z80 > emulation, while some run fast (usually because the Z80 is stuck in some > idle loop.) MZ80 Tries to get away from spinning on the same instruction over and over again, like HALT or JR $. > I'm going to be switching over to MZ80 soon. The only reason I've been > putting it off is because I haven't been paying much attention to the Z80 > aspect of the Genesis until now. Let me know if you have any questions or problems. I'll dow hat I can to help out. -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 4 00:28:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA66757 for dynarec-outgoing; Wed, 4 Jul 2001 00:28:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 4 Jul 01 03:45:33 -0400 Message-Id: <3.0.5.32.20010704003522.00858100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 04 Jul 2001 00:35:22 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Fast Z80 emulation In-Reply-To: References: <3.0.5.32.20010703102425.0085e100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It's possible that the external data bus is 16 bits but internally is >still 8 bits - sorta the 8088/8086 relationship. I just looked at the documentation... it adds a whole bunch of new stuff including supervisor/user privilege level, 16- and 32-bit register modes, 4 register banks, watchdog timers, DMA, and all that nasty MCU stuff ;), more sophisticated interrupt processing, etc, etc. I don't think I want to emulate this right now ;) I only wanted to try NGPC emulation if the CPU was simple (because the rest of the system is.) But I didn't want to put TOO much time in it, so I think I'll crawl back to my other projects :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 4 11:23:33 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA67433 for dynarec-outgoing; Wed, 4 Jul 2001 11:23:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 4 Jul 01 14:38:03 -0400 Message-Id: <3.0.5.32.20010704112755.00859100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 04 Jul 2001 11:27:55 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Project finished In-Reply-To: <200107030647.IAA01843@pons.ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >www.dynarec.com/~victor/docs/EmuProgStudy.zip I've just read it. I think it's a very good document! It had lots of examples and was clear. I enjoyed it! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 4 11:49:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA67464 for dynarec-outgoing; Wed, 4 Jul 2001 11:49:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 4 Jul 2001 12:21:12 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Project finished In-Reply-To: <3.0.5.32.20010704112755.00859100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >www.dynarec.com/~victor/docs/EmuProgStudy.zip > I've just read it. I think it's a very good document! > It had lots of examples and was clear. I enjoyed it! True! I do take massive exception to one thing, though: "MIDI is a standard for producing music using simulated instruments." MIDI Is a serial bus standard for note and expression control to remote instruments. MIDI=Musical Instrument Digital Interface. It's a 31.5kbps serial bus protocol. It's not uncommon for this to be extremely misleading. Microsoft has blurred the line of what MIDI is that most of the general public knows it has nothing to do with sound generation. It's just a trigger mechanism. You also said: "MIDI is not designed to be used for sound effects." Not true! What I think you meant to say is "MIDI Is not designed to be used for audio playback of any sort". That indeed is true. -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 5 00:37:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA68023 for dynarec-outgoing; Thu, 5 Jul 2001 00:35:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200107050752.JAA01367@pons.ac.upc.es> Subject: Re: DYNAREC: Project finished In-Reply-To: "from Neil Bradley at Jul 4, 2001 12:21:12 pm" To: dynarec@dynarec.com Date: Thu, 5 Jul 2001 09:52:39 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >www.dynarec.com/~victor/docs/EmuProgStudy.zip > > I've just read it. I think it's a very good document! > > It had lots of examples and was clear. I enjoyed it! > > True! I do take massive exception to one thing, though: > > "MIDI is a standard for producing music using simulated instruments." > > MIDI Is a serial bus standard for note and expression control to remote > instruments. MIDI=Musical Instrument Digital Interface. It's a 31.5kbps > serial bus protocol. It's not uncommon for this to be extremely > misleading. Microsoft has blurred the line of what MIDI is that most of > the general public knows it has nothing to do with sound generation. It's > just a trigger mechanism. > > You also said: > > "MIDI is not designed to be used for sound effects." Not true! What I > think you meant to say is "MIDI Is not designed to be used for audio > playback of any sort". That indeed is true. > a Thanks for the correction, the sound part is one of the worst documented ;). I'm sure there are many of these 'errors' that should be corrected. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 8 03:32:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id DAA74104 for dynarec-outgoing; Sun, 8 Jul 2001 03:31:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Project finished From: "M.I.K.e" Message-ID: <000388930076e9d7_mailit@mail.dynarec.com> References: <3.0.5.32.20010703001213.0085ada0@mailandnews.com> Date: Sun, 08 Jul 2001 12:57:59 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm still interested in DR68K. BTW, the API we came up with is going to >need changes. It turns out that interrupts are handled in a very different >way than I thought, so the Starscream/Turbo68K approach isn't going to >work. BTW, why the name change? ;-) >Bart -- M.I.K.e The generation of random numbers is too important to be left to chance. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 8 09:39:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA74393 for dynarec-outgoing; Sun, 8 Jul 2001 09:39:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 8 Jul 01 12:56:34 -0400 Message-Id: <3.0.5.32.20010708094602.00859100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 08 Jul 2001 09:46:02 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Project finished In-Reply-To: <000388930076e9d7_mailit@mail.dynarec.com> References: <3.0.5.32.20010703001213.0085ada0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 12:57 PM 7/8/2001 +0200, you wrote: >>I'm still interested in DR68K. BTW, the API we came up with is going to >>need changes. It turns out that interrupts are handled in a very different >>way than I thought, so the Starscream/Turbo68K approach isn't going to >>work. > >BTW, why the name change? ;-) Well, I didn't want to force my poor sense of humor on everyone who used Genital68K, so I decided to give it a more appropriate name, Turbo68K. But also, people were getting Genital68K confused with Genital... they're 2 different projects. I'm going to be gone from July 15-July 22. So hopefully if DR68K gets started then, I can catch up when I return. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 10 04:19:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA76587 for dynarec-outgoing; Tue, 10 Jul 2001 04:19:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200107101136.NAA19064@pons.ac.upc.es> Subject: DYNAREC: Take a look to this To: dynarec@dynarec.com Date: Tue, 10 Jul 2001 13:36:32 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com It seems a course about dynamic binary translation and the class notes are ONLINE ;). Well I think most there is already known to us but perhaps there is something interesting. http://www.itlabs.umn.edu/classes/Spring-2001/csci8980-1/ Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 17 15:32:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA87851 for dynarec-outgoing; Tue, 17 Jul 2001 15:31:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005001c10f13$93135ec0$b2327bd5@Cheetah> From: "Neil Griffiths" To: Subject: DYNAREC: Fw: I've passed (and other stuff)! Date: Tue, 17 Jul 2001 23:55:06 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MIMEOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, Well, my name is now "Neil Griffiths BSc (Hons) Dip (HE)", I have passed with a 2.2. Certainly not great, but good enough, especially given I completed the 1st semester with a broken arm. I've just come back from Germany, where I've certainly depleted the reserve stocks of beer and met Mike. Then I got my results, while pissed, in Prague. In Prague, I discovered 2 things. One, absynthe is over-rated. Secondly, I'd be interested in working for a company who works with dynamic-recompilation, so I'm going to take a look around to see which companies appear interesting. I think Transmeta is right out. ;) So, I have my graduation ceremony tomorrow and my computer is still dead, so I'll spend the rest of the week doing data recovery, then sometime over the weekend, get it working again. After this, I really want to get the project moving. Is everyone in agreement? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 17 15:41:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA87872 for dynarec-outgoing; Tue, 17 Jul 2001 15:41:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004601c10f14$21c621c0$b32bfea9@daves> From: "David Sharp" To: References: <005001c10f13$93135ec0$b2327bd5@Cheetah> Subject: Re: DYNAREC: Fw: I've passed (and other stuff)! Date: Tue, 17 Jul 2001 23:59:27 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well, my name is now "Neil Griffiths BSc (Hons) Dip (HE)", I have passed > with a 2.2. Certainly not great, but good enough, especially given I > completed the 1st semester with a broken arm. Congratulations! I graduated last Friday and very nice it was too, took away a certificate, a cheesey photo and a rather special hat. That's all for now, Tarmac is stalled cos I've been finding a house down South and now I'm off to Portugal for a week. Toyed with the idea of experimenting with adding a threaded interpreter to NESCafe (java NES emulator http://www.davos.co.uk/nescafe/index.html) primarily to test out some ideas I had during my project. However realised it would take more than an afternoon and bottled out... Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 18 21:10:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA89471 for dynarec-outgoing; Wed, 18 Jul 2001 21:10:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B56623B.BD294486@austin.rr.com> Date: Wed, 18 Jul 2001 21:29:47 -0700 From: tarquin X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Fw: I've passed (and other stuff)! References: <005001c10f13$93135ec0$b2327bd5@Cheetah> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Griffiths wrote: > Hiya, > > Well, my name is now "Neil Griffiths BSc (Hons) Dip (HE)", I have passed > with a 2.2. Certainly not great, but good enough, especially given I > completed the 1st semester with a broken arm. Congratulations, you've apparantly had a better experience with higher education than I have... though I took the road slightly less travelled, and am now happily employed =P > be interested in working for a company who works with dynamic-recompilation, > so I'm going to take a look around to see which companies appear > interesting. I think Transmeta is right out. ;) Heh... > weekend, get it working again. After this, I really want to get the project > moving. Is everyone in agreement? > > Neil. My Inbox has been rather boring since project mail died down =) As for the scripted core generator I was working on, it's still going, if slowly. I ran into a small architectural wall a while ago, and work has been "fun" this week. Incidentally, anyone know a good way to squish memory corruption problems in a really large, filthy, incestuous C++ sourcebase that are only detected when they send malloc up %&#$ creek? Oh yeah, did I mention that this thing is nice and multithreaded too? =P -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 18 22:23:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA89536 for dynarec-outgoing; Wed, 18 Jul 2001 22:23:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 18 Jul 2001 22:59:38 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Fw: I've passed (and other stuff)! In-Reply-To: <3B56623B.BD294486@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Incidentally, anyone know a good way to squish memory corruption problems in a > really large, filthy, incestuous C++ sourcebase that are only detected when they > send malloc up %&#$ creek? Oh yeah, did I mention that this thing is nice and > multithreaded too? =P Create a wrapper set of functions that writes footers and trailer signatures to the beginning and end of allocated blocks. Upon freeing it, check the block. If it's corrupt, ASSERT(). It may not find the problem, but it'll at least get you in the ball park. I debug embedded systems this way. Comes in handy when a debugger isn't a posibility. -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 18 22:34:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA89552 for dynarec-outgoing; Wed, 18 Jul 2001 22:34:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B567614.5DF61E22@austin.rr.com> Date: Wed, 18 Jul 2001 22:54:29 -0700 From: tarquin X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Fw: I've passed (and other stuff)! References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > Incidentally, anyone know a good way to squish memory corruption problems in a > > really large, filthy, incestuous C++ sourcebase that are only detected when they > > send malloc up %&#$ creek? Oh yeah, did I mention that this thing is nice and > > multithreaded too? =P > > Create a wrapper set of functions that writes footers and trailer > signatures to the beginning and end of allocated blocks. Upon freeing it, > check the block. If it's corrupt, ASSERT(). It may not find the problem, > but it'll at least get you in the ball park. I've tried that =P dmalloc doesn't catch anything, ccmalloc isn't threadsafe, and throwing the system malloc compiled with -DMALLOC_DEBUG hasn't helped yet. Last thing I was trying today was throwing some enforced heap consistancy checks into malloc and free, hopefully they'll turn things up at a good time. Can't just breakpoint malloc or free though, there's so much allocation and deallocation going on that it breaks back to the debugger as soon as the mouse moves over the UI controls. Haven't tried a build w/o optimization yet though, that would at least make stepping through the code go a bit more predictably. > I debug embedded systems this way. Comes in handy when a debugger isn't a > posibility. > > -->Neil -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 18 23:02:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA89584 for dynarec-outgoing; Wed, 18 Jul 2001 23:02:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200107190620.IAA25879@pons.ac.upc.es> Subject: Re: DYNAREC: Fw: I've passed (and other stuff)! In-Reply-To: <005001c10f13$93135ec0$b2327bd5@Cheetah> "from Neil Griffiths at Jul 17, 2001 11:55:06 pm" To: dynarec@dynarec.com Date: Thu, 19 Jul 2001 08:20:36 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hiya, > > Well, my name is now "Neil Griffiths BSc (Hons) Dip (HE)", I have passed > with a 2.2. Certainly not great, but good enough, especially given I > completed the 1st semester with a broken arm. > Well I'm just 'Victor Moya del Barrio' :))). Well I don't know to what 2.2 is equivalent but I get a 8.22 (from a 10 basis). > In Prague, I discovered 2 things. One, absynthe is over-rated. Secondly, I'd > be interested in working for a company who works with dynamic-recompilation, > so I'm going to take a look around to see which companies appear > interesting. I think Transmeta is right out. ;) > Hehe :)). Try IBM (Daisy and similar) better. Or the new Sony company Connectix ;). > So, I have my graduation ceremony tomorrow and my computer is still dead, so > I'll spend the rest of the week doing data recovery, then sometime over the > weekend, get it working again. After this, I really want to get the project > moving. Is everyone in agreement? > Strange heree there aren't graduation ceremonies ... my CS Engineer 'Title' is just a small paper where it said I have paid it ... I hope in one or two years I will receive the real one (a small example about how it work the public system in Spain). I'm being lazy lately just wondering around the (always on hold) Sega CD emu and lately around what should be needed for a GBA Master System and GameGear emulator ... But I'm usually too lazy or busy to start nothing :P (perhaps it is the over warmed weather ...). > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 19 12:09:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA90360 for dynarec-outgoing; Thu, 19 Jul 2001 12:09:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 19 Jul 2001 12:45:18 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Fw: I've passed (and other stuff)! In-Reply-To: <3B567614.5DF61E22@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Create a wrapper set of functions that writes footers and trailer > > signatures to the beginning and end of allocated blocks. Upon freeing it, > > check the block. If it's corrupt, ASSERT(). It may not find the problem, > > but it'll at least get you in the ball park. > I've tried that =P dmalloc doesn't catch anything, ccmalloc isn't > threadsafe, and throwing the system malloc compiled with > -DMALLOC_DEBUG hasn't helped yet. I don't know what those are, but are the corruptions you're seeing actual heap corruptions or are they just corruptions within the blocks themselves? Another approach is to create an array of fixed size buffers and allocate/deallocate those rather than using heap management. That way you can fairly easily see if it's a ballistic pointer or if something is really getting tromped on. Also, are "new" and malloc being mixed? That creates heaps of problems, too. I've often found that those who make multithreaded apps like you're describing are just asking for trouble because almost no one who implements them knows what they're doing. > Last thing I was trying today was throwing some enforced heap > consistancy checks into malloc and free, hopefully they'll turn things > up at a good time. There might be a heapwalk() function you can call. There is under Watcom. > Haven't tried a build w/o optimization yet though, that would at least > make stepping through the code go a bit more predictably. I don't think it'd make any difference. I'm always wary of the "turn off optimizations" way of debugging because it changes so much. The last bug in a compiler I found (prior to the ARM SDT not generating proper code for unaligned UINT16/UINT32 writes/reads) was back in 1990. The odds of them being compiler bug related are almost nil these days. -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 19 22:37:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA00272 for dynarec-outgoing; Thu, 19 Jul 2001 22:36:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B57C758.15723F4@austin.rr.com> Date: Thu, 19 Jul 2001 22:53:28 -0700 From: tarquin X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: [Fwd: Re: DYNAREC: Fw: I've passed (and other stuff)!] Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I've tried that =P dmalloc doesn't catch anything, ccmalloc isn't > > threadsafe, and throwing the system malloc compiled with > > -DMALLOC_DEBUG hasn't helped yet. > > I don't know what those are, but are the corruptions you're seeing actual > heap corruptions or are they just corruptions within the blocks > themselves? They look to be heap corruptions, the blowups are usually in helper functions of malloc or free, when the links for the free blocks get hosed. > Another approach is to create an array of fixed size buffers and > allocate/deallocate those rather than using heap management. That way you > can fairly easily see if it's a ballistic pointer or if something is > really getting tromped on. The number of allocations involved kinda eliminates this option. The various MMU based overrun checking libs are useless, as the kernel only allows for 65536 different memory mappings right now. > Also, are "new" and malloc being mixed? That creates heaps of problems, > too. I've often found that those who make multithreaded apps like you're > describing are just asking for trouble because almost no one who > implements them knows what they're doing. I can't say off the top of my head if they're being mixed, but I believe just about everything uses new. > > Last thing I was trying today was throwing some enforced heap > > consistancy checks into malloc and free, hopefully they'll turn things > > up at a good time. > > There might be a heapwalk() function you can call. There is under Watcom. The aforementioned dmalloc has something like this, and it doesn't turn anything up =/ > > Haven't tried a build w/o optimization yet though, that would at least > > make stepping through the code go a bit more predictably. > > I don't think it'd make any difference. I'm always wary of the "turn off > optimizations" way of debugging because it changes so much. The last bug I wasn't thinking as much of compiler bugs as much as being able to trace through the code in the debugger and have things look right. > -->Neil After numerous attempts at locating it today, I think I have it narrowed down to the networking subsystem (downside: it's the stankiest part of the entire codebase). I *believe* it is either a stack object gone rabid, or a race condition in the network code. For an idea of how icky this thing is right now: It's a *large* codebase, all C++. Object interaction varies from semi-acceptable to GREAT GOOGLY MOOGLY. I'm working on a patch for the linux port of the macos port of the win32 code. There are at least two threads involved in the network code. I believe the original net code was written by a french guy that isn't with the company anymore... I think I'm going to try seperating the netcode out for some unit testing tomorrow. -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 22 02:14:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA05150 for dynarec-outgoing; Sun, 22 Jul 2001 02:11:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B5A9CEC.84A866E9@austin.rr.com> Date: Sun, 22 Jul 2001 02:29:16 -0700 From: tarquin X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: Runtime core generator update Content-Type: multipart/mixed; boundary="------------1ADDE9B2EABA0A41E241BA7D" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This is a multi-part message in MIME format. --------------1ADDE9B2EABA0A41E241BA7D Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit After way too long away from this thing, I've finally gotten back to it. I've attached the current 6502 script, as I'm too sleepy to wrap up a real code dump right now. Maybe tomorrow on that. It is parsing the script more or less correctly at this point, and it looks like the basic amode emitter is working as well, though it hasn't had an exhaustive test yet. The grammar could probably use a bit more polishing, as it isn't horribly forgiving at the moment. Known language limitations: -- I'm not sure how one would specify prefix bytes (a la x86 and Z80) just yet. -- It is pretty biased towards fixed length opcodes for now (not instructions, just opcodes) Current parser limitations: -- It doesn't support multiple opcode formats yet -- It doesn't have a code generator yet -- It doesn't do any code rearrangement yet -- There are a number of areas where efficiency could be improved Suggestions on a good way to make an x86 code generator would be helpful. I think I may try a tree-rewriting generator, and hardcode a tree for simplistic crap x86 code. Once I get any form of code generation up and running, I'll work on generated quality. First steps would be some basic structural transformations, such as eliding uops together into monolithic instruction handlers. The step past that would probably be simplifying the uops within instruction granular bundles to eliminate any externally-invisible registers (like the AD and D temps, or the imaginary UPC). The ultimate step would be to divine flags-in and flags-out, and teach it how to do dynamic translation. Once I get at least the instruction-granular form running at a respectable speed, It's time to port the rest of the NES code over, put in asteroids for the hell of it, and figure out whether to take the 'easy' route and start on PSX emulation, or the 'hard' route and work on something nasty like the genny or snes. (In this case, 'easy' refers to the amount of cycle-perfect timing needed, and the fact that the current grammar would probably work just fine for the R3000) Suggestions on how to generate x86 code (preferably in a scriptable fashion) or how to improve the scripting language to deal with the atrocities of the Z80 and others are quite welcome =) -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------1ADDE9B2EABA0A41E241BA7D Content-Type: text/plain; charset=us-ascii; name="6502.cpu" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="6502.cpu" [name] NMOS M6502(A) [flags] U8 NVOBDIZC [regs] ;EBP FSA16D8 CODE ;mem MSA16D8 READ ;mem MSA16D8 WRITE ;mem P16 PC ;CXH/CXL P16 AD ;CL/CH U8 A ;AL U8 X ;BL U8 Y ;BH U8 S ;DL U8 D ;DH FLAGS P ;AH/FLAGS UOP UPC ;mem INT NMI ;mem INT IRQ ;mem M8 ZP ;EDI M8 CUR ;ESI U32 CLOCK ;mem [decode] file 6502.tbl U16 256 [opcodefmt] U16 UUUFFFFFWRAAAAAA [units] IRQJSR STACK ALU TRANSFER BRANCH FLAG INDEX [ops] START ALU ORA AND EOR ADC STA LDA CMP SBC ASL ROL LSR ROR STX LDX DEC INC BIT NOP NOP NOP ASL_A ROL_A LSR_A ROR_A END ALU START TRANSFER TXA TAX TYA TAY TXS TSX END TRANSFER START BRANCH BPL BMI BVC BVS BCC BCS BNE BEQ END BRANCH START FLAG CLC SEC CLI SEI NOP CLV CLD SED END FLAG START INDEX STY LDY CPY CPX DEY DEX INY INX END INDEX [amodes] START TAIL FETCH END TAIL START IMPLIED A1Ch OP END IMPLIED START IMMEDIATE A14h FETCH_IMM_EXEC OP END IMMEDIATE START ACCUMULATOR A10h OP + 12 END ACCUMULATOR START RELATIVE A18h FETCH_REL OP BR_LOW BR_FIX END RELATIVE START ABS_JUMP ((!R) && (!W) && (A04h)) FETCH_ADL FETCH_JMP_ADH END ABS_JMP START ABS A04h FETCH_ADL FETCH_ADH (R) ? ((R && W) ? READ : READ_EXEC) OP (R && W) ? STORE END ABS START ABS_IDX (((A&3Ch) == 04h) && (A&3)) FETCH_ADL (A&1) ? INDEX_X : INDEX_Y FETCH_ADH (W) ? INDEX_FIX : INDEX_FIX_EXEC (R) ? ((R && !W) ? READ_EXEC : READ) OP (R && W) ? STORE END ABS_IDX START ZP A00h FETCH_ZP (R) ? ((R && !W) ? READ_ZP_EXEC : READ_ZP) OP (R && W) ? STORE END ZP START ZP_IDX (!(A&3Ch) && (A&3) && !(A3)) FETCH_ZP (A&1) ? INDEX_ZPX : INDEX_ZPY (R) ? ((R && !W) ? READ_ZP_EXEC : READ_ZP) OP (R && W) ? STORE END ZP_IDX START ABS_IND_JUMP (A&20h && A24h) FETCH_ADL FETCH_ADH READ_EXEC JMP_IND_PCL READ_EXEC JMP_IND_PCH END ABS_IND_JUMP START PREINDEX A08h FETCH_ZP READ_ZP_EXEC INDEX_ZPX IND_X_ADL IND_X_ADH (R && (!W)) ? READ_EXEC OP (R && W) ? STORE END PREINDEX START POSTINDEX A0Ch FETCH_IMM FETCH_IND_ADL FETCH_IND_ADH (R && (!W)) ? INDEX_IND_Y_EXEC : INDEX_IND_Y (R && (!W)) ? READ_EXEC OP (R && W) ? STORE END POSTINDEX START SPECIAL U1 F0 INC_PC PUSH_PCH PUSH_PCL PUSH_P_BRK IRQ_FETCH_PCL IRQ_FETCH_PCH END SPECIAL U1 F0 START SPECIAL U1 F1 FETCH_ADL NOP PUSH_PCH PUSH_PCL FETCH_JMP_ADH END SPECIAL U1 F1 START SPECIAL U1 F2 NOP INS PULL_P PULL_PCL PULL_PCH END SPECIAL U1 F2 START SPECIAL U1 F3 NOP INS PULL_PCL PULL_PCH INC_PC END SPECIAL U1 F3 START SPECIAL U2 F&1 NOP INS PULL_EXEC (F&2) ? TDA : TDP END SPECIAL U2 F&1 START SPECIAL U2 !(F&1) (F&2) ? TAD : TPD PUSH END SPECIAL U2 !(F&1) START RESET RESET_FETCH_PCL RESET_FETCH_PCH RESET_SET_FLAGS NOP NOP NOP END RESET START NMI NOP PUSH_PCH PUSH_PCL PUSH_P_IRQ NMI_FETCH_PCL NMI_FETCH_PCH END NMI START IRQ NOP PUSH_PCH PUSH_PCL PUSH_P_IRQ IRQ_FETCH_PCL IRQ_FETCH_PCH END IRQ START UNIMP UNIMP END UNIMP [uops] START UNIMP PC-- PRINT "Unimplemented opcode %X @ %.4X\n" (F[PC]) (PC) PC++ TICK END UNIMP START NOP TICK END NOP START FETCH (NMI) ? DOINT(NMI) (IRQ) ? DOINT(IRQ) D = F[PC] PC++ UPC = DECODE(D) TICK_INSTR END FETCH START FETCH_IMM D = F[PC] PC++ TICK END FETCH_IMM START FETCH_IMM_EXEC D = F[PC] PC++ CHAIN END FETCH_IMM_EXEC START FETCH_ZP ADL = F[PC] PC++ TICK END FETCH_ZP START FETCH_ADL ADL = F[PC] PC++ TICK END FETCH_ADL START FETCH_ADH ADH = F[PC] PC++ TICK END FETCH_ADH START FETCH_JMP_ADH ADH = F[PC] PC = AD FETCHCHANGE(PC) TICK END FETCH_JMP_ADH START FETCH_REL D = F[PC] PC++ TICK END FETCH_REL START FETCH_IND_ADL ADL = ZP[D] D++ TICK END FETCH_IND_ADL START FETCH_IND_ADH ADH = ZP[D] D++ TICK END FETCH_IND_ADH START READ D = M[AD] TICK END READ START READ_EXEC D = M[AD] CHAIN END READ_EXEC START STORE M[AD] = D TICK END STORE START READ_ZP D = ZP[ADL] TICK END READ_ZP START READ_ZP_EXEC D = ZP[ADL] CHAIN END READ_ZP_EXEC START INDEX_X ADH = 0 AD += X P_O = (ADH) ? 1 : 0 CHAIN END INDEX_X START INDEX_Y ADH = 0 AD += Y P_O = (ADH) ? 1 : 0 CHAIN END INDEX_Y START INDEX_ZPX ADL += X TICK END INDEX_ZPX START INDEX_ZPY ADL += Y TICK END INDEX_ZPY START INDEX_FIX (P_O) ? ADH++ P_O = 1 TICK END INDEX_FIX START INDEX_IND_Y D = ADH AD += Y TICK END INDEX_IND_Y START INDEX_IND_Y_EXEC D = ADH AD += Y (ADH == D) ? CHAIN : TICK END INDEX_IND_Y_EXEC START INDEX_FIX_EXEC (P_O) ? GOTO INC_TICK P_O = 1 CHAIN END INDEX_FIX_EXEC START INC_TICK ADH++ TICK END INC_TICK START IND_X_ADL D = ADL ADL = ZP[D] TICK END IND_X_ADL START INS S++ TICK END INS START PUSH ZP[S + 100h] = D S-- TICK END PUSH START PULL_EXEC D = ZP[S + 100h] CHAIN END PULL_EXEC START PUSH_PCH ZP[S + 100h] = PCH S-- TICK END PUSH_PCH START PUSH_PCL ZP[S + 100h] = PCL S-- TICK END PUSH_PCL START PUSH_P_BRK P_B = 1 ZP[S + 100h] = P S-- P_B = 0 P_I = 1 (NMI) ? GOTO BRK_NMI (IRQ) ? GOTO BRK_IRQ TICK END PUSH_P_BRK START BRK_NMI UPC = NMIUOP + 3 NMI = 0 TICK END BRK_NMI START BRK_IRQ UPC = IRQUOP + 3 IRQ = 0 TICK END BRK_IRQ START PUSH_P_IRQ ZP[S + 100h] = P P_B = 0 P_I = 1 TICK END PUSH_P_IRQ START PULL_PCL PCL = ZP[S + 100h] S++ FETCHCHANGE(PC) TICK END PULL_PCL START PULL_PCH PCH = ZP[S + 100h] S++ FETCHCHANGE(PC) TICK END PULL_PCH START PULL_P P = ZP[S + 100h] S++ TICK END PULL_P START INC_PC PC++ TICK END INC_PC START JMP_IND_PCL PCL = D ADL++ FETCHCHANGE(PC) TICK END JMP_IND_PCL START JMP_IND_PCH PCH = D FETCHCHANGE(PC) TICK END JMP_IND_PCH START BR_LOW AD = E8Z16(PCL) AD += E8S16(D) PCL = ADL TICK END BR_LOW START BR_FIX (!ADH) ? GOTO FETCH : PCH += ADH TICK END BR_FIX START BPL (P_N) ? GOTO FETCH : CHAIN END BPL START BMI (!P_N) ? GOTO FETCH : CHAIN END BMI START BNE (P_Z) ? GOTO FETCH : CHAIN END BNE START BEQ (!P_Z) ? GOTO FETCH : CHAIN END BEQ START BCC (P_C) ? GOTO FETCH : CHAIN END BCC START BCS (!P_C) ? GOTO FETCH : CHAIN END BCS START BVS (!P_V) ? GOTO FETCH : CHAIN END BVS START BVC (P_V) ? GOTO FETCH : CHAIN END BVC START LDA A = D P_NZ = NZ(A) TICK END LDA START LDX X = D P_NZ = NZ(X) TICK END LDX START LDY Y = D P_NZ = NZ(Y) TICK END LDY START STA M[AD] = A TICK END STA START STX M[AD] = X TICK END STX START STY M[AD] = Y TICK END STY START ASL D SHL_C 1 P_NZ = NZ(D) TICK END ASL START ASL_A A SHL_C 1 P_NZ = NZ(A) TICK END ASL_A START LSR D SHR_C 1 P_NZ = NZ(D) TICK END LSR START LSR_A A SHR_C 1 P_NZ = NZ(A) TICK END LSR_A START ROL D RCL 1 P_NZ = NZ(D) TICK END ROL START ROL_A A RCL 1 P_NZ = NZ(A) TICK END ROL_A START ROR D RCR 1 P_NZ = NZ(D) TICK END ROR START ROR_A A RCL 1 P_NZ = NZ(A) TICK END ROR_A START ADC (P_D) ? GOTO ADC_DEC : GOTO ADC_NODEC END ADC START ADC_DEC AD = E8Z16(A&0Fh) ADL += (D&0Fh) ADL += P_C (ADL > 9) ? AD += 6 P_V = ((ADL ^ D) & (ADL ^ A)) & 80h P_NZ = NZ(ADL) (ADL > 99h) ? ADL += 96 P_C = ADL > 99h A = ADL TICK END ADC_DEC START ADC_NODEC AD = E8Z16(A) AD += D AD += P_C P_NZ = NZ(ADL) P_V = ((ADL ^ D) & (ADL ^ A)) & 80h P_C = ADH A = ADL TICK END ADC_NODEC START SBC_NODEC AD = E8Z16(A) AD -= D AD -= ~P_C P_V = ((ADL ^ A) & (ADL ^ D)) & 80h P_NZ = NZ(ADL) P_C = ~ADH&1 A = ADL TICK END SBC_NODEC START SBC AD = E8Z16(A) AD -= D AD -= ~P_C P_V = ((ADL ^ A) & (ADL ^ D)) & 80h P_NZ = NZ(ADL) (P_D) ? GOTO SBC_DEC P_C = (~ADH)&1 A = ADL TICK END SBC START SBC_DEC (((A&0Fh) - (~P_C)) < (D&0Fh)) ? AD -= 6 (AD > 99h) ? AD -= 60h P_C = (~ADH)&1 A = ADL TICK END SBC_DEC START CMP AD = A - D P_C = (~ADH)&1 P_NZ = NZ(ADL) TICK END CMP START CPX AD = X - D P_C = (~ADH)&1 P_NZ = NZ(ADL) TICK END CPX START CPY AD = Y - D P_C = (~ADH)&1 P_NZ = NZ(ADL) TICK END CPY START INC D++ P_NZ = NZ(D) TICK END INC START INX X++ P_NZ = NZ(X) TICK END INX START INY Y++ P_NZ = NZ(Y) TICK END INY START DEC D-- P_NZ = NZ(D) TICK END DEC START DEX X-- P_NZ = NZ(X) TICK END DEX START DEY Y-- P_NZ = NZ(Y) TICK END DEY START AND A &= D P_NZ = NZ(A) TICK END AND START ORA A |= D P_NZ = NZ(A) TICK END ORA START EOR A ^= D P_NZ = NZ(A) TICK END EOR START CLD P_D = 0 TICK END CLD START CLC P_C = 0 TICK END CLC START CLI P_I = 0 TICK END CLI START CLV P_V = 0 TICK END CLV START SED P_D = 1 TICK END SED START SEC P_C = 1 TICK END SEC START SEI P_I = 1 TICK END SEI START BIT P_N = D&80h P_V = D&40h P_Z = (A & D) ? 0 : 1 TICK END BIT START TAD D = A TICK END TAD START TPD D = P TICK END TPD START TDA A = D P_NZ = NZ(D) TICK END TDA START TDP P = D TICK END TDP START TAX X = A P_NZ = NZ(A) TICK END TAX START TXA A = X P_NZ = NZ(X) TICK END TXA START TAY Y = A P_NZ = NZ(A) TICK END TAY START TYA A = Y P_NZ = NZ(Y) TICK END TYA START TSX X = S P_NZ = NZ(S) TICK END TSX START TXS S = X TICK END TXS START IRQ_FETCH_PCH PCH = F[FFFFh] FETCHCHANGE(PC) TICK END IRQ_FETCH_PCH START IRQ_FETCH_PCL PCL = F[FFFEh] FETCHCHANGE(PC) TICK END IRQ_FETCH_PCL START NMI_FETCH_PCH PCH = F[FFFBh] FETCHCHANGE(PC) TICK END NMI_FETCH_PCH START NMI_FETCH_PCL PCL = F[FFFAh] FETCHCHANGE(PC) TICK END NMI_FETCH_PCL START RESET_SET_FLAGS TICK END RESET_SET_FLAGS START RESET_FETCH_PCH PCH = F[FFFDh] FETCHCHANGE(PC) TICK END RESET_FETCH_PCH START RESET_FETCH_PCL PCL = F[FFFCh] FETCHCHANGE(PC) TICK END RESET_FETCH_PCL --------------1ADDE9B2EABA0A41E241BA7D-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 23 12:48:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA06926 for dynarec-outgoing; Mon, 23 Jul 2001 12:47:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 23 Jul 2001 13:22:10 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Runtime core generator update In-Reply-To: <3B5A9CEC.84A866E9@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > It is parsing the script more or less correctly at this point, and it > looks like the basic amode emitter is working as well, though it hasn't > had an exhaustive test yet. This is fascinating, but I have to be honest - I don't really know what I'm looking at. Is this something to emit a processor emulator or a recompiler, or...? What is this file used for? It seems like it's similar to the script idea that Alex had eons ago. > Known language limitations: > -- I'm not sure how one would specify prefix bytes (a la x86 and Z80) > just yet. The Z80 doesn't have any prefix bytes that I'm aware of. And the only prefix bytes of interest really are the length in making things 16 bit instead of 32, and that could be handled by just making it a separate instruction. > -- It is pretty biased towards fixed length opcodes for now (not > instructions, just opcodes) How does this script tie in to the instructions themselves? For example, how do I map opcode 0x90 to a specific instance of this list? > Once I get any form of code generation up and running, I'll work on > generated quality. First steps would be some basic structural > transformations, such as eliding uops together into monolithic > instruction handlers. Be careful about doing this - things like breaking up addressing mode prefixes into call/rets. I got over 50% speed improvement in my emulator cores by inlining it. It'll backfire. > imaginary UPC). The ultimate step would be to divine flags-in and > flags-out, and teach it how to do dynamic translation. The recompiler that I wrote does this - takes into account flag contexts and doesn't generate flag preamble/postamble if adjoining instructions don't use them. > in asteroids for the hell of it, and figure out whether to take the > 'easy' route and start on PSX emulation, or the 'hard' route and work on > something nasty like the genny or snes. (In this case, 'easy' refers to > the amount of cycle-perfect timing needed, and the fact that the current > grammar would probably work just fine for the R3000) Yeah, just don't do the Genesis. It has lots of cycle dependent stuff, and does weird things like reloading the sprite list midretrace. And if you get it wrong, you get nice, blinking/flickering sprites. ;-) > Suggestions on how to generate x86 code (preferably in a scriptable > fashion) or how to improve the scripting language to deal with the > atrocities of the Z80 and others are quite welcome =) I'm not sure why you think the Z80 is such an atrocity. It's actulaly a fairly simple chip and even with your current design I don't see how it couldn't easily be adapted. -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 23 12:54:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA06941 for dynarec-outgoing; Mon, 23 Jul 2001 12:54:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 23 Jul 2001 13:28:22 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Fw: I've passed (and other stuff)! In-Reply-To: <005001c10f13$93135ec0$b2327bd5@Cheetah> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > So, I have my graduation ceremony tomorrow and my computer is still dead, so > I'll spend the rest of the week doing data recovery, then sometime over the > weekend, get it working again. After this, I really want to get the project > moving. Is everyone in agreement? Yes, I'm in complete agreement - with some caveats. It's unrealistic of me to be able to do Dynarec stuff AND my business. I'm inches from getting it off the ground and really need to finish it up before devoting tons of time to the Dynarec stuff. That being said, I still think we have some prework to be done - namely nailing down the script format for the script that emits the emitter/dissassembler. We still haven't worked out all the details on it and it'd be oh so nice to have it since it'd save a lot of work in the long run. Neil - you mentioned that you had something written up about it. Is that sitll around or was it lost in your HD crash? -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 23 12:59:33 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA06957 for dynarec-outgoing; Mon, 23 Jul 2001 12:59:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002601c113b5$2353fe40$bd397bd5@Cheetah> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Fw: I've passed (and other stuff)! Date: Mon, 23 Jul 2001 21:21:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > It's unrealistic of me to be able to do Dynarec stuff AND my business. I'm > inches from getting it off the ground and really need to finish it up > before devoting tons of time to the Dynarec stuff. Which business is that - is this Synthcom? > That being said, I still think we have some prework to be done - namely > nailing down the script format for the script that emits the > emitter/dissassembler. We still haven't worked out all the details on it > and it'd be oh so nice to have it since it'd save a lot of work in the > long run. Yeah, that's what I'd been working on... > Neil - you mentioned that you had something written up about it. Is that > sitll around or was it lost in your HD crash? ...lost in the HD crash, but perhaps I'll find it - I'm actually going through the HD right now trying to recover what I can. If I find it, then I'll post it to the list ASAP! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 23 14:11:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA07033 for dynarec-outgoing; Mon, 23 Jul 2001 14:11:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 23 Jul 2001 14:45:45 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Fw: I've passed (and other stuff)! In-Reply-To: <002601c113b5$2353fe40$bd397bd5@Cheetah> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > inches from getting it off the ground and really need to finish it up > > before devoting tons of time to the Dynarec stuff. > Which business is that - is this Synthcom? Yeah. I've got an upgrade for an old synthesizer that needs to be released. I'm almost done with the manual and the code is 99.9999% complete and debugged. Just gotta ship it! And I'm sitting on $6K worth of inventory, so I've got a vested interest in shipping it! > > emitter/dissassembler. We still haven't worked out all the details on it > > and it'd be oh so nice to have it since it'd save a lot of work in the > > long run. > Yeah, that's what I'd been working on... I'm not sure who it was, but I remember quite a few cases (ARM perhaps?) where the disassembly with the ARM got really strange. Can anyone remember? > > Neil - you mentioned that you had something written up about it. Is that > > sitll around or was it lost in your HD crash? > ...lost in the HD crash, but perhaps I'll find it - I'm actually going > through the HD right now trying to recover what I can. If I find it, then > I'll post it to the list ASAP! Great! -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 23 20:42:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA07357 for dynarec-outgoing; Mon, 23 Jul 2001 20:42:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B5CF296.4C98C8DE@austin.rr.com> Date: Mon, 23 Jul 2001 20:59:18 -0700 From: tarquin X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Runtime core generator update References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Heh, time for another book ^_^ > This is fascinating, but I have to be honest - I don't really know what > I'm looking at. Is this something to emit a processor emulator or a > recompiler, or...? What is this file used for? It seems like it's similar > to the script idea that Alex had eons ago. This is a script to emit a CPU interpreter core. The basic architecture it is working from is something like this: The CPU has one opcode format (for now) specified in the [opcodefmt] section. The CPU's operation for each instruction can be described completely given a register set and a list of microops that manipulate those registers. An instruction can be described by a static list of microops. A static list of microops can be generated from a set of templates that describe the operation of the addressing modes, and each template has a match expression that operates on fields of the opcode. Opcodes can be generated by one of two methods: simple method: run through all values of the opcode format. Complex method: load up a file with a LUT of opcodes. The initial architecture is quite inefficient, as it focuses on being completely cycle accurate (to a point, I don't have it running the memory access per cycle that the real 6502 does yet) as opposed to fast. The idea is to use the uop descriptions to generate a bunch of native code, then use the templates to generate lists of pointers to that code. The hardcoded C core I have that follows that architecture runs like a pig, but it suffers from not being able to jump directly to places (there's a crapload of redundant stack junk) > The Z80 doesn't have any prefix bytes that I'm aware of. And the only > prefix bytes of interest really are the length in making things 16 bit > instead of 32, and that could be handled by just making it a separate > instruction. What about the bytes to inform the chip to use IX and IY instead of another register? Part of the problem is that I'm not sure how to specify variable length opcodes. The 6502 doesn't have any extension opcodes, and the addressing mode operands are all handled by the templates. > How does this script tie in to the instructions themselves? For example, > how do I map opcode 0x90 to a specific instance of this list? Either opcode 0x90 gets sliced up by the opcode format into fields, and the addressing mode expressions match against those, or it gets plugged through a LUT to get an expanded, easier to slice opcode. > > generated quality. First steps would be some basic structural > > transformations, such as eliding uops together into monolithic > > instruction handlers. > > Be careful about doing this - things like breaking up addressing mode > prefixes into call/rets. I got over 50% speed improvement in my emulator > cores by inlining it. It'll backfire. That's just it, the structural transformations I'm talking about are summed up almost completely as inlining. The straight translation leaves it cycle perfect, but sacrifices a lot of speed due to the design. The quickest way to high speed is to string the uop handlers together directly, globbing things so that it's jumping from instruction handler to instruction handler instead of uop handler to uop handler. Ideally it would do some simplification and reduction to eliminate the registers that do not hold a value between instructions (AD and D in this example) > > imaginary UPC). The ultimate step would be to divine flags-in and > > flags-out, and teach it how to do dynamic translation. > > The recompiler that I wrote does this - takes into account flag contexts > and doesn't generate flag preamble/postamble if adjoining instructions > don't use them. Yes, this thing will (hopefully) end up being a retargetable resourceable translation engine ^_^ > > something nasty like the genny or snes. (In this case, 'easy' refers to > > the amount of cycle-perfect timing needed, and the fact that the current > > grammar would probably work just fine for the R3000) > > Yeah, just don't do the Genesis. It has lots of cycle dependent stuff, and > does weird things like reloading the sprite list midretrace. And if you > get it wrong, you get nice, blinking/flickering sprites. ;-) Sounds like what bigfoot on the NES pulls =) two pane 8-way hardware assisted scrolling with a nonmoving status bar in the middle, and 120 sprites onscreen at once. The NES only really supports a nonmoving status bar at the top or bottom (bottom if you have some form of scanline IRQ on the cart) and a single 8-way scrolling pane, and 64 sprites onscreen at once. Needless to say, the original coder's description of how it worked provided a fair bit of insight into how the NES's graphics chip worked ^_^ > > Suggestions on how to generate x86 code (preferably in a scriptable > > fashion) or how to improve the scripting language to deal with the > > atrocities of the Z80 and others are quite welcome =) > > I'm not sure why you think the Z80 is such an atrocity. It's actulaly a > fairly simple chip and even with your current design I don't see how it > couldn't easily be adapted. It didn't look to be easily decodeable by the methods I was going for =) You have to admit, decoding it isn't quite as clean as say, mips... > -->Neil -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 24 00:44:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA07545 for dynarec-outgoing; Tue, 24 Jul 2001 00:44:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 24 Jul 2001 01:18:37 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Runtime core generator update In-Reply-To: <3B5CF296.4C98C8DE@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I'm looking at. Is this something to emit a processor emulator or a > > recompiler, or...? What is this file used for? It seems like it's similar > > to the script idea that Alex had eons ago. > This is a script to emit a CPU interpreter core. The basic architecture it is > working from is something like this: Gotcha - interesting. Sorta like a high level emulator compiler. ;-) > The initial architecture is quite inefficient, as it focuses on being completely > cycle accurate (to a point, I don't have it running the memory access per cycle > that the real 6502 does yet) as opposed to fast. Then you've got bizarre crap where the crossing of a page boundary eats an extra cycle, etc... ;-( > > prefix bytes of interest really are the length in making things 16 bit > > instead of 32, and that could be handled by just making it a separate > > instruction. > What about the bytes to inform the chip to use IX and IY instead of another > register? They aren't "prefix" bytes - they're completely different instructions. Well, except for the LD IX, xxxxh and LD IX, (xxxxh) instructions, but they shouldn' be viewed as tied together with the other 16 bit loads. > Part of the problem is that I'm not sure how to specify variable > length opcodes. The 6502 doesn't have any extension opcodes, and the > addressing mode operands are all handled by the templates. That's because the 6502 is a braindead POS. ;-) > > Be careful about doing this - things like breaking up addressing mode > > prefixes into call/rets. I got over 50% speed improvement in my emulator > > cores by inlining it. It'll backfire. > That's just it, the structural transformations I'm talking about are summed up > almost completely as inlining. Good. > The straight translation leaves it cycle perfect, but sacrifices a lot > of speed due to the design. The quickest way to high speed is to > string the uop handlers together directly, globbing things so that > it's jumping from instruction handler to instruction handler instead > of uop handler to uop handler. Ideally it would do some simplification > and reduction to eliminate the registers that do not hold a value > between instructions (AD and D in this example) You'd have to recompile code to do that. You can't do lazy flag calculations and expect things to get faster. Everyone who has tried it has failed miserably, as the overall time to do the setting/getting of flags (and checking) outweighs just doing it optimally. > > The recompiler that I wrote does this - takes into account flag contexts > > and doesn't generate flag preamble/postamble if adjoining instructions > > don't use them. > Yes, this thing will (hopefully) end up being a retargetable resourceable > translation engine ^_^ A recompiler? I thought this was just an emulator. > > I'm not sure why you think the Z80 is such an atrocity. It's actulaly a > > fairly simple chip and even with your current design I don't see how it > > couldn't easily be adapted. > It didn't look to be easily decodeable by the methods I was going for =) You just have to look at the FD/DD/ED/CB instructions as separate sets of instructions, not as prefixes, and it looks much easier after that. > You have to admit, decoding it isn't quite as clean as say, mips... Easier, actually. Try something like an ARM or 68K disassembler. Those are heinous. -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 24 01:46:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA07606 for dynarec-outgoing; Tue, 24 Jul 2001 01:46:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B5D3A09.967E798E@austin.rr.com> Date: Tue, 24 Jul 2001 02:04:09 -0700 From: tarquin X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Runtime core generator update References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > recompiler, or...? What is this file used for? It seems like it's similar > > > to the script idea that Alex had eons ago. > > This is a script to emit a CPU interpreter core. The basic architecture it is > > working from is something like this: > > Gotcha - interesting. Sorta like a high level emulator compiler. ;-) More or less, I'm hoping to avoid the usual issues with an intermediate language by allowing it to be quite loosely defined, and see if I can't throw some of the techniques from the dragon book at the problem. > > The initial architecture is quite inefficient, as it focuses on being completely > > cycle accurate (to a point, I don't have it running the memory access per cycle > > that the real 6502 does yet) as opposed to fast. > > Then you've got bizarre crap where the crossing of a page boundary eats an > extra cycle, etc... ;-( The bizarre crap is already supported (had to be to pass the test suite I'm using). The main reason I left out the read/write per cycle thing was to try and avoid having it run like a complete dog for now. The C version compiled in release mode with VC++ ran at about 9MHz on my old machine. Debug mode one runs at about 12MHz now, but upgrading one's main CPU isn't the correct solution =) > > What about the bytes to inform the chip to use IX and IY instead of another > > register? > > They aren't "prefix" bytes - they're completely different instructions. > Well, except for the LD IX, xxxxh and LD IX, (xxxxh) instructions, but > they shouldn' be viewed as tied together with the other 16 bit loads. Ahh, that helps a bit. Looking at the intel opcode format listings gave me a couple ideas on how to deal with variable length opcodes as well > > Part of the problem is that I'm not sure how to specify variable > > length opcodes. The 6502 doesn't have any extension opcodes, and the > > addressing mode operands are all handled by the templates. > > That's because the 6502 is a braindead POS. ;-) Perhaps, but it's the first 8 bit chip I came into serious contact with =) > > of uop handler to uop handler. Ideally it would do some simplification > > and reduction to eliminate the registers that do not hold a value > > between instructions (AD and D in this example) > > You'd have to recompile code to do that. You can't do lazy flag > calculations and expect things to get faster. Everyone who has tried it > has failed miserably, as the overall time to do the setting/getting of > flags (and checking) outweighs just doing it optimally. Heh, I wasn't even looking for lazy flag evaluation as much as fixing the main loop, and cleaning the uop stuff up as much as possible given some environmental restrictions. The code generator is going to be "fun" when it comes to getting DWIM behavior out of the script. I'm not sure if it's better to offer a few different flavors of the addition operator, possibly something similar to the SHL_C operator I put in, or to try and make the code generator intelligent enough (either by coding or by special casing some idioms in the eventual target script) to reduce things like AD = E8Z16(A) AD += D AD += P_C P_NZ = NZ(ADL) P_V = ((ADL ^ D) & (ADL ^ A)) & 80h P_C = ADH A = ADL correctly, taking into account the target's flag behavior. Ideally the code generator would spit out something along the lines of ADC AL, DH for the previous bit of code, if it was specified that AD did not need to be avaliable to the outside world. With the ideal kind of uop elision, it would hopefully remove D from it as well, and code the source arg as a memory reference. For more structural change, the main loop of the C core looks like this: while (cycles) { (*ctx.upc++)(); cycles--; } and is why it's so %&*(@# slow. C lacks an indirect jump that can cross function boundaries, and I don't think the compiler is allowed to turn this into tail recursion. This loop was the main motivation behind generating the core at runtime, it will allow me to write the core in a portable language, but one that has the necessary semantics to produce good code with a simple compiler. > > > The recompiler that I wrote does this - takes into account flag contexts > > > and doesn't generate flag preamble/postamble if adjoining instructions > > > don't use them. > > Yes, this thing will (hopefully) end up being a retargetable resourceable > > translation engine ^_^ > > A recompiler? I thought this was just an emulator. I think big =P Also, I see a dynarec as generally being a structural transformation of an interpreter. It's essentially the same as the code thread caching the P4 uses for the instruction cache. Flag threading just happens to help a lot, and the fact that PC becomes implicit is nice as well. > > You have to admit, decoding it isn't quite as clean as say, mips... > > Easier, actually. Try something like an ARM or 68K disassembler. Those are > heinous. Heh, I meant to do it without using flat lookup tables. The smaller the tables the better the cache coherency. > -->Neil If any of my terminology seems odd, well, I got the dragon book and read through it after writing the original parser. (Though the grammar is a heavily edited version of the Roskind C grammar. It worked well after I pared it down to the essentials I was interested in.) On an off topic note, the memory corruption bug at work is still at large. Bit chop suggests that a particular delete call is what's bringing the symptoms out into the open, but it's nothing so simple as the deleted memory getting used after it was deleted. I rewrote operator delete for that class to use mmap directly for memory instead of malloc, and set freed ones to PROT_NONE to catch illegal uses... and turned up nothing. It didn't affect the crash either, it still hosed something with malloc. I need a journalling malloc with a time machine option ^_^ -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 24 09:02:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA08100 for dynarec-outgoing; Tue, 24 Jul 2001 09:01:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 24 Jul 01 12:18:03 -0400 Message-Id: <3.0.5.32.20010724090618.00864240@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 24 Jul 2001 09:06:18 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Runtime core generator update In-Reply-To: <3B5CF296.4C98C8DE@austin.rr.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Yeah, just don't do the Genesis. It has lots of cycle dependent stuff, and >> does weird things like reloading the sprite list midretrace. And if you >> get it wrong, you get nice, blinking/flickering sprites. ;-) > >Sounds like what bigfoot on the NES pulls =) two pane 8-way hardware assisted >scrolling with a nonmoving status bar in the middle, and 120 sprites onscreen at >once. Actually, cycle accuracy isn't that big of a deal in the Genesis. There are some games that need it (especially on line 224, which generates a VBlank interrupt sometime before the middle of the line), but the vast majority can run with almost any cycle timings because they use the VBlank to synchronize themselves. I've also never seen flickering sprites. The sprite list can be modified during the active display period, but I think the Genesis VDP caches the sprite list for each line (I'm not sure of how the details work) which prevents flicker. I'd say as far as timing accuracy goes, the Genesis is no big deal :) I don't know about the SNES, though... I think it's more picky about timing. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 24 12:49:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA08286 for dynarec-outgoing; Tue, 24 Jul 2001 12:48:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 24 Jul 2001 13:22:29 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Runtime core generator update In-Reply-To: <3B5D3A09.967E798E@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Gotcha - interesting. Sorta like a high level emulator compiler. ;-) > More or less, I'm hoping to avoid the usual issues with an > intermediate language by allowing it to be quite loosely defined, and > see if I can't throw some of the techniques from the dragon book at > the problem. I don't see how you can with something that's a general purpose emulator. A recompiler, sure, but a runtime emulator (not recompiled) you won't be able to shortcut things on an instruction by instruction basis and actually have it speed up. Been there, done that. > > Then you've got bizarre crap where the crossing of a page boundary eats an > > extra cycle, etc... ;-( > The bizarre crap is already supported (had to be to pass the test > suite I'm using). The main reason I left out the read/write per cycle > thing was to try and avoid having it run like a complete dog for now. > The C version compiled in release mode with VC++ ran at about 9MHz on > my old machine. Ouch! How fast of a machine is this? Can you send me an example of the kind of output it generated? FWIW, make6502 (my ASM core) runs at about 20Mhz on a Pentium 60 and around 300Mhz on my 1Ghz machine. > Debug mode one runs at about 12MHz now, but upgrading > one's main CPU isn't the correct solution =) Unless you're a MAMEdevian. ;-) > > > length opcodes. The 6502 doesn't have any extension opcodes, and the > > > addressing mode operands are all handled by the templates. > > That's because the 6502 is a braindead POS. ;-) > Perhaps, but it's the first 8 bit chip I came into serious contact with =) I started out with the 8080, then the Z80, and so you can imagine that my views of the 6502 were quite a step backward. > > calculations and expect things to get faster. Everyone who has tried it > > has failed miserably, as the overall time to do the setting/getting of > > flags (and checking) outweighs just doing it optimally. > Heh, I wasn't even looking for lazy flag evaluation as much as fixing > the main loop, and cleaning the uop stuff up as much as possible given I can't quite tell, but from the sound of it you're trying to optimize the emulator itself. You're much better off doing macros. There are so many shortcuts you can do by hand optimizing flag operations that this sort of approach just won't be able to outdo. Theoretically it's still cool, though. ;-) > For more structural change, the main loop of the C core looks like this: > while (cycles) > { > (*ctx.upc++)(); > cycles--; > } > and is why it's so %&*(@# slow. C lacks an indirect jump that can > cross function boundaries, Can't you do a goto? FWIW, My first 6502 CPU core did like that above. But also, you may not want to be using calls at all. It has two problems: 1) The call itself is slower 2) The compiler can't optimize register-wise across funciton calls I've found that a bigassed switch/case statement compiles far better on any platform, and the difference is extremely noticeable on large register machines (I won't say RISC because it's such a nebulous term nowadays). > > > Yes, this thing will (hopefully) end up being a retargetable resourceable > > > translation engine ^_^ > > A recompiler? I thought this was just an emulator. > I think big =P > Also, I see a dynarec as generally being a structural transformation > of an interpreter. Yes and no. It's just laying out code sequences without the overhead of a fetch, but at the same time a recompiler can pull stunts that a regular emulator can't possibly pull, like a jump to a specific location (takes the load and jump indirection and the use of a register in an emulator). > It's essentially the same as the code thread > caching the P4 uses for the instruction cache. Flag threading just > happens to help a lot, and the fact that PC becomes implicit is nice > as well. And you don't have to use so many registers on the register starved x86. > > > You have to admit, decoding it isn't quite as clean as say, mips... > > Easier, actually. Try something like an ARM or 68K disassembler. Those are > > heinous. > Heh, I meant to do it without using flat lookup tables. The smaller the tables the > better the cache coherency. Uh... Did you mean disassembly or execution? I thought we were talking about disassembly! In that case, a Z80 disassembler is a zillion times easier than an ARM or other RISC-like CPU because you can do a 1:1 mapping of opcodes to disassemblies. But if you're talking abuot execution, the cache coherency isn't going to matter, because the indirect jumps are always going to be faster than subdecoding any given opcode. Already been there, too. ;-) Were you aoround when we discussed the script format for emitting a disassembler, opcode generators, and recompiler tables off of a single script? If not, I'll drag it out for you to look at, as it aims to solve what you're doing and then some. > If any of my terminology seems odd, well, I got the dragon book and > read through it after writing the original parser. (Though the grammar > is a heavily edited version of the Roskind C grammar. It worked well > after I pared it down to the essentials I was interested in.) Language work is my second favorite computer topic. ;-) > On an off topic note, the memory corruption bug at work is still at > large. Bit chop suggests that a particular delete call is what's > bringing the symptoms out into the open, but it's nothing so simple as > the deleted memory getting used after it was deleted. I rewrote > operator delete for that class to use mmap directly for memory instead > of malloc, and set freed ones to PROT_NONE to catch illegal uses... > and turned up nothing. It didn't affect the crash either, it still > hosed something with malloc. I need a journalling malloc with a time > machine option ^_^ I think you need a "gofu" option on your debugger (Go 'til Fucked Up). ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 24 18:50:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA08573 for dynarec-outgoing; Tue, 24 Jul 2001 18:50:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B5E29F8.3F3B6A22@austin.rr.com> Date: Tue, 24 Jul 2001 19:07:52 -0700 From: tarquin X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Runtime core generator update References: <3.0.5.32.20010724090618.00864240@mailandnews.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > interrupt sometime before the middle of the line), but the vast majority > can run with almost any cycle timings because they use the VBlank to > synchronize themselves. The newer the hardware, the more forgiving the software has to be about timing ^_^ > I'd say as far as timing accuracy goes, the Genesis is no big deal :) I > don't know about the SNES, though... I think it's more picky about timing. Well, for one the CPU clock speed is determined partly by what bank it's running in (658c16 uses 24 bit addressing), there's FastROM and SlowROM, one running at 3.5ish MHz, the other at about 2.7ish MHz. It also has a custom sound processor that sort of needs to stay in sync to run intelligently... Then there's HDMA, it can be configured to dump a new set of PPU registers every scanline. Sometimes I love nintendo... > Bart -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 24 19:49:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA08621 for dynarec-outgoing; Tue, 24 Jul 2001 19:49:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B5E376B.A38C376C@austin.rr.com> Date: Tue, 24 Jul 2001 20:05:15 -0700 From: tarquin X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Runtime core generator update References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > More or less, I'm hoping to avoid the usual issues with an > > intermediate language by allowing it to be quite loosely defined, and > > see if I can't throw some of the techniques from the dragon book at > > the problem. > > I don't see how you can with something that's a general purpose > emulator. A recompiler, sure, but a runtime emulator (not recompiled) you > won't be able to shortcut things on an instruction by instruction basis > and actually have it speed up. Been there, done that. Well, with this thing I'm first hoping to come on par with a regular asm core, while still retaining a semi-portable input file. It isn't meant to flat out destroy a well-coded interpretive core, it's meant to offer an alternative form of implementing one. C lacks the semantics to efficiently emulate a CPU, and the various compiler backends aren't allowed to make some of the decisions a CPU core would allow them to due to ANSI semantics. I'm trying to improve on the semi-high-level-language side of things by providing operators that DO have the proper semantics, coupled with a code generator that knows what it has to handle. > > The bizarre crap is already supported (had to be to pass the test > > suite I'm using). The main reason I left out the read/write per cycle > > thing was to try and avoid having it run like a complete dog for now. > > The C version compiled in release mode with VC++ ran at about 9MHz on > > my old machine. > > Ouch! How fast of a machine is this? Can you send me an example of the > kind of output it generated? FWIW, make6502 (my ASM core) runs at about > 20Mhz on a Pentium 60 and around 300Mhz on my 1Ghz machine. That 9MHz figure comes from a dual PII 300. It was the C core, not a generated one, and it is slow for the following reasons: It makes about 4-5 function calls per instruction on average. It's making a function call to traverse the memory map on most accesses. Some of those function calls chain down about 4 levels due to the semantics of C. The generator will avoid some of those problems whenever possible, like so: It will have a better idea of what the output should be, so it can coalesce some of the trickier parts down to a single jump per cycle per instruction. It will be able to inline the memory map search into the functions that need it. This is part of #1, it will know that it doesn't need a real stack at that point, and just jump back and forth between uops instead of making redundant calls and rets. > > Debug mode one runs at about 12MHz now, but upgrading > > one's main CPU isn't the correct solution =) > > Unless you're a MAMEdevian. ;-) If I get this thing right, it should be relatively easy to drop into mame, figure it'll be able to outdo a number of the CPU cores in it, and the scripts are more flexible than shared objects when it comes to loading. > > Heh, I wasn't even looking for lazy flag evaluation as much as fixing > > the main loop, and cleaning the uop stuff up as much as possible given > > I can't quite tell, but from the sound of it you're trying to optimize the > emulator itself. You're much better off doing macros. There are so many > shortcuts you can do by hand optimizing flag operations that this sort of > approach just won't be able to outdo. Theoretically it's still cool, > though. ;-) Well, one way to look at this thing is as a really powerful macro language =) This thing is really just deferring assembly/compilation for the core to run time. The rest of the emulator will call gen_core(filename), that will return a struct of function pointers, rest of the emulator just makes calls via those pointers. As far as it's concerned it might as well be talking to any of the currently avaliable cores, but instead of having it linked in, it will be compiled during the initialization. For a single system emulator this won't make much of a difference, but one that supports a number of systems with slightly varying requirements, especially for a number of similar CPU's (6507 on the atari, the special 6502 in the NES, plain vanilla 6502 in asteroids...) it should be a win: one script, several options to tweak the generated core. For those three the ones that come to mind are keep the full cycle-perfect timing in for the atari, drop the timing resolution to one instruction and ignore decimal mode for the nes, and go with instruction timing with decimal mode for 'roids. > > For more structural change, the main loop of the C core looks like this: > > while (cycles) > > { > > (*ctx.upc++)(); > > cycles--; > > } > > and is why it's so %&*(@# slow. C lacks an indirect jump that can > > cross function boundaries, > > Can't you do a goto? FWIW, My first 6502 CPU core did like that above. goto cannot be used to hop between functions. Was your first 6502 core dealing with things on a single cycle basis? that (*ctx.upc++)() line is getting executed once per cycle per instruction. > But also, you may not want to be using calls at all. It has two problems: > > 1) The call itself is slower > 2) The compiler can't optimize register-wise across funciton calls > > I've found that a bigassed switch/case statement compiles far better on > any platform, and the difference is extremely noticeable on large register > machines (I won't say RISC because it's such a nebulous term nowadays). This is why I came up with the idea for generating the entire core at runtime. It won't have to use calls and it will be able to do all the register voodoo it wants to. I'm not fond of the huge switch/case statement, it leads to icky-ness ^_^ > > I think big =P > > Also, I see a dynarec as generally being a structural transformation > > of an interpreter. > > Yes and no. It's just laying out code sequences without the overhead of a > fetch, but at the same time a recompiler can pull stunts that a regular > emulator can't possibly pull, like a jump to a specific location (takes > the load and jump indirection and the use of a register in an emulator). That's just it, the reason the regular emulator can't pull that is because the PC is not an implicit value in an interpreter. When recompiling the extra steps to fetch bytes from the code stream are effectively precalculated and cached. I think I know how to coerce a code generator into doing stuff like that if allowed to. > > It's essentially the same as the code thread > > caching the P4 uses for the instruction cache. Flag threading just > > happens to help a lot, and the fact that PC becomes implicit is nice > > as well. > > And you don't have to use so many registers on the register starved x86. Yeah =) > Uh... Did you mean disassembly or execution? I thought we were talking > about disassembly! In that case, a Z80 disassembler is a zillion times > easier than an ARM or other RISC-like CPU because you can do a 1:1 mapping > of opcodes to disassemblies. > > But if you're talking abuot execution, the cache coherency isn't going to > matter, because the indirect jumps are always going to be faster than > subdecoding any given opcode. Already been there, too. ;-) Wouldn't that depend a bit on the subdecoding? Flat tables don't work well with a 32 bit wide instruction, at least on 32 bit machines ^_^ > Were you aoround when we discussed the script format for emitting a > disassembler, opcode generators, and recompiler tables off of a single > script? If not, I'll drag it out for you to look at, as it aims to solve > what you're doing and then some. I probably still have all that stuff lying around on the other drive, linux doesn't get along well with my network card right now. 68K.def from the 68k dynarec project follow it? Comparing the two formats could be interesting, I didn't see anything for describing CPU behavior past flags in and flags out. > > If any of my terminology seems odd, well, I got the dragon book and > > read through it after writing the original parser. (Though the grammar > > Language work is my second favorite computer topic. ;-) I just have an unhealthy fascination with self-modifying/self-generating code =) > > and turned up nothing. It didn't affect the crash either, it still > > hosed something with malloc. I need a journalling malloc with a time > > machine option ^_^ > > I think you need a "gofu" option on your debugger (Go 'til Fucked Up). ;-) It does that rather well, it just doesn't agree with me about the definition of Fucked Up =P > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Duffman : "Duff beer is made from fresh mountain...." > Synthcom Systems, Inc. Contestant: "Goat!" > ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 24 22:12:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA08739 for dynarec-outgoing; Tue, 24 Jul 2001 22:11:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 24 Jul 2001 22:46:18 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Runtime core generator update In-Reply-To: <3B5E376B.A38C376C@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I don't see how you can with something that's a general purpose > > emulator. A recompiler, sure, but a runtime emulator (not recompiled) you > > won't be able to shortcut things on an instruction by instruction basis > > and actually have it speed up. Been there, done that. > Well, with this thing I'm first hoping to come on par with a regular > asm core, You've got a bit job ahead of you. I've pulled all kinds of shortcut stunts in make6502. So what other "regular asm core" are you referring to? I challenge you to come even close to what make6502 can do. ;-) > while still retaining a semi-portable input file. I see. So your target output may be assembly OR C depending upon what back end you want to plug in? > It isn't > meant to flat out destroy a well-coded interpretive core, it's meant > to offer an alternative form of implementing one. Nod. > C lacks the > semantics to efficiently emulate a CPU, Amen, brother. It's funny how so little of an instruction emulation is the instruction itself and spends most of its time just doing flag stuff. > and the various compiler > backends aren't allowed to make some of the decisions a CPU core would > allow them to due to ANSI semantics. That's precisely the reason I flatly refuse to use compiler backends for processor emulation. Glad someone else came to the same conclusion that I did! > I'm trying to improve on the semi-high-level-language side of things > by providing operators that DO have the proper semantics, coupled with > a code generator that knows what it has to handle. I'm looking forward to seeing what you come up with. > > Ouch! How fast of a machine is this? Can you send me an example of the > > kind of output it generated? FWIW, make6502 (my ASM core) runs at about > > 20Mhz on a Pentium 60 and around 300Mhz on my 1Ghz machine. > That 9MHz figure comes from a dual PII 300. And of course, if it isn't multithreaded, the second processor doesn't even come into play. But that seems AWFULLY slow... Even my C core ran at 4Mhz on the Pentium 60 I designed it on. But I'm sure you have work to do. ;-) > It makes about 4-5 function calls per instruction on average. Ow! > It's making a function call to traverse the memory map on most accesses. Instead of inlining? That shouldn't be too bad. > Some of those function calls chain down about 4 levels due to the > semantics of C. Yeah, stack accesses will kill performance. > It will be able to inline the memory map search into the functions > that need it. Oh, I see, so for a Z80 example, something like: LD HL, (3c00h) Might become: mov bx, [ebp+3c00h] ? That's a neat idea. One I'm doing in the recompiler. However, consider also there are going to be multiple processors so you'd have to make sure the code is relocatable, and you'll also wind up using more cache. > > > one's main CPU isn't the correct solution =) > > Unless you're a MAMEdevian. ;-) > If I get this thing right, it should be relatively easy to drop into > mame, figure it'll be able to outdo a number of the CPU cores in it, > and the scripts are more flexible than shared objects when it comes to > loading. Just remember that MAME's biggest impedement is its CPU->memory interface. The glue is absolutely HORRID. But I'm still failing to understand what the overall advantage - especially in multi same-CPU environments. > on the atari, the special 6502 in the NES, plain vanilla 6502 in > asteroids...) it should be a win: one script, several options to tweak > the generated core. For those three the ones that come to mind are > keep the full cycle-perfect timing in for the atari, drop the timing > resolution to one instruction and ignore decimal mode for the nes, and > go with instruction timing with decimal mode for 'roids. 'Xcept the decimal mode stuff is miniscule in terms of impact to the emulator. It very seldom is used, and it's a simple two instruction test/jump and is dwarfed by the amount of other crap you have to do to emulate the instruction. You will probably get your best performance improvement in NES land, though it sounds like you'll have your hands full with bank switching. ;-) > > > and is why it's so %&*(@# slow. C lacks an indirect jump that can > > > cross function boundaries, > > Can't you do a goto? FWIW, My first 6502 CPU core did like that above. > goto cannot be used to hop between functions. Was your first 6502 core > dealing with things on a single cycle basis? that (*ctx.upc++)() line > is getting executed once per cycle per instruction. I'm not sure what you mean by "per cycle per instruction", but there were two calls for every one call. One to handle the instruction itself and the other to handle the addressing mode. > > I've found that a bigassed switch/case statement compiles far better on > > any platform, and the difference is extremely noticeable on large register > > machines (I won't say RISC because it's such a nebulous term nowadays). > This is why I came up with the idea for generating the entire core at > runtime. It won't have to use calls and it will be able to do all the > register voodoo it wants to. In my case of make6502, I'm just doing jumps. How can it be better than an indirect table jump for all instructions? > I'm not fond of the huge switch/case statement, it leads to icky-ness ^_^ Nor am I, but when speed is king, the switch/case is the way to go for C. I rather hate switch/case statements. Causes nothing but hard to debug problems usually. > > Yes and no. It's just laying out code sequences without the overhead of a > > fetch, but at the same time a recompiler can pull stunts that a regular > > emulator can't possibly pull, like a jump to a specific location (takes > > the load and jump indirection and the use of a register in an emulator). > That's just it, the reason the regular emulator can't pull that is > because the PC is not an implicit value in an interpreter. When > recompiling the extra steps to fetch bytes from the code stream are > effectively precalculated and cached. I think I know how to coerce a > code generator into doing stuff like that if allowed to. Okay, but you'll still have to calculate flags on a per instruction basis. You don't get the "instruction pairing" advantages since any sequence of instruction can be encountered. > > But if you're talking abuot execution, the cache coherency isn't going to > > matter, because the indirect jumps are always going to be faster than > > subdecoding any given opcode. Already been there, too. ;-) > Wouldn't that depend a bit on the subdecoding? Sure, but we were talking about 68K and ARM (well, THUMB is implied). > Flat tables don't work > well with a 32 bit wide instruction, at least on 32 bit machines ^_^ That's very true. And it'd fragment cache like crazy, but there aren't too many 32 bit CPUs out there that people really want to emulate just yet. > > script? If not, I'll drag it out for you to look at, as it aims to solve > > what you're doing and then some. > I probably still have all that stuff lying around on the other drive, > linux doesn't get along well with my network card right now. 68K.def > from the 68k dynarec project follow it? Yes. > Comparing the two formats could be interesting, I didn't see anything > for describing CPU behavior past flags in and flags out. That's correct. But don't underestimate the flags in/flags out. That's where most of your time will be spent. > > Language work is my second favorite computer topic. ;-) > I just have an unhealthy fascination with > self-modifying/self-generating code =) Yeah, me too. More people should do it. Well, maybe not. ;-) Not without proper licensing and training. In the right hands it's a wonderful tool, but in the wrong hands it's Linux. ;-) ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 24 22:13:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA08749 for dynarec-outgoing; Tue, 24 Jul 2001 22:13:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 24 Jul 2001 22:47:49 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Runtime core generator update In-Reply-To: <3B5E29F8.3F3B6A22@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > can run with almost any cycle timings because they use the VBlank to > > synchronize themselves. > The newer the hardware, the more forgiving the software has to be > about timing ^_^ The newer the hardware, the more forgiving the software *CAN* be about timing usually because it has built in timers and people are used to having throttling to slow their code down rather than running it to the hairy edge of the capability of the hardware. > > I'd say as far as timing accuracy goes, the Genesis is no big deal :) I > > don't know about the SNES, though... I think it's more picky about timing. > SlowROM, one running at 3.5ish MHz, the other at about 2.7ish MHz. It > also has a custom sound processor that sort of needs to stay in sync > to run intelligently... The Z80 timing in the Genesis is really tricky. If you don't get it just right, songs run too slow/too fast and sometimes will hang. Yuck. -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 24 22:41:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA08777 for dynarec-outgoing; Tue, 24 Jul 2001 22:41:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 25 Jul 01 01:56:49 -0400 Message-Id: <3.0.5.32.20010724224450.008698c0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 24 Jul 2001 22:44:50 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Runtime core generator update In-Reply-To: References: <3B5E376B.A38C376C@austin.rr.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Flat tables don't work >> well with a 32 bit wide instruction, at least on 32 bit machines ^_^ > >That's very true. And it'd fragment cache like crazy, but there aren't too >many 32 bit CPUs out there that people really want to emulate just yet. I'm interested in emulating the PowerPC, which happens to use 32-bit instructions. I plan on writing a C interpreter, with no emphasis on performance, and if I feel the project is worth it, I would have to implement a dynamic recompiler. I think the MMU is going to be one of the most difficult problems. It might be possible to ignore it if the system only sets it up a certain way, and doesn't really use it. Then I could just emulate the virtual address space it sets up, and I wouldn't have to worry about mapping it to a physical address. I'm not sure yet what to expect. Right now, I'm just writing a disassembler, and trying to figure out a way to get the ROMs for the system in question. I doubt I'm going to get access to MAMEDev's repository, though :( Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 25 00:35:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA08874 for dynarec-outgoing; Wed, 25 Jul 2001 00:35:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B5E7AD2.DBAE83EB@austin.rr.com> Date: Wed, 25 Jul 2001 00:52:50 -0700 From: tarquin X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Runtime core generator update References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > I don't see how you can with something that's a general purpose > > > emulator. A recompiler, sure, but a runtime emulator (not recompiled) you > > > won't be able to shortcut things on an instruction by instruction basis > > > and actually have it speed up. Been there, done that. > > Well, with this thing I'm first hoping to come on par with a regular > > asm core, > > You've got a bit job ahead of you. I've pulled all kinds of shortcut > stunts in make6502. So what other "regular asm core" are you referring to? > I challenge you to come even close to what make6502 can do. ;-) Hmm, only other regular asm core I can think of is the one that was sitting in my head a while back ^_^ On the upside, I think the hardest part about the code generation will be register allocation. If I can teach it that, the rest shouldn't be too difficult. Most of the non-flag-related expressions that showed up while I was writing the script should translate almost directly with no changes, and most of the flag related voodoo would collapse to either being implied by the surrounding instructions, or get dropped to a setcc in the extreme case (overflow) > > while still retaining a semi-portable input file. > > I see. So your target output may be assembly OR C depending upon what back > end you want to plug in? I suppose I could have it output C, but I was thinking of just pumping it straight into a code generator, and generating x86 or whatever I happened to be running on straight to memory. Once it's generating correctly for the x86, fixing any serious biases should pale in comparison. > > and the various compiler > > backends aren't allowed to make some of the decisions a CPU core would > > allow them to due to ANSI semantics. > > That's precisely the reason I flatly refuse to use compiler backends for > processor emulation. Glad someone else came to the same conclusion that I > did! This thing will *be* a compiler backend, but it will be one with a much friendlier ruleset when it comes to sneaky tricks... > > I'm trying to improve on the semi-high-level-language side of things > > by providing operators that DO have the proper semantics, coupled with > > a code generator that knows what it has to handle. > > I'm looking forward to seeing what you come up with. So am I, I'm just starting to wonder where I'm going to be finding the time for it =) > > That 9MHz figure comes from a dual PII 300. > > And of course, if it isn't multithreaded, the second processor doesn't > even come into play. But that seems AWFULLY slow... Even my C core ran at > 4Mhz on the Pentium 60 I designed it on. But I'm sure you have work to > do. ;-) Well, that core I wrote up in about 2 days, with cycle-exact timing control in mind more than efficiency. A typical instruction ended up being something like this: EOR $absolute -- previous instruction finds the point in the uop table to execute from with a decoder lut. (*ctx.upc++)() runs through the following functions: fetch_adl fetch_adh read eor store fetch (yes, 6 function calls, one instruction) most of those instructions are relatively simple, sequence looks like this: (ret indicates a boot back to the main loop) ctx.AD.l = ctx.curspace[ctx.PC.x++]; ret ctx.AD.h = ctx.curspace[ctx.PC.x++]; ret ctx.D = read8(ctx.readspace, ctx.AD.x); ret ctx.A ^= ctx.D; ctx.P &= ~MASK_NZ; ctx.P |= NZ_table[ctx.A]; ret write8(ctx.readspace, ctx.AD.x, ctx.D); ret ctx.opc = ctx.curspace[ctx.PC.x]; if (ctx.intpending) { ctx.upc = ctx.irq; ctx.intpending = 0; return; } if (ctx.nmipending) { ctx.upc = ctx.nmi; ctx.nmipending = 0; return; } ctx.PC.x++; ctx.upc = uopdecode[ctx.opc]; ret every place you see ret, it returned to the calling function, decremented the cycle counter, checked it, jumped back to the start of the loop if it wasn't zero, dereferenced ctx.upc, incremented it, and called the next function, repeat. Less than optimal, but if you asked for 5 cycles, you GOT 5 cycles. > > Some of those function calls chain down about 4 levels due to the > > semantics of C. > > Yeah, stack accesses will kill performance. The chaining happened because of some uops where I wanted to have two seperate ones to reduce the total number of functions, but initially got stuck at the one cycle per uop limit. Hence a few of the uop handlers have a (*ctx.upc++)() in them, which extends the call chain a bit. I don't know if the compiler was intelligent enough to tail recurse them or not. > > It will be able to inline the memory map search into the functions > > that need it. > > Oh, I see, so for a Z80 example, something like: > > LD HL, (3c00h) > > Might become: > > mov bx, [ebp+3c00h] > > ? That's a neat idea. One I'm doing in the recompiler. However, consider > also there are going to be multiple processors so you'd have to make sure > the code is relocatable, and you'll also wind up using more cache. I was thinking of either that, or inlining the region search if the list length was less than some nebulously defined integer N. It would make the functions larger, so testing would be needed to see how it really affects things. It might still be a good idea for jumps, as they're the only ones that search through the code space. Hmm, a number of these things might have good payoff value in a threaded interpreter. It'd probably double some of the code size, but keeping two versions of each instruction, one that produced flags/updated the current code space pointer, and one that didn't might pay off. Then again, the layer of indirection would probably really start to mask out performance gains. > > > > one's main CPU isn't the correct solution =) > > > Unless you're a MAMEdevian. ;-) > > If I get this thing right, it should be relatively easy to drop into > > mame, figure it'll be able to outdo a number of the CPU cores in it, > > and the scripts are more flexible than shared objects when it comes to > > loading. > > Just remember that MAME's biggest impedement is its CPU->memory > interface. The glue is absolutely HORRID. But I'm still failing to > understand what the overall advantage - especially in multi same-CPU > environments. I kept the syntax for memory access in the top half purposefully opaque, it's a simple enode of type 'M' or 'F', with a single enode argument that is the root of an addressing expression tree. It's up to the code generator to make the CPU core and the rest of the system nice and happy. I'm not entirely certain how exactly I'll get that interface rigged up, but it's definitely going to be a flexible one, and since this CPU script thing implies having a nice code generator lying around... rolling up memory access specialized for a specific system at initialization time won't be too far fetched =) A couple of different methods come to mind, depending on what OS support there is. Under *nix, where you generally have page-granular control via mmap, things may end up being a lot more direct than the usual software based remapping. Under 'doze, where mmaping is restricted to doing questionable things to the system at large in the lesser versions of the OS, or restricted to things like "NO PAGE ALIASING" in the newer ones > 'Xcept the decimal mode stuff is miniscule in terms of impact to the > emulator. It very seldom is used, and it's a simple two instruction > test/jump and is dwarfed by the amount of other crap you have to do to > emulate the instruction. Too true, but when you're generating all of the executeable code for the core at initialization time, there isn't much reason not to yank any unused bits out that you can. I'll have to look over things a bit more, but I think in the optimum case the biggest difference between the binary ADC and decimal ADC is that the latter needs to have an AAA shoved after the ADC in the x86 code. Situations like that make me wish the regular x86 had predication like the IA64 does, I still drool when I ponder the lovely (ab)uses for that stuff... =) > You will probably get your best performance improvement in NES land, > though it sounds like you'll have your hands full with bank switching. ;-) CPU space bankswitching on the nes is (thankfully) generally straightforward, and in almost every case the bank positions are static enough to be able to customize the core for it. The PPU space is a completely different can of worms, but then, that's why it gets 70-80% of the CPU time =) > > goto cannot be used to hop between functions. Was your first 6502 core > > dealing with things on a single cycle basis? that (*ctx.upc++)() line > > is getting executed once per cycle per instruction. > > I'm not sure what you mean by "per cycle per instruction", but there were > two calls for every one call. One to handle the instruction itself and the > other to handle the addressing mode. If an instruction took 6 cycles to run on the 6502 (including all the little details like taken branches that crossed a page and page-crossing indexing) then the C core made at least 6 function calls for it. > > This is why I came up with the idea for generating the entire core at > > runtime. It won't have to use calls and it will be able to do all the > > register voodoo it wants to. > > In my case of make6502, I'm just doing jumps. How can it be better than an > indirect table jump for all instructions? That's just it, in the generated code, it *will* just be jumps. The convoluted opcode format parsing and slicing is to make it easier to write the script, by not absolutely requiring a gigantic table specifying all the redundant operation and addressing mode matchups. Since it's only run once, at startup, and for this CPU, only 256 times, speed of processing is not an issue =) The basic problem one comes across in most C and assembly is that the easy to write (short) implementation of everything tends to be less efficient at runtime than larger unrolled or table-based implementations. The other advantage is that the syntax and semantics make translations from the microprocessor manuals much more direct, and thus less error prone. Thanks to the templates, I can know that if ADC $absolute passes all the tests, and SBC $zp passes all the tests, that ADC $zp, and SBC $absolute will both pass all the tests as well. > > I'm not fond of the huge switch/case statement, it leads to icky-ness ^_^ > > Nor am I, but when speed is king, the switch/case is the way to go for C. > I rather hate switch/case statements. Causes nothing but hard to debug > problems usually. One reason I moved to the script was to get away from tables I couldn't fit into one screen of text. Even the 8->16 opcode expansion table fits onto one screen, in a hex editor ^_^ > > > Yes and no. It's just laying out code sequences without the overhead of a > > > fetch, but at the same time a recompiler can pull stunts that a regular > > > emulator can't possibly pull, like a jump to a specific location (takes > > > the load and jump indirection and the use of a register in an emulator). > > That's just it, the reason the regular emulator can't pull that is > > because the PC is not an implicit value in an interpreter. When > > recompiling the extra steps to fetch bytes from the code stream are > > effectively precalculated and cached. I think I know how to coerce a > > code generator into doing stuff like that if allowed to. > > Okay, but you'll still have to calculate flags on a per instruction > basis. You don't get the "instruction pairing" advantages since any > sequence of instruction can be encountered. Correct, which limits the minimal handler for an opcode with both flags-in and flags-out to LAHF op SAHF (if I got L/SAHF backwards, it's just about 1AM, here =) The only feasible ways to improve on this is a threaded interpreter with access to flag-setting and non-flag-setting versions of each instruction, and binary translation. The former should be a relatively simple structural transformation of a basic interpreter (I think) and a basic translator can be rolled together from a threaded interpreter without too much fuss (I think). > > Flat tables don't work > > well with a 32 bit wide instruction, at least on 32 bit machines ^_^ > > That's very true. And it'd fragment cache like crazy, but there aren't too > many 32 bit CPUs out there that people really want to emulate just yet. This is one case where having a more in-depth knowledge of the opcode format can help, as a lot of those 32 bits tend to be taken up with things like immediate operands and register indexing. If only 8 bits of the instruction are actual opcode bits, things get a lot smaller real fast =) > > Comparing the two formats could be interesting, I didn't see anything > > for describing CPU behavior past flags in and flags out. > > That's correct. But don't underestimate the flags in/flags out. That's > where most of your time will be spent. Yeah, but given an operation description one can determine flags in/out. It's rather difficult to do the reverse =) > > > Language work is my second favorite computer topic. ;-) > > I just have an unhealthy fascination with > > self-modifying/self-generating code =) > > Yeah, me too. More people should do it. Well, maybe not. ;-) Not without > proper licensing and training. In the right hands it's a wonderful tool, > but in the wrong hands it's Linux. ;-) ;-) Heh, Linux doesn't have much self-modifying code, people consider it difficult to understand... though after having stared at malloc internals, I don't know how they can claim that ^_^ Off-topic, but there's something just *cool* about this: int gen_oplist(enode *t, va_list list) { symbol *s = va_arg(list, symbol *); symbol ****p = va_arg(list, symbol ****); symbol **f; ... Four star code baby! > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Duffman : "Duff beer is made from fresh mountain...." > Synthcom Systems, Inc. Contestant: "Goat!" > ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 26 18:51:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA00227 for dynarec-outgoing; Thu, 26 Jul 2001 18:51:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 26 Jul 2001 13:59:58 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Runtime core generator update In-Reply-To: <3B5E7AD2.DBAE83EB@austin.rr.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > You've got a bit job ahead of you. I've pulled all kinds of shortcut > > stunts in make6502. So what other "regular asm core" are you referring to? > > I challenge you to come even close to what make6502 can do. ;-) > Hmm, only other regular asm core I can think of is the one that was sitting in my > head a while back ^_^ Can I get a copy? ;-) > On the upside, I think the hardest part about the code generation will > be register allocation. If I can teach it that, the rest shouldn't be > too difficult. Hm.. at least for the 6502, register allocation shouldn't be a problem: AH=Flags AL=A BL=X CL=Y DL=SP You still have ESI/EDI/EBP to use as general purpose (ESI=normalized PC), so even on the register starved x86 you still can put everything in registers. But this doesn't make it "general purpose". > > I see. So your target output may be assembly OR C depending upon what back > > end you want to plug in? > I suppose I could have it output C, but I was thinking of just pumping > it straight into a code generator, and generating x86 or whatever I > happened to be running on straight to memory. Once it's generating > correctly for the x86, fixing any serious biases should pale in > comparison. Yeah. In fact, you probably could use the x86 emitter once we have it coded. That'll take a while. ;-( > > That's precisely the reason I flatly refuse to use compiler backends for > > processor emulation. Glad someone else came to the same conclusion that I > > did! > This thing will *be* a compiler backend, but it will be one with a > much friendlier ruleset when it comes to sneaky tricks... Yes - it'll be a *SNEAKY* compiler backend - not a typical high level language compiler backend (like for C). > > And of course, if it isn't multithreaded, the second processor doesn't > > even come into play. But that seems AWFULLY slow... Even my C core ran at > > 4Mhz on the Pentium 60 I designed it on. But I'm sure you have work to > > do. ;-) > Well, that core I wrote up in about 2 days, with cycle-exact timing > control in mind more than efficiency. A typical instruction ended up > being something like this: Wow... that's a bit on the overkill side. You could easily collapse a bunch of things like adding in the single cycle timings. Are you hoping that the back end will be able to optimize them together? > (yes, 6 function calls, one instruction) > most of those instructions are relatively simple, sequence looks like this: (ret > indicates a boot back to the main loop) > ctx.AD.l = ctx.curspace[ctx.PC.x++]; ret > ctx.AD.h = ctx.curspace[ctx.PC.x++]; ret Hope "ctx" wasn't a stack variable! BTW, Why check for interrupt/nmi pendings? Just tell it exec6502(n) cycles and create the NMI/INT outside. In other words, bring the loop OUTSIDE the emulator. Then you wouldn't have to check for interrupts/nmi's pending after every instruction. That slows things down massively. > > ? That's a neat idea. One I'm doing in the recompiler. However, consider > > also there are going to be multiple processors so you'd have to make sure > > the code is relocatable, and you'll also wind up using more cache. > I was thinking of either that, or inlining the region search if the > list length was less than some nebulously defined integer N. It would > make the functions larger, so testing would be needed to see how it > really affects things. It might still be a good idea for jumps, as > they're the only ones that search through the code space. You shouldn't have to have the code jumps zip through the handlers. You know where the code is already. > Hmm, a number of these things might have good payoff value in a > threaded interpreter. It'd probably double some of the code size, but > keeping two versions of each instruction, one that produced > flags/updated the current code space pointer, and one that didn't > might pay off. Then again, the layer of indirection would probably > really start to mask out performance gains. Yes, and you'd also be forced to syncrhonize the two which is yet even more overhead. Really, emulation is a fairly known science and many of the things that sound like good ideas have already been tried and really aren't good ideas for that. > nice and happy. I'm not entirely certain how exactly I'll get that > interface rigged up, but it's definitely going to be a flexible one, > and since this CPU script thing implies having a nice code generator > lying around... rolling up memory access specialized for a specific > system at initialization time won't be too far fetched =) Nope. I'm wondering, though, how much the inlining would actually help. I've had mixed feelings about it, as you need to consider the read/write handlers are in cache and the CPU optimizes those region scan loops predictably well. > A couple of different methods come to mind, depending on what OS > support there is. Under *nix, where you generally have page-granular > control via mmap, things may end up being a lot more direct than the > usual software based remapping. But isn't the smallest page 4K? I don't think that'd help you for 2K bank switching. > > emulator. It very seldom is used, and it's a simple two instruction > > test/jump and is dwarfed by the amount of other crap you have to do to > > emulate the instruction. > Too true, but when you're generating all of the executeable code for > the core at initialization time, there isn't much reason not to yank > any unused bits out that you can. Yup. Not only that, the dead code doesn't get cached if it doesn't get used, so you use cache better. > more, but I think in the optimum case the biggest difference between > the binary ADC and decimal ADC is that the latter needs to have an AAA > shoved after the ADC in the x86 code. Situations like that make me > wish the regular x86 had predication like the IA64 does, I still drool > when I ponder the lovely (ab)uses for that stuff... =) It's a bit more convoluted than that, as the decimal mode ADC stuff does some weird things when you do bizarro things like add non BCD values together, and believe it or not, games do rely on it! Especially NES games. > > You will probably get your best performance improvement in NES land, > > though it sounds like you'll have your hands full with bank switching. ;-) > CPU space bankswitching on the nes is (thankfully) generally > straightforward, and in almost every case the bank positions are > static enough to be able to customize the core for it. You'd only have to check for jumps to another page during JSR/RTS/JMP instructions so it's not like you'd have to go crazy. Oh, but you would have to worry about memory accesses to those regions. > > I'm not sure what you mean by "per cycle per instruction", but there were > > two calls for every one call. One to handle the instruction itself and the > > other to handle the addressing mode. > If an instruction took 6 cycles to run on the 6502 (including all the > little details like taken branches that crossed a page and > page-crossing indexing) then the C core made at least 6 function calls > for it. Yeah, I think I get it now. Now I understand why it took so much CPU horsepower. ;-) > > In my case of make6502, I'm just doing jumps. How can it be better than an > > indirect table jump for all instructions? > That's just it, in the generated code, it *will* just be jumps. I see. > The basic problem one comes across in most C and assembly is that the > easy to write (short) implementation of everything tends to be less > efficient at runtime than larger unrolled or table-based > implementations. Tell that to the millions of boneheads who think that C compilers do as good a job as assembly programmers! > The other advantage is that the syntax and semantics make translations > from the microprocessor manuals much more direct, and thus less error > prone. Thanks to the templates, I can know that if ADC $absolute > passes all the tests, and SBC $zp passes all the tests, that ADC $zp, > and SBC $absolute will both pass all the tests as well. Unless the processor has some weirdness, like in processing SBC (which the carry flag is inverted). How do you account for that? Is that in the higher level language, too? > The only feasible ways to improve on this is a threaded interpreter > with access to flag-setting and non-flag-setting versions of each > instruction, and binary translation. The former should be a relatively > simple structural transformation of a basic interpreter (I think) and > a basic translator can be rolled together from a threaded interpreter > without too much fuss (I think). You've doubled the size of your emulator core, plus you still have to check fro in/out and I can guarantee you that that overhead will take longer than just computing the flags in the first place. > > That's very true. And it'd fragment cache like crazy, but there aren't too > > many 32 bit CPUs out there that people really want to emulate just yet. > This is one case where having a more in-depth knowledge of the opcode > format can help, as a lot of those 32 bits tend to be taken up with > things like immediate operands and register indexing. If only 8 bits > of the instruction are actual opcode bits, things get a lot smaller > real fast =) True, but subdecoding is always slower than just using a bigassed table - at least with 16 bit CPUs. > > Yeah, me too. More people should do it. Well, maybe not. ;-) Not without > > proper licensing and training. In the right hands it's a wonderful tool, > > but in the wrong hands it's Linux. ;-) ;-) > Heh, Linux doesn't have much self-modifying code, people consider it > difficult to understand... though after having stared at malloc > internals, I don't know how they can claim that ^_^ I think you mean "Convoluted". ;-) > Off-topic, but there's something just *cool* about this: > int gen_oplist(enode *t, va_list list) > { > symbol *s = va_arg(list, symbol *); > symbol ****p = va_arg(list, symbol ****); > symbol **f; > ... That's just scary, man. I like this one. Know what it's called? switch (n & 3) { case 0: do {output(*m++); case 3: output(*m++); case 2: output(*m++); case 1: output(*m++) } while (--i); } Frightening, eh? Here's also another good one that I found while perusing some code in months prior: if ((var != 1) || (var != 0)) { // Can't figure out why I never get here, but .... } And yes, the comment is actually in the code like this. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 26 19:16:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA00265 for dynarec-outgoing; Thu, 26 Jul 2001 19:16:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 26 Jul 01 01:42:52 -0400 Message-Id: <3.0.5.32.20010725223047.00868e20@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 25 Jul 2001 22:30:47 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: DRMZ80 Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I took a tour of DRMZ80 today, to try to figure out how jumps into code blocks are handled, and I think I understand. But just to be sure: - DRMZ80 has a list of Z80 instruction definitions - When time comes to recompile, it constructs a linked list of opcode descriptors which contain pointers to their corresponding instruction definition, as well as the address of where they are located in the virtual address space - This is recompiled into X86 code, and another linked list of sHostOp structures is created, these contain the physical address of their instruction, which is used to fix up known jumps into the middle of other blocks Am I correct in thinking it goes something like this? That's a lot of linked lists :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 26 20:27:33 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA00342 for dynarec-outgoing; Thu, 26 Jul 2001 20:27:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 26 Jul 2001 20:43:27 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: DRMZ80 In-Reply-To: <3.0.5.32.20010725223047.00868e20@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > - DRMZ80 has a list of Z80 instruction definitions I believe this is what we call "covers". > - When time comes to recompile, it constructs a linked list of opcode > descriptors which contain pointers to their corresponding instruction > definition, as well as the address of where they are located in the virtual > address space Sorta - it's a linked list of source layer instructions within that block. Their opcodes are an index into the main map in the sZ80RegularOpTable structure. Those point to cover emitters. > - This is recompiled into X86 code, and another linked list of sHostOp > structures is created, these contain the physical address of their > instruction, which is used to fix up known jumps into the middle of other > blocks Yes. So you've got an sOp linked list of the target equivalent of the source layer linked list, too. Though, I think you've missed a couple of steps: * The target layer emits an sOp linked list. Jumps within the block jump to sOp structures that are later fixed up. * The target layer optimizes the sOp target linked list of instructions. Currently no optimization is done, but it was planned! * The target layer finds a place in memory for the block, fixes up virtual sOp pointers to real memory locations, copies the instructions into main memory, and plugs all PC entry points into the transmap. * The target layer deallocates the target layer linked list for that block * The source layer deallocates the source layer linked list for that block Execution continues, ad nauseum. Linked lists are done because it's easy to look back one instruction in a generic fashion rather than trying to look at opcodes in reverse (ambiguous!) > Am I correct in thinking it goes something like this? Yup! > That's a lot of linked lists :) Only two at a time are ever created. The source layer also passes a flag preamble/postamble hint to the target layer so the target would optionally emit x86 flag handling. Later on I was going to have the source layer do some optimization as well. Dunno yet... hadn't gotten that far, but I had proven the theories I wanted to prove. -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 26 20:58:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA00371 for dynarec-outgoing; Thu, 26 Jul 2001 20:58:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 27 Jul 01 00:14:41 -0400 Message-Id: <3.0.5.32.20010726210229.008629e0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 26 Jul 2001 21:02:29 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: DRMZ80 In-Reply-To: References: <3.0.5.32.20010725223047.00868e20@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yes. So you've got an sOp linked list of the target equivalent of the >source layer linked list, too. Though, I think you've missed a couple of >steps: > >* The target layer emits an sOp linked list. Jumps within the block jump >to sOp structures that are later fixed up. > >* The target layer optimizes the sOp target linked list of >instructions. Currently no optimization is done, but it was planned! > >* The target layer finds a place in memory for the block, fixes up virtual >sOp pointers to real memory locations, copies the instructions into main >memory, and plugs all PC entry points into the transmap. > >* The target layer deallocates the target layer linked list for that block > >* The source layer deallocates the source layer linked list for that block I saw some of that stuff being done, but I didn't take a very close look, I was mainly looking to see how inter-block jumps were done. I think I now have a better understanding of how the implementation works, which is cool. Some basic stuff I was wondering about has been explained. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 27 00:18:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA00531 for dynarec-outgoing; Fri, 27 Jul 2001 00:18:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <019901c1166e$8a188180$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: Runtime core generator update Date: Fri, 27 Jul 2001 08:34:15 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Easier, actually. Try something like an ARM or 68K disassembler. Those are > heinous. Oh yeah! Generically decoding ARM instructions is absolutely NOT nice. See my Tarmac report on the disassembly. (http://www.dynarec.com/~dave/) Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 27 00:32:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA00560 for dynarec-outgoing; Fri, 27 Jul 2001 00:31:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200107270747.JAA15863@pons.ac.upc.es> Subject: Re: DYNAREC: Runtime core generator update In-Reply-To: <019901c1166e$8a188180$b32bfea9@daves> "from David Sharp at Jul 27, 2001 08:34:15 am" To: dynarec@dynarec.com Date: Fri, 27 Jul 2001 09:47:47 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Easier, actually. Try something like an ARM or 68K disassembler. Those are > > heinous. > > Oh yeah! Generically decoding ARM instructions is absolutely NOT nice. See > my Tarmac report on the disassembly. (http://www.dynarec.com/~dave/) > You guys who know a lot about ARM (I just downloaded the datasheets a few days ago :) do you think that the GBA 16 Mhz ARM could emulate at full speed a Z80? I think it could even run a C Z80 core (if the core and the compilers are well implemented) but I'm not sure. Another more interesting would be a 68K emulator for ARM :)). Somethink like a Genesis emulator for the GBA ;). The sprite hardware from the GBA would help there a lot but the ARM I think is not enough powerful even for an ASM core. Perhaps with binary translation (dynamic will be hard because of the 'low' memory, static will be a pain to find the 'configurations' for each game). A SNES emulator would have the advantadge of the slow CPU it uses the SNES (I don't think it will be a problem for the ARM). THe problem will be the graphic hardware (I always consider sound as the last, optional feature in an emulator). I'm interested in the emulation aspects of using a tile/sprite hardware to emulate another tile/sprite engine (something like Stardust SNES for Saturn emulator). I think GBA will be an easier target for this kind of research than Saturn :P. The real question is how many time is spent in pattern graphic conversion (is needed) and in the translation in the commands from the emulated VDP to the target VDP. I think there is already a Nes emulator for GBA and perhaps a Z80 one (not sure) and I don't see (yet) any problem for a SMS/GG. SNES and Genesis (perhaps more easily a TG16/PCE) are most a dream that anything (but perhaps the only interesting application for static translation in the emuscene ;). Not that I will really do nothing but I'm a bit bored today and I like to think about this kind of things ;). > Cheers > Dave > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 27 00:43:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA00578 for dynarec-outgoing; Fri, 27 Jul 2001 00:43:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B611F76.149D4FCD@austin.rr.com> Date: Fri, 27 Jul 2001 00:59:50 -0700 From: tarquin X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Runtime core generator update References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Hmm, only other regular asm core I can think of is the one that was sitting in my > > head a while back ^_^ > > Can I get a copy? ;-) I think I got as far as three opcodes before I realized that some automation was needed. > You still have ESI/EDI/EBP to use as general purpose (ESI=normalized PC), > so even on the register starved x86 you still can put everything in > registers. But this doesn't make it "general purpose". The general purpose part is the catch. The other trick is that the current implementation sitting in my head has to be able to handle the cycle-perfect script, which adds a couple of extra register and access requirements. It also wants to be able to pull a trick or two with unused halves of registers when possible... > > I suppose I could have it output C, but I was thinking of just pumping > > it straight into a code generator, and generating x86 or whatever I > > happened to be running on straight to memory. Once it's generating > > correctly for the x86, fixing any serious biases should pale in > > comparison. > > Yeah. In fact, you probably could use the x86 emitter once we have it > coded. That'll take a while. ;-( I'm pretty much at the point of needing an x86 emitter, so I may have something interesting to contribute in a few days =P > > This thing will *be* a compiler backend, but it will be one with a > > much friendlier ruleset when it comes to sneaky tricks... > > Yes - it'll be a *SNEAKY* compiler backend - not a typical high level > language compiler backend (like for C). with the upside that it won't even have to deal with the generality of storage classes that C does, and probably won't even need to do proper CSE due to the language semantics. > Wow... that's a bit on the overkill side. You could easily collapse a > bunch of things like adding in the single cycle timings. Are you hoping > that the back end will be able to optimize them together? Yes, though I may have to indicate whether or not a register is externally visible. This was the reason for having both TICK and TICK_INSTR in the uop language, to allow the code generator to restructure the timing to be instruction-granular instead of cycle-granular. The current script interpreted literally *is* overkill, but I try to keep to a "perfect the accuracy first, performance second" design philosophy. If is far easier to strip precision from something than it is to add it later, *especially* if it's going to be a machine doing that. I wanted a definitive implementation that would work under the most strenuous situation I know of, that being the atari 2600. The C core and current script deviate from it slightly, in that they do not perform the memory read/write every cycle, and the really fun detail of RMW instructions where the cycles go read, write unmodified and execute, write modified. That in itself is a relatively easy transformation, however. I just had an idea for how to introduce optional bits into the script, like the NES's lack of decimal mode, and full read/write compatability, and it does it without altering the syntax of either the uop specifications or the amode templates ^_^ > > ctx.AD.l = ctx.curspace[ctx.PC.x++]; ret > > ctx.AD.h = ctx.curspace[ctx.PC.x++]; ret > > Hope "ctx" wasn't a stack variable! Nope, static global. > BTW, Why check for interrupt/nmi pendings? Just tell it exec6502(n) cycles > and create the NMI/INT outside. In other words, bring the loop OUTSIDE the > emulator. Then you wouldn't have to check for interrupts/nmi's pending > after every instruction. That slows things down massively. I couldn't really inline the loop into the handlers in C without turning them into a gigantic switch/case, and the check for the pendings has to do with the fact that the read/write handlers get called in the middle of the instruction. If the function they called to generate an IRQ or NMI triggered one instantly, it would generate incorrect results, as instructions would no longer be atomic with respect to the IRQ/NMI handlers. The other side of it is that the call/return overhead forced by C's semantics (damn you djikstra) were going to cause much more nastiness than the repeated NMI/IRQ checks, if only because they occurred about 5-7X more often. One cannot just let the core run wild w/o checking INT/NMI on all systems. Poking those checks out based on a generation option is not a very complex operation either, so it shouldn't be difficult to let that be a runtime option. > > > ? That's a neat idea. One I'm doing in the recompiler. However, consider > > > also there are going to be multiple processors so you'd have to make sure > > > the code is relocatable, and you'll also wind up using more cache. > > I was thinking of either that, or inlining the region search if the > > list length was less than some nebulously defined integer N. It would > > make the functions larger, so testing would be needed to see how it > > really affects things. It might still be a good idea for jumps, as > > they're the only ones that search through the code space. > > You shouldn't have to have the code jumps zip through the handlers. You > know where the code is already. To put it in make6502 terms, the jumps are the only instructions that will really need to rebase the current code space. In a fully-flexible system they also do NOT know exactly where the code is already, due to the vagaries of bankswitching. This is another situation where the dynamic generation side of things is nice, if a game that does not need bankswitching is loaded, the CPU core doesn't need to be able to do it. As the script stands at the moment, it will not be correct if code is allowed to transition between banks via normal instruction fetching, but in most cases that shouldn't happen too often... the exact details of informing the core about bankswitching haven't quite solidified in my head yet. > Yes, and you'd also be forced to syncrhonize the two which is yet even > more overhead. Really, emulation is a fairly known science and many of the > things that sound like good ideas have already been tried and really > aren't good ideas for that. What sort of synchronization do you mean? The setup I had in mind was a typical threaded interpreter, with a large array of function pointers. The uninitialized value would be a pointer to the instruction decode function, saving a check to see if the target had been decoded yet. It would still use less instruction cache than a full dynamic translator, but it would not achieve the same locality of reference. Most of the things that seem like good ideas may have been tried, but they haven't necessarily been tried in every concievable combination... some of the stuff bouncing around in my head is the coder equivalent of pasting an evil grin on your face, emitting a good maniacal cackle, and mixing things with relatively known properties together to see what happens (aluminum, iron oxide, and magnesium come to mind as good examples) ^_^ > > lying around... rolling up memory access specialized for a specific > > system at initialization time won't be too far fetched =) > > Nope. I'm wondering, though, how much the inlining would actually help. > I've had mixed feelings about it, as you need to consider the read/write > handlers are in cache and the CPU optimizes those region scan loops > predictably well. Well, the system is passing the memory region structures into the CPU core. If it can be determined that those structures will not be changing during execution (possibly by placing a pointer to a function pointer into the structure to keep it constant) then it would be quite possible that an unrolled and hardcoded search could be faster than a general case loop comparison, especially if the region list is short. Teaching the code generator about target constructs such as CMOV could definately help. > > A couple of different methods come to mind, depending on what OS > > support there is. Under *nix, where you generally have page-granular > > control via mmap, things may end up being a lot more direct than the > > usual software based remapping. > > But isn't the smallest page 4K? I don't think that'd help you for 2K bank > switching. Well, I kind of cheated on the NES. The base 2K was mirrored 4 times, so I grabbed one page and aliased it once. I let the reads go straight through to memory, and placed a write handler on the 8K space that doubled up all writes with a write to addr ^ 0800h. To deal with the pathological possibility of a game really needing to have the ZP and stack mirrors be accurate, I made a small change to make6502 to double up the appropriate writes. Thus I maintained completely correct behavior, while speeding up the common case. > > Too true, but when you're generating all of the executeable code for > > the core at initialization time, there isn't much reason not to yank > > any unused bits out that you can. > > Yup. Not only that, the dead code doesn't get cached if it doesn't get > used, so you use cache better. On top of that, if the code is not even generated, chances are you will get adjacent uop handlers loaded into the cache as well, due to the cache line size. > > more, but I think in the optimum case the biggest difference between > > the binary ADC and decimal ADC is that the latter needs to have an AAA > > shoved after the ADC in the x86 code. Situations like that make me > > wish the regular x86 had predication like the IA64 does, I still drool > > when I ponder the lovely (ab)uses for that stuff... =) > > It's a bit more convoluted than that, as the decimal mode ADC stuff does > some weird things when you do bizarro things like add non BCD values > together, and believe it or not, games do rely on it! Especially NES > games. Well, the NES games *can't* rely on it, because the decimal flag has no effect ^_^ Just looked over the operation description of ADC/DAA on the x86, and ADC (decimal for the 6502) It looks like ADC/DAA will produce the proper result, with the exception of the overflow flag. If it can be determined easily from the CF, AF, and SF the DAA or ADC produce, it could be a handy little trick. At the least it removes a fair amount of yucky masking addition of magic numbers, etc, even if it does complicate overflow a bit. > > CPU space bankswitching on the nes is (thankfully) generally > > straightforward, and in almost every case the bank positions are > > static enough to be able to customize the core for it. > > You'd only have to check for jumps to another page during JSR/RTS/JMP > instructions so it's not like you'd have to go crazy. Oh, but you would > have to worry about memory accesses to those regions. Thankfully most of the time one only has to worry about write accesses, and you'd have to block those anyways, as the bankswitching regs are almost *always* mapped in on top of the roms. The basic architecture (which fueled the initial form of the script) I had in mind would cache the current base of execution, and it seemed like a useful enough trick that I invented a keyword to let the jump handlers update it as needed. It also checks at branches for now, because I'm pretty sure some of the stuff on the nes gets a little dodgy with branch targets. I don't have much of an idea about how to efficiently deal with the (admittedly pathological) case of quietly chaining execution across a bank boundary (though I wouldn't put this past some atari code). At the very least, that pathological case is one I'd try out in a moment if I was coding up something to figure out whether or not the code was running on the real thing ^_^ > > If an instruction took 6 cycles to run on the 6502 (including all the > > little details like taken branches that crossed a page and > > page-crossing indexing) then the C core made at least 6 function calls > > for it. > > Yeah, I think I get it now. Now I understand why it took so much CPU > horsepower. ;-) This is a case where djikstra was *wrong* ^_^ > Tell that to the millions of boneheads who think that C compilers do as > good a job as assembly programmers! For code that maps well to C's semantics, they might have a point. For stuff that C lacks the semantics for, you start to get into teaching the compiler DWIM style code-fu ^_^ > > The other advantage is that the syntax and semantics make translations > > from the microprocessor manuals much more direct, and thus less error > > prone. Thanks to the templates, I can know that if ADC $absolute > > passes all the tests, and SBC $zp passes all the tests, that ADC $zp, > > and SBC $absolute will both pass all the tests as well. > > Unless the processor has some weirdness, like in processing SBC (which the > carry flag is inverted). How do you account for that? Is that in the > higher level language, too? Yes, the uop spec for SBC explicitly describes the operation. I was thinking that brute-forcing a flags check for some opcodes at generator initialization time could be tweaked to detect same-behavior, opposite-logic flag relations like that. There's nothing really stopping the generator from doing this once, saving the output, and just checking to see if the script is newer than the cached flag deductions. > > The only feasible ways to improve on this is a threaded interpreter > > with access to flag-setting and non-flag-setting versions of each > > instruction, and binary translation. The former should be a relatively > > simple structural transformation of a basic interpreter (I think) and > > a basic translator can be rolled together from a threaded interpreter > > without too much fuss (I think). > > You've doubled the size of your emulator core, plus you still have to > check fro in/out and I can guarantee you that that overhead will take > longer than just computing the flags in the first place. Well, ideally the threaded interpreter is only going to check flags in/out as often as a dynarec would. The size increase could be manageable though, you might get some wins on the fact that not every instruction would have to be duplicated, and you can choose to only do this for the instructions where it really comes in handy. > > things like immediate operands and register indexing. If only 8 bits > > of the instruction are actual opcode bits, things get a lot smaller > > real fast =) > > True, but subdecoding is always slower than just using a bigassed > table - at least with 16 bit CPUs. True, though something still feels icky about hopping semi-randomly around a 64K table =/ Not to mention the fact that the code starts to get really, really big if you specialize instruction handlers out to specific registers (splitting the proverbial load r20, mem and load r21, mem for instance). > > Heh, Linux doesn't have much self-modifying code, people consider it > > difficult to understand... though after having stared at malloc > > internals, I don't know how they can claim that ^_^ > > I think you mean "Convoluted". ;-) Very. Most of the truly horrific abominations are restricted to GNU run software though, which the kernel is not. Some of the internals of GCC, ld, and *ESPECIALLY* glibc are particularly scary. That goes triple for glibc. > > Off-topic, but there's something just *cool* about this: > > int gen_oplist(enode *t, va_list list) > > { > > symbol *s = va_arg(list, symbol *); > > symbol ****p = va_arg(list, symbol ****); > > symbol **f; > > ... > > That's just scary, man. I like this one. Know what it's called? > > switch (n & 3) > { > case 0: do {output(*m++); > case 3: output(*m++); > case 2: output(*m++); > case 1: output(*m++) } > while (--i); > } Ahh, Duff's Device, though the original went with n&7, and 8 cases. > Frightening, eh? Here's also another good one that I found while perusing > some code in months prior: > > if ((var != 1) || (var != 0)) > { > // Can't figure out why I never get here, but .... > } > > And yes, the comment is actually in the code like this. ;-) Heh, that comment is evil ^_^ I got my hands on the real ANSI specs for C and C++ last night, so I'm starting to really grok the subtle syntactic details. Even sent a language lawyer class correction to the "How to write unmaintainable code" list maintainer correcting something in Obfuscation, Trick 20: Lawyer Code, where he mentioned c=a+++++b; as being nice and obfuscated... which is wrong. Obfuscated code compiles and runs, it may have undefined behavior as defined by the standard, but it still passes the basic syntax checks. That line doesn't, though I'll spare the list the long explanation (complete with ISO section references ^_^) Hmm, damnit, between working a bit late, scrounging food, writing another book-sized email, and getting lost on c2.com/cgi/wiki, it's bedtime and I haven't dumped any real code on the generator... damn... > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Duffman : "Duff beer is made from fresh mountain...." > Synthcom Systems, Inc. Contestant: "Goat!" > ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 27 00:48:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA00593 for dynarec-outgoing; Fri, 27 Jul 2001 00:48:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <01e401c11672$bac378e0$b32bfea9@daves> From: "David Sharp" To: References: <200107270747.JAA15863@pons.ac.upc.es> Subject: Re: DYNAREC: Runtime core generator update Date: Fri, 27 Jul 2001 09:04:14 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You guys who know a lot about ARM (I just downloaded the datasheets > a few days ago :) do you think that the GBA 16 Mhz ARM could emulate > at full speed a Z80? I think it could even run a C Z80 core (if the > core and the compilers are well implemented) but I'm not sure. There is already a Z80 emu for the GBA (http://zxadvance.emuunlim.com/) which used a C CPU emulator, and a 6502 emu written in ARM asm (http://www.nolag.com/code/gbdev/pocketnes/). I've spoken to both authors on the subject of ARM coding the CPU emulator and they were both interested in improving the speed though the NES emu is apparently ok. The author of the centipede emu (6502) for the GBA used Marat's core and wrote to me complaining that it was too slow and could I help. > Another more interesting would be a 68K emulator for ARM :)). Somethink > like a Genesis emulator for the GBA ;). The sprite hardware from the > GBA would help there a lot but the ARM I think is not enough powerful > even for an ASM core. Perhaps with binary translation (dynamic will > be hard because of the 'low' memory, static will be a pain to find > the 'configurations' for each game). > > A SNES emulator would have the advantadge of the slow CPU it uses > the SNES (I don't think it will be a problem for the ARM). THe > problem will be the graphic hardware (I always consider sound as > the last, optional feature in an emulator). I'm interested in > the emulation aspects of using a tile/sprite hardware to emulate > another tile/sprite engine (something like Stardust SNES for Saturn > emulator). I think GBA will be an easier target for this kind of > research than Saturn :P. The real question is how many time is > spent in pattern graphic conversion (is needed) and in the translation > in the commands from the emulated VDP to the target VDP. > > I think there is already a Nes emulator for GBA and perhaps a Z80 > one (not sure) and I don't see (yet) any problem for a SMS/GG. SNES > and Genesis (perhaps more easily a TG16/PCE) are most a dream that > anything (but perhaps the only interesting application for static > translation in the emuscene ;). A SNES emu is out of the question I'm afraid (a ~4MHz 16bit CPU emulated on a 16MHz ARM - touch and go) and anything with a 68k is apparently very slow on the ARM (something to do with wrong-endian killing the speed on every memory access IIRC). I would love to see an SMS/GG emu and it's a completely viable project - there's already an ARM coded (26 bit PC mode though I'm afraid) SMS emulator for RISC OS which goes like a rocket and another currently in development. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 29 14:00:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA06308 for dynarec-outgoing; Sun, 29 Jul 2001 14:00:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 29 Jul 2001 14:17:01 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Hehehehehehe Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com http://www.theregister.co.uk/content/3/20701.html -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 07:59:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA07375 for dynarec-outgoing; Mon, 30 Jul 2001 07:58:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: tarquin@austin.rr.com Date: Mon, 30 Jul 2001 08:16:22 -0700 (PDT) X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: DYNAREC: semi-OT, interesting compiler breakdown... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Just got the cpu script gen stuff compiling under linux (may CRLF burn in the pits of hell) and came across these interesting results for the "slowass C core": AMD 1.33 GHz tbird, 266 MHz frontside Linux 2.4.7, gcc -g ~29 MHz Linux 2.4.7, gcc -O3 -ffast-math -fomit-frame-pointer ~36-37 MHz Linux 2.4.7, gcc -O2 -ffast-math -fomit-frame-pointer ~35-38 MHz Win 2000, VC++ 6.0 Professional, Debug: ~12 MHz Don't have numbers for release mode in VC, but assuming it scaled like it did on the PII 300's, it would end up around 36 MHz give or take. The generator can't really generate anything yet, spent most of this weekend catching up on sleep, playing video games, and figuring out how to do a NAT friendly peer-to-peer system over the 'net. Think I'm going to stay in linux for a few more days here and try to abstract the obscenely system dependent portions (memory allocation and performance counter stuff mostly) PS: CRLF sucks. flex, bison, and make are questionable. spcxmms sucks. 'Recursive Make Considered Harmful' is cool. http://www.pcug.org.au/~millerp/rmch/recu-make-cons-harm.html It just about completely eliminates the main reasons I wrote my own makefile generator, or will have once I figure out how to translate the VC++ custom build commands I use for bison/flex into make syntax. John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 08:58:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA07429 for dynarec-outgoing; Mon, 30 Jul 2001 08:58:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 30 Jul 2001 09:15:36 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: semi-OT, interesting compiler breakdown... In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > AMD 1.33 GHz tbird, 266 MHz frontside > Linux 2.4.7, gcc -g > ~29 MHz > Linux 2.4.7, gcc -O3 -ffast-math -fomit-frame-pointer > ~36-37 MHz > Linux 2.4.7, gcc -O2 -ffast-math -fomit-frame-pointer > ~35-38 MHz > Win 2000, VC++ 6.0 Professional, Debug: > ~12 MHz Yeah, debug mode is slow, but you need to recompile it in release mode with pentium optimization and optimize for speed. I've always found MSVC to be way faster than gcc - as much as 50% in some cases. > It just about completely eliminates the main reasons I wrote my own > makefile generator, or will have once I figure out how to translate the > VC++ custom build commands I use for bison/flex into make syntax. It's not tough to do custom builds in VC++. I do it all the time! -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 12:52:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA07656 for dynarec-outgoing; Mon, 30 Jul 2001 12:52:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Long Time, No See From: "M.I.K.e" Message-ID: <00038a5566962e7f_mailit@mail.dynarec.com> Date: Mon, 30 Jul 2001 22:18:48 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi folks, sorry for the lack of comments from my side lately, but I've been quite busy, especially since my 6 year lod niece has been here for several weeks now and sees me as her personal entertainer... I'll try to catch up a bit on the old messages... I also want to congratulate Dave, Neil, and Victor for having finished university! You guys will be shocked that you have even less free time to work on projects when you start a real job... There are some hardware additions in my room, which might be interesting for some projects: I had to remove my MegaSTE from the guests room and was supposed to put it in the attic. Of course I tought "only over my dead body" and it now sits beside my on my desk. I haven't plugged it in yet, but I guess I'll do that before this weekend. So I now have a real 68K in my room, which might come in handy. I bought a Sega Dreamcast (they are quite cheap now, so I bought one and infected NG as well...), which is connected via a VGA-box to the same VGA/ keyboard/mouse-switch as my PC and my Acorn RiscPC. If everything goes well I'll fill the last slot of the switch with a BeBox on Friday. The BeBox isn't really fast (dual 133MHz PPC603e) but only about 1800 machines exist world wide ;-) So then I'll have a wide range of CPUs I can work on: * 16MHz 68000 in the MegaSTE * 200MHz StrongARM in the RiscPC * 550MHz Pentium III in the PC * 200MHz SH-4 in the Dreamcast (I think I'll try to get a coder's cable) * 2x133MHz PPC603e in the BeBox That's typical me, having 5 machines and all are incompatible! ;-) -- M.I.K.e Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 12:55:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA07673 for dynarec-outgoing; Mon, 30 Jul 2001 12:55:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 30 Jul 2001 13:12:36 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <00038a5566962e7f_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I bought a Sega Dreamcast (they are quite cheap now, so I bought one and > infected NG as well...), which is connected via a VGA-box to the same VGA/ Uh, I bought a DC about 2 weeks ago, too! Awesome gaming platform! -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 13:04:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA07691 for dynarec-outgoing; Mon, 30 Jul 2001 13:04:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002401c11936$366c9a60$c0497bd5@mshome.net> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Long Time, No See Date: Mon, 30 Jul 2001 21:24:42 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Uh, I bought a DC about 2 weeks ago, too! Awesome gaming platform! Isn't it just? I bought mine about 2 months ago, now I have 3 controllers, 1 lightgun and many games... I'm looking at the arcade stick too, I think I could have some fun with that! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 13:04:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA07700 for dynarec-outgoing; Mon, 30 Jul 2001 13:04:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002501c11936$37dddda0$c0497bd5@mshome.net> From: "Neil Griffiths" To: References: <00038a5566962e7f_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Long Time, No See Date: Mon, 30 Jul 2001 21:28:30 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > sorry for the lack of comments from my side lately, but I've been quite busy, > especially since my 6 year lod niece has been here for several weeks now and > sees me as her personal entertainer... Hey, that's fine, this list sees you as our personal entertainer too! ;) > I also want to congratulate Dave, Neil, and Victor for having finished > university! Thanks Mike, it's much appreciated! :) > You guys will be shocked that you have even less free time to work on > projects when you start a real job... Well, if my time in Eurocopter is anything to go by, that's not quite true - at least, not with my final year. If you talk about any other year, I'll totally agree with you! :) > So then I'll have a wide range of CPUs I can work on: > * 16MHz 68000 in the MegaSTE > * 200MHz StrongARM in the RiscPC > * 550MHz Pentium III in the PC > * 200MHz SH-4 in the Dreamcast (I think I'll try to get a coder's cable) > * 2x133MHz PPC603e in the BeBox > > That's typical me, having 5 machines and all are incompatible! ;-) That sounds like the German grammar stucture to me - lots of rules and all are incompatible! > Real software engineers work from 9 to 5, because that is the way the > job is described in the formal spec. Working late would feel like > using an undocumented external procedure. *LOL* Neil. PS I'm busy working on a newer, better 3D engine. Why? Because my Uni have given me the opportunity to improve my grade because of me being hindered through my first semester this year with a broken arm... And I have to get the whole engine written by August 20th! AARGH! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 13:35:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA07739 for dynarec-outgoing; Mon, 30 Jul 2001 13:35:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Long Time, No See From: "M.I.K.e" Message-ID: <00038a55f44f2c10_mailit@mail.dynarec.com> References: Date: Mon, 30 Jul 2001 22:58:25 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Uh, I bought a DC about 2 weeks ago, too! Awesome gaming platform! Too true! I bet Bart will agree ;-) With at least four DC owners on the list I can almost see it mutating into a DC game discussion... Speaking of games, which do you have? >-->Neil -- M.I.K.e You can't hold a man down without staying down with him. -- Booker T. Washington --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 13:35:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA07748 for dynarec-outgoing; Mon, 30 Jul 2001 13:35:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Long Time, No See From: "M.I.K.e" Message-ID: <00038a55f8a2f043_mailit@mail.dynarec.com> References: <002401c11936$366c9a60$c0497bd5@mshome.net> Date: Mon, 30 Jul 2001 22:59:38 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Isn't it just? I bought mine about 2 months ago, now I have 3 controllers, 1 >lightgun and many games... I'm looking at the arcade stick too, I think I >could have some fun with that! :) You should get an arcade stick for sure! I have one, apart from the lightgun, a backup DC, several controllers, VMUs, etc... >Neil. -- M.I.K.e "Those who do not do politics will be done in by politics." -- French Proverb --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 13:35:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA07755 for dynarec-outgoing; Mon, 30 Jul 2001 13:35:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Long Time, No See From: "M.I.K.e" Message-ID: <00038a560245e52d_mailit@mail.dynarec.com> References: <00038a5566962e7f_mailit@mail.dynarec.com> <002501c11936$37dddda0$c0497bd5@mshome.net> Date: Mon, 30 Jul 2001 23:02:20 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Hey, that's fine, this list sees you as our personal entertainer too! ;) And I thought that was your role! ;-) >> That's typical me, having 5 machines and all are incompatible! ;-) >That sounds like the German grammar stucture to me - lots of rules and all >are incompatible! Thanks, we just did that to make it harder for foreigners to understand ;-) >Neil. >PS I'm busy working on a newer, better 3D engine. Why? Because my Uni have >given me the opportunity to improve my grade because of me being hindered >through my first semester this year with a broken arm... And I have to get >the whole engine written by August 20th! AARGH! Erm, the date is a bit soon, but otherwise it's nice that they give you the opportunity. -- M.I.K.e The reason computer chips are so small is computers don't eat much. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 13:38:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA07766 for dynarec-outgoing; Mon, 30 Jul 2001 13:38:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 30 Jul 2001 13:55:07 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <00038a55f44f2c10_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Uh, I bought a DC about 2 weeks ago, too! Awesome gaming platform! > Too true! I bet Bart will agree ;-) > With at least four DC owners on the list I can almost see it mutating into a > DC game discussion... > Speaking of games, which do you have? Hydro Thunder, Crazy Taxi, Gauntlet Legends, Sonic Shuffle (sucks!), San Fransisco Rush 2049 on the way, and hopefully Crazy Taxi 2 if I win the auction. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 14:06:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA07798 for dynarec-outgoing; Mon, 30 Jul 2001 14:05:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 30 Jul 01 17:20:50 -0400 Message-Id: <3.0.5.32.20010730140809.0086c100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 30 Jul 2001 14:08:09 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <00038a55f44f2c10_mailit@mail.dynarec.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 10:58 PM 7/30/2001 +0200, you wrote: >>Uh, I bought a DC about 2 weeks ago, too! Awesome gaming platform! > >Too true! I bet Bart will agree ;-) Definitely! Although, sadly, I don't own one :( A friend of mine does, and I've spent a lot of time playing it. Perhaps I should pick one up one of these days. It's too bad the system went under. No console in its generation rivals it gameplay-wise right now. If it hadn't been pulled, I wonder what cool stuff we'd be seeing on the DC years from now. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 14:13:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA07811 for dynarec-outgoing; Mon, 30 Jul 2001 14:13:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 30 Jul 01 17:29:33 -0400 Message-Id: <3.0.5.32.20010730141653.0086f300@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 30 Jul 2001 14:16:53 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: References: <00038a55f44f2c10_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Hydro Thunder, Crazy Taxi, Gauntlet Legends, Sonic Shuffle (sucks!), San >Fransisco Rush 2049 on the way, and hopefully Crazy Taxi 2 if I win the >auction. ;-) Have you tried Jet Grind Radio? I had fun playing that game, though I didn't get a chance to play it for more than an hour. Daytona was cool, but I was disappointed because the sensation of speed seemed to be missing. The graphics were silky smooth, and there wasn't any slow down, but the cars seemed to be doing 30mph, max. I've gotten a chance to play Daytona 2 in the arcades... it's perhaps the fastest racing game I've ever seen. Oh, and I have to mention Dead or Alive 2... if just for the fantastic graphics. The game play isn't anything spectacular -- especially considering how easy it is to be cheap and beat your opponents by repeating certain special moves over and over again (they're impossible for your victim to break, sometimes.) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 14:53:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA07859 for dynarec-outgoing; Mon, 30 Jul 2001 14:53:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 30 Jul 2001 15:10:57 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Calling all ARM experts Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I have some stupid questions that perhaps someone on this list might be able to answer: * I'm considering using an Atmel AT91M40807 core, which has 136KB of internal 32 bit RAM and runs in thumb mode. I'm trying to work out timing on a per instruction basis. This processor can run up to 66Mhz, which means about 15 microseconds per clock. * Does this mean that, in thumb mode, the CPU will be able to execute roughly double the instructions that a normal 32 bit fetch in non-Thumb mode would entail? According to the reference manual, it says that there's more than one execution pipeline. Right now I'm trying to estimate how much CPU power is needed to mulate two 6800s at full speed and this is of course critical to me figuring it out. Thanks for any info you might have! -->Neil ------------------------------------------------------------------------------- Neil Bradley Duffman : "Duff beer is made from fresh mountain...." Synthcom Systems, Inc. Contestant: "Goat!" ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 16:51:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA07974 for dynarec-outgoing; Mon, 30 Jul 2001 16:51:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002801c11954$bf8f6e80$b32bfea9@daves> From: "David Sharp" To: References: Subject: Re: DYNAREC: Calling all ARM experts Date: Tue, 31 Jul 2001 01:07:11 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Would love to help but I don't know - I've seen these sort of questions normally answered very quickly and (seemingly) reliably on comp.sys.arm Cheers Dave ----- Original Message ----- From: "Neil Bradley" To: Sent: Monday, July 30, 2001 11:10 PM Subject: DYNAREC: Calling all ARM experts > I have some stupid questions that perhaps someone on this list might be > able to answer: > > * I'm considering using an Atmel AT91M40807 core, which has 136KB of > internal 32 bit RAM and runs in thumb mode. I'm trying to work out timing > on a per instruction basis. This processor can run up to 66Mhz, which > means about 15 microseconds per clock. > > * Does this mean that, in thumb mode, the CPU will be able to execute > roughly double the instructions that a normal 32 bit fetch in non-Thumb > mode would entail? According to the reference manual, it says that there's > more than one execution pipeline. > > Right now I'm trying to estimate how much CPU power is needed to mulate > two 6800s at full speed and this is of course critical to me figuring it > out. Thanks for any info you might have! > > -->Neil > > -------------------------------------------------------------------------- ----- > Neil Bradley Duffman : "Duff beer is made from fresh mountain...." > Synthcom Systems, Inc. Contestant: "Goat!" > ICQ #29402898 Homer : "MMmmm... you can really taste the goat.." > > > -------------------------------------------------------------------------- - > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 21:43:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA08220 for dynarec-outgoing; Mon, 30 Jul 2001 21:43:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Calling all ARM experts From: "M.I.K.e" Message-ID: <00038a5cb8fffe0e_mailit@mail.dynarec.com> References: Date: Tue, 31 Jul 2001 07:02:55 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I have some stupid questions that perhaps someone on this list might be >able to answer: I'm the expert for stupid answers ;-) >* I'm considering using an Atmel AT91M40807 core, which has 136KB of >internal 32 bit RAM and runs in thumb mode. I'm trying to work out timing >on a per instruction basis. This processor can run up to 66Mhz, which >means about 15 microseconds per clock. Erm, what exactly do you want? How many microseconds per instruction are needed? >* Does this mean that, in thumb mode, the CPU will be able to execute >roughly double the instructions that a normal 32 bit fetch in non-Thumb >mode would entail? According to the reference manual, it says that there's >more than one execution pipeline. It would make sense to fetch 32 bits and decode these into two ARM instructions, but what confuses me is that Thumb is said to be faster with 16 -bit RAM, also each Thumb instruction is decoded to an ARM equivalent and apart from the separate multiplier and barrel-shifter ARM architectures aren't really super-scalar. Maybe Amtel added another execution pipeline, but I'm not sure. On the other hand, Thumb was never designed for speed but for code density. So of the nicest features (conditional execution, optional flag setting, parallel barrel-shifting) simply don't work. Combined with the fact that you can only fit two operands into a Thumb instruction (as compared to ARM's three address type) it means that Thumb instructions are half the size but you need a lot of more of them. The numbers from Steve Furber's book are: * The Thumb code requires 70% of the space of the ARM code. * The Thumb code uses 40% more instructions than the ARM code. * With 32-bit memory, the ARM code is 40% faster than the Thumb code. * With 16-bit memory, the Thumb code is 45% faster than the ARM code. * Thumb code uses 30% less external memory power than ARM code. >Right now I'm trying to estimate how much CPU power is needed to emulate >two 6800s at full speed and this is of course critical to me figuring it >out. Thanks for any info you might have! Hmm, if you really want to use it for emulation then I'd use the normal ARM mode since Thumb is slower. >-->Neil -- M.I.K.e Happiness isn't something you experience; it's something you remember. -- Oscar Levant --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 21:43:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA08224 for dynarec-outgoing; Mon, 30 Jul 2001 21:43:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Long Time, No See From: "M.I.K.e" Message-ID: <00038a5cd20d7ed9_mailit@mail.dynarec.com> References: <3.0.5.32.20010730140809.0086c100@mailandnews.com> Date: Tue, 31 Jul 2001 07:09:55 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>Too true! I bet Bart will agree ;-) >Definitely! Although, sadly, I don't own one :( Oops, somehow I thought you had one... Maybe it was because you wrote a Genesis emulator and use the 68K of your Saturn for debugging, so a Dreamcast would be the next choice. >A friend of mine does, and I've spent a lot of time playing it. Perhaps I >should pick one up one of these days. If you don't mind buying an obsolete machine I'd recommend it. Japan has run out of stock some time ago and they are said to reimport European DCs. I think the DC will be much cheaper in the US in a few months, but I'd have to check when that is... >It's too bad the system went under. True, it was mainly due to the hyped design flaw they call PS2 and I'd like to dump in "The Third Place"... >No console in its generation rivals it gameplay-wise right now. Unlike the other "current" consoles its hardware is nicely balanced and you get cool games without any interlacing. >If it hadn't been pulled, I wonder what cool stuff >we'd be seeing on the DC years from now. Yeah :-( >Bart -- M.I.K.e "If you don't want your dog to have bad breath, do what I do: Pour a little Lavoris in the toilet." -- Jay Leno --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 22:12:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA08259 for dynarec-outgoing; Mon, 30 Jul 2001 22:12:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 31 Jul 01 01:28:58 -0400 Message-Id: <3.0.5.32.20010730221624.008701b0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 30 Jul 2001 22:16:24 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <00038a5cd20d7ed9_mailit@mail.dynarec.com> References: <3.0.5.32.20010730140809.0086c100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Oops, somehow I thought you had one... >Maybe it was because you wrote a Genesis emulator and use the 68K of your >Saturn for debugging, so a Dreamcast would be the next choice. Hehe, yeah, it was a reasonable assumption :) >If you don't mind buying an obsolete machine I'd recommend it. Japan has run >out of stock some time ago and they are said to reimport European DCs. >I think the DC will be much cheaper in the US in a few months, but I'd have >to check when that is... Obsolete systems are no problem -- if they were, I wouldn't be involved in emulation ;) I just hope I don't end up in the same situation as when I bought my used Saturn. The system smelled awful. Have you ever seen the episode of "Seinfeld" where Jerry lets a valet park his car, and when he gets it back, the car smells like B.O.? Well, my Saturn smells like cigarette smoke. It's horrible. It stunk up my room. I had to leave it outside for several hours to get most of the stench off. So now, you can only notice the smell when your nose comes within a foot of it. It was also extremely dirty. :P >True, it was mainly due to the hyped design flaw they call PS2 and I'd like >to dump in "The Third Place"... PS2... yuck. I'd rather side with Nintendo than with Sony! :) >>No console in its generation rivals it gameplay-wise right now. > >Unlike the other "current" consoles its hardware is nicely balanced and you >get cool games without any interlacing. Sega really got things right with the Saturn. Judging by the Sega Master System and Genesis, Sega has always been good at designing nice systems. The Saturn was a bit over-board, though. Ultimately what killed the Saturn was its price and lack of software. The DC had a good price, great hardware, and an excellent software library. Unfortunately, nothing could prepare Sega for the Sony hype machine. PS2 hype was getting ridiculous. Forget all the lies about the system specs themselves, but remember when people were raving about the boot-up screen? What was up with that? Who cares about the boot-up screen? I think it was just a bunch of lights dancing around in random directions. To my knowledge, Sega has always been very honest (certainly much more honest than its competitors) about its system specs. Nintendo probably ranks as the least honest, though. N64... comparable to an SGI supercomputer? Give me a break... Remember when they actually stuck an SGI Onyx machine under a table cloth and said it was actual Ultra64 hardware at E3? Hehe... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 23:43:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA08330 for dynarec-outgoing; Mon, 30 Jul 2001 23:43:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 31 Jul 2001 00:00:30 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Calling all ARM experts In-Reply-To: <00038a5cb8fffe0e_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >internal 32 bit RAM and runs in thumb mode. I'm trying to work out timing > >on a per instruction basis. This processor can run up to 66Mhz, which > >means about 15 microseconds per clock. Actually, I meant nanoseconds. > Erm, what exactly do you want? How many microseconds per instruction are > needed? 2 Microseconds per instruction minimum on the 6800 side of things. At 66Mhz, that means each "cycle" on the ARM is 15 nanoseconds giving me roughly a 133:1 ARM/6800 ratio. What I'm trying to find out is if a 1 cycle ARM instruction really is a one clock cycle instruction (In this case, 15 nanoseconds) or there's extra BS thrown in there. Obviously the length of execution of each ARM instruction will vary, but I'm wondering if this really means what is sounds like it means. > >Right now I'm trying to estimate how much CPU power is needed to emulate > >two 6800s at full speed and this is of course critical to me figuring it > >out. Thanks for any info you might have! > Hmm, if you really want to use it for emulation then I'd use the normal ARM > mode since Thumb is slower. Good point. I've got 256K of RAM to use, so it should be more than enough. Is ARM code fairly relocatable? That is, is it easy to get a compiler to output relative code? I need to be able to copy it from slow 16 bit flash to fast 32 bit RAM. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 23:53:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA08347 for dynarec-outgoing; Mon, 30 Jul 2001 23:53:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 31 Jul 2001 00:10:49 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <3.0.5.32.20010730221624.008701b0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >True, it was mainly due to the hyped design flaw they call PS2 and I'd like > >to dump in "The Third Place"... > PS2... yuck. I'd rather side with Nintendo than with Sony! :) Ouch! I wouldn't. Nintendo is evil and vile. They haven't had an original idea in years. At least Sony has the Playstation (not the II!). > PS2 hype was getting ridiculous. Forget all the lies about the system specs > themselves, but remember when people were raving about the boot-up screen? > What was up with that? Who cares about the boot-up screen? I think it was > just a bunch of lights dancing around in random directions. Reminds me of Apple and their iCommode iMac that doubles as a shitter. ;-) Why buy things that are designed for function because of their LOOKS?! That's insane! It's like buying insurance because you like the company's logo. It just goes to show you that the average consumer is a complete retard and extremely superficial. > To my knowledge, Sega has always been very honest (certainly much more > honest than its competitors) about its system specs. They've done other sneaky things. Remember "Blast processing"? They didn't give any technical explanation about it, and it was basically a ploy to get people to believe that the Genesis was "faster" than the SNES because of "BLAST Processing". Sega described BLAST processing as a technique to get sprites moving on screen faster than usual. And later, Sega claimed this was because it could ignore background elements while concentrating on pushing a sprite across the screen. Wasn't new - had been done in the Amiag for years prior. Also, sprites could be drawn on the screen while a different screen was being displayed. Hello? Page flipping? Not new, either. Then the "Megs" war. This cartridge had "128 megs". I spoke to many kids at the time who didn't even know what a "meg" was. Turns out it was megabits. BFD. > Nintendo probably > ranks as the least honest, though. N64... comparable to an SGI > supercomputer? Give me a break... Remember when they actually stuck an SGI > Onyx machine under a table cloth and said it was actual Ultra64 hardware at > E3? Hehe... I read a couple of things about the N64 in an embedded systems magazine: "The Playstation has one CPU and the N64 two, but in reality it always seems like it's reversed." "1 Gigabyte of N64 games and all the good ones can fit on a single floppy." ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 30 23:54:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA08357 for dynarec-outgoing; Mon, 30 Jul 2001 23:54:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 31 Jul 2001 00:11:27 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Dynarec moving Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Dynarec will be moving to Synthcom in a couple of weeks. Gotta start getting rid of some of my extra machines, and FreeBSD 4.3 looks like it supports dual homed hosts most excellently. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 00:00:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA08369 for dynarec-outgoing; Mon, 30 Jul 2001 23:59:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B665B99.C6EBEC82@austin.rr.com> Date: Tue, 31 Jul 2001 00:17:45 -0700 From: tarquin X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Long Time, No See References: <3.0.5.32.20010730140809.0086c100@mailandnews.com> <3.0.5.32.20010730221624.008701b0@mailandnews.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >True, it was mainly due to the hyped design flaw they call PS2 and I'd like > >to dump in "The Third Place"... > > PS2... yuck. I'd rather side with Nintendo than with Sony! :) Haven't had a whole lot of experience with a PS2, but the PSX had a lot going for it. It's software library beat the living %&*@(# out of the N64. The only "Holy crap that's cool" games that comes to mind for the N64 were Mario and Conkers, Zelda was cool, but it wasn't Conker's cool. PSX on the other hand had Konami. > ranks as the least honest, though. N64... comparable to an SGI > supercomputer? Give me a break... Remember when they actually stuck an SGI > Onyx machine under a table cloth and said it was actual Ultra64 hardware at > E3? Hehe... LOL, didn't know about that one. I haven't had much faith in Nintendo since the N64. I still think it was probably a mistake on my part to have bought an N64 instead of a PSX. Cartridges were a particularly bad idea, and I took a temporary leave of my senses and forgot how quickly PC hardware moved... Doom 64 took the cake though. One doesn't appreciate just how flat sprites can look until you get reminded of it the hard way =P > Bart -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 06:59:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA08929 for dynarec-outgoing; Tue, 31 Jul 2001 06:59:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004401c119cb$6f617d00$789b4ed4@menta.net> From: "Victor Moya del Barrio" To: References: <00038a5566962e7f_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Long Time, No See Date: Tue, 31 Jul 2001 16:16:42 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi folks, > > sorry for the lack of comments from my side lately, but I've been quite busy, > especially since my 6 year lod niece has been here for several weeks now and > sees me as her personal entertainer... > I'll try to catch up a bit on the old messages... > Nice to see you around here again :). I was a bad feeling when I woke up, started Outlook and I saw 10/20 new messages from the dynarec list :))). > I also want to congratulate Dave, Neil, and Victor for having finished > university! > You guys will be shocked that you have even less free time to work on > projects when you start a real job... > In fact I'm not going to start a real job in a long time (or so I hope :)). I will start studies for PhD in September and I will continue working with Dixie, that strange slow multi source multi target (theorically :) static translator. > So then I'll have a wide range of CPUs I can work on: > * 16MHz 68000 in the MegaSTE > * 200MHz StrongARM in the RiscPC > * 550MHz Pentium III in the PC > * 200MHz SH-4 in the Dreamcast (I think I'll try to get a coder's cable) > * 2x133MHz PPC603e in the BeBox > I'm hoping that by the next year my university will buy an Itanium server and I could get an account to 'play' a bit with it :))). My boss (BTW it seems that now works for Intel, Intel bought Alpha from Compaq) seems interested to do something around x86 or Itanium. In any case I have access to Mips, Alpha, HP, Sun and Power machines (if someone is so crazy to start something about this CPUs :)). > That's typical me, having 5 machines and all are incompatible! ;-) > I love to have just one PC :). > -- > M.I.K.e Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 08:31:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA09045 for dynarec-outgoing; Tue, 31 Jul 2001 08:31:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 31 Jul 2001 08:47:57 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Calling all ARM experts Message-ID: <20010731084757.B2829@hetfield.patsoffice.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from neil@synthcom.com on Mon, Jul 30, 2001 at 03:10:57PM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Right now I'm trying to estimate how much CPU power is needed to mulate > two 6800s at full speed and this is of course critical to me figuring it > out. Thanks for any info you might have! Could this be pinball related? Say System 11 or WPC boards? :-) Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 09:42:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA09102 for dynarec-outgoing; Tue, 31 Jul 2001 09:42:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 31 Jul 01 12:57:13 -0400 Message-Id: <3.0.5.32.20010731094441.0086edf0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 31 Jul 2001 09:44:41 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <3B665B99.C6EBEC82@austin.rr.com> References: <3.0.5.32.20010730140809.0086c100@mailandnews.com> <3.0.5.32.20010730221624.008701b0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Haven't had a whole lot of experience with a PS2, but the PSX had a lot going for >it. It's software library beat the living %&*@(# out of the N64. The only "Holy >crap that's cool" games that comes to mind for the N64 were Mario and Conkers, >Zelda was cool, but it wasn't Conker's cool. Yeah, PSX did have a lot going for it. Although some do credit it for ruining the game industry by putting more pressure on developers to release hip games quickly, forgetting about innovation and gameplay altogether. But I think this trend was already in full-sway... perhaps the PSX just made it more obvious. I remember first getting a PSX... it didn't work. So I had to return it and get another one. How's that for one's first experience with a system? :) I got it within the first month or 2 of the launch, too. I didn't have it for long, but I still fondly remember Jumping Flash (whatever happened to that franchise?), Battle Arena Toshinden, Wipeout, Destruction Derby (I have DD2 for the PC), and heck, even ESPN Extreme Games ;) Road Rash was great too, though it was available on Saturn and 3DO as well, and the PC (the version I have.) >LOL, didn't know about that one. An EGM editor pulled up the cloth and took a picture of it. Nintendo was caught red handed and didn't have a good explanation. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 09:59:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA09122 for dynarec-outgoing; Tue, 31 Jul 2001 09:59:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 31 Jul 01 13:14:33 -0400 Message-Id: <3.0.5.32.20010731100109.0086c100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 31 Jul 2001 10:01:09 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: References: <3.0.5.32.20010730221624.008701b0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Ouch! I wouldn't. Nintendo is evil and vile. They haven't had an original >idea in years. At least Sony has the Playstation (not the II!). The original PSX was cool, but the PSII is pretty awful. I believe it's technically superior to the Gamecube, but Gamecube will be getting the Sonic Team, soooo ;) Then again, PS2 gets Virtua Fighter 4. Damn. >Reminds me of Apple and their iCommode iMac that doubles as a >shitter. ;-) Why buy things that are designed for function because of >their LOOKS?! That's insane! It's like buying insurance because you like >the company's logo. Hehe, iMac. What a sham. Remember the thing's mouse? It was awful. The whole thing was dumb. Then there was the Mac Cube. Whatever happened to that? I think it sold very poorly. IIRC, it had a motion sensor for turning it on, so I guess you waved your hand over the spot... now if only there was a reason to turn a Mac on.... ;) >They've done other sneaky things. Remember "Blast processing"? They didn't >give any technical explanation about it, and it was basically a ploy to >get people to believe that the Genesis was "faster" than the SNES because >of "BLAST Processing". Sega described BLAST processing as a technique to Hehe, I remember BLAST Processing. It was a complete lie. I believe the concept was popularized by Sonic 2, which they claimed used BLAST Processing. In fact, the Sonic games don't really do anything out of the ordinary with the VDP. The Sonic games are perhaps some of the easiest Genesis games to get running. Most of their magic comes from clever programming, I suppose. As a platformer game, Sonic is quite complex because of its fairly sophisticated physics engine (compared to other platformer games.) Its speed and complexity was simply due to excellent 68K code. So yeah, Sega isn't immacculate, but at least they weren't hiding SGIs under tablecloths when showing off their latest systems ;) >get sprites moving on screen faster than usual. And later, Sega claimed >this was because it could ignore background elements while concentrating >on pushing a sprite across the screen. Wasn't new - had been done in the >Amiag for years prior. Also, sprites could be drawn on the screen while a >different screen was being displayed. Hello? Page flipping? Not new, >either. The concept of page flipping doesn't even apply to the Genesis. If they were trying to be truthful, then maybe they meant that the sprite list could be updated during VBlank and HBlank -- but that's the preffered method of doing it anyway. > >Then the "Megs" war. This cartridge had "128 megs". I spoke to many kids >at the time who didn't even know what a "meg" was. Turns out it was >megabits. BFD. What's up with megabits anyway? It's got to be a marketing thing... I think every console company has referred to their carts with megabits -- including Nintendo... even with the N64 and the GBA. >I read a couple of things about the N64 in an embedded systems magazine: > >"The Playstation has one CPU and the N64 two, but in reality it always >seems like it's reversed." LOL :) >"1 Gigabyte of N64 games and all the good ones can fit on a single >floppy." Hehe Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 14:32:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA09491 for dynarec-outgoing; Tue, 31 Jul 2001 14:31:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Calling all ARM experts From: "M.I.K.e" Message-ID: <00038a6a91b67164_mailit@mail.dynarec.com> References: Date: Tue, 31 Jul 2001 23:34:05 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Actually, I meant nanoseconds. I was wondering, but I replied around 6:30am during breakfast... >2 Microseconds per instruction minimum on the 6800 side of things. At >66Mhz, that means each "cycle" on the ARM is 15 nanoseconds giving me >roughly a 133:1 ARM/6800 ratio. What I'm trying to find out is if a 1 >cycle ARM instruction really is a one clock cycle instruction (In this >case, 15 nanoseconds) or there's extra BS thrown in there. Obviously the >length of execution of each ARM instruction will vary, but I'm wondering >if this really means what is sounds like it means. In "The ARM RISC Chip" (a rather old book) the following cycle categories are distinguished: * non-sequential (N): CPU is requesting a transfer at an address which is unrelated to the address used in the previous cycle * sequential (S): CPU reuqesting a transfer at an address which is either the same or one word greater than the address used in the previous cycle * internal (I): CPU is performing an internal operation and no memory transfer is required I guess I-cycles should be the fastes and N-cycles the slowest while S-cycles are in between. I left out the coprocessor cycles, since you probably won't need these. The instrructions need the following cycle counts: * Data processing (ALU): 1S; +1S for shift by register; +1S+1N if R15 is updated (note: constant shifts and rotates are exacuted by the parallel barrel- shifter and don't need additional cycles) * MSR, MRS (move status register): 1S * LDR (load register): 1S+1N+1I * STR (store register): 2N * B, BL (branch [and link]): 2S+1N * MUL, MLA (mult, mac): 1S+mI I didn't list all, but those are the most important ones. Due to changes in the multiplier and branch prediction the actual cycles needed on newer ARMs should be less. I hope this helps you a bit. >Good point. I've got 256K of RAM to use, so it should be more than enough. I guess so. >Is ARM code fairly relocatable? ARM doesn't have a specific absolute jump instruction, a move with R15 (the PC) as destination is used instead, but that's most often used as a procedure return (MOV PC, LR) rather than with an absolute address. The branch instruction is purely relative and with a 24-bit signed offset the branch range is large enough for most applications (+-32MB). Load/store have 12-bit signed offsets combined with one register. >That is, is it easy to get a compiler to output relative code? I know that the assembler of the ARM-SDT has a special directive for PIC, but I haven't found an according switch for the armcc in my documentation. I have to admit that my documentation is rather old though. >-->Neil -- M.I.K.e Schlattwhapper, n.: The window shade that allows itself to be pulled down, hesitates for a second, then snaps up in your face. -- Rich Hall, "Sniglets" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 14:32:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA09501 for dynarec-outgoing; Tue, 31 Jul 2001 14:31:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Long Time, No See From: "M.I.K.e" Message-ID: <00038a6ad084e4c7_mailit@mail.dynarec.com> References: <00038a5566962e7f_mailit@mail.dynarec.com> <004401c119cb$6f617d00$789b4ed4@menta.net> Date: Tue, 31 Jul 2001 23:51:39 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Nice to see you around here again :). Thanks! >I was a bad feeling when I woke up, >started Outlook and I saw 10/20 new messages from the dynarec list :))). Hehe ;-) >In fact I'm not going to start a real job in a long time (or so I hope :)). >I will start studies for PhD in September and I will continue working >with Dixie, that strange slow multi source multi target (theorically :) >static translator. So we might actually get an academic in our lines ;-) >I'm hoping that by the next year my university will buy an Itanium server >and I could get an account to 'play' a bit with it :))). Hey, that's unfair! ;-) >My boss (BTW it seems >that now works for Intel, Intel bought Alpha from Compaq) Which essentially means that Alpha is dead, since I don't think that Intel will produce Alphas. >seems interested >to do something around x86 or Itanium. In any case I have access to Mips, >Alpha, HP, Sun and Power machines (if someone is so crazy to start something >about this CPUs :)). MIPS and Alpha are nice. I don't like SPARC that much and PA-RISC is pretty weird, just like PowerPC. Of these architectures Alpha is practically dead, MIPS only used in embedded systems now, PA-RISC will be replaced by IA-64, which is also very likely for SPARC. This leaves us MIPS for embedded and PPC for higher performance systems. >Victor -- M.I.K.e Taxes are going up so fast, the government is likely to price itself out of the market. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 14:32:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA09505 for dynarec-outgoing; Tue, 31 Jul 2001 14:31:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Long Time, No See From: "M.I.K.e" Message-ID: <00038a6aea386a32_mailit@mail.dynarec.com> References: <3.0.5.32.20010730221624.008701b0@mailandnews.com> Date: Tue, 31 Jul 2001 23:58:50 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Obsolete systems are no problem -- if they were, I wouldn't be involved in >emulation ;) Hehe ;-) BTW, here is the link about the new DC prices in the US: http://www.segaweb.com/news/0701/068.html >I just hope I don't end up in the same situation as when I bought my used >Saturn. The system smelled awful. A new machine shouldn't be that bad. >Well, my Saturn smells like cigarette smoke. It's horrible. Yuk! I hate that! >PS2... yuck. I'd rather side with Nintendo than with Sony! :) Indeed. I don't like Big-N that much, but they do make good games, unlike Sony... >Sega really got things right with the Saturn. Judging by the Sega Master >System and Genesis, Sega has always been good at designing nice systems. >The Saturn was a bit over-board, though. Ultimately what killed the Saturn >was its price and lack of software. The major problem of the Saturn was that it is so hard to program. Sega learned from that error and the DC is actually said to be very easy to program, unlike the PS2, and I know a developer who told me horror stories about the PS2 and he's glad that he now works on an X-Box. >The DC had a good price, great hardware, and an excellent software library. >Unfortunately, nothing could prepare Sega for the Sony hype machine. Indeed, the PS2 hype basically killed it :-( >To my knowledge, Sega has always been very honest (certainly much more >honest than its competitors) about its system specs. Actually the system specs (at least the poly count) is about average and some claim that you can display even more polys without slowdowns. But for the PS2 they used flat shaded tirangles... >Nintendo probably >ranks as the least honest, though. N64... comparable to an SGI >supercomputer? Give me a break... Remember when they actually stuck an SGI >Onyx machine under a table cloth and said it was actual Ultra64 hardware at >E3? Hehe... Didn't know that... >Bart -- M.I.K.e Reality is bad enough, why should I tell the truth? -- Patrick Sky --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 14:32:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA09496 for dynarec-outgoing; Tue, 31 Jul 2001 14:31:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Long Time, No See From: "M.I.K.e" Message-ID: <00038a6ab851b4dc_mailit@mail.dynarec.com> References: <00038a55f44f2c10_mailit@mail.dynarec.com> <3.0.5.32.20010730141653.0086f300@mailandnews.com> Date: Tue, 31 Jul 2001 23:44:53 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>Hydro Thunder, I've heard of it. >>Crazy Taxi, I have CT2 ;-) >>Gauntlet Legends, Heard of it... >>Sonic Shuffle (sucks!), I heard about the same reactions so I didn't buy it. >Have you tried Jet Grind Radio? I had fun playing that game, though I >didn't get a chance to play it for more than an hour. In Europe it's called Jet Set Radio and it really has funky graphics with cell shading! >Daytona was cool, but I was disappointed because the sensation of speed >seemed to be missing. Seems to be quite fast for me, and my niece likes it ;-) Today I tried it with my new racing wheel and it's *totally* different than playing with the controller, not only because of the feeling but also because the controller is much too sensitive compared to the racing wheel. >Oh, and I have to mention Dead or Alive 2... if just for the fantastic >graphics. I still prefer Soul Calibur. Maybe I should have gotten the limited edition of DoA2, which seems to be much better. The games every DC owner should have are: * Shenmue (almost a real-life simulation) * Sonic Adventure 2 (if you want some nostalgia at high speed) * Ecco the Dolphin (hard, but the graphics are great!) * Soul Calibur (cool fighting game with extras, extras, extras, ...) * Grandia 2 or Skies of Arcadia if you like RPGs * Resident Evil: Code Veronica is a must if you don't hate a bit of splatter (I actually have the japanese Code Veronica Complete since the normal one doesn't work with VGA) I'm still waiting for: * Shenmue 2 * Headhunter * Virtua Tennis 2K2 >Bart -- M.I.K.e I am more bored than you could ever possibly be. Go back to work. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 14:57:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA09544 for dynarec-outgoing; Tue, 31 Jul 2001 14:57:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001501c11a0f$3b95f700$0100a8c0@mshome.net> From: "Neil Griffiths" To: References: <3.0.5.32.20010730221624.008701b0@mailandnews.com> <00038a6aea386a32_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Long Time, No See Date: Tue, 31 Jul 2001 23:21:18 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > >Well, my Saturn smells like cigarette smoke. It's horrible. > > Yuk! I hate that! Me too! My Dreamcast was 2nd hand too and the previous owner was definitely a smoker, but a little cleaning and now it doesn't smell and is actually white now... Well, white-ish... > Indeed. I don't like Big-N that much, but they do make good games, unlike > Sony... Sony make games? I just thought they published them! > >The Saturn was a bit over-board, though. Ultimately what killed the Saturn > >was its price and lack of software. > > The major problem of the Saturn was that it is so hard to program. Sega > learned from that error and the DC is actually said to be very easy to > program, unlike the PS2, and I know a developer who told me horror stories > about the PS2 and he's glad that he now works on an X-Box. Actually, I disagree with both of you, though both of your points are part of the reason. The major problem was that 3D games were becoming more and more popular and the Saturn had no 3D hardware. With this in mind, what the programmers achieved on the Saturn was quite amazing. I remember being impressed by the 3D effects on the Saturn when it first came out - then being more impressed when I found out this was done without any 3D accelerator. The PSX has a 3D accelerator, it just happens to run at speeds that even a ViRGE can out-perform. ;) > Indeed, the PS2 hype basically killed it :-( Yeah, that and the fact that Sega had no money, so selling their machines at a loss was a bit of a no-no... > >To my knowledge, Sega has always been very honest (certainly much more > >honest than its competitors) about its system specs. > > Actually the system specs (at least the poly count) is about average and some > claim that you can display even more polys without slowdowns. > But for the PS2 they used flat shaded tirangles... Which, amazingly, is what my 3D engine currently does. In 2 days, I've managed to write 50% of it! Unfortunately, it runs at a speed I'm quite ashamed of, but given this is my first realm into Windows graphics programming, I don't care! I'm using the SDL library and I have no clue of a fast way to draw a horizontal line using it other than drawing a pixel each time - no blitting to the screen for me! Heh - it doesn't even use double-buffering yet! :o If I have time, I may port it back to DOS - it's only the graphics routines that would need replacing. Then I could use all my optimisation knowledge... > >Nintendo probably > >ranks as the least honest, though. N64... comparable to an SGI > >supercomputer? Give me a break... Remember when they actually stuck an SGI > >Onyx machine under a table cloth and said it was actual Ultra64 hardware at > >E3? Hehe... > > Didn't know that... I didn't know that either, but it does make sense... Nintendo are hardly a company I trust for telling the truth, but they do have a knack for creating highly popular games. They just seem to have misplaced this knack for the N64! Neil. PS If anyone wants to go to Las Vegas in August, there's some sort of classic gaming festival... Aug 11-12. So there. http://www.cgexpo.com I just thought someone here may be interested. I am, but I can't get. Damn! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 15:39:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA09595 for dynarec-outgoing; Tue, 31 Jul 2001 15:39:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005501c11a14$fc5ff620$0100a8c0@mshome.net> From: "Neil Griffiths" To: Subject: DYNAREC: Mailing list archive Date: Wed, 1 Aug 2001 00:00:33 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, After losing the HD and not having a recent backup of my mail, I'm wondering if there's anyway that the mail archive can be sent to me? Is this possible, Neil? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 16:27:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA09679 for dynarec-outgoing; Tue, 31 Jul 2001 16:27:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006301c11a1b$c73282e0$0100a8c0@mshome.net> From: "Neil Griffiths" To: References: <005501c11a14$fc5ff620$0100a8c0@mshome.net> Subject: DYNAREC: It blits! Date: Wed, 1 Aug 2001 00:51:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Sorry. Completely unrelated to dynamic recompilation, but I'm damn chuffed that I've figured out how to blit to the screen, or to blit lines to the screen anyway. Would you say that a 700% speed increase in drawing polygons to the screen is noticable? ;) Actually, I think it's more than 700%, but I can only see that increase from my test of drawing 10 poly's to the screen. Okay, so at least I can draw quickly now... My problem now is optimising the matrix routines so that I can move through a 3D world quickly! Quake 3? Bah! :)) Neil. PS Actually, now I'm getting to grips with SDL, I suggest we use it for our Food Fight emulation. There is one reason for this - we can do the graphics code and it'll work on BeOS, Linux and Win32 machines with no more hassles, meaning that what one person sees, everyone else should see. So we can actually concentrate more on the CPU and not wonder about if we've got problems elsewhere in the code! Thoughts? SDL even works with Macs, but like we care about those... ;) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 17:06:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA09724 for dynarec-outgoing; Tue, 31 Jul 2001 17:06:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 31 Jul 01 20:22:18 -0400 Message-Id: <3.0.5.32.20010731170935.0086d9e0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 31 Jul 2001 17:09:35 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <00038a6ad084e4c7_mailit@mail.dynarec.com> References: <00038a5566962e7f_mailit@mail.dynarec.com> <004401c119cb$6f617d00$789b4ed4@menta.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Which essentially means that Alpha is dead, since I don't think that Intel >will produce Alphas. That's too bad :( I think Alpha had a lot of potential, had it been continued. I believe the trouble started when Compaq bought DEC and didn't know what to do with the Alpha. The only thing that was really weird about Alpha systems was the firmware. I bought a Multia (never got it to a usable state... I need a hard drive for it, and a SCSI hard disk with an external SCSI case aren't very cheap) a while back, and was able to play around with the firmware a bit. I don't really like the concept of it. >MIPS and Alpha are nice. I don't like SPARC that much and PA-RISC is pretty >weird, just like PowerPC. PowerPC is indeed very strange. I'm going to be emulating this processor, and it looks like it's going to be a nightmare. Though, as long as the system in question doesn't enable MMU address translation, or little endian mode, it shouldn't be all that bad. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 17:14:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA09738 for dynarec-outgoing; Tue, 31 Jul 2001 17:14:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 31 Jul 01 20:29:41 -0400 Message-Id: <3.0.5.32.20010731171655.00870220@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 31 Jul 2001 17:16:55 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <00038a6aea386a32_mailit@mail.dynarec.com> References: <3.0.5.32.20010730221624.008701b0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>Sega really got things right with the Saturn. Judging by the Sega Master >>System and Genesis, Sega has always been good at designing nice systems. >>The Saturn was a bit over-board, though. Ultimately what killed the Saturn >>was its price and lack of software. > >The major problem of the Saturn was that it is so hard to program. Sega >learned from that error and the DC is actually said to be very easy to >program, unlike the PS2, and I know a developer who told me horror stories >about the PS2 and he's glad that he now works on an X-Box. As tough as the Saturn is to write code for, I don't believe that's the main reason it died out. It just wasn't selling well enough. Its software library couldn't compare to Sony's, and that might have been because developers were having a tough time writing good games for it, but it was probably the high price that sealed its fate. It was something like $400-$500 at launch, compared to the PSX which was $300. Also, the Saturn had a surprise launch several months ahead of schedule (in order to surprise Sony), but that didn't help because there weren't as many launch titles as expected, and again, the price made people wait for the PSX. >>To my knowledge, Sega has always been very honest (certainly much more >>honest than its competitors) about its system specs. > >Actually the system specs (at least the poly count) is about average and some >claim that you can display even more polys without slowdowns. >But for the PS2 they used flat shaded tirangles... Some people claim the DC can render more polygons than the official specs say -- like around 12 million, but this is technically impossible. I think the figures come from what the video processor is internally capable of, but the CPU and bus cause the figure to drop down to about 3 million or so... which is what Sega quoted originally, instead of using misleading figures (like Sony did.) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 17:15:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA09751 for dynarec-outgoing; Tue, 31 Jul 2001 17:15:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007301c11a21$795a79a0$0100a8c0@mshome.net> From: "Neil Griffiths" To: References: <00038a5566962e7f_mailit@mail.dynarec.com> <004401c119cb$6f617d00$789b4ed4@menta.net> <3.0.5.32.20010731170935.0086d9e0@mailandnews.com> Subject: Re: DYNAREC: Long Time, No See Date: Wed, 1 Aug 2001 01:32:02 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > PowerPC is indeed very strange. I'm going to be emulating this processor, > and it looks like it's going to be a nightmare. Though, as long as the > system in question doesn't enable MMU address translation, or little endian > mode, it shouldn't be all that bad. May I ask a question? Why? Why emulate this processor? Is it for the challenge of emulating this processor which hasn't (AFAIK) been emulated before... or is it because you have sadistic tendancies? ;) No, seriously, I just ask because I'm wondering what the processor was used in... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 17:20:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA09765 for dynarec-outgoing; Tue, 31 Jul 2001 17:20:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 31 Jul 01 20:36:11 -0400 Message-Id: <3.0.5.32.20010731172340.00872b00@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 31 Jul 2001 17:23:40 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <00038a6ab851b4dc_mailit@mail.dynarec.com> References: <00038a55f44f2c10_mailit@mail.dynarec.com> <3.0.5.32.20010730141653.0086f300@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The games every DC owner should have are: >* Shenmue (almost a real-life simulation) Some people love it, others hate it because the realism gets boring. I don't have an opinion, since I haven't played it, but a friend of mine says he liked it a lot. >* Sonic Adventure 2 (if you want some nostalgia at high speed) Sonic games are a must ;) Forgot about that. My biggest complaint about the Sonic Adventure series is that it's too different from the original Sonic games. I think the 3D gameplay is fine, but I just don't like a lot of the new characters and the fact that it has too much plot involved. I mean, it's a Sonic game after all... Sonic wasn't supposed to have people (besides Dr. Robotnik), raising "Chaos" and all that junk :) >* Soul Calibur (cool fighting game with extras, extras, extras, ...) >* Grandia 2 or Skies of Arcadia if you like RPGs >* Resident Evil: Code Veronica is a must if you don't hate a bit of splatter > (I actually have the japanese Code Veronica Complete since the normal one >doesn't work with VGA) My friend has Code Veronica, and it works fine with his VGA adapter. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 17:55:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA09804 for dynarec-outgoing; Tue, 31 Jul 2001 17:55:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 31 Jul 01 21:12:06 -0400 Message-Id: <3.0.5.32.20010731175937.00876100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 31 Jul 2001 17:59:37 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <007301c11a21$795a79a0$0100a8c0@mshome.net> References: <00038a5566962e7f_mailit@mail.dynarec.com> <004401c119cb$6f617d00$789b4ed4@menta.net> <3.0.5.32.20010731170935.0086d9e0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >May I ask a question? Why? Why emulate this processor? Is it for the >challenge of emulating this processor which hasn't (AFAIK) been emulated >before... or is it because you have sadistic tendancies? ;) > >No, seriously, I just ask because I'm wondering what the processor was used >in... Sega Model 3 arcade hardware uses it :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 18:06:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA09826 for dynarec-outgoing; Tue, 31 Jul 2001 18:06:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00b501c11a28$975c30e0$0100a8c0@mshome.net> From: "Neil Griffiths" To: References: <00038a5566962e7f_mailit@mail.dynarec.com> <004401c119cb$6f617d00$789b4ed4@menta.net> <3.0.5.32.20010731170935.0086d9e0@mailandnews.com> <3.0.5.32.20010731175937.00876100@mailandnews.com> Subject: Re: DYNAREC: Long Time, No See Date: Wed, 1 Aug 2001 02:23:27 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Sega Model 3 arcade hardware uses it :) I'll let you off then. ;) Didn't know that... Useful to know! Model 3 is the machine that one of the Star Wars games is on, right? The cool one where you fight Darth Vader at the end... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 18:42:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA09860 for dynarec-outgoing; Tue, 31 Jul 2001 18:42:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 31 Jul 01 21:59:02 -0400 Message-Id: <3.0.5.32.20010731184631.008745a0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 31 Jul 2001 18:46:31 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <001501c11a0f$3b95f700$0100a8c0@mshome.net> References: <3.0.5.32.20010730221624.008701b0@mailandnews.com> <00038a6aea386a32_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Actually, I disagree with both of you, though both of your points are part >of the reason. The major problem was that 3D games were becoming more and >more popular and the Saturn had no 3D hardware. With this in mind, what the >programmers achieved on the Saturn was quite amazing. I remember being >impressed by the 3D effects on the Saturn when it first came out - then >being more impressed when I found out this was done without any 3D >accelerator. The PSX has a 3D accelerator, it just happens to run at speeds >that even a ViRGE can out-perform. ;) True, Sega thought the future would be 2D, which explains why the Saturn has perhaps the most sophisticated 2D tilemap/sprite hardware ever produced (to this day even.) Apparently, the second SH-2 was added when Sega decided that they had to add 3D capability to the Saturn. Unfortunately, the second SH-2 was poorly implemented, and can't really run simultaneously with the master SH-2 unless it only executes out of its 4KB of cache RAM. But the Saturn does have some 3D support. The VDP1 can draw polygons. It's not as good as the PSX, but I believe some capability is there. I can post a VDP1 manual online, if you'd like to see. I haven't really looked at it much myself. >Which, amazingly, is what my 3D engine currently does. In 2 days, I've >managed to write 50% of it! Cool! I should really start learning 3D graphics. When summer's over, I think I'll start with the basics. I'd definitely like to learn. But it seems extremely difficult. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 18:46:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA09873 for dynarec-outgoing; Tue, 31 Jul 2001 18:46:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 31 Jul 01 22:02:42 -0400 Message-Id: <3.0.5.32.20010731185015.00879100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 31 Jul 2001 18:50:15 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <00b501c11a28$975c30e0$0100a8c0@mshome.net> References: <00038a5566962e7f_mailit@mail.dynarec.com> <004401c119cb$6f617d00$789b4ed4@menta.net> <3.0.5.32.20010731170935.0086d9e0@mailandnews.com> <3.0.5.32.20010731175937.00876100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'll let you off then. ;) > >Didn't know that... Useful to know! Model 3 is the machine that one of the >Star Wars games is on, right? The cool one where you fight Darth Vader at >the end... Yeah, I believe so. And also Virtua Fighter 3, Scud Racer (Super GT), Sega Rally 2, L.A. Machineguns (sequel to Gunblade NY... one of my personal favorites, probably because of the big vibrating chain gun [don't get any dirty ideas!]), Daytona 2 (I think), and a bunch more. The chances of me actually emulating this system to a playable level are practically none, but I might make some progress (I'll be happy if I can at least figure out the 2D stuff) and I'll probably learn something nonetheless :) So far, it's proving to be quite interesting! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 20:16:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA09946 for dynarec-outgoing; Tue, 31 Jul 2001 20:16:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "The Clarkes" To: Subject: RE: DYNAREC: Mailing list archive Date: Wed, 1 Aug 2001 13:35:19 +1000 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2911.0) X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 In-Reply-To: <005501c11a14$fc5ff620$0100a8c0@mshome.net> Importance: Normal Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Hi, > >After losing the HD and not having a recent backup of my mail, I'm wondering >if there's anyway that the mail archive can be sent to me? Is this possible, >Neil? > >Neil. I must ditto this. made a similar request on the (*checks email*) 8/6/2001. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 20:23:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA09960 for dynarec-outgoing; Tue, 31 Jul 2001 20:23:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 31 Jul 2001 20:40:59 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: RE: DYNAREC: Mailing list archive In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >After losing the HD and not having a recent backup of my mail, I'm > wondering > >if there's anyway that the mail archive can be sent to me? Is this > possible, > >Neil? > > > >Neil. > I must ditto this. made a similar request on the (*checks email*) 8/6/2001. Wow! On August 6th? Maybe I'll get the message in another 6 days then. ;-) Yes, I have the archive. It's 12 megs, but zips down to about 6. I'll put it up tonight. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 20:38:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA09979 for dynarec-outgoing; Tue, 31 Jul 2001 20:38:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: "The Clarkes" To: Subject: RE: DYNAREC: Mailing list archive Date: Wed, 1 Aug 2001 13:57:09 +1000 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2911.0) X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 In-Reply-To: Importance: Normal Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> I must ditto this. made a similar request on the (*checks email*) 8/6/2001. > >Wow! On August 6th? Maybe I'll get the message in another 6 days then. ;-) I must remember to post dates like 8-June-2001 to avoid confusion. Over here (being .au) dates are dd/mm/yyyy. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 21:33:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA10037 for dynarec-outgoing; Tue, 31 Jul 2001 21:33:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: It blits! From: "M.I.K.e" Message-ID: <00038a70cd4d058f_mailit@mail.dynarec.com> References: <005501c11a14$fc5ff620$0100a8c0@mshome.net> <006301c11a1b$c73282e0$0100a8c0@mshome.net> Date: Wed, 01 Aug 2001 07:00:15 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Sorry. Completely unrelated to dynamic recompilation, Nothing really shocking... >but I'm damn chuffed >that I've figured out how to blit to the screen, or to blit lines to the >screen anyway. Would you say that a 700% speed increase in drawing polygons >to the screen is noticable? ;) Why? Sorry, I've just spent too much time with my niece, although she uses "Wieso?" more often than "Why?" now ;-) >Actually, I think it's more than 700%, but I can only see that increase from >my test of drawing 10 poly's to the screen. Okay, so at least I can draw >quickly now... My problem now is optimising the matrix routines so that I >can move through a 3D world quickly! >Quake 3? Bah! :)) Yes, make John Carmack pale!!! ;-) >Neil. >PS Actually, now I'm getting to grips with SDL, I suggest we use it for our >Food Fight emulation. There is one reason for this - we can do the graphics >code and it'll work on BeOS, Linux and Win32 machines with no more hassles, >meaning that what one person sees, everyone else should see. So we can >actually concentrate more on the CPU and not wonder about if we've got >problems elsewhere in the code! Thoughts? I've already voted for SDL before, not because SDL is good (which it seems to be) but because I don't have much knowledge of graphics API and porting the emulator to BeOS probably would involve SDL anyway. >SDL even works with Macs, but like we care about those... ;) Hehe. But I actually want to try to run PPC-MacOS on the BeBox using SheepShaver... -- M.I.K.e The only problem with being a man of leisure is that you can never stop and take a rest. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 31 23:50:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA10143 for dynarec-outgoing; Tue, 31 Jul 2001 23:50:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000f01c11a58$bbe3d780$789b4ed4@menta.net> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20010730221624.008701b0@mailandnews.com> <00038a6aea386a32_mailit@mail.dynarec.com> <001501c11a0f$3b95f700$0100a8c0@mshome.net> Subject: Re: DYNAREC: Long Time, No See Date: Wed, 1 Aug 2001 09:08:12 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Which, amazingly, is what my 3D engine currently does. In 2 days, I've > managed to write 50% of it! Unfortunately, it runs at a speed I'm quite > ashamed of, but given this is my first realm into Windows graphics > programming, I don't care! I'm using the SDL library and I have no clue of a > fast way to draw a horizontal line using it other than drawing a pixel each > time - no blitting to the screen for me! > With SDL the only solution would be to use OpenGL (if it can be used to display lines :))). Perhaps you can translate the SDL buffer to a GDI buffer and then use the GDI ... > I didn't know that either, but it does make sense... Nintendo are hardly a > company I trust for telling the truth, but they do have a knack for creating > highly popular games. They just seem to have misplaced this knack for the > N64! > They create kiddie games this the main reason I don't like it anymore. NES and SNES are just another story (Square, Konami, Enix, ... oh!!) :). As I preffer RPGs the SNES is one of my favourite consoles, followed by the PSX because of it also large number of this kind of games. BTW I don't like Zelda ^_^. > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 05:46:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA10614 for dynarec-outgoing; Wed, 1 Aug 2001 05:46:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006001c11a8a$54bbfe20$0100a8c0@mshome.net> From: "Neil Griffiths" To: References: <3.0.5.32.20010730221624.008701b0@mailandnews.com> <00038a6aea386a32_mailit@mail.dynarec.com> <3.0.5.32.20010731184631.008745a0@mailandnews.com> Subject: Re: DYNAREC: Long Time, No See Date: Wed, 1 Aug 2001 13:45:07 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > True, Sega thought the future would be 2D, which explains why the Saturn > has perhaps the most sophisticated 2D tilemap/sprite hardware ever produced > (to this day even.) Apparently, the second SH-2 was added when Sega decided > that they had to add 3D capability to the Saturn. Unfortunately, the second > SH-2 was poorly implemented, and can't really run simultaneously with the > master SH-2 unless it only executes out of its 4KB of cache RAM. Ah. We'd call that a bodge-job. It just means that it was rushed at the last minute and doesn't work so well. From what I've heard, I have to agree with you about the 2D tiling architecture of the Saturn, though I must admit that I have never read into it so I could be wrong. But I trust you. ;) If done properly, the idea of using the SH-2 was actually quite a good one - it certainly would have been able to beat the 3D performance of the PSX, which can't even handle perspective correction! > But the Saturn does have some 3D support. The VDP1 can draw polygons. It's > not as good as the PSX, but I believe some capability is there. I can post > a VDP1 manual online, if you'd like to see. I haven't really looked at it > much myself. I would be quite interested to read this, so if you could put it online, I'd appreciate it! > Cool! I should really start learning 3D graphics. When summer's over, I > think I'll start with the basics. I'd definitely like to learn. But it > seems extremely difficult. Actually, once you understand the basics, I think that it isn't so difficult, but it *does* have a steep learning curve. My advice to you before you begin is make sure you understand how matrixes work, especially 4x4 matrixes (which are used in 3D graphics). Once you understand how these work, pick up a copy of "Graphics Programming Black Book (Special Edition)" by Michael Abrash, as well as the book by Foley et al which I don't have handy right now to tell you the title, though it's something like "3D Graphics". Oh, hang on... Okay, I have the book. I was wrong. It's actually called "Computer Graphics: Principles & Practice" by Foley, Van Dam (but not Jean-Claude, thank god), Feiner and Hughes. My version is the 2nd edition, I think. Armed with these 2 books and a lot of caffiene, things should fall into place... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 05:46:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA10619 for dynarec-outgoing; Wed, 1 Aug 2001 05:46:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006101c11a8a$563e0a40$0100a8c0@mshome.net> From: "Neil Griffiths" To: References: <00038a5566962e7f_mailit@mail.dynarec.com> <004401c119cb$6f617d00$789b4ed4@menta.net> <3.0.5.32.20010731170935.0086d9e0@mailandnews.com> <3.0.5.32.20010731175937.00876100@mailandnews.com> <3.0.5.32.20010731185015.00879100@mailandnews.com> Subject: Re: DYNAREC: Long Time, No See Date: Wed, 1 Aug 2001 13:51:10 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > And also Virtua Fighter 3, Scud Racer (Super GT), Sega Rally 2, L.A. > Machineguns (sequel to Gunblade NY... one of my personal favorites, > probably because of the big vibrating chain gun [don't get any dirty > ideas!]), Daytona 2 (I think), and a bunch more. Aw, not letting me have ideas is no fun! ;) Actually, I like light-gun games - always have. It's probably why one of my first purchases for the Dreamcast was a lightgun. I think I know Gunblade NY - if so, that was a cool game. Another game I've played a lot in the arcades (hey, they had several decent arcade places in Munich which even had some classic games!) was Silent Scope 1 & 2 - though these weren't lightguns, but simply sniper rifles with the display situated in the eyepiece. This is something that'll never be emulated very well! > The chances of me actually emulating this system to a playable level are > practically none, but I might make some progress (I'll be happy if I can at > least figure out the 2D stuff) and I'll probably learn something > nonetheless :) So far, it's proving to be quite interesting! What graphics hardware does it have? I know it's 3D - and from what you've just said, it can handle 2D as well. From memory, I would say something like the Voodoo chipset for 3D (though it won't be) simply because the graphics always appeared to be heavily bi-linearly filtered to me. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 05:46:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA10624 for dynarec-outgoing; Wed, 1 Aug 2001 05:46:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006201c11a8a$57a625c0$0100a8c0@mshome.net> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Mailing list archive Date: Wed, 1 Aug 2001 13:52:55 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Wow! On August 6th? Maybe I'll get the message in another 6 days then. ;-) Just because you Americans got it wrong once, but you didn't want to admit it, so you made the mm/dd/yy format standard... I suppose you think a quart is a good measuring system too! ;) > Yes, I have the archive. It's 12 megs, but zips down to about 6. I'll put > it up tonight. Okay, thanks Neil. There's been some good ideas up on the list, I'd hate to have lost them all permanently... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 05:46:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA10639 for dynarec-outgoing; Wed, 1 Aug 2001 05:46:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006301c11a8a$595164c0$0100a8c0@mshome.net> From: "Neil Griffiths" To: References: <005501c11a14$fc5ff620$0100a8c0@mshome.net> <006301c11a1b$c73282e0$0100a8c0@mshome.net> <00038a70cd4d058f_mailit@mail.dynarec.com> Subject: Re: DYNAREC: It blits! Date: Wed, 1 Aug 2001 13:57:28 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Sorry, I've just spent too much time with my niece, although she uses > "Wieso?" more often than "Why?" now ;-) Why so? ;) > Yes, make John Carmack pale!!! ;-) He's a coder, coders are normally pale anyway. ;) > I've already voted for SDL before, not because SDL is good (which it seems to > be) but because I don't have much knowledge of graphics API and porting the > emulator to BeOS probably would involve SDL anyway. Well, even if people vote against using SDL, I know have enough experience with it that I could work with you on that one. My main problem with it was not being able to blit to the screen, but now I've figured it. I simply draw a rectangle which is 1 pixel high. That way, SDL uses the DirectX function to blit to the screen - and I've got my double-buffering set up in video memory too, so blitting from the buffer->screen is very fast. > >SDL even works with Macs, but like we care about those... ;) > > Hehe. But I actually want to try to run PPC-MacOS on the BeBox using > SheepShaver... My god, I want to congratulate whoever is responsible for coming up with "SheepShaver". :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 09:11:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA10810 for dynarec-outgoing; Wed, 1 Aug 2001 09:11:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 1 Aug 2001 09:29:07 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Mailing list archive In-Reply-To: <006201c11a8a$57a625c0$0100a8c0@mshome.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Wow! On August 6th? Maybe I'll get the message in another 6 days then. ;-) > Just because you Americans got it wrong once, but you didn't want to admit > it, so you made the mm/dd/yy format standard... I suppose you think a quart > is a good measuring system too! ;) Hahahaha... Well, saying "The 5th of May" is just arrogant wordiness. We say "May 5th", hence the *CORRECT* way to do mm/dd/yy. ;-) > > Yes, I have the archive. It's 12 megs, but zips down to about 6. I'll put > > it up tonight. > Okay, thanks Neil. There's been some good ideas up on the list, I'd hate to > have lost them all permanently... http://www.synthcom.com/~neil/drl.zip I lied. Only 2.3 megabytes. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 12:08:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA10979 for dynarec-outgoing; Wed, 1 Aug 2001 12:08:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 1 Aug 01 15:23:28 -0400 Message-Id: <3.0.5.32.20010801121055.00870e20@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 01 Aug 2001 12:10:55 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <006101c11a8a$563e0a40$0100a8c0@mshome.net> References: <00038a5566962e7f_mailit@mail.dynarec.com> <004401c119cb$6f617d00$789b4ed4@menta.net> <3.0.5.32.20010731170935.0086d9e0@mailandnews.com> <3.0.5.32.20010731175937.00876100@mailandnews.com> <3.0.5.32.20010731185015.00879100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Actually, I like light-gun games - always have. It's probably why one of my >first purchases for the Dreamcast was a lightgun. I think I know Gunblade >NY - if so, that was a cool game. Gunblade NY had big guns mounted onto the cabinet, which should vibrate when they shoot (unfortunately, the guns are broken in most arcades nowadays.) The game's just no fun when the guns are broken :) Anyhow, in the game, you're supposed to be part of some anti-terrorist squad, and you sit on the wing of a helicopter and swoop around the city streets blasting terrorists (and since the terrorists all carry rocket launchers, they explode in satisfying 3D polygonal fire works when they die.) L.A. Machineguns is similar, except it takes place in the future, and you're in some sort of flying suit or something. The explosions and sparks are way cool ;) I wish more games would use 3D explosions, instead of sprites. >Another game I've played a lot in the >arcades (hey, they had several decent arcade places in Munich which even had >some classic games!) was Silent Scope 1 & 2 - though these weren't >lightguns, but simply sniper rifles with the display situated in the >eyepiece. This is something that'll never be emulated very well! Silent Scope was definitely a cool idea. Time Crisis 2 would probably be my all-time favorite light gun game, though. I was hooked on the original Time Crisis because of the cool pedal mechanism (I wish Sega would use this concept with a Virtua Cop game, or something), and because of the way the gun kick backed. The game itself was great, too. I've played Crisis Zone (Time Crisis 3, I suppose), but it wasn't as good, IMHO. Instead of a hand gun, you're now armed with some sort of a submachine gun, and you hardly ever run out of ammo. What was really impressive about the game, though, was how they made almost everything in the environment destructable. For example, in the shopping mall level, while having a gunfight in some art store, you could break pictures, shatter statues, etc... nothing seemed to happen the same way twice, everything would fall and break according to how you hit it. >What graphics hardware does it have? I know it's 3D - and from what you've >just said, it can handle 2D as well. From memory, I would say something like >the Voodoo chipset for 3D (though it won't be) simply because the graphics >always appeared to be heavily bi-linearly filtered to me. Sega uses custom hardware, and not much is known about it except from the specs they released. Check out System16.com's Sega arcade hardware page... it shows you which games are available for all their arcade systems, and has all the specs as well (along with close-up photos of the boards): http://www.system16.com/sega/hardware.htm There are several variants of the Model 3 hardware, and you can see which games are available on each. I was looking through the Virtua Fighter 3 ROMs, and found some interesting error and test messages. Apparently the Model 3 has 5 custom ASICs named Mercury, Venus, Earth, Mars, and Jupiter. I'm certain some of these are used in 3D and 2D rendering. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 12:21:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA11002 for dynarec-outgoing; Wed, 1 Aug 2001 12:21:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 1 Aug 01 15:37:39 -0400 Message-Id: <3.0.5.32.20010801122459.008706e0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 01 Aug 2001 12:24:59 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <006001c11a8a$54bbfe20$0100a8c0@mshome.net> References: <3.0.5.32.20010730221624.008701b0@mailandnews.com> <00038a6aea386a32_mailit@mail.dynarec.com> <3.0.5.32.20010731184631.008745a0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Ah. We'd call that a bodge-job. It just means that it was rushed at the last >minute and doesn't work so well. From what I've heard, I have to agree with >you about the 2D tiling architecture of the Saturn, though I must admit that >I have never read into it so I could be wrong. But I trust you. ;) > >If done properly, the idea of using the SH-2 was actually quite a good one - >it certainly would have been able to beat the 3D performance of the PSX, >which can't even handle perspective correction! > >> But the Saturn does have some 3D support. The VDP1 can draw polygons. It's >> not as good as the PSX, but I believe some capability is there. I can post >> a VDP1 manual online, if you'd like to see. I haven't really looked at it >> much myself. > >I would be quite interested to read this, so if you could put it online, I'd >appreciate it! EPR has them: http://www.classicgaming.com/epr Under the Saturn section, there will be a VDP1.PDF and VDP2.PDF. VDP1 is the chip responsible for all 3D rendering, as well as 2D sprites (the Saturn can do some crazy stuff with sprites. You can change the position of each corner of the sprite, and thus warp it in a variety of interesting ways... and plus there's scaling, rotation, and all that good stuff.) The VDP2 is responsible for the tile layers. The Saturn can manage up to 4 layers (less if you use rotating/scaling backgrounds) and has a ton of special effects. >Actually, once you understand the basics, I think that it isn't so >difficult, but it *does* have a steep learning curve. My advice to you >before you begin is make sure you understand how matrixes work, especially >4x4 matrixes (which are used in 3D graphics). I understand how to do matrix math, and I've seen matrices which rotate coordinates, but I don't quite understand WHY the rotation matrices work. Not that I've ever really investigated them. What frightens me is that a lot of documentation just says: "we don't need to concern ourselves with how or why they work, all we care about is that they work and we can use them to get the job done." This seems like the wrong approach to me. I think one of the key differences between good and innovative programmers and ordinary or sub-par programmers is that the good ones have an intimate knowledge of what they're doing, and how things really work, and why. I think it must be difficult to have a mastery of advanced concepts, if you can't understand the basic tools you are using, and treat them like some sort of magical black boxes which just get the job done. So I can see that 3D is going to be a long road for me ;) >Once you understand how these >work, pick up a copy of "Graphics Programming Black Book (Special Edition)" >by Michael Abrash, I used to see Abrash's book on store shelves a lot a few years ago, but lately, it's nowhere to be found. I should've picked up a copy while I still had the chance! Does the book cover the very basics of not only the mathematical/abstract stuff, but the rasterization process as well? I've seen some books which cover the higher-level mathematical stuff, but then expect you to be able to write good 3D code without ever explaining how to draw triangles! >as well as the book by Foley et al which I don't have >handy right now to tell you the title, though it's something like "3D >Graphics". Oh, hang on... Okay, I have the book. I was wrong. It's actually >called "Computer Graphics: Principles & Practice" by Foley, Van Dam (but not >Jean-Claude, thank god), Feiner and Hughes. My version is the 2nd edition, I >think. Armed with these 2 books and a lot of caffiene, things should fall >into place... Thanks. I think I'll pick these books up, so I won't have to go through the headache of tracking them down when I REALLY need them, only to find that they aren't available or something :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 12:37:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA11024 for dynarec-outgoing; Wed, 1 Aug 2001 12:37:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003c01c11ac3$d49712e0$3f427bd5@mshome.net> From: "Neil Griffiths" To: References: <00038a5566962e7f_mailit@mail.dynarec.com> <004401c119cb$6f617d00$789b4ed4@menta.net> <3.0.5.32.20010731170935.0086d9e0@mailandnews.com> <3.0.5.32.20010731175937.00876100@mailandnews.com> <3.0.5.32.20010731185015.00879100@mailandnews.com> <3.0.5.32.20010801121055.00870e20@mailandnews.com> Subject: Re: DYNAREC: Long Time, No See Date: Wed, 1 Aug 2001 20:48:25 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Gunblade NY had big guns mounted onto the cabinet, which should vibrate > when they shoot (unfortunately, the guns are broken in most arcades > nowadays.) The game's just no fun when the guns are broken :) Anyhow, in > the game, you're supposed to be part of some anti-terrorist squad, and you > sit on the wing of a helicopter and swoop around the city streets blasting > terrorists (and since the terrorists all carry rocket launchers, they > explode in satisfying 3D polygonal fire works when they die.) That sounds like what I remember... I'll hunt for some screenshots of either the game or the JAMMA and then I'll know for sure! > L.A. Machineguns is similar, except it takes place in the future, and > you're in some sort of flying suit or something. The explosions and sparks > are way cool ;) I wish more games would use 3D explosions, instead of sprites. Indeed, 3D looks more impressive in a game when everything is 3D. When it uses sprites as well, it doesn't look as good... > Silent Scope was definitely a cool idea. Amen! > Time Crisis 2 would probably be my all-time favorite light gun game, > though. I was hooked on the original Time Crisis because of the cool pedal > mechanism (I wish Sega would use this concept with a Virtua Cop game, or > something), and because of the way the gun kick backed. Thank you! That's the game I wanted to mention, I really, really enjoyed this. Myself and a friend would often play this at the local bowling alley and I must admit that the whole pedal mechanism both worked excellently and made the whole game immersion experience better! And the kickback on the gun was indeed nice. I enjoyed this game a lot, not least because in one part of the game you have to shoot down a NH90 helicopter, the NH90 being made and designed by Eurocopter - where I was working last year! It's quite unrealistic in that respect. You don't need to shoot a NH90 for it to hit the ground in flames! ;) > The game itself was great, too. It was, especially long for an arcade game which I generally hate for being so short these days. > I've played Crisis Zone (Time Crisis 3, I suppose), but it wasn't as good, > IMHO. Instead of a hand gun, you're now armed with some sort of a > submachine gun, and you hardly ever run out of ammo. What was really > impressive about the game, though, was how they made almost everything in > the environment destructable. For example, in the shopping mall level, > while having a gunfight in some art store, you could break pictures, > shatter statues, etc... nothing seemed to happen the same way twice, > everything would fall and break according to how you hit it. I've not played this, though the whole destruction engine that you describe sounds interesting. Though if the game isn't as fun to play then I guess I'd prefer TC2! > Sega uses custom hardware, and not much is known about it except from the > specs they released. Check out System16.com's Sega arcade hardware page... > it shows you which games are available for all their arcade systems, and > has all the specs as well (along with close-up photos of the boards): > http://www.system16.com/sega/hardware.htm I wonder if I really am close when I said about the Voodoo architecture then? I know that House of the Dead (either 1 or 2) used a 3Dfx chipset, the 3Dfx logo would appear in the attract mode. > I was looking through the Virtua Fighter 3 ROMs, and found some interesting > error and test messages. Apparently the Model 3 has 5 custom ASICs named > Mercury, Venus, Earth, Mars, and Jupiter. I'm certain some of these are > used in 3D and 2D rendering. To emulate 3D graphics hardware... That really doesn't sound like my idea of fun! Mind you, it was early 3D architecture, so it won't be as advanced as current (or recent) PC 3D chipsets, which is definitely a good thing in terms of understanding the chipset! Has anyone got any schematics for the boards, or is it all guesswork? :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 12:42:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA11038 for dynarec-outgoing; Wed, 1 Aug 2001 12:42:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 1 Aug 2001 20:58:22 +0100 (BST) From: J Brown X-Sender: brown@maxx To: dynarec@dynarec.com Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <3.0.5.32.20010801122459.008706e0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 1 Aug 2001, Bart wrote: > >Once you understand how these > >work, pick up a copy of "Graphics Programming Black Book (Special Edition)" > >by Michael Abrash, > > I used to see Abrash's book on store shelves a lot a few years ago, but > lately, it's nowhere to be found. I should've picked up a copy while I > still had the chance! > > Does the book cover the very basics of not only the mathematical/abstract > stuff, but the rasterization process as well? I've seen some books which > cover the higher-level mathematical stuff, but then expect you to be able > to write good 3D code without ever explaining how to draw triangles! It's out of print, I believe. The good news is, it's freely available for download: http://www.ddj.com/articles/2001/0165/0165f/0165f.htm?topic=graphics >From what I remember skimming through the PDFs, it's more a collection of useful tricks than a comprehensive text on graphics theory, but still looks like quality stuff, and definitely includes the nitty-gritty detail of how to actually draw triangles, etc. At the risk of being condescending, you might also try Hugo Elias's webpage: http://freespace.virgin.net/hugo.elias/ Which again is just a random collection of tricks, but pretty cool nonetheless. For hard-core matrix stuff, quite a few of the American universities put course notes up which might conceivably be useful. > >as well as the book by Foley et al which I don't have > >handy right now to tell you the title, though it's something like "3D > >Graphics". Oh, hang on... Okay, I have the book. I was wrong. It's actually > >called "Computer Graphics: Principles & Practice" by Foley, Van Dam (but not > >Jean-Claude, thank god), Feiner and Hughes. My version is the 2nd edition, I > >think. Armed with these 2 books and a lot of caffiene, things should fall > >into place... That one's good. Nice pictures ;-) Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 12:43:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA11048 for dynarec-outgoing; Wed, 1 Aug 2001 12:43:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 1 Aug 2001 13:00:46 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <3.0.5.32.20010801122459.008706e0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >difficult, but it *does* have a steep learning curve. My advice to you > >before you begin is make sure you understand how matrixes work, especially > >4x4 matrixes (which are used in 3D graphics). > I understand how to do matrix math, and I've seen matrices which rotate > coordinates, but I don't quite understand WHY the rotation matrices work. > Not that I've ever really investigated them. That's what trig is for. ;-) > What frightens me is that a lot of documentation just says: "we don't need > to concern ourselves with how or why they work, all we care about is that > they work and we can use them to get the job done." > > This seems like the wrong approach to me. I think one of the key > differences between good and innovative programmers and ordinary or sub-par > programmers is that the good ones have an intimate knowledge of what > they're doing, and how things really work, and why. And to add to that, programmers should understand their code well enough that if someone tells you of a problem in it, you almost immediately can figure out where or what it could be. Too true. Too many MFC programmers. I still have horrid memories of an idiot who said "Gee! I can use the quicksort routine in MFC on my sorted list!" and did it because it was easier than writing a 4 line procedure to do a bubble sort (which would've been far better). Then it was using 80% of the CPU power on 512 entries and he couldn't figure out why. Duh. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 12:48:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA11067 for dynarec-outgoing; Wed, 1 Aug 2001 12:48:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004101c11ac5$58ab8600$3f427bd5@mshome.net> From: "Neil Griffiths" To: References: <3.0.5.32.20010730221624.008701b0@mailandnews.com> <00038a6aea386a32_mailit@mail.dynarec.com> <3.0.5.32.20010731184631.008745a0@mailandnews.com> <3.0.5.32.20010801122459.008706e0@mailandnews.com> Subject: Re: DYNAREC: Long Time, No See Date: Wed, 1 Aug 2001 21:04:13 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Thanks for the link, BTW. > Under the Saturn section, there will be a VDP1.PDF and VDP2.PDF. VDP1 is > the chip responsible for all 3D rendering, as well as 2D sprites (the > Saturn can do some crazy stuff with sprites. You can change the position of > each corner of the sprite, and thus warp it in a variety of interesting > ways... and plus there's scaling, rotation, and all that good stuff.) Well, at least the rotation and scaling is useful! > I understand how to do matrix math, and I've seen matrices which rotate > coordinates, but I don't quite understand WHY the rotation matrices work. > Not that I've ever really investigated them. You don't actually NEED to use matrixes, you could do them individually. The reason that we use matrixes is to keep all the code together, it's easier to write and it's damn easy to optimise a good matrix routine. It's just a quicker way of working things out, and you only need to do one sum one time - whereas doing the rotation individually would need you to do the same sum again (or store the result - which is what a matrix does for you anyway). If you understood that. I should never write books. :)) > What frightens me is that a lot of documentation just says: "we don't need > to concern ourselves with how or why they work, all we care about is that > they work and we can use them to get the job done." Now you are 100% correct here. That's what scared me when I originally wrote my first engine - and that's why this one is better. I now have these 2 books and I understand the principles behind the maths. I originally wrote my engine based upon the routines that those documents explained - and the engine worked, but this engine will work better because I actually understand what I'm doing now! > This seems like the wrong approach to me. I think one of the key > differences between good and innovative programmers and ordinary or sub-par > programmers is that the good ones have an intimate knowledge of what > they're doing, and how things really work, and why. I think it must be > difficult to have a mastery of advanced concepts, if you can't understand > the basic tools you are using, and treat them like some sort of magical > black boxes which just get the job done. Exactly, if you don't understand what you're doing, you'll never be a great programmer - nor will you write the best code. Mind you, it seems that most programmers don't care about writing the best code but simply writing code that works! > So I can see that 3D is going to be a long road for me ;) Only if you use those crap documents available on the 'net! It was tough for me, but especially Michael Abrash' book is a good read! > I used to see Abrash's book on store shelves a lot a few years ago, but > lately, it's nowhere to be found. I should've picked up a copy while I > still had the chance! Definitely, definitely get a copy of this book. If you're interested in graphics programming, you need to get this book. It's actually the best computer-related book I've ever read! Not only does it get the information across very well, the information is still useful and relevant today! > Does the book cover the very basics of not only the mathematical/abstract > stuff, but the rasterization process as well? I've seen some books which > cover the higher-level mathematical stuff, but then expect you to be able > to write good 3D code without ever explaining how to draw triangles! It covers *everything*, from the very basics up to advanced routines. It explains everything thoroughly, or it does IMO. It explains how to draw triangles (I mean, the book starts off with 2D graphics programming) and then explains how everything relates to 3D programming. Abrash' book is much more useful than even Foley's book - and that is the de facto book of reference for 3D graphics! > Thanks. I think I'll pick these books up, so I won't have to go through the > headache of tracking them down when I REALLY need them, only to find that > they aren't available or something :) Good luck finding them, though I would expect that Amazon should have them... But I do recommend getting them ASAP before you can't ever again! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 12:59:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA11089 for dynarec-outgoing; Wed, 1 Aug 2001 12:59:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004c01c11ac6$ecf34fe0$3f427bd5@mshome.net> From: "Neil Griffiths" To: References: Subject: Re: DYNAREC: Long Time, No See Date: Wed, 1 Aug 2001 21:12:15 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > It's out of print, I believe. The good news is, it's freely available for > download: > > http://www.ddj.com/articles/2001/0165/0165f/0165f.htm?topic=graphics Is it? Oh well. Bart, you can't buy it - or if you can, it'll be 2nd hand or old or summat. But it's still worth it. I prefer books to online documentation personally, but the great thing about documentation is that it takes less space in a room than books do! > From what I remember skimming through the PDFs, it's more a collection of > useful tricks than a comprehensive text on graphics theory, but still > looks like quality stuff, and definitely includes the nitty-gritty detail > of how to actually draw triangles, etc. At the risk of being > condescending, you might also try Hugo Elias's webpage: > > http://freespace.virgin.net/hugo.elias/ Cool link, thanks Jules! As for the book, there are a lot of useful tricks, but it explains the graphics theory - it just doesn't go into it in as much detail as Foley's book. For me, wanting to get this engine done quickly, that is a good thing! > That one's good. Nice pictures ;-) Yep. ;) Jules, what are you up to now? Haven't heard from you on the list in a while! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 13:02:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA11109 for dynarec-outgoing; Wed, 1 Aug 2001 13:02:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 1 Aug 01 16:17:32 -0400 Message-Id: <3.0.5.32.20010801130458.00872260@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 01 Aug 2001 13:04:58 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <003c01c11ac3$d49712e0$3f427bd5@mshome.net> References: <00038a5566962e7f_mailit@mail.dynarec.com> <004401c119cb$6f617d00$789b4ed4@menta.net> <3.0.5.32.20010731170935.0086d9e0@mailandnews.com> <3.0.5.32.20010731175937.00876100@mailandnews.com> <3.0.5.32.20010731185015.00879100@mailandnews.com> <3.0.5.32.20010801121055.00870e20@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That sounds like what I remember... I'll hunt for some screenshots of either >the game or the JAMMA and then I'll know for sure! System16.com will have them. It's a Model 2B-CRX game, so you can go to the hardware page I mentioned in a previous email, and check it out. >Thank you! That's the game I wanted to mention, I really, really enjoyed >this. Myself and a friend would often play this at the local bowling alley >and I must admit that the whole pedal mechanism both worked excellently and >made the whole game immersion experience better! And the kickback on the gun >was indeed nice. I enjoyed this game a lot, not least because in one part of >the game you have to shoot down a NH90 helicopter, the NH90 being made and >designed by Eurocopter - where I was working last year! It was a real helicopter? I thought they just would've made up a helicopter instead of basing it on a real design. >It's quite unrealistic in that respect. You don't need to shoot a NH90 for >it to hit the ground in flames! ;) Hehe >I've not played this, though the whole destruction engine that you describe >sounds interesting. Though if the game isn't as fun to play then I guess I'd >prefer TC2! TC2 is great. The game play is the same as TC1, but it's now 2 player (I don't remember seeing a 2-player TC1), and the graphics have been spruced up considerably. The game is a lot brighter and more vivid. The scenarios are neat, too. I especially thought the train level was cool -- shooting through cars, and then shooting out the window into another train running alongside yours. The last level was great, too. Oh, and who could forget the boat scene. That was verry impressive. >I wonder if I really am close when I said about the Voodoo architecture >then? I know that House of the Dead (either 1 or 2) used a 3Dfx chipset, the >3Dfx logo would appear in the attract mode. House of the Dead 1 was a Model 2 game, and 3Dfx didn't do the hardware for that (but I think Lockheed-Martin helped out.) Perhaps you're right, then. But Model 3 came out in 1996... was 3Dfx doing much before then? I'm doing a web search now, to see if I can dig up any mention of 3Dfx's involvement with Model 3. But so far, I've only been able to discover that apparently Lockheed-Martin was involved with Model 3 (as it was with Model 2.) >> I was looking through the Virtua Fighter 3 ROMs, and found some >interesting >> error and test messages. Apparently the Model 3 has 5 custom ASICs named >> Mercury, Venus, Earth, Mars, and Jupiter. I'm certain some of these are >> used in 3D and 2D rendering. > >To emulate 3D graphics hardware... That really doesn't sound like my idea of >fun! Mind you, it was early 3D architecture, so it won't be as advanced as >current (or recent) PC 3D chipsets, which is definitely a good thing in >terms of understanding the chipset! > >Has anyone got any schematics for the boards, or is it all guesswork? :o No schematics are available online. Not even MAMEDev has them. However, I'm hoping one of the guys who dumped Virtua Fighter 3 has them, but he probably doesn't. Sega only gives them out to certified repair people. I'm sure they'll surface one day. I'm going to need them in order to figure out where to load the other ROMs. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 13:08:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA11131 for dynarec-outgoing; Wed, 1 Aug 2001 13:08:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 1 Aug 2001 13:25:47 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Long Time, No See Message-ID: <20010801132547.D15278@hetfield.patsoffice.com> References: <3.0.5.32.20010801122459.008706e0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from neil@synthcom.com on Wed, Aug 01, 2001 at 01:00:46PM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I understand how to do matrix math, and I've seen matrices which > > rotate coordinates, but I don't quite understand WHY the rotation > > matrices work. Not that I've ever really investigated them. > > That's what trig is for. ;-) Actually, it's trig (sin,cos) for the values that go in the matrix. But the vector transformations fall under the classification of "linear algebra". If you really want to learn the subject, pick up a college text on linear algrebra and check it out. Otherwise, there are plenty of resources on the net explaining how the matrices and the vector transformations work. Fun stuff. The matrix math is useful for *all* kinds of things ranging from 2d,3d transformations to approximating non-linear systems of equations. Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 13:12:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA11144 for dynarec-outgoing; Wed, 1 Aug 2001 13:12:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 1 Aug 01 16:29:15 -0400 Message-Id: <3.0.5.32.20010801131637.00877690@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 01 Aug 2001 13:16:37 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <004c01c11ac6$ecf34fe0$3f427bd5@mshome.net> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> http://www.ddj.com/articles/2001/0165/0165f/0165f.htm?topic=graphics > >Is it? Oh well. Bart, you can't buy it - or if you can, it'll be 2nd hand or >old or summat. But it's still worth it. I prefer books to online >documentation personally, but the great thing about documentation is that it >takes less space in a room than books do! Amazon has it, I believe. I'll try getting it there. I also prefer books to online documents -- especially PDF . >> From what I remember skimming through the PDFs, it's more a collection of >> useful tricks than a comprehensive text on graphics theory, but still >> looks like quality stuff, and definitely includes the nitty-gritty detail >> of how to actually draw triangles, etc. At the risk of being >> condescending, you might also try Hugo Elias's webpage: >> >> http://freespace.virgin.net/hugo.elias/ > >Cool link, thanks Jules! As for the book, there are a lot of useful tricks, >but it explains the graphics theory - it just doesn't go into it in as much >detail as Foley's book. For me, wanting to get this engine done quickly, >that is a good thing! I'll check this link out. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 13:18:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA11160 for dynarec-outgoing; Wed, 1 Aug 2001 13:18:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <008d01c11ac9$78bbb240$3f427bd5@mshome.net> From: "Neil Griffiths" To: References: <00038a5566962e7f_mailit@mail.dynarec.com> <004401c119cb$6f617d00$789b4ed4@menta.net> <3.0.5.32.20010731170935.0086d9e0@mailandnews.com> <3.0.5.32.20010731175937.00876100@mailandnews.com> <3.0.5.32.20010731185015.00879100@mailandnews.com> <3.0.5.32.20010801121055.00870e20@mailandnews.com> <3.0.5.32.20010801130458.00872260@mailandnews.com> Subject: Re: DYNAREC: Long Time, No See Date: Wed, 1 Aug 2001 21:34:46 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > It was a real helicopter? I thought they just would've made up a helicopter > instead of basing it on a real design. I'd have thought so too - indeed, I was surprised to see it. Next time you play the game, watch out for the helicopter - they both refer to it as the NH90 and also, when you first see the helicopter, it says "NH90" underneath it. I remember losing the first game I played when I encountered the helicopter through dropping the gun and then myself on the floor in laughter. :o > TC2 is great. The game play is the same as TC1, but it's now 2 player (I > don't remember seeing a 2-player TC1), and the graphics have been spruced > up considerably. The game is a lot brighter and more vivid. The scenarios > are neat, too. I especially thought the train level was cool -- shooting > through cars, and then shooting out the window into another train running > alongside yours. Yep, indeed, that was fun - and then on top of the train and so on... > Oh, and who could forget the boat scene. That was verry impressive. Wasn't this one of the first scenes? Whatever, very impressive. I enjoyed the game a lot! > Perhaps you're right, then. But Model 3 came out in 1996... was 3Dfx doing > much before then? I believe that the Voodoo was released even as early as '96. Perhaps it was '97, but I was certainly in college when it was released, so no later than '97. > I'm doing a web search now, to see if I can dig up any mention of 3Dfx's > involvement with Model 3. But so far, I've only been able to discover that > apparently Lockheed-Martin was involved with Model 3 (as it was with Model 2.) I hope I'm remembering the right game now, but I'm certain it was one of the "House of the Dead" series that I saw the logo in the attract screens. > No schematics are available online. Not even MAMEDev has them. However, I'm > hoping one of the guys who dumped Virtua Fighter 3 has them, but he > probably doesn't. Sega only gives them out to certified repair people. In that case, I don't know anyone who'd have them. Shame. > I'm sure they'll surface one day. I'm going to need them in order to figure > out where to load the other ROMs. Good point! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 13:25:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA11177 for dynarec-outgoing; Wed, 1 Aug 2001 13:25:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 1 Aug 01 16:38:26 -0400 Message-Id: <3.0.5.32.20010801132548.0087a820@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 01 Aug 2001 13:25:48 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <20010801132547.D15278@hetfield.patsoffice.com> References: <3.0.5.32.20010801122459.008706e0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 01:25 PM 8/1/2001 -0700, you wrote: >> > I understand how to do matrix math, and I've seen matrices which >> > rotate coordinates, but I don't quite understand WHY the rotation >> > matrices work. Not that I've ever really investigated them. >> >> That's what trig is for. ;-) > >Actually, it's trig (sin,cos) for the values that go in the matrix. But >the vector transformations fall under the classification of "linear >algebra". If you really want to learn the subject, pick up a college text >on linear algrebra and check it out. Otherwise, there are plenty of >resources on the net explaining how the matrices and the vector >transformations work. Fun stuff. The matrix math is useful for *all* >kinds of things ranging from 2d,3d transformations to approximating >non-linear systems of equations. Hmm, I'll definitely have to look into this! I've heard horror stories about linear algebra :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 19:07:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA11531 for dynarec-outgoing; Wed, 1 Aug 2001 19:07:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: tarquin@austin.rr.com Date: Wed, 1 Aug 2001 19:25:26 -0700 (PDT) X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <3.0.5.32.20010801132548.0087a820@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Abrash's Big Black Book: This is actually his two earlier books, the Zen of Optimization and Zen of Graphics (2nd ed) glued together, with an extra chapter or two on Quake at the end (ZoG 2nd ed had a few chapters of it's own on it, the big book adds one or two more) I had ZoG 2nd ed, so I wasn't too keen on dumping another $60 where half the book was old stuff to me. I haven't read through the Zen of Optimization part just yet, but ZoG is probably the coolest graphics book I've come across. The first half of the book mostly describes the inner workings of the VGA, especially as it relates to 16 color mode. The hardware stuff is probably not too useful these days, but his descriptions of lines, circles, ellipses, and polygons is excellent. On 3D he starts out with some basic polygon stuff, flat and gourad, only really covers affine texture mapping though. The few chapters on pure 3D theory and such are quite good, and accessible. I still like the method of transforming a coordinate system over matrices for transformations (exact same calculations, but visualized slightly differently) The quake portion describes a number of the little bits that went into quake's renderer, and are quite interesting. All in all, a good book, though large portions of it are semi-obsolete these days. One just doesn't have many chances to go bare-metal 16 color VGA coding now... John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 1 20:21:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA11611 for dynarec-outgoing; Wed, 1 Aug 2001 20:21:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 1 Aug 01 23:37:38 -0400 Message-Id: <3.0.5.32.20010801202448.00872100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 01 Aug 2001 20:24:48 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Long Time, No See In-Reply-To: References: <3.0.5.32.20010801132548.0087a820@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >All in all, a good book, though large portions of it are semi-obsolete >these days. One just doesn't have many chances to go bare-metal 16 color >VGA coding now... I've browsed the book before, and I think it mostly discusses Mode 0x13 (and possible Mode X -- not ZoG, but his Graphics Programming Black Book.) So I suppose it's somewhat up to date in that aspect (I have no qualms about working in a 256-color mode :)) BTW, about the Foley book. Hugo Elias (whose page Jules provided the link for) doesn't like the book one bit it seems. He mentions a real-time 3D graphics book, and I think I've seen this one on the shelves at Barnes & Noble, but I could be mistaken. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 2 00:24:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA11794 for dynarec-outgoing; Thu, 2 Aug 2001 00:23:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 2 Aug 2001 00:41:28 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: DYNAREC: A sad, sad day... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I was sifting through some old code, and noticed that stanknes no longer worked... started digging into why... stanknes -- nope stanknes-0.1 -- nope oldstanknes -- nope realoldstanknes -- nope reallyoldstanknes -- nope ancientstanknes -- AHA! After digging into things a bit deeper, it seems that someone has deemed mmap capability for /proc/mem and friends (like /proc/self/mem) to not be proper kernel behavior, and is no longer supported. How rude of them. I'm trying to figure out who to email about this, but for now it seems that the easiest methods of bankswitching are no longer usable. I may look into coding up a small driver to allow for bankswitching, but this is really annoying. Most of the tricks pulled can be faked with some sneakiness in /tmp, but it involves creating temp files to make sure everything is loaded up on a page boundary -- nes roms in particular have a lovely little 16 byte header at the beginning. John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 2 06:46:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA12291 for dynarec-outgoing; Thu, 2 Aug 2001 06:46:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 2 Aug 2001 15:01:42 +0100 (BST) From: J Brown X-Sender: brown@maxx To: dynarec Subject: Re: DYNAREC: Long Time, No See In-Reply-To: <004c01c11ac6$ecf34fe0$3f427bd5@mshome.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 1 Aug 2001, Neil Griffiths wrote: > > It's out of print, I believe. The good news is, it's freely available for > > download: > > > > http://www.ddj.com/articles/2001/0165/0165f/0165f.htm?topic=graphics > > Is it? Oh well. Bart, you can't buy it - or if you can, it'll be 2nd hand or > old or summat. But it's still worth it. I prefer books to online > documentation personally, but the great thing about documentation is that it > takes less space in a room than books do! And it's cheaper. > Jules, what are you up to now? Haven't heard from you on the list in a > while! I could pretend to have been busy, but actually I've been being fairly lazy. Don't let anyone tell you postgrads to lots of work. Err, not that anyone'd think that anyway. I've been doing a tiny bit on ARMphetamine, but nothing particularly earth-shattering (though the program is slowly, slowly edging towards generating code which might actually stand a chance of working). For my university, I'm planning on doing some research into dynamic optimisation, starting with a new, hopefully clean processor architecture with some special features to make self-analysing and self-modifying code easy. All currently in the planning stages though. Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 2 23:45:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA13206 for dynarec-outgoing; Thu, 2 Aug 2001 23:43:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 3 Aug 2001 00:01:56 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: It blits! In-Reply-To: <006301c11a1b$c73282e0$0100a8c0@mshome.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > code and it'll work on BeOS, Linux and Win32 machines with no more hassles, > meaning that what one person sees, everyone else should see. So we can > actually concentrate more on the CPU and not wonder about if we've got > problems elsewhere in the code! Thoughts? SDL even works with Macs, but like > we care about those... ;) Looks about as braindead simple as DirectX... I'll take a look at it and see what we can do. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 3 15:46:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA14180 for dynarec-outgoing; Fri, 3 Aug 2001 15:46:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 3 Aug 2001 16:03:57 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: It blits! Message-ID: <20010803160357.A1364@hetfield.patsoffice.com> References: <006301c11a1b$c73282e0$0100a8c0@mshome.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from neil@synthcom.com on Fri, Aug 03, 2001 at 12:01:56AM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Looks about as braindead simple as DirectX... I'll take a look at it and > see what we can do. I had started porting Retrocade to use SDL under Linux. SDL was feature complete for everything we needed. Never finished it, but did have it somewhat working. I'll dig around to see if I still have that code lying around. To get things back on topic, what are we waiting for on the DR-68K stuff? Is Neil the bottleneck since he's been swamped with his synth project? Is there any slack somebody else could pick up? I'd really like to use the framework to re-write the m680x cores. Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 3 15:51:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA14197 for dynarec-outgoing; Fri, 3 Aug 2001 15:50:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 3 Aug 2001 16:09:08 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: It blits! In-Reply-To: <20010803160357.A1364@hetfield.patsoffice.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Looks about as braindead simple as DirectX... I'll take a look at it and > > see what we can do. > I had started porting Retrocade to use SDL under Linux. SDL was feature > complete for everything we needed. Never finished it, but did have it > somewhat working. I'll dig around to see if I still have that code lying > around. Not necessary. The APIs are really easy. I rather like it, though it is completely absent when dealing with mice. l;-( > To get things back on topic, what are we waiting for on the DR-68K stuff? We basically need to discuss the source/target script format. Neilg was writing something up on it and I asked him about its status and hadn't heard. ;-( But we need to hammer that out before we can start in. > Is Neil the bottleneck since he's been swamped with his synth project? Partially, but I'll be unblocked a bit next week when I'm no longer the gating item. ;-) I'll definitely be putting in some time on it and SDL. > Is > there any slack somebody else could pick up? I'd really like to use the > framework to re-write the m680x cores. Do you mean rewrite them as dynamic recompilation cores instead? -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 3 16:15:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA14237 for dynarec-outgoing; Fri, 3 Aug 2001 16:15:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 3 Aug 2001 16:32:43 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: It blits! Message-ID: <20010803163243.C1364@hetfield.patsoffice.com> References: <20010803160357.A1364@hetfield.patsoffice.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from neil@synthcom.com on Fri, Aug 03, 2001 at 04:09:08PM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Not necessary. The APIs are really easy. I rather like it, though it is > completely absent when dealing with mice. l;-( Ah, not so. It's just not documented. :-) I took at look at the code and came across this: >From /usr/include/SDL/SDL_events.h: SDL_MOUSEMOTION, /* Mouse moved */ SDL_MOUSEBUTTONDOWN, /* Mouse button pressed */ SDL_MOUSEBUTTONUP, /* Mouse button released */ In the same include there is the mouse motion event structure: typedef struct { Uint8 type; /* SDL_MOUSEMOTION */ Uint8 which; /* The mouse device index */ Uint8 state; /* The current button state */ Uint16 x, y; /* The X/Y coordinates of the mouse */ Sint16 xrel; /* The relative motion in the X direction */ Sint16 yrel; /* The relative motion in the Y direction */ } SDL_MouseMotionEvent; Same goes for the buttons. > Do you mean rewrite them as dynamic recompilation cores instead? Of course. Otherwise, I wouldn't have brought it up on this list. :-) Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 3 19:54:27 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA14439 for dynarec-outgoing; Fri, 3 Aug 2001 19:54:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 3 Aug 2001 20:12:24 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: It blits! In-Reply-To: <20010803163243.C1364@hetfield.patsoffice.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Ah, not so. It's just not documented. :-) I took at look at the code and > came across this: This part of SDL *is* documented, just not obviously. It's in the doc project under Events. I have a rather unique outlook on SDL now, due to my job at Loki =P John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 3 22:06:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA14543 for dynarec-outgoing; Fri, 3 Aug 2001 22:05:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 3 Aug 2001 22:23:15 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: It blits! Message-ID: <20010803222315.A3560@hetfield.patsoffice.com> References: <20010803163243.C1364@hetfield.patsoffice.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from tarquin@austin.rr.com on Fri, Aug 03, 2001 at 08:12:24PM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > This part of SDL *is* documented, just not obviously. It's in the doc > project under Events. Ah, okay, I see it now under "SDL Event Structures". Thanks for the pointer. I didn't see it right away so it was faster to just look at the source. > I have a rather unique outlook on SDL now, due to my job at Loki =P Can I be on the beta team?!?! :-) Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 3 22:14:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA14556 for dynarec-outgoing; Fri, 3 Aug 2001 22:14:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 3 Aug 2001 22:32:55 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: It blits! In-Reply-To: <20010803222315.A3560@hetfield.patsoffice.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I have a rather unique outlook on SDL now, due to my job at Loki =P > > Can I be on the beta team?!?! :-) I don't have that much power yet =( The best I can do is point you at Odin, the beta tester magic box. Head over to odin.lokigames.com if you want to take a shot at it, the F.A.K.K. 2 beta should be opening soon... I've basically spent the last 3-4 weeks banging my head against the wall with Heroes 3, THREADS SUCK TO HIGH HEAVEN. I've tracked down a few nasty leaks, some fun bits of memory corruption, and a real nasty bug in the network code... but the design is making the network code *REALLY* difficult to make threadsafe =( > Pat > -- > "You are not a beautiful and unique snowflake!" - Tyler Durden John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 3 23:15:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA14615 for dynarec-outgoing; Fri, 3 Aug 2001 23:15:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 4 Aug 01 02:32:30 -0400 Message-Id: <3.0.5.32.20010803231929.008736c0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 03 Aug 2001 23:19:29 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: It blits! In-Reply-To: References: <20010803160357.A1364@hetfield.patsoffice.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> To get things back on topic, what are we waiting for on the DR-68K stuff? > >We basically need to discuss the source/target script format. Neilg was >writing something up on it and I asked him about its status and hadn't >heard. ;-( But we need to hammer that out before we can start in. Great! I can't wait to start :) Although I still haven't written anything remotely dynarec-like, I think I have a much better understanding of how the process works. Hopefully, we won't jump into every aspect of DR68K simultaneously, and it will be more of a step-by-step process, in which case I'm sure I can contribute and learn at the same time. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 4 06:46:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA17211 for dynarec-outgoing; Sat, 4 Aug 2001 06:45:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001601c11cee$32b80740$bd247bd5@mshome.net> From: "Neil Griffiths" To: References: <20010803160357.A1364@hetfield.patsoffice.com> <3.0.5.32.20010803231929.008736c0@mailandnews.com> Subject: Re: DYNAREC: It blits! Date: Sat, 4 Aug 2001 15:03:03 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > >We basically need to discuss the source/target script format. Neilg was > >writing something up on it and I asked him about its status and hadn't > >heard. ;-( But we need to hammer that out before we can start in. I'd hammered something out... Well, a whole document in fact on how it worked and what the format was and so on, but due to a failure in the RAID system I work on (one of the 45GB drives is *totally* dead now) it's gone... Gone, gone, gone, along with everything else I didn't back up... Luckily I've backed up the REALLY important stuff, but damnit... You always lose stuff in a situation like that that is pretty much irreplacable, but you forget about it during a backup! > Great! I can't wait to start :) Although I still haven't written anything > remotely dynarec-like, I think I have a much better understanding of how > the process works. Hopefully, we won't jump into every aspect of DR68K > simultaneously, and it will be more of a step-by-step process, in which > case I'm sure I can contribute and learn at the same time. I'm not sure how it's going to work, but I suspect it will be step-by-step because we may learn things at some stages which would change other parts - and if we were developing simultaneously then the person coding that section may need to change it. Not worth it, IMO. At least, if we do use SDL, we can handle sound, audio and input and it'll work on all the platforms we care about - which makes the project even better! Oh, hang on... SDL doesn't support DOS. So people working on the DOS port will have fun. :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 4 10:29:33 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA17408 for dynarec-outgoing; Sat, 4 Aug 2001 10:29:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 4 Aug 01 13:46:06 -0400 Message-Id: <3.0.5.32.20010804103323.00875ce0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 04 Aug 2001 10:33:23 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: It blits! In-Reply-To: <001601c11cee$32b80740$bd247bd5@mshome.net> References: <20010803160357.A1364@hetfield.patsoffice.com> <3.0.5.32.20010803231929.008736c0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >At least, if we do use SDL, we can handle sound, audio and input and it'll >work on all the platforms we care about - which makes the project even >better! Oh, hang on... SDL doesn't support DOS. So people working on the DOS >port will have fun. :o I'm going to be working on the DOS port :) I'll probably have to use VESA. But I'd like Mode 0x13 support in there, too, even if it means cutting off a few lines of the display :) What about debugging? Will each port have its own debugger (with a common base set of features), or will we use some standard debugger interface? Aside from my line-oriented debugger, I've written a nice text "GUI" debugger (well, it's not really much of a GUI, but it's nice) for my Model 3 emulator, and it would be easy to port it to the 68K (in fact, I'm probably going to replace Genital's debugger with it right now.) The biggest drawback is that it's pretty dependent on text mode, and uses a little text mode library I coded up which directly manipulates the video buffer. But if possible, I'd like to add it to the DOS port anyway. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 4 11:38:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA17465 for dynarec-outgoing; Sat, 4 Aug 2001 11:38:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 4 Aug 2001 11:56:40 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: It blits! In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I've basically spent the last 3-4 weeks banging my head against the wall > with Heroes 3, THREADS SUCK TO HIGH HEAVEN. I've tracked down a few nasty > leaks, some fun bits of memory corruption, and a real nasty bug in the > network code... but the design is making the network code *REALLY* > difficult to make threadsafe =( Nah, threads aren't evil. It's what people do with threads that make them evil. I've found so many circumstances where people create threads in applications just so they can stick it on their resume. Certainly powerful when used properly, but lethal when incorrectly applied - just like C++! I remember having to debug a transport layer - stupid little serial protocol, VERY simple serial protocol, with *9* threads. We're talking about communications @ 19,200bps. Whenm active it used 30% of the CPU even when there wasn't anything transferring. The implementor didn't bother to realize that he could use overlapped I/O and callbacks, so he woke the thread up every 5ms to check for data. It was also supposed to be multithreaded so other apps could use it. Guess what? There were semaphore locks all over the code that serialized everything, and when you brought two copies of the same app up it'd crash. Nice design! -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 4 12:16:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA17504 for dynarec-outgoing; Sat, 4 Aug 2001 12:16:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 4 Aug 2001 12:34:15 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: It blits! In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Nah, threads aren't evil. It's what people do with threads that make them > evil. I've found so many circumstances where people create threads in > applications just so they can stick it on their resume. Certainly powerful > when used properly, but lethal when incorrectly applied - just like C++! Amen to that, the nastiest memory corruption problem was someone getting cute with constructors/destructors and mutexes. They made a nice little AutoMutex class, instantiate one on the stack at the beginning of the function, automagically locks and unlocks the mutex. Results in a big seg-faulting KABOOM when the object is destroyed in the function -- or one it calls. > multithreaded so other apps could use it. Guess what? There were semaphore > locks all over the code that serialized everything, and when you brought > two copies of the same app up it'd crash. Nice design! Heh, the monster I'm dealing with keeps to two threads, but it's bad enough. One thread runs a couple periodic functions, one that sucks data from the various sockets, and reconstructs that into packets, dumping them into the main message queue. If it finds serious issues, it kills the link and tries to reconnect. The other one also checks for serious socket problems and flushes each link's send queue. The other thread is the main one, and it sucks packets off of the message queue, and dumps packets directly onto the links send queues. The problem comes up when one of the suckers finds serious socket problems, and kills the link -- this can make the main thread go KABOOM if it happened to be messing with one of the links. Locking won't solve the problem, as if you grab the lock before you delete it, the main program can still block on that lock... > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base register are unsigned long to us. > Synthcom Systems, Inc. > ICQ #29402898 > > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 5 17:34:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA25580 for dynarec-outgoing; Sun, 5 Aug 2001 17:34:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 5 Aug 2001 17:52:43 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: It blits! In-Reply-To: <3.0.5.32.20010804103323.00875ce0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > What about debugging? Will each port have its own debugger (with a common > base set of features), or will we use some standard debugger interface? > Aside from my line-oriented debugger, I've written a nice text "GUI" > debugger (well, it's not really much of a GUI, but it's nice) for my Model > 3 emulator, and it would be easy to port it to the 68K (in fact, I'm > probably going to replace Genital's debugger with it right now.) The > biggest drawback is that it's pretty dependent on text mode, and uses a > little text mode library I coded up which directly manipulates the video > buffer. But if possible, I'd like to add it to the DOS port anyway. I'm all for just dumping things to a file and going and looking at the results later on. I really don't want to invest the time in developing a debugger. However, it kinda looks like you're stepping up to the plate, Bart. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 5 18:05:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA25615 for dynarec-outgoing; Sun, 5 Aug 2001 18:05:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 5 Aug 01 21:22:05 -0400 Message-Id: <3.0.5.32.20010805180909.00876100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 05 Aug 2001 18:09:09 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: It blits! In-Reply-To: References: <3.0.5.32.20010804103323.00875ce0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm all for just dumping things to a file and going and looking at the >results later on. I really don't want to invest the time in developing a >debugger. > >However, it kinda looks like you're stepping up to the plate, Bart. ;-) Well, I've already got 1 debugger ready (the line-oriented one which I developed for Genital almost a year ago), and the more visual debugger (although I only have it in i960 and PowerPC flavors at the moment, a 68K version would take me 15 minutes to come up with ;)). The line-oriented debugger should be usable in almost any environment (you basically just have to pass it a printf()-type function pointer for output and an fgets()-type function pointer for input.) I think I'll go ahead and add the visual debugger into my DOS port, just as an extra feature ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 5 18:22:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA25635 for dynarec-outgoing; Sun, 5 Aug 2001 18:22:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 5 Aug 01 21:38:54 -0400 Message-Id: <3.0.5.32.20010805182556.007c8d00@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 05 Aug 2001 18:25:56 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Memory ordering Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, Has anyone given any thought as to how we're going to handle memory ordering in DR68K? Initially, the simplest way would probably be just to have memory byte swapped, but if we're going to want to emulate other processors, this might not do. The PowerPC got me to thinking about this. Fetching double words from byte swapped memory just doesn't seem straightforward enough, because you have to rotate the result by 16. This is fine as far as the 68K is concerned, because it has a 16-bit data bus, and since 32-bit accesses are broken down into 2 consecutive word accesses, this wierdness is understood. But with the PowerPC, most memory read/writes are 32-bit, and seeing how it really is a 32-bit processor (well, I'm only talking about the 32-bit architecture subset right now), it just doesn't seem right. It kind of complicates matters... The PowerPC also has selectable endianness. Little endian mode isn't as straightforward as I thought it would be. If a misaligned write occurs, the address is effectively XORed with some value, which has the effect of writing each byte of a 32-bit write to unexpected places. Anyhow, Gwenole once mentioned a system whereby memory is stored backwards, and you subtracted the emulated processor's requested address from the limit of your memory, and performed a read/write of whatever size necessary. Gwenole mentioned this system because it allowed unaligned accesses to be made, which the 68020 supports. Perhaps a system like this would be good to use? Or, if possible, we could make address space accesses abstract enough to allow for using byte swapping for 68K emulation, and the subtraction method for different processors. Also, the PowerPC's MMU further complicates things. The MMU causes a significant amount of overhead, and if the concept could somehow be tied closely with the actual recompiling, perhaps it can be completely eliminated (this might require recompiling or patching recompiled code if the MMU context is altered.) It's a tough issue, and I'm not sure if you guys intended on dealing with it in DR68K, but it's definitely something to consider. The PowerPC (and other modern, complex processors) would need a pretty good dynamic recompiler to do it justice in emulation :) Food for thought... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 5 21:59:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA25833 for dynarec-outgoing; Sun, 5 Aug 2001 21:57:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 5 Aug 2001 22:14:19 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: DYNAREC: OT: Good description of 3d concepts Message-ID: <20010805221419.A20606@hetfield.patsoffice.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This is for Bart (at least I think it was Bart that expressed interest...) http://www.jmargolin.com/uvmath/uvmath.htm It gives a good history of the how and why of 3d graphics at Atari back in the good ol' days. It even includes a discussion about using 16 bit arithmetic since floating point wasn't an option back then. The rest of his site has some pretty cool tidbits as well. I'd like to be able to have a brain dump of this guy! :-) Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 6 07:09:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA26446 for dynarec-outgoing; Mon, 6 Aug 2001 07:08:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005c01c11e83$ebd2e2e0$0100a8c0@mshome.net> From: "Neil Griffiths" To: References: <3.0.5.32.20010805182556.007c8d00@mailandnews.com> Subject: Re: DYNAREC: Memory ordering Date: Mon, 6 Aug 2001 15:19:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Has anyone given any thought as to how we're going to handle memory > ordering in DR68K? Initially, the simplest way would probably be just to > have memory byte swapped, but if we're going to want to emulate other > processors, this might not do. Hmm. This isn't handled by our script format (the source/target) - but it should be. I mean, we handled the byte swapping in the script - but no other method... > But with the PowerPC, most memory read/writes are 32-bit, and seeing how it > really is a 32-bit processor (well, I'm only talking about the 32-bit > architecture subset right now), it just doesn't seem right. It kind of > complicates matters... The PowerPC also has selectable endianness. Little > endian mode isn't as straightforward as I thought it would be. If a > misaligned write occurs, the address is effectively XORed with some value, > which has the effect of writing each byte of a 32-bit write to unexpected > places. Hey, that could be fun - you could play "Guess where the hell your data is going"! ;) Yeah, good point. > Gwenole mentioned this system because it allowed unaligned accesses to be > made, which the 68020 supports. Perhaps a system like this would be good to > use? That's a good system with merit - definitely so. Again, it would need modifying the script format... > Or, if possible, we could make address space accesses abstract enough to > allow for using byte swapping for 68K emulation, and the subtraction method > for different processors. ...or for this method. I guess we should choose which methods we want to use and include them in the script format! > Also, the PowerPC's MMU further complicates things. The MMU causes a > significant amount of overhead, and if the concept could somehow be tied > closely with the actual recompiling, perhaps it can be completely > eliminated (this might require recompiling or patching recompiled code if > the MMU context is altered.) It's a tough issue, and I'm not sure if you > guys intended on dealing with it in DR68K, but it's definitely something to > consider. The PowerPC (and other modern, complex processors) would need a > pretty good dynamic recompiler to do it justice in emulation :) Well, I'm fairly sure that none of us were going to deal with it in DR68K, but it's something to consider as a design issue. With our source/target method, we need to consider stuff like this. > Food for thought... Mmm. Donuts. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 6 09:21:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA26552 for dynarec-outgoing; Mon, 6 Aug 2001 09:21:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 2 Jul 1959 05:47:48 -0500 (CDT) From: Graham Toal Message-Id: <195907021047.FAA26992@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: OT: Good description of 3d concepts Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > This is for Bart (at least I think it was Bart that expressed interest...) > > http://www.jmargolin.com/uvmath/uvmath.htm > > It gives a good history of the how and why of 3d graphics at Atari back in > the good ol' days. It even includes a discussion about using 16 bit > arithmetic since floating point wasn't an option back then. > > The rest of his site has some pretty cool tidbits as well. I'd like to be > able to have a brain dump of this guy! :-) You've no idea how timely that is. I've spent the weekend working on a remake of tailgunner in C from scratch, and after getting all the harness in place (text,, starfield, crosshair cursor, shields etc) I'm now ready to do the 3d transform stuff for the ships. By the way the semi-dynamic translation that I did of tailgunner some time back was extremely helpful in producing a better disassembly because it is definitive about where jump labels go... makes it much easier to read! (On topic: dynarecs could use an option to dump jump destinations, to aid disassemblers) Thanks for the URL. If anyone knows any other good URLs about how to do transformations, maths, sin/cos etc in 16-bit arithmetic, please email them to me! (a pointer to C code would be even better but I suspect the tricks I'm looking for are usually done only in assembler) G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 6 09:45:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA26583 for dynarec-outgoing; Mon, 6 Aug 2001 09:45:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 6 Aug 2001 10:04:39 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: It blits! In-Reply-To: <3.0.5.32.20010805180909.00876100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I think I'll go ahead and add the visual debugger into my DOS port, just as > an extra feature ;) I think we should make it a cardinal rule - if you do it for one environment, it has to be for all - where reasonable of course. ;-) It also makes support quite a bit easier. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 6 09:51:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA26597 for dynarec-outgoing; Mon, 6 Aug 2001 09:51:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 6 Aug 2001 10:10:46 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Memory ordering In-Reply-To: <3.0.5.32.20010805182556.007c8d00@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Has anyone given any thought as to how we're going to handle memory > ordering in DR68K? Initially, the simplest way would probably be just to > have memory byte swapped, but if we're going to want to emulate other > processors, this might not do. Hm... I haven't thought of this. Maybe we need a target layer reordering hook. The code to be recompiled should always come in in native form, though. At least it'll be consistent. > But with the PowerPC, most memory read/writes are 32-bit, and seeing how it > really is a 32-bit processor (well, I'm only talking about the 32-bit > architecture subset right now), it just doesn't seem right. It kind of > complicates matters... The PowerPC also has selectable endianness. I haven't thought much about the PowerPC or any other 32 bit native CPUs. If it's doing 32 bit stuff all the time, then it probably should be loaded in that way as well. At least we need the flexibility for it. > Little > endian mode isn't as straightforward as I thought it would be. If a > misaligned write occurs, the address is effectively XORed with some value, > which has the effect of writing each byte of a 32-bit write to unexpected > places. That's weird. But does anyone use little endian mode in the PPC? > Or, if possible, we could make address space accesses abstract enough to > allow for using byte swapping for 68K emulation, and the subtraction method > for different processors. Sounds to me like this should be a source->target specific thing. > eliminated (this might require recompiling or patching recompiled code if > the MMU context is altered.) It's a tough issue, and I'm not sure if you > guys intended on dealing with it in DR68K, but it's definitely something to > consider. The PowerPC (and other modern, complex processors) would need a > pretty good dynamic recompiler to do it justice in emulation :) Very true. MMUs are fairly nasty to emulate and creates a buttload of overhead. I didn't plan on addressing it with the 68K since everything I've seen to date (games-wise,m that is) runs in supervisor mode anyway. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 6 10:11:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA26627 for dynarec-outgoing; Mon, 6 Aug 2001 10:11:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 6 Aug 01 13:25:27 -0400 Message-Id: <3.0.5.32.20010806101206.0087a100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 06 Aug 2001 10:12:06 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: OT: Good description of 3d concepts In-Reply-To: <20010805221419.A20606@hetfield.patsoffice.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 10:14 PM 8/5/2001 -0700, you wrote: >This is for Bart (at least I think it was Bart that expressed interest...) > >http://www.jmargolin.com/uvmath/uvmath.htm Hey, cool, thanks for the link! Interesting stuff! I've already ordered Abrash's book, BTW. Should be arriving soon. I guess in a month or so, I'll actually start getting into 3D. I can't wait ;) Oh, do you know of any places I can turn to for information on how the rotation formulas work? It makes some sense to me... I did a few sketches of points and triangles and tried rotating them with the formulas, and discovered a little bit about how it works. But I think I'd like to take a look at a math book which explains it clearly. I believe you mentioned a linear algebra text book might help. I think I'll go down to the library one of these days and pick one up. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 6 10:15:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA26645 for dynarec-outgoing; Mon, 6 Aug 2001 10:15:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 6 Aug 2001 10:34:28 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: OT: Good description of 3d concepts In-Reply-To: <195907021047.FAA26992@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > By the way the semi-dynamic translation that I did of tailgunner > some time back was extremely helpful in producing a better disassembly > because it is definitive about where jump labels go... makes it much > easier to read! (On topic: dynarecs could use an option to dump jump > destinations, to aid disassemblers) Already one step ahead of you. In fact, this is practically how the thing would have to be debugged! That's how I did DRMZ80. Having a reassemblable target would be extremely cool as well and shouldn't be too hard to emit. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 6 16:53:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA27005 for dynarec-outgoing; Mon, 6 Aug 2001 16:52:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003901c11ed5$6614efc0$0100a8c0@mshome.net> From: "Neil Griffiths" To: References: <195907021047.FAA26992@gtoal.com> Subject: Re: DYNAREC: OT: Good description of 3d concepts Date: Tue, 7 Aug 2001 01:10:25 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > You've no idea how timely that is. I've spent the weekend working > on a remake of tailgunner in C from scratch, and after getting all > the harness in place (text,, starfield, crosshair cursor, shields etc) > I'm now ready to do the 3d transform stuff for the ships. Have fun! Actually, it's quite easy to do the transforms... Doing them quickly is the key! I'm building lookup tables galore. I'm glad that I don't have to worry about memory restrictions... I can sacrifice memory for speed! This is one advantage about working in Windows to DOS real-mode. It's also why I liked protected mode... > Thanks for the URL. If anyone knows any other good URLs about how > to do transformations, maths, sin/cos etc in 16-bit arithmetic, please > email them to me! (a pointer to C code would be even better but I suspect > the tricks I'm looking for are usually done only in assembler) May I advise you to look at both of Julian's last postings? In the last posting, I believe there was a link to a website (it was for Bart) which has lots of information about 3D, including everything that you mention. In the message before, a link was passed to the online version of Michael Abrash's book "Graphics Programming Black Book: Special Edition" which *CERTAINLY* has many source listings for everything you want to know - both in C and in ASM. Hope that helps! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 6 17:58:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA27062 for dynarec-outgoing; Mon, 6 Aug 2001 17:57:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 6 Aug 01 21:11:58 -0400 Message-Id: <3.0.5.32.20010806175845.0087a6b0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 06 Aug 2001 17:58:45 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Memory ordering In-Reply-To: References: <3.0.5.32.20010805182556.007c8d00@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That's weird. But does anyone use little endian mode in the PPC? I have no idea. I'm sure some weird system out there uses it. The Model 3 doesn't seem to use it... I haven't seen it activate it. I don't know about the Mac, though. But I'm assuming since they went from big endian 68K->PowerPC, they decided to stick with big endian, especially since it must help out with emulating the 68K. The only place I can think of where little endian might be useful on a Mac would be with Virtual PC, the X86 PC emulator for Macs. Doesn't Aaron Giles work at Connectix? Either he or Richard Bannister might know if Mac software ever needs to use the little endian mode. To complicate matters further, endianness is selectable for normal processor operation and for exception processing. So you could have the PowerPC configured to use big endian mode while running code normally, and have it automatically switch to little endian mode when processing exceptions (this is done by setting the "exception little endian" bit in the MSR to 1), or vice versa. I wouldn't be too concerned with run-tim endian swapping. It's a pretty exotic feature, IMHO, and I don't think we really have to pay attention to it initially. But being able to reconfigure the memory system to support native, byte-swapped, or the subtractive memory ordering system would be handy. >> eliminated (this might require recompiling or patching recompiled code if >> the MMU context is altered.) It's a tough issue, and I'm not sure if you >> guys intended on dealing with it in DR68K, but it's definitely something to >> consider. The PowerPC (and other modern, complex processors) would need a >> pretty good dynamic recompiler to do it justice in emulation :) > >Very true. MMUs are fairly nasty to emulate and creates a buttload of >overhead. I didn't plan on addressing it with the 68K since everything >I've seen to date (games-wise,m that is) runs in supervisor mode anyway. The 68000 and 68010 don't even have MMUs. Privilege mode emulation is a snap. But the PowerPC's MMU is easily as sophisticated as the X86's, I believe. I'm wondering wether it would be feasible to somehow go through every recompiled instruction each time the MMU context changes (because for some systems, it shouldn't change often at all -- this is what I'm assuming the case will be with Model 3) and replace every absolute memory reference with a new, recalculated one. It's an interesting problem, though :/ I can't really add much input yet until I figure out exactly how the Model 3 sets up the MMU. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 6 19:24:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA27138 for dynarec-outgoing; Mon, 6 Aug 2001 19:24:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 7 Aug 2001 03:40:11 +0100 (BST) From: J Brown X-Sender: brown@pani To: dynarec@dynarec.com Subject: Re: DYNAREC: Memory ordering In-Reply-To: <3.0.5.32.20010806175845.0087a6b0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Mon, 6 Aug 2001, Bart wrote: > I'm wondering wether it would be feasible to somehow go through every > recompiled instruction each time the MMU context changes (because for some > systems, it shouldn't change often at all -- this is what I'm assuming the > case will be with Model 3) and replace every absolute memory reference with > a new, recalculated one. > > It's an interesting problem, though :/ Something I thought about for ARMphetamine v2 was distributing 'TLB' entries for virtual->physical memory translations throughout recompiled code. That is to say, have a unique TLB entry for each recompiled load and store instruction, doing a page-table walk if an attempt was made to access a page in a different 4k (or whatever) block. Two or three problems with this: 1) Invalidating TLB entries becomes a pain (a linked list or something could be used, but it'd start to take an extraordinarily long time to flush the TLB after a while). Alternatively TLB entries could be 'timestamped', and invalidated lazily by bumping a counter somewhere, but that's another check per memory access. 2) Although each memory access will (probably?) only access very spatially-local data, nearby operations may also use the same page of data. Multiple lookups for each operation would be wasteful. 3) Memory-mapped I/O devices - accessing memory doesn't always mean accessing memory. Oh well. And access permissions for memory, particularly on the ARM6+, are horrendously complicated. Mostly because of (3). My current plan (just to get things working) involves just a single TLB entry containing not only virtual/physical address but also pointers to accessor functions for loading and storing data (or reading/writing VRAM, performing I/O, or whatever). Minimum cost for data accesses will be 20+ instructions, I expect - including an expensive indirect call - so it's not really ideal. 'Multi-versioning' for recompiled chunks might be beneficial. Say each chunk has a counter for the number of TLB-missing (or non-memory) accesses it does. If this value stays sufficiently low (ie, zero), a new version of the chunk could be generated which does 'raw' memory accesses instead (branching back to the pessimistic version on failure?), perhaps using something like the 'distributed TLB' described above, or perhaps with gathered 'typical usage' values hardwired straight in. Forgive me if that makes no sense, it's quite late. Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 6 20:21:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA27189 for dynarec-outgoing; Mon, 6 Aug 2001 20:21:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 6 Aug 2001 20:40:04 -0700 (PDT) From: Neil Bradley To: agiles@synthcom.com, bstern@synthcom.com, bill@synthcom.com, davew@synthcom.com, jarek@synthcom.com, jdm@synthcom.com, maxrpm@synthcom.com, val@synthcom.com, jp6beta@synthcom.com, chris@redrooffs.com, rasterlist@synthcom.com, vectorlist@synthcom.com, dynarec@dynarec.com Subject: DYNAREC: Upcoming Synthcom downtime Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm going to be taking Synthcom down for a few hours this Saturday (the 11th) for an upgrade to the latest FreeBSD 4.3. This is to streamline Synthcom's operation, update its hardware a little, put in a backup system, move dynarec.com to synthcom.com, and general annoyances that I can clean up internally. It should go fairly smoothly. I'm well prepared ahead of time and I've made backups of the system so nothing will be lost. I'll send out a reminder this Friday before it happens. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 6 22:47:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA27310 for dynarec-outgoing; Mon, 6 Aug 2001 22:47:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 7 Aug 2001 08:02:33 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: To: Subject: Re: DYNAREC: Memory ordering In-Reply-To: <3.0.5.32.20010806175845.0087a6b0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by dynarec.com id WAA27307 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi Bart, > >That's weird. But does anyone use little endian mode in the PPC? > > I have no idea. I'm sure some weird system out there uses it. > > The Model 3 doesn't seem to use it... I haven't seen it activate it. I > don't know about the Mac, though. But I'm assuming since they went from big > endian 68K->PowerPC, they decided to stick with big endian, especially > since it must help out with emulating the 68K. MacOS runs in big endian mode. The PowerPC has instructions for loads in reverse order (lrwx or similar). So either you are in big or little endian mode, you "have" to support the opposite anyway. > The only place I can think of where little endian might be useful on a Mac > would be with Virtual PC, the X86 PC emulator for Macs. Indeed, hence the huge speedup with VPC4 on G3-type processors. > I wouldn't be too concerned with run-tim endian swapping. It's a pretty > exotic feature, IMHO, and I don't think we really have to pay attention to > it initially. Actually, I don't think you would see any difference with reversed address space as long as you use slow memory read/write functions. ie. not "direct" or "real" addressing, typically, you emulate the MMU. I don't think the bottleneck is swapping in that case... If the PowerPC processor wasn't to support unaligned memory loads/stores, you could also use a variant for swapped address space. But, the fact is it does support unaligned accesses, so Reversed Address Space is the only solution if you want direct access to the memory without swapping. > But the PowerPC's MMU is easily as sophisticated as the X86's, I believe. I believe memory protections to be easily emulated without a huge overhead. I believe address translation requires a lot of work. Remember, the PPC processor supports 3 modes: real addressing (no translation), BATs, and the classic page-based translation, IIRC. Anyway, as far as MacOS emulation is concerned, we can make it run in real addressing, so no address translation is needed. This obviously applies to MacOS Y where Y < X, i.e. MacOS Classic (9.X at most). > I'm wondering wether it would be feasible to somehow go through every > recompiled instruction each time the MMU context changes (because for > some this is what I'm assuming the case will be with Model 3) and > replace every absolute memory reference with a new, recalculated one. But you would need a table anyway unless you have address translation for only one big block, isn't it ? BTW, it's you the "anonymous" emulator author ;-) Bye, Gwenolé. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 7 00:12:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA27393 for dynarec-outgoing; Tue, 7 Aug 2001 00:11:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 7 Aug 01 03:11:13 -0400 Message-Id: <3.0.5.32.20010806235743.00878cd0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 06 Aug 2001 23:57:43 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Memory ordering In-Reply-To: References: <3.0.5.32.20010806175845.0087a6b0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >MacOS runs in big endian mode. The PowerPC has instructions for loads in >reverse order (lrwx or similar). So either you are in big or little endian >mode, you "have" to support the opposite anyway. Kind of. The byte-reversing instructions are very easy to handle (STWBRX was one of the first instructions I had to emulate.) It's as simple as reversing the byte order of the data, and then writing it out as a word, or you can just write 4 consecutive bytes, starting with the LSB -- which is how I handle it, for simplicity :) Oh, BTW, I have a question: Do you know why the PowerPC uses that "backwards" numbering of bits? Wouldn't it make more sense to number them the standard way, with bit 0 as the least significant bit, instead of bit 31 (or 63 in the 64-bit implementations) as the LSB? To me, it seems like quite an inconvenience. I'm sure there must have been some concrete reasoning behind it. The only idea I can come up with right now is that since the processor is by default in big endian mode (the designers probably favored big endian), they figured the bit numbering should be reversed as well. >I believe memory protections to be easily emulated without a huge >overhead. I believe address translation requires a lot of work. Remember, >the PPC processor supports 3 modes: real addressing (no translation), >BATs, and the classic page-based translation, IIRC. Address translation can be a nightmare on the PowerPC. I took a brief look at how paging works... yuck! :) But since I haven't studied the specifics of the PowerPC's MMU yet, I'll hold off on discussing solutions on how to speed up its emulation until I really get to it. I've hit some code very early in the Virtua Fighter 3 ROM which sets up some of the BATs. Perhaps, if I'm lucky, it won't use paging, but will just use BATs... that would be very easy to handle :) BATs take precedence over paging. But paging can also be used if the BATs don't handle the requested effective address. :/ BATs are pretty simple. I can probably emulate them entirely in the MTSPR instruction. Right now, my PowerPC emulator has its memory map defined with physical addresses, but I'm sure that I could intercept BAT writes and generate a new array of effective addresses... >Anyway, as far as MacOS emulation is concerned, we can make it run in real >addressing, so no address translation is needed. This obviously applies to >MacOS Y where Y < X, i.e. MacOS Classic (9.X at most). Prior to MacOS X, only the real addressing mode was used? How was protection and virtual memory handled? >BTW, it's you the "anonymous" emulator author ;-) Yes :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 7 00:21:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA27409 for dynarec-outgoing; Tue, 7 Aug 2001 00:20:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 7 Aug 2001 00:23:19 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Memory ordering In-Reply-To: <3.0.5.32.20010806235743.00878cd0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Oh, BTW, I have a question: Do you know why the PowerPC uses that > "backwards" numbering of bits? > Wouldn't it make more sense to number them the standard way, with bit 0 as > the least significant bit, instead of bit 31 (or 63 in the 64-bit > implementations) as the LSB? Yeah, that's really stupid. Some of my network protocol references are like this. Caused MAJOR confusion. I guess it's just because Motorola had to be different. ;-( -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 7 02:00:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA27598 for dynarec-outgoing; Tue, 7 Aug 2001 01:59:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001a01c11f1f$b8f81d80$05ac2ac0@mingming> From: "Graeme Barnes" To: References: Subject: Re: DYNAREC: Memory ordering Date: Tue, 7 Aug 2001 10:02:43 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6600 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6600 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "J Brown" To: Sent: Tuesday, August 07, 2001 3:40 AM Subject: Re: DYNAREC: Memory ordering > Something I thought about for ARMphetamine v2 was distributing 'TLB' > entries for virtual->physical memory translations throughout recompiled > code. That is to say, have a unique TLB entry for each recompiled load and > store instruction, doing a page-table walk if an attempt was made to > access a page in a different 4k (or whatever) block. Two or three problems > with this: > > 1) Invalidating TLB entries becomes a pain (a linked list or something > could be used, but it'd start to take an extraordinarily long time to > flush the TLB after a while). Alternatively TLB entries could be > 'timestamped', and invalidated lazily by bumping a counter somewhere, but > that's another check per memory access. Use a small circular tlb list. Most code only touches a few pages at any one time. Flushing the TLB is then much quicker. I've not tested the optimum size but 4k entries seems OK. > 3) Memory-mapped I/O devices - accessing memory doesn't always mean > accessing memory. Oh well. And access permissions for memory, particularly > on the ARM6+, are horrendously complicated. But they only need to be calculated once when you generate the tlb entry, until that entry is purged from the tlb. > Mostly because of (3). My current plan (just to get things working) > involves just a single TLB entry containing not only virtual/physical > address but also pointers to accessor functions for loading and storing > data (or reading/writing VRAM, performing I/O, or whatever). Minimum cost > for data accesses will be 20+ instructions, I expect - including an > expensive indirect call - so it's not really ideal. With a large tlb (currently 12Mb in RedSquirrel!) you can get this down to 8 instructions (well VC++ does) per memory access on a cached page, a bit more for I/O but it doesn't really matter too much. Using a three level lookup massively reduces the tlb size but takes it up to 12 instructions. PC relative accesses in the same page can of course be done raw. > 'Multi-versioning' for recompiled chunks might be beneficial. Say each > chunk has a counter for the number of TLB-missing (or non-memory) accesses > it does. If this value stays sufficiently low (ie, zero), a new version of > the chunk could be generated which does 'raw' memory accesses instead > (branching back to the pessimistic version on failure?), perhaps using > something like the 'distributed TLB' described above, or perhaps with > gathered 'typical usage' values hardwired straight in. ick! Graeme --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 8 10:28:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA29354 for dynarec-outgoing; Wed, 8 Aug 2001 10:26:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007401c1202f$48a6d790$b32bfea9@daves> From: "David Sharp" To: References: <195907021047.FAA26992@gtoal.com> Subject: Re: DYNAREC: OT: Good description of 3d concepts Date: Wed, 8 Aug 2001 18:26:38 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Thanks for the URL. If anyone knows any other good URLs about how > to do transformations, maths, sin/cos etc in 16-bit arithmetic, please > email them to me! (a pointer to C code would be even better but I suspect > the tricks I'm looking for are usually done only in assembler) You might like to look at Computer Graphics (C version) by Hearn and Baker (publ Prentice Hall). It's one of the main books from my Computer Graphics course at Warwick and is pretty good generally and liberally sprinkled with C source. Cheers Dave --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 9 23:13:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA31241 for dynarec-outgoing; Thu, 9 Aug 2001 23:12:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 9 Aug 2001 23:16:14 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: Script goals/focus Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'd like to bring up a topic of discussion that kinda fizzled out a bit of time ago with the now infamous script that we need before we can really start filling in the pieces of a dynamic recompiler. For those who don't know, Alex Pasadyn, one who has actually written a working 34010 dynamic recompiler (he is now AWOL unfortunately) recommended very strongly and correctly that a script could be used to generate the source opcode table, the target opcode emitter, and a disassembler all from a common source. The more I looked at it the more incredible the idea. As a few have pointed out in the past, it's not exactly honed out, as we are dealing with oddball chips like the ARM that will require some tweaking to the format, but it's most of the way there. Without further delay, here's an example of how it works: The script is set up to be in 4 parts, mostly for the sake of the lexer since it'll need to switch modes depending upon the context: * Cpu Info - Gives basic information about the processor, such as instruction granularity and the name of the CPU. Probably more info later on. * Operands - Think formal parameters to a procedure. It's the arguments for a given opcode, such as "sub", "mov", and "add", etc... * Flags - A list of all flags that are supported, their names, and position in whatever flag register exists for the processor. * Opcodes - A giant list of opcodes which include the binary opcode, the opcode, argument list, flags used on input, flags altered on output, time information for regular execution, time information for branched operation (if it is a branch instruction), and if the instruction is a terminal, conditional terminal, or regular instruction. SOURCE LAYER TABLE GENERATION The utility would execute the script and spew a table for all instructions in the processor. So a "drscript -source sourcefile.c" would emit it. An example entry is as follows (for the Z80): {0x07, 0xff, OP_NORM, 0x13, 0x13, 4, 0, Z80RLCA}, // 07 - RLCA One for every instruction or class of instructions. The first field is the opcode, second is the mask for the instruction, OP_NORM/OP_TERM/OP_COND are terminal types, 0x13, and 0x13 are flags used on input and changed on output, 4 is the timing for the instruction, 0 is the branch timing (not applicable), and Z80RLCA is the procedure to call when recompilation is needed. You'll see later how this information is derived when I give details of the script operation. TARGET LAYER OPCODE GENERATION "drscript -target target.c" would emit something along the lines of (for x86 for example): OPCODE *x86GenSHLREG8IMM8(R8 e8BitReg, IMM8 e8BitImmediateValue, OPCODE *psAttach) { OPCODE *psOpcode; psAttach->psNextLink = GenOpcode(); psOpcode = psAttach->psNextLink; psOpcode->u8Opcode[0] = 0xd0; psOpcode->u8Opcode[1] = 0x40 | e8BitImmediateValue; psOpcode->u8Length = 2; } >From a simple line of script like this: 1101 0000 SS10 XXXX |SHL|S=REG8, X=IMM8||C|1 1 N So all the OPCODE emission could be used on anything that uses the script. Imagine how easy it'll be to add instructions to the script and have the emitter generate the opcode generators! Makes generating x86 emitters quite a bit easier... I imagine we'd only use this for x86 to start with, but it could easily be expanded to other CPUs. DISASSEMBLER GENERATION Based on the target layer above, you can see how a disassembler could be automatically emitted if it knows the form of all the instructions. ----------------- Okay! Script time. Here's an example: [cpuinfo] Name = x86 InstructionGranularity = 8; // CPU Info section - name of processor and basic instruction size // (minimum) [operands] IMM8 {8, numeric} REG8 {3, keys = {AL=0, CL=1, DL=2, BL=3, AH=4, CH=5, DH=6, BH = 7}} OFF16 {16, numeric, PC+2+X} REL32 {32, numeric, PC+X} CC {4, keys = {A=0x07, AE=0x03, B=0x02, BE=0x06, C=0x02, E=0x04, G=0x0f, GE=0x0d, L=0x0c, LE=0x0e, NA=0x06, NAE=0x02, NB=0x03, NBE=0x07, NC=0x03, NE=0x05, NG=0x0e, NGE=0x0c, NL=0x0d, NLE=0x0f, NO=0x01, NP=0x0b, NS=0x09, NZ=0x05, O=0x00, P=0x0a, PE=0x0a, PO=0x0b, S=0x08, Z=0x04} } # IMM8 Is 8 bits and is a numeric/immediate value # REG8 Is 3 bits and can be either numeric 3 bits or the CL/DL/BL can be # substituted inside the script # OFF16 Is 16 bits of an offset, relative to the PC + 2 # CC Condition codes that occupy 4 bits [flags] // Flags - for the "flags" field N = { 0x0080, "sign" }; C = { 0x0001, "carry" }; Z = { 0x0040, "zero" }; V = { 0x0100, "overflow" }; [instructions] // AAAAAAA | BBBB | CC | DD | EE | FF GG HH; // // A=Binary opcode itself - must be multiple of bits described in // the InstructionGranularity flag above // // B=Disassembleable opcode name // C=Argument list // D=Flags used on input // E=Flags destroyed on output // F=Regular instruction timing (nonbranched) // G=Instruction timing branched // H=T=Terminal, N=Normal, C=Conditional terminal 1100 0011 |ret||||1 1 T; // 1 Byte instruction, 1 clock, terminal 1110 1000 |clc||C|1 1 N; // 1 Byte, no flags in, uses carry, nonterminal 1110 1001 (32xJ) |jmp|J=REL32|||1 1 T; // 5 Byte, 1 clock, terminal 0000 1111 1001 CCCC 00YY Y000 |setb|C=CC,Y=REG8|||1 1 N ------------------------------------- So that's the script and the idea. If I recall correctly, there was no problem handing the target and source layers, but disassembly was kind of a pain in the ass. I'm opening the floor to discussion on this one. We really need to hone this one out right before going any farther, and we could even start some parallel development, too. Please comment! -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 9 23:32:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA31263 for dynarec-outgoing; Thu, 9 Aug 2001 23:32:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 9 Aug 2001 23:34:28 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: Script goals/focus In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, 9 Aug 2001, Neil Bradley wrote: > So that's the script and the idea. If I recall correctly, there was no > problem handing the target and source layers, but disassembly was kind of > a pain in the ass. The first question that comes to mind is how will the recompilation function specify the target opcode? More details will probably pop up some time tomorrow, but I'm sleepy right now =P > I'm opening the floor to discussion on this one. We really need to hone > this one out right before going any farther, and we could even start some > parallel development, too. Please comment! > > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base register are unsigned long to us. > Synthcom Systems, Inc. > ICQ #29402898 > > > > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 9 23:35:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA31277 for dynarec-outgoing; Thu, 9 Aug 2001 23:35:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 9 Aug 2001 23:38:35 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Script goals/focus In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > So that's the script and the idea. If I recall correctly, there was no > > problem handing the target and source layers, but disassembly was kind of > > a pain in the ass. > The first question that comes to mind is how will the recompilation > function specify the target opcode? Note that it will only emit an opcode for the target. The cover for that given opcode (which uses several target opcodes) needs to be written. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 9 23:43:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA31290 for dynarec-outgoing; Thu, 9 Aug 2001 23:43:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: tarquin@austin.rr.com Date: Thu, 9 Aug 2001 23:46:10 -0700 (PDT) X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: Script goals/focus In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, 9 Aug 2001, Neil Bradley wrote: > > The first question that comes to mind is how will the recompilation > > function specify the target opcode? > > Note that it will only emit an opcode for the target. The cover for that > given opcode (which uses several target opcodes) needs to be written. Grokked that much, it was the detail of writing the cover... n/m, looked at things a bit more closely. Few things keep nagging at the back of my mind about inefficiencies, but those are all details of the script processor... > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base register are unsigned long to us. > Synthcom Systems, Inc. > ICQ #29402898 John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 9 23:47:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA31303 for dynarec-outgoing; Thu, 9 Aug 2001 23:47:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 9 Aug 2001 23:50:22 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: DYNAREC: OPCODE structure Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I thought I'd describe the opcode structure - used for both target and source layers: #define MAX_OPCODE_SIZE 16 #define FLAG_BLOCK_BEGIN 0x00000001 // Beginning of block #define FLAG_TIMING 0x00000002 // Timing instruction #define FLAG_EMU_START 0x00000004 // Start of emulated code cover // If the EOpType != OP_NORMAL, then pvBranchAddrLink contains an emulated // processor address. So that way OPCODE structures can do an OP_JMP_xxx // or OP_CALL_xxx to a emulated address that will be fixed up later on. // This allows hardcoding of jmp instructions if the address has already // been recompiled rather than having to look it up in the transmap. It // will be up to the target layer (during the target block emit procedure) // to resolve the non OP_NORMAL instruction branches to their target // address. typedef enum { OP_NORMAL, // Normal instruction OP_JMP_BLOCK, // Jump to something in block but not // recompiled yet OP_JMP_KNOWN, // Jump to known (recompiled) addr OP_JMP_UNKNOWN, // Jump to unpredictable emulated addr OP_CALL_BLOCK, // Call to something in block but not // recompiled yet OP_CALL_KNOWN, // Call to known address OP_CALL_UNKNOWN // Call to unknown address } EOpType; typedef struct sOpStruct { UINT32 u32Flags; // See #defines of FLAG_xxx above UINT32 u32OpcodeIndex; // Index in source structure UINT32 u32EmulatedAddress; // Which emulated inst addr is this? // Only valid if FLAG_EMU_START UINT8 *pu8PhysicalAddress; // Where in RAM is this? void *pvBranchAddrLink; // Pointer to branch instruction // only eOpcodeType != OP_NORMAL struct sOpStruct *psNextLink; // Link to next instruction struct sOpStruct *psPriorLink; // Link to prior instruction EOpType eOpcodeType; // Which type of opcode is this? UINT8 u8Opcode[MAX_OPCODE_SIZE]; // Our opcode bytes themselves UINT8 u8Size; // How big is this instruction? } OPCODE; More as I think about it and it starts to gel a bit better... -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 9 23:49:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA31313 for dynarec-outgoing; Thu, 9 Aug 2001 23:49:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 9 Aug 2001 23:53:15 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Script goals/focus In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, 9 Aug 2001, Neil Bradley wrote: > > > The first question that comes to mind is how will the recompilation > > > function specify the target opcode? > > Note that it will only emit an opcode for the target. The cover for that > > given opcode (which uses several target opcodes) needs to be written. > Grokked that much, it was the detail of writing the cover... n/m, looked > at things a bit more closely. It still has holes. I just don't have the time to go plug them all up now. But I can assure that this stuff is in my head. I just need DRMZ80 as a reference on how to (and not to) do it... > Few things keep nagging at the back of my mind about inefficiencies, but > those are all details of the script processor... Yeah. The idea is to have the script processor do all the "hard" work to create an efficient set of layers. I intend on having an "Opcode allocator" that will allocate an OPCODE structure that's geared toward high speed allocation rather than using the heap management. If we have recursive recompilation, it'll be a dog if we use heap management and not static allocation of OPCODE sized structures. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 10 00:16:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA31350 for dynarec-outgoing; Fri, 10 Aug 2001 00:15:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004101c1216c$8e14d8c0$789b4ed4@menta.net> From: "Victor Moya del Barrio" To: Subject: DYNAREC: Holidays Date: Fri, 10 Aug 2001 09:17:45 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MIMEOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Good to see that there is again movement around DR68K :). In case I will leave until 20th or so. I hope i will return with a lot of interest to engage in this project and in other I have too lazy to start yet ;). Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 10 07:14:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA31849 for dynarec-outgoing; Fri, 10 Aug 2001 07:13:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 6 Jul 1959 03:26:18 -0500 (CDT) From: Graham Toal Message-Id: <195907060826.DAA13350@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Script goals/focus Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > DISASSEMBLER GENERATION > > Based on the target layer above, you can see how a disassembler could be > automatically emitted if it knows the form of all the instructions. > 1100 0011 |ret||||1 1 T; // 1 Byte instruction, 1 clock, terminal > 1110 1000 |clc||C|1 1 N; // 1 Byte, no flags in, uses carry, nonterminal > 1110 1001 (32xJ) |jmp|J=REL32|||1 1 T; // 5 Byte, 1 clock, terminal > 0000 1111 1001 CCCC 00YY Y000 |setb|C=CC,Y=REG8|||1 1 N > > So that's the script and the idea. If I recall correctly, there was no > problem handing the target and source layers, but disassembly was kind of > a pain in the ass. > > I'm opening the floor to discussion on this one. We really need to hone > this one out right before going any farther, and we could even start some > parallel development, too. Please comment! This may help with disassembly. I am assuming that the bits used to determine an opcode are ordered left-to-right (i.e there's nothing like 11 01 xx 00 -> LDY) This code builds a binary tree of bits. It's actually from a prototype of a program meant to optimise router tables into the shortest number of entries, but I think it could be adapted to building an opcode tree (particularly for awkward machines such as the ARM) relatively easily. The main change would be that "domain" becomes "opcode", the input format would have to change and any reliance on 4 bytes should go. (that's an easy one) G -- #include #include static int debug = (0!=0); typedef struct btree { struct btree *bit[2]; char *domain; } btree; void bprinttree(btree *root, int depth, char *results) { int i; if (root == NULL) { printf("Empty\n"); return; } if (root->domain != NULL) { printf("%s -> %s\n", results, root->domain); if ((root->bit[0] == NULL) && (root->bit[1] == NULL)) { return; } } for (i = 0; i <= 1; i++) { results[depth] = '0'+i; results[depth+1] = '\0'; if (root->bit[i] != NULL) bprinttree(root->bit[i], depth+1, results); } } void printtree(btree *root) { char results[33]; printf("\nNetmask tree:\n"); bprinttree(root, 0, results); } btree *newnode(void) { btree *tmp =(struct btree *) malloc(sizeof(btree)); tmp->bit[0] = NULL; tmp->bit[1] = NULL; tmp->domain = NULL; return(tmp); } void addbrule(btree **rootp, long bits, int bitsleft, char *domain) { #define root (*rootp) long firstbit = ((bits & (1L<<31L)) == 0 ? 0 : 1); if (root == NULL) root = newnode(); if (bitsleft <= 0) { root->domain = domain; /*printf(" -> %s\n", domain);*/ return; } if (debug) printf("0"+firstbit); addbrule(&root->bit[firstbit], bits << 1L, bitsleft-1L, domain); #undef root } void addrule(btree **rootp, int a, int b, int c, int d, long bits, char *domain) { printf("%0d.%0d.%0d.%0d/%0ld -> %s\n", a, b, c, d, bits, domain); if (debug) printf("Bit-tree: \""); addbrule(rootp, (((((a<<8)|b)<<8)|c)<<8)|d, bits, domain); if (debug) printf("\"\n"); } void btest(btree *root, long bits, int bitsleft, char **bestguessp) { #define bestguess (*bestguessp) int thisbit = (((bits & (1L << 31L)) == 0L) ? 0 : 1); if (root->domain != NULL) bestguess = root->domain; if (bitsleft == 0) { if (root->domain != NULL) { if (debug) printf(": %s\n", bestguess); } else { if (debug) printf("UKNOWN\n"); } return; } bitsleft -= 1; if ((root->bit[0] == NULL) && (root->bit[1] == NULL)) { if (debug) printf(": %s\n", bestguess); return; } if (root->bit[thisbit] == NULL) { if (root->domain != NULL) { if (debug) printf("%s\n", root->domain); } else { if (debug) printf("%c <-- %c is bad here\n", '0'+thisbit, '0'+thisbit); } return; } if (debug) printf("%c", '0'+thisbit); btest(root->bit[thisbit], bits<<1L, bitsleft, &bestguess); #undef bestguess } void test(btree *root, int a, int b, int c, int d) { char *bestguess = "No patterns defined"; btest(root, (((((a<<8)|b)<<8)|c)<<8)|d, 32, &bestguess); printf("%0d.%0d.%0d.%0d ... %s\n", a,b,c,d, bestguess); } int main(int argc, char **argv) { btree *root = NULL; printf("Add rules:\n"); addrule(&root, 0,0,0,0, 0, "global"); addrule(&root, 204,117,188,0, 24, "backbone"); addrule(&root, 204,117,189,0, 24, "local dialup"); addrule(&root, 127,0,0,0, 8, "localhost"); addrule(&root, 167,114,209,20, 32, "localhost"); addrule(&root, 167,114,208,0, 19, "regional"); printtree(root); printf("\nTest rules:\n"); test(root, 204,117,177,1); test(root, 204,117,188,1); test(root, 127,0,0,1); test(root, 167,114,209,20); test(root, 167,114,209,3); test(root, 255,255,255,255); test(root, 167,114,1,1); test(root, 128,113,107,1); exit(0); return(0); } --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 10 11:57:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA32124 for dynarec-outgoing; Fri, 10 Aug 2001 11:57:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 10 Aug 01 14:55:45 -0400 Message-Id: <3.0.5.32.20010810114159.008787f0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 10 Aug 2001 11:41:59 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Script goals/focus In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I got a few messages all at once last night. It seems like I get lagged a little bit. Damn mailandnews.com! :P >* Cpu Info - Gives basic information about the processor, such as >instruction granularity and the name of the CPU. Probably more info later >on. And endianness, right? >* Flags - A list of all flags that are supported, their names, and >position in whatever flag register exists for the processor. What if flags exist in more than one register? For example, the PowerPC has a condition register (CR) and some weird misc. register called XER which happens to have 1 flag in it (SO -- summary overflow.) > {0x07, 0xff, OP_NORM, 0x13, 0x13, 4, 0, Z80RLCA}, // 07 - RLCA What would a cover look like for one of the Z80's weird multi-byte opcodes? You mentioned instructions must be a multiple of the granularity specified in the script file. How will this be handled in the tables we generate? ># IMM8 Is 8 bits and is a numeric/immediate value ># REG8 Is 3 bits and can be either numeric 3 bits or the CL/DL/BL can be ># substituted inside the script ># OFF16 Is 16 bits of an offset, relative to the PC + 2 ># CC Condition codes that occupy 4 bits > >[flags] > >// Flags - for the "flags" field We're going to settle on a single commenting style, right ;) >1100 0011 |ret||||1 1 T; // 1 Byte instruction, 1 clock, terminal >1110 1000 |clc||C|1 1 N; // 1 Byte, no flags in, uses carry, nonterminal >1110 1001 (32xJ) |jmp|J=REL32|||1 1 T; // 5 Byte, 1 clock, terminal In one of your Z80 examples, the syntax was slightly different. Could the JMP REL32 be written as: 1110 1001 JJJJ JJJJ JJJJ JJJJ JJJJ JJJJ JJJJ JJJJ ? Not that I'd like to do it. But I'm assuming (32xJ) will expand to the above, right? Let me try to define a PowerPC instruction to see if I really understand this format or not :) LWZU rD,d(rA) Where rD and rA are registers, but if rA = 0 or rA = rD, the instruction form is invalid (not sure how the heck something like this would be handled, but most likely not in the script, but in some custom code.) The format of the instruction is: Bits 0-5 = 33 (decimal #.) Bits 6-10 = rD. Bits 11-15 = rA. Bits 16-31 = d. This is in the weirdo backwards bit-numbering scheme Motorola uses. 1000 01DD DDDA AAAA dddd dddd dddd dddd | lwzu | D=GPR, A=GPR, d=DISP16 | | | 3 | | N GPR=General purpose register... always a 5-bit field which corresponds to R0-R31. DISP16 is just the 16-bit displacement. It uses no flags on input, and doesn't touch any flags, so I left those fields blank. Branch timing doesn't apply, because it isn't a branch instruction. The normal timing is 3 cycles. >So that's the script and the idea. If I recall correctly, there was no >problem handing the target and source layers, but disassembly was kind of >a pain in the ass. Disassembly is going to be pretty tough. I think for some processors, it might be easy to just generate a table. But even that wouldn't be very easy. Weirdo processors like the PowerPC would further complicate things because the straightforward and correct way of writing most of the instructions is almost unreadable to humans :) In my crappy PowerPC disassembler, I replaced a lot of operand numbers with register names and what-not, to make it more readable, even though assemblers won't accept it. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 10 13:32:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA32221 for dynarec-outgoing; Fri, 10 Aug 2001 13:32:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-Originating-IP: [192.9.51.3] From: "Fred Weigel" To: dynarec@dynarec.com Subject: Re: DYNAREC: Memory ordering Date: Fri, 10 Aug 2001 16:33:33 -0400 Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 10 Aug 2001 20:33:34.0171 (UTC) FILETIME=[B9CABAB0:01C121DB] Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Actually, I use "munging" for this. The idea is to map in virtual 1MB (whatever) segments, and put guard pages around them. Virtual->physical translation is handled by the mmap() of the hosting OS. The virtual segment size is reduced, and the memory map is rebuilt IFF the virtual->physical map gets too complicated. Each translated instruction is subject to a very simple and small munge operation on its upper address bits, to locate the correct segment. (can be as little as 3 instructions, depending on target arch). Retranslation must occur on selection of a different virtual segment size, and there is a slight possibility that buggy software won't trap quite the same way. But... it's screamingly fast! On some host OSs, it is possible to put the segments EXACTELY where they should be, and compile optimal direct code (eg. running on Sparc/Solaris in 64 bit mode). Anyway, your mileage here may well vary. Fred Weigel fred_weigel@hotmail.com ----Original Message Follows---- From: "Graeme Barnes" Reply-To: dynarec@dynarec.com To: Subject: Re: DYNAREC: Memory ordering Date: Tue, 7 Aug 2001 10:02:43 +0100 ----- Original Message ----- From: "J Brown" To: Sent: Tuesday, August 07, 2001 3:40 AM Subject: Re: DYNAREC: Memory ordering > Something I thought about for ARMphetamine v2 was distributing 'TLB' > entries for virtual->physical memory translations throughout recompiled > code. That is to say, have a unique TLB entry for each recompiled load and > store instruction, doing a page-table walk if an attempt was made to > access a page in a different 4k (or whatever) block. Two or three problems > with this: > > 1) Invalidating TLB entries becomes a pain (a linked list or something > could be used, but it'd start to take an extraordinarily long time to > flush the TLB after a while). Alternatively TLB entries could be > 'timestamped', and invalidated lazily by bumping a counter somewhere, but > that's another check per memory access. Use a small circular tlb list. Most code only touches a few pages at any one time. Flushing the TLB is then much quicker. I've not tested the optimum size but 4k entries seems OK. > 3) Memory-mapped I/O devices - accessing memory doesn't always mean > accessing memory. Oh well. And access permissions for memory, particularly > on the ARM6+, are horrendously complicated. But they only need to be calculated once when you generate the tlb entry, until that entry is purged from the tlb. > Mostly because of (3). My current plan (just to get things working) > involves just a single TLB entry containing not only virtual/physical > address but also pointers to accessor functions for loading and storing > data (or reading/writing VRAM, performing I/O, or whatever). Minimum cost > for data accesses will be 20+ instructions, I expect - including an > expensive indirect call - so it's not really ideal. With a large tlb (currently 12Mb in RedSquirrel!) you can get this down to 8 instructions (well VC++ does) per memory access on a cached page, a bit more for I/O but it doesn't really matter too much. Using a three level lookup massively reduces the tlb size but takes it up to 12 instructions. PC relative accesses in the same page can of course be done raw. > 'Multi-versioning' for recompiled chunks might be beneficial. Say each > chunk has a counter for the number of TLB-missing (or non-memory) accesses > it does. If this value stays sufficiently low (ie, zero), a new version of > the chunk could be generated which does 'raw' memory accesses instead > (branching back to the pessimistic version on failure?), perhaps using > something like the 'distributed TLB' described above, or perhaps with > gathered 'typical usage' values hardwired straight in. ick! Graeme --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. _________________________________________________________________ Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 10 13:42:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA32239 for dynarec-outgoing; Fri, 10 Aug 2001 13:42:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 10 Aug 2001 13:45:45 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Script goals/focus In-Reply-To: <195907060826.DAA13350@gtoal.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I'm opening the floor to discussion on this one. We really need to hone > > this one out right before going any farther, and we could even start some > > parallel development, too. Please comment! > This may help with disassembly. I am assuming that the bits used to > determine an opcode are ordered left-to-right (i.e there's nothing like > 11 01 xx 00 -> LDY) Unfortunately, there's plenty of that sort of thing. ;-( Lots of instructions have variable bitfields in the middle that change its addressing mode and argument types. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 10 13:54:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA32257 for dynarec-outgoing; Fri, 10 Aug 2001 13:54:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 10 Aug 2001 13:57:36 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Script goals/focus In-Reply-To: <3.0.5.32.20010810114159.008787f0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I got a few messages all at once last night. It seems like I get lagged a > little bit. Damn mailandnews.com! :P Gotta get yourself an ultra-stable Dynarec.com account! > >* Cpu Info - Gives basic information about the processor, such as > >instruction granularity and the name of the CPU. Probably more info later > And endianness, right? Hm... Perhaps. Lemme ponder it a bit. I'm not sure it's needed since we're laying out the bits as they come in. We're only basing it on how the instruction actually is anyway. > >* Flags - A list of all flags that are supported, their names, and > >position in whatever flag register exists for the processor. > What if flags exist in more than one register? For example, the PowerPC has > a condition register (CR) and some weird misc. register called XER which > happens to have 1 flag in it (SO -- summary overflow.) Dear God, I didn't think of this. How about just handling the SO elsewhere? Are there other processors with such atrocities? > > {0x07, 0xff, OP_NORM, 0x13, 0x13, 4, 0, Z80RLCA}, // 07 - RLCA > What would a cover look like for one of the Z80's weird multi-byte opcodes? I forgot a byte length in this table, but it'd look something like: {0xcb07, 0xffff, OP_NORM, 0x18, 0x18, 12, 0, Z80SAR}, Alternately we could have something like this: {3, {0xcb, 0x07}, {0xff, 0xff}, OP_NORM .... Might make it a bit better. I'm certainly open to suggestions! > You mentioned instructions must be a multiple of the granularity specified > in the script file. How will this be handled in the tables we generate? The granularity only indicates how big the opcodes are in their smallest basic form. That way we don't create a 64K entry table for something that only needs 256 entries. > ># REG8 Is 3 bits and can be either numeric 3 bits or the CL/DL/BL can be > ># substituted inside the script > ># OFF16 Is 16 bits of an offset, relative to the PC + 2 > ># CC Condition codes that occupy 4 bits > >[flags] > >// Flags - for the "flags" field > We're going to settle on a single commenting style, right ;) Yeah, yeah, that's what I get for cut/pasting from two different references. > >1100 0011 |ret||||1 1 T; // 1 Byte instruction, 1 clock, terminal > >1110 1000 |clc||C|1 1 N; // 1 Byte, no flags in, uses carry, nonterminal > >1110 1001 (32xJ) |jmp|J=REL32|||1 1 T; // 5 Byte, 1 clock, terminal > In one of your Z80 examples, the syntax was slightly different. Could the > JMP REL32 be written as: > 1110 1001 JJJJ JJJJ JJJJ JJJJ JJJJ JJJJ JJJJ JJJJ ? > Not that I'd like to do it. But I'm assuming (32xJ) will expand to the > above, right? Yes. Same thing, just a more readable notation, and it'd be better to have it shorthand rather than taking up two lines for a single instruction. ;-) > Let me try to define a PowerPC instruction to see if I really understand > this format or not :) I think you've got it. > LWZU rD,d(rA) > Where rD and rA are registers, but if rA = 0 or rA = rD, the instruction > form is invalid (not sure how the heck something like this would be > handled, but most likely not in the script, but in some custom code.) Sounds like we need an invalid tag. The idea is for it to scan the script in the order it's typed, so your general cases are listed last. > The format of the instruction is: Bits 0-5 = 33 (decimal #.) Bits 6-10 = > rD. Bits 11-15 = rA. Bits 16-31 = d. This is in the weirdo backwards > bit-numbering scheme Motorola uses. > 1000 01DD DDDA AAAA dddd dddd dddd dddd | lwzu | D=GPR, A=GPR, d=DISP16 | | > | 3 | | N > GPR=General purpose register... always a 5-bit field which corresponds to > R0-R31. DISP16 is just the 16-bit displacement. Correct. > It uses no flags on input, and doesn't touch any flags, so I left those > fields blank. Branch timing doesn't apply, because it isn't a branch > instruction. The normal timing is 3 cycles. Very close, though I'd mod it to: 1000 01 (5xD) (5xA) (16xd) | lwzu | D=GPR,A=GPR(d=DISP16) |||3 0 N That is if you want the instruction to look like: lwzu D0,A0(1234h) I don't know what the data/address registers look like, but remember that the argument to the opcode needs to be as you'd want it to appear in the instruction itself. > >So that's the script and the idea. If I recall correctly, there was no > >problem handing the target and source layers, but disassembly was kind of > >a pain in the ass. > Disassembly is going to be pretty tough. Yeah, it'll be funky. > I think for some processors, it might be easy to just generate a table. I think with the approach I mentioned before with the multibyte pointers it'll be easy. It might not be fast, but for disassembly? Who cares. > Weirdo processors like the PowerPC would further complicate things because > the straightforward and correct way of writing most of the instructions is > almost unreadable to humans :) In my crappy PowerPC disassembler, I > replaced a lot of operand numbers with register names and what-not, to make > it more readable, even though assemblers won't accept it. Let's keep refining the script until we get something that'll give us the flexibility we need. It's quite a bit more work up front, but damn, if we do it right, it'll be extremely powerful! -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 10 16:39:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA32398 for dynarec-outgoing; Fri, 10 Aug 2001 16:39:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 10 Aug 01 19:39:10 -0400 Message-Id: <3.0.5.32.20010810162515.0087b100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 10 Aug 2001 16:25:15 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Script goals/focus In-Reply-To: References: <3.0.5.32.20010810114159.008787f0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Gotta get yourself an ultra-stable Dynarec.com account! That would be cool, can I get one? Aside from my poor email situation (it takes an excruciatingly long time to start downloading messages), I've also been kicked off of my trzy.overclocked.org domain for having a fraction of a ROM set up (not linked or mentioned on any of my pages, it was there temporarily for Neil G. to grab, because he wanted to help out with my Model 3 emulator.) Although, I must admit, I did break their rules, I wasn't particularly happy that they labelled my site a "warez depot" and called me a "vigilante." :P >Hm... Perhaps. Lemme ponder it a bit. I'm not sure it's needed since we're >laying out the bits as they come in. We're only basing it on how the >instruction actually is anyway. I see. Just a mix up on my part as to what the script was responsible for. The idea of the script is to help set up a framework, and not to deal with the emulation of specific instructions, right? >> >* Flags - A list of all flags that are supported, their names, and >> >position in whatever flag register exists for the processor. >> What if flags exist in more than one register? For example, the PowerPC has >> a condition register (CR) and some weird misc. register called XER which >> happens to have 1 flag in it (SO -- summary overflow.) > >Dear God, I didn't think of this. How about just handling the SO >elsewhere? Are there other processors with such atrocities? Yeah, you could probably handle it elsewhere. Actually, I just took another look at the PPC manual, and there are actually a few more flags in the XER register. But like you said, ARM might not work with the script format anyway, so we could assume PowerPC would be the same situation. Besides this anomaly, there really isn't much else to worry about... >> LWZU rD,d(rA) >> Where rD and rA are registers, but if rA = 0 or rA = rD, the instruction >> form is invalid (not sure how the heck something like this would be >> handled, but most likely not in the script, but in some custom code.). > >Sounds like we need an invalid tag. The idea is for it to scan the script >in the order it's typed, so your general cases are listed last. Wouldn't these tags have to be something like: (A != 0) && (A != D) ? They would have to be evaluated while testing an instruction for a match in the cover table, wouldn't they? >Very close, though I'd mod it to: > >1000 01 (5xD) (5xA) (16xd) | lwzu | D=GPR,A=GPR(d=DISP16) |||3 0 N > >That is if you want the instruction to look like: > > lwzu D0,A0(1234h) Oh, I see. The instruction would look like this: lwzu r5,0x1234(r6) There are 32 general purpose registers, which can be used as address or data registers. So would we be able to do: rD=GPR,d=DISP16(rA) ? The "r" would have to be printed by the disassembler, and doesn't hold any meaning in the opcode format. Alternately, the disassembler could just insert the 'r' automatically whenever we're dealing with GPRs, so we could do: D=GPR,d=DISP16(A) >I think with the approach I mentioned before with the multibyte pointers >it'll be easy. It might not be fast, but for disassembly? Who cares. Yeah, I've never seen speed problems with disassemblers. Tables do seem to add a bit of size depending on the compiler. With GCC, it almost seems as if each entry in a table adds 4 times as many bytes to the output file. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 11 09:36:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA35467 for dynarec-outgoing; Sat, 11 Aug 2001 09:34:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 11 Aug 2001 09:38:09 -0700 (PDT) From: Neil Bradley To: agiles@synthcom.com, bstern@synthcom.com, bill@synthcom.com, davew@synthcom.com, jarek@synthcom.com, jdm@synthcom.com, maxrpm@synthcom.com, phoeni@synthcom.com, val@synthcom.com, jp6beta@synthcom.com, chris@redrooffs.com, rasterlist@synthcom.com, vectorlist@synthcom.com, dynarec@dynarec.com Subject: DYNAREC: 3 Hour warning... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Synthcom's scheduled maintenance (down time!) will be around 12PM today and last approximately 3 hours. You'll know it'll be up and working when it starts responding agian. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 12 00:38:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA36156 for dynarec-outgoing; Sun, 12 Aug 2001 00:37:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: tarquin@austin.rr.com Date: Sun, 12 Aug 2001 00:40:34 -0700 (PDT) X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: DYNAREC: OT - Sweet jesus... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Just finished up a first draft of a disassembler for the nes (RE'ing SMB1...) and I came across this lovely gem that I hadn't seen earlier: ;;; 8220 LDY #$00 ; A0 00 BIT $04A0 ; 2C A0 04 LDA #$F8 ; A9 F8 Elsewhere there's a call to 8223... which happens to be in the middle of that BIT. ;;; 8223 LDY #$04 ; A0 04 LDA #$F8 ; A9 F8 Due to LDx setting NZ, the LDA #$F8 always hammers out the flags. It seems they didn't have the room to do something cleaner, like BEQ $02 to skip the second LDY... hell of a way to save a byte. Something about this construct seems to confuse the hell out of my disassembler though =/ John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 12 10:16:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA36783 for dynarec-outgoing; Sun, 12 Aug 2001 10:16:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 12 Aug 2001 10:16:36 -0700 (PDT) From: Neil Bradley To: dynarec@dynarec.com Subject: Re: DYNAREC: Script goals/focus In-Reply-To: <3.0.5.32.20010810162515.0087b100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Gotta get yourself an ultra-stable Dynarec.com account! > That would be cool, can I get one? Sure... I'll do it after I get Dynarec moved over to Synthcom. It might take me a couple of days to figure it out... > Aside from my poor email situation (it takes an excruciatingly long time to > start downloading messages), I've also been kicked off of my > trzy.overclocked.org domain for having a fraction of a ROM set up (not > linked or mentioned on any of my pages, it was there temporarily for Neil > G. to grab, because he wanted to help out with my Model 3 emulator.) I won't kick you off. ;-) > Although, I must admit, I did break their rules, I wasn't particularly > happy that they labelled my site a "warez depot" and called me a > "vigilante." :P It's kinda like labeling someone who smokes a joint the same as someone who distributes bale-sized for sale. Not quite fair. > The idea of the script is to help set up a framework, and not to deal with > the emulation of specific instructions, right? Yes, exactly. It'll be able to emit the framework needed for the recompilation, disassembly, and actual output generation. It doesn't do anything with the actual covers itself except give you the framework to plug them in. > But like you said, ARM might not work with the script format anyway, so we > could assume PowerPC would be the same situation. Besides this anomaly, > there really isn't much else to worry about... My attitude about this is that if a CPU doesn't immediately work with the script as advertised, we should make it work, and I think I was just indicating the ARM as an example. I recall a discussion with some really oddball disassembly that would have to occur for the ARM and we never worked through it. > >> LWZU rD,d(rA) > >> Where rD and rA are registers, but if rA = 0 or rA = rD, the instruction > >> form is invalid (not sure how the heck something like this would be > >> handled, but most likely not in the script, but in some custom code.). > >Sounds like we need an invalid tag. The idea is for it to scan the script > >in the order it's typed, so your general cases are listed last. > Wouldn't these tags have to be something like: (A != 0) && (A != D) ? > They would have to be evaluated while testing an instruction for a match in > the cover table, wouldn't they? No, you'd have to specify them individually and tag them as invalid before you gave your opcode information. > >1000 01 (5xD) (5xA) (16xd) | lwzu | D=GPR,A=GPR(d=DISP16) |||3 0 N > >That is if you want the instruction to look like: > > lwzu D0,A0(1234h) > The instruction would look like this: > lwzu r5,0x1234(r6) > There are 32 general purpose registers, which can be used as address or > data registers. So would we be able to do: > rD=GPR,d=DISP16(rA) Not quite right. It'll be printing out the "keys" for the fields so the proper way to do it is to define their names when the keys are defined and reference them. > The "r" would have to be printed by the disassembler, and doesn't hold any > meaning in the opcode format. Alternately, the disassembler could just > insert the 'r' automatically whenever we're dealing with GPRs, so we could do: > D=GPR,d=DISP16(A) With "A" being a list of address registers, yes, this is how to do it. It makes the whole process easier to parse - that's for sure! -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 12 10:44:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA36819 for dynarec-outgoing; Sun, 12 Aug 2001 10:44:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 12 Aug 2001 10:44:42 -0700 (PDT) From: Neil Bradley To: agiles@synthcom.com, bstern@synthcom.com, bill@synthcom.com, davew@synthcom.com, jarek@synthcom.com, jdm@synthcom.com, maxrpm@synthcom.com, phoeni@synthcom.com, val@synthcom.com, jp6beta@synthcom.com, chris@redrooffs.com, rasterlist@synthcom.com, vectorlist@synthcom.com, dynarec@dynarec.com Subject: DYNAREC: Synthcom down again today In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Well, the upgrade didn't go as planned. We ran into some snags applying the latest patch and we're going to try again today at around 1PM, so expect Synthcom to be down in the 1-5PM timeframe. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 12 11:34:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA36877 for dynarec-outgoing; Sun, 12 Aug 2001 11:34:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 12 Aug 01 14:34:53 -0400 Message-Id: <3.0.5.32.20010812112058.0087d6f0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 12 Aug 2001 11:20:58 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: OT - Sweet jesus... In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >;;; 8220 > LDY #$00 ; A0 00 > BIT $04A0 ; 2C A0 04 > LDA #$F8 ; A9 F8 > >Elsewhere there's a call to 8223... which happens to be in the middle of >that BIT. > >;;; 8223 > LDY #$04 ; A0 04 > LDA #$F8 ; A9 F8 > >Due to LDx setting NZ, the LDA #$F8 always hammers out the flags. It seems >they didn't have the room to do something cleaner, like BEQ $02 to skip >the second LDY... hell of a way to save a byte. Hehe, that's insane :) They actually couldn't spare a byte? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 12 13:09:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA36989 for dynarec-outgoing; Sun, 12 Aug 2001 13:09:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 12 Aug 2001 13:12:37 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: OT - Sweet jesus... In-Reply-To: <3.0.5.32.20010812112058.0087d6f0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Sun, 12 Aug 2001, Bart wrote: > >they didn't have the room to do something cleaner, like BEQ $02 to skip > >the second LDY... hell of a way to save a byte. > > Hehe, that's insane :) They actually couldn't spare a byte? As far as I can tell, no. There are innumerable other space saving things thrown around, some less evil than others. It likes to JMP to an INC abs/RTS pair (saves 1 byte) I think I may have found some unused bytes in the rom, there are 6 FF's at an address that doesn't seem to be referenced... but I don't think I've found every last byte of code yet. Current status: Rom size: 32768, base: 8000 RESET: 8000, NMI: 8082, IRQ: FFF0 Size: 23650 Total: 32768 %age: 72.17 That's just for identifying code/data/jumptables, not complete RE. 18 jumptables so far, ranging from 3 to 47 entries ^_^ The BIT thing caused a number of segfaults until I tweaked the analysis and output backends to deal with split instructions =P > Bart > > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 12 16:40:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA37180 for dynarec-outgoing; Sun, 12 Aug 2001 16:39:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 12 Aug 01 19:39:21 -0400 Message-Id: <3.0.5.32.20010812162525.0087d5b0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 12 Aug 2001 16:25:25 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Script goals/focus In-Reply-To: References: <3.0.5.32.20010810162515.0087b100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Sure... I'll do it after I get Dynarec moved over to Synthcom. It might >take me a couple of days to figure it out... Ok, that's cool. >Not quite right. It'll be printing out the "keys" for the fields so the >proper way to do it is to define their names when the keys are defined and >reference them. I forgot about that. I see how it works, though. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 12 21:19:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA37432 for dynarec-outgoing; Sun, 12 Aug 2001 21:18:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 12 Aug 2001 21:18:31 -0700 (PDT) From: Neil Bradley To: , , , , , , , , , , , , , Subject: DYNAREC: Synthcom up and running again In-Reply-To: Message-ID: <20010812210611.T3438-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Synthcom is back up and running under the new OS (FreeBSD 4.4 prerelease), seemingly flawlessly. The second CPU came on line, the additional storage I put in it, the dialin lines, web service, POP3, etc... all appear to be working fine. I have not yet restored FTP service - wu-ftp is a pain to configure compared to the default FTP server that comes with FreeBSD. Dialup users - the firewall is also still in place and is working as expected. I have not yet moved Dynarec.com over to Synthcom - that's coming! As a plus, Majordomo decided to start sending out administrative messages again (yipee!!) - something that no one, not even the author of Majordomo, could figure out why! Everything on Synthcom is now backed up and you'll probably notice that the system is a bit more responsive than before. I've enabled write caching on the disks. I'm going to take the machine down one last time tonight (later) to install a bunch of fans to get better airflow across the hard drives. They are getting hot enough that they can't be held or touched for any length of time, and I'd like to avoid premature failure. Let me know if you see anything weird. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 15 23:40:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA41669 for dynarec-outgoing; Wed, 15 Aug 2001 23:38:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B7B6A8D.2D246CD4@gmx.de> Date: Thu, 16 Aug 2001 08:39:09 +0200 From: Kai =?iso-8859-1?Q?Sch=FCtz?= X-Mailer: Mozilla 4.76 [en] (X11; U; Linux 2.4.1 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Memory ordering References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > > Oh, BTW, I have a question: Do you know why the PowerPC uses that > > "backwards" numbering of bits? > > Wouldn't it make more sense to number them the standard way, with bit 0 as > > the least significant bit, instead of bit 31 (or 63 in the 64-bit > > implementations) as the LSB? > > Yeah, that's really stupid. Some of my network protocol references are > like this. Caused MAJOR confusion. > > I guess it's just because Motorola had to be different. ;-( Wrong. This is because IBM had to be different !! The Power PC is derived from the IBM Power architecture (this explains the name -- Power PC architecture). IBM ovbiously has some strange ideas how to number bits, and the power pc processors inherited this. My Power-PC book (from '94) also speeks of some PCB layouts that went wrong because the designers weren't aware of this important difference in bit numbering 8-) Reminds me of the Commodore Amiga 1000 with it's mirrored printer port... -- |/ |\ai --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 18 15:47:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA47278 for dynarec-outgoing; Sat, 18 Aug 2001 15:45:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 18 Aug 01 18:46:25 -0400 Message-Id: <3.0.5.32.20010818153136.0087d8b0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 18 Aug 2001 15:31:36 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: OT: X86: Multiple PUSHes versus PUSHA Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I have a simple question about PUSH vs. PUSHA on the X86. Say I want to save EBX, ECX, EDX, ESI, EDI, and EBP, but don't need to save EAX. Which would perform better: Using PUSHA (which saves EAX, and does some fancy footwork to save EBP, but is a very small intstruction) Use a series of PUSHes (doesn't save EAX, but adds quite a bit of size) Also, if I need to do a register exchange, is XCHG the right way to go? I'm writing a run-length slice line drawing routine, and I'm extremely tight on registers (I have to save a couple of variables to the stack, setting up a 2-dword frame, and accessing the addresses with ESP directly), so the only other alternative is the triple XOR approach. But I don't think that's pairable, and it adds more instructions. Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 18 17:50:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA00252 for dynarec-outgoing; Sat, 18 Aug 2001 17:47:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 18 Aug 2001 17:48:00 -0700 (PDT) From: Neil Bradley To: Subject: DYNAREC: Moving dynarec.com... Message-ID: <20010818174634.D360-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Over the course of the next week or so, I'm going to move dynarec.com over to synthcom.com. IT'll still respond as dynarec.com but it might make things run kinda funky over the next few days. Since its usage is so low, I'm just going to Those who have dynarec.com accounts will have them moved seamlessly. You'll still be able to access dynarec.com as you have before. It'll just be on a different machine. Stay tuned... -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 18 17:52:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA00266 for dynarec-outgoing; Sat, 18 Aug 2001 17:51:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 18 Aug 2001 17:51:21 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: OT: X86: Multiple PUSHes versus PUSHA In-Reply-To: <3.0.5.32.20010818153136.0087d8b0@mailandnews.com> Message-ID: <20010818174953.N360-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Say I want to save EBX, ECX, EDX, ESI, EDI, and EBP, but don't need to save > EAX. Which would perform better: > Using PUSHA (which saves EAX, and does some fancy footwork to save EBP, but > is a very small intstruction) > Use a series of PUSHes (doesn't save EAX, but adds quite a bit of size) In that case, it sounds like a pusha will perform better. I don't know where the # of registers to save vs. an all register save but you might just want to try it to see which is better. > Also, if I need to do a register exchange, is XCHG the right way to go? Yes. > registers (I have to save a couple of variables to the stack, setting up a > 2-dword frame, and accessing the addresses with ESP directly), so the only > other alternative is the triple XOR approach. But I don't think that's > pairable, and it adds more instructions. The triple XOR approach is always slower. I don't know why people ever bothered to do something like that. The xchg instruction has always allowed one to exchange with any other register. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 19 13:58:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA01444 for dynarec-outgoing; Sun, 19 Aug 2001 13:56:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 19 Aug 01 16:57:16 -0400 Message-Id: <3.0.5.32.20010819134228.0087d460@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 19 Aug 2001 13:42:28 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Carry flag emulation in C Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, This is a pretty stupid question, but I've never really given it any thought, since I've never had to emulate a CPU with flags (the SH-2 had a general T flag, but no instructions ever did anything remotely complex with it) in a C interpreter. I was wondering how a carry flag could be emulated. I'm thinking it could be done like this for an addition instruction: L = Smallest of the 2 operands If unsigned sum Opr1 + Opr2 < L, Carry Flag = 1 else Carry Flag = 0 It seems to work, but I'm probably wrong :) Also, wouldn't the overflow flag be similar, except that overflow really has to do with signed quantites? The PowerPC manual says the overflow flag is set if the carry out of the MSB is not equal to the carry out of the MSB + 1. That sounds like it could be incorrectly worded. Did they mean the overflow flag is set if the carry does not equal the new MSB? Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 19 17:58:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA01652 for dynarec-outgoing; Sun, 19 Aug 2001 17:56:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 19 Aug 01 20:56:49 -0400 Message-Id: <3.0.5.32.20010819174204.00886810@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 19 Aug 2001 17:42:04 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Carry flag emulation in C Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The carry flag is always calculated as if you are doing a simple unsigned >add into a field that is 1 bit wider than your word. I thought so... I believe my method would work then, wouldn't it? >The reason for this is: > >neg number + neg number => neg number, with carry >pos number + pos number => pos number, no carry >neg number + larger pos number => pos number, with carry >neg number + smaller pos number => neg number, no carry >pos number + larger neg number => neg number, with carry >pos number + smaller neg number => pos number, no carry The last 2 entries of this table would cause the overflow flag to be set according to your C ^ Mresult ^ Moperand1 ^ Moperand2 logic. But they shouldn't be, because they aren't really overflow onditions. I checked the second to last entry on the X86, and +1 + -2 does not set the overflow lag, because it's not really an overflow. I gather that by "larger neg number" you meant a negative number whose absolute value is greater than the positive number we're comparing with? >The actual implementation is obviously machine dependant. If for example >you are emulating a 16-bit machine on a 32-bit machine, you just >>16 to >get the carry bit. (or >>1, eor, eor, then >>16) > >If you're using a machine whose word is the same size as the target and you >don't have access to the hardware carry or overflow flags, you have a little >more work to do. That's the problem :) I'm emulating a 32-bit CPU on a 32-bit CPU in C. In assembly, it wouldn't be a problem to handle flags... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 19 18:03:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA01669 for dynarec-outgoing; Sun, 19 Aug 2001 18:01:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 19 Aug 2001 18:01:50 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <3.0.5.32.20010819134228.0087d460@mailandnews.com> Message-ID: <20010819175921.W360-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I was wondering how a carry flag could be emulated. I'm thinking it could > be done like this for an addition instruction: > L = Smallest of the 2 operands > If unsigned sum Opr1 + Opr2 < L, Carry Flag = 1 > else Carry Flag = 0 > It seems to work, but I'm probably wrong :) It depends upon the processor, but there's an easier way: C = ((opr1 & 0x80000000) & (opr2 & 0x80000000)) >> 31); Of course that doesn't add anything together, but you don't need a runtime check to set the flags. If you're doing 8 bit arithmetic, then there are other more clever ways to do it. > Also, wouldn't the overflow flag be similar, except that overflow really > has to do with signed quantites? You had better check the PowerPC manual closely on this one... > The PowerPC manual says the overflow flag > is set if the carry out of the MSB is not equal to the carry out of the MSB > + 1. That sounds like it could be incorrectly worded. Did they mean the > overflow flag is set if the carry does not equal the new MSB? That's so damned confusing I'm not even going to speculate. But usually it's either the sign of both operands which cause a signed/unsigned overflow or an overflow from the lower part of the result into the upper part. It varies from CPU to CPU. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 19 18:28:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA01694 for dynarec-outgoing; Sun, 19 Aug 2001 18:26:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 19 Aug 01 21:26:50 -0400 Message-Id: <3.0.5.32.20010819181204.00794450@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 19 Aug 2001 18:12:04 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <20010819175921.W360-100000@beacon.synthcom.com> References: <3.0.5.32.20010819134228.0087d460@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It depends upon the processor, but there's an easier way: > > C = ((opr1 & 0x80000000) & (opr2 & 0x80000000)) >> 31); Ah, I see! That's much better :) >> The PowerPC manual says the overflow flag >> is set if the carry out of the MSB is not equal to the carry out of the MSB >> + 1. That sounds like it could be incorrectly worded. Did they mean the >> overflow flag is set if the carry does not equal the new MSB? > >That's so damned confusing I'm not even going to speculate. But usually >it's either the sign of both operands which cause a signed/unsigned >overflow or an overflow from the lower part of the result into the upper >part. It varies from CPU to CPU. Yeah, I'm not sure what the heck they mean by "msb + 1." Either it means the value of the MSB plus the number 1, or "msb" refers to the bit position. Luckily, I haven't come to any instructions which require overflow calculation just yet. But once I do, I think I'll either see if I can get a hold of some IBM POWER literature (since the PowerPC is derived from it, and maybe IBM has some better documentation), or I can try to find the PowerPC simulator someone told me about. Or better yet, I can get in touch with someone like Richard Bannister who actually works with the PowerPC regularly :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 19 18:45:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA01714 for dynarec-outgoing; Sun, 19 Aug 2001 18:43:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 19 Aug 2001 18:44:09 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <3.0.5.32.20010819181204.00794450@mailandnews.com> Message-ID: <20010819184321.X360-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Or better yet, I can get in touch with someone like Richard Bannister who > actually works with the PowerPC regularly :) Even better... contact Aaron Giles at agiles@synthcom.com. He's quite familiar with the PowerPC... he's one of the primary implementors of the Virtual Game Station for the MAC as well as an author of several PowerPC CPU emulator cores. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 20 13:42:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA02776 for dynarec-outgoing; Mon, 20 Aug 2001 13:38:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <014d01c129b8$54804be0$789b4ed4@menta.net> From: "Victor Moya del Barrio" To: References: <20010819175921.W360-100000@beacon.synthcom.com> Subject: Re: DYNAREC: Carry flag emulation in C Date: Mon, 20 Aug 2001 22:40:20 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm again here. What about dr68k on hold as usual? ;) > > I was wondering how a carry flag could be emulated. I'm thinking it could > > be done like this for an addition instruction: > > L = Smallest of the 2 operands > > If unsigned sum Opr1 + Opr2 < L, Carry Flag = 1 > > else Carry Flag = 0 > > It seems to work, but I'm probably wrong :) > > It depends upon the processor, but there's an easier way: > > C = ((opr1 & 0x80000000) & (opr2 & 0x80000000)) >> 31); > Umm ... For carry I think it is needed all the bits of both operands and addition of them. For example if bit 31 of opr1 is 0 and bit 31 of opr2 is 1 but bit 30 of opr1 and opr2 produce a carry to bit 31. In C I use an unsigned addition in a higher size than the instruction that produces the carry. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 20 13:46:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA02790 for dynarec-outgoing; Mon, 20 Aug 2001 13:43:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <015301c129b8$ff433380$789b4ed4@menta.net> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20010819134228.0087d460@mailandnews.com> <3.0.5.32.20010819181204.00794450@mailandnews.com> Subject: Re: DYNAREC: Carry flag emulation in C Date: Mon, 20 Aug 2001 22:45:07 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Luckily, I haven't come to any instructions which require overflow > calculation just yet. But once I do, I think I'll either see if I can get a > hold of some IBM POWER literature (since the PowerPC is derived from it, > and maybe IBM has some better documentation), or I can try to find the > PowerPC simulator someone told me about. > I worked with Power/PowerPC a year ago (but not a lot). I still have a couple of the books at my work ... although I don't plan to go there until September 1st ;). It was, theorically, a PowerPC translation to Dixie, but as we only had a Power2 'supercomputer' (big multicpu for scientist calculations) at hand it seems it ended as a patched/mixed Power translation. I was so unlucky to have to end the debug of it :P. > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 20 13:49:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA02799 for dynarec-outgoing; Mon, 20 Aug 2001 13:45:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 20 Aug 2001 13:46:31 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <014d01c129b8$54804be0$789b4ed4@menta.net> Message-ID: <20010820134456.J14942-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I'm again here. What about dr68k on hold as usual? ;) I was waiting to hear back from Michael about the ARM core and disassembly and no one bit. I can't do this thing by myself, ya know. ;-) The only person who responded was Bart! > > C = ((opr1 & 0x80000000) & (opr2 & 0x80000000)) >> 31); > Umm ... For carry I think it is needed all the bits of both operands and > addition of them. For example if bit 31 of opr1 is 0 and bit 31 of opr2 is 1 > but bit 30 of opr1 and opr2 produce a carry to bit 31. Then it won't matter because it cannot overflow. At least for addition, you certainly don't need it. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base register are unsigned long to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 20 14:20:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA02841 for dynarec-outgoing; Mon, 20 Aug 2001 14:18:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 20 Aug 01 17:19:00 -0400 Message-Id: <3.0.5.32.20010820140412.008823f0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 20 Aug 2001 14:04:12 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <20010820134456.J14942-100000@beacon.synthcom.com> References: <014d01c129b8$54804be0$789b4ed4@menta.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 01:46 PM 8/20/2001 -0700, you wrote: >> I'm again here. What about dr68k on hold as usual? ;) > >I was waiting to hear back from Michael about the ARM core and disassembly >and no one bit. I can't do this thing by myself, ya know. ;-) The only >person who responded was Bart! I still definitely want to do this thing! A lot of people seem to be missing. Where's Neil G.? Last I heard from him he was having some problems with his arm again (the one he broke doing Judo), and might have to undergo surgery. But that was over 2 weeks ago... And Mike? >> > C = ((opr1 & 0x80000000) & (opr2 & 0x80000000)) >> 31); >> Umm ... For carry I think it is needed all the bits of both operands and >> addition of them. For example if bit 31 of opr1 is 0 and bit 31 of opr2 is 1 >> but bit 30 of opr1 and opr2 produce a carry to bit 31. > >Then it won't matter because it cannot overflow. At least for addition, >you certainly don't need it. You're method does indeed seem to work, it makes sense too. Only the MSBs really matter. Victor mentioned just using a bigger data size to do the operations in, but I can't use 64 bit data types on a 32-bit CPU, not with GCC at any rate. I think MSVC provides an __int64 data type. I could theoretically convert the integer to some high-precision floating point format, but that's not worth the trouble :) With a 16- or 8-bit CPU, I'd definitely just do the addition in 32-bits, and check bit 16 or 8, respectively. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 20 14:33:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA02863 for dynarec-outgoing; Mon, 20 Aug 2001 14:30:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002501c129bf$c89e6280$0100a8c0@mshome.net> From: "Neil Griffiths" To: References: <014d01c129b8$54804be0$789b4ed4@menta.net> <3.0.5.32.20010820140412.008823f0@mailandnews.com> Subject: Re: DYNAREC: Carry flag emulation in C Date: Mon, 20 Aug 2001 22:33:23 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I still definitely want to do this thing! A lot of people seem to be > missing. Where's Neil G.? Last I heard from him he was having some problems > with his arm again (the one he broke doing Judo), and might have to undergo > surgery. But that was over 2 weeks ago... And Mike? I'm alive... just about. Never, ever, ever try to write a 3D engine in just under 3 weeks time with full software renderer using lighting. By god, I only just managed to implement it. I'm now half dead after having about 5 hours sleep over the whole weekend. Aargh. Anyway, now it's time to play catch up with my e-mail! Well... I may leave that until tomorrow. Ugh. Bart, I'm still waiting on the PowerPC manuals from Motorola... :-/ > With a 16- or 8-bit CPU, I'd definitely just do the addition in 32-bits, > and check bit 16 or 8, respectively. Same here. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 20 15:01:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA02894 for dynarec-outgoing; Mon, 20 Aug 2001 14:58:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 20 Aug 01 17:58:53 -0400 Message-Id: <3.0.5.32.20010820144356.00885290@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 20 Aug 2001 14:43:56 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <002501c129bf$c89e6280$0100a8c0@mshome.net> References: <014d01c129b8$54804be0$789b4ed4@menta.net> <3.0.5.32.20010820140412.008823f0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm alive... just about. Never, ever, ever try to write a 3D engine in just >under 3 weeks time with full software renderer using lighting. By god, I >only just managed to implement it. I'm now half dead after having about 5 >hours sleep over the whole weekend. Aargh. Anyway, now it's time to play >catch up with my e-mail! Well... I may leave that until tomorrow. Ugh. Congratulations on the 3D engine :) I've just begun my adventure into the world of 3D graphics. I got a hold of Abrash's book, and implemented a line drawing routine in assembly (strange thing is that I understand run-length slice line drawing much better than Bresenham's standard algorithm, and I think run-length drawing is supposed to be more "advanced.") I'm delving into polygon drawing now... Chapter 38 of Abrash's book isn't as good as the rest of the book. He just kind of slapped in a big fat listing of C code, and didn't bother to explain it well. I figure drawing triangles would be easy, but I want to be able to draw any sort of convex polygon to begin with. Once I get that nailed down, I'd probably just want to use triangles and maybe quads. >Bart, I'm still waiting on the PowerPC manuals from Motorola... :-/ Hmm, I don't remember how long it usually takes, but I think it can take up to 3 weeks. It might be longer since you're in the UK. Hopefully they'll arrive in the next couple of weeks. I haven't done much with the emulator, but I did do some work yesterday. The problem is that schematics are not likely to ever turn up. www.seuservice.com, a Sega service site, has plenty of arcade game manuals available, and they often including wiring diagrams, but these aren't complete. They don't cover the CPU and ROM boards, they just deal with the mechanical parts of arcade cabinets -- like the moving cockpits in racing games, etc. VF3 definitely does set up paging, but what's weird is that it appears to have the page table in a ROM somewhere. I think the PowerPC has to write data to the page table entries sometimes, so I'm not sure how that works out. I added a command to the emulator which produces a dump of the BAT registers, and noticed that the effective addresses they control all map to identical physical addresses, so I'm going under the assumption now that the page table also follows this convention. If that's the case, we might be able to at least get to some sort of a warning message without using anything but the basic program ROMs. The PowerPC performs address translation by simultaneously converting an effective address into 2 physical addresses. One of these physical addresses is generated through the BAT registers, the other is generated through the paging mechanism. It will only use the page address if there was no BAT hit. BAT always takes precedence over paging. If no BAT register corresponds to the effective address, it just uses the page address. I'm not sure if I mentioned any of this to you already, so forgive me if I'm rambling about something you're already familiar with. :) I also have located a RAM area. I'm not completely sure where it begins or ends, but I'm going to implement it as 64KB, since it's at least that big... (the Model 3 actually has about 8MB of general purpose RAM, I believe.) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 20 15:37:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA02940 for dynarec-outgoing; Mon, 20 Aug 2001 15:35:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005001c129c8$bbc480e0$0100a8c0@mshome.net> From: "Neil Griffiths" To: References: <014d01c129b8$54804be0$789b4ed4@menta.net> <3.0.5.32.20010820140412.008823f0@mailandnews.com> <3.0.5.32.20010820144356.00885290@mailandnews.com> Subject: Re: DYNAREC: Carry flag emulation in C Date: Mon, 20 Aug 2001 23:37:35 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Congratulations on the 3D engine :) Thanks. =) I'll upload it somewhere so people can laugh at the dire speed of it. Well, it's not too bad, but that's probably due to the low poly count in the scene I created. Roughly, though, I don't care. It's just to demonstrate I know how to implement it. I stole the idea for the pipeline from the Abrash book anyway... :) The dire speed is down to using the Z-Buffer and Gouraud shading - both of which are implemented a pixel at a time. Buggered if I could come up with a more optimal way in the allocated time! I stole Abrash's polygon edge routines too, but I had to modify them anyway to support the Z-Buffer and lighting! Everything else was written by me, but given I stole his pipeline, the code looks pretty similar anyway. I don't care. *shrugs* > I've just begun my adventure into the world of 3D graphics. I got a hold of > Abrash's book, and implemented a line drawing routine in assembly (strange > thing is that I understand run-length slice line drawing much better than > Bresenham's standard algorithm, and I think run-length drawing is supposed > to be more "advanced.") Me too. Which is how I understood it enough to modify it to support nasty things like Z-Buffering, shading and anything else that needs interpolation performed on it! > I'm delving into polygon drawing now... Chapter 38 of Abrash's book isn't > as good as the rest of the book. He just kind of slapped in a big fat > listing of C code, and didn't bother to explain it well. I agree with that one 100% - he doesn't. I've just picked up another book I've had for about a year now and also found it good - this book is "Black Art of 3D Game Programming" by Andre LaMothe. From what I've read so far, it also explains things simply - so if you want to have another resource, I can pretty much recommend that one too... > I figure drawing triangles would be easy, but I want to be able to draw any > sort of convex polygon to begin with. Once I get that nailed down, I'd > probably just want to use triangles and maybe quads. I use both quads and triangles in mine, but it can handle any convex shape. I may consider changing it to support only quads and triangles - and possibly even splitting the quad into two triangles when rendering. > Hmm, I don't remember how long it usually takes, but I think it can take up > to 3 weeks. It might be longer since you're in the UK. Hopefully they'll > arrive in the next couple of weeks. Hope so! Can't do much until I have a resource for the CPU... > I haven't done much with the emulator, but I did do some work yesterday. > The problem is that schematics are not likely to ever turn up. Hmm. Team Japump? > www.seuservice.com, a Sega service site, has plenty of arcade game manuals > available, and they often including wiring diagrams, but these aren't > complete. They don't cover the CPU and ROM boards, they just deal with the > mechanical parts of arcade cabinets -- like the moving cockpits in racing > games, etc. Yeah, that's no good to anybody... > I added a command to the emulator which produces a dump of the BAT > registers, and noticed that the effective addresses they control all map to > identical physical addresses, so I'm going under the assumption now that > the page table also follows this convention. If that's the case, we might > be able to at least get to some sort of a warning message without using > anything but the basic program ROMs. Even that would be something! > The PowerPC performs address translation by simultaneously converting an > effective address into 2 physical addresses. One of these physical > addresses is generated through the BAT registers, the other is generated > through the paging mechanism. It will only use the page address if there > was no BAT hit. BAT always takes precedence over paging. If no BAT register > corresponds to the effective address, it just uses the page address. Okay, interesting. But good to know. :) > I'm not sure if I mentioned any of this to you already, so forgive me if > I'm rambling about something you're already familiar with. :) I knew about the BAT, but even so, my memory is refreshed now. :) > I also have located a RAM area. I'm not completely sure where it begins or > ends, but I'm going to implement it as 64KB, since it's at least that > big... (the Model 3 actually has about 8MB of general purpose RAM, I believe.) I can tell this is going to be a fun project... :-I Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 21 00:50:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA03395 for dynarec-outgoing; Tue, 21 Aug 2001 00:48:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 21 Aug 2001 09:47:13 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: To: Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <3.0.5.32.20010820140412.008823f0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Mon, 20 Aug 2001, Bart wrote: > Victor mentioned just using a bigger data size to do the operations in, but > I can't use 64 bit data types on a 32-bit CPU, not with GCC at any rate. GCC can do it. That's either an unsigned long or an unsigned long long. Generally, the way to go is to make a configure script and check for sizes. AC_CHECK_SIZEOF(short, 2) AC_CHECK_SIZEOF(int, 4) AC_CHECK_SIZEOF(long, 4) AC_CHECK_SIZEOF(long long, 8) AC_CHECK_SIZEOF(void *, 4) [...] (the second parameter serves as a default value for cross-compilation) Then, in some file ("sysdeps.h" for B2) /* Data types */ typedef unsigned char uint8; typedef signed char int8; #if SIZEOF_SHORT == 2 typedef unsigned short uint16; typedef short int16; #elif SIZEOF_INT == 2 typedef unsigned int uint16; typedef int int16; #else #error "No 2 byte type, you lose." #endif #if SIZEOF_INT == 4 typedef unsigned int uint32; typedef int int32; #elif SIZEOF_LONG == 4 typedef unsigned long uint32; typedef long int32; #else #error "No 4 byte type, you lose." #endif #if SIZEOF_LONG == 8 typedef unsigned long uint64; typedef long int64; #define VAL64(a) (a ## l) #define UVAL64(a) (a ## ul) #elif SIZEOF_LONG_LONG == 8 typedef unsigned long long uint64; typedef long long int64; #define VAL64(a) (a ## LL) #define UVAL64(a) (a ## uLL) #else #error "No 8 byte type, you lose." #endif #if SIZEOF_VOID_P == 4 typedef uint32 uintptr; typedef int32 intptr; #elif SIZEOF_VOID_P == 8 typedef uint64 uintptr; typedef int64 intptr; #else #error "Unsupported size of pointer" #endif If you are lucky enough your system provide the standard header which defines the correct type, if available. Speaking of Linux, appeared with glibc-2.2, I think. The autoconf way is still better for (immediate) portability: all systems does not have the standard header yet. Bye, Gwenole. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 21 00:54:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA03408 for dynarec-outgoing; Tue, 21 Aug 2001 00:53:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 21 Aug 2001 09:51:53 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: To: Subject: Re: DYNAREC: Memory ordering In-Reply-To: <3.0.5.32.20010806235743.00878cd0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [Sorry, got some "problems" in the meantime] Hi Bart, > >Anyway, as far as MacOS emulation is concerned, we can make it run in real > >addressing, so no address translation is needed. This obviously applies to > >MacOS Y where Y < X, i.e. MacOS Classic (9.X at most). > > Prior to MacOS X, only the real addressing mode was used? How was > protection and virtual memory handled? AFAIK, Basilisk II (68k), SheepShaver and Mac-On-Linux provide enough runtime patches to MacOS so that it could run in real addressing mode. You can probably think of how you could do a similar thing for your emulator. High-Level emulation would be faster/simpler, wouldn't it ? ;-) Bye, Gwenole. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 21 01:39:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA03457 for dynarec-outgoing; Tue, 21 Aug 2001 01:37:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000001c12a1c$dc7b3f00$789b4ed4@menta.net> From: "Victor Moya del Barrio" To: References: <014d01c129b8$54804be0$789b4ed4@menta.net> <3.0.5.32.20010820140412.008823f0@mailandnews.com> <3.0.5.32.20010820144356.00885290@mailandnews.com> Subject: Re: DYNAREC: Carry flag emulation in C Date: Tue, 21 Aug 2001 09:05:56 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Bart, I'm still waiting on the PowerPC manuals from Motorola... :-/ > > Hmm, I don't remember how long it usually takes, but I think it can take up > to 3 weeks. It might be longer since you're in the UK. Hopefully they'll > arrive in the next couple of weeks. > I remember that my 68K manual took a loooong time (it was sent by ship :P). A couple of months perhaps? I just remember I almost forgot that I asked for them ... maybe is was just they didn't had printed copies. > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 21 01:43:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA03471 for dynarec-outgoing; Tue, 21 Aug 2001 01:41:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000901c12a1d$6164d1e0$789b4ed4@menta.net> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: Memory ordering Date: Tue, 21 Aug 2001 10:43:41 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You can probably think of how you could do a similar thing for your > emulator. High-Level emulation would be faster/simpler, wouldn't it ? ;-) > And I think that for arcade machines (the more reduced the number of games for the machine the better) the static approach could be even better than dynarec. And HLE could also be useful. You can get benefit from the fact that you can test carefully all the games you are going to emulate. > Bye, > Gwenole. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 21 08:27:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA03944 for dynarec-outgoing; Tue, 21 Aug 2001 08:25:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006201c12a55$fb826ca0$8a277bd5@mshome.net> From: "Neil Griffiths" To: References: <014d01c129b8$54804be0$789b4ed4@menta.net> <3.0.5.32.20010820140412.008823f0@mailandnews.com> <3.0.5.32.20010820144356.00885290@mailandnews.com> <000001c12a1c$dc7b3f00$789b4ed4@menta.net> Subject: Re: DYNAREC: Carry flag emulation in C Date: Tue, 21 Aug 2001 16:28:44 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I remember that my 68K manual took a loooong time (it was sent by ship :P). > A couple of months perhaps? I just remember I almost forgot that I asked > for them ... maybe is was just they didn't had printed copies. Urg. Ah well, I can't do anything right now anyway. But I *have* got an exam tomorrow on 3D Graphics - which is nice. It would be nice to start reading about it when I've got more time... Which is roughly on Thursday! Ah well. I guess I'll do more reading on the 68k so I'm ready to get started with DR68K. Neil's right - he can't do it by himself, so we need to organise ourselves better! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 21 22:57:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA04629 for dynarec-outgoing; Tue, 21 Aug 2001 22:55:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 22 Aug 01 01:55:58 -0400 Message-Id: <3.0.5.32.20010821224036.00883ad0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 21 Aug 2001 22:40:36 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <005001c129c8$bbc480e0$0100a8c0@mshome.net> References: <014d01c129b8$54804be0$789b4ed4@menta.net> <3.0.5.32.20010820140412.008823f0@mailandnews.com> <3.0.5.32.20010820144356.00885290@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'll upload it somewhere so people can laugh at the dire speed of it. Well, >it's not too bad, but that's probably due to the low poly count in the scene >I created. Roughly, though, I don't care. It's just to demonstrate I know >how to implement it. I stole the idea for the pipeline from the Abrash book >anyway... :) Do upload it. I want to have a look! >I stole Abrash's polygon edge routines too, but I had to modify them anyway >to support the Z-Buffer and lighting! I wrote some polygon drawing code today using Abrash's method (but I tried to keep the code my own), but it's very buggy. It can handle quads, but it gets stuck with triangles. Squares and rectangles it draws fine, but angular edges pose problems. It's really weird! I hope to figure it out soon. I understand the method, though, and that's pretty cool! >I agree with that one 100% - he doesn't. I've just picked up another book >I've had for about a year now and also found it good - this book is "Black >Art of 3D Game Programming" by Andre LaMothe. From what I've read so far, it >also explains things simply - so if you want to have another resource, I can >pretty much recommend that one too... I've read some other book my LaMothe... "Tricks of the Game Programming Gurus." I don't even know why I ever bought that book. I knew almost everything in it... I think I thought it had some Sound Blaster or polygon code in it, so I picked it up for the heck of it. But when I started reading it, I found out how awful it was. I'm hesitant about buying another of his books, but if it really does explain things, I can give it a shot :) >> I figure drawing triangles would be easy, but I want to be able to draw >any >> sort of convex polygon to begin with. Once I get that nailed down, I'd >> probably just want to use triangles and maybe quads. > >I use both quads and triangles in mine, but it can handle any convex shape. >I may consider changing it to support only quads and triangles - and >possibly even splitting the quad into two triangles when rendering. That should make for simpler code. You could probably take a much different, and easier, approach if you just want to work with triangles. Since each vertex in a triangle connects to both of the other vertices, it should make things really easy to do! >Hmm. Team Japump? I've heard of them, but don't know anything about them. I'll have a look. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 21 23:00:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA04640 for dynarec-outgoing; Tue, 21 Aug 2001 22:59:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 22 Aug 01 01:58:06 -0400 Message-Id: <3.0.5.32.20010821224248.008859a0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 21 Aug 2001 22:42:48 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Memory ordering In-Reply-To: <000901c12a1d$6164d1e0$789b4ed4@menta.net> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 10:43 AM 8/21/2001 +0200, you wrote: >> You can probably think of how you could do a similar thing for your >> emulator. High-Level emulation would be faster/simpler, wouldn't it ? ;-) >> >And I think that for arcade machines (the more reduced the number of >games for the machine the better) the static approach could be even >better than dynarec. And HLE could also be useful. You can get benefit >from the fact that you can test carefully all the games you are going to >emulate. I don't know about HLE per se, but a high level approach might work out. I thought about this even before I got my hands on VF3 ROMs. It might be possible just to figure out the effective address memory map, and I could then forget about the effective->physical address translation altogether. I know that the BAT registers are set up so that the effective addresses are identical to the physical addresses. That might be the case with paging, too, if I'm lucky :) > >> Bye, >> Gwenole. >> >Victor Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 21 23:04:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA04656 for dynarec-outgoing; Tue, 21 Aug 2001 23:02:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 22 Aug 01 02:03:00 -0400 Message-Id: <3.0.5.32.20010821224739.00886100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 21 Aug 2001 22:47:39 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: References: <3.0.5.32.20010820140412.008823f0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 09:47 AM 8/21/2001 +0200, you wrote: >On Mon, 20 Aug 2001, Bart wrote: > >> Victor mentioned just using a bigger data size to do the operations in, but >> I can't use 64 bit data types on a 32-bit CPU, not with GCC at any rate. > >GCC can do it. That's either an unsigned long or an unsigned long long. It's unsigned long long... I never new about that! Thanks! >Then, in some file ("sysdeps.h" for B2) >The autoconf way is still better for (immediate) portability: all systems >does not have the standard header yet. I haven't tried using autoconf, maybe I should, when the project gets bigger. For now, it's not very complex, and it's DOS-specific. So a plain vanilla Makefile works out well. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 22 08:27:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA05287 for dynarec-outgoing; Wed, 22 Aug 2001 08:25:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005101c12b1f$20aeed40$0100a8c0@mshome.net> From: "Neil Griffiths" To: References: <014d01c129b8$54804be0$789b4ed4@menta.net> <3.0.5.32.20010820140412.008823f0@mailandnews.com> <3.0.5.32.20010820144356.00885290@mailandnews.com> <3.0.5.32.20010821224036.00883ad0@mailandnews.com> Subject: Re: DYNAREC: Carry flag emulation in C Date: Wed, 22 Aug 2001 16:28:16 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, > Do upload it. I want to have a look! Sure, it's at http://www.dynarec.com/~neilg/3d_example.zip > I wrote some polygon drawing code today using Abrash's method (but I tried > to keep the code my own), but it's very buggy. It can handle quads, but it > gets stuck with triangles. Squares and rectangles it draws fine, but > angular edges pose problems. I'm going to start all over again, but this time for fun. I'll do it *properly* this time, where I'll have time to think about how I'm doing stuff. Should speed it up considerably. The speed is okay, but I didn't have time to implement it as well as I would have liked... > It's really weird! I hope to figure it out soon. I understand the method, > though, and that's pretty cool! I'd just use some bizarre version of the bresenham algorithm to trace from vector to vector doing all the calculations on the fly. I want to get my Z-Buffer to work properly this time around! > I've read some other book my LaMothe... "Tricks of the Game Programming > Gurus." I don't even know why I ever bought that book. I knew almost > everything in it... I think I thought it had some Sound Blaster or polygon > code in it, so I picked it up for the heck of it. But when I started > reading it, I found out how awful it was. Now I've read more of it, I take back my initial recommendation. It *does* explain things simply, but it simply isn't advanced enough. You don't actually get to learn why you should do something, you're just told that you should. For instance, a direct quote is "You won't know why you have to do this yet, but trust me, you need to". Good explanation! > I'm hesitant about buying another of his books, but if it really does > explain things, I can give it a shot :) It's simple. But I'd stick with Abrash - it covers everything you need to know except for Z-Buffering which is omitted (he's a big fan of BSP instead). Get a copy of 3D ICA (online guide to 3D) which is also very good - now THIS I will recommend. And it's free too! > That should make for simpler code. You could probably take a much > different, and easier, approach if you just want to work with triangles. > Since each vertex in a triangle connects to both of the other vertices, it > should make things really easy to do! Exactly the reason that I may do this. I'm going to do some testing with drawing some triangles and some squares, see which I can do faster. If it's the triangles (which I suspect it will be), then I will definitely do it... > I've heard of them, but don't know anything about them. I'll have a look. Perhaps they have something? It's worth asking... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 22 16:31:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA05698 for dynarec-outgoing; Wed, 22 Aug 2001 16:30:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 22 Aug 01 19:30:48 -0400 Message-Id: <3.0.5.32.20010822161526.008825c0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 22 Aug 2001 16:15:26 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <005101c12b1f$20aeed40$0100a8c0@mshome.net> References: <014d01c129b8$54804be0$789b4ed4@menta.net> <3.0.5.32.20010820140412.008823f0@mailandnews.com> <3.0.5.32.20010820144356.00885290@mailandnews.com> <3.0.5.32.20010821224036.00883ad0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Sure, it's at http://www.dynarec.com/~neilg/3d_example.zip Cool! It ran pretty slow on my system, I think because it was windowed. It worked great on my P500, though. >I'd just use some bizarre version of the bresenham algorithm to trace from >vector to vector doing all the calculations on the fly. I want to get my >Z-Buffer to work properly this time around! I think in the next chapter, which deals with optimized polygon drawing, Abrash explores the use of something closer to a real line drawing algorithm. I'll maybe try implementing my own ideas. I think a run-length algorithm might work, in respect to the Y axis. >> I've read some other book my LaMothe... "Tricks of the Game Programming >> Gurus." I don't even know why I ever bought that book. I knew almost >> everything in it... I think I thought it had some Sound Blaster or polygon >> code in it, so I picked it up for the heck of it. But when I started >> reading it, I found out how awful it was. > >Now I've read more of it, I take back my initial recommendation. It *does* >explain things simply, but it simply isn't advanced enough. You don't >actually get to learn why you should do something, you're just told that you >should. For instance, a direct quote is "You won't know why you have to do >this yet, but trust me, you need to". Good explanation! Here's a quote from his other book: "We have the rotation formulas down--how they work nobody knows, but let's write some code with them." I'm sure a lot of programmers out ther DO know how they work. Perhaps it's beyond the scope of the book to talk about it -- especially because it's intended to be a beginner's book, but by reading the book, you get the impression that the authors don't care about how things work, as long as it somehow gets the job done, plug it in! The phrase "as game programmers, we don't care about..." shows up way too much. But what's worse, on the back of the book, it says: "Gain a solid understanding of the programming techniques used for 3-D games such as Doom." Yeah, right. They talk about some really basic, and very abstract (no details) 3D stuff, but they don't even mention how to draw polygons or lines! It's ridiculous. >Exactly the reason that I may do this. I'm going to do some testing with >drawing some triangles and some squares, see which I can do faster. If it's >the triangles (which I suspect it will be), then I will definitely do it... Triangles would be better, because you have more flexibility. There are certain things that can be done with triangles which can't be done with quads (as far as modelling goes), but the reverse isn't true. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 22 17:01:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA05734 for dynarec-outgoing; Wed, 22 Aug 2001 17:00:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005d01c12b67$1026f920$0100a8c0@mshome.net> From: "Neil Griffiths" To: References: <014d01c129b8$54804be0$789b4ed4@menta.net> <3.0.5.32.20010820140412.008823f0@mailandnews.com> <3.0.5.32.20010820144356.00885290@mailandnews.com> <3.0.5.32.20010821224036.00883ad0@mailandnews.com> <3.0.5.32.20010822161526.008825c0@mailandnews.com> Subject: Re: DYNAREC: Carry flag emulation in C Date: Thu, 23 Aug 2001 01:02:58 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Cool! It ran pretty slow on my system, I think because it was windowed. It > worked great on my P500, though. It's not too bad on my slower machine here, the P5-300 (my laptop) and it races on my 1GHz Athlon. But it was so much faster before I implemented Gouraud and Z-Buffering - which required me to draw a pixel at a time. That's the reason the speed is so sucky. I was getting over 90FPS before then! Now... Well, it pushes 15, except by the house, where it pushes about 3fps! :)) I'm certain there are ways to do it faster, but I was more bothered about getting it done on time than to making it work quickly. However, I've seen other peoples and compared to what they did (enter viewpoint co-ordinates from a command-line), mine rocks! It's not like me to just get something working - I like to get it working well. But timelines kind of kick that habit square in the balls... > I think in the next chapter, which deals with optimized polygon drawing, > Abrash explores the use of something closer to a real line drawing > algorithm. I'll maybe try implementing my own ideas. > I think a run-length algorithm might work, in respect to the Y axis. That's another idea. My advice - no matter what technique you use, you need to be able to store extra data at each pixel. You'll need this if you implement shading (lighting) or Z-Buffering. I'm going to try a better Z-Buffer next time around - and then try out BSP trees. I will never, ever, try out painters. I almost did with the method I used this time, which was to Z-sort the objects, but I still used a Z-Buffer. Have you seen the nice Z-Buffer errors with the chimney on the roof of the house? :o > "We have the rotation formulas down--how they work nobody knows, but let's > write some code with them." Urgh. It's quite easy how the rotations work - it's simple trig! Even in 3D it's the same, it's just that instead of XY, you may rotate using XZ instead... At least, that's how I understand/visualise it. > I'm sure a lot of programmers out ther DO know how they work. Perhaps it's > beyond the scope of the book to talk about it -- especially because it's > intended to be a beginner's book, but by reading the book, you get the > impression that the authors don't care about how things work, as long as it > somehow gets the job done, plug it in! The phrase "as game programmers, we > don't care about..." shows up way too much. That's what I started to notice as I read more and more of the book. I mean, this book does explain the simple stuff, but the more advanced stuff is either not covered - or when it is, it's not explained but instead is shrugged off as "You don't need to know why it works, it just does". Hmm. > Yeah, right. They talk about some really basic, and very abstract (no > details) 3D stuff, but they don't even mention how to draw polygons or > lines! It's ridiculous. At least this one is better - but not by much it seems... The one thing I will say is... The source is less readable than Abrash's! It's just nowhere near as organised. I can tell why Abrash has written for Dr Dobbs and LaMothe hasn't. :o > Triangles would be better, because you have more flexibility. There are > certain things that can be done with triangles which can't be done with > quads (as far as modelling goes), but the reverse isn't true. True, so I will always support both - but if I find I can draw quads faster then I'll always use quads where I can. Though I suspect triangles will win. I'm a free man again! Exam over (had to re-take the exam as well as that assignment). Still, my own fault - I wanted to do it again... It's just not a good idea to have a broken arm! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 26 06:59:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA12475 for dynarec-outgoing; Sun, 26 Aug 2001 06:56:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 26 Aug 2001 14:59:20 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <24788074.20010826145920@dynarec.com> To: dynarec@dynarec.com Subject: DYNAREC: A couple of things... MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, Firstly, I managed to improve the speed of the old 3D engine by optimizing the draw routine. Silly old me had a linear framebuffer to play around with and didn't use the benefits of it. Drawing is now 300% faster - which is quite a speed boost IMO... :o Secondly, now that I have finished everything (sigh... again!), until I sort out work, I'm doing nothing. I want to make a start on *something* and I'd prefer to only work on one project at a time. If no one is against it, I'd prefer to start on DR68K ASAP - and to do this, we need to decide what must be done first, decide who's going to do it - and then make a start. Neil B wrote what I was going to re-write which was the CPU contexts, so I'd assume it doesn't need to be re-written again. Assuming this is the case... what's next? Thirdly... Has anyone heard from Mike at all? I haven't spoken to him in a while or seen him on this list! Finally, I've swapped to a different mailing software as Outlook Express was pissing me off too much - for instance, whenever Patrick Lawrence would send a mail to this list, the text would always appear as an attachment. I'm now using "The Bat!" and I have no idea if I've configured it properly as of yet, so if you all get this message... it's working. :o -- Best regards, Neil mailto:neilg@dynarec.com --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 26 10:19:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA12642 for dynarec-outgoing; Sun, 26 Aug 2001 10:17:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 26 Aug 01 13:18:54 -0400 Message-Id: <3.0.5.32.20010826100326.00885100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 26 Aug 2001 10:03:26 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: A couple of things... In-Reply-To: <24788074.20010826145920@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Firstly, I managed to improve the speed of the old 3D engine by >optimizing the draw routine. Silly old me had a linear framebuffer to >play around with and didn't use the benefits of it. Drawing is now >300% faster - which is quite a speed boost IMO... :o Cool! I'm still working on my 2D polygon-drawing code. It seems to be working, but I'm worried there are some slight innacuracies which might mean off-by-1 pixel errors, but it isn't always easy to detect. >Secondly, now that I have finished everything (sigh... again!), until >I sort out work, I'm doing nothing. I want to make a start on >*something* and I'd prefer to only work on one project at a time. If >no one is against it, I'd prefer to start on DR68K ASAP - and to do >this, we need to decide what must be done first, decide who's going to >do it - and then make a start. I'm pretty much free, too... And I can't wait to start ;) I think we're still going to have to work on the script format, in order to handle ARM properly. We're probably also going to have to write up a description of the script language. The examples are great, but we'll probably need a reference document containing precise information on the syntax, and most importantly, keywords (especially if we add some stuff that won't be useful for a 68K script.) >Finally, I've swapped to a different mailing software as Outlook >Express was pissing me off too much - for instance, whenever Patrick >Lawrence would send a mail to this list, the text would always appear >as an attachment. I'm now using "The Bat!" and I have no idea if I've >configured it properly as of yet, so if you all get this message... >it's working. :o "The Bat!" ? I use Eudora Light v3.0.5. I like it. There are a couple of quirks with it, but for no-hassle emailing and attachment sending/receiving, it works great. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 26 10:46:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA12670 for dynarec-outgoing; Sun, 26 Aug 2001 10:44:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000d01c12e56$d78d2060$789b4ed4@menta.net> From: "Victor Moya del Barrio" To: References: <24788074.20010826145920@dynarec.com> Subject: Re: DYNAREC: A couple of things... Date: Sun, 26 Aug 2001 19:45:03 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Firstly, I managed to improve the speed of the old 3D engine by > optimizing the draw routine. Silly old me had a linear framebuffer to > play around with and didn't use the benefits of it. Drawing is now > 300% faster - which is quite a speed boost IMO... :o > Then now should be really fast ;). > Secondly, now that I have finished everything (sigh... again!), until > I sort out work, I'm doing nothing. I want to make a start on > *something* and I'd prefer to only work on one project at a time. If > no one is against it, I'd prefer to start on DR68K ASAP - and to do > this, we need to decide what must be done first, decide who's going to > do it - and then make a start. > I'm 100% free all the next week. I'm not sure how many time I will have starting from September but I think that PhD classes (or whatever they are) don't start until later. > Neil B wrote what I was going to re-write which was the CPU contexts, > so I'd assume it doesn't need to be re-written again. Assuming this is > the case... what's next? > We are still with the script for CPU descriptions ... Well I have at hand MIPS, Power/PowerPC, Alpha, x86, m68k, Z80 and ARM (the GBA one) datasheets so when we start with them?;). As I think it seems vry hard to take into account all the specific features of all ISAs (even harder to know all of them, i just know well a couple) I would start ASAP just with one or two we know well (x86, m68k, z80 perhaps?). We could solve the problems with those, and trying to keep the idea of a generic CPU script, later write descriptions for the others and solve the problems as we would find them. I don't see very feasible to take into account all the ISAs in the world at the same time (unless we had an ISA expert asMike at full time ;) mainly because most of us doesn't know them. > Finally, I've swapped to a different mailing software as Outlook > Express was pissing me off too much - for instance, whenever Patrick > Lawrence would send a mail to this list, the text would always appear > as an attachment. I'm now using "The Bat!" and I have no idea if I've > configured it properly as of yet, so if you all get this message... > it's working. :o > Too lazy for installing nothing :). Keeping that nasty and dangerous Outlook thing. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 26 10:49:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA12683 for dynarec-outgoing; Sun, 26 Aug 2001 10:47:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 26 Aug 2001 18:50:46 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <15018674642.20010826185046@dynarec.com> To: Bart Subject: Re[2]: DYNAREC: A couple of things... In-Reply-To: <3.0.5.32.20010826100326.00885100@mailandnews.com> References: <3.0.5.32.20010826100326.00885100@mailandnews.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, B> Cool! I'm still working on my 2D polygon-drawing code. It seems to be B> working, but I'm worried there are some slight innacuracies which might B> mean off-by-1 pixel errors, but it isn't always easy to detect. With the way I coded mine, it wouldn't matter. So long as you haven't got anything dependent on 100% correct pixel placement, no-one will be able to tell. Mine was always dependent on line width - and with the remake which I'm planning to do it will probably be the same. I plan on several optimisations like sharing vertices - at the moment, each polygon has it's own vertices. This means that in a cube, I have 4 per side, making 4x6 = 24 vertices. If I share, this gets taken down to 8 - making maths routines much faster! B> I'm pretty much free, too... And I can't wait to start ;) Same here. I've wanted to start for a while but I've just had too much on my plate - and it was unfair to expect Neil B to do anything with no extra help. He has, after all, got a child now - and after this weekend of looking after my 3 year old cousin, I can understand how demanding that can be! :) B> I think we're still going to have to work on the script format, in order to B> handle ARM properly. We're probably also going to have to write up a B> description of the script language. The examples are great, but we'll B> probably need a reference document containing precise information on the B> syntax, and most importantly, keywords (especially if we add some stuff B> that won't be useful for a 68K script.) This is true. Okay, want to help me do the document? I'll go through the old mails and put together the script so that we can get something based around it. B> "The Bat!" ? Weirdly named isn't it? It looks and acts very much like Eudora but handles many accounts much differently. I'm growing to like it very much - the filtering before it downloads the messages is a very nice feature for getting rid of spam! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 26 12:23:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA12761 for dynarec-outgoing; Sun, 26 Aug 2001 12:22:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 26 Aug 01 15:23:10 -0400 Message-Id: <3.0.5.32.20010826120728.00883980@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 26 Aug 2001 12:07:28 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[2]: DYNAREC: A couple of things... In-Reply-To: <15018674642.20010826185046@dynarec.com> References: <3.0.5.32.20010826100326.00885100@mailandnews.com> <3.0.5.32.20010826100326.00885100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >With the way I coded mine, it wouldn't matter. So long as you haven't >got anything dependent on 100% correct pixel placement, no-one will be >able to tell. Mine was always dependent on line width - and with the >remake which I'm planning to do it will probably be the same. I plan on >several optimisations like sharing vertices - at the moment, each >polygon has it's own vertices. This means that in a cube, I have 4 per >side, making 4x6 = 24 vertices. If I share, this gets taken down to 8 >- making maths routines much faster! Vertex sharing? I never thought of that, but it sounds like a really good idea. >This is true. Okay, want to help me do the document? I'll go through >the old mails and put together the script so that we can get something >based around it. Sure, I'd love to help. How are we going to split up the work load in the document though? We should probably do it in ASCII plain text and decide on the sections of the document first. Then we can write some of them individually, and join them together (changing formatting details to make it look uniform.) >B> "The Bat!" ? > >Weirdly named isn't it? It looks and acts very much like Eudora but >handles many accounts much differently. I'm growing to like it very >much - the filtering before it downloads the messages is a very nice >feature for getting rid of spam! Eudora's filtering is pretty primitive, but I don't really use it -- except to filter out any emails from my sister, which go straight to the trash :) I really hate getting annoying forwards from the nonsense email lists she subscribes to! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 26 12:24:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA12767 for dynarec-outgoing; Sun, 26 Aug 2001 12:22:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 26 Aug 01 15:23:27 -0400 Message-Id: <3.0.5.32.20010826120746.00886c20@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 26 Aug 2001 12:07:46 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: A couple of things... In-Reply-To: <000d01c12e56$d78d2060$789b4ed4@menta.net> References: <24788074.20010826145920@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >We are still with the script for CPU descriptions ... Well I have at hand >MIPS, Power/PowerPC, Alpha, x86, m68k, Z80 and ARM (the >GBA one) datasheets so when we start with them?;). I've got X86, 68K, PowerPC, SuperH, i960, Z80, 6502, and ARM7TDMI (unless I deleted it) at hand :) >As I think it seems vry hard to take into account all the specific features >of all ISAs (even harder to know all of them, i just know well a couple) >I would start ASAP just with one or two we know well (x86, m68k, z80 >perhaps?). We need to take something a little more strange into account as well, like ARM. There are some ARM-experienced programmers on this list, and since I keep hearing about how unusual it is, keeping it in mind will probably help us devise a more flexible script system. >> Finally, I've swapped to a different mailing software as Outlook >> Express was pissing me off too much - for instance, whenever Patrick >> Lawrence would send a mail to this list, the text would always appear >> as an attachment. I'm now using "The Bat!" and I have no idea if I've >> configured it properly as of yet, so if you all get this message... >> it's working. :o >> >Too lazy for installing nothing :). Keeping that nasty and dangerous Outlook >thing. I've never had to use Outlook, and I pray that I never will ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 26 19:53:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA13106 for dynarec-outgoing; Sun, 26 Aug 2001 19:51:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 26 Aug 2001 19:53:25 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: A couple of things... In-Reply-To: <24788074.20010826145920@dynarec.com> Message-ID: <20010826195152.Q5924-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > *something* and I'd prefer to only work on one project at a time. If > no one is against it, I'd prefer to start on DR68K ASAP - and to do > this, we need to decide what must be done first, decide who's going to > do it - and then make a start. Agreed, but I don't believe we can start until we figure out the script format completely and absolutely, otherwise we'll be buliding an Edsel before we even start. I really wish Mike were here... ;-( He's the one who had the issues with the script in terms of disassembly. Mike? > Thirdly... Has anyone heard from Mike at all? I haven't spoken to him > in a while or seen him on this list! I've seen him on comp.emulators.misc from time to time... > Finally, I've swapped to a different mailing software as Outlook > Express was pissing me off too much - for instance, whenever Patrick > Lawrence would send a mail to this list, the text would always appear > as an attachment. I'm now using "The Bat!" and I have no idea if I've > configured it properly as of yet, so if you all get this message... > it's working. :o I'm convinced all email programs suck - except pine. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 26 20:42:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA13152 for dynarec-outgoing; Sun, 26 Aug 2001 20:40:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 26 Aug 2001 20:42:39 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: A couple of things... In-Reply-To: <3.0.5.32.20010826100326.00885100@mailandnews.com> Message-ID: <20010826203931.Y5924-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >no one is against it, I'd prefer to start on DR68K ASAP - and to do > >this, we need to decide what must be done first, decide who's going to > >do it - and then make a start. > I'm pretty much free, too... And I can't wait to start ;) > I think we're still going to have to work on the script format, in order to > handle ARM properly. Yes, I agree. For now I think we should pick a fairly diverse set of processors and write scripts for them in their entirety. That way we can figure out if the script will be flexible enough and hopefully shake out most if not all of the oddball corner cases. Sounds like the ARM is the oddest of the bunch. > We're probably also going to have to write up a > description of the script language. Neil had one of these but lost it in a HD crash. ;-( But yeah, we need one. Maybe he'll offer to write it up again. Neil? So anyway, here are my recommendations for starting CPUs: Z80 68000 ARM x86 Any others? Perhaps the best way for us to start off is to write complete scripts for each processor from the existing examples we have right now. That way we can weed out the oddball stuff first. Any takers? I can tackle the Z80... -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 26 20:43:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA13158 for dynarec-outgoing; Sun, 26 Aug 2001 20:41:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 26 Aug 2001 20:43:46 -0700 (PDT) From: Neil Bradley To: Bart Subject: Re[2]: DYNAREC: A couple of things... In-Reply-To: <15018674642.20010826185046@dynarec.com> Message-ID: <20010826204317.C5924-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > B> probably need a reference document containing precise information on the > B> syntax, and most importantly, keywords (especially if we add some stuff > B> that won't be useful for a 68K script.) > This is true. Okay, want to help me do the document? I'll go through > the old mails and put together the script so that we can get something > based around it. I can assist you with the documentation. Do you understand it well enough to take an initial stab again? -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 26 20:58:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA13194 for dynarec-outgoing; Sun, 26 Aug 2001 20:56:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 26 Aug 01 23:57:04 -0400 Message-Id: <3.0.5.32.20010826204109.0088d7b0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 26 Aug 2001 20:41:09 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: A couple of things... In-Reply-To: <20010826203931.Y5924-100000@beacon.synthcom.com> References: <3.0.5.32.20010826100326.00885100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >So anyway, here are my recommendations for starting CPUs: > >Z80 >68000 >ARM >x86 I can try writing up a PowerPC script and/or Intel i960 script. I could also do SH-2, but the SH-2 isn't really very weird at all, so there wouldn't be any point. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 26 22:16:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA13259 for dynarec-outgoing; Sun, 26 Aug 2001 22:14:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 26 Aug 2001 22:16:34 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: A couple of things... In-Reply-To: <3.0.5.32.20010826204109.0088d7b0@mailandnews.com> Message-ID: <20010826221622.E5924-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Z80 > >68000 > >ARM > >x86 > I can try writing up a PowerPC script and/or Intel i960 script. How insane is the PPC? -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 26 22:34:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA13282 for dynarec-outgoing; Sun, 26 Aug 2001 22:32:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 26 Aug 2001 22:34:23 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: A couple of things... Message-ID: <20010826223423.L16128@hetfield.patsoffice.com> References: <3.0.5.32.20010826100326.00885100@mailandnews.com> <20010826203931.Y5924-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010826203931.Y5924-100000@beacon.synthcom.com>; from neil@synthcom.com on Sun, Aug 26, 2001 at 08:42:39PM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Any others? Perhaps the best way for us to start off is to write > complete scripts for each processor from the existing examples we have > right now. That way we can weed out the oddball stuff first. Any > takers? I can tackle the Z80... I'm going to do 68xx (unless somebody else has a burning desire.) Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 26 22:36:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA13295 for dynarec-outgoing; Sun, 26 Aug 2001 22:35:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 26 Aug 2001 22:36:55 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: A couple of things... Message-ID: <20010826223655.M16128@hetfield.patsoffice.com> References: <24788074.20010826145920@dynarec.com> <20010826195152.Q5924-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010826195152.Q5924-100000@beacon.synthcom.com>; from neil@synthcom.com on Sun, Aug 26, 2001 at 07:53:25PM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Finally, I've swapped to a different mailing software as Outlook > > Express was pissing me off too much - for instance, whenever Patrick > > Lawrence would send a mail to this list, the text would always appear > > as an attachment. All "signed" messages would appear that way. Way to go Microsoft... > I'm convinced all email programs suck - except pine. ;-) mutt is way better than pine. Gnus is good too, but it's a hell of a steep learning curve (and I know what a rabid emacs hater you are, Neil.) Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 26 22:40:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA13305 for dynarec-outgoing; Sun, 26 Aug 2001 22:38:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 26 Aug 2001 22:41:01 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: A couple of things... In-Reply-To: <20010826223655.M16128@hetfield.patsoffice.com> Message-ID: <20010826224042.R5924-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I'm convinced all email programs suck - except pine. ;-) > mutt is way better than pine. Gnus is good too, but it's a hell of a > steep learning curve (and I know what a rabid emacs hater you are, Neil.) I am? Emacs is certainly easier to use than VI is... -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 26 22:41:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA13311 for dynarec-outgoing; Sun, 26 Aug 2001 22:39:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 26 Aug 2001 22:42:06 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: A couple of things... In-Reply-To: <20010826223423.L16128@hetfield.patsoffice.com> Message-ID: <20010826224104.X5924-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > complete scripts for each processor from the existing examples we have > > right now. That way we can weed out the oddball stuff first. Any > > takers? I can tackle the Z80... > I'm going to do 68xx (unless somebody else has a burning desire.) No objection, but at this point let's keep in mind that it's a dry run (or a dry hump depending upon how you want to look at it). We're bound to have to go back and revisit it since we don't have a hard spec on how the thing will actually look. But I'm sure we have enough tribal knowledge at this point to move forward. I'll start in on the Z80... -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 01:52:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA13487 for dynarec-outgoing; Mon, 27 Aug 2001 01:52:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002b01c12ed6$49bebac0$05ac2ac0@mingming> From: "Graeme Barnes" To: References: <20010826203931.Y5924-100000@beacon.synthcom.com> Subject: Re: DYNAREC: A couple of things... Date: Mon, 27 Aug 2001 09:57:22 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6600 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6600 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > So anyway, here are my recommendations for starting CPUs: > > Z80 > 68000 > ARM > x86 I can help with the ARM if someone points me at an example script. Cheers, Graeme --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 06:50:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA13877 for dynarec-outgoing; Mon, 27 Aug 2001 06:49:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002d01c12eff$72fff600$789b4ed4@menta.net> From: "Victor Moya del Barrio" To: References: <20010826221622.E5924-100000@beacon.synthcom.com> Subject: Re: DYNAREC: A couple of things... Date: Mon, 27 Aug 2001 15:52:01 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >Z80 > > >68000 > > >ARM > > >x86 > > I can try writing up a PowerPC script and/or Intel i960 script. > > How insane is the PPC? > If you want something a bit more strange why not Itanium? ;). Someone must do x86 which perhaps is one of the worst to dissasemble/decode. I think I'm begining to love fixed length ISAs :) > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 07:16:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA13909 for dynarec-outgoing; Mon, 27 Aug 2001 07:15:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 16:14:28 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: To: Subject: Re: DYNAREC: A couple of things... In-Reply-To: <002d01c12eff$72fff600$789b4ed4@menta.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Mon, 27 Aug 2001, Victor Moya del Barrio wrote: > If you want something a bit more strange why not Itanium? ;). Hmm, bundles? ;-) Register allocation is not a problem but good instruction scheduling will be... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 08:02:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA13973 for dynarec-outgoing; Mon, 27 Aug 2001 08:01:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 16:02:52 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <1769820501.20010827160252@dynarec.com> To: Patrick Lawrence Subject: Re[2]: DYNAREC: A couple of things... In-Reply-To: <20010826223655.M16128@hetfield.patsoffice.com> References: <24788074.20010826145920@dynarec.com> <20010826195152.Q5924-100000@beacon.synthcom.com> <20010826223655.M16128@hetfield.patsoffice.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, PL> All "signed" messages would appear that way. Way to go Microsoft... Yep. Ah well, not your fault - though you did help me make my decision to change. ;) The other reason was from hearing about all these VBS viruses around. I've only received one - and I don't know who from as most of my e-mail contacts are very computer-savvy, but I'd rather not take my chances. I may have run one by mistake, who knows? Actually, I received the Snow White VBS virus many times when I was working in Germany, but that never bothered me. I was running a SPARC machine with Solaris installed. :) PL> mutt is way better than pine. Gnus is good too, but it's a hell of a PL> steep learning curve (and I know what a rabid emacs hater you are, Neil.) I've never used mutt, but I have used Pine and found it okay. But I'm running a graphical OS, so I'd rather use the graphics. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 08:02:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA13960 for dynarec-outgoing; Mon, 27 Aug 2001 08:01:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 15:56:24 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <1049432633.20010827155624@dynarec.com> To: Neil Bradley Subject: Re[2]: DYNAREC: A couple of things... In-Reply-To: <20010826203931.Y5924-100000@beacon.synthcom.com> References: <20010826203931.Y5924-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----------128741631A67855" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ------------128741631A67855 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hiya, Hmm. I have to alter the scripts that this e-mail program uses. Very personal, no good at all for mailing lists! NB> Yes, I agree. For now I think we should pick a fairly diverse set of NB> processors and write scripts for them in their entirety. That way we can NB> figure out if the script will be flexible enough and hopefully shake out NB> most if not all of the oddball corner cases. Sounds like the ARM is the NB> oddest of the bunch. Okay, sounds good to me. NB> Neil had one of these but lost it in a HD crash. ;-( But yeah, we need NB> one. Maybe he'll offer to write it up again. Neil? Yep. Attached is something I've just written up quickly, it's nowhere near finished and there are a couple of things I've forgotten how they work - read the document and you'll see what I mean. I'll send the document here from now on - if it ever happens again, I won't lose it! NB> So anyway, here are my recommendations for starting CPUs: NB> Any others? Perhaps the best way for us to start off is to write complete NB> scripts for each processor from the existing examples we have right now. NB> That way we can weed out the oddball stuff first. Any takers? I can tackle NB> the Z80... Well, I'll have a go at the x86 then. I suspect it won't be too dissimilar to the Z80 though! Neil. ------------128741631A67855 Content-Type: text/plain; name="Script format.txt" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Script format.txt" VGVybWlub2xvZ3k6DQoNClBhcnNlciAtIFRoZSBzY3JpcHQgcGFyc2VyLCB3aGljaCB3aWxsIHJl YWQgaW4gdGhlIHNjcmlwdCBhbmQgc3BldyBvdXQgKGhvcGVmdWxseSkgYSB3b3JraW5nIGR5bmFy ZWMgYXQgdGhlIGVuZA0KDQoNCi0tLS0tLS0tLS0tLS0tLS0NCg0KDQpUaGUgZG9jdW1lbnQ6DQoN Ck9rYXksIHRoZSBmaXJzdCB0aGluZyB0aGF0IHdlIHdpbGwgbmVlZCB0byBrbm93IGFib3V0IHRo ZSBzY3JpcHQgaXMgdGhhdCBpdCBpcyBzcGxpdCBpbnRvIHNlY3Rpb25zLiBUaGVzZSBhcmUgdGhl IGZvbGxvd2luZzoNCg0KW2NwdWluZm9dDQpbb3BlcmFuZHNdDQpbZmxhZ3NdDQpbaW5zdHJ1Y3Rp b25zXQ0KDQpSaWdodCwgbm93IHRoYXQgd2Uga25vdyB0aGUgc2VjdGlvbnMgdGhhdCB0aGUgc2Ny aXB0IHdpbGwgYmUgdXNpbmcsIGxldCdzIGV4cGxhaW4gd2hhdCBlYWNoIHNlY3Rpb24gaXMgZm9y Lg0KDQoNCkNQVUlORk8NCj09PT09PT0NCg0KRmlyc3RseSwgdGhlIFtjcHVpbmZvXSBzZWN0aW9u IGlzIHVzZWQgZm9yIHN0b3JpbmcgYW55dGhpbmcgYWJvdXQgdGhlIENQVSB3aGljaCBpcyBwcm9i YWJseSBvZiBtb3JlIHVzZSB0byB0aGUgc2NyaXB0IHdyaXRlciB0aGFuIHRoZSBhY3R1YWwgcGFy c2VyLiBGb3IgaW5zdGFuY2UsIHNvIGZhciB0aGUgb25lIHRoaW5nIHdoaWNoIHdvdWxkIGRlZmlu aXRlbHkgYmUgc3RvcmVkIHVuZGVyIHRoaXMgc2VjdGlvbiB3b3VsZCBiZSB0aGUgbmFtZSBvZiB0 aGUgQ1BVLiBBbiBleGFtcGxlIG9mIHdoYXQgdGhpcyB3b3VsZCBsb29rIGxpa2UgZm9yIHRoZSBJ bnRlbCB4ODYgd291bGQgYmUgbGlrZSB0aGlzOg0KDQpOYW1lID0gWDg2Ow0KDQpOb3RpY2UgaG93 IHRoZSBlbmQgb2YgdGhlIGxpbmUgdXNlcyBhIHNlbWktY29sb24gKHRoZSAiOyIgY2hhcmFjdGVy KT8gVGhpcyBpcyBvdXIgdGVybWluYXRpb24gY2hhcmFjdGVyIC0gd2UgY2FuIHVzZSB0aGlzIHRv IGtub3cgd2hlcmUgdGhlIGVuZCBvZiBlYWNoIGluc3RydWN0aW9uIGlzLg0KDQpUaGUgb3RoZXIg dGhpbmcgdGhhdCB3b3VsZCBiZSBzdG9yZWQgaW4gdGhpcyBzZWN0aW9uIHdvdWxkIGJlIHRoZSBn cmFudWxhcml0eSBvZiB0aGUgaW5zdHJ1Y3Rpb25zIC0gb3IsIG1vcmUgc2ltcGx5LCB0aGUgYW1v dW50IG9mIGJpdHMgdGhhdCBvbmUgaW5zdHJ1Y3Rpb24gY29uc2lzdHMgb2YuIFN0YXlpbmcgd2l0 aCBvdXIgZXhhbXBsZSBvZiB0aGUgeDg2IENQVSwgdGhpcyBpcyA4IC0gc28gd2Ugd291bGQgcHV0 IHRoZSBmb2xsb3dpbmcgbGluZSBpbnRvIHRoZSBzY3JpcHQ6DQoNCkluc3RydWN0aW9uR3JhbnVs YXJpdHkgPSA4Ow0KDQoNCk9QRVJBTkRTDQo9PT09PT09PQ0KDQpOb3QgZW50aXJlbHkgc3VyZSBo b3cgdGhpcyB3aWxsIGJlIGltcGxlbWVudGVkIGp1c3QgeWV0Li4uDQoNCg0KRkxBR1MNCj09PT09 DQoNClRoaXMgaXMgZmFpcmx5IHNpbXBsZSBhbmQgc2hvdWxkIGNvbnRhaW4gYSBsaXN0IG9mIGZs YWdzIHRoYXQgdGhlIENQVSB1c2VzLiBOZXh0IHRvIGl0IHdpbGwgYmUgdGhlIGhleCB2YWx1ZSAo SEVMUCEgV2hhdCdzIHRoZSBoZXggdmFsdWUgZm9yIGFnYWluPykgYW5kIHRoZW4gYSBwaWVjZSBv ZiB0ZXh0IGV4cGxhaW5pbmcgd2hhdCB0aGUgZmxhZyBpcyB1c2VkIGZvci4gVGFrZW4gZnJvbSB0 aGUgeDg2IHNjcmlwdCwgaGVyZSBpcyBhbiBleGFtcGxlIG9mIHdoYXQgaXQgd291bGQgbG9vayBs aWtlOg0KDQpOID0geyAweDAwODAsICJzaWduIiB9Ow0KQyA9IHsgMHgwMDAxLCAiY2FycnkiIH07 DQpaID0geyAweDAwNDAsICJ6ZXJvIiB9Ow0KViA9IHsgMHgwMTAwLCAib3ZlcmZsb3ciIH07DQoN Cg0KSU5TVFJVQ1RJT05TDQo9PT09PT09PT09PT0NCg0KQmVmb3JlIEkgd3JpdGUgdGhpcyBzZWN0 aW9uLi4uIHRoZSBlbmRpYW4uIEhvdyBkbyB3ZSBoYW5kbGUgdGhpcz8gSSB3b3VsZCBzdWdnZXN0 IHRoYXQgd2UgaGF2ZSBhbiBleHRyYSB2YWx1ZSBpbiBbY3B1aW5mb10gY2xhaW1pbmcgdGhlIENQ VSB0byBiZSBlaXRoZXIgYmlnIG9yIGxpdHRsZSBlbmRpYW4gLSBidXQgdGhlbiB0aGlzIGNhbiBz d2FwIHdpdGggUG93ZXJQQyBDUFUncywgY2FuJ3QgaXQ/IFdlbGwuLi4gaG93IGRvIHdlIGRlY2xh cmUgdGhlIGluc3RydWN0aW9ucz8gVGhlIHJlYXNvbiBmb3IgbXkgY29uZnVzaW9uIGlzIHRoaXM6 DQoNCjAwMDAgMTExMSAgMTAwMSAwMDAwICBYWFlZIFlNTU0gfFNFVE98Uk04PVh8fHwyIDIgMDsg ICAgICAgICAgICAgIC8vIHNldG8gci9tOA0KDQpPYnZpb3VzbHkgbGl0dGxlIGVuZGlhbi4gQnV0 IGZvciBhIDY4SyBjb3JlLCB3b3VsZCB3ZSB3cml0ZSB0aGUgaW5zdHJ1Y3Rpb24gaW4gYmlnIGVu ZGlhbj8gSSBuZWVkIHRvIGtub3cgdGhpcyBiZWZvcmUgd3JpdGluZyB0aGlzIHNlY3Rpb24h ------------128741631A67855-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 08:02:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA13974 for dynarec-outgoing; Mon, 27 Aug 2001 08:01:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 16:04:13 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <169901307.20010827160413@dynarec.com> To: Neil Bradley Subject: Re[2]: DYNAREC: A couple of things... In-Reply-To: <20010826224104.X5924-100000@beacon.synthcom.com> References: <20010826224104.X5924-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com As a matter of interest, anyone gone to www.retrocade.com recently? :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 08:02:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA13965 for dynarec-outgoing; Mon, 27 Aug 2001 08:01:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 15:57:22 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <889490396.20010827155722@dynarec.com> To: Neil Bradley Subject: Re[3]: DYNAREC: A couple of things... In-Reply-To: <20010826204317.C5924-100000@beacon.synthcom.com> References: <20010826204317.C5924-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> I can assist you with the documentation. Do you understand it well enough NB> to take an initial stab again? There's a couple of things which confuse me now - I just can't remember how we do them. Take a look at the document (in the previous mail) and you'll see what I mean. :) -- Best regards, Neil mailto:neilg@dynarec.com --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 08:03:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA13981 for dynarec-outgoing; Mon, 27 Aug 2001 08:02:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 16:05:34 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <1599982624.20010827160534@dynarec.com> To: Victor Moya del Barrio Subject: Re[2]: DYNAREC: A couple of things... In-Reply-To: <002d01c12eff$72fff600$789b4ed4@menta.net> References: <20010826221622.E5924-100000@beacon.synthcom.com> <002d01c12eff$72fff600$789b4ed4@menta.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com VMdB> Someone must do x86 which perhaps is one of the worst to VMdB> dissasemble/decode. I think I'm begining to love fixed length VMdB> ISAs :) I'm mad enough to have a go at it. At least many people here understand the x86 - which has it's advantages if I get stuck! :o Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 08:26:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id IAA14019 for dynarec-outgoing; Mon, 27 Aug 2001 08:25:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 27 Aug 01 11:24:24 -0400 Message-Id: <3.0.5.32.20010827082623.008899a0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 27 Aug 2001 08:26:23 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: A couple of things... In-Reply-To: <20010826221622.E5924-100000@beacon.synthcom.com> References: <3.0.5.32.20010826204109.0088d7b0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 10:16 PM 8/26/2001 -0700, you wrote: >> >Z80 >> >68000 >> >ARM >> >x86 >> I can try writing up a PowerPC script and/or Intel i960 script. > >How insane is the PPC? Not too insane, really. Everything instruction is 32 bits wide. I guess the only real insane thing is that for a handful of the disp16(rA) addressing mode instructions, rA can be R1-R31, but if R0 is specified, the constant 0 is used, no matter what R0 contains, so you have operands that can look like: 0x1234(0), 0x1234(r1), 0x1234(r2), ... 0x1234(r31). Sometimes rA cannot equal rD, the destination register. I'm still not sure how this would be handled but it would probably need to be done outside of the script, because it really is a simple check and could be done at recompile-time. Also, the PPC has flags in 2 registers: CR and XER. CR is broken up into 8 4-bit fields. Most instructions which alter the flags will record the result in CR0 (the most significant 4 bit field.) The XER register contains the carry flag, overflow flag, and summary overflow flag, as well as 7 bits which are used by the load/store string instructions to determine how many bytes to transfer. Splitting up flags between 2 registers is something I haven't seen done before, so it's a little weird to me. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 09:19:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA14084 for dynarec-outgoing; Mon, 27 Aug 2001 09:18:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 09:20:20 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: A couple of things... In-Reply-To: <002b01c12ed6$49bebac0$05ac2ac0@mingming> Message-ID: <20010827091958.Q22680-200000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-1550463017-998929220=:22680" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-1550463017-998929220=:22680 Content-Type: TEXT/PLAIN; charset=US-ASCII > > ARM > > x86 > I can help with the ARM if someone points me at an example script. I've attached a 68k def that Mike wrote up. This is the best example so far. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --0-1550463017-998929220=:22680 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="68k.def" Content-Transfer-Encoding: BASE64 Content-ID: <20010827092020.J22680@beacon.synthcom.com> Content-Description: Content-Disposition: attachment; filename="68k.def" Ly8gQ1BVIGRlc2NyaXB0aW9uIGZpbGUgZm9yICI2OEsiDQovLyBNLkkuSy5l IDIwMDAtMDctMDkNCg0KW2NwdWluZm9dDQpOYW1lID0gNjhLOw0KSW5zdHJ1 Y3Rpb25HcmFudWxhcml0eSA9IDE2Ow0KDQpbb3BlcmFuZHNdDQpEUkVHICB7 IDMsIGtleXMgPSB7RDA9MCwgRDE9MSwgRDI9MiwgRDM9MywgRDQ9NCwgRDU9 NSwgRDY9NiwgRDc9N30gfTsNCkFSRUcgIHsgMywga2V5cyA9IHtBMD0wLCBB MT0xLCBBMj0yLCBBMz0zLCBBND00LCBBNT01LCBBNj02LCBTUD03fSB9Ow0K UkVHICAgeyA0LCBrZXlzID0ge0QwPTAsIEQxPTEsIEQyPTIsIEQzPTMsIEQ0 PTQsIEQ1PTUsIEQ2PTYsIEQ3PTcsDQogICAgICAgICAgICAgICAgICAgQTA9 OCwgQTE9OSwgQTI9MTAsIEEzPTExLCBBND0xMiwgQTU9MTMsIEE2PTE0LCBT UD0xNX0gfTsNCkNDICAgIHsgNCwga2V5cyA9IHtUPTAsIEY9MSwgSEk9Miwg TFM9MywgQ0M9NCwgQ1M9NSwgTkU9NiwgRVE9NywgVkM9OCwNCiAgICAgICAg ICAgICAgICAgICBWUz05LCBQTD0xMCwgTUk9MTEsIEdFPTEyLCBMVD0xMywg R1Q9MTQsIExFPTE1fSB9Ow0KQUJTMyAgeyAzLCBudW1lcmljfTsgIC8vIHVu c2lnbmVkIDMgYml0IHZhbHVlDQpBQlM0ICB7IDQsIG51bWVyaWN9OyAgLy8g dW5zaWduZWQgNCBiaXQgdmFsdWUNCkFCUzggIHsgOCwgbnVtZXJpY307ICAv LyB1bnNpZ25lZCA4IGJpdCB2YWx1ZQ0KQUJTMTYgezE2LCBudW1lcmljfTsg IC8vIHVuc2lnbmVkIDE2IGJpdCB2YWx1ZQ0KQUJTMzIgezMyLCBudW1lcmlj fTsgIC8vIHVuc2lnbmVkIDMyIGJpdCB2YWx1ZQ0KUkVMOCAgeyA4LCBudW1l cmljfTsgIC8vIHNpZ25lZCA4IGJpdCB2YWx1ZQ0KUkVMMTYgezE2LCBudW1l cmljfTsgIC8vIHNpZ25lZCAxNiBiaXQgdmFsdWUNClJFTDMyIHszMiwgbnVt ZXJpY307ICAvLyBzaWduZWQgMzIgYml0IHZhbHVlDQpPRkY4ICB7IDgsIG51 bWVyaWMsIFBDKzIrWCwgUEMrMitYfTsgIC8vIDggYml0IG9mZnNldA0KT0ZG MTYgezE2LCBudW1lcmljLCBQQysyK1gsIFBDKzIrWH07ICAvLyAxNiBiaXQg b2Zmc2V0DQoNCltmbGFnc10NCkMgPSB7IDB4MDAwMSwgImNhcnJ5IiB9Ow0K ViA9IHsgMHgwMDAyLCAib3ZlcmZsb3ciIH07DQpaID0geyAweDAwMDQsICJ6 ZXJvIiB9Ow0KTiA9IHsgMHgwMDA4LCAibmVnYXRpdmUiIH07DQpYID0geyAw eDAwMTAsICJleHRlbmQiIH07DQoNCltpbnN0cnVjdGlvbnNdDQovLyAwMDAw IEJpdCBNYW5pcHVsYXRpb24vTU9WRVAvSW1tZWRpYXRlDQovLyAwMDAxIE1v dmUgQnl0ZQ0KLy8gMDAxMCBNb3ZlIExvbmcNCi8vIDAwMTEgTW92ZSBXb3Jk DQovLyAwMTAwIE1pc2NlbGxhbmVvdXMNCjAxMDAxMTEwMDExMTAwMDEgfE5P UHx8fHw0IDQgTjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIG5v cA0KMDEwMDEwMTAxMTExMTEwMCB8SUxMRUdBTHx8fHwzNCAzNCBUOyAgICAg ICAgICAgICAgICAgICAgICAgLy8gaWxsZWdhbA0KMDEwMDExMTAwMTExMDAw MCB8UkVTRVR8fHx8MTMyIDEzMiBOOyAgICAgICAgICAgICAgICAgICAgICAg Ly8gcmVzZXQNCjAxMDAxMTEwMDExMTAwMTEgfFJURXx8Q1ZaTlh8fDIwIDIw IFQ7ICAgICAgICAgICAgICAgICAgICAgIC8vIHJ0ZQ0KMDEwMDExMTAwMTEx MDExMSB8UlRSfHxDVlpOWHx8MjAgMjAgVDsgICAgICAgICAgICAgICAgICAg ICAgLy8gcnRyDQowMTAwMTExMDAxMTEwMTAxIHxSVFN8fHx8MTYgMTYgVDsg ICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBydHMNCjAxMDAxMTEwMDEx MTAwMTAgKDE2eEkpIHxTVE9QfEFCUzE2PUl8Q1ZaTlh8fDQgNCBUOyAgICAg ICAgIC8vIHN0b3AgI2NvbnN0DQowMTAwMTExMDAxMDBWVlZWIHxUUkFQfEFC UzQ9Vnx8Q1ZaTlh8MzggMzggVDsgICAgICAgICAgICAgICAvLyB0cmFwICN2 ZWMNCjAxMDAxMTEwMDExMTAxMTAgfFRSQVBWfHx8Q1ZaTlh8MzQgNCBDOyAg ICAgICAgICAgICAgICAgICAgIC8vIHRyYXB2DQowMTAwMTExMDAxMDEwQUFB ICgxNnhPKSB8TElOS3xBUkVHPUEgUkVMMTY9T3x8fDE4IDE4IE47ICAgICAv LyBsaW5rIEFuLCAjZGlzdA0KMDEwMDExMTAwMTAxMUFBQSB8VU5MS3xBUkVH PUF8fHwxMiAxMiBOOyAgICAgICAgICAgICAgICAgICAgLy8gdW5sayBBbg0K MDEwMDEwMDAwMTAwMERERCB8U1dBUHxEUkVHPUR8TlpWQ3x8NCA0IE47ICAg ICAgICAgICAgICAgICAgLy8gc3dhcCBEbg0KLy8gMDEwMSBBRERRL1NVQlEv U2NjL0RCY2MNCjAxMDEwMDAwMTEwMDFEREQgKDE2eE8pIHxEQlR8RFJFRz1E IE9GRjE2PU98fHwxMCAxMiBOOyAgICAgIC8vIGRidCBEbiwgb2Zmc2V0DQow MTAxMDAwMTExMDAxREREICgxNnhPKSB8REJSQXxEUkVHPUQgT0ZGMTY9T3x8 fDEwIDEyIEM7ICAgICAvLyBkYnJhIERuLCBvZmZzZXQNCjAxMDEwMTAwMTEw MDFEREQgKDE2eE8pIHxEQkNDfERSRUc9RCBPRkYxNj1PfHxDfDEwIDEyIEM7 ICAgIC8vIGRiY2MgRG4sIG9mZnNldA0KMDEwMTAxMDExMTAwMURERCAoMTZ4 TykgfERCQ1N8RFJFRz1EIE9GRjE2PU98fEN8MTAgMTIgQzsgICAgLy8gZGJj cyBEbiwgb2Zmc2V0DQowMTAxMDExMTExMDAxREREICgxNnhPKSB8REJFUXxE UkVHPUQgT0ZGMTY9T3x8WnwxMCAxMiBDOyAgICAvLyBkYmVxIERuLCBvZmZz ZXQNCjAxMDExMTAwMTEwMDFEREQgKDE2eE8pIHxEQkdFfERSRUc9RCBPRkYx Nj1PfHxOVnwxMCAxMiBDOyAgIC8vIGRiZ2UgRG4sIG9mZnNldA0KMDEwMTEx MTAxMTAwMURERCAoMTZ4TykgfERCR1R8RFJFRz1EIE9GRjE2PU98fE5WWnwx MCAxMiBDOyAgLy8gZGJndCBEbiwgb2Zmc2V0DQowMTAxMDAxMDExMDAxRERE ICgxNnhPKSB8REJISXxEUkVHPUQgT0ZGMTY9T3x8Q1p8MTAgMTIgQzsgICAv LyBkYmhpIERuLCBvZmZzZXQNCjAxMDExMTExMTEwMDFEREQgKDE2eE8pIHxE QkxFfERSRUc9RCBPRkYxNj1PfHxaTlZ8MTAgMTIgQzsgIC8vIGRibGUgRG4s IG9mZnNldA0KMDEwMTAwMTExMTAwMURERCAoMTZ4TykgfERCTFN8RFJFRz1E IE9GRjE2PU98fENafDEwIDEyIEM7ICAgLy8gZGJscyBEbiwgb2Zmc2V0DQow MTAxMTEwMTExMDAxREREICgxNnhPKSB8REJMVHxEUkVHPUQgT0ZGMTY9T3x8 TlZ8MTAgMTIgQzsgICAvLyBkYmx0IERuLCBvZmZzZXQNCjAxMDExMDExMTEw MDFEREQgKDE2eE8pIHxEQk1JfERSRUc9RCBPRkYxNj1PfHxOfDEwIDEyIEM7 ICAgIC8vIGRibWkgRG4sIG9mZnNldA0KMDEwMTAxMTAxMTAwMURERCAoMTZ4 TykgfERCTkV8RFJFRz1EIE9GRjE2PU98fFp8MTAgMTIgQzsgICAgLy8gZGJu ZSBEbiwgb2Zmc2V0DQowMTAxMTAxMDExMDAxREREICgxNnhPKSB8REJQTHxE UkVHPUQgT0ZGMTY9T3x8TnwxMCAxMiBDOyAgICAvLyBkYnBsIERuLCBvZmZz ZXQNCjAxMDExMDAwMTEwMDFEREQgKDE2eE8pIHxEQlZDfERSRUc9RCBPRkYx Nj1PfHxWfDEwIDEyIEM7ICAgIC8vIGRidmMgRG4sIG9mZnNldA0KMDEwMTEw MDExMTAwMURERCAoMTZ4TykgfERCVlN8RFJFRz1EIE9GRjE2PU98fFZ8MTAg MTIgQzsgICAgLy8gZGJ2cyBEbiwgb2Zmc2V0DQovLyAwMTEwIEJjYy9CU1IN CjAxMTAwMDAwMDAwMDAwMDAgKDE2eE8pIHxCUkEuTHxPRkYxNj1PfHx8MTAg MTAgVDsgICAgICAgICAgIC8vIGJyYS5sIG9mZnNldA0KMDExMDAwMDBPT09P T09PTyAgICAgICAgfEJSQS5TfCBPRkY4PU98fHwxMCAxMCBUOyAgICAgICAg ICAgLy8gYnJhLnMgb2Zmc2V0DQowMTEwMDAwMTAwMDAwMDAwICgxNnhPKSB8 QlNSLkx8T0ZGMTY9T3x8fDE4IDE4IFQ7ICAgICAgICAgICAvLyBic3IubCBv ZmZzZXQNCjAxMTAwMDAxT09PT09PT08gICAgICAgIHxCU1IuU3wgT0ZGOD1P fHx8MTggMTggVDsgICAgICAgICAgIC8vIGJzci5zIG9mZnNldA0KMDExMDAx MDAwMDAwMDAwMCAoMTZ4TykgfEJDQy5MfE9GRjE2PU98fEN8MTAgMTIgQzsg ICAgICAgICAgLy8gYmNjLmwgb2Zmc2V0DQowMTEwMDEwMTAwMDAwMDAwICgx NnhPKSB8QkNTLkx8T0ZGMTY9T3x8Q3wxMCAxMiBDOyAgICAgICAgICAvLyBi Y3MubCBvZmZzZXQNCjAxMTAwMTExMDAwMDAwMDAgKDE2eE8pIHxCRVEuTHxP RkYxNj1PfHxafDEwIDEyIEM7ICAgICAgICAgIC8vIGJlcS5sIG9mZnNldA0K MDExMDExMDAwMDAwMDAwMCAoMTZ4TykgfEJHRS5MfE9GRjE2PU98fE5WfDEw IDEyIEM7ICAgICAgICAgLy8gYmdlLmwgb2Zmc2V0DQowMTEwMTExMDAwMDAw MDAwICgxNnhPKSB8QkdULkx8T0ZGMTY9T3x8TlZafDEwIDEyIEM7ICAgICAg ICAvLyBiZ3QubCBvZmZzZXQNCjAxMTAwMDEwMDAwMDAwMDAgKDE2eE8pIHxC SEkuTHxPRkYxNj1PfHxDWnwxMCAxMiBDOyAgICAgICAgIC8vIGJoaS5sIG9m ZnNldA0KMDExMDExMTEwMDAwMDAwMCAoMTZ4TykgfEJMRS5MfE9GRjE2PU98 fFpOVnwxMCAxMiBDOyAgICAgICAgLy8gYmxlLmwgb2Zmc2V0DQowMTEwMDAx MTAwMDAwMDAwICgxNnhPKSB8QkxTLkx8T0ZGMTY9T3x8Q1p8MTAgMTIgQzsg ICAgICAgICAvLyBibHMubCBvZmZzZXQNCjAxMTAxMTAxMDAwMDAwMDAgKDE2 eE8pIHxCTFQuTHxPRkYxNj1PfHxOVnwxMCAxMiBDOyAgICAgICAgIC8vIGJs dC5sIG9mZnNldA0KMDExMDEwMTEwMDAwMDAwMCAoMTZ4TykgfEJNSS5MfE9G RjE2PU98fE58MTAgMTIgQzsgICAgICAgICAgLy8gYm1pLmwgb2Zmc2V0DQow MTEwMDExMDAwMDAwMDAwICgxNnhPKSB8Qk5FLkx8T0ZGMTY9T3x8WnwxMCAx MiBDOyAgICAgICAgICAvLyBibmUubCBvZmZzZXQNCjAxMTAxMDEwMDAwMDAw MDAgKDE2eE8pIHxCUEwuTHxPRkYxNj1PfHxOfDEwIDEyIEM7ICAgICAgICAg IC8vIGJwbC5sIG9mZnNldA0KMDExMDEwMDAwMDAwMDAwMCAoMTZ4TykgfEJW Qy5MfE9GRjE2PU98fFZ8MTAgMTIgQzsgICAgICAgICAgLy8gYnZjLmwgb2Zm c2V0DQowMTEwMTAwMTAwMDAwMDAwICgxNnhPKSB8QlZTLkx8T0ZGMTY9T3x8 VnwxMCAxMiBDOyAgICAgICAgICAvLyBidnMubCBvZmZzZXQNCjAxMTAwMTAw T09PT09PT08gICAgICAgIHxCQ0MuU3wgT0ZGOD1PfHxDfDEwIDEyIEM7ICAg ICAgICAgIC8vIGJjYy5zIG9mZnNldA0KMDExMDAxMDFPT09PT09PTyAgICAg ICAgfEJDUy5TfCBPRkY4PU98fEN8MTAgMTIgQzsgICAgICAgICAgLy8gYmNz LnMgb2Zmc2V0DQowMTEwMDExMU9PT09PT09PICAgICAgICB8QkVRLlN8IE9G Rjg9T3x8WnwxMCAxMiBDOyAgICAgICAgICAvLyBiZXEucyBvZmZzZXQNCjAx MTAxMTAwT09PT09PT08gICAgICAgIHxCR0UuU3wgT0ZGOD1PfHxOVnwxMCAx MiBDOyAgICAgICAgIC8vIGJnZS5zIG9mZnNldA0KMDExMDExMTBPT09PT09P TyAgICAgICAgfEJHVC5TfCBPRkY4PU98fE5WWnwxMCAxMiBDOyAgICAgICAg Ly8gYmd0LnMgb2Zmc2V0DQowMTEwMDAxME9PT09PT09PICAgICAgICB8QkhJ LlN8IE9GRjg9T3x8Q1p8MTAgMTIgQzsgICAgICAgICAvLyBiaGkucyBvZmZz ZXQNCjAxMTAxMTExT09PT09PT08gICAgICAgIHxCTEUuU3wgT0ZGOD1PfHxa TlZ8MTAgMTIgQzsgICAgICAgIC8vIGJsZS5zIG9mZnNldA0KMDExMDAwMTFP T09PT09PTyAgICAgICAgfEJMUy5TfCBPRkY4PU98fENafDEwIDEyIEM7ICAg ICAgICAgLy8gYmxzLnMgb2Zmc2V0DQowMTEwMTEwMU9PT09PT09PICAgICAg ICB8QkxULlN8IE9GRjg9T3x8TlZ8MTAgMTIgQzsgICAgICAgICAvLyBibHQu cyBvZmZzZXQNCjAxMTAxMDExT09PT09PT08gICAgICAgIHxCTUkuU3wgT0ZG OD1PfHxOfDEwIDEyIEM7ICAgICAgICAgIC8vIGJtaS5zIG9mZnNldA0KMDEx MDAxMTBPT09PT09PTyAgICAgICAgfEJORS5TfCBPRkY4PU98fFp8MTAgMTIg QzsgICAgICAgICAgLy8gYm5lLnMgb2Zmc2V0DQowMTEwMTAxME9PT09PT09P ICAgICAgICB8QlBMLlN8IE9GRjg9T3x8TnwxMCAxMiBDOyAgICAgICAgICAv LyBicGwucyBvZmZzZXQNCjAxMTAxMDAwT09PT09PT08gICAgICAgIHxCVkMu U3wgT0ZGOD1PfHxWfDEwIDEyIEM7ICAgICAgICAgIC8vIGJ2Yy5zIG9mZnNl dA0KMDExMDEwMDFPT09PT09PTyAgICAgICAgfEJWUy5TfCBPRkY4PU98fFZ8 MTAgMTIgQzsgICAgICAgICAgLy8gYnZzLnMgb2Zmc2V0DQovLyAwMTExIE1P VkVRDQowMTExREREMElJSUlJSUlJIHxNT1ZFUXxSRUw4PUl8TlpWQ3x8NCA0 IE47ICAgICAgICAgICAgICAgICAvLyBtb3ZlcSAjc2lnbmVkLCBEbg0KLy8g MTAwMCBPUi9ESVYvU0JDRA0KLy8gMTAwMSBTVUIvU1VCWA0KLy8gMTAxMCAo TGluZS1BKQ0KLy8gMTAxMSBDTVAvRU9SDQovLyAxMTAwIEFORC9NVUwvQUJD RC9FWEcNCjExMDBYWFgxMDEwMDBZWVkgfEVYR3xEUkVHPVggRFJFRz1ZfHx8 NiA2IE47ICAgICAgICAgICAgICAgIC8vIGV4ZyBEeCwgRHkNCjExMDBYWFgx MDEwMDFZWVkgfEVYR3xBUkVHPVggQVJFRz1ZfHx8NiA2IE47ICAgICAgICAg ICAgICAgIC8vIGV4ZyBBeCwgQXkNCjExMDBYWFgxMTAwMDFZWVkgfEVYR3xE UkVHPVggQVJFRz1ZfHx8NiA2IE47ICAgICAgICAgICAgICAgIC8vIGV4ZyBE eCwgQXkNCi8vIDExMDEgQUREL0FERFgNCi8vIDExMTAgU2hpZnQvUm90YXRl DQovLyAxMTExIChMaW5lLUYpDQoNCi8vIEVPRg0K --0-1550463017-998929220=:22680-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 09:28:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA14101 for dynarec-outgoing; Mon, 27 Aug 2001 09:27:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 09:29:56 -0700 (PDT) From: Neil Bradley To: Neil Bradley Subject: Re[2]: DYNAREC: A couple of things... In-Reply-To: <1049432633.20010827155624@dynarec.com> Message-ID: <20010827092025.Q22680-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > NB> Neil had one of these but lost it in a HD crash. ;-( But yeah, we need > NB> one. Maybe he'll offer to write it up again. Neil? > Yep. Attached is something I've just written up quickly, it's nowhere > near finished and there are a couple of things I've forgotten how they > work - read the document and you'll see what I mean. I'll send the > document here from now on - if it ever happens again, I won't lose it! I took a look at it. You talked about endian issues which I don't believe is really an issue. They are listed as bytes as they appear as if you were scanning memory in a linear fashion. The only reason we have the "opcode size" in there is to determine how big the array of procedures is going to be. > NB> That way we can weed out the oddball stuff first. Any takers? I can tackle > NB> the Z80... > Well, I'll have a go at the x86 then. I suspect it won't be too > dissimilar to the Z80 though! It's completely different from the Z80. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 09:29:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA14107 for dynarec-outgoing; Mon, 27 Aug 2001 09:28:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 09:30:59 -0700 (PDT) From: Neil Bradley To: Neil Bradley Subject: Re[2]: DYNAREC: A couple of things... In-Reply-To: <1049432633.20010827155624@dynarec.com> Message-ID: <20010827093033.G22680-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yep. Attached is something I've just written up quickly, it's nowhere > near finished and there are a couple of things I've forgotten how they > work - read the document and you'll see what I mean. I'll send the > document here from now on - if it ever happens again, I won't lose it! I took a look at it. You talked about endian issues which I don't believe is really an issue. They are listed as bytes as they appear as if you were scanning memory in a linear fashion. The only reason we have the "opcode size" in there is to determine how big the array of procedures is going to be. > NB> scripts for each processor from the existing examples we have right now. > NB> That way we can weed out the oddball stuff first. Any takers? I can tackle > NB> the Z80... > Well, I'll have a go at the x86 then. I suspect it won't be too > dissimilar to the Z80 though! It's completely different from the Z80. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 09:30:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA14117 for dynarec-outgoing; Mon, 27 Aug 2001 09:29:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 09:31:37 -0700 (PDT) From: Neil Bradley To: Neil Bradley Subject: Re[2]: DYNAREC: A couple of things... In-Reply-To: <169901307.20010827160413@dynarec.com> Message-ID: <20010827093102.P22680-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > As a matter of interest, anyone gone to www.retrocade.com recently? :o Yeah. I didn't pay my internic bill. Didn't care any longer. BTW, You might want to change the dynarec@dynarec.com to "Dynarec mailing list" rather than me. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 09:33:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA14132 for dynarec-outgoing; Mon, 27 Aug 2001 09:32:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 09:34:38 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: A couple of things... In-Reply-To: <3.0.5.32.20010827082623.008899a0@mailandnews.com> Message-ID: <20010827093207.S22680-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> >ARM > >> >x86 > >> I can try writing up a PowerPC script and/or Intel i960 script. > >How insane is the PPC? > Not too insane, really. Everything instruction is 32 bits wide. That's insane enough for me! ;-) > I guess the only real insane thing is that for a handful of the disp16(rA) > addressing mode instructions, rA can be R1-R31, but if R0 is specified, the > constant 0 is used, no matter what R0 contains, so you have operands that > can look like: 0x1234(0), 0x1234(r1), 0x1234(r2), ... 0x1234(r31). > Sometimes rA cannot equal rD, the destination register. I'm still not sure > how this would be handled but it would probably need to be done outside of > the script, because it really is a simple check and could be done at > recompile-time. I don't think so. You list the specific in the list first, which means you'd list the specific oddball cases before the generic cases. > Also, the PPC has flags in 2 registers: CR and XER. CR is broken up into 8 > 4-bit fields. Most instructions which alter the flags will record the > result in CR0 (the most significant 4 bit field.) The XER register contains > the carry flag, overflow flag, and summary overflow flag, as well as 7 bits > which are used by the load/store string instructions to determine how many > bytes to transfer. I think the big question is are these flags going to be used in determining whether or not a given recompiled instruction will actually include flag preamble/postable? Or are they just statuses? I'm thinking we could handle them outside the scope of the script. The flags there are only really used when trying to pass hints to the opcode cover generator. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 10:13:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA14172 for dynarec-outgoing; Mon, 27 Aug 2001 10:12:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003f01c12f1b$cee19fc0$789b4ed4@menta.net> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20010826204109.0088d7b0@mailandnews.com> <3.0.5.32.20010827082623.008899a0@mailandnews.com> Subject: Re: DYNAREC: A couple of things... Date: Mon, 27 Aug 2001 19:14:58 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I guess the only real insane thing is that for a handful of the disp16(rA) > addressing mode instructions, rA can be R1-R31, but if R0 is specified, the > constant 0 is used, no matter what R0 contains, so you have operands that > can look like: 0x1234(0), 0x1234(r1), 0x1234(r2), ... 0x1234(r31). R0 (or any other register number, like r31 in Alpha) called also 'register zero' is a typical implementation in RISC kind CPUs. It is very useful, very more than load a constant in a register (or xor the register with itself). It is not something strange. I think in PPC/POWER R0 can be used as a register in other cases, but in other CPUs is hardwired to zero (Alpha?/Mips?). > Also, the PPC has flags in 2 registers: CR and XER. CR is broken up into 8 > 4-bit fields. Most instructions which alter the flags will record the Hehe. PPC/Power condition register is fun. It can store up to 8 GT/LT/.. states. > result in CR0 (the most significant 4 bit field.) The XER register contains > the carry flag, overflow flag, and summary overflow flag, as well as 7 bits > which are used by the load/store string instructions to determine how many > bytes to transfer. > > Splitting up flags between 2 registers is something I haven't seen done > before, so it's a little weird to me. > Some are condition registers and the other is true flag register. I think it makes senses (in the way it is implemented the PPC). Rather than use the flags for checking the conditions (like in x86 where the conditional tests the C and Z flags for example) it stores the condition already calculated in another register. > > > Bart > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 10:41:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA14207 for dynarec-outgoing; Mon, 27 Aug 2001 10:40:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Back To Front ... hopefully From: "M.I.K.e" Message-ID: <00038c869e953f03_mailit@mail.dynarec.com> Date: Mon, 27 Aug 2001 19:52:24 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi guys, first of all, I'm really sorry that I couldn't take part in the recent discussions, but when the partents of my niece came to Germany as well the time per day I had for myself boiled down from 2 hours to almost 0 hours, so I had obvious problems to keep track of my email. With over 100 unread mails I might need some time to catch up again, please be patient. Since I felt a bit guilty I did something I wanted to do for some time already: I corrected the document and dynarec links on dynarec.com! The links of moved pages have been adjusted and the vanished ones are commented out. It seems that True Reality disappeared for good, unless someone has any hints of its remains... But does anyone know what happened to Andrew Davidson's http:// www.lemure.freeserve.co.uk/ site? I wanted to add the tARMac report to the document section as well, but I think I should read it first to give it a decent comment as I did for the others. Ok, I'm off reading a few of your mails now... -- M.I.K.e Captain Penny's Law: You can fool all of the people some of the time, and some of the people all of the time, but you Can't Fool Mom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 11:15:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA14247 for dynarec-outgoing; Mon, 27 Aug 2001 11:15:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Memory ordering From: "M.I.K.e" Message-ID: <00038c871d17bba0_mailit@mail.dynarec.com> References: <3.0.5.32.20010805182556.007c8d00@mailandnews.com> Date: Mon, 27 Aug 2001 20:27:46 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Has anyone given any thought as to how we're going to handle memory >ordering in DR68K? Initially, the simplest way would probably be just to >have memory byte swapped, I thought we already agreed on using byte-swapping, but I might be wrong. >but if we're going to want to emulate other >processors, this might not do. >The PowerPC got me to thinking about this. Fetching double words from byte >swapped memory just doesn't seem straightforward enough, because you have >to rotate the result by 16. This is fine as far as the 68K is concerned, >because it has a 16-bit data bus, and since 32-bit accesses are broken down >into 2 consecutive word accesses, this wierdness is understood. >But with the PowerPC, most memory read/writes are 32-bit, and seeing how it >really is a 32-bit processor (well, I'm only talking about the 32-bit >architecture subset right now), it just doesn't seem right. It kind of >complicates matters... Why so? Shouldn't a DWORD fetch and a following 16-bit rotation work for that case as well? >The PowerPC also has selectable endianness. I didn't even know that. But as far as I know all processors with selectable endianness have to have that endianness selected either at implementation (ie. by means of hardware) or at boot time since this also affects the way instructions are fetched from memory, if I'm not mistaken. So we only need to cover the endianness in the architecture definition but don't have to distinguish during runtime. But I have to add that PowerPC has some load/store byte reversed instructions. >Little endian mode isn't as straightforward as I thought it would be. If a >misaligned write occurs, the address is effectively XORed with some value, >which has the effect of writing each byte of a 32-bit write to unexpected >places. This sounds weird! I thought that PowerPC was the only "RISC" (we had the discussion before) architecture that is handling misaligned memory access and now you say it's totally messed up? >Anyhow, Gwenole once mentioned a system whereby memory is stored backwards, >and you subtracted the emulated processor's requested address from the >limit of your memory, and performed a read/write of whatever size necessary. I seem to rember something like that in the back of my head but I don't remember the details... >Or, if possible, we could make address space accesses abstract enough to >allow for using byte swapping for 68K emulation, and the subtraction method >for different processors. It would be a good idea to have several architecture independed memory access methods and simply pick the optimal one in the architecture definition. >Also, the PowerPC's MMU further complicates things. The MMU causes a >significant amount of overhead, Very true! >and if the concept could somehow be tied >closely with the actual recompiling, perhaps it can be completely >eliminated I had the same idea some time ago: Why not elminate the need to emulate the MMU by using the physical addresses in the recompiled code instead of the virtual ones? >(this might require recompiling or patching recompiled code if >the MMU context is altered.) It's a tough issue, and I'm not sure if you >guys intended on dealing with it in DR68K, but it's definitely something to >consider. It won't be easy but certainly worth a thought. >The PowerPC (and other modern, complex processors) would need a >pretty good dynamic recompiler to do it justice in emulation :) Yup. >Food for thought... Yum... >Bart -- M.I.K.e "I only touch base with reality on an as-needed basis!" -- Royal Floyd Mengot (Klaus) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 12:05:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14290 for dynarec-outgoing; Mon, 27 Aug 2001 12:04:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Memory ordering From: "M.I.K.e" Message-ID: <00038c877dc943a2_mailit@mail.dynarec.com> References: Date: Mon, 27 Aug 2001 20:54:48 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I haven't thought much about the PowerPC or any other 32 bit native >CPUs. If it's doing 32 bit stuff all the time, then it probably should be >loaded in that way as well. At least we need the flexibility for it. Well, unlike the frist Alpha revisions PowerPC always had the possibility to load bytes, halfwords, and words. >But does anyone use little endian mode in the PPC? I wasn't even aware of the fact that it was possible to run the PowerPC in little-endian mode. But I checked and it seems that this feature was added in PowerPC while POWER1 and POWER2 are big-endian only, just like all other IBM architectures before. Due to this I assume that the PowerPC is mainly used in big-endian mode, but that's just a wild guess. >Very true. MMUs are fairly nasty to emulate and creates a buttload of >overhead. I didn't plan on addressing it with the 68K since everything >I've seen to date (games-wise,m that is) runs in supervisor mode anyway. Also the MMU hasn't been added to the 68K before the 68030 and even then many systems (eg. Mac) didn't make any use of it. >-->Neil -- M.I.K.e November, n.: The eleventh twelfth of a weariness. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 12:05:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14302 for dynarec-outgoing; Mon, 27 Aug 2001 12:05:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Memory ordering From: "M.I.K.e" Message-ID: <00038c87a2766214_mailit@mail.dynarec.com> References: <3.0.5.32.20010805182556.007c8d00@mailandnews.com> <3.0.5.32.20010806175845.0087a6b0@mailandnews.com> Date: Mon, 27 Aug 2001 21:05:04 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>That's weird. But does anyone use little endian mode in the PPC? >I have no idea. I'm sure some weird system out there uses it. Might be true, just as the PSX is probably the only system that uses MIPS in little-endian mode. >The Model 3 doesn't seem to use it... I haven't seen it activate it. I >don't know about the Mac, though. But I'm assuming since they went from big >endian 68K->PowerPC, they decided to stick with big endian, especially >since it must help out with emulating the 68K. I think so too. But I could also check that since I have a BeBox now (with dual PPC603e), which has the same endianness as a PowerMac since you can run MacOS with a tool called SheepShaver. >The only place I can think of where little endian might be useful on a Mac >would be with Virtual PC, the X86 PC emulator for Macs. Even then you could work with the byte reversed instructions (lhbrx, lwbrx, sthbrx, stwbrx). >So you could have the PowerPC configured to use big endian mode while >running code normally, and have it automatically switch to little endian >mode when processing exceptions (this is done by setting the "exception >little endian" bit in the MSR to 1), or vice versa. Are you sure that this works during runtime? >The 68000 and 68010 don't even have MMUs. Privilege mode emulation is a snap. You forgot the 68020. It added 32-bit but didn't have an MMU, unlike IA-32 where 286 added the MMU and 386 added 32-bit. >But the PowerPC's MMU is easily as sophisticated as the X86's, I believe. I haven't done that much reading about it yet... There are other architectures like MIPS and Alpha that have only the TLB and some special instructions to load address translations into it while everything else is done in software. >Bart -- M.I.K.e "I'm willing to sacrifice anything for this cause, even other people's lives" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 12:05:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14310 for dynarec-outgoing; Mon, 27 Aug 2001 12:05:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Memory ordering From: "M.I.K.e" Message-ID: <00038c87b34a3ac7_mailit@mail.dynarec.com> References: Date: Mon, 27 Aug 2001 21:09:46 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > 3) Memory-mapped I/O devices - accessing memory doesn't always mean >accessing memory. Oh well. And access permissions for memory, particularly >on the ARM6+, are horrendously complicated. Uh, I only thought about address translations made by the TLB, but you are right, access permissions make this whole topic much more complicated unless this issue cannot be handled at compile time as well. >Jules -- M.I.K.e The cost of living hasn't affected its popularity. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 12:05:32 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14318 for dynarec-outgoing; Mon, 27 Aug 2001 12:05:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Memory ordering From: "M.I.K.e" Message-ID: <00038c87c67c1cfe_mailit@mail.dynarec.com> References: <3.0.5.32.20010806175845.0087a6b0@mailandnews.com> <3.0.5.32.20010806235743.00878cd0@mailandnews.com> Date: Mon, 27 Aug 2001 21:15:08 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Oh, BTW, I have a question: Do you know why the PowerPC uses that >"backwards" numbering of bits? That's because IBM is using true big-endian, where even the bits of a word a big endian, unlike Motorola, who used little-endian bit numbering while having big-endian memory access. >Bart -- M.I.K.e Q: How many Zen masters does it take to screw in a light bulb? A: None. The Universe spins the bulb, and the Zen master stays out of the way. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 12:45:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14354 for dynarec-outgoing; Mon, 27 Aug 2001 12:45:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 12:47:51 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Memory ordering In-Reply-To: <00038c871d17bba0_mailit@mail.dynarec.com> Message-ID: <20010827124540.K22680-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >ordering in DR68K? Initially, the simplest way would probably be just to > >have memory byte swapped, > I thought we already agreed on using byte-swapping, but I might be wrong. I thought it was going to be platform specific and any fetching should be "normalized" by the platform it's running on. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 12:53:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14369 for dynarec-outgoing; Mon, 27 Aug 2001 12:53:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Carry flag emulation in C From: "M.I.K.e" Message-ID: <00038c883936fa7c_mailit@mail.dynarec.com> References: <20010820134456.J14942-100000@beacon.synthcom.com> Date: Mon, 27 Aug 2001 21:47:13 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> I'm again here. What about dr68k on hold as usual? ;) >I was waiting to hear back from Michael about the ARM core and disassembly >and no one bit. Uh, what exactly did you want to know? >I can't do this thing by myself, ya know. ;-) The only >person who responded was Bart! Sorry :-( >-->Neil -- M.I.K.e Mathematicians are like Frenchmen: whatever you say to them they translate into their own language, and forthwith it is something entirely different. -- Johann Wolfgang von Goethe --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 12:53:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14377 for dynarec-outgoing; Mon, 27 Aug 2001 12:53:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: It blits! From: "M.I.K.e" Message-ID: <00038c88269ec255_mailit@mail.dynarec.com> References: <005501c11a14$fc5ff620$0100a8c0@mshome.net> <006301c11a1b$c73282e0$0100a8c0@mshome.net> <00038a70cd4d058f_mailit@mail.dynarec.com> <006301c11a8a$595164c0$0100a8c0@mshome.net> Date: Mon, 27 Aug 2001 21:42:01 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Sorry, I've just spent too much time with my niece, although she uses >> "Wieso?" more often than "Why?" now ;-) >Why so? ;) Because we sent her to the school here in Germany and she had to talk German with those kids. She hears German every day but she's just too lazy to use it herself. Throwing her into a batch of German kids was the mean way to get her speaking German ;-) But it actually worked! >> Yes, make John Carmack pale!!! ;-) >He's a coder, coders are normally pale anyway. ;) Hehe ;-) >> Hehe. But I actually want to try to run PPC-MacOS on the BeBox using >> SheepShaver... >My god, I want to congratulate whoever is responsible for coming up with >"SheepShaver". :)) The same guy that came up with the names "ShapeShifter" and "Basilisk II": Christian Bauer, the god of Mac emulation. >Neil. -- M.I.K.e Is your job running? You'd better go catch it! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 12:57:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14393 for dynarec-outgoing; Mon, 27 Aug 2001 12:57:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 12:59:54 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <00038c883936fa7c_mailit@mail.dynarec.com> Message-ID: <20010827125909.C22680-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >I was waiting to hear back from Michael about the ARM core and disassembly > >and no one bit. > Uh, what exactly did you want to know? You had a good ARM example of why the script wouldn't work in its existing form. If I recall, it was something like mov k5,blah+4 or something strange. I can't bloody remember! But it was a problem with the disassembly aspect of things. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 12:59:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA14403 for dynarec-outgoing; Mon, 27 Aug 2001 12:58:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 13:01:19 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: It blits! In-Reply-To: <00038c88269ec255_mailit@mail.dynarec.com> Message-ID: <20010827125957.I22680-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Because we sent her to the school here in Germany and she had to talk German > with those kids. She hears German every day but she's just too lazy to use it > herself. Throwing her into a batch of German kids was the mean way to get her > speaking German ;-) > But it actually worked! Yeah, nothing better than a trial by fire. We have a guy to talks Farsi (sp?) and interjects English throughout the dialog. It's really frustrating to sit there and listen to him because it's *ALMOST* English. > >> Hehe. But I actually want to try to run PPC-MacOS on the BeBox using > >> SheepShaver... > >My god, I want to congratulate whoever is responsible for coming up with > >"SheepShaver". :)) > The same guy that came up with the names "ShapeShifter" and "Basilisk II": > Christian Bauer, the god of Mac emulation. Ugh... Let's hope he doesn't come up with SheepShagger.... -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 14:28:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA14483 for dynarec-outgoing; Mon, 27 Aug 2001 14:28:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 27 Aug 01 17:29:21 -0400 Message-Id: <3.0.5.32.20010827143112.00888300@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 27 Aug 2001 14:31:12 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: A couple of things... In-Reply-To: <003f01c12f1b$cee19fc0$789b4ed4@menta.net> References: <3.0.5.32.20010826204109.0088d7b0@mailandnews.com> <3.0.5.32.20010827082623.008899a0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 07:14 PM 8/27/2001 +0200, you wrote: >> I guess the only real insane thing is that for a handful of the disp16(rA) >> addressing mode instructions, rA can be R1-R31, but if R0 is specified, the >> constant 0 is used, no matter what R0 contains, so you have operands that >> can look like: 0x1234(0), 0x1234(r1), 0x1234(r2), ... 0x1234(r31). >R0 (or any other register number, like r31 in Alpha) called also 'register zero' >is a typical implementation in RISC kind CPUs. It is very useful, very more >than load a constant in a register (or xor the register with itself). It is not >something strange. I think in PPC/POWER R0 can be used as a register >in other cases, but in other CPUs is hardwired to zero (Alpha?/Mips?). Right, I've heard about zero registers. The PowerPC's R0 doesn't work like that. It can be used as a normal register in all cases except for disp16(rA) addressing. >Some are condition registers and the other is true flag register. I think it makes >senses (in the way it is implemented the PPC). Rather than use the flags >for checking the conditions (like in x86 where the conditional tests the C and >Z flags for example) it stores the condition already calculated in another register. I don't know... SO is copied into the CR0 fields from XER with many instructions, even if they don't modify the OV flag. It's weird to me :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 14:28:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA14484 for dynarec-outgoing; Mon, 27 Aug 2001 14:28:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 27 Aug 01 17:29:18 -0400 Message-Id: <3.0.5.32.20010827142716.00885b20@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 27 Aug 2001 14:27:16 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Memory ordering In-Reply-To: <00038c871d17bba0_mailit@mail.dynarec.com> References: <3.0.5.32.20010805182556.007c8d00@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Why so? Shouldn't a DWORD fetch and a following 16-bit rotation work for that >case as well? Nope, it doesn't work for unaligned cases. >I didn't even know that. But as far as I know all processors with selectable >endianness have to have that endianness selected either at implementation >(ie. by means of hardware) or at boot time since this also affects the way >instructions are fetched from memory, if I'm not mistaken. >So we only need to cover the endianness in the architecture definition but >don't have to distinguish during runtime. >But I have to add that PowerPC has some load/store byte reversed >instructions. The PowerPC can change its endianness at run time. It can also use different endians automatically when processing exceptions. You could set the "exception little endian mode" bit in the machine status register to 1, and thus whenever an exception occurs, the processor reverts to little endian mode. >This sounds weird! I thought that PowerPC was the only "RISC" (we had the >discussion before) architecture that is handling misaligned memory access and >now you say it's totally messed up? Right :) The data gets mangled. It doesn't generate an exception, I don't thin, but it doesn't work like you'd expect it to, like on the X86 for example. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 14:40:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA14511 for dynarec-outgoing; Mon, 27 Aug 2001 14:40:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 27 Aug 01 17:41:58 -0400 Message-Id: <3.0.5.32.20010827144355.00884c50@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 27 Aug 2001 14:43:55 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Memory ordering In-Reply-To: <00038c87a2766214_mailit@mail.dynarec.com> References: <3.0.5.32.20010805182556.007c8d00@mailandnews.com> <3.0.5.32.20010806175845.0087a6b0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You forgot the 68020. It added 32-bit but didn't have an MMU, unlike IA-32 >where 286 added the MMU and 386 added 32-bit. The 68020 is where byte swapped memory no longer works. I remember Gwenole mentioning this on the list when I expressed some interest in emulating the 68020. But I never got around to emulating it anyway... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 14:40:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA14512 for dynarec-outgoing; Mon, 27 Aug 2001 14:40:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 27 Aug 01 17:42:02 -0400 Message-Id: <3.0.5.32.20010827144354.0088f730@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 27 Aug 2001 14:43:54 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: A couple of things... In-Reply-To: <20010827093207.S22680-100000@beacon.synthcom.com> References: <3.0.5.32.20010827082623.008899a0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I don't think so. You list the specific in the list first, which means >you'd list the specific oddball cases before the generic cases. That could be up to 32 cases, and who knows if other ISAs wouldn't have more (like 64 or 128 or something, depending on the # of registers.) For example, if rA cannot equal rD, I'd have to write cases for R0,R0; R1,R1; R2,R2;... R31,R31, wouldn't I? >I think the big question is are these flags going to be used in >determining whether or not a given recompiled instruction will actually >include flag preamble/postable? Or are they just statuses? I'm thinking we >could handle them outside the scope of the script. The flags there are >only really used when trying to pass hints to the opcode cover generator. Many instructions will need both registers to be used. I don't remember how flags are handled in the script, but couldn't we just specify the flags that exist on the processor, and not the register(s) they're contained in? That way, the actual details of where the flags come from could be handled by the implementation. The ADDIC. (add immediate carrying and record) instruction updates all fields in CR0 (LT, GT, EQ, SO) and the carry flag in XER. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 14:48:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA14529 for dynarec-outgoing; Mon, 27 Aug 2001 14:48:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000d01c12f42$4986c2c0$789b4ed4@menta.net> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20010805182556.007c8d00@mailandnews.com> <00038c871d17bba0_mailit@mail.dynarec.com> Subject: Re: DYNAREC: Memory ordering Date: Mon, 27 Aug 2001 23:50:25 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > But I have to add that PowerPC has some load/store byte reversed > instructions. > Really? Umm ... I didn't remember seeing them (perhaps it was because of using a Power 2 as a test machine). > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 14:54:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA14544 for dynarec-outgoing; Mon, 27 Aug 2001 14:54:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Carry flag emulation in C From: "M.I.K.e" Message-ID: <00038c8a2b526d05_mailit@mail.dynarec.com> References: <20010827125909.C22680-100000@beacon.synthcom.com> Date: Tue, 28 Aug 2001 00:06:30 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You had a good ARM example of why the script wouldn't work in its existing >form. If I recall, it was something like mov k5,blah+4 or something >strange. I can't bloody remember! But it was a problem with the >disassembly aspect of things. Hmm, one thing is how immediates are handled because there are only 12 bits left. But they didn't simply take those 12 bits and make it a plain immediate as it was done with the 13 bits in SPARC; only 8 of these bits are used for the immediate value, the other 4 bits is the amount of 2-bit shifts to the right that are used on the value before it is further utilized. Eg. if you write "MOV R0, #$10000" in an ARM assembler it basically becomes: "MOVE R0, #$1, ROR #8*2", which is encoded as: cccc00#oooosnnnnddddrrrriiii 1110001110100000000010000001 c = condition, in this case AL (always) # = 2nd operand is immediate instead of register o = opcode s = set condition flags? n = 1st operand register d = destination register r = ROR/2 i = immediate About any data processing instruction with an optional shift would be problematic: ADDGT R1, R2, R3, LSL R4 cccc00#oooosnnnnddddssss0ll1mmmm 11000000100000100001010000010011 s = shift register (this could also be an immediate, but then the coding would change slightly) l = shift type (logical shift left) m = 2nd operand register If you think that this is complicated then take a look at the half-word data transfer: cccc000PU#WLnnnnddddHHHH1sh1LLLL c = condition P = pre-/post-index U = up/down # = if 1 then H and L are the high and low parts of an immediate offset, otherwise H=0 and L=index register W = write-back (auto-index) L = load/store n = base register d = source/destination register s/h = 1/0 -> signed byte, 0/1 -> unsigned half-word, 1/1 -> signed half-word Especially the split immediate offset is very nice to decode... You can tell that ARM wasn't really designed with extension in mind and that this instruction was a later extension (I think in ARMv4). I'm waiting for the definition of ARMv6: either it'll break compatibility with previous version or it'll suck completely. BTW, there is also a load/store multiple instruction pair that is very similar to the 68K MOVEM. Speaking of 68K, I think instructions like "move.l 20(PC, D5), D4" were a bit problematic in the original design of the definition file as well. I hope this is what you were seeking for... >-->Neil -- M.I.K.e Sauron is alive in Argentina! --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 14:54:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA14552 for dynarec-outgoing; Mon, 27 Aug 2001 14:54:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: It blits! From: "M.I.K.e" Message-ID: <00038c899e1e5332_mailit@mail.dynarec.com> References: <20010827125957.I22680-100000@beacon.synthcom.com> Date: Mon, 27 Aug 2001 23:27:01 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Yeah, nothing better than a trial by fire. We have a guy to talks Farsi >(sp?) and interjects English throughout the dialog. It's really >frustrating to sit there and listen to him because it's *ALMOST* English. Yeah, she also produced some weird German/English mixture. >Ugh... Let's hope he doesn't come up with SheepShagger.... Hehe. Actually on the official site (I think http://www.sheepshaver.com/ is down now) they had a picture of Wallace and Gromit. >-->Neil -- M.I.K.e Jacquin's Postulate on Democratic Government: No man's life, liberty, or property are safe while the legislature is in session. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 15:15:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA14582 for dynarec-outgoing; Mon, 27 Aug 2001 15:15:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: A couple of things... From: "M.I.K.e" Message-ID: <00038c8a58b3fe6c_mailit@mail.dynarec.com> References: <3.0.5.32.20010826204109.0088d7b0@mailandnews.com> <3.0.5.32.20010827143112.00888300@mailandnews.com> Date: Tue, 28 Aug 2001 00:19:11 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Right, I've heard about zero registers. The PowerPC's R0 doesn't work like >that. It can be used as a normal register in all cases except for >disp16(rA) addressing. Yup, unlike for MIPS and SPARC R0 (R31 for Alpha) isn't always zero for PowerPC, only when used as base register in memory transfers. This is a behaviour it inherited from the IBM360 IIRC. >I don't know... SO is copied into the CR0 fields from XER with many >instructions, even if they don't modify the OV flag. It's weird to me :) I think the idea of SO is not to check for overflows after every instruction but after a series of operations. AFAIK SO isn't set back to 0 by normal operations unlike OV, right? >Bart -- M.I.K.e You know it's going to be a bad day when you want to put on the clothes you wore home from the party and there aren't any. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 15:15:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA14591 for dynarec-outgoing; Mon, 27 Aug 2001 15:15:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Memory ordering From: "M.I.K.e" Message-ID: <00038c8a42dc321d_mailit@mail.dynarec.com> References: <3.0.5.32.20010805182556.007c8d00@mailandnews.com> <3.0.5.32.20010827142716.00885b20@mailandnews.com> Date: Tue, 28 Aug 2001 00:13:05 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>Why so? Shouldn't a DWORD fetch and a following 16-bit rotation work for >>that case as well? >Nope, it doesn't work for unaligned cases. Too bad... >The PowerPC can change its endianness at run time. Hmm, interesting... This means that it certainly differs between fetching data and fetching instructions. I also wonder why it might need that since you have the load/store byte reversed instructions anyway. >Right :) The data gets mangled. It doesn't generate an exception, I don't >thin, but it doesn't work like you'd expect it to, like on the X86 for >example. That's not nice! >Bart -- M.I.K.e Bringing computers into the home won't change either one, but may revitalize the corner saloon. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 15:15:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA14599 for dynarec-outgoing; Mon, 27 Aug 2001 15:15:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Memory ordering From: "M.I.K.e" Message-ID: <00038c8a7637f413_mailit@mail.dynarec.com> References: <3.0.5.32.20010805182556.007c8d00@mailandnews.com> <00038c871d17bba0_mailit@mail.dynarec.com> <000d01c12f42$4986c2c0$789b4ed4@menta.net> Date: Tue, 28 Aug 2001 00:27:26 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> But I have to add that PowerPC has some load/store byte reversed >> instructions. >Really? Umm ... I didn't remember seeing them (perhaps it was >because of using a Power 2 as a test machine). Yup: LHBRX (Load Half-word Byte-Reversed indeXed) LWBRX (Load Word Byte-Reversed indeXed) STHBRX (STore Half-word Byte-Reversed indeXed) STWBRX (STore Word Byte-Reversed indeXed) Indexed only means that there is always a base and an index register, but never an immediate offset. And according to my book ("Optimizing PowerPC Code") these instructions already existed in the POWER architecture. The funny thing about PPC mnemonics is that they are very hard to read, but you can still find out what they mean if you know *how* to read them. My favourite examples are: RLWINM = Rotate Left Word Immediate then aNd with Mask EIEIO = Enforce In-order Execution of I/O >Victor -- M.I.K.e Future looks spotty. You will spill soup in late evening. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 15:24:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA14613 for dynarec-outgoing; Mon, 27 Aug 2001 15:24:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 27 Aug 01 18:25:27 -0400 Message-Id: <3.0.5.32.20010827152730.0088d9a0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 27 Aug 2001 15:27:30 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Memory ordering In-Reply-To: <00038c8a7637f413_mailit@mail.dynarec.com> References: <3.0.5.32.20010805182556.007c8d00@mailandnews.com> <00038c871d17bba0_mailit@mail.dynarec.com> <000d01c12f42$4986c2c0$789b4ed4@menta.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The funny thing about PPC mnemonics is that they are very hard to read, but >you can still find out what they mean if you know *how* to read them. My >favourite examples are: STFSUX is a good one, too. And MTFSFI Old MacDonald had a farm... >EIEIO = Enforce In-order Execution of I/O Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 15:33:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA14630 for dynarec-outgoing; Mon, 27 Aug 2001 15:33:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 27 Aug 01 18:34:23 -0400 Message-Id: <3.0.5.32.20010827153626.0088b210@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 27 Aug 2001 15:36:26 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Memory ordering In-Reply-To: <00038c8a42dc321d_mailit@mail.dynarec.com> References: <3.0.5.32.20010805182556.007c8d00@mailandnews.com> <3.0.5.32.20010827142716.00885b20@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Hmm, interesting... This means that it certainly differs between fetching >data and fetching instructions. I also wonder why it might need that since >you have the load/store byte reversed instructions anyway. Don't those instructions work only on strings of data? Little endian is better than big endian, IMHO, in that it makes accessing different data sizes at the same address possible, so it does have an advantage. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 16:18:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA14673 for dynarec-outgoing; Mon, 27 Aug 2001 16:18:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 22:27:04 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <3013211016.20010827222704@dynarec.com> To: dynarec@dynarec.com Subject: Re[3]: DYNAREC: A couple of things... In-Reply-To: <20010827092025.Q22680-100000@beacon.synthcom.com> References: <20010827092025.Q22680-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> I took a look at it. You talked about endian issues which I don't believe NB> is really an issue. They are listed as bytes as they appear as if you were NB> scanning memory in a linear fashion. The only reason we have the "opcode NB> size" in there is to determine how big the array of procedures is going to NB> be. No, you misunderstand. What I meant was... Will the bits always be listed in little-endian mode - or will we list them in the native format of the CPU we're attempting to emulate? The other thing I need to know - what are the hex values by the flags? I know I know this, but can I hell as like remember? :) NB> It's completely different from the Z80. Apart from similar op-codes (well, at least 0x90 - NOP - is the same) and 64k real mode segments... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 16:19:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA14685 for dynarec-outgoing; Mon, 27 Aug 2001 16:19:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 22:28:34 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <7413301136.20010827222834@dynarec.com> To: dynarec@dynarec.com Subject: Re[3]: DYNAREC: A couple of things... In-Reply-To: <20010827093102.P22680-100000@beacon.synthcom.com> References: <20010827093102.P22680-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> Yeah. I didn't pay my internic bill. Didn't care any longer. Don't blame you. I was just at the Starscream site yesterday, saw a link and clicked on it for, as Austin Powers would say, for shits and giggles. NB> BTW, You might want to change the dynarec@dynarec.com to "Dynarec mailing NB> list" rather than me. ;-) Ah, should be fixed now. The mailing software automatically fills out the name as the person I'm replying to... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 16:19:33 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA14693 for dynarec-outgoing; Mon, 27 Aug 2001 16:19:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 22:44:14 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <15314241748.20010827224414@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Memory ordering In-Reply-To: <00038c87c67c1cfe_mailit@mail.dynarec.com> References: <3.0.5.32.20010806175845.0087a6b0@mailandnews.com> <3.0.5.32.20010806235743.00878cd0@mailandnews.com> <00038c87c67c1cfe_mailit@mail.dynarec.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, MIKe> That's because IBM is using true big-endian, where even the bits of a word a MIKe> big endian, unlike Motorola, who used little-endian bit numbering while MIKe> having big-endian memory access. In this case, my previous e-mail can be ignored. I thought the instructions were also stored in big-endian. Ah well... Trust Motorola to be REALLY complicated! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 16:19:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA14701 for dynarec-outgoing; Mon, 27 Aug 2001 16:19:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 22:45:56 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <1614343484.20010827224556@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: It blits! In-Reply-To: <00038c88269ec255_mailit@mail.dynarec.com> References: <005501c11a14$fc5ff620$0100a8c0@mshome.net> <006301c11a1b$c73282e0$0100a8c0@mshome.net> <00038a70cd4d058f_mailit@mail.dynarec.com> <006301c11a8a$595164c0$0100a8c0@mshome.net> <00038c88269ec255_mailit@mail.dynarec.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, MIKe> Because we sent her to the school here in Germany and she had to talk German MIKe> with those kids. She hears German every day but she's just too lazy to use it MIKe> herself. Throwing her into a batch of German kids was the mean way to get her MIKe> speaking German ;-) MIKe> But it actually worked! Really? Quite impressive! Mind you, I learnt most of my German (especially the swear words) when I was doing Ju-jitsu. Amazing how quickly you learn a language if, when you don't understand what's about to happen, you're going to get hit. :)) MIKe> The same guy that came up with the names "ShapeShifter" and "Basilisk II": MIKe> Christian Bauer, the god of Mac emulation. SheepShaver though... What sort of a god is he? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 16:24:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA14713 for dynarec-outgoing; Mon, 27 Aug 2001 16:24:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 16:27:06 -0700 (PDT) From: Neil Bradley To: Subject: Re[3]: DYNAREC: A couple of things... In-Reply-To: <3013211016.20010827222704@dynarec.com> Message-ID: <20010827162402.O22680-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > NB> scanning memory in a linear fashion. The only reason we have the "opcode > NB> size" in there is to determine how big the array of procedures is going to > NB> be. > No, you misunderstand. What I meant was... Will the bits always be > listed in little-endian mode - or will we list them in the native > format of the CPU we're attempting to emulate? You're assuming that it's "big endian" or "little endian". It's neither. They are listed as bytes as they'd appear in the source CPU's memory space in a linear fashion. Endian doesn't come in to play. > The other thing I need to know - what are the hex values by the flags? > I know I know this, but can I hell as like remember? :) Those are the values that are their positions within the flag register for that CPU. > NB> It's completely different from the Z80. > Apart from similar op-codes (well, at least 0x90 - NOP - is the same) > and 64k real mode segments... ;) 0x90 Isn't NOP on the Z80, it's 0x00. 0x90 Is SUB A, B in the Z80. The mappings of the registers aren't the same either, nor are the opcodes. Not sure where you get the idea that they're similar! The Z80 had no concept of a segment, and the x86 did. And as far as "mov" vs. "ld" goes, that also could be argued for ANY other CPU as well! -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 16:38:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA14733 for dynarec-outgoing; Mon, 27 Aug 2001 16:38:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 27 Aug 01 19:39:38 -0400 Message-Id: <3.0.5.32.20010827164131.0088c6c0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 27 Aug 2001 16:41:31 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[2]: DYNAREC: Memory ordering In-Reply-To: <15314241748.20010827224414@dynarec.com> References: <00038c87c67c1cfe_mailit@mail.dynarec.com> <3.0.5.32.20010806175845.0087a6b0@mailandnews.com> <3.0.5.32.20010806235743.00878cd0@mailandnews.com> <00038c87c67c1cfe_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 10:44 PM 8/27/2001 +0100, you wrote: >Hi, > >MIKe> That's because IBM is using true big-endian, where even the bits of a word a >MIKe> big endian, unlike Motorola, who used little-endian bit numbering while >MIKe> having big-endian memory access. > >In this case, my previous e-mail can be ignored. I thought the >instructions were also stored in big-endian. Ah well... Trust Motorola >to be REALLY complicated! Everything is in a uniform endian on 68K: Instructions and data. A 68K instruction, for example, is stored in big endian, but the bits are numbered 31-0, not 0-31. So, the first byte stored consists of bits 31-24, the next is 23-16, and then 15-8, and 7-0 last. But I still think that the MSB should be a higher bit number than the LSB, because it makes the conversion to different bit-size registers easier. Endian big hate I! ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 17:39:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA14787 for dynarec-outgoing; Mon, 27 Aug 2001 17:39:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 28 Aug 2001 01:38:47 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <12724714427.20010828013847@dynarec.com> To: dynarec@dynarec.com Subject: Re[4]: DYNAREC: A couple of things... In-Reply-To: <20010827162402.O22680-100000@beacon.synthcom.com> References: <20010827162402.O22680-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, NB> You're assuming that it's "big endian" or "little endian". It's neither. NB> They are listed as bytes as they'd appear in the source CPU's memory space NB> in a linear fashion. Endian doesn't come in to play. That's what I meant - but you've answered my question now. Thanks. :) NB> Those are the values that are their positions within the flag register for NB> that CPU. That's it! Thanks again. I had worked it out once and then forgotten it this time around... NB> 0x90 Isn't NOP on the Z80, it's 0x00. 0x90 Is SUB A, B in the Z80. The NB> mappings of the registers aren't the same either, nor are the opcodes. Not NB> sure where you get the idea that they're similar! The Z80 had no concept NB> of a segment, and the x86 did. And as far as "mov" vs. "ld" goes, that NB> also could be argued for ANY other CPU as well! Hell. My memory has gone to pot then. I really though 0x90 was NOP on the Z80, but given you've emulated it, I'll believe you. ;) CD is call and C9 is ret though, right? If I'm mistaken there then I'm going to go and jump. :)) My experiences of the Z80 come from the Spectrum and the CPC (mainly the CPC) where I did bankswitching, switching from one block of 64k to another - and I know the Speccy did it the same way. I figured that it was de-facto for the Z80. Obviously not... I got the idea that the x86 would be similar to the Z80 by the fact that Intel was started by ex-Zilog employees and I found the x86 easy to come to from Z80 programming. Though, quite obviously, I've forgotten half that I once knew. Damn... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 17:39:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA14791 for dynarec-outgoing; Mon, 27 Aug 2001 17:39:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 28 Aug 2001 01:42:44 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <724951057.20010828014244@dynarec.com> To: dynarec@dynarec.com Subject: Re[4]: DYNAREC: Memory ordering In-Reply-To: <3.0.5.32.20010827164131.0088c6c0@mailandnews.com> References: <00038c87c67c1cfe_mailit@mail.dynarec.com> <3.0.5.32.20010806175845.0087a6b0@mailandnews.com> <3.0.5.32.20010806235743.00878cd0@mailandnews.com> <00038c87c67c1cfe_mailit@mail.dynarec.com> <3.0.5.32.20010827164131.0088c6c0@mailandnews.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com B> A 68K instruction, for example, is stored in big endian, but the bits are B> numbered 31-0, not 0-31. That... makes sense. Okay. I kind of see why people hate Motorola so much. I never did any 68K programming, so I know roughly... well, zilch about it. =) Hopefully that will have changed dramatically by the end of this project. B> So, the first byte stored consists of bits 31-24, the next is 23-16, and B> then 15-8, and 7-0 last. At least that makes sense for a big endian CPU. B> But I still think that the MSB should be a higher bit number than the LSB, B> because it makes the conversion to different bit-size registers easier. That's always been the best argument for little endian. B> Endian big hate I! ;) Really? Now, was that big or little endian? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 17:44:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA14807 for dynarec-outgoing; Mon, 27 Aug 2001 17:44:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 27 Aug 01 20:45:14 -0400 Message-Id: <3.0.5.32.20010827174703.0088d720@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 27 Aug 2001 17:47:03 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Script format and doc Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I've got some comments on the document and script format. First of all, could we have the multiplication operator (used for expanding a field) be "*", instead of "x"? Because if someone decides to use "x" as a field name, 32xx would look weird :) Second, the instructions section wasn't complete in Neil G.'s preliminary document, but I would think it should be done something like this: ========================= Section X The INSTRUCTION Section ========================= The "INSTRUCTION" section of the processor information script (PIS?? ;)) consists solely of an arbitrary number of *instruction descriptors*. Instruction descripters are used in cover generation and provide a sufficient amount of information to automate this process. An instruction descriptor has the following syntax: | | [field descriptions] | [flags in] | [flags out] | [normal timing] | [branch timing] | [misc. info] The "bit map" field is a string of binary digits. The number of bits should be a multiple of the instruction granularity specified in the "CPUINFO" section of the script. Variable fields are represented with single-character alphabetical characters, repeated for as many bits as the given field is wide. Special operations can be performed on the bit map by the parser. These are enclosed in brackets. Currently, supported special operations are: Expand. Syntax: ( * ) Operation: The "bit" is repeated "decimal number" of times. Therefore, a 32-bit instruction bit map may look like this: 0110 RRRR RXXI (4 * J) The high nibble will always be %0110, the other fields are all variable. The (4 * J) expands to: JJJJ. White space is purely optional. It is ignored by the parser, but allows the user to lay the map out more clearly as per his/her personal preference. .... I'm too lazy to finish this, but you all get the point ;) .... Basically, it would provide very detailed descriptions of the format and how the parser looks at it. The following conventions were used in the above document sample (we'd obviously have a "Conventions" section at the beginning of the document): - < > in a syntax description indicates a mandatory variable area. - [ ] in a syntax description indicates an optional area. - Parts of the syntax description not surrounded by any form of braces are required, and no variable (thus, the | field separator appears exactly like that in usage.) Points that need addressing: - Which fields in an instruction descriptor are mandatory and which are not? If we have a null descriptor, will the parser be able to handle it, and if not, what precisely will cause the errors? - Is the opcode bit map required? What if someone wants to implement a terminator manually in the cover list by leaving the bit map field blank and assuming the parser will treat it as 0? - If the amount of bits in a bit map is not a multiple of the instruction granularity, will the parser flag an error, or will it simply zero-extend the value (printing a warning out after doing so)? - What will the deal be with variable instruction mnemonics? Case in point, the PowerPC... Some arithmetic instructions have an OE and/or Rc field (1 bit each.) Example, "DIVWUx": DIVWU (OE = 0, Rc = 0) DIVWU. (OE = 0, Rc = 1) DIVWUO (OE = 1, Rc = 0) DIVWUO. (OE = 1, Rc = 1) The OE field adds the "O" to the mnemonic, and the Rc field adds the ".". The current script format can actually handle this fine, we just have to write 4 separate instruction descriptors... but, would there be any problems with other ISAs? I'm assuming this sort of stuff can be expanded out. BTW, the parser has to accept "." in the string, and not treat it as some special symbol, because PowerPC needs this ;) Also, if you agree that the expansion operation (number * bit) can be defined in the way I did in my document, perhaps why can add more functions in the future? We could change the syntax to: (* number bit), thus supporting more operations in the future, if needed, with a common simple syntax structure. But I think I'm getting way too complex here, that probably won't be needed :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 17:48:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA14820 for dynarec-outgoing; Mon, 27 Aug 2001 17:48:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 27 Aug 01 20:49:46 -0400 Message-Id: <3.0.5.32.20010827175135.00891a10@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 27 Aug 2001 17:51:35 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[4]: DYNAREC: A couple of things... In-Reply-To: <12724714427.20010828013847@dynarec.com> References: <20010827162402.O22680-100000@beacon.synthcom.com> <20010827162402.O22680-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >CD is call and C9 is ret though, right? If I'm mistaken there then I'm >going to go and jump. :)) I can't answer that, but all I know is that on the X86, 0xCD is INT (though 0xCC implies INT 3, or whatever the trace interrupt is). Not sure what 0xC9 is on the X86. >I got the idea that the x86 would be similar to the Z80 by the fact >that Intel was started by ex-Zilog employees and I found the x86 easy >to come to from Z80 programming. Though, quite obviously, I've >forgotten half that I once knew. Damn... Intel is older than Zilog. If anything, wouldn't Zilog have been started by ex-Intel employees (I've heard an explanation as to why the 8080 and Z80 are similar, is this it?)? I believe Intel is credited with creating the first microprocessor (the 4004?) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 18:15:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA14854 for dynarec-outgoing; Mon, 27 Aug 2001 18:15:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 28 Aug 2001 02:18:30 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <4627096973.20010828021830@dynarec.com> To: dynarec@dynarec.com Subject: Re[6]: DYNAREC: A couple of things... In-Reply-To: <3.0.5.32.20010827175135.00891a10@mailandnews.com> References: <20010827162402.O22680-100000@beacon.synthcom.com> <20010827162402.O22680-100000@beacon.synthcom.com> <3.0.5.32.20010827175135.00891a10@mailandnews.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, B> I can't answer that, but all I know is that on the X86, 0xCD is INT (though B> 0xCC implies INT 3, or whatever the trace interrupt is). Not sure what 0xC9 B> is on the X86. Yeah, those instructions should be CALL and RET only on the Z80 - not the x86. B> Intel is older than Zilog. If anything, wouldn't Zilog have been started by B> ex-Intel employees (I've heard an explanation as to why the 8080 and Z80 B> are similar, is this it?)? I believe Intel is credited with creating the B> first microprocessor (the 4004?) Shit. My memory IS bad. Wrong way around. What I said kind of stands, but it'd be the Z80 copying from the 8080 this time around. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 22:52:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA15055 for dynarec-outgoing; Mon, 27 Aug 2001 22:51:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 22:54:21 -0700 (PDT) From: Neil Bradley To: Subject: Re[4]: DYNAREC: A couple of things... In-Reply-To: <12724714427.20010828013847@dynarec.com> Message-ID: <20010827225039.P24776-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > NB> sure where you get the idea that they're similar! The Z80 had no concept > NB> of a segment, and the x86 did. And as far as "mov" vs. "ld" goes, that > NB> also could be argued for ANY other CPU as well! > Hell. My memory has gone to pot then. You mean from smoking too much of it? ;-) > CD is call and C9 is ret though, right? If I'm mistaken there then I'm > going to go and jump. :)) Yup. But you could go jump anyway! ;-) > My experiences of the Z80 come from the Spectrum and the CPC (mainly > the CPC) where I did bankswitching, switching from one block of 64k to > another - and I know the Speccy did it the same way. I figured that it > was de-facto for the Z80. Obviously not... No. In fact, none of the Z80 platforms I've dealt with as far as home computers ever did that. There were some video games with bank switching, but it was external hardware giving it the bankswitching abilities - nothing intrinsic to the Z80. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 27 23:12:04 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA15086 for dynarec-outgoing; Mon, 27 Aug 2001 23:12:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 27 Aug 2001 23:14:30 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Script format and doc In-Reply-To: <3.0.5.32.20010827174703.0088d720@mailandnews.com> Message-ID: <20010827225506.T24776-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > First of all, could we have the multiplication operator (used for expanding > a field) be "*", instead of "x"? Because if someone decides to use "x" as a > field name, 32xx would look weird :) Yeah, I agree with that. The "x" looks weird when you have an "x" operator. > The "INSTRUCTION" section of the processor information script (PIS?? ;)) Eeew.... > An instruction descriptor has the following syntax: > | | [field descriptions] | [flags in] | > [flags out] | [normal timing] | [branch timing] | [misc. info] I'd change "field descriptions" to "arguments" as it's usually known. Also, put a semicolon at the end. At least that way we know what the end of the line is. I'd rather do that than use whitespace. That gets ugly. > The "bit map" field is a string of binary digits. The number of bits should > be Make that "must be". > a multiple of the instruction granularity specified in the "CPUINFO" > section of the script. Variable fields are represented with > single-character alphabetical characters, repeated for as many bits as the > given field is wide. Special operations can be performed on the bit map by > the parser. These are enclosed in brackets. Currently, supported special > operations are: > > Expand. Syntax: ( * ) Operation: The "bit" is repeated > "decimal number" of > times. > > Therefore, a 32-bit instruction bit map may look like this: > > 0110 RRRR RXXI (4 * J) That's a 16 bit instruction... > White space is purely optional. It is ignored by the parser, but allows the > user to lay the map out more clearly as per his/her personal preference. Looks good. > - < > in a syntax description indicates a mandatory variable area. > - [ ] in a syntax description indicates an optional area. > - Parts of the syntax description not surrounded by any form of braces are > required, and no variable (thus, the | field separator appears exactly like > that in usage.) Yes, very good. > - Which fields in an instruction descriptor are mandatory and which are > not? If we have a null descriptor, will the parser be able to handle it, > and if not, what precisely will cause the errors? I would say that the following are mandatory: * Bit map * Instruction mnemonic * Normal timing The others, depending on the instruction, are optional. If the user omits the opcode argument, then there's no way to properly generate any aspect of the output - disassembler, source dispatcher, or target generator. > - Is the opcode bit map required? What if someone wants to implement a > terminator manually in the cover list by leaving the bit map field blank > and assuming the parser will treat it as 0? Yes, it's required. There is no need to create a terminator that I can see. If it hits the end of the file or hits another section, then > > - If the amount of bits in a bit map is not a multiple of the instruction > granularity, will the parser flag an error, or will it simply zero-extend > the value (printing a warning out after doing so)? > > - What will the deal be with variable instruction mnemonics? Case in point, > the PowerPC... Some arithmetic instructions have an OE and/or Rc field (1 > bit each.) Example, "DIVWUx": > DIVWU (OE = 0, Rc = 0) > DIVWU. (OE = 0, Rc = 1) > DIVWUO (OE = 1, Rc = 0) > DIVWUO. (OE = 1, Rc = 1) I view these as 4 different opcodes. At least that makes sense how they'd be used. > The OE field adds the "O" to the mnemonic, and the Rc field adds the ".". > The current script format can actually handle this fine, we just have to > write 4 separate instruction descriptors... but, would there be any > problems with other ISAs? I'm assuming this sort of stuff can be expanded out. I can't immediately see problems with the processors that I know about. > BTW, the parser has to accept "." in the string, and not treat it as some > special symbol, because PowerPC needs this ;) Okay. I think this field can be reasonably free form. It needs to be flexible so we can create funky things. > Also, if you agree that the expansion operation (number * bit) can be > defined in the way I did in my document, perhaps why can add more functions > in the future? We could change the syntax to: (* number bit), thus > supporting more operations in the future, if needed, with a common simple > syntax structure. But I think I'm getting way too complex here, that > probably won't be needed :) Yes, I'm also thinking that it might be good to (later) create an expression handler so we can do all kinds of funky stuff. But first things first... One thing we've not addressed is how to deal with big vs. little endian. I'm thinking maybe the script should have the ability to do something like this: IMM16 = {16, ((8, numeric) << 8) | (8, numeric))}; And for the 68K, it'd look like this: IMM16 = {16, (8, numeric) | ((8, numeric) << 8))}; Assuming the numeric bits pulled are in the order they're presented in the source image itself. This would allow whatever layer grabbed the number to be able to arrange it as it is needed. We also need an ILLEGAL instruction nmemonic so we can force an illegal condition. So if we have a funky cover condition we need to plug up in a big list of opcodes, we can do it. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 28 00:24:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA15157 for dynarec-outgoing; Tue, 28 Aug 2001 00:24:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 28 Aug 2001 09:23:16 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: To: Subject: Re: DYNAREC: Memory ordering In-Reply-To: <00038c877dc943a2_mailit@mail.dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Mon, 27 Aug 2001, M.I.K.e wrote: > I wasn't even aware of the fact that it was possible to run the PowerPC in > little-endian mode. But I checked and it seems that this feature was added in > PowerPC while POWER1 and POWER2 are big-endian only, just like all other IBM > architectures before. Due to this I assume that the PowerPC is mainly used in > big-endian mode, but that's just a wild guess. Solaris/PPC was supposed to run the processor in little endian mode. I am sure there was at least one OS that made it run in little endian mode. Bye, Gwenole. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 28 06:39:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA15637 for dynarec-outgoing; Tue, 28 Aug 2001 06:39:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 28 Aug 2001 14:19:25 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <1772509598.20010828141925@dynarec.com> To: dynarec@dynarec.com Subject: Re[5]: DYNAREC: A couple of things... In-Reply-To: <20010827225039.P24776-100000@beacon.synthcom.com> References: <20010827225039.P24776-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, NB> You mean from smoking too much of it? ;-) As if! *cough* ;) NB> Yup. But you could go jump anyway! ;-) I love you too. :P I remember those hex codes from a) using my Multiface II to find cheats and b) from cracking copy protection routines. So at least I haven't forgotten everything... NB> No. In fact, none of the Z80 platforms I've dealt with as far as home NB> computers ever did that. There were some video games with bank switching, NB> but it was external hardware giving it the bankswitching abilities - NB> nothing intrinsic to the Z80. Right. I never knew that before, but I'll try to remember it and then looking like a fool was worth it. Besides, I'm used to looking like a fool. ;) I'll add Bart's additions with Neil's corrections to the document later on too... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 28 09:22:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA15768 for dynarec-outgoing; Tue, 28 Aug 2001 09:22:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 28 Aug 01 12:23:57 -0400 Message-Id: <3.0.5.32.20010828092557.0088e600@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 28 Aug 2001 09:25:57 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Script format and doc In-Reply-To: <20010827225506.T24776-100000@beacon.synthcom.com> References: <3.0.5.32.20010827174703.0088d720@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> An instruction descriptor has the following syntax: >> | | [field descriptions] | [flags in] | >> [flags out] | [normal timing] | [branch timing] | [misc. info] > >I'd change "field descriptions" to "arguments" as it's usually known. >Also, put a semicolon at the end. At least that way we know what the end >of the line is. I'd rather do that than use whitespace. That gets ugly. Oops, I forgot about the semicolon. >> Therefore, a 32-bit instruction bit map may look like this: >> >> 0110 RRRR RXXI (4 * J) > >That's a 16 bit instruction... I forgot I had written 32-bit when I was doing that :/ >Yes, it's required. There is no need to create a terminator that I can >see. If it hits the end of the file or hits another section, then What were some of the ideas for disassemblers? It wouldn't be hard for people to write their own disassembler code using the covers generated, but if the idea was to automate the process as much as possible, we might have to support a terminator because some people might want to specifiy a mnemonic for unrecognized instructions, something like "?" or "UNRECOGNIZED" or "INVALID"... >Yes, I'm also thinking that it might be good to (later) create an >expression handler so we can do all kinds of funky stuff. But first things >first... > >One thing we've not addressed is how to deal with big vs. little endian. >I'm thinking maybe the script should have the ability to do something like >this: > >IMM16 = {16, ((8, numeric) << 8) | (8, numeric))}; > >And for the 68K, it'd look like this: > >IMM16 = {16, (8, numeric) | ((8, numeric) << 8))}; > >Assuming the numeric bits pulled are in the order they're presented in the >source image itself. This would allow whatever layer grabbed the number to >be able to arrange it as it is needed. How does that expression work? Wouldn't (8, numeric) always specify the LSB? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 28 13:48:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA15990 for dynarec-outgoing; Tue, 28 Aug 2001 13:48:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 28 Aug 2001 13:51:00 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Script format and doc In-Reply-To: <3.0.5.32.20010828092557.0088e600@mailandnews.com> Message-ID: <20010828131950.O26988-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Yes, it's required. There is no need to create a terminator that I can > >see. If it hits the end of the file or hits another section, then > What were some of the ideas for disassemblers? > It wouldn't be hard for people to write their own disassembler code using > the covers generated, but if the idea was to automate the process as much > as possible, we might have to support a terminator because some people > might want to specifiy a mnemonic for unrecognized instructions, something > like "?" or "UNRECOGNIZED" or "INVALID"... Or more to the point: db xxh Or: dw xxxxh Depending upon how big the basic decode size is. My point is that I wanted to have an automated way we can say "regardless of what you've run into, or even if it matches another cover in the script, cause this to be an invalid instruction". > >IMM16 = {16, ((8, numeric) << 8) | (8, numeric))}; > >And for the 68K, it'd look like this: > >IMM16 = {16, (8, numeric) | ((8, numeric) << 8))}; > >Assuming the numeric bits pulled are in the order they're presented in the > >source image itself. This would allow whatever layer grabbed the number to > >be able to arrange it as it is needed. > How does that expression work? > Wouldn't (8, numeric) always specify the LSB? Nope, not on a big endian machine! This example means: IMM16 = {16, ((8, numeric) << 8) | (8, numeric))}; "The overall quantity is 16 bits. The first 8 bits you encounter when decoding is shifted left 8 bits, and the second 8 bits you encounter is ORd in with the 16 bit value in the lower 8 bits". That way the recompiler or disassembler can properly form it to the end user or put the bytes in the proper place. When working on the Z80 script last night, I found something that I'd really like to do that isn't in the current script format: CC2 = {2, keys = {NZ=0, Z=1, NC=2, C=3}}; CC3 = {3, keys = {NZ=0, Z=1, NC=2, C=3, PO=4, PE=5, P=6, M=7}}; IMM8 = {8, unsigned}; IMM16 = {16, ((8, unsigned) << 8) | (8, unsigned))}; REL8 = {(8, signed) + PC + 2}; [flags] C = {0x01, "Carry"}; N = {0x02, "Negative"}; P = {0x04, "Parity/Overflow"}; 3 = {0x08, "Quarter carry"}; H = {0x10, "Half carry"}; 5 = {0x20, "3/4 Carry"}; Z = {0x40, "Zero"}; S = {0x80, "Sign"}; [instructions] 00000000 |NOP||||4||N; // NOP 001cc000 8*o |JR|cc=CC2, o=REL8| ... It'd be nice if we could somehow tie the condition code flags to the flags that are used to determine what it'd use. Somehow tying the CC2 to the [flags] section. That way I wouldn't have to replicate a big, funky set of conditional instructions. Any ideas on how to do this? -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 28 15:34:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA16081 for dynarec-outgoing; Tue, 28 Aug 2001 15:34:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 28 Aug 01 18:35:47 -0400 Message-Id: <3.0.5.32.20010828153741.0088e100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 28 Aug 2001 15:37:41 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Script format and doc In-Reply-To: <20010828131950.O26988-100000@beacon.synthcom.com> References: <3.0.5.32.20010828092557.0088e600@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Or more to the point: > > db xxh > >Or: > dw xxxxh A typical disassembly looks something like this: ADDR: BYTES INSTRUCTION OPERAND1,OPERAND2,... (at least that's how I'm accustomed to seeing it.) So using db,dw, etc. just restates data that's already there. Something like "?" might help call attention to itself better. Oh, also, how are we going to specify number bases? For hex, will we be using ...h, 0x..., or $...? I personally prefer 0x instead of $ or h, and % for binary. But I could be the oddball case here, so perhaps we should see what everyone likes best and decide on a convention? >IMM16 = {16, ((8, numeric) << 8) | (8, numeric))}; > >"The overall quantity is 16 bits. The first 8 bits you encounter when >decoding is shifted left 8 bits, and the second 8 bits you encounter is >ORd in with the 16 bit value in the lower 8 bits". That way the recompiler >or disassembler can properly form it to the end user or put the bytes in >the proper place. Okay, I see. >When working on the Z80 script last night, I found something that I'd >really like to do that isn't in the current script format: > >CC2 = {2, keys = {NZ=0, Z=1, NC=2, C=3}}; >CC3 = {3, keys = {NZ=0, Z=1, NC=2, C=3, PO=4, PE=5, P=6, M=7}}; > >IMM8 = {8, unsigned}; >IMM16 = {16, ((8, unsigned) << 8) | (8, unsigned))}; >REL8 = {(8, signed) + PC + 2}; > >[flags] > >C = {0x01, "Carry"}; >N = {0x02, "Negative"}; >P = {0x04, "Parity/Overflow"}; >3 = {0x08, "Quarter carry"}; >H = {0x10, "Half carry"}; >5 = {0x20, "3/4 Carry"}; >Z = {0x40, "Zero"}; >S = {0x80, "Sign"}; > >[instructions] > >00000000 |NOP||||4||N; // NOP >001cc000 8*o |JR|cc=CC2, o=REL8| > >... > >It'd be nice if we could somehow tie the condition code flags to the flags >that are used to determine what it'd use. Somehow tying the CC2 to the >[flags] section. That way I wouldn't have to replicate a big, funky set of >conditional instructions. Any ideas on how to do this? I'm not sure I understand... you want to have CC2 define not only the conditions, but the flags used by those conditions as well? CC2 = {2, keys = {{NZ = 0, flags_used = Z}, {Z = 1, flags_used = Z}, etc, etc.... Multiple flags used would look like: flags_used = flag1, flag2, flag3, ... But I'm not sure if that's what you meant. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 28 23:20:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA16428 for dynarec-outgoing; Tue, 28 Aug 2001 23:20:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 28 Aug 2001 23:23:26 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Script format and doc In-Reply-To: <3.0.5.32.20010828153741.0088e100@mailandnews.com> Message-ID: <20010828231352.F28599-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > dw xxxxh > A typical disassembly looks something like this: ADDR: BYTES INSTRUCTION > OPERAND1,OPERAND2,... (at least that's how I'm accustomed to seeing it.) Either way. It's probably better as bytes. > So using db,dw, etc. just restates data that's already there. Something > like "?" might help call attention to itself better. Put in a comment that says "; Invalid command" or something. > Oh, also, how are we going to specify number bases? For hex, will we be > using ...h, 0x..., or $...? I personally prefer 0x instead of $ or h, and % > for binary. But I could be the oddball case here, so perhaps we should see > what everyone likes best and decide on a convention? I do think it should be selectable. Consider the possibility that someone will probably want to feed the disassembly to an assembler later on or perhaps we can make a labeling disassembler out of it. Any thoughts on how to do it? > >It'd be nice if we could somehow tie the condition code flags to the flags > >that are used to determine what it'd use. Somehow tying the CC2 to the > >[flags] section. That way I wouldn't have to replicate a big, funky set of > >conditional instructions. Any ideas on how to do this? > I'm not sure I understand... you want to have CC2 define not only the > conditions, but the flags used by those conditions as well? Yes. You do understand. ;-) > CC2 = {2, keys = {{NZ = 0, flags_used = Z}, {Z = 1, flags_used = Z}, etc, > etc.... > Multiple flags used would look like: flags_used = flag1, flag2, flag3, ... > But I'm not sure if that's what you meant. Precisely what I meant, though I'd change "flags_used" to "flags". And also, we should make sure that the [flags] section comes before the operands. No big deal, but it'll make it easy to parse. Speaking of that, I'm thinking about parse tree formats. Somehow the lexer and grammar checker will have to parse this stuff into a useable format, so my thinking is as follows as far as internal structure goes: typedef struct { UINT8 *pu8CPUName; UINT32 u32InstructionGranularity; } SCPUInfo; typedef struct { UINT8 *pu8Tag; UINT32 u32FlagValue; UINT8 *pu8FlagName; } SFlags; (assume the [instructions] and [operands] sections have structures, too, but they'll be far more complex): typedef struct { SCPUInfo *psCPUInfo; SFlags *psCPUFlags; SOperands *psOperands; SInstructions *psInstructions; } SCPUInfoTree; .... I see the parsing layer as something that'll be needed regardless, and it'll build this SCPUInfoTree and all subsequent trees required to build an in-memory quickly scannable by all the clients that'd use it. Then we can atomically create 3 different modules - the source array dispatcher, the target opcode generator, or the disassembler. It'd take a pointer to SCPUInfoTree and each desired output would use it to generate its output. We'll obviously have to work out the details for the operands and opcodes, but you get the idea. Comments? Maybe now we should start nailing down some of these constructs, and also give a name to the script parser/emitter. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 29 00:32:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA16494 for dynarec-outgoing; Wed, 29 Aug 2001 00:32:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 29 Aug 2001 00:35:26 -0700 (PDT) From: Neil Bradley To: Subject: DYNAREC: Script example Message-ID: <20010829003337.P28599-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Here's what I have so far on the Z80 script. Comments? My thinking is we should get a complete processor definition before we go too crazy creating others. Please look for obscure handlings of these instructions/opcodes so we narrow down any oddities that we probably haven't accounted for! I'll continue to fill this out over time. I'm fairly certain we can put this together fairly quickly for any processor. // CPU Descriptor for the Zilog Z80 // Neil Bradley - August 28th, 2001 [cpuinfo] Name = Z80; InstructionGranularity = 8; [flags] C = {0x01, "Carry"}; N = {0x02, "Negative"}; P = {0x04, "Parity/Overflow"}; 3 = {0x08, "Quarter carry"}; H = {0x10, "Half carry"}; 5 = {0x20, "3/4 Carry"}; Z = {0x40, "Zero"}; S = {0x80, "Sign"}; [operands] REG8 = {3, keys = {B=0, C=1, D=2, E=3, H=4, L=5, (HL)=6, A=7}}; REG16 = {2, keys = {BC=0, DE=1, HL=2, SP=3}}; CC2 = {2, keys = {{NZ=0, flags=Z}, {Z=1, flags=Z}, {NC=2, flags=C}, {C=3, flags=C} }; CC3 = {3, keys = {{NZ=0, flags=Z}, {Z=1, flags=Z}, {NC=2, flags=C}, {C=3, flags=C}, {PO=4, flags=P}, {PE=5, flags=P}, {P=6, flags=S}, {M=7, flags=S}}; IMM8 = {8, unsigned}; IMM16 = {16, ((8, unsigned) << 8) | (8, unsigned))}; REL8 = {(8, signed) + PC + 2}; BIT3 = {3, numeric}; [instructions] 00000000 |NOP||||4||N; // NOP 11001001 |RET||||10||T; // RET 001cc000 (8*o) |JR|c=CC2, o=REL8|cc=CC2||7|12|C; // JR cc, addr 11ccc010 (16*a) |JP|c=CC3, a=IMM16|cc=CC3||10|10|C; // JP cc, addr 01110110 |HALT||||4||N; // HALT 01dddsss |LD|d=REG8, s=REG8|||4||N; // LD reg8, reg8 10001rrr |ADC|A, r=REG8|C|SZHPNC|4||N; // ADC A, reg8 11ccc100 (16*a) |CALL|c=CC3, a=IMM16|cc=CC3||10|17|C; // CALL cc, addr 11001011 10bbb110 |RES|b=BIT3, (HL)|||15||N; // RES bit, (HL) 11001011 10bbbrrr |RES|b=BIT3, r=REG8|||4||N; // RES bit, reg8 11001011 11bbb110 |SET|b=BIT3, (HL)|||15||N; // SET bit, (HL) 11001011 11bbbrrr |SET|b=BIT3, r=REG8|||4||N; // SET bit, reg8 11001011 01bbb110 |BIT|b=BIT3, (HL)||SZHPN|15||N; // BIT bit, (HL) 11001011 01bbbrrr |BIT|b=BIT3, r=REG8||SZHPN|4||N; // BIT bit, reg8 -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 29 07:51:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA16992 for dynarec-outgoing; Wed, 29 Aug 2001 07:51:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 29 Aug 2001 15:52:33 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <954439593.20010829155233@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Script format and doc In-Reply-To: <20010828231352.F28599-100000@beacon.synthcom.com> References: <20010828231352.F28599-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> I do think it should be selectable. Consider the possibility that someone NB> will probably want to feed the disassembly to an assembler later on or NB> perhaps we can make a labeling disassembler out of it. Any thoughts on how NB> to do it? Wow, yeah. That'd be an idea. I'd suggest using every call and return as the labels, so if we had a line like: CALL &DCF9 Then when we get to instruction DCF9 we output: _A_DCF9: blah... dissasembled output It would mean having some kind of array of calls. The only problem I can see is with coding tricks - such as byte sharing, which has been brought to our attention before by John (tarquin)... It's just a basic idea, but that's how I'd envisage implementing it. >> I'm not sure I understand... you want to have CC2 define not only the >> conditions, but the flags used by those conditions as well? NB> Yes. You do understand. ;-) I strangely thought that's how we'd be doing it anyway, so I was a bit flustered when I saw that and wondered if you meant something else. Ok, good. That'll go into the document too. NB> Precisely what I meant, though I'd change "flags_used" to "flags". And NB> also, we should make sure that the [flags] section comes before the NB> operands. No big deal, but it'll make it easy to parse. Document will be ammended... NB> We'll obviously have to work out the details for the operands and opcodes, NB> but you get the idea. Yep, totally. NB> Comments? Maybe now we should start nailing down some of these constructs, NB> and also give a name to the script parser/emitter. I suggest that we get one CPU context written first and then use that as the basis for nailing down the contexts. As for a name, how about your amazing name from yesterday - "SheepShagger"? ;) Ah, okay, maybe not. =) -- Best regards, Neil mailto:neilg@dynarec.com --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 29 09:16:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA17071 for dynarec-outgoing; Wed, 29 Aug 2001 09:16:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 29 Aug 2001 09:19:10 -0700 (PDT) From: Neil Bradley To: Subject: Re[2]: DYNAREC: Script format and doc In-Reply-To: <954439593.20010829155233@dynarec.com> Message-ID: <20010829091739.O30981-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > NB> will probably want to feed the disassembly to an assembler later on or > NB> perhaps we can make a labeling disassembler out of it. Any thoughts on how > NB> to do it? > Wow, yeah. That'd be an idea. I'd suggest using every call and return > as the labels, so if we had a line like: > CALL &DCF9 Yuk. Instead: call Ldcf9 This is what's typically done. > It would mean having some kind of array of calls. The only problem I > can see is with coding tricks - such as byte sharing, which has been > brought to our attention before by John (tarquin)... I'm not sure what you mean... > NB> Comments? Maybe now we should start nailing down some of these constructs, > NB> and also give a name to the script parser/emitter. > I suggest that we get one CPU context written first and then use that > as the basis for nailing down the contexts. I think we should start in a parallel fashion. That way we can finish up with several working CPU cores and hammer the problems out sooner rather than later. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 29 11:11:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA17166 for dynarec-outgoing; Wed, 29 Aug 2001 11:11:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 29 Aug 2001 19:01:29 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <14015775614.20010829190129@dynarec.com> To: dynarec@dynarec.com Subject: Re[3]: DYNAREC: Script format and doc In-Reply-To: <20010829091739.O30981-100000@beacon.synthcom.com> References: <20010829091739.O30981-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> Yuk. Instead: NB> call Ldcf9 NB> This is what's typically done. That's fine - it was just an example off the top of my head. :) NB> I'm not sure what you mean... I can't find the e-mail in question right now, but the best example I can give you is if you had some code like this (non-existant CPU): Address Hex Opcode 80D0 D9CF3D MOV AX, CF3D 80D3 C3D180 JMP 80D1 So address 80D1 is not only data for the instruction at 80D0, but also an instruction when it gets jumped to. That's what I'm getting at, but I don't know how any disassembler would handle it either. NB> I think we should start in a parallel fashion. That way we can finish up NB> with several working CPU cores and hammer the problems out sooner rather NB> than later. Really? Then I'll make a start on the x86. I've only just realised the immensity of it. Do I create seperate scripts for each processor (8086, 286, 386 etc) which would be easier... or just do one for all instructions up to the PIII? And what about the Athlon's "3DNow!" instructions? -- Best regards, Neil mailto:neilg@dynarec.com --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 29 11:18:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA17179 for dynarec-outgoing; Wed, 29 Aug 2001 11:18:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 29 Aug 2001 11:21:06 -0700 (PDT) From: Neil Bradley To: Subject: Re[3]: DYNAREC: Script format and doc In-Reply-To: <14015775614.20010829190129@dynarec.com> Message-ID: <20010829111854.F30981-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > NB> I'm not sure what you mean... > I can't find the e-mail in question right now, but the best example I > can give you is if you had some code like this (non-existant CPU): No disassembler does this anyway. > NB> I think we should start in a parallel fashion. That way we can finish up > NB> with several working CPU cores and hammer the problems out sooner rather > NB> than later. > Really? Then I'll make a start on the x86. I've only just realised the > immensity of it. Do I create seperate scripts for each processor > (8086, 286, 386 etc) which would be easier... or just do one for all > instructions up to the PIII? And what about the Athlon's "3DNow!" > instructions? No, don't go crazy. You do'nt have to do all of it. I don't think we'll be recompiling x86 stuff! Just include the basic instructions and nothing more. We do not have to go crazy with SIMD, MMX, or that now abandoned and ignored 3DNow stuff from AMD! The standard gamut of mov, jmp, dec, inc, push, pop, call, and ret variants are really all that's needed. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 29 13:03:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA17277 for dynarec-outgoing; Wed, 29 Aug 2001 13:03:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 29 Aug 01 16:05:02 -0400 Message-Id: <3.0.5.32.20010829130649.0088c380@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 29 Aug 2001 13:06:49 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[3]: DYNAREC: Script format and doc In-Reply-To: <14015775614.20010829190129@dynarec.com> References: <20010829091739.O30981-100000@beacon.synthcom.com> <20010829091739.O30981-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I can't find the e-mail in question right now, but the best example I >can give you is if you had some code like this (non-existant CPU): > >Address Hex Opcode >80D0 D9CF3D MOV AX, CF3D >80D3 C3D180 JMP 80D1 > >So address 80D1 is not only data for the instruction at 80D0, but also >an instruction when it gets jumped to. That's what I'm getting at, but >I don't know how any disassembler would handle it either. I don't think this will even be an issue. The disassembler will kind of handle it automatically if we don't think about it. If we want to see what's at 0x80D1, we just tell the disassembler to start disassembling at 0x80d1 :) In an interactive debugger, the disassembler will be used to disassemble the instruction at the current IP location, so if the code jumps to 0x80d1, so be it. It's important that we make it so the disassembler returns the # of bytes disassembled. This will come in handy when writing debuggers, because a good way to implement a "skip over" command in ISAs where instructions are not fixed length is to simply call the disassembler at the current IP, get the number of bytes, and jump over the instruction. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 29 13:23:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA17301 for dynarec-outgoing; Wed, 29 Aug 2001 13:23:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 29 Aug 01 16:25:04 -0400 Message-Id: <3.0.5.32.20010829132654.0088f8f0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 29 Aug 2001 13:26:54 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Script format and doc In-Reply-To: <20010828231352.F28599-100000@beacon.synthcom.com> References: <3.0.5.32.20010828153741.0088e100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I do think it should be selectable. Consider the possibility that someone >will probably want to feed the disassembly to an assembler later on or >perhaps we can make a labeling disassembler out of it. Any thoughts on how >to do it? I'm not sure about where to start implementing a disassembler, hopefully someone else has some good ideas (my disassemblers always rely on hand-made tables made specifically for the project), but I think I know how we can handle prefixes and suffixes for numeric data. Simply write a replacement for sprintf(). The disassembler code would use this. I did something like this in my PowerPC disassembler, but the sprintf() wrapper I wrote only checks to make sure the destination buffer is not NULL. Our sprintf() could do more. It could look for %...X and add stuff before or after it. We could let the user specify strings to be appended and pre-pended to hexadecimal and decimal numbers (we don't have to support binary in a disassembler.) Alternatively, but in a similar line of thinking, if we could really automate the disassembler output, we could construct a fixed table of strings: STRING table[] = { { "ADD" }, { "R%d,%08X,%08X" }, ... }; Along with an enumeration of identifiers which would be used to reference these strings in the code. This would make changing text really easy, because it could be done once for every string, and would help performance. It would be hard to implement, though. >Comments? Maybe now we should start nailing down some of these constructs, >and also give a name to the script parser/emitter. Ah, the most crucial element of any project: the name ;) We could initially just call it "sp" for "script processor." We could play with the "DR" in DR68K to make it "Doctor." Then we can have a bunch of Doctor utilities. Doctor Script, paging Doctor Script. For now, "sp" or "drsp" would be good. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 29 14:29:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA17365 for dynarec-outgoing; Wed, 29 Aug 2001 14:29:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 29 Aug 2001 14:31:56 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[3]: DYNAREC: Script format and doc In-Reply-To: <3.0.5.32.20010829130649.0088c380@mailandnews.com> Message-ID: <20010829134516.M30981-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > It's important that we make it so the disassembler returns the # of bytes > disassembled. This will come in handy when writing debuggers, because a > good way to implement a "skip over" command in ISAs where instructions are > not fixed length is to simply call the disassembler at the current IP, get > the number of bytes, and jump over the instruction. Here's the API that I had envisioned for each debugger: typedef enum { LABEL_DATA, LABEL_ADDRESS, LABEL_TERMINATOR } ELabelType; typedef struct { UINT32 u32Address; // Address with label associated ELabelType eType; // LABEL_DATA or LABEL_ADDRESS UINT8 *pu8LabelName; // Name of label (text) SLabels *psNextLink; // Link to next label } SLabels; typedef struct { BRANCH_NONE, // Not a branch instruction BRANCH_TERMINAL, // It's terminal - forces branch BRANCH_CONDITIONAL, // Conditional branch BRANCH_TERMINATOR } EBranchType typedef struct { UINT32 u32Address; // Address UINT8 *pu8DisasmData; // Pointer to data to disassemble UINT8 *pu8DisasmHexBytes; // Hex representation of opcode UINT32 u32DisasmHexLen; // Length of disasm hex length UINT8 *pu8Instruction; // Main instruction UINT32 u32InstructionLen; // Length of disasm instrction len UINT8 *pu8Argument; // Instruction arguments UINT32 u32ArgumentLen; // Argument length UINT8 *pu8Comment; // Comment (if any) UINT32 u32CommentLen; // Max length of comment text SLabels *psLabels; // Address->label table EBranchType eBranch; // BRANCH_NONE, BRANCH_COND, etc.. UINT32 u32BranchAddr; // Branch addr } SDisassembly; UINT32 x86DisasmOne(SDisassembly *psDisasm) { return(Length of disassembled instruction); } So how does it work? * User creates an SDisassembly structure somewhere * User passes in pointers to where he wants the data to go (and max lengths, too). User can pass in NULL if the information isn't provided or desired. For example, you may not care about the comment or the disasm hex bytes. A sample disassembly main loop would look something like this: void DisassembleCode(UINT8 *pu8Data, UINT32 u32InputAddr, UINT32 u32EndAddr) { SDisassembly sDisasm; UINT8 u8DisasmHexBytes[20]; UINT8 u8Instruction[10]; UINT8 u8Argument[50]; memset(&sDisasm, 0, sizeof(sDisasm)); sDisasm.pu8DisasmData = pu8Data; sDisasm.pu8DisasmHexBytes = u8DisasmHexBytes; sDisasm.u32DisasmHexLen = sizeof(u8DisasmHexBytes) - 1; sDisasm.pu8Instruction = u8Instruction; sDisasm.u32InstructionLen = sizeof(u8Instruction) - 1; sDisasm.pu8Argument = u8Argument; sDisasm.u32ArgumentLen = sizeof(u8Argument) - 1; while (u32InputAddr < u32EndAddr) { sDisasm.u32Address = u32InputAddr; u32Length = x86DisasmOne(&sDisasm); printf("%.8lx %-12s %-5s\t%s\n", sDisasm.u32Address, sDisasm.pu8DisasmHexBytes, sDisasm.pu8Instruction, sDisasm.pu8Argument); u32InputAddr += u32Length; } } The client using the disassembler has the flexibility of doing disassembly any way it wants. Don't want a comment? Don't ask for it - leave it as a NULL pointer. So thinking ahead in terms of disassembly, here's where the fun begins: The *psLabel structure can be passed in so that instructions like: ld a, (3c00h) Can be: ld a, (Screen) It would know the difference between an address and a data value based on the type of data that's in the psLabel structure. Now comes the coolness. What if we wanted to gather a map and do a depth traversal of the code to get a map of where things are? Simple! Look at the eBranch variable on return. If it's BRANCH_NONE, continue on to the next instruction. If it's BRANCH_TERMINAL, return. If it's BRANCH_CONDITIONAL, call the disassembly loop again with the branched-to address. Set all the strings to NULL so it doesn't bother disassembling the instruction into a textual form (because you don't care). Of course the outer loop would have to keep a map of what it has or hasn't visited, but the disassembler, from the original script I've shown before, can do depth traversal on any CPU and map the whole damn thing. Cool? -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 29 16:28:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA17485 for dynarec-outgoing; Wed, 29 Aug 2001 16:28:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 29 Aug 01 19:29:38 -0400 Message-Id: <3.0.5.32.20010829163121.0088f680@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 29 Aug 2001 16:31:21 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[3]: DYNAREC: Script format and doc In-Reply-To: <20010829134516.M30981-100000@beacon.synthcom.com> References: <3.0.5.32.20010829130649.0088c380@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > SDisassembly sDisasm; > UINT8 u8DisasmHexBytes[20]; > UINT8 u8Instruction[10]; > UINT8 u8Argument[50]; What about having some disassembler calls which return how many bytes are neccessary for each? >The client using the disassembler has the flexibility of doing disassembly >any way it wants. Don't want a comment? Don't ask for it - leave it as a >NULL pointer. The NULL idea is good, and that's how I do things with my sprintf() wrapper, and we should probably do it in such a way. >So thinking ahead in terms of disassembly, here's where the fun begins: > >The *psLabel structure can be passed in so that instructions like: > > ld a, (3c00h) > >Can be: > > ld a, (Screen) > >It would know the difference between an address and a data value based on >the type of data that's in the psLabel structure. Now comes the coolness. That's cool! Of course, the most useful application for labels is to assign names to addresses of memory which are just used as data, so you can figure out how a program works better. A debugger could have a command which would assign an address to a label, so the user could add/remove/change labels as he goes through the code. >What if we wanted to gather a map and do a depth traversal of the code to >get a map of where things are? Simple! Look at the eBranch variable on >return. If it's BRANCH_NONE, continue on to the next instruction. If it's >BRANCH_TERMINAL, return. If it's BRANCH_CONDITIONAL, call the disassembly >loop again with the branched-to address. Set all the strings to NULL so it >doesn't bother disassembling the instruction into a textual form (because >you don't care). That is cool! The only problem would be indirect branches. BTW, http://www.theregister.co.uk/content/6/21324.html ... does anyone have any thoughts on this? It's kind of scarey, IMHO. I feel really bad for Dmitri. A potential grand total of 25 years in prison? That's terrible :/ Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 29 16:41:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA17505 for dynarec-outgoing; Wed, 29 Aug 2001 16:41:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 29 Aug 2001 16:43:57 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[3]: DYNAREC: Script format and doc In-Reply-To: <3.0.5.32.20010829163121.0088f680@mailandnews.com> Message-ID: <20010829163939.W30981-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > UINT8 u8Instruction[10]; > > UINT8 u8Argument[50]; > What about having some disassembler calls which return how many bytes are > neccessary for each? Wanna write code to go through and figure out the largest for each of the instructions including all the variable length fields and every possible tag? I don't! It's rational to assume that the debugger wrapper will know what the limitations of the processors are in the first place, so this shouldn't be an issue. > >It would know the difference between an address and a data value based on > >the type of data that's in the psLabel structure. Now comes the coolness. > That's cool! Of course, the most useful application for labels is to assign > names to addresses of memory which are just used as data, so you can figure > out how a program works better. A debugger could have a command which would > assign an address to a label, so the user could add/remove/change labels as > he goes through the code. Bingo. And as he learns new magic addresses, he can enter them in, as well as additional entry points of known code branches. > >return. If it's BRANCH_NONE, continue on to the next instruction. If it's > >BRANCH_TERMINAL, return. If it's BRANCH_CONDITIONAL, call the disassembly > >loop again with the branched-to address. Set all the strings to NULL so it > >doesn't bother disassembling the instruction into a textual form (because > >you don't care). > That is cool! The only problem would be indirect branches. That's a problem anyway unless you execute. What disassembler do you know that actually can deal with indirect branches? ;-) > BTW, http://www.theregister.co.uk/content/6/21324.html ... does anyone have > any thoughts on this? It's kind of scarey, IMHO. I feel really bad for > Dmitri. A potential grand total of 25 years in prison? That's terrible :/ The DMCA is a violation of civil rights. I really wish everyone in the world did exactly that - violated the DMCA where there are so many people doing it that there's no one they can really prosecute. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 29 17:34:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA17551 for dynarec-outgoing; Wed, 29 Aug 2001 17:34:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 29 Aug 01 20:35:45 -0400 Message-Id: <3.0.5.32.20010829173732.00894cd0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 29 Aug 2001 17:37:32 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[3]: DYNAREC: Script format and doc In-Reply-To: <20010829163939.W30981-100000@beacon.synthcom.com> References: <3.0.5.32.20010829163121.0088f680@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Wanna write code to go through and figure out the largest for each of the >instructions including all the variable length fields and every possible >tag? I don't! It's rational to assume that the debugger wrapper will know >what the limitations of the processors are in the first place, so this >shouldn't be an issue. It could be calculated by hand, but I guess that's more work and prone to error. >That's a problem anyway unless you execute. What disassembler do you know >that actually can deal with indirect branches? ;-) None, but I think it could be possible, in an interactive debugger, to have a comment field describe where an indirect branch is going to go, based on the current value of the register(s) involved. This comment could change as code is executed. It would be pretty neat, but probably not necessary :) Though maybe, just maybe, it could be somewhat useful in code that doesn't change the register involved in the indirect jump often. >The DMCA is a violation of civil rights. I really wish everyone in the >world did exactly that - violated the DMCA where there are so many people >doing it that there's no one they can really prosecute. Definitely. At first glance, I think the DMCA might not seem so bad... until you think about what it's saying. I think it's kind of like a law that would prevent you from opening up the hood of your car. It's really unfair to regulate how one uses products he/she bought, especially if you aren't going to be directly harming anyone. Have you heard about the guy who got in trouble with the FBI for pointing out some news site's server misconfiguration? I really wish I had a link to provide, but I can't remember anymore. The story essentially went like this: Some guy, who worked for an ISP, wanted to test out what some banner code would look like in a web page, so while at the news site, he went to "Edit Page", assuming it would create a local copy, but realized by what came up that there was a server misconfiguration and that the site could be altered by anyone. He promptly reported this to the person in charge of the site, who got angry at this helpful information, and ended up getting the FBI involved. I don't think he ever had charges brought up against him, because there wasn't a case, but the FBI was trying to find some way to land him in court. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 29 20:00:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA17662 for dynarec-outgoing; Wed, 29 Aug 2001 19:59:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 29 Aug 2001 20:02:50 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[3]: DYNAREC: Script format and doc In-Reply-To: <3.0.5.32.20010829173732.00894cd0@mailandnews.com> Message-ID: <20010829195808.B32625-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >what the limitations of the processors are in the first place, so this > >shouldn't be an issue. > It could be calculated by hand, but I guess that's more work and prone to > error. But it couldn't, really. Because if you have labels and whatnot being thrown in there, it can screw things up badly. > >That's a problem anyway unless you execute. What disassembler do you know > >that actually can deal with indirect branches? ;-) > None, but I think it could be possible, in an interactive debugger, to have > a comment field describe where an indirect branch is going to go, based on > the current value of the register(s) involved. This comment could change as > code is executed. Obviously this is beyond at least the initial scope of what we want the disassembler for, but the components are there for us to do whatever we want with it. > until you think about what it's saying. I think it's kind of like a law > that would prevent you from opening up the hood of your car. It's really > unfair to regulate how one uses products he/she bought, especially if you > aren't going to be directly harming anyone. The one big problem they have with content is they have to prove, beyond a shadow of a doubt, that I DO NOT have the right to whatever I happen to posess. For instance, if I have a Erasure track on my hard disk in MP3 format, they'll have to prove that I do not have the right to it (I.E. a CD). > Have you heard about the guy who got in trouble with the FBI for pointing > out some news site's server misconfiguration? I really wish I had a link to > provide, but I can't remember anymore. The story essentially went like this: Somehow I don't quite believe those stories. There's always more to it but for the sake of sensationalism the media conveniently omits details. Same deal with the lady who got a 3 million dollar judgement from McDonalds for spilled coffee. McDonalds was on report for several other instances of the same thing. The woman who sued sued for medical bills only and it was the fucking DA who decided to push the issue. Same deal with Randall Schwartz. Do a web search. They made him out to be a big martyr and Intel to be the bad guy, but he was guilty as hell of knowingly not following company policy. I'm wondering what the other side of the story is. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 29 23:52:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA17835 for dynarec-outgoing; Wed, 29 Aug 2001 23:51:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 29 Aug 2001 23:53:55 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Script example Message-ID: <20010829235355.D28122@hetfield.patsoffice.com> References: <20010829003337.P28599-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010829003337.P28599-100000@beacon.synthcom.com>; from neil@synthcom.com on Wed, Aug 29, 2001 at 12:35:26AM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > InstructionGranularity = 8; Just curious why this is 8 when... > 11001011 10bbb110 |RES|b=BIT3, (HL)|||15||N; // RES bit, (HL) > 11001011 10bbbrrr |RES|b=BIT3, r=REG8|||4||N; // RES bit, reg8 > > 11001011 11bbb110 |SET|b=BIT3, (HL)|||15||N; // SET bit, (HL) > 11001011 11bbbrrr |SET|b=BIT3, r=REG8|||4||N; // SET bit, reg8 > > 11001011 01bbb110 |BIT|b=BIT3, (HL)||SZHPN|15||N; // BIT bit, (HL) > 11001011 01bbbrrr |BIT|b=BIT3, r=REG8||SZHPN|4||N; // BIT bit, reg8 These are 16 bit instructions? The 6809 has the same extended opcodes for 00001010 and 00001011... Or will the parser emit code that's smart enough to know to fetch an additional instruction if it's one of the "extended" opcodes? Just curious since I don't recall reading any discussions about this. Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 00:05:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA17862 for dynarec-outgoing; Thu, 30 Aug 2001 00:05:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Aug 2001 00:08:27 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Script example In-Reply-To: <20010829235355.D28122@hetfield.patsoffice.com> Message-ID: <20010830000411.W33006-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > InstructionGranularity = 8; > Just curious why this is 8 when... > > 11001011 01bbb110 |BIT|b=BIT3, (HL)||SZHPN|15||N; // BIT bit, (HL) > > 11001011 01bbbrrr |BIT|b=BIT3, r=REG8||SZHPN|4||N; // BIT bit, reg8 > These are 16 bit instructions? It's the smallest unit the processor will fetch when executing. There are plenty of single byte instructions in the x86. The 68K, however, is a 16 bit instruction and always fetches 16 bit increments. PPC Would have an instruction granularity of 32 bits. > The 6809 has the same extended opcodes for > 00001010 and 00001011... Or will the parser emit code that's smart enough > to know to fetch an additional instruction if it's one of the "extended" > opcodes? Yes. When you run the script, it'll generate something for the above like: {2, {0xff, 0x46}, {0xcb, 0x46}, ..... // BIT bit, (HL) The above says "2 byte instruction, mask is 0xff/0x46 for the two bytes, match value is 0xcb/0x46" and the disassembler, emitter, or source array emitter will figure this out. Actually, I just saw an error in the script... the "bbb" in the (HL) example should be some other value.. ;-( > Just curious since I don't recall reading any discussions about > this. There was discussion a while back on the data in this "source" CPU structure but it was buried. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 00:09:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA17872 for dynarec-outgoing; Thu, 30 Aug 2001 00:09:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Aug 2001 00:13:04 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: Script example In-Reply-To: <20010829235355.D28122@hetfield.patsoffice.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 29 Aug 2001, Patrick Lawrence wrote: > > InstructionGranularity = 8; > > 11001011 01bbb110 |BIT|b=BIT3, (HL)||SZHPN|15||N; // BIT bit, (HL) > > 11001011 01bbbrrr |BIT|b=BIT3, r=REG8||SZHPN|4||N; // BIT bit, reg8 > > These are 16 bit instructions? The 6809 has the same extended opcodes for > 00001010 and 00001011... Or will the parser emit code that's smart enough > to know to fetch an additional instruction if it's one of the "extended" Given my understanding of the script format, all instructions are required to be multiples of the instruction granularity. A granularity of 16 would not allow the single byte instructions earlier in the script... The parser will have to keep track of the total size of each opcode along with how to match it, otherwise CISC chips will be rather difficult to describe =P > Pat John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 00:13:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA17885 for dynarec-outgoing; Thu, 30 Aug 2001 00:13:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Aug 2001 00:15:33 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Script example Message-ID: <20010830001533.E28122@hetfield.patsoffice.com> References: <20010829003337.P28599-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010829003337.P28599-100000@beacon.synthcom.com>; from neil@synthcom.com on Wed, Aug 29, 2001 at 12:35:26AM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > CC2 = {2, keys = {{NZ=0, flags=Z}, {Z=1, flags=Z}, {NC=2, flags=C}, > {C=3, flags=C} }; > CC3 = {3, keys = {{NZ=0, flags=Z}, {Z=1, flags=Z}, {NC=2, flags=C}, > {C=3, flags=C}, {PO=4, flags=P}, {PE=5, flags=P}, > {P=6, flags=S}, {M=7, flags=S}}; Can somebody explain these in a bit more detail? What are NZ, Z, NC, C, PO, PE, P, and M? I realize that a bit field is specifying one of them and that they have a flag affected tied to them. I'm just not sure what they are. :-) Thanks, Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 00:17:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA17898 for dynarec-outgoing; Thu, 30 Aug 2001 00:17:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Aug 2001 00:19:32 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Script example Message-ID: <20010830001932.F28122@hetfield.patsoffice.com> References: <20010829235355.D28122@hetfield.patsoffice.com> <20010830000411.W33006-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010830000411.W33006-100000@beacon.synthcom.com>; from neil@synthcom.com on Thu, Aug 30, 2001 at 12:08:27AM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > It's the smallest unit the processor will fetch when executing. Great (thanks Neil and John) that's what I thought was the case, but wanted to clarify. Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 00:20:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA17911 for dynarec-outgoing; Thu, 30 Aug 2001 00:20:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Aug 2001 00:22:34 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Script example Message-ID: <20010830002234.G28122@hetfield.patsoffice.com> References: <20010829003337.P28599-100000@beacon.synthcom.com> <20010830001533.E28122@hetfield.patsoffice.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010830001533.E28122@hetfield.patsoffice.com>; from pjl@patsoffice.com on Thu, Aug 30, 2001 at 12:15:33AM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Can somebody explain these in a bit more detail? What are NZ, Z, NC, C, > PO, PE, P, and M? I realize that a bit field is specifying one of them > and that they have a flag affected tied to them. I'm just not sure what > they are. :-) Why do I always have an epiphany after I hit send? JRNZ, JRZ, JRNC, JRC, etc... Pat --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 02:33:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id CAA18182 for dynarec-outgoing; Thu, 30 Aug 2001 02:32:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Aug 2001 02:04:32 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Script example Message-ID: <20010830020432.J28122@hetfield.patsoffice.com> References: <20010829003337.P28599-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010829003337.P28599-100000@beacon.synthcom.com>; from neil@synthcom.com on Wed, Aug 29, 2001 at 12:35:26AM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > [operands] > REG8 = {3, keys = {B=0, C=1, D=2, E=3, H=4, L=5, (HL)=6, A=7}}; > REG16 = {2, keys = {BC=0, DE=1, HL=2, SP=3}}; > CC2 = {2, keys = {{NZ=0, flags=Z}, {Z=1, flags=Z}, {NC=2, flags=C}, > {C=3, flags=C} }; > CC3 = {3, keys = {{NZ=0, flags=Z}, {Z=1, flags=Z}, {NC=2, flags=C}, > {C=3, flags=C}, {PO=4, flags=P}, {PE=5, flags=P}, > {P=6, flags=S}, {M=7, flags=S}}; > IMM8 = {8, unsigned}; > IMM16 = {16, ((8, unsigned) << 8) | (8, unsigned))}; > REL8 = {(8, signed) + PC + 2}; > BIT3 = {3, numeric}; None of the above appear to fetch from memory. Has there been a discussion about an operand format for memory reads and writes? Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 09:14:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA18502 for dynarec-outgoing; Thu, 30 Aug 2001 09:14:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Aug 2001 09:17:09 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Script example In-Reply-To: <20010830020432.J28122@hetfield.patsoffice.com> Message-ID: <20010830091532.O35138-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > REG8 = {3, keys = {B=0, C=1, D=2, E=3, H=4, L=5, (HL)=6, A=7}}; > > REG16 = {2, keys = {BC=0, DE=1, HL=2, SP=3}}; > > CC2 = {2, keys = {{NZ=0, flags=Z}, {Z=1, flags=Z}, {NC=2, flags=C}, > > {C=3, flags=C} }; > > CC3 = {3, keys = {{NZ=0, flags=Z}, {Z=1, flags=Z}, {NC=2, flags=C}, > > {C=3, flags=C}, {PO=4, flags=P}, {PE=5, flags=P}, > > {P=6, flags=S}, {M=7, flags=S}}; > > IMM8 = {8, unsigned}; > > IMM16 = {16, ((8, unsigned) << 8) | (8, unsigned))}; > > REL8 = {(8, signed) + PC + 2}; > > BIT3 = {3, numeric}; > None of the above appear to fetch from memory. Has there been a > discussion about an operand format for memory reads and writes? I'm not clear on why we need to make the distinction... -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 10:06:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA18550 for dynarec-outgoing; Thu, 30 Aug 2001 10:06:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Aug 2001 10:08:08 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Script example Message-ID: <20010830100808.L28122@hetfield.patsoffice.com> References: <20010830020432.J28122@hetfield.patsoffice.com> <20010830091532.O35138-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010830091532.O35138-100000@beacon.synthcom.com>; from neil@synthcom.com on Thu, Aug 30, 2001 at 09:17:09AM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > None of the above appear to fetch from memory. Has there been a > > discussion about an operand format for memory reads and writes? > > I'm not clear on why we need to make the distinction... I guess I don't have a complete idea of what is going to go into the emulator beyond the script format (which for the most part is clear...) How much of a common infrastructure beyond the parser will we have for the various CPU cores. Perhaps I should just lurk until the project is a bit farther along. :-) Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 12:43:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA18687 for dynarec-outgoing; Thu, 30 Aug 2001 12:42:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Aug 2001 12:45:21 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Script example In-Reply-To: <20010830100808.L28122@hetfield.patsoffice.com> Message-ID: <20010830111445.P35138-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > None of the above appear to fetch from memory. Has there been a > > > discussion about an operand format for memory reads and writes? > > I'm not clear on why we need to make the distinction... > I guess I don't have a complete idea of what is going to go into the > emulator beyond the script format (which for the most part is clear...) Thank you Alex Pasadyn. ;-) It was his idea. > How much of a common infrastructure beyond the parser will we have for the > various CPU cores. Perhaps I should just lurk until the project is a bit > farther along. :-) No, no, no... don't do that! It's good to have people ask questions - keeps us on our toes! Anyway, the goal of the script is to output 4 things: * A source layer array that contains structural information about all the instructions for a given processor. This is the table that the recompiler uses to handle a given instruction and figure out which cover to call for any given source layer instruction. * A disassembler for that processor. Provides an interface similar to what I described in yesterday's email. Just a simple one API that will get the pertinent information and not do anything fancy, with the understanding that the fanciness is done by a self written wrapper. * An opcode emitter. This emits individual opcodes. For example, if we need a "dec al" instruction on the x86, There'd be a procedure automatically created called x86GenDecReg8() with a parameter of which register to decrement. * A cover template set of procedures. This is the set of procedures that are called to recompile any given single instruction - referenced by the source layer array. So if we're doing a Z80 recompiler, the cover generator would emit x86 code (by calling the generated opcode emitter for each cover instruction needed) to cover the same functionality of the source layer instruction. Of course, since this logic is a bit more involved than what can be inferred from the script, the cover generator needs to be hand written. Clear as mud? -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 13:09:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA18740 for dynarec-outgoing; Thu, 30 Aug 2001 13:08:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Aug 2001 21:12:21 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <12923519479.20010830211221@dynarec.com> To: dynarec@dynarec.com Subject: DYNAREC: Just for Neil B's amusement... In-Reply-To: <20010830100808.L28122@hetfield.patsoffice.com> References: <20010830020432.J28122@hetfield.patsoffice.com> <20010830091532.O35138-100000@beacon.synthcom.com> <20010830100808.L28122@hetfield.patsoffice.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, http://www.emulators.com/pentium4.htm A complete slating of the P4. I disagree with quite a lot of it. What do you guys think? Neil PS He thinks the Transmeta CPU is good. :)))) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 14:46:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA18818 for dynarec-outgoing; Thu, 30 Aug 2001 14:44:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Aug 2001 14:47:25 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Just for Neil B's amusement... In-Reply-To: <12923519479.20010830211221@dynarec.com> Message-ID: <20010830144452.I35605-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > http://www.emulators.com/pentium4.htm > A complete slating of the P4. I disagree with quite a lot of it. What > do you guys think? He's an idiot. He did the same thing to the P3 and the Pentium Pro. "Since it doesn't run *TODAY'S* software at a higher speed, what's the point?" Did he make the same argument for the PPC when it was first release? Nope! He's also slagging Intel for the same things that he's praising Transmeta for even though it performs worse at the same clock than an equivalent Pentium (like 40% worse). And no mention for super kudos on Intel's mobile chipset. The whole thing is slagging on Intel - some of it justifiably but most of it is just his anti-Intel stance. If you read his message, he says that everything Intel did is wrong and everything everyone else did was right. Sounds like a convincing argument but it has LOTS of holes. He should be in marketing. ;-) > PS He thinks the Transmeta CPU is good. :)))) Further proof he's an idiot. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 16:17:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA18900 for dynarec-outgoing; Thu, 30 Aug 2001 16:15:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Aug 2001 16:17:47 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Script example Message-ID: <20010830161747.C3810@hetfield.patsoffice.com> References: <20010830100808.L28122@hetfield.patsoffice.com> <20010830111445.P35138-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010830111445.P35138-100000@beacon.synthcom.com>; from neil@synthcom.com on Thu, Aug 30, 2001 at 12:45:21PM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > No, no, no... don't do that! It's good to have people ask questions - > keeps us on our toes! Well, just remember, I'm a little slow... :-) So you might need to explain something 3 or 4 times how it relates to the larger picture. > * A source layer array that contains structural information about all > the instructions for a given processor. This is the table that the > recompiler uses to handle a given instruction and figure out which cover > to call for any given source layer instruction. And the cover is specific to the core keyed on the instruction mnemonic I would assume? Are the field descriptions arguments passed on to the cover function? Is there anything that's passed on by default? Did a miss an email discussing the data structures for this? Is that a lot of questions in one paragraph? :-) > * An opcode emitter. This emits individual opcodes. For example, if we > need a "dec al" instruction on the x86, There'd be a procedure > automatically created called x86GenDecReg8() with a parameter of which > register to decrement. Got it. I'd assume that this opcode emitter would do the "flag optomization 'til branch" for the dynarec? > * A cover template set of procedures. This is the set of procedures that > are called to recompile any given single instruction - referenced by the > source layer array. So if we're doing a Z80 recompiler, the cover > generator would emit x86 code (by calling the generated opcode emitter > for each cover instruction needed) to cover the same functionality of > the source layer instruction. Gotcha. So the cover templates know that a certain instruction fetches the effective address indirectly and loads it from memory. That solves my other earlier question! > Clear as mud? No, much clearer. I was just confused that there was currently more going on than the script definition than I was aware of. While there is a great deal of benefit to the script definition for a nice orthoganal processor like the 680xx there is not as much for something like the 6802. So beyond the script definition, what else is going on? What needs to be done? I've started on a 6809 definition (and pretty much any other 680x processor since they're all fairly similar.) The indexed mode is giving me fits of how to represent the modes in a compact fashion (there are 14 possible ways that indexed addressing works.) Anyhow, I'll post what I've got in a few days. Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 17:09:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA18946 for dynarec-outgoing; Thu, 30 Aug 2001 17:07:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <007d01c131b4$59398260$5da4fea9@burp> From: "Tom Browne" To: References: <20010830020432.J28122@hetfield.patsoffice.com> <20010830091532.O35138-100000@beacon.synthcom.com> <20010830100808.L28122@hetfield.patsoffice.com> <12923519479.20010830211221@dynarec.com> Subject: Re: DYNAREC: Just for Neil B's amusement... Date: Fri, 31 Aug 2001 01:31:59 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > http://www.emulators.com/pentium4.htm > A complete slating of the P4. I disagree with quite a lot of it. What > do you guys think? He never once stopped to consider where Intel were coming from with the P4. Namely, vastly improved floating point performance via. SSE2, and the bandwidth to match. Legacy apps have suffered as a result of some of Intel's die-hacking to get the size down, sure, but with the 2GHz+ P4s and huuuge price cuts on the way, no-one will notice. Benchmarks have hinted at what the P4 will do in the future... there are no crippling problems apparent. WTF is he going on about L3 cache for? When those price cuts come, and the DDR i845 boards arrive (SDR i845 - uurrrgghh!), I'll first in line. I can use all the floating point power I can muster right now... it's a pain in the arse to wait over an hour to calculate an equiripple filter only to discover the result it isn't quite what you wanted! And anyone who drops this into an article... "Since most developers do not write in low-level machine language as I do" Needs a slap. MOST developers only write low-level when deemed worthwhile! > PS He thinks the Transmeta CPU is good. :)))) It is good. For embedded apps... like washing machines... :) - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 20:01:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA19074 for dynarec-outgoing; Thu, 30 Aug 2001 19:59:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 30 Aug 2001 20:02:51 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: Just for Neil B's amusement... In-Reply-To: <12923519479.20010830211221@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > http://www.emulators.com/pentium4.htm > > A complete slating of the P4. I disagree with quite a lot of it. What > do you guys think? I noticed on his "Dirty little secrets!" page he refers to gibson research's article on a DDoS attack. http://grc.com/dos/intro.htm. The guy at gibson research is a fucking idiot of the highest degree =P (He claimed that XP's ability to handle raw sockets was a bad thing, as it let you spoof your IP... and then claimed that 98 doesn't let you do that...) The rest of the emulators.com site seems to be a "praise the lord, and pass the G4's" type of site. He probably has a point about some of the things on the P4 (the castration of the shift unit comes to mind) but overall it seems he's a Grade AAA Fucking Moron. His emulator probably sucks too =P > Neil > > PS He thinks the Transmeta CPU is good. :)))) John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 20:40:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA19112 for dynarec-outgoing; Thu, 30 Aug 2001 20:38:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 30 Aug 01 22:40:27 -0400 Message-Id: <3.0.5.32.20010830194157.00892310@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 30 Aug 2001 19:41:57 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Just for Neil B's amusement... In-Reply-To: <007d01c131b4$59398260$5da4fea9@burp> References: <20010830020432.J28122@hetfield.patsoffice.com> <20010830091532.O35138-100000@beacon.synthcom.com> <20010830100808.L28122@hetfield.patsoffice.com> <12923519479.20010830211221@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Benchmarks have hinted at >what the P4 will do in the future... there are no crippling problems >apparent. I remember seeing a set of benchmarks conducted with Linux, in support of the Athlon, but the Pentium 4 killed everything when it came to the Quake 3 benchmark. Quake 3 is optimized for the Pentium 4, and it shows just how well code is going to perform when it's optimized for the P4. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 30 23:17:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA19234 for dynarec-outgoing; Thu, 30 Aug 2001 23:16:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002101c131e7$edeca580$5da4fea9@burp> From: "Tom Browne" To: References: <20010830020432.J28122@hetfield.patsoffice.com> <20010830091532.O35138-100000@beacon.synthcom.com> <20010830100808.L28122@hetfield.patsoffice.com> <12923519479.20010830211221@dynarec.com> <3.0.5.32.20010830194157.00892310@mailandnews.com> Subject: Re: DYNAREC: Just for Neil B's amusement... Date: Fri, 31 Aug 2001 07:40:56 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MIMEOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com That's the funny thing... Quake 3 _wasn't_ optimised for P4... it was optimised for P3! If it used SSE2 instead of SSE1, it would likely be even faster... - Tom. ----- Original Message ----- From: "Bart" To: Sent: Friday, August 31, 2001 3:41 AM Subject: Re: DYNAREC: Just for Neil B's amusement... > >Benchmarks have hinted at > >what the P4 will do in the future... there are no crippling problems > >apparent. > > I remember seeing a set of benchmarks conducted with Linux, in support of > the Athlon, but the Pentium 4 killed everything when it came to the Quake 3 > benchmark. Quake 3 is optimized for the Pentium 4, and it shows just how > well code is going to perform when it's optimized for the P4. > > > Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 31 00:17:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA19295 for dynarec-outgoing; Fri, 31 Aug 2001 00:16:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B8F3ACB.217D8ECA@austin.rr.com> Date: Fri, 31 Aug 2001 00:20:43 -0700 From: tarquin X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Just for Neil B's amusement... References: <20010830020432.J28122@hetfield.patsoffice.com> <20010830091532.O35138-100000@beacon.synthcom.com> <20010830100808.L28122@hetfield.patsoffice.com> <12923519479.20010830211221@dynarec.com> <3.0.5.32.20010830194157.00892310@mailandnews.com> <002101c131e7$edeca580$5da4fea9@burp> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Tom Browne wrote: > That's the funny thing... Quake 3 _wasn't_ optimised for P4... it was > optimised for P3! > > If it used SSE2 instead of SSE1, it would likely be even faster... The drivers probably have SSE2/P4 optimization stuff in them now, and those make the biggest difference with quake 3... > - Tom. -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 31 00:46:04 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA19327 for dynarec-outgoing; Fri, 31 Aug 2001 00:45:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 31 Aug 2001 00:48:16 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Script example In-Reply-To: <20010830161747.C3810@hetfield.patsoffice.com> Message-ID: <20010831002413.C36680-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > recompiler uses to handle a given instruction and figure out which cover > > to call for any given source layer instruction. > And the cover is specific to the core keyed on the instruction mnemonic I > would assume? Yes... I think. ;-) In other words, let's say you had: ld a, b There'd be a cover procedure template created (for the z80->x86) called something like: Z80X86LDREG8REG8() The emitter would create the skeleton for this and you'd have to fill it in with code to create the x86 equivalent. And the cover for this instruction might be: mov al, bl And inside the cover, it'd do something like this: Z80X86LDREG8REG8(reg1, reg2) { GenX86MOVREG8REG8(z80tox86regs[reg1], z80tox86regs[reg2]); } The "GenX86..." procedure is created automatically by one of the things the script can emit! Assume other glue in there, like creating a generic opcode structure and linking it to the prior instruction, but hopefully you'll get the idea. > Are the field descriptions arguments passed on to the cover > function? Yes, the whole structure is. The recompiler, at the higher level, passes in hints to the opcode cover generator as to whether or not it should create flag preamble or postamble code. > Is there anything that's passed on by default? The structure that has all the information about the instruction including some optimization "hints" (flags) and timing information, and whether or not timing code should be emitted. > Did a miss an > email discussing the data structures for this? Probably. ;-) They aren't completely nailed down just yet... > Is that a lot of questions > in one paragraph? :-) Yes! > > automatically created called x86GenDecReg8() with a parameter of which > > register to decrement. > Got it. I'd assume that this opcode emitter would do the "flag > optomization 'til branch" for the dynarec? Nope, this opcode emitter is to create SOp structures of the TARGET processor - one instruction at a time. There's also a source->target translator that contains the opcode covers. *THAT* layer is passed in optimization hints: * Preamble flags should be generated (TRUE/FALSE) * Postamble flag calculation should be generated (TRUE/FALSE) * Instruction specific timing is emitted (TRUE/FALSE) So for example (with DRMZ80): 01e6: 11001b LD DE, 1b00h 01e9: 210020 LD HL, 2000h 01ec: c3321a JP 1a32h Turns in to: 82cf31c0: ba001b0000 mov edx,0x1b00 ; LD DE, 1b00h 82cf31c5: 83ef10 sub edi,byte +0x10 ; Timing for ^^^ 82cf31c8: 7826 js 0x82cf31f0 82cf31ca: bb00200000 mov ebx,0x2000 ; LD HL, 2000h 82cf31cf: 83ef0a sub edi,byte +0xa ; Timing for ^^^ 82cf31d2: 7826 js 0x82cf31fa The target opcode emitter emits the individual instructions above (mov, sub, js). The target cover gets passed "LD HL, 2000h" for example and calls these target opcode emitters to make the entire cover. The target cover decides if there's instruction specific timing (like there is above) and flag pre/postamble. Does that make sense? > > generator would emit x86 code (by calling the generated opcode emitter > > for each cover instruction needed) to cover the same functionality of > > the source layer instruction. > Gotcha. So the cover templates know that a certain instruction fetches > the effective address indirectly and loads it from memory. That solves my > other earlier question! Yes, they do whatever magic is need to translate the source->target layer addresses. > > Clear as mud? > No, much clearer. I was just confused that there was currently more going > on than the script definition than I was aware of. While there is a great > deal of benefit to the script definition for a nice orthoganal processor > like the 680xx there is not as much for something like the 6802. So > beyond the script definition, what else is going on? What needs to be > done? You've got to fill in the covers and support glue, such as doing memory reads. The recompiler can be fairly generic. I haven't figured out just HOW generic it can be, though. > I've started on a 6809 definition (and pretty much any other 680x > processor since they're all fairly similar.) The indexed mode is giving > me fits of how to represent the modes in a compact fashion (there are 14 > possible ways that indexed addressing works.) Anyhow, I'll post what I've > got in a few days. I don't think there's an easy way, and I'd rather not try to tacklet that. I tried it on several occasions and failed miserably each time. You'll just have to list them individually. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 31 12:27:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA20065 for dynarec-outgoing; Fri, 31 Aug 2001 12:26:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 31 Aug 01 15:27:41 -0400 Message-Id: <3.0.5.32.20010831122916.00892100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 31 Aug 2001 12:29:16 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Script example In-Reply-To: <20010831002413.C36680-100000@beacon.synthcom.com> References: <20010830161747.C3810@hetfield.patsoffice.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Z80X86LDREG8REG8(reg1, reg2) >{ > GenX86MOVREG8REG8(z80tox86regs[reg1], > z80tox86regs[reg2]); >} > >The "GenX86..." procedure is created automatically by one of the things >the script can emit! Wait, I don't quite get how the GenX86 stuff is emitted by the script. Will it be a set of routines that will always be emitted, or will there be some way to create these routines based on input from a script? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 31 12:30:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA20076 for dynarec-outgoing; Fri, 31 Aug 2001 12:29:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 31 Aug 01 15:31:17 -0400 Message-Id: <3.0.5.32.20010831123256.00893100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 31 Aug 2001 12:32:56 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Script example In-Reply-To: <20010831002413.C36680-100000@beacon.synthcom.com> References: <20010830161747.C3810@hetfield.patsoffice.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Nope, this opcode emitter is to create SOp structures of the TARGET >processor - one instruction at a time. There's also a source->target >translator that contains the opcode covers. *THAT* layer is passed in >optimization hints: What would a high level overview of all the covers and structures of dynamic recompiler look like, something like: Script -> Source Covers -> Source SOps -> Target SOps -> Final generated output Something like that? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 31 12:31:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA20082 for dynarec-outgoing; Fri, 31 Aug 2001 12:29:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 31 Aug 2001 12:33:19 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Script example In-Reply-To: <3.0.5.32.20010831122916.00892100@mailandnews.com> Message-ID: <20010831123152.N39366-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >The "GenX86..." procedure is created automatically by one of the things > >the script can emit! > Wait, I don't quite get how the GenX86 stuff is emitted by the script. Will > it be a set of routines that will always be emitted, or will there be some > way to create these routines based on input from a script? You know, I should probably just draw up a Visio drawing of this thing and PDF it. Textual descriptions are gettin tough! Okay, so if we do a 68K->x86, we'll have *TWO* scripts. One for the 68K and one for the x86. So we'd create the source table, target layer, and disassembler by doing this: drs 68k.def -source -target -disasm And we'd create the x86 opcode generator by doing this: drs x86.df -opcode Does that make sense? -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 31 12:42:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA20105 for dynarec-outgoing; Fri, 31 Aug 2001 12:41:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 31 Aug 01 15:42:36 -0400 Message-Id: <3.0.5.32.20010831124410.00897cf0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 31 Aug 2001 12:44:10 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Just for Neil B's amusement... In-Reply-To: <3B8F3ACB.217D8ECA@austin.rr.com> References: <20010830020432.J28122@hetfield.patsoffice.com> <20010830091532.O35138-100000@beacon.synthcom.com> <20010830100808.L28122@hetfield.patsoffice.com> <12923519479.20010830211221@dynarec.com> <3.0.5.32.20010830194157.00892310@mailandnews.com> <002101c131e7$edeca580$5da4fea9@burp> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 12:20 AM 8/31/2001 -0700, you wrote: >Tom Browne wrote: > >> That's the funny thing... Quake 3 _wasn't_ optimised for P4... it was >> optimised for P3! >> >> If it used SSE2 instead of SSE1, it would likely be even faster... > >The drivers probably have SSE2/P4 optimization stuff in them now, and those >make the biggest difference with quake 3... Are there optimized builds of Quake III? I believe that's what the article mentioned. It said that id added P4 optimizations, which dramatically improved Quake III's performance on a P4 versus an Athlon or P3. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 31 12:54:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA20123 for dynarec-outgoing; Fri, 31 Aug 2001 12:53:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 31 Aug 01 15:54:50 -0400 Message-Id: <3.0.5.32.20010831125630.008983a0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 31 Aug 2001 12:56:30 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Script example In-Reply-To: <20010831123152.N39366-100000@beacon.synthcom.com> References: <3.0.5.32.20010831122916.00892100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Okay, so if we do a 68K->x86, we'll have *TWO* scripts. One for the 68K >and one for the x86. So we'd create the source table, target layer, and >disassembler by doing this: > >drs 68k.def -source -target -disasm > >And we'd create the x86 opcode generator by doing this: > >drs x86.df -opcode > >Does that make sense? Sort of. The parser will assume that all of the instructions specified in the X86 script are going to be used in emulating the 68K, so we don't have to specify instructions we aren't going to be needing, right? Also, where would the X86 script contain information from which the parser could produce opcode emitters with names like GenX86MOVEREG8TOREG8(), etc.? As far as I know, that would just be called "MOVE" in the script... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 31 13:01:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA20143 for dynarec-outgoing; Fri, 31 Aug 2001 13:00:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 31 Aug 2001 13:02:52 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Script example Message-ID: <20010831130252.E9397@hetfield.patsoffice.com> References: <3.0.5.32.20010831122916.00892100@mailandnews.com> <20010831123152.N39366-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010831123152.N39366-100000@beacon.synthcom.com>; from neil@synthcom.com on Fri, Aug 31, 2001 at 12:33:19PM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You know, I should probably just draw up a Visio drawing of this thing and > PDF it. Textual descriptions are gettin tough! That'd be great! > Does that make sense? Yeah, but the picture would always be helpful for reference. Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 31 13:54:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA20191 for dynarec-outgoing; Fri, 31 Aug 2001 13:52:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 31 Aug 2001 21:52:04 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <1277926117.20010831215204@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Script example In-Reply-To: <20010831130252.E9397@hetfield.patsoffice.com> References: <3.0.5.32.20010831122916.00892100@mailandnews.com> <20010831123152.N39366-100000@beacon.synthcom.com> <20010831130252.E9397@hetfield.patsoffice.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello Patrick, Friday, August 31, 2001, 9:02:52 PM, you wrote: >> You know, I should probably just draw up a Visio drawing of this thing and >> PDF it. Textual descriptions are gettin tough! PL> That'd be great! >> Does that make sense? PL> Yeah, but the picture would always be helpful for reference. I agree. I'm fairly sure I know where this is going, but a diagram would really help out. Even in "thick" mode, I can still understand diagrams. ;) -- Best regards, Neil mailto:neilg@dynarec.com --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 31 14:33:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA20234 for dynarec-outgoing; Fri, 31 Aug 2001 14:32:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 31 Aug 2001 14:36:12 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Script example In-Reply-To: <3.0.5.32.20010831125630.008983a0@mailandnews.com> Message-ID: <20010831143329.Q39366-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Does that make sense? > The parser will assume that all of the instructions specified in the X86 > script are going to be used in emulating the 68K, so we don't have to > specify instructions we aren't going to be needing, right? Sort of. The x86 script isn't specific tot he 68K. It just creates a "library of instruction emitters" based on what's in the script and nothing more. Think of it as an atomic grab-bag of utilities to generate specific x86 opcodes. > Also, where would the X86 script contain information from which the parser > could produce opcode emitters with names like GenX86MOVEREG8TOREG8(), etc.? Ah.... Here we go. Taking from my example script: 11ccc010 (16*a) |JP|c=CC3, a=IMM16|cc=CC3||10|10|C; // JP cc, addr This would generate a: GenZ80JPCC3IMM6() The "Gen" meaning "generator" and so we can stick numbers at the beginning of processor names, the "Z80" being the processor name, "JP" from the instruction, CC3 and IMM16 as operands. -->Neil ------------------------------------------------------------------------------- Neil Bradley The only engine relevant to making good music Synthcom Systems, Inc. is the one in your head. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 31 19:09:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA20441 for dynarec-outgoing; Fri, 31 Aug 2001 19:09:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 31 Aug 2001 19:13:30 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: Just for Neil B's amusement... In-Reply-To: <3.0.5.32.20010831124410.00897cf0@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Fri, 31 Aug 2001, Bart wrote: > >> That's the funny thing... Quake 3 _wasn't_ optimised for P4... it was > >> optimised for P3! > >> > >> If it used SSE2 instead of SSE1, it would likely be even faster... > > > >The drivers probably have SSE2/P4 optimization stuff in them now, and those > >make the biggest difference with quake 3... > > Are there optimized builds of Quake III? I believe that's what the article > mentioned. It said that id added P4 optimizations, which dramatically > improved Quake III's performance on a P4 versus an Athlon or P3. Sounds like the article is kinda flawed, the way most 3D is done these days, almost every bit of the transformation stuff is done in the drivers/libraries, to take advantage of possible hardware support (T&L, vertex shaders, etc) As such most of the MMX/SSE/SSE2/3DNow! code that will make a real difference goes into the opengl32.dll provided by the graphics card gurus. Carmack has dumped a fair bit of information about just exactly which paths quake 3 is going to hammer (Read: "If you want quake 3 to run good on your card, make these calls with these settings fast: blah blah blah) > Bart John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 5 16:03:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA28921 for dynarec-outgoing; Wed, 5 Sep 2001 16:01:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B96AF67.1867CA2B@gmx.de> Date: Thu, 06 Sep 2001 01:04:07 +0200 From: Kai =?iso-8859-1?Q?Sch=FCtz?= X-Mailer: Mozilla 4.76 [en] (X11; U; Linux 2.4.1 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Carry flag emulation in C References: <3.0.5.32.20010819134228.0087d460@mailandnews.com> <3.0.5.32.20010819181204.00794450@mailandnews.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I know I'm answering pretty late, but better late than never ;-) Bart wrote: > > >It depends upon the processor, but there's an easier way: > > > > C = ((opr1 & 0x80000000) & (opr2 & 0x80000000)) >> 31); I think this is wrong. C should be set if bit 32 is set in the result. If you add 0xFFFFFFFF + 1 you get 0x100000000, but no carry set according to the formula above. One way is to use a 64 bit datatype, but there also is a way to do this with only 32 bit datatypes: The trick is to also use the result (R) of the add, not only the two source operands (S1, S2). If we look at bit 31 we can see the following: A carry into bit 32 occured if: 1.) S1[31] = 1 und S2[31] = 1 2.) R[31] = 0 but S1[31] = 1 3.) R[31] = 0 but S2[31] = 1 (Any bit can only get higher, except when an carry occurs) I would code this as follows: addWithCarry(unsigned int s1, unsigned int s2) { unsigned int r; r = s1 + s2; int carry = ((s1 & s2) | (~r & (s1 | s2))) >> 31; } > >> The PowerPC manual says the overflow flag > >> is set if the carry out of the MSB is not equal to the carry out of the MSB > >> + 1. That sounds like it could be incorrectly worded. Did they mean the > >> overflow flag is set if the carry does not equal the new MSB? > > > >That's so damned confusing I'm not even going to speculate. But usually > >it's either the sign of both operands which cause a signed/unsigned > >overflow or an overflow from the lower part of the result into the upper > >part. It varies from CPU to CPU. > > Yeah, I'm not sure what the heck they mean by "msb + 1." Either it means > the value of the MSB plus the number 1, or "msb" refers to the bit position. I know that the overflow condition sounds confusing, but this is how the hardware does it. Sometimes what is easy for HW can be quite annoying to do in SW and vice versa. It's really two carry flags compared, the one from bit 31 to bit 32 and the one from bit 32 to bit 33 !!! This condition is always like this for all CPUs I've seem so far. Again overflow it's relatively easy to calc if you have a longer datatype at hand: So what does "overflow" mean ? Overflow means that the sign bit does not have it's correct value due to limitation in result'S bits (same as carry, but for signed numbers). This leads to the first way how to calculate it: addOvflow(int s1, int s2) { signed long long sl1 = s1, sl2 = s2; // sign ext. to 64 bit signed long long r = s1 + s2; int ovflw = ((unsigned int)((r >> 32) ^ r)) >> 31; } We compare bit 63 of the result with bit 31 of the result. If they are unequal (xor) on overflow occured. It's also possible to calculate overflow with the aproach from above: Ovflw = (S1[31] && S2[31] && !R[31]) || (!S1[31] && !S2[31] && R[31]); (taken from an 68k asm book) I let the "C" formulation as an exercise for you because it's getting late... Wow, I'm always shocked how complicate it is to write pure C when emulating such lowlevel stuff. Did you ever write a ROL/ROR instruction in C, even better when rotation through some flag - that is real fun !(the 68k has some nice variations here). Have fun, -- |/ |\ai --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 5 17:06:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA28973 for dynarec-outgoing; Wed, 5 Sep 2001 17:04:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 5 Sep 01 20:06:44 -0400 Message-Id: <3.0.5.32.20010905170720.00898920@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 05 Sep 2001 17:07:20 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <3B96AF67.1867CA2B@gmx.de> References: <3.0.5.32.20010819134228.0087d460@mailandnews.com> <3.0.5.32.20010819181204.00794450@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >addWithCarry(unsigned int s1, unsigned int s2) >{ >unsigned int r; >r = s1 + s2; >int carry = ((s1 & s2) | (~r & (s1 | s2))) >> 31; >} Interesting... I'll have to hold on to this trick :) MSVC and GCC (as I found out when I asked the question) support 64-bit data types, so I can now just take the easy way out by looking at bit 32 of the result. >I know that the overflow condition sounds confusing, but this is how the >hardware does it. Sometimes what is easy for HW can be quite annoying to >do in SW and vice versa. It's really two carry flags compared, the one >from bit 31 to bit 32 and the one from bit 32 to bit 33 !!! > >This condition is always like this for all CPUs I've seem so far. > >Again overflow it's relatively easy to calc if you have a longer >datatype at hand: > >So what does "overflow" mean ? Overflow means that the sign bit does not >have it's correct value due to limitation in result'S bits (same as >carry, but for signed numbers). >This leads to the first way how to calculate it: > >addOvflow(int s1, int s2) >{ > signed long long sl1 = s1, sl2 = s2; // sign ext. to 64 bit > signed long long r = s1 + s2; > > int ovflw = ((unsigned int)((r >> 32) ^ r)) >> 31; >} > >We compare bit 63 of the result with bit 31 of the result. If they are >unequal (xor) on overflow occured. > >It's also possible to calculate overflow with the aproach from above: > >Ovflw = (S1[31] && S2[31] && !R[31]) || (!S1[31] && !S2[31] && R[31]); >(taken from an 68k asm book) That's tricky stuff :) Assembly makes this sort of behavior so much easier... Unless of course you're writing on a really simple CPU, like the SH-2, which only has one general purpose flag. >Wow, I'm always shocked how complicate it is to write pure C when >emulating such lowlevel stuff. Did you ever write a ROL/ROR instruction >in C, even better when rotation through some flag - that is real fun >!(the 68k has some nice variations here). ROL/ROR isn't too bad. Here's how I do rotation in the left direction, taken straight from my PowerPC emulator: i = REG(rS); i >>= (32 - SH); i |= (REG(rS) << SH); Where i is the result, REG(rS) is the data to rotate, and SH is the count. The algorithm is: - We place (source >> (32 - rotate_count)) into TMP - We OR TMP with (source << rotate_count) Of course, there's probably a bug in there ;) So far, the code I've been examing uses a few rotate instructions, and the results are correct. Thanks for the carry and overflow info! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 6 17:32:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA30235 for dynarec-outgoing; Thu, 6 Sep 2001 17:32:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B981628.60054E0@gmx.de> Date: Fri, 07 Sep 2001 02:34:48 +0200 From: Kai =?iso-8859-1?Q?Sch=FCtz?= X-Mailer: Mozilla 4.76 [en] (X11; U; Linux 2.4.1 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Carry flag emulation in C References: <3.0.5.32.20010819134228.0087d460@mailandnews.com> <3.0.5.32.20010819181204.00794450@mailandnews.com> <3.0.5.32.20010905170720.00898920@mailandnews.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Bart wrote: > Interesting... I'll have to hold on to this trick :) MSVC and GCC (as I > found out when I asked the question) support 64-bit data types, so I can > now just take the easy way out by looking at bit 32 of the result. Sure, that's the simple way. > >Wow, I'm always shocked how complicate it is to write pure C when > >emulating such lowlevel stuff. Did you ever write a ROL/ROR instruction > >in C, even better when rotation through some flag - that is real fun > >!(the 68k has some nice variations here). > > ROL/ROR isn't too bad. Here's how I do rotation in the left direction, > taken straight from my PowerPC emulator: > > i = REG(rS); > i >>= (32 - SH); > i |= (REG(rS) << SH); But that's still simple. 68k has ROXL/ROXR insns which rotate through the X flag (so it's a 33 bit rotate, if you want). Additionally all the flags also have to be set. So one 68k insn probably will result in 20-40 asm insns of the host. I did this in C a long time ago. Maybe it would be interesting to dig for the sources some time. See ya, -- |/ |\ai --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 6 20:02:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA30350 for dynarec-outgoing; Thu, 6 Sep 2001 20:02:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 6 Sep 01 23:03:05 -0400 Message-Id: <3.0.5.32.20010906200115.00898680@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 06 Sep 2001 20:01:15 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <3B981628.60054E0@gmx.de> References: <3.0.5.32.20010819134228.0087d460@mailandnews.com> <3.0.5.32.20010819181204.00794450@mailandnews.com> <3.0.5.32.20010905170720.00898920@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >But that's still simple. 68k has ROXL/ROXR insns which rotate through >the X flag (so it's a 33 bit rotate, if you want). Additionally all the >flags also have to be set. So one 68k insn probably will result in 20-40 >asm insns of the host. I did this in C a long time ago. Maybe it would >be interesting to dig for the sources some time. ROXL/ROXR would be more complicated in C... But they're a breeze in assembly, you just use RCL/RCR :) The worst of the shift instructions is ASL/ASR. One of the flags (C or X) gets set if any of the bits shifted out were 1 -- not just if the last bit or the first bit were 1. I emulate it by doing a series of shifts with a count of 1. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 6 20:44:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA30386 for dynarec-outgoing; Thu, 6 Sep 2001 20:44:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Sep 2001 20:49:41 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <3.0.5.32.20010906200115.00898680@mailandnews.com> Message-ID: <20010906204824.V64228-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The worst of the shift instructions is ASL/ASR. One of the flags (C or X) > gets set if any of the bits shifted out were 1 -- not just if the last bit > or the first bit were 1. Couldn't you do something like: C = ((1 << (32 - shift_amount)) - 1) & orig_value ? 0 : 1; -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 6 21:05:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA30415 for dynarec-outgoing; Thu, 6 Sep 2001 21:05:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 7 Sep 01 00:07:38 -0400 Message-Id: <3.0.5.32.20010906210825.00899100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 06 Sep 2001 21:08:25 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <20010906204824.V64228-100000@beacon.synthcom.com> References: <3.0.5.32.20010906200115.00898680@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 08:49 PM 9/6/01 -0700, you wrote: >> The worst of the shift instructions is ASL/ASR. One of the flags (C or X) >> gets set if any of the bits shifted out were 1 -- not just if the last bit >> or the first bit were 1. > >Couldn't you do something like: > > C = ((1 << (32 - shift_amount)) - 1) & orig_value ? 0 : 1; I don't think that would work, because you also have to isolate the proper bits in orig_value to test with (the ones that got shifted out.) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 6 21:15:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA30431 for dynarec-outgoing; Thu, 6 Sep 2001 21:15:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Sep 2001 21:20:11 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <3.0.5.32.20010906210825.00899100@mailandnews.com> Message-ID: <20010906211416.A64228-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Couldn't you do something like: > > C = ((1 << (32 - shift_amount)) - 1) & orig_value ? 0 : 1; > I don't think that would work, because you also have to isolate the proper > bits in orig_value to test with (the ones that got shifted out.) The ones that get shifted out are based on the computation of the 32 - shift amount part of the expression. Actually, that should've read: C = (~((1 << (32 - shift amount)) - 1) & orig_value)) ? 1 : 0; The orig_value is the pre shifted value, so let's work this out. Let's say that orig_value is 0x0fffffff and we're shifting by 5: C = (~((1 << (32-5)) - 1) & 0x0fffffff); Or: C = (~(0x08000000 - 1) & 0x0fffffff); Or: C = (~(0xf8000000) & 0x0fffffff)); Or: C = 0x00800000 ? 1 : 0; Or: C = 1; So any 1 bits in those shifted positions would cause the masks to be nonzero, causing carry to be 1. I of course was only speaking of carry? -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 7 09:31:04 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA31154 for dynarec-outgoing; Fri, 7 Sep 2001 09:27:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Sep 2001 09:28:12 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <20010906211416.A64228-100000@beacon.synthcom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, 6 Sep 2001, Neil Bradley wrote: > Or: > > C = (~(0xf8000000) & 0x0fffffff)); Just to be pedantic, this line should be C = ((0xf8000000) & 0x0fffffff)); as 0xf8000000 is ~0x07ffffff, which is ~(0x08000000 - 1) correctness is important for low level stuff =P > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base MIDI channel are belong to us. > Synthcom Systems, Inc. > ICQ #29402898 John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 7 09:37:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA31171 for dynarec-outgoing; Fri, 7 Sep 2001 09:36:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Sep 2001 09:42:07 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: Message-ID: <20010907094130.T66610-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > C = (~(0xf8000000) & 0x0fffffff)); > Just to be pedantic, this line should be Man, John, you really bust my balls, eh? ;-) 'SOk. That's what I get for devoting half my brain to something.. Glad I have you around! > correctness is important for low level stuff =P Nah..... ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 7 18:45:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA31569 for dynarec-outgoing; Fri, 7 Sep 2001 18:44:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Sep 2001 18:49:13 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <20010907094130.T66610-100000@beacon.synthcom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Fri, 7 Sep 2001, Neil Bradley wrote: > > > C = (~(0xf8000000) & 0x0fffffff)); > > Just to be pedantic, this line should be > > Man, John, you really bust my balls, eh? ;-) 'SOk. That's what I get for > devoting half my brain to something.. Glad I have you around! Side effect of work, seems that I'm cleaning up someone else's mess 90% of the time =P > > correctness is important for low level stuff =P > > Nah..... ;-) When differences in low level implementations cause synch errors and end network games, they're important =P Current problem at work is GCC and MSVC++ generating slightly different FPU code, resulting in an if going different directions, resulting in a different number of calls to the RNG, and boom. It doesn't help that the problem only shows up about 1 game in 5, dealing with hour long (simulated) games... Floating point is the spawn of satan. > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base MIDI channel are belong to us. > Synthcom Systems, Inc. > ICQ #29402898 John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 7 20:32:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA31655 for dynarec-outgoing; Fri, 7 Sep 2001 20:31:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Sep 2001 20:37:10 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: Message-ID: <20010907203506.H67793-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Man, John, you really bust my balls, eh? ;-) 'SOk. That's what I get for > > devoting half my brain to something.. Glad I have you around! > Side effect of work, seems that I'm cleaning up someone else's mess 90% of > the time =P Join the club. I'm finally in an architecture position where I can dictate how things are going to be and I'm actually listened to, and it has taken me almost 2 years to pull the source code back to a usable state. > > > correctness is important for low level stuff =P > > Nah..... ;-) > When differences in low level implementations cause synch errors and end > network games, they're important =P You didn't hear my sarcasm. ;-) You didn't know that I have written several CPU and hardware emulators, did you? ;-) > Current problem at work is GCC and MSVC++ generating slightly different > FPU code, resulting in an if going different directions, resulting in a > different number of calls to the RNG, and boom. > > It doesn't help that the problem only shows up about 1 game in 5, dealing > with hour long (simulated) games... > > Floating point is the spawn of satan. No, that would be C++ and threads in the hands of an intern or a PHD. Floating point is more like a prince of Satan's 3rd son. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 7 21:04:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA31687 for dynarec-outgoing; Fri, 7 Sep 2001 21:04:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Sep 2001 21:09:05 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <20010907203506.H67793-100000@beacon.synthcom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Fri, 7 Sep 2001, Neil Bradley wrote: > > > Man, John, you really bust my balls, eh? ;-) 'SOk. That's what I get for > > > devoting half my brain to something.. Glad I have you around! > > Side effect of work, seems that I'm cleaning up someone else's mess 90% of > > the time =P > > Join the club. I'm finally in an architecture position where I can dictate > how things are going to be and I'm actually listened to, and it has taken > me almost 2 years to pull the source code back to a usable state. Must be nice... best I can pray for is getting a port early enough in development to be able to stealth-fix things... the rest of the time I'm lucky if I'm even able to get code changes made to the 'doze version =/ > > > > correctness is important for low level stuff =P > > > Nah..... ;-) > > When differences in low level implementations cause synch errors and end > > network games, they're important =P > > You didn't hear my sarcasm. ;-) You didn't know that I have written > several CPU and hardware emulators, did you? ;-) I was still in shock from looking at gcc asm output, they aren't kidding when they say it isn't meant to be read by humans =P I've also noticed that a fair bit of my sarcasm detection goes into hiding during/after staring at code... not sure why. > > Current problem at work is GCC and MSVC++ generating slightly different > > FPU code, resulting in an if going different directions, resulting in a > > different number of calls to the RNG, and boom. > > > > Floating point is the spawn of satan. > > No, that would be C++ and threads in the hands of an intern or a PHD. > Floating point is more like a prince of Satan's 3rd son. Those have the advantage of being easily visible and (to a point) fixable. Floating point issues are really, really insidious... as *any* floating point calculation used in an if could potentially go different directions on the two systems... and cause a sync problem sometime in the future, not necessarily immediately. When the guys that made the windows version suggest that you just try and get the problem squished enough so it only happens 5% of the time, it's bad =P > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base MIDI channel are belong to us. > Synthcom Systems, Inc. > ICQ #29402898 John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 7 21:14:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA31703 for dynarec-outgoing; Fri, 7 Sep 2001 21:14:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Sep 2001 21:20:15 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: Message-ID: <20010907211255.I67793-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Join the club. I'm finally in an architecture position where I can dictate > > how things are going to be and I'm actually listened to, and it has taken > > me almost 2 years to pull the source code back to a usable state. > Must be nice... best I can pray for is getting a port early enough in > development to be able to stealth-fix things... the rest of the time I'm > lucky if I'm even able to get code changes made to the 'doze version =/ I wouldn't call it nice. Half the team loves me and the other half hates me, and the half that loves me are all too wimpy to complain or do something about the problem. They have minimum standards, but they won't hold others to those minimum standards and just bitch. We have management that won't enforce anything. If I had my way, I'd fire 20% of the people immediately. One guy who is constantly doing things like this: u32Status = FunctionCall(); u32Status = FunctionCall(); u32Status = FunctionCall() return(u32Status); And this is a transport that is inherently unreliable, yet his error checking sucks and can't figure out why his code is intermittent. > > You didn't hear my sarcasm. ;-) You didn't know that I have written > > several CPU and hardware emulators, did you? ;-) > I was still in shock from looking at gcc asm output, they aren't kidding > when they say it isn't meant to be read by humans =P And they weren't kidding when they said it wasn't very good code. ;-) > I've also noticed > that a fair bit of my sarcasm detection goes into hiding during/after > staring at code... not sure why. If you get poked with a stick a few too many times, your tolerance for getting poked with a stick just gets that much shorter. ;-) > > > Floating point is the spawn of satan. > > No, that would be C++ and threads in the hands of an intern or a PHD. > > Floating point is more like a prince of Satan's 3rd son. > Those have the advantage of being easily visible and (to a point) fixable. If you think that, then I'd love to introduce you to a byte protocol layer that had 9 threads. It would crash the app after 30 minutes of using it. It was doing byte acknowledgements, so for every one it sent, it sat there and waited for a byte to come back. And it *POLLED* for serial data every 100 milliseconds, which made the problem even worse. So a 16 byte command going down this stream would take about 2 seconds. We found things like: if (SendData() == FALSE) { // Send it again since it didn't work if (SendData() == FALSE) { // Oh well.... SendData(); } } throughout the code. Instead of using kernel semaphores, he was using his own variables that would do things like: #pragma NOOPT while (semaphore_variable) { Sleep(100); } #pragma OPT2 And couldn't figure out why semaphore_variable wasn't getting updated when it was in another thread. So I could go on and on and on about bad examples of *SHIPPING* code. We're truly in the dark ages of software development. > Floating point issues are really, really insidious... as *any* floating > point calculation used in an if could potentially go different directions > on the two systems... and cause a sync problem sometime in the future, not > necessarily immediately. Are you speaking of cumulative error? Yeah, that's ugly. > When the guys that made the windows version suggest that you just try and > get the problem squished enough so it only happens 5% of the time, it's > bad =P I'm still of the firm belief that people should not be allowed to code unless they are licensed and have some level of discipline and competency. But as with driver's tests, that'll never happen. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 7 22:22:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA31761 for dynarec-outgoing; Fri, 7 Sep 2001 22:22:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Sep 2001 22:26:56 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <20010907211255.I67793-100000@beacon.synthcom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Fri, 7 Sep 2001, Neil Bradley wrote: > > Must be nice... best I can pray for is getting a port early enough in > > development to be able to stealth-fix things... the rest of the time I'm > > lucky if I'm even able to get code changes made to the 'doze version =/ > > I wouldn't call it nice. Half the team loves me and the other half hates > me, and the half that loves me are all too wimpy to complain or do > something about the problem. They have minimum standards, but they won't > hold others to those minimum standards and just bitch. We have management Ouch, I suppose locking them all in a room together, at desks with nice notes saying something along the lines of "Those that leave this room get to stick around. You'll find the bricks under your chair." wouldn't go down well? > that won't enforce anything. If I had my way, I'd fire 20% of the people > immediately. One guy who is constantly doing things like this: > > u32Status = FunctionCall(); > u32Status = FunctionCall(); > u32Status = FunctionCall() > return(u32Status); > > And this is a transport that is inherently unreliable, yet his error > checking sucks and can't figure out why his code is intermittent. well, he at least got the error... last bit of network code I found didn't even bother checking for a few of the cases. Like EAGAIN. With non-blocking I/O. > > > You didn't hear my sarcasm. ;-) You didn't know that I have written > > > several CPU and hardware emulators, did you? ;-) > > I was still in shock from looking at gcc asm output, they aren't kidding > > when they say it isn't meant to be read by humans =P > > And they weren't kidding when they said it wasn't very good code. ;-) I'm still not sure whether to fault GCC or just the x86 backend. I hear 3.0.1 improves on things a bit (think they're even allowing intel style asm into the inline stuff now...) but I don't quite trust 3.0.1 yet... > If you get poked with a stick a few too many times, your tolerance for > getting poked with a stick just gets that much shorter. ;-) Must be =P Figured it probably wasn't just grokking the machine... as grokking code that's 90% stabs/stabn/label definitions is... difficult... > > > Floating point is more like a prince of Satan's 3rd son. > > Those have the advantage of being easily visible and (to a point) fixable. > > and waited for a byte to come back. And it *POLLED* for serial data every > 100 milliseconds, which made the problem even worse. So a 16 byte command > going down this stream would take about 2 seconds. We found things like: Wow, and it actually got *some* data through? Impressive... > if (SendData() == FALSE) > { > } > > throughout the code. Instead of using kernel semaphores, he was using his > own variables that would do things like: Eew... > And couldn't figure out why semaphore_variable wasn't getting updated when > it was in another thread. Gotta love stuff like that... a novice brings a bit of code to the master, asking "Why does this break? It compiles just fine and it should work!". The master, upon seeing the code, thinks, "Sweet Jesus, how the hell did this guy figure out which end of the fork goes in the food?!". What happens after this usually depends on how easily you can shovel code changes past a_n00b_01, and how easily one can hide a body... > So I could go on and on and on about bad examples of *SHIPPING* code. > We're truly in the dark ages of software development. Game programming hasn't advanced that far. I think most places are still floundering around the bronze age as far as design goes... > > Floating point issues are really, really insidious... as *any* floating > > point calculation used in an if could potentially go different directions > > on the two systems... and cause a sync problem sometime in the future, not > > necessarily immediately. > > Are you speaking of cumulative error? Yeah, that's ugly. Worse. Lossage due to the 80 bits internal/32 or 64 bits external nature of the FPU, resulting in tiny differences between the two machines. So, the order of the FPU instructions and memory spills changes things down at the bottom of the number... which normally wouldn't cause a problem, except when it gets used for a comparison. The usual things dealing with speed, health, and position all get chopped down to ~10 bits of accuraccy on a regular basis. > > When the guys that made the windows version suggest that you just try and > > get the problem squished enough so it only happens 5% of the time, it's > > bad =P > > I'm still of the firm belief that people should not be allowed to code > unless they are licensed and have some level of discipline and competency. > But as with driver's tests, that'll never happen. Not gonna happen as long as there's a shortage of coders in the world. Best one can do until that happens is try to get in control of hiring and try to keep standards up from there without getting slammed into non-code-related positions. > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base MIDI channel are belong to us. > Synthcom Systems, Inc. > ICQ #29402898 John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 7 22:37:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA31781 for dynarec-outgoing; Fri, 7 Sep 2001 22:37:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Sep 2001 22:42:20 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: Message-ID: <20010907223724.E67793-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I wouldn't call it nice. Half the team loves me and the other half hates > > me, and the half that loves me are all too wimpy to complain or do > > something about the problem. They have minimum standards, but they won't > > hold others to those minimum standards and just bitch. We have management > Ouch, I suppose locking them all in a room together, at desks with nice > notes saying something along the lines of "Those that leave this room get > to stick around. You'll find the bricks under your chair." wouldn't go > down well? Probably not, but I'd rather use those bricks to just beat the senseless ones. ;-) > > u32Status = FunctionCall(); > > u32Status = FunctionCall(); > > u32Status = FunctionCall() > > And this is a transport that is inherently unreliable, yet his error > > checking sucks and can't figure out why his code is intermittent. > well, he at least got the error... No, he didn't. Until I did a code review and found that bone rolling out of the closet. > last bit of network code I found didn't > even bother checking for a few of the cases. Like EAGAIN. With > non-blocking I/O. Jeeezuz! > > And they weren't kidding when they said it wasn't very good code. ;-) > I'm still not sure whether to fault GCC or just the x86 backend. I hear > 3.0.1 improves on things a bit (think they're even allowing intel style > asm into the inline stuff now...) but I don't quite trust 3.0.1 yet... The bottom line is gcc is written for nice, orthogonal register allocation in mind - something the x86 just doesn't have. > > 100 milliseconds, which made the problem even worse. So a 16 byte command > > going down this stream would take about 2 seconds. We found things like: > Wow, and it actually got *some* data through? Impressive... Yeah, my sentiments exactly. The same guy used a quicksort algorithm on a sorted list. So when you were downloading these logs, the CPU utilization would get higher and higher so when you were at 500 entries or so, it would take 7/10ths of a second to get the record and over 2 seconds for it to process it. This guy was a PHD. I shit you not. I really wish they'd revoke people's schooling certifications if they're idiots. > > So I could go on and on and on about bad examples of *SHIPPING* code. > > We're truly in the dark ages of software development. > Game programming hasn't advanced that far. I think most places are still > floundering around the bronze age as far as design goes... I worked on Madden 2001 and it wasn't too bad. Wouldn't have been the way that I did it, but at least the hardware and core stuff was nicely abstracted. > > Are you speaking of cumulative error? Yeah, that's ugly. > Worse. Lossage due to the 80 bits internal/32 or 64 bits external nature > of the FPU, resulting in tiny differences between the two machines. So, > the order of the FPU instructions and memory spills changes things down at > the bottom of the number... which normally wouldn't cause a problem, > except when it gets used for a comparison. Good God, why didn't they just used fixed point notation? Too hard? At least that's consistent. > > I'm still of the firm belief that people should not be allowed to code > > unless they are licensed and have some level of discipline and competency. > > But as with driver's tests, that'll never happen. > Not gonna happen as long as there's a shortage of coders in the world. With the fake economic downturn in the US, it's starting to take its toll. Rumor has it we're having another round of layoffs at Intel and I really wish it'd be like Survivor where we can vote people out of the group. ;-) I at least assisted in the process to get one guy demoted *two* job grade levels. It's like being a senior and busted back to sophomore - in pay and credibility. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 8 00:46:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA31894 for dynarec-outgoing; Sat, 8 Sep 2001 00:46:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 8 Sep 01 01:47:23 -0400 Message-Id: <3.0.5.32.20010907224808.0089bda0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 07 Sep 2001 22:48:08 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: References: <20010907211255.I67793-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> So I could go on and on and on about bad examples of *SHIPPING* code. >> We're truly in the dark ages of software development. > >Game programming hasn't advanced that far. I think most places are still >floundering around the bronze age as far as design goes... Since I'm not in the industry, I can only repeat what others have said and add my own insignificant observances, but: I've heard that game development is particularly brutal because games have become mainstream entertainment very quickly, and game projects are often managed by people who really care more about business than games. The result is that developers are being pushed to do things in short amounts of time. Development cycles for the PS2 are expected to be the same as for the original PSX, in some cases, supposedly. Wouldn't this have a big impact on why game design seems so terrible? It doesn't look like it would be easy to fix the situation, since games are gaining more and more popularity, and developers are kind of digging themselves into a hole. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 8 01:26:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA31941 for dynarec-outgoing; Sat, 8 Sep 2001 01:26:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B99D746.91127DB6@austin.rr.com> Date: Sat, 08 Sep 2001 01:31:02 -0700 From: tarquin X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Carry flag emulation in C References: <20010907211255.I67793-100000@beacon.synthcom.com> <3.0.5.32.20010907224808.0089bda0@mailandnews.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Bart wrote: > Since I'm not in the industry, I can only repeat what others have said and > add my own insignificant observances, but: I've heard that game development > is particularly brutal because games have become mainstream entertainment > very quickly, and game projects are often managed by people who really care > more about business than games. Yeah, not enough coders high up in the industry I think... > The result is that developers are being pushed to do things in short > amounts of time. Development cycles for the PS2 are expected to be the same > as for the original PSX, in some cases, supposedly. For a lot of things, the change in the hardware these days isn't too severe anymore. The biggest change to the turnaround time is probably art, especially if you have an earlier codebase to work from. Console stuff is in C or C++ for the big ones, dunno what the GBA is using. > Wouldn't this have a big impact on why game design seems so terrible? It > doesn't look like it would be easy to fix the situation, since games are > gaining more and more popularity, and developers are kind of digging > themselves into a hole. It's difficult to round up the kind of cash needed to keep a full game dev team producing for really long periods of time, and you also can't spend 5 years making a game, as it will either be out of date by the time it comes out, or the hardware that will be entry level when it's finished won't exist when you start... The usual ways I've seen to cut down on the cycle time have been either keeping two teams onboard, and staggering things so there's a release a year (Apparantly that's how the final fantasy games work), specialize on engines and outsource or license things (id), or specialize in making games with a prebuilt engine (raven). I also think a lot of the game industry is fed with green, fresh-outta-school n00bs that have had Java and friends forcefed since they were in highschool. The ones that really know their stuff are at the companies that have specialized, or get snapped up by them once they're noticed. Also, aside from possibly reusing an engine, reuse doesn't seem to really come into play much, at least for the game logic and whatnot. I don't know if that's a good thing or a bad thing, bit of both probably. I think the industry *has* reinvented the wheel more than just about any other flavor of programming though. Doubt things will improve much for a while, but from the general look of things, the situation *is* getting a bit better. The newer sourcebases at loki are noticeably cleaner than the old ones, with a few glaring issues. > Bart > > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 8 01:38:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA31962 for dynarec-outgoing; Sat, 8 Sep 2001 01:38:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3B99DA10.96785934@austin.rr.com> Date: Sat, 08 Sep 2001 01:42:56 -0700 From: tarquin X-Mailer: Mozilla 4.77 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Carry flag emulation in C References: <20010907223724.E67793-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > notes saying something along the lines of "Those that leave this room get > > to stick around. You'll find the bricks under your chair." wouldn't go > > down well? > > Probably not, but I'd rather use those bricks to just beat the senseless > ones. ;-) Letting the rest of them beat each other senseless is easier to weasel your way out of though, if you beat them with the bricks they might be able to get you on assault =P > > > And this is a transport that is inherently unreliable, yet his error > > > checking sucks and can't figure out why his code is intermittent. > > well, he at least got the error... > > No, he didn't. Until I did a code review and found that bone rolling out > of the closet. He at least made an attempt at error handling, got the "save return value" part at least =P > > last bit of network code I found didn't > > even bother checking for a few of the cases. Like EAGAIN. With > > non-blocking I/O. > > Jeeezuz! I wasn't terribly impressed with the previous coder when I realized just wtf was going on. Naturally, it was never an issue on a lan, and they apparantly didn't really test over the 'net... > > 3.0.1 improves on things a bit (think they're even allowing intel style > > asm into the inline stuff now...) but I don't quite trust 3.0.1 yet... > > The bottom line is gcc is written for nice, orthogonal register allocation > in mind - something the x86 just doesn't have. So true. > Yeah, my sentiments exactly. The same guy used a quicksort algorithm on a > sorted list. So when you were downloading these logs, the CPU utilization > would get higher and higher so when you were at 500 entries or so, it > would take 7/10ths of a second to get the record and over 2 seconds for it > to process it. Perfect example of why the unix way is good: "When in doubt, use brute force", "Fancy algorithms usually run slow for small values of N. N is usually small." > This guy was a PHD. I shit you not. I really wish they'd revoke people's > schooling certifications if they're idiots. PhD in Comp. Sci? Now that *is* scary... though come to think of it, the best teacher I found at UCI only had a BS... > I worked on Madden 2001 and it wasn't too bad. Wouldn't have been the way > that I did it, but at least the hardware and core stuff was nicely > abstracted. Probably depends on the market. The larger the dev house the more likely they are to have things abstracted -- That storm.dll of Blizzard's is a complete abstraction library, and it's apparantly backwards compatible... and used for everything from WC2/Diablo I on. The consoles also have the advantage of only having one set of hardware per system to deal with, a luxury the PC world can't touch. > > the order of the FPU instructions and memory spills changes things down at > > the bottom of the number... which normally wouldn't cause a problem, > > except when it gets used for a comparison. > > Good God, why didn't they just used fixed point notation? Too hard? At > least that's consistent. I believe that by the time they realized what a problem the floating point stuff was (seems they ran into problems between retail/debug builds, differing compile options, and maybe AMD/Intel) it was deemed too time consuming to go back and change all the FP stuff to fixed. I'm pretty sure they learned their lesson on that. > > > But as with driver's tests, that'll never happen. > > Not gonna happen as long as there's a shortage of coders in the world. > > With the fake economic downturn in the US, it's starting to take its toll. > Rumor has it we're having another round of layoffs at Intel and I really > wish it'd be like Survivor where we can vote people out of the group. ;-) Hehe. On a side note, I love how people instantly blame Bush for it... as if the Oval Office had that kind of power =P M0r0ns should realize that it isn't really a downturn in most cases, as much as the venture capitalists coming up and asking for some of the return on their investments. > I at least assisted in the process to get one guy demoted *two* job grade > levels. It's like being a senior and busted back to sophomore - in pay and > credibility. Heh, most of the real stupidity I've come across has either been in code written by people that are no longer at loki, or by the original 'doze people. Been about 50/50 so far. > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base MIDI channel are belong to us. > Synthcom Systems, Inc. > ICQ #29402898 -- ReaperSMS - John Allensworth http://members.home.com/tarquin20 tarquin@softhome.net - tarquin@austin.rr.com Coca-cola is just liquid code... --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 8 07:17:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA34456 for dynarec-outgoing; Sat, 8 Sep 2001 07:16:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 8 Sep 2001 15:21:22 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <1783151912.20010908152122@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Carry flag emulation in C In-Reply-To: <3B99DA10.96785934@austin.rr.com> References: <20010907223724.E67793-100000@beacon.synthcom.com> <3B99DA10.96785934@austin.rr.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, **leaps into the conversation** t> Letting the rest of them beat each other senseless is easier to weasel your way out t> of though, if you beat them with the bricks they might be able to get you on t> assault =P Heh! Good plan. Oh, I so wished we could have done this at Eurocopter! Here's the kicker... When I was working there, my main job was to unit test the various parts of the Milbus (essentially the network connecting and controlling all of the devices on the Tiger helicopter). However, at a higher level of testing, some of the coders were finding errors with the NVM (which can be considered to be the black box for the helicopter, it records any unexpected behaviour in the system - like errors for instance). I was asked to stop working on the Milbus and look at the NVM - they were encountering errors with it and it just wasn't performing as expected. The whole thing had been written by one guy - and he'd left the company. I took a look at the code. Horrible, horrible... When you see a good coders work, it's generally easy to understand what's going on - though okay, it may take you a little bit of work to understand it. But THIS code was as messy as hell. Not only was it not indented at all, it had no white space in it and worse of all... no comments at all. Given it's quite hard to test something when you don't know how it's meant to perform, I asked for the internal documentation for it. There wasn't any. Fantastic. However, my manager told me how it was meant to work - it was a 512K NVRAM of which each memory location was only guaranteed to be good for 100,000 times. So it had to know how many times each location had been written to - and also to make sure it didn't overwrite any data already there (unless it was meant to... if you have the same error twice, it would go into the same memory location). So, after cleaning up the code and struggling with it to understand what was happening, I realised something. The stupid bastard who'd written it was actually using a proper filing system - somewhat like NTFS. This would be okay, but the filing system actually took up MORE data than the actual data to be stored! To make things worse - it didn't even work as expected, it didn't control about writing using the 100,000 times rule... And no-one at the company had noticed this. In the end, after testing, I proclaimed it to be officially dead and offered to re-write it myself. They refused - saying that it wasn't important and so long as they knew the errors were there it didn't matter. Well, fuck. I don't like that at all... I have more stories like that too, but that's probably the best! t> I wasn't terribly impressed with the previous coder when I realized just wtf was t> going on. Naturally, it was never an issue on a lan, and they apparantly didn't t> really test over the 'net... Ah, you have to love people who don't test their code properly! =) >> Yeah, my sentiments exactly. The same guy used a quicksort algorithm on a >> sorted list. So when you were downloading these logs, the CPU utilization >> would get higher and higher so when you were at 500 entries or so, it >> would take 7/10ths of a second to get the record and over 2 seconds for it >> to process it. t> Perfect example of why the unix way is good: "When in doubt, use brute force", t> "Fancy algorithms usually run slow for small values of N. N is usually small." I'd agree - unless you know you're going to be dealing with hellishly long lists, don't bother. The quicksort algorithm takes so long to initialise that by the time you start processing, a bubblesort (okay... just an example though) may have finished! t> The consoles also have the advantage of only having one set of hardware per system t> to deal with, a luxury the PC world can't touch. Yes, that's a double-edged sword with the PC. It has it's advantages... and disadvantages. t> Hehe. On a side note, I love how people instantly blame Bush for it... as if the t> Oval Office had that kind of power =P M0r0ns should realize that it isn't really a t> downturn in most cases, as much as the venture capitalists coming up and asking for t> some of the return on their investments. I blame Bush for it, but that's mainly because he's a monkey in a suit... or a puppet of his father's. ;) I know that it wasn't him for this, but I really don't like his views on pollution. He's okay with it... the shit. t> Heh, most of the real stupidity I've come across has either been in code written by t> people that are no longer at loki, or by the original 'doze people. Been about t> 50/50 so far. They should force programmers to write clean code and to comment anything that isn't going to be clear... Or if you're using any "tricks" then you should explain them in comments. That's my opinion of course - but it helps. There are a lot of plainly average or even sub-average coders out there. They can get given something to implement and can implement it - but they don't understand the algorithm and so they can't/don't optimise. And this whole philosophy of "The PC's will be faster in 6 months, let's delay the release so it runs better" is a nasty one. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 8 10:09:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA34586 for dynarec-outgoing; Sat, 8 Sep 2001 10:08:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001b01c13889$5e6c10a0$659d4ed4@menta.net> From: "Victor Moya del Barrio" To: References: <20010907223724.E67793-100000@beacon.synthcom.com> <3B99DA10.96785934@austin.rr.com> Subject: Re: DYNAREC: Carry flag emulation in C Date: Sat, 8 Sep 2001 19:11:54 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > This guy was a PHD. I shit you not. I really wish they'd revoke people's > > schooling certifications if they're idiots. > > PhD in Comp. Sci? Now that *is* scary... though come to think of it, the best > teacher I found at UCI only had a BS... > He! PhD is obviously over rated. In fact I don't think neither university or PhD courses are intended to provide good programmers. The only thing that in my university professors do with our code is execute it to see if it 'works' :P. And in PhD (or at least the courses I'm going to take) the important is not programming but learning the last 'techniques' and how to develop experiences and get results (simulate, simulate, simulate, simulate ...). Well perhaps is just that I'm in the computer architecture area, I don't know how it works in the 'programming' area, but I think they are intended to abstract algorithms and computer theory rather than practice (but who knows). In fact I'm beginning to think that a job in a computer gaming company could be really fun compared with a PhD ;). > > Good God, why didn't they just used fixed point notation? Too hard? At > > least that's consistent. > > I believe that by the time they realized what a problem the floating point stuff > was (seems they ran into problems between retail/debug builds, differing compile > options, and maybe AMD/Intel) it was deemed too time consuming to go back and > change all the FP stuff to fixed. I'm pretty sure they learned their lesson on > that. > Then try to get running this stuff using emulation (evil FP emulation when IEEE is not really IEEE because of the different internal precission) :). BTW I was in the WBT (Workshop in Binary Translation) and it was BOOOORING :P. The introduction (by one of the people from HP Dynamo, Evelyn something) and a couple of presentations had a bit of interest (are you interested in fast ISA decoding ;). There was a direct binary translator (dynarec) from x86 and PowerPC to Alpha from a german guy (I think) called Mark Probst. Of course the first the people asked was, where is the IR? :)). They used lisp kind descriptions for the ISAs a bit different from what we would want to use in DR68K. The numbers are pretty impressive (10 times max overhead for x86 to Alpha taking into account flags and other crap), for an academical 'product' of course. I will try to get the papers and put them if someone is interested. There was also one about kernel level (OS) dynamic optimization, kinda weird that an OS needs optimization (Sparc Solaris). I have been pretty busy last week (and I will be even more next) with PACT and PhD course 'preparations' (I hate burocrazy ;) so I haven't done anything around DR68K (I planned to try a 8080 description, easier than that we will find nothing :P). > > -->Neil -- > ReaperSMS - John Allensworth Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 8 10:25:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA34605 for dynarec-outgoing; Sat, 8 Sep 2001 10:24:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 8 Sep 2001 10:29:32 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <3.0.5.32.20010907224808.0089bda0@mailandnews.com> Message-ID: <20010908102826.M67793-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Game programming hasn't advanced that far. I think most places are still > >floundering around the bronze age as far as design goes... > Since I'm not in the industry, I can only repeat what others have said and > add my own insignificant observances, but: I've heard that game development > is particularly brutal because games have become mainstream entertainment > very quickly, and game projects are often managed by people who really care > more about business than games. It depends upon the style of the game, but generally it's true. One thing that offends me so much about the game industry is how much garbage there is. I think on Diablo (can't remember the game for sure) there were like 8 engineers, 12 artists, and like 30 managers/marketing jerks. WTF? > Wouldn't this have a big impact on why game design seems so terrible? It > doesn't look like it would be easy to fix the situation, since games are > gaining more and more popularity, and developers are kind of digging > themselves into a hole. Because people care more about flash than substance. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 8 10:32:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA34623 for dynarec-outgoing; Sat, 8 Sep 2001 10:32:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 8 Sep 2001 10:38:19 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <3B99DA10.96785934@austin.rr.com> Message-ID: <20010908102951.R67793-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > checking sucks and can't figure out why his code is intermittent. > > > well, he at least got the error... > > No, he didn't. Until I did a code review and found that bone rolling out > > of the closet. > He at least made an attempt at error handling, got the "save return value" part at > least =P No, he didn't. He just cut & pasted code from elsewhere and it happened to have that in it! > > would get higher and higher so when you were at 500 entries or so, it > > would take 7/10ths of a second to get the record and over 2 seconds for it > > to process it. > Perfect example of why the unix way is good: "When in doubt, use brute force", > "Fancy algorithms usually run slow for small values of N. N is usually small." And the worst thing you can do is run a Quicksort on a sorted list. A bubble or insertion would've been much better. > > This guy was a PHD. I shit you not. I really wish they'd revoke people's > > schooling certifications if they're idiots. > PhD in Comp. Sci? Now that *is* scary... though come to think of it, the best > teacher I found at UCI only had a BS... Consistently, the best programmers I've ever met have been ones with no degrees. I have a lower and lower opinion of schools each time I deal with a new intern. I basically have to deprogram them of dumbass ideas. For example, one intern I was working with wrote a bunch of convoluted code to check an error condition - perfect candidate for a goto. I asked him "Why don't you use a goto and just do your cleanup at the bottom of the procedure?" He said, "Because gotos are bad." I asked "Why?" big pause... "Because that's what we were taught." And I said, "They didn't tell you *WHY* they're bad?" and he said, "Nope." So I proceeded to have to deprogram him from the crap that he was fed. He also went crazy. Put everything in classes, etc... I said "Why are you doing this?" He responded, "Because that's the way we were taught." He also didn't know that C++ was an extension of C and that object oriented programming was a design methodology and not a language. Sigh... > > With the fake economic downturn in the US, it's starting to take its toll. > > Rumor has it we're having another round of layoffs at Intel and I really > > wish it'd be like Survivor where we can vote people out of the group. ;-) > Hehe. On a side note, I love how people instantly blame Bush for it... > as if the Oval Office had that kind of power =P M0r0ns should realize > that it isn't really a downturn in most cases, as much as the venture > capitalists coming up and asking for some of the return on their > investments. I do blame Bush for it, but not for the reasons you think. Traditionally in the US when we've had conservative presidents (and this guy is as right wing as you can get - compassionate conservatism? Come on!), American citizens hang on to their wallets. While the "downturn" in the industry was starting before he got in office, his presence there just makes it worse, and those $600 tax refund checks are nothing more than a political ploy. I didn't like either choice for president. I voted against Bush because I don't want to go back to the Reagan/Bush era again. Them was some bad times. Al Gore is stupid but he's smart enough to not do anything. Bush is a bull in a China shop. Left wing liberals are annoying, right wing conservatives are dangerous. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 8 10:33:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA34633 for dynarec-outgoing; Sat, 8 Sep 2001 10:33:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 8 Sep 2001 18:40:01 +0000 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: Carry flag emulation in C Message-ID: <20010908184001.C3856@boris> References: <20010907223724.E67793-100000@beacon.synthcom.com> <3B99DA10.96785934@austin.rr.com> <001b01c13889$5e6c10a0$659d4ed4@menta.net> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit In-Reply-To: <001b01c13889$5e6c10a0$659d4ed4@menta.net>; from victormoya@menta.net on Sat, Sep 08, 2001 at 17:11:54 +0000 X-Mailer: Balsa 1.0.pre5 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Sat, 08 Sep 2001 17:11:54 Victor Moya del Barrio wrote: > > > > This guy was a PHD. I shit you not. I really wish they'd revoke > people's > > > schooling certifications if they're idiots. > > > > PhD in Comp. Sci? Now that *is* scary... though come to think of it, > the best > > teacher I found at UCI only had a BS... > > > He! PhD is obviously over rated. In fact I don't think neither > university > or PhD courses are intended to provide good programmers. The only thing > that in my university professors do with our code is execute it to see if > it 'works' :P. And in PhD (or at least the courses I'm going to take) > the > important is not programming but learning the last 'techniques' and how > to > develop experiences and get results (simulate, simulate, simulate, > simulate ...). > Well perhaps is just that I'm in the computer architecture area, I don't > know > how it works in the 'programming' area, but I think they are intended to > abstract algorithms and computer theory rather than practice (but who > knows). Hmm, so I'm just making myself unemployable? Oh well, too bad. Mind you, I know better than to try to program in C++... > In fact I'm beginning to think that a job in a computer gaming company > could be really fun compared with a PhD ;). I think that about once a month. You probably have to actually do some work that way though. > [snip] > > BTW I was in the WBT (Workshop in Binary Translation) and it was > BOOOORING :P. The introduction (by one of the people from > HP Dynamo, Evelyn something) and a couple of presentations > had a bit of interest (are you interested in fast ISA decoding ;). > > There was a direct binary translator (dynarec) from x86 and PowerPC to > Alpha from a german guy (I think) called Mark Probst. Of course > the first the people asked was, where is the IR? :)). They used > lisp kind descriptions for the ISAs a bit different from what we would > want > to use in DR68K. The numbers are pretty impressive (10 times max > overhead > for x86 to Alpha taking into account flags and other crap), for > an academical 'product' of course. > > I will try to get the papers and put them if someone is interested. > There > was also one about kernel level (OS) dynamic optimization, kinda weird > that > an OS needs optimization (Sparc Solaris). I'd be interested in seeing them, seeing as that's supposed to be my approximate area of research. I should have probably been at that workshop too, coming to think of it. Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 8 10:34:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA34642 for dynarec-outgoing; Sat, 8 Sep 2001 10:34:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 8 Sep 2001 10:39:51 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Carry flag emulation in C In-Reply-To: <001b01c13889$5e6c10a0$659d4ed4@menta.net> Message-ID: <20010908103927.G67793-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I will try to get the papers and put them if someone is interested. There > was also one about kernel level (OS) dynamic optimization, kinda weird that > an OS needs optimization (Sparc Solaris). Not weird if you've used Solaris. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 8 13:16:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA34769 for dynarec-outgoing; Sat, 8 Sep 2001 13:16:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003701c138a3$96cb11c0$659d4ed4@menta.net> From: "Victor Moya del Barrio" To: References: <20010907223724.E67793-100000@beacon.synthcom.com> <3B99DA10.96785934@austin.rr.com> <001b01c13889$5e6c10a0$659d4ed4@menta.net> <20010908184001.C3856@boris> Subject: Re: DYNAREC: Carry flag emulation in C Date: Sat, 8 Sep 2001 22:19:39 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hmm, so I'm just making myself unemployable? Oh well, too bad. Mind you, I > know better than to try to program in C++... > Damn C++ ;). Another guy working in Dixie (the project I work) told my boss to use C++ for the new implementation of the translator layer/tool (Dixie is a Virtual Machine, with optional, still on development, for ever in development, static translation ;) so I will have to be working with it now. BTW, the guy who said that now is not very happy, the C++ compilers we have installed in our Alpha station (our main development station) are crap and there were a lot of problems before it started to work :P. For an OO language I would go for Java (COMPILED PLEASE! :). For C just C without strange things like an postincrement operator :). > > I'd be interested in seeing them, seeing as that's supposed to be my > approximate area of research. I should have probably been at that workshop > too, coming to think of it. > I was there because it was organized by my university department and poor PhD (or even pre as myself) students can go for free as 'volunteers', to aid to the organization. Kinda strange that PACT came to Barcelona the same year I'm going to start PhD :P. I'm still not sure about what will be exactly my PhD, BT/Dynamic Optimization, yes, but what kind? Something I would found interesting OS integrated BTs or OS support for BT (I want to use mmap kind instructions in Win ;). > Jules > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Sep 8 14:03:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA34812 for dynarec-outgoing; Sat, 8 Sep 2001 14:03:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 8 Sep 01 17:05:54 -0400 Message-Id: <3.0.5.32.20010908140644.008972a0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 08 Sep 2001 14:06:44 +0000 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: OT: SSSCA Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I thought I might point this out: http://www.politechbot.com/docs/hollings.090701.html The DMCA was just the start :P This one REALLY crosses the line. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 23 11:03:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA57453 for dynarec-outgoing; Sun, 23 Sep 2001 11:03:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Breaking the Silence From: "M.I.K.e" Message-ID: <00038ea614d76529_mailit@mail.dynarec.com> Date: Sun, 23 Sep 2001 20:14:55 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi guys, sorry that I was quiet for such a while... About current news topics: IMO this is a very severe situation! Let me just say that I'm still shocked by the events in New York and Washington and I truely hope that no one you know is under the casulties! I'm more involved in the whole thing than I ever dreamt of in my worst nightmares: First of all my brother-in-law is in the National Guard of Virginia, so he abviously got activated but to date still doesn't seem to have any clear orders. If the worst happens he could be even called in as a reservist soldier... Some days after the attacks on the World Trade Center I learnt that one of my former classmates actually worked there and managed to get out alive... Let's hope the best, but I fear that the worst is yet to come... -- M.I.K.e "If I am elected, the concrete barriers around the WHITE HOUSE will be replaced by tasteful foam replicas of ANN MARGARET!" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 23 11:40:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA57492 for dynarec-outgoing; Sun, 23 Sep 2001 11:40:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 23 Sep 01 14:43:09 -0400 Message-Id: <3.0.5.32.20010923114359.0089e3a0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 23 Sep 2001 11:43:59 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Breaking the Silence In-Reply-To: <00038ea614d76529_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 08:14 PM 9/23/01 +0200, you wrote: >Hi guys, > >sorry that I was quiet for such a while... > >About current news topics: IMO this is a very severe situation! > >Let me just say that I'm still shocked by the events in New York and >Washington and I truely hope that no one you know is under the casulties! It was definitely shocking news to me. I first heard it on Tuesday morning from someone who, well, usually makes things up, so I dismissed it as some sort of a weird joke. But minutes later, I found out it was true. It's a terrible tragedy :( Nobody I know was involved in the disaster... I also hope nobody else on the list was affected. >I'm more involved in the whole thing than I ever dreamt of in my worst >nightmares: >First of all my brother-in-law is in the National Guard of Virginia, so he >abviously got activated but to date still doesn't seem to have any clear >orders. If the worst happens he could be even called in as a reservist >soldier... I've heard of reservists being called up here in Nevada. >Some days after the attacks on the World Trade Center I learnt that one of my >former classmates actually worked there and managed to get out alive... That's good news. >Let's hope the best, but I fear that the worst is yet to come... I'm afraid that's going to be the case :( Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 23 12:15:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA57532 for dynarec-outgoing; Sun, 23 Sep 2001 12:14:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Breaking the Silence From: "M.I.K.e" Message-ID: <00038ea71e083248_mailit@mail.dynarec.com> References: <3.0.5.32.20010923114359.0089e3a0@mailandnews.com> Date: Sun, 23 Sep 2001 21:29:04 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It was definitely shocking news to me. I first heard it on Tuesday morning >from someone who, well, usually makes things up, so I dismissed it as some >sort of a weird joke. I first heard it when I was at work. The marketing boss sent around a message and I thought that must be a marketing gag... >But minutes later, I found out it was true. It's a terrible tragedy :( Well, my thought then was that my relatives don't live that far from Washington and that my brother-in-law is in the National Guard. I had to go home early that day because I couldn't think straight and felt really sick for the rest of the day. >Nobody I know was involved in the disaster... At least that's good news... >I also hope nobody else on the list was affected. I dearly hope so too. >>Let's hope the best, but I fear that the worst is yet to come... >I'm afraid that's going to be the case :( I'm normally rather pessimistic, but in this case even many optimists will agree... >Bart PS: That strange White House joke at the end of my message was produced by my random fortune cookies and is totally misplaced here... :-( -- M.I.K.e In our civilization, and under our republican form of government, intelligence is so highly honored that it is rewarded by exemption from the cares of office. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 23 12:48:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA57565 for dynarec-outgoing; Sun, 23 Sep 2001 12:48:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 23 Sep 2001 12:58:11 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Breaking the Silence In-Reply-To: <00038ea614d76529_mailit@mail.dynarec.com> Message-ID: <20010923125503.J29786-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Let me just say that I'm still shocked by the events in New York and > Washington and I truely hope that no one you know is under the casulties! Not me - directly or indirectly. Well, not quite true - my personal trainer is in the reserves and he got called on Wednesday. Not for active duty - basically all he'll be doing is defending the state capitol. > First of all my brother-in-law is in the National Guard of Virginia, so he > abviously got activated but to date still doesn't seem to have any clear > orders. If the worst happens he could be even called in as a reservist > soldier... > Some days after the attacks on the World Trade Center I learnt that one of my > former classmates actually worked there and managed to get out alive... > Let's hope the best, but I fear that the worst is yet to come... Not sure I agree. It can't get much worse. I've had all kinds of ill feelings toward fundamentalist Muslims - including complete and absolute extermination. The only time I have no religious tolerance is when a specific thread of a religion condones the killing of others for the sake of their beliefs. Yeah, yeah, yeah... I know there have been Christian wackos who twist interpretations of the bible around to do such things but there are only a handful of them. Fundamentalist Islam teachings actually tell followers to do this. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 23 14:03:59 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA57629 for dynarec-outgoing; Sun, 23 Sep 2001 14:03:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 23 Sep 01 17:06:47 -0400 Message-Id: <3.0.5.32.20010923140736.0089b240@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 23 Sep 2001 14:07:36 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Breaking the Silence In-Reply-To: <20010923125503.J29786-100000@beacon.synthcom.com> References: <00038ea614d76529_mailit@mail.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Not sure I agree. It can't get much worse. Well, the scale of the attacks can be elevated, although I doubt the frequency of massive attacks is going to increase. These things take a lot of resources and time. Biological and chemical attacks are not so far fetched. The notion of terrorists with nuclear weapons is more outlandish, but certainly not impossible. The survival of the free world isn't at stake, no matter what all the bin Ladens out there think, but countless lives are. Also, I feel terrible about the fact that many innocent people are going to die in the retaliatory attacks. I don't think blasting entire countries into glass is a good solution. I realize, of course, that it isn't ever going to come to that, but I've heard of an alarming number of people who have such views. Afghanistan is an incredibly severe humanitarian situation. The situation is several times worse than what our media says. The destruction of the Buddhist statues drew some press coverage and lots of opposition from the international community, but everyone forgets the daily sufferings of the people -- it's as if the statues were "worth" more. Death is rampant, be it from starvation or from much more violent and sinister causes. >I've had all kinds of ill >feelings toward fundamentalist Muslims - including complete and absolute >extermination. The only time I have no religious tolerance is when a >specific thread of a religion condones the killing of others for the sake >of their beliefs. Yeah, yeah, yeah... I know there have been Christian >wackos who twist interpretations of the bible around to do such things but >there are only a handful of them. Fundamentalist Islam teachings actually >tell followers to do this. There are so many factors which contribute to Fundamentalist Islam's success. Christianity also went through violent periods of development, so a bit of a parallel can be drawn. Of course, the worlds of the 11th and 21st century are very different, and the history of Islam's development is very different from Christianity's. It's difficult to say with certainty where things are headed, but I'm sure the situation is bound to improve. Perhaps Islam will go through its own version of the Reformation? Islam isn't a united religion, like Christianity was, so the situation might turn out to be quite different. Just some things to think about... I've seen some interesting statistics in the last few days. I wasn't aware that only 23% of Arab Americans were Muslims (the rest being Christian, mostly Catholic and Orthodox.) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 23 17:41:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA57793 for dynarec-outgoing; Sun, 23 Sep 2001 17:41:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 23 Sep 2001 17:51:08 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Breaking the Silence In-Reply-To: <3.0.5.32.20010923140736.0089b240@mailandnews.com> Message-ID: <20010923174015.T29786-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well, the scale of the attacks can be elevated, although I doubt the > frequency of massive attacks is going to increase. These things take a lot > of resources and time. Biological and chemical attacks are not so far > fetched. It's more far fetched than one would expect. First of all, there's distribution. Anyone who uses it will want to do a wide amount of damage, not just a few people. That makes biological warfare, without the aid of a scud missile or something in the US, very tough to distribute. The quantities you'd need to be effective in something like a cooling/ventilation system are so large that it'd be impossible to get it in without being noticed. It's not like someone can walk around with something the size of a Palm and dump it in the cooling system of a building and kill everyone in it. Second of all, things like anthrax, arsenic, and nightshade aren't easily distributable in doses high enough to do damage. Wanna poison a city's water supply? Good luck. For something fed for the size of Portland, you'd need 700,000 gallons of it do make everyone sick, otherwise it'd be far too diluted. Plus, there are already water treatment facilities that eliminate most commonly occuring poisons. Really, terrorists are much, much better off crashing a plane into a building or bombing something rather than biological warfare. It's far more complex than one would think. > The notion of terrorists with nuclear weapons is more outlandish, > but certainly not impossible. Certainly not, but plutonium is extremely hard to get and the trigger mechanism is still largely a mystery to the general public. > Also, I feel terrible about the fact that many innocent people are going to > die in the retaliatory attacks. I don't think blasting entire countries > into glass is a good solution. I realize, of course, that it isn't ever > going to come to that, but I've heard of an alarming number of people who > have such views. I don't feel too terrible about it specifically because those who would wage the same war on the US turf would not make the distinction between the military and civilians. > >of their beliefs. Yeah, yeah, yeah... I know there have been Christian > >wackos who twist interpretations of the bible around to do such things but > >there are only a handful of them. Fundamentalist Islam teachings actually > >tell followers to do this. > There are so many factors which contribute to Fundamentalist Islam's > success. Part of it has to do with a crazy millionaire who backs even partial success with $ and people associate it with the religion. > Christianity also went through violent periods of development, so > a bit of a parallel can be drawn. And if I lived at that time, I'd be just as apt to take the route of extermination. This just bugs me. How often does religion just screw everything up? It has been the bone of contention for thousands of years. People killing people over beliefs that are based not on rational thought but instead on a belief in something they can't see, hear, taste, etc... whatever. Really stupid. > Perhaps Islam will go through its own version of the Reformation? Islam > isn't a united religion, like Christianity was, so the situation might turn > out to be quite different. Just some things to think about... True, however I'm not looking for reform in Islam, just fundamentalist Islam - a minor part of it. > I've seen some interesting statistics in the last few days. I wasn't aware > that only 23% of Arab Americans were Muslims (the rest being Christian, > mostly Catholic and Orthodox.) And even then, the Muslims they are are a very peaceful people and are completely opposite of those wackos we're about to turn to glass. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 23 20:34:27 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA57926 for dynarec-outgoing; Sun, 23 Sep 2001 20:34:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 23 Sep 01 23:37:30 -0400 Message-Id: <3.0.5.32.20010923203809.0089d580@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 23 Sep 2001 20:38:09 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Breaking the Silence In-Reply-To: <20010923174015.T29786-100000@beacon.synthcom.com> References: <3.0.5.32.20010923140736.0089b240@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Really, terrorists are much, much better off crashing a plane into a >building or bombing something rather than biological warfare. It's far >more complex than one would think. Well, what about certain types of nerve gases? VX for example. I believe VX gas is extremely deadly. Chemical weapons were used in Laos after the Vietnam war period and in Afghanistan during the Soviet conflict. Some of these weapons were extremely potent, I recall a story about a plane flying over a village in Laos spraying an unidentified yellow substance which caused most of laborers in the rice fields to die within minutes. Someone flying a crop duster over an area with a large number of people outside could do some scarey damage. The hardest part would be obtaining the substances, though. >> The notion of terrorists with nuclear weapons is more outlandish, >> but certainly not impossible. > >Certainly not, but plutonium is extremely hard to get and the trigger >mechanism is still largely a mystery to the general public. What about purchasing a nuclear weapon from an ex-Soviet country, or a state like Pakistan or North Korea? It wouldn't be cheap, it would be more than bin Laden's entire estimated fortune, but who knows... Bin Laden's organization has allegedly been trying to secure nuclear materials since the early 90's, or so I've heard. >I don't feel too terrible about it specifically because those who would >wage the same war on the US turf would not make the distinction between >the military and civilians. But an innocent person is an innocent person, regardless of origin. That's the problem with terrorism. They don't care about civilian casualties, in fact, they actually target civilians. Trying to compensate by killing other innocent civilians doesn't help the situation. Many of those who will die in a bombing campaign are victims themselves of a cruel existance. Terrorists have settled in places like Afghanistan, thus bringing death sentences to those who live around them, simply because they exist. >Part of it has to do with a crazy millionaire who backs even partial >success with $ and people associate it with the religion. Yes. And there are other contributors as well, supposedly. The Taliban generate much of their income from the opium trade, and might contribute some of that to bin Laden's cause. >This just bugs me. How often does religion just screw everything up? It >has been the bone of contention for thousands of years. People killing >people over beliefs that are based not on rational thought but instead on >a belief in something they can't see, hear, taste, etc... whatever. Really >stupid. Hitler wasn't a very religious person and his ideals were responsible for one of the greatest atrocities in history. He definitely had a belief system, and I think even tried using religion to win over the people, but he himself was most likely atheist. He wanted to get rid of the "tenderness" of Christianity, and wanted to revert to worship of old Germanic deities. Similar situation with Stalin. It might be that religion isn't really the force that's at work behind any of the bad things we associate it with. It could be a deeper yearning for violence, with religion as a way to rationalize it... Virtually all religions are peaceful. But people will always find an excuse to be violent. Sometimes people kill simply because they _can_. Take the incidents of violence against Arabs in the last week. I doubt many of the perpetrators were REALLY motivated by the WTC bombings, but it gave them a way to rationalize their crimes. I think the problem with this world is people ;) >True, however I'm not looking for reform in Islam, just fundamentalist >Islam - a minor part of it. It's so decentralized... it'll be a while before it goes away, I think :( There's a quote that goes something like "a fanatic is someone who won't stop talking, and refuses to change the subject." That's exactly what these people are like. These people could just as well go off and live in caves somewhere, without outside contact -- and that's partially what they've done. But they keep yearning to change the world. They're obsessed with the superiority of their ideas, and they know they're in a weak position when it comes to exercising any influence over their enemies. >And even then, the Muslims they are are a very peaceful people and are >completely opposite of those wackos we're about to turn to glass. Many of the people in Afghanistan would also like peace. The Taliban is one of the most terrible, if not THE most terrible, regimes on the planet. It needs to be removed. Not just for our safety (there won't be any countries left for bin Laden to set up massive operations in) but for the safety of the people there as well. The people there are fragmented, and confused, but many actually would be happy to see the Taliban go. They claim to have brought peace to much of Afghanistan, but look at how they've done it. Mass executions based on ethnicity, people buried alive in mass graves, terror raids, war, etc -- all of which are still on-going, they keep finding new reasons to do these things. And they have to maintain it with an extremely rigorous legal code with the type of barbaric punishments you'd expect to find 1000-2000 years ago. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 23 21:44:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA57991 for dynarec-outgoing; Sun, 23 Sep 2001 21:44:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Breaking the Silence From: "M.I.K.e" Message-ID: <00038eaf04167d20_mailit@mail.dynarec.com> References: <20010923125503.J29786-100000@beacon.synthcom.com> Date: Mon, 24 Sep 2001 06:54:29 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Not sure I agree. It can't get much worse. I've had all kinds of ill >feelings toward fundamentalist Muslims - including complete and absolute >extermination. My feelings never went *that* far but I certainly could think of appropriate things to do with the remaining terrorists... >The only time I have no religious tolerance is when a >specific thread of a religion condones the killing of others for the sake >of their beliefs. The sick thing is that what they did is *not* covered by the Koran! Sure, there is some section that say they will be heros when they die in a holy war, *but* it has to be a war against warriors and not civilians and taking their own lives in the way they did was actually a sin according to the Koran. So it's not the religion but the teachings of some crazy people! >Yeah, yeah, yeah... I know there have been Christian >wackos who twist interpretations of the bible around to do such things but >there are only a handful of them. Only a handflul? Think big scale, think of the Crusades, thousands of knights attacking the Muslims, and everything directly covered and ordered by the pope! >-->Neil -- M.I.K.e "I don't mind going nowhere as long as it's an interesting path." -- Ronald Mabbitt --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 23 23:18:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA58067 for dynarec-outgoing; Sun, 23 Sep 2001 23:18:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 23 Sep 2001 23:27:39 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Breaking the Silence In-Reply-To: <3.0.5.32.20010923203809.0089d580@mailandnews.com> Message-ID: <20010923232215.S29786-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Really, terrorists are much, much better off crashing a plane into a > >building or bombing something rather than biological warfare. It's far > >more complex than one would think. > Well, what about certain types of nerve gases? VX for example. I believe VX > gas is extremely deadly. Yes, but very hard to get ahold of and also harder to get ahold of it in quantities. Sure, you could take out a small office building, but if your target is much larger, it's not feasible. > Someone flying a crop duster over an area with a large number of people > outside could do some scarey damage. The hardest part would be obtaining > the substances, though. Yup. > >Certainly not, but plutonium is extremely hard to get and the trigger > >mechanism is still largely a mystery to the general public. > What about purchasing a nuclear weapon from an ex-Soviet country, or a > state like Pakistan or North Korea? That assumes that they are available, and you'll find they aren't. > It wouldn't be cheap, it would be more than bin Laden's entire estimated > fortune, but who knows... Bingo. > >I don't feel too terrible about it specifically because those who would > >wage the same war on the US turf would not make the distinction between > >the military and civilians. > But an innocent person is an innocent person, regardless of origin. Of course. > That's the problem with terrorism. They don't care about civilian > casualties, in fact, they actually target civilians. Trying to compensate > by killing other innocent civilians doesn't help the situation. And there's a special place in Hell reserved just for those who kill other Islams... > existance. Terrorists have settled in places like Afghanistan, thus > bringing death sentences to those who live around them, simply because they > exist. Which would hopefully have the locals be willing to eject them from the area. > >This just bugs me. How often does religion just screw everything up? It > >has been the bone of contention for thousands of years. People killing > Hitler wasn't a very religious person and his ideals were responsible for > one of the greatest atrocities in history. I didn't say it had to be religious. I'm saying that religion most often is the cause of major conflict. The middle east has been fighting now for what, 5000 years? > simply because they _can_. Take the incidents of violence against Arabs in > the last week. I doubt many of the perpetrators were REALLY motivated by > the WTC bombings, but it gave them a way to rationalize their crimes. > I think the problem with this world is people ;) Agreed. > >True, however I'm not looking for reform in Islam, just fundamentalist > >Islam - a minor part of it. > It's so decentralized... it'll be a while before it goes away, I think :( I'm sure. > These people could just as well go off and live in caves somewhere, without > outside contact -- and that's partially what they've done. But they keep > yearning to change the world. They're obsessed with the superiority of > their ideas, and they know they're in a weak position when it comes to > exercising any influence over their enemies. Reminds me of the Hitleresque era... > The people there are fragmented, and confused, but many actually would be > happy to see the Taliban go. Sure. Arafat has mellowed in his old age and he's a far cry from Bin Laden. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 23 23:20:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA58080 for dynarec-outgoing; Sun, 23 Sep 2001 23:20:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 23 Sep 2001 23:29:34 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Breaking the Silence In-Reply-To: <00038eaf04167d20_mailit@mail.dynarec.com> Message-ID: <20010923232752.E29786-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >The only time I have no religious tolerance is when a > >specific thread of a religion condones the killing of others for the sake > >of their beliefs. > The sick thing is that what they did is *not* covered by the Koran! No, but it is covered by the fundamentalist Islam teaching. I certainly recognize the difference. > Sure, there is some section that say they will be heros when they die in a > holy war, *but* it has to be a war against warriors and not civilians and > taking their own lives in the way they did was actually a sin according to > the Koran. They also took out other Muslims in the attack, which leaves them a special place in hell according to the Koran. ;-) > So it's not the religion but the teachings of some crazy people! It's a specific vertical band of a religion. > >Yeah, yeah, yeah... I know there have been Christian > >wackos who twist interpretations of the bible around to do such things but > >there are only a handful of them. > Only a handflul? Compared to the entire world, yes. > Think big scale, think of the Crusades, thousands of knights attacking the > Muslims, and everything directly covered and ordered by the pope! I wasn't talking about 600 years ago - I'm talking about now. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 00:57:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA58168 for dynarec-outgoing; Mon, 24 Sep 2001 00:56:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 01:02:56 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: DYNAREC: 6502 script In-Reply-To: <20010923232752.E29786-100000@beacon.synthcom.com> Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="8323328-1751431337-1001318576=:408" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --8323328-1751431337-1001318576=:408 Content-Type: TEXT/PLAIN; charset=US-ASCII Hit a brain lock on various projects (cpu core, portage of the Battle Bakraid driver from Raine->Mame, l33t disassembler) and wrote up a draft for a 6502 script. I probably have the conditional jump stuff a bit wrong, and the [operands] section needs some work. I wasn't sure how to indicate asm syntax, but all the immediate ops have a guess at it thanks to the massive amount of rape'n'paste that went on. I may take a shot at writing up a parser/fooalyzer for the thing this week. John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --8323328-1751431337-1001318576=:408 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="6502.script" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: W2NwdWluZm9dDQpOYW1lID0gNjUwMg0KSW5zdHJ1Y3Rpb25HcmFudWxhcml0 eSA9IDg7DQoNCltmbGFnc10NCkMgICAgICAgPSB7MHgwMSwgIkNhcnJ5In07 DQpaICAgICAgID0gezB4MDIsICJaZXJvIn07DQpJICAgICAgID0gezB4MDIs ICJJbnQifTsNCkQgICAgICAgPSB7MHgwMiwgIkRlY2ltYWwifTsNCkIgICAg ICAgPSB7MHgwMiwgIkJyZWFrIn07DQpPICAgICAgID0gezB4MDIsICJVbnVz ZWQifTsNClYgICAgICAgPSB7MHgwMiwgIk92ZXJmbG93In07DQpOICAgICAg ID0gezB4MDIsICJTaWduIn07DQoNCltvcGVyYW5kc10NCklNTTggICAgPSB7 OCwgdW5zaWduZWR9Ow0KSU1NMTYgICA9IHsxNiwgKCg4LCB1bnNpZ25lZCkg PDwgOCkgfCAoOCwgdW5zaWduZWQpKX07DQpSRUw4ICAgID0geyg4LCBzaWdu ZWQpICsgUEMgKyAyfTsNCklORFggICAgPSB7OCwgdW5zaWduZWR9Ow0KSU5E WSAgICA9IHs4LCB1bnNpZ25lZH07DQpaUCAgICAgID0gezgsIHVuc2lnbmVk fTsNClpQWCAgICAgPSB7OCwgdW5zaWduZWR9Ow0KWlBZICAgICA9IHs4LCB1 bnNpZ25lZH07DQpBQlMgICAgID0gezE2LCB1bnNpZ25lZH07DQpBQlNYICAg ID0gezE2LCB1bnNpZ25lZH07DQpBQlNZICAgID0gezE2LCB1bnNpZ25lZH07 DQpBQlNJTkQgID0gezE2LCB1bnNpZ25lZH07DQoNCltpbnN0cnVjdGlvbnNd DQojICBiaXQgcGF0dGVybiAgfG5hbXwgYXJncyAgICAgIHwgaW5mbHMgfCBv dXRmbCB8IHRpbWUgIHwgYnRpbWUgfCBhdHQNCjAwMDAwMDAwICAgICAgICB8 QlJLfCAgICAgICAgICAgfCAgICAgICB8IEIgICAgIHwgNiAgICAgfCAgICAg ICB8IFQNCg0KMDAwMDEwMDEgKGkqOCkgIHxPUkF8ICNpPUlNTTggICB8ICAg ICAgIHwgTlogICAgfCAyICAgICB8ICAgICAgIHwgTg0KMDAwMDAxMDEgKGkq OCkgIHxPUkF8IGk9WlAgICAgICB8ICAgICAgIHwgTlogICAgfCAzICAgICB8 ICAgICAgIHwgTg0KMDAwMTAxMDEgKGkqOCkgIHxPUkF8IGk9WlBYICAgICB8 ICAgICAgIHwgTlogICAgfCA0ICAgICB8ICAgICAgIHwgTg0KMDAwMDExMDEg KGkqMTYpIHxPUkF8IGk9QUJTICAgICB8ICAgICAgIHwgTlogICAgfCA0ICAg ICB8ICAgICAgIHwgTg0KMDAwMTAwMDAgKGkqMTYpIHxPUkF8IGk9QUJTWCAg ICB8ICAgICAgIHwgTlogICAgfCA0KiAgICB8ICAgICAgIHwgTg0KMDAwMTEw MDEgKGkqMTYpIHxPUkF8IGk9QUJTWSAgICB8ICAgICAgIHwgTlogICAgfCA0 KiAgICB8ICAgICAgIHwgTg0KMDAwMDAwMDEgKGkqOCkgIHxPUkF8IGk9SU5E WCAgICB8ICAgICAgIHwgTlogICAgfCA2ICAgICB8ICAgICAgIHwgTg0KMDAw MTAwMDEgKGkqOCkgIHxPUkF8IGk9SU5EWSAgICB8ICAgICAgIHwgTlogICAg fCA1ICAgICB8ICAgICAgIHwgTg0KDQowMTEwMTAwMSAoaSo4KSAgfEFEQ3wg I2k9SU1NOCAgIHwgQyAgICAgfCBOWkNWICB8IDIgICAgIHwgICAgICAgfCBO DQowMTEwMDEwMSAoaSo4KSAgfEFEQ3wgaT1aUCAgICAgIHwgQyAgICAgfCBO WkNWICB8IDMgICAgIHwgICAgICAgfCBODQowMTExMDEwMSAoaSo4KSAgfEFE Q3wgaT1aUFggICAgIHwgQyAgICAgfCBOWkNWICB8IDQgICAgIHwgICAgICAg fCBODQowMTEwMTEwMSAoaSoxNikgfEFEQ3wgaT1BQlMgICAgIHwgQyAgICAg fCBOWkNWICB8IDQgICAgIHwgICAgICAgfCBODQowMTExMTEwMSAoaSoxNikg fEFEQ3wgaT1BQlNYICAgIHwgQyAgICAgfCBOWkNWICB8IDQqICAgIHwgICAg ICAgfCBODQowMTExMTAwMSAoaSoxNikgfEFEQ3wgaT1BQlNZICAgIHwgQyAg ICAgfCBOWkNWICB8IDQqICAgIHwgICAgICAgfCBODQowMTEwMDAwMSAoaSo4 KSAgfEFEQ3wgaT1JTkRYICAgIHwgQyAgICAgfCBOWkNWICB8IDYgICAgIHwg ICAgICAgfCBODQowMTExMDAwMSAoaSo4KSAgfEFEQ3wgaT1JTkRZICAgIHwg QyAgICAgfCBOWkNWICB8IDUqICAgIHwgICAgICAgfCBODQoNCjAwMTAxMDAx IChpKjgpICB8QU5EfCAjaT1JTU04ICAgfCAgICAgICB8IE5aICAgIHwgMiAg ICAgfCAgICAgICB8IE4NCjAwMTAwMTAxIChpKjgpICB8QU5EfCBpPVpQICAg ICAgfCAgICAgICB8IE5aICAgIHwgMyAgICAgfCAgICAgICB8IE4NCjAwMTEw MTAxIChpKjgpICB8QU5EfCBpPVpQWCAgICAgfCAgICAgICB8IE5aICAgIHwg NCAgICAgfCAgICAgICB8IE4NCjAwMTAxMTAxIChpKjE2KSB8QU5EfCBpPUFC UyAgICAgfCAgICAgICB8IE5aICAgIHwgNCAgICAgfCAgICAgICB8IE4NCjAw MTExMTAxIChpKjE2KSB8QU5EfCBpPUFCU1ggICAgfCAgICAgICB8IE5aICAg IHwgNCogICAgfCAgICAgICB8IE4NCjAwMTExMDAxIChpKjE2KSB8QU5EfCBp PUFCU1kgICAgfCAgICAgICB8IE5aICAgIHwgNCogICAgfCAgICAgICB8IE4N CjAwMTAwMDAxIChpKjgpICB8QU5EfCBpPUlORFggICAgfCAgICAgICB8IE5a ICAgIHwgNiAgICAgfCAgICAgICB8IE4NCjAwMTEwMDAxIChpKjgpICB8QU5E fCBpPUlORFkgICAgfCAgICAgICB8IE5aICAgIHwgNSAgICAgfCAgICAgICB8 IE4NCg0KMDAwMDEwMTAgICAgICAgIHxBU0x8IEEgICAgICAgICB8ICAgICAg IHwgTlpDICAgfCAyICAgICB8ICAgICAgIHwgTg0KMDAwMDAxMTAgKGkqOCkg IHxBU0x8IGk9WlAgICAgICB8ICAgICAgIHwgTlpDICAgfCA1ICAgICB8ICAg ICAgIHwgTg0KMDAwMTAxMTAgKGkqOCkgIHxBU0x8IGk9WlBYICAgICB8ICAg ICAgIHwgTlpDICAgfCA2ICAgICB8ICAgICAgIHwgTg0KMDAwMDExMTAgKGkq MTYpIHxBU0x8IGk9QUJTICAgICB8ICAgICAgIHwgTlpDICAgfCA2ICAgICB8 ICAgICAgIHwgTg0KMDAwMTExMTAgKGkqMTYpIHxBU0x8IGk9QUJTWCAgICB8 ICAgICAgIHwgTlpDICAgfCA3ICAgICB8ICAgICAgIHwgTg0KDQoxMDAxMDAw MCAoaSo4KSAgfEJDQ3wgaT1SRUw4ICAgIHwgQyAgICAgfCAgICAgICB8IDIg ICAgIHwgMyogICAgfCBDDQoxMDExMDAwMCAoaSo4KSAgfEJDU3wgaT1SRUw4 ICAgIHwgQyAgICAgfCAgICAgICB8IDIgICAgIHwgMyogICAgfCBDDQoxMTEx MDAwMCAoaSo4KSAgfEJFUXwgaT1SRUw4ICAgIHwgWiAgICAgfCAgICAgICB8 IDIgICAgIHwgMyogICAgfCBDDQoxMTAxMDAwMCAoaSo4KSAgfEJORXwgaT1S RUw4ICAgIHwgWiAgICAgfCAgICAgICB8IDIgICAgIHwgMyogICAgfCBDDQow MDExMDAwMCAoaSo4KSAgfEJNSXwgaT1SRUw4ICAgIHwgTiAgICAgfCAgICAg ICB8IDIgICAgIHwgMyogICAgfCBDDQowMDAxMDAwMCAoaSo4KSAgfEJQTHwg aT1SRUw4ICAgIHwgTiAgICAgfCAgICAgICB8IDIgICAgIHwgMyogICAgfCBD DQowMTAxMDAwMCAoaSo4KSAgfEJWQ3wgaT1SRUw4ICAgIHwgViAgICAgfCAg ICAgICB8IDIgICAgIHwgMyogICAgfCBDDQowMTExMDAwMCAoaSo4KSAgfEJW U3wgaT1SRUw4ICAgIHwgViAgICAgfCAgICAgICB8IDIgICAgIHwgMyogICAg fCBDDQoNCjAwMDExMDAwIChpKjgpICB8Q0xDfCBpPVJFTDggICAgfCAgICAg ICB8IEMgICAgIHwgMiAgICAgfCAgICAgICB8IE4NCjExMDExMDAwIChpKjgp ICB8Q0xEfCBpPVJFTDggICAgfCAgICAgICB8IEQgICAgIHwgMiAgICAgfCAg ICAgICB8IE4NCjAxMDExMDAwIChpKjgpICB8Q0xJfCBpPVJFTDggICAgfCAg ICAgICB8IEkgICAgIHwgMiAgICAgfCAgICAgICB8IE4NCjEwMTExMDAwIChp KjgpICB8Q0xWfCBpPVJFTDggICAgfCAgICAgICB8IFYgICAgIHwgMiAgICAg fCAgICAgICB8IE4NCg0KMDAxMTEwMDAgKGkqOCkgIHxTRUN8IGk9UkVMOCAg ICB8ICAgICAgIHwgQyAgICAgfCAyICAgICB8ICAgICAgIHwgTg0KMTExMTEw MDAgKGkqOCkgIHxTRUR8IGk9UkVMOCAgICB8ICAgICAgIHwgRCAgICAgfCAy ICAgICB8ICAgICAgIHwgTg0KMDExMTEwMDAgKGkqOCkgIHxTRUl8IGk9UkVM OCAgICB8ICAgICAgIHwgSSAgICAgfCAyICAgICB8ICAgICAgIHwgTg0KDQox MTAwMTAwMSAoaSo4KSAgfENNUHwgI2k9SU1NOCAgIHwgICAgICAgfCBOWkMg ICB8IDIgICAgIHwgICAgICAgfCBODQoxMTAwMDEwMSAoaSo4KSAgfENNUHwg aT1aUCAgICAgIHwgICAgICAgfCBOWkMgICB8IDMgICAgIHwgICAgICAgfCBO DQoxMTAxMDEwMSAoaSo4KSAgfENNUHwgaT1aUFggICAgIHwgICAgICAgfCBO WkMgICB8IDQgICAgIHwgICAgICAgfCBODQoxMTAwMTEwMSAoaSoxNikgfENN UHwgaT1BQlMgICAgIHwgICAgICAgfCBOWkMgICB8IDQgICAgIHwgICAgICAg fCBODQoxMTAxMTEwMSAoaSoxNikgfENNUHwgaT1BQlNYICAgIHwgICAgICAg fCBOWkMgICB8IDQqICAgIHwgICAgICAgfCBODQoxMTAxMTAwMSAoaSoxNikg fENNUHwgaT1BQlNZICAgIHwgICAgICAgfCBOWkMgICB8IDQqICAgIHwgICAg ICAgfCBODQoxMTAwMDAwMSAoaSo4KSAgfENNUHwgaT1JTkRYICAgIHwgICAg ICAgfCBOWkMgICB8IDYgICAgIHwgICAgICAgfCBODQoxMTAxMDAwMSAoaSo4 KSAgfENNUHwgaT1JTkRZICAgIHwgICAgICAgfCBOWkMgICB8IDUqICAgIHwg ICAgICAgfCBODQoNCjExMTAwMDAwIChpKjgpICB8Q1BYfCAjaT1JTU04ICAg fCAgICAgICB8IE5aQyAgIHwgMiAgICAgfCAgICAgICB8IE4NCjExMTAwMTAw IChpKjgpICB8Q1BYfCBpPVpQICAgICAgfCAgICAgICB8IE5aQyAgIHwgMyAg ICAgfCAgICAgICB8IE4NCjExMTAxMTAwIChpKjE2KSB8Q1BYfCBpPUFCUyAg ICAgfCAgICAgICB8IE5aQyAgIHwgNCAgICAgfCAgICAgICB8IE4NCg0KMTEw MDAwMDAgKGkqOCkgIHxDUFl8ICNpPUlNTTggICB8ICAgICAgIHwgTlpDICAg fCAyICAgICB8ICAgICAgIHwgTg0KMTEwMDAxMDAgKGkqOCkgIHxDUFl8IGk9 WlAgICAgICB8ICAgICAgIHwgTlpDICAgfCAzICAgICB8ICAgICAgIHwgTg0K MTEwMDExMDAgKGkqMTYpIHxDUFl8IGk9QUJTICAgICB8ICAgICAgIHwgTlpD ICAgfCA0ICAgICB8ICAgICAgIHwgTg0KDQoxMTAwMDExMCAoaSo4KSAgfERF Q3wgaT1aUCAgICAgIHwgICAgICAgfCBOWiAgICB8IDUgICAgIHwgICAgICAg fCBODQoxMTAxMDExMCAoaSo4KSAgfERFQ3wgaT1aUFggICAgIHwgICAgICAg fCBOWiAgICB8IDYgICAgIHwgICAgICAgfCBODQoxMTAwMTExMCAoaSoxNikg fERFQ3wgaT1BQlMgICAgIHwgICAgICAgfCBOWiAgICB8IDYgICAgIHwgICAg ICAgfCBODQoxMTAxMTExMCAoaSoxNikgfERFQ3wgaT1BQlNYICAgIHwgICAg ICAgfCBOWiAgICB8IDcgICAgIHwgICAgICAgfCBODQoNCjExMDAxMDEwICAg ICAgICB8REVYfCAgICAgICAgICAgfCAgICAgICB8IE5aICAgIHwgMiAgICAg fCAgICAgICB8IE4NCjEwMDAxMDAwICAgICAgICB8REVZfCAgICAgICAgICAg fCAgICAgICB8IE5aICAgIHwgMiAgICAgfCAgICAgICB8IE4NCg0KMDAxMDAx MDAgKGkqOCkgIHxCSVR8IGk9WlAgICAgICB8IFogICAgIHwgICAgICAgfCAz ICAgICB8ICAgICAgIHwgTg0KMDAxMDExMDAgKGkqMTYpIHxCSVR8IGk9QUJT ICAgICB8IFogICAgIHwgICAgICAgfCA0ICAgICB8ICAgICAgIHwgTg0KDQow MTAwMTAwMSAoaSo4KSAgfEVPUnwgI2k9SU1NOCAgIHwgICAgICAgfCBOWiAg ICB8IDIgICAgIHwgICAgICAgfCBODQowMTAwMDEwMSAoaSo4KSAgfEVPUnwg aT1aUCAgICAgIHwgICAgICAgfCBOWiAgICB8IDMgICAgIHwgICAgICAgfCBO DQowMTAxMDEwMSAoaSo4KSAgfEVPUnwgaT1aUFggICAgIHwgICAgICAgfCBO WiAgICB8IDQgICAgIHwgICAgICAgfCBODQowMTAwMTEwMSAoaSoxNikgfEVP UnwgaT1BQlMgICAgIHwgICAgICAgfCBOWiAgICB8IDQgICAgIHwgICAgICAg fCBODQowMTAxMTEwMSAoaSoxNikgfEVPUnwgaT1BQlNYICAgIHwgICAgICAg fCBOWiAgICB8IDQqICAgIHwgICAgICAgfCBODQowMTAxMTAwMSAoaSoxNikg fEVPUnwgaT1BQlNZICAgIHwgICAgICAgfCBOWiAgICB8IDQqICAgIHwgICAg ICAgfCBODQowMTAwMDAwMSAoaSo4KSAgfEVPUnwgaT1JTkRYICAgIHwgICAg ICAgfCBOWiAgICB8IDYgICAgIHwgICAgICAgfCBODQowMTAxMDAwMSAoaSo4 KSAgfEVPUnwgaT1JTkRZICAgIHwgICAgICAgfCBOWiAgICB8IDUgICAgIHwg ICAgICAgfCBODQoNCjExMTAwMTEwIChpKjgpICB8SU5DfCBpPVpQICAgICAg fCAgICAgICB8IE5aICAgIHwgNSAgICAgfCAgICAgICB8IE4NCjExMTEwMTEw IChpKjgpICB8SU5DfCBpPVpQWCAgICAgfCAgICAgICB8IE5aICAgIHwgNiAg ICAgfCAgICAgICB8IE4NCjExMTAxMTEwIChpKjE2KSB8SU5DfCBpPUFCUyAg ICAgfCAgICAgICB8IE5aICAgIHwgNiAgICAgfCAgICAgICB8IE4NCjExMTEx MTEwIChpKjE2KSB8SU5DfCBpPUFCU1ggICAgfCAgICAgICB8IE5aICAgIHwg NyAgICAgfCAgICAgICB8IE4NCg0KMTExMDEwMDAgICAgICAgIHxJTlh8ICAg ICAgICAgICB8ICAgICAgIHwgTlogICAgfCAyICAgICB8ICAgICAgIHwgTg0K MTEwMDEwMDAgICAgICAgIHxJTll8ICAgICAgICAgICB8ICAgICAgIHwgTlog ICAgfCAyICAgICB8ICAgICAgIHwgTg0KDQowMTAwMTEwMCAoaSoxNikgfEpN UHwgaT1BQlMgICAgIHwgICAgICAgfCAgICAgICB8IDMgICAgIHwgICAgICAg fCBUDQoxMTAwMTEwMCAoaSoxNikgfEpNUHwgaT1BQlNJTkQgIHwgICAgICAg fCAgICAgICB8IDUgICAgIHwgICAgICAgfCBUDQoNCjAwMTAwMDAwIChpKjE2 KSB8SlNSfCBpPUFCUyAgICAgfCAgICAgICB8ICAgICAgIHwgNiAgICAgfCAg ICAgICB8IFQNCg0KMTAxMDEwMDEgKGkqOCkgIHxMREF8ICNpPUlNTTggICB8 ICAgICAgIHwgTlogICAgfCAyICAgICB8ICAgICAgIHwgTg0KMTAxMDAxMDEg KGkqOCkgIHxMREF8IGk9WlAgICAgICB8ICAgICAgIHwgTlogICAgfCAzICAg ICB8ICAgICAgIHwgTg0KMTAxMTAxMDEgKGkqOCkgIHxMREF8IGk9WlBYICAg ICB8ICAgICAgIHwgTlogICAgfCA0ICAgICB8ICAgICAgIHwgTg0KMTAxMDEx MDEgKGkqMTYpIHxMREF8IGk9QUJTICAgICB8ICAgICAgIHwgTlogICAgfCA0 ICAgICB8ICAgICAgIHwgTg0KMTAxMTExMDEgKGkqMTYpIHxMREF8IGk9QUJT WCAgICB8ICAgICAgIHwgTlogICAgfCA0KiAgICB8ICAgICAgIHwgTg0KMTAx MTEwMDEgKGkqMTYpIHxMREF8IGk9QUJTWSAgICB8ICAgICAgIHwgTlogICAg fCA0KiAgICB8ICAgICAgIHwgTg0KMTAxMDAwMDEgKGkqOCkgIHxMREF8IGk9 SU5EWCAgICB8ICAgICAgIHwgTlogICAgfCA2ICAgICB8ICAgICAgIHwgTg0K MTAxMTAwMDEgKGkqOCkgIHxMREF8IGk9SU5EWSAgICB8ICAgICAgIHwgTlog ICAgfCA1KiAgICB8ICAgICAgIHwgTg0KDQoxMDEwMDAxMCAoaSo4KSAgfExE WHwgI2k9SU1NOCAgIHwgICAgICAgfCBOWiAgICB8IDIgICAgIHwgICAgICAg fCBODQoxMDEwMDExMCAoaSo4KSAgfExEWHwgaT1aUCAgICAgIHwgICAgICAg fCBOWiAgICB8IDMgICAgIHwgICAgICAgfCBODQoxMDExMDExMCAoaSo4KSAg fExEWHwgaT1aUFkgICAgIHwgICAgICAgfCBOWiAgICB8IDQgICAgIHwgICAg ICAgfCBODQoxMDEwMTExMCAoaSoxNikgfExEWHwgaT1BQlMgICAgIHwgICAg ICAgfCBOWiAgICB8IDQgICAgIHwgICAgICAgfCBODQoxMDExMTExMCAoaSox NikgfExEWHwgaT1BQlNZICAgIHwgICAgICAgfCBOWiAgICB8IDQqICAgIHwg ICAgICAgfCBODQoNCjEwMTAwMDAwIChpKjgpICB8TERZfCAjaT1JTU04ICAg fCAgICAgICB8IE5aICAgIHwgMiAgICAgfCAgICAgICB8IE4NCjEwMTAwMTAw IChpKjgpICB8TERZfCBpPVpQICAgICAgfCAgICAgICB8IE5aICAgIHwgMyAg ICAgfCAgICAgICB8IE4NCjEwMTEwMTAwIChpKjgpICB8TERZfCBpPVpQWSAg ICAgfCAgICAgICB8IE5aICAgIHwgNCAgICAgfCAgICAgICB8IE4NCjEwMTAx MTAwIChpKjE2KSB8TERZfCBpPUFCUyAgICAgfCAgICAgICB8IE5aICAgIHwg NCAgICAgfCAgICAgICB8IE4NCjEwMTExMTAwIChpKjE2KSB8TERZfCBpPUFC U1kgICAgfCAgICAgICB8IE5aICAgIHwgNCogICAgfCAgICAgICB8IE4NCg0K MDEwMDEwMTAgICAgICAgIHxMU1J8IEEgICAgICAgICB8ICAgICAgIHwgTlpD ICAgfCAyICAgICB8ICAgICAgIHwgTg0KMDEwMDAxMTAgKGkqOCkgIHxMU1J8 IGk9WlAgICAgICB8ICAgICAgIHwgTlpDICAgfCA1ICAgICB8ICAgICAgIHwg Tg0KMDEwMTAxMTAgKGkqOCkgIHxMU1J8IGk9WlBYICAgICB8ICAgICAgIHwg TlpDICAgfCA2ICAgICB8ICAgICAgIHwgTg0KMDEwMDExMTAgKGkqMTYpIHxM U1J8IGk9QUJTICAgICB8ICAgICAgIHwgTlpDICAgfCA2ICAgICB8ICAgICAg IHwgTg0KMDEwMTExMTAgKGkqMTYpIHxMU1J8IGk9QUJTWCAgICB8ICAgICAg IHwgTlpDICAgfCA3ICAgICB8ICAgICAgIHwgTg0KDQoxMTEwMTAxMCAgICAg ICAgfE5PUHwgICAgICAgICAgIHwgICAgICAgfCAgICAgICB8IDIgICAgIHwg ICAgICAgfCBODQoNCjAxMDAxMDAwICAgICAgICB8UEhBfCAgICAgICAgICAg fCAgICAgICB8ICAgICAgIHwgMyAgICAgfCAgICAgICB8IE4NCjAwMDAxMDAw ICAgICAgICB8UEhQfCAgICAgICAgICAgfCAgICAgICB8ICAgICAgIHwgMyAg ICAgfCAgICAgICB8IE4NCjAxMTAxMDAwICAgICAgICB8UExBfCAgICAgICAg ICAgfCAgICAgICB8ICAgICAgIHwgMyAgICAgfCAgICAgICB8IE4NCjAwMTAx MDAwICAgICAgICB8UExQfCAgICAgICAgICAgfCAgICAgICB8ICAgICAgIHwg MyAgICAgfCAgICAgICB8IE4NCg0KMDAxMDEwMTAgICAgICAgIHxST0x8IEEg ICAgICAgICB8IEMgICAgIHwgTlpDICAgfCAyICAgICB8ICAgICAgIHwgTg0K MDAxMDAxMTAgKGkqOCkgIHxST0x8IGk9WlAgICAgICB8IEMgICAgIHwgTlpD ICAgfCA1ICAgICB8ICAgICAgIHwgTg0KMDAxMTAxMTAgKGkqOCkgIHxST0x8 IGk9WlBYICAgICB8IEMgICAgIHwgTlpDICAgfCA2ICAgICB8ICAgICAgIHwg Tg0KMDAxMDExMTAgKGkqMTYpIHxST0x8IGk9QUJTICAgICB8IEMgICAgIHwg TlpDICAgfCA2ICAgICB8ICAgICAgIHwgTg0KMDAxMTExMTAgKGkqMTYpIHxS T0x8IGk9QUJTWCAgICB8IEMgICAgIHwgTlpDICAgfCA3ICAgICB8ICAgICAg IHwgTg0KDQowMTEwMTAxMCAgICAgICAgfFJPUnwgQSAgICAgICAgIHwgQyAg ICAgfCBOWkMgICB8IDIgICAgIHwgICAgICAgfCBODQowMTEwMDExMCAoaSo4 KSAgfFJPUnwgaT1aUCAgICAgIHwgQyAgICAgfCBOWkMgICB8IDUgICAgIHwg ICAgICAgfCBODQowMTExMDExMCAoaSo4KSAgfFJPUnwgaT1aUFggICAgIHwg QyAgICAgfCBOWkMgICB8IDYgICAgIHwgICAgICAgfCBODQowMTEwMTExMCAo aSoxNikgfFJPUnwgaT1BQlMgICAgIHwgQyAgICAgfCBOWkMgICB8IDYgICAg IHwgICAgICAgfCBODQowMTExMTExMCAoaSoxNikgfFJPUnwgaT1BQlNYICAg IHwgQyAgICAgfCBOWkMgICB8IDcgICAgIHwgICAgICAgfCBODQoNCjAxMDAx MTAxICAgICAgICB8UlRJfCAgICAgICAgICAgfCAgICAgICB8IE5aQ0lEViB8 IDYgICAgfCAgICAgICB8IFQNCg0KMDExMDAwMDAgICAgICAgIHxSVFN8ICAg ICAgICAgICB8ICAgICAgIHwgICAgICAgfCA2ICAgICB8ICAgICAgIHwgVA0K DQoxMTEwMTAwMSAoaSo4KSAgfFNCQ3wgI2k9SU1NOCAgIHwgQyAgICAgfCBO WkNWICB8IDIgICAgIHwgICAgICAgfCBODQoxMTEwMDEwMSAoaSo4KSAgfFNC Q3wgaT1aUCAgICAgIHwgQyAgICAgfCBOWkNWICB8IDMgICAgIHwgICAgICAg fCBODQoxMTExMDEwMSAoaSo4KSAgfFNCQ3wgaT1aUFggICAgIHwgQyAgICAg fCBOWkNWICB8IDQgICAgIHwgICAgICAgfCBODQoxMTEwMTEwMSAoaSoxNikg fFNCQ3wgaT1BQlMgICAgIHwgQyAgICAgfCBOWkNWICB8IDQgICAgIHwgICAg ICAgfCBODQoxMTExMTEwMSAoaSoxNikgfFNCQ3wgaT1BQlNYICAgIHwgQyAg ICAgfCBOWkNWICB8IDQqICAgIHwgICAgICAgfCBODQoxMTExMTAwMSAoaSox NikgfFNCQ3wgaT1BQlNZICAgIHwgQyAgICAgfCBOWkNWICB8IDQqICAgIHwg ICAgICAgfCBODQoxMTEwMDAwMSAoaSo4KSAgfFNCQ3wgaT1JTkRYICAgIHwg QyAgICAgfCBOWkNWICB8IDYgICAgIHwgICAgICAgfCBODQoxMTExMDAwMSAo aSo4KSAgfFNCQ3wgaT1JTkRZICAgIHwgQyAgICAgfCBOWkNWICB8IDUqICAg IHwgICAgICAgfCBODQoNCjEwMDAwMTAxIChpKjgpICB8U1RBfCBpPVpQICAg ICAgfCAgICAgICB8IE5aICAgIHwgMyAgICAgfCAgICAgICB8IE4NCjEwMDEw MTAxIChpKjgpICB8U1RBfCBpPVpQWCAgICAgfCAgICAgICB8IE5aICAgIHwg NCAgICAgfCAgICAgICB8IE4NCjEwMDAxMTAxIChpKjE2KSB8U1RBfCBpPUFC UyAgICAgfCAgICAgICB8IE5aICAgIHwgNCAgICAgfCAgICAgICB8IE4NCjEw MDExMTAxIChpKjE2KSB8U1RBfCBpPUFCU1ggICAgfCAgICAgICB8IE5aICAg IHwgNCogICAgfCAgICAgICB8IE4NCjEwMDExMDAxIChpKjE2KSB8U1RBfCBp PUFCU1kgICAgfCAgICAgICB8IE5aICAgIHwgNCogICAgfCAgICAgICB8IE4N CjEwMDAwMDAxIChpKjgpICB8U1RBfCBpPUlORFggICAgfCAgICAgICB8IE5a ICAgIHwgNiAgICAgfCAgICAgICB8IE4NCjEwMDEwMDAxIChpKjgpICB8U1RB fCBpPUlORFkgICAgfCAgICAgICB8IE5aICAgIHwgNSogICAgfCAgICAgICB8 IE4NCg0KMTAwMDAxMTAgKGkqOCkgIHxTVFh8IGk9WlAgICAgICB8ICAgICAg IHwgTlogICAgfCAzICAgICB8ICAgICAgIHwgTg0KMTAwMTAxMTAgKGkqOCkg IHxTVFh8IGk9WlBZICAgICB8ICAgICAgIHwgTlogICAgfCA0ICAgICB8ICAg ICAgIHwgTg0KMTAwMDExMTAgKGkqMTYpIHxTVFh8IGk9QUJTICAgICB8ICAg ICAgIHwgTlogICAgfCA0ICAgICB8ICAgICAgIHwgTg0KDQoxMDAwMDEwMCAo aSo4KSAgfFNUWXwgaT1aUCAgICAgIHwgICAgICAgfCBOWiAgICB8IDMgICAg IHwgICAgICAgfCBODQoxMDAxMDEwMCAoaSo4KSAgfFNUWXwgaT1aUFkgICAg IHwgICAgICAgfCBOWiAgICB8IDQgICAgIHwgICAgICAgfCBODQoxMDAwMTEw MCAoaSoxNikgfFNUWXwgaT1BQlMgICAgIHwgICAgICAgfCBOWiAgICB8IDQg ICAgIHwgICAgICAgfCBODQoNCjEwMTAxMDEwICAgICAgICB8VEFYfCAgICAg ICAgICAgfCAgICAgICB8IE5aICAgIHwgMiAgICAgfCAgICAgICB8IE4NCjEw MTAxMDAwICAgICAgICB8VEFZfCAgICAgICAgICAgfCAgICAgICB8IE5aICAg IHwgMiAgICAgfCAgICAgICB8IE4NCjEwMTExMDEwICAgICAgICB8VFNYfCAg ICAgICAgICAgfCAgICAgICB8IE5aICAgIHwgMiAgICAgfCAgICAgICB8IE4N CjEwMDAxMDEwICAgICAgICB8VFhBfCAgICAgICAgICAgfCAgICAgICB8IE5a ICAgIHwgMiAgICAgfCAgICAgICB8IE4NCjEwMDExMDEwICAgICAgICB8VFhT fCAgICAgICAgICAgfCAgICAgICB8IE5aICAgIHwgMiAgICAgfCAgICAgICB8 IE4NCjEwMDExMDAwICAgICAgICB8VFlBfCAgICAgICAgICAgfCAgICAgICB8 IE5aICAgIHwgMiAgICAgfCAgICAgICB8IE4NCg== --8323328-1751431337-1001318576=:408-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 09:30:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA58748 for dynarec-outgoing; Mon, 24 Sep 2001 09:30:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 17:34:45 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <925347749.20010924173445@dynarec.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: 6502 script In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, That's great! However, I spotted several problems which we need to think about. Here's a line with such a problem: 00001001 (i*8) |ORA| #i=IMM8 | | NZ | 2 | | N The # means the rest of the line is commented out. So, effectively, that line says: 00001001 (i*8) |ORA| The reason we should discuss this... Should we make the # comment everything out up until the next '|' character? tarc> I may take a shot at writing up a parser/fooalyzer for the thing this tarc> week. That'd be great too... :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 09:30:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA58744 for dynarec-outgoing; Mon, 24 Sep 2001 09:30:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 17:31:32 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <1345154591.20010924173132@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Breaking the Silence In-Reply-To: <20010923232752.E29786-100000@beacon.synthcom.com> References: <20010923232752.E29786-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi guys, Yes, quite a shocking thing to happen. My cousin works close to it all and we were all worried about him and his fiancee (now wife, they got married 2 days ago!). Luckily, both of them were fine... But they were both friends with one guy (possibly more) who perished in that disaster. This one guy is slightly more poignant to me because he was on the phone to another of their friends. The first aircraft had hit the other building and their building was being evacuated. He phoned up the other friend to turn on the news to find out what was happening - he didn't want to go down if it was more dangerous down there! He was on floor 81. His last words were "Oh shit, there's a plane coming straight at me!" - so as you can imagine, their shared friend is pretty fucked up right now - and they weren't exactly happy. I've been reading a lot about these events. Here, you've brought up religion. Religion is rarely the cause of war. But it is often used as a tool to make people fight. Someone brought up the crusades - the crusades weren't fought by thousands of nights. They were fought by many thousands of normal guys - they fought because the church told them they should fight. This is my problem with organised religion - the church/mosque/sinagogue/whatever twists the religious texts into saying what they want to say. They want to control the believers into doing what they want. This is how it has been over history. War is ALWAYS fought over land, money and/or power. The US would be a good country to fight this war against terrorism however. After all, it's the US who has been providing arms to terrorists for years now. Hell, the US has publically backed terrorist actions before now. Want proof? How about something really close to home... The IRA. Oh sorry, I forgot. They're freedom fighters. Blowing people up with bombs is okay when you make up the rules. This isn't the only example I could give, but it's good enough. How come when the Soviet Union invaded Yugoslavia, that was bad, but the US, Britain and supporting countries invading Afghanistan is okay? Hell, when it comes down to it, Israel shouldn't exist anymore - and that's Britains fault as much (and probably moreso - at least that's where I put the blame) as anybody else's. Is it only me who sees that this is a war which can't be won if it turns into a land battle? You see, you upset the Arabs, you have no more oil and then you're totally fucked. This campaign needs to be fought very, VERY carefully, because one misstep could blow it all back in our faces. If we don't get oil, we ARE screwed royally. There was a strike here earlier this year where oil companies were blockaded. The country ground to a stand-still. We can't operate without fuel. Now, back to religion. Someone brought up fundamentalism. Fundamentalism of ANY type of religion teaches you that everyone else are sinners and deserve to die for living an infidel life. Christianity, Islam - anything. So blaming Islam for this is a fairly weak excuse. How can you blame a section of people for what a small group does? This attack was meant to shock America into war. It was also sending a message to all of us - you aren't safe, no matter where you are. But here in the UK, we're used to this. But it's a VERY rare event in the US, which was shocking enough. But an event of this magnitude is just unimaginable. Retaliation is called for, but only terrorists should be worried. Innocent people shouldn't be killed - but I think we all know that innocents are going to be killed in Afghanistan... I'll leave it here because this is long enough! :)) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 10:17:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA58792 for dynarec-outgoing; Mon, 24 Sep 2001 10:16:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 10:25:55 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: 6502 script In-Reply-To: Message-ID: <20010924102326.U42765-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I may take a shot at writing up a parser/fooalyzer for the thing this > week. I highly recommend against this until we have a few scripts to play with. Also, we need to make sure whatever is written is in line with the standards we agreed upon a few months back. Plus, none of us (me either!) have a firm grasp on what kinds of parse trees need to be built from the scripts and the actual script format isn't nailed down yet. Now that my product is nearing an end (creation, that is), I'm now blocked by my partner so I have time to work on this more. I need to get the Z80 script continued and whipped in to shape. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 10:19:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA58802 for dynarec-outgoing; Mon, 24 Sep 2001 10:19:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 10:28:47 -0700 (PDT) From: Neil Bradley To: Subject: Re[2]: DYNAREC: Breaking the Silence In-Reply-To: <1345154591.20010924173132@dynarec.com> Message-ID: <20010924102620.G42765-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Now, back to religion. Someone brought up fundamentalism. No, I brought up Fundamentalist Islam, which condones the killing of "infidels". It's an edict of that branch of religion. I'm not aware of others that actually come right out and say it's OK to kill innocent people. I'm so puzzled why people can't make out the difference. > Christianity, Islam - anything. So blaming Islam for this is a fairly > weak excuse. How can you blame a section of people for what a small > group does? Fundamentalist Islam isn't a small group - it's about 3 million people at last count. How many religions do you know of that come right out and tell people to kill others? This is the only one I'm aware of. Don't drag wacko interpretations into it or go back to the crusades. That's not relevant to this conversation. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 10:30:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA58823 for dynarec-outgoing; Mon, 24 Sep 2001 10:30:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 10:39:38 -0700 (PDT) From: Neil Bradley To: Subject: Re[2]: DYNAREC: Breaking the Silence In-Reply-To: <20010924102620.G42765-100000@beacon.synthcom.com> Message-ID: <20010924103707.M42765-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Let me be clear on this: > > Christianity, Islam - anything. So blaming Islam for this is a fairly > > weak excuse. I'm not blaming Islam as a whole, I'm blaming FUNDAMENTALIST ISLAM. > > How can you blame a section of people for what a small > > group does? That "small group" is the section I'm blaming and it has an organization and a label. I'm perfectly aware of the difference! Please look very closely at this. There is a big difference between the two and I will not have someone's twisting of my words make me in to an anti-Islam. That's *NOT* what I said. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 10:32:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA58833 for dynarec-outgoing; Mon, 24 Sep 2001 10:32:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 10:38:03 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: 6502 script In-Reply-To: <925347749.20010924173445@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Mon, 24 Sep 2001, Neil Griffiths wrote: > Hiya, > > That's great! However, I spotted several problems which we need to > think about. Here's a line with such a problem: > > 00001001 (i*8) |ORA| #i=IMM8 | | NZ | 2 | | N > > The # means the rest of the line is commented out. So, effectively, > that line says: Doh, just stripped those out. How do we convey the general assembler syntax? For instance, the 6502's addressing modes are laid out like so: op op #immediate op zero_page op zero_page,X op zero_page,Y op absolute op absolute,X op absolute,Y op rel op (zp, X) op (zp), Y op (absolute) op A immediate is an 8 bit constant, zero_page is an 8 bit address, absolute is a 16 bit address, rel is an 8 bit signed constant, relative to PC + 2. the ()'d ones are indirect absolute (only used for JMP), and pre/post indexed indirect. In the absence of labels, hex numbers are prefixed with $. Example code: vb2: LDA $2002 BPL vb2 LDY #$FE LDX #$05 do8000: LDA $07D7, X CMP #$0A BCS clear DEX BPL do8000 etc. How do we get this stuff into the thing? embed C-style printf format strings in? > 00001001 (i*8) |ORA| > > The reason we should discuss this... Should we make the # comment > everything out up until the next '|' character? Might be something to try > tarc> I may take a shot at writing up a parser/fooalyzer for the thing this > tarc> week. > > That'd be great too... :) > > Neil. John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 10:48:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA58854 for dynarec-outgoing; Mon, 24 Sep 2001 10:48:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 18:53:39 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <210081296.20010924185339@dynarec.com> To: dynarec@dynarec.com Subject: Re[3]: DYNAREC: Breaking the Silence In-Reply-To: <20010924102620.G42765-100000@beacon.synthcom.com> References: <20010924102620.G42765-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, NB> No, I brought up Fundamentalist Islam, which condones the killing of NB> "infidels". It's an edict of that branch of religion. I'm not aware of NB> others that actually come right out and say it's OK to kill innocent NB> people. Where does it say that? This strikes me as hear-say and certainly not backed by fact as I can't find any edit on Fundamentalist Islam that says that. NB> Fundamentalist Islam isn't a small group - it's about 3 million people at NB> last count. How many religions do you know of that come right out and tell NB> people to kill others? This is the only one I'm aware of. Where are these figures from? I've seen 300,000 quoted - which is the size of the Taliban army. That seems much more realistic to me. NB> Don't drag wacko interpretations into it or go back to the crusades. NB> That's not relevant to this conversation. Don't make up figures then! ;) There's a lot of misinformation being spread right now and I'm doing my best to research everything. Some of the best so far are these Nostradamus prophecies - quite amazing. Yes. Nostradamus predicted in 1664 the twin towers collapsing. I'm impressed, it's quite good for a guy who died in 1556! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 10:55:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA58870 for dynarec-outgoing; Mon, 24 Sep 2001 10:55:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 11:04:57 -0700 (PDT) From: Neil Bradley To: Subject: Re[3]: DYNAREC: Breaking the Silence In-Reply-To: <210081296.20010924185339@dynarec.com> Message-ID: <20010924110145.A42765-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > NB> "infidels". It's an edict of that branch of religion. I'm not aware of > NB> others that actually come right out and say it's OK to kill innocent > NB> people. > Where does it say that? This strikes me as hear-say and certainly not > backed by fact as I can't find any edit on Fundamentalist Islam that > says that. Heard it on the History Channel on a special on the Fundamentalist Islam religion and Bin Laden specifically. It was a very interesting special. > NB> Fundamentalist Islam isn't a small group - it's about 3 million people at > NB> last count. How many religions do you know of that come right out and tell > NB> people to kill others? This is the only one I'm aware of. > Where are these figures from? I've seen 300,000 quoted - which is the > size of the Taliban army. That seems much more realistic to me. The 3 million quote I've heard from both CNN and the history channel special. And it's mroe than just the Taliban army. Followers are found throughout the worldthough a majority of them are in the middle east. > NB> Don't drag wacko interpretations into it or go back to the crusades. > NB> That's not relevant to this conversation. > Don't make up figures then! ;) Same to you! ;-) > There's a lot of misinformation being spread right now and I'm doing > my best to research everything. > Some of the best so far are these > Nostradamus prophecies - quite amazing. Yes. Nostradamus predicted in > 1664 the twin towers collapsing. I'm impressed, it's quite good for a > guy who died in 1556! I've seen others where "IT WAS WRITTEN IN TEH BIBLE CODES!" Funny how none of this crap ever is known until *AFTER* something happens. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 11:26:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA58908 for dynarec-outgoing; Mon, 24 Sep 2001 11:25:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 19:32:21 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <1912403395.20010924193221@dynarec.com> To: dynarec@dynarec.com Subject: Re[4]: DYNAREC: Breaking the Silence In-Reply-To: <20010924110145.A42765-100000@beacon.synthcom.com> References: <20010924110145.A42765-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> Heard it on the History Channel on a special on the Fundamentalist Islam NB> religion and Bin Laden specifically. It was a very interesting special. I strongly feel that this is misinformation you're being fed because I've seen many such things on TV recently (job hunting, not much else to do!) and I'm not hearing those kinds of numbers. Performing an online search hasn't given me any kind of numbers at all right now, but I did find this page which I found slightly interesting: http://www.islamicvoice.com/november.98/zakir.htm This seems to be repeated here: http://groups.yahoo.com/group/Muslim-News/message/394 It is true that Muslims are told to be terrorists. They are NOT taught to kill, not even in fundamentalism, and anyone who says otherwise is feeding you misinformation. I'm not a Muslim, nor Christian... But I'm seeing a lot of people blaming religions which is just daft... It's the church or whoever controls the religion that spawns the problem. NB> The 3 million quote I've heard from both CNN and the history channel NB> special. And it's mroe than just the Taliban army. Followers are found NB> throughout the worldthough a majority of them are in the middle east. I'd imagine most fundamentalists would be in the poorer areas - which is typically where you find fundamentalism of any variety. NB> Same to you! ;-) Heh! ;) I haven't found any figures so far backing up what either of us is saying. I'm staying away from news sites because it's well documented that at times of war, misinformation is given to the general public. One such example is this "proof" that Bin Laden organised the attack on the WTC. Where is this proof? If it exists, why is it that only certain people can see it - and the Taliban can't, even when it's requested? Certainly Bin Laden has organised attacks on the US before and so could be had for terrorism anyway. But I think he's being made a scapegoat for this - and I'll continue to believe that until I see this proof for myself. NB> I've seen others where "IT WAS WRITTEN IN TEH BIBLE CODES!" Funny how none NB> of this crap ever is known until *AFTER* something happens. Yes. We live in a Universe made up of maths. We can use maths to prove anything we want - it's when we can predict something in the future that I'll be impressed. I mean, I could create some formula which uses the sum total of the number of body hairs I have and say that I predicted the WTC disaster! Neil. PS OMG... Found this: http://gods-open-door.org/QnA/muslim.html Oh dear. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 11:34:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA58923 for dynarec-outgoing; Mon, 24 Sep 2001 11:34:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 19:40:19 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <19512881061.20010924194019@dynarec.com> To: dynarec@dynarec.com Subject: Re[4]: DYNAREC: Breaking the Silence In-Reply-To: <20010924110145.A42765-100000@beacon.synthcom.com> References: <20010924110145.A42765-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Now THIS is an excellent editorial. Not biased, it explains what this is all about: http://www.beliefnet.com/story/88/story_8849_1.html Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 12:55:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA58993 for dynarec-outgoing; Mon, 24 Sep 2001 12:55:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 13:04:59 -0700 (PDT) From: Neil Bradley To: Subject: Re[4]: DYNAREC: Breaking the Silence In-Reply-To: <1912403395.20010924193221@dynarec.com> Message-ID: <20010924125127.J42765-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > NB> Heard it on the History Channel on a special on the Fundamentalist Islam > NB> religion and Bin Laden specifically. It was a very interesting special. > I strongly feel that this is misinformation you're being fed because How do you know what information you're being fed is any more accurate than what I'm being fed? Neither you nor I can. > This seems to be repeated here: And I'm sure I can find just about anything to support any claims that seem feasible to me. ;-) Really, th eonly thing that you and I know is what we're fed and what we choose to believe. > It is true that Muslims are told to be terrorists. They are NOT taught > to kill, not even in fundamentalism, and anyone who says otherwise is > feeding you misinformation. You don't know any more than I do! > I'm not a Muslim, nor Christian... But I'm seeing a lot of people > blaming religions which is just daft... It's the church or whoever > controls the religion that spawns the problem. Like I said, it's a fundamentalist Islam and there's plenty to support that. I'm not going to get in a debate about it. You and I can go on quoting whatever we want, and whatever we choose to believe is hearsay anyway. I'd rather focus my time in doing something else. But recognize and acknolwedge the fact that I see it as a narrow sect and not Islam as a whole. > I haven't found any figures so far backing up what either of us is > saying. Further proof we shouldn't be wasting time. ;-) > One such example is this "proof" that Bin Laden organised the attack > on the WTC. Where is this proof? If it exists, why is it that only > certain people can see it - and the Taliban can't, even when it's > requested? I understand perfectly. It's like doing an investigation and not giving away details of the investigaion to avoid giving the suspected criminals a chance to do anything. For example: 1) US Says we have proof of Bin Laden's involvement 2) Taliban says "Show us proof" 3) US Provides proof that says cell x, y, and z acted under Bin Laden's orders 4) Taliban takes information, warns cell x, y, and z to destroy information or disband cell x, y, and z 5) Taliban says "There's no proof" 6) US Is up shit creek without a paddle There's strong suspicions that the Taliban is involved somehow, and this would like be presenting evidence to suspects before you arrest them. Duh! > could be had for terrorism anyway. But I think he's being made a > scapegoat for this - and I'll continue to believe that until I see > this proof for myself. It has been said a zillion times that he's not the only target - just one of many. > http://gods-open-door.org/QnA/muslim.html This just makes my head hurt. Why do people go to so much trouble? -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 13:32:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA59032 for dynarec-outgoing; Mon, 24 Sep 2001 13:32:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001d01c14538$5b388380$809b4ed4@menta.net> From: "Victor Moya del Barrio" To: References: <20010924102620.G42765-100000@beacon.synthcom.com> <210081296.20010924185339@dynarec.com> Subject: Re: Re[3]: DYNAREC: Breaking the Silence Date: Mon, 24 Sep 2001 22:34:48 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > There's a lot of misinformation being spread right now and I'm doing > my best to research everything. Some of the best so far are these > Nostradamus prophecies - quite amazing. Yes. Nostradamus predicted in > 1664 the twin towers collapsing. I'm impressed, it's quite good for a > guy who died in 1556! > That prophecy from Nostradamus is absolutely false. The words that spread in internet after the attack about two twins and a city are not from Nostradamus book. In any case I don't want to discuse about that terrorist act, the WTC and the 'America's New (Holy perhaps?) War' as it is called in the CNN. I have my own thoughts about all what happened. I'm sorry about the victims of any kind. But I think that US (perhaps just the government) got what they have been working for ages. Bin Ladem and all those guys were created by the own CIA. Hell! They trained them! ETA has been killing people by years here in Spain and we are not killing any of them, in fact most of the killers already live here at hand and are in the own Basque government. Perhaps that is too bad too but the other way the 'free world' would become like they are. And about fighting the terrorism ... what terrorism? IRA, ETA or perhaps Israelian (you know that nasty copters attaking civilian or Mossad killers)? Or just the 'enemies of the US'? ETA has been (and already is) 'hidding' in France and others European countries. Only in the last years France seems to be helping to get them but by many years they were free. That means Spain had to go to war with France? Bah! I will better shut up ... I don't know how it will end, but I will be happy if it would stay as we were before 11 Sept because It could get a lot of worse. > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 14:04:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA59065 for dynarec-outgoing; Mon, 24 Sep 2001 14:04:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 22:10:05 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <1621867603.20010924221005@dynarec.com> To: dynarec@dynarec.com Subject: Re[5]: DYNAREC: Breaking the Silence In-Reply-To: <20010924125127.J42765-100000@beacon.synthcom.com> References: <20010924125127.J42765-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> How do you know what information you're being fed is any more accurate NB> than what I'm being fed? Because George Bush isn't my president? ;) That's as good an excuse as any. :) NB> And I'm sure I can find just about anything to support any claims that NB> seem feasible to me. ;-) Really, th eonly thing that you and I know is NB> what we're fed and what we choose to believe. True enough. >> It is true that Muslims are told to be terrorists. They are NOT taught >> to kill, not even in fundamentalism, and anyone who says otherwise is >> feeding you misinformation. NB> You don't know any more than I do! You've read the Quran too? Actually... I *have* read the Quran for myself. My Dad is actually interested in historical text, it's a hobby of his. I've also read the bible - I was always made to go to church and it was only after reading the bible for myself that I made the decision that I would *NOT* go anymore - my parents never got me to go again! After reading the texts, I have a fair idea of what it's about. So I can say that Muslims are told to be terrorist - against wrongdoers. But not to kill people. NB> I'm not going to get in a debate about it. You and I can go on quoting NB> whatever we want, and whatever we choose to believe is hearsay anyway. I'd NB> rather focus my time in doing something else. Reading from the religious texts isn't hearsay, but anyway. We still haven't gotten at my points about America not helping itself so far... NB> But recognize and acknolwedge the fact that I see it as a narrow sect and NB> not Islam as a whole. Okay, that's all I wanted to know in the first place. :) NB> I understand perfectly. It's like doing an investigation and not giving NB> away details of the investigaion to avoid giving the suspected criminals a NB> chance to do anything. For example: NB> 1) US Says we have proof of Bin Laden's involvement NB> 2) Taliban says "Show us proof" NB> 3) US Provides proof that says cell x, y, and z acted under Bin Laden's NB> orders NB> 4) Taliban takes information, warns cell x, y, and z to destroy NB> information or disband cell x, y, and z NB> 5) Taliban says "There's no proof" NB> 6) US Is up shit creek without a paddle NB> There's strong suspicions that the Taliban is involved somehow, and this NB> would like be presenting evidence to suspects before you arrest them. Duh! Yeah, that's true. Or they don't have evidence at all. NB> It has been said a zillion times that he's not the only target - just one NB> of many. Yes, but not by the US government, who ALWAYS blame Bin Laden. >> http://gods-open-door.org/QnA/muslim.html NB> This just makes my head hurt. Why do people go to so much trouble? That's what scares me too. I don't understand that. As I've always said, religion is often blamed or used as a method to get people to fight. There's always an underlying reason for it all... Neil --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 14:27:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA59090 for dynarec-outgoing; Mon, 24 Sep 2001 14:27:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 14:36:54 -0700 (PDT) From: Neil Bradley To: Subject: Re[5]: DYNAREC: Breaking the Silence In-Reply-To: <1621867603.20010924221005@dynarec.com> Message-ID: <20010924142021.V42765-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > NB> How do you know what information you're being fed is any more accurate > NB> than what I'm being fed? > Because George Bush isn't my president? ;) I'm not listening to George Bush. He's not my president, either. ;-) I didn't elect the bastard. > >> to kill, not even in fundamentalism, and anyone who says otherwise is > >> feeding you misinformation. > NB> You don't know any more than I do! > You've read the Quran too? The Koran, parts of it. But the fundamentalist view of killing infidels isn't in the Koran. It's an "add on" teaching, like the Book of Mormon or the Cathloic doctorines are to the Bible. ;-) > bible - I was always made to go to church and it was only after > reading the bible for myself that I made the decision that I would > *NOT* go anymore - my parents never got me to go again! I think it's wrong to send young kids to church. It just generates apathy. Most people I know who grew up religious eventually became atheists because of the experience. Kids just need to figure out who they are first before being led to believe in something that I believe is a personal choice. > After reading the texts, I have a fair idea of what it's about. So I > can say that Muslims are told to be terrorist - against wrongdoers. > But not to kill people. Like I said, it's not in the Koran. It's part of the fundamentalist teachings. > NB> I'm not going to get in a debate about it. You and I can go on quoting > NB> whatever we want, and whatever we choose to believe is hearsay anyway. I'd > NB> rather focus my time in doing something else. > Reading from the religious texts isn't hearsay, but anyway. We still > haven't gotten at my points about America not helping itself so far... I find it funny how so many foreign nations seem to think they know the answer to everything that's going on. Opinions are like assholes - everyone has one and all of them stink. ;-) The fact of the matter is, say what you like, neither you nor I have direct involvement on what's going on. We wouldn't ever. So neither you nor I nor anyone else has any right to be critical of handlings unless we understood the inner workings of what's going on. It's like everyone hearing about the lady who sued McDonalds for $3mil for hot coffee being spilled on her. Sounds ludicrous, doesn't it? Uncover the story a bit further: * McDonalds was already on report to turn down the damned temperature of their coffee. They were on it for months and continued to violate it even with numerous formal complaints. * The lady who burned herself only wanted the medical bills paid. It was the district attorney who pushed the $3mil amount. He wanted to sting them for not turning down the temp, especially considering they were already on report for it. * The lady who got burned only got $$ to cover the medical bills. The rest went to various burn centers around the country. So on the surface, it sounds like a stupid thing. When you dig deeper, it's not so stupid. Same deal with Bin Laden and whatnot. You and I don't know the intricate details of what's going on, and we won't. Therefore, any comments that you or I make about being critical of how it's handled are really out of line since neither of us know anything about what's REALLY going on. Not like I wouldn't want to know (I would!)! > NB> But recognize and acknolwedge the fact that I see it as a narrow sect and > NB> not Islam as a whole. > Okay, that's all I wanted to know in the first place. :) I thought I made that perfectly clear, though. > NB> There's strong suspicions that the Taliban is involved somehow, and this > NB> would like be presenting evidence to suspects before you arrest them. Duh! > Yeah, that's true. Or they don't have evidence at all. Oh yeah, the US Government is just making all of this up just for fun .Bin Laden was already found to be a coconspirator to the USS Cole, South Africa, and WTC bombings in the early 90s. There are sooo many coincidences and connections to Bin Laden it's not even a questionas to whether or not he's involved. > NB> It has been said a zillion times that he's not the only target - just one > NB> of many. > Yes, but not by the US government, who ALWAYS blame Bin Laden. Not true. Colin Powell just got done giving a report that he's just one of many and reminded the American people that he's not the entire cause. Bush and everyone else have been talking at length about uprooting the terrorist network and cells. It's commonly understood that he's not the only problem, but he's a source of a lot of it, so I'm not sure where you get your information. And don't say "the media". If you read enough of it, it's widely understood that Bin Laden is an instigator but not thecause of the entire problem. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 14:37:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA59107 for dynarec-outgoing; Mon, 24 Sep 2001 14:37:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 14:47:17 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[3]: DYNAREC: Breaking the Silence In-Reply-To: <001d01c14538$5b388380$809b4ed4@menta.net> Message-ID: <20010924144637.V42765-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > and are in the own Basque government. Perhaps that is too bad too but > the other way the 'free world' would become like they are. And about > fighting the terrorism ... what terrorism? IRA, ETA or perhaps Israelian > (you know that nasty copters attaking civilian or Mossad killers)? Or > just the 'enemies of the US'? ETA has been (and already is) 'hidding' > in France and others European countries. Only in the last years France > seems to be helping to get them but by many years they were free. > That means Spain had to go to war with France? Bah! I will better > shut up ... I'd support Spain going to war with France for this reason. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 14:52:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA59128 for dynarec-outgoing; Mon, 24 Sep 2001 14:52:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 24 Sep 01 17:55:28 -0400 Message-Id: <3.0.5.32.20010924145650.008a1830@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 24 Sep 2001 14:56:50 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: Re[4]: DYNAREC: Breaking the Silence In-Reply-To: <20010924125127.J42765-100000@beacon.synthcom.com> References: <1912403395.20010924193221@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> http://gods-open-door.org/QnA/muslim.html > >This just makes my head hurt. Why do people go to so much trouble? Whoever wrote that is twisting Christianity around their desire to belittle others. I don't like it when people use Christianity as a fortress so they can tell everyone else how they're going to hell. That's not what Christianity is about. Who did Jesus hang around with? Sinners. Yet these so-called "Christians" love to look for opportunities to slam sinners. All these statements about condemnation deal with God being the absolute judge, not men. I think it's contrary to Christianity to hate someone because they are not Christian. Hatred is never acceptable, and by labelling people sinners and devils, one makes a powerful statement about his/her authority to judge and discriminate. It's as if these people are using Christianity to rationalize their hatred. And that isn't the message, IMHO. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 14:59:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA59142 for dynarec-outgoing; Mon, 24 Sep 2001 14:59:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 15:08:54 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[4]: DYNAREC: Breaking the Silence In-Reply-To: <3.0.5.32.20010924145650.008a1830@mailandnews.com> Message-ID: <20010924150620.M44033-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I think it's contrary to Christianity to hate someone because they are not > Christian. Hatred is never acceptable, and by labelling people sinners and > devils, one makes a powerful statement about his/her authority to judge and > discriminate. It's as if these people are using Christianity to rationalize > their hatred. And that isn't the message, IMHO. Couldn't have said it better myself! Was it not Jesus who said "He who has not sinned cast the first stone." Quoting an old Amy Grant song: "I looked into the mirror Proud as I could be And I saw my pointing finger Pointing back at me Saying "who named you accuser Who gave you the scales?" I hung my head in sorrow I could almost feel the nails I said "this is how it is To be crucified and judged Without love." " ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 15:01:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA59159 for dynarec-outgoing; Mon, 24 Sep 2001 15:01:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 23:06:10 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <2625232472.20010924230610@dynarec.com> To: dynarec@dynarec.com Subject: Re[6]: DYNAREC: Breaking the Silence In-Reply-To: <20010924142021.V42765-100000@beacon.synthcom.com> References: <20010924142021.V42765-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> I'm not listening to George Bush. He's not my president, either. ;-) I NB> didn't elect the bastard. No-one did, but he got in anyway! ;) >> You've read the Quran too? NB> The Koran, parts of it. But the fundamentalist view of killing infidels NB> isn't in the Koran. It's an "add on" teaching, like the Book of Mormon or NB> the Cathloic doctorines are to the Bible. ;-) Strange, it's titled "Quran" here. NB> I think it's wrong to send young kids to church. It just generates apathy. NB> Most people I know who grew up religious eventually became atheists NB> because of the experience. Kids just need to figure out who they are first NB> before being led to believe in something that I believe is a personal NB> choice. So do I. I was also christened - which I believe to be wrong. I would certainly prefer the choice to have it done or not! As it is now, I'm not atheist - but I'm certainly not Christian either... NB> Like I said, it's not in the Koran. It's part of the fundamentalist NB> teachings. I can't find anything extra that they're taught though - it actually appears to be coming from preachings and no text at all! >> Reading from the religious texts isn't hearsay, but anyway. We still >> haven't gotten at my points about America not helping itself so far... NB> I find it funny how so many foreign nations seem to think they know the NB> answer to everything that's going on. Opinions are like assholes - NB> everyone has one and all of them stink. ;-) So... you think that the US selling arms to terrorists is a good idea? ;) I find it funny that America always has the right answer to everything and everyone else should fall in. It is two faced to openly support terrorist groups and now be against them... The only difference is that now America is a target too. NB> The fact of the matter is, say what you like, neither you nor I have NB> direct involvement on what's going on. We wouldn't ever. So neither you NB> nor I nor anyone else has any right to be critical of handlings unless we NB> understood the inner workings of what's going on. If a war starts, I could well be conscripted, so chances are that I could have direct involvement in what's going on. NB> So on the surface, it sounds like a stupid thing. When you dig deeper, NB> it's not so stupid. Same deal with Bin Laden and whatnot. You and I don't NB> know the intricate details of what's going on, and we won't. Therefore, NB> any comments that you or I make about being critical of how it's handled NB> are really out of line since neither of us know anything about what's NB> REALLY going on. Not like I wouldn't want to know (I would!)! Well, let's put it this way. Why did the Gulf War occur? The official reason is totally different to the actual reason that the US was making sure they could still get oil. >> Okay, that's all I wanted to know in the first place. :) NB> I thought I made that perfectly clear, though. No, because most Muslims are also known as fundamentalists. But when you're only talking about the twisted ones who go against the actual teachings and want to kill... Yes, I agree with you. NB> Oh yeah, the US Government is just making all of this up just for NB> fun. The public cry out for revenge. They need someone to blame. Bin Laden has threatened to take down the US. Obvious scapegoat. Bin Laden may well have done it - I personally believe he did. But belief doesn't mean that he DID do it! NB> Bin NB> Laden was already found to be a coconspirator to the USS Cole, South NB> Africa, and WTC bombings in the early 90s. There are sooo many NB> coincidences and connections to Bin Laden it's not even a questionas to NB> whether or not he's involved. >From what I read, Bin Laden was only a circumspect suspect in regards to the car bomb outside the WTC in the early '90s (1993 wasn't it?). He's certainly a terrorist and for that he would be a target in this conflict. But I'd want to be sure that he was also the guy responsible for the WTC disaster too else the actual perpetrator could be running free! NB> Not true. Colin Powell just got done giving a report that he's just one of NB> many and reminded the American people that he's not the entire cause. Bush NB> and everyone else have been talking at length about uprooting the NB> terrorist network and cells. It's commonly understood that he's not the NB> only problem, but he's a source of a lot of it, so I'm not sure where you NB> get your information. And don't say "the media". If you read enough of it, NB> it's widely understood that Bin Laden is an instigator but not thecause of NB> the entire problem. Bush? The "Wanted: Dead or Alive" and the "Crusade" guy? I just think too much is being places on Bin Laden right now with many other terrorist organisations still active. Hell, even after we all get hold of Bin Laden, do we think the organisation will stop? I doubt that. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 15:01:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA59167 for dynarec-outgoing; Mon, 24 Sep 2001 15:01:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 23:06:53 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <13025274923.20010924230653@dynarec.com> To: dynarec@dynarec.com Subject: Re[5]: DYNAREC: Breaking the Silence In-Reply-To: <20010924144637.V42765-100000@beacon.synthcom.com> References: <20010924144637.V42765-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, NB> I'd support Spain going to war with France for this reason. ;-) At least it wouldn't be a long war, they'd give up in under a month... ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 15:04:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA59177 for dynarec-outgoing; Mon, 24 Sep 2001 15:04:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 23:10:33 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <18425495570.20010924231033@dynarec.com> To: dynarec@dynarec.com Subject: Re[6]: DYNAREC: Breaking the Silence In-Reply-To: <20010924150620.M44033-100000@beacon.synthcom.com> References: <20010924150620.M44033-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> Couldn't have said it better myself! Was it not Jesus who said "He who has NB> not sinned cast the first stone." I concur with both of you on this. That's why I don't like people going after Muslims like they are right now (attacking them and mosques and so on). Buddhism. Now there's a religion/set of philosophies... NB> "I looked into the mirror Proud as I could be NB> And I saw my pointing finger Pointing back at me NB> Saying "who named you accuser Who gave you the scales?" NB> I hung my head in sorrow I could almost feel the nails NB> I said "this is how it is To be crucified and judged Without love." NB> " NB> ;-) Just think... that song could be about America. Or the UN for that matter... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 15:33:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA59207 for dynarec-outgoing; Mon, 24 Sep 2001 15:33:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 15:43:18 -0700 (PDT) From: Neil Bradley To: Subject: Re[6]: DYNAREC: Breaking the Silence In-Reply-To: <2625232472.20010924230610@dynarec.com> Message-ID: <20010924152042.A44033-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > NB> isn't in the Koran. It's an "add on" teaching, like the Book of Mormon or > NB> the Cathloic doctorines are to the Bible. ;-) > Strange, it's titled "Quran" here. And you bloody English call it the "Taleban", too. Just gotta do everything differently, eh? ;-) ;-) > NB> because of the experience. Kids just need to figure out who they are first > NB> before being led to believe in something that I believe is a personal > NB> choice. > So do I. I was also christened - which I believe to be wrong. I would > certainly prefer the choice to have it done or not! As it is now, I'm > not atheist - but I'm certainly not Christian either... Precisely! I'm not atheist nor of any formed religion, nor do I necessarily have a problem with either. Well, actually I have specific problems with each one but so far not as a whole. > NB> teachings. > I can't find anything extra that they're taught though - it actually > appears to be coming from preachings and no text at all! Precisely my point! > NB> answer to everything that's going on. Opinions are like assholes - > NB> everyone has one and all of them stink. ;-) > So... you think that the US selling arms to terrorists is a good idea? > ;) Times change. You support whomever is on your side at the moment. > I find it funny that America always has the right answer to everything > and everyone else should fall in. Do they? I don't see it that way. It's a matter of economics when it all boils down to it. He who has the gold makes the rules. The US does things to protect their best interest and infrastructure. Don't like it? Tough. That's the way it works. Of course I'd like to point out that if it wasn't the US, it'd be some other country. I also don't agree with everything that the US government does, either. This reminds me of "little guy" syndrome. The minority doesn't get control. That's the way it works! > It is two faced to openly support terrorist groups and now be against > them... The only difference is that now America is a target too. Terrorism is defined by the people it affects. The US does what it does to protect the interest of itself - just like any other country does. > NB> nor I nor anyone else has any right to be critical of handlings unless we > NB> understood the inner workings of what's going on. > If a war starts, I could well be conscripted, so chances are that I > could have direct involvement in what's going on. You can object, move to a different country, or sit in jail and wouldn't have to go to war. There are options, here, too. I'm above the current draft age in the US (26) and they wouldn't take me. Of corse, I'd never cooperate in a war that I don't believe in. Veitnam was one of them, but I wasn't even sperm when it started. > NB> any comments that you or I make about being critical of how it's handled > NB> are really out of line since neither of us know anything about what's > NB> REALLY going on. Not like I wouldn't want to know (I would!)! > Well, let's put it this way. Why did the Gulf War occur? The official > reason is totally different to the actual reason that the US was > making sure they could still get oil. Do you know that for sure? Nope. Of course it was for oil. We were already in a recession due to the Reagan/Bush era at the time and if we started getting our oil cut off, it'd seriously affect the US economy and it'd have a rippling effect on the world. The WTC bombings in the US are a good example of this, European and Japanese stock exchanges reacted violently to it. The US has not only a local but a world interest in protecting things that support its economy. Like it or not, that's the way it is. > NB> I thought I made that perfectly clear, though. > No, because most Muslims are also known as fundamentalists. Eh? Not how I've heard it. > NB> Oh yeah, the US Government is just making all of this up just for > NB> fun. > The public cry out for revenge. They need someone to blame. Bin Laden > has threatened to take down the US. Obvious scapegoat. Bin Laden may > well have done it - I personally believe he did. But belief doesn't > mean that he DID do it! Of course. But unless you and I were sitting on the phone listening to him give the order, neither of us know it for sure! > NB> coincidences and connections to Bin Laden it's not even a questionas to > NB> whether or not he's involved. > >From what I read, Bin Laden was only a circumspect suspect in regards > to the car bomb outside the WTC in the early '90s (1993 wasn't it?). It was a bomb in the basement of the WTC, not outside it, and yes, it was directly linked to Bin Laden's followers. Same deal with the USS Cole and South African bombings. > conflict. But I'd want to be sure that he was also the guy responsible > for the WTC disaster too else the actual perpetrator could be running > free! Of course. The US would be stupid to just stop at him. Bin Laden is a face on an otherwise faceless enemy, but still an important one. > NB> get your information. And don't say "the media". If you read enough of it, > NB> it's widely understood that Bin Laden is an instigator but not thecause of > NB> the entire problem. > Bush? The "Wanted: Dead or Alive" and the "Crusade" guy? I just think > too much is being places on Bin Laden right now with many other > terrorist organisations still active. Hell, even after we all get hold > of Bin Laden, do we think the organisation will stop? I doubt that. No, but even after we get ahold of Bin Laden, we won't stop. The whole world is coming together, even the Chinese, over this issue. Just stop listening to Bush. He's an idiot. Powell has consistently talked about "ripping up and dismantling the network" and that Bin LAden, while a large part of the instigation, is not enough. I do'nt think anyone thinks that it IS enough. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 15:35:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA59220 for dynarec-outgoing; Mon, 24 Sep 2001 15:35:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 24 Sep 01 18:38:12 -0400 Message-Id: <3.0.5.32.20010924153915.0089c100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 24 Sep 2001 15:39:15 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: Re[6]: DYNAREC: Breaking the Silence In-Reply-To: <2625232472.20010924230610@dynarec.com> References: <20010924142021.V42765-100000@beacon.synthcom.com> <20010924142021.V42765-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Strange, it's titled "Quran" here. You're both wrong! It's "Qu'ran" ;) Quran, Koran, Qu'ran... all the same thing, really! > >NB> I think it's wrong to send young kids to church. It just generates apathy. >NB> Most people I know who grew up religious eventually became atheists >NB> because of the experience. Kids just need to figure out who they are first >NB> before being led to believe in something that I believe is a personal >NB> choice. > >So do I. I was also christened - which I believe to be wrong. I would >certainly prefer the choice to have it done or not! As it is now, I'm >not atheist - but I'm certainly not Christian either... Only the weak will be completely brainwashed. I don't have any major objections to sending kids to church. The idea here is that parents have a responsibility to educate their children, and their children can decide later on wether or not they believe it. Schools in the US don't teach religion, so it's a sort of balance in a way. The fact that many people become atheists after going to church as kids, and that people who never went to church can end up being religious shows that it doesn't really impare your judgement. And that's the most important thing... people have to decide for themselves, but I don't believe it's all that bad to introduce kids to both ideas first, and let them decide. People who shelter their kids from everything which is against their religion are insulting the intelligence of their kids. There's a quote from Jesus which I can modify to illustrate my point, it goes something like: "What credit is it to you if you lend money to those who will give it back?" "What credit is it to you if you believe because you know nothing else?" Looking at history, especially the European middle ages, this seems like an obvious lesson we should have learned. But many people haven't. >I can't find anything extra that they're taught though - it actually >appears to be coming from preachings and no text at all! Isn't it just a matter of interpretation? Someone, I think Neil B., brought up Catholic doctrines and the Book of Mormon as examples. Catholic doctrine is AFAIK for the most part derived from interpretations of the Bible. The Book of Mormon, on the other hand, is really an addition to the Bible. >So... you think that the US selling arms to terrorists is a good idea? >;) It's not just the US. France and Germany have been known to supply less-than-worthy countries with deadly chemicals, and perhaps weapons too. Wasn't Germany selling Iraq the ingredients necessary to make VX gas, if not VX gas itself? They claimed Iraq needed it for industrial purposes. Yeah, right :) We all know what Hussein wants it for ;) I'm not trying to take blame off of the US, though. Equipping terrorists with weapons is mostly the fault of the CIA. The CIA has done a lot of stupid things in the past. It's funny listening to Republican radio talk shows... they usually love to blame Carter and Clinton (Lewinsky scandal) for the fact that these terrorists aren't taking America seriously. They skipped the Reagan and Bush eras, conveniently. Wasn't the CIA arming terrorists during the Reagan administration, too? >The public cry out for revenge. They need someone to blame. Bin Laden >has threatened to take down the US. Obvious scapegoat. Bin Laden may >well have done it - I personally believe he did. But belief doesn't >mean that he DID do it! Everybody loves a good old-fashioned good vs. evil conflict. Bush vs. bin Laden -- people need to attach a face to everything, because it's simpler that way. To me, it seems like Evil vs. Evil. ;) >He's certainly a terrorist and for that he would be a target in this >conflict. But I'd want to be sure that he was also the guy responsible >for the WTC disaster too else the actual perpetrator could be running >free! bin Laden must have had involvement in this, but there's no way he planned it himself. That's apparently not how the terrorist network operates. bin Laden is more of a figure head and a source of logistical support than anything else. The real masterminds behind this might still be alive, but everyone loves bin Laden. Sure, they're going to have to go after bin Laden, but they'd better not forget the other terrorists. >Bush? The "Wanted: Dead or Alive" and the "Crusade" guy? I just think Bush, hero of the wild frontier :P >too much is being places on Bin Laden right now with many other >terrorist organisations still active. Hell, even after we all get hold >of Bin Laden, do we think the organisation will stop? I doubt that. There maybe more bin Ladens who emerge when the real one is captured or killed. But, will they have the same sort of charisma? Possible. What about the finances? bin Laden is more than just a charismatic character to the terrorists. He's a source of financial support. Maybe the network will hold on to his funds, even if he is removed from the equation, who knows? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 15:44:44 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA59232 for dynarec-outgoing; Mon, 24 Sep 2001 15:44:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 15:48:21 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Breaking the Silence Message-ID: <20010924154821.B21907@hetfield.patsoffice.com> References: <20010924102620.G42765-100000@beacon.synthcom.com> <210081296.20010924185339@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <210081296.20010924185339@dynarec.com>; from neilg@dynarec.com on Mon, Sep 24, 2001 at 06:53:39PM +0100 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > There's a lot of misinformation being spread right now and I'm doing > my best to research everything. Some of the best so far are these > Nostradamus prophecies - quite amazing. Yes. Nostradamus predicted in > 1664 the twin towers collapsing. I'm impressed, it's quite good for a > guy who died in 1556! Sorry to rain on your parade, but it's a hoax. If you search through the entire quatranes of Nostradamus for any reference to twins, the only place you find it is Chapter I Verse 95 : In front of a monastery will be found a twin infant from the illustrious and ancient line of a monk. His fame, renown and power through sects and speech is such that they will say the living twin is deservedly chosen. And that's got nothing to do with towers. Gotta love B.S. that's spread on the net and the people that believe it without even doing the slightest amount of research. Also, Neil G., where the fuck did the US directly (or even indirectly) support the IRA?!?!? How many American and British lives have been lost defending Isreal? None (the exception being our Patriot batteries.) Isreal defends itself. Yes, we (the US) give it money but we do the same for most every other nation in the region. And at least Isreal is a democratic state unlike *EVERY* other country in the region. And if this isn't a war that we can win, should we just give up and die? A war has been waged upon us, we should return in kind. Not to occupy Afganistan (as the Soviets and British tried to do) but to wipe out the fundamentalists and their supporters. We (America) were attacked because of who we are and what we stand for far more than policy decisions that may or may not have been a bad idea. Radical Muslims long for the time before the crusades when Islam was the greatest most advanced nation on the face of the earth. They have a sense of history that I can't even begin to understand. Despite that, it doesn't make them right. Anyhow, can we take this off the list since it has ZERO relevance... Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 15:51:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA59248 for dynarec-outgoing; Mon, 24 Sep 2001 15:51:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 16:01:33 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[6]: DYNAREC: Breaking the Silence In-Reply-To: <3.0.5.32.20010924153915.0089c100@mailandnews.com> Message-ID: <20010924155042.T44033-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >certainly prefer the choice to have it done or not! As it is now, I'm > >not atheist - but I'm certainly not Christian either... > The idea here is that parents have a responsibility to educate their > children, and their children can decide later on wether or not they believe > it. Let me be clear on what I meant when I responded to Neil - I don't believe in forcefeeding religion or "religious values" on kids. It's really sad when I see 3 and 4 year olds talking about Jesus and really have no idea what they're saying. And later they blame it for the root of evils and rebel against it and become atheists, when in actuality they're just doing more of the same. I think that's sad. However, if a kid wants to go to church and it's their choice, fine. I just object to forcing them to go to church and having religious teaching rammed down their throats. Not to say I don't believe in teaching kids morals and ethics, but it can easily be done without the "aid" of religion. So many people come to God because they are insecure or need it as a crutch to bludgeon other people over the head with to make themselves feel bigger. Many also denounce God and become atheists because of bad examples of religious affiliation. It's rare that someone actually believes in atheism or whatever based on their own investigations and revelations. In short, I don't want my kids to grow up spiteful of religion, whether it be atheism or Christianity, or whatever. Ramming church down their throats when they're kids has a much higher possibility of turning them off on it, and I'd like my children to give religions an equal opportunity. I do'nt care if they become a right wing republican as long as they do it because they've come to it on their own, rational terms. > Catholic doctrine is AFAIK for the most part derived from interpretations > of the Bible. The Book of Mormon, on the other hand, is really an addition > to the Bible. Both equally destructive and still solidify my point. ;-) Actually, the doctorines are the "inspired" ideas of Bishops if I recall correctly. > It's funny listening to Republican radio talk shows... they usually love to > blame Carter and Clinton (Lewinsky scandal) for the fact that these > terrorists aren't taking America seriously. They skipped the Reagan and > Bush eras, conveniently. Wasn't the CIA arming terrorists during the Reagan > administration, too? Yep. Iran/Contra. Remember it? Of course, the right wing nazis blame everything on Democrats, when the asinie levels of military buildup in the Reagan/Bush era was just insane. No wonder it got downsized. But a larger military wouldn't have stopped what happened at the WTC. > To me, it seems like Evil vs. Evil. ;) Yes. > bin Laden must have had involvement in this, but there's no way he planned > it himself. That's apparently not how the terrorist network operates. Man, I don't know why not. I could've planned this thing myself. So could any of us. This was not rocket science. It's easy to see how it could've been done. It'd just take a while. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 16:09:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59271 for dynarec-outgoing; Mon, 24 Sep 2001 16:09:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 16:13:39 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Breaking the Silence Message-ID: <20010924161339.C21907@hetfield.patsoffice.com> References: <20010924125127.J42765-100000@beacon.synthcom.com> <1621867603.20010924221005@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <1621867603.20010924221005@dynarec.com>; from neilg@dynarec.com on Mon, Sep 24, 2001 at 10:10:05PM +0100 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You've read the Quran too? Yes, I have. As well as the bible. Haven't studied many other religions in depth. > Actually... I *have* read the Quran for myself. Good, then pick up your copy and check out the following verses I have in my notes from years ago in a non-Abdullah Yusuf Ali translation (which is very flowery and is happy and flowery): 47:4 9:4 9:29 5:33 The above verses call for the slaughter of infidels who will oppose Islam, even intellectually. Islam, as according to Quran, is obligated not to respect anything else except Islam. How many Islamic scholars have you seen denouncing the fundamentalists and their bullshit twisiting ofr the Quran? I haven't seen *ANY* (and yes, I've actually been looking a bit.) Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 16:24:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59291 for dynarec-outgoing; Mon, 24 Sep 2001 16:24:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 16:27:54 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Breaking the Silence Message-ID: <20010924162754.D21907@hetfield.patsoffice.com> References: <20010924142021.V42765-100000@beacon.synthcom.com> <2625232472.20010924230610@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <2625232472.20010924230610@dynarec.com>; from neilg@dynarec.com on Mon, Sep 24, 2001 at 11:06:10PM +0100 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > So do I. I was also christened - which I believe to be wrong. I would > certainly prefer the choice to have it done or not! As it is now, I'm > not atheist - but I'm certainly not Christian either... Well, in the Catholic religion, this is called "Confirmation" where you affirm or deny your faith. Used to happen around age 13 but now, they are combining it with first communion (around age 8.) Most other Christian religions have a similar covenant. > It is two faced to openly support terrorist groups and now be against > them... The only difference is that now America is a target too. Damn, your simplistic political views are really irritating. It's called diplomacy. Does it suck sometimes? Sure. But you seem to forget that there are bad people out there that don't like my yankee and your limey ass just becuase and would like to make you their bitch. You seem to be able to bash America quite easily. What country saved yours from the Axis in WWII? What country rebuilt yours after the war? What country rebuilt all of Western Europe (even the "mean and nasty" Germans?) What country provides the most freedom in the world? What country has the most powerful economy? The United States. We are not perfect and there is definite room for improvement here, but I can't think of a better place to live and I've visited most of the counties in western Europe for an extended period of time. Can't comment on any other continents so there may be another gem out there that I'm missing... > If a war starts, I could well be conscripted, so chances are that I > could have direct involvement in what's going on. Doubtful. This "war" is mainly going to be special forces. > Well, let's put it this way. Why did the Gulf War occur? The official > reason is totally different to the actual reason that the US was > making sure they could still get oil. Of course it was. It was even stated by the Bush administration. So what? Actually, the Brits. were more directly affected as you guys got a hell of a lot more of your oil from Kuwait than we did. > The public cry out for revenge. They need someone to blame. Bin Laden > has threatened to take down the US. Obvious scapegoat. Bin Laden may > well have done it - I personally believe he did. But belief doesn't > mean that he DID do it! On what basis do you believe that he wasn't responsible for it? > Bush? The "Wanted: Dead or Alive" and the "Crusade" guy? Nice, way to pick *2* soundbites. Good arguments... > Hell, even after we all get hold of Bin Laden, do we think the > organisation will stop? I doubt that. Who as said that it will stop with Bin Laden? Every single statement from the Bush administration has driven home the fact that this will be a long drawn out endeavor and they have been very careful not to focus only on Bin Laden. Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 16:24:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59301 for dynarec-outgoing; Mon, 24 Sep 2001 16:24:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 16:28:18 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Breaking the Silence Message-ID: <20010924162818.E21907@hetfield.patsoffice.com> References: <20010924102620.G42765-100000@beacon.synthcom.com> <210081296.20010924185339@dynarec.com> <20010924154821.B21907@hetfield.patsoffice.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010924154821.B21907@hetfield.patsoffice.com>; from pjl@patsoffice.com on Mon, Sep 24, 2001 at 03:48:21PM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Anyhow, can we take this off the list since it has ZERO relevance... Yeah, I know, I can't practice what I preach... Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 16:27:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59314 for dynarec-outgoing; Mon, 24 Sep 2001 16:27:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 24 Sep 01 19:30:04 -0400 Message-Id: <3.0.5.32.20010924163127.008a3230@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 24 Sep 2001 16:31:27 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: Re[6]: DYNAREC: Breaking the Silence In-Reply-To: <20010924155042.T44033-100000@beacon.synthcom.com> References: <3.0.5.32.20010924153915.0089c100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >In short, I don't want my kids to grow up spiteful of religion, whether it >be atheism or Christianity, or whatever. Ramming church down their throats >when they're kids has a much higher possibility of turning them off on it, >and I'd like my children to give religions an equal opportunity. I do'nt >care if they become a right wing republican as long as they do it because >they've come to it on their own, rational terms. But what exactly do you mean by "ramming church down their throats"? I think it's kind of a slippery situation. What constitutes force feeding, and what is merely education? IMO, Ned Flanders would be someone who force feeds his kids with religion, if I may use "The Simpsons" as an example ;) He's the kind of person who seems to oppose negative "influences." Everything can be an influence. I think things become stronger influences once they've been prohibited. Like you said, kids who are forced to be religious can rebel once they have a chance to, simply because they've had too much pressure from a single influence. I still don't know if taking kids to church necessarily means force feeding them. It's one thing going to church and listening as a kid, but it's an entirely different matter to be like Flanders. Is Flanders a bad person? Well, no, but the way he raises his kids shows he has very little faith in their intelligence. I think it's entirely possible to have kids go to church, without being so forceful as to create a desire for rebellion, or to brainwash them. In the end, it really depends on the person. Some people are completely unaffected by people trying to brainwash them, even at early ages. >> Catholic doctrine is AFAIK for the most part derived from interpretations >> of the Bible. The Book of Mormon, on the other hand, is really an addition >> to the Bible. > >Both equally destructive and still solidify my point. ;-) Actually, the >doctorines are the "inspired" ideas of Bishops if I recall correctly. Many of the doctorines were established through councils and debates. Many of them are based on proofs found in scripture. Such as the concept of purgatory. Wether or not the proof is sufficient to a person is an entirely different matter. ;) I don't see them as being all that destructive. A lot of problems with the Church arose during the middle ages, primarily because of severe corruption among the clergy. But it enforces the fact that the Catholic clergy are men, and aren't necessarily holier than anyone else. Look at all the bad popes in history. An advantage (or disadvantage, depending on how you argue it) the Catholic Church has is its resilience to change. No doubt, Catholicism is very different today than it was in say, the 5th century, but the core beliefs are unchanged. It's a lot of the little stuff that has changed in the doctorine. And the more tangible changes (in how mass is performed, celibacy, etc.) are not doctorine, but have more to do with discipline, ceremony, etc. The middle ages more than anything else really brought a lot of negative stuff into the Church, but there has been some progress lately. Apologies for the Crusades and ill-treatment of Jews, for example, are a positive step. Although the doctorine about papal infallability may seem solid, I think many within the Church are skeptical about it. I've heard that a pope must make an official infallable statement, and can otherwise be erroneous just as any other person. To my knowledge, only 2 infallable statements were ever made, both in the 19th century. Many believe that popes and bishops can be "divinely inspired" but that's kind of iffy... I mean, few would say the Crusades were "divine inspiration." The Mormon Church on the other hand is a very different situation. The Book of Mormon was a completely radical addition to the Bible, and the Mormon Church has changed a lot. Polygamy, for example, was practiced by the higher-ups of the Mormon Church in its early days (though by far, most Mormons did not have multiple wives), but it was later renounced due to pressure from the government. Blacks were also not permitted to be a part of the clergy, but that was renounced later, too. Their explanation is that God works in mysterious ways. That's not a great explanation. Traditional Christianity also changed a lot during the first 300 years of its existance, but I think most of these changes were due to the early Christians coming to terms with what they believed. There was initially a lot of fragmentation over just how the scriptures were to be interpreted. >Man, I don't know why not. I could've planned this thing myself. So could >any of us. This was not rocket science. It's easy to see how it could've >been done. It'd just take a while. The basic plot was simple, but the details must have taken some thought. I doubt bin Laden had any influence over that. It would be much more reasonable to assume he just said "attack the WTC", without detailing how. Or, the terrorists who were directly involved with it came up with the plan themselves, and then asked bin Laden for financial support. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 16:34:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59327 for dynarec-outgoing; Mon, 24 Sep 2001 16:34:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 24 Sep 01 19:37:33 -0400 Message-Id: <3.0.5.32.20010924163836.008a0cc0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 24 Sep 2001 16:38:36 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Breaking the Silence In-Reply-To: <20010924162754.D21907@hetfield.patsoffice.com> References: <2625232472.20010924230610@dynarec.com> <20010924142021.V42765-100000@beacon.synthcom.com> <2625232472.20010924230610@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well, in the Catholic religion, this is called "Confirmation" where you >affirm or deny your faith. Used to happen around age 13 but now, they are >combining it with first communion (around age 8.) Most other Christian >religions have a similar covenant. No, you might have gotten that backwards. It used to happen around first communion, but the age has been raised to around 16 or 17. Emphasis is being placed on personal choice, which is a positive step, IMHO. It might depend on the parish. But to my knowledge, at least where I am, the age is being raised. Classes on the subject are mandatory too, I think, in order to make sure that those being confirmed really know what they're doing. >powerful economy? The United States. We are not perfect and there is >definite room for improvement here, but I can't think of a better place to >live and I've visited most of the counties in western Europe for an >extended period of time. Can't comment on any other continents so there >may be another gem out there that I'm missing... As to what the best place in the world to live in is, it's a matter of opinion. I like living here in the US. But many don't like the US for cultural reasons. It's a great place to work and make a living, but sometimes I get pretty irritated at all the hypocrisy and Puritanism. Then again, I suppose no place on Earth is free of hypocrisy :) It's all too easy to find the bad in something, and then idealize something else. I'm guilty of it all the time :( Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 16:46:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59346 for dynarec-outgoing; Mon, 24 Sep 2001 16:46:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 16:50:17 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Breaking the Silence Message-ID: <20010924165017.F21907@hetfield.patsoffice.com> References: <2625232472.20010924230610@dynarec.com> <20010924142021.V42765-100000@beacon.synthcom.com> <2625232472.20010924230610@dynarec.com> <20010924162754.D21907@hetfield.patsoffice.com> <3.0.5.32.20010924163836.008a0cc0@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <3.0.5.32.20010924163836.008a0cc0@mailandnews.com>; from trzy@mailandnews.com on Mon, Sep 24, 2001 at 04:38:36PM +0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > No, you might have gotten that backwards. It used to happen around first > communion, but the age has been raised to around 16 or 17. No, my niece just went through her first communion/confirmation last year. This is a very recent thing (last 5 years.) > It might depend on the parish. That may well be. I'll try and find out. > Then again, I suppose no place on Earth is free of hypocrisy :) It's all > too easy to find the bad in something, and then idealize something else. > I'm guilty of it all the time :( Aren't we all... Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 16:48:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59357 for dynarec-outgoing; Mon, 24 Sep 2001 16:48:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Sep 2001 00:39:28 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <2230830031.20010925003928@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Breaking the Silence In-Reply-To: <20010924154821.B21907@hetfield.patsoffice.com> References: <20010924102620.G42765-100000@beacon.synthcom.com> <210081296.20010924185339@dynarec.com> <20010924154821.B21907@hetfield.patsoffice.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, >> There's a lot of misinformation being spread right now and I'm doing >> my best to research everything. Some of the best so far are these >> Nostradamus prophecies - quite amazing. Yes. Nostradamus predicted in >> 1664 the twin towers collapsing. I'm impressed, it's quite good for a >> guy who died in 1556! PL> Sorry to rain on your parade, but it's a hoax. No, really? You don't say! ;) Didn't my joke about it being written in 1664 yet he died in 1556 mean anything to you? ;) I know I was being sarcastic, but surely it was obvious? I have researched Nostradamus thoroughly and have had a book here for a long time. There's nothing about twins - the nearest to the fake was the line: In the year 1999 and seven months Which in the fake became: In the year of the new century and 9 months PL> And that's got nothing to do with towers. Gotta love B.S. that's spread PL> on the net and the people that believe it without even doing the slightest PL> amount of research. Yes, kind of like you replying to me like this when you actually agree with me. ;) PL> Also, Neil G., where the fuck did the US directly (or even indirectly) PL> support the IRA?!?!? That'd be when Bush (the original) came to Ireland, shook Gerry Adam's hand and gave a speech about how he was fighting for the freedom of his people and that they had America's full support. Would that do? PL> How many American and British lives have been lost defending Isreal? None PL> (the exception being our Patriot batteries.) Isreal defends itself. Yes, PL> we (the US) give it money but we do the same for most every other nation PL> in the region. And at least Isreal is a democratic state unlike *EVERY* PL> other country in the region. And if this isn't a war that we can win, PL> should we just give up and die? Fucking HUNDREDS of British lives have been lost defending Israel, but thank you for asking. It's why Britain withdrew in the end after seeking advice from the UN and when Israel was re-instated. PL> A war has been waged upon us, we should return in kind. Not to occupy PL> Afganistan (as the Soviets and British tried to do) but to wipe out the PL> fundamentalists and their supporters. If they are terrorists, yes. If they are innocents, no. PL> We (America) were attacked because of who we are and what we stand for far PL> more than policy decisions that may or may not have been a bad idea. I can almost agree with that, but that's not the whole reason IMO. I would say that it's because America is deeply involved in politics in the middle east and have upset a lot of people. PL> Radical Muslims long for the time before the crusades when Islam was the PL> greatest most advanced nation on the face of the earth. They have a sense PL> of history that I can't even begin to understand. Despite that, it PL> doesn't make them right. No, when they attacked the innocents in the WTC, it wasn't right. In the same way it won't be right to kill innocents in Afghanistan. PL> Anyhow, can we take this off the list since it has ZERO relevance... Since when has that meant anything? ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 16:48:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59365 for dynarec-outgoing; Mon, 24 Sep 2001 16:48:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Sep 2001 00:53:59 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <3431700993.20010925005359@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Breaking the Silence In-Reply-To: <20010924161339.C21907@hetfield.patsoffice.com> References: <20010924125127.J42765-100000@beacon.synthcom.com> <1621867603.20010924221005@dynarec.com> <20010924161339.C21907@hetfield.patsoffice.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, PL> Good, then pick up your copy and check out the following verses I have in PL> my notes from years ago in a non-Abdullah Yusuf Ali translation (which is PL> very flowery and is happy and flowery): Here, I found this useful site: http://www.stg.brown.edu/webs/quran_browser/pqeasy.shtml The version I chose was by M M Pikthall and not A Y Ali as you asked. PL> 47:4 "Now when ye meet in battle those who disbelieve, then it is smiting of the necks until, when ye have routed them, then making fast of bonds; and afterward either grace or ransom till the war lay down its burdens. That (is the ordinance). And if Allah willed He could have punished them (without you) but (thus it is ordained) that He may try some of you by means of others. And those who are slain in the way of Allah, He rendereth not their actions vain." That's about the war they were fighting at the time... PL> 9:4 "Excepting those of the idolaters with whom ye (Muslims) have a treaty, and who have since abated nothing of your right nor have supported anyone against you. (As for these), fulfil their treaty to them till their term. Lo! Allah loveth those who keep their duty (unto Him)." Nope, I don't get what you're saying here. PL> 9:29 "Fight against such of those who have been given the Scripture as believe not in Allah nor the Last Day, and forbid not that which Allah hath forbidden by His messenger, and follow not the Religion of Truth, until they pay the tribute readily, being brought low." Okay, I can see what you're getting at here, but is the Bible any different? PL> 5:33 "The only reward of those who make war upon Allah and His messenger and strive after corruption in the land will be that they will be killed or crucified, or have their hands and feet on alternate sides cut off, or will be expelled out of the land. Such will be their degradation in the world, and in the Hereafter theirs will be an awful doom;" Yes, quite. Again, this is aimed against the people they were fighting at the time that the Qu'ran was written. PL> The above verses call for the slaughter of infidels who will oppose Islam, PL> even intellectually. Islam, as according to Quran, is obligated not to PL> respect anything else except Islam. How many Islamic scholars have you PL> seen denouncing the fundamentalists and their bullshit twisiting ofr the PL> Quran? I haven't seen *ANY* (and yes, I've actually been looking a bit.) No, I don't see them like that. Which version did you read? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 16:49:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59374 for dynarec-outgoing; Mon, 24 Sep 2001 16:49:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 16:53:42 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Breaking the Silence Message-ID: <20010924165342.G21907@hetfield.patsoffice.com> References: <2625232472.20010924230610@dynarec.com> <20010924142021.V42765-100000@beacon.synthcom.com> <2625232472.20010924230610@dynarec.com> <20010924162754.D21907@hetfield.patsoffice.com> <3.0.5.32.20010924163836.008a0cc0@mailandnews.com> <20010924165017.F21907@hetfield.patsoffice.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010924165017.F21907@hetfield.patsoffice.com>; from pjl@patsoffice.com on Mon, Sep 24, 2001 at 04:50:17PM -0700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > That may well be. I'll try and find out. Check out this google groups post. It is a diocese thing apparently: http://groups.google.com/groups?hl=en&frame=right&th=6d9c636a86dade5c&seekm=20010905163525.28064.00000064%40mb-bh.aol.com#link1 OK, I'm ending my contributions to this thread... Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 16:51:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59386 for dynarec-outgoing; Mon, 24 Sep 2001 16:51:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Sep 2001 00:57:26 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <10031908622.20010925005726@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Breaking the Silence In-Reply-To: <20010924162818.E21907@hetfield.patsoffice.com> References: <20010924102620.G42765-100000@beacon.synthcom.com> <210081296.20010924185339@dynarec.com> <20010924154821.B21907@hetfield.patsoffice.com> <20010924162818.E21907@hetfield.patsoffice.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com PL> Yeah, I know, I can't practice what I preach... And what is your problem with me? Was it because you got a bug up your ass because you thought I was being serious about Nostradamus? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 16:53:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59395 for dynarec-outgoing; Mon, 24 Sep 2001 16:53:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 16:56:49 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Breaking the Silence Message-ID: <20010924165649.H21907@hetfield.patsoffice.com> References: <20010924125127.J42765-100000@beacon.synthcom.com> <1621867603.20010924221005@dynarec.com> <20010924161339.C21907@hetfield.patsoffice.com> <3431700993.20010925005359@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <3431700993.20010925005359@dynarec.com>; from neilg@dynarec.com on Tue, Sep 25, 2001 at 12:53:59AM +0100 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > No, I don't see them like that. Which version did you read? A translation by Shakir. I've also read Pickthal and Yousef Ali. Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 16:56:04 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA59407 for dynarec-outgoing; Mon, 24 Sep 2001 16:56:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 16:59:51 -0700 From: Patrick Lawrence To: dynarec@dynarec.com Subject: Re: DYNAREC: Breaking the Silence Message-ID: <20010924165951.I21907@hetfield.patsoffice.com> References: <20010924102620.G42765-100000@beacon.synthcom.com> <210081296.20010924185339@dynarec.com> <20010924154821.B21907@hetfield.patsoffice.com> <20010924162818.E21907@hetfield.patsoffice.com> <10031908622.20010925005726@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <10031908622.20010925005726@dynarec.com>; from neilg@dynarec.com on Tue, Sep 25, 2001 at 12:57:26AM +0100 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > And what is your problem with me? Was it because you got a bug up your > ass because you thought I was being serious about Nostradamus? Ya know, I totally missed your date of his death in your message on Nostradamus. So yeah, I totally missed your sarcasm. Sorry about that. Actually, I couldn't give a damn about the Nostradamus quote. It was your America bashing that set me off. Pat -- "You are not a beautiful and unique snowflake!" - Tyler Durden --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 17:08:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA59428 for dynarec-outgoing; Mon, 24 Sep 2001 17:08:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 17:18:14 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[6]: DYNAREC: Breaking the Silence In-Reply-To: <3.0.5.32.20010924163127.008a3230@mailandnews.com> Message-ID: <20010924171115.A44033-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >when they're kids has a much higher possibility of turning them off on it, > >and I'd like my children to give religions an equal opportunity. I do'nt > >care if they become a right wing republican as long as they do it because > >they've come to it on their own, rational terms. > But what exactly do you mean by "ramming church down their throats"? I > think it's kind of a slippery situation. What constitutes force feeding, > and what is merely education? Education: "Billy, would you like to go to church with us?" Ramming it down their throats: "Billy, you're going to church with us whether you like it or not. You're going to be a good boy or you're going to hell." That last sentence above was a direct quote from a Sunday school teacher that I was subjected to at age 5. Fortunately my parents told me to call people on when they're wrong. > IMO, Ned Flanders would be someone who force feeds his kids with religion, Bingo! > I still don't know if taking kids to church necessarily means force feeding > them. It's one thing going to church and listening as a kid, but it's an > entirely different matter to be like Flanders. Is Flanders a bad person? > Well, no, but the way he raises his kids shows he has very little faith in > their intelligence. And completely misses the point of religion, too. The "I'm glad we don't believe in innoculations... right kids?" (cut to Rod & Todd shaking and sweating). > end, it really depends on the person. Of course. > Some people are completely unaffected by people trying to brainwash them, > even at early ages. When I hear 3 year olds singing "I believe the bible.." it's disgusting. They don't even have their own identies established yet. > >Both equally destructive and still solidify my point. ;-) Actually, the > >doctorines are the "inspired" ideas of Bishops if I recall correctly. > Many of the doctorines were established through councils and debates. Many > of them are based on proofs found in scripture. Such as the concept of > purgatory. Wether or not the proof is sufficient to a person is an entirely > different matter. ;) Yes, I believe that Genesis eludes to this fact quite nicely. ;-) > among the clergy. But it enforces the fact that the Catholic clergy are > men, and aren't necessarily holier than anyone else. Look at all the bad > popes in history. Yeah, and all the chior boy molesting Bishops, too. The only thing wrong with religion is the people! > The middle ages more than anything else really brought a lot of negative > stuff into the Church, but there has been some progress lately. Apologies > for the Crusades and ill-treatment of Jews, for example, are a positive step. I do'nt know why admission of wrongdoing is so hard to come by. Everyone is fallible - doesn't every religion teach that? > The Mormon Church on the other hand is a very different situation. Yes, it's a pyramid scheme business hidden behind the veil of religion. ;-) > The Book of Mormon was a completely radical addition to the Bible, and the > Mormon Church has changed a lot. Polygamy, for example, was practiced by > the higher-ups of the Mormon Church in its early days (though by far, most > Mormons did not have multiple wives), but it was later renounced due to > pressure from the government. Blacks were also not permitted to be a part > of the clergy, but that was renounced later, too. Their explanation is that > God works in mysterious ways. That's not a great explanation. Of course. That's "Last Wednesdayism". When you're presented with facts that you can't deny, just make something up. I'm very seriously thinking about doing a diff of the book of mormon of today vs. one I have that was printed in 1972 to show how it "evolved" to suit their needs. > >Man, I don't know why not. I could've planned this thing myself. So could > >any of us. This was not rocket science. It's easy to see how it could've > >been done. It'd just take a while. > The basic plot was simple, but the details must have taken some thought. Not much. How hard is it to plan such a thing? Nothing they did I view as intelligent. Premeditated sure, but takes lots of thought? No. > doubt bin Laden had any influence over that. It would be much more > reasonable to assume he just said "attack the WTC", without detailing how. > Or, the terrorists who were directly involved with it came up with the plan > themselves, and then asked bin Laden for financial support. Bingo! Bin Laden probably just said "Take down the WTC" and his henchmen figured out how. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 17:11:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA59441 for dynarec-outgoing; Mon, 24 Sep 2001 17:11:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Sep 2001 01:17:44 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <11233126212.20010925011744@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Breaking the Silence In-Reply-To: <20010924162754.D21907@hetfield.patsoffice.com> References: <20010924142021.V42765-100000@beacon.synthcom.com> <2625232472.20010924230610@dynarec.com> <20010924162754.D21907@hetfield.patsoffice.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, PL> Well, in the Catholic religion, this is called "Confirmation" where you PL> affirm or deny your faith. Used to happen around age 13 but now, they are PL> combining it with first communion (around age 8.) Most other Christian PL> religions have a similar covenant. We have Confirmation in the Methodist religion which is how I was brought up too. PL> Damn, your simplistic political views are really irritating. It's called PL> diplomacy. I'm sorry. I just find having a position against terrorism, yet handing out money and weapons to terrorists to be slightly unnerving. PL> Does it suck sometimes? Sure. But you seem to forget that PL> there are bad people out there that don't like my yankee and your limey PL> ass just becuase and would like to make you their bitch. You seem to be PL> able to bash America quite easily. As I would any country who's starting a war I deem to be stupid. PL> What country saved yours from the Axis WWII? What country was dragged kicking and screaming into the war? PL> What country rebuilt yours after the war? What country was quite happy to stay out of it until Pearl Harbour? PL> What country rebuilt all of Western Europe (even the "mean and PL> nasty" Germans?) You didn't rebuild Britain, but you DID give money. PL> What country provides the most freedom in the world? What country has capital punishment and considers itself one of the most humane? PL> What country has the most powerful economy? Seen the state of the dollar recently? If any country, any at all, collapses, the rest of the world is affected. We saw that only a few years ago with Japan. PL> The United States. We are not perfect and there is PL> definite room for improvement here, but I can't think of a better place to PL> live and I've visited most of the counties in western Europe for an PL> extended period of time. Can't comment on any other continents so there PL> may be another gem out there that I'm missing... I am not against America, but given you're stating how great it is... I have to take the opposing view. ;) I think America is a great place, I'd love to go there. But I'm against a war that is going to kill more innocent people than the perpetrators. And that's what my viewpoint is based on. Up until this e-mail, I hadn't made anti-american statements, you've wound me up into it now. I just pointed out the two-faced politics that's been going on. >> If a war starts, I could well be conscripted, so chances are that I >> could have direct involvement in what's going on. PL> Doubtful. This "war" is mainly going to be special forces. Doubtful, I agree, but not out of the question. It depends on how (and if) it escalates. PL> Of course it was. It was even stated by the Bush administration. So PL> what? Actually, the Brits. were more directly affected as you guys got a PL> hell of a lot more of your oil from Kuwait than we did. Wow, we agree on something! ;) Yes, we would have been more affected than you, but as the worlds biggest user of oil, you'd have been hit too. PL> On what basis do you believe that he wasn't responsible for it? How many times do I have to say that I believe it is him - but belief doesn't make it true? >> Bush? The "Wanted: Dead or Alive" and the "Crusade" guy? PL> Nice, way to pick *2* soundbites. Good arguments... Against Bush? Why yes, thank you. They ARE good arguments as to how bad he is when giving speeches that haven't been written. Nitpick, nitpick, nitpick. It doesn't change anything. PL> Who as said that it will stop with Bin Laden? Every single statement from PL> the Bush administration has driven home the fact that this will be a long PL> drawn out endeavor and they have been very careful not to focus only on PL> Bin Laden. No-one. It's a statement. I can make those you know. It's a hope that I have - if there's going to be a war against terrorism and innocent people aren't being killed... Then I hope that it continues and that we strive to wipe out terrorism. But I can't condone a war which is quite likely to kill more innocents than guilty. As the famous song goes... "War. What is it good for?" Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 17:14:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA59451 for dynarec-outgoing; Mon, 24 Sep 2001 17:14:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Sep 2001 01:20:44 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <15833306492.20010925012044@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Breaking the Silence In-Reply-To: <20010924165951.I21907@hetfield.patsoffice.com> References: <20010924102620.G42765-100000@beacon.synthcom.com> <210081296.20010924185339@dynarec.com> <20010924154821.B21907@hetfield.patsoffice.com> <20010924162818.E21907@hetfield.patsoffice.com> <10031908622.20010925005726@dynarec.com> <20010924165951.I21907@hetfield.patsoffice.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, PL> Ya know, I totally missed your date of his death in your message on PL> Nostradamus. So yeah, I totally missed your sarcasm. Sorry about that. No problem... I've gone off the chart too. I felt as though you were attacking me, so I retaliated. Sorry. :) PL> Actually, I couldn't give a damn about the Nostradamus quote. It was your PL> America bashing that set me off. It's not America I'm against... if you re-read what I've written, you'll see that. Well, apart from my last message where I purposefully bashed America, but that was only because I had to. ;) I'm simply against what I see as potential disaster. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 17:18:22 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA59469 for dynarec-outgoing; Mon, 24 Sep 2001 17:18:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3BAFCE30.A6CA757E@austin.rr.com> Date: Mon, 24 Sep 2001 17:22:08 -0700 From: tarquin X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: OT: just seomthing I noticed... Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Date column of nutscrape's mail reader: 15:06 15:06 15:08 15:10 15:43 15:48 16:01 16:13 16:27 16:28 16:39 16:50 16:53 16:53 16:56 16:57 16:59 17:17 17:18 17:20 ever considered firing up ircd on dynarec.com? =P -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 17:25:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA59484 for dynarec-outgoing; Mon, 24 Sep 2001 17:25:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 17:35:22 -0700 (PDT) From: Neil Bradley To: Subject: Re[2]: DYNAREC: Breaking the Silence In-Reply-To: <11233126212.20010925011744@dynarec.com> Message-ID: <20010924172314.A44033-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > PL> combining it with first communion (around age 8.) Most other Christian > PL> religions have a similar covenant. > We have Confirmation in the Methodist religion which is how I was > brought up too. Reminds me of a dead milkmen track: "You've got a Methodist coloring book and you color really well, but don't color outside the lines or God will send you to hell." ;-) > PL> Damn, your simplistic political views are really irritating. It's called > I'm sorry. I just find having a position against terrorism, yet > handing out money and weapons to terrorists to be slightly unnerving. Like I said, terrorism is defined by the victims, not by the doers, and you're bringing something up to the 50,000 foot level to prove your point. > PL> ass just becuase and would like to make you their bitch. You seem to be > PL> able to bash America quite easily. > As I would any country who's starting a war I deem to be stupid. So what do you recommend, the US do *NOTHING*? Let's just let our guard down and have all of our budilings knocked down again, all the while not doing anything because you think it's stupid? > PL> What country saved yours from the Axis WWII? > What country was dragged kicking and screaming into the war? Patrick asks why the UK citizens are ingrates and you come back with a retort that is irrelevant. > PL> What country rebuilt yours after the war? > What country was quite happy to stay out of it until Pearl Harbour? Same here. > PL> What country rebuilt all of Western Europe (even the "mean and > PL> nasty" Germans?) > You didn't rebuild Britain, but you DID give money. That's the same thing. > PL> What country provides the most freedom in the world? > What country has capital punishment and considers itself one of the > most humane? What country also lets far too many of these people sit on death row for their lives? > PL> What country has the most powerful economy? > Seen the state of the dollar recently? If any country, any at all, > collapses, the rest of the world is affected. We saw that only a few > years ago with Japan. Only if it's an economic superpower. Is the UK? Nope. Japan and the US certainly are. But I can't think of one country in Europe that would cause two other markets to be radically impacted. > PL> The United States. We are not perfect and there is > PL> definite room for improvement here, but I can't think of a better place to > I am not against America, but given you're stating how great it is... > I have to take the opposing view. ;) It's certainly not perfect. No place is. I envy some of the freedoms in other countries. Even with those additional freedoms, I can't think of another country that I'd rather live in if I had my choice. > perpetrators. And that's what my viewpoint is based on. Up until this > e-mail, I hadn't made anti-american statements, you've wound me up > into it now. I just pointed out the two-faced politics that's been > going on. Two-faced politics go on *EVERYWHERE*. Are you expecting any differently? ;-) > Yes, we would have been more affected than you, but as the worlds > biggest user of oil, you'd have been hit too. And also the largest export company in the world by 5X, so it's proportional. > PL> On what basis do you believe that he wasn't responsible for it? > How many times do I have to say that I believe it is him - but belief > doesn't make it true? What point is there in even saying a statement? Come on.. you're playing BOTH sides of the coin, here man. > PL> Nice, way to pick *2* soundbites. Good arguments... > Against Bush? Why yes, thank you. They ARE good arguments as to how > bad he is when giving speeches that haven't been written. Bush is a dumbass. We all know that. I've already resolved to vote against him no matter how bad his opponents are. But I'm not sure how him being a lousy public speaker really has any relevancy. > PL> the Bush administration has driven home the fact that this will be a long > PL> drawn out endeavor and they have been very careful not to focus only on > PL> Bin Laden. > No-one. It's a statement. I can make those you know. Well, you did lock on Bush's statements. Don't listen to him. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 17:26:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA59494 for dynarec-outgoing; Mon, 24 Sep 2001 17:26:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 17:36:26 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: OT: just seomthing I noticed... In-Reply-To: <3BAFCE30.A6CA757E@austin.rr.com> Message-ID: <20010924173601.C44033-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > ever considered firing up ircd on dynarec.com? =P We're just all bored at work and like to sling mud to keep ourselves entertained. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 17:39:48 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA59515 for dynarec-outgoing; Mon, 24 Sep 2001 17:39:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 17:49:12 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: 6502 script In-Reply-To: Message-ID: <20010924174217.E44033-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > The # means the rest of the line is commented out. So, effectively, > > that line says: > Doh, just stripped those out. How do we convey the general assembler > syntax? For instance, the 6502's addressing modes are laid out like so: Are you asking how we can do "addressing modes" in a simplistic form or just general questions about instructions? A good example is in my z80.def: IMM8 = {8, unsigned}; IMM16 = {16, ((8, unsigned) << 8) | (8, unsigned))}; REL8 = {(8, signed) + PC + 2}; BIT3 = {3, numeric}; [instructions] 00000000 |NOP||||4||N; // NOP 11001001 |RET||||10||T; // RET 001cc000 (8*o) |JR|c=CC2, o=REL8|cc=CC2||7|12|C; // JR cc, addr 11ccc010 (16*a) |JP|c=CC3, a=IMM16|cc=CC3||10|10|C; // JP cc, addr 01110110 |HALT||||4||N; // HALT 01dddsss |LD|d=REG8, s=REG8|||4||N; // LD reg8, reg8 10001rrr |ADC|A, r=REG8|C|SZHPNC|4||N; // ADC A, reg8 11ccc100 (16*a) |CALL|c=CC3, a=IMM16|cc=CC3||10|17|C; // CALL cc, addr So the CALL would turn in to "CALL NZ, 4325h" as an example... In 6502esque, it'd be: > op absolute,X IMM16 = {16, ((8, unsigned) << 8) | (8, unsigned))}; 01010101 (16*a) |ORA|$a=IMM16,Y| ..... This is why I thought we needed to nail it down before we go off writing a parser for it. ;-) > immediate is an 8 bit constant, zero_page is an 8 bit address, absolute is > a 16 bit address, rel is an 8 bit signed constant, relative to PC + 2. Hopefully the Z80 example above will help out. In the case of PC + 2, then you'd just add: |ORA|$a=IMM16 + PC + 2, Y| ...... Rude & crude mathematical expressiosn. > ()'d ones are indirect absolute (only used for JMP), and pre/post indexed > indirect. In the absence of labels, hex numbers are prefixed with $. Yuck! > How do we get this stuff into the thing? embed C-style printf format > strings in? I don't recall # being a comment. We need to have that in as a valid field and just stick to /* .. */ and //. > > The reason we should discuss this... Should we make the # comment > > everything out up until the next '|' character? > Might be something to try I vote no. Why not just use the standard ones? -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 18:08:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA59548 for dynarec-outgoing; Mon, 24 Sep 2001 18:08:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Sep 2001 02:13:58 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <17136500244.20010925021358@dynarec.com> To: dynarec@dynarec.com Subject: Re[3]: DYNAREC: Breaking the Silence In-Reply-To: <20010924172314.A44033-100000@beacon.synthcom.com> References: <20010924172314.A44033-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, I'm going to stay away from this now, but anyway... NB> Reminds me of a dead milkmen track: NB> "You've got a Methodist coloring book and you color really well, NB> but don't color outside the lines or God will send you to hell." NB> ;-) Yes, that's true. I was forced to go... and it was only when I totally resisted that my parents stopped forcing me to go. :) NB> Like I said, terrorism is defined by the victims, not by the doers, and NB> you're bringing something up to the 50,000 foot level to prove your point. I don't think so, I think it's an important point, but okay. NB> So what do you recommend, the US do *NOTHING*? Let's just let our guard NB> down and have all of our budilings knocked down again, all the while not NB> doing anything because you think it's stupid? You're not the first country to have been attacked by terrorists you know. BUT... no country has ever had an attack like that. Ever. We are used to terrorist attacks here in the UK and have had some severe disasters... But nothing compares to what happened on the 11th. Is war an over-reaction? I don't know. Is war the wrong word for it? Perhaps. Perhaps it's just the word "war" that I object to. >> PL> What country saved yours from the Axis WWII? >> What country was dragged kicking and screaming into the war? NB> Patrick asks why the UK citizens are ingrates and you come back with a NB> retort that is irrelevant. As was WWII, let's be fair. You don't think you'd get tired of having "We saved you in the war!" comments? Like you didn't like my comments which were deemed anti-american? >> PL> What country rebuilt yours after the war? >> What country was quite happy to stay out of it until Pearl Harbour? NB> Same here. Yes, I answered irrelevancy with irrelevant answers. NB> What country also lets far too many of these people sit on death row for NB> their lives? That's another ball game here... I'm also against capital punishment. ;) NB> Only if it's an economic superpower. Is the UK? Nope. Japan and the US NB> certainly are. But I can't think of one country in Europe that would cause NB> two other markets to be radically impacted. Let's see... Switzerland? And now the Euro? NB> It's certainly not perfect. No place is. I envy some of the freedoms in NB> other countries. Even with those additional freedoms, I can't think of NB> another country that I'd rather live in if I had my choice. Heh. Even I would prefer to live in Germany than here. The UK is certainly not the best country in the world. NB> Two-faced politics go on *EVERYWHERE*. Are you expecting any differently? NB> ;-) Yes, but when you're wanting to kill people over the same thing... it bugs me. NB> And also the largest export company in the world by 5X, so it's NB> proportional. Really? I'd have thought Japan or Taiwan would have been! NB> What point is there in even saying a statement? Come on.. you're playing NB> BOTH sides of the coin, here man. No I'm not. I'm saying that I think a lot of the focus is being put on Bin Laden when we don't know that it's him. Whether I believe it's him or not is irrelevant. NB> Bush is a dumbass. We all know that. I've already resolved to vote against NB> him no matter how bad his opponents are. But I'm not sure how him being a NB> lousy public speaker really has any relevancy. I'm not sure how the statement about the soundbites was relevant either. It was a tangent. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 18:18:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA59567 for dynarec-outgoing; Mon, 24 Sep 2001 18:18:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3BAFDC4A.4107833C@austin.rr.com> Date: Mon, 24 Sep 2001 18:22:18 -0700 From: tarquin X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: 6502 script References: <20010924174217.E44033-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > > The # means the rest of the line is commented out. So, effectively, > > > that line says: > > Doh, just stripped those out. How do we convey the general assembler > > syntax? For instance, the 6502's addressing modes are laid out like so: > > Are you asking how we can do "addressing modes" in a simplistic form or > just general questions about instructions? Was thinking of how to convey a standard syntax for a CPU, preferably without having to specify it for each and every instruction. This is mostly for disassembly output formats, to tell it how to speak intel or at&t syntax for example. > > op absolute,X > > IMM16 = {16, ((8, unsigned) << 8) | (8, unsigned))}; > > 01010101 (16*a) |ORA|$a=IMM16,Y| ..... Ahh, ok. > This is why I thought we needed to nail it down before we go off writing a > parser for it. ;-) A parser shouldn't be too difficult, at least to get the basics down. Little details like the operand specification stuff shouldn't make much of a difference to the parser in the end. That's part of what the |'s are for =) > Hopefully the Z80 example above will help out. In the case of PC + 2, then > you'd just add: > > |ORA|$a=IMM16 + PC + 2, Y| ...... > > Rude & crude mathematical expressiosn. Yeah, I saw the PC + 2 part. > > ()'d ones are indirect absolute (only used for JMP), and pre/post indexed > > indirect. In the absence of labels, hex numbers are prefixed with $. > > Yuck! Heh, > > How do we get this stuff into the thing? embed C-style printf format > > strings in? > > I don't recall # being a comment. We need to have that in as a valid field > and just stick to /* .. */ and //. Don't know why I thought # might have been a comment char, seems to be a common one though =P > > > The reason we should discuss this... Should we make the # comment > > > everything out up until the next '|' character? > > Might be something to try > > I vote no. Why not just use the standard ones? Sounds good. > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base MIDI channel are belong to us. > Synthcom Systems, Inc. > ICQ #29402898 -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 19:49:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA59645 for dynarec-outgoing; Mon, 24 Sep 2001 19:49:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 19:59:30 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: 6502 script In-Reply-To: <3BAFDC4A.4107833C@austin.rr.com> Message-ID: <20010924195235.V45058-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Are you asking how we can do "addressing modes" in a simplistic form or > > just general questions about instructions? > Was thinking of how to convey a standard syntax for a CPU, preferably without > having to specify it for each and every instruction. This is mostly for > disassembly output formats, to tell it how to speak intel or at&t syntax for > example. You'd reverse the order of operands. Should be bonehead easy to do. You'll be able to do commands with an orthogonal interface, but it won't be possible to do addressing modes in a nice, neat order. But if you can come up with a better solution that would allow > > This is why I thought we needed to nail it down before we go off writing a > > parser for it. ;-) > A parser shouldn't be too difficult, at least to get the basics down. Little > details like the operand specification stuff shouldn't make much of a difference > to the parser in the end. That's part of what the |'s are for =) Yes, but depending upon where you are in the script, the lexical analysis means different things. Plus, what are you going to build? We haven't figured out parse tree stuff. > > I don't recall # being a comment. We need to have that in as a valid field > > and just stick to /* .. */ and //. > Don't know why I thought # might have been a comment char, seems to be a common > one though =P Maybe it was that crazy Neil G's idea. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 20:14:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA59674 for dynarec-outgoing; Mon, 24 Sep 2001 20:14:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Sep 2001 20:20:46 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: 6502 script In-Reply-To: <20010924195235.V45058-100000@beacon.synthcom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Mon, 24 Sep 2001, Neil Bradley wrote: > > having to specify it for each and every instruction. This is mostly for > > disassembly output formats, to tell it how to speak intel or at&t syntax for > > example. > > You'd reverse the order of operands. Should be bonehead easy to do. > You'll be able to do commands with an orthogonal interface, but it won't > be possible to do addressing modes in a nice, neat order. But if you can > come up with a better solution that would allow Operand order wasn't what I was thinking of as much as the difference between [disp + base * scale + index] vs disp(index,base,scale) > > A parser shouldn't be too difficult, at least to get the basics down. Little > > details like the operand specification stuff shouldn't make much of a difference > > to the parser in the end. That's part of what the |'s are for =) > > Yes, but depending upon where you are in the script, the lexical analysis > means different things. Plus, what are you going to build? We haven't > figured out parse tree stuff. Well, a lexical analyzer that handles different things in different portions of the script isn't a problem, as the format I came up with for the ubercore has to handle that =P As for what it would create, since most of it is generating tables of various forms, it's almost just a text processing operation. Come to think of it, perl might handle things quite well, if I knew perl well enough to write code in it. One thing that just popped up though was cycle timings. How does one specify things like the extra cycle on a page wrap for indexed modes, or extra cycle on a jump to another page that the 6502 does? It isn't quite an orthogonal situation, as it only affects read instructions, not RMW or store's. > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base MIDI channel are belong to us. > Synthcom Systems, Inc. > ICQ #29402898 John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 20:44:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA59704 for dynarec-outgoing; Mon, 24 Sep 2001 20:44:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Sep 2001 04:48:59 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <16145801098.20010925044859@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: 6502 script In-Reply-To: <20010924195235.V45058-100000@beacon.synthcom.com> References: <20010924195235.V45058-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> Maybe it was that crazy Neil G's idea. ;-) Just call me "Hippie Neil". Make love not war man! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 21:03:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA59730 for dynarec-outgoing; Mon, 24 Sep 2001 21:03:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 25 Sep 01 00:06:08 -0400 Message-Id: <3.0.5.32.20010924210720.0089cca0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 24 Sep 2001 21:07:20 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: Re[2]: DYNAREC: 6502 script In-Reply-To: <16145801098.20010925044859@dynarec.com> References: <20010924195235.V45058-100000@beacon.synthcom.com> <20010924195235.V45058-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 04:48 AM 9/25/01 +0100, you wrote: >Hiya, > >NB> Maybe it was that crazy Neil G's idea. ;-) > >Just call me "Hippie Neil". Make love not war man! ;) You do shower, though... right? ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 21:06:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA59744 for dynarec-outgoing; Mon, 24 Sep 2001 21:06:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 25 Sep 01 00:08:58 -0400 Message-Id: <3.0.5.32.20010924210956.008a8100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 24 Sep 2001 21:09:56 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 6502 script In-Reply-To: References: <20010924195235.V45058-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 08:20 PM 9/24/01 -0700, you wrote: >On Mon, 24 Sep 2001, Neil Bradley wrote: > >> > having to specify it for each and every instruction. This is mostly for >> > disassembly output formats, to tell it how to speak intel or at&t syntax for >> > example. >> >> You'd reverse the order of operands. Should be bonehead easy to do. >> You'll be able to do commands with an orthogonal interface, but it won't >> be possible to do addressing modes in a nice, neat order. But if you can >> come up with a better solution that would allow > >Operand order wasn't what I was thinking of as much as the difference >between [disp + base * scale + index] vs disp(index,base,scale) Can the disassembly be passed back to an assembler? If we want to support that, we'd have to make things configurable. Otherwise, I think [disp+base*scale+index] is much nicer than the alternative. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 21:07:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA59754 for dynarec-outgoing; Mon, 24 Sep 2001 21:07:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Sep 2001 05:12:45 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Business X-Priority: 3 (Normal) Message-ID: <847226948.20010925051245@dynarec.com> To: dynarec@dynarec.com Subject: Re[4]: DYNAREC: 6502 script In-Reply-To: <3.0.5.32.20010924210720.0089cca0@mailandnews.com> References: <20010924195235.V45058-100000@beacon.synthcom.com> <20010924195235.V45058-100000@beacon.synthcom.com> <3.0.5.32.20010924210720.0089cca0@mailandnews.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, B> You do shower, though... right? ;) I said I was a hippie, not French! ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 24 23:33:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA59874 for dynarec-outgoing; Mon, 24 Sep 2001 23:31:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200109250634.f8P6YVq28377@pons.ac.upc.es> Subject: Re: Re[3]: DYNAREC: Breaking the Silence In-Reply-To: <20010924144637.V42765-100000@beacon.synthcom.com> "from Neil Bradley at Sep 24, 2001 02:47:17 pm" To: dynarec@dynarec.com Date: Tue, 25 Sep 2001 08:34:31 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > That means Spain had to go to war with France? Bah! I will better > > shut up ... > > I'd support Spain going to war with France for this reason. ;-) > We would thanks a couple of US carriers as help ;). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 25 00:08:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA59918 for dynarec-outgoing; Tue, 25 Sep 2001 00:07:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Sep 2001 00:17:44 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: 6502 script In-Reply-To: Message-ID: <20010925001251.G45058-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > You'll be able to do commands with an orthogonal interface, but it won't > > be possible to do addressing modes in a nice, neat order. But if you can > > come up with a better solution that would allow > Operand order wasn't what I was thinking of as much as the difference > between [disp + base * scale + index] vs disp(index,base,scale) I don't see why it'd be a problem with the existing format. Just change the layout. > > Yes, but depending upon where you are in the script, the lexical analysis > > means different things. Plus, what are you going to build? We haven't > > figured out parse tree stuff. > Well, a lexical analyzer that handles different things in different > portions of the script isn't a problem, as the format I came up with for > the ubercore has to handle that =P It depends. ;-) 11ccc100 (16*a) |CALL|c=CC3, a=IMM16|cc=CC3||10|17|C; // CALL cc, addr Does the lexical analyzer recognize that 11ccc100 (16*a) is just a bunch of bits? Does 16*a get expanded to aaaaaaaaaaaaaaaa? I'd really hate it to tokenize "11", "ccc", "100" "(" "16" "*" "a" ")" and have to reassemble it at the grammar level. Makes things quite a bit more difficult. My point is the lexical approach would have to figure out what context it is in and make appropriate adjustments for ease of pain on the grammar side of things. > As for what it would create, since most of it is generating tables of > various forms, it's almost just a text processing operation. Come to think > of it, perl might handle things quite well, if I knew perl well enough to > write code in it. Um... no. Perl is evil for this sort of thing that we'll be doing. I'd rather keep it a C project only. It's more than just tables. It'll be parse and expression trees, too. It's not as straightforward as you might think. > One thing that just popped up though was cycle timings. How does one > specify things like the extra cycle on a page wrap for indexed modes, or > extra cycle on a jump to another page that the 6502 does? It isn't quite > an orthogonal situation, as it only affects read instructions, not RMW or > store's. It's assumed that the cover emitter will make any adjustments like page boundary timing. I'd just use the primary cycle timing as the base and add to it if it violates a page boundary. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 25 00:47:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA59997 for dynarec-outgoing; Tue, 25 Sep 2001 00:47:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Sep 2001 00:53:47 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: 6502 script In-Reply-To: <20010925001251.G45058-100000@beacon.synthcom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Tue, 25 Sep 2001, Neil Bradley wrote: > > Operand order wasn't what I was thinking of as much as the difference > > between [disp + base * scale + index] vs disp(index,base,scale) > > I don't see why it'd be a problem with the existing format. Just change > the layout. Yeah, thought about it some more after this and saw that. Might be nice to make it quickly switchable, though keeping two scripts around for x86 wouldn't be out of the question. > > Well, a lexical analyzer that handles different things in different > > portions of the script isn't a problem, as the format I came up with for > > the ubercore has to handle that =P > > It depends. ;-) > > 11ccc100 (16*a) |CALL|c=CC3, a=IMM16|cc=CC3||10|17|C; // CALL cc, addr > > Does the lexical analyzer recognize that 11ccc100 (16*a) is just a bunch > of bits? Does 16*a get expanded to aaaaaaaaaaaaaaaa? I'd really hate it to > tokenize "11", "ccc", "100" "(" "16" "*" "a" ")" and have to reassemble it > at the grammar level. Makes things quite a bit more difficult. My point is > the lexical approach would have to figure out what context it is in and > make appropriate adjustments for ease of pain on the grammar side of > things. I'll see about running through some of that stuff tomorrow, flex can make mincemeat out of a lot of stuff. Don't think a bison parser for this thing would be too difficult either, as there isn't much complexity to things. The operand stuff probably wants to be done in the lexer though, to handle the formatting. > Um... no. Perl is evil for this sort of thing that we'll be doing. I'd > rather keep it a C project only. It's more than just tables. It'll be > parse and expression trees, too. It's not as straightforward as you might > think. hmm, parse trees to match the source opcode, expression trees to handle things like the REL8 operand from your Z80 script? > It's assumed that the cover emitter will make any adjustments like page > boundary timing. I'd just use the primary cycle timing as the base and add > to it if it violates a page boundary. Ok, makes sense. > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base MIDI channel are belong to us. > Synthcom Systems, Inc. > ICQ #29402898 John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Sep 25 00:58:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA60014 for dynarec-outgoing; Tue, 25 Sep 2001 00:58:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 25 Sep 2001 01:08:11 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: 6502 script Message-ID: <20010925010801.I45058-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I don't see why it'd be a problem with the existing format. Just change > > the layout. > Yeah, thought about it some more after this and saw that. Might be nice to > make it quickly switchable, though keeping two scripts around for x86 > wouldn't be out of the question. Nor would it be too worthwhile. If you're interested in outputting something that's consumable via modified COFF, just have it emit something that NASM could read. > > at the grammar level. Makes things quite a bit more difficult. My point is > > the lexical approach would have to figure out what context it is in and > > make appropriate adjustments for ease of pain on the grammar side of > > things. > I'll see about running through some of that stuff tomorrow, flex can make > mincemeat out of a lot of stuff. Yuck. Flex/lex are far too complex for this, generate fugly code, and aren't necessarily available on all platforms equally. I really don't like relying on tools that I don't really have to, and the flex/bison stuff is just plain kludgy > Don't think a bison parser for this thing > would be too difficult either, as there isn't much complexity to things. > The operand stuff probably wants to be done in the lexer though, to handle > the formatting. Yes. Spacing will have to be turned on and off at the lexical level on some of the columns. BTW, I already have a lexer that'll give us what we need - with a couple of minor mods, of course. > > rather keep it a C project only. It's more than just tables. It'll be > > parse and expression trees, too. It's not as straightforward as you might > hmm, parse trees to match the source opcode, expression trees to handle > things like the REL8 operand from your Z80 script? Yes, that's a good example. Plus, there are CPUs we'll want to do "funky math" with and I'm sure we'll also want to extend it. Plus we also need to keep a big list of source covers so it can be fetched/looked up easily. Again, as I mentioned, it's really too early for us to begin coding this. We still haven't nailed down the format just yet. It needs at least a couple of full runs until we know we've shaken out the larger flaws. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 26 01:33:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA61315 for dynarec-outgoing; Wed, 26 Sep 2001 01:32:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 26 Sep 2001 01:38:26 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: DYNAREC: MIPS32 script Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="8323328-1399551756-1001493506=:408" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --8323328-1399551756-1001493506=:408 Content-Type: TEXT/PLAIN; charset=US-ASCII A script for the MIPS32 arch is attached, but it isn't quite adherant to the syntax yet for a couple of reasons. Timing on this thing is rather odd, as just about every instruction executes in a single cycle, with one set of exceptions: jumps. Jumps take two cycles, but will execute the instruction following them (RISC-y branch delay slot). There is a deprecated set of instructions that will nullify the delay slot op if the branch is not taken, but they're listed as "will be removed in a future revision of the spec". The script doesn't get as specific as the mips manual on undefined operations -- they list a number of different kinds, like reserved for future use, valid encoding of a higher-order mips ISA level (read: it's a MIPS64 instruction), avaliable to licensed MIPS partners, EJTAG support instruction (optional, left em in though), and reserved for an application specific extension (MIPS-3D, MIPS16, etc). I say undefined is undefined =P The FPU portions of this thing are where the main bits of syntax stretching occur, the two biggies are shown by this: FMT = {5, keys = {S=0, D=1, W=4}}; 010001 0000x 00000 (s*5) (d*5) 001110 | CEIL.W.f | f=FMT, d=FREG, s=FREG |||1||N They define 3 formats, but use a 5 bit field to select them. S & D are single and double floating point, W is 32 bit fixed point. A number of operations are only defined for the S and D formats, so I suggest that fields that don't fit the size described in operands get zero or sign extended as appropriate. If this already happened, great =P It would be really, really handy to be able to have it invalidate instructions that have key values in them that are not listed, in this case it can't happen, but in 010001 (f*5) 00000 (s*5) (d*5) 000110 | MOV.f | f=FMT, d=FREG, s=FREG |||1||N it can. The OP.f thing would be extremely handy to have for this one, though if it's gotta go, it's gotta go. Ideally, that single line would create entries for each of MOV.S, MOV.D, and MOV.W in the decision trees. Hmm, an alternate syntax that just came to mind would be something like MOV.f=FMT | d=FREG, s=FREG | ... -- this would get the f out of the operands area, making it easier to name things, and parallels the way things work in the operands area, where c=OPTYPE is replaced more or less textually. Some form of #if VALUE / #endif construct would come in REAL handy for mips and other multi-level descriptions like the x86. I'd say that if you want to support both 3DNow! and MMX with the same script it's probably needed, and the mips throws an even more fun bit of stuff at you. The MIPS32 architecture is extremely modular, it allows up to 4 coprocessors to be attached. COP0 is usually the system control one, in charge of things like virtual memory and whatnot. COP1 is usually the FPU, but not always. COP2-3 are implementation defined. The things you can do to a coprocessor are: move integer/fp values to/from a coprocessor register, numbered 0-32, with an optional 3 bit 'sel' field. The sel field is not accessible via the normal syntax, it's accessed either by handcoding the instruction, or (much more likely) defining some macros in one's assembler. branch on a condition code from the coprocessor execute a coprocessor instruction, specified by a 25 bit code Where this causes problems is that processors that predate the MIPS32 spec (including the R3000's) have different COP0 instructions, and once you start throwing in the other three, things get extreme. The PSX for example, has no FPU. cop0 is the System Control one, don't think it quite follows the mips spec. cop2 is the GTE, the transform chip. cop1 and cop3 are unconnected according to the doc I have. This is a situation where the ability to #ifdef/#endif blocks out depending on the setup would be handy, and some form of #include would be even handier. Selecting a specific subset of x86 would be another use for this (8086 real mode, 80286, 80386+ 16 bit code, 80386+ 32 bit code... It would make proper handling of the operand size override prefix doable. /me sleep now =P John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --8323328-1399551756-1001493506=:408 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="mips32.script" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: W2NwdWluZm9dDQpOYW1lID0gTUlQUzMyDQpJbnN0cnVjdGlvbkdyYW51bGFy aXR5ID0gMzI7DQoNCltmbGFnc10NCg0KW29wZXJhbmRzXQ0KUkVHICAgICA9 IHs1LCBrZXlzID0ge3IwLCByMSwgcjIsIHIzLCByNCwgcjUsIHI2LCByNywN CiAgICAgICAgICAgICAgICAgICAgICByOCwgcjksIHIxMCwgcjExLCByMTIs IHIxMywgcjE0LCByMTUsDQogICAgICAgICAgICAgICAgICAgICAgcjE2LCBy MTcsIHIxOCwgcjE5LCByMjAsIHIyMSwgcjIyLCByMjMsDQogICAgICAgICAg ICAgICAgICAgICAgcjI0LCByMjUsIHIyNiwgcjI3LCByMjgsIHIyOSwgcjMw LCByMzEsIH19Ow0KRlJFRyAgICA9IHs1LCB1bnNpZ25lZH07DQpJTU0xNiAg ID0gezE2LCBzaWduZWR9Ow0KT0ZTMTYgICA9IHsxOCwgKDE2LCBzaWduZWQp IDw8IDJ9Ow0KT0ZTMTYgICA9IHsyOCwgKDI2LCBzaWduZWQpIDw8IDJ9Ow0K U0hJRlQgICA9IHs1LCB1bnNpZ25lZH07DQpISU5UICAgID0gezUsIGtleXMg PSB7REVGPTB9fTsNCkNDICAgICAgPSB7MywgdW5zaWduZWR9Ow0KLypDQyAg ICA9IHszLCBrZXlzID0ge0Y9MCwgVU49MSwgRVE9MiwgVUVRPTMsIE9MVD00 LCBVTFQ9NSwgT0xFPTYsIFVMRT03LA0KICAgICAgICAgICAgICAgICAgICAg IFNGPTgsIE5HTEU9OSwgU0VRPTEwLCBOR0w9MTEsIExUPTEyLCBOR0U9MTMs IExFPTE0LCBOR1Q9MTV9OyovDQpORCAgICAgID0gezEsIHVuc2lnbmVkfTsN ClRGICAgICAgPSB7MSwgdW5zaWduZWR9Ow0KQ09QICAgICA9IHsyLCB1bnNp Z25lZH07DQpDT1BGICAgID0gezQsIHVuc2lnbmVkfTsNCkZNVCAgICAgPSB7 NSwga2V5cyA9IHtTPTAsIEQ9MSwgVz00fX07DQpXQ09ERSAgID0gezE5LCB1 bnNpZ25lZH07DQpCQ09ERSAgID0gezIwLCB1bnNpZ25lZH07DQpUQ09ERSAg ID0gezEwLCB1bnNpZ25lZH07DQpDRlVOQyAgID0gezI1LCB1bnNpZ25lZH07 DQpTRUwgICAgID0gezMsIHVuc2lnbmVkfTsNCg0KW2luc3RydWN0aW9uc10N Ci8qIA0KIEkgdHlwZSANCnh4eHh4eCAocyo1KSAodCo1KSAoaSoxNikgfCB8 IHM9UkVHLCB0PVJFRywgaT1JTU0xNiB8fHwxfHxODQoNCiBKIHR5cGUgDQp4 eHh4eHggKGkqMjYpIHwgfCBpPU9GUzE2IHx8fCB8IHxUDQoNCiBSIHR5cGUg DQp4eHh4eHggKHMqNSkgKHQqNSkgKGQqNSkgKGEqNSkgZmZmZmYgfCB8IGQ9 UkVHLCBzPVJFRywgdD1SRUcsIGE9U0hJRlQgfHx8MXx8Tg0KDQogRlBVIEkg dHlwZSANCnh4eHh4eCAoYio1KSAoZio1KSAoaSoxNikgfCB8IGI9UkVHLCBm PUZSRUcsIGk9SU1NMTYgfHwxfHxODQoNCiBGUFUgUiB0eXBlIA0KQ09QMSAo Zio1KSAodCo1KSAocyo1KSAoZCo1KSBmZmZmZiB8IHwgZj1GTVQsIGQ9RlJF Rywgcz1GUkVHLCB0PUZSRUcgfHx8MXx8Tg0KDQogRlBVIFJJIHR5cGUgDQpD T1AxIHNzc3NzICh0KjUpIChzKjUpICgwKjExKSB8IHwgdD1SRUcsIHM9RlJF RyB8fHwxfHxODQoNCiBGUFUgQ0MtSSANCkNPUDEgQkNDMSBjY2MgbiB0IChp KjE2KSAgfCB8IGM9Q0MsIG49TkQsIHQ9VEYsIGk9SU1NMTYgfHx8IHwgfEMN Cg0KIEZQVSBDb21wYXJlIA0KQ09QMSAoZio1KSAodCo1KSAocyo1KSAoYyoz KSAwMCBmZmZmZmYgfCB8IGY9Rk1ULCB0PUZSRUcsIHM9RlJFRywgYz1DQyB8 fHwxfHxODQoNCiBGUFUgTU9WQ0YgDQpDT1AxIChmKjUpIChjKjMpIDAgdCAo cyo1KSAoZCo1KSBNT1ZDRiB8IHwgZj1GTVQsIGM9Q0MsIHM9RlJFRywgZD1G UkVHIHx8fDF8fE4NCg0KIEZQVSBNT1ZDSSANClNQRUNJQUwgKHMqNSkgKGMq MykgMCB0IChkKjUpICgwKjUpIE1PVkNJIHwgfCBzPVJFRywgYz1DQywgdD1U RiwgZD1SRUcgfHx8MXx8Tg0KKi8NCg0KLyogU1BFQ0lBTCAqLw0KKDAqMzIp IHwgTk9QIHx8fHwxfHxODQooMCoyNikgMSAwMDAwMDAgfCBTU05PUCB8fHx8 MXx8Tg0KMDAwMDAwIDAwMDAwICh0KjUpIChkKjUpIChhKjUpIDAwMDAwMCB8 IFNMTCB8IGQ9UkVHLCB0PVJFRywgYT1TSElGVCB8fHwxfHxODQowMDAwMDAg KHMqNSkgKGMqMykgMCAwIChkKjUpICgwKjUpIDAwMDAwMSB8IE1PVkYgfCBk PVJFRywgcz1SRUcsIGM9Q0MgfHx8MXx8Tg0KMDAwMDAwIChzKjUpIChjKjMp IDAgMSAoZCo1KSAoMCo1KSAwMDAwMDEgfCBNT1ZUIHwgZD1SRUcsIHM9UkVH LCBjPUNDIHx8fDF8fE4NCjAwMDAwMCAwMDAwMCAodCo1KSAoZCo1KSAoYSo1 KSAwMDAwMTAgfCBTUkwgfCBkPVJFRywgdD1SRUcsIGE9U0hJRlQgfHx8MXx8 Tg0KMDAwMDAwIDAwMDAwICh0KjUpIChkKjUpIChhKjUpIDAwMDAxMSB8IFNS QSB8IGQ9UkVHLCB0PVJFRywgYT1TSElGVCB8fHwxfHxODQowMDAwMDAgKHMq NSkgKHQqNSkgKGQqNSkgMDAwMDAgMDAwMTAwIHwgU0xMViB8IGQ9UkVHLCBz PVJFRywgdD1SRUcgfHx8MXx8Tg0KMDAwMDAwIChzKjUpICh0KjUpIChkKjUp IDAwMDAwIDAwMDExMCB8IFNSTFYgfCBkPVJFRywgcz1SRUcsIHQ9UkVHIHx8 fDF8fE4NCjAwMDAwMCAocyo1KSAodCo1KSAoZCo1KSAwMDAwMCAwMDAxMTEg fCBTUkFWIHwgZD1SRUcsIHM9UkVHLCB0PVJFRyB8fHwxfHxODQoNCjAwMDAw MCAocyo1KSAoMCoxMCkgKGEqNSkgMDAxMDAwIHwgSlIgfCBzPVJFRywgYT1I SU5UIHx8fDF8fE4NCjAwMDAwMCAocyo1KSAwMDAwMCAoZCo1KSAoYSo1KSAw MDEwMDEgfCBKQUxSIHwgZD1SRUcsIHM9UkVHLCBhPUhJTlQgfHx8MXx8Tg0K MDAwMDAwIChzKjUpICh0KjUpIChkKjUpIDAwMDAwIDAwMTAxMCB8IE1PVlog fCBkPVJFRywgcz1SRUcsIHQ9UkVHIHx8fDF8fE4NCjAwMDAwMCAocyo1KSAo dCo1KSAoZCo1KSAwMDAwMCAwMDEwMTEgfCBNT1ZOIHwgZD1SRUcsIHM9UkVH LCB0PVJFRyB8fHwxfHxODQowMDAwMDAgKGMqMjApIDAwMTEwMCB8IFNZU0NB TEwgfCBjPUJDT0RFIHx8fDF8fE4NCjAwMDAwMCAoYyoyMCkgMDAxMTAxIHwg QlJFQUsgfCBjPUJDT0RFIHx8fDF8fE4NCjAwMDAwMCAoMCoxNSkgKGEqNSkg MDAxMTExIHwgU1lOQyB8IGE9U1RZUEV8fHwxfHxODQoNCjAwMDAwMCAoMCox MCkgKGQqNSkgMDAwMDAgMDEwMDAwIHwgTUZISSB8IGQ9UkVHIHx8fDF8fE4N CjAwMDAwMCAocyo1KSAoMCoxNSkgMDEwMDAxIHwgTVRISSB8IHM9UkVHIHx8 fDF8fE4NCjAwMDAwMCAoMCoxMCkgKGQqNSkgMDAwMDAgMDEwMDEwIHwgTUZM TyB8IGQ9UkVHIHx8fDF8fE4NCjAwMDAwMCAocyo1KSAoMCoxNSkgMDEwMDEx IHwgTVRMTyB8IHM9UkVHIHx8fDF8fE4NCg0KMDAwMDAwIChzKjUpICh0KjUp ICgwKjEwKSAwMTEwMDAgfCBNVUxUIHwgcz1SRUcsIHQ9UkVHIHx8fDF8fE4N CjAwMDAwMCAocyo1KSAodCo1KSAoMCoxMCkgMDExMDAxIHwgTVVMVFUgfCBz PVJFRywgdD1SRUcgfHx8MXx8Tg0KMDAwMDAwIChzKjUpICh0KjUpICgwKjEw KSAwMTEwMTAgfCBESVYgfCBkPVJFRywgcz1SRUcsIHQ9UkVHIHx8fDF8fE4N CjAwMDAwMCAocyo1KSAodCo1KSAoMCoxMCkgMDExMDExIHwgRElWVSB8IGQ9 UkVHLCBzPVJFRywgdD1SRUcgfHx8MXx8Tg0KDQowMDAwMDAgKHMqNSkgKHQq NSkgKGQqNSkgMDAwMDAgMTAwMDAwIHwgQUREIHwgZD1SRUcsIHM9UkVHLCB0 PVJFRyB8fHwxfHxODQowMDAwMDAgKHMqNSkgKHQqNSkgKGQqNSkgMDAwMDAg MTAwMDAxIHwgQUREVSB8IGQ9UkVHLCBzPVJFRywgdD1SRUcgfHx8MXx8Tg0K MDAwMDAwIChzKjUpICh0KjUpIChkKjUpIDAwMDAwIDEwMDAxMCB8IFNVQiB8 IGQ9UkVHLCBzPVJFRywgdD1SRUcgfHx8MXx8Tg0KMDAwMDAwIChzKjUpICh0 KjUpIChkKjUpIDAwMDAwIDEwMDAxMSB8IFNVQlUgfCBkPVJFRywgcz1SRUcs IHQ9UkVHIHx8fDF8fE4NCjAwMDAwMCAocyo1KSAodCo1KSAoZCo1KSAwMDAw MCAxMDAxMDAgfCBBTkQgfCBkPVJFRywgcz1SRUcsIHQ9UkVHIHx8fDF8fE4N CjAwMDAwMCAocyo1KSAodCo1KSAoZCo1KSAwMDAwMCAxMDAxMDEgfCBPUiB8 IGQ9UkVHLCBzPVJFRywgdD1SRUcgfHx8MXx8Tg0KMDAwMDAwIChzKjUpICh0 KjUpIChkKjUpIDAwMDAwIDEwMDExMCB8IFhPUiB8IGQ9UkVHLCBzPVJFRywg dD1SRUcgfHx8MXx8Tg0KMDAwMDAwIChzKjUpICh0KjUpIChkKjUpIDAwMDAw IDEwMDExMSB8IE5PUiB8IGQ9UkVHLCBzPVJFRywgdD1SRUcgfHx8MXx8Tg0K DQowMDAwMDAgKHMqNSkgKHQqNSkgKGQqNSkgMDAwMDAgMTAxMDEwIHwgU0xU IHwgZD1SRUcsIHM9UkVHLCB0PVJFRyB8fHwxfHxODQowMDAwMDAgKHMqNSkg KHQqNSkgKGQqNSkgMDAwMDAgMTAxMDExIHwgU0xUVSB8IGQ9UkVHLCBzPVJF RywgdD1SRUcgfHx8MXx8Tg0KDQowMDAwMDAgKHMqNSkgKHQqNSkgKGMqMTAp IDExMDAwMCB8IFRHRSB8IHM9UkVHLCB0PVJFRywgYz1UQ09ERSB8fHwxfHxO DQowMDAwMDAgKHMqNSkgKHQqNSkgKGMqMTApIDExMDAwMSB8IFRHRVUgfCBz PVJFRywgdD1SRUcsIGM9VENPREUgfHx8MXx8Tg0KMDAwMDAwIChzKjUpICh0 KjUpIChjKjEwKSAxMTAwMTAgfCBUTFQgfCBzPVJFRywgdD1SRUcsIGM9VENP REUgfHx8MXx8Tg0KMDAwMDAwIChzKjUpICh0KjUpIChjKjEwKSAxMTAwMTEg fCBUTFRVIHwgcz1SRUcsIHQ9UkVHLCBjPVRDT0RFIHx8fDF8fE4NCjAwMDAw MCAocyo1KSAodCo1KSAoYyoxMCkgMTEwMTAwIHwgVEVRIHwgcz1SRUcsIHQ9 UkVHLCBjPVRDT0RFIHx8fDF8fE4NCjAwMDAwMCAocyo1KSAodCo1KSAoYyox MCkgMTEwMTEwIHwgVE5FIHwgcz1SRUcsIHQ9UkVHLCBjPVRDT0RFIHx8fDF8 fE4NCg0KLyogUkVHSU1NICovDQoNCjAwMDAwMSAocyo1KSAwMDAwMCAoaSox NikgfCBCTFRaIHwgcz1SRUcsIGk9T0ZTMTYgfHx8Mnx8Qw0KMDAwMDAxIChz KjUpIDAwMDAxIChpKjE2KSB8IEJHRVogfCBzPVJFRywgaT1PRlMxNiB8fHwy fHxDDQowMDAwMDEgKHMqNSkgMDAwMTAgKGkqMTYpIHwgQkxUWkwgfCBzPVJF RywgaT1PRlMxNiB8fHwyfHxDDQowMDAwMDEgKHMqNSkgMDAwMTEgKGkqMTYp IHwgQkdFWkwgfCBzPVJFRywgaT1PRlMxNiB8fHwyfHxDDQoNCjAwMDAwMSAo cyo1KSAwMTAwMCAoaSoxNikgfCBUR0VJIHwgcz1SRUcsIGk9SU1NMTYgfHx8 MXx8Tg0KMDAwMDAxIChzKjUpIDAxMDAxIChpKjE2KSB8IFRHRUlVIHwgcz1S RUcsIGk9SU1NMTYgfHx8MXx8Tg0KMDAwMDAxIChzKjUpIDAxMDEwIChpKjE2 KSB8IFRMVEkgfCBzPVJFRywgaT1JTU0xNiB8fHwxfHxODQowMDAwMDEgKHMq NSkgMDEwMTEgKGkqMTYpIHwgVExUSVUgfCBzPVJFRywgaT1JTU0xNiB8fHwx fHxODQowMDAwMDEgKHMqNSkgMDExMDAgKGkqMTYpIHwgVEVRSSB8IHM9UkVH LCBpPUlNTTE2IHx8fDF8fE4NCjAwMDAwMSAocyo1KSAwMTExMCAoaSoxNikg fCBUTkVJIHwgcz1SRUcsIGk9SU1NMTYgfHx8MXx8Tg0KDQowMDAwMDEgKHMq NSkgMTAwMDAgKGkqMTYpIHwgQkxUWkFMIHwgcz1SRUcsIGk9T0ZTMTYgfHx8 Mnx8Qw0KMDAwMDAxIChzKjUpIDEwMDAxIChpKjE2KSB8IEJHRVpBTCB8IHM9 UkVHLCBpPU9GUzE2IHx8fDJ8fEMNCjAwMDAwMSAwMDAwMCAxMDAwMSAoaSox NikgfCBCQUwgfCBpPU9GUzE2IHx8fDJ8fEMNCjAwMDAwMSAocyo1KSAxMDAx MCAoaSoxNikgfCBCTFRaQUxMIHwgcz1SRUcsIGk9T0ZTMTYgfHx8Mnx8Qw0K MDAwMDAxIChzKjUpIDEwMDExIChpKjE2KSB8IEJHRVpBTEwgfCBzPVJFRywg aT1PRlMxNiB8fHwyfHxDDQoNCi8qIEotdHlwZXMgKi8NCjAwMDAxMCAoaSoy NikgfCBKIHwgaT1PRlMyNiB8fHwyfHxUDQowMDAwMTEgKGkqMjYpIHwgSkFM IHwgaT1PRlMyNiB8fHwyfHxUDQowMDAxMDAgKDAqNSkgKDAqNSkgKGkqMTYp IHwgQiB8IGk9T0ZTMTYgfHx8Mnx8Qw0KMDAwMTAwIChzKjUpICh0KjUpIChp KjE2KSB8IEJFUSB8IHM9UkVHLCB0PVJFRywgaT1PRlMxNiB8fHwyfHxDDQow MDAxMDEgKHMqNSkgKHQqNSkgKGkqMTYpIHwgQk5FIHwgcz1SRUcsIHQ9UkVH LCBpPU9GUzE2IHx8fDJ8fEMNCjAwMDExMCAocyo1KSAwMDAwMCAoaSoxNikg fCBCTEVaIHwgcz1SRUcsIGk9T0ZTMTYgfHx8Mnx8Qw0KMDAwMTExIChzKjUp IDAwMDAwIChpKjE2KSB8IEJHVFogfCBzPVJFRywgaT1PRlMxNiB8fHwyfHxD DQoNCi8qIEktdHlwZXMgKi8NCjAwMTAwMCAocyo1KSAodCo1KSAoaSoxNikg fCBBRERJIHwgdD1SRUcsIHM9UkVHLCBpPUlNTTE2IHx8fDF8fE4NCjAwMTAw MSAocyo1KSAodCo1KSAoaSoxNikgfCBBRERJVSB8IHQ9UkVHLCBzPVJFRywg aT1JTU0xNiB8fHwxfHxODQowMDEwMTAgKHMqNSkgKHQqNSkgKGkqMTYpIHwg U0xUSSB8IHQ9UkVHLCBzPVJFRywgaT1JTU0xNiB8fHwxfHxODQowMDEwMTEg KHMqNSkgKHQqNSkgKGkqMTYpIHwgU0xUSVUgfCB0PVJFRywgcz1SRUcsIGk9 SU1NMTYgfHx8MXx8Tg0KMDAxMTAwIChzKjUpICh0KjUpIChpKjE2KSB8IEFO REkgfCB0PVJFRywgcz1SRUcsIGk9SU1NMTYgfHx8MXx8Tg0KMDAxMTAxIChz KjUpICh0KjUpIChpKjE2KSB8IE9SSSB8IHQ9UkVHLCBzPVJFRywgaT1JTU0x NiB8fHwxfHxODQowMDExMTAgKHMqNSkgKHQqNSkgKGkqMTYpIHwgWE9SSSB8 IHQ9UkVHLCBzPVJFRywgaT1JTU0xNiB8fHwxfHxODQowMDExMTEgMDAwMDAg KHQqNSkgKGkqMTYpIHwgTFVJIHwgdD1SRUcsIGk9SU1NMTYgfHx8MXx8Tg0K DQovKiAwMTAwMDAgQ09QMCAqLw0KMDEwMDAwIDAwMDAwICh0KjUpIChkKjUp ICgwKjgpIChzKjMpIHwgTUZDMCB8IHQ9UkVHLCBkPVJFRywgcz1TRUwgfHx8 MXx8Tg0KMDEwMDAwIDAwMTAwICh0KjUpIChkKjUpICgwKjgpICh4KjMpIHwg TVRDMCB8IHQ9UkVHLCBkPVJFRywgeD1TRUwgfHx8MXx8Tg0KDQowMTAwMDAg MSAoMCoxOSkgMDAwMDAxIHwgVExCUiB8fHx8MXx8Tg0KMDEwMDAwIDEgKDAq MTkpIDAwMDAxMCB8IFRMQldJIHx8fHwxfHxODQowMTAwMDAgMSAoMCoxOSkg MDAwMTEwIHwgVExCV1IgfHx8fDF8fE4NCjAxMDAwMCAxICgwKjE5KSAwMDEw MDAgfCBUTEJQIHx8fHwxfHxODQowMTAwMDAgMSAoMCoxOSkgMDExMDAwIHwg RVJFVCB8fHx8MXx8Tg0KMDEwMDAwIDEgKDAqMTkpIDAxMTExMSB8IERFUkVU IHx8fHwxfHxODQowMTAwMDAgMSAodCoxOSkgMTAwMDAwIHwgV0FJVCB8IHQ9 V0NPREUsIHx8fDF8fE4NCg0KLyogMDEwMDAxIENPUDEgKi8NCjAxMDAwMSAw MDAwMCAodCo1KSAoZCo1KSAoMCoxMSkgfCBNRkMxIHwgdD1SRUcsIGQ9RlJF RyB8fHwxfHxODQowMTAwMDEgMDAwMTAgKHQqNSkgKGQqNSkgKDAqMTEpIHwg Q0ZDMSB8IHQ9UkVHLCBkPUZSRUcgfHx8MXx8Tg0KMDEwMDAxIDAwMTAwICh0 KjUpIChkKjUpICgwKjExKSB8IE1UQzEgfCB0PVJFRywgZD1SRUcgfHx8MXx8 Tg0KMDEwMDAxIDAwMTEwICh0KjUpIChkKjUpICgwKjExKSB8IENUQzEgfCB0 PVJFRywgZD1SRUcgfHx8MXx8Tg0KDQowMTAwMDEgMDEwMDAgMDAwMDAgKGkq MTYpIHwgQkMxRiB8IGk9SU1NMTYgfHx8Mnx8Qw0KMDEwMDAxIDAxMDAwIGNj YzAwIChpKjE2KSB8IEJDMUYgfCBjPUNDLCBpPUlNTTE2IHx8fDJ8fEMNCjAx MDAwMSAwMTAwMCAwMDAwMSAoaSoxNikgfCBCQzFUIHwgaT1JTU0xNiB8fHwy fHxDDQowMTAwMDEgMDEwMDAgY2NjMDEgKGkqMTYpIHwgQkMxVCB8IGM9Q0Ms IGk9SU1NMTYgfHx8Mnx8Qw0KMDEwMDAxIDAxMDAwIDAwMDEwIChpKjE2KSB8 IEJDMUZMIHwgaT1JTU0xNiB8fHwyfHxDDQowMTAwMDEgMDEwMDAgY2NjMTAg KGkqMTYpIHwgQkMxRkwgfCBjPUNDLCBpPUlNTTE2IHx8fDJ8fEMNCjAxMDAw MSAwMTAwMCAwMDAxMSAoaSoxNikgfCBCQzFUTCB8IGk9SU1NMTYgfHx8Mnx8 Qw0KMDEwMDAxIDAxMDAwIGNjYzExIChpKjE2KSB8IEJDMVRMIHwgYz1DQywg aT1JTU0xNiB8fHwyfHxDDQoNCi8qIFMsIEQsIFcgKi8NCjAxMDAwMSAoZio1 KSAodCo1KSAocyo1KSAoZCo1KSAwMDAwMDAgfCBBREQuZiB8IGY9Rk1ULCBk PUZSRUcsIHM9RlJFRywgdD1GUkVHIHx8fDF8fE4NCjAxMDAwMSAoZio1KSAo dCo1KSAocyo1KSAoZCo1KSAwMDAwMDEgfCBTVUIuZiB8IGY9Rk1ULCBkPUZS RUcsIHM9RlJFRywgdD1GUkVHIHx8fDF8fE4NCjAxMDAwMSAoZio1KSAodCo1 KSAocyo1KSAoZCo1KSAwMDAwMTAgfCBNVUwuZiB8IGY9Rk1ULCBkPUZSRUcs IHM9RlJFRywgdD1GUkVHIHx8fDF8fE4NCjAxMDAwMSAoZio1KSAodCo1KSAo cyo1KSAoZCo1KSAwMDAwMTEgfCBESVYuZiB8IGY9Rk1ULCBkPUZSRUcsIHM9 RlJFRywgdD1GUkVHIHx8fDF8fE4NCjAxMDAwMSAoZio1KSAwMDAwMCAocyo1 KSAoZCo1KSAwMDAxMDAgfCBTUVJULmYgfCBmPUZNVCwgZD1GUkVHLCBzPUZS RUcgfHx8MXx8Tg0KMDEwMDAxIChmKjUpIDAwMDAwIChzKjUpIChkKjUpIDAw MDEwMSB8IEFCUy5mIHwgZj1GTVQsIGQ9RlJFRywgcz1GUkVHIHx8fDF8fE4N CjAxMDAwMSAoZio1KSAwMDAwMCAocyo1KSAoZCo1KSAwMDAxMTAgfCBNT1Yu ZiB8IGY9Rk1ULCBkPUZSRUcsIHM9RlJFRyB8fHwxfHxODQowMTAwMDEgKGYq NSkgMDAwMDAgKHMqNSkgKGQqNSkgMDAwMTExIHwgTkVHLmYgfCBmPUZNVCwg ZD1GUkVHLCBzPUZSRUcgfHx8MXx8Tg0KDQowMTAwMDEgMDAwMHggMDAwMDAg KHMqNSkgKGQqNSkgMDAxMTAwIHwgUk9VTkQuVy5mIHwgZj1GTVQsIGQ9RlJF Rywgcz1GUkVHIHx8fDF8fE4NCjAxMDAwMSAwMDAweCAwMDAwMCAocyo1KSAo ZCo1KSAwMDExMDEgfCBUUlVOQy5XLmYgfCBmPUZNVCwgZD1GUkVHLCBzPUZS RUcgfHx8MXx8Tg0KMDEwMDAxIDAwMDB4IDAwMDAwIChzKjUpIChkKjUpIDAw MTExMCB8IENFSUwuVy5mIHwgZj1GTVQsIGQ9RlJFRywgcz1GUkVHIHx8fDF8 fE4NCjAxMDAwMSAwMDAweCAwMDAwMCAocyo1KSAoZCo1KSAwMDExMTEgfCBG TE9PUi5XLmYgfCBmPUZNVCwgZD1GUkVHLCBzPUZSRUcgfHx8MXx8Tg0KDQow MTAwMDEgKGYqNSkgY2NjIDAgMCAocyo1KSAoZCo1KSAwMTAwMDEgfCBNT1ZG LmYgfCBmPUZNVCwgZD1GUkVHLCBzPUZSRUcsIGM9Q0MgfHx8MXx8Tg0KMDEw MDAxIChmKjUpIGNjYyAwIDEgKHMqNSkgKGQqNSkgMDEwMDAxIHwgTU9WVC5m IHwgZj1GTVQsIGQ9RlJFRywgcz1GUkVHLCBjPUNDIHx8fDF8fE4NCjAxMDAw MSB4eHh4eCAodCo1KSAocyo1KSAoZCo1KSAwMTAwMTAgfCBNT1ZaLmYgfCB4 PUZNVCwgZD1GUkVHLCBzPUZSRUcsIHQ9RlJFRyB8fHwxfHxODQowMTAwMDEg eHh4eHggKHQqNSkgKHMqNSkgKGQqNSkgMDEwMDExIHwgTU9WTi5mIHwgeD1G TVQsIGQ9RlJFRywgcz1GUkVHLCB0PUZSRUcgfHx8MXx8Tg0KDQowMTAwMDEg MDAwMHggKHQqNSkgKHMqNSkgKGQqNSkgMTAwMDAwIHwgQ1ZULlMuZiB8IGY9 Rk1ULCBkPUZSRUcsIHM9RlJFRywgdD1GUkVHIHx8fDF8fE4NCjAxMDAwMSAw MDAweCAodCo1KSAocyo1KSAoZCo1KSAxMDAxMDAgfCBDVlQuVy5mIHwgZj1G TVQsIGQ9RlJFRywgcz1GUkVHLCB0PUZSRUcgfHx8MXx8Tg0KDQowMTAwMDEg MDAwMHggKHQqNSkgKHMqNSkgKGQqNSkgMTEwMDAwIHwgQy5GLmYgfCBmPUZN VCwgZD1GUkVHLCBzPUZSRUcsIHQ9RlJFRyB8fHwxfHxODQowMTAwMDEgMDAw MHggKHQqNSkgKHMqNSkgKGQqNSkgMTEwMDAxIHwgQy5VTi5mIHwgZj1GTVQs IGQ9RlJFRywgcz1GUkVHLCB0PUZSRUcgfHx8MXx8Tg0KMDEwMDAxIDAwMDB4 ICh0KjUpIChzKjUpIChkKjUpIDExMDAxMCB8IEMuRVEuZiB8IGY9Rk1ULCBk PUZSRUcsIHM9RlJFRywgdD1GUkVHIHx8fDF8fE4NCjAxMDAwMSAwMDAweCAo dCo1KSAocyo1KSAoZCo1KSAxMTAwMTEgfCBDLlVFUS5mIHwgZj1GTVQsIGQ9 RlJFRywgcz1GUkVHLCB0PUZSRUcgfHx8MXx8Tg0KMDEwMDAxIDAwMDB4ICh0 KjUpIChzKjUpIChkKjUpIDExMDEwMCB8IEMuT0xULmYgfCBmPUZNVCwgZD1G UkVHLCBzPUZSRUcsIHQ9RlJFRyB8fHwxfHxODQowMTAwMDEgMDAwMHggKHQq NSkgKHMqNSkgKGQqNSkgMTEwMTAxIHwgQy5VTFQuZiB8IGY9Rk1ULCBkPUZS RUcsIHM9RlJFRywgdD1GUkVHIHx8fDF8fE4NCjAxMDAwMSAwMDAweCAodCo1 KSAocyo1KSAoZCo1KSAxMTAxMTAgfCBDLk9MRS5mIHwgZj1GTVQsIGQ9RlJF Rywgcz1GUkVHLCB0PUZSRUcgfHx8MXx8Tg0KMDEwMDAxIDAwMDB4ICh0KjUp IChzKjUpIChkKjUpIDExMDExMSB8IEMuVUxFLmYgfCBmPUZNVCwgZD1GUkVH LCBzPUZSRUcsIHQ9RlJFRyB8fHwxfHxODQoNCjAxMDAwMSAwMDAweCAodCo1 KSAocyo1KSAoZCo1KSAxMTEwMDAgfCBDLlNGLmYgfCBmPUZNVCwgZD1GUkVH LCBzPUZSRUcsIHQ9RlJFRyB8fHwxfHxODQowMTAwMDEgMDAwMHggKHQqNSkg KHMqNSkgKGQqNSkgMTExMDAxIHwgQy5OR0xFLmYgfCBmPUZNVCwgZD1GUkVH LCBzPUZSRUcsIHQ9RlJFRyB8fHwxfHxODQowMTAwMDEgMDAwMHggKHQqNSkg KHMqNSkgKGQqNSkgMTExMDEwIHwgQy5TRVEuZiB8IGY9Rk1ULCBkPUZSRUcs IHM9RlJFRywgdD1GUkVHIHx8fDF8fE4NCjAxMDAwMSAwMDAweCAodCo1KSAo cyo1KSAoZCo1KSAxMTEwMTEgfCBDLk5HTC5mIHwgZj1GTVQsIGQ9RlJFRywg cz1GUkVHLCB0PUZSRUcgfHx8MXx8Tg0KMDEwMDAxIDAwMDB4ICh0KjUpIChz KjUpIChkKjUpIDExMTEwMCB8IEMuTFQuZiB8IGY9Rk1ULCBkPUZSRUcsIHM9 RlJFRywgdD1GUkVHIHx8fDF8fE4NCjAxMDAwMSAwMDAweCAodCo1KSAocyo1 KSAoZCo1KSAxMTExMDEgfCBDLk5HRS5mIHwgZj1GTVQsIGQ9RlJFRywgcz1G UkVHLCB0PUZSRUcgfHx8MXx8Tg0KMDEwMDAxIDAwMDB4ICh0KjUpIChzKjUp IChkKjUpIDExMTExMCB8IEMuTEUuZiB8IGY9Rk1ULCBkPUZSRUcsIHM9RlJF RywgdD1GUkVHIHx8fDF8fE4NCjAxMDAwMSAwMDAweCAodCo1KSAocyo1KSAo ZCo1KSAxMTExMTEgfCBDLk5HVC5mIHwgZj1GTVQsIGQ9RlJFRywgcz1GUkVH LCB0PUZSRUcgfHx8MXx8Tg0KDQowMTAwMDEgMDAxMDAgMDAwMDAgKHMqNSkg KGQqNSkgMTAwMDAwIHwgQ1ZULlMuZiB8IGY9Rk1ULCBkPUZSRUcsIHM9RlJF RyB8fHwxfHxODQowMTAwMDEgMDAxMDAgMDAwMDAgKHMqNSkgKGQqNSkgMTAw MDAxIHwgQ1ZULkQuZiB8IGY9Rk1ULCBkPUZSRUcsIHM9RlJFRyB8fHwxfHxO DQoNCi8qIDAxMDAxMCBDT1AyICovDQovKiAwMTAwMTEgQ09QMyAqLw0KMDEw MHp6IDAwMDAwICh0KjUpIChkKjUpICgwKjgpICh4KjMpIHwgTUZDeiB8IHo9 Q09QLCB0PVJFRywgZD1SRUcsIHg9U0VMIHx8fDF8fE4NCjAxMDB6eiAwMDAx MCAodCo1KSAoZCo1KSAoMCoxMSkgfCBDRkN6IHwgej1DT1AsIHQ9UkVHLCBk PVJFRyB8fHwxfHxODQowMTAwenogMDAxMDAgKHQqNSkgKGQqNSkgKDAqOCkg KHgqMykgfCBNVEN6IHwgej1DT1AsIHQ9UkVHLCB4PVNFTCB8fHwxfHxODQow MTAwenogMDAxMTAgKHQqNSkgKGQqNSkgKDAqMTEpIHwgQ1RDeiB8IHo9Q09Q LCB0PVJFRywgZD1SRUcgfHx8MXx8Tg0KDQowMTAwenogMDEwMDAgMDAwMDAg KGkqMTYpIHwgQkN6RiB8IHo9Q09QLCBpPUlNTTE2IHx8fDJ8fEMNCjAxMDB6 eiAwMTAwMCBjY2MwMCAoaSoxNikgfCBCQ3pGIHwgej1DT1AsIGM9Q0MsIGk9 SU1NMTYgfHx8Mnx8Qw0KMDEwMHp6IDAxMDAwIDAwMDEwIChpKjE2KSB8IEJD ekZMIHwgej1DT1AsIGk9SU1NMTYgfHx8Mnx8Qw0KMDEwMHp6IDAxMDAwIGNj YzEwIChpKjE2KSB8IEJDekZMIHwgej1DT1AsIGM9Q0MsIGk9SU1NMTYgfHx8 Mnx8Qw0KMDEwMHp6IDAxMDAwIDAwMDAxIChpKjE2KSB8IEJDelQgfCB6PUNP UCwgaT1JTU0xNiB8fHwyfHxDDQowMTAwenogMDEwMDAgY2NjMDEgKGkqMTYp IHwgQkN6VCB8IHo9Q09QLCBjPUNDLCBpPUlNTTE2IHx8fDJ8fEMNCjAxMDB6 eiAwMTAwMCAwMDAxMSAoaSoxNikgfCBCQ3pUTCB8IHo9Q09QLCBpPUlNTTE2 IHx8fDJ8fEMNCjAxMDB6eiAwMTAwMCBjY2MxMSAoaSoxNikgfCBCQ3pUTCB8 IHo9Q09QLCBjPUNDLCBpPUlNTTE2IHx8fDJ8fEMNCg0KMDEwMHp6IDEgKHgq MjUpIHwgQ09QeiB8IHo9Q09QLCB4PUNGVU5DIHx8fDJ8fE4NCg0KLyogQmNj TCAqLw0KMDEwMTAwIChzKjUpICh0KjUpIChpKjE2KSB8IEJFUUwgfCBzPVJF RywgdD1SRUcsIGk9T0ZTMTYgfHx8Mnx8Qw0KMDEwMTAxIChzKjUpICh0KjUp IChpKjE2KSB8IEJORUwgfCBzPVJFRywgdD1SRUcsIGk9T0ZTMTYgfHx8Mnx8 Qw0KMDEwMTEwIChzKjUpIDAwMDAwIChpKjE2KSB8IEJMRVpMIHwgcz1SRUcs IGk9T0ZTMTYgfHx8Mnx8Qw0KMDEwMTExIChzKjUpIDAwMDAwIChpKjE2KSB8 IEJHVFpMIHwgcz1SRUcsIGk9T0ZTMTYgfHx8Mnx8Qw0KDQovKiBTUEVDSUFM MiAqLw0KMDExMTAwIChzKjUpICh0KjUpICgwKjEwKSAwMDAwMDAgfCBNQURE IHwgcz1SRUcsIHQ9UkVHIHx8fDF8fE4NCjAxMTEwMCAocyo1KSAodCo1KSAo MCoxMCkgMDAwMDAxIHwgTUFERFUgfCBzPVJFRywgdD1SRUcgfHx8MXx8Tg0K MDExMTAwIChzKjUpICh0KjUpIChkKjUpIDAwMDAwIDAwMDAxMCB8IE1VTCB8 IGQ9UkVHLCBzPVJFRywgdD1SRUcgfHx8MXx8Tg0KMDExMTAwIChzKjUpICh0 KjUpICgwKjEwKSAwMDAxMDAgfCBNU1VCIHwgcz1SRUcsIHQ9UkVHIHx8fDF8 fE4NCjAxMTEwMCAocyo1KSAodCo1KSAoMCoxMCkgMDAwMTAxIHwgTVNVQlUg fCBzPVJFRywgdD1SRUcgfHx8MXx8Tg0KDQowMTExMDAgKHMqNSkgKHQqNSkg KGQqNSkgMDAwMDAgMTAwMDAwIHwgQ0xaIHwgZD1SRUcsIHM9UkVHLCB0PVJF RyB8fHwxfHxODQowMTExMDAgKHMqNSkgKHQqNSkgKGQqNSkgMDAwMDAgMTAw MDAxIHwgQ0xPIHwgZD1SRUcsIHM9UkVHLCB0PVJFRyB8fHwxfHxODQowMTEx MDAgKHgqMjApIDExMTExMSB8IFNEQkJQIHwgeD1CQ09ERSB8fHwxfHxODQoN CjAxMTEwMSAoaSoyNikgfCBKQUxYIHwgaT1PRlMxNiB8fHwgfHxUDQoNCg0K LyogTHh4ICovDQoxMDAwMDAgKHMqNSkgKHQqNSkgKGkqMTYpIHwgTEIgfCB0 PVJFRywgaT1JTU0xNihzPVJFRykgfHx8MXx8Tg0KMTAwMDAxIChzKjUpICh0 KjUpIChpKjE2KSB8IExIIHwgdD1SRUcsIGk9SU1NMTYocz1SRUcpIHx8fDF8 fE4NCjEwMDAxMCAocyo1KSAodCo1KSAoaSoxNikgfCBMV0wgfCB0PVJFRywg aT1JTU0xNihzPVJFRykgfHx8MXx8Tg0KMTAwMDExIChzKjUpICh0KjUpIChp KjE2KSB8IExXIHwgdD1SRUcsIGk9SU1NMTYocz1SRUcpIHx8fDF8fE4NCjEw MDEwMCAocyo1KSAodCo1KSAoaSoxNikgfCBMQlUgfCB0PVJFRywgaT1JTU0x NihzPVJFRykgfHx8MXx8Tg0KMTAwMTAxIChzKjUpICh0KjUpIChpKjE2KSB8 IExIVSB8IHQ9UkVHLCBpPUlNTTE2KHM9UkVHKSB8fHwxfHxODQoxMDAxMTAg KHMqNSkgKHQqNSkgKGkqMTYpIHwgTFdSIHwgdD1SRUcsIGk9SU1NMTYocz1S RUcpIHx8fDF8fE4NCg0KLyogU3h4ICovDQoxMDEwMDAgKHMqNSkgKHQqNSkg KGkqMTYpIHwgU0IgfCB0PVJFRywgaT1JTU0xNihzPVJFRykgfHx8MXx8Tg0K MTAxMDAxIChzKjUpICh0KjUpIChpKjE2KSB8IFNIIHwgdD1SRUcsIGk9SU1N MTYocz1SRUcpIHx8fDF8fE4NCjEwMTAxMCAocyo1KSAodCo1KSAoaSoxNikg fCBTV0wgfCB0PVJFRywgaT1JTU0xNihzPVJFRykgfHx8MXx8Tg0KMTAxMDEx IChzKjUpICh0KjUpIChpKjE2KSB8IFNXIHwgdD1SRUcsIGk9SU1NMTYocz1S RUcpIHx8fDF8fE4NCjEwMTExMCAocyo1KSAodCo1KSAoaSoxNikgfCBTV1Ig fCB0PVJFRywgaT1JTU0xNihzPVJFRykgfHx8MXx8Tg0KMTAxMTExIChzKjUp ICh0KjUpIChpKjE2KSB8IENBQ0hFIHwgcz1SRUcsIHQ9UkVHLCBpPUlNTTE2 IHx8fDF8fE4NCg0KLyogTEwgKi8NCjExMDAwMCAocyo1KSAodCo1KSAoaSox NikgfCBMTCB8IHQ9UkVHLCBpPUlNTTE2KHM9UkVHKSB8fHwxfHxODQoxMTAw MDEgKHMqNSkgKHQqNSkgKGkqMTYpIHwgTFdDMSB8IHQ9UkVHLCBpPUlNTTE2 KHM9UkVHKSB8fHwxfHxODQoxMTAwMTAgKHMqNSkgKHQqNSkgKGkqMTYpIHwg TFdDMiB8IHQ9UkVHLCBpPUlNTTE2KHM9UkVHKSB8fHwxfHxODQoxMTAwMTEg KHMqNSkgKHQqNSkgKGkqMTYpIHwgUFJFRiB8IHM9UkVHLCB0PUhJTlQsIGk9 SU1NMTYgfHx8MXx8Tg0KMTEwMTAxIChzKjUpICh0KjUpIChpKjE2KSB8IExE QzEgfCB0PVJFRywgaT1JTU0xNihzPVJFRykgfHx8MXx8Tg0KMTEwMTEwIChz KjUpICh0KjUpIChpKjE2KSB8IExEQzIgfCB0PVJFRywgaT1JTU0xNihzPVJF RykgfHx8MXx8Tg0KDQovKiBTQyAqLw0KMTExMDAwIChzKjUpICh0KjUpIChp KjE2KSB8IFNDIHwgdD1SRUcsIGk9SU1NMTYocz1SRUcpIHx8fDF8fE4NCjEx MTAwMSAocyo1KSAodCo1KSAoaSoxNikgfCBTV0MxIHwgdD1SRUcsIGk9SU1N MTYocz1SRUcpIHx8fDF8fE4NCjExMTAxMCAocyo1KSAodCo1KSAoaSoxNikg fCBTV0MyIHwgdD1SRUcsIGk9SU1NMTYocz1SRUcpIHx8fDF8fE4NCjExMTEw MSAocyo1KSAodCo1KSAoaSoxNikgfCBTREMxIHwgdD1SRUcsIGk9SU1NMTYo cz1SRUcpIHx8fDF8fE4NCjExMTExMCAocyo1KSAodCo1KSAoaSoxNikgfCBT REMyIHwgdD1SRUcsIGk9SU1NMTYocz1SRUcpIHx8fDF8fE4NCg0KLyogSW52 YWxpZCBvciByZXNlcnZlZCBvcHMgKi8NCg0KKHgqMzIpIHwgaW52YWxpZCB8 fHx8MXx8Tg0K --8323328-1399551756-1001493506=:408-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 26 13:54:27 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA62058 for dynarec-outgoing; Wed, 26 Sep 2001 13:54:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 26 Sep 2001 14:04:19 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: MIPS32 script In-Reply-To: Message-ID: <20010926135059.L51395-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > A script for the MIPS32 arch is attached, but it isn't quite adherant to > the syntax yet for a couple of reasons. Very cool! Now this is motivating me to finish up the Z80 script. Sadly, though, I installed Diablo II and have been spending my last 3 evenings doing nothing but playing it. AARRRGGGHH!!! > Timing on this thing is rather odd, as just about every instruction > executes in a single cycle, with one set of exceptions: jumps. Jumps take > two cycles, but will execute the instruction following them (RISC-y branch > delay slot). There is a deprecated set of instructions that will nullify > the delay slot op if the branch is not taken, but they're listed as "will > be removed in a future revision of the spec". The actual timings in the script are rather arbitrary. A "primary" and "secondary" set of timings for each instruction are given, and how the target opcode cover generator tags them is really up to it. It's not like the target opcode cover generator is *REQUIRED* to use the timings. It's just a convenience. > The script doesn't get as specific as the mips manual on undefined > operations -- they list a number of different kinds, like reserved for > future use, valid encoding of a higher-order mips ISA level (read: it's a > MIPS64 instruction), avaliable to licensed MIPS partners, EJTAG support > instruction (optional, left em in though), and reserved for an application > specific extension (MIPS-3D, MIPS16, etc). I say undefined is undefined =P In actuality, have you found the undefined instructions actually being used? > The FPU portions of this thing are where the main bits of syntax > stretching occur, the two biggies are shown by this: > > FMT = {5, keys = {S=0, D=1, W=4}}; > > 010001 0000x 00000 (s*5) (d*5) 001110 | CEIL.W.f | f=FMT, d=FREG, s=FREG > |||1||N I'm a bit confused, here... where is "x" used? > They define 3 formats, but use a 5 bit field to select them. S & D are > single and double floating point, W is 32 bit fixed point. A number of > operations are only defined for the S and D formats, so I suggest that > fields that don't fit the size described in operands get zero or sign > extended as appropriate. If this already happened, great =P Boy, that's tough to do in a generic fashion. ;-( The idea is to have the INVALID keyword available which will forcibly make the instruction no good and effectively "protect" the scanning from such atrocities. > It would be really, really handy to be able to have it invalidate > instructions that have key values in them that are not listed, in this > case it can't happen, but in > > 010001 (f*5) 00000 (s*5) (d*5) 000110 | MOV.f | f=FMT, d=FREG, s=FREG > |||1||N > > it can. So you create something like: 010001 010100 00000 (s*5) (d*5) 000110 | INVALID; And that would, as an example, invalidate that specific instruction. You'd list it first so the others won't match. > The OP.f thing would be extremely handy to have for this one, though if > it's gotta go, it's gotta go. Ideally, that single line would create > entries for each of MOV.S, MOV.D, and MOV.W in the decision trees. That'd make things extremely complex. Yes, it'd be handy, but at the same time the grammar is already going to be very complex and the amount of work it'll take vs. the time to implement something like this generically is just not worth it IMHO. Sure, it takes longer to write the script, but so what? It'll be used rarely and written only once. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 26 14:28:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA62094 for dynarec-outgoing; Wed, 26 Sep 2001 14:28:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3BB24963.2CFF40EB@austin.rr.com> Date: Wed, 26 Sep 2001 14:32:19 -0700 From: tarquin X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: MIPS32 script References: <20010926135059.L51395-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > Very cool! Now this is motivating me to finish up the Z80 script. Sadly, > though, I installed Diablo II and have been spending my last 3 evenings > doing nothing but playing it. AARRRGGGHH!!! Know the feeling, been killin time with various topdown shooters in mame myself. Donpachi, Dodonpachi, Battle Garegga, and Armed Police Batrider mostly, with a bit of 19xx: The War Against Destiny. Good stuff =P > > the delay slot op if the branch is not taken, but they're listed as "will > > be removed in a future revision of the spec". > > The actual timings in the script are rather arbitrary. A "primary" and > "secondary" set of timings for each instruction are given, and how the > target opcode cover generator tags them is really up to it. It's not like > the target opcode cover generator is *REQUIRED* to use the timings. It's > just a convenience. Ok, that cleans things up a bit. The next thing that comes to mind to hose that stuff up is the joy of x86 instruction timing from the 8088->80486 =P > > The script doesn't get as specific as the mips manual on undefined > > operations -- they list a number of different kinds, like reserved for > > future use, valid encoding of a higher-order mips ISA level (read: it's a > > MIPS64 instruction), avaliable to licensed MIPS partners, EJTAG support > > instruction (optional, left em in though), and reserved for an application > > specific extension (MIPS-3D, MIPS16, etc). I say undefined is undefined =P > > In actuality, have you found the undefined instructions actually being > used? I don't believe the completely undefined ones have been used. The ones used for a higher level (MIPS64) are probably used on some archs, like the N64, and the various extension (MIPS16 especially) might also be. The PSX doesn't support MIPS16 though, and MIPS-3D is a MIPS64 extension. The modularity of the arch screams for #include or conditional compilation. > > The FPU portions of this thing are where the main bits of syntax > > stretching occur, the two biggies are shown by this: > > > > FMT = {5, keys = {S=0, D=1, W=4}}; > > > > 010001 0000x 00000 (s*5) (d*5) 001110 | CEIL.W.f | f=FMT, d=FREG, s=FREG > > |||1||N > > I'm a bit confused, here... where is "x" used? doh, what I get for typing portions up at 1AM. x is supposed to be f here. > > They define 3 formats, but use a 5 bit field to select them. S & D are > > single and double floating point, W is 32 bit fixed point. A number of > > operations are only defined for the S and D formats, so I suggest that > > fields that don't fit the size described in operands get zero or sign > > extended as appropriate. If this already happened, great =P > > Boy, that's tough to do in a generic fashion. ;-( The idea is to have the > INVALID keyword available which will forcibly make the instruction no good > and effectively "protect" the scanning from such atrocities. handling it for unsigned fields should be trivial, as the masking/shifting involved will do that automagically. > > It would be really, really handy to be able to have it invalidate > > instructions that have key values in them that are not listed, in this > > case it can't happen, but in > > > > 010001 (f*5) 00000 (s*5) (d*5) 000110 | MOV.f | f=FMT, d=FREG, s=FREG > > |||1||N > > > > it can. > > So you create something like: > > 010001 010100 00000 (s*5) (d*5) 000110 | INVALID; > > And that would, as an example, invalidate that specific instruction. You'd > list it first so the others won't match. Nuts, I dislike having anything typed more than once if it can be avoided, saves on bugs. > > The OP.f thing would be extremely handy to have for this one, though if > > it's gotta go, it's gotta go. Ideally, that single line would create > > entries for each of MOV.S, MOV.D, and MOV.W in the decision trees. > > That'd make things extremely complex. Yes, it'd be handy, but at the same > time the grammar is already going to be very complex and the amount of > work it'll take vs. the time to implement something like this generically > is just not worth it IMHO. Sure, it takes longer to write the script, but > so what? It'll be used rarely and written only once. Point. > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base MIDI channel are belong to us. > Synthcom Systems, Inc. > ICQ #29402898 -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 26 21:45:42 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA62427 for dynarec-outgoing; Wed, 26 Sep 2001 21:44:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 26 Sep 2001 21:50:10 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: DYNAREC: Updated 6502 and MIPS32 scripts Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="8323328-974017095-1001566210=:408" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --8323328-974017095-1001566210=:408 Content-Type: TEXT/PLAIN; charset=US-ASCII Fixed some typos and syntax errors in the 6502 script. Corrected the relative jump address calculation in the mips32 one, and expanded all the OP.f stuff out to the specifics. Also expanded the various COP2&3 instructions out. Are the scripts going to define the width of the PC or other regs? Also, is there a better way of describing syntax like ADD r4, r3, r2 with the script besides making REG a 5 bit key, and hand-expanding it to r0, r1, r2, etc... r31? Changing the 000000 (s*5) (t*5) (d*5) 00000 100000 | ADD | d=REG, s=REG, t=REG |||1||N to 000000 (s*5) (t*5) (d*5) 00000 100000 | ADD | rd=REG, rs=REG, rt=REG |||1||N would complicate things for the lexer a bit, depending on how much checking it does for operand names. This is definitely an issue for any CPU we want to describe that has more than 32 registers, as expanding any more than that out to make a disassembly cleaner feels wrong. I'm going to break out either the intel manuals or a 65c816 doc and write up a draft for one of them tonight... though the epitome of 'weird' ISA's would be IA-64. Just *try* to get those bundles, bundle templates, and predicating syntax expressed correctly =P John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --8323328-974017095-1001566210=:408 Content-Type: APPLICATION/x-gzip; name="6502.script.gz" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: H4sICLStsjsCAzY1MDIuc2NyaXB0AJ2abW/bNhDH3+tTEN2beDNQXeK4Btq8 sCVjU2vLnuQZUoK+cBMnMOY4hR+2FfO++/RAidSRNHgyiqrwKb+Qx+Ofx7s+ PH4/bXbPb1+dcPW6Znesf+teO8HucNyfHo+bt92v+9XutF3tN8cfmXXw0XEe nrerl8NXx2Pl54796/7jQpe981b7/Y93/3107hum68x0v96/5ZagYelllmB3 zA1+wzDIDP76cfO62ubGkWwENzOO9uvVn7lpJpuuc9Mfu9Nh/ZTblrKtl9tm f633z9u3v3NrKFsHuTXevOxyi/Pw9n2dzfspm2UwnQ74W9mgTrtD9s76KZ/J dAr90gD9Lru6kswddsZffPrEBp1O9nPReFIB8zcq+y9s7mV/Xefk0E/0vzL0 U63hfl5PBRsSkyHVG4ajuDLk02paEqMlNVqyQesszsNGBFnm5/fv2bfNkX1f HY/r/Y6x8271emar/cuhnNqZZWG6PWTPt9PxeZs9j5ssYLPnt+If2bvHo+Py D19adh5FX85MfM71c8SfffT9wikgkP1hV5ufB53sy1k0PLOfNnc8FsTL4X35 vEaQsBwIYMbmrloplXGjY4CekXRZomP0tOMAzoB+p2ZUy2zJgMKpKqMYiC2j 8ilipF2WWs/FVdblKluXbMN0k47K6JvmomWknW6qMm4VhlN4VIYMfa8ZIF4N 8ZaGACncgRlygGDGjY4BekYVIJjR046jESCcIQLEigEGBg8QS4arZfAAsZuL q6yLHCCY0df71MAoAwQzdAHi4gAJfbqC4ADJGVQFwQFSMSgKggOkZNAUBAdI zSAoCA6QmkFQEBwgOYOqIDhABMNeQbi21+fSMJ6c2VBzTmVRdvGIAVcMJGfo A8QzDMTlq6sy1ADxzJJaLI1YmJKhC5ALDDAwlAApGR9Up4J0ThWTGXmFhFQZ l9i61Q9VTq12jucA1xCJEZMZgBnj35uMewsGnks4pjJcZS7ToMkILRh4HPMJ maHMZYnWZWnBwHNZxlRGlYQIiDdBA8Fnr7rrABSGr2f4RoarMgI9IzCPg3tE Yiz1jKWRUWmqgMTjFg5RGC0cojDIDnHKhEoSZm86Nx26nnl1m4duwbikqTfa CNEzTJra046jcWByhllTe/pI1TMMmtozRbuOoRy6l+biKuuiP3RN5wOXQy0D H7qms87hEiJtmXlCD5AyypoMaoCUXhVOLRmUxa28Kg8kbRntiEGOdjyZtN1k 5DTEH3uXc91bw7bTMUy5bt8wGSkN4Qxzrts3bDstw5DrfjBpmZQf+uNEX8cw XyD44sqMlMqobiHSuRssmiuD85Ab0w1CeIQzhFcxo6e7cyN1H88i8pUKq3vB IF6psLrXDMKVCqs7Z5CuVFjdBcP+SoXVXTDsr1RY3QsG8UqF1V1iWF+pgCtR DQnCFhoCoGdQNASaGsIZNA0BMDAoGgLN/R+EdA0BFzNaaAg+Ij6bkhmThizU Y+YzTwDKCnNHZdzqCrsiASghcXR5IJrqMODazsQnV4cB13YKBk2IANd2aoa9 EAGu7XAGRYgA13YEw1qIANd2BMNaiADXdgoGTYgA13Ykhr0Q8WNGgiTtAgQz 2gSIjlH4lBAgkhBxBj1AtAzrxa1WV55M2nLXIUarXadhUJ3qyg5JW+46HcPe qS7OMie5HhKrkDh1n8QRuQqJU/eaQahC4tR9EkfkKiRO3QWDUIXk9//aieFs rj8yGbt8ZMrn7vy34WXIjb4u22TMyQycQ8wnLcahMMjj4BDJq9EMFcw9i4I5 EtWCYWi5GQvmSFRrhqblZu4gNEOVM7QttwtdCANDbbmZQtUFxakR2amgODUi OxUUp0Zkp4Li1IjsVFCcGrVwKr/c1U5dBKaU2Qv80bIaSjNVrWpVghJf3jS6 VBX3qeMRuU8NuE9dMGh9asB96pph36cG3KfmDEqfGnCfWjCs+9SA+9SCYd2n BtynLhi0PjXgPrXEsO5TA/5fKvGixT0EFURqBuUeggoinEHLiFBBRDAI9xBU EBEMwj0EFUQKBvUeggoiEoNwD0GZWbxI2i2ujkFJd1FmxhmUxa0iVR5I2jJS NQzqZFx5MmmLyaBzdzFsUd1FWdVimLZgQHMcccsqs8xIhi0YaBxJ3I4h+yMl j+N/uU7WcQ0rAAA= --8323328-974017095-1001566210=:408 Content-Type: APPLICATION/x-gzip; name="mips32.script.gz" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: H4sICFWtsjsCA21pcHMzMi5zY3JpcHQArVtdc5u6Fn33r+DpTuLrm7KhyWmn xw824MS9xE4Mrvsx5yHjhDOe05N2bPdMOjf971dbEiBAEiIoGTuO0VraH0sb gcSX7fcfu8fs2x+Dxd3fD87YuZ7fJL43mD8ejvsf2+Pu2+Pl/u7xx9e7/e74 kxz3vXeDwZfs692fhz/Ih2/fH8jhe/J5FV06+DN2/nc+cv56+HnAj3t35OyB vDzy8snrNXmR4/sL8vptNHCkP/s35OhbRFI44gEJABkAKeBciQWkht/wDWkA eTzk8agdyOP5SrSH7B5a6CGPhzwe8njI4yOPT3h+/Xo3mHGXqx5n6HKGPmfo dIZeZ+h2hn5n6Him9jxD1zP0PaPOZ9T7jLqfUf8zGoBME4GMhiCjMchoEDIa hYyGIaNxyGggyLuvJPFoNx412qOEHiX0KKFHCX1K6AOJxvz6Gi5YNLD7w+7P x4d78v0qiuEN+/7kpDxy6vz+u+OdOv92lgF5e81aekVLr9Hy2Tm5CZx/Oe5T 5LIfgkmu5rO0yMGPx6Lbq/kibSYnjGZjF3MXBE6uVr+CezVkh9iBHEdQI2e9 GJPIRbdjErk1+UOOL+N0TMK0Jn/O8b9ofIH/RWNlgpPZmMRvcUnakAgmhAbT TP4fY6IJD2Z6cRmNMdekESZ7cUm+Pv/1bvhqECxvcru9it2z61Qy/BK0O0Sz N+PX6PcmWIYRz9LbCsG0PIIyEY6kAqZ6JJitFwHHVMOfRLE8voMvu7K0YAl5 NXSSmyiYT2KH+HfiDn2a6wVx9Jn8wPPzAr/1Lk4dcFjeyeEkqTTg37P3k+Pw /NQ5uafvd/hewuKYvN+PycgdOUf2527MRFTjOjlQ/HboEzz55XxuwQeE6Xr5 YVYSHtif7ZhISMsGSrbUiE3nJ1A/V8Z+armAck06xkzgKvqAPP4fGh5Szi5U uYs2qLiHbVQ1LncIbhkoYOJ6vyJvhzxAtABJLeGfK7EGpoD3k3jVsETHJfMK mAaImj73DRAwCRCqhSHVdui51CGe8E9JMKGDbjtmFUYDwK6mq2jyX01zEnkx bDyBn0gZekZVpp9uokbOeLZEz4AXhOvZ1Tz3TBEW1iNF0FikFHGQIuQ9sXTM 4qVxTyzqKUUcdEI8CnKkMaddkfNRKcX2lAtw4PD1y/DU03D+koEpkAAjWXcb kw35Ql71J2HYbyBAXqEJ07o/Fatf66kFJmBM/Y1iw3WyCC0woVHLVX8iGqeP VpiATilWvRXFJZ7EaV+juM4TNtY6W7WlwwXyOpZeRrURizOHVFpCFTTAaNY9 eWh80kYB6kwDjKanOUzWaXTbk4Z5tWgPMs5nyQFyNYTT2QGf21VO/LshXOAU dxqnn0u+3ZhdKREi7/k5aCJBQF5GHZBQ6zPuAK11qoHWsFBxlehqLkLZxWIl 9CISqsi1OVT0lainQ6eiq4g07xQqnka35p1CxdyFLkZVKDSVNDFNKzS1ZIAV zjkClgLbeoOGpR1MhYapOg2Swff+P8ef3x8OOPrcQvwexb/PjfVySDpwC5Xz NqVL1VbA5nfFVVtplTwEUC8mRXtJMZLiQYGXVCEZHlxV2WkpHni2lCMvdQUL gz8Xgw+uKgRkGoVSP1ZOes2xAq4qBkiwNmIAhQkJKw4GBKAmMDJBKQQy2Zqb EShMWK7M8KoYfDQmgOptgpwgXgv4RsUieuDXWcHyxqWaANUtB3f45hSN9E/p pVLglrzF1AjvKRVWQXGFKmV64kyphOmpwpRTAb0EeSvcjknj6Uq4xSRpxuc6 081c2w6Kdlo+fvVG2t1omuUXedEqSrXN2KQ3VLU70nbFNdJmMk9ppOgdwlEz i4BZhCKLIM8iAE8giGGfVWbGBRwU8MAIDsre0ypcjlZ2rkEXcBBkXFTHAGb0 VFAMA1ZQRch2u5VA8BbfSA+sTwADSE36akLM+oKakbFBZzKMYW81M416k2Dk vdE7zCMnHDkblXoPtcszftPgLKFXZjNef2b8jKtQs5qOX6RbogN+i8cWHb/b 0pmucr10X1xr0Mvj21Uq4evEQ2+3TJOeNPmd0L409P5BdKmjEXmgTVlhp2BD m7Ls0BXKskSXK6srXZuyQqNcQpuy+tEUyupJkysrNFEWtNesTYdgQ3vNskNX KMsSXa6srnRtytoY5BLaa1Y/mkJZPWlyZW3Mapach6/jrJbrBdFWrzLKV3jS 1XoR9KaiQQqiedyfCY2axcvlSk/VPpprsepTGGqx6kclxqonkxir0FRXZLrG ltBFNhCW0KVzj+rCd5MPlHxpRz5JkSlW7ZYfPtuYaBVressPCxO+ajLaAxh2 cBgMAtiNry2Am/7ziUoAN10CCEYK3Bg7DEYK7MZnM4BgoMBNNwXKCIs7BwGO NwtjpFiERMJNR0JotzC0QShaGFoIYr5+F5zNbIQwl2Bwtl5Y4mMnj7Po1hYf t88WIc/I2TJObRFyC60RQm5hZIswtzDqei6RM0IuwsSOCiFXIe5ztMTIg5hY 0g3kQiQm2iHMhWhJNgBFDC2FMNdhbI0vNzDtPqVpqYUWinWlFtrhK2uhJb6y FlohFGuhJcKyFtohFGqhJcKyFoY2RCjWQhsWVmuhHUahFloiLGuhFUKhFlri K2uhHcKyFlriK2th2PXqpHmtXZu6vvxGULFzEYlCIyLXhEh3n4SvGAJd9/Vw zSX/hq4h+vkqDGhWgp+KlWCvZf22ZNIsJ3q69UAwWkcWKBQG6JYUPe2SIriq JUVPtaRYQBpLip5+SVHsC2rA2KAzGcast+pqpJeaeNaEGHpWAxp5JsEolhQ5 FFAg3jnNMUr9mUiDPRPDWubpBWtCh15Ch/5Ch35CV66d+0qhK9fO/RahK9ez fbXQlevZfpvQlSv1fmriWRNi6FkNaOSZBKMTOtSE7suETmr8dLuNeXHX7X6L 27evgXb7mxmBbv+bbgMi6DfAtWw/5M+yeSwOzc1f/DGH/Px+zZ5NkG8h18OB w9dd8NXHn4p1ubbN7DpL2Fzvmj3P8BI4cLjSkTZPytlS/PkFnsge9AjKh3Va mJ7o80vFFDAJp7h9i4yP6vNLrH11o+nH6k5TB3eaUhHFT0+oH5BsSS+23k0b O+9OqJ2nRZcgbqWtw6+M4Kqdg/EmNsOrut+YwEHt/NoMr/TeDK92f9WKp8Ug z6N6K2xikkf1Rtjkygiu3AVrlEfNJliTPKo3oCYGcQS27CjFB5PgSrYZurkR NaYnJn6LSZ5Tg0iAZkBtxG2DGgK1psS5k45AYcHNKpqJscCHRpvBAM2pNQ7N fFCPi9DABzowApYOzbgIDCzRjAuzdOhGhlE61JuzE7NgagaHaTDnj//cfd3d O9/2zv7h8LD/54F8/k434Q9wXk+fp9/xRsVO4P8D6cJpxvpDAAA= --8323328-974017095-1001566210=:408-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Sep 26 22:03:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA62454 for dynarec-outgoing; Wed, 26 Sep 2001 22:02:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 26 Sep 2001 22:08:37 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: DYNAREC: Son of nitpicking Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Something I just noticed in the Z80 script: IMM16 = {16, ((8, unsigned) << 8) | (8, unsigned))}; shouldn't this be IMM16 = {16, ((8, unsigned) | ((8, unsigned) << 8))}; The first one seems to describe a MSB-first immediate value, if bits are grabbed in the order found going left to right. Or am I simply displaying a complete lack of knowledge about the Z80, and it's actually MSB-first? =P John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 01:17:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id BAA62607 for dynarec-outgoing; Thu, 27 Sep 2001 01:15:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Sep 2001 01:21:40 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: DYNAREC: The 65c816, an architecture that eats babies Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This architecture wants to defy all method of description. Page down to the end if you know the 65c816, otherwise some background information follows. Short description: 6502 expanded out to 16 bits with a number of cool features that fit well with the prior art, and add a number of handy features (INC/DEC Accumulator, (ZP) addressing) but increasing the complexity of emulation by at least an order of magnitude. First, this is one of those multiple personality type processors, it starts up in 6502 compatability mode. In this mode it is effectively a 6502 with a lot of extra operations. In emulation mode, the index and mem/acc size flags are both forced to 8 bit operation, the high byte of the stack pointer is always 0x01, and the high byte of the index registers X and Y are both 0. The high byte of the accumulator is unaffected, and may be swapped with the low byte via the XBA instruction. To kick it into native mode, you clear carry, and execute an XCE instruction. This sets the E flag to the value of the C flag, 1 = 6502 Emulation, 0 = native. This gets you full 24 bit addresses. The size of X/Y, and A/mem accesses are determined seperately by two more flags. 1 means 8-bit operation, 0 means 16 bit. These two can affect the size of an immediate pulled from the instruction stream, which is the primary sticking point. To avoid the serious code bloat that forcing all absolute addresses to 24 bits would result in, they introduced the concept of banks -- two registers decide the current data and code banks, labeled DB and PB. A third register allows one to relocate the 'direct' page anywhere within the first 64K of memory, at any address. This page is equivalent to the Zero Page of the 6502, and all ZP addressing is done via the direct page. The stack is always in bank 0. The also added no less than 10 addressing modes to the 6502's craziness. You have the following: (placed the 6502-ish term to the side for the ones that don't share the same name) Immediate Absolute Absolute Long -- 24 bit address Direct -- (ZP) Accumulator Implied Direct Indirect Indexed -- (ZP), Y Direct Indirect Indexed Long [ZP], Y -- (24 bit address from (ZP), add Y) Direct Indexed Indirect -- (ZP), X Direct Indexed with X -- ZP, X Direct Indexed with Y -- ZP, Y Absolute Indexed with X -- Abs, X Absolute Indexed with Y -- Abs, Y Absolute Long Indexed with X -- 24 bit address, add X PC Relative -- 8 bit signed displacement from the next instruction PC Relative Long -- 16 bit unsigned displacement, added to the address of the next instruction. Bank is not updated. Absolute Indirect Direct Indirect -- (ZP) Direct Indirect Long -- [ZP] 24 bit pointer at (ZP) Absolute Indexed Indirect -- (Abs, X) Stack Stack Relative -- $xx, S -- low 16 bits of the address is S + 8 bit offset, high 8 bits are 0 Stack Relative Indirect Indexed -- ($xx, S), Y grab 16 bit pointer from the stack, tack the DB on, add Y. Block Source Bank, Destination Bank -- used by the string instructions. copies from src:X to dst:Y, incrementing or decrementing X and Y depending on the instruction, decrementing A, and looping until A = 0. The PB register is set with various long jumps, and they even put in some more craziness when it comes to indirect jumps. The JMP (a) and JML (a) instructions use bank 0 when grabbing the address, the JMP (a, x) and JSR (a, x) use the PBR The script I have right now completely ignores timing, as this chip is almost as variable as the x86. Half the addressing modes have cycles that are only applicable in 6502 emulation mode, or only applicable when dealing with 16 bit operands, on top of the indexing ones. Even more fun are the various things system designers had access to -- instruction aborting, pins to relay the current setting of the E and M/X bits (M/X are multiplexed, which one you get depends on the opcode), a pin to set the overflow flag, pin to sync to instruction fetches, pins to describe bus status (internal op, valid program address, valid data address, opcode fetch), and a signal to tell the system when an interrupt vector is getting fetched -- the doc I have suggests possibly using this to select and prioritize interrupts from several sources by modifying the vector addresses. A truly sadistic system designer could run circles around even the 2600 with this stuff, even to the point of completely redefining the memory map based on the E flag, or accessing different hardware registers based on the access size. ISSUES -- The big problem with trying to describe this chip with the script language is the size of immediate operands -- they're dependent on no less than 3 bits of the flags register. I believe the most sane way to dynarec this chip would be to tag each translation unit with the E, M, and X flags, and just regenerate the code if it's executed under more than one mode. I don't believe the 6502 emulation mode was used much if at all on the SNES, and I would hope that they didn't reuse large portions of code while flipping those bits back and forth. The E bit is a little bit easier to track, as it is only modified by one instruction. The other two can be modified by any instruction that messes with the status reg -- but only in emulation mode. The x86 suffers from some similar problems, but transitions between the two (prefixes 66h and 67h notwithstanding) are more noticeable, due to the selectors and CR0. Also, one is MUCH more likely to just be generating x86 code, as opposed to recompiling it (8086/8088 code excepted, though if you can get friendly enough with the hardware you can execute it natively as well) one can limit the script to describing a subset of the x86 ISA, such as "32 bit operands and addresses by default". John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 10:07:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA63168 for dynarec-outgoing; Thu, 27 Sep 2001 10:05:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Sep 2001 10:15:39 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Updated 6502 and MIPS32 scripts In-Reply-To: Message-ID: <20010927101159.J55167-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Are the scripts going to define the width of the PC or other regs? We shold probably do that for the width of the PC, but registers are just a field of bits with labels attached to them. > Also, is there a better way of describing syntax like > ADD r4, r3, r2 > with the script besides making REG a 5 bit key, and hand-expanding it to > r0, r1, r2, etc... r31? No, but I don't see a problem with the existing approach and I'm not clear on how it can be "better". Also remember the fields are used as formal parameters to functions that can emit these instructions as well, and effectively this makes it a typedef! > 000000 (s*5) (t*5) (d*5) 00000 100000 | ADD | d=REG, s=REG, t=REG |||1||N > to > 000000 (s*5) (t*5) (d*5) 00000 100000 | ADD | rd=REG, rs=REG, rt=REG > |||1||N Not quite - you'd attach "d" to a list of "r0, r1, r2, r3, ..." styles of registers. We could perhaps put something in the register defintiions like this: REG8 {5, numeric, "r%d"} To do an "Auto" style of register naming. > would complicate things for the lexer a bit, depending on how much > checking it does for operand names. Hopefully my approach above will solve that. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 10:07:25 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA63174 for dynarec-outgoing; Thu, 27 Sep 2001 10:05:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Sep 2001 10:15:58 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Son of nitpicking In-Reply-To: Message-ID: <20010927101543.B55167-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > shouldn't this be > IMM16 = {16, ((8, unsigned) | ((8, unsigned) << 8))}; Yep, it should. ;-( -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 13:05:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA63353 for dynarec-outgoing; Thu, 27 Sep 2001 13:03:59 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 27 Sep 01 16:03:51 -0400 Message-Id: <3.0.5.32.20010927130511.008a81c0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 27 Sep 2001 13:05:11 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Updated 6502 and MIPS32 scripts In-Reply-To: <20010927101159.J55167-100000@beacon.synthcom.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >REG8 {5, numeric, "r%d"} > >To do an "Auto" style of register naming. I don't known if we can ever make it flexible enough for auto-expanding without a lot of work. Look at i960 for example. It has R0-R15 and G0-G15, but R0, R1, R2 are called PFP, SP, RIP respectively, and G15 is referred to as FP. GAS won't accept R0-R2 or G15, even though in theory, it should, according to Intel's docs. Since the process of implementing a dynarec core with the framework we're developing is going to involve much more than just the script, we have to remember that making someone manually type out 32 registers isn't going to kill them ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 15:07:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA63553 for dynarec-outgoing; Thu, 27 Sep 2001 15:05:20 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3BB3A385.1DECD0A1@austin.rr.com> Date: Thu, 27 Sep 2001 15:09:10 -0700 From: tarquin X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Updated 6502 and MIPS32 scripts References: <20010927101159.J55167-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > Are the scripts going to define the width of the PC or other regs? > > We shold probably do that for the width of the PC, but registers are just > a field of bits with labels attached to them. PC sort of needs it if you're going to do PC relative calculations. > > Also, is there a better way of describing syntax like > > ADD r4, r3, r2 > > with the script besides making REG a 5 bit key, and hand-expanding it to > > r0, r1, r2, etc... r31? > > No, but I don't see a problem with the existing approach and I'm not clear > on how it can be "better". Also remember the fields are used as formal > parameters to functions that can emit these instructions as well, and > effectively this makes it a typedef! Consider the IA-64, with 128 registers. That would be a rather large keys entry. > Not quite - you'd attach "d" to a list of "r0, r1, r2, r3, ..." styles of > registers. We could perhaps put something in the register defintiions like > this: > > REG8 {5, numeric, "r%d"} > > To do an "Auto" style of register naming. > Bart mentioned the i960 being a pain about this (or more specifically, gas's treatment of the i960) What about REG = {4, keys = {0=PFP, 1=SP, 2=RIP, "R%d"}}; GREG = {4, keys = {15=G15, "G%d"}}; > > would complicate things for the lexer a bit, depending on how much > > checking it does for operand names. > > Hopefully my approach above will solve that. Does seem to be a better option. > -->Neil -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 15:16:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA63566 for dynarec-outgoing; Thu, 27 Sep 2001 15:14:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Sep 2001 15:24:55 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Updated 6502 and MIPS32 scripts In-Reply-To: <3BB3A385.1DECD0A1@austin.rr.com> Message-ID: <20010927151916.T55839-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > We shold probably do that for the width of the PC, but registers are just > > a field of bits with labels attached to them. > PC sort of needs it if you're going to do PC relative calculations. Yeah. The PC should be a 32 bit value internally even if it isn't displayed as such. > > No, but I don't see a problem with the existing approach and I'm not clear > > on how it can be "better". Also remember the fields are used as formal > > parameters to functions that can emit these instructions as well, and > > effectively this makes it a typedef! > Consider the IA-64, with 128 registers. That would be a rather large > keys entry. Hm... I'm not seeing why this is a problem, other than just initial entry. It's not like it has to be replicated everywhere for it. And thinking about it, I can't find a compelling reason to do it at all. Adding yet more scripting oddities to make the code more complex is not something I'm willing to do to save someone from typing. ;-) > > REG8 {5, numeric, "r%d"} > > To do an "Auto" style of register naming. > Bart mentioned the i960 being a pain about this (or more specifically, gas's > treatment of the i960) > What about > REG = {4, keys = {0=PFP, 1=SP, 2=RIP, "R%d"}}; > GREG = {4, keys = {15=G15, "G%d"}}; Forget it. ;-) REG = (4, keys = {0,PFP, 1=SP, 2=RIP, 3=R0, 4=R1, ... -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 15:51:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA63617 for dynarec-outgoing; Thu, 27 Sep 2001 15:50:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3BB3AE19.1476C7B6@austin.rr.com> Date: Thu, 27 Sep 2001 15:54:17 -0700 From: tarquin X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Updated 6502 and MIPS32 scripts References: <20010927151916.T55839-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Consider the IA-64, with 128 registers. That would be a rather large > > keys entry. > > Hm... I'm not seeing why this is a problem, other than just initial entry. > It's not like it has to be replicated everywhere for it. And thinking > about it, I can't find a compelling reason to do it at all. Adding yet > more scripting oddities to make the code more complex is not something I'm > willing to do to save someone from typing. ;-) Oh well, guess I'll have to wait until things are up to the point of having a parser/lexer to improve things =P What about the #ifdef/#endif or #include stuff? Those tossed as well? =P -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 15:58:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id PAA63634 for dynarec-outgoing; Thu, 27 Sep 2001 15:57:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Sep 2001 16:07:30 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Updated 6502 and MIPS32 scripts In-Reply-To: <3BB3AE19.1476C7B6@austin.rr.com> Message-ID: <20010927160542.O55839-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > It's not like it has to be replicated everywhere for it. And thinking > > about it, I can't find a compelling reason to do it at all. Adding yet > > more scripting oddities to make the code more complex is not something I'm > > willing to do to save someone from typing. ;-) > Oh well, guess I'll have to wait until things are up to the point of having a > parser/lexer to improve things =P I'm not sure why we'd even need it then. It's done once and never again. It's not like a register definition would change. ;-) Why go to all that extra work to support something like that? > What about the #ifdef/#endif or #include stuff? Those tossed as well? =P #ifdef/#endif #include? I'm not sure what you mean. I don't see a problem with #includes - that can be handy, but at the same time, why split them up? Insteading of having them in 1 place, now you've got them in "n" places. Kinda reminds me of people I work with who break up 300 line procedures just because they're "long" and even though they don't make any logical sense to be broken up. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 16:32:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA63687 for dynarec-outgoing; Thu, 27 Sep 2001 16:31:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 27 Sep 01 19:33:53 -0400 Message-Id: <3.0.5.32.20010927163507.008a9100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 27 Sep 2001 16:35:07 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Updated 6502 and MIPS32 scripts In-Reply-To: <20010927160542.O55839-100000@beacon.synthcom.com> References: <3BB3AE19.1476C7B6@austin.rr.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> What about the #ifdef/#endif or #include stuff? Those tossed as well? =P > >#ifdef/#endif #include? I'm not sure what you mean. I don't see a problem >with #includes - that can be handy, but at the same time, why split them >up? Insteading of having them in 1 place, now you've got them in "n" >places. Kinda reminds me of people I work with who break up 300 line >procedures just because they're "long" and even though they don't make any >logical sense to be broken up. ;-) Some preprocessing might be good. There could possibly be a need for #define. A lot of instructions in a script will have tons of repetition in the operand fields. I'm not completely sure where #include would be useful... but maybe people will find good uses for it (to split up the instruction descriptors into multiple files.) It's tough to guess beforehand the kind of weird directory structures users might want to maintain. #ifdef/#endif would be useful for maintaining a single script for multiple processors. In a 6502 script, you could have 2 different CPUs selectable: normal 6502 and NES 6502. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 16:40:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA63703 for dynarec-outgoing; Thu, 27 Sep 2001 16:38:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Sep 2001 16:48:35 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Updated 6502 and MIPS32 scripts In-Reply-To: <3.0.5.32.20010927163507.008a9100@mailandnews.com> Message-ID: <20010927164609.H55839-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >places. Kinda reminds me of people I work with who break up 300 line > >procedures just because they're "long" and even though they don't make any > >logical sense to be broken up. ;-) > Some preprocessing might be good. There could possibly be a need for > #define. A lot of instructions in a script will have tons of repetition in > the operand fields. Preprocessing adds a lot of complexity to the process. Are we really sure there's such a strong need for such a thing? > I'm not completely sure where #include would be useful... but maybe people > will find good uses for it (to split up the instruction descriptors into > multiple files.) What purposes would there be in having instruction descriptors in multiple files? I can see some things like defining register sets for 8086, 80286, 80386, etc... and #including them in different scripts but I still question why a cut & paste wouldn't be sufficient. > It's tough to guess beforehand the kind of weird directory > structures users might want to maintain. Remember that "users" will use this once and won't again. It's not like it's an ongoing maintenance issue. The scripts get written and they're done. > #ifdef/#endif would be useful for maintaining a single script for multiple > processors. In a 6502 script, you could have 2 different CPUs selectable: > normal 6502 and NES 6502. Not a very good example since a normal 6502 is a superset of the NES 6502 CPU. ;-) (Sans D flag). -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 16:54:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA63735 for dynarec-outgoing; Thu, 27 Sep 2001 16:52:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Thu, 27 Sep 01 19:54:59 -0400 Message-Id: <3.0.5.32.20010927165625.008ad930@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 27 Sep 2001 16:56:25 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Updated 6502 and MIPS32 scripts In-Reply-To: <20010927164609.H55839-100000@beacon.synthcom.com> References: <3.0.5.32.20010927163507.008a9100@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Preprocessing adds a lot of complexity to the process. Are we really sure >there's such a strong need for such a thing? Well, take PowerPC for example. There are a lot of instructions with the exact same operand format. Copying and pasting might work, with a search+replace if anything goes wrong, but a #define would be a nice luxury. >> I'm not completely sure where #include would be useful... but maybe people >> will find good uses for it (to split up the instruction descriptors into >> multiple files.) > >What purposes would there be in having instruction descriptors in multiple >files? I can see some things like defining register sets for 8086, 80286, >80386, etc... and #including them in different scripts but I still >question why a cut & paste wouldn't be sufficient. This whole preprocessor thing seems like an answer in search of a question... It would simply look nice and be convenient... that's about the best argument I can give ;) In reality, I guess there wouldn't be a need for it, not that I can see. What does everyone else think? >Remember that "users" will use this once and won't again. It's not like >it's an ongoing maintenance issue. The scripts get written and they're >done. That's true. The amount of work involved in actually implementing the dynarec (after the script has been used) will completely overshadow the process of developing the script itself. But if a preprocessor could somehow be easily implemented, it might help us in debugging. By the way, how does one go about subscribing to Dynarec? I don't remember how I did it anymore. According to the below snippet and the page, it is necessary to send a message with "subscribe" in the body. This hasn't worked for me. I've also tried putting it in both the subject and the message body, and I tried capitalizing both. >--------------------------------------------------------------------------- >** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the >** message body to dynarec-request@dynarec.com. Please direct other >** questions, comments, or problems to neilb@dynarec.com. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 17:52:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA63789 for dynarec-outgoing; Thu, 27 Sep 2001 17:50:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3BB3CA5E.7A4C8B30@austin.rr.com> Date: Thu, 27 Sep 2001 17:54:54 -0700 From: tarquin X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Updated 6502 and MIPS32 scripts References: <20010927164609.H55839-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > Some preprocessing might be good. There could possibly be a need for > > #define. A lot of instructions in a script will have tons of repetition in > > the operand fields. > > Preprocessing adds a lot of complexity to the process. Are we really sure > there's such a strong need for such a thing? See below. > > I'm not completely sure where #include would be useful... but maybe people > > will find good uses for it (to split up the instruction descriptors into > > multiple files.) > > What purposes would there be in having instruction descriptors in multiple > files? I can see some things like defining register sets for 8086, 80286, > 80386, etc... and #including them in different scripts but I still > question why a cut & paste wouldn't be sufficient. It isn't as needed for the x86, but it would be quite handy. Proper handling of the operand and address size overrides will probably need either some form of #define or completely seperate scripts that are 99% identical. > > It's tough to guess beforehand the kind of weird directory > > structures users might want to maintain. > > Remember that "users" will use this once and won't again. It's not like > it's an ongoing maintenance issue. The scripts get written and they're > done. I hate large scale duplication of anything. Isn't the reduction of mindless copying part of the reason for the scripts in the first place? > > #ifdef/#endif would be useful for maintaining a single script for multiple > > processors. In a 6502 script, you could have 2 different CPUs selectable: > > normal 6502 and NES 6502. > > Not a very good example since a normal 6502 is a superset of the NES 6502 > CPU. ;-) (Sans D flag). The specific CPU I had in mind for #include and/or #ifdef/#endif is mips32. Without those, the entire thing will have to be duplicated for the various implementations. I don't have the details on the N64, but the chip offers selectable endianness -- though IIRC it's defined by an external bit. The coprocessor section will be different for every single implementation. It just feels *wrong* to have to duplicate large portions of the script. > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base MIDI channel are belong to us. > Synthcom Systems, Inc. > ICQ #29402898 > > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 18:05:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA63814 for dynarec-outgoing; Thu, 27 Sep 2001 18:03:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Sep 2001 18:14:27 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Updated 6502 and MIPS32 scripts In-Reply-To: <3BB3CA5E.7A4C8B30@austin.rr.com> Message-ID: <20010927180812.L55839-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > files? I can see some things like defining register sets for 8086, 80286, > > 80386, etc... and #including them in different scripts but I still > > question why a cut & paste wouldn't be sufficient. > It isn't as needed for the x86, but it would be quite handy. Proper > handling of the operand and address size overrides will probably need > either some form of #define or completely seperate scripts that are > 99% identical. Okay, but to accomplish that now we need to add in a preprocessor layer (which is NOT an easy thing to do) just so a dozen or so scripts can take advantage of a little less typing? > > it's an ongoing maintenance issue. The scripts get written and they're > > done. > I hate large scale duplication of anything. Isn't the reduction of mindless > copying part of the reason for the scripts in the first place? Absolutely not. The purpose of the scripts was to speed development time and to eliminate mistakes induced by the process of having to hand code these various aspects of the recompiler. All of the information to do opcode emitters, source structures, and disassemblers (and assemblers later if we're so inclined) is in one place. I normally agree with large scale duplication (avoidance, that is), but are you sure this isn't just a reflex? Most people say "Gotos are evil! Never use them!" without actually questioning whether or not it makes sense. What you're proposing is a significant amount of additional work with very little gain. These are not scripts that are going to be repeatedly modified. In the aspect of sustaining something, I'd agree with you wholeheartedly, but this is effectively a write once operation. It's not like you're going to go back and change register sets or add entirely different operations. And like I said, I'm very much against splitting up things for no other reason than splitting them up, and going to a bunch of extra work to save someone a minor bit of keystrokes they aren't bound to ever repeat. > The specific CPU I had in mind for #include and/or #ifdef/#endif is mips32. > Without those, the entire thing will have to be duplicated for the various > implementations. And why is this a bad thing? > I don't have the details on the N64, but the chip offers > selectable endianness -- though IIRC it's defined by an external bit. They'd be different scripts if the endian had changed. > The > coprocessor section will be different for every single implementation. It just > feels *wrong* to have to duplicate large portions of the script. Of course it does. However, this is one case that I think we should be closely evaluating if going to a bunch of extra work for the sake of satisfying a reflex. Initially I agreed, but the more I look at it the more I'm convinced it's not worth the effort. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 21:15:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA63961 for dynarec-outgoing; Thu, 27 Sep 2001 21:15:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Sep 2001 21:21:36 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: DYNAREC: the output of the scripts and variable length opcodes Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Fear the spam of a bored coder! Seems my book earlier either got ignored or scared too many people =P I think we need to touch on exactly what the scripts are supposed to produce, and how much will just get kludged in via the covers or whatnot. Specifically, how tightly is the source opcode scanner/matcher tied to the script? If the scanner/matcher is still going to be written specific to each CPU, like the covers, would there be a way to convey some bit of information to it? The following bit of 65c816 code demonstrates the reason: LDA #$00 | A9 00 ADC #$00 | 69 00 LDX #$42 | A2 42 XCE | FB PHP | 08 PLA | 68 AND #$EF | 29 EF PHA | 48 PLP | 28 LDX #$DEAD | A2 AD DE AND #$CF | 29 CF PHA | 48 PLP | 28 LDA #$BEEF | A9 EF BE Note the different lengths of LDA and LDX at different points. If the scanner is being directed by the script, how does one describe this particular sort of behavior? Use 4+ different scripts and hack things to pick a new script on every XCE or processor status change? This also affects the 386 and up, in immediate operands and address displacements. John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 22:19:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA64033 for dynarec-outgoing; Thu, 27 Sep 2001 22:19:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 28 Sep 01 01:21:05 -0400 Message-Id: <3.0.5.32.20010927222227.008a9100@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 27 Sep 2001 22:22:27 +0000 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: the output of the scripts and variable length opcodes In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Note the different lengths of LDA and LDX at different points. If the >scanner is being directed by the script, how does one describe this >particular sort of behavior? Use 4+ different scripts and hack things to >pick a new script on every XCE or processor status change? Maybe you could simply pretend LDX is a 1-byte instruction, and then write code which determines how to fetch the operand. After all, none of that operand data is important to the decoding and recognition of the instruction. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Sep 27 22:23:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA64048 for dynarec-outgoing; Thu, 27 Sep 2001 22:23:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Sep 2001 22:34:09 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: the output of the scripts and variable length opcodes In-Reply-To: Message-ID: <20010927220403.J56812-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Fear the spam of a bored coder! > Seems my book earlier either got ignored or scared too many people =P Certainly not ignored... just still groking it! > I think we need to touch on exactly what the scripts are supposed to > produce, and how much will just get kludged in via the covers or whatnot. Precisely. We've gone over this before but I don't think you were on the list then. > Specifically, how tightly is the source opcode scanner/matcher tied to the > script? If the scanner/matcher is still going to be written specific to > each CPU, like the covers, would there be a way to convey some bit of > information to it? I'm not sure what you mean by the "scanner/matcher" per se, but there are several components we want it to emit: Disassembler: 'Nuf said Cover templates: You fill this in to generate equivalent functionality in some other native processor. That is, if you had a z80 script, it'd create a set of cover APIs for all of the Z80 instructions, and in those APIs you'd create code to emit, say, x86 or some other processor. Source table: This is the table that the executor uses to figure out whom to call when it needs to create a cover for a given source instruction. Opcode emitter: This generates individual target opcodes. This is the set of routines that the cover template APIs use to emit equivalent instructions. So for example: If we wanted to do a 68000->x86 recompiler, we'd tell the emitter to emit an x86 disassembler, a 68K disassembler, a 68K cover template, an x86 opcode emitter, and a 68K source table. Clear as mud? > Note the different lengths of LDA and LDX at different points. If the > scanner is being directed by the script, how does one describe this > particular sort of behavior? Use 4+ different scripts and hack things to > pick a new script on every XCE or processor status change? So what you're saying is that by running a specific instruction, it changes the DISASSEMBLY and opcode interpretation length? That's just plain weird! > This also affects the 386 and up, in immediate operands and address > displacements. Well, not really, because on the 386 and up it's a matter of whether or not you're in protected or real mode. The 66/67 means the "opposite of whatever mode we're in". -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 28 00:27:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA64166 for dynarec-outgoing; Fri, 28 Sep 2001 00:27:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 28 Sep 2001 00:32:47 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: the output of the scripts and variable length opcodes In-Reply-To: <20010927220403.J56812-100000@beacon.synthcom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, 27 Sep 2001, Neil Bradley wrote: > > I think we need to touch on exactly what the scripts are supposed to > > produce, and how much will just get kludged in via the covers or whatnot. > > Precisely. We've gone over this before but I don't think you were on the > list then. I most likely was, but I probably don't qutie remember all of it correctly =P As far as I can remember, I hit the signup button within 3 days of the original announcement on mul8 > So for example: > > If we wanted to do a 68000->x86 recompiler, we'd tell the emitter to emit > an x86 disassembler, a 68K disassembler, a 68K cover template, an x86 > opcode emitter, and a 68K source table. Clear as mud? I see the disassemblers as being almost completely seperate functions. I see a first stage scanning through the source code, matching up bits with the source table. That would produce a list of source instructions with flag info. Call this TraceCode(). A second stage, probably optional, performs various bits of voodoo on this list to do things like flag optimization or whatnot. Call this BlackVoodooMagic(). A third stage runs down the processed list of source instructions, calling the various covers. Call this one GenCode(). Are these three stages going to run seperately, or run one instruction at a time? If they run seperately, how will TraceCode() figure out how much to step the PC by for the pathological instructions presented? > > Note the different lengths of LDA and LDX at different points. If the > > scanner is being directed by the script, how does one describe this > > particular sort of behavior? Use 4+ different scripts and hack things to > > pick a new script on every XCE or processor status change? > > So what you're saying is that by running a specific instruction, it > changes the DISASSEMBLY and opcode interpretation length? That's just > plain weird! The only disassembler I know of for the 65c816 is a full out code tracing one. For assembly, I think the assemblers looked at how large an immediate you entered, and output the instruction accordingly. Yes, the ability to create truly frightening code is nuts. As for a specific instruction changing the disassembly or opcode interpretation, XCE is roughly equivalent to a mov CR0, reg on the x86 that changes the pmode flag, or a jump to the next instruction that loads a 32 bit code selector. The flag changes to change the size of X/Y or A/mem access are quite evil though. For an idea of how evil some of the SNES stuff that's been dealt with is, the speed of the main processor depends on what bank it's executing from. One set of banks is ram or "FastROM", the other is "SlowROM". FastROM can be accessed at the 3.78 MHz it normally runs at, SlowROM can only be accessed at something like 2.48 MHz. Yes, Nintendo has some sadistic &%*@(#'s in their design department. > > This also affects the 386 and up, in immediate operands and address > > displacements. > > Well, not really, because on the 386 and up it's a matter of whether or > not you're in protected or real mode. The 66/67 means the "opposite of > whatever mode we're in". Not quite, it's actually a matter of whether you're using a 16 or 32 bit code segment. The usual use of a 16 bit code segment in protected mode though is a V86 task, but it doesn't have to be. The other point on the x86 is that the prefix bytes can come in any order. On one hand, it lets you keep the script somewhat shorter, as you have to treat them like seperate opcodes. On the other hand, you would still need either a fair bit of intelligence in the stage that parses through the source code and table, or keep 4 seperate scripts around for the various combinations of 16/32 bit operands and 16/32 bit addresses. This would be one case where some preprocessing could be handy, as only a handful of operations have 4 different sizes. These would be the op [mem], immediate ones, where mem involves a displacement. The others would only have 4 seperate entries if you got specific in the script about AX/EAX or the various addressing modes. Hmm, just thinking of the possible names for the various x86 instructions gets scary. add [eax + ebx*4 + disp], immediate has quite a lot of opcode fields to it =P > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base MIDI channel are belong to us. > Synthcom Systems, Inc. > ICQ #29402898 John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 28 00:33:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA64183 for dynarec-outgoing; Fri, 28 Sep 2001 00:33:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 28 Sep 2001 00:39:31 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: the output of the scripts and variable length opcodes In-Reply-To: <3.0.5.32.20010927222227.008a9100@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, 27 Sep 2001, Bart wrote: > Maybe you could simply pretend LDX is a 1-byte instruction, and then write > code which determines how to fetch the operand. After all, none of that > operand data is important to the decoding and recognition of the instruction. The operand data does affect the location of the next instruction though, unless the decoder knows of this particular bit of insanity, or asks the cover generator how large it *really* is. > Bart John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 28 13:14:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA64944 for dynarec-outgoing; Fri, 28 Sep 2001 13:13:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 28 Sep 2001 13:24:17 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: the output of the scripts and variable length opcodes In-Reply-To: Message-ID: <20010928131259.Q59278-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > If we wanted to do a 68000->x86 recompiler, we'd tell the emitter to emit > > an x86 disassembler, a 68K disassembler, a 68K cover template, an x86 > > opcode emitter, and a 68K source table. Clear as mud? > I see the disassemblers as being almost completely seperate functions. It winds up being a completely separate piece of source code if that's what you mean. > I see a first stage scanning through the source code, matching up bits > with the source table. That would produce a list of source instructions > with flag info. Call this TraceCode(). Are you talking about disassembly or recompilation? If recompilation, that's exactly how DRMZ80 would work. In fact, it would make a list of instructions until the next hard terminal and pass each opcode, one by one, to the opcode emitter layer. > A second stage, probably optional, performs various bits of voodoo on this > list to do things like flag optimization or whatnot. Call this > BlackVoodooMagic(). > > A third stage runs down the processed list of source instructions, calling > the various covers. Call this one GenCode(). Well, not quite how I'd do it. You've made it more complex than it needs to be. ;-) Here's the order of operations: * When the recompiler hits a chunk of code that hasn't been recompiled, it runs through (using the table as a reference to figure out size) creating a linked list of source level instructions until it hits a hard terminal, complete with opcode information and pointers back to the table entry that it matched. * The recompiler loops through this list and for each source instruction calls the target opcode emitter. It also passes in information on which flags need to be preserved and computed so the target layer will emit a pre/postamble of flag calculations. so that way, if you have a sequence like: loop: ld a, (hl) ld (de), a inc hl inc de djnz b the "inc hl" instruction will pass info to the target layer that says "Don't compute flags" and the target layer doesn't emit those instructions. So this winds up creating the same optimization without having to do a completely separate pass. * At this point the target layer has created all of the target instructions. The recompiler calls a target specific procedure that does any target optimization that could be done in addition to having it lock down the position in memory where the code is. The target layer keeps a linked list of instructions so they can be easily removed and jumps and the like can remain pointers to structures rather than hardcoded addresses. The final step takes this linked list and emits the actual binary code. Then he recompiler executes that block, etc... > Are these three stages going to run seperately, or run one instruction at > a time? If they run seperately, how will TraceCode() figure out how much > to step the PC by for the pathological instructions presented? Because the source layer table includes information on how long each instruction is - all derived from the script. > > So what you're saying is that by running a specific instruction, it > > changes the DISASSEMBLY and opcode interpretation length? That's just > > plain weird! > The only disassembler I know of for the 65c816 is a full out code tracing > one. For assembly, I think the assemblers looked at how large an immediate > you entered, and output the instruction accordingly. Yes, the ability to > create truly frightening code is nuts. In your example the opcodes for LDA for 8 bit and 16 bit were the same... Was that intentional? > For an idea of how evil some of the SNES stuff that's been dealt with is, > the speed of the main processor depends on what bank it's executing from. > One set of banks is ram or "FastROM", the other is "SlowROM". FastROM can > be accessed at the 3.78 MHz it normally runs at, SlowROM can only be > accessed at something like 2.48 MHz. Yes, Nintendo has some sadistic > &%*@(#'s in their design department. Or what you can do on a higher level is divide the execution time in half (or multiply it). > > Well, not really, because on the 386 and up it's a matter of whether or > > not you're in protected or real mode. The 66/67 means the "opposite of > > whatever mode we're in". > Not quite, it's actually a matter of whether you're using a 16 or 32 bit > code segment. The usual use of a 16 bit code segment in protected mode > though is a V86 task, but it doesn't have to be. That's what Imeant by "the mode we're in". > The other point on the x86 is that the prefix bytes can come in any order. > On one hand, it lets you keep the script somewhat shorter, as you have to > treat them like seperate opcodes. You'll find though that they don't just come in any order. But I also don't expect to be recompiling x86 code into anything anytime soon - especially mixed mode code. > On the other hand, you would still need either a fair bit of intelligence > in the stage that parses through the source code and table, or keep 4 > seperate scripts around for the various combinations of 16/32 bit operands > and 16/32 bit addresses. I have no intention on using this as a source layer. That's years down the road and a completely different set of problems. > Hmm, just thinking of the possible names for the various x86 instructions > gets scary. > add [eax + ebx*4 + disp], immediate has quite a lot of opcode fields to it > =P It's not too evil. And what you'll find is the x86 target emitter script won't be that complex. Of all the instructions out there, there are only a handful that we use in that CPU during the recompilation process. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Sep 28 14:15:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA65000 for dynarec-outgoing; Fri, 28 Sep 2001 14:15:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3BB4E948.1B33F154@austin.rr.com> Date: Fri, 28 Sep 2001 14:19:04 -0700 From: tarquin X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: the output of the scripts and variable length opcodes References: <20010928131259.Q59278-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > I see the disassemblers as being almost completely seperate functions. > > It winds up being a completely separate piece of source code if that's > what you mean. Yeah > * The recompiler loops through this list and for each source instruction > calls the target opcode emitter. It also passes in information on which > flags need to be preserved and computed so the target layer will emit a > pre/postamble of flag calculations. so that way, if you have a sequence > like: > > loop: > ld a, (hl) > ld (de), a > inc hl > inc de > djnz b > > the "inc hl" instruction will pass info to the target layer that says > "Don't compute flags" and the target layer doesn't emit those > instructions. So this winds up creating the same optimization without > having to do a completely separate pass. Ahh, that sort of flag stuff is what the BlackVoodooMagic() stage was for. > > Are these three stages going to run seperately, or run one instruction at > > a time? If they run seperately, how will TraceCode() figure out how much > > to step the PC by for the pathological instructions presented? > > Because the source layer table includes information on how long each > instruction is - all derived from the script. Yeah, thought so, thus the problem... > > > So what you're saying is that by running a specific instruction, it > > > changes the DISASSEMBLY and opcode interpretation length? That's just > > > plain weird! > > The only disassembler I know of for the 65c816 is a full out code tracing > > one. For assembly, I think the assemblers looked at how large an immediate > > you entered, and output the instruction accordingly. Yes, the ability to > > create truly frightening code is nuts. > > In your example the opcodes for LDA for 8 bit and 16 bit were the same... > Was that intentional? Yes, the operation description for the 65c816 looks something like this op E=1 or E=0 & M/X=1 E=0, M/X=0 imm dir ADC A <- A + B + Pc A <- A + W + Pc A9 A5 B in the operation means "byte argument specified by amode", W means "word argument etc" This won't affect opcode size for most instructions (it WILL affect the cover) but it will affect the size of immediate operands. This going to get the 65c816 labeled as "too nasty to dynarec" with this? =P > > For an idea of how evil some of the SNES stuff that's been dealt with is, > > the speed of the main processor depends on what bank it's executing from. > > One set of banks is ram or "FastROM", the other is "SlowROM". FastROM can > > be accessed at the 3.78 MHz it normally runs at, SlowROM can only be > > accessed at something like 2.48 MHz. Yes, Nintendo has some sadistic > > &%*@(#'s in their design department. > > Or what you can do on a higher level is divide the execution time in half > (or multiply it). Assuming it's still only executing terminal delimited blocks this would work. Of course, I didn't mention the even better part of the SNES, that being it's 8 bit sound coprocessor... > > Not quite, it's actually a matter of whether you're using a 16 or 32 bit > > code segment. The usual use of a 16 bit code segment in protected mode > > though is a V86 task, but it doesn't have to be. > > That's what Imeant by "the mode we're in". ok > > The other point on the x86 is that the prefix bytes can come in any order. > > On one hand, it lets you keep the script somewhat shorter, as you have to > > treat them like seperate opcodes. > > You'll find though that they don't just come in any order. But I also > don't expect to be recompiling x86 code into anything anytime soon - > especially mixed mode code. True on the recompiling bit, I'll have to double check, but I'm pretty sure the architecture doesn't place a requirement on prefix ordering. Then it will matter which assembler one used =P > > seperate scripts around for the various combinations of 16/32 bit operands > > and 16/32 bit addresses. > > I have no intention on using this as a source layer. That's years down the > road and a completely different set of problems. ok > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base MIDI channel are belong to us. > Synthcom Systems, Inc. > ICQ #29402898 > -- > tarquin - John Allensworth > Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 30 17:56:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id RAA69860 for dynarec-outgoing; Sun, 30 Sep 2001 17:55:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 1 Oct 2001 02:01:12 +0000 From: Julian Brown To: dynarec@dynarec.com Subject: DYNAREC: Don't you just hate it when that happens? Message-ID: <20011001020112.B9412@boris> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Mailer: Balsa 1.0.pre5 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Some of you guys might be aware of this already: http://www.transitives.com/ They claim to have an anything-to-anything dynarec of some sort (including ARM as a source architecture, damn them ;-)). They actually have more marketing crap and less content on their website than even Transmeta. *sigh* Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 30 18:00:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id SAA69877 for dynarec-outgoing; Sun, 30 Sep 2001 18:00:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 30 Sep 2001 18:06:11 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: DYNAREC: And you thought the 65c816 was bad... Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="8323328-1183481262-1001898371=:26304" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --8323328-1183481262-1001898371=:26304 Content-Type: TEXT/PLAIN; charset=US-ASCII I hereby dub the x86 as "The Beast". Hug an x86 chip, it deserves it. The instruction decoding on this thing could be used to frighten pets and small children. For an idea of the insanity: 11145 Sep 30 00:51 6502.script 11837 Sep 26 23:57 65c816.script 17401 Sep 26 22:02 mips32.script 14333 Sep 30 17:15 x86-32-emit.script 30277 Sep 30 17:15 x86-32.script Now, on first glance that might not seem too bad 'bah, the mips32 script is larger!' -- until you take into account the fact that the x86 scripts handle AAA, AAS, AAM, AAD, and ADC... and the first 4 are 6 lines total. The difference between the two x86 scripts is that -emit only has the encodings that are useful for emitting, whereas the other one has various 'useless' encodings that could pop up from time to time. The amount of choice allowed was supposedly used by A86 to 'sign' binaries. The x86 scripts only handle the 32 bit addressing modes, and the 16 and 32 bit operand sizes. I have most of those commented out at the moment, as I don't quite know how the naming convention for emitters is going to handle things like this: (flags in, out, and timing sections omitted for clarity) 00010011 00qqq101 (d*32) | ADC | q=REG32, dword [d=DISP32] 00010011 00qqq100 00100101 (d*32) | ADC | q=REG32, dword [d=DISP32] 00010011 00qqq100 01100101 (d*32) | ADC | q=REG32, dword [d=DISP32] 00010011 00qqq100 10100101 (d*32) | ADC | q=REG32, dword [d=DISP32] 00010011 00qqq100 11100101 (d*32) | ADC | q=REG32, dword [d=DISP32] Yes. There really are 5 seperate ways to specify ADC r32, [disp32]. 4 of those could be compressed into one line if it's valid to have a field in the bitmap that isn't used in the operands, as for now all the encodings with a sib byte, but no index are repeated in quadruplicate for each value of scale. A more insidious naming problem pops up with: 10000000 00010rrr (i*8) | ADC | byte [r=REG32], i=IMM8 10000011 00010rrr (i*8) | ADC | dword [r=REG32], i=IMM8 10000011 11010rrr (i*8) | ADC | r=REG32, i=IMM8 If the naming is only based on the operands, this set will clash. They are the ADC r/m8, imm8, and two forms of the ADC r/m32, imm8 instructions. The handling of the mod field is rather nuts as well. It decides whether you're dealing with a register or a memory address, and if a memory address, what size of a displacement is provided. The really nasty part about that is a specialization of mod 00 (no displacement) with the EBP register -- this gets interpreted as [disp32]. I'm not entirely sure I've caught all the special cases in the sib byte, as the number of combinations avaliable at that point is really, really nasty. Looking through things, ADC, SBB, ADD, SUB, AND, OR, XOR, CMP, DIV, MUL, IDIV, and IMUL share basically the same addressing modes. MOV gets really nuts. Most of the others aren't quite as bad -- a lot of them don't have forms that take immediates. I can't think of any sane way of handling the 16-bit addressing modes without seriously special-casing them with some keys. Specifying them explicitly every time would probably result in a script weighing in around 500k at least -- and that is probably conservative, as it wouldn't include the stuff for the overrides. Random bit of trivia: The longest instruction I can think of is LOCK ADC dword FS:[EAX + EBX*4 + disp32], imm32 in real mode. LOCK prefix, operand override, address override, segment override, opcode, modr/m, sib, 4 byte disp, 4 byte immediate -- 15 bytes total. Seems there aren't any two byte opcodes that use both immediates and memory at once. I've attached the larger of the two scripts, with most of the lines that describe inefficient encodings commented out. There are probably typos and other bugs in here, as this is a rather insane arch =P Just noticed that gzip -9 got a 10:1 compression job on it. You still sure expanding everything out by hand is the best idea? =P John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --8323328-1183481262-1001898371=:26304 Content-Type: APPLICATION/x-gzip; name="x86-32.script.gz" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: H4sICJu1tzsCA3g4Ni0zMi5zY3JpcHQAvV1dbxu3En3XryD65DguvCO7uYs2 fpBloTVQNUbdByGGH+xIDhY3kuyVfRuj7n+/JPeLu+RwZiVSCqTY4vLMDPfw kMMlk5svjy/Z6mF9O/jjbrkQZ+Jy9bz4Jr6nH47EyVDcZ89iuZ4vBperzXP+ 8uU5W69+ze9WL9/u8uz5VV6fDgY3D9/uvm5uB2NRvM7EP8n3JEngSPwwvsvz 1x/+/WVw1Sk8lYVXGkSVjtqlkMjS0cv37Ft2l7+KGuRz+7JTddnnRb5WZdft slSVXWdfV6rsr1YZJKrsr/zuUZVdtsqGukw1Qp6/PD6rCy5aF5zqCy6yfKEb Q13wqXVBqi/49L9F/vBt/bcqH9ysHxey0eayjS6n07S8Nj0SL6uN9HAxV25M p/ChKADZ9gcHRvE78db94uNHkb57V9ST90nXOxnKeoxq4m0g2i/7Kvjgrj08 1Vb/nPxahXFyJP67eN2oH0e/H4mxfF/I97l8j36Tv8v3hXyf//ZvUa+K0qw3 k9fJ94V8n8v39ZX8W76vL+V3l2W9Osqm3kRVnKiaE1V1oupOVOWJqj1R1SdF /bKROvWnU3mrZLurj6H6OFEfp+rjJ/XxQX38R9WfGa3c1J9pgJlGmGmImcbo Nm/5mmnsmQafafRZCX9xeX2V1qyoOaG+Vs3VlxOqnnK34sSeSDG4Ho9+nxRh DI0wBuPzVIhuePJbTYXe0Y3Pm3u5x+jG56cV5U/T/Zk9PhyI6Xr+5/H05wJh uVyv13med5CXS/GjSBL5cZMvvt4eiZtNdn8rsgchfxVnZ0XHuJlnm8eTofG9 7CodpCSRBkBDSQh3IcjCAsrpRlWclr4UP9sOdcHBY1kjQ1IbNqDlLyQ2JCS2 8lrWH0jdOf+5Lttssiy7v5dVHvPFQ/ZdrB+/yBFRDYv5UmFpF0S2XA4Oj6XW Z81IKfVejmWytSR0+XoTo9FIfqo/o/Gn689X4u3t7Y+Bukr9kQ2c6J/0lRfl lfKyT6Nx58qD7FAyrL4uO9NjC3J50gae4sCJCTzFgVVk0Ins2hGZZLAYXYwH hwJOhWyt6iW/E2rAkA2XqsKfRDZvFWp1l6WSY4ciTcTxsK6uivPjZVrXTkEX z1vFSh3q+ieO+uUF2rzEz1vmC/xcF4KjUFXONTYMrWJV87gAPrEKdU0FMBiU 98Rsc3nFW9EwVburL2R7jsZliypKqbcoa2sqFDJS1p6VtaXAOqobtU6GTa1J XU3qq11N3kZJeSUxkuaQFC/DhbkGK+KoIO9fnxdSc86KAem2iWn8VkAXyMdd OPUDJFFwIQ4uRPIXIvmr21eqmhPw/kzPt3q3a0A8COwf7OAfelcSJ5oce/hI m81qtWrUvI20KvwSh+IAPn7cvOsJS4Qr3ouDrgWmCTn9cCLn/oasUMAlG6YU zf9e53Ob2EqX3HcavMoRDBoiQ0tNjwYdra1LmjkwO/2K721YSAjvJezmJQJY KooD0NAUBpgpKg4wTFa4yGTcXmUhrJTS4gDPiUZt5kU+mTHnSW7mq0lThwAo slNugpuAPZloyU8kE9HvRclOG7vTKbfwPg40xPMadvKaAi7lygY21KoPqClb NiimWr0tUO3hVS+uNYeMOVXMwivlEIBIrZBhG5sLA3Bzq12AISpwS56CAkdq Y3sC7p4fsD0NCQihPYRdPETg7BzLnhDRUEiSRUyHmLhUxFukWQBYmuWeCqXE TIgUEy7PUVxKVEIYgL0YwEQmnIHI98DmI7NHU57HAIZYHsMOHlOwtiiRmuSB RMSpnzZR+ERL9NIoxJYtVjytqtaVQa0rm0t3YLF6rtDxFdD0fY+FQbCoHQMd ovoOwXxHsDXTSWzNeyZsw0auy+9LYh7WtGSY0mRELeQ160tbODmNtR+cj+hy mtXu3sUlnJKBDUDsCCBkBAh8i5se+IadDGSbnrTjCEEJay2G4qtdNkeLzQ/q gWuXqo5UFOcstvZi3Q/eigPO3UiGYF8RQcCIKDMtTuNmGkr3sWBzmwwEoTbX aovjtjGU4vaiiJlvsuYFfo3xpbOsicHu8BDXewjnPQKOzQ1Q+aVxvZODXuLr t4XNDijpTUnNZfOz5w32mYG9mIH9RAPBoqGMYPzl0teD7+XxLjRGbGJ87k3n IhWDpJOKQeKgNLUbpUdCA4mDyzHwIbL/ENB/BL2kLYnOSMogcfCV63bftAyS hqiYjS5TzcbBJr31jMNHUs9+hz75jY+noU1A/CggbBSIgTZhfQY4mZqPswzn e+dqDtoykjXfLgVXsuHjLv6QfKu8xsfhWKZgf1FB0KgoQ21uewz1yth8HKeD 2T5nc3CdTtp8j7KNxIQ5hSA0x5P5MOcQAQxA7AggZAQIPDqNwEWZRvbPI/pJ st8aOpEgBZmVwzHZ2vdW+wzBngzBviKCgBFRZlA2s8nsseBn9U6kRqyi7O5L 7iqhg9aZDQDn4zoNmzYTbmxGBO7tTaVX2LzHMdwYQOY4o4HUiUD3qNI0lSeM 2g9Gi3tgai8s1Ri0z8PoJ6DF9vinpydjlwJ6UuNJt7bdoTpA9saKAIgQGhGC +wjBfaylHDv70a/9giBBMJ9gK5/Qdk+cZ1qYGPWOBvI0Sx9ANDhs8wIDXHV7 7ASLs3pVH9CObu8ZfCp9Q24i0F19J0yIhdnslAqIGb49Td5YexF7+hcICwL6 BVv6hSCZXb+11ZKLYnV+fJdlL0g8RG//J+BNAbD2VroBOsdvfVrgpq5vQYOv CUGwITa2rREBseO1t0k2Z3fawt/AmBDBT9jOTwrR1BRLUvqgWdril5be0Gjo XonhmjG1xik19gJaUvZ+VGGeypytMy1Gxg1gpBU7IEJoRAjuIwT30dKLNlTV d7jtFwQJgvkEW/mEtnuC4Cg9IDGs3t/GsFSAB0gG5+77XnCzp7cxc3eDVfXB 39HVqkZ3PozdRGB29W0xITwmRPATIvjp7vIGGNXBgOr022FBQL9gS7/QO5Cg SHR+AUCpgAHH1AGgdMCOtY8SAKIEBiqqBe3pAyUKao2S5DAGSYjDrtgQDxsi +g0R/XaLRwOK91GinQNjQgQ/YTs/6TuVYIhebcFh3SLTwJIaQ0DTbcDTGrcZ S3QadExzOoewmlVS6NK22GdIHTIi162hS93AuBDJXwjgL4LabEj1HLNiAnZ2 oPY8YMUw0mw5pY9WuVfSzcVMgmXofnV6mZTgWQBkiOYzBPEZwbXZ5tq4z4VE +Mbds88xYzPOs12/AiQOSrEZ6G1y3iIbwcSAFiB6DBAiBgrfZihG0D7QCFP7 EJVrzmYsQdji30MWmFICPR671rGaO+FZ8CHYuTMuRPIXAviLoNr8c6N6F68I 2nn9tOjntWKzzbn0ZLAO5RnweGYtn9B3DnhM2w0ZovkMQXxGcBG+OXBxxgGP cbivTM6Bl3P2IofJOtaYzOVgNxv33U6PBYhtAaLHACFioPARjtr4Lori2D6u or6TVHXbQzhr5cgUZbun5er8CBIHb/E9bD2yUEgcfA2LDNF8hiA+I7jGBmDf eTguZnfLb9+jcBw7xiZf1im46r9cEZ5EmqQefniATEtJ8oXAhoh+QyC/EWQH BZ1nKbigGAfZxyg4hhwk9J2gQHZEuXJFkor+VmfloyQlQ9qAPcQBYeKgLDio ijK1DzhG2V6M5Rp0UJdiruuEGn/Ydu8RodIHzrC9OzJE8xmC+MwfthFcNOXh DNt+X3kpj2fY9ufZ1iH2HYZvbNcCeUOBScIdsSGi3xDIb74mosg4GYFJRo+/ TDqCn46eFNz1+G+bARx5Gs5OXtmkDGQD9hAHhIljiwEcs0An4mzS4v73TMUp 8uK5OP7oujjj2Gg1dB6EV6cbn4xESqBdy1lb9SnWVgIUQQWGTHLQitXokvs3 SLnr6f9qDH8WZi+RuGGU3zn+hOL/8KpuKEV2AAA= --8323328-1183481262-1001898371=:26304-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 30 21:07:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA70024 for dynarec-outgoing; Sun, 30 Sep 2001 21:07:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 30 Sep 2001 21:18:44 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: And you thought the 65c816 was bad... In-Reply-To: Message-ID: <20010930211548.A65689-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I hereby dub the x86 as "The Beast". Hug an x86 chip, it deserves it. Yup. However, you'll find that we'll only be using a subset of them. That is unless you plan on doing something heinous with the source layer! > The longest instruction I can think of is > > LOCK ADC dword FS:[EAX + EBX*4 + disp32], imm32 You need a REP in there somewhere, too. ;-) > Just noticed that gzip -9 got a 10:1 compression job on it. You still sure > expanding everything out by hand is the best idea? =P Yep. ;-) It's either that or coding up a preprocessor, the preprocessor being much more heinous. Tell ya what - I'll code up the lexer/grammar parser, and you can retrofit a preprocess into it. How 'bout that? ;-) Give me a few days to get my act together, here. I'm working on some Europa stuff right now and I need to finish it up before I can get back to having fun. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Sep 30 21:37:53 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id VAA70054 for dynarec-outgoing; Sun, 30 Sep 2001 21:37:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 30 Sep 2001 21:43:42 -0700 (PDT) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: And you thought the 65c816 was bad... In-Reply-To: <20010930211548.A65689-100000@beacon.synthcom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Sun, 30 Sep 2001, Neil Bradley wrote: > > I hereby dub the x86 as "The Beast". Hug an x86 chip, it deserves it. > > Yup. However, you'll find that we'll only be using a subset of them. That > is unless you plan on doing something heinous with the source layer! > > > The longest instruction I can think of is > > > > LOCK ADC dword FS:[EAX + EBX*4 + disp32], imm32 > > You need a REP in there somewhere, too. ;-) The official docs say REP is only for use with the string instructions =P Mentions it's undefined when used with anything else... also I seem to remember something about instructions longer than 14 or 15 bytes breaking the decoder or taking multiple cycles to decode. > > Just noticed that gzip -9 got a 10:1 compression job on it. You still sure > > expanding everything out by hand is the best idea? =P > > Yep. ;-) It's either that or coding up a preprocessor, the preprocessor > being much more heinous. Heh, hunting bugs in this thing will suck ^_^ > Tell ya what - I'll code up the lexer/grammar parser, and you can retrofit > a preprocess into it. How 'bout that? ;-) Worth a shot. I'm debating whether or not to write a script generator thingus real quick or hack up a quick and dirty set of x86 emitters, the ubercore must go forward! > Give me a few days to get my act together, here. I'm working on some > Europa stuff right now and I need to finish it up before I can get back to > having fun. starting tomorrow I'm back to hacking asm C++ code =P > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley All your base MIDI channel are belong to us. > Synthcom Systems, Inc. > ICQ #29402898 John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 1 06:44:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id GAA70706 for dynarec-outgoing; Mon, 1 Oct 2001 06:44:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Aug 1959 03:29:51 -0500 (CDT) From: Graham Toal Message-Id: <195908270829.DAA12175@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Don't you just hate it when that happens? Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Some of you guys might be aware of this already: > > http://www.transitives.com/ > > They claim to have an anything-to-anything dynarec of some sort (including > ARM as a source architecture, damn them ;-)). They actually have more That's no coincidence considering where they come from and who the head of department is... > marketing crap and less content on their website than even Transmeta. > *sigh* I think I may have posted this link some time in the summer: http://www.eetimes.com/story/OEG20010611S0108 Alasdair Rawsthorne (the "CIO") is a lecturer at Manchester http://www.cs.man.ac.uk/arch/people/a-rawsthorne/index.html and has managed quite a few student projects in the area. (my guess is *all* his student projects for the last 5 years have been funneling research into this company..) I suspect that the US side of Dynamite is probably more composed of lawyers and salesmen than techies - the home pages indeed says they are "an Intellectual Property licensing company". I.e. vulture capitalists who buy up patents. I would presume they're buying them from Manchester University, unless the British rules about University-generated intellectual property have changed considerably since I was last in academia. Anyway, Rawsthorne's giving a talk on the 17th in San Jose. Any of our Left Coast members going to "Microprocessor Forum 2001"? http://www.mdronline.com/mpf/conf2.html G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 1 07:25:04 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id HAA70748 for dynarec-outgoing; Mon, 1 Oct 2001 07:25:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Aug 1959 04:10:50 -0500 (CDT) From: Graham Toal Message-Id: <195908270910.EAA12268@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Don't you just hate it when that happens? Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I suspect that the US side of Dynamite is probably more composed > of lawyers and salesmen than techies - the home pages indeed says > they are "an Intellectual Property licensing company". I.e. > vulture capitalists who buy up patents. I would presume they're > buying them from Manchester University, unless the British rules > about University-generated intellectual property have changed > considerably since I was last in academia. >From http://www.cs.man.ac.uk/Research_subweb/PerformanceEngineering.asp ... Our architecture research has evolved from hardware and compiler support for Virtual Shared Memory to studies of performance enhancement of both serial and parallel systems by the use of innovative dynamic translation and dynamic compilation concentrating on the hardware / software interface for parallel support of new languages such as Java. The development of binary translation software has resulted in 3 patents, attracted serious industrial interest and led to the formation of Transitive Technologies Ltd., a transatlantic spin-out with $3M VC funding. ---- 3 Megabucks. Nice investment... The main difference between what they're doing and what you're doing here is that they optimise over large blocks. From the powerpoint presentation at http://www.transitives.com/presentations/Dynamite_General_files/frame.htm (IE5 only, not netscape :-( ) Optimization Process Basic Block Mode Applies automatic standard optimizations Dead code elimination, Value propagation, etc Set of traditional compiler optimizations "for free" Group Block Mode Automatic hot-spot analysis and optimization Kernel learns software behavior at run-time Optimizations extend to larger and more important code regions Dynamic Optimizations Automatic special-case code translation Value-specific optimizations & Gross code motion Applied across library boundaries i.e. the entire executable --- They push the dynamic optimisation very heavily and claim that the time saved by optimised code makes up for the extra work in optimising. Clearly something exists but it would be nice for it to be evaluated by the sort of people who are in this group who know what they're talking about. I have a strong hunch that due to the "dash to cash" we're not going to see many detailed tech papers on this from now on, just marketing hype. It does appear to be a superset of the project here. I can see eyes twinkling already at the thought of $3M vulture capital :-) (Although a more likely scenario would be $50K to dump the project and go find something else to do... no-one who is investing $3M in capital wants to see a high- quality public domain rival for their investment..., and a second VC is unlikely to invest fully in a project that already has one implementation and we don't even know yet if it will be a commercial success. A safe bet however is if Dynamite *is* a commercial success, it would be no problem getting VC for dynarec in order to jump on the bandwaggon...) G PS If I were in their shoes, I would certainly expect to be aware of dynarec and would probably have someone reading the list who would report back in case of any technologically interesting or comercially threatening developments. But I'm just naturally suspicious that way. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 1 09:37:13 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA70865 for dynarec-outgoing; Mon, 1 Oct 2001 09:37:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 1 Oct 2001 09:48:26 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Don't you just hate it when that happens? In-Reply-To: <195908270910.EAA12268@gtoal.com> Message-ID: <20011001094338.V72441-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > of new languages such as Java. The development > of binary translation software has resulted in 3 patents, Ho-hum. If we can prove prior art (And there's plenty of it around) then any of these "patents" are nothing more than noise to us. > The main difference between what they're doing and what you're doing here > is that they optimise over large blocks. So does our design. More to the point, so can our design. When a recompiler hits a branch, it can just call itself with the branched-to address and perform the same optimization it could if it was just doing smaller blocks. > They push the dynamic optimisation very heavily and claim that the time > saved by optimised code makes up for the extra work in optimising. I'd really like to see it optimize code that's already optimized. I don't think it'll do anywhere near as good as they claim. > Clearly something exists but it would be nice for it to be evaluated > by the sort of people who are in this group who know what they're > talking about. I have a strong hunch that due to the "dash to cash" > we're not going to see many detailed tech papers on this from now on, > just marketing hype. ALA Transmeta. ;-) Where are they these days, anyway? Stock is worthless. Intel's pricing and product line is far superior to theirs in all aspects. > twinkling already at the thought of $3M vulture capital :-) (Although > a more likely scenario would be $50K to dump the project and go find something > else to do... no-one who is investing $3M in capital wants to see a high- > quality public domain rival for their investment..., and a second VC is > unlikely to invest fully in a project that already has one implementation and > we don't even know yet if it will be a commercial success. A safe bet > however is if Dynamite *is* a commercial success, it would be no > problem getting VC for dynarec in order to jump on the bandwaggon...) There was an old joke here at Intel. We invested something like $800 million in Proshare - an old app sharing program that did the same job as Netmeeting, only much more immature. There were around 550 people who worked on the project over 5 years. We joked we could just give $1 mil to each person who worked on it and pocketed the $150 mil and came out ahead. ;-) > PS If I were in their shoes, I would certainly expect to be aware of > dynarec and would probably have someone reading the list who would report > back in case of any technologically interesting or comercially threatening > developments. But I'm just naturally suspicious that way. I've already closed the list. Whomever is on now is the only group of people who can be on. -->Neil ------------------------------------------------------------------------------- Neil Bradley All your base MIDI channel are belong to us. Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 1 13:43:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA71074 for dynarec-outgoing; Mon, 1 Oct 2001 13:43:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005801c14aba$1ee85680$7169393e@menta.net> From: "Victor Moya del Barrio" To: References: <195908270829.DAA12175@gtoal.com> Subject: Re: DYNAREC: Don't you just hate it when that happens? Date: Mon, 1 Oct 2001 22:46:14 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "Graham Toal" To: Sent: Thursday, August 27, 1959 10:29 AM Subject: Re: DYNAREC: Don't you just hate it when that happens? Could you change this please? A 1959 date shows disgusting at my elm mail client in my work ;) (that seems it was the 'missing' mail I didn't find this morning ^_^). Strange Outlook sorts them correctly. > > Some of you guys might be aware of this already: > > > > http://www.transitives.com/ > > Transitive seems interesting (I remember something a year ago or so about them, perhaps even before they publicited the information in those webpages). But as Transmeta (or even more) there isn't really any useful information. I think there is even less information than in the case of transmeta (Transmeta had a white paper and the patents to work with). > G Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 1 13:50:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA71090 for dynarec-outgoing; Mon, 1 Oct 2001 13:50:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006001c14abb$29002660$7169393e@menta.net> From: "Victor Moya del Barrio" To: References: <195908270910.EAA12268@gtoal.com> Subject: Re: DYNAREC: Don't you just hate it when that happens? Date: Mon, 1 Oct 2001 22:53:41 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Our architecture research has evolved from hardware and compiler support for > Virtual Shared Memory to studies of performance enhancement of both > serial and parallel systems by the use of innovative dynamic > translation and dynamic compilation > concentrating on the hardware / software interface for parallel support > of new languages such as Java. The development > of binary translation software has resulted in 3 patents, > attracted serious industrial interest and led > to the formation of Transitive Technologies Ltd., a transatlantic > spin-out with $3M VC funding. > Well. I think that dynamic or static translation is already an old technique. I don't see any new developments (since perhaps Dynamo and their hot traces, which btw I think is what P4 trace cache does in hardware). The software problems about dynamic translation are more about implementation than about the techniques. In the other hand hardware support is another matter, but who would (but those losers of Transmeta) create a new architecture just for emulate other architectures? > ---- > > 3 Megabucks. Nice investment... > I want some ;). > > They push the dynamic optimisation very heavily and claim that the time > saved by optimised code makes up for the extra work in optimising. > Well ... Yes if they can optimize something :). > Clearly something exists but it would be nice for it to be evaluated > by the sort of people who are in this group who know what they're > talking about. I have a strong hunch that due to the "dash to cash" > we're not going to see many detailed tech papers on this from now on, > just marketing hype. > I don't think we would find something we already don't know ... Just as with Transmeta Code Morpher the more interesting to see is the way it has been implemented and how it truely performs (that is what kind of code generates for a given input). And the source code :). But we will never get them. IBM's Daisy is more interesting (I should check the code someday ...), but only if you have a VLIW processor. > G > > PS If I were in their shoes, I would certainly expect to be aware of > dynarec and would probably have someone reading the list who would report > back in case of any technologically interesting or comercially threatening > developments. But I'm just naturally suspicious that way. > Well dynarec is well hidden :). No one talks bout it. No one knows about it ;). Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 1 13:54:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA71106 for dynarec-outgoing; Mon, 1 Oct 2001 13:54:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Aug 1959 10:40:50 -0500 (CDT) From: Graham Toal Message-Id: <195908271540.KAA13198@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Don't you just hate it when that happens? Cc: victormoya@menta.net Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Could you change this please? A 1959 date shows disgusting at my > elm mail client in my work ;) (that seems it was the 'missing' mail I I will if you buy me a new motherboard :-) (Unfixable Y2K problem and I'm too mean to replace an otherwise working system) I generally don't email from this system but I have to in the case of Dynarec because the list won't accept submissions from my other address. G (and in fact I just did it again - I've lost count of the number of times I've replied from my gtoal@vt.com address and had to cut&paste to the other screen so I could resend as gtoal@gtoal.com :-( ) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Oct 1 14:04:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA71126 for dynarec-outgoing; Mon, 1 Oct 2001 14:04:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 27 Aug 1959 10:50:34 -0500 (CDT) From: Graham Toal Message-Id: <195908271550.KAA13235@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Don't you just hate it when that happens? Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > than about the techniques. In the other hand hardware support is another > matter, but who would (but those losers of Transmeta) create a new > architecture just for emulate other architectures? Well, I may be talking through my arse here as this is a poor memory of something I didn't know the details of in the first place... I sort of recall some kind of "European Computing Initiative" (maybe Alvey money?) to design a "Euro Chip" - heavily government grant supported, with the intention of weaning Europe off the American-based X86 chips and on to something home grown. Seemed crazy at the time which is why I never paid much attention to it. The second relevant possible memory I think I remember is that when Steve Furber left Acorn for Manchester, he somehow managed to tie the self-clocked ARM project into that source of grant monies, and the final partial and completely unreliable memory I think I recall is that the whole thing then turned into some sort of transmeta-like project where the core of the computer did not implement the instruction set that the users saw. Call this posting my first public "serior moment". I'm really hazy about something I think I remember. I wouldn't even mention it except I'ld like to find out if any of this had any basis and I'm not really going senile :-) G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Oct 7 12:26:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id MAA80605 for dynarec-outgoing; Sun, 7 Oct 2001 12:25:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3BC0AD8F.FA907B36@gmx.de> Date: Sun, 07 Oct 2001 21:31:27 +0200 From: Kai =?iso-8859-1?Q?Sch=FCtz?= X-Mailer: Mozilla 4.76 [en] (X11; U; Linux 2.4.1 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Don't you just hate it when that happens? References: <20011001094338.V72441-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > I've already closed the list. Whomever is on now is the only group of > people who can be on. Ah. That's the reason why I didn't succeed in registering my work address with the list... Could you add it manually (ks@axys.de) ? Thanks. -- |/ |\ai --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Oct 7 22:31:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id WAA81062 for dynarec-outgoing; Sun, 7 Oct 2001 22:30:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Mon, 8 Oct 01 01:33:53 -0400 Message-Id: <3.0.5.32.20011007222750.00797180@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 07 Oct 2001 22:27:50 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Don't you just hate it when that happens? In-Reply-To: <3BC0AD8F.FA907B36@gmx.de> References: <20011001094338.V72441-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 09:31 PM 10/7/2001 +0200, you wrote: >Neil Bradley wrote: >> I've already closed the list. Whomever is on now is the only group of >> people who can be on. > >Ah. That's the reason why I didn't succeed in registering my work >address with the list... >Could you add it manually (ks@axys.de) ? Thanks. That clears things up! I was wondering why I couldn't subscribe with bart@dynarec.com. If it isn't too much trouble, I would also like to use the list with my dynarec.com account, as opposed to this unstable mailandnews.com account (one of the reasons I wanted a dynarec.com account ;)) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 9 20:06:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id UAA83601 for dynarec-outgoing; Tue, 9 Oct 2001 20:06:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 10 Oct 2001 04:10:50 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <10711511702.20011010041050@dynarec.com> To: dynarec@dynarec.com Subject: DYNAREC: I feel sorry for them... In-Reply-To: <3.0.5.32.20011007222750.00797180@mailandnews.com> References: <20011001094338.V72441-100000@beacon.synthcom.com> <3.0.5.32.20011007222750.00797180@mailandnews.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com http://www.theregister.co.uk/content/7/22111.html Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 16 23:06:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA94789 for dynarec-outgoing; Tue, 16 Oct 2001 23:05:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 17 Oct 2001 08:07:40 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: gbeauchesne@thalys.mandrakesoft.com To: dynarec@dynarec.com Subject: DYNAREC: Transitive Technologies & Dynamite Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com PPC -> x86. Presenting at the Microprocessor Forum, today it seems. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Oct 17 00:46:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA94911 for dynarec-outgoing; Wed, 17 Oct 2001 00:45:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200110170750.f9H7ocH12874@pons.ac.upc.es> Subject: Re: DYNAREC: Transitive Technologies & Dynamite In-Reply-To: "from Gwenole Beauchesne at Oct 17, 2001 08:07:40 am" To: dynarec@dynarec.com Date: Wed, 17 Oct 2001 09:50:38 +0200 (MET DST) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Dynamite seems interesting but it lacks something (as Transmeta did when they started). Very good ideas but nothing which can be seen working yet. I hope it doesn't end like Transmeta too ... I have been searching a bit their webpage and they have a lot 'marketing' information. I wonder what kind of techniques have they presented for patenting ;))). Perhaps a search in US (or UK) patent webs could be interesting to see those 'new' ideas (I'm not very confident about patenting ...). I would be happy with a bit more of real information (perhaps they will say something in the Microprocessor Forum?). But this forum seems to be more for marketing than the WBT and PACT which are more technical (I'm not an expert about this kind of meetings yet :P). Umm ... I don't have yet the WBT papers I just forgot (lazyness?) to ask to the right person for them ;). Victor > > PPC -> x86. > > Presenting at the Microprocessor Forum, today it seems. > > --------------------------------------------------------------------------- > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Nov 18 19:24:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id TAA00214 for dynarec-outgoing; Sun, 18 Nov 2001 19:23:46 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 18 Nov 2001 19:36:52 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Machine temporarily up Message-ID: <20011118193444.P27247-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I've got Dynarec.com back up again for a short period of time to let a few things clear through the system. Still no long term solution. For those that don't know, Dynarec.com died a horrible death due to a power surge. It took the motherboard, processor, and RAM with it. The video card, network card, and hard disk survived. I need another machine to permanently run it on and it needs to be *SMALL* - a book PC. They have exactly what I need for $249 at Fry's but I don't have $249 to spend on it. -->Neil ------------------------------------------------------------------------------- Neil Bradley I know you believe you understood what you think I said Synthcom Systems, Inc. but I'm not sure you realize that what you heard is ICQ #29402898 not what I meant. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 19 05:03:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA00905 for dynarec-outgoing; Mon, 19 Nov 2001 05:02:43 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 19 Nov 2001 13:03:55 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <602863056.20011119130355@dynarec.com> To: dynarec@dynarec.com Subject: DYNAREC: Got a new job! :) In-Reply-To: <20011118193444.P27247-100000@beacon.synthcom.com> References: <20011118193444.P27247-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi guys, Just a quick e-mail to let you all know that I've got a new job, working for Team 17 up in West Yorkshire! So... I'll be a games programmer. Not entirely certain what I'll be doing there yet, but I start on Dec 3rd. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 19 05:13:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id FAA00921 for dynarec-outgoing; Mon, 19 Nov 2001 05:13:12 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200111191312.fAJDC0c25859@pons.ac.upc.es> Subject: Re: DYNAREC: Got a new job! :) In-Reply-To: <602863056.20011119130355@dynarec.com> "from Neil Griffiths at Nov 19, 2001 01:03:55 pm" To: dynarec@dynarec.com Date: Mon, 19 Nov 2001 14:12:00 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi guys, > > Just a quick e-mail to let you all know that I've got a new job, > working for Team 17 up in West Yorkshire! So... I'll be a games > programmer. Not entirely certain what I'll be doing there yet, but I > start on Dec 3rd. :) > That's great, not like continue working patching a static binary translator software ;). Well, I think by the next year I will truely start with the PhD boring stuff of simulate and simulate ;). Now I'm just doing some courses. About the list, as NB can't keep it now we could move it to some of the free mail list out there (yahoo.groups?). I have now a good connection (32 KB upload) but I just have a plain crashing windows 98 machine (and no place for more) so I could not host anything either (but perhaps the ftp I already run). Yahoo groups offers space for files too. I have been searching for new documents about binary translation but I haven't put all them together. > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 19 09:09:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA01100 for dynarec-outgoing; Mon, 19 Nov 2001 09:09:34 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Got a new job! :) From: "M.I.K.e" Message-ID: <0003931fdc303e3b_mailit@mail.dynarec.com> References: <20011118193444.P27247-100000@beacon.synthcom.com> <602863056.20011119130355@dynarec.com> Date: Mon, 19 Nov 2001 18:12:57 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Just a quick e-mail to let you all know that I've got a new job, >working for Team 17 up in West Yorkshire! I thought you wanted to work in Germany ;-) I'll have to find out where that is to visit you when I come to the UK eventually, but I'm not sure when that might be... >So... I'll be a games >programmer. Not entirely certain what I'll be doing there yet, but I >start on Dec 3rd. :) I hope you'll have more fun than programming with Ada ;-) I'm on the search as well, since I got fired last month due to the firm having financial problems... That would be understandable, but what got me really upset ws a newspaper article two days later where the PR manager was quoted that the main product didn't sell that well but the other products like visitor management sold better, which made restructuring nescessary. This is a bit strange since I'm the only one who has 5 years development experience with that visitor management... Anyway this lead to cancellation of all my vacation plans for this and the next year and I'm obviously in search for a new job... What helps me a bit at the moment is playing some Dreamcast games, especially Headhunter, which I can really recommend. I'm afraid the US DC owners will have to import it since it was only released in Europe, but believe me, it's worth it! >Neil. -- M.I.K.e It's not the valleys in life I dread so much as the dips. -- Garfield --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 19 09:09:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA01109 for dynarec-outgoing; Mon, 19 Nov 2001 09:09:40 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Machine temporarily up From: "M.I.K.e" Message-ID: <0003931fab3a6e28_mailit@mail.dynarec.com> References: <20011118193444.P27247-100000@beacon.synthcom.com> Date: Mon, 19 Nov 2001 17:59:16 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I've got Dynarec.com back up again for a short period of time to let a few >things clear through the system. Still no long term solution. For those >that don't know, Dynarec.com died a horrible death due to a power surge. >It took the motherboard, processor, and RAM with it. The video card, >network card, and hard disk survived. That's bad! At least no data was lost, it seems. I wanted to ask you about the problems before, but I have other problems at the moment... >-->Neil -- M.I.K.e The scum also rises. -- Dr. Hunter S. Thompson --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 19 09:53:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id JAA01147 for dynarec-outgoing; Mon, 19 Nov 2001 09:53:27 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 19 Nov 2001 10:06:35 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Got a new job! :) In-Reply-To: <200111191312.fAJDC0c25859@pons.ac.upc.es> Message-ID: <20011119100414.P35837-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > About the list, as NB can't keep it now we could move it > to some of the free mail list out there (yahoo.groups?). > I have now a good connection (32 KB upload) but I just have > a plain crashing windows 98 machine (and no place for more) so > I could not host anything either (but perhaps the ftp I already run). I didn't say I couldn't keep it - I said I didn't have a dedicated machine that works that I can run it on. That means it'll be intermittent from now on our, as I'm timesharing the machine it's currently in with a box that has other uses. Fortunately I don't use it that often, but it's just not 24 hours a day. To make it full time, I'd need another machine. Perhaps a fund raiser to get $$ to purchase a notebook PC? That's what it was in before, and so I'd like to replace it with that since there's no room for a full sized machine where it will reside. -->Neil ------------------------------------------------------------------------------- Neil Bradley I know you believe you understood what you think I said Synthcom Systems, Inc. but I'm not sure you realize that what you heard is ICQ #29402898 not what I meant. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 19 10:10:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA01169 for dynarec-outgoing; Mon, 19 Nov 2001 10:09:56 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 19 Nov 2001 10:12:23 -0800 (PST) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: Got a new job! :) In-Reply-To: <602863056.20011119130355@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi guys, > > Just a quick e-mail to let you all know that I've got a new job, > working for Team 17 up in West Yorkshire! So... I'll be a games > programmer. Not entirely certain what I'll be doing there yet, but I > start on Dec 3rd. :) Sweet, welcome to this corner of hell =) This mean there's going to be a NG soundset for the next Worms game? ^_^ > Neil. John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 19 13:06:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA01318 for dynarec-outgoing; Mon, 19 Nov 2001 13:05:55 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 19 Nov 2001 19:47:33 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <744859958.20011119194733@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Got a new job! :) In-Reply-To: <0003931fdc303e3b_mailit@mail.dynarec.com> References: <20011118193444.P27247-100000@beacon.synthcom.com> <602863056.20011119130355@dynarec.com> <0003931fdc303e3b_mailit@mail.dynarec.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, MIKe> I thought you wanted to work in Germany ;-) I did, but I couldn't find any games companies in or around Bavaria... I had a bit of interest, but always from the north... And I can't remember what the place is called now, but it's a big city, a port - and not so far from Hannover. :o It's quite sad really... I'll miss the Helles, Dunkel and Rauchbier, but on the other hand, I'm on a wage which means that I can come over for weekend visits. Yaay! :) MIKe> I'll have to find out where that is to visit you when I come to the UK MIKe> eventually, but I'm not sure when that might be... Well, it's in nothern England, and the locals talk right funny round there. Aye lad. Eee, it's right grand. Eee by gum, what a bugger! ;)) MIKe> I hope you'll have more fun than programming with Ada ;-) Jeeeeeeesus, pulling my hair out with a pair of pliers is more fun that programming with Ada! Ada is a horrible language... They've taken all the best bits from Pascal, C++ and Java and then thrown them away, the mess that's left behind is Ada. Still, the military like it, so it's got to be a good language, hasn't it? ;) MIKe> I'm on the search as well, since I got fired last month due to the firm MIKe> having financial problems... Oh, I'm sorry to hear that! It seems to be going around at the moment, which is a shame - two of my friends are currently unemployed, one of them also because of the firm having financial problems. :( MIKe> That would be understandable, but what got me really upset ws a newspaper MIKe> article two days later where the PR manager was quoted that the main product MIKe> didn't sell that well but the other products like visitor management sold MIKe> better, which made restructuring nescessary. This is a bit strange since I'm MIKe> the only one who has 5 years development experience with that visitor MIKe> management... It's PR. I know it must be horrible to have read that... but PR lie. It's their job - it's what they do. Don't believe ANYTHING that PR tell you. Ever. It's a good rule of thumb to go by. MIKe> Anyway this lead to cancellation of all my vacation plans for this and the MIKe> next year and I'm obviously in search for a new job... Of course, that's totally understandable. Well, I wish you the best of luck in finding a new job... I'd lend you my luck at the moment, but I need it to make sure I get this house which I've applied for, but once I've got it for certain, I'll lend you my luck. ;) MIKe> What helps me a bit at the moment is playing some Dreamcast games, especially MIKe> Headhunter, which I can really recommend. I'm afraid the US DC owners will MIKe> have to import it since it was only released in Europe, but believe me, it's MIKe> worth it! I haven't seen it at all. I was looking at DC games today too... I want another lightgun! I want to play John Woo style. =) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 19 13:06:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA01327 for dynarec-outgoing; Mon, 19 Nov 2001 13:06:12 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 19 Nov 2001 19:50:30 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <1695037143.20011119195030@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Got a new job! :) In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, tarc> Sweet, welcome to this corner of hell =) Which - Yorkshire or Games Programming? ;) tarc> This mean there's going to be a NG soundset for the next Worms game? ^_^ *shudders* Dear god, I hope not! Apparently I'll be on a team working on another Worms game, but only until another team is formed (which is the ACTUAL reason I've been employed). I'm not sure what that game will be, I only know that it won't be Worms related at all. Which is a good thing. Worms almost made me fail college. ;) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 19 13:45:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id NAA01364 for dynarec-outgoing; Mon, 19 Nov 2001 13:45:07 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: Re[2]: DYNAREC: Got a new job! :) From: "M.I.K.e" Message-ID: <00039323be9f8216_mailit@mail.dynarec.com> References: <20011118193444.P27247-100000@beacon.synthcom.com> <744859958.20011119194733@dynarec.com> Date: Mon, 19 Nov 2001 22:51:01 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >MIKe> I thought you wanted to work in Germany ;-) >I did, but I couldn't find any games companies in or around Bavaria... We simply don't play here ;-) >I had a bit of interest, but always from the north... And I can't >remember what the place is called now, but it's a big city, a port - >and not so far from Hannover. :o Bremen? Hamburg? Forget the north, the beer there is bad! >It's quite sad really... I'll miss the Helles, Dunkel and Rauchbier, >but on the other hand, I'm on a wage which means that I can come over >for weekend visits. Yaay! :) You know you'd have a free bed in Erlangen ;-) >Well, it's in nothern England, Yeah, according to the Team17 website it's south of Leeds and west to Wakefield. >and the locals talk right funny round there. Funnier than you, is that possible? ;-) >Aye lad. Eee, it's right grand. Eee by gum, what a bugger! ;)) Ok, no more questions about language... >Ada is a horrible language... They've taken all the best bits from >Pascal, C++ and Java and then thrown them away, the mess that's left >behind is Ada. Still, the military like it, so it's got to be a good >language, hasn't it? ;) No comment ;-) >Oh, I'm sorry to hear that! It seems to be going around at the moment, >which is a shame - two of my friends are currently unemployed, one of >them also because of the firm having financial problems. :( Yeah, almost everything goes downhill at the moment... >It's PR. I know it must be horrible to have read that... but PR lie. It's >their job - it's what they do. Don't believe ANYTHING that PR tell >you. Ever. It's a good rule of thumb to go by. I know, but it hurts anyway... I didn't have much problems on the day I was fired (actually I think I was in better condition than the head of the production division), but when I read that article the first meal I took that day was dinner, since I was afraid I wouldn't keep food for long. >Of course, that's totally understandable. Well, I wish you the best of >luck in finding a new job... Thanks. >I'd lend you my luck at the moment, but I >need it to make sure I get this house which I've applied for, Understandable that you don't want to live in a cardboard box ;-) >but once I've got it for certain, I'll lend you my luck. ;) Thanks, I think my luck must have evaporated... October was a vey strange month indeed: The week before I was fired someone broke into our house. Fortunately not that much was stolen, but they seem to have made a whole mess. >I haven't seen it at all. Just get it, Headhunter is great! It's a cross between Metal Gear Solid (tactical combat, stealth, and boss fights), Resident Evil (puzzle solving, graphics quality similar to Code Veronica), and motorcycle racing, the latter being the weakest part of the game. Combine that with a good story and a lot of conspiracy and ou have one of the last must-have games for the DC. >I was looking at DC games today too... Surprise ;-) >I want another lightgun! I want to play John Woo style. =) Actually I have two lightguns, but I haven't done it John Woo style yet since it's more difficult that way. What lightgun games do you have? I bet you have HotD2, but do you have CMF as well? >Neil. -- M.I.K.e San Francisco isn't what it used to be, and it never was. -- Herb Caen --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 19 14:27:09 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA01411 for dynarec-outgoing; Mon, 19 Nov 2001 14:27:03 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3BF9871C.E34E3C0C@austin.rr.com> Date: Mon, 19 Nov 2001 14:26:37 -0800 From: tarquin X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Got a new job! :) References: <1695037143.20011119195030@dynarec.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Griffiths wrote: > Hiya, > > tarc> Sweet, welcome to this corner of hell =) > > Which - Yorkshire or Games Programming? ;) Games naturally, only been to the UK twice, and then only London. I'm way off in Sunny SoCal, keeping Loki around. There is some frightening %#(@ in some of the codebases here. > Apparently I'll be on a team working on another Worms game, but only > until another team is formed (which is the ACTUAL reason I've been > employed). I'm not sure what that game will be, I only know that it > won't be Worms related at all. Which is a good thing. Worms almost > made me fail college. ;) Worms was truly great. In my case I'd say Everquest did a fair to middlin job of making me fail college =P > Neil. -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 19 14:33:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA01426 for dynarec-outgoing; Mon, 19 Nov 2001 14:33:14 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 19 Nov 2001 14:46:22 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Got a new job! :) In-Reply-To: <3BF9871C.E34E3C0C@austin.rr.com> Message-ID: <20011119144552.Y36719-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I'm way off in Sunny SoCal, keeping Loki around. There is some frightening %#(@ > in some of the codebases here. Do tell. I've always said that 95% of all code is shit, and this seems to help confirm it. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley I know you believe you understood what you think I said Synthcom Systems, Inc. but I'm not sure you realize that what you heard is ICQ #29402898 not what I meant. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Nov 19 14:45:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA01446 for dynarec-outgoing; Mon, 19 Nov 2001 14:45:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3BF98B88.DBA4E99E@austin.rr.com> Date: Mon, 19 Nov 2001 14:45:28 -0800 From: tarquin X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Got a new job! :) References: <20011119144552.Y36719-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I'm way off in Sunny SoCal, keeping Loki around. There is some frightening %#(@ > > in some of the codebases here. > > Do tell. I've always said that 95% of all code is shit, and this seems to > help confirm it. ;-) Well, Maxis has taken the cake for insanity. They have a complete COM implementation in there -- and someone apparantly ported it to Solaris before Loki found it. I was both horrified and impressed with it. Now if only there was some halfway decent documentation on the damn thing... > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley I know you believe you understood what you think I said > Synthcom Systems, Inc. but I'm not sure you realize that what you heard is > ICQ #29402898 not what I meant. -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 20 16:37:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id QAA02779 for dynarec-outgoing; Tue, 20 Nov 2001 16:36:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Tue, 20 Nov 01 19:35:32 -0500 Message-Id: <3.0.5.32.20011120163647.007a6b30@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 20 Nov 2001 16:36:47 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Got a new job! :) In-Reply-To: <602863056.20011119130355@dynarec.com> References: <20011118193444.P27247-100000@beacon.synthcom.com> <20011118193444.P27247-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Just a quick e-mail to let you all know that I've got a new job, >working for Team 17 up in West Yorkshire! So... I'll be a games >programmer. Not entirely certain what I'll be doing there yet, but I >start on Dec 3rd. :) Congratulations! That sounds like fun :) Can we get Worms games for free now? ;) I'm glad to hear Dynarec's hard drive is okay, but it's terrible that the rest of the system is dead :( Neil suggested a fund raiser, I might be able to contribute, but I'm afraid I don't have much. There are lots of people on the list, though, I'm sure if a good number of us pitched in a little, we could work things out. ? Also, this is a bit OT, but does anyone know if having a stick of PC133 and a stick of PC100 RAM on a PC100 motherboard can cause problems? I've heard it should work fine, but I bought 256MB of Crucial PC133 SDRAM, stuck it in DIMM slot 0 (moved the old 64MB PC100 RAM to DIMM slot 1), and have noticed my system lock up every once in a while at the most inopportune times. The system detects the RAM just fine. To tell you the truth, I didn't even check to make sure the RAM was really compatible :/ I kind of assumed it was, since it was so cheap, and since I have no documentation on my motherboard. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Nov 20 23:24:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA03104 for dynarec-outgoing; Tue, 20 Nov 2001 23:24:35 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200111210723.fAL7NHc08098@pons.ac.upc.es> Subject: Re: DYNAREC: Got a new job! :) In-Reply-To: <3.0.5.32.20011120163647.007a6b30@mailandnews.com> "from Bart at Nov 20, 2001 04:36:47 pm" To: dynarec@dynarec.com Date: Wed, 21 Nov 2001 08:23:17 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Also, this is a bit OT, but does anyone know if having a stick of PC133 and > a stick of PC100 RAM on a PC100 motherboard can cause problems? I've heard > it should work fine, but I bought 256MB of Crucial PC133 SDRAM, stuck it in > DIMM slot 0 (moved the old 64MB PC100 RAM to DIMM slot 1), and have noticed > my system lock up every once in a while at the most inopportune times. The > system detects the RAM just fine. To tell you the truth, I didn't even > check to make sure the RAM was really compatible :/ I kind of assumed it > was, since it was so cheap, and since I have no documentation on my > motherboard. > My computer has an old 64 MB PC100 (theorically by the date I bought it it could be a 66 Mhz one) DIMM, a newer 64 MB PC100 DIMM (this i'm sure is 100 Mhz) and a 128 MB PC133 DIMM. And my computer works as fine as it can work with a very very very old W98. And the bus is at 103 MHz. I think the problem must be another. > > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 21 10:56:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id KAA03851 for dynarec-outgoing; Wed, 21 Nov 2001 10:55:43 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 21 Nov 2001 13:23:53 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <833410774.20011121132353@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Got a new job! :) In-Reply-To: <3.0.5.32.20011120163647.007a6b30@mailandnews.com> References: <20011118193444.P27247-100000@beacon.synthcom.com> <20011118193444.P27247-100000@beacon.synthcom.com> <3.0.5.32.20011120163647.007a6b30@mailandnews.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, B> Congratulations! That sounds like fun :) Can we get Worms games for free B> now? ;) You can pirate them, just like everyone else does! ;) Naah... it's cool that everyone knows Worms though. :) B> I'm glad to hear Dynarec's hard drive is okay, but it's terrible that the B> rest of the system is dead :( Neil suggested a fund raiser, I might be able B> to contribute, but I'm afraid I don't have much. There are lots of people B> on the list, though, I'm sure if a good number of us pitched in a little, B> we could work things out. ? I can't pitch anything in just yet, but I'm certainly willing once I've been paid! It's just that it'll be more towards the end of January when I can afford to do it. I've been unemployed (or a student) for long enough that I need to work a couple of months before I can do that. :) B> Also, this is a bit OT, but does anyone know if having a stick of PC133 and B> a stick of PC100 RAM on a PC100 motherboard can cause problems? I've heard B> it should work fine, but I bought 256MB of Crucial PC133 SDRAM, stuck it in B> DIMM slot 0 (moved the old 64MB PC100 RAM to DIMM slot 1), and have noticed B> my system lock up every once in a while at the most inopportune times. The B> system detects the RAM just fine. To tell you the truth, I didn't even B> check to make sure the RAM was really compatible :/ I kind of assumed it B> was, since it was so cheap, and since I have no documentation on my B> motherboard. Well, first of all, if you're using Win9X or WinME, any memory above 256MB isn't used by the memory manager anyway. That's not the case with NT or 2K, but is the case with the '9X versions. So if you were using them, I'd advise that you take the 64MB out anyway. If the PC100 was working fine then we can safely assume that you're on either a 66 or 100MHz FSB speed, so the 133 is fine. The 133 should work at 100 with no problems - I don't know of any reason why it shouldn't. What it COULD be - and probably is - is that your BIOS supports memory interleaving. Disable that option and it should be more stable. Otherwise is could the CAS setting, set it to 3 and not 2. The difference in speed is very, very minor and I really wouldn't have thought you'd be able to notice it at all. Other than that, without looking at your BIOS settings, I just don't know! As Victor said, it works fine for him - and indeed I had PC100 in my machine for a little bit so that I could have 512MB, but I didn't need it, so took the 128MB PC100 out and put it in my second machine, leaving this one with 384. Anyway, I had no problems either, so I can't see that you'd have speed mismatch problems... It's likely to be a BIOS setting more than anything. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 21 11:55:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA03906 for dynarec-outgoing; Wed, 21 Nov 2001 11:55:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3BFC14B0.5080500@gmx.de> Date: Wed, 21 Nov 2001 21:55:12 +0100 From: Kai =?ISO-8859-1?Q?Sch=FCtz?= User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.5) Gecko/20011012 X-Accept-Language: en-us MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Got a new job! :) References: <20011118193444.P27247-100000@beacon.synthcom.com> <20011118193444.P27247-100000@beacon.synthcom.com> <3.0.5.32.20011120163647.007a6b30@mailandnews.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Bart wrote: >>Just a quick e-mail to let you all know that I've got a new job, >>working for Team 17 up in West Yorkshire! So... I'll be a games >>programmer. Not entirely certain what I'll be doing there yet, but I >>start on Dec 3rd. :) >> > > Congratulations! That sounds like fun :) Can we get Worms games for free > now? ;) > > > I'm glad to hear Dynarec's hard drive is okay, but it's terrible that the > rest of the system is dead :( Neil suggested a fund raiser, I might be able > to contribute, but I'm afraid I don't have much. There are lots of people > on the list, though, I'm sure if a good number of us pitched in a little, > we could work things out. ? > > > Also, this is a bit OT, but does anyone know if having a stick of PC133 and > a stick of PC100 RAM on a PC100 motherboard can cause problems? I've heard > it should work fine, but I bought 256MB of Crucial PC133 SDRAM, stuck it in > DIMM slot 0 (moved the old 64MB PC100 RAM to DIMM slot 1), and have noticed > my system lock up every once in a while at the most inopportune times. The > system detects the RAM just fine. To tell you the truth, I didn't even > check to make sure the RAM was really compatible :/ I kind of assumed it > was, since it was so cheap, and since I have no documentation on my > motherboard. Maybe you wanna try Memtest86 http://www.teresaudio.com/memtest86/ (mem tester booted from a floppy) to see if there are any probs with your RAM. -- |/ |\ai --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 21 14:42:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id OAA04032 for dynarec-outgoing; Wed, 21 Nov 2001 14:42:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 21 Nov 01 17:41:10 -0500 Message-Id: <3.0.5.32.20011121144219.0079c5f0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 21 Nov 2001 14:42:19 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: Re[2]: DYNAREC: Got a new job! :) In-Reply-To: <833410774.20011121132353@dynarec.com> References: <3.0.5.32.20011120163647.007a6b30@mailandnews.com> <20011118193444.P27247-100000@beacon.synthcom.com> <20011118193444.P27247-100000@beacon.synthcom.com> <3.0.5.32.20011120163647.007a6b30@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What it COULD be - and probably is - is that your BIOS supports memory >interleaving. Disable that option and it should be more stable. >Otherwise is could the CAS setting, set it to 3 and not 2. The >difference in speed is very, very minor and I really wouldn't have >thought you'd be able to notice it at all. My BIOS doesn't have any interesting settings, besides the CAS (which is already set to 3.) It does have some memory speed options, the choices are: slow, normal, fast, turbo. I'm not sure what that's all about. It's always been on "normal." >As Victor said, it works fine for him - and indeed I had PC100 in my >machine for a little bit so that I could have 512MB, but I didn't need >it, so took the 128MB PC100 out and put it in my second machine, >leaving this one with 384. Here's something I was wondering about... If a motherboard supports a maximum of 384MB of RAM with 3 DIMM slots, that would mean 128MB in each slot. I have 3 slots, but I'm not sure what the maximum amount of memory my motherboard supports is. I do know that it accepts the 256MB module. But is it possible that even though it accepts the 256MB module, it really isn't supposed to be used with this motherboard? I'm going to go try the memtest program Kai suggested. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 23 00:57:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id AAA05845 for dynarec-outgoing; Fri, 23 Nov 2001 00:54:26 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 23 Nov 2001 01:07:38 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: System ordered Message-ID: <20011123010630.O53186-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Just wanted to wish a happy Thanksgiving to all of those who it applies to, and to mention that Dynarec.com has a new home to a Book PC that I just purchased off eBay. Reliability has been restored. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley I know you believe you understood what you think I said Synthcom Systems, Inc. but I'm not sure you realize that what you heard is ICQ #29402898 not what I meant. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 23 04:06:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id EAA06166 for dynarec-outgoing; Fri, 23 Nov 2001 04:05:59 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: System ordered From: "M.I.K.e" Message-ID: <0003936c0e99015e_mailit@mail.dynarec.com> References: <20011123010630.O53186-100000@beacon.synthcom.com> Date: Fri, 23 Nov 2001 13:07:20 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Just wanted to wish a happy Thanksgiving to all of those who it applies >to, It doesn't apply to me, but I wish you and all the others a nice Thanksgiving as well. >and to mention that Dynarec.com has a new home to a Book PC that I >just purchased off eBay. Reliability has been restored. ;-) Great news! >-->Neil -- M.I.K.e Hand, n.: A singular instrument worn at the end of a human arm and commonly thrust into somebody's pocket. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 23 11:44:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id LAA06538 for dynarec-outgoing; Fri, 23 Nov 2001 11:44:37 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 23 Nov 01 14:43:06 -0500 Message-Id: <3.0.5.32.20011123114425.007a6ae0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 23 Nov 2001 11:44:25 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: System ordered In-Reply-To: <20011123010630.O53186-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 01:07 AM 11/23/01 -0800, you wrote: >Just wanted to wish a happy Thanksgiving to all of those who it applies >to, Happy Thanksgiving from me as well. Mine was good, I hope it was for everyone else who celebrates it, too. >and to mention that Dynarec.com has a new home to a Book PC that I >just purchased off eBay. Reliability has been restored. ;-) Woohoo! Thanks Neil! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 3 23:23:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.9.3/8.9.3) id XAA00200 for dynarec-outgoing; Mon, 3 Dec 2001 23:22:07 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 3 Dec 2001 23:38:36 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Server almost back online Message-ID: <20011203233740.Q10963-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm pleased to announce that the Dynarec server machine has arrived. I'm missing a CPU, but that should arrive either tonight or tomorrow, and when that happens, Dynarec.com will be back in business 24/7. I drug up some extra cash for a Book PC and processor - cheap. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 5 01:23:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB59Ltn00283 for dynarec-outgoing; Wed, 5 Dec 2001 01:21:55 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 5 Dec 2001 01:39:24 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Test posting Message-ID: <20011205013918.Y16146-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Test... -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 5 01:26:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB59PbE00318 for dynarec-outgoing; Wed, 5 Dec 2001 01:25:37 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 5 Dec 2001 01:43:07 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Dynarec is back from the dead! Message-ID: <20011205014118.T16146-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm pleased to announce Dynarec is back from the dead! I got the CPU and motherboard today and it's working great. I did, however, have to reinstall the whole OS from scratch because I mounted the wrong partitions and screwed up the file system pretty badly. Anyway, I have mail, mailing lists, and telnet working (including SSH) great. I have not yet configured HTTP or FTP access. That'll come tomorrow when I'm not blurry eyed. All of those who have an account on dynarec.com should be in good shape. I moved things over without incident. Let me know if they don't work properly... -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 5 03:14:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB5BELE01398 for dynarec-outgoing; Wed, 5 Dec 2001 03:14:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200112051114.fB5BEqP05125@pons.ac.upc.es> Subject: Re: DYNAREC: Test posting In-Reply-To: <20011205013918.Y16146-100000@beacon.synthcom.com> "from Neil Bradley at Dec 5, 2001 01:39:24 am" To: dynarec@dynarec.com Date: Wed, 5 Dec 2001 12:14:52 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Test... > Sending test mails? You? ;) Well, a bit of content. A couple of pages from univesity courses about Binary Translation (I think the slides can be downloaded). http://www.cs.virginia.edu/~jks6b/cs851/ http://www.itlabs.umn.edu/classes/Spring-2001/csci8980-1/ Victor > -->Neil > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 5 06:42:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB5EfsA01575 for dynarec-outgoing; Wed, 5 Dec 2001 06:41:55 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 5 Dec 2001 14:42:42 +0000 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: Dynarec is back from the dead! Message-ID: <20011205144242.C10008@cs.bris.ac.uk> References: <20011205014118.T16146-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20011205014118.T16146-100000@beacon.synthcom.com> User-Agent: Mutt/1.3.23i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, Dec 05, 2001 at 01:43:07AM -0800, Neil Bradley wrote: > I'm pleased to announce Dynarec is back from the dead! I got the CPU and > motherboard today and it's working great. > > I did, however, have to reinstall the whole OS from scratch because I > mounted the wrong partitions and screwed up the file system pretty badly. > Anyway, I have mail, mailing lists, and telnet working (including SSH) > great. I have not yet configured HTTP or FTP access. That'll come tomorrow > when I'm not blurry eyed. > > All of those who have an account on dynarec.com should be in good shape. I > moved things over without incident. Let me know if they don't work > properly... Cheers Neil, much appreciated. Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 5 10:05:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB5I55t03885 for dynarec-outgoing; Wed, 5 Dec 2001 10:05:05 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 5 Dec 2001 10:22:35 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Test posting In-Reply-To: <200112051114.fB5BEqP05125@pons.ac.upc.es> Message-ID: <20011205100243.A19359-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Test... > Sending test mails? You? ;) I think after an OS upgrade I was justified. ;-) You didn't see the ones that didn't make it... I've got the web server back online. Wasn't too hard to set up, but last night I was so bloody tired after doing it that I just couldn't stay up any longer. The machine has been upgraded to a Celeron 533Mhz with an 8 gig drive (instead of the 5 that was in there before). Not that it matters, but I thought you'd all like to know. One thing I started doing was a hand recompilation of Space Invaders. A friend of mine wants to run Space Invaders on his GBA, but it runs at about 75% of full speed on a 16Mhz ARM thumb core running out of its flash. I thought this would be a bit of an eye opener, as I'm doing the same steps that a recompiler would do. Anyone interested in seeing what I've got so far? I can attach for general perusal... dunno yet if it works, but it should be an interesting piece of code when it's all done. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 5 10:23:28 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB5INQd04206 for dynarec-outgoing; Wed, 5 Dec 2001 10:23:26 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 5 Dec 01 13:24:17 -0500 Message-Id: <3.0.5.32.20011205102526.007a2190@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 05 Dec 2001 10:25:26 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Dynarec is back from the dead! In-Reply-To: <20011205014118.T16146-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >All of those who have an account on dynarec.com should be in good shape. I >moved things over without incident. Let me know if they don't work >properly... I'm unable to send mail from bart@dynarec.com. I'm at unr.edu. I think you just forgot to configure that... Otherwise, everything looks great. I see HTTP is now working. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 5 10:26:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB5IQT004263 for dynarec-outgoing; Wed, 5 Dec 2001 10:26:30 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 5 Dec 2001 10:44:00 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Dynarec is back from the dead! In-Reply-To: <3.0.5.32.20011205102526.007a2190@mailandnews.com> Message-ID: <20011205104328.U20691-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >All of those who have an account on dynarec.com should be in good shape. I > >moved things over without incident. Let me know if they don't work > >properly... > I'm unable to send mail from bart@dynarec.com. I'm at unr.edu. I think you > just forgot to configure that... Yup, sorry - I just forgot to do a make after I coped over the relay access list... -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 5 11:24:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB5JNpY04340 for dynarec-outgoing; Wed, 5 Dec 2001 11:23:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00b001c17dc2$acea2cc0$b32bfea9@daves> From: "David Sharp" To: References: <20011205100243.A19359-100000@beacon.synthcom.com> Subject: Re: DYNAREC: Test posting Date: Wed, 5 Dec 2001 19:25:53 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil, Yeah, do send the Space Invaders work on, I'm toying with the idea of doing some GBA development myself so would be v. interested. Cheers Dave ----- Original Message ----- From: "Neil Bradley" To: Sent: Wednesday, December 05, 2001 6:22 PM Subject: Re: DYNAREC: Test posting > > > Test... > > Sending test mails? You? ;) > > I think after an OS upgrade I was justified. ;-) You didn't see the ones > that didn't make it... > > I've got the web server back online. Wasn't too hard to set up, but last > night I was so bloody tired after doing it that I just couldn't stay up > any longer. > > The machine has been upgraded to a Celeron 533Mhz with an 8 gig drive > (instead of the 5 that was in there before). Not that it matters, but I > thought you'd all like to know. > > One thing I started doing was a hand recompilation of Space Invaders. A > friend of mine wants to run Space Invaders on his GBA, but it runs at > about 75% of full speed on a 16Mhz ARM thumb core running out of its > flash. I thought this would be a bit of an eye opener, as I'm doing the > same steps that a recompiler would do. > > Anyone interested in seeing what I've got so far? I can attach for general > perusal... dunno yet if it works, but it should be an interesting piece of > code when it's all done. > > -->Neil > > -------------------------------------------------------------------------- ----- > Neil Bradley Whoever said "Money can't buy happiness" didn't have > Synthcom Systems, Inc. a lot of money. > ICQ #29402898 > > -------------------------------------------------------------------------- - > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 5 13:37:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB5LWfr04436 for dynarec-outgoing; Wed, 5 Dec 2001 13:32:41 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 5 Dec 2001 13:49:31 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Hand recompiled Space Invaders Message-ID: <20011205134900.U21330-101000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-2085402423-1007588971=:21330" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-2085402423-1007588971=:21330 Content-Type: TEXT/PLAIN; charset=US-ASCII It probably doesn't even compile, but it's a start. Have a look at what I'm doing. Forgive the crappy code - it's just prototyped to see if I can make it work... -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --0-2085402423-1007588971=:21330 Content-Type: APPLICATION/ZIP; name="si.zip" Content-Transfer-Encoding: BASE64 Content-ID: <20011205134931.C21330@beacon.synthcom.com> Content-Description: Content-Disposition: attachment; filename="si.zip" UEsDBBQAAAAIANFthSsCCd8amzAAADFXAQAEABUAc2kuY1VUCQADupUOPLeV DjxVeAQAyAAAAO19eY8lN3Ln3xKg7/AWU/B2WyVN3kf1zgBz2RYgawVL3gF2 YQzynCrjdXWhqnouY7778sh8GSR/QTLfq1YLhhp2a5qPySMYDMYdP7u7H47v x+nwv56ex+Nd/+XtLz/79Gek8fHu/o9W45/v7sd3f35SrZ99+vzXh2mc5sP7 +6e7P95P4+Hp9t3j8+Hu/vnw7199831avQF9htvuUf3cvDHHuHt3/9mn//XZ p5/obw/drDp8IhbyfngW/+O/5Epm2fnXX/3zH373zW+/+tU3oln1bw7dm+1/ yy9/Nh2fJrOJdv3ZdD/ezaLt74fb7ih//fvhcfrjH5ZZfyamubufPvlbk/zq n+Tf3fxlN5vtS7P8/MvO+Omf6E+zf5v9sGubPdnH4G5zeGN25ba5zErW/Ovf yL/74ct+MNuXZrWX3vjpN/Snwb/Ncdq1zZHsY3K3Ob0xu3LbXGYla/7t7+Tf 4/TlOJntS7Pay2j89Dv60+Tf5u1x1zZvyT6O7jaPb8yu3DaXWcma/+Vr+fft 8cvbo9m+Nsu93Bo/fU1/Olrjffet/Pvp4cunBwqAdZsSAvr2HBTmv1n+3Q8H hSLrvwUNUbBc/317PKhJ32wQVN8/PN69nczGfgCN4wQab4+g8enB/PfDoKD3 fwUWf/vvCnpPz93z3bC0HJ7++Ien3zy8p7+IpvfNv05v3z3+9buHbpj+X/KX NBF//kN1+sPd/VEA67B01of2b1M36i9+/dfn6dUy/fu0+tU4Pr5e4fb8/vH+ lTP60us/XsuFghn+9O5uPPz+8e55Yme4Xpbxvvlt99wt87ETHX6xdPRN+O37 p1s9CZnr/3TH95MeHn24dPz23cPypRyJ767m+d/vn78Vj8mrdQPyH9+8f9tP ZFP2tPT7390/P/41bcZCT/YG/drlme/Xcvb82paV99vB82uRt/yvSTN75k3a 3rPmpB1K35rz1PNrM27zfvbpz/9R/n2U+H1zONy/ezjIP599elj+xLT8p244 HOU5fPbpP/4cHpKcgmDEJ9vJnTBfLkYO/IlvVrnWRqz1QWCobJHP9dprbZNv m90mHwK7TVJNZxdi+IGZOE0+wMTHUf+3u75qErf51VWW1Nnr68796fZ4LX4c Er224UbONeiPbo+vt/5DdzzqA6qHUXXO5Ebu7teJX10lKen/+Dh0es82cIZr 8XFVo8XLdU4dGaW717917jB/k8MUGTtM/1qtMperHJZvrtqWGSgnAO7GcQVm km7NY6c2pE8xl+hDwSvmo+DdwNUWtf5iEl/85d3juh/ZNNuDdGoQtbEbZ0ft DsA0PGDmuGHu1TjV7AVw9DjlCGCTdP2ML0+mgFCODhDafM+sFArb8HVVquGr 2hjeOGxwKmCd+awHkudILkihb1PtnmGevcZzNAlGH0EuEtScFQ1qbtOcITuN XMzD0kJJx9pmkJilzSBFSxslWdPdYZlhbREcytKyj/4HqHUzmJdn7RRB4D7i 5elKbpwhjlTeD9fbbejKG5tsZwxu9BCTitR32fqUInHSNFXsk2M+FHf3w4Hr e2v1XduP6OAknJL29TUaSP3Wm78h5F7fspiFnx6JJOcOdGjcoTW9Huz3IGnM C70OPk9oJVf0lptzjrkLWz3nmNtzjsac9C7K7ja5A1guRknnHt4j8VNm/bQh UTMVL3fff2r579eiHjKHfiEUtK9lgMqmZU4uZYBQySmrWPqj+1c16H/L9A8t HJEo+vKkOSG6iJD6iOseQtwzazXI0+PRfpdiWtYpJgSj0aR0FBvSgf6y8uDi F8qYTH9Zxpngs9Bd9174r8/bvQZ2D1eyvC0IaFcpenDTUtJodXphLiVJPDRa LMm8I0qAORcq1thF6rCjVePH13WEv1F2zrpPSdwQ954xdt0x7g6P+kUTGy2L G+OpXHue3uC8dk9RYUQHJABIG+z7szIDBKOMV1ysiUGHiuP7aySsXw/MMD3m k7rrI9h/1rjLFJxm2tZg/931yMxZMPw2K0j5cb/uboKEwtiP9Za04WPykcRh 6StW0uRUZ5CAQ30rz7QlZ/rUD6fdA7ICiaFJrTalQwo23uMBJndvo7tatSW1 s7a4oZjd60YpWOy9/cyOhugdDcEdEQ4b7KhVQry4skRlBfaubt8AUHjBmgqg qsADE/1i8CY8CrncI0DWZUFYZoRoTABzesDh3ZNLIZ09T5ReBNLO2bKbX9KX QHf4PaXLkL9QwUW8qnmtm6mAu4Av9R9CkO4OJV6xQgpGI2L3m8NqIrGJieFr siJBWqi0GAY1/Nje7OPV/DwgvIAeDO1iB4a0Km5gC6BTYR6/VD6vKn+pvpdd KvoWTIKC9BzfKJ8VBN8uz3g7gpiA2hEWC96Xq7n38ItD8hc55RvzR2UkVT/K Wd+cLBDSOmRYIOQWZgf9C6iOTOdGfTA7+p2s0AzNTJULg8BAwEwoII2ZvmDz eINtBwTqGcGUjZVVUFubkWpwvXEDd+PmkTv4LGn5m7TBI0t73XuK612o3mlu q9fFLxYSaYCiMSb9QeeO0dtjpPpQxDeW9qVJIT/UiwNLKyTpqjNu0AvU6TMW s2TtDmuRySU36Q5dpQEZgg5Vq5aRlzfxWmHwbkNWwoegEtRJNoVlH4Sj5GQz vX5lTtm2VdQAfdU2de/GksKyJE30L70pQ2EF4jwHdg61gZRjyZrAw8c9DpC7 WjD6ABhT48EwMaKu45awU2Ej9tbEDTztePhGqy9SBDFisk9nJK9oklEj2DrI q6eH13AYhIjW2gDPYeB9koBX3MJ7grWFppd1fQMZohVsHI+U1YRiG1pt8Qse 0njoe/drqLJfmAKF3CZRVVbxM3bcNKy5Gq0EtZFB6ZVDR7TnDkBSQC94noMT QovFTDfWpvSRTP6i+uGMLlXLCfY541tQdcwXHM5cUTEnfvsG3uYtr79Luz36 uyIDDNVG9+1fND+KpXRmBoOtIr2heJi2I/uoV+Pl6raQEdMr9z89KJGGrNs1 AtOdAFXbMWmzybsCclPSqkKuA2kzYQ+S2KdIYVDGwnmYdg4jCMjkuisYmk3E xvndZPIccWWSNVYTKrmAmGzrxt2Oum5ATcSSaPAYxFpU7efANQgRFQi1GCIu 0oUMIUQZlsGhFVUBMsX3L4M6RiEoSPiKjywWXxwn1tZ2PeHiA5Q3xXKCQSzf vX9e+icllNGZsduGWWA7VqA57WrogFPPim0WiH0T0btJlf5GIOuNiaXA2Uph rQ9D/EbE3DaQqJeMfWQimegdZEMsoVeiQF5U0NkxeD/UquT3nUMtUmx14p1a 9nij5FXOjZPSRyVAkSiXFOoKmbe8Uk5TYjmm09RArmKMnZFfVaDrpKd31DNJ ilyqxNONvGnSrkAvm/TXhRQFaa8U6DOPpixvTJMdXcjKYI6MR2NOhZYA1Ug5 t471rJopuI4ckF5nHUAzsGsdbY8te37ttxzZpKLnWbZ5W7e2X9dAhoEGK9bd KW1MmdKFQC+V6ua9LgIq3BhWusBgL4BuSinBkgz6unZUmeVTrd8PlLe8kDb7 VSxIbaj2PCPTMNLVy95FEoBy2HusoDDzH4rqnkPFIOezBlRO91DbZiz69FgX OZaMSqAODgnFa1tYexOPrrj10u/jR7WecOh8WyAaKGCorV4C3zDx4qwmHt6A eqgj7kddUIYT9K9S4PkN2zs2GgHppgM4hXTKIS9lE0DZAAG0h/xmLePDX7TQ MUKJBAEtu1eYVk4RPg5A0AzDFQFYM42BN9qtyIc6P9druEYIoPgc9R2PAMwh WsMDC7ZWmaBfpNQGOSmoMlnUO80Irmu0+0sFKLRkDYsScMhiS6UyxYhfbYPP iJ1u1kXOcYtc+jL+O+rX4kKlD/b1g4ZsCQhlNbEhpN+wChkTh+ureZo0/agm B98ajtgNLnxiFa62qgF5I/j07BKwac+GY+RssJT6tQGfGbi2WlxuOTg2gBfg HN1ziyu0SETT2SbKJIdOJFczOdbthpclVILImQvkaKdiLRLPU1WyX6XMm1Ty smkdcFE0UY1u3AB4WQJlsaZKSKm9jBZW8Vr+BmtzCPXEuxFQMMYocpsEsoJp 7CgaWQqMLBOM2PIgS/4jQJYKAQSdl6L3jApZ4ESBbvgygzZiiY8d/c0+XC3O wNWCxVX0yz5zxIJTGeCPOZ1SibhPjwOoQHoNvTKxTOzO6W2cTFUDc7+8WHKY 2aF9JUbnEcZEvTjt4y/By6EzwBuJzmUOrFgancsgOouPL0Tn8gx0RtBfRrsY nRFS0a2X3ldVIIbF7dWzJ366BmfYX0PX4WW5Ci4O8p41TpU7LBcah+UDG2Q1 USc3sGKPEcC4PT0MBiqbsjuJmqOvvUgGxZwICZ2913UgYMFYXAOdytnbP8wA KoBL1eovNb576yLdttT6WqAjesn1tVXAOXWnxbVKeZs9vKm2dzVai2uEsUnc 8lqoCNqN8lYZUpoZmslAPAbn755A/2k4ANnH0/te/fcqAT1ZpUXdn/bX12cR glVYwakjIpyEscLPIqhD6lI77IJKlcgvpzCGimBF5qqiOGd/BJFqNtC7NuLO CYaAc1lOjCDlekWxllg9+lOGEEg5JIjf7DeM8+xZEGkXMaknuDXk8rOgKeR/ qop1wjBWFOR/KmTjfwElnXctwMTprGWLuyJkgU+Bc+8MsJ4rZzUqFyauSt2M E3WObjrHoIvevDKySnu/yTqglr7FytUS5xgZAAAT4KyqbgHKtDAwfJPurcg/ cR/kPa6igxOPKDpv1L5uYrrcEhhD7+bTMKv/AmLI4OkRHwW4kcZr4ome0vSR xktaKFEU7pMDkiRgJ+X9GRiqCvqTQQKsjbLIlW4lhZzHr/kynWNQOtcgRWVo FJkmlzYyRnJFSBWI/OF894zFQAFRDeMeKVIcmp4RxJLUKgcXMdyF45SZHscO tCg8ktvaFlbAMcqzLAQwS7e9Q9DimPiEzbFkKMdCDj7GOC/psF91MHDA0RZt QMTxxXinrqvWdq/rXKN050rKDXxLInhH6/wiwi2D8BnBVeVNHzF5GlBbMOpO zcdwWQqS568xFDqeVIZtYe09IZbb6W49KSON/euvjRgZxkc63g8guMGUcdiv C+T1lAJwqN5GBMde7b6MJgU3RR9XC1WuGGM593vkOkVdYVn3073+muKcDZG7 xmFmxYDVAgyBlRoxjOWl8pKqk5pHoe2BUSikziouD9yMHXeRTXqbmwvPgroy xbKMSPepwzsLveDUcjQfJ4DJ4E1VmJkFoq9OeQR2BH2KFamFZY2HxTXoVI1B iRV3RxR8LGCFqONFzcZpZyaXwSAxcYOeFd8jKC2P8oS7yZWLdW0kelxQnvGH wEpgnV6yNiITe5xyIZ6AeCIGbQJCXHhrZs50rBkuXOIBdnhcnn5xo51I8AZI BydteF2Vcbe5zSEK7oxvgRyt6W1PIZEnKaBnalvzDH6x6ASJ9ZhVQo+6nh2R 3EjM6fG41eHHODXHVVq4MFZXvSmBblNtoBtmdqVrM5sudtPSgYkViak1aW8b E89pRlcjdLtue0tuGCZfgkisyKDBjaf8r/YIy/ee/K/2Fzq1E+cUPjd81sN5 YMhS2lL3KtoM/deNyCyKEkmKbkx3fcvsG5vF1E81v42pZLdRokgVmU8BNs9o 0+Ixxrde3DI+ueHM8M4JBZU/uCedMY6p8Sdm/HSAVs2W4xByHOglZx9YiGcs 4pihWFa0j4oFshKDQscQg+S5TGEgJmpIFxVmkxQ3JmxY4dhQzPlDUZoax9FR YmzNKcOazKUkfaqb6xvzIuFYNJibNW1mvc3UTBlc4diTFrK5aTnDdbcNftlt OT2gj2jhTUvrBMlh4hllLiDcUA2zjiRdyUSxNAU0wOJH8QTcwsBYwZeQJRLR hkm9ljboDVJndr4gJJ5NK+Y97XpIDRrEB8iHzuDb9X8jsq4HLgYNrvV3rVsg 657eZTFQTLaWulVOxk1thQqmUKPZ6Nwugtw5TE6CPFqgsWrN6EgNcUwmCDJz 46VmgbNuKme9e6wIVzO5JKZyRBBfW1zoU0B/NKOM+HHJUcKLDPEuitKSU08Z LVNep0DBp1RBzQwp/FXPMEdDsj4Vnes8MURmozTULl7eUzO9MJIhaQfM8eUQ 98V61bL7weRgUQyyOtkaQXP/28fpVvI2VSKW6GAmxxmg1Wxd/pjeWAQIvS2G CYexe1uoPbq3nFEvA90h1vFKn2fOHj15LJ3N5HrDhTIChK0FGuD2LxYG0ARx mlbO1HFi0CCkydLExfWog1DMDr30NKUUiLE5RxtkUJINsFwuNtGd5mIb3+lS WJ/QxGun2mmHX9iFkuzcba9VISxSewh32Aro6H+DFHBbESLc5fPP7eZTgbMv vpA//V38/59v747T4RXqZGWME2uxVR0TlRC9eYo4xVnn3sKXUpxFZCD2WeF6 00mA5csslRmPRTPFoq3g1PfT24el0BrM8jfpRH4YYVTCv9cgC6CqiSYHYH6T WQIR/sKEgp8bfVXbR+inYCL7LUA7RI6CBwHA3g4DDWLdNnBhenVgiSwG+cla 80v8u7qGkH69pWeURbSsy9amuctTtui1obJ20KKoFIsptDftiA5qMyY9bFJh v1ZWydnkC7PUqkSCoUgjsXSPT3SbTZbQCtNlX2GGzucc2OalKVNTreTeLDTn RoxT5bmRneo0LMfqMEbAtgDy+KKaV7/esMzkObnGgB8v48tqpF/Czo3cZCiH kcG0ljq9SVs21HMY7Mw9TM6+LsZi4Wg3q2dzqHDMKs3NgVIOoZzxmzqswXrU S1DV56sOr5G6pNiJkw1MW7QibW379aRjl7hoBF1ggt63MAQg+muLGjSem2GS 7Pkcx86ALtIy8wbSQy6mwotYIYdineQlynXz5gcmcYCRon2XQ9C4JrMfL5l/ PHf+i0tIbVJr242mtCQajIcfK7N76Eo88eynGJZJKE1FF5Mp0vWDT2yKqtdp 8z6BryeLq+kzJvFzXO6581q2hxCaaFqagx2R3XO+p3sLi5inSqj6dELCIf5d lfV+7YgSzAltzb/85aEghzyU6JC72csCb6P9g+KBZ/+AWII9IYpCFZVtn9Zo wCpY+QqxYF1LyHqQ/nMlZHXbeleRm6Lt4OZCi9Q5apeGGfDoHqc/Xr/aGs5n W/p++QvVNu4rEWF6Zq/YnoJAD0OBSrV47QR4oCVZMFFVW+K5+s4A7S2YswBs g5pzZJ302smwXyUddS8MvK8Tk2UFe01E5tHckViSrqXCfkixOnsfb3C8Zmr9 ceFJIN32jixBC0OncLVTwq3PKZJjtTvknuLIAB5WxrJecKsOB3Dm0JZJ0Nev 9e5yuBGYONSbOBM7GJjGeUIuddp+MbtpxWacFwbEsG+DmI5k0EiqTw0l4/Gk az6ZULrCTWJwlgklwpS7OKqJtZ6zK5P8iI/cSKQSaW9QKv51DOA6FZlQUy0P +bQNKPzN0nRa9mq3N7T6wPQFLVoD53e5vH3gXrivWUwi9+i+S8bTzhFABYnl j7hJjOPhypVuriNdIzkaVo9sYXlk9Wp10jRIIM6RhdlTmwfqsjjOvPGWGgoq 4Npl3vt28t/74DvRXmgjEqBgodS5OX5LSCiXOgBdb6ZJhQyN6DZqAtSb1nmY /oD07m/wi7d1TWr96vYuQYms86xerL6P7Jo2NOVxYNQOqAUXOA9OCtw+BS5n 0uQI8z6rM1SQsh0tT3g2uox96H0x0WTkL9Pkek4PTJZ9VO2FFojSYkg3WfV/ 1m8ITTGdhtk4CcIo0GLiHldiicUcsZoGP8gMI3OSgttv+REbMO450SIdZsgS GXfX+GDslDNQn/TmG489g40dk1cxhR5lRor1ffAxt1sAyGkH5hZPPEHnwQ5l S9B+Nz1SP0eNE0AH7Sg+QJ/zFxhe4U/eA/zhIm5MZxHrsBSsTU0uK+FJx9wd Z1hCtV2s16/j4yrGs/h16HSPHXU57t5waouw1Q1chqjFH7Wv0wif0aSfyfhh b0eeYe9pNdgA25OtKQj6Jo9k73tdkrRXKXD2cVVBEgI9YQfzITBejoF1optb eOYebzmDGm12ES7JUt8BJk7fRLQoixO2GEQ1HHUvG9QWYJ6VBjrap01hBFZu OzOMn/4k+/2AfFjVWjrsFp1r7Bks7Imk+RFQHjmqP49nU32y/lZp23qD39E8 yRQhol1a0JWhsMQGOGrkMLSBy5ONCXiLgqzky86rgwX/9Mpv/0gs143c47pB upVBDw/BZb1a/tn1x+mr++fp8fH9w/PTq62TJBZe+4rlWCaLfE4Dcv7RJUAl p8V4qgzaU6XQxoK7+fAKrn91dPvju+d3h6/l6SxeY6yzkuDIyH7anNX8i76C GVPz//znh+9v754O4v/66Xg3/WkaD2K+fjo8306Ht52448d37x5k168V67ZN MMwQfhrmgk8zf/WZLTzQ3QOhogtBSDBxZE1TZiyxSXwAE3xb+FMelchIgkXb OxKLZYIf8/tDbRghuTF0JOpgBSu22YzGvWclWag3e05KcFSnk1oMP+MCs98/ 3j1PzvDBOy54tW03evi1mG9Bdy24NOOfk4HEgivzbl0ANGUWKdiQ0CIlr7Yt UjBsp9ULbo0uQ3Bpr2wy53Fk0yIqINM/MW8/MW8/MW82OH9i3ljm7RNJTAzr ez+bcqURdEiyZbSkWXwnK4bceGv8pUVNxGgSISU+LW9wmRCfRdVWjhPhtrCs i6cPpMaOfPG4HUH4YGKzY/g1hh9kaV7HenmJExpTQrwCUJ0V2gaK/dKrKE+O 0BGQeMsbGicrrd44GCKb6x344Htv9tqZA30/HpwzmHOPqKulOysDNO7ChHaO zEkfdpc59DBhBEzlxw8jhbDDluCT+8EJ3dkdSmRzgjab7uEJ40KG+kVcFFC2 f0VxGuoLbhhPzNJJbIgJTuoNF63l8pqm+9PlLT8OMR8ejgu+nDBzeXZ/hOT9 0sV+PEJUMgRfnb9h3UNObtQUTaBmltexsxmJkYcIlJL9LDs2huU4Bcmdz1mK sWHL2X8MB0R9QKwDalP3wq5dQ/XhF7cKMUjzUa438vLDd4bIvWnRMfVXuYok p22qaHLkL/gjZhrPhFE/ngmjfnwRGH28u9ICR+HlrqgoeJpBSjRxVCjkjPlh NzHwFx7E0GfQLy5YSfCMjLjLfDCKcoQhXMi+Kx1cSuS5uARpBjLZBFK5oySe A8gOqZdBs7vRJAb7qm7guNIWaTvUrEZyGze4z4WU+oYc/BF6C6ZlxSbIz7qQ qzMdhnOmLrgihga6AdUjmKTB3jA7EitjLHJ9Ham+E2Y+YiqAlyN2MUZhia+O Ag08ufXlWi13R+Sn6UJsY53KotMDWZW11MwudcHhuGzyiuV8Ed4zRZmEqK/W U9j5GIGLGdVCy42ElcoJLtAoc73C6qZGumCqkShLenMGCzWW72/dDerb1+rb V9IqrbcArEYwCg26AREk0FlNTKFmqtwKDwZ52e4uTK5XlgD6hscxeH2e+jUc EOL20YPVlesSmVBSw6wsMOOtZ8a6tdCNi4zn71GpBmpMp1LqRnlWrXiYU/Kc RnBYMI3UBXEtFkzb5AaiJ4PIKyzfrjeEG9YNPkjGOPKuGKESeaop48vUwfxw 5QC4HpzLoeeid7Qze1oayaeWpWOQMwmIkobpr36Eajv5Q+17RNwCUGV2LiRo mILflkjujsoRJUe3khHXunlnBRTjtKuKANInrnN8s5geA25tM56FMedFZ1MJ UY57lNcvJyD/KCTQH52IV9JkrWgV1pWZzXOGOU2k8TOvE/3Wz+15SKwWN4Ns E4Medg6E7LEbnqHGg0u4bfJNZxQNXgJ3uMzgcCQNawFbQ0jxFGnc+0RVqSv4 xgeEsRsVvDPiP/bkK7ArAIDM6lFSdRkn9vrG2BHdllY4pFAtZc8bXRU4Dyz1 pN4iogGvwOyH5ess+cj4afS8nZWZjmfHCjHIwxOWbvxKhsRk51ZZYtk0RqKi oaHf8lvhEnbivQUSqFilNvpURtHZZRmM9M+XgUi9AKqkRo6vgrb2GrG0aGXu ET0t//kWCuoe9UB0hiZdoWjGpYVgsQ5cGwwF1MXwEsZFbjjVUQUT+ooPZgWt pr/h1ucOoz77gKaYveOSUy7Vs1217gMRyuhpgHFgUrJlDdLU6HiiDugJrdoK jNPO6bS9TZTDZkt0xaeKTSsm9EfliZW/chIxE6YaDvWawIQ7eSrjZEhs6DSq RQ+tTWXHlIt34w4MFxsyDoxxe2N8u0IZMsxwpZgoQxr5RDy+GiWPVRMNeY2p cBJY4FpxVIxspgQssJ7fl68dQJBzO5XT4d0zioCshnXl0pZOHH47wIZmQFXF uJV6aerEgMr5qf0M7Bx6VFP1qPAWcAdMialeH1ydmkWvomtIKZpfZyBZyYVF pNJak5k682kJKBYOs4d7qLPBIfiMKYxxO03rHBcfmEGh1LWamPzI1H0ksPyT gfp+n7m6SBxGse1duOLq1GojFTT4qtehiae0cJhlPVVoPTFCZVRlKo4Ymvva UfDC3NeezKIvnyXDnZG1l7S9D/utcgxLihv1Uy3R6STRUBsZC1tr8Lp0Bw/I pwa8OyZ2Pe1YT/4OJe4hRy1GVek/IhjWugkwm4h4bTe3bko93eQhoMZBMbXu dldzhPl8OLszk2SKaj8cE8WWhYwliR3AxpNSXPx6s6t2XIDNaFc2Q2CMSwJb 93LtITlWkU3GVMj0Pv8QI6ASdQ3XNuOlGBLnYkay//pmmHzKNoxZY8YkBip3 Hx9qYnUefZ1hIY6AIkjhSecnPn5EcPlhi3EV6x7NVFwGMx9S0NYIn3yFCZka viab6/LsFrPIVWJJUkbICUuljDwXusUdq5GzajASJcSgBJcmccvLN5AC7aq4 XaNcexemEmeJDCyEtCRlljG09gZhRUZ9ph2uEInzpTBBboYwS8+iGjhXtqt0 7Ce12szUkRpBaEaCohyWMG0KlDRPDsvimBrLjokbVUIMGXfGL8efAt0MlCNL yfWxFEXA8493e0FJxnvWY0+sIxzEoU8HnX1YMRGxhNIqV9XD6Dyq2OGVsvAW HJHKj9lrjzZ6e+kAMBX2ngFgLms6gIc0LGCuGoeW0XxVOA+/jzoNdiGALWPM CCVXVloaujjhXz5nDcPtqO2EHnPLdDEMiElXs6AgYFk2L0lybDgeNYlqKJTV HEwV0uUEYHZPw+MvVCzOdATcWSxOgjPOYWnwyXuNkdDPzZlnvCP9gHkdTNBU mjS7tycfY5MwYjlb0KDm6vKysu+a8zFteletXyJRFD7DCtF6Zb5oAOscP5BG WQRWbyx45i0yyCjVSf49qWnWsXIyTEuj00g5Jj9ryySzgoHlqiovF5cnJmXy gD89qNA2uQZfEguaraGiOUbEtEbKkdHOHS6brPuDa+Pa2kICxqnzbW2OyOu/ ViWCSSOCmS104hxrW5PrHIedInScOnVtclP2QwcvfyGOLdJULccoQtfj2w80 b8BBETPMpyeVpXCzm0qypQ7JPrWD7svI2D637NYVQDKkL5ZJ2nL9gcmTGgYR 8mS0yiOuTV3VLmMSC4vyZ1RboeHEbUoBPPC1PLMiBZ6RWks34azYc87fMDEv c8PMbErpwGZikivik/GIRdHqA7l91drMkcGMggJEMyQLe7L7yLhiCGShYmBC 3PLUXYub+3aGkkpgLX3MWgb/WnJ656cdPk/jjr4/TO0XACKxYQyiU20Vb4A4 WxnwqGK88ZDjyw0ZF8a+a0ha1/CMIUNlD7dCOSdE21BtMGkPymCtWKkSscc6 FUwH/QD8tCcfomhPYqfgIvm5Sp0vikkE1rV+2gMS8E8988znAy6qraoVsVss 6ggGBiVn6z2p7wa9abNuEd1X6T5sM1T++OlYmcTQscJPx5R+gwg0Jcyo1KZY 6Zrh+g8ZrgZXQhmqzTENl9Hu/N4ruvclB1o5GOzxmsxse4KMf/YmL50Y/8zN oQSe2EWCpD+D6TI3wn1UtdLUtXUaJ8pWI6f2lcKHHKi1poXqRAU+hFHKEN82 ma0J4HPzr21b5bOJNlpKBl2gjlxAlNY44BzW9oCJklwXTN1kKHP3qRjcFpXL yXWXjvSGU7Ju23F5xlBBvquawOfpfb80BgOLfWVw9Iq1FkCsxjYrBZdx0mvm wNbkcVKYkKedKsTUz0zidf5dOjUvsosC7Zgf7D9vDq8+F5jx2ne+q5qqm6+7 +X+6QETJfQZTB3ECbo9tARI9qXc/W5XL6uguFi2K2wAF5Yhh1qXJwf6jYJYj o7y0IUwtVWutYy247QwmxvriKq+Vn0Grwn28YVAtVggq+ukXYn1W4vOF2Mkp alZz6rBW26XaiS7ULarKaA39hgnTNrJBwR/QaNKdSdN2QxnA22IG6BWLaqDl JTfjzMK1Sxy4JjWsQMHW1h0R0TUqkqyIFowX2Wwy6j7c4AeOYFOR9dAXGwn3 5n0Gnnyc/YS71K7zCVUule6qQPAfzMjBkC5557OJ0npPPdOrtEkH02pwcsn3 07DxP+//poZKu7w9uH8UUTKCOwEsQaTtyccARN9aQXMuZIGDwuOTRg1VZo1q gbrcCjDflUAu1gWUc5UwbA3hfHCiO84H9yNI97YJ2ZFZ4M7NzaZPrQeqGtk+ MFGFH1pVY9sm94TIbeoecME92QZ0NbuA1T7JdVeTATbqCnJ04RZbqY4x3xrL Dl4DVKLGWOTmEgiSMF1lyBCFonOxU4BBD0qnaJuyJ7FXsuQ0KlRdm2wWH/GF Y9MxS/PtrbUaW+JUg7qEBQL57c2Y4oSpRuIjEfjCbwq5/yHhViQ2nCouA6gZ od5VvYeon5ff7NLkeR2NIP5o0eICgiw1qc0St202ufcvlHgKJWjzJO1gU0NL Ht7dqaq2JUNUnKwPlL2Hzr9EeUFdIC5VLZyAQfmL025cx5LTBc3A9Wb4quHg /lECWpV5BWRDyOv6EYwhhGzDI2X9YlBfOHK5/gLVTaQ4eB4L7E8MBLjijdAL BjOKcWUUGVlFdQKukE/3qMACs4CvsJM9uoP7R3PCKKPUsobCnfFWTyifbhQi a0FAHbIjxcbvbW3z7m3guXx+bykSEpXuj4aGBhQ3CQrGwWcfECTIdmb2qLIq EKD8AsAcJ252H6KgZHwvBEyoHBuxu1Kk0swjz4JgXxgBjs+d+oYzFGdw3DY/ 3KbI0hC6vyi00IPhB5ZXOem2bM9Pn5QH94/G0UTJXL2qbXDesxmCjhF0vV4c +Tj1TYEXVTfgPVNfJO5lM7cxERXS29gU/2sLzGGGuq32Fob7tAAB+QrA5IEn czt+0G9ygaTYhL5wuA2tVzYe/Q070tnuvn5hWCSoTlh8cza+AKfBhaEC3Lmf DBMOq2/wJr64qhMg0gPYKdCVPYaEATtKsZPEiPtBRw0bL7lZQr56NnsCkvNS h8PbQVTYeJ/TFMSG/9WusXZ+57ZgifBMwBhv8oj4WiCcPbyTQp8fAi+3341Y ATbAYsaDG6y40y17QlCxK+Z0+YlH3hC/wXXnOggBbFh+OEuZa58ncfC1eZQz JdOL2dS+dQkbYpJfYKZ6P0Oc9qzk1Nc0LcVbccNSCvlzCK7iPCKfL/NhnfDD auQYXlc/6Yla9v4QjZARorFBsuEf5gxB8how48sy8HPN8dweerGHsIinEZlf lW5MJyYUaHljXMWcQdN9ipK+xwdlKEriSJNHSugQUxawtYX8BWw9pzdZLvDm EhekamYgO+MwKmOuy9h/eeBtQ9O9AL8AKCJup88zcQwnGjmVwogXZFi9r8ng usJYUspA09ANpun4wy0R5HuOfdehmnjLd72bb//gVy9gekYKFenYMncVzUtI ckLnHc23wgz14c7uw7VAqmw40ugqmrgqog2QgOT80hIITazl1Ko6cyDXxeLM gQiSPD3sG435FHofbY1ADjgy0bYP0/Vx7lAmM/lL3VXwguDLtHdzl+GpgWGE yTntY7mzXNAF0MABQ6G/CY7mz4oJ4fmD3BUvdv03IIRUPzh0jH6wRqViOqSt PKIaFIHrMuNUZcDvUy0yd9l6yh6I31+QVaE6amDW5K4JMIr774SXUQUpfK1c VyehZygZU6nlgvYx3siPwZwriHxQ1jVG3eD6CJ3XAq8eFNdxzxdahrvBnXpP e5VK2s1pGITLba8KSq/50WVjEGfs9tquuZ+BjuPPjW01VIgHZotV9sJPieFY 63OCna79dlmHLQMtgOvfAIPqBONiNcD+poIlZpoXfhN/AMQj0tuBuw+KMW1f X9GSmXByHiDMMw/dZKWlEeS8GMwkBR4PYDSZrQalNpehrw/2H62tQUquFzHu QoU+oMvkBafqQ8Fm3EAQcIsMmJq9YVLGXSwSpZYfVFZrE4iM4crQFG5aimHk 9cELG9L3N5Y30TAm8AsjyIfTcKHLiVAmXksJad7mD9+kKVPbr7+GB+vtBktZ Ac3Daf6jIJytOb/vkVHQNeJDCBVYzWsjPEqOY/rCNKRDNfEGrq5LEw5c8IOm KRn4DtdAFUOaMA/IO3rYYfzATwLcMMJ1pQlKFPjWLpVCfmgM501qfkhooAvM xwycPbYkpZkPHeBwG1SRD6JRquxM4w1jidir/RWwRKn4Nd0CkTjQ2V0xUrBW qfylN3xEsUstR4RDZMTu7yNY3sJ6HPcDeKfg3HHcZ5wnFbcuOkwgYRw2t7ni Au7msOHQ4dZN0xcvH0RbA8mNno1MVXiIRf/9QPXfP/Vker4N9qTQn8PQv6wx HlMiUS8SkT3UGD3jY+V6w638VQlUJZojmxzPPm0spfd7DV4n29/khxE1HuEC gW/UymSWfjJHd8l6Bxi7pF+w06aaUx2VkwqKmqCgAjMDV/ht2trhdfEXYLcu x0O3wztfl3o7Vaxzwm5nrVHF3nj8DCdZMxBdHSV9KiDaQU5QWF1j+cbaylDI h+vAcbAkjJYo5XP/Q/3h9YOCiS4TlokG2TntF3q7gQCdaAy919eNi9G5SjFG jtnB/aMwskDywy2lGXglwOoBtxbiVAwJbCVjEd/vOTQpgAN9B6fr3aNKiRnD pyPFX1+ygO3QB/bQs4R7babEeaK0/xNyjh1RDeHhssb+vMbLndo84DK0VDGK 5fOURDSqI6RiidVkOTPHOV8oXeiUgjTQgO4dGXutgil+jMBohnfXODmH4Xp3 hVTQIRINDPqhZDVe0Rl51fi4VZX6AXDh73SgpyDaN5AkeB734/XVBGTMCL09 GWEGjpo7/NvECLQGSixUXNU2tahOictTua6tADLkgs+M65l1wX2RxFxoYp0C xfmPTSPvQtiTWuWjrvRcmya3P1ibUvkeTyqRLujnDrZvUQplDcYYWjSgGSu2 0c1AsM/UfVWgouJoJtj4SnmThfTfXgDETwYbu0t2//LnYazxUj8EuLyXY60u Xd4e3IEP8cXXHYKKe5z2tsPBX9whE+N06J68uEzryU2VpLj8nykM/gAH6LPD ySiENN4O550/vPnNjXbn0AaHO9VM/AIKjNVfQEXg51f1/GFOYpMkp5rVWyYN 4JygN/cL3nee9qi13gRv2Eu/GhwFVsd8w/Q05e7a8RikDoNTHeswGIRSyFgO dFE/3FMGGLUBOT0/PcTfwVdXRSvN9LHv/e356BGvvGCo/Id+tbFy9ocj9MjL wPP61EPiNaZfjIacgmZHBscXpGy3KMyGYP8Zb6Mx5KWrg+aeCeQFXonXDBWT c1ZxXxhqxkuZK+gNCH1ZwHGPmDS8IIN/VaiCvQJ+N+es5YxXzHO2R0kB6vnS 8XilGDaYxJ7GsDzuEy2JsucR6HEIfaxkN2FseAni6NGOgkBTaC3za5gvFA6k jgHADuJkfKOdh/OyRUoVHEjhvEdyf8nlMO94LBsEzSq3L8cGaLVRcRHALlM9 yfpvkikLcHvA2nnezi8UKtWT9QECdjitWmN7tX44u/YP2eKLn3+BpksN+/Vs g93v+xuh+3yJkOfdkR2eN5hwY+E8hXazm6eQfgASicZaXucqPbh/Avn1SpS9 zTKiUu/52RWwF4ULLGt06Y4uzRhopjaYDZ+cW1zmcDHByK1SwyEj4UYptgwB Mdv/S2WMRiSAlrW1czKDq/w6IJnBUKrMLVaqpMjn5ceVliPC/q/ASF21LCNa MJ1qCmoA+XELrMLTRISLV1fpXCIXEraytv7GyAjDu2EvvSeaQcRreueEeeX3 kNNIgnPK11gapIAAPXuyicDLkCVpnABNDejz6BJZfRlafCw/RIA41W8LIoIT GRdaBTpbKVVg0QCkXlXUf3AC0Kh6Vfz8guxdbJJp2A+m2XCN0QR9OG/TL66q 1ktjIqfaxdFKn5ZsTLhjcF0wXLcesrWaeSYs72c/YolZx/CsBq8wc7wCJFWa V1Bv1M0ZvMLkrO4Q5hWQa5ZmFaYxmlVYm31hjtaj4nq/+Zhk+2OegJsU86Ws uHa7woWbGKdShQQGTfjs09/ePXVPT9Pb/iiOrCyLVOz96fnx/fB89+7+6cu1 OsPd/fPh919986tvvzr8/u7+X7u7+1f/8tU3333/q29+87vD7Vfik+sDafj2 cfqTbOzuh+n68PW3333/b4fjw2/ejl/f3YsGOdq9+Nd3t+/+vFR3eDu9fZqe X/3DUpHh+pBcH57u/ja9m9ciDa9f6yKqug6m+LNWsvj/UEsBAhcDFAAAAAgA 0W2FKwIJ3xqbMAAAMVcBAAQADQAAAAAAAQAAAKSBAAAAAHNpLmNVVAUAA7qV DjxVeAAAUEsFBgAAAAABAAEAPwAAANIwAAAAAA== --0-2085402423-1007588971=:21330-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 6 12:50:21 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB6Knqk01346 for dynarec-outgoing; Thu, 6 Dec 2001 12:49:53 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <018401c17e99$dac898c0$b32bfea9@daves> From: "David Sharp" To: References: <20011205134900.U21330-101000@beacon.synthcom.com> Subject: Re: DYNAREC: Hand recompiled Space Invaders Date: Thu, 6 Dec 2001 21:06:19 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.2919.6700 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com You're not translating it manually are you? Isn't that going to take forever (and probably then some) interesting if you can make it work though. Dave ----- Original Message ----- From: "Neil Bradley" To: Sent: Wednesday, December 05, 2001 9:49 PM Subject: DYNAREC: Hand recompiled Space Invaders > It probably doesn't even compile, but it's a start. Have a look at what > I'm doing. Forgive the crappy code - it's just prototyped to see if I can > make it work... > > -->Neil > > -------------------------------------------------------------------------- ----- > Neil Bradley Whoever said "Money can't buy happiness" didn't have > Synthcom Systems, Inc. a lot of money. > ICQ #29402898 > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 6 12:53:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB6KrD701359 for dynarec-outgoing; Thu, 6 Dec 2001 12:53:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 6 Dec 2001 13:25:06 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Hand recompiled Space Invaders In-Reply-To: <018401c17e99$dac898c0$b32bfea9@daves> Message-ID: <20011206132434.T25751-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > You're not translating it manually are you? Isn't that going to take forever > (and probably then some) interesting if you can make it work though. Yes, it's a manual translation. The code isn't huge - it's like 5K of real code, and the rest is either a table or is unused. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 6 18:10:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB729tI01609 for dynarec-outgoing; Thu, 6 Dec 2001 18:09:56 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <02e301c17ec8$dffddd80$2900a8c0@burp> From: "Tom Browne" To: Subject: DYNAREC: FPGA CPU emulation... Date: Fri, 7 Dec 2001 02:42:54 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, Not exactly dynarec, but perhaps interesting nevertheless... I was just doing some research on something when I stumbled across this page... http://www.nallatech.com/products/dime2/benblue2/index.asp 20 million programmable gates?! That's a few. :) It occured to me that perhaps there were Verilog/VHDL listings for the old classic chips (Z80, 6502, etc.) which could be rebuilt to program an FPGA with. A little pointless, given how cheap CPU power is these days, but the thought of having a true Chameleon chip that just works is nice... :) - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 6 23:27:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB77RDF01867 for dynarec-outgoing; Thu, 6 Dec 2001 23:27:14 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c17ef1$ac4e1120$4877393e@menta.net> From: "Victor Moya del Barrio" To: References: <02e301c17ec8$dffddd80$2900a8c0@burp> Subject: Re: DYNAREC: FPGA CPU emulation... Date: Fri, 7 Dec 2001 08:34:56 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hiya, > > Not exactly dynarec, but perhaps interesting nevertheless... I was just > doing some research on something when I stumbled across this page... > > http://www.nallatech.com/products/dime2/benblue2/index.asp > > 20 million programmable gates?! > I don't really know about this kind of technology but I remember I read somewhere that modern FPGA could be as powerful as a Pentium (586). If you are able to program the logic of a Pentium of course ;). > It occured to me that perhaps there were Verilog/VHDL listings for the old > classic chips (Z80, 6502, etc.) which could be rebuilt to program an FPGA > with. A little pointless, given how cheap CPU power is these days, but the > thought of having a true Chameleon chip that just works is nice... :) > An emulator board with a camaleon processor? But lately CPU raw power is so cheap (Athlons and P4) that an interpreter seems the easiest method. > - Tom. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 7 13:56:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB7Ltxh03000 for dynarec-outgoing; Fri, 7 Dec 2001 13:56:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Dec 2001 14:27:53 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: 68K->x86 Message-ID: <20011207141647.U32495-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Now that my product is shipping, I've got more free time to work on other "fun" projects, and I'd like to get back under way with the 68K dynarec. Hope there are others with the same sentiment. ;-) Who was it that turned us on to SDL? (www.libsdl.org). I've been reading it, studying it, and I'm now of the opinion that this is the way we should go with the Food Fight emulation/recompilation. It has Linux, IRIX, Win32, BeOS (not that we care), MacOS and OSX libraries. It hides some of the stupidity of Linux/MacOS's sound APIs - everything is a callback like it should be! Thread creation, timer creation, etc... is all abstracted in a very nice set of APIs. This of course doesn't help anyone in DOS land, but do we care any longer? -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 7 15:01:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB7N1Cl03077 for dynarec-outgoing; Fri, 7 Dec 2001 15:01:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002301c17f74$eace3140$4877393e@menta.net> From: "Victor Moya del Barrio" To: References: <20011207141647.U32495-100000@beacon.synthcom.com> Subject: Re: DYNAREC: 68K->x86 Date: Sat, 8 Dec 2001 00:14:25 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Now that my product is shipping, I've got more free time to work on other > "fun" projects, and I'd like to get back under way with the 68K dynarec. > Hope there are others with the same sentiment. ;-) > It seems my PhD classes are finished too so I will have a bit more of free time too (ummm ... or it was for ending the PhD works i had to do ;). > Who was it that turned us on to SDL? (www.libsdl.org). I've been reading > it, studying it, and I'm now of the opinion that this is the way we should > go with the Food Fight emulation/recompilation. It has Linux, IRIX, Win32, > BeOS (not that we care), MacOS and OSX libraries. > IRIX too? A Food Fight emulator running in a 64 R1000 IRIX machine? Wow!!!! BTW, the university department where I work received some ia64 machine as donation. The first one is working and I can use it (It took just a couple of days to port Dixie that machine, but anyway it was Red Hat Linux and Dixie was already running in Linux). But nedit (a text editor for Unix) crashes ;(. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 7 15:11:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB7NBu803096 for dynarec-outgoing; Fri, 7 Dec 2001 15:11:56 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 7 Dec 01 18:26:52 -0500 Message-Id: <3.0.5.32.20011207152800.007a5770@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 07 Dec 2001 15:28:00 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K->x86 In-Reply-To: <20011207141647.U32495-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 02:27 PM 12/7/01 -0800, you wrote: >Now that my product is shipping, I've got more free time to work on other >"fun" projects, and I'd like to get back under way with the 68K dynarec. >Hope there are others with the same sentiment. ;-) Yes, I would like to participate. I'm interested in emulating a certain series of games which use a 386 processor, so an X86->X86 dynarec seems like it might be an interesting (and good) solution to the problem. Not right now, though. The games are encrypted, and I'm working on another project (which uses a 186-clone processor) for now. It's probably very unlikely I'll move on to those other games, but I can always wish ;) >Who was it that turned us on to SDL? (www.libsdl.org). I've been reading >it, studying it, and I'm now of the opinion that this is the way we should >go with the Food Fight emulation/recompilation. It has Linux, IRIX, Win32, >BeOS (not that we care), MacOS and OSX libraries. > >It hides some of the stupidity of Linux/MacOS's sound APIs - everything is >a callback like it should be! Thread creation, timer creation, etc... is >all abstracted in a very nice set of APIs. This of course doesn't help >anyone in DOS land, but do we care any longer? I would still be interested in maintaining a DOS port. Are we going to need threads and advanced timer support? Keeping a timer at a certain rate is easy in DOS, but threads aren't ;) I have a pretty nice VESA library I wrote which I could use. Most VESA implementations will handle all sorts of resolutions and color depths that an SDL-based program would. Wouldn't the SDL interface be part of the OS-dependant code anyway? For sound, I could use SEAL or something, because I haven't successfully run my SB16 code on any system other than my old P180. How are we going to debug the core, anyway? Shouldn't we define a debugger interface? I'm thinking a simple visual debugger could be made of 2 windows: - Register display - "Main" window, where the disassembly is displayed, and data is dumped to The implementation of these could be handled by the OS-dependant part of the program, but a standard interface would be used so that a portable debugging module could be written. Basically, the debugger just has to allow for simple commands like: trace, run to address, jump, dump, and modify register. I have debuggers like this in my current unreleased emulators, and they work great! They aren't portable though :( What I'm proposing would be functionally equivalent, portable, and easier to implement. Just a thought... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 7 15:16:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB7NGpR03112 for dynarec-outgoing; Fri, 7 Dec 2001 15:16:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 7 Dec 01 18:31:48 -0500 Message-Id: <3.0.5.32.20011207153259.007a7a30@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 07 Dec 2001 15:32:59 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K->x86 In-Reply-To: <002301c17f74$eace3140$4877393e@menta.net> References: <20011207141647.U32495-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >BTW, the university department where I work received some ia64 machine >as donation. The first one is working and I can use it Years of research and development by Intel have resulted in allowing Victor to play Food Fight, a game from 1983, on their new state of the art architecture ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 7 16:08:52 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB808hX03161 for dynarec-outgoing; Fri, 7 Dec 2001 16:08:43 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Dec 2001 16:40:43 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: 68K->x86 In-Reply-To: <3.0.5.32.20011207152800.007a5770@mailandnews.com> Message-ID: <20011207162713.H32495-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >It hides some of the stupidity of Linux/MacOS's sound APIs - everything is > >a callback like it should be! Thread creation, timer creation, etc... is > >all abstracted in a very nice set of APIs. This of course doesn't help > >anyone in DOS land, but do we care any longer? > > I would still be interested in maintaining a DOS port. > > Are we going to need threads and advanced timer support? Keeping a timer at > a certain rate is easy in DOS, but threads aren't ;) I'm not thinking of using any of the threading, but the messaging and timers, definitely. It shouldn't be too tough to write an SDL-like wrapper. > I have a pretty nice VESA library I wrote which I could use. Most VESA > implementations will handle all sorts of resolutions and color depths that > an SDL-based program would. Wouldn't the SDL interface be part of the > OS-dependant code anyway? At first I didn't think it would have to be, but now I'm thinking it would. ;-( I'll have to wrap SDL. I guess the advantage would be that ports to other platforms would happen quickly. Well, at least those supporting SDL. > For sound, I could use SEAL or something, because I haven't successfully > run my SB16 code on any system other than my old P180. Since it's callback based, you won't have to call it if you don't want to (you can run it without sound). > How are we going to debug the core, anyway? Shouldn't we define a debugger > interface? I'm thinking a simple visual debugger could be made of 2 windows: I think that's a great goal down the road, however my initial thinking is that it needs to be a logged lock-stepped setup. That is, I was going to initially have it so that both the emulated and recompiled code executed one instruction each and compared everything at each step. If desired, it would disassemble each instruction and dump all registers at each step so it could be compared. Of course, this is short term... I like your longer term solution better. ;-) > - Register display > - "Main" window, where the disassembly is displayed, and data is dumped to > > The implementation of these could be handled by the OS-dependant part of > the program, but a standard interface would be used so that a portable > debugging module could be written. Why couldn't we leverage the graphics subsystem and just do our own little UI? Makes it LOTS easier and everyone immediately benefits from it - provided they've implemented the graphics layer. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 7 16:28:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB80SKd03186 for dynarec-outgoing; Fri, 7 Dec 2001 16:28:20 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 7 Dec 01 19:43:12 -0500 Message-Id: <3.0.5.32.20011207164421.007a5700@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 07 Dec 2001 16:44:21 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K->x86 In-Reply-To: <20011207162713.H32495-100000@beacon.synthcom.com> References: <3.0.5.32.20011207152800.007a5770@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm not thinking of using any of the threading, but the messaging and >timers, definitely. It shouldn't be too tough to write an SDL-like >wrapper. What kind of messaging? I haven't read too deeply into SDL. >I think that's a great goal down the road, however my initial thinking is >that it needs to be a logged lock-stepped setup. That is, I was going to >initially have it so that both the emulated and recompiled code executed >one instruction each and compared everything at each step. If desired, it >would disassemble each instruction and dump all registers at each step so >it could be compared. Of course, this is short term... I like your longer >term solution better. ;-) I guess lockstep would be good. I'm just so use to debuggers ;) How will the stepping look? Will the regs be dumped to the screen, or to a file? >Why couldn't we leverage the graphics subsystem and just do our own little >UI? Makes it LOTS easier and everyone immediately benefits from it - >provided they've implemented the graphics layer. Ok, that sounds good. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 7 16:45:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB80jBr03212 for dynarec-outgoing; Fri, 7 Dec 2001 16:45:11 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 7 Dec 2001 17:17:11 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: 68K->x86 In-Reply-To: <3.0.5.32.20011207164421.007a5700@mailandnews.com> Message-ID: <20011207170808.L32495-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >timers, definitely. It shouldn't be too tough to write an SDL-like > >wrapper. > What kind of messaging? I haven't read too deeply into SDL. Have a look: http://www.libsdl.org Basically, I'd use it for keyboard input. Can't think of anything else it's needed for just yet... > >one instruction each and compared everything at each step. If desired, it > >would disassemble each instruction and dump all registers at each step so > >it could be compared. Of course, this is short term... I like your longer > >term solution better. ;-) > I guess lockstep would be good. I'm just so use to debuggers ;) How will > the stepping look? Will the regs be dumped to the screen, or to a file? Initially to memory to keep a backtrace, and when it doesn't match any longer, it'll dump the last X instructions to a file so you can figure out what happened. It would sucksucksucksucksuck to have to have to sit through 50 megabytes of .TXT files because something is doing a memory move. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 7 19:55:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB83jTY03351 for dynarec-outgoing; Fri, 7 Dec 2001 19:45:30 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 7 Dec 01 22:59:34 -0500 Message-Id: <3.0.5.32.20011207200039.007aa5a0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 07 Dec 2001 20:00:39 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K->x86 In-Reply-To: <20011207170808.L32495-100000@beacon.synthcom.com> References: <3.0.5.32.20011207164421.007a5700@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 05:17 PM 12/7/01 -0800, you wrote: >Basically, I'd use it for keyboard input. Can't think of anything else >it's needed for just yet... If I understand correctly, SDL's messaging revolves mostly around the PollEvent() function. That should pose no problem. >Initially to memory to keep a backtrace, and when it doesn't match any >longer, it'll dump the last X instructions to a file so you can figure out >what happened. It would sucksucksucksucksuck to have to have to sit >through 50 megabytes of .TXT files because something is doing a memory >move. ;-) Ok. Sounds good. Which interpreter will we be using to compare against? MAME's? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 7 23:43:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB87h3W03529 for dynarec-outgoing; Fri, 7 Dec 2001 23:43:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <002301c17f74$eace3140$4877393e@menta.net> Subject: Re: DYNAREC: 68K->x86 From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Sat, 8 Dec 2001 09:05:52 +0100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id fB87h2U03525 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > The first one is working and I can use it (It took just a couple of days > to port Dixie that machine, Does Dixie dynamically compiles to ia64 ? > but anyway it was Red Hat Linux and Dixie was already running in Linux). > But nedit (a text editor for Unix) crashes ;(. Either use nedit 5.2 or patch nedit 5.1.1 so that you actually pass NULL as the last argument to XtVa*() functions, instead of an integral 0. Mandrake Linux for Itanium features nedit 5.2. ;-) Bye, Gwenolé. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 7 23:49:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB87njE03543 for dynarec-outgoing; Fri, 7 Dec 2001 23:49:45 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3C11C997.F736F4FC@austin.rr.com> Date: Sat, 08 Dec 2001 00:04:39 -0800 From: tarquin X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K->x86 References: <20011207141647.U32495-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Now that my product is shipping, I've got more free time to work on other > "fun" projects, and I'd like to get back under way with the 68K dynarec. > Hope there are others with the same sentiment. ;-) Not enough time in the day for work, play, and code =P I have a few ideas that I want to work out on the Ubercore, but I never get around to implementing them. > Who was it that turned us on to SDL? (www.libsdl.org). I've been reading > it, studying it, and I'm now of the opinion that this is the way we should That would probably be me =) It's a damned handy little library, and definitely robust enough. > It hides some of the stupidity of Linux/MacOS's sound APIs - everything is > a callback like it should be! Thread creation, timer creation, etc... is > all abstracted in a very nice set of APIs. This of course doesn't help > anyone in DOS land, but do we care any longer? It does something even cooler than that: it takes care of the horrors of X11 coding. Getting high-speed fullscreen 2D video in X is "interesting" in most cases. The added fact that you can then deal with svgalib, dga, fbcon, X11, etc. all from one API is quite nice as well. > -->Neil -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 8 01:16:12 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB89G6n03633 for dynarec-outgoing; Sat, 8 Dec 2001 01:16:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001901c17fca$a0a9f9e0$4877393e@menta.net> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: 68K->x86 Date: Sat, 8 Dec 2001 10:27:58 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > The first one is working and I can use it (It took just a couple of days > > to port Dixie that machine, > > Does Dixie dynamically compiles to ia64 ? > Erm ... a good idea but not yet :). Dixie is just a multiplataform multisource multitarget static binary translation toolset. A static translator generates Dixie code for a Dixie Virtual Machine, which most of the times runs the 'translated binaries' in any architecture where it compiles (it compiles in IRIX/Mips, AIX/Power2, Sparc/SunOS, Alpha/OSF1, Linux/x86 and now in Linux/IA64). Very slowly ... There is also a Dixie to native code translator which translates basic blocks from Dixie to a native machine, but the binary still needs to run through the DVM (OS emulation and non translated basic blocks). At the moment we have as source Alpha, Convex (old vectorial machine), x86 (without FP), Power2/PowerPC and Mips. Targets: Alpha and Mips (without FP). When I said it was ported I mean that the tool compiles and works in RedHat Linux/IA64. About a dynamic compiler for ia64 I was wondering if someone has taken a look to Daisy to see if it can be easily retargeted from BOA (the VLIW architecture of IBM) to ia64. Perhaps I will take a look next year. > > but anyway it was Red Hat Linux and Dixie was already running in Linux). > > But nedit (a text editor for Unix) crashes ;(. > > Either use nedit 5.2 or patch nedit 5.1.1 so that you actually pass NULL > as the last argument to XtVa*() functions, instead of an integral 0. > Mandrake Linux for Itanium features nedit 5.2. ;-) > I'm not an operator of the machine just an user, but I will suggest the operators to do that ;). > Bye, > Gwenolé. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 8 01:18:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB89Ibg03643 for dynarec-outgoing; Sat, 8 Dec 2001 01:18:37 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <005b01c17fca$faec5c40$4877393e@menta.net> From: "Victor Moya del Barrio" To: References: <20011207141647.U32495-100000@beacon.synthcom.com> <3.0.5.32.20011207153259.007a7a30@mailandnews.com> Subject: Re: DYNAREC: 68K->x86 Date: Sat, 8 Dec 2001 10:30:30 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "Bart" To: Sent: Saturday, December 08, 2001 12:32 AM Subject: Re: DYNAREC: 68K->x86 > >BTW, the university department where I work received some ia64 machine > >as donation. The first one is working and I can use it > > Years of research and development by Intel have resulted in allowing Victor > to play Food Fight, a game from 1983, on their new state of the art > architecture ;) > Well, it is Linux and run x86 so I could test it ;). What about 68K->IA64? Now we have the test machine and compilers ;). > > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 8 19:03:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB932DW07202 for dynarec-outgoing; Sat, 8 Dec 2001 19:02:14 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sat, 8 Dec 01 22:16:44 -0500 Message-Id: <3.0.5.32.20011208191754.007a4b50@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 08 Dec 2001 19:17:54 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: 68K->x86 In-Reply-To: <3C11C997.F736F4FC@austin.rr.com> References: <20011207141647.U32495-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It does something even cooler than that: it takes care of the horrors of >X11 coding. Getting high-speed fullscreen 2D video in X is "interesting" >in most cases. The added fact that you can then deal with svgalib, dga, >fbcon, X11, etc. all from one API is quite nice as well. What about incorporating a GUI under X? This isn't related to our project, but I remember working with GTK once, and thought it was quite nice, but apparently SDL can't really work in windowed applications the same way DirectX can under Windows. I remember seeing some code which did it, but it did some tricky X stuff. I haven't worked too much with X, but to me, it seemed like a big kludge. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Dec 8 23:56:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB97uc007442 for dynarec-outgoing; Sat, 8 Dec 2001 23:56:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 9 Dec 2001 00:12:45 -0800 (PST) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K->x86 In-Reply-To: <3.0.5.32.20011208191754.007a4b50@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Sat, 8 Dec 2001, Bart wrote: > What about incorporating a GUI under X? This isn't related to our project, > but I remember working with GTK once, and thought it was quite nice, but > apparently SDL can't really work in windowed applications the same way > DirectX can under Windows. I remember seeing some code which did it, but it > did some tricky X stuff. I haven't messed around much with DirectX, but if you mean using the regular windowing calls to provide a gui, no, SDL doesn't really deal with that. Then again, neither does DirectX. I believe there are bindings for some of the toolkits to get an SDL surface as a portion of a gui-ified window, but the library in general was built to do a few things, and do them well. GUI stuff wasn't one of them. Under windows there's a hack you can use to provide SDL with a window ID. > I haven't worked too much with X, but to me, it seemed like a big kludge. Most of the things one would use SDL for tend to not want or need a full out X assisted GUI. If they have much of a user interface besides a basic set of menus, it's all coded as part of the app itself and doesn't use X's window tricks. The other thing is that if you start relying on a window system, you won't get a transparent port to the other SDL targets like fbcon or svgalib. GTK is an ugly hack in most areas, with no documentation on the actual internals -- and you need to mess with internals too often if you stray outside the area they want you to use. > Bart John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 9 02:52:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB9AqVq07612 for dynarec-outgoing; Sun, 9 Dec 2001 02:52:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <001901c17fca$a0a9f9e0$4877393e@menta.net> Subject: Re: DYNAREC: 68K->x86 From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Sun, 9 Dec 2001 12:14:28 +0100 Message-ID: <1f45df0.bw1vwi14j1lxsM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id fB9AqLU07603 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Dixie is just a multiplataform multisource multitarget static > binary translation toolset. A static translator generates Dixie > code for a Dixie Virtual Machine, which most of the times runs > the 'translated binaries' in any architecture where it compiles How does Dixie handle condition codes ? I mean does it get rid of them (mostly) by more high-level mechanisms like UBQT (sp?) or does it have to fully emulate its behavior. In the latter case, does it have a canonic/common way accros different sources (ppc, mips) ? > I'm not an operator of the machine just an user, but I will suggest the > operators to do that ;). BTW, what sort of machines are they ? Big servers (Lions) or workstations (BigSur). The former are more appreciable and the latter are cool too (HP i2000). ;-) Bye, Gwenolé. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 9 02:52:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB9AqVQ07611 for dynarec-outgoing; Sun, 9 Dec 2001 02:52:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <005b01c17fca$faec5c40$4877393e@menta.net> Subject: Re: DYNAREC: 68K->x86 From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Sun, 9 Dec 2001 12:14:31 +0100 Message-ID: <1f45dnb.1yhvote1d69cw0M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id fB9AqOU07606 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Well, it is Linux and run x86 so I could test it ;). What about 68K->IA64? > Now we have the test machine and compilers ;). I'd personnally prefer something like ppc64 ("G5") -> ia64, or x86_64 -> ia64. Bye, Gwenolé. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 9 13:19:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB9LJ2F08580 for dynarec-outgoing; Sun, 9 Dec 2001 13:19:03 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000901c180f8$d1007f40$4877393e@menta.net> From: "Victor Moya del Barrio" To: References: <1f45df0.bw1vwi14j1lxsM@[192.168.0.2]> Subject: Re: DYNAREC: 68K->x86 Date: Sun, 9 Dec 2001 22:31:08 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "Gwenole Beauchesne" To: Sent: Sunday, December 09, 2001 12:14 PM Subject: Re: DYNAREC: 68K->x86 > Hi, > > > Dixie is just a multiplataform multisource multitarget static > > binary translation toolset. A static translator generates Dixie > > code for a Dixie Virtual Machine, which most of the times runs > > the 'translated binaries' in any architecture where it compiles > > How does Dixie handle condition codes ? I mean does it get rid of them > (mostly) by more high-level mechanisms like UBQT (sp?) or does it have > to fully emulate its behavior. In the latter case, does it have a > canonic/common way accros different sources (ppc, mips) ? > The Dixie ISA (the virtual representation/virtual code) has condition code support which was added when the x86 translation was implemented. As every source binary is translated to Dixie before emulation through the DVM or to be translated to another native ISA this is the way we handle condition codes. The Dixie to native ISA is still under development but I'm sure we will add when we can condition code elimination. There was also a proposal to transform dixie code with flags to dixie code without flags (to implement an easier translation to native code when the native ISA doesn't have flags), but it is still hasn't been implement either. > > I'm not an operator of the machine just an user, but I will suggest the > > operators to do that ;). > > BTW, what sort of machines are they ? Big servers (Lions) or > workstations (BigSur). The former are more appreciable and the latter > are cool too (HP i2000). ;-) > I think this one must be just a workstation but I don't know for sure. It is the first machine to be connected to the department network from a HP/Intel donation to the university. I don't remember which machines were demanded, perhaps a couple monoprocessor workstation and a multiprocessor server. If you are really interested I will ask for the info ;). > Bye, > Gwenolé. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 9 13:23:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB9LNZM08593 for dynarec-outgoing; Sun, 9 Dec 2001 13:23:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001601c180f9$78ea0820$4877393e@menta.net> From: "Victor Moya del Barrio" To: References: <1f45dnb.1yhvote1d69cw0M@[192.168.0.2]> Subject: Re: DYNAREC: 68K->x86 Date: Sun, 9 Dec 2001 22:35:50 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > Well, it is Linux and run x86 so I could test it ;). What about 68K->IA64? > > Now we have the test machine and compilers ;). > > I'd personnally prefer something like ppc64 ("G5") -> ia64, or x86_64 -> > ia64. > My boss/PhD director would want a ia64 -> x86 :). Because as an old Alpha engineer (now an Intel engineer ;) hates ia64 and wants to show everyone that even a P4 runs better than a Merced. Daisy translates from PPC to BOA (VLIW), so if it could be ported to produce ia64 code you would have the PPC to ia64 translator. But I think BOA has some special VLIW features (tree VLIW?) which are not implemented in ia64. Perhaps disabling any optimization related ... I haven't even downloaded the source code. BTW, AMD guys would be really interested in a IA64 to x86 64 bits translator. > Bye, > Gwenolé. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 9 19:51:47 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBA3oms08882 for dynarec-outgoing; Sun, 9 Dec 2001 19:50:49 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 9 Dec 2001 20:22:51 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: 68K->x86 In-Reply-To: Message-ID: <20011209202205.U40173-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > apparently SDL can't really work in windowed applications the same way > > DirectX can under Windows. I remember seeing some code which did it, but it > > did some tricky X stuff. > I haven't messed around much with DirectX, but if you mean using the > regular windowing calls to provide a gui, no, SDL doesn't really deal with > that. Then again, neither does DirectX. I believe there are bindings for > some of the toolkits to get an SDL surface as a portion of a gui-ified > window, but the library in general was built to do a few things, and do > them well. GUI stuff wasn't one of them. FWIW, You can do a DirectX window, but DirectX doesn't handle any of the menu and dialog box stuff if that was what was meant by the original poster. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 9 19:53:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBA3rnp08892 for dynarec-outgoing; Sun, 9 Dec 2001 19:53:49 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 9 Dec 2001 20:25:57 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Food Fight Message-ID: <20011209202253.O40173-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I had forgotten I lost some of the Food Fight work I did back in September (hard disk crash - those damn IBM drives) so I'm going to have to redo a bit of it. ;-( But hopefully it'll only take me a week or so to get the emulation up and running again, and this time I'll have SDL to back me! We'll see how it goes... -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 9 20:30:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB9AqVQ07611 for dynarec-outgoing; Sun, 9 Dec 2001 02:52:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <005b01c17fca$faec5c40$4877393e@menta.net> Subject: Re: DYNAREC: 68K->x86 From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Sun, 9 Dec 2001 12:14:31 +0100 Message-ID: <1f45dnb.1yhvote1d69cw0M@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id fB9AqOU07606 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Well, it is Linux and run x86 so I could test it ;). What about 68K->IA64? > Now we have the test machine and compilers ;). I'd personnally prefer something like ppc64 ("G5") -> ia64, or x86_64 -> ia64. Bye, Gwenolé. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 9 20:30:49 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB9AqVq07612 for dynarec-outgoing; Sun, 9 Dec 2001 02:52:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <001901c17fca$a0a9f9e0$4877393e@menta.net> Subject: Re: DYNAREC: 68K->x86 From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Sun, 9 Dec 2001 12:14:28 +0100 Message-ID: <1f45df0.bw1vwi14j1lxsM@[192.168.0.2]> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by dynarec.com id fB9AqLU07603 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > Dixie is just a multiplataform multisource multitarget static > binary translation toolset. A static translator generates Dixie > code for a Dixie Virtual Machine, which most of the times runs > the 'translated binaries' in any architecture where it compiles How does Dixie handle condition codes ? I mean does it get rid of them (mostly) by more high-level mechanisms like UBQT (sp?) or does it have to fully emulate its behavior. In the latter case, does it have a canonic/common way accros different sources (ppc, mips) ? > I'm not an operator of the machine just an user, but I will suggest the > operators to do that ;). BTW, what sort of machines are they ? Big servers (Lions) or workstations (BigSur). The former are more appreciable and the latter are cool too (HP i2000). ;-) Bye, Gwenolé. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 9 20:30:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB9LNZM08593 for dynarec-outgoing; Sun, 9 Dec 2001 13:23:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001601c180f9$78ea0820$4877393e@menta.net> From: "Victor Moya del Barrio" To: References: <1f45dnb.1yhvote1d69cw0M@[192.168.0.2]> Subject: Re: DYNAREC: 68K->x86 Date: Sun, 9 Dec 2001 22:35:50 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > Well, it is Linux and run x86 so I could test it ;). What about 68K->IA64? > > Now we have the test machine and compilers ;). > > I'd personnally prefer something like ppc64 ("G5") -> ia64, or x86_64 -> > ia64. > My boss/PhD director would want a ia64 -> x86 :). Because as an old Alpha engineer (now an Intel engineer ;) hates ia64 and wants to show everyone that even a P4 runs better than a Merced. Daisy translates from PPC to BOA (VLIW), so if it could be ported to produce ia64 code you would have the PPC to ia64 translator. But I think BOA has some special VLIW features (tree VLIW?) which are not implemented in ia64. Perhaps disabling any optimization related ... I haven't even downloaded the source code. BTW, AMD guys would be really interested in a IA64 to x86 64 bits translator. > Bye, > Gwenolé. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 9 20:30:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB97uc007442 for dynarec-outgoing; Sat, 8 Dec 2001 23:56:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 9 Dec 2001 00:12:45 -0800 (PST) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: 68K->x86 In-Reply-To: <3.0.5.32.20011208191754.007a4b50@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Sat, 8 Dec 2001, Bart wrote: > What about incorporating a GUI under X? This isn't related to our project, > but I remember working with GTK once, and thought it was quite nice, but > apparently SDL can't really work in windowed applications the same way > DirectX can under Windows. I remember seeing some code which did it, but it > did some tricky X stuff. I haven't messed around much with DirectX, but if you mean using the regular windowing calls to provide a gui, no, SDL doesn't really deal with that. Then again, neither does DirectX. I believe there are bindings for some of the toolkits to get an SDL surface as a portion of a gui-ified window, but the library in general was built to do a few things, and do them well. GUI stuff wasn't one of them. Under windows there's a hack you can use to provide SDL with a window ID. > I haven't worked too much with X, but to me, it seemed like a big kludge. Most of the things one would use SDL for tend to not want or need a full out X assisted GUI. If they have much of a user interface besides a basic set of menus, it's all coded as part of the app itself and doesn't use X's window tricks. The other thing is that if you start relying on a window system, you won't get a transparent port to the other SDL targets like fbcon or svgalib. GTK is an ugly hack in most areas, with no documentation on the actual internals -- and you need to mess with internals too often if you stray outside the area they want you to use. > Bart John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Dec 9 20:31:04 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fB9LJ2F08580 for dynarec-outgoing; Sun, 9 Dec 2001 13:19:03 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000901c180f8$d1007f40$4877393e@menta.net> From: "Victor Moya del Barrio" To: References: <1f45df0.bw1vwi14j1lxsM@[192.168.0.2]> Subject: Re: DYNAREC: 68K->x86 Date: Sun, 9 Dec 2001 22:31:08 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "Gwenole Beauchesne" To: Sent: Sunday, December 09, 2001 12:14 PM Subject: Re: DYNAREC: 68K->x86 > Hi, > > > Dixie is just a multiplataform multisource multitarget static > > binary translation toolset. A static translator generates Dixie > > code for a Dixie Virtual Machine, which most of the times runs > > the 'translated binaries' in any architecture where it compiles > > How does Dixie handle condition codes ? I mean does it get rid of them > (mostly) by more high-level mechanisms like UBQT (sp?) or does it have > to fully emulate its behavior. In the latter case, does it have a > canonic/common way accros different sources (ppc, mips) ? > The Dixie ISA (the virtual representation/virtual code) has condition code support which was added when the x86 translation was implemented. As every source binary is translated to Dixie before emulation through the DVM or to be translated to another native ISA this is the way we handle condition codes. The Dixie to native ISA is still under development but I'm sure we will add when we can condition code elimination. There was also a proposal to transform dixie code with flags to dixie code without flags (to implement an easier translation to native code when the native ISA doesn't have flags), but it is still hasn't been implement either. > > I'm not an operator of the machine just an user, but I will suggest the > > operators to do that ;). > > BTW, what sort of machines are they ? Big servers (Lions) or > workstations (BigSur). The former are more appreciable and the latter > are cool too (HP i2000). ;-) > I think this one must be just a workstation but I don't know for sure. It is the first machine to be connected to the department network from a HP/Intel donation to the university. I don't remember which machines were demanded, perhaps a couple monoprocessor workstation and a multiprocessor server. If you are really interested I will ask for the info ;). > Bye, > Gwenolé. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 10 01:15:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBA9FG309223 for dynarec-outgoing; Mon, 10 Dec 2001 01:15:16 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f To: dynarec@dynarec.com In-Reply-To: <000901c180f8$d1007f40$4877393e@menta.net> Subject: Re: DYNAREC: 68K->x86 From: gb@dial.oleane.com (Gwenole Beauchesne) Date: Mon, 10 Dec 2001 10:37:14 +0100 Message-ID: <1f46xi8.m8ekfa4akmg8M@[192.168.0.2]> Organization: [Posted via] Oleane User-Agent: MacSOUP/F-2.4 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I think this one must be just a workstation but I don't know for sure. It > is the first machine to be connected to the department network from a > HP/Intel donation to the university. Then this is an HP i2000. Good machine. I wonder why this never drop by my appartment. ;-) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 10 01:32:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBA9Wnl09246 for dynarec-outgoing; Mon, 10 Dec 2001 01:32:49 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200112100947.fBA9l5R01596@pons.ac.upc.es> Subject: Re: DYNAREC: 68K->x86 In-Reply-To: <1f46xi8.m8ekfa4akmg8M@[192.168.0.2]> "from Gwenole Beauchesne at Dec 10, 2001 10:37:14 am" To: dynarec@dynarec.com Date: Mon, 10 Dec 2001 10:47:04 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hi, > > > I think this one must be just a workstation but I don't know for sure. It > > is the first machine to be connected to the department network from a > > HP/Intel donation to the university. > > Then this is an HP i2000. Good machine. I wonder why this never drop by > my appartment. ;-) It seems that last friday the others machine were put online. I don't know what the model names are but the specs: abiell: Procesardores: 2x Intel Itanium a 800Mhz Memoria: 2GB RAM, 1GB Swap Sistema Operativo: Linux RedHat 7.1 sala, monguio, cata y amigo: Procesardor: Intel Itanium a 725 Mhz Memoria: 1GB RAM, 1GB Swap Sistema Operativo: Linux RedHat 7.1 Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 01:04:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBC944k12437 for dynarec-outgoing; Wed, 12 Dec 2001 01:04:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Dec 2001 01:36:25 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: SDLisms... Message-ID: <20011212013453.F56463-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Well, I've gotten the video mode to init and the buffer surfaces created, as well as palette generation. Now I'm trying to figure out how to get access to the backbuffer display surface I've created with SDL_CreateRGBSurface(). Anyone know how to get to it? I've been mucking around with the manual trying to figure it out and haven't been able to yet.. I need to avoid using the built in routines to do drawing like the plague - I'll have to rewrite my graphics library if I can't get to the surface. ;-( Thanks in advance! -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 01:19:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBC9JsE12456 for dynarec-outgoing; Wed, 12 Dec 2001 01:19:54 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200112120934.fBC9Y3l29068@pons.ac.upc.es> Subject: Re: DYNAREC: SDLisms... In-Reply-To: <20011212013453.F56463-100000@beacon.synthcom.com> "from Neil Bradley at Dec 12, 2001 01:36:25 am" To: dynarec@dynarec.com Date: Wed, 12 Dec 2001 10:34:03 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well, I've gotten the video mode to init and the buffer surfaces created, > as well as palette generation. Now I'm trying to figure out how to get > access to the backbuffer display surface I've created with > SDL_CreateRGBSurface(). Anyone know how to get to it? I've been mucking > around with the manual trying to figure it out and haven't been able to > yet.. I need to avoid using the built in routines to do drawing like the > plague - I'll have to rewrite my graphics library if I can't get to the > surface. ;-( Thanks in advance! > What do you want? To directly access the byte array of the surface? There is a field in the SDL_Surface structure which points to it (I don't remember it now). You should try to search in the documentation for the different structures, or just read the .h files to get it. The real backbuffer is in fact the surface which is returned by SetVideoMode(). In fact I just used that surface in my master system emulator (the source is in my page). Internally it (when doing a the Update() function) blits the screen surface to the real internal primary surface (or so I think it works). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 09:34:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBCHY7813327 for dynarec-outgoing; Wed, 12 Dec 2001 09:34:07 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Dec 2001 10:06:30 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: SDLisms... In-Reply-To: <200112120934.fBC9Y3l29068@pons.ac.upc.es> Message-ID: <20011212100511.F59459-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > plague - I'll have to rewrite my graphics library if I can't get to the > > surface. ;-( Thanks in advance! > What do you want? To directly access the byte array of the surface? Yup. The in memory surface, not the display surface. > There is a field in the SDL_Surface structure which points to it > (I don't remember it now). You should try to search in the documentation > for the different structures, or just read the .h files to get it. As I mentioned above, I did that. ;-) I didn't see anything in the SDL_Surface structure that tells me this information. Any help would be appreciated. I'm hoping to have at least preliminary graphics running by tonight. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 09:51:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBCHpEA13363 for dynarec-outgoing; Wed, 12 Dec 2001 09:51:14 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002a01c18337$69aefc40$4877393e@menta.net> From: "Victor Moya del Barrio" To: References: <20011212100511.F59459-100000@beacon.synthcom.com> Subject: Re: DYNAREC: SDLisms... Date: Wed, 12 Dec 2001 19:04:14 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "Neil Bradley" To: Sent: Wednesday, December 12, 2001 7:06 PM Subject: Re: DYNAREC: SDLisms... > > > plague - I'll have to rewrite my graphics library if I can't get to the > > > surface. ;-( Thanks in advance! > > What do you want? To directly access the byte array of the surface? > > Yup. The in memory surface, not the display surface. > This is from them old html doc I have in my HD: /* This structure should be treated as read-only, except for 'pixels', which, if not NULL, contains the raw pixel data for the surface. */ typedef struct SDL_Surface { Uint32 flags; /* Read-only */ SDL_PixelFormat *format; /* Read-only */ int w, h; /* Read-only */ Uint16 pitch; /* Read-only */ void *pixels; /* Read-write */ <========= int offset; /* Private */ surface->pixels is the pointer to the memory array with the pixels information. Or are you asking for something different? > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 09:53:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBCHrYg13379 for dynarec-outgoing; Wed, 12 Dec 2001 09:53:34 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Dec 2001 10:25:58 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: SDLisms... In-Reply-To: <002a01c18337$69aefc40$4877393e@menta.net> Message-ID: <20011212102427.A59459-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > void *pixels; /* Read-write */ <========= > surface->pixels is the pointer to the memory array with the pixels information. Precisely what I was looking for - thanks! I must've looked at that structure for 20 minutes and not seeing it. One thing that I do find a bit irritating about SDL - some of the names it uses for things are nonintuitive (like "pixels" instead of "surface" or something more descript). Plus, the docs are woefully incomplete - their examples could be lots better. But hey, it's free! ;-) Once I figure it all out, I should probably give back to it and help out in the doc arena. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 09:59:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBCHx6Y13396 for dynarec-outgoing; Wed, 12 Dec 2001 09:59:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Dec 2001 18:13:08 +0000 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: SDLisms... Message-ID: <20011212181307.B3753@cs.bris.ac.uk> References: <200112120934.fBC9Y3l29068@pons.ac.upc.es> <20011212100511.F59459-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20011212100511.F59459-100000@beacon.synthcom.com> User-Agent: Mutt/1.3.23i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, Dec 12, 2001 at 10:06:30AM -0800, Neil Bradley wrote: > > > plague - I'll have to rewrite my graphics library if I can't get to the > > > surface. ;-( Thanks in advance! > > What do you want? To directly access the byte array of the surface? > > Yup. The in memory surface, not the display surface. > > > There is a field in the SDL_Surface structure which points to it > > (I don't remember it now). You should try to search in the documentation > > for the different structures, or just read the .h files to get it. > > As I mentioned above, I did that. ;-) I didn't see anything in the > SDL_Surface structure that tells me this information. Any help would be > appreciated. > > I'm hoping to have at least preliminary graphics running by tonight. If you mean what I think you mean, it's just called "pixels", which is a (void*) pointer in the SDL_Surface structure. Access it using ((char*)screen)->pixels or whatever. I wrote a little SDL hack the other day, it's probably not useful & dreadfully written, but I want to show it off anyway, so I'll tell you it's at http://www.dynarec.com/~jules/blob.tar.gz. Should compile using gcc with Linux or windows, or with another compiler under Windows if you comment out my (crap!) MMX code and uncomment the non-MMX code... If you want to do things like read from the display surface whilst simultaneously writing to the back surface during a frame redraw, then I'm not sure if you can do that using SDL_DOUBLEBUF, but you can use a seperate back surface and blit it to the main one. There's only about one reason I can think of you'd want to do that anyway though... HTH, Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 10:01:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBCI1FF13416 for dynarec-outgoing; Wed, 12 Dec 2001 10:01:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003601c18338$d3dd7dc0$4877393e@menta.net> From: "Victor Moya del Barrio" To: References: <20011212102427.A59459-100000@beacon.synthcom.com> Subject: Re: DYNAREC: SDLisms... Date: Wed, 12 Dec 2001 19:14:23 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Precisely what I was looking for - thanks! I must've looked at that > structure for 20 minutes and not seeing it. > Hehe! Sometimes this happens :P. > One thing that I do find a bit irritating about SDL - some of the names it > uses for things are nonintuitive (like "pixels" instead of "surface" or > something more descript). Plus, the docs are woefully incomplete - their > examples could be lots better. But hey, it's free! ;-) Once I figure it > all out, I should probably give back to it and help out in the doc arena. > It could be something as "buffer", or "surface buffer". In any case I think is the only void* pointer in the structure so ... The documentation (as I'm taking now a look to the online documentation) is getting a bit better and more complet than it was. I have SDL doc 1.0 from when I was doing MAS and it is really very simple (I used to go to look the source code and .h rather than the doc sometimes). I have also noted that now there are a lot more functions in all the interfaces (Video, Sound, etc). It seems really alive (It really works in IRIX?). > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 10:41:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBCIfDM13469 for dynarec-outgoing; Wed, 12 Dec 2001 10:41:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Dec 2001 10:56:52 -0800 (PST) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: SDLisms... In-Reply-To: <20011212181307.B3753@cs.bris.ac.uk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 12 Dec 2001, Julian Brown wrote: > If you want to do things like read from the display surface whilst > simultaneously writing to the back surface during a frame redraw, then > I'm not sure if you can do that using SDL_DOUBLEBUF, but you can use a > seperate back surface and blit it to the main one. There's only about Yeah, accessing the front buffer while double buffering is not allowed. You need to remember to lock the surface before accessing surf->pixels though. > HTH, > > Jules John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 10:49:40 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBCIndJ13486 for dynarec-outgoing; Wed, 12 Dec 2001 10:49:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Dec 2001 11:22:03 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Calling all ARM experts Message-ID: <20011212111909.X59459-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm writing a chunk of code that relocates ARM code from one region of address space to another, adjusting the BL instruction pairs as needed (I'm running in Thumb mode). I'm doing this because I want my code to execute out of internal RAM (much much faster than flash), but just pieces of it since RAM space is limited. My flash is located at 0x01000000->0x0107ffff and my ram from 0x00000000-0x00007fff. The BX/BL relative branch and link instruction pair won't allow me to call outside of a 4MB address space. How do I best accomplish calling outside that range? -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 10:56:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBCIu2J13505 for dynarec-outgoing; Wed, 12 Dec 2001 10:56:02 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Dec 2001 19:10:39 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <117736268.20011212191039@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: SDLisms... In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, tarc> Yeah, accessing the front buffer while double buffering is not allowed. That's usually a good thing, but I hear that SDL 1.3 will allow you to do this for those few times when it's actually useful! tarc> You need to remember to lock the surface before accessing surf->pixels tarc> though. But only if it's a HWSURFACE. You know, you could have looked at my 3D engine in my space on Dynarec - that uses SDL. :) I think Mike was the guy who suggested SDL originally, but I've used it one hell of a lot... So, I've moved in and I have a 'net connection now. Which is nice! :) I'll catch up with mail sooner or later... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 12:47:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBCKlYM13605 for dynarec-outgoing; Wed, 12 Dec 2001 12:47:34 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 12 Dec 01 16:01:49 -0500 Message-Id: <3.0.5.32.20011212130249.00796e90@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 12 Dec 2001 13:02:49 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: OT: PowerPC page table Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, Is anybody on the list familiar with PowerPC-based systems? I don't know if I've mentioned it before, but I've been toying around with Sega Model 3 emulation (which uses a PowerPC), and so far, I've only been able to get a single code ROM loaded, and it doesn't appear to have the page table. The code sets the page table address to something like 0xFF800000 (I forget the exact number, since I haven't worked on it in a few months), and I'm not having much luck finding the ROM that would go there. There are a lot of other "code ROMs", but none of them appear to have any code whatsoever, and are filled with data, I presume. There appear to be vast tables of data in these ROMs, but those I have checked do not appear to be page tables. I'm assuming the V bit in a PTE would indicate the entries were valid, because the table is in ROM, and there isn't going to be any virtual memory on this arcade system. So my question is: Does anyone know of a way to go about looking for page tables? Are there any characteristics I might be overlooking? I was thinking of writing a program that takes data and assumes it's a PTE, then prints out information on what it maps to in the physical address space. That might help me find intelligable data, if I come across any. But since the ROMs are very large, some sort of a searching program would be better. There are 2 bits, besides the V bit, which should be 0, so maybe I could try to look for that pattern repeat itself several times? There's also the possibility that I'm interleaving the ROMs incorrectly. I've found that with the main code ROMs, I have to take a word (16 bits) from each of the 4 ROMs and write it to the destination, then byte swap it. This seems like a rather unusual scheme to me. The ROMs are designated as CROM0, CROM1, CROM2, and CROM3. The rest of the code ROMs are designated as: CROM00 CROM01 CROM02 CROM03 CROM10 CROM11 CROM12 CROM13 ... CROM33 I've been using the same interleaving method, but maybe a different method is required? The ROMs are too big to send over; I just wanted to know if anyone had any tips :) Thanks. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 12:54:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBCKs2h13621 for dynarec-outgoing; Wed, 12 Dec 2001 12:54:02 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Dec 2001 13:26:26 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Calling all ARM experts In-Reply-To: <20011212111909.X59459-100000@beacon.synthcom.com> Message-ID: <20011212132438.H60500-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > (I'm running in Thumb mode). I'm doing this because I want my code to > execute out of internal RAM (much much faster than flash), but just pieces > of it since RAM space is limited. > > My flash is located at 0x01000000->0x0107ffff and my ram from > 0x00000000-0x00007fff. The BX/BL relative branch and link instruction pair > won't allow me to call outside of a 4MB address space. > > How do I best accomplish calling outside that range? I also neglected to add that I cannot trash any register in the process. I've already discovered the ldr method of loading a 32 bit value out of code space (why the FUCK is ARM calling a "word" 32 bits when NO ONE ELSE , not even Motorola, is? Those bastards!).. Is there some ARM trick to doing this? FWIW, It's relocating C compiled code, so I'm kinda at the mercy of the compiler's behavior. And I can't statically link the procedure using the scatter file because it needs to be dynamic. Any help would be greatly appreciated. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 13:01:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBCL1sO13649 for dynarec-outgoing; Wed, 12 Dec 2001 13:01:54 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 12 Dec 01 16:16:18 -0500 Message-Id: <3.0.5.32.20011212131731.007a8a70@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 12 Dec 2001 13:17:31 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Calling all ARM experts In-Reply-To: <20011212132438.H60500-100000@beacon.synthcom.com> References: <20011212111909.X59459-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >(why the FUCK is ARM calling a "word" 32 bits when NO ONE ELSE >, not even Motorola, is? Those bastards!).. IIRC, Motorola does it with the PowerPC :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 13:05:16 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBCL5Fl13667 for dynarec-outgoing; Wed, 12 Dec 2001 13:05:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Dec 2001 13:37:39 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Calling all ARM experts In-Reply-To: <3.0.5.32.20011212131731.007a8a70@mailandnews.com> Message-ID: <20011212133702.L60500-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >(why the FUCK is ARM calling a "word" 32 bits when NO ONE ELSE > >, not even Motorola, is? Those bastards!).. > IIRC, Motorola does it with the PowerPC :) Not from the documentation I've read... And if they do, it's a switcheroo on their parts because none of the 68xxx family named it as such. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 13:13:07 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBCLD6t13686 for dynarec-outgoing; Wed, 12 Dec 2001 13:13:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 12 Dec 2001 13:45:31 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: More Transmeta trashing Message-ID: <20011212134429.G60500-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Haha: http://www.theregister.co.uk/content/3/23364.html Only $1 Mil of revenue? Damn, I don't know how these guys can survive. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 13:17:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBCLHq913702 for dynarec-outgoing; Wed, 12 Dec 2001 13:17:52 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 12 Dec 01 16:32:11 -0500 Message-Id: <3.0.5.32.20011212133315.007ab600@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 12 Dec 2001 13:33:15 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Calling all ARM experts In-Reply-To: <20011212133702.L60500-100000@beacon.synthcom.com> References: <3.0.5.32.20011212131731.007a8a70@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Not from the documentation I've read... And if they do, it's a switcheroo >on their parts because none of the 68xxx family named it as such. They do, I just checked. Half-word is 16 bits, word is 32. I'm not sure how they refer to 64-bit data. I like Intel's terminology best, and I can deal with Motorola's, but I draw the line at calling 32-bit data a "word" ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 12 14:11:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBCMBMh13763 for dynarec-outgoing; Wed, 12 Dec 2001 14:11:22 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 12 Dec 01 17:25:47 -0500 Message-Id: <3.0.5.32.20011212142659.007a9140@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 12 Dec 2001 14:26:59 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: More Transmeta trashing In-Reply-To: <20011212134429.G60500-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 01:45 PM 12/12/01 -0800, you wrote: >Haha: > >http://www.theregister.co.uk/content/3/23364.html > >Only $1 Mil of revenue? Damn, I don't know how these guys can survive. > >-->Neil The thing I found interesting when Transmeta started out was the Code Morphing technology. Seemed pretty neat, but what's the point? I'm no EE, but I doubt the folks at Transmeta sat down and went "gee, emulation is going to help reduce power consumption"... I remember seeing an article somewhere a long, long time ago where one of the architects at Transmeta talked almost exclusively about the Code Morphing technology itself. But when Crusoe processors started appearing, the issue mainly became power consumption, which apparently they didn't have (err, actually, had too much of ;)), and are in an even worse situation today. The whole thing sounded like some interesting research, but I never really saw the point of it all. I guess they figured it would be easy to adapt their processors to all sorts of applications by replacing other processors and not having to worry about the code. But even that idea isn't a great one, because Transmeta chips AFAIK cannot be reconfigured to execute different ISAs on the fly (or can they?) There's a related article about this on Slashdot... It's funny. Everybody there wants to get a Crusoe laptop as soon as possible. I think the ONLY reason for these people is that Linus works at Transmeta :P Hehehe Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 13 02:45:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBDAiOK14371 for dynarec-outgoing; Thu, 13 Dec 2001 02:44:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 13 Dec 2001 11:59:43 +0100 (CET) From: Gwenole Beauchesne X-X-Sender: To: Subject: Re: DYNAREC: Calling all ARM experts In-Reply-To: <3.0.5.32.20011212131731.007a8a70@mailandnews.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from QUOTED-PRINTABLE to 8bit by dynarec.com id fBDAiNU14367 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 12 Dec 2001, Bart wrote: > >(why the FUCK is ARM calling a "word" 32 bits when NO ONE ELSE > >, not even Motorola, is? Those bastards!).. > > IIRC, Motorola does it with the PowerPC :) SPARC does it too. Intel does it too for IA-64 in the Software Conventions manual (4.1. Fundamental types)... ;-) Bye, Gwenolé. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 13 02:56:04 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBDAu3X14393 for dynarec-outgoing; Thu, 13 Dec 2001 02:56:03 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200112131109.fBDB9lF03835@pons.ac.upc.es> Subject: Re: DYNAREC: Calling all ARM experts In-Reply-To: "from Gwenole Beauchesne at Dec 13, 2001 11:59:43 am" To: dynarec@dynarec.com Date: Thu, 13 Dec 2001 12:09:47 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=ISO-8859-1 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > On Wed, 12 Dec 2001, Bart wrote: > > > >(why the FUCK is ARM calling a "word" 32 bits when NO ONE ELSE > > >, not even Motorola, is? Those bastards!).. > > > > IIRC, Motorola does it with the PowerPC :) > > SPARC does it too. Intel does it too for IA-64 in the Software Conventions > manual (4.1. Fundamental types)... ;-) > IRIX Mips uses word too (or in any case for the assembler). In fact I think is just something historical. First x86 processors were 16 bits, and because of that a word is 16 bits. Mips started with a 32 bit architecture so perhaps that is the reason. Alpha in the other way calls "word" to 16 bits. > Bye, > Gwenolé. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 13 03:41:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBDBf6P14913 for dynarec-outgoing; Thu, 13 Dec 2001 03:41:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200112131154.fBDBsn027981@pons.ac.upc.es> Subject: Re: DYNAREC: More Transmeta trashing In-Reply-To: <3.0.5.32.20011212142659.007a9140@mailandnews.com> "from Bart at Dec 12, 2001 02:26:59 pm" To: dynarec@dynarec.com Date: Thu, 13 Dec 2001 12:54:49 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > The thing I found interesting when Transmeta started out was the Code > Morphing technology. Seemed pretty neat, but what's the point? > Running programs from other architectures in you own? That is what emulation is about. > I'm no EE, but I doubt the folks at Transmeta sat down and went "gee, > emulation is going to help reduce power consumption"... I remember seeing > an article somewhere a long, long time ago where one of the architects at > Transmeta talked almost exclusively about the Code Morphing technology itself. > The power consumption topic was added because they thought it was the only way to get a market. Transmeta CPU aren't faster (using Code Morphing) than x86 ones, so the only point they had to sell their CPUs was low consumption (less logic used for decoding instructions, less logic for out of order speculative execution). But then Intel developed their own very low power CPUs and with the own problems Transmeta had by itself they got beaten before start. The problem is if it is possible to build an architecture (CPU) that would be able to execute code from one or more different architectures being at the same time competitive or even better than the original architecture (or CPUs). That is, build an Athlon but with ISA software emulation rather than hardware emulation. If you think Transmeta is the only one around this research topic you are wrong. There are some discussions to move the ISA one level up (something similar to what happened when appeared microcoded architectures) to be something managed by the software. BTW, this will be perhaps the research topic of my PhD too, so ;). > The whole thing sounded like some interesting research, but I never really > saw the point of it all. I guess they figured it would be easy to adapt > their processors to all sorts of applications by replacing other processors > and not having to worry about the code. But even that idea isn't a great > one, because Transmeta chips AFAIK cannot be reconfigured to execute > different ISAs on the fly (or can they?) > Well, it just a problem about what you throw into the Code Morpher. Althought without OS support this kind of feature seems very hard to achieve. > There's a related article about this on Slashdot... It's funny. Everybody > there wants to get a Crusoe laptop as soon as possible. I think the ONLY > reason for these people is that Linus works at Transmeta :P Hehehe > The problems I see with Transmeta: hype, Linus and VLIW :)). Get them out and perhaps ... ;) > > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 13 12:35:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBDKYub15315 for dynarec-outgoing; Thu, 13 Dec 2001 12:34:56 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 13 Dec 2001 13:07:25 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: More Transmeta trashing In-Reply-To: <200112131154.fBDBsn027981@pons.ac.upc.es> Message-ID: <20011213130420.W65573-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > The thing I found interesting when Transmeta started out was the Code > > Morphing technology. Seemed pretty neat, but what's the point? > Running programs from other architectures in you own? That is > what emulation is about. The problem is Transmeta used it as marketing ammo when in fact they were just trying to build a Pentium clone. Really sneaky and misleading. > speculative execution). But then Intel developed their own > very low power CPUs and with the own problems Transmeta had > by itself they got beaten before start. The Transmeta processor were roughly 60% of that of an equivalently clocked PIII notebook. And they never consumed 2 watts except in standby. They consumed 23 watts at full power, and the PIII mobile processors that Intel released later consumed 18 watts and ran at full speed. > > There's a related article about this on Slashdot... It's funny. Everybody > > there wants to get a Crusoe laptop as soon as possible. I think the ONLY > > reason for these people is that Linus works at Transmeta :P Hehehe It's what I call the aggressively incompetent. They run Linux because it's not Microsoft or because they want to feel special. Why someone would want to go out of their way to buy a poor performing laptop is beyond me and is only further proof of their idiocy. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 17 01:03:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBH92Jh22895 for dynarec-outgoing; Mon, 17 Dec 2001 01:02:19 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 17 Dec 2001 01:35:04 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Food Fightin' Message-ID: <20011217013126.R83796-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Just to give you all some status... I'm currently working out the emulation support routines needed to fully emulate Food Fight. Right now it's not taking interrupts, and I think it's just because I'm not interfacing to Starscream properly. In any case, the sound code, the graphics routines, the host hooks, etc... are all there - pulled almost verbatim out of Retrocade. I should have it up and working in the next couple of evenings. In order, I'd like the following to happen: * I get Food Fight running and drop source to everyone * I get modified platform specific sources back from each platform "owner" (for lack of a better term) and incorporate it into the build * I rerelease the code with each developer's changes in it This will give us a very stable first starting point, and from then forward, it should be fairly easy to make incremental changes. Then we have to set out on the ardjuous task of divvying out parsing and emitting those cores... -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 14:00:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBILxji25618 for dynarec-outgoing; Tue, 18 Dec 2001 13:59:45 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K->x86 From: "M.I.K.e" Message-ID: <0003956b55bd0836_mailit@mail.dynarec.com> References: <3.0.5.32.20011207164421.007a5700@mailandnews.com> <3.0.5.32.20011207200039.007aa5a0@mailandnews.com> Date: Tue, 18 Dec 2001 23:06:02 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Which interpreter will we be using to compare against? MAME's? In the beginning we said we'd use Starscream, but your (Bart's) 68K emulator might be an option as well. >Bart -- M.I.K.e Never call a man a fool. Borrow from him. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 14:00:17 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBILxh325612 for dynarec-outgoing; Tue, 18 Dec 2001 13:59:43 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K->x86 From: "M.I.K.e" Message-ID: <0003956b39c21836_mailit@mail.dynarec.com> References: <20011207141647.U32495-100000@beacon.synthcom.com> Date: Tue, 18 Dec 2001 22:58:13 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Now that my product is shipping, I've got more free time to work on other >"fun" projects, and I'd like to get back under way with the 68K dynarec. >Hope there are others with the same sentiment. ;-) I'm still here ;-) >Who was it that turned us on to SDL? (www.libsdl.org). I think that was NG and me. I obviously suggested it becase it's portable and I don't know enough graphics and sound programming yet to port it the emulator to BeOS without much problems, and Neil did his 3rd year project with it IIRC. >I've been reading >it, studying it, and I'm now of the opinion that this is the way we should >go with the Food Fight emulation/recompilation. It has Linux, IRIX, Win32, >BeOS (not that we care), MacOS and OSX libraries. Hey, who doesn't care about BeOS? ;-) >It hides some of the stupidity of Linux/MacOS's sound APIs - everything is >a callback like it should be! Thread creation, timer creation, etc... is >all abstracted in a very nice set of APIs. This of course doesn't help >anyone in DOS land, but do we care any longer? I bet Bart cares... >-->Neil -- M.I.K.e If a President doesn't do it to his wife, he'll do it to his country. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 14:30:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBILxli25623 for dynarec-outgoing; Tue, 18 Dec 2001 13:59:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec is back from the dead! From: "M.I.K.e" Message-ID: <0003956b2e39a833_mailit@mail.dynarec.com> References: <20011205014118.T16146-100000@beacon.synthcom.com> Date: Tue, 18 Dec 2001 22:54:59 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm pleased to announce Dynarec is back from the dead! I got the CPU and >motherboard today and it's working great. Good to hear! Sorry that I'm rather late but when dynarec.com was offline for quite a while I disabled the account in the mailer because of the error messages I got and with all the hassle in the past time (hunting for a new job, my monitor dying, and some other crap that's just unbelievable in that amount...) I simply forgot to check if the server is back up. But I checked today and of 77 mails only 12 seemed to be spam ;-) The other good news is that I should be able to get the paper work for a new job done tomorrow, so I'll have a new job in January, and I replaced my monitor with a TFT display (Samsung SyncMaster 151B, if anybody should be interested). We get new windows this week (hopefully with better protection) so I might be unavailable for one or two days because I have to remove my stuff. Damn, I hope I don't go crazy with around 30 cables under my desk... >The machine has been upgraded to a Celeron 533Mhz with an 8 gig drive >(instead of the 5 that was in there before). Not that it matters, but I >thought you'd all like to know. Does it still have 64MB RAM and runs on FreeBSD 4.0? I need that info to adjust the specs page... >One thing I started doing was a hand recompilation of Space Invaders. A >friend of mine wants to run Space Invaders on his GBA, but it runs at >about 75% of full speed on a 16Mhz ARM thumb core running out of its >flash. I thought this would be a bit of an eye opener, as I'm doing the >same steps that a recompiler would do. Hey, that's interesting because I have a GBA as well now, but I don't have a flash card (yet?). >-->Neil -- M.I.K.e Children seldom misquote you. In fact, they usually repeat word for word what you shouldn't have said. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 15:34:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBINWDj25741 for dynarec-outgoing; Tue, 18 Dec 2001 15:32:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Calling all ARM experts From: "M.I.K.e" Message-ID: <0003956ce011ef5a_mailit@207.202.141.87> References: <20011212111909.X59459-100000@beacon.synthcom.com> Date: Wed, 19 Dec 2001 00:56:18 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >My flash is located at 0x01000000->0x0107ffff and my ram from >0x00000000-0x00007fff. The BX/BL relative branch and link instruction pair >won't allow me to call outside of a 4MB address space. >How do I best accomplish calling outside that range? Do you want to do a BL or a BX? According to my information BX only works with a register as an operand anyway, so that would be easy part. As for BL you're right that the branch range is quite limited although actually two instructions are used to have a 22-bit offset. I guess you have the start address in some register, say 'Ra'. With BX that would be simply: BX Ra A jump from Thumb to Thumb without linking should be possible as: MOV R15, Ra (R15 is the PC) If you want to simulate a BL with this method then you have to copy the return address to R14 (the Link Register) before jumping. In ARM mode the PC is one instruction ahead (PC+8) of the instruction following the branch instruction (PC+4), which is corrected by the branch when it copies the address to R14. I'm not totally sure if this is also the case for Thumb, but I'll assume that the PC is one instruction ahead as well. But since we copy the PC before doing the jump it should actually point to the correct instruction, so the sequence should be: MOV R14, R15 MOV R15, Ra If you want to return to a totally different address then you could do it like this: MOV R14, Rb MOV R15, Ra I have to admit that I never programmed Thumb code so I'll be rather surprised if that really works... >-->Neil -- M.I.K.e "Why isn't there a special name for the tops of your feet?" -- Lily Tomlin --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 15:58:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBINw1N25782 for dynarec-outgoing; Tue, 18 Dec 2001 15:58:01 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 18 Dec 2001 16:30:57 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Dynarec is back from the dead! In-Reply-To: <0003956b2e39a833_mailit@mail.dynarec.com> Message-ID: <20011218162958.R92246-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I disabled the account in the mailer because of the error messages I got and > with all the hassle in the past time (hunting for a new job, my monitor > dying, and some other crap that's just unbelievable in that amount...) I > simply forgot to check if the server is back up. > But I checked today and of 77 mails only 12 seemed to be spam ;-) FWIW, Dynarec.com is here to stay now. I even have a backup machine in case this one dies. IT was donated by a friend a week after I bought this machine. > >(instead of the 5 that was in there before). Not that it matters, but I > >thought you'd all like to know. > Does it still have 64MB RAM and runs on FreeBSD 4.0? It has 32MB of RAM and runs on FreeBSD 4.4. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 15:59:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBINxPs25793 for dynarec-outgoing; Tue, 18 Dec 2001 15:59:25 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 18 Dec 2001 16:32:21 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: 68K->x86 In-Reply-To: <0003956b55bd0836_mailit@mail.dynarec.com> Message-ID: <20011218163100.M92246-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Which interpreter will we be using to compare against? MAME's? > In the beginning we said we'd use Starscream, but your (Bart's) 68K emulator > might be an option as well. I thought the plan was to get it working with Starscream first (since I knew it), and Bart would work his magic to use his core instead. Frankly, I'd rather have it "in the family" as it were, but even using Starscream I'm having difficulty getting the emulation running properly. Right now it goes for about 250 frames and then jumps off into the weeds. Grr... a bit more debugging will occur tonight! Hopefully I can get it going. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 16:02:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJ024325814 for dynarec-outgoing; Tue, 18 Dec 2001 16:02:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 18 Dec 2001 16:34:59 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Calling all ARM experts In-Reply-To: <0003956ce011ef5a_mailit@207.202.141.87> Message-ID: <20011218163308.A92246-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >My flash is located at 0x01000000->0x0107ffff and my ram from > >0x00000000-0x00007fff. The BX/BL relative branch and link instruction pair > >won't allow me to call outside of a 4MB address space. > >How do I best accomplish calling outside that range? > Do you want to do a BL or a BX? According to my information BX only works BX. Anyway, you're about a week late. ;-) I solved it by creating a stub if the jump was outside of the 4MB range of the BL/BL Prefix. I'd change it so it'd branch to the stub which did this: mov r6, [xxxxxxxx] mov pc, r6 xxxxxxxx: dd target32BitAddress Works great! Making the relocation work was a major nightmare. Took me 2 solid days of debugging and educating... -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 22:00:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBILxji25618 for dynarec-outgoing; Tue, 18 Dec 2001 13:59:45 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K->x86 From: "M.I.K.e" Message-ID: <0003956b55bd0836_mailit@mail.dynarec.com> References: <3.0.5.32.20011207164421.007a5700@mailandnews.com> <3.0.5.32.20011207200039.007aa5a0@mailandnews.com> Date: Tue, 18 Dec 2001 23:06:02 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Which interpreter will we be using to compare against? MAME's? In the beginning we said we'd use Starscream, but your (Bart's) 68K emulator might be an option as well. >Bart -- M.I.K.e Never call a man a fool. Borrow from him. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 22:05:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBINxPs25793 for dynarec-outgoing; Tue, 18 Dec 2001 15:59:25 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 18 Dec 2001 16:32:21 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: 68K->x86 In-Reply-To: <0003956b55bd0836_mailit@mail.dynarec.com> Message-ID: <20011218163100.M92246-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Which interpreter will we be using to compare against? MAME's? > In the beginning we said we'd use Starscream, but your (Bart's) 68K emulator > might be an option as well. I thought the plan was to get it working with Starscream first (since I knew it), and Bart would work his magic to use his core instead. Frankly, I'd rather have it "in the family" as it were, but even using Starscream I'm having difficulty getting the emulation running properly. Right now it goes for about 250 frames and then jumps off into the weeds. Grr... a bit more debugging will occur tonight! Hopefully I can get it going. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 22:08:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJ68cV26172 for dynarec-outgoing; Tue, 18 Dec 2001 22:08:38 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 18 Dec 2001 22:41:34 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Food Fightin' In-Reply-To: <3.0.5.32.20011218222133.007aadd0@mailandnews.com> Message-ID: <20011218224113.L93125-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >* I get modified platform specific sources back from each platform "owner" > >(for lack of a better term) and incorporate it into the build > Just recently I wrote up some decent VESA2 code which should make the DOS > port a breeze. > I can't wait to get started on this ;) > I definitely have the time to devote to this, too. I'm working on the pokey routines right now, as I think my "off in the weeds" problem is due to an incomplete memory map. Stay tuned... -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 22:30:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJ672h26162 for dynarec-outgoing; Tue, 18 Dec 2001 22:07:02 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Wed, 19 Dec 01 01:20:32 -0500 Message-Id: <3.0.5.32.20011218222133.007aadd0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 18 Dec 2001 22:21:33 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Food Fightin' In-Reply-To: <20011217013126.R83796-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >* I get Food Fight running and drop source to everyone >* I get modified platform specific sources back from each platform "owner" >(for lack of a better term) and incorporate it into the build Just recently I wrote up some decent VESA2 code which should make the DOS port a breeze. I can't wait to get started on this ;) I definitely have the time to devote to this, too. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 23:00:54 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJ024325814 for dynarec-outgoing; Tue, 18 Dec 2001 16:02:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 18 Dec 2001 16:34:59 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Calling all ARM experts In-Reply-To: <0003956ce011ef5a_mailit@207.202.141.87> Message-ID: <20011218163308.A92246-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >My flash is located at 0x01000000->0x0107ffff and my ram from > >0x00000000-0x00007fff. The BX/BL relative branch and link instruction pair > >won't allow me to call outside of a 4MB address space. > >How do I best accomplish calling outside that range? > Do you want to do a BL or a BX? According to my information BX only works BX. Anyway, you're about a week late. ;-) I solved it by creating a stub if the jump was outside of the 4MB range of the BL/BL Prefix. I'd change it so it'd branch to the stub which did this: mov r6, [xxxxxxxx] mov pc, r6 xxxxxxxx: dd target32BitAddress Works great! Making the relocation work was a major nightmare. Took me 2 solid days of debugging and educating... -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 23:08:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBINw1N25782 for dynarec-outgoing; Tue, 18 Dec 2001 15:58:01 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 18 Dec 2001 16:30:57 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Dynarec is back from the dead! In-Reply-To: <0003956b2e39a833_mailit@mail.dynarec.com> Message-ID: <20011218162958.R92246-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I disabled the account in the mailer because of the error messages I got and > with all the hassle in the past time (hunting for a new job, my monitor > dying, and some other crap that's just unbelievable in that amount...) I > simply forgot to check if the server is back up. > But I checked today and of 77 mails only 12 seemed to be spam ;-) FWIW, Dynarec.com is here to stay now. I even have a backup machine in case this one dies. IT was donated by a friend a week after I bought this machine. > >(instead of the 5 that was in there before). Not that it matters, but I > >thought you'd all like to know. > Does it still have 64MB RAM and runs on FreeBSD 4.0? It has 32MB of RAM and runs on FreeBSD 4.4. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 23:08:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBH92Jh22895 for dynarec-outgoing; Mon, 17 Dec 2001 01:02:19 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 17 Dec 2001 01:35:04 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Food Fightin' Message-ID: <20011217013126.R83796-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Just to give you all some status... I'm currently working out the emulation support routines needed to fully emulate Food Fight. Right now it's not taking interrupts, and I think it's just because I'm not interfacing to Starscream properly. In any case, the sound code, the graphics routines, the host hooks, etc... are all there - pulled almost verbatim out of Retrocade. I should have it up and working in the next couple of evenings. In order, I'd like the following to happen: * I get Food Fight running and drop source to everyone * I get modified platform specific sources back from each platform "owner" (for lack of a better term) and incorporate it into the build * I rerelease the code with each developer's changes in it This will give us a very stable first starting point, and from then forward, it should be fairly easy to make incremental changes. Then we have to set out on the ardjuous task of divvying out parsing and emitting those cores... -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 23:08:29 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBILxh325612 for dynarec-outgoing; Tue, 18 Dec 2001 13:59:43 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: 68K->x86 From: "M.I.K.e" Message-ID: <0003956b39c21836_mailit@mail.dynarec.com> References: <20011207141647.U32495-100000@beacon.synthcom.com> Date: Tue, 18 Dec 2001 22:58:13 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Now that my product is shipping, I've got more free time to work on other >"fun" projects, and I'd like to get back under way with the 68K dynarec. >Hope there are others with the same sentiment. ;-) I'm still here ;-) >Who was it that turned us on to SDL? (www.libsdl.org). I think that was NG and me. I obviously suggested it becase it's portable and I don't know enough graphics and sound programming yet to port it the emulator to BeOS without much problems, and Neil did his 3rd year project with it IIRC. >I've been reading >it, studying it, and I'm now of the opinion that this is the way we should >go with the Food Fight emulation/recompilation. It has Linux, IRIX, Win32, >BeOS (not that we care), MacOS and OSX libraries. Hey, who doesn't care about BeOS? ;-) >It hides some of the stupidity of Linux/MacOS's sound APIs - everything is >a callback like it should be! Thread creation, timer creation, etc... is >all abstracted in a very nice set of APIs. This of course doesn't help >anyone in DOS land, but do we care any longer? I bet Bart cares... >-->Neil -- M.I.K.e If a President doesn't do it to his wife, he'll do it to his country. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 23:08:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBINWDj25741 for dynarec-outgoing; Tue, 18 Dec 2001 15:32:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Calling all ARM experts From: "M.I.K.e" Message-ID: <0003956ce011ef5a_mailit@207.202.141.87> References: <20011212111909.X59459-100000@beacon.synthcom.com> Date: Wed, 19 Dec 2001 00:56:18 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >My flash is located at 0x01000000->0x0107ffff and my ram from >0x00000000-0x00007fff. The BX/BL relative branch and link instruction pair >won't allow me to call outside of a 4MB address space. >How do I best accomplish calling outside that range? Do you want to do a BL or a BX? According to my information BX only works with a register as an operand anyway, so that would be easy part. As for BL you're right that the branch range is quite limited although actually two instructions are used to have a 22-bit offset. I guess you have the start address in some register, say 'Ra'. With BX that would be simply: BX Ra A jump from Thumb to Thumb without linking should be possible as: MOV R15, Ra (R15 is the PC) If you want to simulate a BL with this method then you have to copy the return address to R14 (the Link Register) before jumping. In ARM mode the PC is one instruction ahead (PC+8) of the instruction following the branch instruction (PC+4), which is corrected by the branch when it copies the address to R14. I'm not totally sure if this is also the case for Thumb, but I'll assume that the PC is one instruction ahead as well. But since we copy the PC before doing the jump it should actually point to the correct instruction, so the sequence should be: MOV R14, R15 MOV R15, Ra If you want to return to a totally different address then you could do it like this: MOV R14, Rb MOV R15, Ra I have to admit that I never programmed Thumb code so I'll be rather surprised if that really works... >-->Neil -- M.I.K.e "Why isn't there a special name for the tops of your feet?" -- Lily Tomlin --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 18 23:08:31 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBILxli25623 for dynarec-outgoing; Tue, 18 Dec 2001 13:59:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Dynarec is back from the dead! From: "M.I.K.e" Message-ID: <0003956b2e39a833_mailit@mail.dynarec.com> References: <20011205014118.T16146-100000@beacon.synthcom.com> Date: Tue, 18 Dec 2001 22:54:59 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm pleased to announce Dynarec is back from the dead! I got the CPU and >motherboard today and it's working great. Good to hear! Sorry that I'm rather late but when dynarec.com was offline for quite a while I disabled the account in the mailer because of the error messages I got and with all the hassle in the past time (hunting for a new job, my monitor dying, and some other crap that's just unbelievable in that amount...) I simply forgot to check if the server is back up. But I checked today and of 77 mails only 12 seemed to be spam ;-) The other good news is that I should be able to get the paper work for a new job done tomorrow, so I'll have a new job in January, and I replaced my monitor with a TFT display (Samsung SyncMaster 151B, if anybody should be interested). We get new windows this week (hopefully with better protection) so I might be unavailable for one or two days because I have to remove my stuff. Damn, I hope I don't go crazy with around 30 cables under my desk... >The machine has been upgraded to a Celeron 533Mhz with an 8 gig drive >(instead of the 5 that was in there before). Not that it matters, but I >thought you'd all like to know. Does it still have 64MB RAM and runs on FreeBSD 4.0? I need that info to adjust the specs page... >One thing I started doing was a hand recompilation of Space Invaders. A >friend of mine wants to run Space Invaders on his GBA, but it runs at >about 75% of full speed on a 16Mhz ARM thumb core running out of its >flash. I thought this would be a bit of an eye opener, as I'm doing the >same steps that a recompiler would do. Hey, that's interesting because I have a GBA as well now, but I don't have a flash card (yet?). >-->Neil -- M.I.K.e Children seldom misquote you. In fact, they usually repeat word for word what you shouldn't have said. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 00:42:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJ8gIc26316 for dynarec-outgoing; Wed, 19 Dec 2001 00:42:18 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 01:15:15 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: SDL Help request Message-ID: <20011219010345.B93125-200000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-1609127773-1008753315=:93125" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-1609127773-1008753315=:93125 Content-Type: TEXT/PLAIN; charset=US-ASCII I've been dicking with this thing for over an hour and I can't figure out how to properly set palletes. I cannot get the video palette to do anything but go partially gray on me. And what's strange, after about 430 frames or so, when Food Fight is rotating the palettes, SDL gets stuck in an endless loop in the palette setting routine (I don't have the debug library because I can't bloody build it). I have verified that there's data in the buffer and it looks like graphics, so the rendering routines aren't at fault. In short, here's how it works: * A backbuffer (in memory) is created. It's supposed to be an 8 bit palettized surface. It's what gets written to during rendering - once per frame. All tile data is written here. The display surface is also created and kept around as a global in win32.c. * Periodic palette updates are coming from the 68K emulation, which calls HostSetPaletteEntry(). I've tried the physical palette on the display surface only, logical palette setting, both, etc... Everything still results in an endless loop somewhere down inside the SDL_SetColors() call. * I have verified that the blitting is successful. Well, at least that's what the return from the SDL_BlitSurface() says that it did (a successful blit). Can an SDL expert take a look at this and perhaps tell me what's wrong? Am I setting up the backbuffer surface properly? Am I setting up the video display surface properly? Please keep in mind that right now the code is a very ugly hack and I'm just trying to get things to work. Then I'll go make it pretty... Thanks in advance! -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --0-1609127773-1008753315=:93125 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="win32.c" Content-Transfer-Encoding: BASE64 Content-ID: <20011219011515.C93125@beacon.synthcom.com> Content-Description: Content-Disposition: attachment; filename="win32.c" I2luY2x1ZGUgPHN0ZGxpYi5oPg0NCiNpbmNsdWRlIDx3aW5kb3dzLmg+DQ0K I2luY2x1ZGUgImNvcmUvZHluYXJlYy5oIg0NCiNpbmNsdWRlICJvc2RlcC9v c2RlcC5oIg0NCiNpbmNsdWRlICJvc2RlcC93aW4zMi9zZGwuaCINDQoNDQp2 b2lkIEhvc3RTaHV0ZG93bih2b2lkKQ0NCnsNDQoJU0RMX1F1aXQoKTsNDQp9 DQ0KDQ0Kdm9pZCBIb3N0QXNzZXJ0KFVJTlQ4ICpwdThBc3NlcnRTdHJpbmcp DQ0Kew0NCglIb3N0U2h1dGRvd24oKTsNDQoJTWVzc2FnZUJveChOVUxMLCBw dThBc3NlcnRTdHJpbmcsICJEeW5hcmVjIChGb29kIEZpZ2h0ISkiLCBNQl9P Syk7IA0NCn0NDQoNDQpzdGF0aWMgU0RMX1N1cmZhY2UgKnNnX3BzVmlkZW9T dXJmYWNlOw0NCg0NClVJTlQ4IEhvc3RJbml0RGlzcGxheVN1cmZhY2UoVUlO VDMyIHUzMlhTaXplLA0NCgkJCQkJCQkgVUlOVDMyIHUzMllTaXplLA0NCgkJ CQkJCQkgVUlOVDggdThCaXRzUGVyUGl4ZWwpDQ0Kew0NCglTRExfU3VyZmFj ZSAqcHNWaWRlb01vZGU7DQ0KDQ0KCS8vIFdoaXAgdGhyb3VnaCBTREwgYW5k IGZpZ3VyZSBvdXQgd2hhdCBtb2RlcyBhcmUgYXZhaWxhYmxlLg0NCg0NCglz Z19wc1ZpZGVvU3VyZmFjZSA9IFNETF9TZXRWaWRlb01vZGUodTMyWFNpemUs DQ0KCQkJCQkJCQkJCSB1MzJZU2l6ZSwNDQoJCQkJCQkJCQkJIHU4Qml0c1Bl clBpeGVsLA0NCgkJCQkJCQkJCQkgU0RMX0ZVTExTQ1JFRU4gfCBTRExfSFdQ QUxFVFRFKTsNDQoNDQoJaWYgKE5VTEwgPT0gc2dfcHNWaWRlb1N1cmZhY2Up DQ0KCXsNDQoJCUhvc3RBc3NlcnQoIkluaXRpYWxpemF0aW9uIG9mIHZpZGVv IG1vZGUgZmFpbGVkIik7DQ0KCQlyZXR1cm4oRkFMU0UpOw0NCgl9DQ0KDQ0K CSh2b2lkKSBTRExfU2hvd0N1cnNvcihTRExfRElTQUJMRSk7DQ0KDQ0KCXJl dHVybihUUlVFKTsNDQp9DQ0KDQ0Kc3RhdGljIFNETF9Db2xvciBzQ29sb3Jz WzI1Nl07DQ0KDQ0Kdm9pZCBIb3N0U2V0UGFsZXR0ZUVudHJ5KFVJTlQ4IHU4 UGFsZXR0ZUVudHJ5LA0NCgkJCQkJCSBVSU5UOCB1OFJlZCwNDQoJCQkJCQkg VUlOVDggdThHcmVlbiwNDQoJCQkJCQkgVUlOVDggdThCbHVlKQ0NCnsNDQoJ RFJBU1NFUlQodThQYWxldHRlRW50cnkgPCAweDEwMCk7DQ0KCXNDb2xvcnNb dThQYWxldHRlRW50cnldLnIgPSB1OFJlZDsNDQoJc0NvbG9yc1t1OFBhbGV0 dGVFbnRyeV0uZyA9IHU4R3JlZW47DQ0KCXNDb2xvcnNbdThQYWxldHRlRW50 cnldLmIgPSB1OEJsdWU7DQ0KDQ0KCVNETF9TZXRDb2xvcnMoKFNETF9TdXJm YWNlICopIHNnX3BzVmlkZW9TdXJmYWNlLA0NCgkJCQkgICBzQ29sb3JzLA0N CgkJCQkgICAwLA0NCgkJCQkgICAyNTYpOw0NCg0NCn0NDQoNDQp2b2lkICpI b3N0Q3JlYXRlQmFja2J1ZmZlcihVSU5UMzIgdTMyWFNpemUsDQ0KCQkJCQkJ ICAgVUlOVDMyIHUzMllTaXplLA0NCgkJCQkJCSAgIFVJTlQ4IHU4Qml0c1Bl clBpeGVsLA0NCgkJCQkJCSAgIFVJTlQzMiAqcHUzMlN1cmZhY2VQaXRjaCkN DQp7DQ0KCVNETF9TdXJmYWNlICpwc1N1cmZhY2U7DQ0KDQ0KCXBzU3VyZmFj ZSA9IFNETF9DcmVhdGVSR0JTdXJmYWNlKFNETF9TV1NVUkZBQ0UsDQ0KCQkJ CQkJCQkJIHUzMlhTaXplLA0NCgkJCQkJCQkJCSB1MzJZU2l6ZSwNDQoJCQkJ CQkJCQkgdThCaXRzUGVyUGl4ZWwsDQ0KCQkJCQkJCQkJIDAsDQ0KCQkJCQkJ CQkJIDAsDQ0KCQkJCQkJCQkJIDAsDQ0KCQkJCQkJCQkJIDApOw0NCg0NCglp ZiAoTlVMTCA9PSBwc1N1cmZhY2UpDQ0KCXsNDQoJCUhvc3RBc3NlcnQoIkNv dWxkbid0IGNyZWF0ZSBiYWNrYnVmZmVyIik7DQ0KCX0NDQoNDQoJKnB1MzJT dXJmYWNlUGl0Y2ggPSBwc1N1cmZhY2UtPnBpdGNoOw0NCg0NCglyZXR1cm4o cHNTdXJmYWNlKTsNDQp9DQ0KDQ0Kdm9pZCBIb3N0RnJlZVN1cmZhY2Uodm9p ZCAqcHZTdXJmYWNlKQ0NCnsNDQoJU0RMX0ZyZWVTdXJmYWNlKChTRExfU3Vy ZmFjZSAqKSBwdlN1cmZhY2UpOw0NCn0NDQoNDQpVSU5UOCAqSG9zdEdldFN1 cmZhY2Uodm9pZCAqcHZTdXJmYWNlKQ0NCnsNDQoJcmV0dXJuKChVSU5UOCAq KSAoKFNETF9TdXJmYWNlICopIHB2U3VyZmFjZSktPnBpeGVscyk7DQ0KfQ0N Cg0NClVJTlQzMiBIb3N0R2V0U3VyZmFjZVBpdGNoKHZvaWQgKnB2U3VyZmFj ZSkNDQp7DQ0KCXJldHVybigoVUlOVDMyKSAoKFNETF9TdXJmYWNlICopIHB2 U3VyZmFjZSktPnBpdGNoKTsNDQp9DQ0KDQ0Kdm9pZCBIb3N0QmxpdFN1cmZh Y2Uodm9pZCAqcHZCYWNrQnVmZmVyU3VyZmFjZSwNDQoJCQkJCSBVSU5UMzIg dTMyU291cmNlWFVMUG9zLA0NCgkJCQkJIFVJTlQzMiB1MzJTb3VyY2VZVUxQ b3MsDQ0KCQkJCQkgVUlOVDMyIHUzMlNvdXJjZVhMUlBvcywNDQoJCQkJCSBV SU5UMzIgdTMyU291cmNlWUxSUG9zLA0NCgkJCQkJIFVJTlQzMiB1MzJEZXN0 WFBvcywNDQoJCQkJCSBVSU5UMzIgdTMyRGVzdFlQb3MpDQ0Kew0NCglTRExf UmVjdCBzU291cmNlUmVjdDsNDQoJU0RMX1JlY3Qgc0Rlc3RSZWN0Ow0NCg0N CglzU291cmNlUmVjdC54ID0gdTMyU291cmNlWFVMUG9zOw0NCglzU291cmNl UmVjdC55ID0gdTMyU291cmNlWVVMUG9zOw0NCglzU291cmNlUmVjdC53ID0g dTMyU291cmNlWExSUG9zIC0gdTMyU291cmNlWFVMUG9zOw0NCglzU291cmNl UmVjdC5oID0gdTMyU291cmNlWUxSUG9zIC0gdTMyU291cmNlWVVMUG9zOw0N Cg0NCglzRGVzdFJlY3QueCA9IHUzMkRlc3RYUG9zOw0NCglzRGVzdFJlY3Qu eSA9IHUzMkRlc3RZUG9zOw0NCglzRGVzdFJlY3QudyA9IHUzMlNvdXJjZVhM UlBvcyAtIHUzMlNvdXJjZVhVTFBvczsNDQoJc0Rlc3RSZWN0LmggPSB1MzJT b3VyY2VZTFJQb3MgLSB1MzJTb3VyY2VZVUxQb3M7DQ0KDQ0KCVNETF9TZXRD b2xvcnMoKFNETF9TdXJmYWNlICopIHB2QmFja0J1ZmZlclN1cmZhY2UsDQ0K CQkJCSAgIHNDb2xvcnMsDQ0KCQkJCSAgIDAsDQ0KCQkJCSAgIDI1Nik7DQ0K DQ0KCWlmIChTRExfQmxpdFN1cmZhY2UoKFNETF9TdXJmYWNlICopIHB2QmFj a0J1ZmZlclN1cmZhY2UsDQ0KCQkJCQkmc1NvdXJjZVJlY3QsDQ0KCQkJCQlz Z19wc1ZpZGVvU3VyZmFjZSwNDQoJCQkJCSZzRGVzdFJlY3QpICE9IDApDQ0K CXsNDQoJCUhvc3RBc3NlcnQoIkNvdWxkbid0IGJsaXQhIik7DQ0KCQlIb3N0 U2h1dGRvd24oKTsNDQoJfQ0NCg0NCn0NDQoNDQppbnQgV0lOQVBJIFdpbk1h aW4oDQ0KICBISU5TVEFOQ0UgaEluc3RhbmNlLCAgLy8gaGFuZGxlIHRvIGN1 cnJlbnQgaW5zdGFuY2UNDQogIEhJTlNUQU5DRSBoUHJldkluc3RhbmNlLCAg Ly8gaGFuZGxlIHRvIHByZXZpb3VzIGluc3RhbmNlDQ0KICBMUFNUUiBscENt ZExpbmUsICAgICAgLy8gcG9pbnRlciB0byBjb21tYW5kIGxpbmUNDQogIGlu dCBuQ21kU2hvdyAgICAgICAgICAvLyBzaG93IHN0YXRlIG9mIHdpbmRvdw0N CikNDQp7DQ0KCVVJTlQzMiB1MzJMb29wOw0NCg0NCglmb3IgKHUzMkxvb3Ag PSAwOyB1MzJMb29wIDwgMjU2OyB1MzJMb29wKyspDQ0KCXsNDQoJCXNDb2xv cnNbdTMyTG9vcF0uciA9IHUzMkxvb3AgJiAweGZmOw0NCgkJc0NvbG9yc1t1 MzJMb29wXS5nID0gdTMyTG9vcCAmIDB4ZmY7DQ0KCQlzQ29sb3JzW3UzMkxv b3BdLmIgPSB1MzJMb29wICYgMHhmZjsNDQoJfQ0NCg0NCg0NCglpZiAoU0RM X0luaXQoU0RMX0lOSVRfVklERU8gLyp8IA0NCgkJCQkgU0RMX0lOSVRfVElN RVIgfCANDQoJCQkJIFNETF9JTklUX0FVRElPIHwgDQ0KCQkJCSBTRExfSU5J VF9KT1lTVElDSyAqLykgIT0gMCkNDQoJew0NCgkJSG9zdEFzc2VydCgiQ291 bGRuJ3QgZG8gYW4gU0RMX0luaXQoKSIpOw0NCgkJSG9zdFNodXRkb3duKCk7 DQ0KCQlleGl0KDApOw0NCgl9DQ0KDQ0KCVRlc3RCZWdpbigpOwkJLy8gR28g ZmlyZSB0aGluZ3MgdXAhDQ0KCXJldHVybigwKTsNDQp9DQ0KIA0NCg== --0-1609127773-1008753315=:93125-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 00:53:30 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJ8rNs26332 for dynarec-outgoing; Wed, 19 Dec 2001 00:53:23 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200112190906.fBJ96tC04924@pons.ac.upc.es> Subject: Re: DYNAREC: SDL Help request In-Reply-To: <20011219010345.B93125-200000@beacon.synthcom.com> "from Neil Bradley at Dec 19, 2001 01:15:15 am" To: dynarec@dynarec.com Date: Wed, 19 Dec 2001 10:06:55 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Just a fast comment. Have you tried to initialize without the SDL_HWPALETTE flag? Or even in window mode? I'm not sure what kind of support DirectX really has for old 8-bit palettized modes (I used raw 16 bit RGB SDL surfaces for my Master System emulator, it is slow of course and I'm rendering everything in each frame). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 01:26:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJ9Pre26372 for dynarec-outgoing; Wed, 19 Dec 2001 01:25:53 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f From: Victor Moya del Barrio Message-Id: <200112190939.fBJ9dL406118@pons.ac.upc.es> Subject: Re: DYNAREC: SDL Help request In-Reply-To: <200112190906.fBJ96tC04924@pons.ac.upc.es> "from Victor Moya del Barrio at Dec 19, 2001 10:06:55 am" To: dynarec@dynarec.com Date: Wed, 19 Dec 2001 10:39:21 +0100 (MET) X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I don't see any problem in the code. I just can't see the real difference between Set_Colors and Set_Palette. It seems Set_Palette is able to change the logical and physical palettes of a surface, while Set_Colors changes both. But as SDL uses color conversion between surfaces and it uses the logical surface for the conversion only the physical surface of the screen surface seems useful (and in my opinion not that useful either). And the SDL_Surface structure only seems to have a palette. As other ideas you can try to change Set_Color with Set_Palette, or just modify at hand the SDL_Palette structure which can be found in each SDL_Surface. Or perhaps just print to see it has the correct values. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 08:18:55 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJGIa527161 for dynarec-outgoing; Wed, 19 Dec 2001 08:18:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 08:33:14 -0800 (PST) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: SDL Help request In-Reply-To: <20011219010345.B93125-200000@beacon.synthcom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 19 Dec 2001, Neil Bradley wrote: > Can an SDL expert take a look at this and perhaps tell me what's wrong? > Am I setting up the backbuffer surface properly? Am I setting up the video > display surface properly? Please keep in mind that right now the code is a > very ugly hack and I'm just trying to get things to work. Then I'll go > make it pretty... Thanks in advance! I believe you need to call SDL_UpdateRect or SDL_UpdateRects to make sure changes to the screen surface are visible. Any particular reason you're updating the entire palette whenever the host asks for one entry to change? You might also stick a SDL_HWSURFACE into the flags for SetVideoMode. Also, SDL has support for doublebuffering. Add SDL_DOUBLEBUFFER to the SVM flags, and then call SDL_Flip. All blits to the screen surface go to the backbuffer. This will take advantage of the hardware facilities if it can. I will say that I haven't looked at the win32 target very closely though... > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Whoever said "Money can't buy happiness" didn't have > Synthcom Systems, Inc. a lot of money. > ICQ #29402898 John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 09:06:33 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJH6Vf27216 for dynarec-outgoing; Wed, 19 Dec 2001 09:06:31 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 09:39:30 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: SDL Help request In-Reply-To: Message-ID: <20011219092558.F93125-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > display surface properly? Please keep in mind that right now the code is a > > very ugly hack and I'm just trying to get things to work. Then I'll go > > make it pretty... Thanks in advance! > I believe you need to call SDL_UpdateRect or SDL_UpdateRects to make sure > changes to the screen surface are visible. That seemed to help a bit - I added: SDL_UpdateRect(sg_psVideoSurface, 0, 0, sDestRect.w, sDestRect.h); And I got the "RAM OK/ROM OK/NVRAM OK" text on the screen, but shortly thereafter the screen goes white, then grey, and then I get most of the screen going black. At least the emulation is working as far as I can tell. The colors are all wrong, but that might be my problem. So are you saying that dirty rectangles are part of SDL? > Any particular reason you're updating the entire palette whenever the host > asks for one entry to change? Just trying to get the damned thing to work and thought I might've missed something and didn't want a single palette entry screwing me up. > You might also stick a SDL_HWSURFACE into the flags for SetVideoMode. Made no difference. > Also, SDL has support for doublebuffering. Add SDL_DOUBLEBUFFER to the SVM > flags, and then call SDL_Flip. All blits to the screen surface go to the > backbuffer. This will take advantage of the hardware facilities if it can. I use the in memory buffer because memory access is faster that way. So far I'm just trying to get things to run and I'll worry about retrace tearing later. ;-) Thanks for any further advice you may have... -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 09:46:23 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJHkFp27251 for dynarec-outgoing; Wed, 19 Dec 2001 09:46:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3C20D59B.DDC282C5@austin.rr.com> Date: Wed, 19 Dec 2001 09:59:55 -0800 From: John Allensworth X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: SDL Help request References: <20011219092558.F93125-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > > display surface properly? Please keep in mind that right now the code is a > > > very ugly hack and I'm just trying to get things to work. Then I'll go > > > make it pretty... Thanks in advance! > > I believe you need to call SDL_UpdateRect or SDL_UpdateRects to make sure > > changes to the screen surface are visible. > > That seemed to help a bit - I added: > > SDL_UpdateRect(sg_psVideoSurface, > 0, 0, sDestRect.w, sDestRect.h); > > And I got the "RAM OK/ROM OK/NVRAM OK" text on the screen, but shortly > thereafter the screen goes white, then grey, and then I get most of the > screen going black. At least the emulation is working as far as I can > tell. The colors are all wrong, but that might be my problem. > > So are you saying that dirty rectangles are part of SDL? Not quite. SDL_UpdateRect just forces the update to take effect. You use it instead of SDL_Flip for single buffered surfaces, would have to dig into things to determine exactly what happens. I believe what happens is that it forces all outstanding Blit's to complete. You are using the DirectX target right? Not the DIB one? > Thanks for any further advice you may have... Didn't see any nasty suprises in the DX video target. Here's the source as of SDL 1.2.1: int DX5_SetColors(_THIS, int firstcolor, int ncolors, SDL_Color *colors) { int i; int alloct_all; /* Copy palette colors into display palette */ alloct_all = 0; if ( SDL_palette != NULL ) { if ( (this->screen->flags&SDL_FULLSCREEN) == SDL_FULLSCREEN ) { /* We can set all entries explicitly */ for ( i=0; i< ncolors; ++i ) { int j = firstcolor + i; SDL_colors[j].peRed = colors[i].r; SDL_colors[j].peGreen = colors[i].g; SDL_colors[j].peBlue = colors[i].b; } IDirectDrawPalette_SetEntries(SDL_palette, 0, firstcolor, ncolors, &SDL_colors[firstcolor]); alloct_all = 1; } else { /* Grab the 236 most diverse colors in the palette */ DX5_CompressPalette(this, colors, ncolors, 236); /* This sends an WM_PALETTECHANGED message to us */ colorchange_expected = 1; IDirectDrawPalette_SetEntries(SDL_palette, 0, 0, 256, SDL_colors); } } return(alloct_all); } > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Whoever said "Money can't buy happiness" didn't have > Synthcom Systems, Inc. a lot of money. > ICQ #29402898 -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 10:14:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJIEu027280 for dynarec-outgoing; Wed, 19 Dec 2001 10:14:56 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 10:47:55 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: SDL Help request In-Reply-To: <3C20D59B.DDC282C5@austin.rr.com> Message-ID: <20011219104308.V96769-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > So are you saying that dirty rectangles are part of SDL? > Not quite. SDL_UpdateRect just forces the update to take effect. You use it > instead of SDL_Flip for single buffered surfaces, would have to dig into things to > determine exactly what happens. I believe what happens is that it forces all > outstanding Blit's to complete. Ah - I got it. > You are using the DirectX target right? Not the DIB one? Yup. Full screen. > > Thanks for any further advice you may have... > Didn't see any nasty suprises in the DX video target. Here's the source as of SDL > 1.2.1: Yeah, I took a look at it. Doesn't look bad at all. I seem to recall having this problem once before with DirectX. I must be missing something really obvious. Do you have any examples of 8bpp code snippets with SDL? -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 10:45:36 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJIjVf27314 for dynarec-outgoing; Wed, 19 Dec 2001 10:45:31 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3C20E381.7FB55D41@austin.rr.com> Date: Wed, 19 Dec 2001 10:59:13 -0800 From: John Allensworth X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: SDL Help request References: <20011219104308.V96769-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > I seem to recall having this problem once before with DirectX. I must be > missing something really obvious. Do you have any examples of 8bpp code > snippets with SDL? Not here, least, not any that I *know* are for 8bpp code. Usually only deal with 16-32bpp, since noone ever runs X at 8bpp anymore =/ Perhaps it doesn't like getting the palette stomped on that often? If the thing dumps a full set out, and you dump the entire palette each time, you might run into problems. X for instance *really* doesn't like it if you call XShmPutImage at more than about 100Hz... It's been a while since I messed with 8bpp. > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Whoever said "Money can't buy happiness" didn't have > Synthcom Systems, Inc. a lot of money. > ICQ #29402898 -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 11:08:08 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJJ86P27340 for dynarec-outgoing; Wed, 19 Dec 2001 11:08:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 11:41:05 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: SDL Help request In-Reply-To: <3C20E381.7FB55D41@austin.rr.com> Message-ID: <20011219114015.Q96769-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I seem to recall having this problem once before with DirectX. I must be > > missing something really obvious. Do you have any examples of 8bpp code > > snippets with SDL? > Not here, least, not any that I *know* are for 8bpp code. Usually only deal with > 16-32bpp, since noone ever runs X at 8bpp anymore =/ I'm thinking that the palette translation between surfaces is the problem. Do I have to set the palette information on BOTH surfaces - the backbuffer and the display buffer? Right now I'm only doing it on the display buffer. Could that be related? -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 11:21:50 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJJLlC27359 for dynarec-outgoing; Wed, 19 Dec 2001 11:21:47 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 19:35:51 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <93903823.20011219193551@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: SDL Help request In-Reply-To: <20011219092558.F93125-100000@beacon.synthcom.com> References: <20011219092558.F93125-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello Neil, NB> That seemed to help a bit - I added: NB> SDL_UpdateRect(sg_psVideoSurface, NB> 0, 0, sDestRect.w, sDestRect.h); NB> And I got the "RAM OK/ROM OK/NVRAM OK" text on the screen, but shortly NB> thereafter the screen goes white, then grey, and then I get most of the NB> screen going black. At least the emulation is working as far as I can NB> tell. The colors are all wrong, but that might be my problem. NB> So are you saying that dirty rectangles are part of SDL? Yes, but not with THAT function... You need to use SDL_UpdateRects with a list of rectangles and it will update only those portions of the screen. Nice, isn't it? You may try doing something like this: palette = screen->format->palette; if (palette == NULL) { return; // Display is not palettised } At least that way you know if you have a palettised surface or not - which it sounds like you don't! All I know is that you should create your surface with the SDL_HWPALETTE flag. It might work with software, but you're guaranteed it to work with that flag set. Have you tried using SDL_LOGPAL or SDL_PHYSPAL at all? Below is my function I use to set the palette up in my 3D engine (yes, it's greyscale). void SetupPalette(void) { int i; SDL_Color colours[256]; for (i = 0; i < 256; i++) { colours[i].r = i; colours[i].g = i; colours[i].b = i; } SDL_SetPalette(screen, SDL_LOGPAL|SDL_PHYSPAL, colours, 0, 256); }; And I declare my surface like this: SDL_Surface *screen; screen = SDL_SetVideoMode(640, 480, 8, SDL_SWSURFACE|SDL_DOUBLEBUF|SDL_HWPALETTE); Hmm... I should declare it as SDL_HWSURFACE, just spotted that! Anyway, it works like that, so... :) NB> Thanks for any further advice you may have... Hope this has helped! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 11:29:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJJT3W27373 for dynarec-outgoing; Wed, 19 Dec 2001 11:29:03 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 19:43:07 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <1774340421.20011219194307@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: SDL Help request In-Reply-To: <20011219114015.Q96769-100000@beacon.synthcom.com> References: <20011219114015.Q96769-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello Neil, Wednesday, December 19, 2001, 7:41:05 PM, you wrote: >> > I seem to recall having this problem once before with DirectX. I must be >> > missing something really obvious. Do you have any examples of 8bpp code >> > snippets with SDL? >> Not here, least, not any that I *know* are for 8bpp code. Usually only deal with >> 16-32bpp, since noone ever runs X at 8bpp anymore =/ NB> I'm thinking that the palette translation between surfaces is the problem. NB> Do I have to set the palette information on BOTH surfaces - the backbuffer NB> and the display buffer? Right now I'm only doing it on the display buffer. NB> Could that be related? Yes, that could be it... Try my code which I've just sent. If that doesn't work, it could be that. Hmm... I wonder how you've declared your surfaces? Hang on, I'll go look... No, I can't see... What parameters do you pass to the functions? Neil --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 12:36:39 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJKaYi27441 for dynarec-outgoing; Wed, 19 Dec 2001 12:36:34 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003301c188ce$993df6e0$4877393e@menta.net> From: "Victor Moya del Barrio" To: References: <20011219114015.Q96769-100000@beacon.synthcom.com> Subject: Re: DYNAREC: SDL Help request Date: Wed, 19 Dec 2001 21:49:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > I seem to recall having this problem once before with DirectX. I must be > > > missing something really obvious. Do you have any examples of 8bpp code > > > snippets with SDL? > > Not here, least, not any that I *know* are for 8bpp code. Usually only deal with > > 16-32bpp, since noone ever runs X at 8bpp anymore =/ > > I'm thinking that the palette translation between surfaces is the problem. > Do I have to set the palette information on BOTH surfaces - the backbuffer > and the display buffer? Right now I'm only doing it on the display buffer. > Could that be related? > As NG suggest I would use SDL_SetPalette rather than SDL_SetColors to see if there is any difference. Also to test the palette field in the surface structure to see if it exists or even printing the values stored. As you say SDL performs a conversion between the two surfaces colors in the blit so it needs both palettes defined. I would not give anything about the effiency of the blit conversion routines (I remember I was first using a different format for 16 bit RGB between the primary and the secondary surface so it was performing a conversion, and it was very slow). > -->Neil Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 12:48:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJKmZf27458 for dynarec-outgoing; Wed, 19 Dec 2001 12:48:35 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 13:21:35 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: SDL Help request In-Reply-To: <003301c188ce$993df6e0$4877393e@menta.net> Message-ID: <20011219132042.O96769-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I'm thinking that the palette translation between surfaces is the problem. > > Do I have to set the palette information on BOTH surfaces - the backbuffer > > and the display buffer? Right now I'm only doing it on the display buffer. > > Could that be related? > As NG suggest I would use SDL_SetPalette rather than SDL_SetColors to see > if there is any difference. Also to test the palette field in the surface structure > to see if it exists or even printing the values stored. SDL_SetPalette Is the same as SDL_SetColors with the physical and logical surfaces set. Neither works. > As you say SDL performs a conversion between the two surfaces colors > in the blit so it needs both palettes defined. I would not give anything about > the effiency of the blit conversion routines (I remember I was first using > a different format for 16 bit RGB between the primary and the secondary > surface so it was performing a conversion, and it was very slow). That probably is the problem. Is there a way in SDL to disable conversion? It certainly isn't needed! -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 13:38:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJLcTL27506 for dynarec-outgoing; Wed, 19 Dec 2001 13:38:29 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Calling all ARM experts From: "M.I.K.e" Message-ID: <0003957f196e2dd1_mailit@pop3.dynarec.com> References: <20011218163308.A92246-100000@beacon.synthcom.com> Date: Wed, 19 Dec 2001 22:40:50 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >BX. Anyway, you're about a week late. ;-) I know, but better late than never, and I didn't know if you solved it already. >I solved it by creating a stub if the jump was outside of the 4MB range of >the BL/BL Prefix. I'd change it so it'd branch to the stub which did this: > mov r6, [xxxxxxxx] > mov pc, r6 >xxxxxxxx: > dd target32BitAddress I thought you wanted to do either a BL or a BX. That's an absolute jump without linking or exchanging the mode. Do you jump from Thumb to Thumb code? I might be wrong but I think one of the internal WRAM banks in the GBA is thought for ARM code since it has 32-bit access unlike all the other memory used. >Works great! Making the relocation work was a major nightmare. I bet so! >Took me 2 solid days of debugging and educating... It took me about half an hour, but I knew what I was searching for and only had to find out which Thumb instructions also support the "high" registers. Once you have figgured out that you're able to access the PC directly via R15, which enables PC-relative addressing with indexed address modes and jumping with MOV, it opens a lot of possibilities. But it also yields a lot of problems, as the main problem with 26-bit software on 32-bit ARMs is that the software is able to access the PC directly. Also almost all of the instructions you mustn't ever use contain R15 in some place. >-->Neil -- M.I.K.e You can get more of what you want with a kind word and a gun than you can with just a kind word. -- Bumper Sticker --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 14:03:35 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJM3EW27539 for dynarec-outgoing; Wed, 19 Dec 2001 14:03:14 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 22:14:19 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <12913411805.20011219221419@dynarec.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: SDL Help request In-Reply-To: <20011219010345.B93125-200000@beacon.synthcom.com> References: <20011219010345.B93125-200000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi Neil, I've been looking at your code and I've fixed it, I think. :) void TestBegin() { HostInitDisplaySurface(640, 480, 8); SDL_SetPalette(sg_psVideoSurface, SDL_LOGPAL|SDL_PHYSPAL, sColors, 0, 256); } UINT8 HostInitDisplaySurface(UINT32 u32XSize, UINT32 u32YSize, UINT8 u8BitsPerPixel) { // Whip through SDL and figure out what modes are available. sg_psVideoSurface = SDL_SetVideoMode(u32XSize, u32YSize, u8BitsPerPixel, SDL_HWSURFACE | SDL_HWPALETTE | SDL_DOUBLEBUF); if ( sg_psVideoSurface == NULL ) { HostAssert("Initialization of video mode failed"); return(FALSE); } (void) SDL_ShowCursor(SDL_DISABLE); return(TRUE); } It sets the palette... In the example you gave, you didn't set SDL_HWSURFACE at all. Also, we can remove the backbuffer code and use SDL's own - thus meaning that both the backbuffer and frontbuffer will be the same format. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 14:07:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJM7E827552 for dynarec-outgoing; Wed, 19 Dec 2001 14:07:14 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 22:21:18 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <12413831568.20011219222118@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: SDL Help request In-Reply-To: <20011219132042.O96769-100000@beacon.synthcom.com> References: <20011219132042.O96769-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> That probably is the problem. Is there a way in SDL to disable conversion? NB> It certainly isn't needed! No... What I'd suggest, if you really want to manage the backbuffer manually, is using CreateRGBSurfaceFrom() instead of CreateRGBSurface(). That way at least you know both surfaces are the same... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 14:10:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJMAic27566 for dynarec-outgoing; Wed, 19 Dec 2001 14:10:44 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 14:43:44 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: SDL Help request In-Reply-To: <12913411805.20011219221419@dynarec.com> Message-ID: <20011219144056.K96769-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > void TestBegin() > { > HostInitDisplaySurface(640, 480, 8); > SDL_SetPalette(sg_psVideoSurface, SDL_LOGPAL|SDL_PHYSPAL, sColors, 0, 256); > } The video surface already gets the physical/palette set by the HostSetPaletteEntry() routine, so this has no effect (I had tried this once before). > // Whip through SDL and figure out what modes are available. > > sg_psVideoSurface = SDL_SetVideoMode(u32XSize, > u32YSize, > u8BitsPerPixel, > SDL_HWSURFACE | SDL_HWPALETTE | SDL_DOUBLEBUF); > > if ( sg_psVideoSurface == NULL ) > { > HostAssert("Initialization of video mode failed"); > return(FALSE); > } Take a look at the docs for SDL - the video mode setting through SDL_SetVideoMode() already gives you SDL_HWSURFACE. You only need that if you're creating it through SDL_CreateRGBSurface(). > It sets the palette... In the example you gave, you didn't set > SDL_HWSURFACE at all. Also, we can remove the backbuffer code and use > SDL's own - thus meaning that both the backbuffer and frontbuffer will > be the same format. I don't want to write directly to the video card. That's quite a bit slower than assembling it in memory and blitting it. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 14:19:06 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJMJ5p27581 for dynarec-outgoing; Wed, 19 Dec 2001 14:19:05 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 22:33:08 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <13814540958.20011219223308@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: SDL Help request In-Reply-To: <20011219144056.K96769-100000@beacon.synthcom.com> References: <20011219144056.K96769-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----------B682B92488F1EA" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ------------B682B92488F1EA Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hiya, NB> The video surface already gets the physical/palette set by the NB> HostSetPaletteEntry() routine, so this has no effect (I had tried this NB> once before). Works for me though! NB> Take a look at the docs for SDL - the video mode setting through NB> SDL_SetVideoMode() already gives you SDL_HWSURFACE. You only need that if NB> you're creating it through SDL_CreateRGBSurface(). True, but I like to explicitly declare it - just so that I know for sure what's going on. :) NB> I don't want to write directly to the video card. That's quite a bit NB> slower than assembling it in memory and blitting it. Attached is a modified version of what you sent before. It sets all the colours to white and then waits for 10 seconds before quitting. Change the colour loop if you want another colour. I've also declared it as SW_SURFACE (this is why I declared it as SW_SURFACE in my 3D engine because I was writing a pixel at a time) and it works. Hope this helps! :) Neil. ------------B682B92488F1EA Content-Type: application/octet-stream; name="win32.c" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="win32.c" I2luY2x1ZGUgPHN0ZGxpYi5oPgojaW5jbHVkZSA8d2luZG93cy5oPgoNCi8vI2luY2x1ZGUgImNv cmUvZHluYXJlYy5oIgovLyNpbmNsdWRlICJvc2RlcC9vc2RlcC5oIgovLyNpbmNsdWRlICJvc2Rl cC93aW4zMi9zZGwuaCIKDQojaW5jbHVkZSAiU0RMLmgiDQoNCnR5cGVkZWYgY2hhciBVSU5UODsK DQp2b2lkIEhvc3RTaHV0ZG93bih2b2lkKQp7CglTRExfUXVpdCgpOwp9Cg0Kdm9pZCBIb3N0QXNz ZXJ0KFVJTlQ4ICpwdThBc3NlcnRTdHJpbmcpCnsKCUhvc3RTaHV0ZG93bigpOwoJTWVzc2FnZUJv eChOVUxMLCBwdThBc3NlcnRTdHJpbmcsICJEeW5hcmVjIChGb29kIEZpZ2h0ISkiLCBNQl9PSyk7 IAp9Cg0Kc3RhdGljIFNETF9TdXJmYWNlICpzZ19wc1ZpZGVvU3VyZmFjZTsKDQpVSU5UOCBIb3N0 SW5pdERpc3BsYXlTdXJmYWNlKFVJTlQzMiB1MzJYU2l6ZSwKCQkJCQkJCSBVSU5UMzIgdTMyWVNp emUsCgkJCQkJCQkgVUlOVDggdThCaXRzUGVyUGl4ZWwpCnsKCS8vIFdoaXAgdGhyb3VnaCBTREwg YW5kIGZpZ3VyZSBvdXQgd2hhdCBtb2RlcyBhcmUgYXZhaWxhYmxlLgoNCglzZ19wc1ZpZGVvU3Vy ZmFjZSA9IFNETF9TZXRWaWRlb01vZGUodTMyWFNpemUsCgkJCQkJCQkJCQkgdTMyWVNpemUsCgkJ CQkJCQkJCQkgdThCaXRzUGVyUGl4ZWwsCgkJCQkJCQkJCQkgU0RMX1NXU1VSRkFDRSB8IFNETF9I V1BBTEVUVEUgfCBTRExfRE9VQkxFQlVGKTsKDQoJaWYgKCBzZ19wc1ZpZGVvU3VyZmFjZSA9PSBO VUxMICkKCXsKCQlIb3N0QXNzZXJ0KCJJbml0aWFsaXphdGlvbiBvZiB2aWRlbyBtb2RlIGZhaWxl ZCIpOwoJCXJldHVybihGQUxTRSk7Cgl9CgoJKHZvaWQpIFNETF9TaG93Q3Vyc29yKFNETF9ESVNB QkxFKTsKCglyZXR1cm4oVFJVRSk7Cn0KCnN0YXRpYyBTRExfQ29sb3Igc0NvbG9yc1syNTZdOwoN CnZvaWQgSG9zdFNldFBhbGV0dGVFbnRyeShVSU5UOCB1OFBhbGV0dGVFbnRyeSwKCQkJCQkJIFVJ TlQ4IHU4UmVkLAoJCQkJCQkgVUlOVDggdThHcmVlbiwKCQkJCQkJIFVJTlQ4IHU4Qmx1ZSkKewov LwlEUkFTU0VSVCh1OFBhbGV0dGVFbnRyeSA8IDB4MTAwKTsKCXNDb2xvcnNbdThQYWxldHRlRW50 cnldLnIgPSB1OFJlZDsKCXNDb2xvcnNbdThQYWxldHRlRW50cnldLmcgPSB1OEdyZWVuOwoJc0Nv bG9yc1t1OFBhbGV0dGVFbnRyeV0uYiA9IHU4Qmx1ZTsKCglTRExfU2V0Q29sb3JzKChTRExfU3Vy ZmFjZSAqKSBzZ19wc1ZpZGVvU3VyZmFjZSwKCQkJCSAgIHNDb2xvcnMsCgkJCQkgICAwLAoJCQkJ ICAgMjU2KTsKfQoNCnZvaWQgSG9zdEZyZWVTdXJmYWNlKHZvaWQgKnB2U3VyZmFjZSkKewoJU0RM X0ZyZWVTdXJmYWNlKChTRExfU3VyZmFjZSAqKSBwdlN1cmZhY2UpOwp9Cg0KVUlOVDggKkhvc3RH ZXRTdXJmYWNlKHZvaWQgKnB2U3VyZmFjZSkKewoJcmV0dXJuKChVSU5UOCAqKSAoKFNETF9TdXJm YWNlICopIHB2U3VyZmFjZSktPnBpeGVscyk7Cn0KDQpVSU5UMzIgSG9zdEdldFN1cmZhY2VQaXRj aCh2b2lkICpwdlN1cmZhY2UpCnsKCXJldHVybigoVUlOVDMyKSAoKFNETF9TdXJmYWNlICopIHB2 U3VyZmFjZSktPnBpdGNoKTsKfQoNCnZvaWQgSG9zdEJsaXRTdXJmYWNlKHZvaWQgKnB2QmFja0J1 ZmZlclN1cmZhY2UsCgkJCQkJIFVJTlQzMiB1MzJTb3VyY2VYVUxQb3MsCgkJCQkJIFVJTlQzMiB1 MzJTb3VyY2VZVUxQb3MsCgkJCQkJIFVJTlQzMiB1MzJTb3VyY2VYTFJQb3MsCgkJCQkJIFVJTlQz MiB1MzJTb3VyY2VZTFJQb3MsCgkJCQkJIFVJTlQzMiB1MzJEZXN0WFBvcywKCQkJCQkgVUlOVDMy IHUzMkRlc3RZUG9zKQp7CglTRExfUmVjdCBzU291cmNlUmVjdDsKCVNETF9SZWN0IHNEZXN0UmVj dDsKCglzU291cmNlUmVjdC54ID0gdTMyU291cmNlWFVMUG9zOwoJc1NvdXJjZVJlY3QueSA9IHUz MlNvdXJjZVlVTFBvczsKCXNTb3VyY2VSZWN0LncgPSB1MzJTb3VyY2VYTFJQb3MgLSB1MzJTb3Vy Y2VYVUxQb3M7CglzU291cmNlUmVjdC5oID0gdTMyU291cmNlWUxSUG9zIC0gdTMyU291cmNlWVVM UG9zOwoNCglzRGVzdFJlY3QueCA9IHUzMkRlc3RYUG9zOwoJc0Rlc3RSZWN0LnkgPSB1MzJEZXN0 WVBvczsKCXNEZXN0UmVjdC53ID0gdTMyU291cmNlWExSUG9zIC0gdTMyU291cmNlWFVMUG9zOwoJ c0Rlc3RSZWN0LmggPSB1MzJTb3VyY2VZTFJQb3MgLSB1MzJTb3VyY2VZVUxQb3M7CgoJU0RMX1Nl dENvbG9ycygoU0RMX1N1cmZhY2UgKikgcHZCYWNrQnVmZmVyU3VyZmFjZSwKCQkJCSAgIHNDb2xv cnMsCgkJCQkgICAwLAoJCQkJICAgMjU2KTsKCglpZiAoU0RMX0JsaXRTdXJmYWNlKChTRExfU3Vy ZmFjZSAqKSBwdkJhY2tCdWZmZXJTdXJmYWNlLAoJCQkJCSZzU291cmNlUmVjdCwKCQkJCQlzZ19w c1ZpZGVvU3VyZmFjZSwKCQkJCQkmc0Rlc3RSZWN0KSAhPSAwKQoJewoJCUhvc3RBc3NlcnQoIkNv dWxkbid0IGJsaXQhIik7CgkJSG9zdFNodXRkb3duKCk7Cgl9Cn0KDQp2b2lkIFRlc3RCZWdpbigp DQp7DQoJSG9zdEluaXREaXNwbGF5U3VyZmFjZSg2NDAsIDQ4MCwgOCk7DQoJU0RMX1NldFBhbGV0 dGUoc2dfcHNWaWRlb1N1cmZhY2UsIFNETF9MT0dQQUx8U0RMX1BIWVNQQUwsIHNDb2xvcnMsIDAs IDI1Nik7DQp9Cg0KaW50IFdJTkFQSSBXaW5NYWluKAogIEhJTlNUQU5DRSBoSW5zdGFuY2UsICAv LyBoYW5kbGUgdG8gY3VycmVudCBpbnN0YW5jZQogIEhJTlNUQU5DRSBoUHJldkluc3RhbmNlLCAg Ly8gaGFuZGxlIHRvIHByZXZpb3VzIGluc3RhbmNlCiAgTFBTVFIgbHBDbWRMaW5lLCAgICAgIC8v IHBvaW50ZXIgdG8gY29tbWFuZCBsaW5lCiAgaW50IG5DbWRTaG93ICAgICAgICAgIC8vIHNob3cg c3RhdGUgb2Ygd2luZG93CikKewoJVUlOVDMyIHUzMkxvb3A7CgoJZm9yICh1MzJMb29wID0gMDsg dTMyTG9vcCA8IDI1NjsgdTMyTG9vcCsrKQoJewovKgkJc0NvbG9yc1t1MzJMb29wXS5yID0gdTMy TG9vcCAmIDB4ZmY7DQoJCXNDb2xvcnNbdTMyTG9vcF0uZyA9IHUzMkxvb3AgJiAweGZmOw0KCQlz Q29sb3JzW3UzMkxvb3BdLmIgPSB1MzJMb29wICYgMHhmZjsqLw0KCQlzQ29sb3JzW3UzMkxvb3Bd LnIgPSAweGZmOw0KCQlzQ29sb3JzW3UzMkxvb3BdLmcgPSAweGZmOw0KCQlzQ29sb3JzW3UzMkxv b3BdLmIgPSAweGZmOw0KCX0KDQoJaWYgKFNETF9Jbml0KFNETF9JTklUX1ZJREVPIC8qfCAKCQkJ CSBTRExfSU5JVF9USU1FUiB8IAoJCQkJIFNETF9JTklUX0FVRElPIHwgCgkJCQkgU0RMX0lOSVRf Sk9ZU1RJQ0sgKi8pICE9IDApCgl7CgkJSG9zdEFzc2VydCgiQ291bGRuJ3QgZG8gYW4gU0RMX0lu aXQoKSIpOwoJCUhvc3RTaHV0ZG93bigpOwoJCWV4aXQoMCk7Cgl9Cg0KCVRlc3RCZWdpbigpOwkJ Ly8gR28gZmlyZSB0aGluZ3MgdXAhDQoNCglTRExfRGVsYXkoMTAwMDApOw0KDQoJU0RMX1F1aXQo KTsKCXJldHVybigwKTsKfQoNCiAKDQo= ------------B682B92488F1EA-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 14:33:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJMXIN27605 for dynarec-outgoing; Wed, 19 Dec 2001 14:33:18 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 15:06:18 -0800 (PST) From: Neil Bradley To: Subject: Re[2]: DYNAREC: SDL Help request In-Reply-To: <13814540958.20011219223308@dynarec.com> Message-ID: <20011219150454.P96769-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > NB> The video surface already gets the physical/palette set by the > NB> HostSetPaletteEntry() routine, so this has no effect (I had tried this > NB> once before). > Works for me though! Is your code using an in system memory backbuffer and a single video page in the card, 8bpp on both surfaces, and blitting from the memory surface to the video card surface? Is this an apples == apples comparison? > NB> I don't want to write directly to the video card. That's quite a bit > NB> slower than assembling it in memory and blitting it. > Attached is a modified version of what you sent before. It sets all the > colours to white and then waits for 10 seconds before quitting. Change > the colour loop if you want another colour. I've also declared it as > SW_SURFACE (this is why I declared it as SW_SURFACE in my 3D engine > because I was writing a pixel at a time) and it works. I'll take a loko at it. When you say you've declared "it", do you mean the memory surface or the video card surface? -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 14:38:15 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJMcE127619 for dynarec-outgoing; Wed, 19 Dec 2001 14:38:14 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 22:51:58 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <3715671053.20011219225158@dynarec.com> To: dynarec@dynarec.com Subject: Re[3]: DYNAREC: SDL Help request In-Reply-To: <20011219150454.P96769-100000@beacon.synthcom.com> References: <20011219150454.P96769-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> Is your code using an in system memory backbuffer and a single video page NB> in the card, 8bpp on both surfaces, and blitting from the memory surface NB> to the video card surface? Is this an apples == apples comparison? Yes, 100% so. NB> I'll take a loko at it. When you say you've declared "it", do you mean the NB> memory surface or the video card surface? The video card surface - the buffer is stored in system memory, so we can write to that as fast as possible. The only time that we transfer to the video card is when we SDL_Flip(), SDL_UpdateRect() or SDL_UpdateRects(). As I say, I hope it works for you... Because if not, then my 3D engine won't work on your computer either - and it'd be damned strange... BTW, you probably want to remove the '#include "SDL.h"' and the UINT8 declaration... I only added them so I could get it to compile! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 14:52:01 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJMpmq27642 for dynarec-outgoing; Wed, 19 Dec 2001 14:51:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 15:24:48 -0800 (PST) From: Neil Bradley To: Subject: Re[3]: DYNAREC: SDL Help request In-Reply-To: <3715671053.20011219225158@dynarec.com> Message-ID: <20011219152230.N96769-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > NB> I'll take a loko at it. When you say you've declared "it", do you mean the > NB> memory surface or the video card surface? > The video card surface - the buffer is stored in system memory, When you say "the buffer", are you now referring to the video card surface or the backbuffer? I'm assuming you mean the latter, but we need to be EXTREMELY explicit here... > so we > can write to that as fast as possible. The only time that we transfer > to the video card is when we SDL_Flip(), SDL_UpdateRect() or > SDL_UpdateRects(). Uh... so you're not using SDL_BlitSurface()? SDL_Flip() only works for in video card backbuffers, right? Plus, you have to set it up as being double buffered when you create the display surface. Are you using SDL_Flip() or SDL_BlitSurface()? -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 15:22:46 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJNMdB27675 for dynarec-outgoing; Wed, 19 Dec 2001 15:22:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 23:36:42 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <3818354872.20011219233642@dynarec.com> To: dynarec@dynarec.com Subject: Re[4]: DYNAREC: SDL Help request In-Reply-To: <20011219152230.N96769-100000@beacon.synthcom.com> References: <20011219152230.N96769-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> When you say "the buffer", are you now referring to the video card surface NB> or the backbuffer? I'm assuming you mean the latter, but we need to be NB> EXTREMELY explicit here... My fault, sorry - the backbuffer is stored in system memory. NB> Uh... so you're not using SDL_BlitSurface()? SDL_Flip() only works for in NB> video card backbuffers, right? Plus, you have to set it up as being double NB> buffered when you create the display surface. Are you using SDL_Flip() or NB> SDL_BlitSurface()? In my example, I explicity declared it as double buffered. We don't need to use SDL_BlitSurface anymore... That's only useful in a non-double buffered environment. In my example I used none, but in my 3D engine, I use SDL_Flip(). I'd use SDL_UpdateRect(), but as I update the entire screen normally... there's no point. Just in case you don't know, SDL_Flip() will blit the entire backbuffer to the display surface. SDL_UpdateRect() blits a portion of the backbuffer to the display surface and SDL_UpdateRects() updates several portions of the backbuffer to the display surface (essentially dirty rectangles). >From now on, when I refer to the buffer, I will always mean the backbuffer... It's very rare that I'll talk about the front surface because with SDL you can't access it at all! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 15:32:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBJNWat27692 for dynarec-outgoing; Wed, 19 Dec 2001 15:32:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 16:05:37 -0800 (PST) From: Neil Bradley To: Subject: Re[4]: DYNAREC: SDL Help request In-Reply-To: <3818354872.20011219233642@dynarec.com> Message-ID: <20011219160409.Y96769-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > NB> Uh... so you're not using SDL_BlitSurface()? SDL_Flip() only works for in > NB> video card backbuffers, right? Plus, you have to set it up as being double > NB> buffered when you create the display surface. Are you using SDL_Flip() or > NB> SDL_BlitSurface()? > In my example, I explicity declared it as double buffered. We don't > need to use SDL_BlitSurface anymore... That's only useful in a > non-double buffered environment. That creates your secondary buffer in video RAM, though. > Just in case you don't know, SDL_Flip() will blit the entire > backbuffer to the display surface. SDL_UpdateRect() blits a portion of > the backbuffer to the display surface and SDL_UpdateRects() updates > several portions of the backbuffer to the display surface (essentially > dirty rectangles). Maybe this is the proper approach after all. I do intend on having dirty rectangles and having smaller blits will make quite a bit more sense than a full frame every frame. > >From now on, when I refer to the buffer, I will always mean the > backbuffer... It's very rare that I'll talk about the front surface > because with SDL you can't access it at all! Sure you can! Lock the surface, then access surface->pixels directly. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 16:25:56 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBK0Pks27744 for dynarec-outgoing; Wed, 19 Dec 2001 16:25:46 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 20 Dec 2001 00:39:48 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <6222141357.20011220003948@dynarec.com> To: dynarec@dynarec.com Subject: Re[5]: DYNAREC: SDL Help request In-Reply-To: <20011219160409.Y96769-100000@beacon.synthcom.com> References: <20011219160409.Y96769-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, >> In my example, I explicity declared it as double buffered. We don't >> need to use SDL_BlitSurface anymore... That's only useful in a >> non-double buffered environment. NB> That creates your secondary buffer in video RAM, though. What does? The only way you can have a secondary buffer in video RAM is to use SDL_HWSURFACE as far as I understand it... NB> Maybe this is the proper approach after all. I do intend on having dirty NB> rectangles and having smaller blits will make quite a bit more sense than NB> a full frame every frame. Yes, if the entire screen isn't being altered every frame, that's the best way to go IMO. NB> Sure you can! Lock the surface, then access surface->pixels directly. Only accesses the backbuffer, not the actual surface. It's a limitation of the SDL API - Sam Latinga has said it himself on the SDL mailing list (of which I've been subscribed for a number of months now)! :) SDL 1.3 should let you do that... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 17:28:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBK1Iqo27798 for dynarec-outgoing; Wed, 19 Dec 2001 17:18:52 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 17:51:15 -0800 (PST) From: Neil Bradley To: Subject: Re[5]: DYNAREC: SDL Help request In-Reply-To: <6222141357.20011220003948@dynarec.com> Message-ID: <20011219174547.B98043-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > NB> That creates your secondary buffer in video RAM, though. > What does? The only way you can have a secondary buffer in video RAM > is to use SDL_HWSURFACE as far as I understand it... I was referring to the SDL_DLBBUF option: SDL_DOUBLEBUF Enable hardware double buffering; only valid with SDL_HWSURFACE. Calling SDL_Flip will flip the buffers and update the screen. All drawing will take place on the surface that is not displayed at the moment. If double buffering could not be enabled then SDL_Flip will just perform a SDL_UpdateRect on the entire screen. Looks like SDL_Flip() is doing the same as the SDL_UpdateRect() as I'm doing. The question is, does SDL_UpdateRect() actually cause data to go to the screen? Do I have to call an SDL_UpdateRect() on BOTH surfaces? Unfortunately the SDL APIs are sparse in terms of documentation. > NB> rectangles and having smaller blits will make quite a bit more sense than > NB> a full frame every frame. > Yes, if the entire screen isn't being altered every frame, that's the > best way to go IMO. That's the way I did it in Retrocade and it's how I intend on doing it here. I just need to get it to work at all first. ;-) > NB> Sure you can! Lock the surface, then access surface->pixels directly. > Only accesses the backbuffer, not the actual surface. It's a > limitation of the SDL API - Sam Latinga has said it himself on the SDL > mailing list (of which I've been subscribed for a number of months > now)! :) Uh... hm... Well, I'm not bothering with it just yet. BTW, Looks like others have the same frustrations with SDL that I do: "It would be nice to have some precise intsructions here about exactly what steps are necessary to get SDL full-screen mode operating. I haven't been able to utilize this feature so far." -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 18:06:37 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBK26Qs27846 for dynarec-outgoing; Wed, 19 Dec 2001 18:06:26 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3C214AD0.96FB8A49@austin.rr.com> Date: Wed, 19 Dec 2001 18:20:00 -0800 From: John Allensworth X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: SDL Help request References: <20011219174547.B98043-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > Looks like SDL_Flip() is doing the same as the SDL_UpdateRect() as I'm > doing. The question is, does SDL_UpdateRect() actually cause data to go to > the screen? Do I have to call an SDL_UpdateRect() on BOTH surfaces? I'm pretty sure you only have to call SDL_UpdateRect() on the screen surface. > Unfortunately the SDL APIs are sparse in terms of documentation. Side effect of easily avaliable source. Looking through some of the other stuff here to see if there's anything that might shed light on the subject... > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Whoever said "Money can't buy happiness" didn't have > Synthcom Systems, Inc. a lot of money. > ICQ #29402898 -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 18:13:11 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBK2DAe27859 for dynarec-outgoing; Wed, 19 Dec 2001 18:13:10 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 18:46:11 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: SDL Help request In-Reply-To: <3C214AD0.96FB8A49@austin.rr.com> Message-ID: <20011219184507.W98492-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Unfortunately the SDL APIs are sparse in terms of documentation. > > Side effect of easily avaliable source. Looking through some of the other stuff > here to see if there's anything that might shed light on the subject... I would've thought that this sort of thing would be documented somewhere inside Loki...? Or am I assuming too much? At least at my group at Intel, I instituted a policy - no document - no code - no exceptions. We got so tired of people not being able to figure out what to do that it had to end. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 18:17:51 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBK2Ho327873 for dynarec-outgoing; Wed, 19 Dec 2001 18:17:50 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 20 Dec 2001 02:31:52 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <8228865716.20011220023152@dynarec.com> To: dynarec@dynarec.com Subject: Re[6]: DYNAREC: SDL Help request In-Reply-To: <20011219174547.B98043-100000@beacon.synthcom.com> References: <20011219174547.B98043-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> I was referring to the SDL_DLBBUF option: NB> SDL_DOUBLEBUF Enable hardware double buffering; only valid with NB> SDL_HWSURFACE. Calling SDL_Flip will flip the buffers and update the NB> screen. All drawing will take place on the surface that is not displayed NB> at the moment. If double buffering could not be enabled then SDL_Flip will NB> just perform a SDL_UpdateRect on the entire screen. NB> Looks like SDL_Flip() is doing the same as the SDL_UpdateRect() as I'm NB> doing. The question is, does SDL_UpdateRect() actually cause data to go to NB> the screen? Do I have to call an SDL_UpdateRect() on BOTH surfaces? No, just the one surface... When using SDL_SWSURFACE, You have the page in video memory... and when it runs SDL_UpdateRect(), it just blits from the backbuffer to the front buffer. So the answer is no, you only call it the once. NB> Unfortunately the SDL APIs are sparse in terms of documentation. Absolutely, this is the one major flaw to SDL... NB> That's the way I did it in Retrocade and it's how I intend on doing it NB> here. I just need to get it to work at all first. ;-) Yeah, it's just a minor flaw to the plan, isn't it? ;) NB> BTW, Looks like others have the same frustrations with SDL that I do: NB> "It would be nice to have some precise intsructions here about exactly NB> what steps are necessary to get SDL full-screen mode operating. I NB> haven't been able to utilize this feature so far." It's easy... just pass the SDL_FULLSCREEN flag when calling SDL_SetVideoMode(). Works like a charm... Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 18:20:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBK2KKa27886 for dynarec-outgoing; Wed, 19 Dec 2001 18:20:20 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 20 Dec 2001 02:34:23 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <17329016072.20011220023423@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: SDL Help request In-Reply-To: <3C214AD0.96FB8A49@austin.rr.com> References: <20011219174547.B98043-100000@beacon.synthcom.com> <3C214AD0.96FB8A49@austin.rr.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, JA> I'm pretty sure you only have to call SDL_UpdateRect() on the screen surface. Yep. JA> Side effect of easily avaliable source. Looking through some of the other stuff JA> here to see if there's anything that might shed light on the subject... There's also the examples on libsdl.org... And while I'm around, I can answer pretty much any questions (at least in terms of graphics and input) because I've already had to deal with it! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 18:40:43 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBK2ego27911 for dynarec-outgoing; Wed, 19 Dec 2001 18:40:42 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3C2152DA.505FD7C9@austin.rr.com> Date: Wed, 19 Dec 2001 18:54:19 -0800 From: John Allensworth X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: SDL Help request References: <20011219184507.W98492-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > Side effect of easily avaliable source. Looking through some of the other stuff > > here to see if there's anything that might shed light on the subject... > > I would've thought that this sort of thing would be documented somewhere > inside Loki...? Or am I assuming too much? We have a number of working examples here, but they aren't exactly something I can dump into an email... The other thing is that all of them here are for linux, and just about every single one uses SDL_HWSURFACE. After comparing against what is done in Postal, I can't see any reason it shouldn't be working besides the win32 target being suspect. As for documentation, we had the primary author/maintainer onboard. About the only things we have as real 'docs' are procedural things related to getting a working cd image or patch built. > At least at my group at Intel, I instituted a policy - no document - no > code - no exceptions. We got so tired of people not being able to figure > out what to do that it had to end. I *wish* I could get something like that put in, but I'd be wanting it for the code that comes in here from other sources. Any situation where SDL or one of it's siblings is being a problem is quickly solved by looking through the source, as it's clear, short, and in C. Dealing with one of the hulking atrocities like CTP, tribes2, or FAKK2 is a completely seperate matter. The only one I've seen to actually come with a decent roadmap of "here's the stuff that will cause problems when porting" was postal. I think what may happen is that people notice a portion of SDL that could use some documentation, read through the source to come up with something, and end up forgetting to write the documentation because it's all perfectly clear in their head at that point. May not be the best way to do things, but between the source, the 'official' docs, and the comments most issues resolve themselves rather quickly. > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Whoever said "Money can't buy happiness" didn't have > Synthcom Systems, Inc. a lot of money. > ICQ #29402898 -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 19 23:25:45 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBK7PXi28126 for dynarec-outgoing; Wed, 19 Dec 2001 23:25:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 23:58:32 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Figured it out! Message-ID: <20011219235708.D98492-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Thanks for the help! The problem was the code not programming up the source palette. Once I did that everything worked! Now I'm on to core-izing the repeated palette setting this code does... It sets the palette entries a LOT, and that slows SDL down to a cral. Cleanup will take a little bit of time - I'm estimating a few evenings, then we can have all sorts of fun with porting it to another OS! Yipee! -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 20 01:01:19 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBK91Bo28215 for dynarec-outgoing; Thu, 20 Dec 2001 01:01:11 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 20 Dec 2001 01:34:13 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Stats Message-ID: <20011220012054.N98492-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Here's what I have so far - The dirty tiling on the backbuffer is now working. I haven't yet done any horizontal dirty rectangles from the backbuffer to the video display. Right now I'm doing full frame blits. This is on a 1 Ghz P3 256K cache with a Geforce 2 (4X AGP) video card. Without any optimization 67 FPS With palette optimizations 497 FPS With backbuffer dirty tiling 557 FPS With change counts (skips unchanged frames) 603 FPS I suspect with the partial screen blits that we'll be well in the 1000FPS range. In short, we need to have this optimized so the bottleneck is the CPU emulation and not the graphics engine. Then we'll truly be able to map the recompiler's performance... As an interesting data point, MAME with sound disabled comes in at a pathetic 340FPS. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 20 10:04:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBKI4L629119 for dynarec-outgoing; Thu, 20 Dec 2001 10:04:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 20 Dec 2001 10:37:25 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: SDL Throttling question Message-ID: <20011220103434.D1231-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com John - since you're really familiar with SDL, what is the "proper" way of doing throttling with it? My initial thinking is that I'd use a timer to decrease a sempahore whenever a frame needed to be drawn, but from what I can tell SDL won't allow me to get the resolution of the timer. I'd like to be able to put the main thread to sleep entirely until it needs to draw another frame. How is this done in some of the other Loki software packages? -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 00:00:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBK7PXi28126 for dynarec-outgoing; Wed, 19 Dec 2001 23:25:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 19 Dec 2001 23:58:32 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Figured it out! Message-ID: <20011219235708.D98492-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Thanks for the help! The problem was the code not programming up the source palette. Once I did that everything worked! Now I'm on to core-izing the repeated palette setting this code does... It sets the palette entries a LOT, and that slows SDL down to a cral. Cleanup will take a little bit of time - I'm estimating a few evenings, then we can have all sorts of fun with porting it to another OS! Yipee! -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 00:00:57 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBKI4L629119 for dynarec-outgoing; Thu, 20 Dec 2001 10:04:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 20 Dec 2001 10:37:25 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: SDL Throttling question Message-ID: <20011220103434.D1231-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com John - since you're really familiar with SDL, what is the "proper" way of doing throttling with it? My initial thinking is that I'd use a timer to decrease a sempahore whenever a frame needed to be drawn, but from what I can tell SDL won't allow me to get the resolution of the timer. I'd like to be able to put the main thread to sleep entirely until it needs to draw another frame. How is this done in some of the other Loki software packages? -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 00:00:58 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBK91Bo28215 for dynarec-outgoing; Thu, 20 Dec 2001 01:01:11 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 20 Dec 2001 01:34:13 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Stats Message-ID: <20011220012054.N98492-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Here's what I have so far - The dirty tiling on the backbuffer is now working. I haven't yet done any horizontal dirty rectangles from the backbuffer to the video display. Right now I'm doing full frame blits. This is on a 1 Ghz P3 256K cache with a Geforce 2 (4X AGP) video card. Without any optimization 67 FPS With palette optimizations 497 FPS With backbuffer dirty tiling 557 FPS With change counts (skips unchanged frames) 603 FPS I suspect with the partial screen blits that we'll be well in the 1000FPS range. In short, we need to have this optimized so the bottleneck is the CPU emulation and not the graphics engine. Then we'll truly be able to map the recompiler's performance... As an interesting data point, MAME with sound disabled comes in at a pathetic 340FPS. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 00:18:24 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBL8HuF29827 for dynarec-outgoing; Fri, 21 Dec 2001 00:17:56 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 21 Dec 2001 00:51:03 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Wanna see Food Fight Message-ID: <20011221004938.S3007-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com It's working now, though: * No sound * No controls yet. Inserting coins causes the game to protection fault. ;-( Probably pokey related. To run, just unzip it in a directory (it's a Windows app), and type "dynarec". Hit escape to get out, and F6 to toggle speed throttling. It sits there at a mere 9% CPU utilization at 60FPS (with throttling enabled). MAME is @ 100%. Go figger. ;| I'll keep working on it! -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 00:19:20 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBL8JJb29837 for dynarec-outgoing; Fri, 21 Dec 2001 00:19:19 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 21 Dec 2001 00:52:26 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Wanna see Food Fight In-Reply-To: <20011221004938.S3007-100000@beacon.synthcom.com> Message-ID: <20011221005209.H3007-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > It's working now, though: > > * No sound > * No controls yet. Inserting coins causes the game to protection fault. > ;-( Probably pokey related. > > To run, just unzip it in a directory (it's a Windows app), and type > "dynarec". Hit escape to get out, and F6 to toggle speed throttling. > > It sits there at a mere 9% CPU utilization at 60FPS (with throttling > enabled). MAME is @ 100%. Go figger. ;| > > I'll keep working on it! Forgot to mention: http://www.synthcom.com/~neil/foodf.zip -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 04:21:41 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBLCLIL30519 for dynarec-outgoing; Fri, 21 Dec 2001 04:21:18 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 21 Dec 2001 04:35:31 -0800 (PST) From: X-Sender: tarquin@cx83476-a To: dynarec@dynarec.com Subject: Re: DYNAREC: SDL Throttling question In-Reply-To: <20011220103434.D1231-100000@beacon.synthcom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, 20 Dec 2001, Neil Bradley wrote: > John - since you're really familiar with SDL, what is the "proper" way of > doing throttling with it? My initial thinking is that I'd use a timer to > decrease a sempahore whenever a frame needed to be drawn, but from what I > can tell SDL won't allow me to get the resolution of the timer. I'd like > to be able to put the main thread to sleep entirely until it needs to draw > another frame. I'm not certain about the best way to do emulation throttling. There's no real way to figure out the exact timer resolution besides trying a set of SDL_Delay's, counting off the real tick delta that SDL_GetTicks returns. You can ask it for any delay you want, and it will guarantee that SDL_Delay returns no sooner than that many milliseconds. > How is this done in some of the other Loki software packages? That's just it, most of them don't bother with throttling because the game logic is decoupled from the frame rate. Almost all of them just update as fast as they possibly can, and use SDL_GetTicks to determine the time delta the game logic needs to handle. Unfortunately, there isn't any real way to determine the screen refresh rate, or you could really just cheat with SDL_DOUBLEBUF. SDL_Flip has the behavior of queueing up a flip, and then cause the next surface blit or lock call to block until the flip happens. If you guarantee that your code always runs at 60Hz or better, this would give you a completely transparent throttling mechanism that would let you just draw flat out... The only problem that method runs into is that it only works correctly if you can make the video refresh rate match the real thing. > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Whoever said "Money can't buy happiness" didn't have > Synthcom Systems, Inc. a lot of money. > ICQ #29402898 John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 09:53:10 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBLHqq030785 for dynarec-outgoing; Fri, 21 Dec 2001 09:52:52 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 21 Dec 2001 10:26:01 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: SDL Throttling question In-Reply-To: Message-ID: <20011221102008.F6123-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > doing throttling with it? My initial thinking is that I'd use a timer to > > decrease a sempahore whenever a frame needed to be drawn, but from what I > > can tell SDL won't allow me to get the resolution of the timer. I'd like > > to be able to put the main thread to sleep entirely until it needs to draw > > another frame. > I'm not certain about the best way to do emulation throttling. There's no > real way to figure out the exact timer resolution besides trying a set of > SDL_Delay's, counting off the real tick delta that SDL_GetTicks returns. > You can ask it for any delay you want, and it will guarantee that > SDL_Delay returns no sooner than that many milliseconds. Bummer. That'd be a really easy thing for SDL to add, too, since the timer resolution would be a known specific. > > How is this done in some of the other Loki software packages? > That's just it, most of them don't bother with throttling because the game > logic is decoupled from the frame rate. Sounds like the refresh rate is what holds things back. In emulation, the logic is also decoupled from the frame rate (it'd run at ungodly speeds without throttling tho). We just need to stick that stuff in there to slow the damn thing down! > Unfortunately, there isn't any real way to determine the screen refresh > rate, or you could really just cheat with SDL_DOUBLEBUF. SDL_Flip has the > behavior of queueing up a flip, and then cause the next surface blit or > lock call to block until the flip happens. If you guarantee that your code > always runs at 60Hz or better, this would give you a completely > transparent throttling mechanism that would let you just draw flat out... Heh. On my monitor it'd be running at 85hz. Binding the game throttling to the refresh rate 'aint a good idea for the sake of consistency. But in any case, I solved the problem in a platform specific way - I'm just using multimedia timers under Windows since I know exactly how fast they run. Looks like things are running quite smoothly, actually, aside from the crash that happens when I put coins in. ;-( I still don't have something quite right, and I suspect it's the sound. I'll implement sound next and go from there. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 10:43:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBLIgv430839 for dynarec-outgoing; Fri, 21 Dec 2001 10:42:57 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3C2385D3.43BAEC16@austin.rr.com> Date: Fri, 21 Dec 2001 10:56:19 -0800 From: John Allensworth X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: SDL Throttling question References: <20011221102008.F6123-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Neil Bradley wrote: > > > doing throttling with it? My initial thinking is that I'd use a timer to > > > decrease a sempahore whenever a frame needed to be drawn, but from what I > > > can tell SDL won't allow me to get the resolution of the timer. I'd like > > > to be able to put the main thread to sleep entirely until it needs to draw > > > another frame. > > I'm not certain about the best way to do emulation throttling. There's no > > real way to figure out the exact timer resolution besides trying a set of > > SDL_Delay's, counting off the real tick delta that SDL_GetTicks returns. > > You can ask it for any delay you want, and it will guarantee that > > SDL_Delay returns no sooner than that many milliseconds. > > Bummer. That'd be a really easy thing for SDL to add, too, since the timer > resolution would be a known specific. Not necessarily, first, there's the fact that some linux systems vary between 100 and 1000 Hz timers. Second, there's all kinds of fun with partial timeslices to add a little bit more jitter into the mix. > > > How is this done in some of the other Loki software packages? > > That's just it, most of them don't bother with throttling because the game > > logic is decoupled from the frame rate. > > Sounds like the refresh rate is what holds things back. In emulation, the > logic is also decoupled from the frame rate (it'd run at ungodly speeds > without throttling tho). We just need to stick that stuff in there to slow > the damn thing down! That's just it though, in emulation you can't decouple everything, as if you proceed too far ahead things will get "weird". You can't just render at those ungodly speeds in emulation, due to the emulated system doing things based on vblank. You also *have* to render just about every frame on some systems, due to things like hardware sprite collision and timing sensitive operations like splitscreens. With "normal" games, it isn't a problem, as most of the game has no real concept of frames as a timebase, nor is it meant to. Timing of events comes down to "Start this now, and end it around a second from now". > > lock call to block until the flip happens. If you guarantee that your code > > always runs at 60Hz or better, this would give you a completely > > transparent throttling mechanism that would let you just draw flat out... > > Heh. On my monitor it'd be running at 85hz. Binding the game throttling to > the refresh rate 'aint a good idea for the sake of consistency. Works well *if* you have control over the monitor refresh rate. > But in any case, I solved the problem in a platform specific way - I'm > just using multimedia timers under Windows since I know exactly how fast > they run. Looks like things are running quite smoothly, actually, aside > from the crash that happens when I put coins in. ;-( I still don't have > something quite right, and I suspect it's the sound. I'll implement sound > next and go from there. The timestamp counter still works fine as long as you're on an x86 =P > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Whoever said "Money can't buy happiness" didn't have > Synthcom Systems, Inc. a lot of money. > ICQ #29402898 -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 11:03:00 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBLJ2v130866 for dynarec-outgoing; Fri, 21 Dec 2001 11:02:57 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 21 Dec 2001 11:36:06 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: SDL Throttling question In-Reply-To: <3C2385D3.43BAEC16@austin.rr.com> Message-ID: <20011221113019.D6123-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Bummer. That'd be a really easy thing for SDL to add, too, since the timer > > resolution would be a known specific. > Not necessarily, first, there's the fact that some linux systems vary > between 100 and 1000 Hz timers. Second, there's all kinds of fun with > partial timeslices to add a little bit more jitter into the mix. Of course, however they don't need to be *THAT* accurate... just enough so it's right most of the time. > > Sounds like the refresh rate is what holds things back. In emulation, the > > logic is also decoupled from the frame rate (it'd run at ungodly speeds > > without throttling tho). We just need to stick that stuff in there to slow > > the damn thing down! > That's just it though, in emulation you can't decouple everything, as > if you proceed too far ahead things will get "weird". Not so - Emulation is done using virtual time anyway, not physical time. So if we have a 6Mhz CPU we're emulating and we need an int 2 every quarter of a second, we execute for 25000 virtual cycles, cause an emulated interrup, etc.. This is how things are kept in sync. Doing emulated interrupts in real time doesn't work, actually. Already been down that path LONG ago. > You also *have* to render just > about every frame on some systems, due to things like hardware sprite > collision and timing sensitive operations like splitscreens. As I mentioned above, this is all based on virtual time, not physical time. Games like Sonic The Hedgehog get insane amounts of sprites on the screen because they do periodic interrupts during screen refresh, but that's all handled in the virtual domain, not physically. I don't understand the nonemulated aspect of things. Are you saying that the CPU utilization is at 100% at all times even if it doesn't need to be? Seems like a waste, especially if you're playing the game on a laptop. Battery life is paramount and can make a hugedifference. > > Heh. On my monitor it'd be running at 85hz. Binding the game throttling to > > the refresh rate 'aint a good idea for the sake of consistency. > Works well *if* you have control over the monitor refresh rate. I don't like forcing 60Hz on people. Flickers too badly for my taste. > > from the crash that happens when I put coins in. ;-( I still don't have > > something quite right, and I suspect it's the sound. I'll implement sound > > next and go from there. > The timestamp counter still works fine as long as you're on an x86 =P And that's not very portable, which is what the point of SDL is, right? ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 11:47:02 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBLJkuf30905 for dynarec-outgoing; Fri, 21 Dec 2001 11:46:56 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3C2394D6.6A74CB0E@austin.rr.com> Date: Fri, 21 Dec 2001 12:00:22 -0800 From: John Allensworth X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: SDL Throttling question References: <20011221113019.D6123-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Bummer. That'd be a really easy thing for SDL to add, too, since the timer > > > resolution would be a known specific. > > > Not necessarily, first, there's the fact that some linux systems vary > > between 100 and 1000 Hz timers. Second, there's all kinds of fun with > > partial timeslices to add a little bit more jitter into the mix. > > Of course, however they don't need to be *THAT* accurate... just enough so > it's right most of the time. True. In general, SDL's millisecond timers and delays are accurate down to about 10 ms. > I don't understand the nonemulated aspect of things. Are you saying that > the CPU utilization is at 100% at all times even if it doesn't need to be? > Seems like a waste, especially if you're playing the game on a laptop. > Battery life is paramount and can make a hugedifference. Hefty games these days tend to peg the CPU most of the time. They usually don't have any throttling other than possibly vsync, depending on what syscalls they're making. Different portions may sleep at a time, but in general things tend to run flat out whenever possible. Usually the video and sound drivers drop some sleep time in though. As for timing, I got to sleep around 5AM last night, and my brain isn't quite online yet =P The angle I was getting at was that non-emulation stuff is much more likely to forego throttling and just dumping out frames as fast as they can, and using the system timers to deal with game logic. Emulators don't usually render that way, as rendering a frame multiple times doesn't gain you anything -- and rendering more than about one frame into the future is a Bad Thing. Games it doesn't matter as much, as interim frames can be interpolated to give smoother motion, or have some take a bit longer than a refresh or so to render, and the timers will keep the game logic in check. Not sure how to word it, but in my mind at least emulation is *much* more frame based than regular games. > > > from the crash that happens when I put coins in. ;-( I still don't have > > > something quite right, and I suspect it's the sound. I'll implement sound > > > next and go from there. > > The timestamp counter still works fine as long as you're on an x86 =P > > And that's not very portable, which is what the point of SDL is, right? > ;-) For games, if RDTSC is the least portable aspect, then you're doing better than most. For OpenGL games it isn't much of a problem, as most of SDL's targets that aren't x86 don't support accelerated 3D. Windows, Linux/x86, and MacOS are the only ones that come to mind at really supporting OpenGL well. With two of those you're practically guaranteed to have RDTSC, and on the third you're going to have more pressing problems =P > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Whoever said "Money can't buy happiness" didn't have > Synthcom Systems, Inc. a lot of money. > ICQ #29402898 -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 12:24:03 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBLKNuY30940 for dynarec-outgoing; Fri, 21 Dec 2001 12:23:56 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 21 Dec 2001 12:57:06 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: SDL Throttling question In-Reply-To: <3C2394D6.6A74CB0E@austin.rr.com> Message-ID: <20011221123245.D6123-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Seems like a waste, especially if you're playing the game on a laptop. > > Battery life is paramount and can make a hugedifference. > Hefty games these days tend to peg the CPU most of the time. They > usually don't have any throttling other than possibly vsync, depending > on what syscalls they're making. Different portions may sleep at a > time, but in general things tend to run flat out whenever possible. > Usually the video and sound drivers drop some sleep time in though. I see what you're saying. Internally the code has a concept of when it's done rendering a frame and just does it, and fixed speed timers just keep things running smoothly. More CPU power = more FPS, as they are not static. > As for timing, I got to sleep around 5AM last night, and my brain > isn't quite online yet =P The angle I was getting at was that > non-emulation stuff is much more likely to forego throttling and just > dumping out frames as fast as they can, and using the system timers to > deal with game logic. Emulators don't usually render that way, as > rendering a frame multiple times doesn't gain you anything -- and > rendering more than about one frame into the future is a Bad Thing. Under emulation, you can't render into the future. Plus, all the original hardware ran at a fixed frame rate anyway. Some were tied to vsync and whatnot, but they are ALWAYS running at fixed rates. > Games it doesn't matter as much, as interim frames can be interpolated > to give smoother motion, or have some take a bit longer than a refresh > or so to render, and the timers will keep the game logic in check. Right. > Not sure how to word it, but in my mind at least emulation is *much* > more frame based than regular games. It's only frame based because that's the only virtual thing one can throttle on to keep things from running too quickly. Gets even trickier with vector games where a "frame" is a fixed rate until it gets overloaded, and then frames are "skipped". ;-) For example, the Food Fight hardware has two external timers that were fixed frequencies. The foreground code just spins until it gets semaphores to let it go. That way it runs at a constant rate. But a surprising number of arcade games just run full tilt and interrupts just keep things moving along. Some games also look a the vsync signal on the video monitor - early 6502 based Atari raster games are like this. SDL Is *SOOO* cool and all it needs is a couple more things to make it ultra cool, and very, very attractive to the emulation community. Right now the horrid Allegro is kind, which requires you to poll for input and stop periodically to shove sound out the port instead of callbacks. I haven't dug in to the 8->16bpp capabilities of SDL yet, but I'm assuming that they're equally as cool and take care of a bunch of palette translation stuff for me. Crossing fingers! -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 13:36:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBLLaWu31002 for dynarec-outgoing; Fri, 21 Dec 2001 13:36:32 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <003a01c18a69$472523a0$4877393e@menta.net> From: "Victor Moya del Barrio" To: References: <20011221102008.F6123-100000@beacon.synthcom.com> <3C2385D3.43BAEC16@austin.rr.com> Subject: Re: DYNAREC: SDL Throttling question Date: Fri, 21 Dec 2001 22:48:48 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > The timestamp counter still works fine as long as you're on an x86 =P > I used either the SDL sound callback for sincronization and the RDTSC counter in my Master System emulator. And I used SDL_Pause() (or whatever the name) for idling the the emulator. The sound sincronization seemed a bit more accurated (perhaps it was a bit slower than the 60Hz original emulator) than the RDTSC, small sound buffers worked well but with larger sound buffers it was kinda jerky. Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 13:40:05 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBLLe5Q31019 for dynarec-outgoing; Fri, 21 Dec 2001 13:40:05 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3C23AF5E.FBBACCBF@austin.rr.com> Date: Fri, 21 Dec 2001 13:53:34 -0800 From: John Allensworth X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.4.0 i686) X-Accept-Language: en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: SDL Throttling question References: <20011221123245.D6123-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Hefty games these days tend to peg the CPU most of the time. They > > usually don't have any throttling other than possibly vsync, depending > > on what syscalls they're making. Different portions may sleep at a > > time, but in general things tend to run flat out whenever possible. > > Usually the video and sound drivers drop some sleep time in though. > > I see what you're saying. Internally the code has a concept of when it's > done rendering a frame and just does it, and fixed speed timers just keep > things running smoothly. More CPU power = more FPS, as they are not > static. > > deal with game logic. Emulators don't usually render that way, as > > rendering a frame multiple times doesn't gain you anything -- and > > rendering more than about one frame into the future is a Bad Thing. > > Under emulation, you can't render into the future. Plus, all the original > hardware ran at a fixed frame rate anyway. Some were tied to vsync and > whatnot, but they are ALWAYS running at fixed rates. Well, you *could* render into the future, but this would result in rather strange effects, such as a really noticeable delay between when you hit the button and when your character jumps. If you did try to render into the future, you'd probably get limited by the video or sound driver when you pump out the data. > SDL Is *SOOO* cool and all it needs is a couple more things to make it > ultra cool, and very, very attractive to the emulation community. Right > now the horrid Allegro is kind, which requires you to poll for input and > stop periodically to shove sound out the port instead of callbacks. Well, you sort of have to poll for input with SDL, at least as far as peeking at the event queue. Hmm, I'd have to double check things, but what about using the sound callback for throttling? It's going to be called at a known frequency, so you could base the rest of the emulation speed off of it... I believe that's how DarcNES does it's speed throttling -- nyef lets the blocking /dev/dsp writes stop things as needed for the wall clock to catch up... > I haven't dug in to the 8->16bpp capabilities of SDL yet, but I'm assuming > that they're equally as cool and take care of a bunch of palette > translation stuff for me. Crossing fingers! It'll handle the color conversion, but I don't know how likely an 8->16 blit is to be hardware assisted. The thing I've been wanting video wise these days has been a flexible planar video mode =P > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley Whoever said "Money can't buy happiness" didn't have > Synthcom Systems, Inc. a lot of money. > ICQ #29402898 -- tarquin - John Allensworth Programmer, Loki Software --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 14:40:14 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBLMe7k31072 for dynarec-outgoing; Fri, 21 Dec 2001 14:40:07 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 21 Dec 01 17:53:22 -0500 Message-Id: <3.0.5.32.20011221145431.007ad270@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 21 Dec 2001 14:54:31 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Wanna see Food Fight In-Reply-To: <20011221005209.H3007-100000@beacon.synthcom.com> References: <20011221004938.S3007-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >http://www.synthcom.com/~neil/foodf.zip 404 :( Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 15:27:38 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBLNRaI31125 for dynarec-outgoing; Fri, 21 Dec 2001 15:27:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 21 Dec 2001 16:00:47 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Wanna see Food Fight In-Reply-To: <3.0.5.32.20011221145431.007ad270@mailandnews.com> Message-ID: <20011221160026.T7173-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >http://www.synthcom.com/~neil/foodf.zip > 404 :( Damnit... I have no idea where I uploaded it to last night, then. ;-( Anyway, it's there now. Give it a shot! -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 16:13:18 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBM0D4N31171 for dynarec-outgoing; Fri, 21 Dec 2001 16:13:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Fri, 21 Dec 01 19:26:15 -0500 Message-Id: <3.0.5.32.20011221162726.007ae6c0@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 21 Dec 2001 16:27:26 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Wanna see Food Fight In-Reply-To: <20011221160026.T7173-100000@beacon.synthcom.com> References: <3.0.5.32.20011221145431.007ad270@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 04:00 PM 12/21/01 -0800, you wrote: >> >http://www.synthcom.com/~neil/foodf.zip >> 404 :( > >Damnit... I have no idea where I uploaded it to last night, then. ;-( Clearly, a hole must have opened up and swallowed the file, transporting it into the Land of the Lost, where dinosaurs still rule the world. Living in the land of the lost! Living in the land of the lost! Liiiiviiiing in the laaaaand of the loooooost... LANDOFTHELOST! -- Sorry ;) I'm not sure which is scarier: That I still remember the theme song to that stupid show (the early 90's version), or that I actually watched a few episodes. >Anyway, it's there now. Give it a shot! Very cool! If I'm not mistaken, the display isn't centered? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Dec 21 16:15:34 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBM0FXA31184 for dynarec-outgoing; Fri, 21 Dec 2001 16:15:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 21 Dec 2001 16:48:44 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Wanna see Food Fight In-Reply-To: <3.0.5.32.20011221162726.007ae6c0@mailandnews.com> Message-ID: <20011221164809.E7173-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Anyway, it's there now. Give it a shot! > Very cool! If I'm not mistaken, the display isn't centered? You are not mistaken. There is no 256x240 video mode, so it's probably picking 320x240. I don't intend on bothering with it since it's only supposed to be a framework to test with. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Dec 24 05:17:27 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBODGPe37722 for dynarec-outgoing; Mon, 24 Dec 2001 05:16:25 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 24 Dec 2001 13:30:08 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.53d) Personal X-Priority: 3 (Normal) Message-ID: <343319833.20011224133008@dynarec.com> To: dynarec@dynarec.com Subject: DYNAREC: Merry Christmas guys! In-Reply-To: <20011221164809.E7173-100000@beacon.synthcom.com> References: <20011221164809.E7173-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi all! Just wanted to wish everybody a Merry Christmas/Happy Holidays and a happy dynarecing new year! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 25 04:09:26 2001 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id fBPC94T39324 for dynarec-outgoing; Tue, 25 Dec 2001 04:09:04 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Merry Christmas guys! From: "M.I.K.e" Message-ID: <000395f02726ef88_mailit@pop3.dynarec.com> References: <20011221164809.E7173-100000@beacon.synthcom.com> <343319833.20011224133008@dynarec.com> Date: Tue, 25 Dec 2001 13:33:31 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Just wanted to wish everybody a Merry Christmas/Happy Holidays I want to second that, and since my niece arrived today there will be a whole lot more action than there would have been without her. >and a happy dynarecing new year! Make that a productive dynarecing new year ;-) >Neil. -- M.I.K.e Laetrile is the pits --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jan 8 10:41:28 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g08IeeF66203 for dynarec-outgoing; Tue, 8 Jan 2002 10:40:40 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Better late than never... From: "M.I.K.e" Message-ID: <0003970f3d3aa3a6_mailit@pop3.dynarec.com> Date: Tue, 08 Jan 2002 20:03:57 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com First of all a Happy New Year to you all! And secondly, I've updated the Dynarec.com site a bit... -- M.I.K.e Life is a yo-yo, and mankind ties knots in the string. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Feb 3 11:21:33 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g13JKf117571 for dynarec-outgoing; Sun, 3 Feb 2002 11:20:41 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 3 Feb 02 14:29:19 -0500 Message-Id: <3.0.5.32.20020203112222.007b2540@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 03 Feb 2002 11:22:22 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: OT: Optimization question Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, First of all, I wish everyone a Happy New Year, even though it would usually be considered a bit late for that ;) I hope everyone's doing well. I figured I'd break the silence by posting a little optimization problem I'm having. I'm writing flat-shaded polygon drawing code, but GCC's compiled code is noticably outperforming my assembly code on a 500MHz machine. Yet, my assembly code looks to be more optimal. So far, I've only converted the edge scanning routine into assembly. The biggest performance gains will come from converting the actual horizontal line drawing code into assembly. However, seeing as how GCC is killing my assembly version of ScanEdge(), I wanted to know if anyone could point out what the bottleneck could be. If anything, it's probably something to do with branching... My code (NASM format): ; ; void ScanEdge(INT32 x1, INT32 y1, INT32 x2, INT32 y2, INT32 left_edge, ; SPAN *span_list); ; ; Polygon edges are scanned and written to the span list which will be used ; to render them. The left_edge parameter must be 1 (not simply non-zero) or ; 0 only. ; times ($$-$) & 3 nop global _ScanEdge _ScanEdge: push ebx push ecx push edx mov ecx, [esp+28] ; Y2 mov edx, [esp+20] ; Y1 mov eax, [esp+24] ; X2 mov ebx, [esp+16] ; X1 cmp ecx, edx ; is Y2 greater than Y1? jg short .noswap ; yes, this is what we wanted, so don't swap xchg ecx, edx ; swap vertices xchg eax, ebx .noswap: sub ecx, edx ; DeltaY = Y2 - Y1 jz short .quit ; perfectly horizontal edge? do nothing sub eax, ebx ; DeltaX = X2 - X1 jns short .noabs ; if positive, we can go on neg eax ; otherwise, make it a positive absolute value .noabs: xor edx, edx ; prepare to do a division, EDX:EAX / ECX shl eax, byte 16 ; we want a 16.16 fixed-point result div ecx ; result in EAX, remainder in EDX (ignored) cmp ebx, [esp+24] ; is X1 greater than X2? -- mov edx, [esp+32] ; sneak this in: left edge if 1, right edge if ; 0. remember, mov does not affect flags! jl short .noneg ; -- no, gradient is okay neg eax ; otherwise, make gradient negative .noneg: shl edx, byte 2 ; multiply left_edge by 4 for index into span list ; element shl ebx, byte 16 ; make X1 16.16 so we can add 16.16 gradient to it add edx, [esp+36] ; either xstart or xend of first span list element shr ecx, byte 1 ; divide by 2, to handle 2 lines per iteration jnc short .loop ; no odd single line to process, go on! mov [edx], ebx add edx, byte 8 add ebx, eax test ecx, ecx jz short .quit ; nothing more to process, there was only 1 line times ($$-$) & 3 nop ; let's align this critical inner loop! .loop: mov [edx], ebx ; store X coordinate in span list add ebx, eax mov [edx+8], ebx add ebx, eax ; X coordinate + gradient = next X add edx, byte 16 ; next span list element dec ecx ; loop jnz short .loop .quit: pop edx pop ecx pop ebx ret Note the main scanning loop is unrolled to handle 2 lines per iteration. There doesn't appear to be much of a difference between the rolled-up and unrolled version of the code, but I think the unrolled version is slightly faster, especially in my test code which draws fairly large polygons. Here's GCC's code (AS format): __ScanEdge: subl $28,%esp pushl %ebp pushl %edi pushl %esi pushl %ebx movl 48(%esp),%ecx movl 52(%esp),%esi movl 56(%esp),%edi movl 60(%esp),%eax movl 68(%esp),%ebx cmpl %eax,%esi jle L3 movl %esi,%ebp movl %eax,%esi movl %ebp,%eax movl %ecx,%ebp movl %edi,%ecx movl %ebp,%edi L3: movl %edi,%ebp subl %ecx,%ebp jns L4 negl %ebp L4: subl %esi,%eax movl %eax,28(%esp) je L2 sall $16,%ebp movl %ebp,%eax xorl %edx,%edx divl 28(%esp) movl %eax,%ebp cmpl %ecx,%edi jge L6 negl %ebp L6: sall $16,%ecx cmpl $0,64(%esp) je L7 subl $1,28(%esp) jc L2 .p2align 4,,7 L10: movl %ecx,4(%ebx) addl $8,%ebx addl %ebp,%ecx subl $1,28(%esp) jnc L10 jmp L2 .p2align 4,,7 L7: subl $1,28(%esp) jc L2 .p2align 4,,7 L15: movl %ecx,(%ebx) addl $8,%ebx addl %ebp,%ecx subl $1,28(%esp) jnc L15 L2: popl %ebx popl %esi popl %edi popl %ebp addl $28,%esp ret The C code is: void ScanEdge(INT32 x1, INT32 y1, INT32 x2, INT32 y2, INT32 left_edge, SPAN *span_list) { UINT32 dx, dy; INT32 grad; // 16.16 fixed point /* * Sort the coordinates so that Y1 is less than Y2 */ if (y1 > y2) { dx = y1; // use dx as temp variable since we aren't using it y1 = y2; y2 = dx; dx = x1; x1 = x2; x2 = dx; } /* * Calculate the X and Y deltas and the gradient */ dx = abs(x2 - x1); dy = y2 - y1; if (!dy) return; grad = (dx << 16) / dy; if (x2 < x1) // X will be going right-to-left grad = -grad; /* * Scan the edge! */ x1 <<= 16; if (left_edge) { while (dy--) { (span_list)->xstart = x1; (span_list)++; x1 += grad; } } else { while (dy--) { (span_list)->xend = x1; (span_list)++; x1 += grad; } } } I thought I had done a pretty good job with register pairing compared to GCC's output, but apparently, something is much, much faster in GCC's version. One thing I should be able to optimize out is that unnecessary abs(x2 - x1)... I just noticed that. Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Feb 3 11:41:02 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g13Jf1117597 for dynarec-outgoing; Sun, 3 Feb 2002 11:41:01 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f X-WM-Posted-At: MailAndNews.com; Sun, 3 Feb 02 14:49:43 -0500 Message-Id: <3.0.5.32.20020203114327.007b3b60@mailandnews.com> X-Sender: trzy@mailandnews.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 03 Feb 2002 11:43:27 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: OT: Optimization question In-Reply-To: <3.0.5.32.20020203112222.007b2540@mailandnews.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >However, seeing as how GCC is killing my Oops! Forget about this! I'm just a moron ;) I had 2 makefiles, one for the assembly, and one for the non-assembly version, and the assembly version was not using GCC's optimization flags for the rest of the C code, but the non-assembly version was using -O4. Anyway, my code apparently is faster, and is going to get even more fast when I convert the rest of the polygon code to assembly! I also eliminated that absolute value and (x2 < x1) comparison. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 7 05:15:22 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g17DEd424013 for dynarec-outgoing; Thu, 7 Feb 2002 05:14:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00b101c1afdc$ac010b20$2900a8c0@burp> From: "Tom Browne" To: Subject: DYNAREC: Intel Linux compiler free for non-commerical use... Date: Thu, 7 Feb 2002 13:38:04 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, Just thought I'd mention this in case it wasn't well known... http://developer.intel.com/software/products/eval/ I did register for the beta, but never got around to trying it... they had an odd protection system based on MAC addresses, which was bugger all use for a machine with no network card! Shame that I need it for commerical use, so I'll have to swallow the $500 price tag if I want to use it in the product... :( - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Feb 14 10:13:47 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g1EID7K38636 for dynarec-outgoing; Thu, 14 Feb 2002 10:13:07 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 14 Feb 2002 10:19:40 -0800 (PST) From: Neil Bradley To: , , , , , , , , , , Subject: DYNAREC: IP Address changes Message-ID: <20020214100746.X5036-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I've just secured a better deal with our current ISP (to go to unlimited rather than metered service), but it entails having our IP addresses change. Here's what it means to various individuals: To dialup and wireless users: Effectively no change. Downtime will most likely be in the range of 10-15 minutes while I reconfigure/reboot the server to a new range of addresses. It will require calling back in or reconnecting depending upon if you're wireless or dialup. To remote users via telnet or web: There will be a (roughly) 24 hour period of time where the old synthcom.com address won't resolve, resulting in no response/delayed emails. It takes a while for the name/IP association to make its way through the internet. To FTP consumers (Nord Modular list): This means archive.synthcom.com won't respond for about 24 hours, perhaps a bit longer if NWLink doesn't set their authoritative domains up properly (which I'm suspecting they won't). If this happens, I'll post the new server's IP address. I'll give everyone a 2 day heads up, and I can guarantee you it won't be done on a Friday like it was last time... -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Feb 20 11:43:58 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g1KJhTw51089 for dynarec-outgoing; Wed, 20 Feb 2002 11:43:29 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: OT: Optimization question From: "M.I.K.e" Message-ID: <00039a7117ad3230_mailit@pop3.dynarec.com> References: <3.0.5.32.20020203112222.007b2540@mailandnews.com> Date: Wed, 20 Feb 2002 21:04:09 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >First of all, I wish everyone a Happy New Year, even though it would >usually be considered a bit late for that ;) I hope everyone's doing well. Thanks! I already put my Happy New Year wish on the website some time ago ;-) Talking of the website, I was quite shocked to notice that I always forgot to add you to the People section, an error which is corrected now. You know that your page seems to be the most referenced one on the whole server (at least according to my searches with Google)? ;-) >Bart -- M.I.K.e Alone, adj.: In bad company. -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Feb 26 10:05:02 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g1QI4Qs63407 for dynarec-outgoing; Tue, 26 Feb 2002 10:04:26 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 26 Feb 2002 19:09:34 +0100 (CET) From: Gwenole Beauchesne X-X-Sender: To: Subject: DYNAREC: [FYI] New (?) Binary Translation page Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Some interesting links (Deco, the M$ crap, etc.). BTW, on the UQBT site, I saw that source code may be released soon. However, scrolling down, I realized that last modification date was something far away in 2001. Bye, Gwenole. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Feb 26 10:30:32 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g1QIUVW63441 for dynarec-outgoing; Tue, 26 Feb 2002 10:30:31 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001101c1bef4$21604720$4877393e@hal9000w2k> From: "Victor Moya del Barrio" To: References: Subject: Re: DYNAREC: [FYI] New (?) Binary Translation page Date: Tue, 26 Feb 2002 19:33:47 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > Some interesting links (Deco, the M$ crap, etc.). > I will take a look. > BTW, on the UQBT site, I saw that source code may be released soon. > However, scrolling down, I realized that last modification date was > something far away in 2001. > I also saw that update a week or so ago. As a Dixie team member has contacts with Cristina Cifuentes (the UQBT team chief) I asked him. It seems it will be actually released but they are 'cleaning' the code and writting documentation. In fact Dixie source code will be available soon too (as there is no more money and the only two working with it are quitting this year, one will finish his final university project and I will be starting real PhD work). We are also working in the documentation, some cleaning, and other crap. I think in a month or two it will be all closed (early if I get really pissed of Dixie ;). If the situation in UQBT is similar (no people working on it) and from what my mate said it will take a bit more for them to release it. Well, in any case I think no one will be interested in Dixie ... and if it was it would be easier for the dynarec people to ask me directly ;). Next thing to do (while other members do some documents) is to try to optimize the more slower Virtual Machine even implemented :P (aka Dixie VM or DVM). BTW, last friday Sanjay Patel did a presentation about REplay a hardware dynamic optimizer (HP Dynamo in hardware) here in my uni. It was interesting. For example the main idea of assertion instructions that are used to eliminate branches and build very large basic blocks that can be a lot of more optimized than the original basic blocks. It is strange I didn't know about that research project. http://www.crhc.uiuc.edu/ACS/ Umm ... not that I have or I will have more free time sooner or even anymore. But is there still interest about DR68K (or even with another proc. work around the same idea) in the group?. > Bye, > Gwenole. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Mar 8 12:50:37 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g28KnhZ82721 for dynarec-outgoing; Fri, 8 Mar 2002 12:49:43 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020308124846.0079a570@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 08 Mar 2002 12:48:46 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Register allocation Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, First of all, I'd like to mention that I'm still interested in DR68K (Victor asked about this a while ago, but I was unable to respond.) Second, although I'm busy with some other stuff, I'm planning on doing an SH-2 dynarec just to get more familiar with the implementation behind this sort of emulator. I've actually already started on it (I'm planning on using a made-up virtual machine to test it out) but no real meaningful code has been written (the general structure of the emulator is taking shape, though.) I think the SH-2 is an ideal chip to start with because it's relatively simple (it does have a good number of addressing modes, however, but they're hard-wired to certain instructions) with only a single flag (a general T flag) to keep track of. I'm planning on having both an X86 target and an Alpha target (hopefully I'll be able to get a hold of a hard drive and CD-ROM for my DEC Multia so I can start messing around with it.) Since the Alpha has 32 general purpose registers I figure it would be feasible to statically map the SH-2's 16 32-bit general purpose registers into 16 of the Alpha's registers. But the X86 is trickier because there are only 7 general registers available for use and in practice, probably 2-4 will be available for dynamic register allocation. What would be a good way to address this issue? I've thought a little bit about it today and have decided that only the general purpose registers, R0-R15 (maybe not even R15 -- it's the stack pointer), would be allowed to be mapped into X86 registers; the rest (GBR [used primarily in some address modes], VBR, MACL, MACH, etc.) would remain in RAM at all times. Mapping of R0-R15 would be handled like this: For each basic block, a register allocation function scans through all the SH-2 instructions in the block. It counts up how often each register is used within the block along with some statistics for each register (average # of instructions which do not use the register in between uses of it, maximum, minimum.) Once the statistics have been gathered, a decision is made on how to map the registers. How often a given register is used is taken into account along with the statistics I mentioned (the statistics are intended to roughly measure the likelihood that a register is used consecutively.) To be honest, I haven't even taken a look at real-world SH-2 code. This project is really just for fun and I'm not working on any SH-2-related systems. But I think that if it works well enough, there will be some demand for it to be used in Saturn/Titan and 32X emulators (AFAIK, the current Saturn emulators use interpretive cores and I know for sure none of the 32X emulators use a dynarec core) so I'll definitely be taking a look at 32X games and the Saturn BIOS. I do already know that the SH-2 cannot load immediate values greater than 8 bits so in order to load things like 32-bit addresses, compilers produce code which fetches the data using a PC-relative address mode (the data is located close to the instruction in question.) I think a neat optimization would be to have users specify which regions are ROM so that these sort of references can be resolved while recompiling without going through memory handlers. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Mar 8 12:55:16 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g28KtFq82747 for dynarec-outgoing; Fri, 8 Mar 2002 12:55:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 8 Mar 2002 13:00:16 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Register allocation In-Reply-To: <3.0.5.32.20020308124846.0079a570@dynarec.com> Message-ID: <20020308125715.I29710-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > But the X86 is trickier because there are only 7 general registers > available for use and in practice, probably 2-4 will be available for > dynamic register allocation. > What would be a good way to address this issue? Dynamic register allocation is pointless in this regard. Pick 2-4 of the most commonly used registers in your source layer and stick them in x86. The overhead of swapping registers around is much, much higher than just putting the most commonly accessed registers in the x86. The trick is figuring out what "most commonly accessed" is, and that can only be figured by executing the code to figure out execution paths. > Mapping of R0-R15 would be handled like this: For each basic block, a > register allocation function scans through all the SH-2 instructions in the > block. It counts up how often each register is used within the block along > with some statistics for each register (average # of instructions which do > not use the register in between uses of it, maximum, minimum.) > > Once the statistics have been gathered, a decision is made on how to map > the registers. How often a given register is used is taken into account > along with the statistics I mentioned (the statistics are intended to > roughly measure the likelihood that a register is used consecutively.) It's a nice idea, but your results will be skewed unless you execute the code. I found this out when doing some 34010 recompiler dry runs. Just because the register appears more often in the code doesn't mean it's actually used more often in the execution of the code. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Mar 8 17:31:51 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g291VOS82968 for dynarec-outgoing; Fri, 8 Mar 2002 17:31:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020308173025.007b9100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 08 Mar 2002 17:30:25 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Register allocation In-Reply-To: <20020308125715.I29710-100000@beacon.synthcom.com> References: <3.0.5.32.20020308124846.0079a570@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Dynamic register allocation is pointless in this regard. Pick 2-4 of the >most commonly used registers in your source layer and stick them in x86. >The overhead of swapping registers around is much, much higher than just >putting the most commonly accessed registers in the x86. How much overhead would the swapping generate? The way I was thinking of doing things would have virtually all of the swapping overhead (pulling registers out of the context and putting them into X86 registers) happen at recompile time. It would only occur once. The registers still have to be read in and written back to the context anyway once the core's Run() function exits. >The trick is figuring out what "most commonly accessed" is, and that can >only be figured by executing the code to figure out execution paths. Basic blocks end with branch instructions, right? Wouldn't it be possible to determine what's being used most because it's known that the block is going to carry on execution until it hits the branch? I came up with a couple more questions: When reading in the SH-2 instructions I'm going to have a hard time decoding them in a way that's reasonably fast and doesn't take up too much memory. I can only see it happening in one of 2 ways: 1. A list of SH-2 instructions (hand coded) contains a mask to AND an instruction with and a result which identifies the instruction; the code would then have to scan through this list every time. 2. A 65536-element table could be constructed where the index found in each of the elements would point back to a table with instruction information. The latter would be quickest, and I _might_ be able to get it down to 1 byte per element in the table (I think the SH-2 has less than 256 instructions, I'll have to check to be certain) but that's still a hefty chunk of data at 64K! And second, I didn't get how DRMZ80 handles jumps into the middle of already compiled blocks. Does it just recompile it again (starting from the destination of the branch) and keep both blocks around? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Mar 9 00:05:45 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g2985UD83317 for dynarec-outgoing; Sat, 9 Mar 2002 00:05:30 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c1c741$876c7c00$4877393e@hal9000w2k> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20020308124846.0079a570@dynarec.com> <3.0.5.32.20020308173025.007b9100@dynarec.com> Subject: Re: DYNAREC: Register allocation Date: Sat, 9 Mar 2002 09:07:59 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "Bart" To: Sent: Saturday, March 09, 2002 2:30 AM Subject: Re: DYNAREC: Register allocation > > How much overhead would the swapping generate? The way I was thinking of > doing things would have virtually all of the swapping overhead (pulling > registers out of the context and putting them into X86 registers) happen at > recompile time. It would only occur once. The registers still have to be > read in and written back to the context anyway once the core's Run() > function exits. > The problem with register allocation in x86 is that there are too few registers to allocate. The overhead of register allocation is that each time you end a basic block you must store all allocated register in memory, and load them again at the start of the next basic block (well, or the translation block), because it is not possible always to know how was the register allocation in the old block and in the new. If the blocks are small lot of the generated instructions are load and stores to the emulared register file. With x86 the problem also is that you have few registers, that means that even in a large block you will be accessing directly the emulated register file in memory. Or you will have to be swapping the emulated register stored in each x86 register (so loads and stores again). As Neil suggest is easier to statically allocate the most used registers in x86 registers (for example r0, r1 and r2) and access the other through memory. The x86 architecture works well operating with memory operands. Implementing register allocation per block, adds programming effort, time to the translation and the benefit seems small or none. > Basic blocks end with branch instructions, right? Wouldn't it be possible > to determine what's being used most because it's known that the block is > going to carry on execution until it hits the branch? > > > I came up with a couple more questions: > > When reading in the SH-2 instructions I'm going to have a hard time > decoding them in a way that's reasonably fast and doesn't take up too much > memory. I can only see it happening in one of 2 ways: > > 1. A list of SH-2 instructions (hand coded) contains a mask to AND an > instruction with and a result which identifies the instruction; the code > would then have to scan through this list every time. > > 2. A 65536-element table could be constructed where the index found in each > of the elements would point back to a table with instruction information. > In a dynarec decoding time is not as critical as in interpreter because it is only performed once, when the instruction is first found and translated. For DR68K Neil suggested a scan through a list of masks. > The latter would be quickest, and I _might_ be able to get it down to 1 > byte per element in the table (I think the SH-2 has less than 256 > instructions, I'll have to check to be certain) but that's still a hefty > chunk of data at 64K! > 64K is a lot of memory? Are you still using you're Pentium and DOS? ;) > > And second, I didn't get how DRMZ80 handles jumps into the middle of > already compiled blocks. Does it just recompile it again (starting from the > destination of the branch) and keep both blocks around? DRMZ80 doesn't translates in a block basis, it translated instruction by instruction. That's because of timing and to avoid recompiling. There is a table (how do we named it? Transmap?) with a pointer to the translation of each instruction. The structure was something like this: emulate instruction at PC add cycles to counter check time if above slice return emulate instruction at PC + 1 (it is jump with offset 0x1000) change PC check time and so access transmap[0x1000] if translated jump to the address if not translated return > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Mar 9 04:44:52 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g29CigP86271 for dynarec-outgoing; Sat, 9 Mar 2002 04:44:42 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Register allocation From: "M.I.K.e" Message-ID: <00039bc12f8157fd_mailit@pop3.dynarec.com> References: <3.0.5.32.20020308124846.0079a570@dynarec.com> Date: Sat, 09 Mar 2002 14:02:38 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >First of all, I'd like to mention that I'm still interested in DR68K Me too, although I have some other stuff to do as well... >Second, although I'm busy with some other stuff, I'm planning on doing an >SH-2 dynarec just to get more familiar with the implementation behind this >sort of emulator. I've actually already started on it (I'm planning on >using a made-up virtual machine to test it out) but no real meaningful code >has been written (the general structure of the emulator is taking shape, >though.) You should emphasize that you don't want to make a Saturn emulator ;-) >I think the SH-2 is an ideal chip to start with because it's relatively >simple (it does have a good number of addressing modes, however, but >they're hard-wired to certain instructions) with only a single flag (a >general T flag) to keep track of. That's absolutely right. I think I would have done more work on my dynarec on my RiscPC if I didn't pick MIPS but SH-2 instead. I guess I didn't know SuperH back then... >I'm planning on having both an X86 target and an Alpha target (hopefully >I'll be able to get a hold of a hard drive and CD-ROM for my DEC Multia so >I can start messing around with it.) Since the Alpha has 32 general purpose >registers I figure it would be feasible to statically map the SH-2's 16 >32-bit general purpose registers into 16 of the Alpha's registers. Sure, totally static register allocation should be fine on the Alpha. Talking of Alpha, here is an episode of how to find out that your new boss is a geek: As some of you might already know, I work for a different firm now. Recently my boss mentioned that some firm is interested in our old AlphaStation but he needed to get a replacement controller of some kind and thought more of getting some "spare parts" from eBay. I though, ok some people talk lots if the day is long; until next day... When I came into the hallway of the firm (it's a rather small firm) it was crowded with 6 AlphaServer 1000A 15 AlphaStation 500 That day was a bit like Christmas and Easter combined, with half of the firm watching the machines boot ;-) Since my boss only wants to sell two machines and probably doesn't know what to do with the rest I hope I can get one machine for a decent price. We'll see... >But the X86 is trickier because there are only 7 general registers >available for use and in practice, probably 2-4 will be available for >dynamic register allocation. >What would be a good way to address this issue? I'm still a big fan of dynamic register allocation, but NB is right that static register allocation has certain advantages, especially with the IA-32: * with so few registers you'll be swapping all the time, which very likely leads to a worse performance that simply holding the most often used registers statically allocated * you just need one prologue and one epilogue for all basic blocks; I think NB called that "glue code" because it glues the generated code to the emulator * you can leave a basic block after every compiled instruction, since the glue code will always store the correct registers; this leads to a much more exact timing, unlike dynamic register allocation where you have to wait till the end of the block (or some in-block exit point you created) is reached. >I've thought a little bit about it today and have decided that only the >general purpose registers, R0-R15 (maybe not even R15 -- it's the stack >pointer), would be allowed to be mapped into X86 registers; the rest (GBR >[used primarily in some address modes], VBR, MACL, MACH, etc.) would remain >in RAM at all times. You probably should analyze some real code before deciding how to map the registers. I'm not totally sure, but I think that David found out that ARM (which also has 16 registers like SuperH) uses the stack pointer a lot, and the SuperH Procedure Register and R0 (which is used implicitly in some addressing modes, if I'm not mistaken) might be used heavily as well. >Mapping of R0-R15 would be handled like this: For each basic block, a >register allocation function scans through all the SH-2 instructions in the >block. It counts up how often each register is used within the block along >with some statistics for each register (average # of instructions which do >not use the register in between uses of it, maximum, minimum.) >Once the statistics have been gathered, a decision is made on how to map >the registers. How often a given register is used is taken into account >along with the statistics I mentioned (the statistics are intended to >roughly measure the likelihood that a register is used consecutively.) So you actually want to do the ideal mapping for a whole block... >To be honest, I haven't even taken a look at real-world SH-2 code. This >project is really just for fun and I'm not working on any SH-2-related >systems. But I think that if it works well enough, there will be some >demand for it to be used in Saturn/Titan and 32X emulators (AFAIK, the >current Saturn emulators use interpretive cores and I know for sure none of >the 32X emulators use a dynarec core) so I'll definitely be taking a look >at 32X games and the Saturn BIOS. I think the discontinued Titan uses some primitive dynarec, but I doubt that any of the other emulators uses some sophisticated dynarec if any. If your core should be eventually used in such real-world systems you probably should really use static registers allocation to be able to leave a block at any point, because the dual-SH-2 might need an exact timing. >I do already know that the SH-2 cannot load immediate values greater than 8 >bits That's the main reason why I think that it would have been easier to do a dynarec on ARM, because ARM also has 8 bit immediates that are rotated in the register. That way the immediate encoding in the generated code would have been very easy compared to translating MIPS, and I might have done more work on my dynarec... >so in order to load things like 32-bit addresses, compilers produce >code which fetches the data using a PC-relative address mode (the data is >located close to the instruction in question.) I think a neat optimization >would be to have users specify which regions are ROM so that these sort of >references can be resolved while recompiling without going through memory >handlers. It would certainly help to have some way to "inline" these constants. Anyway, if you need some help, SH-2 is one of my favourites as well ;-) >Bart -- M.I.K.e Any sufficiently advanced technology is indistinguishable from a rigged demo. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Mar 9 10:16:46 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g29IGaL86535 for dynarec-outgoing; Sat, 9 Mar 2002 10:16:36 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 9 Mar 2002 10:21:41 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Register allocation In-Reply-To: <3.0.5.32.20020308173025.007b9100@dynarec.com> Message-ID: <20020309101701.O31534-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >most commonly used registers in your source layer and stick them in x86. > >The overhead of swapping registers around is much, much higher than just > >putting the most commonly accessed registers in the x86. > How much overhead would the swapping generate? The way I was thinking of > doing things would have virtually all of the swapping overhead (pulling > registers out of the context and putting them into X86 registers) happen at > recompile time. It would only occur once. The registers still have to be > read in and written back to the context anyway once the core's Run() > function exits. Let's first of all root out on what "register allocation" is. When you said "register allocation", I assumed you meant that a basic block would use a run of registers and swap them as needed. This makes it difficult because each basic block will have different sets of registers used (based on how that basic block uses the registers) and it makes interblock register swapping a major hassle. This is a major headache and is slower than the approach below. When I say "register allocation", I mean doing a one time analysis (such as using D0/D1 in ebx/ecx for example) and having it propogate to the entire set of basic blocks. > >The trick is figuring out what "most commonly accessed" is, and that can > >only be figured by executing the code to figure out execution paths. > Basic blocks end with branch instructions, right? Wouldn't it be possible > to determine what's being used most because it's known that the block is > going to carry on execution until it hits the branch? You don't know how many times it's going to get executed in the real world, though. It may be just a couple of times or it may be a million. You just don't know! > When reading in the SH-2 instructions I'm going to have a hard time > decoding them in a way that's reasonably fast and doesn't take up too much > memory. I can only see it happening in one of 2 ways: > > 1. A list of SH-2 instructions (hand coded) contains a mask to AND an > instruction with and a result which identifies the instruction; the code > would then have to scan through this list every time. > > 2. A 65536-element table could be constructed where the index found in each > of the elements would point back to a table with instruction information. > > The latter would be quickest, and I _might_ be able to get it down to 1 > byte per element in the table (I think the SH-2 has less than 256 > instructions, I'll have to check to be certain) but that's still a hefty > chunk of data at 64K! What is the size of the instruction section of each opcode? Just 8 bits or so? > And second, I didn't get how DRMZ80 handles jumps into the middle of > already compiled blocks. Does it just recompile it again (starting from the > destination of the branch) and keep both blocks around? It keeps a transmap of all emulated addresses so it can translate emulated addresses to physical, recompiled addresses. -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Mar 9 11:58:24 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g29JwFV86638 for dynarec-outgoing; Sat, 9 Mar 2002 11:58:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020309115711.007bc100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 09 Mar 2002 11:57:11 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Register allocation In-Reply-To: <000b01c1c741$876c7c00$4877393e@hal9000w2k> References: <3.0.5.32.20020308124846.0079a570@dynarec.com> <3.0.5.32.20020308173025.007b9100@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >DRMZ80 doesn't translates in a block basis, it translated instruction by >instruction. That's because of timing and to avoid recompiling. There >is a table (how do we named it? Transmap?) with a pointer to the >translation of each instruction. I see... I don't know if this would work out well in an SH-2 emulator. 32X games, for example, have several megabytes of ROM and a good deal of this is code. The Saturn has about 1MB of RAM available for the SH-2 (that includes data) and it has to read code in from the CD a lot. >The structure was something like this: > >emulate instruction at PC >add cycles to counter >check time >if above slice return >emulate instruction at PC + 1 >(it is jump with offset 0x1000) >change PC >check time and so >access transmap[0x1000] >if translated >jump to the address >if not translated return I don't know if I want to keep track of cycle counts on a per-instruction basis. The 32X and Saturn might be sensitive to timing, so I might add the option, but I'd like to be able to do it in basic blocks with timing being checked at the end of the block (or after X instructions.) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Mar 9 12:05:00 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g29K4tV86657 for dynarec-outgoing; Sat, 9 Mar 2002 12:04:55 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020309120350.007bf210@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 09 Mar 2002 12:03:50 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Register allocation In-Reply-To: <00039bc12f8157fd_mailit@pop3.dynarec.com> References: <3.0.5.32.20020308124846.0079a570@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You should emphasize that you don't want to make a Saturn emulator ;-) Yeah, I don't want to deal with that or the 32X. I'm just not interested enough and it would take me way off course. Those systems are insane! :) >Sure, totally static register allocation should be fine on the Alpha. And PowerPC. I was thinking of maybe one day doing a PowerPC target if I ever finish this thing, because it would be useful for Mac ports of Saturn and 32X emulators. >Since my boss only wants to sell two machines and probably doesn't know what >to do with the rest I hope I can get one machine for a decent price. We'll >see... Cool! How fast are they? The Multia I have is only 166MHz, which makes it about equivalent to a 486. >* you can leave a basic block after every compiled instruction, since the >glue code will always store the correct registers; this leads to a much more >exact timing, unlike dynamic register allocation where you have to wait till >the end of the block (or some in-block exit point you created) is reached. I was thinking of having an option to determine whether exact (instruction-based) or approximate (calculated at certain points in the block) timing is used. >You probably should analyze some real code before deciding how to map the >registers. >I'm not totally sure, but I think that David found out that ARM (which also >has 16 registers like SuperH) uses the stack pointer a lot, and the SuperH >Procedure Register and R0 (which is used implicitly in some addressing modes, >if I'm not mistaken) might be used heavily as well. I've asked the author of Satourne and the 32X emulator authors about this, hopefully they'll come through. >So you actually want to do the ideal mapping for a whole block... That's what I was thinking. >I think the discontinued Titan uses some primitive dynarec, but I doubt that By "Titan" I meant the Saturn-based arcade hardware (also called STV?)... I've looked at Titan's dynarec but I don't remember it being functional. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Mar 9 12:14:35 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g29KEXX86675 for dynarec-outgoing; Sat, 9 Mar 2002 12:14:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020309121330.007bb2f0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 09 Mar 2002 12:13:30 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Register allocation In-Reply-To: <20020309101701.O31534-100000@beacon.synthcom.com> References: <3.0.5.32.20020308173025.007b9100@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What is the size of the instruction section of each opcode? Just 8 bits or >so? It varies from 4 bits to the full 16 bits. >It keeps a transmap of all emulated addresses so it can translate emulated >addresses to physical, recompiled addresses. I was thinking of just using blocks to get rid of per-instruction timing and PC management, but perhaps with an option for accurate timing, in which case a transmap sounds like it would work well, because I could then pretty much get rid of the whole "block" idea. But with blocks, I don't think I could properly jump into the middle of one because if I calculate the timing at the end of the block, jumping into the middle of one would take up as many virtual cycles as if the entire block were executed. In that case, wouldn't recompiling the target address work? Also, I recall the plan for DR68K was to never delete blocks. But with systems like the Saturn, where code is brought in off of the CD, I think I'd have to have some sort of a way to invalidate blocks and free their memory. I wonder how PSX emulators handle this? If a handler was called for RAM access, I suppose the user could invalidate memory as it was modified and have the dynarec free those blocks -- that would properly handle self-modifying code as well. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Mar 10 02:52:33 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g2AAq9R87455 for dynarec-outgoing; Sun, 10 Mar 2002 02:52:09 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Register allocation From: "M.I.K.e" Message-ID: <00039bd374fd3b55_mailit@pop3.dynarec.com> References: <3.0.5.32.20020308124846.0079a570@dynarec.com> <3.0.5.32.20020309120350.007bf210@dynarec.com> Date: Sun, 10 Mar 2002 11:50:33 +0100 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>You should emphasize that you don't want to make a Saturn emulator ;-) >Yeah, I don't want to deal with that or the 32X. I'm just not interested >enough and it would take me way off course. Those systems are insane! :) Not as insane as a PS2, but insane enough! [Alphas] >Cool! How fast are they? The Multia I have is only 166MHz, which makes it >about equivalent to a 486. I think the Servers have 300MHz and the Stations 333MHz. I'm not sure about the processor, since these machines are not in my book "Alpha Implementations and Architecture". According to some website I found, the AlphaServer 1000A should have a 21164 (although the Server 1000 has a 21064) and the AlphaStation 500 probably has a 21064A. Both machines have a single processor, if I'm not mistaken. >I was thinking of having an option to determine whether exact >(instruction-based) or approximate (calculated at certain points in the >block) timing is used. Good idea. The only difference would be only how the code is generated anyway. Generally I'd say that static register allocation is normally better combined with instruction-exact timing, since you'd need a separate epilogue for each exit point with dynamic register allocation. >I've asked the author of Satourne and the 32X emulator authors about this, >hopefully they'll come through. Good idea. >>I think the discontinued Titan uses some primitive dynarec, but I doubt that >By "Titan" I meant the Saturn-based arcade hardware (also called STV?)... I thought so that you meant a real machine, not the emulator, but I didn't exactly know which machine you were talking about. >I've looked at Titan's dynarec but I don't remember it being functional. I only took a very brief look at it... But with most dynarecs today, even if they are supposed to be finished their design is just awful... Another thing I thought of yesterday was how to handle code that might be executed by both of the dual SH-2. I don't know if this is really the case, but if there is the possibility this should be handled. Normally I think the registers in the register file would be accessed via direct addresses in the generated code, but if there are multimple processors of the same type it would be better to pass a pointer to the register file to the glue code and handle all register file accesses through an indirect register and an offset. That way one translation works for all processors and you don't have to keep track of which translation is for which processor. If you take a look at my (rather outdated [lazy me should do some more work there]) DRFAQ, you'll notice that I always thought of passing the "context" of the processor to the generated code, which is quite obviously due to me starting dynamic recompilation on RISC architectures where you don't have literal 32-bit addresses to access memory locations. For the IA-32 with fewer registers direct accesses to the emulated registers are normally better, but especially with multiple processors the "context" approach should be better, I think. >Bart -- M.I.K.e What this country needs is a dime that will buy a good five-cent bagel. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Mar 10 22:33:17 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g2B6X0188955 for dynarec-outgoing; Sun, 10 Mar 2002 22:33:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020310223145.007b9db0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 10 Mar 2002 22:31:45 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Register allocation In-Reply-To: <00039bd374fd3b55_mailit@pop3.dynarec.com> References: <3.0.5.32.20020308124846.0079a570@dynarec.com> <3.0.5.32.20020309120350.007bf210@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think the Servers have 300MHz and the Stations 333MHz. I'm not sure about >the processor, since these machines are not in my book "Alpha Implementations >and Architecture". According to some website I found, the AlphaServer 1000A >should have a 21164 (although the Server 1000 has a 21064) and the >AlphaStation 500 probably has a 21064A. Both machines have a single >processor, if I'm not mistaken. Cool! If you can get them at a reasonable price, they'd be fun to mess around with. It's too bad Compaq canned Alpha :( >Another thing I thought of yesterday was how to handle code that might be >executed by both of the dual SH-2. I don't know if this is really the case, >but if there is the possibility this should be handled. >Normally I think the registers in the register file would be accessed via >direct addresses in the generated code, but if there are multimple processors >of the same type it would be better to pass a pointer to the register file to >the glue code and handle all register file accesses through an indirect >register and an offset. That way one translation works for all processors and >you don't have to keep track of which translation is for which processor. That's an interesting idea... But I'm still not certain whether or not I should handle the register file this way -- after all, it's just for fun, and I don't know if I'd be able to do the research necessary to figure out how typical Saturn and 32X code works with the dual processors. If indeed both processors execute a lot of common code, it would be a nifty memory-saving optimization. Otherwise, you lose a register on an architecture which is already running low on registers. I think this idea would be excellent on Alpha/PowerPC/etc. because I believe both of those processors (well, the PowerPC at least) have simple displacement(Rn) addressing modes. Although R0-R15 could be cached in the register set (I hear GBR is frequently used as well, so that could be cached in as well), it could still be useful for the less commonly accessed registers: MACH, MACL, VBR, PR, SR, etc. BTW, speaking of register allocation, what do you think of storing registers in MMX or SSE/SSE2 registers? I remember trying something like this with Turbo68K (rather than saving certain data to temporary memory locations they were saved to MMX registers) but it turned out a bit slower for some reason. I haven't done any SSE/SSE2 coding but supposedly these are better SIMD implementations than MMX was. I think I'll have an option in the X86 target to generate code that uses these registers. I managed to get a hold of Quintesson (author of AGES) and although he says his SH-2 interpreter cannot be modified for register logging, he did mention that he was working on an SH-2 recompiler of his own. He plans on using dynamic register allocation (as I wanted to originally.) I think I've decided to support both methods in my dynarec. Not to doubt what you guys said about it, but I wanted to see the effects for myself. I think it should be fairly easy to support both static and dynamic allocation because the static allocation can work almost exactly like the dynamic allocation but without analyzing the code (it would have registers pre-picked.) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Mar 16 14:34:47 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g2GMYFH00254 for dynarec-outgoing; Sat, 16 Mar 2002 14:34:15 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 16 Mar 2002 14:36:19 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Re: dynarec.com Message-ID: <20020316143607.Q94512-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Sorry for the downtime, folks. We lost power a few days ago and I just spent the last hour troubleshooting dynarec.com. Turns out the backup battery for CMOS was sitting at around .35 volts (should be 3) and it would keep forgetting the settings. Anyway, all fixed now with a 128MB of RAM upgrade. Enjoy! On Thu, 14 Mar 2002, David Sharp wrote: > Neil, > > That's cool, thanks for letting me know. Serves me right for using something > hosted in your shed as my primary email account I guess... > > Cheers > Dave > > ----- Original Message ----- > From: "Neil Bradley" > To: "David Sharp" > Sent: Wednesday, March 13, 2002 6:11 PM > Subject: Re: dynarec.com > > > > > Just to let you know in case you didn't, dynarec.com seems to be down > atm. > > > > We had a power loss yesterday and I'm in San Fransisco and will be there > > until Friday. The machine probably just powered itself off and didn't turn > > itself back on (damned ACPI machines).. > > > > -->Neil > > > > -------------------------------------------------------------------------- > ----- > > Neil Bradley Whoever said "Money can't buy happiness" didn't > have > > Synthcom Systems, Inc. a lot of money. > > ICQ #29402898 > > > > > -->Neil ------------------------------------------------------------------------------- Neil Bradley Whoever said "Money can't buy happiness" didn't have Synthcom Systems, Inc. a lot of money. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Mar 19 22:07:49 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g2K5vOs05462 for dynarec-outgoing; Tue, 19 Mar 2002 21:57:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020319215016.007bbc90@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 19 Mar 2002 21:50:16 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Using SSE/SSE2 regs for register storage Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, Has anyone here had much experience with SSE and SSE2 programming? I was wondering if it would be feasible to use these registers to statically store the registers of the emulated CPU. I remember trying to use MMX in Turbo68K and the results were not beneficial. I was thinking of providing an option in my SH-2 dynarec to allow SSE/SSE2 registers to be used. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Mar 31 21:16:47 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g315Fe729930 for dynarec-outgoing; Sun, 31 Mar 2002 21:15:40 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020331210821.007bd6f0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 31 Mar 2002 21:08:21 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: [EBP+disp8] vs [Address32] Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I was wondering if anyone knew which address mode is faster on the X86: [ebp+disp8] or [address32]? I'm planning on handling multiple contexts as Mike suggested and I can actually do it either by changing the base address in EBP or using a 32-bit fixed address. Also, is there a place where I can get information on X86 timing? The Intel manuals don't seem to have this information. I imagine it varies quite a bit between processor types. Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Mar 31 21:19:19 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g315JIw29942 for dynarec-outgoing; Sun, 31 Mar 2002 21:19:18 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 31 Mar 2002 21:22:27 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: [EBP+disp8] vs [Address32] In-Reply-To: <3.0.5.32.20020331210821.007bd6f0@dynarec.com> Message-ID: <20020331212042.L66935-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I was wondering if anyone knew which address mode is faster on the X86: > [ebp+disp8] or [address32]? I'm planning on handling multiple contexts as > Mike suggested and I can actually do it either by changing the base address > in EBP or using a 32-bit fixed address. Simultaneously? Why aren't you just executing each CPU a bit and swapping the entire context ala rep movsd every so often instead? Frees up a register, and from what I've found on the 486 up, makes for a faster emulator. > Also, is there a place where I can get information on X86 timing? The Intel > manuals don't seem to have this information. I imagine it varies quite a > bit between processor types. They're present up through the 486. From the Pentium (P54C, not the early Pentium 60/66s) onward, no, you can't, because it's completely unpredictable with the parallel execution units. -->Neil ------------------------------------------------------------------------------- Neil Bradley chown -R us:us /*base* Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Mar 31 21:33:18 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g315XIw29963 for dynarec-outgoing; Sun, 31 Mar 2002 21:33:18 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020331212559.007bc450@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 31 Mar 2002 21:25:59 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: [EBP+disp8] vs [Address32] In-Reply-To: <20020331212042.L66935-100000@beacon.synthcom.com> References: <3.0.5.32.20020331210821.007bd6f0@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Simultaneously? Why aren't you just executing each CPU a bit and swapping >the entire context ala rep movsd every so often instead? Frees up a >register, and from what I've found on the 486 up, makes for a faster >emulator. I can eliminate context swapping entirely because the user passes the address of whichever context he wants to emulate to DRSH2 (DRSH2 doesn't maintain an internal context.) Basic blocks and the emitted Run() wrapper are all dependent on the context they're associated with (the contexts have pointers to all of these things which is how they are managed.) So I'm just not sure whether it's worth using 4 byte addresses or to sacrifice a register for accessing contexts. Currently, I've got 3 registers available to map SH-2 registers into and 3 for scratch work (I might be able to get away with just 2.) >They're present up through the 486. From the Pentium (P54C, not the early >Pentium 60/66s) onward, no, you can't, because it's completely >unpredictable with the parallel execution units. But isn't there a certain amount of clock cycles per instruction assuming certain conditions are true? BTW, I came up with (what I think is) a pretty neat way to have large basic blocks which can have jumps inside of them. So far it seems to be working out nicely (DRSH2 is only beginning to generate code, but from looking at how the source lists of instructions are fetched and layed out, it looks to be working.) A problem with my method might be that it can become extremely wasteful in terms of memory (if we exit in the middle of a block, we have to recompile an overlapping block, and this can happen repeatedly) but I've thought of a workaround for that (maintaining multiple entry points per block.) Anyway, if it doesn't turn out to be worthwhile, a #define DRSH2_NUM_BRANCHESPERBLOCK 1 will make it function normally :) I just thought it would be interesting to experiment with the idea. Here's a cut-and-paste of what I posted at the Retrogames emulator programming forum: Here's some pseudo assembly language code ("...code..." indicates a straight run of code): L1: ... code ... test some_value beq L3 L2: bne L1 ...code... L3 beq out_of_block ... code... jmp L2 I think the entire sequence can be made into 1 basic block. The main concerns are: A) timing, B) exiting the block whenever time expires, and C) re-entering the block. [A.] It is not sufficient to simply check timing on each branch, because we don't know exactly which instructions were executed before that branch was hit. For example, look at label L2. Do we calculate the time from L1 to L2? We can't because after L3 there's a jump to L2 and that's probably not going to take the same amount of time as L1 to L2. My idea is to support a limited amount of branch targets (I'll call them "labels" for now) within a block. This would be a constant determined at compile time (-DDRSH2_NUM_LABELSPERBLOCK=4). As instructions are read in, we check for conditional branches and maintain 2 arrays simultaneously: branch_target[NUM_LABELSPERBLOCK] and branch_location[NUM_LABELSPERBLOCK]. Whenever we come upon a branch instruction, we store its address in branch_location[] and its target in branch_target[]. We stop as soon as we hit an unconditional branch, an indirect branch (or RTS/RTE), a conditional branch that branches backwards beyond the start of the block, or when the number of allowed branches has been hit (so as not to overflow the array, check against DRSH2_NUM_LABELSPERBLOCK in the loop.) Note that conditional branches that go forward are still recorded, even if we don't know if they'll end up inside the block. Timing is done at checkpoints between 2 consecutive labels/branch instructions. So for the above code, here is how it would look with timing checkpoints: L1: ... code ... test some_value CHECKPOINT beq L3 CHECKPOINT L2: CHECKPOINT bne L1 ...code... CHECKPOINT L3 CHECKPOINT beq out_of_block ... code... CHECKPOINT jmp L2 If there had been 2 labels with no branch between them: L_A: ...code... L_B: ...code... The checkpoint would be inserted in front of L_B. The point is that checkpoints can occur between any 2 consecutive labels, branches, or between both (don't let the fact that the 2 arrays are separate confuse you, the data in them is compared to find consecutive sequences as if it was one big array.) It looks nasty, but that's because my example is pretty close to what a worst-case would be. Timing code really isn't that complex and some of the checkpoints might resolve to 0. [B.] Exiting the block whenever time expires: The checkpoints would simply quit the block when time has expired (or when the branch does not end up inside the block.) You'll notice that I allow conditional branches to go forwards, even if the destination is not within the block. When this is the case, if the branch falls through, we just keep going. If it turns out to be true and the branch has to be taken, we quit the block. No sweat. [C.] Re-entering the block: My current idea to handle this is just to not handle it all. If we quit at the first checkpoint because time has expired, we don't re-enter from that point because I think the overhead of keeping track of this stuff would be too great. Instead, we recompile a new block. This is easily the most wasteful (in terms of memory) part of my method, but I hope it will prove to work fast enough (speed is the main issue.) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Mar 31 21:40:18 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g315eDH29982 for dynarec-outgoing; Sun, 31 Mar 2002 21:40:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 31 Mar 2002 21:43:22 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: [EBP+disp8] vs [Address32] In-Reply-To: <3.0.5.32.20020331212559.007bc450@dynarec.com> Message-ID: <20020331213836.Q66935-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I can eliminate context swapping entirely because the user passes the > address of whichever context he wants to emulate to DRSH2 (DRSH2 doesn't > maintain an internal context.) I wouldn't do this. In practice, [address32] is faster than [ebp+dispanything] > >Pentium 60/66s) onward, no, you can't, because it's completely > >unpredictable with the parallel execution units. > But isn't there a certain amount of clock cycles per instruction assuming > certain conditions are true? Yes, all 4096 (or something like that) of them. ;-) Off the top of my head you have: * AGI (doesn't exist any longer AFAIK) * Cache fetch * Prior register usage * 16 Bit variant usage * Branch prediction * U-Pipe/V-Pipe availability * Instruction type and pairing in the U-Pipe/V-Pipe There are more... And the timing information isn't available specifically for this reason. If you're trying to map timing of SH2->x86 on a per instruction basis, I wish you luck in ever achieving it. ;-) > [A.] It is not sufficient to simply check timing on each branch, because we > don't know exactly which instructions were executed > before that branch was hit. That is true. Another alternative is to do it on every instruction and it winds up being perfect on each one. -->Neil ------------------------------------------------------------------------------- Neil Bradley chown -R us:us /*base* Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Mar 31 21:53:29 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g315rOd30003 for dynarec-outgoing; Sun, 31 Mar 2002 21:53:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020331214605.007bd480@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 31 Mar 2002 21:46:05 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: [EBP+disp8] vs [Address32] In-Reply-To: <20020331213836.Q66935-100000@beacon.synthcom.com> References: <3.0.5.32.20020331212559.007bc450@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 09:43 PM 3/31/02 -0800, you wrote: >> I can eliminate context swapping entirely because the user passes the >> address of whichever context he wants to emulate to DRSH2 (DRSH2 doesn't >> maintain an internal context.) > >I wouldn't do this. Eliminating context swapping or [ebp+disp8]? I assume you mean using [ebp...], because even with context swapping, I'd still have to use an absolute address. >> [A.] It is not sufficient to simply check timing on each branch, because we >> don't know exactly which instructions were executed >> before that branch was hit. > >That is true. Another alternative is to do it on every instruction and it >winds up being perfect on each one. I'm not sure just how accurate timing will have to be to emulate real-world SH-2 systems. The Sega 32X is very picky, I hear, but the Saturn/STV arcade hardware might be more forgiving. I'm hoping that for the Saturn at least (if my core ends up being good enough to be used by anyone) speed will be more of a concern than per-instruction timing (this seems to be true for the PSX.) At the moment, I just hope recompilation isn't going to add too much overhead (my code isn't nice and it does a lot of repeated scanning of linked lists and performs some inelegant rearranging of list elements.) I really don't think it should, but my code never ceases to amaze me in that way ;) I think once I get some of the branche instructions working (unconditional BRA and the 4 conditional branches), I'll post a snapshot of the source tree up. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Apr 1 09:15:42 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g31HFJq31129 for dynarec-outgoing; Mon, 1 Apr 2002 09:15:19 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 1 Apr 2002 09:18:29 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: [EBP+disp8] vs [Address32] In-Reply-To: <3.0.5.32.20020331214605.007bd480@dynarec.com> Message-ID: <20020401091045.C67624-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> I can eliminate context swapping entirely because the user passes the > >> address of whichever context he wants to emulate to DRSH2 (DRSH2 doesn't > >> maintain an internal context.) > >I wouldn't do this. > Eliminating context swapping or [ebp+disp8]? Eliminate the context swapping. You have a choice of [ebp+disp] or just [address32]. I can say, hands down, for a fact, [address32] is faster with occasional context swaps. You not only gain the repeated cache hit to the memory locations that contain the SH2's registers, it frees up ebp to be used with whatever, plus you never take a priorly used register stall. > I assume you mean using [ebp...], because even with context swapping, I'd > still have to use an absolute address. Yes, but overall it's faster. 20% Or so if I recall correctly (on my 6502 core). > overhead (my code isn't nice and it does a lot of repeated scanning of > linked lists and performs some inelegant rearranging of list elements.) I > really don't think it should, but my code never ceases to amaze me in that > way ;) But if done properly, there will be a hit only the first time it's executed. > I think once I get some of the branche instructions working (unconditional > BRA and the 4 conditional branches), I'll post a snapshot of the source > tree up. Looking forward to taking a look! -->Neil ------------------------------------------------------------------------------- Neil Bradley chown -R us:us /*base* Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Apr 4 18:35:34 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g352YZc36505 for dynarec-outgoing; Thu, 4 Apr 2002 18:34:35 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020404182647.007bf290@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 04 Apr 2002 18:26:47 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: DRSH2 source uploaded Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, It's not exactly usable yet (only 3 instructions implemented: NOP, BRA, MOV #imm,Rn), but I've uploaded a snapshot of DRSH2 to http://www.dynarec.com/~bart/drsh2.zip I still haven't implemented static register mapping (code blocks are analyzed for register usage and registers are assigned for the most frequently used SH-2 registers.) As I said earlier, I wanted to have an option to choose between one or the other. I think static register mapping will make possible a few optimizations to cut down the memory overhead. Right now, I'm pretty worried about the execution loop overhead nullifying any benefits recompiled code might have over interpreted code. If you take a look at DRSH2_Run() in drsh2/source/source.c, you'll see that it calls sh2->TargetRunBlock() to execute a basic block. TargetRunBlock() is emitted by DRSH2_Target_BuildContext() (drsh2/target/x86/targx86.c) and basically PUSHes/POPs all registers and then makes an indirect call ("call ebx") to the basic block. I think a solution might be to just have the basic block scanning done in TargetRunBlock() with control only being transferred back to the C code when a new block needs to be required. Also, in a system like the Saturn (which only has 1MB of RAM plus the BIOS ROM), basic blocks could probably be stored in a fixed-length array rather than in a linked list. My linked list code is pretty ugly and the structure of the whole thing in general needs to be reworked (too many header files; a lot of confusion caused by having certain things visible to the user and certain things visible only to DRSH2, etc.) But if you guys would like to take a look and give me some feedback before I get in too deep, it would be much appreciated :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Apr 4 18:39:24 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g352dNj36520 for dynarec-outgoing; Thu, 4 Apr 2002 18:39:23 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020404183134.007c1540@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 04 Apr 2002 18:31:34 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: DRSH2 source uploaded In-Reply-To: <3.0.5.32.20020404182647.007bf290@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Forgot to mention a couple of things: vm.exe will dump the recompiled block to out.bin so you can disassemble it. Only one block is actually recompiled before DRSH2_Run() quits (for ease of debugging.) roms/master.bin is the ROM that is executed. The source is, of course, master.asm. I haven't yet implemented any branches besides BRA so the basic block ends at the first BRA. DRSH2 will support "large basic blocks" with multiple branches contained inside of them (this is where a lot of the nasty complexity comes from) but right now it doesn't matter because all blocks would end with unconditional branches anyway. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Apr 15 19:05:22 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g3G249n58978 for dynarec-outgoing; Mon, 15 Apr 2002 19:04:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020415185457.007c0420@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 15 Apr 2002 18:54:57 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: SH-2 benchmarking Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I was wondering if anyone would be interested in helping me put together a method for benchmarking SH-2 cores? Emulating a real system would be the best practical benchmark but I'm not sure whether I'll intend to get my SH-2 core to the point where it is actually usable (I'm doing this just as a research project for now.) I've been thinking of emulating a virtual machine and having it run a very rigorous and nasty test program for a given amount of cycles (1 billion is probably a good number) and then checking the amount of time it took (this would depend on CPU speed, but perhaps a standard CPU speed could be determined on which to conduct these tests.) DRSH2, my dynamic recompiler, is at the point where it runs a "Hello, World!" program (written for a simple virtual machine which maps its VRAM directly to the PC's text mode video buffer.) I'd like to be able to test it against other SH-2 cores, namely the ones from Retrodrive and MAME at first. It would also be very useful in guaging the effects of certain tweaks I plan on making to DRSH2's basic block handling. If anyone whips up their own dynarec, it would provide a standard means by which to compare against DRSH2. Does anyone have any suggestions as to what a benchmarking SH-2 program should look like? Those of you who have dealt with 32X and Saturn code might want to provide information on typical game behavior. I'm afraid the code I write for my VM will be affected by my knowledge of what my recompiler does/doesn't handle well. Tim and Gerrie: Are you any of you still interested in incorporating my register usage profiling code into a test build of your 32X emulators? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Apr 15 19:07:24 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g3G27O858993 for dynarec-outgoing; Mon, 15 Apr 2002 19:07:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020415185814.007c6100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 15 Apr 2002 18:58:14 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: SH-2 benchmarking In-Reply-To: <3.0.5.32.20020415185457.007c0420@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Oh, crap. Wrong mailing list! :/ That was intended for Segadev. But still, feedback would be welcome, just ignore the 32X and Saturn stuff ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Apr 15 21:58:22 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g3G4dax59142 for dynarec-outgoing; Mon, 15 Apr 2002 21:39:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 16 Apr 2002 06:36:44 +0200 Subject: Re: DYNAREC: SH-2 benchmarking Content-Type: text/plain; charset=US-ASCII; format=flowed Mime-Version: 1.0 (Apple Message framework v481) From: Gwenole Beauchesne To: dynarec@dynarec.com Content-Transfer-Encoding: 7bit In-Reply-To: <3.0.5.32.20020415185457.007c0420@dynarec.com> Message-Id: <8E59A544-50F3-11D6-AE1C-003065C7D858@dial.oleane.com> X-Mailer: Apple Mail (2.481) Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, > I've been thinking of emulating a virtual machine and having it run a > very > rigorous and nasty test program for a given amount of cycles (1 billion > is > probably a good number) and then checking the amount of time it took > (this > would depend on CPU speed, but perhaps a standard CPU speed could be > determined on which to conduct these tests.) I always suggest the following since it is helpful to get some real benchmarks running (SPECbench2000). i.e. get some Linux linker (ELF) + syscall emulation and a cross-compiler to SH-2 so that you could create statically linked Linux/SH-2 executables. Bye, Gwenole --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Apr 16 09:37:54 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g3GGbPJ60182 for dynarec-outgoing; Tue, 16 Apr 2002 09:37:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020416092810.007c6100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 16 Apr 2002 09:28:10 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: SH-2 benchmarking In-Reply-To: <8E59A544-50F3-11D6-AE1C-003065C7D858@dial.oleane.com> References: <3.0.5.32.20020415185457.007c0420@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 06:36 AM 4/16/02 +0200, you wrote: >Hi, > >> I've been thinking of emulating a virtual machine and having it run a >> very >> rigorous and nasty test program for a given amount of cycles (1 billion >> is >> probably a good number) and then checking the amount of time it took >> (this >> would depend on CPU speed, but perhaps a standard CPU speed could be >> determined on which to conduct these tests.) > >I always suggest the following since it is helpful to get some real >benchmarks running (SPECbench2000). i.e. get some Linux linker (ELF) + >syscall emulation and a cross-compiler to SH-2 so that you could create >statically linked Linux/SH-2 executables. How much does SPECbench2000 rely on syscalls, and what sorts of calls does it require emulated? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Apr 16 10:02:29 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g3GH2Sk60215 for dynarec-outgoing; Tue, 16 Apr 2002 10:02:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 16 Apr 2002 18:58:55 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: gbeauchesne@thalys.mandrakesoft.com To: dynarec@dynarec.com Subject: Re: DYNAREC: SH-2 benchmarking In-Reply-To: <3.0.5.32.20020416092810.007c6100@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Tue, 16 Apr 2002, Bart wrote: > How much does SPECbench2000 rely on syscalls, and what sorts of calls does > it require emulated? I don't know. I guess at least open, read, write, time related and such functions. Actually, you can check psim, line, ppc750sim, SimpleScalar (and many others) for syscalls emulation. Next, the most important thing to know is the Linux ABI on SH-2: how sycalls are generated (where are the parameters), the loader, etc. For those, I am sure you can check the kernel headers and sources concerning binfmt_elf.* The startup code is glibc related and available in sysdeps/sh/elf/ part. Bye, Gwenole. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Apr 16 22:10:30 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g3H59fI60833 for dynarec-outgoing; Tue, 16 Apr 2002 22:09:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020416215946.007c5370@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 16 Apr 2002 21:59:46 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: SH-2 benchmarking In-Reply-To: References: <3.0.5.32.20020416092810.007c6100@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 06:58 PM 4/16/02 +0200, you wrote: >On Tue, 16 Apr 2002, Bart wrote: > >> How much does SPECbench2000 rely on syscalls, and what sorts of calls does >> it require emulated? > >I don't know. I guess at least open, read, write, time related and such >functions. Actually, you can check psim, line, ppc750sim, SimpleScalar >(and many others) for syscalls emulation. I'll take a look at those. >Next, the most important thing to know is the Linux ABI on SH-2: how >sycalls are generated (where are the parameters), the loader, etc. For >those, I am sure you can check the kernel headers and sources concerning >binfmt_elf.* The startup code is glibc related and available in >sysdeps/sh/elf/ part. Is the SH port for SH-2, SH-3, or SH-4? I don't think there would be any use for an SH-2 port of Linux, but SH-3 and SH-4 would make more sense. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Apr 21 19:58:00 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g3M2vJB71380 for dynarec-outgoing; Sun, 21 Apr 2002 19:57:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020421194658.007c7230@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 21 Apr 2002 19:46:58 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Ctrl registers Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, Is there any documentation on the ctrl registers (such as 0xA1000D)? From what I've read in Charles's Genesis hardware notes I gather that games write to these registers to indicate which data bits are used. But what are the initial states of these registers, specifically for port C? Thanks, Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Apr 21 20:09:39 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g3M39Yu71402 for dynarec-outgoing; Sun, 21 Apr 2002 20:09:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020421195913.007ccd40@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 21 Apr 2002 19:59:13 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Ctrl registers In-Reply-To: <3.0.5.32.20020421194658.007c7230@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Crap, wrong list again :/ Sorry about this. I've fixed my address book now. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed May 15 23:39:56 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4G6cuZ17722 for dynarec-outgoing; Wed, 15 May 2002 23:38:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3CE3528B.1080206@alphalink.com.au> Date: Thu, 16 May 2002 16:32:43 +1000 From: Evan Clarke User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0rc2) Gecko/20020510 X-Accept-Language: en-us, en, en-au MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) Content-Type: multipart/mixed; boundary="------------050003020002030300060900" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This is a multi-part message in MIME format. --------------050003020002030300060900 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Wow. Not much traffic recently. Oh well - hopefully this will help. I have been designing a virtual cpu for me to work on a dynarec for. The reason why I am designing a virtual cpu is that I don't want to deal with the hassle of all the intricasies of real CPUs, interupts and all that when learning the concepts of dynamic recomplication. The thing is, I want to make sure I havent left out an inportant aspect of a cpu (for example - I forgot to add a jump instruction originally), so I was wondering if anyone wouldn't mind looking over the basic CPU doc I have knocked up. This document is attached. Note that it is not finished - eg it will be more clearly described, I just want to know if I have missed anything. Any suggestions would be appreciated. I was thinking about padding out all instructions to 32 bits, but that seems like a waste of bits. The CPU was designed to not only be of clean design, but also allow me to work on stuff like more source registers than there are destination, etc. Who knows - this could serve me as an intermediate language down the road for a "re-targetable re-sourcable dynamic recompiler". Ouch. I just hope one day Mozilla adds a spell checker. ;-P --------------050003020002030300060900 Content-Type: text/plain; name="cpu.txt" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="cpu.txt" 12345678901234567890123456789012345678901234567890123456789012345678901234567890 Evan's Virtual CPU Specifications 1. Register Layout 1.1 General Purpose Registers There will be eight general purpose registers, named r0 through to r7. This will be capable of holding 32 bits, arranged as follows: b15 ... b0 For all mathamatical operations (add, sub, mul, div, mod, inc, dec) and the compare operation (comp), the contents of the general purpose registers are to be considered as signed, represented in two's-complement form. For all other operations the general register contents are to be considered unsigned. 1.2 Stack Pointer Register This is a 32 bit register that is used to point to the position in memory representing the current position of the top of the stack. This register cannot be accessed directly. Its contents can be read and modified using the getsp and setsp commands. It should also be noted that the stack grows upwardly. This register is refered to as sp. 1.3 Program Counter This is a 32 bit register that holds the current location of the currently executing instruction. This register is updated when the currently executing instruction has finished executing, including retrieving any instruction paramaters. The program counter cannot be read or altered by traditional means. However this can be overcome via the use of some instructions, such as the jumpXX family and call. This register is named pc. 1.3 Flags There are three flags used to represent the result of the compare (comp) operation. 1.3.1 e This is the flag to signify that the values were equal. 1.3.2 g This is the flag to signify that the left-hand value is greater than the right-hand value 1.3.3 l This is the flag to signify that the left-hand value is less than the right-hand value These flags are not accessable to the program running. They can be acted upon via the jumpXX operands, and set using compare (comp) operand. 2. Memory Layout 2.1 Size of each memory location Each memory location is capable of holding an 8 bit byte. Therefore when an address is given, it is refering to that many bytes from the start of memory. Note: All memory transactions are only in 32 bit value, aside from reading an instruction. 2.2 Maximum limit on memory As the stack pointer and all arguements to the instructions are 32 bits in length, the maximum amount of addressable memory is limited to 2^32 bytes. 2.3 Endianism If the 32 bit value 0x01020304 was stored to memory location 0x00000000, it would be as follows Memory location 0x00000000: 0x01 0x00000001: 0x02 0x00000002: 0x03 0x00000003: 0x04 2. Instructions 2.1 Instruction Layout Each instruction is 16 bits long, and can take up to 2 32 bit arguements. The instructions take to form: 0 00000 00 000 00 000 | | | | | | | | | | | +-- Second Register | | | | +------ Addressing Mode | | | +--------- First Register | | +------------- Addressing Mode | +----------------- Instruction Identifier +--------------------- Reserved (always 0) 2.2 Adressing Modes There are four modes used to signify the source of the data to be used for the instruction. 00 The value is taken from whatever register is given. eg. r1 01 The value is taken from where the given register points to. eg. (r1) 10 The value is taken from the next paramater. eg. 0xDEADBEEF 11 The value is taken from where the next paramater points to. eg. (0xDEADBEEF) 2.3 Register Numbering The registers are numbered as follows: 000 r1 001 r2 010 r3 011 r4 100 r5 101 r6 110 r7 111 r8 2.4 Paramters Certain instructions will require one or two paramaters to be passed. The first paramater is read from pc+2 (the +2 to skip over the currently executing operand), and the second is read from pc+2+4, or pc+6 (the +4 to skip over the first paramater). Note that if a paramater is to fulfull the requirements for an operation, the area in the instruction word reserved for the value is ignored. 3. Instruction List 3.1 move 0 00000 aa bbb cc ddd Copys the contents from cc ddd to aa bbb. eg: move r1, (0x12345678) assembles to: 0 00000 00 000 11 000 with a paramater of 0x12345678 3.2 add 0 00001 aa bbb cc ddd aa bbb = aa bbb + cc ddd 3.3 sub 0 00010 aa bbb cc ddd aa bbb = aa bbb - cc ddd 3.4 mul 0 00011 aa bbb cc ddd aa bbb = aa bbb * cc ddd 3.5 div 0 00100 aa bbb cc ddd aa bbb = aa bbb / cc ddd 3.6 mod 0 00101 aa bbb cc ddd aa bbb = aa bbb % cc ddd 3.7 inc 0 00110 aa bbb ?? ??? aa bbb ++ 3.8 dec 0 00111 aa bbb ?? ??? aa bbb -- 3.9 and 0 01000 aa bbb cc ddd aa bbb = aa bbb & cc ddd 3.10 or 0 01001 aa bbb cc ddd aa bbb = aa bbb | cc ddd 3.11 neg 0 01010 aa bbb ?? ??? aa bbb = - aa bbb 3.12 not 0 01011 aa bbb ?? ??? aa bbb = ~aa bbb 3.13 shl 0 01100 aa bbb cc ddd aa bbb << cc ddd 3.14 rol 0 01101 aa bbb cc ddd Rotate left aa bbb by cc ddd bits 3.15 shr 0 01110 aa bbb cc ddd aa bbb >> cc ddd 3.16 ror 0 01111 aa bbb cc ddd Rotate right aa bbb by cc ddd bits 3.17 comp 0 10000 aa bbb cc ddd Compare aa bbb to cc ddd. Set the flags accordingly. 3.18 jump 0 10001 aa bbb ?? ??? Jump to aa bbb 3.19 jumpz 0 10010 aa bbb ?? ??? jump to aa bbb if z flag is set 3.20 jumpnz 0 10011 aa bbb ?? ??? jump to aa bbb if z flag is clear 3.21 jumpl 0 10100 aa bbb ?? ??? jump to aa bbb if l flag is set 3.22 jumpnl 0 10101 aa bbb ?? ??? jump to aa bbb if l flag is clear 3.23 jumpg 0 10110 aa bbb ?? ??? jump to aa bbb if g flag is set 3.24 jumpng 0 10111 aa bbb ?? ??? jump to aa bbb if g flag is clear 3.25 loop 0 11000 aa bbb cc ddd jump to aa bbb if cc ddd is zero 3.26 call 0 11001 aa bbb ?? ??? push ip to the stack and jump to aa bbb 3.27 ret 0 11010 ?? ??? ?? ??? pop ip back to ip 3.28 push 0 11011 aa bbb ?? ??? Push aa bbb onto the stack 3.29 pop 0 11100 aa bbb ?? ??? Pop the next value off the stack to aa bbb 2.30 setsp 0 11101 aa bbb ?? ??? Set sp to aa bbb 2.31 getsp 0 11110 aa bbb ?? ??? Store the value of sp to aa bbb 2.32 halt 0 11111 ?? ??? ?? ??? Stops the CPU from executing anything else. --------------050003020002030300060900-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 05:36:58 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4GCaii18500 for dynarec-outgoing; Thu, 16 May 2002 05:36:44 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 16 May 2002 14:29:29 +0200 From: Victor Moya del Barrio To: dynarec@dynarec.com Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) Message-ID: <20020516122929.GA6550@ac.upc.es> References: <3CE3528B.1080206@alphalink.com.au> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <3CE3528B.1080206@alphalink.com.au> User-Agent: Mutt/1.3.25i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I have been designing a virtual cpu for me to work on a dynarec for. > The reason why I am designing a virtual cpu is that I don't want to deal > with the hassle of all the intricasies of real CPUs, interupts and > all that when learning the concepts of dynamic recomplication. > But you will have to do then you're own testing programs in machine code or in assembly if you program you're own assembler. With a real CPU you always a lot of programs, assemblers, compilers and tools. This will limit the tests you will perform with you're binary translator. Taking into account that the described ISA resembles a lot to 8080 why just don't try with it?. Of course 8080 doesn't have 32 bits operands or a lot of registers, but it doesn't either have a large number of different instructions types (only 256 opcodes). > > Any suggestions would be appreciated. I was thinking about padding out > all instructions to 32 bits, but that seems like a waste of bits. > With 128+ MBs (256 MBs if you want Windows XP whatever happy) I don't see real problems with being 32 or 16 or 128 bits. A variable lenght instruction set (as the one you describe in your document) uses to be more difficult to work with in a binary translator or even an interpreter than a fixed lenght one. > The CPU was designed to not only be of clean design, but also allow me > to work on stuff like more source registers than there are destination, etc. > This CPUs resembles a subset of x86 or 8080 instruction sets, which i'm not sure if everyone would call 'clean' ;). > Who knows - this could serve me as an intermediate language down the > road for a "re-targetable re-sourcable dynamic recompiler". Ouch. > Ummm, i think it would be something more similar to an Alpha or RISC architecture with special features if you want to support some ugliness of the real world CPUs (flags for example in x86). That is what we had in Dixie ;). But seriusly the problem with an IR is that it is too hard to be enough abstract for being multitarget while being enough specific for producing efficient translations. > the currently executing instruction. This register is updated > when the currently executing instruction has finished executing, > including retrieving any instruction paramaters. > The PC uses to be updated when the current instruction is fetched (that is before execution) not after. > 1.3.2 g This is the flag to signify that the left-hand > value is greater than the right-hand value > 1.3.3 l This is the flag to signify that the left-hand > value is less than the right-hand value > Well, that could be only one flag (may be with undefined value for equal/zero result) i think. > 2. Memory Layout > > 2.1 Size of each memory location > Each memory location is capable of holding an 8 bit byte. > Therefore when an address is given, it is refering to that > many bytes from the start of memory. > > Note: All memory transactions are only in 32 bit value, aside > from reading an instruction. > Do you allow unaligned memory access? > 2.3 Endianism > If the 32 bit value 0x01020304 was stored to memory location > 0x00000000, it would be as follows > > Memory location 0x00000000: 0x01 > 0x00000001: 0x02 > 0x00000002: 0x03 > 0x00000003: 0x04 > I don't know what will be the target machine for you're virtual CPU translator, but if it is x86 i think it would be better to use little endian rather than big. For a VM i will use configurable endianess. > 3.6 mod > 0 00101 aa bbb cc ddd > aa bbb = aa bbb % cc ddd > Why do you need a mod instruction? In fact i don't remember any ISA having mod ... > > 3.12 not > 0 01011 aa bbb ?? ??? > aa bbb = ~aa bbb > For a real CPU i think XOR is mandatory (even more if it doesn't have a zero registers :P), for example xor is very used for hashing, 'encrypt', checksum ... > 3.14 rol > 0 01101 aa bbb cc ddd > Rotate left aa bbb by cc ddd bits > shr and shl are ok but why bother for a rotate instruction? It would also necessary to have two shr instructions maybe (signed/arithmetic and unsigned/logic). I'm not sure if special stack instructions are really useful or not for a simple virtual CPU ... but I neither see that much problem suporting them. May be the problem is that I see (now) a simple CPU as simple RISC CPU, not a simple CISC machine ;). Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 07:15:42 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4GEFVU18579 for dynarec-outgoing; Thu, 16 May 2002 07:15:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3CE3BD99.1040703@alphalink.com.au> Date: Fri, 17 May 2002 00:09:29 +1000 From: Evan Clarke User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0rc2) Gecko/20020510 X-Accept-Language: en-us, en, en-au MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) References: <3CE3528B.1080206@alphalink.com.au> <20020516122929.GA6550@ac.upc.es> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Victor Moya del Barrio wrote: > This CPUs resembles a subset of x86 or 8080 instruction sets, > which i'm not sure if everyone would call 'clean' ;). So true. It started out quite nice, then it fell apart :-0, becoming more and more complicated by the minute. >> 1.3.2 g This is the flag to signify that the left-hand >> value is greater than the right-hand value >> 1.3.3 l This is the flag to signify that the left-hand >> value is less than the right-hand value >> > > Well, that could be only one flag (may be with undefined value > for equal/zero result) i think. D'oh! More caffine needed. > I'm not sure if special stack instructions are really > useful or not for a simple virtual CPU ... but I neither > see that much problem suporting them. May be the problem > is that I see (now) a simple CPU as simple RISC CPU, > not a simple CISC machine ;). Could you suggest a pre-existing CPU that is quite modern (in design), but more importantly clean (unlike my own design, admittidly)? I asked a similar question before, and people suggested a 6502, which is my _least_ favourite cpu. I am after something that has: A reasonable number of registers (eg. not 6502 amount, not MMIX type (256 128bit registers!)) Clean design Hopefully RISC and fixed instruction length Hopefully not with 16 addressing modes Flat memory model - no paging. Please do not be afraid to bash the shit out of my proposed cpu! Thanks for you reply. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 12:40:58 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4GJec118862 for dynarec-outgoing; Thu, 16 May 2002 12:40:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020516122739.007d1100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 16 May 2002 12:27:39 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <3CE3528B.1080206@alphalink.com.au> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >This document is attached. Note that it is not finished - eg it will be >more clearly described, I just want to know if I have missed anything. If you're just doing your own CPU for learning purposes, it doesn't matter if you miss little details because they will become apparent sooner or later ;) Try designing a virtual machine which uses some CPU and write some code for it. For my SH-2 recompiler I have the PC's text VRAM (under DOS) mapped into the virtual address space and I wrote a little "Hello, World!" program. >Any suggestions would be appreciated. I was thinking about padding out >all instructions to 32 bits, but that seems like a waste of bits. Quite a few modern architectures have 32-bit instructions. This creates code bloat but it might make it easier to create a more orthogonal instruction set. With 32-bit instructions you might want to implement a 3 operand format: add rC,rA,rB ; rC = rA + rB >Who knows - this could serve me as an intermediate language down the >road for a "re-targetable re-sourcable dynamic recompiler". Ouch. Or for an optimization pass. I've noticed that without having an intermediate representation it's kind of a pain to do cool optimizations. Currently I just assign some flags to the X86 instructions to allow some optimizations to take place (redundant move elimination and some peephole optimizations.) >I just hope one day Mozilla adds a spell checker. ;-P >123456789012345678901234567890123456789012345678901234567890123456789012345 67890 >Evan's Virtual CPU Specifications I skimmed through it and it looks pretty good. But rather than creating a new CPU from scratch, you could just try something like the Hitachi SH-2 (which is what I'm doing to learn about dynarecs.) It's got an easy to decode instruction set (every instruction is 16-bits and word-aligned -- no trailing operands), only 1 flag (a general purpose T flag which makes it easy to detect when flags should be calculated/preserved and when it doesn't matter), and a pretty simple instruction set. The most complicated instructions are the MAC and DIV1S instructions, but you can choose to ignore those. Delay slot branches are kind of weird but pretty easy to emulate. MIPS might be another good architecture to look into. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 12:55:16 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4GJtEQ18886 for dynarec-outgoing; Thu, 16 May 2002 12:55:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020516124215.007d1100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 16 May 2002 12:42:15 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <3CE3BD99.1040703@alphalink.com.au> References: <3CE3528B.1080206@alphalink.com.au> <20020516122929.GA6550@ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Victor made a good point about pre-existing development tools which I didn't even think of. You can get by with hand coding the instructions but for anything remotely advanced (which you'll want to do to test your CPU), you'll need a real assembler and/or a compiler. >Could you suggest a pre-existing CPU that is quite modern (in design), >but more importantly clean (unlike my own design, admittidly)? I asked >a similar question before, and people suggested a 6502, which is my >_least_ favourite cpu. > >I am after something that has: >A reasonable number of registers (eg. not 6502 amount, not MMIX type >(256 128bit registers!)) >Clean design >Hopefully RISC and fixed instruction length >Hopefully not with 16 addressing modes >Flat memory model - no paging. SH-2 has 16 registers (R0-R15) plus a few extra special registers (MAC, PR, SR, GBR, and VBR.) No floating point. The design is quite clean. Instructions are all 16-bit. One thing it does have which isn't typical of RISC processors is a relatively large number of addressing modes, but these are "hard coded" in instructions. There is no effective address field like on CISC processors such as the X86 and 68K. The addressing modes are: Direct register Rn Indirect register @Rn Post-increment indirect register @Rn+ Pre-decrement indirect register @-Rn Indirect register with displacement @(disp4,Rn) Indirect indexed register @(R0,Rn) Indirect GBR with displacement @(disp8,GBR) Indirect indexed GBR @(R0,GBR) Plus a couple of PC-relative modes. Because the addressing modes are dependent on the instruction (no special fields), the instruction set is a bit non-orthogonal in this respect, but these modes are actually quite simple to implement. Memory is flat (MMUs weren't introduced to the SuperH series until the SH-3.) And finally, the manual shows what every instruction does through C code! It's a good idea to look here when implementing an instruction because the short 1-line descriptions of how instructions work sometimes forget to specify that some operands are sign extended (and sometimes they remember to do so, which can be a bit confusing.) If you'd like, I can send you the SH-2 instruction set manual (the new one on the Hitachi site describes the SH-DSP as well, which makes it more cluttered and not as good as the old manual), an assembler, and source code to my disassembler. I also have an old version of GCC (1994 or 1995) which compiles SH-2 code. If possible, you should look into building a more up-to-date version of GCC ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 13:28:51 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4GKSl118922 for dynarec-outgoing; Thu, 16 May 2002 13:28:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) From: "M.I.K.e" Message-ID: <0003a11ec0b655a4_mailit@pop3.dynarec.com> References: <3CE3528B.1080206@alphalink.com.au> Date: Thu, 16 May 2002 21:46:24 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Wow. Not much traffic recently. Yeah, shame on us... >Oh well - hopefully this will help. It got me interested ;-) >The thing is, I want to make sure I havent left out an inportant aspect >of a cpu (for example - I forgot to add a jump instruction originally), It depends on the architecture, I know some where the PC is actually one of the universal registers and at least one architecture (ARM) simply uses a move instruction instead of a branch. >Any suggestions would be appreciated. I was thinking about padding out >all instructions to 32 bits, but that seems like a waste of bits. You might think so in the beginnig, but as soon as you write an instruction decoder for it you'll notice that a constant instruction length with cleanly defined instruction layout (ie. around three different instruction layouts) will be actually much cleaner. >The CPU was designed to not only be of clean design, See above ;-) >but also allow me >to work on stuff like more source registers than there are destination, etc. Oh, and I'd pick a 3-address code layout, because 2-address code is less frequently used now - I think only in x86 and some embedded architectures, for the purpose of code density in the latter case. >Who knows - this could serve me as an intermediate language down the >road for a "re-targetable re-sourcable dynamic recompiler". Ouch. Uh, I think especially Neil Bradley and I agree that using an intermediate processor is a bad idea. I've analyzed dozens of architectures in the search for a good VIP (Virtual Interpediate Processor), and I could nail you with most obscure features even of so-called "Reduced Instruction Set Computers". Everyone who thinks that a VIP is possible probably just knows too few architectures... The problem is, either you want to support every feature you find in a processor, in which case the VIP gets so big that porting it is close to impossible and no one will use it, or you make it rather simple, which means that in many cases you'll have to use several VIP instruction for one source instruction, which leads to hard to optimize code and results in very bad and slow destination code. I won't hinder you trying it, but I guess as soon as you want to support half a dozen architectures you'll go nuts ;-) Ok, onto the document... Victor already made good remarks, and I'll most likely repeat some, but I guess that won't hurt... There will be eight general purpose registers, named r0 through to r7. If you wanted to use it as a VIP you should have much more virtual registers since limiting the number here will lead to bad register allocation in the result code. My preferred number of registers would be 256, even if it sounds insane ;-) This will be capable of holding 32 bits, arranged as follows: b15 ... b0 I guess you wanted to do a 16-bit architecture at first ;-) Memory location 0x00000000: 0x01 0x00000001: 0x02 0x00000002: 0x03 0x00000003: 0x04 The two points combined I thought you come from Motorola, since a big-endian architecture with little-endian bit numbering is quite typical for them. 1.2 Stack Pointer Register I'd get rid off the specialized SP and the stack instruction if you want to make a 'clean' design. 1.3 Program Counter The program counter should never be accessed directly in a dynarec anyway... 1.3 Flags There are three flags used to represent the result of the compare (comp) operation. 1.3.1 e This is the flag to signify that the values were equal. 1.3.2 g This is the flag to signify that the left-hand value is greater than the right-hand value 1.3.3 l This is the flag to signify that the left-hand value is less than the right-hand value This reminds me of the PowerPC actually, which has EQ, GT, and LT flags... But for a simply and clean design I'd get rid off these as well. You could do it like SuperH: one dedicated flag register, which only contains one bit, is set to True or False by special comparison instructions ('cmpeq'), and tested by the branches: BT/BF (branch if true, branch if false). Or you do it like MIPS/Alpha, where every GPR can yield the result of the comparison, and you have special branches that compare a register with zero. 0 00000 00 000 00 000 | | | | | | | | | | | +-- Second Register | | | | +------ Addressing Mode | | | +--------- First Register | | +------------- Addressing Mode | +----------------- Instruction Identifier +--------------------- Reserved (always 0) The Instruction Identifier is typically called 'OpCode' (operation code). I already explained above that I'd prefer a pure 32-bit layout... 3.4 mul Multiplication is always a problem because you have to decide what to do when the result gets too large... The same is true for addition and subtraction, but there are enough real-life examples where carry isn't managed by the architecture. 3.5 div 3.6 mod Same here, because you could also let the division calculate the reminder as well. Division is one of the big problems when you intend to make a VIP, because there are all sorts of different divisions: some calculate the reminder, some have modulo to calculate the reminder, some expect you to use multiplication to calculate the reminder, others do division steps (ie. a small amount of the result is calculated by a divstep instruction due to latency reasons), and that's only the different methods I can come up without checking any material! 3.7 inc 3.8 dec You won't need these when you have a different instruction layout. 3.9 and 3.10 or 3.11 neg 3.12 not As Victor already said, XOR is a very common logical operator. If you should choose 3-address instructions NOR makes more sense than NOT. 3.13 shl 3.15 shr You certainly need an arithmetic shift right. 3.14 rol 3.16 ror Unlike Victor I'm still fond of rotations. I think many modern architecures excluded them because there are so few high-level languages that have such a concept and therefore the compilers wouldn't use them anyway. MIPS eg. simulates these with two variable shifts and an OR. 3.25 loop This is a relatively high-level construct and even in a Pentium it isn't recommended to be used. I guess that's it... I'll give a few further hints in the other mail. -- M.I.K.e An idea is an eye given by God for the seeing of God. Some of these eyes we cannot bear to look out of, we blind them as quickly as possible. -- Russell Hoban, "Pilgermann" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 13:28:52 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4GKSqV18931 for dynarec-outgoing; Thu, 16 May 2002 13:28:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) From: "M.I.K.e" Message-ID: <0003a11f10d4d1c6_mailit@pop3.dynarec.com> References: <3CE3528B.1080206@alphalink.com.au> <20020516122929.GA6550@ac.upc.es> <3CE3BD99.1040703@alphalink.com.au> Date: Thu, 16 May 2002 22:08:48 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I am after something that has: >A reasonable number of registers (eg. not 6502 amount, not MMIX type >(256 128bit registers!)) Actually MMIX is a 64-bit architecture. I wouldn't recommend starting with 64 -bit since recompilation on 32-bit architectures even makes a simple addition non-trivial. >Clean design >Hopefully RISC and fixed instruction length >Hopefully not with 16 addressing modes >Flat memory model - no paging. Especially for a VIP starting with MMIX is a good idea, since having a high number of virtual registers isn't a bad thing. The reason why a JVM even with JIT performs so badly on RISC is due to the fact that the compiler has a hard time doing register allocation for that stupid stack architecture. MMIX also has a very simple instruction layout: 8-bit opcode, three registers encoded in 8-bit each. Then there is a version with an 8-bit immediate instead of one register, and another with a 16-bit offset and only one register. What isn't that good about MMIX is the complexity of some instructions and the whole bunch of special registers it has. So, I'm actually in a love/hate conflict with MMIX. Another virtual processor that was invented for teaching purposes is DLX (spoken "delux") by the famous Hennessy and Patterson, but it's so similar to MIPS that you could use that instead, which the two authors actually did in the latest editions of their books. A streamlined version of MIPS would be Alpha, which has a very clean design, when you throw away some of the exotic stuff. The major gripe is that it's a pure 64-bit architecture, but you could focus on the 32-bit instructions. Another simple (because derived from MIPS as well) architecture is SuperH, which is the only 2-address architecture of the lot here, due to using 16-bit instructions (now called 'SHcompact') for code density, but the new SH-5 has an additional 32-bit instruction set called 'SHmedia' that has 3-address code. I'm not too sure how clean the instruction encoding is, but Bart should be able to tell you more about it, if he still reads this list... You should be able to find useful documents on SuperH here: http://semiconductor.hitachi.com/superh.htm http://www.superh.com/ There should be some information on MIPS here: http://www.classicgaming.com/epr/ Alpha is in a strange state at the moment, so I'm not sure where to find good documents. I'd have to start a search as well, if I didn't have all the literature already... I hope that helps a bit... >Please do not be afraid to bash the shit out of my proposed cpu! Ok, starting up Virtual Fighter 4 and selecting Lei Fei: "Come get some Shaolin Kung Fu!" ;-) -- M.I.K.e Cogito cogito ergo cogito sum -- "I think that I think, therefore I think that I am." -- Ambrose Bierce, "The Devil's Dictionary" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 13:52:33 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4GKqIH18961 for dynarec-outgoing; Thu, 16 May 2002 13:52:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) From: "M.I.K.e" Message-ID: <0003a11fc6ee254a_mailit@pop3.dynarec.com> References: <3.0.5.32.20020516122739.007d1100@dynarec.com> Date: Thu, 16 May 2002 22:59:43 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi Bart ;-) >I skimmed through it and it looks pretty good. But rather than creating a >new CPU from scratch, you could just try something like the Hitachi SH-2 I knew you'd recommend the SH-2 ;-) >Bart -- M.I.K.e The biggest difference between time and space is that you can't reuse time. -- Merrick Furst --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 13:56:47 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4GKuk818976 for dynarec-outgoing; Thu, 16 May 2002 13:56:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020516134325.007d4380@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 16 May 2002 13:43:25 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <0003a11ec0b655a4_mailit@pop3.dynarec.com> References: <3CE3528B.1080206@alphalink.com.au> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Uh, I think especially Neil Bradley and I agree that using an intermediate >processor is a bad idea. >I've analyzed dozens of architectures in the search for a good VIP (Virtual >Interpediate Processor), and I could nail you with most obscure features even >of so-called "Reduced Instruction Set Computers". Everyone who thinks that a >VIP is possible probably just knows too few architectures... I don't see why intermediate representations are that bad. It's just an issue of implementation: How fast do you want to write your dynarec and how simple will it be? I think IRs would open up better optimization possibilities because they're easier to manipulate. Does FX!32 use an IR? If I were to do something of that nature I'd definitely use an IR because that would make the whole thing much more like a regular compiler. IRs should be fine if you have one source processor and want to support lots of targets. You could have a general optimization pass plus some special hooks which allow the back end to perform optimizations specific to its target. It might be overkill for some processors (I think it's possible to do a lot of simple but effective optimizations by just storing information on how target operands are used), but for many cases (especially if you can do inter-block optimization), it seems to me like it would be worth doing... >The problem is, either you want to support every feature you find in a >processor, in which case the VIP gets so big that porting it is close to Couldn't you just make the VIP very, very generic? Just simple arithmetic and logic operations. In theory, everything could be represented this way -- although it might mean a lot more work for the back end in order to detect potential optimizations. However, if you're writing a recompiler which only works with 1 source CPU, this is no longer much of an issue, right? I've heard the author of Modeler and Zinc mention he has the source code to what he believes may be the fastest MIPS dynarec around (probably in terms of the hobbyist emulation community -- I think this recompiler may have been the one used in one of the free, closed-source Playstation emulators) and it uses an intermediate representation for its optimization pass. >Unlike Victor I'm still fond of rotations. I think many modern architecures >excluded them because there are so few high-level languages that have such a >concept and therefore the compilers wouldn't use them anyway. Are rotations even necessary any more? I can't think of the last time I needed rotation while coding a C program. Rotations are useful in emulation but other than that I haven't seen many cases where they're all that useful. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 14:01:47 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4GL1jH18994 for dynarec-outgoing; Thu, 16 May 2002 14:01:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020516134825.007d7100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 16 May 2002 13:48:25 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <0003a11f10d4d1c6_mailit@pop3.dynarec.com> References: <3CE3528B.1080206@alphalink.com.au> <20020516122929.GA6550@ac.upc.es> <3CE3BD99.1040703@alphalink.com.au> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Actually MMIX is a 64-bit architecture. I wouldn't recommend starting with 64 >-bit since recompilation on 32-bit architectures even makes a simple addition >non-trivial. What's MMIX? Hmm, time to fire up Google, methinks. >http://semiconductor.hitachi.com/superh.htm >http://www.superh.com/ There's a superh.com? Wow! I've always slogged through the Hitachi pages which don't seem to be useful at all. >Alpha is in a strange state at the moment, so I'm not sure where to find good >documents. Compaq has them on their site somewhere. I managed to download them a couple months ago. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 14:29:11 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4GLTA119034 for dynarec-outgoing; Thu, 16 May 2002 14:29:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) From: "M.I.K.e" Message-ID: <0003a12049efc660_mailit@pop3.dynarec.com> References: <3CE3528B.1080206@alphalink.com.au> <3.0.5.32.20020516134825.007d7100@dynarec.com> Date: Thu, 16 May 2002 23:36:21 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What's MMIX? Hmm, time to fire up Google, methinks. Heard of the "The Art of Computer Programming" books by Donald Knuth? In the original books he used a virtual processor called MIX (actually it was a mixture of architectures of the time, he added the numbers [eg. IBM 360] together took the average and wrote it in Latin numbers => MIX). MMIX (= 2009) is an updated RISC-like architecture for updated and future volumes of the book series. >>http://semiconductor.hitachi.com/superh.htm >>http://www.superh.com/ >There's a superh.com? Wow! I think I found that by pure accident ;-) >I've always slogged through the Hitachi pages >which don't seem to be useful at all. You can find all the documents for SH-1 to SH-4 via the other link, while SuperH.com seems to focus on the new SH-5. [Alpha] >Compaq has them on their site somewhere. I managed to download them a >couple months ago. I wasn't sure if they still have it, and especially where... It's a bit late today, but I'll try to answer your questions about VIP and intermediate representation on the weekend. >Bart -- M.I.K.e The good die young -- because they see it's no use living if you've got to be good. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 14:37:14 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4GLbCW19053 for dynarec-outgoing; Thu, 16 May 2002 14:37:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020516142349.007d4100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 16 May 2002 14:23:49 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <0003a12049efc660_mailit@pop3.dynarec.com> References: <3CE3528B.1080206@alphalink.com.au> <3.0.5.32.20020516134825.007d7100@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 11:36 PM 5/16/02 +0200, you wrote: >>What's MMIX? Hmm, time to fire up Google, methinks. > >Heard of the "The Art of Computer Programming" books by Donald Knuth? >In the original books he used a virtual processor called MIX (actually it was >a mixture of architectures of the time, he added the numbers [eg. IBM 360] >together took the average and wrote it in Latin numbers => MIX). >MMIX (= 2009) is an updated RISC-like architecture for updated and future >volumes of the book series. I see... I did a search on it and it took me to Knuth's MMIX page. The architecture is okay for demonstration purposes in a book, but it doesn't look like it has any room for expansion. >>I've always slogged through the Hitachi pages >>which don't seem to be useful at all. > >You can find all the documents for SH-1 to SH-4 via the other link, while >SuperH.com seems to focus on the new SH-5. SH-4 and SH-2 at superh.com, SH-1 to SH-3 at Hitachi's site, I believe. >It's a bit late today, but I'll try to answer your questions about VIP and >intermediate representation on the weekend. Okay, I'll be looking forward to it ;) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 15:31:29 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4GMVEE19129 for dynarec-outgoing; Thu, 16 May 2002 15:31:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 16 May 2002 15:33:13 -0700 (PDT) From: Neil Bradley To: Subject: DYNAREC: Dynarec stuff Message-ID: <20020516153241.M6720-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Uh, I think especially Neil Bradley and I agree that using an intermediate > >processor is a bad idea. > I don't see why intermediate representations are that bad. It's just an > issue of implementation: How fast do you want to write your dynarec and how > simple will it be? I've gone over this aa zillion times in the past and don't have the energy to go in to a big long discussion about it, but I've found with my own heavy attempts to do it with an IR, some of the optimizations I've wanted to do were flatly impossible, most specifically having to do with flag and instruction optimization. Your IR core, to be effective, must be the "wire OR'd" cumulation of all of the processor targets and sources you want to support, and it just generates icky code compared to a source->target layer. If you don't believe me, try doing a 68K->x86 IR and tell me it's optimal. Also try something like ARM to x86 with an IR and tell me it's optimal (it's even worse!). Plus, with an IR core, you lose all timing information about the instructions as well, which is critical in many, many games. > I think IRs would open up better optimization possibilities because they're > easier to manipulate. Easier to manipulate but you wind up losing context with an IR and that generates much bigger covers. > that nature I'd definitely use an IR because that would make the whole > thing much more like a regular compiler. Compilers work with an IR style because it's a high->low level translation. That is, one C instruction already is expected to generate many assembly instructions. However, assembly to assembly in some cases are a 1:1 translation if done right. The goal of recompilation is to run natively and fast, and an IR bloats code. > lots of targets. You could have a general optimization pass plus some > special hooks which allow the back end to perform optimizations specific to > its target. At that point you've lost the overall picture when you've genericized the original source assembly. Your target needs knowledge of the source layer to optimize fully. > I've heard the author of Modeler and Zinc mention he has the source code to > what he believes may be the fastest MIPS dynarec around (probably in terms If it's doing an IR, I'll bet it 'aint the fastest it could be. > Are rotations even necessary any more? I can't think of the last time I > needed rotation while coding a C program. > Rotations are useful in emulation but other than that I haven't seen many > cases where they're all that useful. It's useful for endian swapping. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley chown -R us:us /*base* Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 19:42:23 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4H2g2119341 for dynarec-outgoing; Thu, 16 May 2002 19:42:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020516192858.007d3d90@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 16 May 2002 19:28:58 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Dynarec stuff In-Reply-To: <20020516153241.M6720-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >"wire OR'd" cumulation of all of the processor targets and sources you >want to support, and it just generates icky code compared to a >source->target layer. Well, DRSH2 currently generates some quite redundant code which has forced me to mark operands in the X86 instructions (represented as structures before they are actually committed to memory) as DEST or SRC to do some extremely simple analysis of how data is being moved around. This would be easy with a simple IR. Optimizing program flow also looks to be difficult without an IR. >Compilers work with an IR style because it's a high->low level >translation. That is, one C instruction already is expected to generate >many assembly instructions. The SH-2 can be thought of as being at a higher level than X86. It has many times the number of registers. Flags are not an issue and the instructions themselves are usually quite simple (a 1-to-1-to-1 mapping from SH-2 to IR to X86 would happen for most instructions.) The address modes are where a single SH-2 instruction would get broken down into multiple IR instructions. I think the main optimizations that IR would expose are those related to data flow and program flow. Also, couldn't IR be handy for emitting code with a minimal amount of pipeline stalls and with good pairing (for the Pentium)? The X86 instruction emitters will often emit code which is unpairable and full of pipeline hazards and that's what got me thinking about IRs in the first place. >The goal of recompilation is to run >natively and fast, and an IR bloats code. I agree about the code bloat. And that's one of the reasons why I'm not implementing it; another reason is that I don't know enough about code optimization algorithms to begin with (that would put me way off course) -- I intend on learning about compilers later this year when I have some time, that sounds like an interesting project ;) Going straight from source to target code has helped me understand recompilation much, much better than I had before. But for translators where speed of translation isn't an issue at all (like FX!32 type recompilers which do a lot of their work in the background), wouldn't a more compiler-like architecture be very beneficial there? Especially for systems like IA-64, I think, where exposing parallelism might require some intricate analysis which would be really hard to do on certain instruction sets directly. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 20:15:13 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4H3FB619383 for dynarec-outgoing; Thu, 16 May 2002 20:15:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3CE47456.7020500@alphalink.com.au> Date: Fri, 17 May 2002 13:09:10 +1000 From: Evan Clarke User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0rc2) Gecko/20020510 X-Accept-Language: en-us, en, en-au MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) References: <3CE3528B.1080206@alphalink.com.au> <20020516122929.GA6550@ac.upc.es> <3.0.5.32.20020516124215.007d1100@dynarec.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Bart wrote: > If you'd like, I can send you the SH-2 instruction set manual (the new one > on the Hitachi site describes the SH-DSP as well, which makes it more > cluttered and not as good as the old manual), an assembler, and source code > to my disassembler. I also have an old version of GCC (1994 or 1995) which > compiles SH-2 code. If possible, you should look into building a more > up-to-date version of GCC ;) The funny thing is that while I was waiting for my internet connection to fire back up (dodgy ISP), I was browsing through the SuperH documents thinking about a SH series CPU, but the cluttered design was making it difficult! To much SH-DSP stuff in there! The stuff that you mentioned could definately come in handy - especially the clean CPU doc. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 20:36:13 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4H3aDK19410 for dynarec-outgoing; Thu, 16 May 2002 20:36:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020516202311.007d9590@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 16 May 2002 20:23:11 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <3CE47456.7020500@alphalink.com.au> References: <3CE3528B.1080206@alphalink.com.au> <20020516122929.GA6550@ac.upc.es> <3.0.5.32.20020516124215.007d1100@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The stuff that you mentioned could definately come in handy - especially >the clean CPU doc. You can find it here: http://www.classicgaming.com/epr/saturn/h12p0.pdf Get the SH-2 compiler at http://saturndev.emuvibes.com/compiler.zip, the assembler (SNASMSH2) at http://www.dynarec.com/~bart/saturn, and my disassembler (sh2d) at http://www.dynarec.com/~bart. The assembler and compiler are for DOS, BTW. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu May 16 20:41:48 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4H3fk019423 for dynarec-outgoing; Thu, 16 May 2002 20:41:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020516202844.007da900@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 16 May 2002 20:28:44 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <3CE47456.7020500@alphalink.com.au> References: <3CE3528B.1080206@alphalink.com.au> <20020516122929.GA6550@ac.upc.es> <3.0.5.32.20020516124215.007d1100@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com One thing I would like to mention about the SH-2: The PC always points 4 bytes ahead of the current instruction address. So whenever you need to use the PC in a calculation (for addressing modes, branch displacements, pushing it on the stack for exception processing, etc.) remember that it has to be the current instruction address + 4. This is mentioned once in the manual (I think) and if you forget to do it, bad stuff happens ;) Most interpretive SH-2 emulators keep 2 PC values (one pointing at the current instruction and another that is 4 greater) but you can probably get by with just having one PC that points at the current instruction in a recompiler (just add 4 whenever you have to reference the PC.) I remember this caused me some trouble with my disassembler so I wanted to give you a heads up in case you decide you want to use the SH-2. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 20 00:44:28 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4K7hsj26735 for dynarec-outgoing; Mon, 20 May 2002 00:43:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3CE8A7BB.5000507@alphalink.com.au> Date: Mon, 20 May 2002 17:37:31 +1000 From: Evan Clarke User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0rc2) Gecko/20020510 X-Accept-Language: en-us, en, en-au MIME-Version: 1.0 To: dynarec@dynarec.com Subject: DYNAREC: Some (more) questions - dynarec concepts - not tied to any specific CPU Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I don't know how I should start this message, so I will just jump straight in. I have recently been pondering various methods for block-determination and translation for the past couple of weeks - and this is what I have come up with. Have a function that when given a specific PC (for the emulated CPU) will scan through the code until it comes across a \jump\ or \return\ opcode. This is going to be a super-block. Once it knows the bounds of the super-block, it will re-scan, looking for conditional branches that jump to a position within the superblock. Those target addresses will be put into a list to be referenced later. That list is then sorted in ascending order, so that all values of the list lie in order between the values superblock_startaddress and superblock_endaddress - the list will read like this: [sb_startaddress, pc1, pc2, ... , pcn-1, pcn, sb_endaddress] where pc represents a target address and n is the number of elements in the list. Then it is time to construct the micro-blocks. Multiple microblocks form together to make a single superblock. The native code in microblocks is self-standing, in that when a microblock ends the flags should be correct, timing altered, interupts triggered, etc. ie: optimisation is limited to within microblocks. To construct these microblocks a microblock constructing function is called. It takes three arguements - the address of the host system to store the resulting native code, the start address of the emulated code microblock, the end address of the emulated code microblock. The function will return the length of the native code stored in the given address. So to constuct the microblocks from the list the process will be as follows: - Have the list constructed with n elements - Have a current counter called counter - Have memory allocated to store microblocks, called native_addr - Have a temp variable to hold a memory location - counter = 1 - while (counter < n-1) - { - temp = make_microblock (native_addr, list[counter], list[counter+1]) - native_addr = native_addr + temp - Store the native_addr of the current element of the list to another list - counter = counter + 1 - } NOTE: Pseudocode may indeed be rooted, but I hope you are able to get the drift. Now native_addr should be propigated with native code, just without the target addresses in the native branch code. The list coupled with the new generated list is now used to write the correct native addresses to the branch instructions in the native code. Add the end of the superblock a call to a function JumpTo will be made. It takes one arguement, the location to jump to. JumpTo checks to see if that address has a corresponding superblock, if so, jumps to that superblock, otherwise creates one as detailed above and jumps to it. So now native_addr should be a self-standing superblock. Therefore I should be able to get the ball rolling by calling JumpTo (0x00000000 [ or whatever the emulated cpu's pc is set to on powerup ]). Have I missed anything? Or am I missing the clue-boat by a mile? Keeping in mind I am ignoring self-modifying code atm. How do I deal with allocating memory for the superblock - as it is unknown how long the generated native code would be? If I adjust the amount of code using realloc the pointer returned is not garrentied to be the same (ANSI C 7.20.3.4 # 4), therefore I cannot just allocate a massive amount of memory and realloc it down, unless I generate IP relative instructions all the time (shudder). Wow. This ended up being longer than I thought. Thanks to all who bother to read the whole thing. And Bart, you have successfully talked me into attempting to do the SH-2. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 20 13:05:14 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4KK4w827765 for dynarec-outgoing; Mon, 20 May 2002 13:04:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020520125129.007d5720@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 20 May 2002 12:51:29 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Some (more) questions - dynarec concepts - not tied to any specific CPU In-Reply-To: <3CE8A7BB.5000507@alphalink.com.au> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Then it is time to construct the micro-blocks. Multiple microblocks >form together to make a single superblock. The native code in >microblocks is self-standing, in that when a microblock ends the flags >should be correct, timing altered, interupts triggered, etc. ie: >optimisation is limited to within microblocks. I'm not sure what the point of these microblocks would be. The only advantage I see is that you won't have to call the JumpTo function on conditional branches that branch back inside the block. Will code be able to jump into microblocks? Or can code flow only enter superblocks? I tried something similar to this in DRSH2 but it turned out to be really complex to maintain and I think I would have found that a lot of memory would be wasted. Once a basic block quits early, a new block has to be recompiled at the next instruction even if a block already encompasses the said instruction. I still have some notes on how I handled timing that I could give you (timing check points must be inserted between branches and destinations because you never know exactly how the program will flow.) >Have I missed anything? Or am I missing the clue-boat by a mile? It's an interesting idea, but I had trouble getting something similar to work. Simple basic blocks are much easier to work with. Also, how are you planning to map registers? Will you use static allocation (3-4 of the most commonly used SH-2 registers are mapped in all the time), or dynamic allocation (done on a per basic block basis?) I wanted to support both and supporting dynamic allocation means I have to swap them in and out for each block (a lot of the loads and stores can be eliminated by some simple analysis of the data flow.) >Keeping in mind I am ignoring self-modifying code atm. AFAIK, self modifying code is tricky and platform dependent. A generic way to do it would be to scan through all the basic blocks and throw away those which may have been modified each time a write has been made but that's way too slow. Better solutions involve having some of the write handlers mark a dirty flag and then all the basic blocks are thrown away (this is much simpler than keeping track of what was modified and what block should be killed -- plus it frees up memory from basic blocks that might never get called again.) I'd recommend just making sure your memory handler interface is pretty flexible and ignoring self modifying code for now (which you said you're doing anyway ;)) >How do I deal with allocating memory for the superblock - as it is >unknown how long the generated native code would be? If I adjust the >amount of code using realloc the pointer returned is not garrentied to >be the same (ANSI C 7.20.3.4 # 4), therefore I cannot just allocate a >massive amount of memory and realloc it down, unless I generate IP >relative instructions all the time (shudder). Store everything in lists and allocate memory only when everything is ready to be committed to memory. I have 2 lists: One for the SH-2 instructions and another for the X86 instruction. Each SH-2 instruction gets turned into a list element of this type: typedef struct s_sh2instructionlist { UINT opcode; // instruction opcode UINT addr; // virtual address where instruction appeared FLAGS flags; // flags UINT data; // data (meaning depends on flags) SH2INSTRUCTION *info; // information about the instruction struct s_sh2instructionlist *prev, *next; // previous and next links } SH2INSTRUCTIONLIST; The "addr" tells us which SH-2 address the instruction appeared at and "info" is a pointer to an instruction information structure (I think a "cover" is another term for this.) The info struct looks like this: typedef struct { FLAGS flags; // instruction description flags UINT op_format; // format of the opcode and mask to AND with UINT op_data; // result of mask operation INT t; // bit 1 = T out, bit 0 = T in INT e_reg1, e_reg2; // bit position of explicit 4-bit reg field or // -1 if unused INT i_reg1, i_reg2; // 2 additional regs used (not explicitly // encoded by format) if unused, set to -1. // if only 1 register, reg2 is ignored UINT timing1, timing2; // timing void *(*Emit)(void *, void *, void *); } SH2INSTRUCTION; Right now, the e_reg and i_reg fields are actually ignored (I was going to do something with them but I ended up not doing it, so just forget they're there.) I have an array of these information structures in one of the source files. Everytime an instruction is fetched, this array is scanned to find the matching instruction: if ((fetched_word & inst_tab[i].op_format) == inst_tab[i].op_data) // we have a match! The "t" member tells us about whether the T flag is needed on input and if it is needed on output. This is where the beauty of one flag comes in handy: It's very easy to determine whether an instruction should have the T flag calculated (by comparing instructions before and after it to see how the T flag is used and whether it will just end up being trashed anyway.) Anyway, instructions are read in and a list is created. This makes manipulation really easy -- delay slots can be reordered, timing can be calculated, registers can be allocated, etc. Once I've done everything I can with just the SH-2 instructions, I pass the list on to the X86 back-end. The X86 back-end scans the SH-2 instruction list and calls emitter functions which emit X86 instructions into yet another list. Each list element looks like this: /* * Note: Instructions not mapped to SH-2 instructions directly must have * vaddr set to all 1s (0 - 1.) Instructions which do not map to SH-2 * instructions but must be referenced by some X86 branch can use all odd * numbers in the range of 0x00000001-0xFFFFFFEF. * * If an X86 register is used as both a source and a destination (as most * arithmetic operations do), it must be marked as both. */ typedef struct s_x86instructionlist { UINT vaddr; // SH-2 address of this X86 instruction (if it cannot // be mapped to one, this should be all ones) UINT size; // size in bytes for this opcode INT regs[2]; // X86 register usage (used by optimizer), -1 if // unused FLAGS flags; // flags UINT data; // data (meaning depends on flags) UINT8 op[MAX_X86_OPSIZE]; // opcode data struct s_x86instructionlist *prev, *next; // links } X86INSTRUCTIONLIST; Once we have a list of these built up, optimization and fix ups can occur. Redundant register MOVs are eliminated by using the information in the regs[] member (because scanning the opcode data would be a nightmare ;)) which specifies which registers are used along with some flags (to indicate if the register is a source, destination, or both.) In the end, everything is counted up, a block of memory is allocated, and the data is written out to memory and voila, there you have it: Code ready to run :) I hope that made sense. There's lots of little details (flags and optional data, etc.) which I didn't cover, but if you have any questions, feel free to ask. >And Bart, you have successfully talked >me into attempting to do the SH-2. Cool :) Just watch out for those delay slots ;) One of the problems I had with the "big block" method was that basic block handling drastically increased the complexity of my code. For example, what if a branch references a delay slot instruction somewhere in your block? You not only have to make sure the delay slot instruction gets executed before the branch it follows, you have to generate code for it TWICE to make sure that other branch hits it correctly. The nice thing about regular basic blocks is that every block ends with a branch -- the one and only branch in the block. The only tricky situation then is when you have code like this: L: bra L add #1,r0 I had a bug in my emulator which reordered this as: add #1,r0 L: bra L1 But it actually has to be: L: add #1,r0 bra L :P But that's pretty much it. If you have the time and the determination, maybe it would be a good idea to write a normal basic block-based dynarec and then try to see if you can implement the "super block" method once you decide to have another go at dynamic recompilation. I just wanted to let you know that in my experience it was a whole lot of trouble -- and DRSH2 so far is my first and only dynamic recompiler. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 20 15:24:35 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4KMO7127893 for dynarec-outgoing; Mon, 20 May 2002 15:24:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3CE97603.605@alphalink.com.au> Date: Tue, 21 May 2002 08:17:39 +1000 From: Evan Clarke User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0rc2) Gecko/20020510 X-Accept-Language: en-us, en, en-au MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Some (more) questions - dynarec concepts - not tied to any specific CPU References: <3.0.5.32.20020520125129.007d5720@dynarec.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Bart wrote: > I'm not sure what the point of these microblocks would be. The only > advantage I see is that you won't have to call the JumpTo function on > conditional branches that branch back inside the block. I was thinking it would dramatically increase the performance of code with tight-inner loops that are being executed alot of times. > Will code be able to jump into microblocks? Or can code flow only enter > superblocks? I should have also mentioned that the addresses in the list that is created to show where the microblocks start could be incorperated into the main list used by JumpTo, therefore jumps into the middle of a superblock could easily be done, as microblocks are entirely self-contained. > I tried something similar to this in DRSH2 but it turned out to be really > complex to maintain and I think I would have found that a lot of memory > would be wasted. Once a basic block quits early, a new block has to be > recompiled at the next instruction even if a block already encompasses the > said instruction. I think what I mentioned above helps this. > I still have some notes on how I handled timing that I could give you > (timing check points must be inserted between branches and destinations > because you never know exactly how the program will flow.) That should definately come in handy when things start to get moving. > It's an interesting idea, but I had trouble getting something similar to > work. Simple basic blocks are much easier to work with. True, but I am going to give it a shot anyway. I have far to much spare time (well, I don't, but I wish I did). > Also, how are you planning to map registers? Will you use static allocation > (3-4 of the most commonly used SH-2 registers are mapped in all the time), > or dynamic allocation (done on a per basic block basis?) At first I will use static allocation, maybe once that works I will work on dynamic allocation. Seems quite hard to implement though - the overhead in determining which registers go where could far outweigh the performance benefits. > AFAIK, self modifying code is tricky and platform dependent. A generic way > to do it would be to scan through all the basic blocks and throw away those > which may have been modified each time a write has been made but that's way > too slow. Exactly what I was thinking. > Store everything in lists and allocate memory only when everything is ready > to be committed to memory. That is a really good idea. I shall think about this alot. > The "t" member tells us about whether the T flag is needed on input and if > it is needed on output. This is where the beauty of one flag comes in > handy: It's very easy to determine whether an instruction should have the T > flag calculated (by comparing instructions before and after it to see how > the T flag is used and whether it will just end up being trashed anyway.) Another good idea. > I hope that made sense. There's lots of little details (flags and optional > data, etc.) which I didn't cover, but if you have any questions, feel free > to ask. It does, thanks for taking the time to explain it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 20 18:08:53 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4L18UY28022 for dynarec-outgoing; Mon, 20 May 2002 18:08:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020520175459.007d44f0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 20 May 2002 17:54:59 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: OT: Open Watcom Source Code Released! Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, A bit OT but I figure this will be of some interest nonetheless. The Open Watcom Project has finally released some source code! I'm not sure if it builds correctly, but it does appear to contain most of what would be necessary to build the compiler. You can grab it at: http://www.openwatcom.com/download_lic.html (it's 27.4MB.) Unfortunately, there are _very few_ comments in the code and the file descriptions haven't been written yet. Every file I've skimmed so far just has this: "WHEN YOU FIGURE OUT WHAT THIS FILE DOES, PLEASE DESCRIBE IT HERE!" ;) I never had much success using Watcom because for some reason I could never get interrupt handlers to execute without crashing (even sample code and code I knew should have worked properly didn't run.) :( Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 20 18:57:27 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4L1vOG28087 for dynarec-outgoing; Mon, 20 May 2002 18:57:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020520184353.007d0460@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 20 May 2002 18:43:53 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Some (more) questions - dynarec concepts - not tied to any specific CPU In-Reply-To: <3CE97603.605@alphalink.com.au> References: <3.0.5.32.20020520125129.007d5720@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I should have also mentioned that the addresses in the list that is >created to show where the microblocks start could be incorperated into >the main list used by JumpTo, therefore jumps into the middle of a >superblock could easily be done, as microblocks are entirely self-contained. You could perform some interesting inter-block optimizations if you know where a microblock is going to jump. But if some code later down the road ends up jumping into a microblock, those optimizations wouldn't help out much. You'd have to make sure the optimizations still allow unrelated code to jump into the microblock in question. At the very least resolving branches to other blocks at recompile-time might prove to give a healthy speed boost, but I think this could also be done without microblocks/superblocks. >> I still have some notes on how I handled timing that I could give you >> (timing check points must be inserted between branches and destinations >> because you never know exactly how the program will flow.) >That should definately come in handy when things start to get moving. I'll email it to you privately because I've posted this on the list before. >At first I will use static allocation, maybe once that works I will work >on dynamic allocation. Seems quite hard to implement though - the >overhead in determining which registers go where could far outweigh the >performance benefits. The overhead in dynamic allocation? The constant spilling and filling of registers between blocks is supposed to be harmful. I'm going to try both methods to see what the difference is. I'm going to profile some 32X games with a custom version of the Xega emulator built with some code of mine to detect which registers are used most often and how. That should help determine a good way to statically allocate the registers. If I were to do an Alpha or PowerPC back-end, static register allocation would be the obvious choice because both of those CPUs have 32 general purpose registers. Mapping in the 16 SH-2 GPRs (plus maybe GBR and SR) would still leave almost half of the register set free. Spilling and filling that many registers is costly but it would only have to be done once per Run() call (and probably when transferring back to C code to recompile a block. ) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 20 23:50:43 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4L6oJI28322 for dynarec-outgoing; Mon, 20 May 2002 23:50:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3CE9EC97.6060409@alphalink.com.au> Date: Tue, 21 May 2002 16:43:35 +1000 From: Evan Clarke User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0rc2) Gecko/20020510 X-Accept-Language: en-us, en, en-au MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Some (more) questions - dynarec concepts - not tied to any specific CPU References: <3.0.5.32.20020520125129.007d5720@dynarec.com> <3.0.5.32.20020520184353.007d0460@dynarec.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Bart wrote: > You could perform some interesting inter-block optimizations if you know > where a microblock is going to jump. But if some code later down the road > ends up jumping into a microblock, those optimizations wouldn't help out > much. You'd have to make sure the optimizations still allow unrelated code > to jump into the microblock in question. With my idea - you cannot actually jump _into_ a microblock - more like call the start of it. For example if I had this (I will use x86 code for the example) I cannot be bothered with calculating the exact instruction length - so they are all one byte long... ;-p And the code may indeed be wrong. And I know I could use a repsb or what ever it is, just that it is hard to think up simple example code. Contents my settle during handling. Not valid in Utah. 0x0000 mov ax, 0xA000 0x0001 mov ds, ax 0x0002 xor si, si 0x0003 lodsb 0x0004 cmp ax, 0x15 0x0005 jnz 0x0003 0x0006 mov foundAddress, ax 0x0007 ret Will break down into the following superblock: [Superblock Start 0x0000] [Microblock start 0x0000] ds = 0xa000 si = 0x0000 [Microblock end 0x0002] [Microblock start 0x0003] ax = next byte if ax is 15 jump to 0x0003 [Microblock end 0x0005] [Microblock start 0x0006] foundaddress = ax [Microblock end 0x0007] [Superblock End 0x0007] As you can see, the only garrentied valid entry points are the start of the superblock, and the start of each microblock. As microblocks are self-contained (ie: take care of timing (will be complicated) and no optimasation will take place across microblock borders) it will be fine if code jumps to the start of a microblock. So with the above (poor) example, if another function set up ds:si differently and then jumped to 0x0003 to search for 0x15, it would all still work quite well. The whole deal with the superblock is to make sure that microblocks are stored in a continual memory block with known start addresses so that calls to JumpTo are eliminated - saving searching through the list of decoded addresses. You could think of them as cojoined basicblocks with garentied entry points. If I am misunderstanding your concerns with the superblock design, please say so. As I mentioned in your private email - I am not feeling the best recently - therefore I might be not seeing your point due to the large amount of painkillers and other assorted perscription drugs. > I'll email it to you privately because I've posted this on the list before. I got that, thanks. > The overhead in dynamic allocation? The constant spilling and filling of > registers between blocks is supposed to be harmful. I'm going to try both > methods to see what the difference is. I'm going to profile some 32X games > with a custom version of the Xega emulator built with some code of mine to > detect which registers are used most often and how. That should help > determine a good way to statically allocate the registers. Always a good idea. > If I were to do an Alpha or PowerPC back-end, static register allocation > would be the obvious choice because both of those CPUs have 32 general > purpose registers. Mapping in the 16 SH-2 GPRs (plus maybe GBR and SR) > would still leave almost half of the register set free. Spilling and > filling that many registers is costly but it would only have to be done > once per Run() call (and probably when transferring back to C code to > recompile a block. ) It is moments like these where I wish I had a Alpha or PowerPC, but then where would all the fun be in overcomming these problems? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue May 21 08:37:50 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4LFbMq29298 for dynarec-outgoing; Tue, 21 May 2002 08:37:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3CEA6827.5010406@alphalink.com.au> Date: Wed, 22 May 2002 01:30:47 +1000 From: Evan Clarke User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0rc2) Gecko/20020510 X-Accept-Language: en-us, en, en-au MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Some (more) questions - dynarec concepts - not tied to any specific CPU References: <3.0.5.32.20020520125129.007d5720@dynarec.com> <3.0.5.32.20020520184353.007d0460@dynarec.com> <3CE9EC97.6060409@alphalink.com.au> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Evan Clarke wrote: > Bart wrote: > >> You could perform some interesting inter-block optimizations if you know >> where a microblock is going to jump. But if some code later down the road >> ends up jumping into a microblock, those optimizations wouldn't help out >> much. You'd have to make sure the optimizations still allow unrelated >> code >> to jump into the microblock in question. > > With my idea - you cannot actually jump _into_ a microblock - more like > call the start of it. > > For example if I had this (I will use x86 code for the example) > I cannot be bothered with calculating the exact instruction length - so > they are all one byte long... ;-p And the code may indeed be wrong. And > I know I could use a repsb or what ever it is, just that it is hard to > think up simple example code. Contents my settle during handling. Not > valid in Utah. > > 0x0000 mov ax, 0xA000 > 0x0001 mov ds, ax > 0x0002 xor si, si > 0x0003 lodsb > 0x0004 cmp ax, 0x15 > 0x0005 jnz 0x0003 > 0x0006 mov foundAddress, ax > 0x0007 ret > > Will break down into the following superblock: > [Superblock Start 0x0000] > [Microblock start 0x0000] > ds = 0xa000 > si = 0x0000 > [Microblock end 0x0002] > [Microblock start 0x0003] > ax = next byte > if ax is 15 jump to 0x0003 > [Microblock end 0x0005] > [Microblock start 0x0006] > foundaddress = ax > [Microblock end 0x0007] > [Superblock End 0x0007] > > As you can see, the only garrentied valid entry points are the start of > the superblock, and the start of each microblock. As microblocks are > self-contained (ie: take care of timing (will be complicated) and no > optimasation will take place across microblock borders) it will be fine > if code jumps to the start of a microblock. I should also mention that if the program tries to jump into an address contained within a microblock - but not at the start of the microblock (therefore not listed on the decoded list), the microblock creation function will create a microblock that at the end will jump to the next already created microblock in the superblock, if that makes any sense. So you could think of it as having two overlaping microblocks in a superblock, just one won't be located directly within the superblock, it will just jump to the address of its next microblock. I suck at explaining things. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri May 24 11:37:51 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4OIbDc34146 for dynarec-outgoing; Fri, 24 May 2002 11:37:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020524112316.007d4a00@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 24 May 2002 11:23:16 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: DRSH2 Released Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I've released DRSH2 at http://www.dynarec.com/~bart! It doesn't fully emulate the SH-2 (a lot of instructions are missing and interrupt handling is just a guess) but it is functional. Basic blocks are handled using a linked list (in order to make things platform independent) and there's a lot of function call overhead involved in calling a block because the list is scanned in C code and a wrapper function has to be called to invoke the emitted code. A better solution would be to use a hash table (but this is very dependent on the source platform emulated) and to have the back-end generate code to find and execute blocks (reverting to C land only when a new block has to be recompiled.) The optimizer has potential but it is pretty weak (it only stores information on register operands which allows redundant loads and register-to-register moves to be eliminated but doesn't remove redundant stores -- this would actually be easy to fix, though.) DRSH2 does generate fairly optimal instructions (using the short forms for arithmetic and branch instructions), performs alignment after unconditional branches, and will use INC, DEC, and XOR when appropriate (instead of ADD, SUB, and MOV.) If I had to do it again, I'd do a lot of things differently. The code generator is pretty bloated and the linked list code sucks, but it seems to get the job done ;) I was planning on writing a document on dynarecs in general (focusing on the implementation of DRSH2), but I lack the energy to finish such an undertaking. Maybe someday I'll finish it and release it, but for now, DRSH2's readme.txt will have to do. A big thanks goes out to everyone on this list who helped me learn about this stuff :) Doing DRSH2 definitely taught me a lot! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 25 04:18:56 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4PBIc635613 for dynarec-outgoing; Sat, 25 May 2002 04:18:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 25 May 2002 12:10:25 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.60m) X-Priority: 3 (Normal) Message-ID: <583433026.20020525121025@dynarec.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: DRSH2 Released In-Reply-To: <3.0.5.32.20020524112316.007d4a00@dynarec.com> References: <3.0.5.32.20020524112316.007d4a00@dynarec.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi Bart, hi guys! :) Been a while, hasn't it? :o B> I've released DRSH2 at http://www.dynarec.com/~bart! I've just been looking at it and it looks pretty cool! I haven't spent too long looking at it yet, so I can't give you any great feedback, but it does look promising. B> It doesn't fully emulate the SH-2 (a lot of instructions are missing and B> interrupt handling is just a guess) but it is functional. What's the current plan then? Change the basic-block handling first, or implement more instructions and then go back? Or maybe even a complete re-write based upon what you found? B> Basic blocks are handled using a linked list (in order to make things B> platform independent) and there's a lot of function call overhead involved B> in calling a block because the list is scanned in C code and a wrapper B> function has to be called to invoke the emitted code. A better solution B> would be to use a hash table (but this is very dependent on the source B> platform emulated) and to have the back-end generate code to find and B> execute blocks (reverting to C land only when a new block has to be B> recompiled.) I guess you could always write 2 hash-table managers, one for little endian machines and another for big endian. That's probably specific enough to be fast, yet generic enough to be portable... B> If I had to do it again, I'd do a lot of things differently. The code B> generator is pretty bloated and the linked list code sucks, but it seems to B> get the job done ;) It looks good to me. I must admit, I'm starting to get my taste back for dynamic recompilation again - I've not been around so much in a while, had some things going on in my life that ended a few weeks ago and really knocked me down. Basically, I got engaged and that ended a couple of weeks ago when she cheated on me. It's much more complicated than that, but I think this mailing list isn't the place to discuss my personal life. :)) That reminds me, Mike, I'll reply to you on Monday when I get back to work - I've been working to a pretty tight schedule recently. Speaking of work though, did I actually tell everyone here that I'm now a games programmer (working in networking and patching Worms Armageddon and Worms World Party) at Team17 now - and have been for the past 7 months? If not... oops! I don't remember if I told you... B> I was planning on writing a document on dynarecs in general (focusing on B> the implementation of DRSH2), but I lack the energy to finish such an B> undertaking. Maybe someday I'll finish it and release it, but for now, B> DRSH2's readme.txt will have to do. That'd be cool. Just keep in mind for something you might want to do someday. Looking at your source, it seems clean enough to me so it's pretty readable. Makes a change from at work, believe me! :) B> A big thanks goes out to everyone on this list who helped me learn about B> this stuff :) Doing DRSH2 definitely taught me a lot! It was nice to have a mention. I hope that we've helped! :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 25 08:59:03 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4PFwmG38022 for dynarec-outgoing; Sat, 25 May 2002 08:58:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c20404$3650a3f0$5075393e@hal9000w2k> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20020524112316.007d4a00@dynarec.com> <583433026.20020525121025@dynarec.com> Subject: Re: DYNAREC: DRSH2 Released Date: Sat, 25 May 2002 17:52:43 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > B> It doesn't fully emulate the SH-2 (a lot of instructions are missing and > B> interrupt handling is just a guess) but it is functional. > > What's the current plan then? Change the basic-block handling first, > or implement more instructions and then go back? Or maybe even a > complete re-write based upon what you found? > I think he could try to group basic blocks to avoid too many jumps back to the main loop. In any case it seems a really great work. > B> Basic blocks are handled using a linked list (in order to make things > B> platform independent) and there's a lot of function call overhead involved > B> in calling a block because the list is scanned in C code and a wrapper > B> function has to be called to invoke the emitted code. A better solution > B> would be to use a hash table (but this is very dependent on the source > B> platform emulated) and to have the back-end generate code to find and > B> execute blocks (reverting to C land only when a new block has to be > B> recompiled.) > > I guess you could always write 2 hash-table managers, one for little > endian machines and another for big endian. That's probably specific > enough to be fast, yet generic enough to be portable... > I don't get what is the problem with a hash table? Endiannes? > Speaking of work though, did I actually tell everyone here that I'm > now a games programmer (working in networking and patching Worms > Armageddon and Worms World Party) at Team17 now - and have been for > the past 7 months? If not... oops! I don't remember if I told you... > I remember you said some time ago you were working with Worms in Team 17 but anyway, thanks for refreshing our memories ;). I'm still 'starting' my PhD (being lazy and watching anime too, so no emulation or dynarec stuff :P), but I will have to pick a thesis subject in a week or so. It seems I will skip the binary translation topic and I will go for 3d graphic hardware. Well, I can still do something related with BT in my free time ;). > > Neil. > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 25 11:35:53 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4PIZaU38179 for dynarec-outgoing; Sat, 25 May 2002 11:35:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020525112132.007dba00@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 25 May 2002 11:21:32 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: DRSH2 Released In-Reply-To: <583433026.20020525121025@dynarec.com> References: <3.0.5.32.20020524112316.007d4a00@dynarec.com> <3.0.5.32.20020524112316.007d4a00@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What's the current plan then? Change the basic-block handling first, >or implement more instructions and then go back? Or maybe even a >complete re-write based upon what you found? The plan is to do nothing :) I really don't have any use for an SH-2 emulator. Changing the basic block handling would only make sense if I was emulating a system with it. The Saturn and 32X are out of the question (way too complex), but maybe I could try it with the Psikyo SH-2-based arcade machines (I think they're simple and MAME emulates them.) Hmm... >I guess you could always write 2 hash-table managers, one for little >endian machines and another for big endian. That's probably specific >enough to be fast, yet generic enough to be portable... It's not an issue of endianness, it's an issue of the emulated system's memory. Some systems have as little as 1MB of RAM, whereas others have much more. It would have to be tailored for an individual system. >Basically, I got engaged and that ended a >couple of weeks ago when she cheated on me. I'm really sorry to hear that :( I hope it isn't taking too much of a toll on you... >Speaking of work though, did I actually tell everyone here that I'm >now a games programmer (working in networking and patching Worms >Armageddon and Worms World Party) at Team17 now - and have been for >the past 7 months? If not... oops! I don't remember if I told you... You mentioned it, but I don't think you said exactly what you'd be working on there. It sounds like fun, though :) >B> I was planning on writing a document on dynarecs in general (focusing on >B> the implementation of DRSH2), but I lack the energy to finish such an >B> undertaking. Maybe someday I'll finish it and release it, but for now, >B> DRSH2's readme.txt will have to do. > >That'd be cool. Just keep in mind for something you might want to do >someday. I have it mostly done, but I really don't like it. I could put up an unfinished draft online somewhere to see if you guys think it would be worthwhile finishing it. >Looking at your source, it seems clean enough to me so it's >pretty readable. Makes a change from at work, believe me! :) Hehe, I tried making the source code somewhat readable. I want to get into compilers soon and I can imagine that's going to be a tremendous undertaking, even for a real simple compiler. I was skimming through the source code to Watcom and SGI's discontinued IA-64 compiler -- both were absolutely byzantine! The sparse comments, weird names, and inconsistent coding styles didn't help one bit :( >It was nice to have a mention. I hope that we've helped! :) Definitely; I don't think I would have been able to do DRSH2 without this mailing list and dynarec.com. Looking at the sources to the SOPE and AdriPSX dynarec didn't help one bit (they work very differently from DRSH2 -- they seem to just generate X86 code on the fly -- no lists, no analysis, no nothing.) DRMZ80 influenced my design quite a bit (the whole list thing.) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 25 11:41:16 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4PIf7q38192 for dynarec-outgoing; Sat, 25 May 2002 11:41:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020525112703.007dcda0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 25 May 2002 11:27:03 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: DRSH2 Released In-Reply-To: <000b01c20404$3650a3f0$5075393e@hal9000w2k> References: <3.0.5.32.20020524112316.007d4a00@dynarec.com> <583433026.20020525121025@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think he could try to group basic blocks to avoid too many jumps >back to the main loop. I was thinking about that and it sounds like a great idea. Most branches are resolvable so it should be possible. It would take some modification to DRSH2's targx86.c, but I don't think it would be too difficult. Each basic block could have 2 exit points: One which returns to the dispatcher (if time runs out), and one which branches directly to the next block. If a block ends with an indirect branch, only a single exit point is needed: Back to the dispatcher. If I ever do another dynarec, I'd do something like that. Maybe if I feel like emulating the Psikyo games just to test out DRSH2, I'll do it. But I've been wanting to do some more work with 3D graphics and some other stuff, so I don't think I'll have the time. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 25 20:30:44 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4Q3UNR38635 for dynarec-outgoing; Sat, 25 May 2002 20:30:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3CF0552B.4060502@alphalink.com.au> Date: Sun, 26 May 2002 13:23:23 +1000 From: Evan Clarke User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0rc3) Gecko/20020523 X-Accept-Language: en-us, en, en-au MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: DRSH2 Released References: <3.0.5.32.20020524112316.007d4a00@dynarec.com> <3.0.5.32.20020524112316.007d4a00@dynarec.com> <3.0.5.32.20020525112132.007dba00@dynarec.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Bart wrote: > It's not an issue of endianness, it's an issue of the emulated system's > memory. Some systems have as little as 1MB of RAM, whereas others have much > more. It would have to be tailored for an individual system. I was thinking for my yet-to-be-developed dynarec, I would use the lower 16 bits of the address value as the hash value. If the instructions are word aligned only, you could div the address by two then do the mask. ie; Hash = (address>>2)&0xFFFF This approach should give good enough results. I think. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 25 20:42:41 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4Q3ge438653 for dynarec-outgoing; Sat, 25 May 2002 20:42:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020525202832.007d9100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 25 May 2002 20:28:32 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: DRSH2 Released In-Reply-To: <3CF0552B.4060502@alphalink.com.au> References: <3.0.5.32.20020524112316.007d4a00@dynarec.com> <3.0.5.32.20020524112316.007d4a00@dynarec.com> <3.0.5.32.20020525112132.007dba00@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >ie; Hash = (address>>2)&0xFFFF You mean (address>>1). That would only cover 32KB of the address space anyway. I don't see how this hash approach would handle the rest... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 25 20:51:40 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4Q3pde38671 for dynarec-outgoing; Sat, 25 May 2002 20:51:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020525203731.007dd100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 25 May 2002 20:37:31 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: DRSH2 Released In-Reply-To: <3.0.5.32.20020525202832.007d9100@dynarec.com> References: <3CF0552B.4060502@alphalink.com.au> <3.0.5.32.20020524112316.007d4a00@dynarec.com> <3.0.5.32.20020524112316.007d4a00@dynarec.com> <3.0.5.32.20020525112132.007dba00@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That would only cover 32KB Oops, I meant 128KB. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat May 25 20:58:01 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4Q3w0u38685 for dynarec-outgoing; Sat, 25 May 2002 20:58:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3CF05BAE.8060104@alphalink.com.au> Date: Sun, 26 May 2002 13:51:10 +1000 From: Evan Clarke User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0rc3) Gecko/20020523 X-Accept-Language: en-us, en, en-au MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: DRSH2 Released References: <3.0.5.32.20020524112316.007d4a00@dynarec.com> <3.0.5.32.20020524112316.007d4a00@dynarec.com> <3.0.5.32.20020525112132.007dba00@dynarec.com> <3.0.5.32.20020525202832.007d9100@dynarec.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Bart wrote: >>ie; Hash = (address>>2)&0xFFFF > > > You mean (address>>1). > > That would only cover 32KB of the address space anyway. I don't see how > this hash approach would handle the rest... For non-word aligned address-space (without the >>1), it will handle 64kb. For word-aligned address-space, it will handle 128kb. _This is without doubling up_. The reason why I only use the lower 16 bits is is the same reason why you would use the last 4 digits in a phone number to hash an 8 digit phone number. The last four digits change the most. If you went off of the first four digits, you would end up with an extremely unbalanced hashing function, due to area codes and what not. With addresses, going of the last 16 bits would be the best as they are the ones that would change the most. You just ignore the remaining bits. I am thinking for storing my address list I will have something like this: struct pointerToFunction { unsigned long sourceAddress; // Sh2 address space unsigned long targetAddress; // x86 address space struct pointerToFunction *next; // pointer to next pointer } struct hashListHeader { unsigned int numberOfNodes; // Used to hold the number of nodes // in this hashlist element, so I can // do a binsearch on them. struct pointerToFunction *start; } hashListHeader AddressList[0xFFFF]; --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 27 13:51:46 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4RKouF41580 for dynarec-outgoing; Mon, 27 May 2002 13:50:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) From: "M.I.K.e" Message-ID: <0003a1fd04945221_mailit@pop3.dynarec.com> References: <3CE3528B.1080206@alphalink.com.au> <3.0.5.32.20020516134325.007d4380@dynarec.com> Date: Mon, 27 May 2002 22:56:45 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This is mainly something Bart asked about... Sorry for the late reply, but I was busy on the weekend I wanted to write this message (having seen Episode II put me in Star Wars mode instead of processor mode...) and the next weekend I was recovering from a cold my body decided to catch without consulting me (stupid thing!) and I spent most of the time in bed reading - actually Star Wars novels, and since I knew the books already I skipped the uninteresting parts and managed to read 4 novels... Ok, now back to the topic (might be a bit difficult with "Across the Stars" from the Episode II soundtrack on my headphones, but I'll try - oh, shut up Yoda!) ... >I don't see why intermediate representations are that bad. I think we had a slight misunderstanding. Neither Neil nor I are against an intermediate representation (although he will call it differently), but we are against the use of a virtual interpediate processor (VIP). >It's just an issue of implementation: How fast do you want to write your dynarec and how >simple will it be? >I think IRs would open up better optimization possibilities because they're >easier to manipulate. Indeed. There should be an intermediate representation that holds the analyzed instructions of a whole block (either of a basic block or a translation unit, depends on how you want to work), since even the simplest peephole optimization would need a look-ahead each time you just analyzed an instruction and think it might be optimized in combination with one or two instructions following it. So if you don't have an pre-analyzed representation of the code block before translation you either have to do tedious lookups or you'll have a very primitve "direct translation" (that's how I call it) that only takes one instruction and translates it without looking at the context. The reason why I quit working on the dynarec I was programming on my Acorn was the fact that I was heading for such a direct translation and didn't like it. I obviously hadn't given it much thought in the beginning, learnt my lesson, and wanted to do more theory before starting a dynarec again. Now I'm still in the theory phase... >Does FX!32 use an IR? It does, but since FX!32 only translates from IA-32 to Alpha that intermediate representation should be designed to fit exactly that purpose. >IRs should be fine if you have one source processor and want to support >lots of targets. That is the idea behind Neil's layer approach. You have a source layer that analyzes the code of the source processor and then you can have different target layers that use this analytical data to generate the code. It is some kind of intermediate representation for sure, but relatively primitive, because it only holds the pre-decoded instructions in data structures. >Couldn't you just make the VIP very, very generic? Just simple arithmetic >and logic operations. In theory, everything could be represented this way >-- although it might mean a lot more work for the back end in order to >detect potential optimizations. It depends what you mean by simple arithmetics. Just take a look at how many logical instructions the PowerPC has (I think you should have a PPC manual handy). Which would you want to include? All? Then you aren't generic anymore. Only the most basic ones? Then you'll have to represent some of the instructions with two instructions on the traget layer. What about rotations? If you don't want to include them then you need at least three VIP instructions to simulate them. Addition and subtraction. Do you calculate the carry or not? What about overflow? If you want to make it generic then you cannot include these flags since there are many processors that don't have them or only check overflow with special instructions that aren't normally used (a C compiler for MIPS always uses 'addu', only Fortran compilers use 'add'). But when you have to simulate the flag calculations in the VIP code a very simple addition might eat up 5 or more VIP instructions. Multiplications. What does a 32-bit multiplication generate? Only a 32-bit result or the full 64-bit result? How about division? ARM and Alpha have no division at all! Skip it? SuperH, TriCore, and PA-RISC have a complicated division-step system. Want to include that? Is the remainder calculated by the division or is there a special instruction to calculate it? I'm still in the very basic integer logic and arithmetic instructions section, haven't touched the weird parts of some processors, or even FP yet, and still there are so many differences between certain processors that you either end up with half a dozen variants for each simple operation or you have simple VIP instructions and have to generate an average of half a dozen instructions in the VIP layer for each instruction in the source layer - there is no way you can still optimize that at the target layer! The best thing is to either have a very specific intermediate representation for the case that you have only one source layer and one target and don't intend to change that. If you might want to port it to a different processor later the best option is that the intermediate representation is an pre-decoded form of the single source instructions in a block, maybe with a few optimization and control flow hints, but nothing more complicated. But using a VIP will either complicate portability (which is ironic, because it was meant to be portable), or it'll ruin the quality of the target code. >I've heard the author of Modeler and Zinc mention he has the source code to >what he believes may be the fastest MIPS dynarec around (probably in terms >of the hobbyist emulation community -- I think this recompiler may have >been the one used in one of the free, closed-source Playstation emulators) I have no insight in that one and don't know if it might be used in any of the PSX emulators... >and it uses an intermediate representation for its optimization pass. That's very likely, because due to the simple MIPS instructions a lot of code sequences (SLT/BEQ, LUI/ORI, ...) can be optimized in the traget code, and these sequences are easier to find in a pre-decoded form than doing look- aheads when you think the current instruction might start such a sequence. >Are rotations even necessary any more? I can't think of the last time I >needed rotation while coding a C program. As Neil already said, they are good for endian conversions. They might be used more if more programming languages supported them, but it would be a serious portability issue, since you'd have to know how big the registers are and certain tricks wouldn't work. >Bart -- M.I.K.e Ankh if you love Isis. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon May 27 14:53:20 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g4RLr5J41642 for dynarec-outgoing; Mon, 27 May 2002 14:53:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020527143843.007da660@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 27 May 2002 14:38:43 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <0003a1fd04945221_mailit@pop3.dynarec.com> References: <3CE3528B.1080206@alphalink.com.au> <3.0.5.32.20020516134325.007d4380@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >this message (having seen Episode II put me in Star Wars mode instead of >processor mode...) After Episode I, I'll never be able to look at Star Wars the same way. :( >Ok, now back to the topic (might be a bit difficult with "Across the Stars" >from the Episode II soundtrack on my headphones, but I'll try - oh, shut up >Yoda!) ... Yoda says: "Fun dynamic recompilers are." >I think we had a slight misunderstanding. Neither Neil nor I are against an >intermediate representation (although he will call it differently), but we >are against the use of a virtual interpediate processor (VIP). I didn't mean a VIP. >The reason why I quit working on the dynarec I was programming on my Acorn >was the fact that I was heading for such a direct translation and didn't like >it. This is how SOPE, AdriPSX, and 1964 do it. The register allocation algorithm for 1964 is pretty primitive: It loads the required MIPS registers into the X86 regs, performs the operation, and if the next instruction uses the same registers, it doesn't write them back. Otherwise, it does. Now THAT'S a lot of fill/spill overhead. In DRSH2, I have 2 methods: Static allocation (up to 4 registers can be allocated) and dynamic allocation (done on a per-basic block basis by choosing the most frequently referenced registers.) I _might_ (if time permits and I don't get lazy) do a Psikyo SH-2 arcade hardware emulator because I found out it only uses one SH-2 and should be somewhat simple (the zooming and alpha-blending doesn't sound so simple, though ;)) This will allow me to see just how well DRSH2 can perform in a real world situation... >It does, but since FX!32 only translates from IA-32 to Alpha that >intermediate representation should be designed to fit exactly that purpose. That's what I meant by an intermediate representation... How about what ARMphetamine does? Something more than just having decoded source ops in a list. Most instructions which only use register operands would have a single IR statement to represent them, but loads and stores could be expanded into the actual operations required to calculate the effective address and then read it. This sort of expansion might make certain useful optimizations possible. For example, what if a given basic block loads up a register with a constant value and then uses it as an index. It would be possible to avoid calling memory handlers in the translated code -- the actual address could be resolved at recompile-time. This wouldn't be so easy without expanding certain instructions into multiple IR operations. I see the problem... But anyway, I wasn't interested in pursuing a VIP-type method anyway. >I have no insight in that one and don't know if it might be used in any of >the PSX emulators... I think PSEmuPro may have used this recompiler. Didn't the PSEmuPro guys do Impact? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 1 14:49:03 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g51Ll9B52212 for dynarec-outgoing; Sat, 1 Jun 2002 14:47:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Monday? From: "M.I.K.e" Message-ID: <0003a261f46404b9_mailit@pop3.dynarec.com> References: <3.0.5.32.20020524112316.007d4a00@dynarec.com> <583433026.20020525121025@dynarec.com> Date: Sat, 01 Jun 2002 23:22:05 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That reminds me, Mike, I'll reply to you on Monday when I get back to >work - I've been working to a pretty tight schedule recently. Ok, Monday then... But which week? ;-) >Speaking of work though, did I actually tell everyone here that I'm >now a games programmer (working in networking and patching Worms >Armageddon and Worms World Party) at Team17 now - and have been for >the past 7 months? If not... oops! I don't remember if I told you... I think you did. >Neil. -- M.I.K.e Pereant, inquit, qui ante nos nostra dixerunt. "Confound those who have said our remarks before us." -- Aelius Donatus --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 1 14:49:04 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g51LlDJ52218 for dynarec-outgoing; Sat, 1 Jun 2002 14:47:14 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) From: "M.I.K.e" Message-ID: <0003a261e95d15b9_mailit@pop3.dynarec.com> References: <3CE3528B.1080206@alphalink.com.au> <3.0.5.32.20020527143843.007da660@dynarec.com> Date: Sat, 01 Jun 2002 23:19:00 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >After Episode I, I'll never be able to look at Star Wars the same way. :( Forget Episode I and simply watch Episode II. I currently count it as the second best Star Wars movie (after The Empire Strikes Back, of course). That might change when I see the film more often, but I don't think so, because the German translation and dubbing were really bad and I still think it was great, so I bet that the original will be even better. >Yoda says: "Fun dynamic recompilers are." Actually that green little gnome said "There is no try" again... Oops, I think he heard that... now he puts down his cane... ARGH! >I didn't mean a VIP. Yeah, but I did because Evan Clark speculated about the use of his abstract processor as a tool for translation. [direct translation] >This is how SOPE, AdriPSX, and 1964 do it. To change one of Yoda's quote a bit: "That's why they fail" - at least in terms of speed. But I guess you mean the x86 part of Sope, since the Alpha part caches all MIPS registers in pairs in the Alpha registers IIRC. >The register allocation algorithm for 1964 is pretty primitive: >It loads the required MIPS registers into the X86 regs, performs the operation, >and if the next instruction uses the same registers, it doesn't write them back. >Otherwise, it does. >Now THAT'S a lot of fill/spill overhead. Indeed. That deminishes most of the effect of doing dynamic recompilation and is rather close to threaded code. >In DRSH2, I have 2 methods: Static allocation (up to 4 registers can be >allocated) NB will be pleased to hear that ;-) >and dynamic allocation (done on a per-basic block basis by >choosing the most frequently referenced registers.) That's another reason why it is recommended to analyze the whole block first and then generate the target code based on the gathered information. >I _might_ (if time permits and I don't get lazy) do a Psikyo SH-2 arcade >hardware emulator Never heard of it, but I have to admit that I'm not that much into arcade hardware... >because I found out it only uses one SH-2 and should be >somewhat simple Yeah, one of the problem with the SH-2 is that despite it being a very nice processor it's often used in pairs. >(the zooming and alpha-blending doesn't sound so simple, >though ;)) And I always thought the most hated aspect of emulation is sound ;-) >This will allow me to see just how well DRSH2 can perform in a >real world situation... Good luck with that project! >How about what ARMphetamine does? Something more than just having decoded >source ops in a list. Jules uses something he calls phetacode and I think Dave reused it for tARMac without major changes. Phetacode 'instructions' are a bit simpler than ARM instructions to make the translation to x86 easier. But one of the main reasons for using an easier representation is most likely the fact that ARM doesn't have independent shift/rotate instructions but does such operations in parallel to an arbitrary data processing instruction. If you'd leave that feature in the intermediate representation the encoding of a single instruction would be rather complex and it would complicate the analysis of control flow, especially when the target processor doesn't have such a feature (and apart from ARM I don't know any other; there are some architectures with a scaled addition for faster array offset calculation, but that's not like what ARM can do). >Most instructions which only use register operands would have a single IR >statement to represent them, but loads and stores could be expanded into >the actual operations required to calculate the effective address and then >read it. That's a good idea since load/store complexity can be quite different from architecture to architecture. It might be even a good idea to mark those calculations with special pseudo-opcodes (eg. add-address) in the IR to make it clear for the optimizer that they belong to the memory operation. I'm very sure that Jules' phetacode also simplifies load/store because ARM can have a base register with an optionally constant shifted index register and a write-back option (ie. the base register is updated with the effective address) in a single instruction, which is quite complex for a RISC. >This sort of expansion might make certain useful optimizations possible. >For example, what if a given basic block loads up a register with a >constant value and then uses it as an index. It would be possible to avoid >calling memory handlers in the translated code -- the actual address could >be resolved at recompile-time. This wouldn't be so easy without expanding >certain instructions into multiple IR operations. Certainly sounds interesting. One guy called Paul Clifford once told me about an idea to improve the speed of processors with very few registers, like the 6502, by trying to find certain memory locations that are often used in loops and temporarily hold that value in a register instead. >I think PSEmuPro may have used this recompiler. Didn't the PSEmuPro guys do >Impact? Good question... I haven't used Impact yet, so I'm not sure who did that anyway. >Bart -- M.I.K.e Certainly there are things in life that money can't buy, but it's very funny- - Did you ever try buying them without money? -- Ogden Nash --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 1 21:08:54 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5248fd52526 for dynarec-outgoing; Sat, 1 Jun 2002 21:08:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020601205332.007dcdf0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 01 Jun 2002 20:53:32 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <0003a261e95d15b9_mailit@pop3.dynarec.com> References: <3CE3528B.1080206@alphalink.com.au> <3.0.5.32.20020527143843.007da660@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >To change one of Yoda's quote a bit: "That's why they fail" - at least in >terms of speed. >But I guess you mean the x86 part of Sope, since the Alpha part caches all >MIPS registers in pairs in the Alpha registers IIRC. It could fit all of them into 16 Alpha registers then, right? It doesn't need to do any looking ahead -- and it doesn't do so. The dynarec is really simple. I wonder if it would be worthwhile to actually construct a list first, then try to optimize whatever can be optimized away and then use some sort of a scheduling algorithm to generate the most optimal Alpha code. Will the speed up be significant enough to justify the effort? >Indeed. That deminishes most of the effect of doing dynamic recompilation and >is rather close to threaded code. Why are they called threaded interpreters, BTW? >>This will allow me to see just how well DRSH2 can perform in a >>real world situation... > >Good luck with that project! Actually, I've decided not to do it. There's other stuff I want to move on to. Right now I'm getting into 2D BSP trees because I'd like to do a simple 3D rendering engine. I'd also like to get into compilers. Has anyone on the list had experience with writing them? I've compiled a list of books and would like to know which would be best to get, because I've heard very conflicting reviews. >Certainly sounds interesting. >One guy called Paul Clifford once told me about an idea to improve the speed >of processors with very few registers, like the 6502, by trying to find >certain memory locations that are often used in loops and temporarily hold >that value in a register instead. That sounds interesting. But is a dynarec for such a processor even worth the trouble? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 3 12:19:59 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g53JJNr55305 for dynarec-outgoing; Mon, 3 Jun 2002 12:19:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) From: "M.I.K.e" Message-ID: <0003a2888c4a7df4_mailit@pop3.dynarec.com> References: <3CE3528B.1080206@alphalink.com.au> <3.0.5.32.20020601205332.007dcdf0@dynarec.com> Date: Mon, 03 Jun 2002 21:24:43 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [Sope on Alpha] >It could fit all of them into 16 Alpha registers then, right? Maybe one more for HI/LO. >It doesn't need to do any looking ahead -- and it doesn't do so. >The dynarec is really simple. It still has to copy the values to the registers that perform the action and back again, but there certainly is no memory access for the register values. >I wonder if it would be worthwhile to actually construct a list first, then >try to optimize whatever can be optimized away and then use some sort of a >scheduling algorithm to generate the most optimal Alpha code. Will the >speed up be significant enough to justify the effort? Probably, since most of the copying could be eliminated when a block only uses a few of the registers. >Why are they called threaded interpreters, BTW? Good question. Probably because you call the emulation routines "in a thread" without decoding instructions. >>Good luck with that project! >Actually, I've decided not to do it. There's other stuff I want to move on >to. Right now I'm getting into 2D BSP trees because I'd like to do a simple >3D rendering engine. You sure are a man with many talents! >I'd also like to get into compilers. Has anyone on the list had experience >with writing them? I bet NB does. >I've compiled a list of books and would like to know >which would be best to get, because I've heard very conflicting reviews. Maybe you could list the book you think that are interesting, and we try to comment on them if we know them and maybe add some you overlooked. >>One guy called Paul Clifford once told me about an idea to improve the speed >>of processors with very few registers, like the 6502, by trying to find >>certain memory locations that are often used in loops and temporarily hold >>that value in a register instead. >That sounds interesting. But is a dynarec for such a processor even worth >the trouble? At that time both Paul and I had an Acorn RiscPC as a main machine with a 200MHz StrongARM but the normal user had something like a 40MHz ARM7, so in that case a dynarec could make a difference. With todays fast machines though, I see a dynarec for an 8-bit processor merely as something to play with but not as some kind of serious tool. >Bart -- M.I.K.e The plot was designed in a light vein that somehow became varicose. -- David Lardner --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 3 13:49:19 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g53KnAJ55397 for dynarec-outgoing; Mon, 3 Jun 2002 13:49:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020603133356.007dd4a0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 03 Jun 2002 13:33:56 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <0003a2888c4a7df4_mailit@pop3.dynarec.com> References: <3CE3528B.1080206@alphalink.com.au> <3.0.5.32.20020601205332.007dcdf0@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Good question. Probably because you call the emulation routines "in a thread" >without decoding instructions. That makes sense... It's like a thread decorated with function pointers for beads ;) >Maybe you could list the book you think that are interesting, and we try to >comment on them if we know them and maybe add some you overlooked. x Compilers : Principles, Techniques, and Tools by Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman Building an Optimizing Compiler by Robert Morgan Advanced Compiler Design and Implementation by Steven S. Muchnick x Compiler Design in C by Allen I. Holub Compiler Construction: Principles and Practice by Kenneth C. Louden x Art of Compiler Design, The: Theory and Practice by Thomas Pittman, James Peters, Jim Peters x Introduction to Compiler Construction by Thomas W. Parsons Those marked by an "x" are available at my library. The last one is checked out but I'm planning on checking out the first 3 marked ones for a year. I've heard that the dragon book (Compilers: Principles, Techniques, and Tools) along with Holub's book are the best 2 to get started with before moving on to something more advanced. I think I'd like to start learning by the end of this month. Lexing and parsing sounds like its going to be kind of tedious and boring (regardless of whether I end up using tools like yacc and lex or do it by hand.) Code generation is probably the toughest part but it's what I want to learn about most :) Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 3 14:04:09 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g53L48o55430 for dynarec-outgoing; Mon, 3 Jun 2002 14:04:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 3 Jun 2002 14:07:18 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <3.0.5.32.20020603133356.007dd4a0@dynarec.com> Message-ID: <20020603140201.G21679-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Forgot to mention - yes, I've designed, written, and implemented about 3 compilers. I say "about" since I was part of a 4th project... > >Maybe you could list the book you think that are interesting, and we try to > >comment on them if we know them and maybe add some you overlooked. > x Compilers : Principles, Techniques, and Tools > by Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman This is considered the bible of compiler design. It's also the most theoretical/boring of the bunch, but teaches very good compiler design practices. > I've heard that the dragon book (Compilers: Principles, Techniques, and > Tools) along with Holub's book are the best 2 to get started with before > moving on to something more advanced. Dragon book - definitely. Don't know about Holub's book. > I think I'd like to start learning by the end of this month. Lexing and > parsing sounds like its going to be kind of tedious and boring (regardless > of whether I end up using tools like yacc and lex or do it by hand.) Lexing/parsing aren't that big of a deal. Lexing just breaks things down in to tokens, and the parsing just collects the tokens to be sure it fits a particular grammar. > Code > generation is probably the toughest part but it's what I want to learn > about most :) My advice about lex - don't use it. It's UNGODLY slow and overkill for almost every language/purpose. You should see the code it generates! It's easier just to do your own lexer, and it'll be lots faster. My original design of an autodependency creator took 45 seconds to run through the entire tree - using lex (flex, actually). With my own it takes 6. YACC Isn't too bad. It hides a lot of shift/reduce goings' on from you and makes it a bit easier to code. Plus, you'll have the added plus of being able to steal grammars from other compilers. ;-) And unfortunatley, the data you really want to know (optimization/code generation) is hardly ever covered, and even if it is, it's not in the detail that you'd like. That remains one of the black arts of compiler design. -->Neil ------------------------------------------------------------------------------- Neil Bradley chown -R us:us /*base* Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 3 15:29:52 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g53MTRB55539 for dynarec-outgoing; Mon, 3 Jun 2002 15:29:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 28 Apr 1960 11:45:42 -0500 (CDT) From: Graham Toal Message-Id: <196004281645.LAA04515@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Anyone want to help me out with something... Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com By coincidence I've put three compilers on the net in recent months that had never been released to the public before. Peter Robertson's Imp compiler for the Interdata http://www.gtoal.com/athome/edinburgh/mouses/source/imp/print/pass1.imp.html Peter Steven's Imp compiler for the Pentium (not yet browsable, but a similar program which translates the Imp language to C, based on the same compiler, is available here: http://www.gtoal.com/pizzabox/imptoc/pass2.i ) Hamish Dewar's Imp comiler for the 68000. http://www.gtoal.com/athome/utils/imp/imp22g-orig.imp.html admittedly these are all written in and for a language most of you will never have seen before, but it's not a hard language to read and the compilers are interesting, albeit rather old in style. I have slightly more interest in parsing than code generation, and I have some other code showing how to hack up a quick and easy parser for a simple language: http://www.gtoal.com/athome/utils/skimp/skimp.e (this one generates C as its output) and a full parser for a real language, but no code generation - this simply outputs the parse tree back as source statements (i.e. it's a petty-printer): http://www.gtoal.com/athome/utils/skimp/imp.e Both of the above use a yacc-replacement that I wrote myself, called "tacc". They're essentially the same program, but one is a toy exercise and the other is for a real documented language. Finally I have one very short example of generating threaded code (although not quite because it doesn't actually generate machine code into ram - it uses code generated by the compiler and embeds pointers to functions instead, for portability) which is not for practical use but interesting to read if you haven't done threaded code at all before: http://www.gtoal.com/athome/utils/threaded/ .../main.c.html testbed and harness around your 'compiled' code. Copy any of the three files below to "func.c" and compile main.c .../fib.c.html fibonacci function .../fact.c.html factorial function .../bench.c.html simple loop timing benchmark you could actually expand the above quite easily by adding a parser and some more support routines, into a basic or lisp threaded code interpreter quite easily. It may be that something like the above is appropriate for prototyping the correctness of a compiler before you go to a raw code generation phase? There's a *very* good book: P. J. Brown, Writing Interactive Compilers and Interpreters. John Wiley & Sons, New York, 1979, ISBN 0-471-27609-X. He was a university lecturer somewhere in England at the time he wrote that - I remember rumours that some of the good ideas had come from one of his research students, but regardless whose ideas they were, they are well written up in a highly practicable book. You *can* sit down with this book and write a compiler with it. Although it's about Basic, the principles hold for any language. > >Maybe you could list the book you think that are interesting, and we try to > >comment on them if we know them and maybe add some you overlooked. > > x Compilers : Principles, Techniques, and Tools > by Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman This is the official bible but a bit heavy on the theory side unless you're currently taking this as a comp sci class. > Building an Optimizing Compiler > by Robert Morgan > > Advanced Compiler Design and Implementation > by Steven S. Muchnick I just finished reading this one about a month ago, and I can give you a very strong recommendation about it: don't waste your money. Although on first glance when I read this on the shelves at Barnes & Noble, it appeared to be written by someone who had actually written a compiler and looked like it would be a practical book to work from, it was not. If this guy ever wrote a compiler he certainly didn't write the non-existent one described in the book which does all possible optimisations. The book is way too much theory and not enough practice. And GROSSLY overpriced. > x Compiler Design in C > by Allen I. Holub > > Compiler Construction: Principles and Practice > by Kenneth C. Louden > > x Art of Compiler Design, The: Theory and Practice > by Thomas Pittman, James Peters, Jim Peters > > x Introduction to Compiler Construction > by Thomas W. Parsons > > Those marked by an "x" are available at my library. The last one is checked > out but I'm planning on checking out the first 3 marked ones for a year. > > I've heard that the dragon book (Compilers: Principles, Techniques, and > Tools) along with Holub's book are the best 2 to get started with before > moving on to something more advanced. Dragon book, yes. There are a few others that I vaguely remember which I've lost which were beginners level (the names David Gries and JS Rohl spring to mind) but IMHO the best book for learning compilers if you're actually going to write on is Richard Bornat's "Understanding and Writing Compilers". Ah, here we are: Sidney Rohl An Introduction to Compiler Writing NY elsevier 1975 Slightly apropos of this, JS Rohl was one of the people who worked on the *original* compiler compiler, which was in fact built-in to one version of the language Atlas Autocode, whose direct descendant was the language Imp that I mentioned earlier! David Gries' book was "Compiler Construction For Digital Computers". His philosophy was "Never put off until run-time what you can do at compile time." It would also be from some time in the 70's. The basics don't change that much over the years, and I strongly recommend the older books before writers got too fancy, as in Muchnick. If you can get the Gries book I recommend doing so. > I think I'd like to start learning by the end of this month. Lexing and > parsing sounds like its going to be kind of tedious and boring (regardless > of whether I end up using tools like yacc and lex or do it by hand.) Code > generation is probably the toughest part but it's what I want to learn > about most :) Earlier in this post I referred to my own version of yacc (called "tacc", as in "That's a compiler-compiler???"). I recommend using it or any of the more advanced yacc/lex descendants. yacc and lex themselves (and bison, et al) are way too hairy for a first compiler. There are other products which are much easier to use and less likely to make mistakes. I wrote that grammar for Imp in a day because i had the right tool sitting around, but there are plenty of others better documented than my homebrew stuff that are equally good and much to be preferred over yacc. (See http://www.idiom.com/free-compilers/ECATEGORY/compiler-1.html ) So... plan of attack: 1) spend a day looking at all the parser generator tools. 2) formalise your language in BNF. 3) convert BNF to the flavor of your parser generator. 4) Get parser generator to parse source code, and output a textual parse tree. Once you've done that, which might take a week, you should be able to completely forget about the parser side and concentrate on the code generation. Although there are a couple of general purpose code generators out there, plus the whole GCC backend thing, if this is your first compiler, just pick your target architecture and output your code as ascii text in the form of assembler, which you then feed to a known working assembler to generate code. If you later want to generate code directly, it's a relatively trivial conversion. tedious, but a no-brainer. Worrying about the bits at this stage will distract you from the basics of code generation, and make debugging tens times harder than it need be. Final words: books are helpful, but there are a *lot* of compilers out there that you can look at, once you've got "the big picture" from the books. You'll probably learn more from other people's code is my guess. I didn't notice your target, but I'm guessing from your membership of dynarec that it's probably an older machine like a 6809 or 6502? In which case there are existing compilers which are short and sweet, and worth a study before you start on your own. Some URLs chosen at random from my bookmarks file: http://www.thefreecountry.com/developercity/freecompilers.shtml http://www.cc65.org/ http://sal.kachinatech.com/F/1/index.shtml http://www.idiom.com/free-compilers/TOOL/SmallC-1.html http://citeseer.nj.nec.com/Programming/CompilerOptimization/ regards G PS One free implementation hint: The word of the day is "triples". And make all the storage records the same size, you'll appreciate it later. You'll understand this when you get to that stage. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 3 15:32:40 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g53MWen55556 for dynarec-outgoing; Mon, 3 Jun 2002 15:32:40 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020603151726.007d7390@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 03 Jun 2002 15:17:26 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <20020603140201.G21679-100000@beacon.synthcom.com> References: <3.0.5.32.20020603133356.007dd4a0@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >And unfortunatley, the data you really want to know (optimization/code >generation) is hardly ever covered, and even if it is, it's not in the >detail that you'd like. That remains one of the black arts of compiler >design. "Advanced Compiler Design and Implementation" apparently is all about code generation. It's supposed to be an advanced-level book on the subject. Maybe that'll be something to look into down the road, but for now, I'll be content with just being able to generate executable programs ;) What would be a good first language to try to implement? Some subset of Pascal? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 3 16:13:28 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g53NDP055610 for dynarec-outgoing; Mon, 3 Jun 2002 16:13:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 4 Jun 2002 00:02:43 +0100 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) Message-ID: <20020604000243.A25383@cs.bris.ac.uk> References: <3CE3528B.1080206@alphalink.com.au> <3.0.5.32.20020601205332.007dcdf0@dynarec.com> <3.0.5.32.20020603133356.007dd4a0@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <3.0.5.32.20020603133356.007dd4a0@dynarec.com> User-Agent: Mutt/1.3.23i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > x Compilers : Principles, Techniques, and Tools > by Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman > > Building an Optimizing Compiler > by Robert Morgan > > Advanced Compiler Design and Implementation > by Steven S. Muchnick > > x Compiler Design in C > by Allen I. Holub > > Compiler Construction: Principles and Practice > by Kenneth C. Louden > > x Art of Compiler Design, The: Theory and Practice > by Thomas Pittman, James Peters, Jim Peters > > x Introduction to Compiler Construction > by Thomas W. Parsons > I'd add: Modern Compiler Implementation in {ML,C,Java} by Andrew Appel which is quite highly regarded (especially the ML version, the others are criticised for using examples which are essentially ML written in a C/Java style, not properly following the idioms of the respective languages. Though that might be a good thing.). Some stuff like compilation of object-oriented and functional languages is coverered, and there are chapters on SSA and pipelining & scheduling which aren't covered by the dragon book. The book is mainly targeted at compiling for RISC-like chips. I've been playing with the Objective Caml native compiler, it's quite nice, and probably worth a look. Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 3 17:21:41 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g540EU855693 for dynarec-outgoing; Mon, 3 Jun 2002 17:14:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 28 Apr 1960 13:29:54 -0500 (CDT) From: Graham Toal Message-Id: <196004281829.NAA04639@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > What would be a good first language to try to implement? Some subset of > Pascal? Some questions to ask yourself: do you want to write a batch language or an interactive one? do you want to write a compiler or an interpreter or a threaded code interpreter? do you want to use an existing language or write your own? all programmers eventually think they can invent better languages than what exists, and if you write your own compiler for your own language, you also get the immense fun of bootstrapping it! if an existing language, do you want to write for a new platform or one that exists already? (having a reference implementation is a good thing for your first try) do you want to handle a language best suited for general programming text manipulation maths graphics sound some other custom application - there are lots of fun languages people have forgotten such as LOGO and APL which are not only well documented and you can find examples of code, but by being old and forgotten they become uncommon and interesting! G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 3 21:43:34 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g544hPg55929 for dynarec-outgoing; Mon, 3 Jun 2002 21:43:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020603212801.007dd100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 03 Jun 2002 21:28:01 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... In-Reply-To: <196004281645.LAA04515@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Hamish Dewar's Imp comiler for the 68000. > http://www.gtoal.com/athome/utils/imp/imp22g-orig.imp.html Interesting. The entire compiler is implemented in that single source file, right? The language is a bit weird looking to me (since I'm mainly just a C/assembly/BASIC kind of guy ;)) >Finally I have one very short example of generating threaded code (although >not quite because it doesn't actually generate machine code into ram - it >uses code generated by the compiler and embeds pointers to functions instead, for >portability) which is not for practical use but interesting to read if you >haven't done threaded code at all before: I thought threaded code always just generated function pointers... My PowerPC emulator does this. It's a nice and easy-to-maintain way of doing things and makes implementing instructions very easy. >There's a *very* good book: P. J. Brown, Writing Interactive Compilers and >Interpreters. John Wiley & Sons, New York, 1979, ISBN 0-471-27609-X. Amazon has no reviews for this. There is a 1982 version, also; they're all out of print. >This is the official bible but a bit heavy on the theory side unless you're >currently taking this as a comp sci class. I just picked up a copy along with Holub's book today. The one thing that worries me from skimming these books is that they seem to skip around a lot. Lexers are covered through several chapters I think and I'm not sure when I would be expected to actually start experimenting by writing my own code. Holub's book apparently implements a small C compiler (missing some features such as floating point support.) It looks okay, but not great. I'm not doing this for a CS class, I just wanted to give it a shot to see if it will interest me. It certainly sounds interesting, but I also expect it to be very challenging. I'd like to start at the end of this month or early next month. Right now, I'm trying to figure out how to build BSP trees (I found out my method only works properly when there are no intersections :( ) and this will probably keep me busy for a while ;) >> Advanced Compiler Design and Implementation >> by Steven S. Muchnick > >I just finished reading this one about a month ago, and I can give you a >very strong recommendation about it: don't waste your money. Although on >first glance when I read this on the shelves at Barnes & Noble, it appeared >to be written by someone who had actually written a compiler and looked >like it would be a practical book to work from, it was not. If this guy >ever wrote a compiler he certainly didn't write the non-existent one >described in the book which does all possible optimisations. Muchnick led compiler projects for HP (PA-RISC) and Sun. >The book >is way too much theory and not enough practice. And GROSSLY overpriced. The reviews at Amazon say the complete opposite: http://www.amazon.com/exec/obidos/ASIN/1558603204/qid=1023163041/sr=1-1/ref= sr_1_1/103-0088262-5167805 Any way, it's too advanced for me for the time being :) >Dragon book, yes. There are a few others that I vaguely remember which >I've lost which were beginners level (the names David Gries and JS Rohl spring to >mind) but IMHO the best book for learning compilers if you're actually >going to write on is Richard Bornat's "Understanding and Writing Compilers". The single review of this one at Amazon gives it 5 stars and says it's good at explaining the mechanics of parsing rather than throwing math and proofs at the reader. I'd have to get it used. Is it really worth it? >David Gries' book was "Compiler Construction For Digital Computers". His philosophy >was "Never put off until run-time what you can do at compile time." It would >also be from some time in the 70's. The basics don't change that much over >the years, and I strongly recommend the older books before writers got >too fancy, as in Muchnick. I've heard a "law" that compiler performance doubles every 18 years. I forgot the name of the guy who said this, but he is a researcher working for Microsoft. He isn't happy with the fact that compilers are still based on a 1950's-era design. >Earlier in this post I referred to my own version of yacc (called "tacc", >as in "That's a compiler-compiler???"). I recommend using it or any of the >more advanced yacc/lex descendants. yacc and lex themselves (and bison, et al) >are way too hairy for a first compiler. Should I use one of these tools are just try to do it by hand first? I've been hearing about different types of parsers, but how much do they affect a compiler? For a first-time compiler, I don't think it would matter at all and the simplest to implement type of parser would probably suit me just fine. But suppose I was trying to write a really sophisticated compiler (especially in terms of the optimizations it can perform) -- would it matter much then? Don't all the parsers try to generate the same sort of data (with the difference being speed of the compiler, I imagine)? >Although there are a couple of general purpose code generators out there, >plus the whole GCC backend thing, if this is your first compiler, just >pick your target architecture and output your code as ascii text in the >form of assembler, which you then feed to a known working assembler to >generate code. That's kind of what I was planning to do. If I choose to do an X86 compiler, I'll use NASM as my assembler. I'll probably end up installing FreeBSD again and I'll have to bite the bullet once and for all and force myself to learn to use emacs ;) I'd like to be able to generate code in a simple but usable binary format. I think ELF under FreeBSD would be a good choice. My other choice would be DOS but I'd like to do 32-bit code and that would require using an extender which I think would be messy to get right. Win32 would probably be a pain all around unless I just wanted to do console applications. >Final words: books are helpful, but there are a *lot* of compilers out there that >you can look at, once you've got "the big picture" from the books. I've got the source to Watcom and to Open64 (an IA-64 compiler based on SGI's Pro64) and I don't understand any of it ;) I downloaded them just for the heck of it. >I didn't notice your >target, but I'm guessing from your membership of dynarec that it's probably an >older machine like a 6809 or 6502? Two possible non-X86 targets for me would be the 68000 (Sega Genesis) and SH-2 (Sega Saturn.) >http://www.thefreecountry.com/developercity/freecompilers.shtml >http://www.cc65.org/ >http://sal.kachinatech.com/F/1/index.shtml >http://www.idiom.com/free-compilers/TOOL/SmallC-1.html >http://citeseer.nj.nec.com/Programming/CompilerOptimization/ Thanks for the links! >PS One free implementation hint: The word of the day is "triples". Does this have anything to do with intermediate representations? Operations with 2 operands and a destination? >And make all the storage records the same size, you'll appreciate >it later. You'll understand this when you get to that stage. I don't know what you mean here... Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 3 21:45:29 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g544jTp55945 for dynarec-outgoing; Mon, 3 Jun 2002 21:45:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020603213011.007db100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 03 Jun 2002 21:30:11 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <20020604000243.A25383@cs.bris.ac.uk> References: <3.0.5.32.20020603133356.007dd4a0@dynarec.com> <3CE3528B.1080206@alphalink.com.au> <3.0.5.32.20020601205332.007dcdf0@dynarec.com> <3.0.5.32.20020603133356.007dd4a0@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'd add: > Modern Compiler Implementation in {ML,C,Java} > by Andrew Appel >which is quite highly regarded (especially the ML version, the others >are criticised for using examples which are essentially ML written in a >C/Java style, not properly following the idioms of the respective >languages. Though that might be a good thing.). I looked at the review of this at Amazon a few times while making my list, and I couldn't decide whether it was worth adding it. I think there were some mixed opinions about it. I don't know ML. I'd prefer to have examples in C or some really clear pseudo-code. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jun 3 21:59:25 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g544xOk55967 for dynarec-outgoing; Mon, 3 Jun 2002 21:59:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020603214407.007de7a0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 03 Jun 2002 21:44:07 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <196004281829.NAA04639@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >do you want to write a compiler or an interpreter or a threaded code >interpreter? A compiler. >do you want to use an existing language or write your own? Preferrably an existing language. Maybe a stripped down version of an existing language? Eventually, doing a C compiler would be fun, but I'm afraid it might be overkill to start with. I could just try to do a stripped down version of C. >do you want to handle a language best suited for > general programming > text manipulation > maths > graphics > sound > some other custom application Definitely not something with a specific purpose. I'd prefer a general programming language which I could produce an executable out of and run it just like an ordinary program. >- there are lots of fun languages people have forgotten such as LOGO and APL >which are not only well documented and you can find examples of code, but by >being old and forgotten they become uncommon and interesting! LOGO... the turtle language! Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 4 01:14:43 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g548EYR56176 for dynarec-outgoing; Tue, 4 Jun 2002 01:14:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 4 Jun 2002 10:04:11 +0200 (CEST) From: Gwenole Beauchesne X-X-Sender: gbeauchesne@thalys.mandrakesoft.com To: dynarec@dynarec.com Subject: Re: DYNAREC: Anyone want to help me out with something... In-Reply-To: <3.0.5.32.20020603212801.007dd100@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Mon, 3 Jun 2002, Bart wrote: > I've got the source to Watcom and to Open64 (an IA-64 compiler based on > SGI's Pro64) and I don't understand any of it ;) I downloaded them just > for the heck of it. Grab the ORC tutorials, that should help. ;-) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 4 01:42:22 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g548gLC56211 for dynarec-outgoing; Tue, 4 Jun 2002 01:42:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 4 Jun 2002 01:45:33 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <3.0.5.32.20020603151726.007d7390@dynarec.com> Message-ID: <20020604012412.L23339-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > What would be a good first language to try to implement? Some subset of > Pascal? I've always maintained that Pascal is a waste of time - to implement or to use, when there are plenty of other mature languages (aka C) that are more widely known and used. I'd recommend implementing C. You probably won't have to worry about floating point libraries or implementing every single library function, but if you get the basic compiler working, you'll be doing quite a bit! It took us two semesters in college to write ours (it was an Oberon compiler - sort of a C/Pascal/BASIC hybrid). >The one thing that worries me from skimming these books is that they seem >to skip around a lot. Lexers are covered through several chapters I think >and I'm not sure when I would be expected to actually start experimenting >by writing my own code. The Dragon book does a good job of keeping the components separate. Create the lexer first, then the grammar layer, plug the function covers in to the grammar, then do your code emission/optimization. >I've heard a "law" that compiler performance doubles every 18 years. I >forgot the name of the guy who said this, but he is a researcher working >for Microsoft. Sounds like the misappropriated and taken out of context Moore's law which dictates that the power of a desktop PC doubles every 18 months. I've not heard the 18 month law WRT compilers. And based on past experiences, compilers don't double in speed every 18 months. In fact, I can't think of one that actually has! >>Earlier in this post I referred to my own version of yacc (called "tacc", >>as in "That's a compiler-compiler???"). I recommend using it or any of the >>more advanced yacc/lex descendants. yacc and lex themselves (and bison, et al) >>are way too hairy for a first compiler. >Should I use one of these tools are just try to do it by hand first? I've >been hearing about different types of parsers, but how much do they >affect >a compiler? Lex is a waste of time - implement your own lexer. You'll have a better piece of code that'll run faster. There is merit to using YACC. It will teach you to think stack based when dealing with tokens and grammar. It does get weird sometimes, especially when you get in to order precedence and whatnot, but it'll teach you how to think like a compiler. Of course, the code emission - you're on your own. I'd recommend just emitting assembly language and feeding that to NASM or some other assembler. >My other choice would be DOS but I'd like to do 32-bit code and that >would >require using an extender which I think would be messy to get right. Untrue. DOS Extenders are transparent utilities that automatically run and put the processor in "real big" mode. There is no futzing with anything you'd have to do. Just create your program using something that uses a DOS extender (Watcom) and it'll automatically get invoked. Voila - the entire 4 gig address space is yours. >>And make all the storage records the same size, you'll appreciate >>it later. You'll understand this when you get to that stage. >I don't know what you mean here... I'm not totally sure what Graham means here, either, but if I'm correct, he's talking about the parse nodes all being the same size, and if that's what he means, yes, he's absolutely right! You'll stand to pick up quite a bit of compiler speed using fixed size nodes. >I've >been hearing about different types of parsers, but how much do they >affect >a compiler? Hm... well, "affect" isn't quite the right question. Are you asking what impact each type of parser would have on the implementation/code generation of a given compiler? FWIW, YACC Is a LALR(1) (Left associative, left reduction) parser. Here's a simple YACC script: %token INTEGER number: NUMBER | '-' NUMBER ; expression: NUMBER | expression '+' NUMBER | expression '-' NUMBER | expression '*' NUMBER | expression '/' NUMBER ; I probably have a shift/reduce conflict with the expression '-' NUMBER and '-' NUMBER, but hopefully you can get the idea. For a first-time compiler, I don't think it would matter at all and the simplest to implement type of parser would probably suit me just fine. Oh ... also, pick up the O'Reilly book "lex & yacc". Even if you don't use lex, it'll teach you quite about about how it works/behaves, and will answer the mysteries of YACC, too. Also keep in mind that YACC will only parse the tokens. Higher level concepts, such as typechecking and whatnot, are up to you to check! >I don't know ML. I'd prefer to have examples in C or some really clear >pseudo-code. Are you looking for a lexer perhaps? Or a C grammar? I can email you a lexer that acts "lex"-like in its APIs and you can get a full ANSI C grammar here: http://www.lysator.liu.se/c/ANSI-C-grammar-y.html -->Neil ------------------------------------------------------------------------------- Neil Bradley chown -R us:us /*base* Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 4 04:20:16 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g54BK7H56821 for dynarec-outgoing; Tue, 4 Jun 2002 04:20:07 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 4 Jun 2002 13:10:37 +0200 From: Victor Moya del Barrio To: dynarec@dynarec.com Subject: DYNAREC: Course about VM Message-ID: <20020604111037.GA31994@ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.3.25i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Jim E. Smith is going ot teach an intensive course here in my university (which in fact is the same course it does at Wisconsin) about Virtual Machines. It has started today with a fast brief of computer architecture (which I think was a bit too boring, it was first year stuff in my uni.). But the important is that after this first class, the outline and some stuff i have seen in the slides (that are in the website below), it is the more near to an 'Emulation Programming Course' I could think about (well, if it has as a case study Mega Drive emulation it would be even more nearer ;). And it seems to talk about most of the important topics. Not something for 'advanced emulator programmers' as most in this list but may be something that serious (not the tipical script kidz asking for how to do a PS2 or XBOX emulator) programmers could be interested to start learning about emulation programming. This for example could be in the way of the FAQ that it was being talked about in RetroGames Forum (with a very big first Q/A to keep away kidz ;). Just in case you want to take a look: http://www.ece.wisc.edu/~jes/ece902.html Take a look to the last questing. This is the more emulation related question I have ever seen in an university exam ;). http://www.ece.wisc.edu/~jes/902/exam1 Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 4 08:43:39 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g54FhVu57053 for dynarec-outgoing; Tue, 4 Jun 2002 08:43:31 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Compiler Books (was: DYNAREC: Anyone want to help me out with something...) From: "M.I.K.e" Message-ID: <0003a299a6a8511c_mailit@pop3.dynarec.com> References: <3CE3528B.1080206@alphalink.com.au> <3.0.5.32.20020603133356.007dd4a0@dynarec.com> Date: Tue, 04 Jun 2002 17:48:59 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That makes sense... It's like a thread decorated with function pointers for >beads ;) "Hey honey, I made you a threaded interpreter instead of the string of pearls you wanted for your birthday." *bang* "What did I do wrong now?" >x Compilers : Principles, Techniques, and Tools > by Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman The standard dragon book. As NB says it's a bit dry, but it is the standard nontheless. >Building an Optimizing Compiler >by Robert Morgan Don't know that one... >Advanced Compiler Design and Implementation >by Steven S. Muchnick I have that one on my shelf and it looks interesting (I think Dave used some of the hints for optimization in tARMac), but I agree with Graham that it's highly overpriced. >x Compiler Design in C > by Allen I. Holub > >Compiler Construction: Principles and Practice >by Kenneth C. Louden > >x Art of Compiler Design, The: Theory and Practice > by Thomas Pittman, James Peters, Jim Peters > >x Introduction to Compiler Construction > by Thomas W. Parsons Don't know any of these - strange.... I have another book here: The Theory and Practice of Compiler Writing Jean-Paul Tremblay, Paul G. Sorenson It's not *that* practical after all, but not as dry as the dragonbook either, but the book might be out of print. >I think I'd like to start learning by the end of this month. Lexing and >parsing sounds like its going to be kind of tedious and boring (regardless >of whether I end up using tools like yacc and lex or do it by hand.) Code >generation is probably the toughest part but it's what I want to learn >about most :) Maybe you should take a look at this book: A Retargetable C Compiler: Design and Implementation Christopher Fraser, David Hanson It describes a whole ANSI C compiler called 'LCC' (you might have heard of it) and since the authors wanted the compiler to be easily retargetable but still fast they took a different approach: no lex and yacc is used, scanner and parser are handcoded, but the the code generator is generated by some tool they call 'lburg'. I guess this is probably the most practiacally thing you'll find (almost half of the book is about code generation), especially since the compiler has been further developed and the new source code is available for download. Take a look at the web page for further information: http://www.cs.princeton.edu/software/lcc/ Another book that isn't about compilers but has chapters about code generation and code improvement is: Programming Language Pragmatics Michael L. Scott >Bart -- M.I.K.e There's an old proverb that says just about whatever you want it to. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 4 11:24:56 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g54IOZF57254 for dynarec-outgoing; Tue, 4 Jun 2002 11:24:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020604110854.007e1c20@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 04 Jun 2002 11:08:54 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... In-Reply-To: References: <3.0.5.32.20020603212801.007dd100@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Grab the ORC tutorials, that should help. ;-) > Thanks! I'm downloading the PDF right now. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 4 11:41:19 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g54IfHM57285 for dynarec-outgoing; Tue, 4 Jun 2002 11:41:17 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020604112554.007e4ab0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 04 Jun 2002 11:25:54 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <20020604012412.L23339-100000@beacon.synthcom.com> References: <3.0.5.32.20020603151726.007d7390@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'd recommend implementing C. You probably won't have to worry about >floating point libraries or implementing every single library function, >but if you get the basic compiler working, you'll be doing quite a bit! It >took us two semesters in college to write ours (it was an Oberon compiler >- sort of a C/Pascal/BASIC hybrid). Okay. C would definitely be the most interesting if I got the compiler to actually produce code because then I might actually be able to put the compiler to real work. >Sounds like the misappropriated and taken out of context Moore's law which >dictates that the power of a desktop PC doubles every 18 months. I've not >heard the 18 month law WRT compilers. And based on past experiences, >compilers don't double in speed every 18 months. In fact, I can't think of >one that actually has! I found where the comment originated from: http://research.microsoft.com/~toddpro/ >Lex is a waste of time - implement your own lexer. You'll have a better >piece of code that'll run faster. There is merit to using YACC. It will >teach you to think stack based when dealing with tokens and grammar. So using a tool like YACC is a good idea and then? Should I use YACC, Bison, or something else? >Untrue. DOS Extenders are transparent utilities that automatically run and >put the processor in "real big" mode. There is no futzing with anything >you'd have to do. Just create your program using something that uses a DOS >extender (Watcom) and it'll automatically get invoked. Voila - the entire >4 gig address space is yours. I was talking about actually linking in the extender and producing code for it. Don't some of the extenders have certain requirements that the compiler might have to know about? Watcom seems to be pretty flexible because it allows for lots of extenders. >Hm... well, "affect" isn't quite the right question. Are you asking what >impact each type of parser would have on the implementation/code >generation of a given compiler? Yes, that's what I meant. >FWIW, YACC Is a LALR(1) (Left associative, left reduction) parser. Here's >a simple YACC script: > >%token INTEGER > >number: NUMBER > | '-' NUMBER > ; I take it this defines a type of number referred throughout the script as NUMBER which can also be defined as -NUMBER. >expression: > NUMBER > | expression '+' NUMBER > | expression '-' NUMBER > | expression '*' NUMBER > | expression '/' NUMBER > ; An expression can be a number, or expression+NUMBER, etc. I take it that in a real situation for a language like C there would also be definitions like this: | expression '+' expression >Oh ... also, pick up the O'Reilly book "lex & yacc". Even if you don't use >lex, it'll teach you quite about about how it works/behaves, and will >answer the mysteries of YACC, too. Also keep in mind that YACC will only >parse the tokens. Higher level concepts, such as typechecking and whatnot, >are up to you to check! I'll make sure to pick it up next time I'm at B&N or Borders. >Are you looking for a lexer perhaps? Or a C grammar? I can email you a >lexer that acts "lex"-like in its APIs and you can get a full ANSI C >grammar here: It wouldn't hurt to have a look at that lexer :) You did suggest that writing my own lexer would work best, so I'll probably end up doing that. >http://www.lysator.liu.se/c/ANSI-C-grammar-y.html Should I try to implement a C grammar myself and see if I can get it right (using this to check against)? Perhaps I should write a grammar first for a simple expression evaluator and then implement it as a simple command line utility or something? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 4 11:47:19 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g54IlBL57302 for dynarec-outgoing; Tue, 4 Jun 2002 11:47:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020604113149.007e7320@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 04 Jun 2002 11:31:49 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Compiler Books (was: DYNAREC: Anyone want to help me out with something...) In-Reply-To: <0003a299a6a8511c_mailit@pop3.dynarec.com> References: <3CE3528B.1080206@alphalink.com.au> <3.0.5.32.20020603133356.007dd4a0@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >A Retargetable C Compiler: Design and Implementation >Christopher Fraser, David Hanson > >It describes a whole ANSI C compiler called 'LCC' (you might have heard of >it) and since the authors wanted the compiler to be easily retargetable but >still fast they took a different approach: no lex and yacc is used, scanner >and parser are handcoded, but the the code generator is generated by some >tool they call 'lburg'. I've heard about this book. Is it worth picking it up? The important thing is: Is it well written? Does it do a good job of explaining the concepts? I imagine if the parser is written by hand it must be explained fairly well. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 4 12:39:57 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g54JdDl57360 for dynarec-outgoing; Tue, 4 Jun 2002 12:39:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 4 Jun 2002 12:42:26 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <3.0.5.32.20020604112554.007e4ab0@dynarec.com> Message-ID: <20020604122840.I27870-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >but if you get the basic compiler working, you'll be doing quite a bit! It > >took us two semesters in college to write ours (it was an Oberon compiler > >- sort of a C/Pascal/BASIC hybrid). > Okay. C would definitely be the most interesting if I got the compiler to > actually produce code because then I might actually be able to put the > compiler to real work. It'll be a few months to implement, a lifetime to debug and make really useful.; -) > >heard the 18 month law WRT compilers. And based on past experiences, > >compilers don't double in speed every 18 months. In fact, I can't think of > >one that actually has! > I found where the comment originated from: > http://research.microsoft.com/~toddpro/ Ah, it's 18 *YEARS*, not *MONTHS*. Duh! > >piece of code that'll run faster. There is merit to using YACC. It will > >teach you to think stack based when dealing with tokens and grammar. > So using a tool like YACC is a good idea and then? Should I use YACC, > Bison, or something else? Yes, I think YACC is a good idea to use/teach yourself. How it's used and the concepts behind it will be helpful to you. > >you'd have to do. Just create your program using something that uses a DOS > >extender (Watcom) and it'll automatically get invoked. Voila - the entire > >4 gig address space is yours. > I was talking about actually linking in the extender and producing code for > it. Don't some of the extenders have certain requirements that the compiler > might have to know about? Oh. Well, you could just make a C stub that "gets things started" and then have it go execute your NASM'd code as a function call. ;-) > >%token INTEGER > > > >number: NUMBER > > | '-' NUMBER > > ; > I take it this defines a type of number referred throughout the script as > NUMBER which can also be defined as -NUMBER. Whoops. Replace the "INTEGER" above with "NUMBER". %toekn Indicates the token types that are returned from your lexer - they're enumerations. But you can put your unary minus check in your lexer or your grammar parser. I'd recommend putting it in your lexer to make things easier. For example: 5 + 7 - -4 You have two choices of parsing: NUMBER '+' NUMBER '-' NUMBER Or: NUMBER '+' NUMBER '-' '-' NUMBER The latter is more difficult to deduce. Did the implementor mean a post decrement or did he mean a negative number? The former is much easier, obviously. The unary minus debate is one for the ages, and you'll get widely varying opinions on it. I like the top version because it's easy to implement. The bottom version is tougher because it needs to take context in to account. Yuck! > >expression: > > NUMBER > > | expression '+' NUMBER > > | expression '-' NUMBER > > | expression '*' NUMBER > > | expression '/' NUMBER > > ; > An expression can be a number, or expression+NUMBER, etc. Or expression+expression+NUMBER, or as many expressions as you want. It's recursive, so: 3 + 5 * 7 + 4 / 2 + 4 - 1 With the above grammar yields (in token speak): NUMBER '+' NUMBER '* ' NUMBER '+' NUMBER '/' NUMBER '+' NUMBER '-' NUMBER So when I have another grammar like: statement: | variable '=' expression ';' {$$ = Assign($1, $3);} ; When the "expression" part is evaluated, I now have a head pointer to the parse tree for the entire expression. The {$$...} code above is C code you put inside the grammar to execute when that cover is matched. > I take it that in a real situation for a language like C there would also > be definitions like this: > | expression '+' expression Nope, because that's endless. It's tough for me to explain - perhaps the Dragon book will yield better results in an explanation. > >Are you looking for a lexer perhaps? Or a C grammar? I can email you a > >lexer that acts "lex"-like in its APIs and you can get a full ANSI C > >grammar here: > It wouldn't hurt to have a look at that lexer :) You did suggest that > writing my own lexer would work best, so I'll probably end up doing that. Correct. Have a look at how a lexer works so you get the idea of regular expressions and whatnot. Then, realize that the concept is good and the implementation sucks and just write your own. ;-) > >http://www.lysator.liu.se/c/ANSI-C-grammar-y.html > Should I try to implement a C grammar myself and see if I can get it right > (using this to check against)? The ANSI C grammar above does have some other problems (I forget what exactly), but it might be an interesting exercise for you to try to implement it yourself. > Perhaps I should write a grammar first for a simple expression evaluator > and then implement it as a simple command line utility or something? Bingo. Not a bad idea. The nice thing about the lex/yacc book is it has a SQL parser built in to it. It also gives an example of how to implement a calculator. -->Neil ------------------------------------------------------------------------------- Neil Bradley chown -R us:us /*base* Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 4 12:57:09 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g54Jv8X57389 for dynarec-outgoing; Tue, 4 Jun 2002 12:57:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 4 Jun 2002 13:00:22 -0700 (PDT) From: Neil Bradley To: Subject: Re: Compiler Books (was: DYNAREC: Anyone want to help me out with something...) In-Reply-To: <3.0.5.32.20020604113149.007e7320@dynarec.com> Message-ID: <20020604124236.C27870-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > The important thing is: Is it well written? Does it do a good job of > explaining the concepts? Unknown about the book, but the code sure stinks. No comments, inconsistent indendation/tabbing, lack of whitespace, and lousy variable naming conventions. It's almost as bad as gcc! -->Neil ------------------------------------------------------------------------------- Neil Bradley chown -R us:us /*base* Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jun 4 18:00:18 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g55104b57642 for dynarec-outgoing; Tue, 4 Jun 2002 18:00:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3CFD60B3.4080303@alphalink.com.au> Date: Wed, 05 Jun 2002 10:52:03 +1000 From: Evan Clarke User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.0rc3) Gecko/20020523 X-Accept-Language: en-us, en, en-au MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) References: <3.0.5.32.20020603151726.007d7390@dynarec.com> <3.0.5.32.20020604112554.007e4ab0@dynarec.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Bart wrote: > Perhaps I should write a grammar first for a simple expression evaluator > and then implement it as a simple command line utility or something? Hi Bart, I did have a long email written, but my computer decided to kick-the-bucket just before I finished, and as I am about to go out, I will just put the links here. Here are some links that I have found useful whilst playing with Flex/Bison. http://ds9a.nl/lex-yacc/ Lex/Yacc HowTo. Pretty sketchy, but still alright. http://www.gnu.org/manual/bison-1.25/bison.html Bison Manual Includes examples such as Reverse Polish Notation, Infix Calculator and a Multifunctional Calculator. It implements its own lexer as it is the Bison manual after all. http://www.peroxide.dk/tuts_scr.shtml A tutoral on making a compiler. Quite detailed even though it is not yet finished. Worth a read. http://www.flipcode.com/tutorials/tut_scr01.shtml An ~8 part series on implementing a scripting engine. Pretty good. Hope that these links help. -- Evan Clarke --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 5 13:04:13 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g55K2TJ59060 for dynarec-outgoing; Wed, 5 Jun 2002 13:02:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020605124652.007e0100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 05 Jun 2002 12:46:52 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <20020604122840.I27870-100000@beacon.synthcom.com> References: <3.0.5.32.20020604112554.007e4ab0@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Ah, it's 18 *YEARS*, not *MONTHS*. Duh! Yeah, that's what I said ;) >But you can put your unary minus check in your lexer or your grammar >parser. I'd recommend putting it in your lexer to make things easier. For >example: > > 5 + 7 - -4 > >You have two choices of parsing: > >NUMBER '+' NUMBER '-' NUMBER > >Or: > >NUMBER '+' NUMBER '-' '-' NUMBER > >The latter is more difficult to deduce. Did the implementor mean a post >decrement or did he mean a negative number? The former is much easier, >obviously. > >The unary minus debate is one for the ages, and you'll get widely varying >opinions on it. I like the top version because it's easy to implement. The >bottom version is tougher because it needs to take context in to account. >Yuck! It sounds like a pain to me either way. Of course, that might be because I haven't actually tried writing a lexer or real parser. What if you have an expression like this: i = 5- - ((((3)))); ? How would a lexer be able to see the -3 easier than a parser? Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 5 13:04:24 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g55K4NN59070 for dynarec-outgoing; Wed, 5 Jun 2002 13:04:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020605124848.007e0100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 05 Jun 2002 12:48:48 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <3CFD60B3.4080303@alphalink.com.au> References: <3.0.5.32.20020603151726.007d7390@dynarec.com> <3.0.5.32.20020604112554.007e4ab0@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I did have a long email written, but my computer decided to >kick-the-bucket just before I finished, I hate it when that happens :( Thanks for the links! I'm sure they'll come in handy. Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 5 13:17:39 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g55KHc359096 for dynarec-outgoing; Wed, 5 Jun 2002 13:17:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 5 Jun 2002 13:20:56 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Anyone want to help me out with something... (will be dyanrec related) In-Reply-To: <3.0.5.32.20020605124652.007e0100@dynarec.com> Message-ID: <20020605131322.W35132-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Ah, it's 18 *YEARS*, not *MONTHS*. Duh! > Yeah, that's what I said ;) But that's not what I read! ;-) > >opinions on it. I like the top version because it's easy to implement. The > >bottom version is tougher because it needs to take context in to account. > >Yuck! > It sounds like a pain to me either way. Of course, that might be because I > haven't actually tried writing a lexer or real parser. You'll wind up with shift/reduce problems if you keep it entirely in the grammar. > What if you have an expression like this: > i = 5- - ((((3)))); > ? > How would a lexer be able to see the -3 easier than a parser? Aha! Well, this actually is a grammatical thing you'll have to solve as well. However, if we take a regular equation like this: 5 - -3 You have a couple of ways it can be interpreted if you put it in the grammar layer exclusively: NUMBER '-' '-' NUMBER: * 5, post decrement 3 * 5, minus, negative 3 Both covers match - this is what's called a shift/reduce conflict. If you put the signage in your lexer, you won't have this problem. However, the negative number outside the expression isn't a unary minus problem - it's a grammatical problem and wasn't what I was referring to. -->Neil ------------------------------------------------------------------------------- Neil Bradley chown -R us:us /*base* Synthcom Systems, Inc. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 7 09:58:27 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g57Gw0b62207 for dynarec-outgoing; Fri, 7 Jun 2002 09:58:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: Compiler Books (was: DYNAREC: Anyone want to help me out with something...) From: "M.I.K.e" Message-ID: <0003a2d70846afc2_mailit@pop3.dynarec.com> References: <3CE3528B.1080206@alphalink.com.au> <3.0.5.32.20020604113149.007e7320@dynarec.com> Date: Fri, 07 Jun 2002 19:02:50 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Sorry about the late reply but I'm re-reading the whole X-Wing series and I'm currently at the end of book 7 of 9 (no Voyager pun intended)... >>A Retargetable C Compiler: Design and Implementation >>Christopher Fraser, David Hanson >I've heard about this book. Is it worth picking it up? >The important thing is: Is it well written? Does it do a good job of >explaining the concepts? I have to admit that I didn't read it really yet, since I ordered it when I was in my collector's mode, but from the small parts I read it seems to be quite good. >I imagine if the parser is written by hand it must be explained fairly well. It goes in quite some detail about the various parts. The table of contents is as follows: 1 Introduction (1) 2 Storage Management (23) 3 Symbol Management (35) 4 Types (53) 5 Code Generation Interface (78) 6 Lexical Analysis (102) 7 Parsing (127) 8 Expressions (147) 9 Expression Semantics (172) 10 Statements (216) 11 Declarations (252) 12 Generating Intermediate Code (311) 13 Structuring the Code Generator (352) 14 Selecting and Emitting Instructions (373) 15 Register Allocation (408) 16 Generating MIPS R3000 Code (430) 17 Generating SPARC Code (463) 18 Generating X86 Code (496) 19 Retrospective (526) The number at the end of the chapter name is the page the chapter starts with. I included it that you have an idea how long the chapters are. >Bart -- M.I.K.e Crash programs fail because they are based on the theory that, with nine women pregnant, you can get a baby a month. -- Wernher von Braun --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 9 08:15:29 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g59FEwK67657 for dynarec-outgoing; Sun, 9 Jun 2002 08:14:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00a201c20fc7$ede03e80$2900a8c0@burp> From: "Tom Browne" To: References: <20020605131322.W35132-100000@beacon.synthcom.com> Subject: DYNAREC: IPP Date: Sun, 9 Jun 2002 16:11:26 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi Neil, I was wondering if you have any experience with Intel's IPP library... I've been having some "issues" with it (possibly my fault), and the documentation isn't a lot of help. Tried the support site, but it let me register without an Intel serial number (no number provided). Any ideas? Cheers, Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 9 08:24:13 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g59FOD167681 for dynarec-outgoing; Sun, 9 Jun 2002 08:24:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <00c601c20fc9$38f4b6c0$2900a8c0@burp> From: "Tom Browne" To: References: <20020605131322.W35132-100000@beacon.synthcom.com> <00a201c20fc7$ede03e80$2900a8c0@burp> Subject: Re: DYNAREC: IPP Date: Sun, 9 Jun 2002 16:20:42 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com D'oh! That was meant to be a personal e-mail... sorry all! - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 26 12:42:54 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5QJemd99812 for dynarec-outgoing; Wed, 26 Jun 2002 12:40:48 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: Site Updates and Questions From: "M.I.K.e" Message-ID: <0003a45781d12016_mailit@pop3.dynarec.com> Date: Wed, 26 Jun 2002 21:44:37 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi maniacs ;-) I made a few changes to the dynarec.com site... The most apparent updates are on the Dynarec section, where I extended the list (I still have to check some of the sources if they deserve the status 'dynarec'), split the table in two parts, for emulators and pure dynarec cores, and added links to the documentations of all mentioned processor architectures. Now a few questions... This one is for all: Which questions apart from the obvious "What does dynarec mean?" should be answered in the FAQ section of dynarec.com? This one probably mainly for Victor: Since DAISY is open source (http://www-124.ibm.com/developerworks/oss/daisy/) do you think it is worth adding to the table of dynarecs? This one for Bart: Do you know which SuperH (there are different SH-2) the Saturn uses exactly? As you can see I actually intend to fill some of the other pages as well... -- M.I.K.e Why does man kill? He kills for food. And not only food: frequently there must be a beverage. -- Woody Allen, "Without Feathers" --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jun 26 19:20:58 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5R2KjE00309 for dynarec-outgoing; Wed, 26 Jun 2002 19:20:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020626190239.007dfd30@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 26 Jun 2002 19:02:39 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <0003a45781d12016_mailit@pop3.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I made a few changes to the dynarec.com site... >The most apparent updates are on the Dynarec section, where I extended the >list (I still have to check some of the sources if they deserve the status >'dynarec'), split the table in two parts, for emulators and pure dynarec >cores, and added links to the documentations of all mentioned processor >architectures. Cool! But I think you ought to store some of the architecture manuals on the dynarec.com server if at all possible. Those links are bound to break... It's just a matter of time. It would be nice to have this stuff locally (space permitting) in case the page URLs change or in case the documentation disappears altogether (how long is the Alpha stuff going to be around?) Also, Intel has an open source JIT project: http://orp.sourceforge.net/ . >This one is for all: >Which questions apart from the obvious "What does dynarec mean?" should be >answered in the FAQ section of dynarec.com? Probably stuff about basic blocks and how jumps into the middle of blocks are handled (by creating new, overlapping blocks -- this wasn't immediately obvious to me), how self modifying might be handled (this is a tricky one), and some stuff about the actual implementation (perhaps mentioning how some dynarecs just spit out code while others use linked lists to store data first and sometimes even full-blown IRs.) >This one for Bart: >Do you know which SuperH (there are different SH-2) the Saturn uses exactly? SH7604. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 27 13:44:52 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5RKi5H01676 for dynarec-outgoing; Thu, 27 Jun 2002 13:44:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Site Updates and Questions From: "M.I.K.e" Message-ID: <0003a46c7bb6e44a_mailit@pop3.dynarec.com> References: <3.0.5.32.20020626190239.007dfd30@dynarec.com> Date: Thu, 27 Jun 2002 22:46:09 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Cool! Yeah, I thought you liked the idea of having architecture references ;-) >But I think you ought to store some of the architecture manuals on >the dynarec.com server if at all possible. Those links are bound to >break... It's just a matter of time. It would be nice to have this stuff >locally (space permitting) in case the page URLs change or in case the >documentation disappears altogether (how long is the Alpha stuff going to >be around?) True. Does anyone know if I can have FTP links to the documents? If not I'd have to link them via HTML I guess, although that isn't really the fastest method to download several MBs... I think I'll make a special processor architecture references page. That way I also have to adjust a changed link only on that page and not for each dynarec. >Also, Intel has an open source JIT project: http://orp.sourceforge.net/ . I'll have a look... [FAQ] >Probably stuff about basic blocks and how jumps into the middle of blocks >are handled (by creating new, overlapping blocks -- this wasn't immediately >obvious to me), If you have traditional basic blocks in terms of compiler theory, then there is no way you are allowed to jump into such a block, because you couldn't optimise it properly otherwise. So for me it was rather clear that you'll have to start a new block. But you are right that we have to assume that not everyone knows as much about compilers as Neil Bradley ;-) BTW, with NB's method of translating the individual instructions and having a translation map entry for each instruction you are quite able to jump inside blocks (maybe we should speak of translation units in that case). Of course this approach is only reasonable with static register allocation, while dynamic register allocation more or less enforces the use of basic blocks, since you'd have prologue and epilogue code for each single instruction otherwise, which would be quite an overhead. >how self modifying might be handled (this is a tricky one), >and some stuff about the actual implementation (perhaps mentioning how some >dynarecs just spit out code while others use linked lists to store data >first and sometimes even full-blown IRs.) Hm, I wonder if these are really topics that should be covered in the global site FAQ, or maybe only more general and simple topics. Since I wrote some posts (you could also call it an article in parts) on EmuForums.com I think I should throw away my silly DRFAQ and write a decent PDF document instead, so those topics would be covered in a better form than possible on a website anyway. >>This one for Bart: >>Do you know which SuperH (there are different SH-2) the Saturn uses exactly? >SH7604. How do you say "thanks" in Polish? ;-) Is that the same as in the 32X? BTW, changed *all* pages to contain at least some information, so no more annoying "Nothing yet..." texts anymore... >Bart -- M.I.K.e All power corrupts, but we need electricity. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 27 18:03:16 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5S130N01924 for dynarec-outgoing; Thu, 27 Jun 2002 18:03:00 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020627174447.007e7180@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 27 Jun 2002 17:44:47 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <0003a46c7bb6e44a_mailit@pop3.dynarec.com> References: <3.0.5.32.20020626190239.007dfd30@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >blocks (maybe we should speak of translation units in that case). Of course >this approach is only reasonable with static register allocation, while >dynamic register allocation more or less enforces the use of basic blocks, >since you'd have prologue and epilogue code for each single instruction >otherwise, which would be quite an overhead. This is the sort of stuff that probably should be mentioned in the FAQ :) >How do you say "thanks" in Polish? ;-) Dziekuje. ;) >Is that the same as in the 32X? As far as I know, yes. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jun 27 23:54:01 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5S6rl602221 for dynarec-outgoing; Thu, 27 Jun 2002 23:53:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 28 Jun 2002 08:41:26 +0200 From: Victor Moya del Barrio To: dynarec@dynarec.com Subject: Re: DYNAREC: Site Updates and Questions Message-ID: <20020628064126.GA13289@ac.upc.es> References: <0003a45781d12016_mailit@pop3.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <0003a45781d12016_mailit@pop3.dynarec.com> User-Agent: Mutt/1.4i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > This one is for all: > Which questions apart from the obvious "What does dynarec mean?" should be > answered in the FAQ section of dynarec.com? > Something like a keep away script kiddies and visual basic/java boys question maybe? "I just read that dynarecs are soo coooool and I want to do a XBOX dynarec for PS2 in java. Can you help me please?" :) > This one probably mainly for Victor: > Since DAISY is open source (http://www-124.ibm.com/developerworks/oss/daisy/) > do you think it is worth adding to the table of dynarecs? > Ummm, the DAISY code must include two emulators ... the DAISY machine emulator for PowerPC (or any other machine where it compiles) and the DBT from PowerPC to DAISY ;). The last one seems the more interesting because of the techniques used. But it also has all that crap about VLIW and Tree based execution that is Daisy architecture .... I don't know but in any case it must be the nearest to the Transmeta Code Morpher and a full working modern general purpose processor binary translator that you can find source code for. In any case I haven't even downloaded the source code for DAISY so I don't know if it is even readable. And if you think about 'true' dynarecs I don't think any emuscene 'dynarec' can beat DAISY on that ;). > -- > M.I.K.e > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 28 07:45:21 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5SEir703127 for dynarec-outgoing; Fri, 28 Jun 2002 07:44:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020628072626.007e7d30@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 28 Jun 2002 07:26:26 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <20020628064126.GA13289@ac.upc.es> References: <0003a45781d12016_mailit@pop3.dynarec.com> <0003a45781d12016_mailit@pop3.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > But it also has all that crap about >VLIW and Tree based execution that is Daisy architecture .... I took a look at IBM's tree-based VLIW and I didn't get it. What exactly does tree-based execution do? From the examples, it didn't look any different than a regular processor. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jun 28 23:57:52 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5T6v9303897 for dynarec-outgoing; Fri, 28 Jun 2002 23:57:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000701c21f38$cf5e7960$0d994ed4@hal9000> From: "Victor Moya del Barrio" To: References: <0003a45781d12016_mailit@pop3.dynarec.com> <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020628072626.007e7d30@dynarec.com> Subject: Re: DYNAREC: Site Updates and Questions Date: Sat, 29 Jun 2002 08:47:16 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "Bart" To: Sent: Friday, June 28, 2002 4:26 PM Subject: Re: DYNAREC: Site Updates and Questions > > But it also has all that crap about > >VLIW and Tree based execution that is Daisy architecture .... > > I took a look at IBM's tree-based VLIW and I didn't get it. > > What exactly does tree-based execution do? From the examples, it didn't > look any different than a regular processor. > Execute multiple 'branches' of code starting from a jump instruction. The taken and not taken basic block are executed at the same time. When the jump is resolved one of the 'branches' is discarded. Although I don't remember the exact implementation in Daisy it is similar to use the IA64 predicate registers to eliminate jump instructions. As any other VLIW feature I think is mostly useless, but anyway. IBM also had a non 'tree' VLIW based binary translator: BOA. I don't know if the source code for this is released or not. In the papers it had quite a big penalty when compared with Daisy simulated performance. But it could also be because BOA was a smaller machine with less resources (more prone to be really implemented in sillicon than Daisy). > ---- > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 29 00:07:34 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5T77XK03926 for dynarec-outgoing; Sat, 29 Jun 2002 00:07:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020628234342.007c84e0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 28 Jun 2002 23:43:42 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <000701c21f38$cf5e7960$0d994ed4@hal9000> References: <0003a45781d12016_mailit@pop3.dynarec.com> <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020628072626.007e7d30@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 08:47 AM 6/29/2002 +0200, you wrote: > >----- Original Message ----- >From: "Bart" >To: >Sent: Friday, June 28, 2002 4:26 PM >Subject: Re: DYNAREC: Site Updates and Questions > >Execute multiple 'branches' of code starting from a jump instruction. The >taken and not taken basic block are executed at the same time. When >the jump is resolved one of the 'branches' is discarded. So this is just to keep the processor from stalling when a branch has to be resolved? How many concurrent paths can the processor execute? Are branches really that big of a deal? I would imagine branch prediction would suffice. If DAISY executes 2 possible paths of execution, one of those is always going to get trashed once the branch is resolved, right? It would have been cooler if code could execute multiple paths simultaneously while keeping the results... "mini-threading." Say you had the following code: for (i = 0; i < 1024; i++) tab_a[i] = 0; for (j = 0; j < 512; j++) tab_b[j] = 0xff; Both could be executed in parallel. Would the technology which allows DAISY to execute multiple code paths in parallel work if applied in a situation like this? >As any other VLIW >feature I think is mostly useless, but anyway. Not a fan of VLIW? ;) VLIW sounds like interesting stuff, but from what little I know, it seems that in practice it doesn't always work out. There's only so much instruction level parallelism you can get out of a typical program. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 29 05:34:55 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5TCYk206949 for dynarec-outgoing; Sat, 29 Jun 2002 05:34:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001701c21f67$f934e100$0d994ed4@hal9000> From: "Victor Moya del Barrio" To: References: <0003a45781d12016_mailit@pop3.dynarec.com> <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020628072626.007e7d30@dynarec.com> <3.0.5.32.20020628234342.007c84e0@dynarec.com> Subject: Re: DYNAREC: Site Updates and Questions Date: Sat, 29 Jun 2002 14:24:52 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > So this is just to keep the processor from stalling when a branch has to be > resolved? How many concurrent paths can the processor execute? > I don't know, must be somewhere in the Daisy doc. > Are branches really that big of a deal? I would imagine branch prediction > would suffice. If DAISY executes 2 possible paths of execution, one of > those is always going to get trashed once the branch is resolved, right? It > would have been cooler if code could execute multiple paths simultaneously > while keeping the results... "mini-threading." > > Say you had the following code: > > for (i = 0; i < 1024; i++) > tab_a[i] = 0; > for (j = 0; j < 512; j++) > tab_b[j] = 0xff; > > Both could be executed in parallel. Would the technology which allows DAISY > to execute multiple code paths in parallel work if applied in a situation > like this? > An inteligent compiler (or a programmer) could join the two loops in just one and use different elements of the VLIW instruction for each of the original loop instructions. In any case something what you talk about is something i have heard about around research about multithreaded processors. One of the techniques being proposed (as it seems there are not 'enough' threads already for SMT ...) is that the processor dinamically generates virtual threads, for example for loops, as your example, or for procedure calls, jumps, etc. I'm not sure if there is already any literature about that. It is just the 'state-of-art' in OO multithreaded processor research. > >As any other VLIW > >feature I think is mostly useless, but anyway. > > Not a fan of VLIW? ;) > Not. But that is what happens when your PhD director is a Vector Processors guy :). Out of order is always the best, and as he says VLIW only works really well in the same problems where a vector processor works well (very parallelizable loops), and for that a vector processor is already the best, so who cares ;). It is a pity he will have now to work improving the IA64 :). > VLIW sounds like interesting stuff, but from what little I know, it seems > that in practice it doesn't always work out. There's only so much > instruction level parallelism you can get out of a typical program. > VLIW means that the compiler is the king, the problem is that there are a lot of things a compiler can not know in static time that an out of order engine with branch prediction can. Intel screwed with IA64 (but i think is also fault of all that horrible stuff the put in the register stage ... you do a VLIW architecture because it is 'simpler' and then you add that horrible hardware mess? No, thanks. And Transmeta did the same. As some academic and industry people states (SUN) VLIW was a trend in computer architecture science some years ago (it seems that was the reason why Ditzel abandoned SUN and started Transmeta, he wanted to do a VLIW processor and they didn't), but i'm don't see it can actually work or out performe out of order processors. > ---- > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 29 11:06:00 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5TI5oF07203 for dynarec-outgoing; Sat, 29 Jun 2002 11:05:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020629104722.007e6920@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 29 Jun 2002 10:47:22 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <001701c21f67$f934e100$0d994ed4@hal9000> References: <0003a45781d12016_mailit@pop3.dynarec.com> <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020628072626.007e7d30@dynarec.com> <3.0.5.32.20020628234342.007c84e0@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Say you had the following code: >> >> for (i = 0; i < 1024; i++) >> tab_a[i] = 0; >> for (j = 0; j < 512; j++) >> tab_b[j] = 0xff; >> >An inteligent compiler (or a programmer) could join the two loops in just >one >and use different elements of the VLIW instruction for each of the original >loop >instructions. No, because the 2 loops are of different sizes. It would require a test somewhere, or it could be optimized to: for (i = 0; i < 512; i++) { tab_a[i] = 0; tab_b[i] = 0xff; } for (; i < 1024; i++) tab_a[i] = 0; >In any case something what you talk about is something i have heard about >around >research about multithreaded processors. One of the techniques being >proposed >(as it seems there are not 'enough' threads already for SMT ...) is that the >processor >dinamically generates virtual threads, for example for loops, as your >example, or >for procedure calls, jumps, etc. I'm not sure if there is already any >literature about that. That's kind of what I was thinking, except that the virtual threads would be created explicitly by the programmer with some sort of a special 2-way simultaneous branch instruction. But since I'm not a processor engineer, I have no idea if this would be feasible. One thing I'd be concerned about is memory bandwidth. The processor would have to be able to fetch multiple streams of code simultaneously, in addition to all the data the code needs. Assuming this issue was somehow resolved, the processor could be made up of several execution units. Each of the code streams would use a set of execution units. In order to keep processor complexity low, perhaps the code would have to be very optimized (the processor might not be able to provide OOO execution.) But what if an application doesn't even have the capability for this sort of parallelism? Could all the execution units be devoted to a single stream of code using an OOO engine like a modern processor? It sounds like there are a lot of issues to be resolved. If I knew how to design processors, I'd love to do research into this kind of stuff! :) >Not. But that is what happens when your PhD director is a Vector Processors >guy :). What's up with vector processors? People have been saying for the last decade that they are dead. However, NEC has its Earth Simulator supercomputer which is the fastest one known and it uses NEC's vector processors. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 29 14:16:51 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5TLGhY07355 for dynarec-outgoing; Sat, 29 Jun 2002 14:16:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000901c21fb0$e25bb000$0d994ed4@hal9000> From: "Victor Moya del Barrio" To: References: <0003a45781d12016_mailit@pop3.dynarec.com> <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020628072626.007e7d30@dynarec.com> <3.0.5.32.20020628234342.007c84e0@dynarec.com> <3.0.5.32.20020629104722.007e6920@dynarec.com> Subject: Re: DYNAREC: Site Updates and Questions Date: Sat, 29 Jun 2002 23:06:47 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> Say you had the following code: > >> > >> for (i = 0; i < 1024; i++) > >> tab_a[i] = 0; > >> for (j = 0; j < 512; j++) > >> tab_b[j] = 0xff; > >> > > >An inteligent compiler (or a programmer) could join the two loops in just > >one > >and use different elements of the VLIW instruction for each of the original > >loop > >instructions. > > No, because the 2 loops are of different sizes. It would require a test > somewhere, or it could be optimized to: > It could unroll the larger loop and do two iterations of the first loop and one from the second in the 'optimized' loop version. > That's kind of what I was thinking, except that the virtual threads would > be created explicitly by the programmer with some sort of a special 2-way > simultaneous branch instruction. > Leave the poor programmer away ;). It seems it is still hard for the people to do implement parallel programs. > But since I'm not a processor engineer, I have no idea if this would be > feasible. One thing I'd be concerned about is memory bandwidth. The > processor would have to be able to fetch multiple streams of code > simultaneously, in addition to all the data the code needs. > SMT processors already have the ability to fetch instructions from multiple code points, EV8 was the only real one which was about to come to live before it was killed by Intel getting Alpha, P4 Hyperhipe (... I mean Hyperthreading or whatever they call it ;) uses another approach from a 'real' SMT. In any case what happens is that each cycle the processor fetches instructions from a different thread. > Assuming this issue was somehow resolved, the processor could be made up of > several execution units. Each of the code streams would use a set of > execution units. In order to keep processor complexity low, perhaps the > code would have to be very optimized (the processor might not be able to > provide OOO execution.) But what if an application doesn't even have the > capability for this sort of parallelism? Could all the execution units be > devoted to a single stream of code using an OOO engine like a modern > processor? > Current processors have already too many execution units that use to be sitting idle. This one of the reasons for SMT, to use more efficiently the already existing execution units. I think most of the people researching in SMT is working around a OOO processor (and usually similar to an Alpha one, but maybe is just because most people uses SimpleScalar). They idea I got about producing virtual threads from single threaded code for SMTs was based in an automatic approach (or maybe in a DBT or Dynamic Optimized, I don't remember now ...), it was not something the compiler or the programmer would have to code. The idea of SMT, as it was going to be implemented in EV8 , is that only the first stages of the pipeline must be modified. Only fetch, decode and rename phases must be SMT. When the instructions enter the instruction window it doesn't matter any more where they come from (until perhaps the retirement phase). All the threads share the same functional units. There are no functional units reserved for a thread, that would be against the idea of doing a better use of currently idling functional units. EV8 would be fetching instructions from up to 4 (or 8 may be) threads, decoding, renaming and enqueueing them in the instruction windows. Then the instructions would be executed as their dependences were being solved. Intel's Hyperthreading is a different approach (from what I know), it doesn't fetch from different threads, only when the current thread stalls because for example a L2 miss (which takes hundred of cycles) the processor stops that thread and resumes another one that was idling. > It sounds like there are a lot of issues to be resolved. If I knew how to > design processors, I'd love to do research into this kind of stuff! :) > Easy, just get a CS Degree and search for the nearest CA research facility and start a PhD or apply for the nearest Intel Reserach Lab ;). > >Not. But that is what happens when your PhD director is a Vector Processors > >guy :). > > What's up with vector processors? People have been saying for the last > decade that they are dead. However, NEC has its Earth Simulator > supercomputer which is the fastest one known and it uses NEC's vector > processors. > Who said they are dead? Vector processors are the best for large parallizable mathematic problems. They do the better use of resources (functional units and bandwidth) with the less control logic. Cray machines are all vector. And Alpha was researching that Aranya (spider in Catalonian/Spanish ;) vector extension for EV8. > ---- > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 29 14:44:38 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5TLibS07392 for dynarec-outgoing; Sat, 29 Jun 2002 14:44:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020629142607.007e75f0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 29 Jun 2002 14:26:07 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <000901c21fb0$e25bb000$0d994ed4@hal9000> References: <0003a45781d12016_mailit@pop3.dynarec.com> <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020628072626.007e7d30@dynarec.com> <3.0.5.32.20020628234342.007c84e0@dynarec.com> <3.0.5.32.20020629104722.007e6920@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It could unroll the larger loop and do two iterations of the first loop >and one from the second in the 'optimized' loop version. Even better ;) >Leave the poor programmer away ;). It seems it is still hard for the people >to do implement parallel programs. Yet it is the programmer that has the potential to do the best job on a large scale. The processor can't understand what the code it is running is trying to do and how to effictively use data. With compilers lagging behind hardware progress, wouldn't it be a good thing to allow programmers to have a bit more control? Lots of abstraction seems to be the current trend, but do the benefits outweigh the performance costs? I wonder what compiler developers and the people researching and designing new high performance processor technologies think of OOP and really high level programming. If I'm not mistaken, Fortran is still popular in the high performance computing world because it offers much better performance than C++ (and even C?). I remember reading an article from several years back (1995) by someone who claimed that C++ was a disaster for supercomputing applications and that Fortran really was worth using. I guess it's no coincidence that for every really good C/C++ compiler there's a Fortran compiler (Intel C++ & Intel Fortran, Compaq C++ compiler & Compaq Fotran, even Watcom...) > All the threads share the same functional units. There >are >no functional units reserved for a thread, that would be against the idea of >doing a better use of currently idling functional units. What about register usage? Does each thread have its own register file? Though it's highly unlikely under an operating system, what if you had some multi-threaded code that communicated via a register? I'm assuming EV8 hardware threads must be explicitly created by the operating system and must follow certain guidelines. What I was thinking of was actually having a single logical register file so that when separate paths are executed, they should not ever use the same registers. Functional units could be assigned to each thread and if a thread terminated, its function units could be returned automatically to the next thread running. The word "thread" is a bit misleading. I was thinking of something a little different. "Parallel code streams" is more appropriate. I guess more traditional approaches to SMT make sense (surely someone has already thought about the idea I've presented) and my method would end up being very complicated. > EV8 would be >fetching >instructions from up to 4 (or 8 may be) threads, decoding, renaming and >enqueueing them in the instruction windows. Then the instructions would be >executed as their dependences were being solved. Very interesting... It's a shame Alpha is dead :( It had lots of great potential. >> It sounds like there are a lot of issues to be resolved. If I knew how to >> design processors, I'd love to do research into this kind of stuff! :) >> >Easy, just get a CS Degree and search for the nearest CA research >facility and start a PhD or apply for the nearest Intel Reserach Lab ;). Hehe. Or an EE degree. But still, learning about how to actually implement a processor must be very tough. There are hobbyists out there that have single-handedly designed simple processors and implemented them with FPGAs (some of these processors aren't all that simple -- superscalar RISC processors, DSPs, etc.) A job at a research lab (like Intel's) sounds like it would be a lot of fun. It sounds too good to be true. I think the DEC research labs allow their engineers to pretty much research whatever they feel like (as long as it fits in with the list of areas they focus on) -- at least that's how they make it sound. >Who said they are dead? I've heard a lot about how vector supercomputers are on their way out. I wonder what sort of needs the bio-tech sector has for its high performance computers. That's where the future is! :) >And >Alpha was >researching that Aranya (spider in Catalonian/Spanish ;) vector extension >for EV8. Is there any good information about the EV8 out there? I'm looking through some stuff I found on Google right now, but I can't find anything on Aranya. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 29 15:36:07 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5TMa1G07457 for dynarec-outgoing; Sat, 29 Jun 2002 15:36:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000f01c21fbb$f53ce7b0$0d994ed4@hal9000> From: "Victor Moya del Barrio" To: References: <0003a45781d12016_mailit@pop3.dynarec.com> <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020628072626.007e7d30@dynarec.com> <3.0.5.32.20020628234342.007c84e0@dynarec.com> <3.0.5.32.20020629104722.007e6920@dynarec.com> <3.0.5.32.20020629142607.007e75f0@dynarec.com> Subject: Re: DYNAREC: Site Updates and Questions Date: Sun, 30 Jun 2002 00:26:02 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Yet it is the programmer that has the potential to do the best job on a > large scale. The processor can't understand what the code it is running is > trying to do and how to effictively use data. > > With compilers lagging behind hardware progress, wouldn't it be a good > thing to allow programmers to have a bit more control? Lots of abstraction > seems to be the current trend, but do the benefits outweigh the performance > costs? > Well, people is programming now in C++ or even higher level languages (VB, NET, Java) so who is going to work in low level optimization :P. > I wonder what compiler developers and the people researching and designing > new high performance processor technologies think of OOP and really high > level programming. > > If I'm not mistaken, Fortran is still popular in the high performance > computing world because it offers much better performance than C++ (and > even C?). I remember reading an article from several years back (1995) by > someone who claimed that C++ was a disaster for supercomputing applications > and that Fortran really was worth using. > Fortran is used in most of the SpecFP2000 benchmarks and it is the language used for any serious mathematical program. There are many reasons I think, for example Physics and Chemistry people are teached Fortran rather than C so they use it. But also Fortran is a language designed only to crunch a large amount of numbers with a lot of easily parallizable structures. C or C++ is more for general purpose programming. > What about register usage? Does each thread have its own register file? > Yes. > Though it's highly unlikely under an operating system, what if you had some > multi-threaded code that communicated via a register? > I don't know, but if someone would want to implement something link that there would be some kind of mechanism. For example the instruction that creates a new 'hardware' thread would have a parameter for some registers that would be copied from the father thread to the son thread. In any case when two threads are running concurrently the only way to exchange information is through memory. > I'm assuming EV8 hardware threads must be explicitly created by the > operating system and must follow certain guidelines. > Yes, everything is controled by the OS. > > What I was thinking of was actually having a single logical register file > so that when separate paths are executed, they should not ever use the same > registers. Functional units could be assigned to each thread and if a > thread terminated, its function units could be returned automatically to > the next thread running. > That sound more like VLIW than anything else, or CMP (multi-core processors). The problem assigning functional units for each thread is that the use of that units will be the same as in a non SMT architecture, that is very low. But taking into account that new architectures may to have a lot of more transistors perhaps that's not an issue (if it is used a mechanism to control waste power in idle units). > > Very interesting... > > It's a shame Alpha is dead :( It had lots of great potential. > May be someone will implement their ideas someday. > >> It sounds like there are a lot of issues to be resolved. If I knew how to > >> design processors, I'd love to do research into this kind of stuff! :) > >> > >Easy, just get a CS Degree and search for the nearest CA research > >facility and start a PhD or apply for the nearest Intel Reserach Lab ;). > > Hehe. Or an EE degree. But still, learning about how to actually implement > a processor must be very tough. There are hobbyists out there that have > single-handedly designed simple processors and implemented them with FPGAs > (some of these processors aren't all that simple -- superscalar RISC > processors, DSPs, etc.) > The OpenCores page you mean? I found that there was even a 3D graphic card in development, similar to the Voodoo1 and other early PC graphic chips. > A job at a research lab (like Intel's) sounds like it would be a lot of > fun. It sounds too good to be true. I think the DEC research labs allow > their engineers to pretty much research whatever they feel like (as long as > it fits in with the list of areas they focus on) -- at least that's how > they make it sound. > I think in DEC/Alpha there was a lot of more freedoom that in Intel or AMD. For example my director told me sometimes how some academy friends of Alpha stuff got information about Alpha new architectures that they used to publish papers in CA congress. > >And > >Alpha was > >researching that Aranya (spider in Catalonian/Spanish ;) vector extension > >for EV8. > > Is there any good information about the EV8 out there? I'm looking through > some stuff I found on Google right now, but I can't find anything on Aranya. > Search for the last PACT (2001) or the ISSCA'02. If not later tomorrow I could send you some papers. http://systems.cs.colorado.edu/ISCA2002/ All the papers are online in the ISCA page. Citiseer can also be useful for searching papers. ACM library and IEEE explorer are account restricted so unless you have an university connection you will be not able to get papers from them. You could use the name of the paper though and search in google as some are replicated in free sites or in university courses pages. > ---- > Bart > -------------------------------------------------------------------------- - > ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the > ** message body to dynarec-request@dynarec.com. Please direct other > ** questions, comments, or problems to neilb@dynarec.com. > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jun 29 16:11:11 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5TNBAQ07505 for dynarec-outgoing; Sat, 29 Jun 2002 16:11:10 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020629155239.007e6c10@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 29 Jun 2002 15:52:39 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <000f01c21fbb$f53ce7b0$0d994ed4@hal9000> References: <0003a45781d12016_mailit@pop3.dynarec.com> <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020628072626.007e7d30@dynarec.com> <3.0.5.32.20020628234342.007c84e0@dynarec.com> <3.0.5.32.20020629104722.007e6920@dynarec.com> <3.0.5.32.20020629142607.007e75f0@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well, people is programming now in C++ or even higher level languages >(VB, NET, Java) so who is going to work in low level optimization :P. Not necessarily low-level optimization, but something near the level of C. >May be someone will implement their ideas someday. I think Intel is using some of the technology since they now own it. But it isn't the same. It sounds as though Alpha could have outshined anything else if Compaq had devoted more resources and marketing to it. What about IBM's POWER4? That looks like a monster! Two CPU cores and 3 L2 caches per die. I think they will come in packages with 4 dies on them (8 processor cores!) with a high speed connection and lots of bandwidth. Those IBM workstations are very expensive, though. From $20K-$70K for POWER3 machines :/ >The OpenCores page you mean? I found that there was even a 3D graphic >card in development, similar to the Voodoo1 and other early PC graphic >chips. Yes, but not just that. I've also found some 8-bit processors and a reconfigurable RISC processor done by some student at MIT (who also did a DSP and lots of other ICs on his own.) >I think in DEC/Alpha there was a lot of more freedoom that in Intel >or AMD. For example my director told me sometimes how some >academy friends of Alpha stuff got information about Alpha new architectures >that they used to publish papers in CA congress. What about IBM, HP, and Sun? Sun is doing some research into asynchronous design, but other than that, they don't seem to be doing anything really interesting. I think IBM has a strong research program. They do some interesting stuff, like the POWER4 architecture and that Blue Gene supercomputer project. >> Is there any good information about the EV8 out there? I'm looking through >> some stuff I found on Google right now, but I can't find anything on >Aranya. >> >Search for the last PACT (2001) or the ISSCA'02. If not later tomorrow I >could send you >some papers. > >http://systems.cs.colorado.edu/ISCA2002/ Oh, it's called Tarantula :) Very interesting stuff... ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 30 09:38:25 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g5UGbjX08772 for dynarec-outgoing; Sun, 30 Jun 2002 09:37:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <000b01c22053$0f3b8ad0$0d994ed4@hal9000> From: "Victor Moya del Barrio" To: References: <0003a45781d12016_mailit@pop3.dynarec.com> <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020628072626.007e7d30@dynarec.com> <3.0.5.32.20020628234342.007c84e0@dynarec.com> <3.0.5.32.20020629104722.007e6920@dynarec.com> <3.0.5.32.20020629142607.007e75f0@dynarec.com> <3.0.5.32.20020629155239.007e6c10@dynarec.com> Subject: Re: DYNAREC: Site Updates and Questions Date: Sun, 30 Jun 2002 18:27:35 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think Intel is using some of the technology since they now own it. But it >isn't the same. It sounds as though Alpha could have outshined anything >else if Compaq had devoted more resources and marketing to it The problem with Alpha, and all other processors used in servers and multicomputer, over x86 cpus is that they are a nitche product. They have a limited market with a fixed amount of money and they all fight to get it. The true money is in the 'small things' as Intel show. PC CPUs have consumed all the research and improvements from the high performance world and brought them to the personal computer world. That is one of the reason why P4 shows some lack of ideas (there was an Intel guy that gave a talk here in my uni that really bashed the P4 ;P) there is nothing else that you can add from the high performance world to the personal computer world. > What about IBM's POWER4? That looks like a monster! Two CPU cores and 3 L2 > caches per die. I think they will come in packages with 4 dies on them (8 > processor cores!) with a high speed connection and lots of bandwidth. Those > IBM workstations are very expensive, though. From $20K-$70K for POWER3 > machines :/ > I think a POWER4 is more exactly two CPU cores with shared L2 cache and L3 directory. Then 4 of those are packed together with the L3 cache in somekind of weird monstrous socket ;). A bandwidth monsters. In my uni there is a Power3 based multiprocessor. In any case I don't think there are still so many Power4 based computers. Things go slow in the server market. > >The OpenCores page you mean? I found that there was even a 3D graphic > >card in development, similar to the Voodoo1 and other early PC graphic > >chips. > > Yes, but not just that. I've also found some 8-bit processors and a > reconfigurable RISC processor done by some student at MIT (who also did a > DSP and lots of other ICs on his own.) > The guy should be really bored then ;). Maybe I should send him some of my collection of anime :P. > What about IBM, HP, and Sun? Sun is doing some research into asynchronous > design, but other than that, they don't seem to be doing anything really > interesting. > IBM seems only interested in the supercomputer and server market. They 'tried' VLIW (Daisy and BOA) but it seems they don't like that. They seem also to like CMP over SMT too. HPQ (or whatever the new name is) has abandoned microprocessor research and will be droping PA-RISC (and Alpha) architecture. And Sun seems more interested in Hammer than in a new Sparc CPU. > I think IBM has a strong research program. They do some interesting stuff, > like the POWER4 architecture and that Blue Gene supercomputer project. > They seem to be working in systems to support servers: realibility, bandwidth, self-repairing systems, parallelism. ---- > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 30 20:33:53 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g613XS609283 for dynarec-outgoing; Sun, 30 Jun 2002 20:33:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020630201448.007e7100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 30 Jun 2002 20:14:48 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <000b01c22053$0f3b8ad0$0d994ed4@hal9000> References: <0003a45781d12016_mailit@pop3.dynarec.com> <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020628072626.007e7d30@dynarec.com> <3.0.5.32.20020628234342.007c84e0@dynarec.com> <3.0.5.32.20020629104722.007e6920@dynarec.com> <3.0.5.32.20020629142607.007e75f0@dynarec.com> <3.0.5.32.20020629155239.007e6c10@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The problem with Alpha, and all other processors used in servers and >multicomputer, over x86 cpus is that they are a nitche product. That's true. But the Alpha was a niche within a niche, judging by its lack of popularity. It was a great CPU but it was mismarketed. Was the bandwidth on typical Alpha systems comparable to the bandwidth of other high-end architectures like POWER, SPARC, and MIPS? Alpha systems used a lot of PC components IIRC. Could this have been a technical flaw which kept if from being as popular as other architectures? >In my >uni there is a Power3 based multiprocessor. How well does it perform? Are 350-400MHz Power3 systems ever worth the incredible pricetags if one is interested in processing power? ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 30 20:44:53 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g613iqL09307 for dynarec-outgoing; Sun, 30 Jun 2002 20:44:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 30 Jun 2002 20:40:27 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <3.0.5.32.20020630201448.007e7100@dynarec.com> Message-ID: <20020630203949.I90162-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Alpha systems used a lot of PC components IIRC. Could this have been a > technical flaw which kept if from being as popular as other architectures? Nope. Everything in a PC, even if it's an ISA bus, is a PCI device these days, which 'aint even close to a limitation. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 30 21:20:20 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g614KIf09349 for dynarec-outgoing; Sun, 30 Jun 2002 21:20:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020630210137.007e8100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 30 Jun 2002 21:01:37 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <20020630203949.I90162-100000@beacon.synthcom.com> References: <3.0.5.32.20020630201448.007e7100@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 08:40 PM 6/30/2002 -0700, you wrote: >> Alpha systems used a lot of PC components IIRC. Could this have been a >> technical flaw which kept if from being as popular as other architectures? > >Nope. Everything in a PC, even if it's an ISA bus, is a PCI device these >days, which 'aint even close to a limitation. What about memory bandwidth? Were bus speeds on Alpha systems ahead of what was available on comparable PC systems? ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 30 22:49:03 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g615fvl09435 for dynarec-outgoing; Sun, 30 Jun 2002 22:41:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 30 Jun 2002 22:37:18 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <3.0.5.32.20020630210137.007e8100@dynarec.com> Message-ID: <20020630223453.D90162-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Nope. Everything in a PC, even if it's an ISA bus, is a PCI device these > >days, which 'aint even close to a limitation. > What about memory bandwidth? Were bus speeds on Alpha systems ahead of what > was available on comparable PC systems? Well, the IA-32 systems were 64 bit, and the Alphas were 128 bit, but the bus speed maxed out at 66Mhz on the Alpha, and on the PC it's far beyond that. Some Alpha systems could be overclocked to use 100Mhz (PC-100) RAM, but I've never heard of an Alpha system running any after than that. All Alpah systems I'm aware of used DIMMs anyway. There was no memory technology advantage - they borrowed from the PC realm. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 30 23:39:56 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g616dnL09501 for dynarec-outgoing; Sun, 30 Jun 2002 23:39:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020630232107.007eb8e0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 30 Jun 2002 23:21:07 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <20020630223453.D90162-100000@beacon.synthcom.com> References: <3.0.5.32.20020630210137.007e8100@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Well, the IA-32 systems were 64 bit, and the Alphas were 128 bit, but the >bus speed maxed out at 66Mhz on the Alpha, and on the PC it's far beyond >that. Some Alpha systems could be overclocked to use 100Mhz (PC-100) RAM, >but I've never heard of an Alpha system running any after than that. All >Alpah systems I'm aware of used DIMMs anyway. There was no memory >technology advantage - they borrowed from the PC realm. If Alpha were still actively being developed today, it would have probably kept up with the PC world then. Didn't some of the later Alpha systems use Rambus RDRAM? Maybe that could have been a factor in Alpha's lack of popularity... the bandwidth just wasn't there. Alpha processors were good for floating point-intensive computational tasks. I think the EV5 and above processors faired significantly better on SPEC benchmarks than IA-32 chips at the same clock speed. Integer performance was more equal. Maybe slightly better or slightly worse, I don't remember. I guess they were imbalanced like the PC is. Great at number crunching, but limited by bandwidth. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jun 30 23:56:56 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g616uje09529 for dynarec-outgoing; Sun, 30 Jun 2002 23:56:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 30 Jun 2002 23:52:21 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <3.0.5.32.20020630232107.007eb8e0@dynarec.com> Message-ID: <20020630235004.A90162-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Alpah systems I'm aware of used DIMMs anyway. There was no memory > >technology advantage - they borrowed from the PC realm. > If Alpha were still actively being developed today, it would have probably > kept up with the PC world then. Didn't some of the later Alpha systems use > Rambus RDRAM? Not likely. RDRAM Appeared a couple of years before it was released on the PC platform. Really, think about it. The Alpha was not driving the industry - the PC industry was. > Maybe that could have been a factor in Alpha's lack of popularity... the > bandwidth just wasn't there. There are several reasons the Alpha failed: 1) DEC (Don't call them "digital") couldn't market a product if they had to 2) The Alphas were far more expensive than PCs 3) Little to no software/OS for it I know that NT existed for the Alpha, but it wasn't much good. > I guess they were imbalanced like the PC is. Great at number crunching, but > limited by bandwidth. Everything is limited by memory bandwidth. Until we get faster RAM, we're not going to see a hell of an increase in speed of computers. Apple sure 'aint leading that pack. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 1 08:44:18 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g61FhpS10507 for dynarec-outgoing; Mon, 1 Jul 2002 08:43:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 26 May 1960 05:12:46 -0500 (CDT) From: Graham Toal Message-Id: <196005261012.FAA06192@gtoal.com> To: dynarec@dynarec.com Subject: DYNAREC: clarification on jumping into blocks Cc: gtoal@gtoal.com Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com There was a comment in the recent thread that I didn't 100% follow. When you have some code A B where A is drop through code, no jumps, goes straight to be, which is drop through code until the last instruction which is a jump, then AB gets translated as a single block (you're not aware of the existence of B as something different yet). Then the code is entered later at B; so my question is: do you 1) have two blocks, one which is "AB" and one which is "B" or 2) do you throw away the first AB block and compile this as block A which then passes control to block B? I believe both approaches would work, but I don't know which is preferred or why? thanks Graham PS I am assuming that real registers are allocated to target registers dynamically and can change between different blocks, and that blocks have entry and exit code to load and save registers appropriately. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 1 10:53:42 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g61Hr3e10644 for dynarec-outgoing; Mon, 1 Jul 2002 10:53:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: clarification on jumping into blocks From: "M.I.K.e" Message-ID: <0003a4ba89f45f0a_mailit@pop3.dynarec.com> References: <196005261012.FAA06192@gtoal.com> Date: Mon, 01 Jul 2002 19:53:35 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >There was a comment in the recent thread that I didn't 100% follow. No problem, maybe we didn't make it that clear. >When you have some code >A >B >where A is drop through code, no jumps, goes straight to be, which is >drop through code until the last instruction which is a jump, then >AB gets translated as a single block (you're not aware of the existence >of B as something different yet). Indeed. >Then the code is entered later at B; so my question is: >do you >1) have two blocks, one which is "AB" and one which is "B" You'll most likely have this case, because a simple translation cache will only know the block starting with A, but no block starting with B, which leads to B being translated as a new block. >or >2) do you throw away the first AB block and compile this as block A >which then passes control to block B? >I believe both approaches would work, but I don't know which is >preferred or why? The second case is rather unlikely, because to test for such a case the translation cache not only has to check for the start address of a block, but also remember it's end address and then check the address ranges for every address that isn't equal to a start address. When you've done that and procede as you suggested you have to retranslate both parts of the block not only the second one. This might lead to slightly less optimized code and obviously takes longer. The first solution certainly has the worse memory overhead, but is faster and easier to implement and therefore better, at least in my opinion. >Graham >PS I am assuming that real registers are allocated to target registers >dynamically and can change between different blocks, and that blocks >have entry and exit code to load and save registers appropriately. I assumed that implicitly, because with static register allocation it could be handled differently, but then you'd have to drop any peephole optimizations to have singular instruction translations. -- M.I.K.e "Outside of a dog, a book is a man's best friend: and inside a dog, it's too dark to read." -- Groucho Marx --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 1 10:53:43 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g61Hqwj10638 for dynarec-outgoing; Mon, 1 Jul 2002 10:52:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Site Updates and Questions From: "M.I.K.e" Message-ID: <0003a4ba90fea3ea_mailit@pop3.dynarec.com> References: <0003a45781d12016_mailit@pop3.dynarec.com> Date: Mon, 01 Jul 2002 19:55:33 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Ok folks, references for Alpha, 68K, IA-32, and MIPS are up - more to come... Unless someone (probably NB) tells me how to do the download links via FTP I'll have to stick to HTTP... -- M.I.K.e The modern child will answer you back before you've said anything. -- Laurence J. Peter --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 1 14:40:06 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g61LdFU10847 for dynarec-outgoing; Mon, 1 Jul 2002 14:39:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Site Updates and Questions From: "M.I.K.e" Message-ID: <0003a4bdab7e03de_mailit@pop3.dynarec.com> References: <200207011842.NAA25181@admin.vt.com> Date: Mon, 01 Jul 2002 23:37:43 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [FTP downloads] >you put the files in an ftp area such us /pub/files/file.txt on a server >such as ftp.server.com, and then the url would be: >ftp://ftp.server.com/pub/files/file.txt Yeah, the question is where this FTP area is on our FreeBSD system... >However... some browsers are broken and cannot access ftp urls (such as >mine :-( ) What browser do you have? And I thought NetPositive had problems... If your browser supports something like "copy URL to clipboard" then you could always use a tool like wget to do the download. This is how I do most of my downloads actually. >Graham PS: Have you eventually fixed your systems clock? Because suddenly your posting doesn't end up at the bottom of my mail folder. -- M.I.K.e One is not superior merely because one sees the world as odious. -- Chateaubriand (1768-1848) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 1 17:56:21 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g620u4j11023 for dynarec-outgoing; Mon, 1 Jul 2002 17:56:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020701173720.007e94b0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 01 Jul 2002 17:37:20 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <0003a4bdab7e03de_mailit@pop3.dynarec.com> References: <200207011842.NAA25181@admin.vt.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >>Graham > >PS: Have you eventually fixed your systems clock? Because suddenly your >posting doesn't end up at the bottom of my mail folder. What exactly is the problem with the clock? Why can't it be fixed? If I accidently happen to click on the Date tab in Eudora, all of Graham's messages get moved to the very beginning of my inbox. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 1 21:38:16 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g624bvS11216 for dynarec-outgoing; Mon, 1 Jul 2002 21:37:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020701211911.007e8c60@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 01 Jul 2002 21:19:11 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Detecting signs during lexical analysis Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, Just the other day I implemented a simple algebraic expression evaluator. I remember Neil mentioning that signs can be detected by the lexer but I couldn't figure out a good way of doing this. I found it far simpler to just let the parser handle it. Here is the grammar: list -> | expr ; { out(";") } expr -> | term rest_t rest_t -> | + term { out("+") } rest_t | - term { out("-") } rest_t | term -> | factor rest_f rest_f -> | * factor { out("*") } rest_f | / factor { out("/") } rest_f | factor -> | { out(number) } | + { out(number) } | - { out(-number) } | ( expr ) Basically, an input file consists of a series of statements like this: 3 + 4 * 3; 89 * (-1 - -20) / 8; -(expr) and +(expr) aren't supported (but would be pretty easy to add.) The parser is a simple recursive descent parser and I found that it was easy to just specify + and - as part of the grammar and it was really easy adding this to the parser. How could it be done during lexical analysis? Or is that only useful when doing a different type of parser? ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 1 22:20:03 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g625K1811270 for dynarec-outgoing; Mon, 1 Jul 2002 22:20:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 1 Jul 2002 22:15:40 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Detecting signs during lexical analysis In-Reply-To: <3.0.5.32.20020701211911.007e8c60@dynarec.com> Message-ID: <20020701220236.U97316-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Just the other day I implemented a simple algebraic expression evaluator. I > remember Neil mentioning that signs can be detected by the lexer but I > couldn't figure out a good way of doing this. I found it far simpler to > just let the parser handle it. What's so hard about a preceding minus on a number? The standard for C is: -123456 is INTEGER - -123456 Not: '-' 123456 If there is no space before the number, it's considered part of the number (by the lexer). If there is a space between the two, it's considered a '-' and a number. > Here is the grammar: When all you're doing is parsing algebraic expressions, you can do it whatever way you choose. All you're doing here is just spewing back what came in. > 3 + 4 * 3; > 89 * (-1 - -20) / 8; > -(expr) and +(expr) aren't supported (but would be pretty easy to add.) How about crazy things like -(expr - (expr + expr ) + -expr * 5)? > How could it be done during lexical analysis? Or is that only useful when > doing a different type of parser? It really depends upon what you're lexing. In your example above, you're not doing anything but spewing back what was input. When you start doing a higher level language like C, the preprocessor starts having a big effect on how things work, and that's when you can get in to real trouble with figuring out what the '-' belongs to. Here's a quickie description of the problem with the unary minus/precedence: http://sundocs.princeton.edu:8888/ab2/coll.45.4/PROGUTILS/@Ab2PageView/8052 Again, it's dependent on the language you're parsing. Here's a YACC grammar for C: http://www.lysator.liu.se/c/ANSI-C-grammar-y.html In C you'll wind up doing both (having the lexer assume -number is a negative number and '- number' being '-' and 'number') since both are specified in the grammar. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 1 23:07:47 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6267aD11319 for dynarec-outgoing; Mon, 1 Jul 2002 23:07:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020701224848.007e83f0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 01 Jul 2002 22:48:48 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Detecting signs during lexical analysis In-Reply-To: <20020701220236.U97316-100000@beacon.synthcom.com> References: <3.0.5.32.20020701211911.007e8c60@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >What's so hard about a preceding minus on a number? The standard for C is: > >-123456 is > >INTEGER - -123456 > >Not: > >'-' >123456 > >If there is no space before the number, it's considered part of the number >(by the lexer). If there is a space between the two, it's considered a '-' >and a number. But in C, you can have a space in between the minus and the number: int n = 0 - - 1; // n = 1 The parser would have to handle that anyway, wouldn't it? >How about crazy things like -(expr - (expr + expr ) + -expr * 5)? My grammar will handle such cases. It can do nested expressions. If I added support for -(expr) and +(expr), it would handle the above case without any problems. >It really depends upon what you're lexing. In your example above, you're >not doing anything but spewing back what was input. Well, it does turn it into postfix form first :) It only keeps numbers and operators (and end of statement tokens just so the evaluator can evaluate multiple statements) and throws away the parentheses. >When you start doing a >higher level language like C, the preprocessor starts having a big effect >on how things work, and that's when you can get in to real trouble with >figuring out what the '-' belongs to. > >Here's a quickie description of the problem with the unary >minus/precedence: > >http://sundocs.princeton.edu:8888/ab2/coll.45.4/PROGUTILS/@Ab2PageView/8052 Thanks, I'll check it out... >http://www.lysator.liu.se/c/ANSI-C-grammar-y.html I've got this bookmarked already -- I think you gave me the URL a little while back. With this, "A Book on C" (which has a BNF description of C), and the standard, I should be able to try to come up with a grammar myself and verify it. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 1 23:30:43 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g626Ufk11350 for dynarec-outgoing; Mon, 1 Jul 2002 23:30:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 1 Jul 2002 23:26:21 -0700 (PDT) From: Neil Bradley To: Subject: Re: DYNAREC: Detecting signs during lexical analysis In-Reply-To: <3.0.5.32.20020701224848.007e83f0@dynarec.com> Message-ID: <20020701232426.V97441-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >If there is no space before the number, it's considered part of the number > >(by the lexer). If there is a space between the two, it's considered a '-' > >and a number. > But in C, you can have a space in between the minus and the number: > int n = 0 - - 1; // n = 1 > The parser would have to handle that anyway, wouldn't it? Yes, it needs to handle both cases. It might not be apparent right now, but when you start creating expression tress, things get REALLY hairy. > >How about crazy things like -(expr - (expr + expr ) + -expr * 5)? > My grammar will handle such cases. It can do nested expressions. If I added > support for -(expr) and +(expr), it would handle the above case without any > problems. Let's see if it still does when you're doing something "useful" with it. ;-) I seem to have had a lot of problems with it initially (this was the '92/'93 school year), as we all did. We had a week lecture on it, and sadly most of the details were fading. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 2 09:41:41 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g62GfLI12397 for dynarec-outgoing; Tue, 2 Jul 2002 09:41:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Site Updates and Questions From: "M.I.K.e" Message-ID: <0003a4cdae7a757a_mailit@pop3.dynarec.com> References: <0003a45781d12016_mailit@pop3.dynarec.com> <0003a4ba90fea3ea_mailit@pop3.dynarec.com> Date: Tue, 02 Jul 2002 18:43:52 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >references for Alpha, 68K, IA-32, and MIPS are up - more to come... Added references for ARM, PA-RISC, PowerPC, SPARC, and SuperH. Also listed the ARM, Alpha, and MIPS books I have. You get to the references via the table of open source dynarecs, or if you are impatient: http://www.dynarec.com/procarch/index.html If anyone doesn't like it remember what Bender always says: "Bite my shiny metal ass!" ;-) -- M.I.K.e Real Users find the one combination of bizarre input values that shuts down the system for days. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 2 18:22:10 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g631Lgs12816 for dynarec-outgoing; Tue, 2 Jul 2002 18:21:42 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020702180246.007e8dc0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 02 Jul 2002 18:02:46 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <0003a4cdae7a757a_mailit@pop3.dynarec.com> References: <0003a45781d12016_mailit@pop3.dynarec.com> <0003a4ba90fea3ea_mailit@pop3.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >You get to the references via the table of open source dynarecs, or if you >are impatient: >http://www.dynarec.com/procarch/index.html If possible, try to hunt down the 68K user's manual (it's a smaller manual which includes a good description of instruction timings and exception handling.) But otherwise, great job! I'll have to download a bunch of these for myself :) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 3 13:11:17 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g63KAsH14221 for dynarec-outgoing; Wed, 3 Jul 2002 13:10:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Site Updates and Questions From: "M.I.K.e" Message-ID: <0003a4e4b8b17417_mailit@pop3.dynarec.com> References: <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020702180246.007e8dc0@dynarec.com> Date: Wed, 03 Jul 2002 22:13:08 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >If possible, try to hunt down the 68K user's manual (it's a smaller manual >which includes a good description of instruction timings and exception >handling.) It isn't really that small (1,007K IIRC), but thanks for the hint, it should be online now. >But otherwise, great job! I'll have to download a bunch of these for myself >:) I have all the work and you get all the fun ;-) BTW, tell me if you should come across a link that doesn't work. Another question: Was it on purpose or by accident that you didn't include the Perl script that generated one of the source files in the DRSH2 package? >Bart -- M.I.K.e "Saw a sign on a restaurant that said Breakfast, any time -- so I ordered French Toast in the Renaissance. -- Steven Wright --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 3 18:01:05 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g640xh314435 for dynarec-outgoing; Wed, 3 Jul 2002 17:59:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020703173950.007ea900@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 03 Jul 2002 17:39:50 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <0003a4e4b8b17417_mailit@pop3.dynarec.com> References: <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020702180246.007e8dc0@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Another question: Was it on purpose or by accident that you didn't include >the Perl script that generated one of the source files in the DRSH2 package? I've never used Perl, so I suppose it was no accident that no Perl scripts were included ;) Everything is included and was done by hand. What file are you referring to? ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 9 03:48:43 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g69Am2X25879 for dynarec-outgoing; Tue, 9 Jul 2002 03:48:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 9 Jul 2002 03:28:26 -0700 (PDT) From: tarquin@austin.rr.com X-X-Sender: tarquin@localhost To: dynarec@dynarec.com Subject: DYNAREC: Back in the land of the living again... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I think I may have finally been able to kick EverQuest for good, finally starting to get back to my old online haunts and hobbies. I'm back in Linux for the first real time in probably 3 1/2 months, and digging back through the UberCore again -- brain finally produced a couple of potential solutions to the last adamantium brick wall I hit... In other news, I start work at Treyarch on Monday, probably on graphics library stuff for the current crop of consoles. Should be rather interesting stuff... even if it'll mean I can't really do anything PSX emulation related without icky legal ramifications. But yes, the crazy automation nut is back =P John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 9 18:01:46 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6A11ap26526 for dynarec-outgoing; Tue, 9 Jul 2002 18:01:36 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020709174149.007eb1b0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 09 Jul 2002 17:41:49 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Back in the land of the living again... In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think I may have finally been able to kick EverQuest for good, finally >starting to get back to my old online haunts and hobbies. I've heard EQ is pretty addicting. Someone I know has been trying to get me to start playing it. It sounds fun, but I don't think I have (or want to spare) the time. >In other news, I start work at Treyarch on Monday, probably on graphics >library stuff for the current crop of consoles. Cool, low level stuff? >Should be rather >interesting stuff... even if it'll mean I can't really do anything PSX >emulation related without icky legal ramifications. Sure you can, just never ever associate your real name with it :) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 09:28:57 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6AGSUN27748 for dynarec-outgoing; Wed, 10 Jul 2002 09:28:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Site Updates and Questions From: "M.I.K.e" Message-ID: <0003a56e55b8b772_mailit@pop3.dynarec.com> References: <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020703173950.007ea900@dynarec.com> Date: Wed, 10 Jul 2002 18:23:53 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Sorry for the lack of replies, but I was busy with other stuff - like celebrating the 1000th birthday of my home town (no, there is no zero too much). >I've never used Perl, so I suppose it was no accident that no Perl scripts >were included ;) >Everything is included and was done by hand. What file are you referring to? In the file "insnsd.c" it says: /* This file auto-generated from insns.dat by insns.pl - don't edit it */ >Bart -- M.I.K.e As far as we know, our computer has never had an undetected error. -- Weisert --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 09:28:57 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6AGSRP27743 for dynarec-outgoing; Wed, 10 Jul 2002 09:28:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Back in the land of the living again... From: "M.I.K.e" Message-ID: <0003a56e6b0fd8e6_mailit@pop3.dynarec.com> References: Date: Wed, 10 Jul 2002 18:29:51 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think I may have finally been able to kick EverQuest for good, "Welcome to the real world, Neo!" Oops, sorry - wrong movie... >finally starting to get back to my old online haunts and hobbies. And you think it was a good idea to come back to us maniacs here? ;-) >I'm back in Linux for the first real time in probably 3 1/2 months, and >digging back through the UberCore again -- brain finally produced a couple >of potential solutions to the last adamantium brick wall I hit... Whatever... >In other news, I start work at Treyarch on Monday, probably on graphics >library stuff for the current crop of consoles. Congrats! >Should be rather >interesting stuff... even if it'll mean I can't really do anything PSX >emulation related without icky legal ramifications. Have fun with the EmontionEngine and the GraphicsSynthesizer then. >But yes, the crazy automation nut is back =P Not that your craziness will really shine through in our lot here ;-) >John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS -- M.I.K.e Please, won't somebody tell me what diddie-wa-diddie means? --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 09:28:57 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6AGSYL27754 for dynarec-outgoing; Wed, 10 Jul 2002 09:28:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: UltraHLE source code! From: "M.I.K.e" Message-ID: <0003a56e5e5833c8_mailit@pop3.dynarec.com> Date: Wed, 10 Jul 2002 18:26:17 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com It seems that the UltraHLE source code has been released or leaked, at least you can get it from: http://www.vg-network.com/emudl.phtml?n64emu&36 At first I thought that it's most likely one of those silly disassemblies we had before, but this really looks like the source code. -- M.I.K.e Meeting, n.: An assembly of people coming together to decide what person or department not represented in the room must solve a problem. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 13:04:38 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6AK4JL27953 for dynarec-outgoing; Wed, 10 Jul 2002 13:04:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 10 Jul 2002 20:50:25 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.60m) X-Priority: 3 (Normal) Message-ID: <15843562149.20020710205025@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <0003a56e55b8b772_mailit@pop3.dynarec.com> References: <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020703173950.007ea900@dynarec.com> <0003a56e55b8b772_mailit@pop3.dynarec.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, MIKe> Sorry for the lack of replies, but I was busy with other stuff - like MIKe> celebrating the 1000th birthday of my home town (no, there is no zero too MIKe> much). Did you bake it a cake? Must have been a big one to fit all the candles on! ;) Yes, I'm still alive! I've just been busy with other things and getting over the loss of a friend... Ever had one of those bad months? Anyway, I'm still around and I have a serious amount of e-mail to reply to! Yes, that means YOU, Mike. ;) Given everyone else is talking about what they've been up to, I'll say that I've been getting into GBA development recently, I became a Nintendo developer as of today - and it's really quite interesting to work with a fairly decent piece of equipment for once! There's a couple of games I want to write for it, one of them is like Speedball 2 for the Amiga (if you know it?). There's more to it than that, but that's the basis of the game. The other is a general strategy game - like nothing else that's been made for a handheld. I'm not sure how to explain it, but it's certainly reminiscent of Sim City... Other than that, I started writing another 3D engine - but I got bored, so it's scrapped now. It had the basis of a decent software renderer too as well as 3D rendering via OpenGL. Come to think of it... Bart, I know you've been getting into 3D. Take some advice and leave D3D alone with a barge-pole. Why? Because they've screwed with the matrices and basically they're transposed. What that means is that anything you read in a non-D3D 3D text book isn't easily applicable. Plus it's harder to think about. And not just that, they have to transpose the matrixes themselves for several operations because they just can't do it otherwise... Weird guys at MS... :> That's probably enough of an update for now. :) Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 13:19:22 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6AKJLH27977 for dynarec-outgoing; Wed, 10 Jul 2002 13:19:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 4 Jun 1960 09:52:41 -0500 (CDT) From: Graham Toal Message-Id: <196006041452.JAA06717@gtoal.com> To: dynarec@dynarec.com Subject: Re: Re[2]: DYNAREC: Site Updates and Questions Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Given everyone else is talking about what they've been up to, I'll say > that I've been getting into GBA development recently, I became a > Nintendo developer as of today - and it's really quite interesting to Are you interested in a quick hack to convert my static-recompiled version of Tailgunner to the GBA? The game core is written and works (tested on a PC). It just needs a harness to do some trivial graphics and button- sampling to make it work on the GBA. Previously I had tried it on a Palm but it wasn't fast enough. Now I have a GBA (recent purchase) I think I may have finally found a portable platform for my favourite old game! Let me know if you have an evening free (if it takes longer I wouldn't ask you to continue) and I'll give you the details. When I tried it on the palm, it took me just an evening (although it took about a week or two beforehand to install a palm devkit and learn how to program for the palm - time I don't have this time to learn the GBA) Graham PS I know the date on these postings is still wrong. Sorry. Can't fix it. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 13:50:48 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6AKok228012 for dynarec-outgoing; Wed, 10 Jul 2002 13:50:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 10 Jul 2002 13:46:58 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <196006041452.JAA06717@gtoal.com> Message-ID: <20020710134532.L50146-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Graham > PS I know the date on these postings is still wrong. Sorry. Can't fix it. I'm VERY curious as to why this can't be fixed - strictly from a technical standpoint. Time in any OS is only initially set by the CMOS, and IIRC, this was a CMOS problem of some sort. The OS doesn't go out and read the CMOS at regular intervals (at least it shouldn't) - it keeps time internally. This is true for Windows, DOS, and the various UNIXen out there. Any ideas why it can't be changed? -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 14:27:34 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6ALRSV28053 for dynarec-outgoing; Wed, 10 Jul 2002 14:27:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 10 Jul 2002 22:13:32 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.60m) X-Priority: 3 (Normal) Message-ID: <16148549059.20020710221332@dynarec.com> To: dynarec@dynarec.com Subject: Re[4]: DYNAREC: Site Updates and Questions In-Reply-To: <196006041452.JAA06717@gtoal.com> References: <196006041452.JAA06717@gtoal.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, GT> Are you interested in a quick hack to convert my static-recompiled version GT> of Tailgunner to the GBA? The game core is written and works (tested on GT> a PC). It just needs a harness to do some trivial graphics and button- GT> sampling to make it work on the GBA. Previously I had tried it on a Palm GT> but it wasn't fast enough. Now I have a GBA (recent purchase) I think I GT> may have finally found a portable platform for my favourite old game! Sure, I'm up for that - but it's only fair to let you know that I'll not have time until next week now. It's my birthday next Monday and I'll not be in the next couple of evenings nor the weekend. But if you want to send me the details, I'll look into it next week. I'm no GBA expert, I've only been learning the GBA for the last couple of weeks, but it's a fairly simple machine - with hardware sprites, hardware double buffering and other niceities. Hardware sprites will most likely not be so useful for a vector game, but double buffering certainly would be nice! GT> Let me know if you have an evening free (if it takes longer I wouldn't ask GT> you to continue) and I'll give you the details. When I tried it on the GT> palm, it took me just an evening (although it took about a week or two GT> beforehand to install a palm devkit and learn how to program for the palm - GT> time I don't have this time to learn the GBA) Sure, I take it that the engine is in plain C? By the way, for anyone who's interested, the best development suite I've found for the GBA is HAM, available here: http://www.ngine.de/ GT> Graham GT> PS I know the date on these postings is still wrong. Sorry. Can't fix it. How about using the atomic clock sync utility from http://www.worldtimeserver.com/ ? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 14:30:14 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6ALUD228069 for dynarec-outgoing; Wed, 10 Jul 2002 14:30:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 10 Jul 2002 14:26:26 -0700 (PDT) From: Neil Bradley To: Subject: Re[4]: DYNAREC: Site Updates and Questions In-Reply-To: <16148549059.20020710221332@dynarec.com> Message-ID: <20020710142507.J50146-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > double buffering and other niceities. Hardware sprites will most > likely not be so useful for a vector game, but double buffering > certainly would be nice! I can tell you all about this since I'm in the middle of reviving Retrocade. ;-) Double buffering isn't as "nice" as you might think for vector games. Doing standard 8x8 or 16x16 pixel blits for line draws yields the same speed and is also flicker free in my experience. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 14:41:56 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6ALfu528091 for dynarec-outgoing; Wed, 10 Jul 2002 14:41:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 10 Jul 2002 22:27:55 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.60m) X-Priority: 3 (Normal) Message-ID: <19649412110.20020710222755@dynarec.com> To: dynarec@dynarec.com Subject: Re[5]: DYNAREC: Site Updates and Questions In-Reply-To: <20020710142507.J50146-100000@beacon.synthcom.com> References: <20020710142507.J50146-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> I can tell you all about this since I'm in the middle of reviving NB> Retrocade. ;-) Double buffering isn't as "nice" as you might think for NB> vector games. Doing standard 8x8 or 16x16 pixel blits for line draws NB> yields the same speed and is also flicker free in my experience. If that's the case, then I'd probably try rendering to a sprite (don't know if I can yet, but I'll look into it!) and blit that, since that's about the fastest way I can think of for drawing over a small area. What's the problem of doing 16x16 pixel blits and using double buffering anyway? I'd have thought this would be even faster as you can carry on rendering the next frame (on the GBA, at least) whilst letting the graphics hardware flip the buffer. Reviving Retrocade is very interesting news BTW! I'd offer to take up my old post and put network support in, but... well, actually, I could write up a little network library using sockets (not DirectPlay) and chuck it your way. If the internals of Retrocade can use messages, that's a perfect setup for networking... Who needs Kaillera (or however it's spelt!) anyway? :) As a network programmer (for right now, at least), it's the least I could do! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 15:07:49 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6AM7jl28141 for dynarec-outgoing; Wed, 10 Jul 2002 15:07:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 4 Jun 1960 11:41:07 -0500 (CDT) From: Graham Toal Message-Id: <196006041641.LAA06947@gtoal.com> To: dynarec@dynarec.com Subject: Re: Re[4]: DYNAREC: Site Updates and Questions Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Sure, I'm up for that - but it's only fair to let you know that I'll > not have time until next week now. It's my birthday next Monday and > I'll not be in the next couple of evenings nor the weekend. But if you I know the feeling. I'm off ill until the end of this week - been off for 3 weeks, recovering from burst appendix - unfortunately not well enough to hack much until now, and my eyesight has temporarily deteriorated so that I can't sit in front of a computer much, or read :-( Apparently it will get better soon, I hope.) and I'm going back to blighty for a long overdue vacation all next month, then changing jobs the day I get back, so I don't have much free time myself either. But... enough to squeeze in helping with my side of this project, which shouldn't involve much work - it's mostly done... > want to send me the details, I'll look into it next week. I'm no GBA > expert, I've only been learning the GBA for the last couple of weeks, > but it's a fairly simple machine - with hardware sprites, hardware > double buffering and other niceities. Hardware sprites will most > likely not be so useful for a vector game, but double buffering > certainly would be nice! Two weeks experience should be enough for what's needed; clear screen, draw line, wait for vsync (or time it by hand), sample switched joystick (not analog, so cursor pad will be fine) and sample 2 buttons. That's the lot. Everything else will be done by the core code. At the very minimum just doing clear screen and draw line will get the intro screen up and running by calling 'execute_frame()' in your main loop. I'll mail you specific details off-list, once you have time to start on it. > Sure, I take it that the engine is in plain C? Yes, I did use some GCC extensions[*] once but I think I have a version without them. However if you're using GCC it should be an easy port. (Or is the standrd ARM C based on Acorn's NorCroft still? That was the only one around when I used to be an ARM programmer about 10 years ago) [*: jumping through an array of labels... should have been in C to begin with. Code is generated from another program and I have a parameter that will generate a standard case statement instead - not as efficient as the case range is sparse and it seems to always use a binary chop search rather than a jump table.] > By the way, for anyone who's interested, the best development suite > I've found for the GBA is HAM, available here: > > http://www.ngine.de/ Thanks, he's right, it looks interesting. There's also the "gbadev" group on yahoo. You can get a heads-up on the code by looking at http://www.gtoal.com/athome/utils/#tailgunner http://www.gtoal.com/athome/tailgunner/ http://www.gtoal.com/athome/tailgunner/Palm/TailGunner/ I also asked for a volunteer to work with me on this on: http://groups.yahoo.com/group/gbadev/message/12121 but no-one replied. It's not a very friendly group to newbies. You should see the hassle they give you when you ask to sign up... > How about using the atomic clock sync utility from > http://www.worldtimeserver.com/ ? People frequently mail me and ask about this and I always reply in private mail because it's off topic for the group. Short answer is trust me, it cannot be fixed except by spending a lot of money on either the lastest BSDI unix or a new motherboard. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 15:12:22 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6AMCLI28158 for dynarec-outgoing; Wed, 10 Jul 2002 15:12:21 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 10 Jul 2002 15:08:34 -0700 (PDT) From: Neil Bradley To: Subject: Re[5]: DYNAREC: Site Updates and Questions In-Reply-To: <19649412110.20020710222755@dynarec.com> Message-ID: <20020710145337.B50146-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > NB> Retrocade. ;-) Double buffering isn't as "nice" as you might think for > NB> vector games. Doing standard 8x8 or 16x16 pixel blits for line draws > NB> yields the same speed and is also flicker free in my experience. > If that's the case, then I'd probably try rendering to a sprite (don't Eech! Why? > know if I can yet, but I'll look into it!) and blit that, since that's > about the fastest way I can think of for drawing over a small area. > > What's the problem of doing 16x16 pixel blits and using double > buffering anyway? I'd have thought this would be even faster as you > can carry on rendering the next frame (on the GBA, at least) whilst > letting the graphics hardware flip the buffer. Well, then you're having to keep at least 3 frames of vector data in memory instead of 2 since when you're drawing vectors, you need to erase the old lines and draw the new ones, It's not that there's a "problem" with it, but rather it's extra work for no gain. Plus, for true flicker free operation, you'll need 3 pages to work with. IIRC, The GBA doesn't have much in the way of memory. Though I don't know how the GBA hardware works, I can't imagine that a simple 16x16 or 8x8 blit from a backbuffer for the dirty deltas wouldn't be sufficient or fast. Certainly you'd get no flicker. And, you're doing slightly more work undrawing and redrawing on separate pages as well as using more memory to keep the vector lists around, to which the GBA has neither a lot of memory nor CPU power. > Reviving Retrocade is very interesting news BTW! I'd offer to take up > my old post and put network support in, but... well, actually, I could > write up a little network library using sockets (not DirectPlay) and > chuck it your way. If the internals of Retrocade can use messages, > that's a perfect setup for networking... Who needs Kaillera (or > however it's spelt!) anyway? :) As a network programmer (for right > now, at least), it's the least I could do! I appreciate the offer (and yes, it's message based of course, but don't tell "Dr. Dumbass Linus" Torvalds that), but at this point I'm not sure how far I'm going to take it. I need it to get the ZVG hardware I'm working on running on some real code: http://www.synthcom.com/~nb/battlezone.jpg http://www.synthcom.com/~nb/zvg6.jpg http://www.synthcom.com/~nb/blackwidow.jpg http://www.synthcom.com/~nb/starwars.jpg http://www.synthcom.com/~nb/mh.jpg http://www.synthcom.com/~nb/redbaron.jpg It is message based, however retrofitting something like that in to an emulator not designed for it is tricky, especially since both sides need to be running IDENTICAL emulation on a per frame basis for everything to work. And if you did do the network supprot, I'd insist on a thin layer so it would work in any UNIXen or Windows boxes, even the poor Mac under OSX at least. DirectPlay does have the cool ability to deal with proxies, though, and is real good at it. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 15:14:20 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6AMEJS28177 for dynarec-outgoing; Wed, 10 Jul 2002 15:14:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 10 Jul 2002 15:10:32 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[4]: DYNAREC: Site Updates and Questions In-Reply-To: <196006041641.LAA06947@gtoal.com> Message-ID: <20020710150904.M50146-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Two weeks experience should be enough for what's needed; clear screen, draw > line, wait for vsync (or time it by hand), sample switched joystick (not Or better yet, just blit the deltas and waiting for vsync isn't necessary. > People frequently mail me and ask about this and I always reply in private > mail because it's off topic for the group. Short answer is trust me, it > cannot be fixed except by spending a lot of money on either the lastest > BSDI unix or a new motherboard. Graham is cursed both by a satanic motherboard and a satanic version of BSDI. He's going to hell with that combo no matter what! -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 15:27:13 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6AMRDh28212 for dynarec-outgoing; Wed, 10 Jul 2002 15:27:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 4 Jun 1960 12:00:36 -0500 (CDT) From: Graham Toal Message-Id: <196006041700.MAA07009@gtoal.com> To: dynarec@dynarec.com Subject: Re: Re[4]: DYNAREC: Site Updates and Questions Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > Two weeks experience should be enough for what's needed; clear screen, draw > > line, wait for vsync (or time it by hand), sample switched joystick (not > > Or better yet, just blit the deltas and waiting for vsync isn't necessary. I use vsynch for timing/game play speed, not for flicker reduction... I had some code at one point that either skipped frames, or executed extra frames, so that you could speed up or slow down the game by executing between 0 and N frames per vsynch. I eventually timed it differently, but I think I can still find that code. It was sort of like bresenhams algorithm with time on one axis rather than a spatial dimension (eg on one vsync you would execute 3 frames and on the next vsync only 2, etc) G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 15:41:02 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6AMeuZ28242 for dynarec-outgoing; Wed, 10 Jul 2002 15:40:56 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 10 Jul 2002 15:37:09 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[4]: DYNAREC: Site Updates and Questions In-Reply-To: <196006041700.MAA07009@gtoal.com> Message-ID: <20020710153121.O50146-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Two weeks experience should be enough for what's needed; clear screen, draw > > > line, wait for vsync (or time it by hand), sample switched joystick (not > > Or better yet, just blit the deltas and waiting for vsync isn't necessary. > I use vsynch for timing/game play speed, not for flicker reduction... Ah - for throttling. Under DOS we just reprogram the 8259 to give us exactly the FPS we want. Under Windows, UNIX, and MacOS we set up callback timers that wake the main thread up (causes sleeping, doesn't use CPU power). > I had some code at one point that either skipped frames, or executed > extra frames, so that you could speed up or slow down the game by > executing between 0 and N frames per vsynch. The approach I use above can run at any frame rate, from insanely slow less than 1FPS to however fast the main CPU can push things. Frame throttling is a realtime event and is always best handled in a timer or interrupt driven event to wake up a main thread - especially if the thing is running on batteries. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 17:58:07 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6B0vwu28379 for dynarec-outgoing; Wed, 10 Jul 2002 17:57:58 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020710173802.007e8100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 10 Jul 2002 17:38:02 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Site Updates and Questions In-Reply-To: <0003a56e55b8b772_mailit@pop3.dynarec.com> References: <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020703173950.007ea900@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >In the file "insnsd.c" it says: >/* This file auto-generated from insns.dat by insns.pl - don't edit it */ Oh, the X86 disassembler isn't mine -- it's from NDISASM. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 18:07:09 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6B174V28402 for dynarec-outgoing; Wed, 10 Jul 2002 18:07:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020710174709.007ee4c0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 10 Jul 2002 17:47:09 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <15843562149.20020710205025@dynarec.com> References: <0003a56e55b8b772_mailit@pop3.dynarec.com> <0003a45781d12016_mailit@pop3.dynarec.com> <3.0.5.32.20020703173950.007ea900@dynarec.com> <0003a56e55b8b772_mailit@pop3.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Other than that, I started writing another 3D engine - but I got >bored, so it's scrapped now. It had the basis of a decent software >renderer too as well as 3D rendering via OpenGL. Come to think of >it... Bart, I know you've been getting into 3D. Yes I have. I started late last year and am amazed at my lack of progress ;) I guess I just got too distracted with DRSH2 and other stuff. I finally got view frustum clipping down not to long ago (took me a week or 2 because of an obscure little bug in my perspective projection code!) I'm doing a simple little BSP renderer using 2D BSP trees (not 3D yet.) It's coming along good except for some trouble I'm having with clipping Y values against the frustum. >Take some advice and >leave D3D alone with a barge-pole. Why? Doesn't matter why, I know it's proprietary and it's done by MS... do I need any more reasons? ;) I'd like to move away from Windows almost completely (except for games) one of these days, so there would be no use picking up Direct3D. Once I get really comfortable with 3D graphics, I'll move to OpenGL. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 20:29:19 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6B3TDT28517 for dynarec-outgoing; Wed, 10 Jul 2002 20:29:13 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 10 Jul 2002 20:25:26 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <3.0.5.32.20020710174709.007ee4c0@dynarec.com> Message-ID: <20020710201956.F52501-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Take some advice and > >leave D3D alone with a barge-pole. Why? > Doesn't matter why, I know it's proprietary and it's done by MS... do I Oh come on, Bart, I expect lots more from you. ;-| Panning it just because it's MS is silly! D3D Is actually quite good - a far cry from what it was when it was originally implemented. Even the PS2/PS dev kits mimic the later D3D APIs, and it makes things easy to port to that and the PC. I should know - I worked on Madden 2000 and the differences between the PS, PS2, and PC versions were extremely small - only very, very minor exceptions. Now you've got the XBox as a target Around DX5 days, I would've agreed with you, but not now. If you want to hit a target market with games or things that use it, D3D is exceedingly worthwhile. Or, you can use SDL and never worry about the rest... > need any more reasons? ;) I'd like to move away from Windows almost > completely (except for games) So... you don't want D3D but you want to move away from Windows *EXCEPT* for games. Seems like those goals are in conflict with eachother! ;-) > one of these days, so there would be no use > picking up Direct3D. Once I get really comfortable with 3D graphics, I'll > move to OpenGL. Hate to say it, but guess where 3D works best on all platforms, OpenGL or otherwise? Windows. Just don't become a Linux bigot. They're worse than Microsoft. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 20:31:55 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6B3Vsc28530 for dynarec-outgoing; Wed, 10 Jul 2002 20:31:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 10 Jul 2002 20:28:08 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <20020710201956.F52501-100000@beacon.synthcom.com> Message-ID: <20020710202753.G52501-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >Take some advice and > > >leave D3D alone with a barge-pole. Why? > > Doesn't matter why, I know it's proprietary and it's done by MS... do I > Oh come on, Bart, I expect lots more from you. ;-| Panning it just > because it's MS is silly! FWIW, There's a killer OpenGL tutorial set here: http://nehe.gamedev.net/ -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 10 21:54:24 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6B4s1828618 for dynarec-outgoing; Wed, 10 Jul 2002 21:54:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020710213403.007ec100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 10 Jul 2002 21:34:03 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <20020710201956.F52501-100000@beacon.synthcom.com> References: <3.0.5.32.20020710174709.007ee4c0@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 08:25 PM 7/10/2002 -0700, you wrote: >> >Take some advice and >> >leave D3D alone with a barge-pole. Why? >> Doesn't matter why, I know it's proprietary and it's done by MS... do I > >Oh come on, Bart, I expect lots more from you. ;-| Panning it just >because it's MS is silly! I think I put a winky face in there. :) I'm not a complete anti-MS zealot. > >D3D Is actually quite good - a far cry from what it was when it was >originally implemented. Yes, I've heard it has gotten quite good, especially with DX8. But from what I've heard, OpenGL is still arguably somewhat technically superior, and it has the added benefit of being pretty portable. >Around DX5 days, I would've agreed with you, but not now. If you want to >hit a target market with games or things that use it, D3D is exceedingly >worthwhile. OpenGL should be as well, shouldn't it? id still uses OpenGL and their games are pretty darn good. >So... you don't want D3D but you want to move away from Windows *EXCEPT* >for games. Seems like those goals are in conflict with eachother! ;-) I meant playing games :) Which I don't do much anymore (at least not new games) :( I think I'll wait for Doom III before I build myself a completely new system. My PIII-500 suits me well right now, but it isn't any good for games, especially not with a 16MB ATI Rage128. >> one of these days, so there would be no use >> picking up Direct3D. Once I get really comfortable with 3D graphics, I'll >> move to OpenGL. > >Hate to say it, but guess where 3D works best on all platforms, OpenGL or >otherwise? Windows. I don't doubt that. >Just don't become a Linux bigot. I'm not, nor do I intend to be. I used to run FreeBSD for a little while and I liked it a lot. I moved back to Windows completely because I found I really had no need for FreeBSD. However, lately, I've been considering switching back to it. I hear FreeBSD's device support isn't as good as Linux, but I don't have anything particularly special attached to my system. Graphics drivers might be a problem. Are device drivers hard to port from Linux -> FreeBSD? I liked how responsive FreeBSD seemed and may return to it if I decide to pursue writing my C compiler (right now, I still have a bit more to learn about parsing before I start a C compiler.) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 11 10:52:55 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6BHq2j29714 for dynarec-outgoing; Thu, 11 Jul 2002 10:52:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 11 Jul 2002 10:48:18 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <3.0.5.32.20020710213403.007ec100@dynarec.com> Message-ID: <20020711104206.A56370-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Oh come on, Bart, I expect lots more from you. ;-| Panning it just > >because it's MS is silly! > I think I put a winky face in there. :) I'm not a complete anti-MS zealot. Hehehe. Yeah, I know. I'm just trying to keep you in check! > But from what I've heard, OpenGL is still arguably somewhat technically > superior, and it has the added benefit of being pretty portable. Fact is, they're both about equal with a slight edge going to D3D. Even Carmack admist this. Besides, the OpenGL "pushers" wouldn't admit that D3D has any good ideas or is better even if it stomped it. There are still people out there who actually believe that Linux is easier to install (any distro) than Windows. It's just religious denial. > >Around DX5 days, I would've agreed with you, but not now. If you want to > >hit a target market with games or things that use it, D3D is exceedingly > >worthwhile. > OpenGL should be as well, shouldn't it? id still uses OpenGL and their > games are pretty darn good. Yes. Either is worthwhile, but a few things are nicer in D3D. > games) :( I think I'll wait for Doom III before I build myself a completely > new system. My PIII-500 suits me well right now, but it isn't any good for > games, especially not with a 16MB ATI Rage128. Ouch. ;-( Anything ATI and 3D is just plain painful. The Rage128 couldn't do 3D ,could it? I'm with ya on the system upgrade. I'm running a P3 1Ghz box with a VisionTek TI4600. I had to have something for Grand Theft Auto 3 and Dungeon Siege. > I used to run FreeBSD for a little while and I liked it a lot. I moved back > to Windows completely because I found I really had no need for FreeBSD. > However, lately, I've been considering switching back to it. I hear > FreeBSD's device support isn't as good as Linux, It isn't as extensive, but saying it isn't "as good as Linux" is misleading. It supports anything common, and even a few things not so common. It supports a bunch of stuff not listed on their web site as well because more often than not many vendors will take a common chip and slap it on a board. They all appear to be the same device when probed - regardless of the vendor. I also know that FreeBSD's drivers work and work well. They're thoroughly tested, unlike a lot of the Linux drivers. > Graphics drivers might be a problem. Are device drivers hard to port from > Linux -> FreeBSD? Hm... I don't think it would be a problem. It's just running XFree86, so you might check to see what it supports. > I liked how responsive FreeBSD seemed and may return to it if I decide to > pursue writing my C compiler (right now, I still have a bit more to learn > about parsing before I start a C compiler.) FreeBSD's multitasking and VM subsystem are unsurpassed. Even the most ardent Linux bigots will back this. ;-) -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 11 12:28:56 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6BJSkN29824 for dynarec-outgoing; Thu, 11 Jul 2002 12:28:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <002701c22911$386c4e00$2900a8c0@burp> From: "Tom Browne" To: References: <20020711104206.A56370-100000@beacon.synthcom.com> Subject: Re: Re[2]: DYNAREC: Site Updates and Questions Date: Thu, 11 Jul 2002 20:29:04 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > games) :( I think I'll wait for Doom III before I build myself a completely > > new system. My PIII-500 suits me well right now, but it isn't any good for > > games, especially not with a 16MB ATI Rage128. > Ouch. ;-( Anything ATI and 3D is just plain painful. Er... Radeon 8500? Certainly beats my Kyro II into a pulp... :) Even the 7500 is quite decent, and will run just about any game going. > The Rage128 couldn't do 3D ,could it? Not very well. :) I had an 16MB ATI Mobility board (very similar chipset to the Pro) only 6 months or so ago (only bought it for DVD usage)... could just about run UT @ 512x384. Better than a Trident Blade3D, I'll tell you that much! > I'm with ya on the system upgrade. I'm running a P3 1Ghz box with a > VisionTek TI4600. I had to have something for Grand Theft Auto 3 and > Dungeon Siege. I almost splashed out on a Ti4200 the other day, with the intention of clocking it up to beyond 4400 speeds until the "next great thing" comes along, but I've just built yet another PC, a Duron 1G, so decided to hold onto the Kyro for a bit longer... I have now cracked no less than two AMD dies - one Duron 650, and one TBird 1.3. I was determined to not be outdone, though, so I replaced the dead KT7-RAID with a cheap KT333 board and the aforementioned new Duron. Works great... Since my main AMD system went up in smoke, I've been running a Celeron-1.1 at 1.48G, with very good results. It's not exactly a speed demon (a bit slower than the TBird 1.3), but it's proving to be somewhat more reliable. > > However, lately, I've been considering switching back to it. I hear > > FreeBSD's device support isn't as good as Linux, > It isn't as extensive, but saying it isn't "as good as Linux" But it just isn't as good! Where's ALSA for FreeBSD, as an example? > > I liked how responsive FreeBSD seemed and may return to it if I decide to > > pursue writing my C compiler (right now, I still have a bit more to learn > > about parsing before I start a C compiler.) > FreeBSD's multitasking and VM subsystem are unsurpassed. Even the most > ardent Linux bigots will back this. ;-) My idea of unsurpassed multitasking is a system which lets me allocate a precise number of cycles per second to a particular thread. :) VM has no use for me in "real OS land", with memory as cheap as chips... - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 11 12:42:13 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6BJgCw29854 for dynarec-outgoing; Thu, 11 Jul 2002 12:42:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 11 Jul 2002 12:38:28 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <002701c22911$386c4e00$2900a8c0@burp> Message-ID: <20020711123134.Q56752-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > games, especially not with a 16MB ATI Rage128. > > Ouch. ;-( Anything ATI and 3D is just plain painful. > Er... Radeon 8500? Certainly beats my Kyro II into a pulp... :) > Even the 7500 is quite decent, and will run just about any game going. Nothing compared to any 2nd or even 3rd generation NVidia offering. > Since my main AMD system went up in smoke, I've been running a Celeron-1.1 > at 1.48G, with very good results. It's not exactly a speed demon (a bit > slower than the TBird 1.3), but it's proving to be somewhat more reliable. You're a geek in the truest form of the word! I'd rather spend the extra $12 and get the 1.4Ghz Celeron in spec and have it reliable! > > > FreeBSD's device support isn't as good as Linux, > > It isn't as extensive, but saying it isn't "as good as Linux" > But it just isn't as good! It's far better, actually: * Better VM Subsystem * Better Scheduler * Fully POSIX and BSD 4.4 compliant (Linux has an identity problem) * Better filesystem (ask me about the FS corruptions we have on power cycling problems and the backup mirrors we keep in testing our quad CPU servers) Even without the entire FreeBSD kernel being SMP, it still outperforms Linux on the same box. FWIW, I'm part of a design team that creates MP servers for a living. ;-) > Where's ALSA for FreeBSD, as an example? A "so what". It solves nothing that Windows hasn't solved 7 years ago. FreeBSD is primarily a server OS (I would never call it or Linux a "desktop OS"). Plus, audio apps on Linux are shit compared to decent apps on Windows and (ugh) the Mac (Cubase? Reason? Sound Forge? Acid? Logic - well, at least until Apple bought eMagic). > > FreeBSD's multitasking and VM subsystem are unsurpassed. Even the most > > ardent Linux bigots will back this. ;-) > My idea of unsurpassed multitasking is a system which lets me allocate a > precise number of cycles per second to a particular thread. :) No, no, that's *ANAL* multitasking! > VM has no use for me in "real OS land", with memory as cheap as chips... Even without it, Linux bogs and becomes a slug when the load average is 1.0 or higher. And tell that to someone like Walnut Creek who regularly hits swap with systems maxed out memory-wise! -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 11 16:41:25 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6BNfGP30080 for dynarec-outgoing; Thu, 11 Jul 2002 16:41:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <004601c22934$7cb881a0$2900a8c0@burp> From: "Tom Browne" To: References: <20020711123134.Q56752-100000@beacon.synthcom.com> Subject: Re: Re[2]: DYNAREC: Site Updates and Questions Date: Fri, 12 Jul 2002 00:41:31 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > games, especially not with a 16MB ATI Rage128. > > > Ouch. ;-( Anything ATI and 3D is just plain painful. > > Er... Radeon 8500? Certainly beats my Kyro II into a pulp... :) > > Even the 7500 is quite decent, and will run just about any game going. > Nothing compared to any 2nd or even 3rd generation NVidia offering. A retail 7500 DDR will beat any 2nd generation NV 99 times out of a hundred. As for the 3s, vice versa, but that isn't even the point. Look at the framerates for games available TODAY. Anything over 60fps at 10x7 is not by any stretch of the adjective... painful. The truth of the matter is that games developers are struggling to use the immense power offered by modern graphics chipsets, which have long since overtaken the CPU in their speed of evolution. But then I don't even care, really. I'd much rather them spend some time on creating a decent game rather than trying to outdo each other with the latest party trick technique. Silly me... > Since my main AMD system went up in smoke, I've been running a Celeron-1.1 > > at 1.48G, with very good results. It's not exactly a speed demon (a bit > > slower than the TBird 1.3), but it's proving to be somewhat more reliable. > You're a geek in the truest form of the word! Hm?! A geek who runs Windows 98SE... on a... Socket370 system, when all the fanboys run XP on AMDs and GF4s, with fan and HD noise that makes your ears bleed? :) > I'd rather spend the extra $12 and get the 1.4Ghz > Celeron in spec and have it reliable! That's entirely your choice, but a) any Celeron-II will hit 1.5G in my experience (tried 1.0, 1.1, and 1.2 grades, from a spread of fab dates), and b) with total reliability. I would also note that a "genuine" 1.4G Celeron is completely castrated by the 100MHz FSB and doesn't perform anything like my 1.1G overclocked in real-world apps, which strays into low-end XP territory. > > > > FreeBSD's device support isn't as good as Linux, > > > It isn't as extensive, but saying it isn't "as good as Linux" > > But it just isn't as good! > It's far better, actually: Who's the geek now? :) > * Better filesystem (ask me about the FS corruptions we have on power > cycling problems and the backup mirrors we keep in testing our quad CPU > servers) No - use ext3, fool sir! > Even without the entire FreeBSD kernel being SMP, it still outperforms > Linux on the same box. FWIW, I'm part of a design team that creates MP > servers for a living. ;-) Good for you, lad. :) > > Where's ALSA for FreeBSD, as an example? > A "so what". An "absolutely critical" for my needs, as it is for anyone with an interest in audio to have a system whose latency is measured in tens rather than hundreds of ms... As a few basic examples... DVD or DVB playback... any sort of "proper" gaming... > It solves nothing that Windows hasn't solved 7 years ago. Windows hasn't solved anything in this regard... Steinberg did. DSound is still a joke for serious audio work, and the whole WDM/KMixer latency thing is a bit of a farce. Give me ASIO any day. > FreeBSD is primarily a server OS (I would never call it or Linux a > "desktop OS"). That's what the figures say, sure. There are probably more people using PS2Linux than FreeBSD as a desktop OS. :)) > Plus, audio apps on Linux are shit compared to decent apps The likes of Ardour is hardly shit. In any case, it would hardly be fair to expect miracles from GPL apps developed in free time by a few enthusiasts against a dedicated commercial team working full time. Obviously. In fact, I'm very impressed what is happening with Linux multimedia right now. Plenty of stuff going on, as anyone who reads the lad list and suchlike would be... > > > FreeBSD's multitasking and VM subsystem are unsurpassed. Even the most > > > ardent Linux bigots will back this. ;-) > > My idea of unsurpassed multitasking is a system which lets me allocate a > > precise number of cycles per second to a particular thread. :) > No, no, that's *ANAL* multitasking! You said unsurpassed... :) > > VM has no use for me in "real OS land", with memory as cheap as chips... > Even without it, Linux bogs and becomes a slug when the load average is > 1.0 or higher. Funny... I run my Linux (2.4.18+LL) system 24/7 on 100% load virtually all the time... no such issue. 256MB and no swap with full KDE environment, KDEStudio, and my resource-hogging app I'm working on... My Linux box has a worst-case latency of around 11ms... not bad for a system with supposedly shite multitasking! - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 11 17:11:33 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C0BUr30116 for dynarec-outgoing; Thu, 11 Jul 2002 17:11:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 11 Jul 2002 17:07:47 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <004601c22934$7cb881a0$2900a8c0@burp> Message-ID: <20020711164424.V56752-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > Ouch. ;-( Anything ATI and 3D is just plain painful. > > > Er... Radeon 8500? Certainly beats my Kyro II into a pulp... :) > > > Even the 7500 is quite decent, and will run just about any game going. > > Nothing compared to any 2nd or even 3rd generation NVidia offering. > A retail 7500 DDR will beat any 2nd generation NV 99 times out of a hundred. Are you speaking about something like the TNT2 (that's third generation NVidia)? Or did you mean the Geforce 2? > Anything over 60fps at 10x7 is not by any stretch of the adjective... > painful. There aren't many games that really push it this hard. GTA3 Comes fairly close, but really all it means is bigger textures and I can run with better display resolutions rather than higher framerates.A lot of games still suffer from the inability to get textures on/off the cards in a timely manner ( > > Since my main AMD system went up in smoke, I've been running a Celeron-1.1 > > > at 1.48G, with very good results. It's not exactly a speed demon (a bit > > > slower than the TBird 1.3), but it's proving to be somewhat more > > You're a geek in the truest form of the word! > Hm?! A geek who runs Windows 98SE... on a... Socket370 system, > when all the fanboys run XP on AMDs and GF4s, with fan and HD noise that > makes your ears bleed? :) No, no... you mistunderstand me - that's a compliment! ;-) Those guys of which you speak are NERDs! > > I'd rather spend the extra $12 and get the 1.4Ghz > > Celeron in spec and have it reliable! > That's entirely your choice, but a) any Celeron-II will hit 1.5G in my > experience (tried 1.0, 1.1, and 1.2 grades, from a spread of fab dates), and > b) with total reliability. Hm... didn't you mention before that you had a system or two die on you? ;-) > I would also note that a "genuine" 1.4G Celeron is completely castrated by > the 100MHz FSB and doesn't perform anything like my 1.1G overclocked in > real-world apps, which strays into low-end XP territory. I think we're in two different leagues, as I wouldn't buy a Celeron anyway. Don't get me wrong - I admire getting more power out of something supposedly less capable. Dial that boost on those turbos up. Use that nitrous! But I've long since passed the days when running my systems at the bleeding edge was worth more than spending an extra few bucks. I'm not criticizing - I do think it's cool (ask me about my overclocked 487SX only CPU system some time). It's just not for me any longer. > > > But it just isn't as good! > > It's far better, actually: > > Who's the geek now? :) Raises hand... just a DIFFERENT type of geek... I rather think the term "geek" is a mark of positive distinction. > > cycling problems and the backup mirrors we keep in testing our quad CPU > > servers) > No - use ext3, fool sir! Uses ext3. Part of certification is unexpected AC power cycling, and one out of 50 unexpected power losses winds up with a corrupt, unusable file system (Redhat 7.3). FreeBSD and Windows NT, 2K, nor XP have this problem. Of course FreeBSD/NT/2K/XP all bitch about having missing inodes/blocks but they repair themselves. Linux does, too, most of the time. > > > Where's ALSA for FreeBSD, as an example? > > A "so what". > An "absolutely critical" for my needs, as it is for anyone with an interest > in audio to have a system whose latency is measured in tens rather than > hundreds of ms... Yes, and without which you'd wind up with weird phase cancellation problems and whatnot. However, I'm talking about pro audio, so it looks like we've talked past eachother. > As a few basic examples... DVD or DVB playback... any sort of "proper" > gaming... I agree it's important. > > It solves nothing that Windows hasn't solved 7 years ago. > Windows hasn't solved anything in this regard... Steinberg did. DSound is > still a joke for serious audio work, and the whole WDM/KMixer latency thing > is a bit of a farce. Give me ASIO any day. Sorry - yes, precisely what I meant (ASIO). I don't mean to accidentally give Microsoft credit for such a thing. > > FreeBSD is primarily a server OS (I would never call it or Linux a > > "desktop OS"). > That's what the figures say, sure. There are probably more people using > PS2Linux than FreeBSD as a desktop OS. :)) Hehehe. I wouldn't doubt that a bit. > > Plus, audio apps on Linux are shit compared to decent apps > The likes of Ardour is hardly shit. Depends upon what you expect out of an audio app. ;-) Ardour lacks MIDI recording/editing capabilities - a must for almost any studio. > In any case, it would hardly be fair to > expect miracles from GPL apps developed in free time by a few enthusiasts > against a dedicated commercial team working full time. Obviously. Especially when that team has been perfecting it for 5-8 years. But to say that Ardour even comes close to Cubase (as they allude to on their web page) is insane. Cubase VST is far more than just a simple hard disk recorder with some EQing. Virtual instruments are the cornerstone of music production these days and without it. I like the quote "Ardour has been run for full days without crashing. " Funny how VST 5.1r1 I've used for weeks on end with no shutdowns under 2K. Let's not talk about '95/'98. ;-( > > > > FreeBSD's multitasking and VM subsystem are unsurpassed. Even the most > > > > ardent Linux bigots will back this. ;-) > > > My idea of unsurpassed multitasking is a system which lets me allocate a > > > precise number of cycles per second to a particular thread. :) > > No, no, that's *ANAL* multitasking! > You said unsurpassed... :) Unsurpassed as in what exists today. > > Even without it, Linux bogs and becomes a slug when the load average is > > 1.0 or higher. > Funny... I run my Linux (2.4.18+LL) system 24/7 on 100% load virtually all > the time... no such issue. 256MB and no swap with full KDE environment, > KDEStudio, and my resource-hogging app I'm working on... Just running Seti@Home in the background (without the nice option) causes really jerky terminal response with Redhat 7.3. FreeBSD doesn't do this - the system is still just as responsive. I don't think you would see it nor notice it as being jerky unless you've had the (pleasure?) of seeing them side by side. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 11 19:51:10 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C2p2S30266 for dynarec-outgoing; Thu, 11 Jul 2002 19:51:02 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020711193057.007f0810@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 11 Jul 2002 19:30:57 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <20020711104206.A56370-100000@beacon.synthcom.com> References: <3.0.5.32.20020710213403.007ec100@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Fact is, they're both about equal with a slight edge going to D3D. Even >Carmack admist this. I remember him saying that D3D is a nice API which has improved a lot since it first came out. But he's still a big OpenGL advocate. It's funny how a lot of people still quote his negative comments towards D3D from 1998 -- like the posters at slashdot (big surprise there :P) Hasn't OpenGL had some problems with rolling out the 2.0 standard? It's been kind of stagnating for a while, hasn't it? >Ouch. ;-( Anything ATI and 3D is just plain painful. The Rage128 couldn't >do 3D ,could it? I ran Quake 3 pretty well on it. >FreeBSD's multitasking and VM subsystem are unsurpassed. Even the most >ardent Linux bigots will back this. ;-) What about SMP? And when will the IA-64, PPC, SPARC, and X86-64 ports be finished? Well, I don't care about PPC or SPARC, but X86-64 might turn out to be pretty cool and IA-64 is starting to shape up (Itanium 2 is supposed to be doing pretty well.) And now for something completely different and OT: With 64-bit computing becoming increasingly needed (I guess for servers and systems which need lots of memory), would integer data types any larger than 64 bits be useful? Personally, I have no need for anything bigger than 32 bits, and I wonder if anyone could really use 128 or 256-bit integer registers. Larger floating point types might be useful to more people. Are there any plans to extend the IEEE FP standard past 80 bits (which only Intel chips use, AFAIK -- everyone else just implements 64-bit double precision.) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 11 20:15:01 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C3F1W30299 for dynarec-outgoing; Thu, 11 Jul 2002 20:15:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 11 Jul 2002 19:56:06 -0700 (PDT) From: tarquin@austin.rr.com X-X-Sender: tarquin@localhost To: dynarec@dynarec.com Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <3.0.5.32.20020711193057.007f0810@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, 11 Jul 2002, Bart wrote: > And now for something completely different and OT: With 64-bit computing > becoming increasingly needed (I guess for servers and systems which need > lots of memory), would integer data types any larger than 64 bits be > useful? Personally, I have no need for anything bigger than 32 bits, and I > wonder if anyone could really use 128 or 256-bit integer register Extra large integer registers become quite handy when you throw SIMD instruction sets in. > Larger floating point types might be useful to more people. Are there any > plans to extend the IEEE FP standard past 80 bits (which only Intel chips > use, AFAIK -- everyone else just implements 64-bit double precision.) I believe that 80 bits is enough as far as precision/accuracy goes for most things, the people that need it tighter than that tend to roll their own fixed point implementations. People really like SIMD'd single precision, so 128 bit regs help there. > ---- > Bart John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 11 20:17:46 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C3HjB30312 for dynarec-outgoing; Thu, 11 Jul 2002 20:17:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 11 Jul 2002 20:14:03 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <3.0.5.32.20020711193057.007f0810@dynarec.com> Message-ID: <20020711200812.K58886-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Fact is, they're both about equal with a slight edge going to D3D. Even > >Carmack admist this. > I remember him saying that D3D is a nice API which has improved a lot since > it first came out. But he's still a big OpenGL advocate. He seems to flip flop from time to time. I think he gives props to both. I know it's hard to switch from advocating something you've been advocating for years to even acknowledging the fact that something else might be equivalent or very good, too, and I suspect he's in the same boat. > It's funny how a lot of people still quote his negative comments towards > D3D from 1998 -- like the posters at slashdot (big surprise there :P) Yeah. It's funny how "advocates" tend to use any weapons at their disposal, regardless of logic. Plus, I guess no one is allowed to change their mind, either. ;-) > Hasn't OpenGL had some problems with rolling out the 2.0 standard? It's > been kind of stagnating for a while, hasn't it? I haven't been following it too closely... or at all. ;-) So I don't really know about 2.0. > >Ouch. ;-( Anything ATI and 3D is just plain painful. The Rage128 couldn't > >do 3D ,could it? > I ran Quake 3 pretty well on it. Really? I have Rage128 based ATI boards and can't get any 3D support out of them period! > >FreeBSD's multitasking and VM subsystem are unsurpassed. Even the most > >ardent Linux bigots will back this. ;-) > What about SMP? FreeBSD's kernel isn't SMP - it only SMPs across tasks, but from the performance benchmarks I read about late last year, it didn't make any difference. > And when will the IA-64, PPC, SPARC, and X86-64 ports be finished? Well, I > don't care about PPC or SPARC, but X86-64 might turn out to be pretty cool > and IA-64 is starting to shape up (Itanium 2 is supposed to be doing pretty > well.) There is a FreeBSD port to Itanium in the works, as well as a Linuxen and something from MS. PPC? SPARC? Well, there's not too much in the way of call for it. Why buy a PPC based machine for server operations when a machine significantly less expensive and non proprietary can be had that performs much better? > And now for something completely different and OT: With 64-bit computing > becoming increasingly needed (I guess for servers and systems which need > lots of memory), I think that's more of a widely believed seldom practiced path. Typically our customers (I.E. eBay, Yahoo, etc...) are running very little memory - somewhere in the neighborhood of a gigabyte on their servers. Maybe Google would be a different story. ;-) > would integer data types any larger than 64 bits be > useful? Personally, I have no need for anything bigger than 32 bits, and I > wonder if anyone could really use 128 or 256-bit integer registers. I'm sure there are creative uses for them. The only time I'd find 64 bit stuff useful is for computing file sizes and doing filesystems. ;-) > Larger floating point types might be useful to more people. Are there any > plans to extend the IEEE FP standard past 80 bits (which only Intel chips > use, AFAIK -- everyone else just implements 64-bit double precision.) I thought the PPC had 80 bit FP, too. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 11 21:35:39 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C4ZYM30386 for dynarec-outgoing; Thu, 11 Jul 2002 21:35:34 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020711211528.007ec1e0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 11 Jul 2002 21:15:28 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: References: <3.0.5.32.20020711193057.007f0810@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Extra large integer registers become quite handy when you throw SIMD >instruction sets in. Very good point... >I believe that 80 bits is enough as far as precision/accuracy goes for >most things, the people that need it tighter than that tend to roll their >own fixed point implementations. How about complex simulation software run on supercomputers? Accuracy is important, but do they use custom fixed point implementations or do they just let their FORTRAN compilers generate floating point code. Performance on these things is always measured in FLOPS anyway... ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 11 21:45:39 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C4jdD30410 for dynarec-outgoing; Thu, 11 Jul 2002 21:45:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020711212533.007efdb0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 11 Jul 2002 21:25:33 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <20020711200812.K58886-100000@beacon.synthcom.com> References: <3.0.5.32.20020711193057.007f0810@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >He seems to flip flop from time to time. I think he gives props to both. I >know it's hard to switch from advocating something you've been advocating >for years to even acknowledging the fact that something else might be >equivalent or very good, too, and I suspect he's in the same boat. I'll have to disagree a bit. Carmack is pretty objective about things and will give credit where it's due, but doesn't have a problem admitting something sucks even if he used to like it. He's one of those "best tool for the job" kind of guys. >Really? I have Rage128 based ATI boards and can't get any 3D support out >of them period! You aren't the first person I've heard say that the Rage128 isn't a 3D accelerator but it really must be. No doubt it's not a very good accelerator, but it does do _something_ :) >There is a FreeBSD port to Itanium in the works, as well as a Linuxen and >something from MS. Linux and Windows for IA-64 have been available for a while to my knowledge. I just checked the FreeBSD IA-64 port page and noticed some updates. I wonder how long it will be before it can be considered good enough for real use. >PPC? SPARC? Well, there's not too much in the way of >call for it. Why buy a PPC based machine for server operations when a >machine significantly less expensive and non proprietary can be had that >performs much better? I don't know, I just mentioned them because ports are in the works. >I thought the PPC had 80 bit FP, too. Not according to the PPC manual I have. Maybe the newer stuff (G3 and above) does. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 11 22:02:24 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C52Mh30437 for dynarec-outgoing; Thu, 11 Jul 2002 22:02:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 11 Jul 2002 21:58:39 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <3.0.5.32.20020711212533.007efdb0@dynarec.com> Message-ID: <20020711215031.C58886-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >for years to even acknowledging the fact that something else might be > >equivalent or very good, too, and I suspect he's in the same boat. > I'll have to disagree a bit. Carmack is pretty objective about things and > will give credit where it's due, I wasn't trying to advocate that he was stuck in his ways, only that he, like everyone else in the world, are affected by inertia. I remember him panning D3D a bit later than it really deserved, but his stance on it has indeed come around. > something sucks even if he used to like it. He's one of those "best tool > for the job" kind of guys. With the exception of DJGPP/Quake 1 which IIRC he admits was a mistake. > >Really? I have Rage128 based ATI boards and can't get any 3D support out > >of them period! > You aren't the first person I've heard say that the Rage128 isn't a 3D > accelerator but it really must be. No doubt it's not a very good > accelerator, but it does do _something_ :) I just checked on one of my other machines. I have a 16MB Rage 128 and there is nothing more than basic DirectDraw capabilities listed in DXDIAG. Can you run DXDiag and tell me if it has 3D accelleration? > >There is a FreeBSD port to Itanium in the works, as well as a Linuxen and > >something from MS. > Linux and Windows for IA-64 have been available for a while to my > knowledge. I just checked the FreeBSD IA-64 port page and noticed some > updates. I wonder how long it will be before it can be considered good > enough for real use. I think it's a chicken and egg thing. There are only 500 shipped IA-64 platforms in existence. Not very useful to the general populus. > >I thought the PPC had 80 bit FP, too. > Not according to the PPC manual I have. Maybe the newer stuff (G3 and > above) does. Hm... I just checked a G4 reference and it made no mention of 80 bit numbers. Weird. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 11 22:30:54 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C5UrP30482 for dynarec-outgoing; Thu, 11 Jul 2002 22:30:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020711221047.007ef180@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 11 Jul 2002 22:10:47 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <20020711215031.C58886-100000@beacon.synthcom.com> References: <3.0.5.32.20020711212533.007efdb0@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >With the exception of DJGPP/Quake 1 which IIRC he admits was a mistake. Why? The alternative platform would have been Windows, and I doubt it was ready at that time. As for other DOS compilers... I wonder why he didn't choose Watcom... Quake turned out pretty well, nonetheless ;) >I just checked on one of my other machines. I have a 16MB Rage 128 and >there is nothing more than basic DirectDraw capabilities listed in DXDIAG. >Can you run DXDiag and tell me if it has 3D accelleration? I just ran it and it does indeed have 3D acceleration. >I think it's a chicken and egg thing. There are only 500 shipped IA-64 >platforms in existence. Not very useful to the general populus. Only 500? How many processors have they manufactured? ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 11 22:34:52 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C5YpM30497 for dynarec-outgoing; Thu, 11 Jul 2002 22:34:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 11 Jul 2002 22:31:09 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <3.0.5.32.20020711221047.007ef180@dynarec.com> Message-ID: <20020711222958.X58886-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >With the exception of DJGPP/Quake 1 which IIRC he admits was a mistake. > Why? The alternative platform would have been Windows, and I doubt it was > ready at that time. Well, I was speaking compilers, not platforms. > As for other DOS compilers... I wonder why he didn't choose Watcom... Quake > turned out pretty well, nonetheless ;) Lots of hand optimized assembly. Have you dug through the sources? > >there is nothing more than basic DirectDraw capabilities listed in DXDIAG. > >Can you run DXDiag and tell me if it has 3D accelleration? > I just ran it and it does indeed have 3D acceleration. Hm... Very, very weird. I still get none. They're greyed out! > >I think it's a chicken and egg thing. There are only 500 shipped IA-64 > >platforms in existence. Not very useful to the general populus. > Only 500? How many processors have they manufactured? Sorry... confidential. ;-) When I say "Shipped" I mean "sold" - I'm not counting beta units. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Jul 11 23:07:18 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C67C830540 for dynarec-outgoing; Thu, 11 Jul 2002 23:07:12 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020711224705.007ef6d0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 11 Jul 2002 22:47:05 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <20020711222958.X58886-100000@beacon.synthcom.com> References: <3.0.5.32.20020711221047.007ef180@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Lots of hand optimized assembly. Have you dug through the sources? Yeah. I'm sure there would be just as much assembly even if Watcom was chosen. >Hm... Very, very weird. I still get none. They're greyed out! Perhaps it's a driver issue? >Sorry... confidential. ;-) When I say "Shipped" I mean "sold" - I'm not >counting beta units. If the original Itanium was meant mostly for developers, is Itanium 2 expected to actually be put to real use by customers? It's a really interesting platform and assuming performance turns out to be as good as Intel and HP are claiming, I can't wait until they become more widespread and affordable. I understand that they won't be intended for home use for a very long time (if ever) but if I had the money and could come up with any sort of reason, I'd probably switch over just for the hell of it ;) Perhaps it would be an interesting platform to do dynarecs on ;) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 12 00:05:29 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C756430618 for dynarec-outgoing; Fri, 12 Jul 2002 00:05:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 12 Jul 2002 08:50:16 +0200 From: Victor Moya del Barrio To: dynarec@dynarec.com Subject: Re: Re[2]: DYNAREC: Site Updates and Questions Message-ID: <20020712065016.GA22171@ac.upc.es> References: <3.0.5.32.20020711193057.007f0810@dynarec.com> <20020711200812.K58886-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20020711200812.K58886-100000@beacon.synthcom.com> User-Agent: Mutt/1.4i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > Hasn't OpenGL had some problems with rolling out the 2.0 standard? It's > > been kind of stagnating for a while, hasn't it? > > I haven't been following it too closely... or at all. ;-) So I don't > really know about 2.0. > OpenGL 2.0 is being pushed by 3DLabs (improved programmability in all the stages of the graphics pipeline, which is the todays song in any case for everything in the 3D world). All the preliminary specs are in www.3dlabs.com (preliminary doesn't mean that they are incomplet or short :P). BTW, if everyone here just goes into 3D we could change the name to dynarec3D ;). My near and medium future seems to be to work in a 3D graphic processor simulator so ... > > > And when will the IA-64, PPC, SPARC, and X86-64 ports be finished? Well, I > > don't care about PPC or SPARC, but X86-64 might turn out to be pretty cool > > and IA-64 is starting to shape up (Itanium 2 is supposed to be doing pretty > > well.) > > There is a FreeBSD port to Itanium in the works, as well as a Linuxen and > something from MS. PPC? SPARC? Well, there's not too much in the way of > call for it. Why buy a PPC based machine for server operations when a > machine significantly less expensive and non proprietary can be had that > performs much better? > I work most of the day of one of the fews itanium servers around the world (if TheInquirer can be trusted ;) using RedHat linux ;). > Maybe Google would be a different story. ;-) > We have yesterday a talk from a google guy here ... they just use racks of 1U/2U datablades running linux (plain kernel) with everything else their own software. Impressive they seem to have 10000 of them (they could spare a couple for me ;). > > > Larger floating point types might be useful to more people. Are there any > > plans to extend the IEEE FP standard past 80 bits (which only Intel chips > > use, AFAIK -- everyone else just implements 64-bit double precision.) > > I thought the PPC had 80 bit FP, too. > Ummm, i think that PPC (well the ones I worked with) have the usual 64 bits registers but internally for FMAC (and maybe other mulioperation instructions) uses a extended precission, maybe the double or so, i don't remember exactly. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 12 00:30:53 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C7UWK30647 for dynarec-outgoing; Fri, 12 Jul 2002 00:30:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 12 Jul 2002 00:11:36 -0700 (PDT) From: tarquin@austin.rr.com X-X-Sender: tarquin@localhost To: dynarec@dynarec.com Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <3.0.5.32.20020711224705.007ef6d0@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, 11 Jul 2002, Bart wrote: > >Lots of hand optimized assembly. Have you dug through the sources? > > Yeah. I'm sure there would be just as much assembly even if Watcom was chosen. He exaggerates. A few math routines mostly, and bits from the texture mapper and rasterizer. 21 assembly files (that's including assembly includes), as opposed to 195 c/h files, for WinQuake. 238 K of asm, and most of it is commented rather heavily. 2362 K of C source and headers. That works out to ~9% asm, 90.8% C, and if you stripped the comments out, the asm would drop a lot more than the C/headers would. If you follow the regular 90/10 rule, this works out just about right for getting the 10% of the code needed going all out... especially when you take into account the fact that no compilers at the time really knew how to make pentium code. I believe the original reason for using djgpp was either A: to make porting easier later, or B: they didn't want to buy brand new licenses for a dos compiler at the time. > If the original Itanium was meant mostly for developers, is Itanium 2 > expected to actually be put to real use by customers? > > It's a really interesting platform and assuming performance turns out to be > as good as Intel and HP are claiming, I can't wait until they become more > widespread and affordable. I understand that they won't be intended for > home use for a very long time (if ever) but if I had the money and could > come up with any sort of reason, I'd probably switch over just for the hell > of it ;) > > Perhaps it would be an interesting platform to do dynarecs on ;) It does look to be an interesting architecture. With the kind of register set it has, you could probably generate all 5 sound channels of the NES at once, in parallel. Emulation ought to be interesting on it. You might be able to parallelize the CPU a fair bit as well, at least as far as paralellizing the instruction fetch for the next instruction with the execution of the previous one. You might be able to abuse some of the load hints and whatnot to cover memory mapping, by leaving the I/O mapped areas invalid. Then the handler bit for invalid loads takes care of that, removing all inline checks for memory region type. It would probably be impossible to parallelize anything alongside the CPU, though you might be able to set up cyclecounters that would be essentially free. Portions of IA-64 rank up there with the PS2 for 'oddness', but I think it has much greater potential than x86-64. > ---- > Bart John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 12 00:37:37 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C7bX930664 for dynarec-outgoing; Fri, 12 Jul 2002 00:37:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 12 Jul 2002 00:33:51 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: Message-ID: <20020712003036.P58886-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > >Lots of hand optimized assembly. Have you dug through the sources? > > Yeah. I'm sure there would be just as much assembly even if Watcom was chosen. > He exaggerates. No, we were speaking of performance WRT compiler code generation, and as you correctly point out, the core of the execution is in assembly. If it was time critical, it was in assembly, so the compiler didn't have as much as an impact. > getting the 10% of the code needed going all out... especially when you > take into account the fact that no compilers at the time really knew how > to make pentium code. Um... Well, Watcom 10.5 was released in the 1995 timeframe and it did Pentium optimization really well (far better than GCC did at the time). Back in them days, thar was no PGCC... When was Quake 1 released? > Portions of IA-64 rank up there with the PS2 for 'oddness', but I think it > has much greater potential than x86-64. Agreed. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 12 00:51:47 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C7pkq30683 for dynarec-outgoing; Fri, 12 Jul 2002 00:51:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 12 Jul 2002 00:32:58 -0700 (PDT) From: tarquin@austin.rr.com X-X-Sender: tarquin@localhost To: dynarec@dynarec.com Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <20020712003036.P58886-100000@beacon.synthcom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Fri, 12 Jul 2002, Neil Bradley wrote: > > > >Lots of hand optimized assembly. Have you dug through the sources? > > > Yeah. I'm sure there would be just as much assembly even if Watcom was chosen. > > He exaggerates. > > No, we were speaking of performance WRT compiler code generation, and as > you correctly point out, the core of the execution is in assembly. If it > was time critical, it was in assembly, so the compiler didn't have as much > as an impact. If the compiler didn't have as much of an impact, then how was djgpp a wrong decision? I know they liked the turnaround time they got when they ran into compiler issues... > > getting the 10% of the code needed going all out... especially when you > > take into account the fact that no compilers at the time really knew how > > to make pentium code. > > Um... Well, Watcom 10.5 was released in the 1995 timeframe and it did > Pentium optimization really well (far better than GCC did at the time). > Back in them days, thar was no PGCC... When was Quake 1 released? Shareware was released in July of 1996. IIRC, they spent about 18 months of development on quake, which would have put the start of the project right around the end of 1994. I think he may have still written them on NextStep and ported to dos then... I know Doom lived on a next cube first. > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley What are burger lovers saying > Synthcom Systems, Inc. about the new BK Back Porch Griller? > ICQ #29402898 "It tastes like it came off the back porch." - Me John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 12 01:06:47 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C86ka30711 for dynarec-outgoing; Fri, 12 Jul 2002 01:06:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 12 Jul 2002 01:03:04 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: Message-ID: <20020712005308.H58886-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > Yeah. I'm sure there would be just as much assembly even if Watcom was chosen. > > > He exaggerates. > > No, we were speaking of performance WRT compiler code generation, and as > > you correctly point out, the core of the execution is in assembly. If it > > was time critical, it was in assembly, so the compiler didn't have as much > > as an impact. > If the compiler didn't have as much of an impact, then how was djgpp a > wrong decision? Per my original quote: "With the exception of DJGPP/Quake 1 which IIRC he admits was a mistake." In other words, ask him yourself. ;-) If I recall correctly (IIRC), he admitted in retrospect it was a mistake. The specifics were not disclosed - or I didn't remember them. > I know they liked the turnaround time they got when they > ran into compiler issues... I would imagine the developers of DJGPP would be kissing some butt to ID. ;-) I know I would! > Shareware was released in July of 1996. IIRC, they spent about 18 months > of development on quake, which would have put the start of the project > right around the end of 1994. Switching a compiler midstream is a nightmare. ;-( Plus, if they hand coded all of the assembly, the need to switch was minimized if not entirely eliminated. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 12 01:43:37 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C8hUx30747 for dynarec-outgoing; Fri, 12 Jul 2002 01:43:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 12 Jul 2002 01:24:42 -0700 (PDT) From: tarquin@austin.rr.com X-X-Sender: tarquin@localhost To: dynarec@dynarec.com Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <20020712005308.H58886-100000@beacon.synthcom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Fri, 12 Jul 2002, Neil Bradley wrote: > "With the exception of DJGPP/Quake 1 which IIRC he admits was a mistake." > > In other words, ask him yourself. ;-) If I recall correctly (IIRC), he > admitted in retrospect it was a mistake. The specifics were not disclosed > - or I didn't remember them. Hmm, don't remember this one showing up. Guess it's another ancient update to keep an eye out for. > > I know they liked the turnaround time they got when they > > ran into compiler issues... > > I would imagine the developers of DJGPP would be kissing some butt to ID. > ;-) I know I would! Think they mentioned a turnaround time of 'patch sitting in inbox in the morning' on one bug. I know they found a bit of an oversight in the libc, seems someone forgot to use movsd in memcpy... > > Shareware was released in July of 1996. IIRC, they spent about 18 months > > of development on quake, which would haveeput the start of the project > > right around the end of 1994. > > Switching a compiler midstream is a nightmare. ;-( Plus, if they hand > coded all of the assembly, the need to switch was minimized if not > entirely eliminated. Indeed. IIRC, Watcom's inline asm syntax wasn't the cleanest stuff either... > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley What are burger lovers saying > Synthcom Systems, Inc. about the new BK Back Porch Griller? > ICQ #29402898 "It tastes like it came off the back porch." - Me John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 12 01:51:05 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C8p4a30765 for dynarec-outgoing; Fri, 12 Jul 2002 01:51:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 12 Jul 2002 01:47:23 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: Message-ID: <20020712014611.F58886-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > admitted in retrospect it was a mistake. The specifics were not disclosed > > - or I didn't remember them. > Hmm, don't remember this one showing up. Guess it's another ancient update > to keep an eye out for. The message? As in my message? > Think they mentioned a turnaround time of 'patch sitting in inbox in the > morning' on one bug. I know they found a bit of an oversight in the libc, > seems someone forgot to use movsd in memcpy... Whoops. Really important in 486/early Pentium days! > > Switching a compiler midstream is a nightmare. ;-( Plus, if they hand > > coded all of the assembly, the need to switch was minimized if not > > entirely eliminated. > Indeed. IIRC, Watcom's inline asm syntax wasn't the cleanest stuff > either... Oh God, no. I never use inline assembly anyway - I always use separate modules. It's the only way I can keep my sanity. I don't know which is worse - that horrid AT&T syntax or the braindead #pragma ASM = "xxxx" found in Watcom! -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 12 02:38:13 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6C9c9630817 for dynarec-outgoing; Fri, 12 Jul 2002 02:38:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 12 Jul 2002 02:19:22 -0700 (PDT) From: tarquin@austin.rr.com X-X-Sender: tarquin@localhost To: dynarec@dynarec.com Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <20020712014611.F58886-100000@beacon.synthcom.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Fri, 12 Jul 2002, Neil Bradley wrote: > > > admitted in retrospect it was a mistake. The specifics were not disclosed > > > - or I didn't remember them. > > Hmm, don't remember this one showing up. Guess it's another ancient update > > to keep an eye out for. > > The message? As in my message? No, as in Carmack's plan update or whatnot. I can usually recall most of the important ones =P > > Think they mentioned a turnaround time of 'patch sitting in inbox in the > > morning' on one bug. I know they found a bit of an oversight in the libc, > > seems someone forgot to use movsd in memcpy... > > Whoops. Really important in 486/early Pentium days! Yeah, Abrash mentioned that in ZoG. Before that they were amazed, double buffering and page flipping weren't running at the correct relative speeds. The performance counters paid off there. > Oh God, no. I never use inline assembly anyway - I always use separate > modules. It's the only way I can keep my sanity. I don't know which is > worse - that horrid AT&T syntax or the braindead #pragma ASM = "xxxx" > found in Watcom! That's a tossup. Inline has it's occasional uses, usually for things like rdtsc, where you do NOT want to add the overhead of a full call. To its credit, gcc 3.0 apparantly allows intel syntax for inline, though I'm not sure I trust gcc 3.0 to generate completely trustable code yet... > -->Neil > > ------------------------------------------------------------------------------- > Neil Bradley What are burger lovers saying > Synthcom Systems, Inc. about the new BK Back Porch Griller? > ICQ #29402898 "It tastes like it came off the back porch." - Me John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 12 04:20:29 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6CBKMh31373 for dynarec-outgoing; Fri, 12 Jul 2002 04:20:22 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <047201c22996$1f9b4d60$2900a8c0@burp> From: "Tom Browne" To: References: <20020711164424.V56752-100000@beacon.synthcom.com> Subject: Re: Re[2]: DYNAREC: Site Updates and Questions Date: Fri, 12 Jul 2002 12:19:44 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > > > > Ouch. ;-( Anything ATI and 3D is just plain painful. > > > > Er... Radeon 8500? Certainly beats my Kyro II into a pulp... :) > > > > Even the 7500 is quite decent, and will run just about any game going. > > > Nothing compared to any 2nd or even 3rd generation NVidia offering. > > A retail 7500 DDR will beat any 2nd generation NV 99 times out of a hundred. > Are you speaking about something like the TNT2 (that's third generation > NVidia)? Or did you mean the Geforce 2? Oops - I meant 2nd generation GF, not 2nd generation NV, which was the Riva128! > No, no... you mistunderstand me - that's a compliment! ;-) Those guys of > which you speak are NERDs! Okay. :) > Hm... didn't you mention before that you had a system or two die on you? > ;-) We all know why that was... ;) > > I would also note that a "genuine" 1.4G Celeron is completely castrated by > > the 100MHz FSB and doesn't perform anything like my 1.1G overclocked in > > real-world apps, which strays into low-end XP territory. > I think we're in two different leagues, as I wouldn't buy a Celeron > anyway. Don't get me wrong - I admire getting more power out of something > supposedly less capable. Dial that boost on those turbos up. Use that > nitrous! But I've long since passed the days when running my systems at > the bleeding edge was worth more than spending an extra few bucks. I'm not > criticizing - I do think it's cool (ask me about my overclocked 487SX > only CPU system some time). It's just not for me any longer. I guess I just haven't grown out of it yet. :) I wasn't prepared to take a significant drop in performance from switching back to Intel, and didn't have the money for a P4 system which'd be genuinely superior to the TBird 1.3. The Celeron was the answer, and should serve me well for at least until the end of the year, I'd hope! As you can imagine, I wouldn't even be running Win98SE if I needed total stability, but as this machine is only used for internet and gaming, it really isn't that big of a deal. This machine also runs 24/7 just like the Linux one... only rebooting for installing drivers, or when some naughty app has decided to munch all the resources... A crash is very, very rare indeed. > > Who's the geek now? :) > Raises hand... just a DIFFERENT type of geek... I rather think the term > "geek" is a mark of positive distinction. Well, I can see how that could be, but I still wouldn't put it on my CV. :) > > > cycling problems and the backup mirrors we keep in testing our quad CPU > > > servers) > > No - use ext3, fool sir! > Uses ext3. Part of certification is unexpected AC power cycling, and one > out of 50 unexpected power losses winds up with a corrupt, unusable file > system (Redhat 7.3). Hmm... what is the test case? Admittedly I've never had the power fail 50 times for the Linux machine, but for about the 10 times it has happened, I've never encountered an unusable filesystem or data loss of any sort, AFAIK... I would suggest you try one of the other filesystems available, such as ReiserFS, and also play with the write caching settings. > > > > Where's ALSA for FreeBSD, as an example? > > > A "so what". > > An "absolutely critical" for my needs, as it is for anyone with an interest > > in audio to have a system whose latency is measured in tens rather than > > hundreds of ms... > Yes, and without which you'd wind up with weird phase cancellation > problems and whatnot. However, I'm talking about pro audio, so it looks > like we've talked past eachother. If you're saying Linux has no place in pro audio, you'd be very wrong. In Radio broadcast alone it has a fair-sized market... the RME cards have also been used in conjunction with ALSA for some very serious recording projects. > > > Plus, audio apps on Linux are shit compared to decent apps > > The likes of Ardour is hardly shit. > Depends upon what you expect out of an audio app. ;-) Ardour lacks MIDI > recording/editing capabilities - a must for almost any studio. Ardour is a pure multitracker, of which it does a rather good job. For those who do not use synthesised instruments in their music, it's a good piece of software! > Especially when that team has been perfecting it for 5-8 years. But to say > that Ardour even comes close to Cubase (as they allude to I believe the project is solely maintained by Paul Davis... > on their web page) is insane. I don't recall seeing that claim - rather that it comes close to the embedded low-cost hard disk recording systems from the likes of Mackie. It bears very little resemblance to Cubase... > Virtual instruments are the cornerstone of music production these days I wouldn't agree as a generalised statement. There is plenty of music produced with no need for virtual instruments, although they are extremely useful for project studios who can't afford the real thing... > Funny how VST 5.1r1 I've used for weeks on end with > no shutdowns under 2K. Let's not talk about '95/'98. ;-( I can't say I've ever run VST on 98SE, but the main system does run for weeks (months, even, in some cases) without shutdowns... > > > > My idea of unsurpassed multitasking is a system which lets me allocate a > > > > precise number of cycles per second to a particular thread. :) > > > No, no, that's *ANAL* multitasking! > > You said unsurpassed... :) > Unsurpassed as in what exists today. What about the likes of QNX? > > > Even without it, Linux bogs and becomes a slug when the load average is > > > 1.0 or higher. > > Funny... I run my Linux (2.4.18+LL) system 24/7 on 100% load virtually all > > the time... no such issue. 256MB and no swap with full KDE environment, > > KDEStudio, and my resource-hogging app I'm working on... > Just running Seti@Home in the background (without the nice option) causes > really jerky terminal response with Redhat 7.3. FreeBSD doesn't do this - > the system is still just as responsive. I don't think you would see it nor > notice it as being jerky unless you've had the (pleasure?) of seeing them > side by side. I think you are simply seeing the problems of a kernel without the low-latency patches in place, where worst cases can be beyond 150ms... My app is not "nice" in any sense of the word, running a SCHED_RR thread at priority max-1. Yet I can still develop and compile the very same app (and yes, run a terminal window, usually MC) while it is running in the background with no responsiveness issues. It just takes a bloody age to compile! - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 12 13:42:50 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6CKfl031791 for dynarec-outgoing; Fri, 12 Jul 2002 13:41:47 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 12 Jul 2002 13:38:08 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <047201c22996$1f9b4d60$2900a8c0@burp> Message-ID: <20020712113532.H63780-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > nitrous! But I've long since passed the days when running my systems at > > the bleeding edge was worth more than spending an extra few bucks. I'm not > > criticizing - I do think it's cool (ask me about my overclocked 487SX > > only CPU system some time). It's just not for me any longer. > I guess I just haven't grown out of it yet. :) Hehehe. Even though I have, I still admire the coolness factor. ;-) > As you can imagine, I wouldn't even be running Win98SE if I needed total > stability, but as this machine is only used for internet and gaming, it I'm glad you're having good luck with '98. I certainly didn't. ;-( But you should try Win2K. It has all the speed of '98 with the stability of 2K. > > Uses ext3. Part of certification is unexpected AC power cycling, and one > > out of 50 unexpected power losses winds up with a corrupt, unusable file > > system (Redhat 7.3). > Hmm... what is the test case? 2 Or 4 CPU system, load up 7.3 with default install. 8 Network cards (2 built in) all saturated with gigabit ethernet. Onboard U320 SCSI - all doing MySQL outer join queries on a 450MB database with 2 gigs of RAM. Let run for a while, yank AC. This is a typical customer configuration for us, and thusly why it's tested. > Admittedly I've never had the power fail 50 times for the Linux machine, but > for about the 10 times it has happened, I've never encountered an unusable > filesystem or data loss of any sort, AFAIK... It'll also depend upon how heavily you've loaded the system, and udner what circumstances the OS was in when power was lost. If the disk isn't loaded, then the odds of a corruption are obviously minimized. We do the same on FreeBSD and under XP/2K using SQL Server 7.0 (I believe). > I would suggest you try one of the other filesystems available, such as > ReiserFS, and also play with the write caching settings. I'm not stating that it's not possible to make it more robust, but the tweaking isn't a possibility for us since we're trying to mimic customer installs as much as possible. > > Yes, and without which you'd wind up with weird phase cancellation > > problems and whatnot. However, I'm talking about pro audio, so it looks > > like we've talked past eachother. > If you're saying Linux has no place in pro audio, you'd be very wrong. In Nope - it has its place. When I speak of "pro audio", I'm speaking specifically of music and movie production, not of other areas like back yard DAWs or Radio or something that just needs to do recordings from outside audio sources, simply because they have different needs. There's no way that Ardour is useless - it's a DAW, but for now that's all it really is. It doesn't have any MIDI capability nor any synthesis capability, and without those two things, music production is a bit on the impossible side in the circles I run it. Movies are done, especially in the sound design realm, with LOTS of synthesizers and samples, inamongst recordings of orchestras and other acoustic sources. But as someone who does music with nothing but synthesizers, Ardour is useless to me - as useless as the ADAT I have and the AKAI 8 track HD recorder I have sitting here. ;-) > > Depends upon what you expect out of an audio app. ;-) Ardour lacks MIDI > > recording/editing capabilities - a must for almost any studio. > Ardour is a pure multitracker, of which it does a rather good job. For > those who do not use synthesised instruments in their music, it's a good > piece of software! Agreed. > > Especially when that team has been perfecting it for 5-8 years. But to say > > that Ardour even comes close to Cubase (as they allude to > I don't recall seeing that claim - rather that it comes close to the > embedded low-cost hard disk recording systems from the likes of Mackie. It > bears very little resemblance to Cubase... Quoting directly from the Ardour site: http://ardour.sourceforge.net/ "It is also intended to provide the same or better functionality as proprietary software DAWs such as ProTools, Samplitude, Logic Audio, Nuendo and Cubase VST" In the case of Cubase, Protools, and Logic audio, it doesn't even come close in terms of functionality. > > Virtual instruments are the cornerstone of music production these days > I wouldn't agree as a generalised statement. There is plenty of music > produced with no need for virtual instruments, although they are extremely > useful for project studios who can't afford the real thing... Yes, but lots of the post production with cool effects plugins and whatnot are required. It's funny how so many of those "acoustic" bands process the crap out of their instruments and claim it to be "real" music. ;-) Ardour doesn't do any effects, processing, or equalization - something that's a flat out required for production. I would agree it's a HD recorder, but currently nothing more. Not to say it isn't worthwhile, but it isn't even close to the likes of Logic or Cubase, or Protools for that matter. > > Funny how VST 5.1r1 I've used for weeks on end with > > no shutdowns under 2K. Let's not talk about '95/'98. ;-( > I can't say I've ever run VST on 98SE, but the main system does run for > weeks (months, even, in some cases) without shutdowns... I ran VST 3.71 on '98 (before it worked on 2K, hell before 2K existed) > > > > No, no, that's *ANAL* multitasking! > > > You said unsurpassed... :) > > Unsurpassed as in what exists today. > What about the likes of QNX? I've not heard any claims either way to QNX vs. BSD, so I don't know. > > > the time... no such issue. 256MB and no swap with full KDE environment, > > > KDEStudio, and my resource-hogging app I'm working on... > > Just running Seti@Home in the background (without the nice option) causes > > really jerky terminal response with Redhat 7.3. FreeBSD doesn't do this - > I think you are simply seeing the problems of a kernel without the > low-latency patches in place, where worst cases can be beyond 150ms... Which brings up another problem I have with Linux - fragmentation. Kernel patches and different distros do nothing to help this problem. And FreeBSD does well out of the box in terms of latency - it's just not worth the trouble for me to work with Linux. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 12 17:07:44 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6D07O731968 for dynarec-outgoing; Fri, 12 Jul 2002 17:07:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <006e01c22a01$3e1829a0$2900a8c0@burp> From: "Tom Browne" To: References: <20020712113532.H63780-100000@beacon.synthcom.com> Subject: Re: Re[2]: DYNAREC: Site Updates and Questions Date: Sat, 13 Jul 2002 01:07:12 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > As you can imagine, I wouldn't even be running Win98SE if I needed total > > stability, but as this machine is only used for internet and gaming, it > I'm glad you're having good luck with '98. I certainly didn't. ;-( But you > should try Win2K. It has all the speed of '98 with the stability of 2K. In most cases I'd agree, but not very often for gaming... it was quite fun in work having a much faster setup than everyone else for UT - the only difference being I was running '98SE, and they were running Win2K. Better ping, too... > 2 Or 4 CPU system, load up 7.3 with default install. 8 Network cards (2 > built in) all saturated with gigabit ethernet. Onboard U320 SCSI - all > doing MySQL outer join queries on a 450MB database with 2 gigs of RAM. Let > run for a while, yank AC. This is a typical customer configuration for us, > and thusly why it's tested. Now you've got me puzzled... EIGHT gigabit ethernet cards? What is the memory bandwidth of these systems? > > I would suggest you try one of the other filesystems available, such as > > ReiserFS, and also play with the write caching settings. > I'm not stating that it's not possible to make it more robust, but the > tweaking isn't a possibility for us since we're trying to mimic customer > installs as much as possible. So you only supply the hardware? > no way that Ardour is useless - it's a DAW, but for now that's all it > really is. It doesn't have any MIDI capability nor any synthesis It's open source - get writing, Neil! :)) Hmm... I wonder how hard it'd be to bolt CSound onto Ardour... > "It is also intended to provide the same or better functionality as > proprietary software DAWs such as ProTools, Samplitude, Logic Audio, > Nuendo and Cubase VST" Notice the word "intended". :) It's a work-in-progress, as the 0.x version number indicates. > Yes, but lots of the post production with cool effects plugins and whatnot > are required. Which is why LADSPA exists... version 1.1 of the SDK has just been announced, in fact. I still don't think it supports double precision, though, so no use to me. > It's funny how so many of those "acoustic" bands process the > crap out of their instruments and claim it to be "real" music. ;-) Who are you thinking of? > > > > > No, no, that's *ANAL* multitasking! > > > > You said unsurpassed... :) > > > Unsurpassed as in what exists today. > > What about the likes of QNX? > I've not heard any claims either way to QNX vs. BSD, so I don't know. Well, the way I see it, as a true RTOS, QNX can offer sub-millisecond guaranteed latencies. FreeBSD can't. QNX is also POSIX-compliant, so it's not a big deal to port your code either. http://www.qnx.com/products/ps_neutrino/features.html It's just a shame they charge so much for it, though! It'll never make any serious commercial inroads unless they rethink their pricing policy... but for mission-critical stuff, it has a very good reputation, AFAIK. > > > > the time... no such issue. 256MB and no swap with full KDE environment, > > > > KDEStudio, and my resource-hogging app I'm working on... > > > Just running Seti@Home in the background (without the nice option) causes > > > really jerky terminal response with Redhat 7.3. FreeBSD doesn't do this - > > I think you are simply seeing the problems of a kernel without the > > low-latency patches in place, where worst cases can be beyond 150ms... > Which brings up another problem I have with Linux - fragmentation. Kernel > patches and different distros do nothing to help this problem. I believe the latest RedHat distrib does come with a LL kernel of some description. I've used nothing but Mandrake since 8.1, though. Last time I used RedHat (long time ago), it was bloody awful... > And FreeBSD > does well out of the box in terms of latency - it's just not worth the > trouble for me to work with Linux. If FreeBSD had ALSA or an equivalent, I might be agreeing with you. :) - Tom. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 12 17:23:19 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6D0NII31987 for dynarec-outgoing; Fri, 12 Jul 2002 17:23:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 12 Jul 2002 17:19:39 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <006e01c22a01$3e1829a0$2900a8c0@burp> Message-ID: <20020712171030.U66211-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > I'm glad you're having good luck with '98. I certainly didn't. ;-( But you > > should try Win2K. It has all the speed of '98 with the stability of 2K. > In most cases I'd agree, but not very often for gaming... it was quite fun > in work having a much faster setup than everyone else for UT - the only > difference being I was running '98SE, and they were running Win2K. Better > ping, too... Really... weird. I guess it's system, CPU, memory, and processor dependent because I saw no difference in frame rates in the games that I played (Diablo II, Quake 3 arena, Voyager: Elite Force, Grand Theft Auto 3, Dungeon Siege) between the two. I think it was the case with some earlier versions of DirectX. > > doing MySQL outer join queries on a 450MB database with 2 gigs of RAM. Let > > run for a while, yank AC. This is a typical customer configuration for us, > > and thusly why it's tested. > Now you've got me puzzled... EIGHT gigabit ethernet cards? What is the > memory bandwidth of these systems? I/O side - 64 Bit 33Mhz PCI, or 266 Megabytes/second (throughput is typically, after overhead and whatnot, around 160MB/second - that's bytes, not bits). They are doing burst saturation, not contstant saturation (there'd be LOTS of packet collisions and drops if that was the case!). These are 400Mhz FSB machines on the memory side of things. > > > ReiserFS, and also play with the write caching settings. > > I'm not stating that it's not possible to make it more robust, but the > > tweaking isn't a possibility for us since we're trying to mimic customer > > installs as much as possible. > So you only supply the hardware? Well, we are a motherboard and chassis designer. ;-) The idea is to test your systems in the way that your customers use them, and ensure they work in that environment. We've found that WHQL isn't sufficient, as many MBs will pass stress tests under WHQL but fail under various UNIXen. Fairly typical! > > no way that Ardour is useless - it's a DAW, but for now that's all it > > really is. It doesn't have any MIDI capability nor any synthesis > It's open source - get writing, Neil! :)) > Hmm... I wonder how hard it'd be to bolt CSound onto Ardour... Bolting it in wouldn't be horrid, but getting them to play together, well, that's a different story. ;-) > > "It is also intended to provide the same or better functionality as > > proprietary software DAWs such as ProTools, Samplitude, Logic Audio, > > Nuendo and Cubase VST" > Notice the word "intended". :) > It's a work-in-progress, as the 0.x version number indicates. But it's not even close to any of those apps. The roads to hell are paved with good intentions. ;-) > > It's funny how so many of those "acoustic" bands process the > > crap out of their instruments and claim it to be "real" music. ;-) > Who are you thinking of? Off the top of my head? Paula Cole and Boston. Both have come out with an anti-synth/processing attitude yet they have no problems using effects boxes. Go figger. > > > > Unsurpassed as in what exists today. > > > What about the likes of QNX? > > I've not heard any claims either way to QNX vs. BSD, so I don't know. > Well, the way I see it, as a true RTOS, QNX can offer sub-millisecond > guaranteed latencies. FreeBSD can't. QNX is also POSIX-compliant, so it's > not a big deal to port your code either. Is QNX a desktop OS? That's what we were talking about at the time. I hadn't considered the embedded world. > It's just a shame they charge so much for it, though! It'll never make any > serious commercial inroads unless they rethink their pricing policy... but > for mission-critical stuff, it has a very good reputation, AFAIK. Yes, that's primarily what I do for a living, and other embedded systems bretheren echo that repuation as well. > I believe the latest RedHat distrib does come with a LL kernel of some > description. I've used nothing but Mandrake since 8.1, though. Last time I > used RedHat (long time ago), it was bloody awful... Precisely my point. ;-) > > And FreeBSD > > does well out of the box in terms of latency - it's just not worth the > > trouble for me to work with Linux. > If FreeBSD had ALSA or an equivalent, I might be agreeing with you. :) Depends upon the use. I don't use FreeBSD for audio - it's my server. I also won't consider Linux because of so many drawbacks, and I can't do on Linux what I can do under Windows in the audio realm. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Jul 12 19:24:46 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6D2Odo32091 for dynarec-outgoing; Fri, 12 Jul 2002 19:24:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020712190425.007efd40@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 12 Jul 2002 19:04:25 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <20020712065016.GA22171@ac.upc.es> References: <20020711200812.K58886-100000@beacon.synthcom.com> <3.0.5.32.20020711193057.007f0810@dynarec.com> <20020711200812.K58886-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I work most of the day of one of the fews itanium servers around the >world (if TheInquirer can be trusted ;) using RedHat linux ;). Cool! What sort of work do you do with it? ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 13 00:00:45 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6D70ZH32338 for dynarec-outgoing; Sat, 13 Jul 2002 00:00:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001701c22a39$5ef37070$0d994ed4@hal9000> From: "Victor Moya del Barrio" To: References: <20020711200812.K58886-100000@beacon.synthcom.com> <3.0.5.32.20020711193057.007f0810@dynarec.com> <20020711200812.K58886-100000@beacon.synthcom.com> <3.0.5.32.20020712190425.007efd40@dynarec.com> Subject: Re: Re[2]: DYNAREC: Site Updates and Questions Date: Sat, 13 Jul 2002 08:49:00 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "Bart" To: Sent: Saturday, July 13, 2002 4:04 AM Subject: Re: Re[2]: DYNAREC: Site Updates and Questions > >I work most of the day of one of the fews itanium servers around the > >world (if TheInquirer can be trusted ;) using RedHat linux ;). > > Cool! What sort of work do you do with it? > Mainly open a windows to a W2K machine to use explorer ;). But in any case I started using the IA64 machines as my host machines because there was few people working with them in the department and I'm pretty sure they are faster than the overloaded old Alpha 21164, Sun and HP-PA machines they used to have. No ones uses the /tmp directory and it has larger space than the older ones (with only 100 MB or so of account I use to need /tmp to test some programs ...) so that was another reason I choice it. The main host I used (a Alpha 21164) was really a pain lately and the only x86/Linux we had that time was also quite overloaded. Therefore I'm rather happy that HP and Intel gave the servers to the department for free ;). In the first months or so there were some problems (for example with the editor nedit that was not compiled correctly and couldn't do copy and paste, or it crashed), but lately none of this problems exist anymore. I think there was also a problem compiling in IA64 mode (the compiler can be configured to produce x86 code too of course, the machines execute quite well common x86/Linux code but slower than IA64 code as expected) in profile mode (the compiled binary crashed everytime). But perhaps it is already solved since I tried that some months ago. Now I'm just searching the web, reading documentation and doing ppt presentations so I don't use them as much. In a more useful way of using them I think some guy in my department was working trying to port a free SGI 64 bit compiler to IA64 (or in any case trying to understand how it worked the compiler to then try the later :P). > ---- > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Jul 13 00:15:59 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6D7Fv332363 for dynarec-outgoing; Sat, 13 Jul 2002 00:15:57 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020712235538.007f1e30@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 12 Jul 2002 23:55:38 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[2]: DYNAREC: Site Updates and Questions In-Reply-To: <001701c22a39$5ef37070$0d994ed4@hal9000> References: <20020711200812.K58886-100000@beacon.synthcom.com> <3.0.5.32.20020711193057.007f0810@dynarec.com> <20020711200812.K58886-100000@beacon.synthcom.com> <3.0.5.32.20020712190425.007efd40@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Therefore I'm rather happy that HP and Intel gave the servers to the >department for free ;). Hmm. Maybe I should start a university so I could get free machines. BUM: Bart's University of Miscellany. It has a nice ring to it... >In a more useful way of using them I think some guy in my department was >working trying >to port a free SGI 64 bit compiler to IA64 (or in any case trying to >understand how it >worked the compiler to then try the later :P). I'm assuming this is the Open64 compiler (which has since become the ORC project at SourceForge.) I wonder how it stacks up against Intel's own compiler. The ORC project is lead by Intel now but it's not the same thing as their commercial compiler. Supposedly HP's compiler (aC++) is really good, too (better than Intel's?) HP's chipsets for the Itanium 2 supposedly offer 10-20% better performance than Intel's. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Jul 14 23:52:22 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6F6pbS37903 for dynarec-outgoing; Sun, 14 Jul 2002 23:51:37 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sun, 14 Jul 2002 23:33:22 -0700 (PDT) From: tarquin@austin.rr.com X-X-Sender: tarquin@localhost To: dynarec@dynarec.com Subject: DYNAREC: Off-topic, but interesting Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Just fielded a code question on IRC about some collision detection code, and along the way I came up with this little monstrosity: if !(((((x2 - x1) >> N) + 1) | (((x1 - x2) >> N) + 1)) & ~1) { // the sprites collide along this axis } If you expand that out into paren hell, you can get a perfect collision test for a pair of 2D sprites (power of two on a side) with one jump. If you can live with it being wrong when sprite 1 is adjacent to sprite 2, on the positive end of either axis, you can remove the (((x1 - x2)...) part. You just bitwise OR all the results together, mask out the low bit, and if it's non-zero, there's no collision. I'm not sure how useful this is, but since you can test both axes in parallel, you could probably drop this thing down to 4 instructions after setup, with SIMD instructions. It can't deal with sprites of differing sizes, or sprites with sides that aren't powers of two (though they don't have to be square) but if you're one of those that *really* hates jumps... The jump definitely won't be predictable, but I don't think that would hurt much... Hmm, it might be handy if you're just interested in whether a collision happened, and didn't care about which sprites had the collision. Then you can run all the collisions in parallel and just check the value at the end. If anyone cares about how that monstrosity works, just lemme know, it is relatively sneaky =P John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 15 19:44:44 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6G2iWK39359 for dynarec-outgoing; Mon, 15 Jul 2002 19:44:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020715192356.007ef920@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 15 Jul 2002 19:23:56 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Off-topic, but interesting In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Interesting code, John! Have you thought about trying to write an assembly version (either X86 or IA-64) of it, to see how optimal it can be with SIMD? I don't mean to hijack this thread, but I'd like to jump in with an OT comment (or question, if you want to be all technical about it ;)) of my own: Does anyone on this list have experience with parametric line segment clipping? I'm writing a BSP compiler (2D BSP trees for now) and renderer and have noticed that the BSP compiler sometimes can't recognize whether a line is in front or behind another line. This happens when the intersection occurs at T=0.0 or 1.0 (for example, when lines connect to form an L shape -- a corner of a room, for instance.) I've done example scenarios on paper, and indeed the wrong result is given in these situations. I learned most of what I know on this topic from Abrash's book. If anyone would like to take a look at some drawings of the situations (or my code), let me know. I'd really like to solve this problem using the parametric clipping method. Although if I absolutely can't figure it out, I might just try using some other method. The parametric method is just really nice and clean when doing splits... Thanks, ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Jul 15 23:13:36 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6G6DRn39600 for dynarec-outgoing; Mon, 15 Jul 2002 23:13:27 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 15 Jul 2002 22:55:27 -0700 (PDT) From: tarquin@austin.rr.com X-X-Sender: tarquin@localhost To: dynarec@dynarec.com Subject: Re: DYNAREC: Off-topic, but interesting In-Reply-To: <3.0.5.32.20020715192356.007ef920@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Mon, 15 Jul 2002, Bart wrote: > Interesting code, John! Have you thought about trying to write an assembly > version (either X86 or IA-64) of it, to see how optimal it can be with SIMD? A quick and dirty attempt for 8x8 sprites, 16 bit coords would look something like this: need 3 64-bit mem variables, [pair], [oneoneoneone]and [temp]. [pair] should be x1 x2 y1 y2 for the example code, could change the ordering to x1 y1 x2 y2 if you change the third arg to pshufw. [oneoneoneone] needs to have the constant 0001000100010001h movq mm0, [pair] movq mm2, [oneoneoneone] pshufw mm1, mm0, 0B1h psubw mm0, mm1 psraw mm0, 3 paddw mm0, mm2 pandn mm2, mm0 movd eax, mm2 psrlq mm2, 32 movd ebx, mm2 or eax, ebx jnz nocollision 12 instructions, 2 mem loads, 2 general registers used, 3 MM regs used The 'traditional' box test method looks something like this: mov eax, [x1] mov ebx, [x2] mov ecx, [y1] mov edx, [y2] add ebx, 8 add edx, 8 cmp eax, ebx jgt nocollision cmp ecx, edx jgt nocollision add eax, 16 add ecx, 16 cmp eax, ebx jgt nocollision cmp ecx, edx jgt nocollision 16 instructions, 4 mem loads, 55 bytes give or take a few, assuming I haven't assumed too much about which ones are 1 byte instructions. Trimming it down so it doesn't munch 4 GP regs decreases the inherent parallelism a bit, but I *think* the current x86 cores could do a pretty good number on out of ordering that second batch. The branch predictor loves the MMX version though... You can't use the MMX route with 8 bit coordinates easily, as there is no byte sized shift instruction. The MMX instructions also neglect to update the flags, otherwise you could avoid hosing eax and ebx. Most of the MMX one probably can't pair with itself, but you could sprinkle some unrelated integer instructions in there to alleviate that. If you restrict the code to MMX2 or SSE (not sure which one of those added PMOVMSKB) you could change the last 5 instructions to pxor mm1, mm1 pcmpeqw mm2, mm1 pmovmskb eax, mm2 test eax, eax jnz nocollision That would drop to 4 instructions if you ensure that one of the MMX regs is 0 beforehand. That change saves you an instruction as well. > This happens when the intersection occurs at T=0.0 or 1.0 (for example, > when lines connect to form an L shape -- a corner of a room, for instance.) > I've done example scenarios on paper, and indeed the wrong result is given > in these situations. situation like this: (normals shown too 1_____2 | | |_ | | 0 where the intersection occurs at t=1.0 on line 01, t=0.0 on line 12, and line 01 is the splitting plane? If this is the case, you just check to see what side of the line vertex 2 is on, and put line 12 on that side of the node. If the clip plane is somewhere else, you don't care too much which way the lines sort from that point, just which side of the splitter they're on. The lines themselves will get sorted out unambiguously a few limbs down the tree. If you can't detect when the intersection is exactly on one of the vertices due to floating point issues, you should still be able to split the line. IIRC, you only use the parametric end of things for the actual clip and intersection determination. Just figuring out if a line needs to be split is done easily enough by examining the sign of the distances between the splitter plane and the vertices of the line/poly/etc. If you're converting doom levels, and are planning on rendering with hardware, you might look up GLBSP. The DOOM node builder doesn't add segs that don't coincide with a linedef -- it assumes you're rendering the floors and ceilings with DOOM's floodfill-esque method. Without a fixed node tree, you get holes in your floors/ceilings. Very annoying, and fixing it is somewhat non-trivial, as you either have to build a new node tree from scratch, or run through the one they have looking for missing vertices that aren't out in the void. Hope this helps. > Thanks, > > ---- > Bart John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 16 14:49:18 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6GLlU940857 for dynarec-outgoing; Tue, 16 Jul 2002 14:47:30 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 16 Jul 2002 23:32:50 +0200 Mime-Version: 1.0 (Apple Message framework v481) Content-Type: text/plain; charset=US-ASCII; format=flowed Subject: DYNAREC: bintrans 0.1 released From: Gwenole Beauchesne To: dynarec@dynarec.com Content-Transfer-Encoding: 7bit Message-Id: <9419BC6C-9903-11D6-A0AA-003065C7D858@dial.oleane.com> X-Mailer: Apple Mail (2.481) Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Finally sources are available and that's really nice: /me wonders when UQDBT would ever get released as well. But now bintrans is here, that's promising. I will evaluate it further as soon as I get some free time. BTW, do you know people/companies working in dynamic binary translation besides Transitive Technologies? Bye, Gwenole --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 16 18:59:30 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6H1xJH41112 for dynarec-outgoing; Tue, 16 Jul 2002 18:59:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020716183836.007f2870@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 16 Jul 2002 18:38:36 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Off-topic, but interesting In-Reply-To: References: <3.0.5.32.20020715192356.007ef920@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 10:55 PM 7/15/2002 -0700, you wrote: >On Mon, 15 Jul 2002, Bart wrote: > >> Interesting code, John! Have you thought about trying to write an assembly >> version (either X86 or IA-64) of it, to see how optimal it can be with SIMD? > >A quick and dirty attempt for 8x8 sprites, 16 bit coords would look >something like this: > >need 3 64-bit mem variables, [pair], [oneoneoneone]and [temp]. [pair] >should be x1 x2 y1 y2 for the example code, could change the ordering >to x1 y1 x2 y2 if you change the third arg to pshufw. [oneoneoneone] needs >to have the constant 0001000100010001h > >movq mm0, [pair] >The 'traditional' box test method looks something like this: > >mov eax, [x1] >mov ebx, [x2] >mov ecx, [y1] >mov edx, [y2] >add ebx, 8 >add edx, 8 >cmp eax, ebx >jgt nocollision >cmp ecx, edx >jgt nocollision >add eax, 16 >add ecx, 16 >cmp eax, ebx >jgt nocollision >cmp ecx, edx >jgt nocollision > >16 instructions, 4 mem loads, 55 bytes give or take a few, assuming I >haven't assumed too much about which ones are 1 byte instructions. You can eliminate 3 of the branches with multiple SETGTs and ORs. But the first does look better... >> This happens when the intersection occurs at T=0.0 or 1.0 (for example, >> when lines connect to form an L shape -- a corner of a room, for instance.) >> I've done example scenarios on paper, and indeed the wrong result is given >> in these situations. > >situation like this: (normals shown too > >1_____2 >| | >|_ >| >| >0 > >where the intersection occurs at t=1.0 on line 01, t=0.0 on line 12, and >line 01 is the splitting plane? Like that. Here is another example: | |-> | | ----------- | V The line on the left (with the normal pointing right) thinks that the second line is BEHIND it, even though it should be in front. >If this is the case, you just check to see what side of the line vertex 2 >is on, and put line 12 on that side of the node. If the clip plane is >somewhere else, you don't care too much which way the lines sort from that >point, just which side of the splitter they're on. The lines themselves >will get sorted out unambiguously a few limbs down the tree. I tried something similar to the first suggestion (about testing the next endpoint), but I used the parametric equation's numerator. On paper, it worked with the 2 examples I tried, but in practice, it doesn't really work on everything. The equation normally is: numer = Nx + (current->x1 - splitter->x1) + Ny * (current->y1 - splitter->y1); denom = -Nx * (current->x2 - current->x1) + -Ny * (current->y2 - current->y1); t_intersection = numer / denom; These are basically just dot products because Nx and Ny are the X and Y components of the normal to the splitter line. If there is no intersection, the sign of the numerator can be used to determine if a line segment is on one side of a splitter or the other. So I changed numer to: numer = Nx * (current->x2 - splitter->x1) + Ny * (current->y2 - splitter->y1); >IIRC, you only use the parametric end of things for the actual clip and >intersection determination. Just figuring out if a line needs to be split >is done easily enough by examining the sign of the distances between the >splitter plane and the vertices of the line/poly/etc. The parametric method is nice and clean, in theory, because a working implementation should do everything for you right away. >If you're converting doom levels, and are planning on rendering with >hardware, you might look up GLBSP. None of that just yet :) I'm doing this entirely in software with my own BSPs (all it is is a bunch of line segments.) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 16 20:13:14 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6H3D3R41180 for dynarec-outgoing; Tue, 16 Jul 2002 20:13:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 10 Jun 1960 16:49:08 -0500 (CDT) From: Graham Toal Message-Id: <196006102149.QAA01374@gtoal.com> To: dynarec@dynarec.com Subject: DYNAREC: OT: compiler book review Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'll keep this short; we talked some time ago about various compiler books, in the context of learning to write a compiler. I have just finished reading Holub over the last week, so here's a pocket review: It shows you how to write a very pedestrian compiler using the standard tools, yacc & lex. You're basically spoon-fed all the code and it doesn't leave much to the imagination. The depressing admission of this book is that even though he's trying to teach the standard tools, they're so bad that he can't stick to them and deviates from his plan by using "occs" and "LeX" - modified clones of yacc & lex. Considering how lacklustre the compiler he builds is, he should have stuck to his guns and done it all in yacc & lex entirely, just to show how it can be done. Surprisingly, this book was written in 1990. Apart from the use of yacc & lex, there's nothing in it that couldn't have been written in 1960. Because it uses C as its target language, it doesn't cover some important concepts such as a register display, or dynamic allocation of arrays, or ILiffe vectors, just to pick a few at random. It's very poor on covering the alternative ways of parsing expressions and handling operator precedence. In fact the 60's book by Bornat I mentioned in a previous post is IMHO a much better primer. It covers the same ground but gives you just enough info to go and work it out for yourself, and offers more options and has a wider scope. Summary: by all means read it, but dont follow it slavishly or all you'll learn is how to write boring compilers. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 16 20:40:25 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6H3eOV41213 for dynarec-outgoing; Tue, 16 Jul 2002 20:40:24 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020716201940.007f4d10@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 16 Jul 2002 20:19:40 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: OT: compiler book review In-Reply-To: <196006102149.QAA01374@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 04:49 PM 6/10/1970 -0500, you wrote: >I'll keep this short; we talked some time ago about various compiler >books, in the context of learning to write a compiler. I have just >finished reading Holub over the last week, so here's a pocket review: > >It shows you how to write a very pedestrian compiler using the standard >tools, yacc & lex. You're basically spoon-fed all the code and it doesn't >leave much to the imagination. I thought the book first shows how to implement LeX, llama, and occs and then uses LeX and occs to write a compiler. I've only finished the chapter on lexical analysis (I didn't choose to implement a lexical analyzer generator.) >Summary: by all means read it, but dont follow it slavishly or all you'll >learn is how to write boring compilers. I think the explanations I've seen in Holub's book are usually pretty good, but then he starts talking about how to write some tool (LeX, occs, or llama), which I'm not interested in right now. For whatever language I choose to do a compiler for, I will write the lexer by hand as has been recommended (it seems fairly easy -- though I usually lex the entire source file first, rather than just token by token as the parser needs it) and a parser with yacc. Lately I've been a bit busy with other stuff, though (like my BSP program :P) :( I want to finish implementing that expression evaluator I was talking about (which allows for variables of 2 different types -- int and float -- to be declared and used.) I took a look at Small C... it's just lacking structs, unions, some data types, and multi-dimensional arrays, as far as I can tell. I guess I can try to do a stripped down version of C first -- would that sound manageable? ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 16 21:56:01 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6H4tr341296 for dynarec-outgoing; Tue, 16 Jul 2002 21:55:53 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 16 Jul 2002 21:37:58 -0700 (PDT) From: tarquin@austin.rr.com X-X-Sender: tarquin@localhost To: dynarec@dynarec.com Subject: Re: DYNAREC: Off-topic, but interesting In-Reply-To: <3.0.5.32.20020716183836.007f2870@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Tue, 16 Jul 2002, Bart wrote: > >jgt nocollision > > > >16 instructions, 4 mem loads, 55 bytes give or take a few, assuming I > >haven't assumed too much about which ones are 1 byte instructions. > > You can eliminate 3 of the branches with multiple SETGTs and ORs. But the > first does look better... The branches let you early-out, but when you're eating 5 general regs anyways.... > The line on the left (with the normal pointing right) thinks that the > second line is BEHIND it, even though it should be in front. Thinks it's completely behind it, or just split by it? > I tried something similar to the first suggestion (about testing the next > endpoint), but I used the parametric equation's numerator. On paper, it > worked with the 2 examples I tried, but in practice, it doesn't really work > on everything. That sounds like you might be getting bit by floating point error. Easiest way to deal with that would probably be sharing vertices. > The equation normally is: > > numer = Nx + (current->x1 - splitter->x1) + Ny * (current->y1 - splitter->y1); > denom = -Nx * (current->x2 - current->x1) + -Ny * (current->y2 - current->y1); > t_intersection = numer / denom; > > These are basically just dot products because Nx and Ny are the X and Y > components of the normal to the splitter line. > > If there is no intersection, the sign of the numerator can be used to > determine if a line segment is on one side of a splitter or the other. This is only the case for parallel lines, which is what happens when the denominator is 0. When it isn't, you have to look at the t value. Abrash's solution for the situation you're in is to compare the numerator against a threshold, and if it's too close to tell, consider it collinear and try the other endpoint. Looks like this: #define TOLERANCE 0.00001 Done = 0; while (!Done) { if (numer < -TOLERANCE) { // in front of splitter Done = 1; } else if (numer > TOLERANCE) { // behind splitter Done = 1; } else { // collinear numer = nx * (current->x2 - splitter->x1) + ny * (current->y2 - splitter->y1); } } > So I changed numer to: > > numer = Nx * (current->x2 - splitter->x1) + Ny * (current->y2 - splitter->y1) Only have to do this if the first point ended up collinear. > >IIRC, you only use the parametric end of things for the actual clip and > >intersection determination. Just figuring out if a line needs to be split > >is done easily enough by examining the sign of the distances between the > >splitter plane and the vertices of the line/poly/etc. > > The parametric method is nice and clean, in theory, because a working > implementation should do everything for you right away. Yeah, I skipped the 'build bsp tree' part when I went at it, as I was a lazy bastard, and wanted to see some 3D gfx first =P > >If you're converting doom levels, and are planning on rendering with > >hardware, you might look up GLBSP. > > None of that just yet :) I'm doing this entirely in software with my own > BSPs (all it is is a bunch of line segments.) Shared vertices help a fair bit. Unless things are really hosed up, { float f; if (f == f) return TRUE; } should always return true, ignoring NaN's and such... > ---- > Bart John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 16 22:26:53 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6H5QpF41342 for dynarec-outgoing; Tue, 16 Jul 2002 22:26:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020716220606.007fb870@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 16 Jul 2002 22:06:06 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Off-topic, but interesting In-Reply-To: References: <3.0.5.32.20020716183836.007f2870@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The branches let you early-out, but when you're eating 5 general regs >anyways.... Have you actually profiled this code to know for sure which of your methods was quicker? >Thinks it's completely behind it, or just split by it? Completely behind it. Actually, I've made some fixes now which fix this case (but other cases still cause problems.) Now it's actually split (tstart = 0.0, tend = 0.0 -- but hey, it works.) >That sounds like you might be getting bit by floating point error. >Easiest way to deal with that would probably be sharing vertices. Sharing vertices would be helpful, but I don't think this is an accuracy-related problem. >Abrash's solution for the situation you're in is to compare the numerator >against a threshold, and if it's too close to tell, consider it collinear >and try the other endpoint. Looks like this: >#define TOLERANCE 0.00001 >Done = 0; >while (!Done) { > if (numer < -TOLERANCE) > { > // in front of splitter > Done = 1; > } > else if (numer > TOLERANCE) > { > // behind splitter > Done = 1; > } > else > { > // collinear > numer = nx * (current->x2 - splitter->x1) + ny * (current->y2 - > splitter->y1); > } >} > I did try something similar to this and I just did the exact same thing right now, but it didn't work. It solves some of the problems, but not all of them. Using a comparison against a tolerance value didn't make any difference. >> So I changed numer to: >> >> numer = Nx * (current->x2 - splitter->x1) + Ny * (current->y2 - splitter->y1) > >Only have to do this if the first point ended up collinear. Yeah, that's when I did this calculation. Either that or when tintersect == tstart or tend. >Shared vertices help a fair bit. Unless things are really hosed up, { >float f; if (f == f) return TRUE; } should always return true, ignoring >NaN's and such... I don't think things are really messed up in terms of FP accuracy right now. I'm just using single precision floats, which is pretty rough, but for the worlds I'm dealing with, they suffice. There's something else going on. Here's the relevant portion of my BSP building function (the root line is the splitter, I don't do anything special to select it, I just use the first line -- this doesn't build an optimal tree but for now, I'm just trying to get the basics down): static int BuildBSPTree(BSP **tree, LINE *rootline, LINE *lines) { LINE *frontlist, *backlist, *current; float norm_x, norm_y, numer, denom, tintersect; int error_code; /* * Calculate normal to the splitter (which is the infinite root line) by * exchanging the X and Y lengths of the root line segment and negating * the Y */ norm_x = (rootline->y1 - rootline->y2); norm_y = -(rootline->x1 - rootline->x2); /* * Categorize all lines (except the root) as either in front or behind the * the root and add them to the appropriate list */ frontlist = backlist = NULL; current = lines; while (current != NULL) { if (current == rootline) // skip the root line { current = current->next; continue; } /* * Calculate the numerator and denominator of the parametric * intersection formula */ numer = norm_x * (current->x1 - rootline->x1) + norm_y * (current->y1 - rootline->y1); denom = (-norm_x) * (current->x2 - current->x1) + (-norm_y) * (current->y2 - current->y1); /* * Now see if the splitter and the current line segment intersect */ if (denom == 0) // if denominator is 0, lines are parallel { LINE **l; if (numer < 0) // current line is in front of root l = &frontlist; else // current line is behind root l = &backlist; if (AddLineToList(l, current)) { KillList(frontlist); KillList(backlist); return 1; // error (BSP tree must be killed by caller) } } else // there may or may not be an intersection { LINE **l; tintersect = numer / denom; // If the below if () is true, there is no intersection. if ((tintersect < current->tstart) || (tintersect > current->tend)) { if (numer < -TOLERANCE) // current line is in front of root l = &frontlist; else if (numer > TOLERANCE) // current line is behind root l = &backlist; else { numer = norm_x * (current->x2 - rootline->x1) + norm_y * (current->y2 - rootline->y1); if (numer < -TOLERANCE) // i've also tried < 0 l = &frontlist; else l = &backlist; } if (AddLineToList(l, current)) { KillList(frontlist); KillList(backlist); return 1; // error (BSP tree must be killed by caller) } } else // intersection! { LINE *splitline; if ((splitline = malloc(sizeof(LINE))) == NULL) { KillList(frontlist); KillList(backlist); return 1; } *splitline = *current; splitline->id = line_id++; splitline->tstart = tintersect; splitline->next = current->next; // insert right after currentline current->next = splitline; current->tend = tintersect; if (numer < 0) // split part is behind of root { error_code = AddLineToList(&backlist, splitline); error_code |= AddLineToList(&frontlist, current); } else // split part is in front of root { error_code = AddLineToList(&frontlist, splitline); error_code |= AddLineToList(&backlist, current); } if (error_code) { KillList(frontlist); KillList(backlist); return 1; // error (BSP tree must be killed by caller) } current = current->next; // advance twice } } current = current->next; } ... What follows is code that inserts nodes into the tree and calls BuildBSPTree() recursively for each node. Thanks for the help thus far, it has helped me understand this a bit better and fix up some things which certainly weren't helping. Right now, there is a case where 2 lines are NOT arranged to form a corner but the priority is still wrong. The splitter line is far away from the line in question, but it just happens to split it at T=0, and bad stuff happens for some reason. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 16 22:30:12 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6H5UBf41355 for dynarec-outgoing; Tue, 16 Jul 2002 22:30:11 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020716220927.007fda60@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 16 Jul 2002 22:09:27 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: bintrans 0.1 released In-Reply-To: <9419BC6C-9903-11D6-A0AA-003065C7D858@dial.oleane.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Finally sources are available and that's really nice: > > >/me wonders when UQDBT would ever get released as well. But now bintrans >is here, that's promising. I will evaluate it further as soon as I get >some free time. Is it any good (in terms of performance?) Compatibility isn't too great as far as I can tell from the readme. The platforms seem a little weird, too. i386->PowerPC and PowerPC->Alpha ??? >BTW, do you know people/companies working in dynamic binary translation >besides Transitive Technologies? Well, I guess Transmeta ;) And there's also research projects such as Dynamo at HP and some stuff at Intel MRL. I think I posted a link not to long ago to an Intel-led SourceForge project (in Mike's web site thread, I believe.) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 16 22:37:42 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6H5bff41371 for dynarec-outgoing; Tue, 16 Jul 2002 22:37:41 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 16 Jul 2002 22:19:53 -0700 (PDT) From: tarquin@austin.rr.com X-X-Sender: tarquin@localhost To: dynarec@dynarec.com Subject: Re: DYNAREC: Off-topic, but interesting In-Reply-To: <3.0.5.32.20020716220606.007fb870@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Here's the relevant portion of my BSP building function (the root line is > the splitter, I don't do anything special to select it, I just use the > first line -- this doesn't build an optimal tree but for now, I'm just > trying to get the basics down): Think I found it... > // If the below if () is true, there is no intersection. > if ((tintersect < current->tstart) || (tintersect > > current->tend)) > { Note that if tintersect == 0.0, and current->tstart == 0.0, this if will come up false. Change < to <=, and > to >= and you should be able to eliminate those degenerate splits. Right now, the code to detect points *on* the splitter and switch to the second point isn't getting executed... > ---- > Bart John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 16 23:02:31 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6H619t41401 for dynarec-outgoing; Tue, 16 Jul 2002 23:01:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020716224023.007e4890@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 16 Jul 2002 22:40:23 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Off-topic, but interesting In-Reply-To: References: <3.0.5.32.20020716220606.007fb870@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Think I found it... > >> // If the below if () is true, there is no intersection. >> if ((tintersect < current->tstart) || (tintersect > >> current->tend)) >> { > >Note that if tintersect == 0.0, and current->tstart == 0.0, this if will >come up false. Oops, yeah, that helps a lot. I had comparisons like this in earlier code, but I took them about because I figured maybe they could be split (which results in walls from tstart=0 to tend=0.) But there's _still_ a case where priority is wrong. I'll try to build a better test BSP file (the one I have now has a bunch of lines -- each wall has a corresponding back face so the world looks solid), but here's the basic scenario: | a | | b c | ---- ---- | Each of these walls is actually defined as 2 different walls. I'm not sure which is the splitter when the problem occurs, but basically, here's what happens: Wall a is split by either wall b or wall c. Probably wall b because that's the wall which shows through. If I position the camera to the left of the lower split part of wall a and look through it, I can see wall b: | a | | b c + ---- ---- * | The * indicates the camera. If it's facing wall b, it can see wall b. I hope the diagrams made sense. If wall c were to split wall a first, then the resultant walls would be assigned to its subspace and wall b would not run into them. So I suppose this means wall b split wall a and wall c has nothing to do with this problem. I just don't see what's going on. Accuracy error? I doubt it... While I was tinkering with the BSP compiler earlier today and yesterday, there were times at which this problem would be fixed (but other stuff was still broken.) The fixes I've done so far will help on some BSPs, but on others, problems remain. Maybe the wall IS being split multiple times. Wall c and wall b are parallel but also colinear. However, all I check for is if the denom is 0 and if it is, I assign the wall as either front or back. So it is possible that wall c split wall a and then wall b tried to split it again. Could this be a problem related to the fact that T values pretty much have no meaning to the BSP compiler when looking at wall coordinates? I never adjust endpoints to reflect how they've been clipped. The renderer takes care of that... I'll have to try tomorrow. The interesting thing is that Abrash's compiler pretty much disregards T values as well. I wonder if his compiler generates buggy BSP files... ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Jul 16 23:48:18 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6H6mGg41461 for dynarec-outgoing; Tue, 16 Jul 2002 23:48:16 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 16 Jul 2002 23:30:28 -0700 (PDT) From: tarquin@austin.rr.com X-X-Sender: tarquin@localhost To: dynarec@dynarec.com Subject: Re: DYNAREC: Off-topic, but interesting In-Reply-To: <3.0.5.32.20020716224023.007e4890@dynarec.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Tue, 16 Jul 2002, Bart wrote: On the topic of the sprite collision code, no, I haven't profiled it yet. I haven't even pushed it through an assembler yet either, as I don't have an immediate need for it. I just thought it up as a spinoff of an irc discussion, and felt it was interesting =P > >Note that if tintersect == 0.0, and current->tstart == 0.0, this if will > >come up false. > > Oops, yeah, that helps a lot. I had comparisons like this in earlier code, > but I took them about because I figured maybe they could be split (which > results in walls from tstart=0 to tend=0.) Walls from 0 to 0 should be considered degenerate, and ignored by the renderer should they ever show up, but their existence at all is a sign of a non-optimal BSP compiler... > Each of these walls is actually defined as 2 different walls. I'm not sure > which is the splitter when the problem occurs, but basically, here's what > happens: When you say defined as 2 walls, you mean a front side and a back side? > Wall a is split by either wall b or wall c. Probably wall b because that's > the wall which shows through. Wal la should be split by whichever one of b or c gets chosen as a root node first. After that, the BSP compiler should see two lines, a1 and a2, which should fall unambiguously on one side or the other of b or c. A potential tree for that set would look something like this: (front on the left) bc / \ a1 a2 If you split the lines into sidedefs, doom style, the tree ends up being a bit fuller than that. I don't remember enough of the stuff off the top of my head to remember how the doom bsp built subsectors. > If I position the camera to the left of the lower split part of wall a and > look through it, I can see wall b: > The * indicates the camera. If it's facing wall b, it can see wall b. Not sure what would be happening here, aside from a bug in the renderer perhaps. > If wall c were to split wall a first, then the resultant walls would be > assigned to its subspace and wall b would not run into them. So I suppose > this means wall b split wall a and wall c has nothing to do with this problem. If wall c was the first splitter, the resultant bits of a would be placed into seperate subspaces, and ideally wall b should either get placed in the node as well, or the two sides of b should be placed in their respective subspaces of c. > Maybe the wall IS being split multiple times. Wall c and wall b are > parallel but also colinear. However, all I check for is if the denom is 0 > and if it is, I assign the wall as either front or back. So it is possible > that wall c split wall a and then wall b tried to split it again. If that were the case, b would only see one of the two splits of a. To catch colinear lines, you might check to see if the numerator is 0. If so, the line is colinear, and figuring out which side it's on either doesn't matter (it'll sort correctly either way) or is implementation dependent (if each line is actually two, like doom has it). > Could this be a problem related to the fact that T values pretty much have > no meaning to the BSP compiler when looking at wall coordinates? I never > adjust endpoints to reflect how they've been clipped. The renderer takes > care of that.. For t values to retain their use, you either have to build the segs with pointers back to the original line segment (for the vertex values) or copy all of the data and change the tstart and tend. You shouldn't need to move the vertices at the start/end of the line, as the comparison against tstart and tend ought to take care of things, as long as you split the line into two distinct intervals on t, and get them placed on the proper sides of the splitter that caused them. > I'll have to try tomorrow. The interesting thing is that Abrash's compiler > pretty much disregards T values as well. I wonder if his compiler generates > buggy BSP files... When Abrash's compiler splits a line, it copies the line data over and sets the tstart and tend values appropriately, then adds the two lines to their respective subspaces. > ---- > Bart John Allensworth --- tarquin@austin.rr.com -- Reaperman/ReaperSMS Author of XtraWeapons (except the homing missile, eject, and throwing axe) Stanknes forever Real Programmers think better when playing Adventure or Rogue. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 17 00:11:18 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6H7B6r41500 for dynarec-outgoing; Wed, 17 Jul 2002 00:11:06 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020716235021.007f3c00@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 16 Jul 2002 23:50:21 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Off-topic, but interesting In-Reply-To: References: <3.0.5.32.20020716224023.007e4890@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >On the topic of the sprite collision code, no, I haven't profiled it yet. >I haven't even pushed it through an assembler yet either, as I don't have >an immediate need for it. I just thought it up as a spinoff of an irc >discussion, and felt it was interesting =P It is interesting and it would be cool to see it in action. I might have a use for something like this in the future. I've always wanted to write a Sonic clone, and an optimal routine like this couldn't hurt. >Walls from 0 to 0 should be considered degenerate, and ignored by the >renderer should they ever show up, but their existence at all is a sign of >a non-optimal BSP compiler... With the >= and <= test, they no longer can occur. >When you say defined as 2 walls, you mean a front side and a back side? Right. And whenever I refer to a wall, I don't imply any particular side (because I don't know exactly what's going on yet. It's just a matter of which side was specified first in the input file.) >A potential tree for that set would look something like this: (front on >Not sure what would be happening here, aside from a bug in the renderer >perhaps. I highly doubt it's a renderer bug. I've done a lot of checking there and it really seems pretty solid. I've gotten this problem to go away by making certain modifications to the BSP compiler -- they just weren't the proper solution and the problem is back. >If wall c was the first splitter, the resultant bits of a would be placed >into seperate subspaces, and ideally wall b should either get placed in >the node as well, or the two sides of b should be placed in their >respective subspaces of c. It shouldn't really matter which spaces the walls are assigned to if they're colinear. In practice, there shouldn't be any priority problems, right? >If that were the case, b would only see one of the two splits of a. That's true... And then b's splitting line will intersect right where the wall was split in the first place. It _should_ work. What I'll do is create a simplified scenario to see if I can reproduce this behavior. I'll use one-sided walls to make this easier. >For t values to retain their use, you either have to build the segs with >pointers back to the original line segment (for the vertex values) or copy >all of the data and change the tstart and tend. I copy it all over to the newly allocated line and modify the tend of the first line and the tstart of the second appropriately. I think I might see a problem which I'll try to fix tomorrow. I think the split line is being checked on the next loop iteration (as well as being assigned to a subspace.) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 17 18:57:46 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6I1v9M42964 for dynarec-outgoing; Wed, 17 Jul 2002 18:57:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020717183619.007f0100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 17 Jul 2002 18:36:19 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Off-topic, but interesting In-Reply-To: <3.0.5.32.20020716235021.007f3c00@dynarec.com> References: <3.0.5.32.20020716224023.007e4890@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I think I might see a problem which I'll try to fix tomorrow. I think the >split line is being checked on the next loop iteration (as well as being >assigned to a subspace.) This wasn't the problem. I was inserting the newly formed line in the list, but I skipped over it, so everything was okay there (I had to keep track of it so I could free() it later.) The problem turned out to be precision: Changing the variables used in BuildBSPTree() from float to double helped. BSP nodes and line segments still use single-precision floats with only minor problems (which are definitely precision/accuracy-related.) Thanks again for the assistance... it helped a lot :) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 17 22:40:09 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6I5dtq43176 for dynarec-outgoing; Wed, 17 Jul 2002 22:39:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020717221903.007f2cd0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 17 Jul 2002 22:19:03 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Off-topic, but interesting In-Reply-To: <3.0.5.32.20020717183619.007f0100@dynarec.com> References: <3.0.5.32.20020716235021.007f3c00@dynarec.com> <3.0.5.32.20020716224023.007e4890@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The problem turned out to be precision: Changing the variables used in >BuildBSPTree() from float to double helped. BSP nodes and line segments >still use single-precision floats with only minor problems (which are >definitely precision/accuracy-related.) It was actually more than precision. I built up a test level and once again bugs cropped up. I fixed it finally by just ignoring T values altogether (or, if you want shared vertices, you can store the T values but front/back tests must be performed on vertices which have been clipped with the T.) It is possible for a wall to get cut in half by one splitter. Then, each side is added to the appropriate list (front, back.) Then, another wall may have a splitter which results in a numer of 0. In these cases, we test the next vertex in the wall, but it should be clipped first because it is entirely possible that a vertex will be tested which is beyond the clipped area. This appears to have solved the problems in my more rigorous test worlds. I'll have to do more testing (hopefully nothing crops up), but it looks like I may have finally nailed it :) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Jul 24 07:23:25 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g6OEMpN56579 for dynarec-outgoing; Wed, 24 Jul 2002 07:22:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001401c2331b$7d2bc7f0$0d994ed4@hal9000> From: "Victor Moya del Barrio" To: Subject: DYNAREC: UQBT New Page and Download Date: Wed, 24 Jul 2002 16:07:47 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com http://www.experimentalstuff.com/Technologies/uqbt/ Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 1 13:18:28 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g71KHkW72368 for dynarec-outgoing; Thu, 1 Aug 2002 13:17:46 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 1 Aug 2002 13:15:22 -0700 (PDT) From: Neil Bradley To: Subject: DYNAREC: ARM Expertise requested Message-ID: <20020801125925.B92966-200000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-1281706240-1028232191=:92966" Content-ID: <20020801130351.D92966@beacon.synthcom.com> Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-1281706240-1028232191=:92966 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII Content-ID: <20020801130351.W92966@beacon.synthcom.com> Monday I started learning ARM assembly language, and today I've finally "completed" the routines I've needed to write. However, I don't know if I'm using the ARM properly, optimally, or anything else, and was hoping to get anyone's advice and critique on this before I make it gospel. Here is a description: We're adding a feature to our ARM based micro that does flash erase suspend. During the time we're erasing, we cannot execute out of flash. Also, if we get an interrupt during the erasure, we need to restore the original vectors, suspend the flash erase, and jump to the original flash based interrupt handlers. Before the flash erase starts, the caller calls HookVector with a thumb based userland routine address. HookVector saves off all of the vector information in RAM for later restoration. All old vectors are hooked in to the new vector handlers that save off critical registers, call the unhooker routine to restore the old vectors, jump/call to a userland routine, and jump to the old vector addresses for proper processing as if the new vector hooking never occurred. The following guidelines apply: * This code must be completely relocatable. It gets copied from flash in to RAM, so the code should adapt to wherever it's placed automatically. * The userland routine is in thumb mode * The calls to HookVector and UnhookVectors are thumb mode and those procedures do work as advertised This code has only been partially tested. The code that uses the hooking and actual interrupt structure itself has not yet been written, but I'd like to: 1) Find out if what I did is likely to work as I want it 2) Find out if I did anything stupid/suboptimal 3) Hear any suggestions on how to "properly" do the job I'm trying to do 4) Learn the ARM architecture better Can anyone assist? Thanks much in advance! -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --0-1281706240-1028232191=:92966 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII; NAME="VectorHook.s" Content-Transfer-Encoding: BASE64 Content-ID: <20020801130311.D92966@beacon.synthcom.com> Content-Description: Content-Disposition: ATTACHMENT; FILENAME="VectorHook.s" Oy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNDQo7Kg0NCjsq CQkJCQkgSU5URUwgQ09SUE9SQVRJT04gUFJPUFJJRVRBUlkgSU5GT1JNQVRJ T04NDQo7KgkJIFRoaXMgc29mdHdhcmUgaXMgc3VwcGxpZWQgdW5kZXIgdGhl IHRlcm1zIG9mIGEJbGljZW5zZQlhZ3JlZW1lbnQgb3INDQo7KgkJIG5vbmRp c2Nsb3N1cmUgYWdyZWVtZW50IHdpdGggSW50ZWwJQ29ycG9yYXRpb24JYW5k CW1heQlub3QJYmUgY29waWVkDQ0KOyoJCSBvcglkaXNjbG9zZWQgZXhjZXB0 IGluCWFjY29yZGFuY2Ugd2l0aAl0aGUJdGVybXMgb2YgdGhhdCBhZ3JlZW1l bnQuDQ0KOyoJCUNvcHlyaWdodAkoYykJMTk5OS0yMDAyIEludGVsIENvcnBv cmF0aW9uLglBbGwJUmlnaHRzIFJlc2VydmVkLg0NCjsqDQ0KOyoJIFBWQ1Mg SW5mb3JtYXRpb246DQ0KOyoJCSAkV29ya2ZpbGU6ICQNDQo7KgkJICRSZXZp c2lvbjogJA0NCjsqCQkgJE1vZHRpbWU6ICQNDQo7KgkJICRBdXRob3I6ICQN DQo7Kg0NCjsqCUFic3RyYWN0OiAgDQ0KOyoJCVBlcmZvcm1zIHZlY3RvciBo b29raW5nL3VuaG9va2luZyBmb3Igd2hlbiBpbnRlcnJ1cHRzIG9jY3VyIGR1 cmluZyBhIGZsYXNoDQ0KOyoJCWVyYXNlIGN5Y2xlDQ0KOyoNDQo7KglDb250 ZW50czoNDQo7Kg0NCjsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KiovDQ0KOw0NCjsvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq DQ0KOyAqDQ0KOyAqCVJldmlzaW9uIEhpc3Rvcnk6DQ0KOyAqCSRMb2c6JA0N CjsgKg0NCjsgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQ0K DQ0KVkVDVE9SX1JBTV9CQVNFCUVRVQkJMAkJCQk7IEJhc2Ugb2Ygc3lzdGVt IG1lbW9yeSAodmVjdG9ycykNDQoNDQoJQVJFQSAgRGF0YQ0NCg0NCjsgQSBw bGFjZSB0byBzdG9yZSBhbGwgdmVjdG9yIGNhbGxzIA0NCg0NCglBTElHTg0N Cg0NCk9sZFZlY3RvcnMNDQoJRENECQkwCQkJCQkJOyBPbGQgUmVzZXQgYnJh bmNoDQ0KCURDRAkJMAkJCQkJCTsgT2xkIFVuZGVmaW5lZCBvcGNvZGUgYnJh bmNoDQ0KCURDRAkJMAkJCQkJCTsgT2xkIFNXSSBicmFuY2gNDQoJRENECQkw CQkJCQkJOyBPbGQgUHJlZmV0Y2ggYWJvcnQgYnJhbmNoDQ0KCURDRAkJMAkJ CQkJCTsgT2xkIERhdGEgYWJvcnQgYnJhbmNoDQ0KCURDRAkJMAkJCQkJCTsg T2xkIFJlc2VydmVkIGJyYW5jaA0NCglEQ0QJCTAJCQkJCQk7IE9sZCBJUlEg YnJhbmNoDQ0KCURDRAkJMAkJCQkJCTsgT2xkIEZJUSBicmFuY2gNDQpPbGRW ZWN0b3JzRW5kDQ0KDQ0KCUFSRUEgIFZlY3RvckNvZGUsIENPREUsIFJFQURP TkxZDQ0KCUNPREUzMg0NCg0NCkFMSUdODQ0KDQ0KVmVjdG9yUkFNQmFzZUFk ZHINDQoJRENECQlWRUNUT1JfUkFNX0JBU0UJCTsgUG9pbnRlciB0byB0aGUg dmVjdG9yIGJhc2UgaW4gUkFNDQ0KT2xkVmVjdG9yc0FkZHINDQoJRENECQlP bGRWZWN0b3JzCQkJOyBQbGFjZSB0byBwdXQgb3VyIG9sZCB2ZWN0b3JzDQ0K VmVjdG9yUkFNU2l6ZUFkZHINDQoJRENECQkoKE9sZFZlY3RvcnNFbmQgLSBP bGRWZWN0b3JzKSAvIDQpIDsgQ291bnQgb2YgdmVjdG9ycyB0byBtb3ZlIChE V09SRHMpDQ0KDQ0KOyBUaGlzIGlzIHRoZSB2YWx1ZSBmb3IgdGhlIEJYIGlu c3J1Y3Rpb24gKHNlZSB0aGUgQVJNIHVzZXIncyBndWlkZSBwYWdlIDktMTEp DQ0KDQ0KQlhJbnN0cnVjdGlvbg0NCglEQ0QJCTB4ZWEwMDAwMDAJCQk7IEJY IEluc3RydWN0aW9uIHdpdGggbm8gb2Zmc2V0IChPUidkIGluIGJ5IGNvZGUp DQ0KDQ0KOyBUaGVzZSBhcmUgdGhlIFBDIHJlbGF0aXZlIG9mZnNldHMgZm9y IHRoZSBpbnRlcnJ1cHQgdmVjdG9ycyB3ZSdyZSBob29raW5nDQ0KDQ0KSVNS SG9va09mZnNldEFkZHJlc3Nlcw0NCglEQ0QJCUlTUkhvb2tfUmVzZXQNDQoJ RENECQlJU1JIb29rX1VuZGVmaW5lZE9wY29kZQ0NCglEQ0QJCUlTUkhvb2tf U1dJDQ0KCURDRAkJSVNSSG9va19QcmVmZXRjaEFib3J0DQ0KCURDRAkJSVNS SG9va19EYXRhQWJvcnQNDQoJRENECQlJU1JIb29rX1Jlc2VydmVkDQ0KCURD RAkJSVNSSG9va19JUlENDQoJRENECQlJU1JIb29rX0ZJUQ0NCg0NCjsgVXNl ciBhZGRyZXNzIHRvIGNhbGwNDQoNDQpVc2VyQWRkcmVzcw0NCglEQ0QJCTAJ CQkJCQk7IENhbGxlZCBhZGRyZXNzIHdoZW4gaG9va2VkIHZlY3RvcnMgb2Nj dXINDQoNDQo7IEFsbCB2ZWN0b3IgYWRkcmVzc2VzDQ0KDQ0KUmVzZXRWZWN0 b3JBZGRyDQ0KCURDRAkJMHgwMAkJCQkJOyBWZWN0b3IgZm9yIHJlc2V0cw0N ClVuZGVmaW5lZE9wY29kZVZlY3RvckFkZHINDQoJRENECQkweDA0CQkJCQk7 IFZlY3RvciBmb3IgdW5kZWZpbmVkIG9wY29kZXMNDQpTV0lWZWN0b3JBZGRy DQ0KCURDRAkJMHgwOAkJCQkJOyBWZWN0b3IgZm9yIFNXSQ0NClByZWZldGNo QWJvcnRWZWN0b3JBZGRyDQ0KCURDRAkJMHgwYwkJCQkJOyBWZWN0b3IgZm9y IHByZWZlY3RoIGFib3J0DQ0KRGF0YUFib3J0VmVjdG9yQWRkcg0NCglEQ0QJ CTB4MTAJCQkJCTsgRGF0YSBhYm9ydCBWZWN0b3INDQpSZXNlcnZlZFZlY3Rv ckFkZHINDQoJRENECQkweDE0CQkJCQk7IFJlc2VydmVkIGJyYW5jaCBWZWN0 b3INDQpJUlFWZWN0b3JBZGRyDQ0KCURDRAkJMHgxOAkJCQkJOyBJUlEgVmVj dG9yQWRkcg0NCkZJUVZlY3RvckFkZHINDQoJRENECQkweDFjCQkJCQk7IEZJ USB2ZWN0b3INDQoNDQoJOzsNDQoJOzsgRXhjZXB0aW9uIFZlY3RvcnMuIFRo ZXNlIHZlY3RvcnMgd2lsbCBmaXJzdCBob29rDQ0KCTs7DQ0KDQ0KSVNSSG9v a19SZXNldA0NCglTVE1JQQlzcCEsIHthMX0JCQkJCTsgRmlsbGVkIGluIGJ5 IGJyYW5jaCBhZGRyZXNzIGxhdGVyIQ0NCglTVE1EQglzcCEsIHthMS1hNCwg cjEyLCBscn0NDQoJTERSCQlyMTIsID1SZXNldFZlY3RvckFkZHINDQoJQgkJ Q29tbW9uUmVzdG9yZVByb2NlZHVyZTMyDQ0KDQ0KSVNSSG9va19VbmRlZmlu ZWRPcGNvZGUNDQoJU1RNREIJc3AhLCB7YTF9CQkJCQk7IEZpbGxlZCBpbiBi eSBicmFuY2ggYWRkcmVzcyBsYXRlciENDQoJU1RNREIJc3AhLCB7YTEtYTQs IHIxMiwgbHJ9DQ0KCUxEUgkJcjEyLCA9VW5kZWZpbmVkT3Bjb2RlVmVjdG9y QWRkcg0NCglCCQlDb21tb25SZXN0b3JlUHJvY2VkdXJlMzINDQoNDQpJU1JI b29rX1NXSQ0NCglTVE1EQglzcCEsIHthMX0JCQkJCTsgRmlsbGVkIGluIGJ5 IGJyYW5jaCBhZGRyZXNzIGxhdGVyIQ0NCglTVE1EQglzcCEsIHthMS1hNCwg cjEyLCBscn0NDQoJTERSCQlyMTIsID1TV0lWZWN0b3JBZGRyDQ0KCUIJCUNv bW1vblJlc3RvcmVQcm9jZWR1cmUzMg0NCg0NCklTUkhvb2tfUHJlZmV0Y2hB Ym9ydA0NCglTVE1EQglzcCEsIHthMX0JCQkJCTsgRmlsbGVkIGluIGJ5IGJy YW5jaCBhZGRyZXNzIGxhdGVyIQ0NCglTVE1EQglzcCEsIHthMS1hNCwgcjEy LCBscn0NDQoJTERSCQlyMTIsID1QcmVmZXRjaEFib3J0VmVjdG9yQWRkcg0N CglCCQlDb21tb25SZXN0b3JlUHJvY2VkdXJlMzINDQoNDQpJU1JIb29rX0Rh dGFBYm9ydA0NCglTVE1EQglzcCEsIHthMX0JCQkJCTsgRmlsbGVkIGluIGJ5 IGJyYW5jaCBhZGRyZXNzIGxhdGVyIQ0NCglTVE1EQglzcCEsIHthMS1hNCwg cjEyLCBscn0NDQoJTERSCQlyMTIsID1EYXRhQWJvcnRWZWN0b3JBZGRyDQ0K CUIJCUNvbW1vblJlc3RvcmVQcm9jZWR1cmUzMg0NCg0NCklTUkhvb2tfUmVz ZXJ2ZWQNDQoJU1RNREIJc3AhLCB7YTF9CQkJCQk7IEZpbGxlZCBpbiBieSBi cmFuY2ggYWRkcmVzcyBsYXRlciENDQoJU1RNREIJc3AhLCB7YTEtYTQsIHIx MiwgbHJ9DQ0KCUxEUgkJcjEyLCA9UmVzZXJ2ZWRWZWN0b3JBZGRyDQ0KCUIJ CUNvbW1vblJlc3RvcmVQcm9jZWR1cmUzMg0NCg0NCklTUkhvb2tfSVJRDQ0K CVNUTURCCXNwISwge2ExfQkJCQkJOyBGaWxsZWQgaW4gYnkgYnJhbmNoIGFk ZHJlc3MgbGF0ZXIhDQ0KCVNUTURCCXNwISwge2ExLWE0LCByMTIsIGxyfQ0N CglMRFIJCXIxMiwgPUlSUVZlY3RvckFkZHINDQoJQgkJQ29tbW9uUmVzdG9y ZVByb2NlZHVyZTMyDQ0KDQ0KSVNSSG9va19GSVENDQoJU1RNREIJc3AhLCB7 YTF9CQkJCQk7IEZpbGxlZCBpbiBieSBicmFuY2ggYWRkcmVzcyBsYXRlciEN DQoJU1RNREIJc3AhLCB7YTEtYTQsIHIxMiwgbHJ9DQ0KCUxEUgkJcjEyLCA9 RklRVmVjdG9yQWRkcg0NCglCCQlDb21tb25SZXN0b3JlUHJvY2VkdXJlMzIN DQoNDQpDb21tb25SZXN0b3JlUHJvY2VkdXJlMzINDQoJTERSCQlyMTIsIFty MTJdCQkJCQk7IEdldCBvdXIgdmVjdG9yJ3MganVtcCBhZGRyZXNzDQ0KCU1P VgkJYTEsIHNwCQkJCQkJOyBBMSBIYXMgb3VyIGZpeHVwIHJldHVybiBhZGRy ZXNzDQ0KCVNVQgkJYTEsIGExLCAjKDcqNCkJCQkJOyBUaGUgZml4dXAgcmV0 dXJuIGFkZHJlc3MNDQoJU1RNSUEJYTEhLCB7cjEyfQkJCQkJOyBTdG9yZSBv dXINDQoJU1RNSUEJc3AhLCB7cjAtcjd9CQkJCTsgU2F2ZSBvZmYgYWxsIHVz ZWQgcmVnaXN0ZXJzDQ0KCUxEUgkJYTEsID1Db21tb25SZXN0b3JlUHJvY2Vk dXJlDQ0KCUJYCQlhMQ0NCg0NCkNvbW1vbkhhbmRsZXJFeGl0UHJvY2VkdXJl MzINDQoJU1VCCQlzcCwgc3AsICMoNio0KQkJCQk7IEJhY2sgdXAgdGhyb3Vn aCA2IHJlZ3MgLSBhMS1hNCwgcjEyLCBhbmQgbHINDQoJTERNSUEJc3AhLCB7 YTEtYTQsIHIxMiwgbHJ9DQ0KCVNVQgkJc3AsIHNwLCAjKDcqNCkJCQkJOyBO b3cgYmFjayB1cCB0aHJvdWdoIDcgcmVnaXN0ZXJzIC0gYTEtYTQsIHIxMiwg YW5kIGxyDQ0KCUxETUlBCXNwISwge3BjfQkJCQkJOyBBbmQgdGhlIHJldHVy biBhZGRyZXNzIHdlJ3ZlIGZpeGVkIHVwDQ0KDQ0KOyBFdmVyeXRoaW5nIGZy b20gaGVyZSBvbiBvdXQgaXMgQVJNIHRodW1iIGNvZGUNDQoNDQoJQ09ERTE2 DQ0KCUVYUE9SVAlIb29rVmVjdG9ycywgUmVzdG9yZVZlY3RvcnMNDQoNDQpD b21tb25SZXN0b3JlUHJvY2VkdXJlDQ0KCUJMCQlSZXN0b3JlVmVjdG9ycwkJ CTsgUmVzdG9yZSBhbGwgb2YgdGhlIGludGVycnVwdCB2ZWN0b3JzDQ0KDQ0K OyBQdXQgY2FsbCB0byB1c2VyIHJvdXRpbmUgaGVyZQ0NCg0NCglMRFIJCWEx LCA9VXNlckFkZHJlc3MJCTsgUG9pbnQgdG8gdGhlIHVzZXIgYWRkcmVzcyBw b2ludGVyDQ0KCUxEUgkJYTEsIFthMV0JCQkJOyBMb2FkIHVwIHRoZSB1c2Vy J3MgYWRkcmVzcyBpbiBhMQ0NCglMRFIJCXIwLCA9dXNlckNhbGxSZXR1cm4N DQoJTU9WCQlsciwgcjAJCQkJCTsgTG9hZCBpbiB0aGUgYXBwcm9wcmlhdGUg cmV0dXJuIGFkZHJlc3MNDQoJTU9WCQlwYywgYTEJCQkJCTsgIkNhbGwiIHRo ZSB1c2VyIHJvdXRpbmUNDQoNDQo7IEV4aXQgdG8gY29tbW9uIGV4aXQgaGFu ZGxlciAtIHJlc3RvcmUgcmVnaXN0ZXJzIGFuZCBqdW1wIGJhY2sgdG8gMzIg Yml0IG1vZGUNDQoNDQp1c2VyQ2FsbFJldHVybg0NCglMRFIJCWExLCA9Q29t bW9uSGFuZGxlckV4aXRQcm9jZWR1cmUzMkFkZHINDQoJTERSCQlhMSwgW2Ex XQ0NCglCWAkJYTENDQoNDQoJQUxJR04NDQoNDQpDb21tb25IYW5kbGVyRXhp dFByb2NlZHVyZTMyQWRkcg0NCglEQ0QJCUNvbW1vbkhhbmRsZXJFeGl0UHJv Y2VkdXJlMzINDQoNDQpIb29rVmVjdG9ycw0NCg0NCjsgU3RvcmUgb2ZmIHRo ZSB1c2VyIGRlZmluZWQgcHJvY2VkdXJlDQ0KDQ0KCUxEUgkJcjEsID1Vc2Vy QWRkcmVzcwkJOyBBZGRyZXNzIG9mIHVzZXIgY2FsbCBhZGRyZXNzDQ0KCVNU TUlBCXIxISwge3IwfQkJCQk7IFN0b3JlIHRoZSB1c2VyIGFkZHJlc3MNDQoN DQo7IE1ha2UgYSBjb3B5IG9mIGV2ZXJ5dGhpbmcgaW4gdGhlIGN1cnJlbnQg dmVjdG9yIHRhYmxlDQ0KDQ0KCUxEUgkJcjAsID1WZWN0b3JSQU1CYXNlQWRk cgk7IFBvaW50IHRvIHRoZSBiYXNlIGFkZHJlc3MNDQoJTERSCQlyMCwgW3Iw XQkJCQk7IEdldCB0aGUgYmFzZSBhZGRyZXNzIHZhbHVlIGl0c2VsZg0NCglM RFIJCXIxLCA9T2xkVmVjdG9yc0FkZHIJCTsgUG9pbnQgdG8gYWRkcmVzcyBv ZiBvbGQgdmVjdG9yIGFkZHJlc3MNDQoJTERSCQlyMSwgW3IxXQkJCQk7IEdl dCB0aGUgb2xkIHZlY3RvciBhZGRyZXNzIHN0b3JhZ2UgaXRzZWxmDQ0KCUxE UgkJcjIsID1WZWN0b3JSQU1TaXplQWRkcgk7IFBvaW50IHRvIHRoZSBzaXpl IG9mIHRoZSBvbGQgdmVjdG9yIGFkZHJlc3Nlcw0NCglMRFIJCXIyLCBbcjJd CQkJCTsgR2V0IHRoZSBzaXplIG9mIHRoZSBvbGQgdmVjdG9yIGFkZHJlc3Nl cyAoZHdvcmRzKQ0NCg0NCjsgTW92ZSBhbGwgRFdPUkRzIGZyb20gdGhlIGV4 aXN0aW5nIHZlY3RvciB0YWJsZSB0byB0aGUgbmV3IHRhYmxlDQ0KOyBSMD1T b3VyY2UsIFIxPURlc3RpbmF0aW9uLCBSMj1Db3VudCBpbiBEV09SRHMsIFIz PVNjcmF0Y2gNDQoNDQpjb3B5Q3VycmVudFRhYmxlTG9vcA0NCglMRE1JQQly MCEsIHtyM30JCQkJOyBHZXQgRFdPUkQgJiBpbmNyZW1lbnQgUjAgdG8gdGhl IG5leHQgRFdPUkQNDQoJU1RNSUEJcjEhLCB7cjN9CQkJCTsgU3RvcmUgRFdP UkQgJiBpbmNyZW1lbnQgUjEgdG8gdGhlIG5leHQgRFdPUkQNDQoJU1VCCQly MiwgIzEJCQkJCTsgU3VidHJhY3QgMSBmcm9tIHRoZSByZW1haW5pbmcgRFdP UkRzIHRvIGNvcHkNDQoJQk5FCQljb3B5Q3VycmVudFRhYmxlTG9vcAk7IExv b3AgdW50aWwgYWxsIGhhdmUgYmVlbiBjb3BpZWQNDQoNDQo7IE5vdyBjb3B5 IGluIHRoZSBuZXcgbG9jYXRpb25zDQ0KDQ0KCUxEUgkJcjAsID1WZWN0b3JS QU1CYXNlQWRkcgk7IFBvaW50IHRvIHRoZSBiYXNlIHZlY3RvciBhZGRyZXNz DQ0KCUxEUgkJcjAsIFtyMF0JCQkJOyBHZXQgdGhlIGJhc2UgdmVjdG9yIGFk ZHJlc3MNDQoJTERSCQlyMSwgPUJYSW5zdHJ1Y3Rpb24JCTsgTG9uZyBicmFu Y2ggaW5zdHJ1Y3Rpb24gYWRkcmVzcw0NCglMRFIJCXIxLCBbcjFdCQkJCTsg R2V0IGxvbmcgYnJhbmNoIGluc3RydWN0aW9uIHZhbHVlDQ0KCUxEUgkJcjIs ID1WZWN0b3JSQU1TaXplQWRkcgk7IFBvaW50IHRvIHRoZSBzaXplIG9mIHRo ZSBvbGQgdmVjdG9yIGFkZHJlc3Nlcw0NCglMRFIJCXIyLCBbcjJdCQkJCTsg R2V0IHRoZSBzaXplIG9mIHRoZSBvbGQgdmVjdG9yIGFkZHJlc3NlcyAoZHdv cmRzKQ0NCglMRFIJCXI0LCA9SVNSSG9va09mZnNldEFkZHJlc3NlcyA7IFBv aW50ZXIgdG8gaG9vayBvZmZzZXQgYWRkcmVzc2VzDQ0KDQ0KOyBDb21wdXRl IGFuZCBob29rIHRoZSByZXNldCBhZGRyZXNzDQ0KCQ0NCmhvb2tMb29wDQ0K CUxETUlBCXI0ISwge3IzfQkJCQk7IEdldCBvdXIgbmV4dCBvZmZzZXQNDQoJ U1VCCQlyMywgIzgJCQkJCTsgU3VidHJhY3QgOCBmb3IgcHJlZmV0Y2ggKHNl ZSA5LTExIG9mIEFSTSBVc2VyJ3MgZ3VpZGUpDQ0KCVNVQgkJcjMsCXIwCQkJ CQk7IFN1YnRyYWN0IHZlY3RvciBhZGRyZXNzIChhbHNvIHNlZSA5LTExIG9m IEFSTSB1c2VyJ3MgZ3VpZGUpDQ0KCUxTUgkJcjMsIHIzLCAjMgkJCQk7IERp dmlkZSBieSA0IGZvciBCWCBpbnN0cnVjdGlvbiBzaW5jZSBpdCdzIGluIERX T1JEcyAtIG5vdCBieXRlcw0NCglPUlIJCXIzLCByMQkJCQkJOyBPUiBJbiBC WCBpbnN0cnVjdGlvbg0NCglTVE1JQQlyMCEsIHtyM30JCQkJOyBTdG9yZSB0 aGUgdmVjdG9yIQ0NCglTVUIJCXIyLCAjMQkJCQkJOyBPbmUgbGVzcyBEV09S RCENDQoJQk5FCQlob29rTG9vcA0NCg0NCjsgQWxsIGZpbmlzaGVkISBSZXR1 cm4gdG8gY2FsbGVyDQ0KDQ0KCUJYCQlscg0NCg0NClJlc3RvcmVWZWN0b3Jz DQ0KCUxEUgkJcjAsID1PbGRWZWN0b3JzQWRkcgkJOyBQb2ludCB0byBhZGRy ZXNzIG9mIG9sZCB2ZWN0b3IgYWRkcmVzcw0NCglMRFIJCXIwLCBbcjBdCQkJ CTsgR2V0IHRoZSBvbGQgdmVjdG9yIGFkZHJlc3Mgc3RvcmFnZSBpdHNlbGYN DQoJTERSCQlyMSwgPVZlY3RvclJBTUJhc2VBZGRyCTsgUG9pbnQgdG8gdGhl IGJhc2UgYWRkcmVzcw0NCglMRFIJCXIxLCBbcjFdCQkJCTsgR2V0IHRoZSBi YXNlIGFkZHJlc3MgdmFsdWUgaXRzZWxmDQ0KCUxEUgkJcjIsID1WZWN0b3JS QU1TaXplQWRkcgk7IFBvaW50IHRvIHRoZSBzaXplIG9mIHRoZSBvbGQgdmVj dG9yIGFkZHJlc3Nlcw0NCglMRFIJCXIyLCBbcjJdCQkJCTsgR2V0IHRoZSBz aXplIG9mIHRoZSBvbGQgdmVjdG9yIGFkZHJlc3NlcyAoZHdvcmRzKQ0NCg0N CjsgTW92ZSBhbGwgRFdPUkRzIGZyb20gdGhlIGV4aXN0aW5nIHZlY3RvciB0 YWJsZSB0byB0aGUgbmV3IHRhYmxlDQ0KOyBSMD1Tb3VyY2UsIFIxPURlc3Rp bmF0aW9uLCBSMj1Db3VudCBpbiBEV09SRHMsIFIzPVNjcmF0Y2gNDQoNDQpy ZXN0b3JlVmVjdG9yVGFibGVMb29wDQ0KCUxETUlBCXIwISwge3IzfQkJCQk7 IEdldCBEV09SRCAmIGluY3JlbWVudCBSMCB0byB0aGUgbmV4dCBEV09SRA0N CglTVE1JQQlyMSEsIHtyM30JCQkJOyBTdG9yZSBEV09SRCAmIGluY3JlbWVu dCBSMSB0byB0aGUgbmV4dCBEV09SRA0NCglTVUIJCXIyLCAjMQkJCQkJOyBT dWJ0cmFjdCAxIGZyb20gdGhlIHJlbWFpbmluZyBEV09SRHMgdG8gY29weQ0N CglCTkUJCXJlc3RvcmVWZWN0b3JUYWJsZUxvb3AJOyBMb29wIHVudGlsIGFs bCBoYXZlIGJlZW4gY29waWVkDQ0KDQ0KCUJYCQlscgkJCQkJCTsgUmV0dXJu IHRvIHRoZSBjYWxsZXINDQoNDQoJRU5E --0-1281706240-1028232191=:92966-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Aug 1 13:31:04 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g71KV4Q72390 for dynarec-outgoing; Thu, 1 Aug 2002 13:31:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 1 Aug 2002 13:28:40 -0700 (PDT) From: Neil Bradley To: Subject: DYNAREC: Sorry to spam... updated it... Message-ID: <20020801132818.V92966-200000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-1209344033-1028233720=:92966" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-1209344033-1028233720=:92966 Content-Type: TEXT/PLAIN; charset=US-ASCII Here's an updated version of VectorHook.Sorry for the spammage, I sent the wrong one before... -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --0-1209344033-1028233720=:92966 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="VectorHook.s" Content-Transfer-Encoding: BASE64 Content-ID: <20020801132840.I92966@beacon.synthcom.com> Content-Description: Content-Disposition: attachment; filename="VectorHook.s" Oy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNDQo7Kg0NCjsq CQkJCQkgSU5URUwgQ09SUE9SQVRJT04gUFJPUFJJRVRBUlkgSU5GT1JNQVRJ T04NDQo7KgkJIFRoaXMgc29mdHdhcmUgaXMgc3VwcGxpZWQgdW5kZXIgdGhl IHRlcm1zIG9mIGEJbGljZW5zZQlhZ3JlZW1lbnQgb3INDQo7KgkJIG5vbmRp c2Nsb3N1cmUgYWdyZWVtZW50IHdpdGggSW50ZWwJQ29ycG9yYXRpb24JYW5k CW1heQlub3QJYmUgY29waWVkDQ0KOyoJCSBvcglkaXNjbG9zZWQgZXhjZXB0 IGluCWFjY29yZGFuY2Ugd2l0aAl0aGUJdGVybXMgb2YgdGhhdCBhZ3JlZW1l bnQuDQ0KOyoJCUNvcHlyaWdodAkoYykJMTk5OS0yMDAyIEludGVsIENvcnBv cmF0aW9uLglBbGwJUmlnaHRzIFJlc2VydmVkLg0NCjsqDQ0KOyoJIFBWQ1Mg SW5mb3JtYXRpb246DQ0KOyoJCSAkV29ya2ZpbGU6ICQNDQo7KgkJICRSZXZp c2lvbjogJA0NCjsqCQkgJE1vZHRpbWU6ICQNDQo7KgkJICRBdXRob3I6ICQN DQo7Kg0NCjsqCUFic3RyYWN0OiAgDQ0KOyoJCVBlcmZvcm1zIHZlY3RvciBo b29raW5nL3VuaG9va2luZyBmb3Igd2hlbiBpbnRlcnJ1cHRzIG9jY3VyIGR1 cmluZyBhIGZsYXNoDQ0KOyoJCWVyYXNlIGN5Y2xlDQ0KOyoNDQo7KglDb250 ZW50czoNDQo7Kg0NCjsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KiovDQ0KOw0NCjsvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq DQ0KOyAqDQ0KOyAqCVJldmlzaW9uIEhpc3Rvcnk6DQ0KOyAqCSRMb2c6JA0N CjsgKg0NCjsgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQ0K DQ0KVkVDVE9SX1JBTV9CQVNFCUVRVQkJMAkJCQk7IEJhc2Ugb2Ygc3lzdGVt IG1lbW9yeSAodmVjdG9ycykNDQoNDQoJQVJFQSAgVmVjdG9yQ29kZSwgQ09E RSwgUkVBRE9OTFkNDQoNDQoJQ09ERTE2DQ0KDQ0KSnVtcFRhYmxlDQ0KCUIJ CVZlY3Rvckhvb2sJCQkJOyBDYWxsIHRvIHZlY3RvciBob29rDQ0KCUIJCVZl Y3RvclJlc3RvcmUJCQk7IENhbGwgdG8gdmVjdG9yIHJlc3RvcmUNDQoNDQoJ Q09ERTMyDQ0KDQ0KQUxJR04NDQoNDQoNDQoNDQpWZWN0b3JSQU1CYXNlQWRk cg0NCglEQ0QJCVZFQ1RPUl9SQU1fQkFTRQkJOyBQb2ludGVyIHRvIHRoZSB2 ZWN0b3IgYmFzZSBpbiBSQU0NDQpPbGRWZWN0b3JzQWRkcg0NCglEQ0QJCU9s ZFZlY3RvcnMJCQk7IFBsYWNlIHRvIHB1dCBvdXIgb2xkIHZlY3RvcnMNDQpW ZWN0b3JSQU1TaXplQWRkcg0NCglEQ0QJCSgoT2xkVmVjdG9yc0VuZCAtIE9s ZFZlY3RvcnMpIC8gNCkgOyBDb3VudCBvZiB2ZWN0b3JzIHRvIG1vdmUgKERX T1JEcykNDQoNDQo7IFRoaXMgaXMgdGhlIHZhbHVlIGZvciB0aGUgQlggaW5z cnVjdGlvbiAoc2VlIHRoZSBBUk0gdXNlcidzIGd1aWRlIHBhZ2UgOS0xMSkN DQoNDQpCWEluc3RydWN0aW9uDQ0KCURDRAkJMHhlYTAwMDAwMAkJCTsgQlgg SW5zdHJ1Y3Rpb24gd2l0aCBubyBvZmZzZXQgKE9SJ2QgaW4gYnkgY29kZSkN DQoNDQo7IFRoZXNlIGFyZSB0aGUgUEMgcmVsYXRpdmUgb2Zmc2V0cyBmb3Ig dGhlIGludGVycnVwdCB2ZWN0b3JzIHdlJ3JlIGhvb2tpbmcNDQoNDQpJU1JI b29rT2Zmc2V0QWRkcmVzc2VzDQ0KCURDRAkJSVNSSG9va19SZXNldA0NCglE Q0QJCUlTUkhvb2tfVW5kZWZpbmVkT3Bjb2RlDQ0KCURDRAkJSVNSSG9va19T V0kNDQoJRENECQlJU1JIb29rX1ByZWZldGNoQWJvcnQNDQoJRENECQlJU1JI b29rX0RhdGFBYm9ydA0NCglEQ0QJCUlTUkhvb2tfUmVzZXJ2ZWQNDQoJRENE CQlJU1JIb29rX0lSUQ0NCglEQ0QJCUlTUkhvb2tfRklRDQ0KDQ0KOyBVc2Vy IGFkZHJlc3MgdG8gY2FsbA0NCg0NClVzZXJBZGRyZXNzDQ0KCURDRAkJMAkJ CQkJCTsgQ2FsbGVkIGFkZHJlc3Mgd2hlbiBob29rZWQgdmVjdG9ycyBvY2N1 cg0NCg0NCjsgQWxsIHZlY3RvciBhZGRyZXNzZXMNDQoNDQpSZXNldFZlY3Rv ckFkZHINDQoJRENECQkweDAwCQkJCQk7IFZlY3RvciBmb3IgcmVzZXRzDQ0K VW5kZWZpbmVkT3Bjb2RlVmVjdG9yQWRkcg0NCglEQ0QJCTB4MDQJCQkJCTsg VmVjdG9yIGZvciB1bmRlZmluZWQgb3Bjb2Rlcw0NClNXSVZlY3RvckFkZHIN DQoJRENECQkweDA4CQkJCQk7IFZlY3RvciBmb3IgU1dJDQ0KUHJlZmV0Y2hB Ym9ydFZlY3RvckFkZHINDQoJRENECQkweDBjCQkJCQk7IFZlY3RvciBmb3Ig cHJlZmVjdGggYWJvcnQNDQpEYXRhQWJvcnRWZWN0b3JBZGRyDQ0KCURDRAkJ MHgxMAkJCQkJOyBEYXRhIGFib3J0IFZlY3Rvcg0NClJlc2VydmVkVmVjdG9y QWRkcg0NCglEQ0QJCTB4MTQJCQkJCTsgUmVzZXJ2ZWQgYnJhbmNoIFZlY3Rv cg0NCklSUVZlY3RvckFkZHINDQoJRENECQkweDE4CQkJCQk7IElSUSBWZWN0 b3JBZGRyDQ0KRklRVmVjdG9yQWRkcg0NCglEQ0QJCTB4MWMJCQkJCTsgRklR IHZlY3Rvcg0NCg0NCgk7Ow0NCgk7OyBFeGNlcHRpb24gVmVjdG9ycy4gVGhl c2UgdmVjdG9ycyB3aWxsIGZpcnN0IGhvb2sNDQoJOzsNDQoNDQpJU1JIb29r X1Jlc2V0DQ0KCVNUTUlBCXNwISwge2ExfQkJCQkJOyBGaWxsZWQgaW4gYnkg YnJhbmNoIGFkZHJlc3MgbGF0ZXIhDQ0KCVNUTURCCXNwISwge2ExLWE0LCBy MTIsIGxyfQ0NCglMRFIJCXIxMiwgPVJlc2V0VmVjdG9yQWRkcg0NCglCCQlD b21tb25SZXN0b3JlUHJvY2VkdXJlMzINDQoNDQpJU1JIb29rX1VuZGVmaW5l ZE9wY29kZQ0NCglTVE1EQglzcCEsIHthMX0JCQkJCTsgRmlsbGVkIGluIGJ5 IGJyYW5jaCBhZGRyZXNzIGxhdGVyIQ0NCglTVE1EQglzcCEsIHthMS1hNCwg cjEyLCBscn0NDQoJTERSCQlyMTIsID1VbmRlZmluZWRPcGNvZGVWZWN0b3JB ZGRyDQ0KCUIJCUNvbW1vblJlc3RvcmVQcm9jZWR1cmUzMg0NCg0NCklTUkhv b2tfU1dJDQ0KCVNUTURCCXNwISwge2ExfQkJCQkJOyBGaWxsZWQgaW4gYnkg YnJhbmNoIGFkZHJlc3MgbGF0ZXIhDQ0KCVNUTURCCXNwISwge2ExLWE0LCBy MTIsIGxyfQ0NCglMRFIJCXIxMiwgPVNXSVZlY3RvckFkZHINDQoJQgkJQ29t bW9uUmVzdG9yZVByb2NlZHVyZTMyDQ0KDQ0KSVNSSG9va19QcmVmZXRjaEFi b3J0DQ0KCVNUTURCCXNwISwge2ExfQkJCQkJOyBGaWxsZWQgaW4gYnkgYnJh bmNoIGFkZHJlc3MgbGF0ZXIhDQ0KCVNUTURCCXNwISwge2ExLWE0LCByMTIs IGxyfQ0NCglMRFIJCXIxMiwgPVByZWZldGNoQWJvcnRWZWN0b3JBZGRyDQ0K CUIJCUNvbW1vblJlc3RvcmVQcm9jZWR1cmUzMg0NCg0NCklTUkhvb2tfRGF0 YUFib3J0DQ0KCVNUTURCCXNwISwge2ExfQkJCQkJOyBGaWxsZWQgaW4gYnkg YnJhbmNoIGFkZHJlc3MgbGF0ZXIhDQ0KCVNUTURCCXNwISwge2ExLWE0LCBy MTIsIGxyfQ0NCglMRFIJCXIxMiwgPURhdGFBYm9ydFZlY3RvckFkZHINDQoJ QgkJQ29tbW9uUmVzdG9yZVByb2NlZHVyZTMyDQ0KDQ0KSVNSSG9va19SZXNl cnZlZA0NCglTVE1EQglzcCEsIHthMX0JCQkJCTsgRmlsbGVkIGluIGJ5IGJy YW5jaCBhZGRyZXNzIGxhdGVyIQ0NCglTVE1EQglzcCEsIHthMS1hNCwgcjEy LCBscn0NDQoJTERSCQlyMTIsID1SZXNlcnZlZFZlY3RvckFkZHINDQoJQgkJ Q29tbW9uUmVzdG9yZVByb2NlZHVyZTMyDQ0KDQ0KSVNSSG9va19JUlENDQoJ U1RNREIJc3AhLCB7YTF9CQkJCQk7IEZpbGxlZCBpbiBieSBicmFuY2ggYWRk cmVzcyBsYXRlciENDQoJU1RNREIJc3AhLCB7YTEtYTQsIHIxMiwgbHJ9DQ0K CUxEUgkJcjEyLCA9SVJRVmVjdG9yQWRkcg0NCglCCQlDb21tb25SZXN0b3Jl UHJvY2VkdXJlMzINDQoNDQpJU1JIb29rX0ZJUQ0NCglTVE1EQglzcCEsIHth MX0JCQkJCTsgRmlsbGVkIGluIGJ5IGJyYW5jaCBhZGRyZXNzIGxhdGVyIQ0N CglTVE1EQglzcCEsIHthMS1hNCwgcjEyLCBscn0NDQoJTERSCQlyMTIsID1G SVFWZWN0b3JBZGRyDQ0KCUIJCUNvbW1vblJlc3RvcmVQcm9jZWR1cmUzMg0N Cg0NCkNvbW1vblJlc3RvcmVQcm9jZWR1cmUzMg0NCglMRFIJCXIxMiwgW3Ix Ml0JCQkJCTsgR2V0IG91ciB2ZWN0b3IncyBqdW1wIGFkZHJlc3MNDQoJTU9W CQlhMSwgc3AJCQkJCQk7IEExIEhhcyBvdXIgZml4dXAgcmV0dXJuIGFkZHJl c3MNDQoJU1VCCQlhMSwgYTEsICMoNyo0KQkJCQk7IFRoZSBmaXh1cCByZXR1 cm4gYWRkcmVzcw0NCglTVE1JQQlhMSEsIHtyMTJ9CQkJCQk7IFN0b3JlIG91 cg0NCglTVE1JQQlzcCEsIHtyMC1yN30JCQkJOyBTYXZlIG9mZiBhbGwgdXNl ZCByZWdpc3RlcnMNDQoJTERSCQlhMSwgPUNvbW1vblJlc3RvcmVQcm9jZWR1 cmUNDQoJQlgJCWExDQ0KDQ0KQ29tbW9uSGFuZGxlckV4aXRQcm9jZWR1cmUz Mg0NCglTVUIJCXNwLCBzcCwgIyg3KjQpCQkJCTsgTm93IGJhY2sgdXAgdGhy b3VnaCA3IHJlZ2lzdGVycyAtIGExLWE0LCByMTIsIGxyLCBhbmQgUEMNDQoJ TERNSUEJc3AhLCB7YTEtYTQsIHIxMiwgbHIsIHBjfQ0NCg0NCjsgRXZlcnl0 aGluZyBmcm9tIGhlcmUgb24gb3V0IGlzIEFSTSB0aHVtYiBjb2RlDQ0KDQ0K CUNPREUxNg0NCglFWFBPUlQJVmVjdG9ySG9vaywgVmVjdG9yUmVzdG9yZQ0N Cg0NCkNvbW1vblJlc3RvcmVQcm9jZWR1cmUNDQoJQkwJCVZlY3RvclJlc3Rv cmUJCQk7IFJlc3RvcmUgYWxsIG9mIHRoZSBpbnRlcnJ1cHQgdmVjdG9ycw0N Cg0NCjsgUHV0IGNhbGwgdG8gdXNlciByb3V0aW5lIGhlcmUNDQoNDQoJTERS CQlhMSwgPVVzZXJBZGRyZXNzCQk7IFBvaW50IHRvIHRoZSB1c2VyIGFkZHJl c3MgcG9pbnRlcg0NCglMRFIJCWExLCBbYTFdCQkJCTsgTG9hZCB1cCB0aGUg dXNlcidzIGFkZHJlc3MgaW4gYTENDQoJTERSCQlyMCwgPXVzZXJDYWxsUmV0 dXJuDQ0KCU1PVgkJbHIsIHIwCQkJCQk7IExvYWQgaW4gdGhlIGFwcHJvcHJp YXRlIHJldHVybiBhZGRyZXNzDQ0KCU1PVgkJcGMsIGExCQkJCQk7ICJDYWxs IiB0aGUgdXNlciByb3V0aW5lDQ0KDQ0KOyBFeGl0IHRvIGNvbW1vbiBleGl0 IGhhbmRsZXIgLSByZXN0b3JlIHJlZ2lzdGVycyBhbmQganVtcCBiYWNrIHRv IDMyIGJpdCBtb2RlDQ0KDQ0KdXNlckNhbGxSZXR1cm4NDQoJTERSCQlhMSwg PUNvbW1vbkhhbmRsZXJFeGl0UHJvY2VkdXJlMzJBZGRyDQ0KCUxEUgkJYTEs IFthMV0NDQoJQlgJCWExDQ0KDQ0KCUFMSUdODQ0KDQ0KQ29tbW9uSGFuZGxl ckV4aXRQcm9jZWR1cmUzMkFkZHINDQoJRENECQlDb21tb25IYW5kbGVyRXhp dFByb2NlZHVyZTMyDQ0KDQ0KVmVjdG9ySG9vaw0NCg0NCjsgU3RvcmUgb2Zm IHRoZSB1c2VyIGRlZmluZWQgcHJvY2VkdXJlDQ0KDQ0KCUxEUgkJcjEsID1V c2VyQWRkcmVzcwkJOyBBZGRyZXNzIG9mIHVzZXIgY2FsbCBhZGRyZXNzDQ0K CVNUTUlBCXIxISwge3IwfQkJCQk7IFN0b3JlIHRoZSB1c2VyIGFkZHJlc3MN DQoNDQo7IE1ha2UgYSBjb3B5IG9mIGV2ZXJ5dGhpbmcgaW4gdGhlIGN1cnJl bnQgdmVjdG9yIHRhYmxlDQ0KDQ0KCUxEUgkJcjAsID1WZWN0b3JSQU1CYXNl QWRkcgk7IFBvaW50IHRvIHRoZSBiYXNlIGFkZHJlc3MNDQoJTERSCQlyMCwg W3IwXQkJCQk7IEdldCB0aGUgYmFzZSBhZGRyZXNzIHZhbHVlIGl0c2VsZg0N CglMRFIJCXIxLCA9T2xkVmVjdG9yc0FkZHIJCTsgUG9pbnQgdG8gYWRkcmVz cyBvZiBvbGQgdmVjdG9yIGFkZHJlc3MNDQoJTERSCQlyMSwgW3IxXQkJCQk7 IEdldCB0aGUgb2xkIHZlY3RvciBhZGRyZXNzIHN0b3JhZ2UgaXRzZWxmDQ0K CUxEUgkJcjIsID1WZWN0b3JSQU1TaXplQWRkcgk7IFBvaW50IHRvIHRoZSBz aXplIG9mIHRoZSBvbGQgdmVjdG9yIGFkZHJlc3Nlcw0NCglMRFIJCXIyLCBb cjJdCQkJCTsgR2V0IHRoZSBzaXplIG9mIHRoZSBvbGQgdmVjdG9yIGFkZHJl c3NlcyAoZHdvcmRzKQ0NCg0NCjsgTW92ZSBhbGwgRFdPUkRzIGZyb20gdGhl IGV4aXN0aW5nIHZlY3RvciB0YWJsZSB0byB0aGUgbmV3IHRhYmxlDQ0KOyBS MD1Tb3VyY2UsIFIxPURlc3RpbmF0aW9uLCBSMj1Db3VudCBpbiBEV09SRHMs IFIzPVNjcmF0Y2gNDQoNDQpjb3B5Q3VycmVudFRhYmxlTG9vcA0NCglMRE1J QQlyMCEsIHtyM30JCQkJOyBHZXQgRFdPUkQgJiBpbmNyZW1lbnQgUjAgdG8g dGhlIG5leHQgRFdPUkQNDQoJU1RNSUEJcjEhLCB7cjN9CQkJCTsgU3RvcmUg RFdPUkQgJiBpbmNyZW1lbnQgUjEgdG8gdGhlIG5leHQgRFdPUkQNDQoJU1VC CQlyMiwgIzEJCQkJCTsgU3VidHJhY3QgMSBmcm9tIHRoZSByZW1haW5pbmcg RFdPUkRzIHRvIGNvcHkNDQoJQk5FCQljb3B5Q3VycmVudFRhYmxlTG9vcAk7 IExvb3AgdW50aWwgYWxsIGhhdmUgYmVlbiBjb3BpZWQNDQoNDQo7IE5vdyBj b3B5IGluIHRoZSBuZXcgbG9jYXRpb25zDQ0KDQ0KCUxEUgkJcjAsID1WZWN0 b3JSQU1CYXNlQWRkcgk7IFBvaW50IHRvIHRoZSBiYXNlIHZlY3RvciBhZGRy ZXNzDQ0KCUxEUgkJcjAsIFtyMF0JCQkJOyBHZXQgdGhlIGJhc2UgdmVjdG9y IGFkZHJlc3MNDQoJTERSCQlyMSwgPUJYSW5zdHJ1Y3Rpb24JCTsgTG9uZyBi cmFuY2ggaW5zdHJ1Y3Rpb24gYWRkcmVzcw0NCglMRFIJCXIxLCBbcjFdCQkJ CTsgR2V0IGxvbmcgYnJhbmNoIGluc3RydWN0aW9uIHZhbHVlDQ0KCUxEUgkJ cjIsID1WZWN0b3JSQU1TaXplQWRkcgk7IFBvaW50IHRvIHRoZSBzaXplIG9m IHRoZSBvbGQgdmVjdG9yIGFkZHJlc3Nlcw0NCglMRFIJCXIyLCBbcjJdCQkJ CTsgR2V0IHRoZSBzaXplIG9mIHRoZSBvbGQgdmVjdG9yIGFkZHJlc3NlcyAo ZHdvcmRzKQ0NCglMRFIJCXI0LCA9SVNSSG9va09mZnNldEFkZHJlc3NlcyA7 IFBvaW50ZXIgdG8gaG9vayBvZmZzZXQgYWRkcmVzc2VzDQ0KDQ0KOyBDb21w dXRlIGFuZCBob29rIHRoZSByZXNldCBhZGRyZXNzDQ0KCQ0NCmhvb2tMb29w DQ0KCUxETUlBCXI0ISwge3IzfQkJCQk7IEdldCBvdXIgbmV4dCBvZmZzZXQN DQoJU1VCCQlyMywgIzgJCQkJCTsgU3VidHJhY3QgOCBmb3IgcHJlZmV0Y2gg KHNlZSA5LTExIG9mIEFSTSBVc2VyJ3MgZ3VpZGUpDQ0KCVNVQgkJcjMsCXIw CQkJCQk7IFN1YnRyYWN0IHZlY3RvciBhZGRyZXNzIChhbHNvIHNlZSA5LTEx IG9mIEFSTSB1c2VyJ3MgZ3VpZGUpDQ0KCUxTUgkJcjMsIHIzLCAjMgkJCQk7 IERpdmlkZSBieSA0IGZvciBCWCBpbnN0cnVjdGlvbiBzaW5jZSBpdCdzIGlu IERXT1JEcyAtIG5vdCBieXRlcw0NCglPUlIJCXIzLCByMQkJCQkJOyBPUiBJ biBCWCBpbnN0cnVjdGlvbg0NCglTVE1JQQlyMCEsIHtyM30JCQkJOyBTdG9y ZSB0aGUgdmVjdG9yIQ0NCglTVUIJCXIyLCAjMQkJCQkJOyBPbmUgbGVzcyBE V09SRCENDQoJQk5FCQlob29rTG9vcA0NCg0NCjsgQWxsIGZpbmlzaGVkISBS ZXR1cm4gdG8gY2FsbGVyDQ0KDQ0KCUJYCQlscg0NCg0NClZlY3RvclJlc3Rv cmUNDQoJTERSCQlyMCwgPU9sZFZlY3RvcnNBZGRyCQk7IFBvaW50IHRvIGFk ZHJlc3Mgb2Ygb2xkIHZlY3RvciBhZGRyZXNzDQ0KCUxEUgkJcjAsIFtyMF0J CQkJOyBHZXQgdGhlIG9sZCB2ZWN0b3IgYWRkcmVzcyBzdG9yYWdlIGl0c2Vs Zg0NCglMRFIJCXIxLCA9VmVjdG9yUkFNQmFzZUFkZHIJOyBQb2ludCB0byB0 aGUgYmFzZSBhZGRyZXNzDQ0KCUxEUgkJcjEsIFtyMV0JCQkJOyBHZXQgdGhl IGJhc2UgYWRkcmVzcyB2YWx1ZSBpdHNlbGYNDQoJTERSCQlyMiwgPVZlY3Rv clJBTVNpemVBZGRyCTsgUG9pbnQgdG8gdGhlIHNpemUgb2YgdGhlIG9sZCB2 ZWN0b3IgYWRkcmVzc2VzDQ0KCUxEUgkJcjIsIFtyMl0JCQkJOyBHZXQgdGhl IHNpemUgb2YgdGhlIG9sZCB2ZWN0b3IgYWRkcmVzc2VzIChkd29yZHMpDQ0K DQ0KOyBNb3ZlIGFsbCBEV09SRHMgZnJvbSB0aGUgZXhpc3RpbmcgdmVjdG9y IHRhYmxlIHRvIHRoZSBuZXcgdGFibGUNDQo7IFIwPVNvdXJjZSwgUjE9RGVz dGluYXRpb24sIFIyPUNvdW50IGluIERXT1JEcywgUjM9U2NyYXRjaA0NCg0N CnJlc3RvcmVWZWN0b3JUYWJsZUxvb3ANDQoJTERNSUEJcjAhLCB7cjN9CQkJ CTsgR2V0IERXT1JEICYgaW5jcmVtZW50IFIwIHRvIHRoZSBuZXh0IERXT1JE DQ0KCVNUTUlBCXIxISwge3IzfQkJCQk7IFN0b3JlIERXT1JEICYgaW5jcmVt ZW50IFIxIHRvIHRoZSBuZXh0IERXT1JEDQ0KCVNVQgkJcjIsICMxCQkJCQk7 IFN1YnRyYWN0IDEgZnJvbSB0aGUgcmVtYWluaW5nIERXT1JEcyB0byBjb3B5 DQ0KCUJORQkJcmVzdG9yZVZlY3RvclRhYmxlTG9vcAk7IExvb3AgdW50aWwg YWxsIGhhdmUgYmVlbiBjb3BpZWQNDQoNDQoJQlgJCWxyCQkJCQkJOyBSZXR1 cm4gdG8gdGhlIGNhbGxlcg0NCg0NCglBUkVBICBEYXRhDQ0KDQ0KOyBBIHBs YWNlIHRvIHN0b3JlIGFsbCB2ZWN0b3IgY2FsbHMgDQ0KDQ0KCUFMSUdODQ0K DQ0KT2xkVmVjdG9ycw0NCglEQ0QJCTAJCQkJCQk7IE9sZCBSZXNldCBicmFu Y2gNDQoJRENECQkwCQkJCQkJOyBPbGQgVW5kZWZpbmVkIG9wY29kZSBicmFu Y2gNDQoJRENECQkwCQkJCQkJOyBPbGQgU1dJIGJyYW5jaA0NCglEQ0QJCTAJ CQkJCQk7IE9sZCBQcmVmZXRjaCBhYm9ydCBicmFuY2gNDQoJRENECQkwCQkJ CQkJOyBPbGQgRGF0YSBhYm9ydCBicmFuY2gNDQoJRENECQkwCQkJCQkJOyBP bGQgUmVzZXJ2ZWQgYnJhbmNoDQ0KCURDRAkJMAkJCQkJCTsgT2xkIElSUSBi cmFuY2gNDQoJRENECQkwCQkJCQkJOyBPbGQgRklRIGJyYW5jaA0NCk9sZFZl Y3RvcnNFbmQNDQoNDQoNDQoJRU5E --0-1209344033-1028233720=:92966-- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 2 02:10:24 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g729A5e73078 for dynarec-outgoing; Fri, 2 Aug 2002 02:10:05 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020802014717.007f9610@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 02 Aug 2002 01:47:17 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: OT: Itanium 2 benchmarks Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com The first SPEC figures for Itanium 2 have been submitted by HP. You can find them along side a bunch of others here: http://www.specbench.org/osg/cpu2000/results/cpu2000.html The floating benchmarks use Linux and the Intel compilers whereas the integer marks use HP-UX and HP's compiler (supposedly they got a 20-25% speed boost in that area.) The results seem to be looking good. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Aug 9 13:17:52 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g79KH3w87481 for dynarec-outgoing; Fri, 9 Aug 2002 13:17:03 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 9 Aug 2002 13:15:09 -0700 (PDT) From: Neil Bradley To: Subject: DYNAREC: ARM Assembly question Message-ID: <20020809131435.J51270-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I have code on an ARM based CPU with THUMB code that is relocated from flash (addressed at 0x01000000) down to RAM (starting at 0x00000000). In some cases (debug mode), it will need to make calls from the RAM based relocated code to the flash based code. I can't use the regular branch instructions since it's so far away, so for each branch to the old location, I've created a stub procedure (for each call to flash) that looks like this: MOV r11, r6 LDR r6, =destAddr MOV r12, r6 MOV r6, r11 BX r12 ALIGN destAddr DCD destAddr Since it's thumb code, I can trash R12 and R11, but I can't directly load a value from memory into the PC, thusly needing to store off R6. This does work, however, is it the most efficient way to do it? Is it proper? What problems would I wind up running in to? Please go easy on me... this is my first week doing ARM assembly. ;-) Thank you! -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Aug 10 14:50:59 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7ALoQB91410 for dynarec-outgoing; Sat, 10 Aug 2002 14:50:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 10 Aug 2002 23:33:26 +0200 Mime-Version: 1.0 (Apple Message framework v481) Content-Type: text/plain; charset=US-ASCII; format=flowed Subject: DYNAREC: UQBT & Walkabout From: Gwenole Beauchesne To: dynarec@dynarec.com Content-Transfer-Encoding: 7bit Message-Id: X-Mailer: Apple Mail (2.481) Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi, Some links I am sure Victor will be pleased with, finally. ;-) * Walkabout: * UQBT source code (BSD license): Bye, Gwenole. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sun Aug 11 01:26:43 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7B8QQr91901 for dynarec-outgoing; Sun, 11 Aug 2002 01:26:26 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020811010233.007fa100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sun, 11 Aug 2002 01:02:33 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: Building Abstract Syntax Trees for LL(1) Grammars Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I've finally sat down and designed a simple little language for mathematical expressions I'll be implementing before I move on to writing an actual compiler, but I've been having some trouble coming up with a way of building abstract syntax trees for the parser to generate. The grammar is LL(1) and the parser will be stack-based and hopefully table driven (I'm going to do it by hand.) I also want to learn to use yacc using this language and I'll implement a second parser with it. The goal is to be able to swap one out and recompile with the other -- both should generate the same syntax trees. Anyway, these trees must be generated from the bottom up which seems a bit awkward in a top-down stack-based parser. I know how to use a value (or attribute, as I like to think of it) stack alongside the actual parse stack, but I've only tried using it to pass down inherited attributes. For generating trees from the bottom up, passing attributes up the stack would be useful (I think these are called "synthesized" attributes, IIRC.) I think I came up with a way of doing it, but it is easy to break if not used carefully. Another way of doing it would be to have the parser output the tokens in postfix form and then build the syntax tree from the top down recursively starting with the last token and moving to the left. Assuming ^ is the exponent operator, 1^2^3^4 would get turned into: 1234^^^ (I believe this handles right associativity of the ^ operator correctly), and the tree constructed would be: ^ / \ 1 ^ / \ 2 ^ / \ 3 4 Is this an acceptable solution? It sort of feels like cheating to me, because I just can't figure out a clean way to generate the tree in one pass. Another intermediate representation I wanted to do was a LISP-like prefix form: 9+5-2: (- (+ 9 5) 2) OR (+ 9 (- 5 2)) However, it isn't possible to generate the operators prior to the operands in my grammar. :( At least I can't think of a way. There must be a way, though... ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 19 09:24:17 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7JGNdo07817 for dynarec-outgoing; Mon, 19 Aug 2002 09:23:39 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 19 Aug 2002 17:04:51 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.60m) X-Priority: 3 (Normal) Message-ID: <110199736025.20020819170451@dynarec.com> To: dynarec@dynarec.com Subject: DYNAREC: Food Fight source? MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi guys, I'm alive, I'm alive! :) Anyway, I have free time on my hands all of a sudden. Has anybody got the source code to the Food Fight emu that was started? I'm going to have a go at putting the start of our dynarec together... :) Cheers, Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 19 13:52:36 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7JKqTv08029 for dynarec-outgoing; Mon, 19 Aug 2002 13:52:29 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020819132734.007fd100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 19 Aug 2002 13:27:34 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Food Fight source? In-Reply-To: <110199736025.20020819170451@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 05:04 PM 8/19/2002 +0100, you wrote: >Hi guys, > >I'm alive, I'm alive! :) Hooray! :) >Anyway, I have free time on my hands all of a sudden. Has anybody got >the source code to the Food Fight emu that was started? Nope, I have a binary and the ROMs, though. >I'm going to >have a go at putting the start of our dynarec together... :) Cool! Is there still any enthusiasm from anyone else on the list? I'm still interested in contributing. I signed up for shell accounts with Compaq's Test Drive program (http://www.testdrive.compaq.com) which gives me access to Alpha, Itanium (not Itanium 2, unfortunately), and PA-RISC machines running various Unices and compilers. I can't do graphics on any of these machines (unless I implement a stub renderer which doesn't blit to anything), but porting the dynarec itself is now an option. I think I'm going to develop my compiler for Alpha now that I have access to some hardware (it's unlikely I'll ever get my Multia running.) I'm not sure whether I'll write an Alpha back end for DRSH2, though. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 19 15:14:05 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7JMDsV08111 for dynarec-outgoing; Mon, 19 Aug 2002 15:13:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Mon, 19 Aug 2002 22:55:06 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.60m) X-Priority: 3 (Normal) Message-ID: <48220751594.20020819225506@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Food Fight source? In-Reply-To: <3.0.5.32.20020819132734.007fd100@dynarec.com> References: <3.0.5.32.20020819132734.007fd100@dynarec.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, B> Hooray! :) I find it preferable to being dead... :) >>Anyway, I have free time on my hands all of a sudden. Has anybody got >>the source code to the Food Fight emu that was started? B> Nope, I have a binary and the ROMs, though. That's all I can find too, but I could have sworn I had the source code at some point! If not, I definitely had the directory structure... It's odd (but then, so am I)! B> Cool! Is there still any enthusiasm from anyone else on the list? I'm still B> interested in contributing. I don't know actually, but I want to do something more technical. I've got my "fun" project - re-writing Speedball 2 to the GBA, but a bit more advanced - and I'm looking for something else. We need to get a dynarec together because the ones I've seen are just poor. I was looking at a GBA emulator the other day (I forget it's name) which has a dynawreck core. Just emitting code doesn't make it a dynarec... I should get in touch with Graham soon about getting his emulator working on the GBA! Graham, I'll e-mail you in the next couple of days! B> I signed up for shell accounts with Compaq's Test Drive program B> (http://www.testdrive.compaq.com) which gives me access to Alpha, Itanium B> (not Itanium 2, unfortunately), and PA-RISC machines running various Unices B> and compilers. I can't do graphics on any of these machines (unless I B> implement a stub renderer which doesn't blit to anything), but porting the B> dynarec itself is now an option. Yes, I've got a shell on there too. :) B> I think I'm going to develop my compiler for Alpha now that I have access B> to some hardware (it's unlikely I'll ever get my Multia running.) I'm not B> sure whether I'll write an Alpha back end for DRSH2, though. Good luck with that! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Aug 19 16:40:58 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7JNeoM08206 for dynarec-outgoing; Mon, 19 Aug 2002 16:40:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020819161553.007ff180@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 19 Aug 2002 16:15:53 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[2]: DYNAREC: Food Fight source? In-Reply-To: <48220751594.20020819225506@dynarec.com> References: <3.0.5.32.20020819132734.007fd100@dynarec.com> <3.0.5.32.20020819132734.007fd100@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >That's all I can find too, but I could have sworn I had the source >code at some point! If not, I definitely had the directory >structure... It's odd (but then, so am I)! There was a directory structure, but hardly any files were done. I can probably dig this up off of my old machine if you really want it. >I don't know actually, but I want to do something more technical. I've >got my "fun" project - re-writing Speedball 2 to the GBA, but a bit >more advanced - and I'm looking for something else. We need to get a >dynarec together because the ones I've seen are just poor. I was >looking at a GBA emulator the other day (I forget it's name) which has >a dynawreck core. Just emitting code doesn't make it a dynarec... What sort of a dynarec do you want to do? Are we going to do DR68K as we planned or do we want to do something else? Some other stuff that might be cool (but I wouldn't want to attempt alone ;)) would be: - PowerPC -> X86/Alpha/IA-64 (one of these days Sega Model 3 will have to be emulated ;)) - X86 -> X86 (dynamic optimizer a la Dynamo) It would be interesting to do a dynarec where timing is completely irrelevant (one which lets you run binaries off of one machine on another -- like FX!32.) A 68K dynarec would still be handy, as long as the search times for basic blocks weren't too long (the Genesis 68K has to be run in very small time slices.) I might have access to SGI O2s later this year, so maybe I could port Genital to an interesting platform using a 68K->MIPS dynarec, if we decide to do this project. I've also been wondering about static recompilation for video game systems. For many Genesis games, it would be impossible. But for things like Sonic the Hedgehog, it might be possible. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 20 03:16:07 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7KAFqu09231 for dynarec-outgoing; Tue, 20 Aug 2002 03:15:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Aug 2002 10:56:54 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.60m) X-Priority: 3 (Normal) Message-ID: <146603467.20020820105654@dynarec.com> To: dynarec@dynarec.com Subject: Re[4]: DYNAREC: Food Fight source? In-Reply-To: <3.0.5.32.20020819161553.007ff180@dynarec.com> References: <3.0.5.32.20020819132734.007fd100@dynarec.com> <3.0.5.32.20020819132734.007fd100@dynarec.com> <3.0.5.32.20020819161553.007ff180@dynarec.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, B> There was a directory structure, but hardly any files were done. I can B> probably dig this up off of my old machine if you really want it. It's probably not worth it then. :( Where's Neil B when you need him, eh? ;) B> What sort of a dynarec do you want to do? Are we going to do DR68K as we B> planned or do we want to do something else? Well, I was planning for DR68K, but still using the method that we came up with to easily implement new CPUs. However, I'm not stuck to the 68K - it's just that it would be easily testable if we make it conform to the Starscream API. B> Some other stuff that might be cool (but I wouldn't want to attempt alone B> ;)) would be: - PowerPC ->> X86/Alpha/IA-64 (one of these days Sega Model 3 will have to B> be emulated ;)) I don't know anybody who's looked into this... ;) - X86 ->> X86 (dynamic optimizer a la Dynamo) I must admit, this would be pretty interesting! B> It would be interesting to do a dynarec where timing is completely B> irrelevant (one which lets you run binaries off of one machine on another B> -- like FX!32.) Again, that's another interesting idea. B> A 68K dynarec would still be handy, as long as the search times for basic B> blocks weren't too long (the Genesis 68K has to be run in very small time B> slices.) I might have access to SGI O2s later this year, so maybe I could B> port Genital to an interesting platform using a 68K->MIPS dynarec, if we B> decide to do this project. It would be very interesting to see the results if you got around to doing that! B> I've also been wondering about static recompilation for video game systems. B> For many Genesis games, it would be impossible. But for things like Sonic B> the Hedgehog, it might be possible. Now THAT is my pet field of interest. I remember the discussions I used to have with Andrew Davidson (who seems to have disappeared :-/) about this subject. For arcade machines, this would be perfect - not many games self-modify. You can certainly do more optimisations for static recompilation - you can spend more time looking for clues as to where to optimise more. Actually, it would be interesting to do a dynarec first which you could then use for profiling information - because the best way to see where to optimise is to see where most of the processing is going on! Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 20 12:05:05 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7KJ4Xk09670 for dynarec-outgoing; Tue, 20 Aug 2002 12:04:33 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020820113931.00800590@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 20 Aug 2002 11:39:31 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[4]: DYNAREC: Food Fight source? In-Reply-To: <146603467.20020820105654@dynarec.com> References: <3.0.5.32.20020819161553.007ff180@dynarec.com> <3.0.5.32.20020819132734.007fd100@dynarec.com> <3.0.5.32.20020819132734.007fd100@dynarec.com> <3.0.5.32.20020819161553.007ff180@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >B> It would be interesting to do a dynarec where timing is completely >B> irrelevant (one which lets you run binaries off of one machine on another >B> -- like FX!32.) > >Again, that's another interesting idea. Has there been much research on the topic of distributing program binaries as some sort of high level intermediate representation? I don't mean bytecodes like .NET and Java, but a much more high level format similar to what compilers deal with. A JIT compiler would produce the actual code to execute, but it wouldn't be translating an instruction set to another; instead, it would be dealing with something designed to be analyzed by a compiler -- no guesses as to where entry points are or what functions call each other, etc. Everything would be known. Not only would this allow portability across different CPU architectures (it would work best if the same OS was used on different CPUs -- like Windows or some UNIX), it might also provide a performance boost over statically compiled native binaries because profiling could be incorporated to detect where the program hot spots are and how functions call each other. The optimizer would then have full access to a high level IR which would provide far more information about "the big picture" than could easily be extracted from machine code. It's just an idea... Sounds nice on paper but would it have any merit for real world applications? >Now THAT is my pet field of interest. I remember the discussions I >used to have with Andrew Davidson (who seems to have disappeared :-/) >about this subject. For arcade machines, this would be perfect - not >many games self-modify. I think Stroff (on the RG forums) has used static recompilation in his arcade->GBA ports. He made it sound like he had a simple tool which translated things into C code and that a lot of hand tuning of the output was required. >You can certainly do more optimisations for static recompilation - you >can spend more time looking for clues as to where to optimise more. >Actually, it would be interesting to do a dynarec first which you >could then use for profiling information - because the best way to see >where to optimise is to see where most of the processing is going on! Exactly... You could see the "big picture" in terms of how basic blocks interact and perform some really fancy optimizations, I imagine. What makes it impossible on a lot of systems is timing-related tricks (per-scanline effects, etc.) However, for simple games which only need frame-granular accuracy, it might be possible to add some heuristics to detect when the game expects the frame to have ended (on the Genesis, many games sit in a loop waiting for a variable to get set a certain way by the VBL handler; a smaller number will actually poll the VDP's status register for this information.) Some arcade games can be very tricky in terms of timing, I gather... ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 20 13:04:17 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7KK4Fp09726 for dynarec-outgoing; Tue, 20 Aug 2002 13:04:15 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Aug 2002 13:03:02 -0700 (PDT) From: Neil Bradley To: Subject: Re[4]: DYNAREC: Food Fight source? In-Reply-To: <146603467.20020820105654@dynarec.com> Message-ID: <20020820130124.I32079-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > B> There was a directory structure, but hardly any files were done. I can > B> probably dig this up off of my old machine if you really want it. > It's probably not worth it then. :( > Where's Neil B when you need him, eh? ;) Sorry for being a space cadet... http://www.synthcom.com/~nb/dynarec.zip This has full on Food Fight emulation running, and the start of the framework needed (I think...). Haven't touched it since March. -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 20 13:54:40 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7KKsWG09776 for dynarec-outgoing; Tue, 20 Aug 2002 13:54:32 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020820132929.007ff140@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 20 Aug 2002 13:29:29 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[4]: DYNAREC: Food Fight source? In-Reply-To: <20020820130124.I32079-100000@beacon.synthcom.com> References: <146603467.20020820105654@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 01:03 PM 8/20/2002 -0700, you wrote: >> B> There was a directory structure, but hardly any files were done. I can >> B> probably dig this up off of my old machine if you really want it. >> It's probably not worth it then. :( >> Where's Neil B when you need him, eh? ;) > >Sorry for being a space cadet... > >http://www.synthcom.com/~nb/dynarec.zip I think that's DRMZ80, not Food Fight :) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 20 14:53:52 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7KLrnR09834 for dynarec-outgoing; Tue, 20 Aug 2002 14:53:49 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Aug 2002 14:52:37 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[4]: DYNAREC: Food Fight source? In-Reply-To: <3.0.5.32.20020820132929.007ff140@dynarec.com> Message-ID: <20020820145219.B32079-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >Sorry for being a space cadet... > >http://www.synthcom.com/~nb/dynarec.zip > I think that's DRMZ80, not Food Fight :) Try again... Forgot to copy the file over. ;-( -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 20 15:26:17 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7KMOZG09873 for dynarec-outgoing; Tue, 20 Aug 2002 15:24:35 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020820145929.00801a40@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 20 Aug 2002 14:59:29 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[4]: DYNAREC: Food Fight source? In-Reply-To: <20020820145219.B32079-100000@beacon.synthcom.com> References: <3.0.5.32.20020820132929.007ff140@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 02:52 PM 8/20/2002 -0700, you wrote: >> >Sorry for being a space cadet... >> >http://www.synthcom.com/~nb/dynarec.zip >> I think that's DRMZ80, not Food Fight :) > >Try again... Forgot to copy the file over. ;-( Thanks! I tried to build the DJDOS version but it doesn't compile properly (I'm assuming the DOS port isn't complete.) I'll take a closer look later. If the DOS port isn't fully implemented, I can handle it. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 20 15:28:23 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7KMSIU09886 for dynarec-outgoing; Tue, 20 Aug 2002 15:28:18 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Aug 2002 15:27:06 -0700 (PDT) From: Neil Bradley To: Subject: Re: Re[4]: DYNAREC: Food Fight source? In-Reply-To: <3.0.5.32.20020820145929.00801a40@dynarec.com> Message-ID: <20020820152635.F32079-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> >http://www.synthcom.com/~nb/dynarec.zip > >> I think that's DRMZ80, not Food Fight :) > >Try again... Forgot to copy the file over. ;-( > Thanks! I tried to build the DJDOS version but it doesn't compile properly > (I'm assuming the DOS port isn't complete.) I'll take a closer look later. > If the DOS port isn't fully implemented, I can handle it. The DOS port wasn't implemented at all, IIRC. I certainly didn't do anything with it. ;-) Give it a go! -->Neil ------------------------------------------------------------------------------- Neil Bradley What are burger lovers saying Synthcom Systems, Inc. about the new BK Back Porch Griller? ICQ #29402898 "It tastes like it came off the back porch." - Me --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 20 16:07:53 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7KN7pO09928 for dynarec-outgoing; Tue, 20 Aug 2002 16:07:51 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Aug 2002 23:47:52 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.60m) X-Priority: 3 (Normal) Message-ID: <417132626.20020820234752@dynarec.com> To: dynarec@dynarec.com Subject: Re[6]: DYNAREC: Food Fight source? In-Reply-To: <3.0.5.32.20020820113931.00800590@dynarec.com> References: <3.0.5.32.20020819161553.007ff180@dynarec.com> <3.0.5.32.20020819132734.007fd100@dynarec.com> <3.0.5.32.20020819132734.007fd100@dynarec.com> <3.0.5.32.20020819161553.007ff180@dynarec.com> <3.0.5.32.20020820113931.00800590@dynarec.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, B> Has there been much research on the topic of distributing program binaries B> as some sort of high level intermediate representation? That's probably more a question for Victor than me - but FWIW I don't know of any research on the subject. B> I don't mean bytecodes like .NET and Java, but a much more high level B> format similar to what compilers deal with. A JIT compiler would produce B> the actual code to execute, but it wouldn't be translating an instruction B> set to another; instead, it would be dealing with something designed to be B> analyzed by a compiler -- no guesses as to where entry points are or what B> functions call each other, etc. Everything would be known. That's an interesting idea. It sounds like how HotSpot (the Java VM) should have been - but obviously couldn't be, because it worked with bytecode. B> It's just an idea... Sounds nice on paper but would it have any merit for B> real world applications? Of course, but that would depend on a) size and b) what it could do. I would assume that it would still need some kind of VM - because without one, you wouldn't be able to use it to do graphics or even assume endianess... B> I think Stroff (on the RG forums) has used static recompilation in his arcade->>GBA ports. He made it sound like he had a simple tool which B> translated things into C code and that a lot of hand tuning of the output B> was required. That's one area that I'd thought about using static recompilation for, so it wouldn't surprise me! B> You could see the "big picture" in terms of how basic blocks interact and B> perform some really fancy optimizations, I imagine. That's what I'm thinking. You could actually use most of the code from the dynarec too, but you could spend more time on the code optimiser. That's an interesting way of getting Model 3 emulation to work actually. Having said that, as you're aware, Model 3 emulation is still way off - there's little documentation and it's very odd hardware! B> What makes it impossible on a lot of systems is timing-related tricks B> (per-scanline effects, etc.) However, for simple games which only need B> frame-granular accuracy, it might be possible to add some heuristics to B> detect when the game expects the frame to have ended (on the Genesis, many B> games sit in a loop waiting for a variable to get set a certain way by the B> VBL handler; a smaller number will actually poll the VDP's status register B> for this information.) That's why you'd use the profiling information - you could get the timing information from there and make the statically recompiled version conform to the same timings. Assuming that the dynarec was built into a full emulator, you'd know the timing details and wouldn't even need to know about vsync - you'd known how long it took between one cycle and the next. This is all fine in theory - I'm certain that in practice, this wouldn't be practical. It would, most likely, also mean having to run the game right to the end - and through every possible level. Otherwise you'd have to use heuristics or something equally clever! :) B> Some arcade games can be very tricky in terms of timing, I gather... Unfortunately so, but is that true with the newer machines? Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 20 16:07:53 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7KN7qe09933 for dynarec-outgoing; Tue, 20 Aug 2002 16:07:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 20 Aug 2002 23:48:46 +0100 From: Neil Griffiths X-Mailer: The Bat! (v1.60m) X-Priority: 3 (Normal) Message-ID: <57187485.20020820234846@dynarec.com> To: dynarec@dynarec.com Subject: Re[6]: DYNAREC: Food Fight source? In-Reply-To: <20020820145219.B32079-100000@beacon.synthcom.com> References: <20020820145219.B32079-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, NB> Try again... Forgot to copy the file over. ;-( Oh, I've done very similar things... recently, as it happens! :) Anyway, thanks for that. I'll take a look at this sometime this week and see where we can go. Neil. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 20 17:30:03 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7L0Tto10009 for dynarec-outgoing; Tue, 20 Aug 2002 17:29:55 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020820170448.008003f0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 20 Aug 2002 17:04:48 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[6]: DYNAREC: Food Fight source? In-Reply-To: <417132626.20020820234752@dynarec.com> References: <3.0.5.32.20020820113931.00800590@dynarec.com> <3.0.5.32.20020819161553.007ff180@dynarec.com> <3.0.5.32.20020819132734.007fd100@dynarec.com> <3.0.5.32.20020819132734.007fd100@dynarec.com> <3.0.5.32.20020819161553.007ff180@dynarec.com> <3.0.5.32.20020820113931.00800590@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >B> It's just an idea... Sounds nice on paper but would it have any merit for >B> real world applications? > >Of course, but that would depend on a) size and b) what it could do. I >would assume that it would still need some kind of VM - because >without one, you wouldn't be able to use it to do graphics or even >assume endianess... The size would be large... And the JIT would be complex. It would really be a full-fledged compiler back end (and perhaps the middle part which does non-platform specific optimization could be incorporated into the JIT -- optimization techniques in new versions of the JIT could then help improve old programs.) A good JIT would be more complex than most compiler back ends because it would have to support instrumentation of the code to gather better profiling data (and it would have to act upon it.) I also envision more user control over exactly how programs are optimized. The process could be totally transparent, but ideally, there would be a tool which would allow you to see what the JIT has done and would allow for the user to specify options and have the JIT perform more rigorous optimizations if necessary offline. Lots of interesting possibilities... I don't think a VM is necessary because basically, the idea would be to distribute programs as a file containing semi-compiled object code and data. There would be no link phase (everything would pretty much just be concatenated into 1 big file) which means even run time libraries would be linked in by the JIT (these could be precompiled and updates would affect all programs.) Hopefully nothing similar to "DLL Hell" would result from this scheme. >That's what I'm thinking. You could actually use most of the code from >the dynarec too, but you could spend more time on the code optimiser. >That's an interesting way of getting Model 3 emulation to work >actually. Having said that, as you're aware, Model 3 emulation is >still way off - there's little documentation and it's very odd >hardware! My Model 3 emulator hasn't progressed far :( I just can't figure out how to load any of the ROMs (besides the main code ROMs.) But I think Model 3 would be a good candidate for this sort of recompilation. >This is all fine in theory - I'm certain that in practice, this >wouldn't be practical. It would, most likely, also mean having to run >the game right to the end - and through every possible level. >Otherwise you'd have to use heuristics or something equally clever! :) The most impractical thing about it would be the complexity. You can emulate these games very quickly using interpretive emulation. Static recompilation wouldn't add much of a speed boost but the complexity would balloon dramatically. OTOH, it's an interesting theory and that alone might make it worthwhile to try. >Unfortunately so, but is that true with the newer machines? I'm not sure. Newer hardware uses a lot of DSPs and custom rendering hardware as well as multiple processors in some cases. So there are other issues which make recompilation difficult. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 20 19:03:16 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7L239N10093 for dynarec-outgoing; Tue, 20 Aug 2002 19:03:09 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020820183805.007fe6b0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 20 Aug 2002 18:38:05 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[4]: DYNAREC: Food Fight source? In-Reply-To: <20020820152635.F32079-100000@beacon.synthcom.com> References: <3.0.5.32.20020820145929.00801a40@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >The DOS port wasn't implemented at all, IIRC. I certainly didn't do >anything with it. ;-) Give it a go! I can do it using VESA 2.0, but I see you (or whoever did the stub) were planning to use Allegro. I don't know about sound, though... I've had problems with that under DOS before. I could probably use SEAL or something, if need be... ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 20 19:20:04 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7L2K4X10125 for dynarec-outgoing; Tue, 20 Aug 2002 19:20:04 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020820185459.00800ca0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 20 Aug 2002 18:54:59 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[4]: DYNAREC: Food Fight source? In-Reply-To: <20020820152635.F32079-100000@beacon.synthcom.com> References: <3.0.5.32.20020820145929.00801a40@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 03:27 PM 8/20/2002 -0700, you wrote: >> >> >http://www.synthcom.com/~nb/dynarec.zip >> >> I think that's DRMZ80, not Food Fight :) >> >Try again... Forgot to copy the file over. ;-( >> Thanks! I tried to build the DJDOS version but it doesn't compile properly >> (I'm assuming the DOS port isn't complete.) I'll take a closer look later. >> If the DOS port isn't fully implemented, I can handle it. Actually, the errors are in test.c: gcc -DMEMCHK -DASSERTS -DDRLOG -I. -c -Wall -Werror -O3 -fomit-frame-pointer -fstrict-aliasing -Wunused -Wbad-function-cast -Wstrict-prototypes -Wno-sign-compare -c -o objs/djdos/test.o test.c cc1.exe: warnings being treated as errors In file included from test.c:11: pokey.h:122: warning: `struct sDevice' declared inside parameter list pokey.h:122: warning: its scope is only this definition or declaration, which is probably not what you want. pokey.h:123: warning: `struct sDevice' declared inside parameter list pokey.h:134: warning: `struct sDevice' declared inside parameter list pokey.h:134: warning: `struct sSoundDeviceEntry' declared inside parameter list test.c:162: warning: `struct MemoryReadWord' declared inside parameter list test.c:164: warning: `struct MemoryReadWord' declared inside parameter list test.c:319: warning: `struct MemoryReadWord' declared inside parameter list test.c:320: conflicting types for `FoodFightReadDigitalWord' test.c:162: previous declaration of `FoodFightReadDigitalWord' test.c:324: warning: `struct MemoryReadWord' declared inside parameter list test.c:325: conflicting types for `FoodFightReadAnalogWord' test.c:164: previous declaration of `FoodFightReadAnalogWord' test.c: In function `FoodFightObjectInit': test.c:788: warning: cast does not match function type test.c:754: warning: unused variable `u32Result' test.c: In function `FoodFightEmulate': test.c:1127: warning: implicit declaration of function `HostThrottleFrame' test.c:1072: warning: unused variable `bLog' test.c:1071: warning: unused variable `u32UpCount' make.exe: *** [objs/djdos/test.o] Error 1 Where is struct sDevice defined? ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 20 22:37:01 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7L5as410308 for dynarec-outgoing; Tue, 20 Aug 2002 22:36:54 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: Re[4]: DYNAREC: Food Fight source? From: "M.I.K.e" Message-ID: <0003a8b223b65c8e_mailit@pop3.dynarec.com> References: <3.0.5.32.20020819161553.007ff180@dynarec.com> <3.0.5.32.20020820113931.00800590@dynarec.com> Date: Wed, 21 Aug 2002 07:33:06 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Has there been much research on the topic of distributing program binaries >as some sort of high level intermediate representation? Google (isn't that a nice new verb?) for 'Juice', 'Oberon', and 'semantic dictionary'. Some guy did a JIT-compiler named Juice for the language Oberon. The format is called slim binary (as opposed to the Apple fat binaries) or semantic dictionary. The disadvantage is that the format only really works for Oberon and that you basically have something like a Oberon compiler backend for the JIT. >I don't mean bytecodes like .NET and Java, but a much more high level >format similar to what compilers deal with. The problem with intermediate representations of compilers is that they often use trees or DAGs (NB will know more about that topic, I bet) and you have to do the whole register allocation during runtime. Ok, you have to do that with Java bytecode and MSIL as well, but that is due to Sun and Microsoft being so stupid to use stack bases machines instead of register based ones. I actually have a book about virtual machines on order. I might do some kind of review about it when it arrives. >A JIT compiler would produce >the actual code to execute, but it wouldn't be translating an instruction >set to another; But translating from a simple instruction set to another should be much faster than a compiler backend when it's done right. >instead, it would be dealing with something designed to be >analyzed by a compiler -- no guesses as to where entry points are or what >functions call each other, etc. Everything would be known. That's just the problem of the bytecode designers that they throw away the information the compiler already knew, just to gather the information again during runtime :-( If you'd mark the beginning of basic blocks, ie. the entry points, then everything would be fine. That's why I always say that Sun screwed up big time with their stupid JVM! >Not only would this allow portability across different CPU architectures >(it would work best if the same OS was used on different CPUs -- like >Windows or some UNIX), I had such an idea years ago, but actually I had a translation process in mind that runs during installation. >it might also provide a performance boost over >statically compiled native binaries because profiling could be incorporated >to detect where the program hot spots are and how functions call each >other. Well, Sun claims that HotSpot does just that, but my guess is that most of it just solves the problems the bad Java bytecode causes. >The optimizer would then have full access to a high level IR which >would provide far more information about "the big picture" than could >easily be extracted from machine code. Maybe it should be a combination of pseudo machine code and control flow information... >It's just an idea... Sounds nice on paper but would it have any merit for >real world applications? It can work when it's done right... But such a good idea certainly wouldn't make it on the market, because only the crap seems to come through all the time. BTW, I even found a paper once that recommended to use x86 as a general format, because it's so widely used... >Bart -- M.I.K.e Only through hard work and perseverance can one truly suffer. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Aug 20 23:11:30 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7L6BSj10346 for dynarec-outgoing; Tue, 20 Aug 2002 23:11:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020820224619.008025f0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 20 Aug 2002 22:46:19 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[4]: DYNAREC: Food Fight source? In-Reply-To: <0003a8b223b65c8e_mailit@pop3.dynarec.com> References: <3.0.5.32.20020819161553.007ff180@dynarec.com> <3.0.5.32.20020820113931.00800590@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Some guy did a JIT-compiler named Juice for the language Oberon. The format >is called slim binary (as opposed to the Apple fat binaries) or semantic >dictionary. This sounds similar to what I was thinking of. It stores its "binaries" as a tree, similar to what a compiler's parser would construct, I imagine. >The disadvantage is that the format only really works for Oberon and that you >basically have something like a Oberon compiler backend for the JIT. I didn't think about this much, but source languages might be an issue. Representing lots of source languages with a single intermediate representation would be difficult. Don't compiler optimizers typically do their work on lists of triples/quads? Perhaps this would be a good form to use (annoted with additional information like the location of basic blocks, some more high level info on data structures used, etc.) A few common languages could be supported by the IR and the JIT, and perhaps different JITs could be used for different languages, if necessary. >The problem with intermediate representations of compilers is that they often >use trees or DAGs (NB will know more about that topic, I bet) and you have to >do the whole register allocation during runtime. Ok, you have to do that with >Java bytecode and MSIL as well, but that is due to Sun and Microsoft being so >stupid to use stack bases machines instead of register based ones. The kind of JIT compiler I'm talking about would literally be a "just-in-time _compiler_." What I'm thinking of is a compiler without a front end with additional optional facilities to monitor how a program behaves at run time (to run further optimizations.) The cool thing is that if some optimization has to be performed, the JIT could reference the IR for more information. Initial compilation could be really slow, though. Just think of how long it takes to compile some large programs with optimizations. Hmm... :/ This could be a major drawback... Installation programs could perform an initial compilation... This whole idea is getting more and more byzantine by the minute ;) But I think it would be interesting to do some more research on it. Whether it would result in something useful right away is unimportant. >But translating from a simple instruction set to another should be much >faster than a compiler backend when it's done right. My main concern would be producing optimal code. I remember reading somewhere that future compilers will be able to use runtime-generated profile data to compile programs more optimally (this could be important for explicitly parallel architectures -- like IA-64.) I think some modern compilers can already do this. I've also heard calls for compilers that allow the user to exercise more control over their operation (rather than just letting them go through their passes and spit out a finished binary.) Maybe this JIT idea would be a way of addressing these issues? >That's just the problem of the bytecode designers that they throw away the >information the compiler already knew, just to gather the information again >during runtime :-( >If you'd mark the beginning of basic blocks, ie. the entry points, then >everything would be fine. That's why I always say that Sun screwed up big >time with their stupid JVM! What about .NET? >Maybe it should be a combination of pseudo machine code and control flow >information... Yeah. Or as I suggested earlier in this message, the pseudo machine code could be the kind of IR optimizers use (triples, quads.) I'm afraid I don't know much about this topic yet, so I could be way off base here. I know GCC uses an RTL representation that it performs optimization on. It also uses trees which it passed to the back ends (I remember reading some discussion archives where it was stated that GCC's RTL really isn't usable outside of GCC itself.) >It can work when it's done right... But such a good idea certainly wouldn't >make it on the market, because only the crap seems to come through all the >time. It might be too radical. Look how hard it is to switch architectures. This might potentially cause just as many problems because it's an entirely different way of running programs. If it was done in the weird way I'm currently picturing, it might also have some interesting implications on the compiler market. All of a sudden JIT compilers would become applications the average user has to be concerned with. Compilers typically don't come cheap, either. It's most likely that people would just use whatever came with their OS. In that case, MS might "embrace and extend" the standard and ruin it ;) Maybe research on storing more high level information would benefit weird SMT and SMP machines as well? >BTW, I even found a paper once that recommended to use x86 as a general >format, because it's so widely used... It must be possible to design a better bytecode than the X86 instruction set ;) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 21 09:36:24 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7LGa8o11376 for dynarec-outgoing; Wed, 21 Aug 2002 09:36:08 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Food Fight source? From: "M.I.K.e" Message-ID: <0003a8bb5c30d888_mailit@pop3.dynarec.com> References: <110199736025.20020819170451@dynarec.com> Date: Wed, 21 Aug 2002 18:33:09 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I'm alive, I'm alive! :) Blimey, it lives - run for your lives! Anyway, I guess it's a good opportunity to announce that my body still seems to be on this world, because after 16 months without vacation and now 2 months with my 7 year old niece my mind surely isn't anymore... Sorry that I have been so silent, but at the moment I take every minute of leisure I can get, and rather spend it replaying Starcraft than replying to mails... >Anyway, I have free time on my hands all of a sudden. Has anybody got >the source code to the Food Fight emu that was started? I think NB posted it again, but if anything goes wrong I should have it as well. >I'm going to have a go at putting the start of our dynarec together... :) Cool. I'll have to see if I can get some motivation back again... >Neil. -- M.I.K.e If you can read this, you're too close. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 21 12:35:56 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7LJZNV11547 for dynarec-outgoing; Wed, 21 Aug 2002 12:35:23 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: Re[4]: DYNAREC: Food Fight source? From: "M.I.K.e" Message-ID: <0003a8bdd94deb28_mailit@pop3.dynarec.com> References: <3.0.5.32.20020819161553.007ff180@dynarec.com> <3.0.5.32.20020820224619.008025f0@dynarec.com> Date: Wed, 21 Aug 2002 21:31:18 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com [semantic dictionary of Juice] >This sounds similar to what I was thinking of. It stores its "binaries" as >a tree, similar to what a compiler's parser would construct, I imagine. Yeah, it should be some kind of semantically annotated parse tree. An advantage is that the size seems to be very compact. >I didn't think about this much, but source languages might be an issue. At least with the semantic dictionary it is. >Representing lots of source languages with a single intermediate >representation would be difficult. GCC's RTL seems to be more general, but I don't know too much about it. >Don't compiler optimizers typically do their work on lists of >triples/quads? Perhaps this would be a good form to use (annoted with >additional information like the location of basic blocks, some more high >level info on data structures used, etc.) I guess I'll better pass that question on to NB before I tell you something totally wrong... >A few common languages could be supported by the IR and the JIT, and >perhaps different JITs could be used for different languages, if necessary. Of course a more general JIT would be better, obviously. >The kind of JIT compiler I'm talking about would literally be a >"just-in-time _compiler_." What I'm thinking of is a compiler without a >front end with additional optional facilities to monitor how a program >behaves at run time (to run further optimizations.) The cool thing is that >if some optimization has to be performed, the JIT could reference the IR >for more information. There is actually a lot of evidence that some algorithms can be optmized much better during runtime when there are less variables to consider. >Initial compilation could be really slow, though. Just think of how long it >takes to compile some large programs with optimizations. Hmm... :/ This >could be a major drawback... The creator of Juice claimed that starting an Oberon program in semantic dictionary representation is not slower than a normally compiled C binary that performs the same task. But I guess that it might still be slower than translating a well-defined code for an abstract processor into the native machine code. But remember that the slowest thing in a compiler is often the optimizer and what you have in mind would be using the constructs right before the backend, ie. the only optimization left is the machine specific one while the more complicated language specific optimization has already been done during compile time. >Installation programs could perform an initial compilation... Maybe there could be some kind of compiler pragmas that cause certain parts of the code to be marked for runtime optimization while the rest is translated statically. >This whole idea is getting more and more byzantine by the minute ;) But I >think it would be interesting to do some more research on it. Whether it >would result in something useful right away is unimportant. Well, it isn't the way that someone would tell us what we have to do with our free time ;-) >My main concern would be producing optimal code. I remember reading >somewhere that future compilers will be able to use runtime-generated >profile data to compile programs more optimally (this could be important >for explicitly parallel architectures -- like IA-64.) I think some modern >compilers can already do this. Do you think of the SELF compilers? >I've also heard calls for compilers that allow the user to exercise more >control over their operation (rather than just letting them go through >their passes and spit out a finished binary.) Hmm, that sounds a bit like the idea with pragmas I mentioned above. >Maybe this JIT idea would be a way of addressing these issues? Probably, but I think it would be the best use to use it for the algorithm heavy parts only, because there isn't really much sense in runtime-optimizing initialization code, isn't there? So it might be still a good idea to translate the stuff that wouldn't gain from JIT optimization anyway during the installation phase and keep only the code where it really counts for the JIT. [Sun's screwed up JVM] >What about .NET? I haven't analyzed it properly to make a clear statement, but it seems that they use a stack architecture as well (I guess MS just doesn't care because even the JVM runs fastest on the x86 since hardly any JIT uses registers properly, which is a disadvantage for any RISC), and I haven't seen any entry point markers, but I might have overlooked it. Overall the code is generally more low level and therefore is much better suitable for a wider range of langauges and IMHO even for decent optimization than the strange Java hybrid of high and low level operations in the bytecode. My brief judgement would be: they have done better than Sun, but they also didn't do it optimally. You can take a look for yourself if you want: http://www.ecma.ch/ecma1/STAND/ecma-335.htm >Yeah. Or as I suggested earlier in this message, the pseudo machine code >could be the kind of IR optimizers use (triples, quads.) I'm afraid I don't >know much about this topic yet, so I could be way off base here. I'm kind of in the same boat, so I run to what I know, ie. the definition of a general processor. >I know GCC uses an RTL representation that it performs optimization on. It >also uses trees which it passed to the back ends (I remember reading some >discussion archives where it was stated that GCC's RTL really isn't usable >outside of GCC itself.) I don't know enough about GCC's RTL, I'm afraid... I know that Dawson Engler, who did some work on dynamic code generation, used the intermediate representation of the C compiler LCC at first but later used macros called VCODE that looked more like typical RISC instructions. >It might be too radical. Look how hard it is to switch architectures. This >might potentially cause just as many problems because it's an entirely >different way of running programs. If it was done in the weird way I'm >currently picturing, it might also have some interesting implications on >the compiler market. Well, people surely seem to be reluctant to give up established architectures, otherwise IA-32 would be history and there wouldn't be two 64- bit architectures that emulate it. But they also seem to go for portable programs as provided by Java, and if it could be done more properly then people might be interested. Althought I guess the with Java the massive number of available classes (actually too much now, IMO) might be even more important than the speed now... >All of a sudden JIT compilers would become applications the average user >has to be concerned with. Compilers typically don't come cheap, either. >It's most likely that people would just use whatever came with their OS. Just too true. For the normal user it also had to be very transparent, ie. you shouldn't notice that there is a virtual machine behind it. BTW, I just received a message from Amazon that my order including the book "Virtual Machine Design and Implementation" is on its way. Normally it should arrive tomorrow and I might give some first impressions of it. >In that case, MS might "embrace and extend" the standard and ruin it ;) Now you are getting a bit realistic here! ;-) >Maybe research on storing more high level information would benefit weird >SMT and SMP machines as well? Speaking of multiprocessors, I'm still somewhat interested what kind of virtual processor TAO/Elate is using because that obviously seems to work on heterogenous multi-processor systems, but they don't provide any information :-( >It must be possible to design a better bytecode than the X86 instruction >set ;) I'd say, if you get a monkey to design it there is a high possibility that it would be better than x86 code... >Bart -- M.I.K.e No part of this message may reproduce, store itself in a retrieval system, or transmit disease, in any form, without the permissiveness of the author. -- Chris Shaw --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 21 14:30:35 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7LLUPE11684 for dynarec-outgoing; Wed, 21 Aug 2002 14:30:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: DYNAREC: OT: Stupid kids and processors rant... From: "M.I.K.e" Message-ID: <0003a8bf7b766bcb_mailit@pop3.dynarec.com> Date: Wed, 21 Aug 2002 23:28:13 +0200 X-Mailer: BeatWare Mail-It 3.0 X-BeOS-Platform: Intel or clone To: dynarec@dynarec.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm pissed! There is this guy called "Chris Whitworth" (more likely "worth shit") on the 'uk.games.video.gamecube' newsgroup that always comes up with the same stupid explanation when someone askes how many "bit" a certain machine has: "Historically, a system would have the same 'bits' as the CPU instruction word size" I already told him on 'uk.games.video.dreamcast' some time ago that this is wrong and that he probably only knows a processor where this is accidentally the case. I even provided him with lists of architectures, their bit width, and their instruction lenght, but he doesn't seem to care. When something doesn't fit into his rule (that must happen pretty often!) like in this case the SH-4 of the Dreamcast being a 32-bit architecture with a 64-bit implementation, but with 16-bit instructions, he find's his way round: "The developers docs I've got refer to it as a 32bit chip - as I understand it, there's a 32bit instruction set as well." Yeah sure, there is a 32-bit instruction set, but what this sucker obviously doesn't know is that it wasn't implemented or even invented before the SH-5 (which is 64-bit BTW, so yet another problem with his rule) and the SH-4 only has 16-bit instructions. The he has very basic understanding of the term RISC: "When you start hitting 50+ instructions, I'm less happy about calling something RISC. But as I said, it's pretty much a personal opinion." The only problem is that David Patterson, who invented the term, never meant to to be taken too litterally because it means much more, but obviously this guy just perfers it the easy way... But now comes the real pain: "Anyway, we've drifted way off topic here and I got bored enough of CPU related stuff when I was in the AMULET group of Manchester Uni last year, so I think it would be prudent to end the thread here." He actually was in the AMULET group (for those who don't know it: it's a research group for asynchron CPUs using the ARM architecture), and I could cry because he found it "boring", which obviously caused his lack of knowledge. At least it proves to me that he indeed knows a CPU where his rule accidentally fits (ARM is a 32-bit architecture with 32-bit instructions), but it's already broken when you add the 16-bit Thumb instruction set. I could really puke! Someone who had the opportunity of working with the AMULET group and he so obviously didn't learn anything, but still runs around and teaches about "computer history" as if he was Steve Furber himself! Sorry for the rant, but I just cannot stand those people... -- M.I.K.e "He's just a politician trying to save both his faces ..." --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 21 14:34:45 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7LLYjj11697 for dynarec-outgoing; Wed, 21 Aug 2002 14:34:45 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020821140931.00804100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 21 Aug 2002 14:09:31 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: Re[4]: DYNAREC: Food Fight source? In-Reply-To: <0003a8bdd94deb28_mailit@pop3.dynarec.com> References: <3.0.5.32.20020819161553.007ff180@dynarec.com> <3.0.5.32.20020820224619.008025f0@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >There is actually a lot of evidence that some algorithms can be optmized much >better during runtime when there are less variables to consider. Which would make this JIT idea work out well. Dynamo got good results even with programs that weren't Dynamo-aware. A JIT which has access to high level information should do much better. >The creator of Juice claimed that starting an Oberon program in semantic >dictionary representation is not slower than a normally compiled C binary >that performs the same task. But I guess that it might still be slower than >translating a well-defined code for an abstract processor into the native >machine code. That's true, I noticed that. But I wonder how large the binaries he tested were. And I didn't see any details about the IR (just that it was a tree structure.) It probably didn't do the rigorous optimizations a high-end C compiler does. >But remember that the slowest thing in a compiler is often the optimizer and >what you have in mind would be using the constructs right before the backend, >ie. the only optimization left is the machine specific one while the more >complicated language specific optimization has already been done during >compile time. Actually, I was thinking of letting the optimizations be performed by the JIT. I'm not sure if it would pay off, but wouldn't some of the language-specific optimizations benefit from having run-time information available? >>Installation programs could perform an initial compilation... > >Maybe there could be some kind of compiler pragmas that cause certain parts >of the code to be marked for runtime optimization while the rest is >translated statically. That could easily be incorporated. With my current idea, it should be possible to re-optimize parts of a program if necessary (for example, certain functions.) In those cases, it would be able to toss out the current machine code and go back to the IR to find the functions in question and optimize. Or it could optimize on a per-object (object file -- although they wouldn't really be files, they'd all be concatenated together) basis. Having some of it done statically would be good. But which parts would be compiled statically? Would the programmer have to specify this? Perhaps a scripting language could be used at static compile time which would inform the compiler about what it needs to do. >Do you think of the SELF compilers? I looked these up, and I found that they use profile data, so I suppose that's a good comparison. >Probably, but I think it would be the best use to use it for the algorithm >heavy parts only, because there isn't really much sense in runtime-optimizing >initialization code, isn't there? That's a good point. The programmer would have to specify what to optimize on a per-file (or even per function?) basis. The current trend is towards more and more abstraction so this sort of idea might not fly well. A lot of people nowadays don't seem to want to get more involved with the details of how their code is compiled. This would seem counter-intuitive for something that can also make binaries portable. >So it might be still a good idea to translate the stuff that wouldn't gain >from JIT optimization anyway during the installation phase and keep only the >code where it really counts for the JIT. Yeah, that sounds good... I'm just having trouble visualizing exactly how all of this would be stored by the compiler. I've got more learning to do :) I'll try to do more research (perhaps on my own, if I acquire the skills to do it) on this topic in the future. It sounds interesting. > >[Sun's screwed up JVM] >>What about .NET? > >I haven't analyzed it properly to make a clear statement, but it seems that >they use a stack architecture as well (I guess MS just doesn't care because >even the JVM runs fastest on the x86 since hardly any JIT uses registers >properly, which is a disadvantage for any RISC), and I haven't seen any entry >point markers, but I might have overlooked it. I heard somewhere that .NET uses registers, not a stack like Java. >http://www.ecma.ch/ecma1/STAND/ecma-335.htm I'll take a look... >I know that Dawson Engler, who did some work on dynamic code generation, used >the intermediate representation of the C compiler LCC at first but later used >macros called VCODE that looked more like typical RISC instructions. I thought VCODE was stack-based (I'm probably confusing it with something else, though.) >Well, people surely seem to be reluctant to give up established >architectures, otherwise IA-32 would be history and there wouldn't be two 64- >bit architectures that emulate it. True. I think now, more than ever before, it has become more difficult to introduce a new architectures. The choices are shrinking and introducing something new, like IA-64, that isn't backwards compatible is a risky move. Even Alpha, which has been around for a decade, was having trouble growing. On a side note, I was doing some tests on the various Compaq Test Drive machines with a simple Mandelbrot plotting program I wrote (it outputs a BMP file -- it's highly portable), and I was very impressed with the results I saw on a 550MHz PA-RISC machine. It performed much better per-MHz than even Alpha! It killed my 500MHz PIII. Mandelbrot plotting is not very memory intensive (no matter how big the image); it's mainly just a bunch of tight loops with floating point multiplication and addition. Probably not a real good real-world benchmark, but it was fun getting some rough figures on all the different systems :) >Just too true. For the normal user it also had to be very transparent, ie. >you shouldn't notice that there is a virtual machine behind it. That's the idea. But for us power users, there would have to be a control panel of some sort ;) >BTW, I just received a message from Amazon that my order including the book >"Virtual Machine Design and Implementation" is on its way. Normally it should >arrive tomorrow and I might give some first impressions of it. Cool, I've heard good things about it. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Aug 21 14:51:48 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g7LLphl11721 for dynarec-outgoing; Wed, 21 Aug 2002 14:51:43 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020821142630.00805b10@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 21 Aug 2002 14:26:30 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: OT: Stupid kids and processors rant... In-Reply-To: <0003a8bf7b766bcb_mailit@pop3.dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 11:28 PM 8/21/2002 +0200, you wrote: >I'm pissed! > >There is this guy called "Chris Whitworth" (more likely "worth shit") on the >'uk.games.video.gamecube' newsgroup that always comes up with the same stupid >explanation when someone askes how many "bit" a certain machine has: > >"Historically, a system would have the same 'bits' as the CPU instruction >word size" > >I already told him on 'uk.games.video.dreamcast' some time ago that this is >wrong and that he probably only knows a processor where this is accidentally >the case. I even provided him with lists of architectures, their bit width, >and their instruction lenght, but he doesn't seem to care. Hehe. This comes up on comp.arch every once in a while. There are some great posts on the topic there, if you care to search around. >When something doesn't fit into his rule (that must happen pretty often!) >like in this case the SH-4 of the Dreamcast being a 32-bit architecture with >a 64-bit implementation, but with 16-bit instructions, he find's his way >round: Wait, I've heard the SH-4 is a 64-bit CPU, but when I downloaded the programming manuals, it appears to just be a 32-bit CPU with an FPU. What is it really? >The he has very basic understanding of the term RISC: >"When you start hitting 50+ instructions, I'm less happy about calling >something RISC. But as I said, it's pretty much a personal opinion." > >The only problem is that David Patterson, who invented the term, never meant >to to be taken too litterally because it means much more, but obviously this >guy just perfers it the easy way... An interesting thing I've heard once is to think of it as (Reduced Instruction) Set Computing rather than Reduced (Instruction Set) Computing. >Sorry for the rant, but I just cannot stand those people... You know the famous proverb: "Arguing on the Internet is a lot like the Special Olympics; even if you win, you're still a retard." ;) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 30 20:13:52 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g913DJa90705 for dynarec-outgoing; Mon, 30 Sep 2002 20:13:19 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20020930194149.00806c80@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Mon, 30 Sep 2002 19:41:49 -0700 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: OT: Embedded actions in yacc Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I've been playing around with yacc recently (actually, GNU bison) and have hit a snag: Are embedded actions supported? For example: something: SOME_TOKEN somethingelse { printf("%d ", $1); } yetmorestuff ; It appears as though only actions at the end of nonterminals are allowed, otherwise bison crashes and burns. I thought someone on the list might have had some experience with yacc-like parser generators. Thanks, ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Mon Sep 30 23:36:07 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g916Zqq90868 for dynarec-outgoing; Mon, 30 Sep 2002 23:35:52 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 1 Oct 2002 08:11:48 +0200 From: Victor Moya del Barrio To: dynarec@dynarec.com Subject: Re: DYNAREC: OT: Embedded actions in yacc Message-ID: <20021001061147.GA26601@ac.upc.es> References: <3.0.5.32.20020930194149.00806c80@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <3.0.5.32.20020930194149.00806c80@dynarec.com> User-Agent: Mutt/1.4i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Mon, Sep 30, 2002 at 07:41:49PM -0700, Bart wrote: > Hello, > > I've been playing around with yacc recently (actually, GNU bison) and have > hit a snag: Are embedded actions supported? > > For example: > > something: SOME_TOKEN somethingelse { printf("%d ", $1); } yetmorestuff ; > > It appears as though only actions at the end of nonterminals are allowed, > otherwise bison crashes and burns. I thought someone on the list might have > had some experience with yacc-like parser generators. > It has passed many years from when I used it in compiler theory class but if I remember well it should be admited to use actions in the middle of a gramatic expression. I was using an (now) very old yacc/bison GNU version. If it crash is more likely a bad build of the tool, if it wasn't an error it should produce and error. Or so I would think. Victor > Thanks, > > ---- > Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 1 02:21:07 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g919KoD91015 for dynarec-outgoing; Tue, 1 Oct 2002 02:20:50 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3D996348.9080701@gmx.de> Date: Tue, 01 Oct 2002 10:56:40 +0200 From: Kai Schuetz Organization: AXYS GmbH Herzogenrath / Germany User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.1) Gecko/20020826 X-Accept-Language: en-us, de-de MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: OT: Embedded actions in yacc References: <3.0.5.32.20020930194149.00806c80@dynarec.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi ! Bart wrote: >Hello, > >I've been playing around with yacc recently (actually, GNU bison) and have >hit a snag: Are embedded actions supported? > >For example: > >something: SOME_TOKEN somethingelse { printf("%d ", $1); } yetmorestuff ; > >It appears as though only actions at the end of nonterminals are allowed, >otherwise bison crashes and burns. I thought someone on the list might have >had some experience with yacc-like parser generators. > > Yes, I do have some experience. Embedded actions are definitely supported, but there is one pitfall: When referring to the contents of the sub-trees the embedded actions must be taken into account: Example: something: SOME_TOKEN somethingelse { printf("%d ", $1); } yetmorestuff ; SOME_TOKEN == $1, somethingelse == $2, but yetmorestuff == $4 !!! So what is $3 ? You could actually assign a value to $$ in the embedded action which will then later be accessible as $3. Please also note that the introduction of embedded actions will cut the rules at the point of the action, e.g. A -> B C D E F and A->B C D E G will not conflict whereas A-> B {} C D E F and A -> B {} C D E G will ! (not 100% sure about the example though...) Some more hints: Be sure to use %type instead of $<...>4 syntax, this saves you a lot of hassle with mismatching types ! Greets, |/ |\ai --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 1 09:25:55 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g91GPSI91883 for dynarec-outgoing; Tue, 1 Oct 2002 09:25:28 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021001085403.00804660@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 01 Oct 2002 08:54:03 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: OT: Embedded actions in yacc In-Reply-To: <3D996348.9080701@gmx.de> References: <3.0.5.32.20020930194149.00806c80@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >something: SOME_TOKEN somethingelse { printf("%d ", $1); } yetmorestuff ; > >SOME_TOKEN == $1, somethingelse == $2, but yetmorestuff == $4 !!! > >So what is $3 ? You could actually assign a value to $$ in the embedded >action which will then later be accessible as $3. > >Please also note that the introduction of embedded actions will cut the >rules at the point of the action, e.g. > >A -> B C D E F and A->B C D E G will not conflict whereas A-> B {} C D E >F and A -> B {} C D E G will ! >(not 100% sure about the example though...) Thanks for the info! I've been careful to observe all of these rules, but I still can't get bison to compile it properly. Oddly enough, I can't check which version of bison this is because the -V and --version flags just don't work for some reason. The crash looks like this: bison -d parser/y.y internal error, add_lookback_edge Abort! Exiting due to signal SIGABRT Raised at eip=00014a06 eax=000a0bf4 ebx=00000120 ecx=00000000 edx=0001f000 esi=00000004 edi=00000000 ebp=000a0ca0 esp=000a0bf0 program=C:\DJGPP\BIN\BISON.EXE cs: sel=0137 base=836a4000 limit=000bffff ds: sel=013f base=836a4000 limit=000bffff es: sel=013f base=836a4000 limit=000bffff fs: sel=0117 base=0001f000 limit=0000ffff gs: sel=014f base=00000000 limit=0010ffff ss: sel=013f base=836a4000 limit=000bffff App stack: [000a0db8..00020db8] Exceptn stack: [00020d14..0001edd4] ... (stack trace follows) .... It occurs whenever I insert actions into the middle of a rule. For example: molecule: TOKEN_LPAREN molecule TOKEN_RPAREN subscript moremolecules | TOKEN_ATOM { printf("atom "); } subscript moremolecules ; Removing the action makes everything work fine. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 1 09:27:02 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g91GR1k91894 for dynarec-outgoing; Tue, 1 Oct 2002 09:27:01 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021001085542.00812d80@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 01 Oct 2002 08:55:42 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: OT: Embedded actions in yacc In-Reply-To: <20021001061147.GA26601@ac.upc.es> References: <3.0.5.32.20020930194149.00806c80@dynarec.com> <3.0.5.32.20020930194149.00806c80@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >If it crash is more likely >a bad build of the tool, if it wasn't an error it should >produce and error. Or so I would think. See my reply to Kai's message. It is an error and then it triggers an abort to produce the crash output. So technically, I guess it's not really a crash, just a very poorly reported error. I've seen the same error used for a lot of things in bison. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Oct 1 22:33:14 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g925WcM92503 for dynarec-outgoing; Tue, 1 Oct 2002 22:32:38 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021001220042.00807100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 01 Oct 2002 22:00:42 -0700 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: OT: Embedded actions in yacc In-Reply-To: <3.0.5.32.20021001085542.00812d80@dynarec.com> References: <20021001061147.GA26601@ac.upc.es> <3.0.5.32.20020930194149.00806c80@dynarec.com> <3.0.5.32.20020930194149.00806c80@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Problem solved: I just downloaded a newer version of bison and everything works fine. My grammar worked fine with yacc under IRIX and Tru64, so I figured I might as well try to get a better version for MS-DOS :) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Oct 4 04:24:52 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id g94BOPc96566 for dynarec-outgoing; Fri, 4 Oct 2002 04:24:25 -0700 (PDT) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 4 Oct 2002 12:59:57 +0200 From: Victor Moya del Barrio To: dynarec@dynarec.com Subject: DYNAREC: WBT 2002 Message-ID: <20021004105957.GA3301@ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I just remembered that WBT (Workshop in Binary Translation) actually still exists and as the PACT conference (where the workshop is done) was already done (last week or so) I thought about taking a look to this year papers. Here is the final program. http://www.ece.neu.edu/info/architecture/a.html But I think it was rather uninteresting this year (last one where I could assist because it was here in Barna wasn't either that interesting but this year seems even worst :P). There are two UQBT related presentations (and I think one is just a summary of the previous work). And a couple of papers in instrumentalization. The more interesting could have been the talk from one guy of Transitive (the UK company formed last year for BT). But I don't think that we can find the slides online. Rather weak year for BT. Not that the emulation scene is that strong lately either ;). Someone interested in a XBOX 'emulator'? (I would go almost directly for static translation with this one, who cares about generated code IS A PC ;), in any case it seems more an API translation problem than binary code translation). Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 15 14:58:57 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gAFMwQ979455 for dynarec-outgoing; Fri, 15 Nov 2002 14:58:26 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021115142126.00816470@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 15 Nov 2002 14:21:26 -0800 To: dynarec@dynarec.com From: Bart Subject: DYNAREC: ASTs vs. Dags Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hello, I know this is OT, but I hope nobody minds :) I've finally actually sat down and started on my C compiler and have finished the lexer and have a general idea of how the symbol table will work (I've already got the basic interface implemented and figured out.) Now I need to start on the parser (I'll be using yacc) and want it to emit a tree representation of the C source file. I'm not sure whether dags or a more plain abstract syntax tree would be best to use. GCC uses trees but lcc uses dags. Regardless of which type of tree I decide to go with, representing programs as trees with a single root seems like an unfavorable approach to me. Wouldn't a linked list of trees (a forest) be more suitable? For example: int i = 3; int Bar() { return SomeFunction(); } void Foo() { i = Bar(); } This program could be represented as a forest with 3 trees: 1. int i = 3; 2. int Bar() ... 3. void Foo() ... In turn, Bar() and Foo() would have to contain forests for each of the statements they contain (compound statements in { } blocks would also be forests.) Overall, this might be tougher to manage, but it's easier to visualize (IMHO) and the compiler can work with smaller trees at a time as it traverses the forest. The main reason I'm considering this approach is compound statements which would require trees to have an arbitrary number of children. I would prefer to limit the number of children in a tree to 2 (the trinary operator, ? :, could be expanded into some sort of if-else sequence.) I could insert some sort of compound_statement node in a normal binary tree to allow for an unlimited amount of statements to be represented by the tree, but that seems wasteful and messy. Thanks in advance, ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 15 15:43:52 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gAFNhpn79510 for dynarec-outgoing; Fri, 15 Nov 2002 15:43:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 15 Nov 2002 17:15:53 -0600 From: Graham Toal Message-Id: <200211152315.gAFNFrW9018277@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: ASTs vs. Dags Cc: gtoal@gtoal.com Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I'm not sure whether dags or a more plain abstract syntax tree would be > best to use. GCC uses trees but lcc uses dags. They're both identical from the point of view of code that traverses them; the only difference is in generating them; creating a dag from a tree is done by merging back up from the leaf nodes. It can be a tricky piece of code to get right. (I blew it several times before I got this to work myself). So... use a tree until everything works, then with a working program, convert your tree to a dag with a stand-alone state minimization algorithm. > Regardless of which type of tree I decide to go with, representing programs > as trees with a single root seems like an unfavorable approach to me. > Wouldn't a linked list of trees (a forest) be more suitable? > > For example: > > int i = 3; > > int Bar() > { > return SomeFunction(); > } > > void Foo() > { > i = Bar(); > } > > This program could be represented as a forest with 3 trees: > > 1. int i = 3; > 2. int Bar() ... > 3. void Foo() ... This must be a terminology question, not an implementation one. Your 'forest' is simply an n-ary tree. Since not all ops in C are binary, you need n-ary trees anyway (eg procedure name bound to list of parameters in the record for a procedure declaration) Note you don't need to use a linked list. If your basic cell has a 'count' field, just allocate consecutive cells and set the count field of the zeroth cell to , to give you a tree with children. As I mentioned before, use a fixed-sized cell for *every* object, if you possibly can. And don't allocate them off the heap but off an array. Don't use pointers, but use indexes instead. You'll find debugging indexes *MUCH* easier that debugging pointers. > The main reason I'm considering this approach is compound statements which > would require trees to have an arbitrary number of children. I would prefer > to limit the number of children in a tree to 2 (the trinary operator, ? :, > could be expanded into some sort of if-else sequence.) I disagree. Use n-ary trees. If you want to call them forests, that's fine :) What I said above about trees vs dags applies equally to n-ary trees. They are no more complex and it saves a great deal of complexity recursing down when all you are really doing is just regenerating a list of -way branches. By the way, inspired by your example, I recently had a go at writing a new compiler myself. I had an existing front-end (pass1) which generated a portable intermediate code, and I wrote a new back-end (pass2) which generated C rather than machine code. (The input language was not C). Took me about a week. Here is the existing pass1 of the compiler: http://www.gtoal.com/athome/edinburgh/imp77/gtoal/pass1.i.html and here is it translated to C with my new pass2: http://www.gtoal.com/athome/edinburgh/imp77/gtoal/pass2.c.html FYI I do not consider using C as a portable intermediate code to be the same thing as writing an to C translator. The latter requires readable maintainable C; the former just has to compile correctly and ideally a user should never even be aware of the C stage in the compilation process. Having a printable output representation makes debugging a lot easier, especially when your compiler is only partially working. If you go directly to binary it pretty much all has to work before anything works! I'd suggest generating textual assembly code (maybe as well as rather than) instead of binary object code. But not binary alone, unless you have a good disassembler which can interleave source code with the generated opcodes. Another essential is a regression test which is run automatically on every make. Otherwise when you add some new feature you won't notice that you've broken something that works already. This *always* happens. I just use 'diff' on the textual output after running the new compiler on all the test files. I keep the old versions until I checkpoint a new release which has added features and am sure nothing has broken. Every time you write a 5-line test program to see if a new language feature works (eg adding a divide operation, or parameters to procedures) add that trivial test to your regression tests. You'll be amazed how many times something trivial breaks, and finding the fault when you're looking at a more complex output can be very hard. Having a short program break during regression testing gives you much a much better way to locate the problem area. Anyway, my compiler is not 100% finished but it's looking damned good! It was bootstrapped with a cut-down version of the language that a friend recently wrote, to generate native 8080 code. Took him about a month to write a parser and code generator from scratch. It compiles just enough of the language to compile the first pass of the compiler itself. (His page is here: http://imp.nb-info.co.uk/cskimp.htm ) That should give you a target to aim for in how long it takes to write something :-) G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 15 19:16:09 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gAG3Fmr79687 for dynarec-outgoing; Fri, 15 Nov 2002 19:15:49 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021115183844.00818760@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 15 Nov 2002 18:38:44 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: ASTs vs. Dags In-Reply-To: <200211152315.gAFNFrW9018277@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >This must be a terminology question, not an implementation one. >Your 'forest' is simply an n-ary tree. Since not all ops in C are >binary, you need n-ary trees anyway (eg procedure name bound to >list of parameters in the record for a procedure declaration) I still think there is a subtle difference. The lcc book ("A Retargetable C Compiler: Design and Implementation") has something almost exactly like what I'm thinking of (at least as far as I can surmise from the diagram, I haven't read the book yet.) If you happen to have the book handy, check out figures 12.3 (pg. 324) and 5.3 (pg. 87.) It accomplishes the same thing as an n-ary tree, but it's not a single tree. It's lots of little binary trees whose root nodes are chained together with a linked list (in the order that the code was parsed.) I'm not completely aware of how lcc implements these things, but I was flipping through the book and saw that the tree structure has pointers to only 2 children. >Note you don't need to use a linked list. If your basic cell >has a 'count' field, just allocate consecutive cells and >set the count field of the zeroth cell to , to give you a >tree with children. As I mentioned before, use a fixed-sized >cell for *every* object, if you possibly can. And don't allocate >them off the heap but off an array. Don't use pointers, but >use indexes instead. You'll find debugging indexes *MUCH* easier >that debugging pointers. You mean, if I have the following tree (I hope the formatting turns out okay): a / \ b c / \ \ d e f The cell representation would look something like this: (0: a, n=2 @ 1) (1: b, n=2 @ 3) (2: c, n=1 @ 5) (3: d, n=0) (4: e, n=0) (5: f, n=0) ? Where n = the number of children and "@ x" is the index at which those children appear in the array. >I disagree. Use n-ary trees. If you want to call them forests, that's fine :) I still think forests are different than n-ary trees... But this cell idea seems pretty nice! My only complaint is that when the array gets filled up, I have to allocate another chunk using realloc() or something. IMHO, the nice thing about using the heap (even though its performance isn't great) is that you allocate memory as you need it -- no pre-determined chunks or reallocation. Right now, I have functions called Alloc() and Free() which are nothing more than malloc()/free() wrappers that log memory usage in debug builds (to report leaks at the end.) In the future, I'd have to move to a more performance-oriented memory management model (lcc uses something it calls "arenas", which are based on the lifetime of objects allocated.) The cell method would make this easier to do. >me about a week. Here is the existing pass1 of the compiler: >http://www.gtoal.com/athome/edinburgh/imp77/gtoal/pass1.i.html Is this the output of pass1 (the intermediate code) or is it the actual language being compiled? This code looks fairly high level for an intermediate language (at least from what little about them I know and have seen.) >and here is it translated to C with my new pass2: >http://www.gtoal.com/athome/edinburgh/imp77/gtoal/pass2.c.html Cool! That's a very big main function you end up with. ;) Holub's book generates output which is actually compiled by a C compiler (it's like a virtual machine, but it's implemented with macros that are really just C code.) >Having a printable output representation makes debugging a lot >easier, especially when your compiler is only partially working. >If you go directly to binary it pretty much all has to work before >anything works! I'd suggest generating textual assembly code (maybe >as well as rather than) instead of binary object code. But not binary >alone, unless you have a good disassembler which can interleave >source code with the generated opcodes. I wasn't planning on outputting binary code. My compiler will only handle pre-processed C code. So to generate any machine code, I'd have to do something like this: gcc -E test.c cc test.i nasm test.asm -fcoff gcc test.o -o test.exe My compiler will be pretty bare-bones :) I'd like to allow it to generate assembly for different assemblers, though (NASM, GNU as, etc.) as well as an "ideal" model if I do a RISC backend (I don't like to look at UNIX-style as code -- I prefer things like "ld r0,(r1)" to "ld %0,%sp".) >Another essential is a regression test which is run automatically on >every make. Otherwise when you add some new feature you won't notice >that you've broken something that works already. This *always* happens. >I just use 'diff' on the textual output after running the new compiler >on all the test files. I keep the old versions until I checkpoint a >new release which has added features and am sure nothing has broken. Yeah, I'll try to maintain a test suite for the compiler, though it's bound to be primitive and I imagine a lot of stuff will still slip through. >Anyway, my compiler is not 100% finished but it's looking damned good! >It was bootstrapped with a cut-down version of the language that a friend >recently wrote, to generate native 8080 code. Took him about a month >to write a parser and code generator from scratch. It's going to take me much, much longer. I only have a few hours per week because Real Life has been consuming much time and energy lately :( Now that I'm actually getting to some of the hard stuff (C is far more complex than any of the lame expression calculators I've written with yacc and by hand), the going will probably be slower. But I'm in no rush. I'm doing this for fun :) Thanks! ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 15 20:38:28 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gAG4cHH79759 for dynarec-outgoing; Fri, 15 Nov 2002 20:38:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Fri, 15 Nov 2002 22:10:20 -0600 From: Graham Toal Message-Id: <200211160410.gAG4AKnF020265@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: ASTs vs. Dags Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I still think there is a subtle difference. > > It accomplishes the same thing as an n-ary tree, but it's not a single > tree. It's lots of little binary trees whose root nodes are chained > together with a linked list (in the order that the code was parsed.) I honestly don't see the difference. The little trees that are chained together are presumably hanging off a higher-level object. Sounds just like a regular tree to me, with a wide branching ratio, and using linked lists rather than two pointers! No big deal, as I said it's just terminology as far as I'm concerned. > You mean, if I have the following tree (I hope the formatting turns out okay): > > a > / \ > b c > / \ \ > d e f > > The cell representation would look something like this: > > (0: a, n=2 @ 1) > (1: b, n=2 @ 3) > (2: c, n=1 @ 5) > (3: d, n=0) > (4: e, n=0) > (5: f, n=0) > > ? Where n = the number of children and "@ x" is the index at which those > children appear in the array. That's exactly it, yes. FYI in the compiler I'm currently working on, my cells are just 4 integers. the only other data structure of any significant size is a string pool, with the main data pointer being an index into the string pool. Flags for stuff like data type (real/int/char), precision (single/double), type (function, procedure) etc are packed into another integer. > But this cell idea seems pretty nice! My only complaint is that when the > array gets filled up, I have to allocate another chunk using realloc() or > something. IMHO, the nice thing about using the heap (even though its > performance isn't great) is that you allocate memory as you need it -- no > pre-determined chunks or reallocation. OK, a couple of unrelated issues this brings up: 1) max size alloc - if you can shoehorn all your objects into the one structure then you probably don't have many other data structures that the compiler will need, so you might as well allocate as much space as you have available and give it to this array at the outset. (minus some slop for emergencies). That way you don't need to worry about extending it (you couldn't anyway). 2) linked list of free cells stored in cells themselves > Right now, I have functions called Alloc() and Free() which are nothing > more than malloc()/free() wrappers that log memory usage in debug builds > (to report leaks at the end.) In the future, I'd have to move to a more > performance-oriented memory management model (lcc uses something it calls > "arenas", which are based on the lifetime of objects allocated.) > > The cell method would make this easier to do. Yes - you can write a custom malloc/free which returns only these cell items (by index number of course, not address). The trick is to have some field in each cell (it can be any field, since before allocation none of them are in use anyway) which you can use to make a linked list *stored within the cells themselves*. When you allocate a cell just take it from the top of the linked list; when you free it, link the list to this cell and make this cell the new head of the linked list. (I leave it as an exercise as to what needs to be done in the case of an allocator which supplies multiple contiguous cells) 3) stacking of items during compilation - double-ended stack Are you familiar with the pascal-style mark/release form of heap management? You call mark at some point; it remembers where the stack is. malloc() returns items as normal. There is no free(). When you call release() it pops the stack back and all mallocs since the last mark() are now free for reuse. What I find useful is to allocate cells from one end of the large array for use with a traditional malloc/free system, and from the other end of the array for use in a stack system. The advantage of this is if that you're careful to call 'stackmalloc()' in the right places, you can make your stack usage mirror the nested structure of your source that you're compiling, eg call mark when you start compiling a procedure; for any cells that would be free'd by the time you close the procedure, use stackmalloc; for any cells that need to stay around after the procedure is closed off, use the regular malloc. Makes freeing much more efficient. (Implementation note: instead of managing an explicit stack of mark and release, I prefer to have mark take a pointer parameter into which it stores the current stacktop, and release is given the variable, which it sets stacktop to. This way you can omit some 'release' calls and things still work out eventually; the stacking is done implicitly by the recursive nature of your compiler. I.e. mark(&fred); ... do stuff ...; free(fred) ) > >me about a week. Here is the existing pass1 of the compiler: > >http://www.gtoal.com/athome/edinburgh/imp77/gtoal/pass1.i.html > > Is this the output of pass1 (the intermediate code) or is it the actual > language being compiled? > This code looks fairly high level for an intermediate language (at least > from what little about them I know and have seen.) Sorry for the confusion. pass1.i is the Imp77 source of the first pass of the Imp77 compiler. (Imp77 is the language, derived from Atlas Autocode and at about the level of Algol68) pass1 generates an intermediate code, "icode" (mostly ascii, but not really readable. I have an icode disassembler which can make it sort of readable: here's an example of a source file with interleaved disassembled icode: http://www.gtoal.com/athome/edinburgh/imp77/gtoal/test/test.lis ) pass2 takes icode and generates binary. Existing pass2's are all written in Imp77 themselves, but my new one is in C. My pass2 takes icode and generates C ... which it really is treating as an intermediate code and abuses GCC as a universal back-end. This way I can create binaries for any architecture after writing just one back-end pass2. So I can see your confusion because not only did you mistake the source imp language for an intermediate code, but there are two real and different intermediate codes as well! - icode and C. By the way, there was a lot of talk in the 70's about inventing an "UNCOL" - universal computer oriented language - i.e. a universal intermediate code. They didn't succeed very well at the time. But if you look at the *huge* range of X-to-C translators available nowadays you realised that in fact C has become the universal intermediate code! I don't know of any significant language that doesn't have a code generator that produces C... > Holub's book generates output which is actually compiled by a C compiler > (it's like a virtual machine, but it's implemented with macros that are > really just C code.) Exactly - the UNCOL idea again... > Yeah, I'll try to maintain a test suite for the compiler, though it's bound > to be primitive and I imagine a lot of stuff will still slip through. Primitive is good. The shorter each test is, the better. > It's going to take me much, much longer. I only have a few hours per week > because Real Life has been consuming much time and energy lately :( Yeah, I have the advantage of being unemployed :-) Graham PS OBdynarec: using C as an intermediate code was precisely how I wrote my Cinematronic static recompiler. If I had access to a dynamic C compiler (they do exist, but aren't currently very efficient) it would have been a portable dynamic recompiler instead. It let me get a working version on Windows and Linux quickly; then try it out (unsuccessfully) on the Palm and GBA, and finally produced the handheld version of Tailgunner that I always wanted on the GP32 which is a superb machine for emulation. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Fri Nov 15 23:08:34 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gAG78NP79882 for dynarec-outgoing; Fri, 15 Nov 2002 23:08:23 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021115223120.00818cb0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Fri, 15 Nov 2002 22:31:20 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: ASTs vs. Dags In-Reply-To: <200211160410.gAG4AKnF020265@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I honestly don't see the difference. The little trees that are chained >together are presumably hanging off a higher-level object. Sounds just >like a regular tree to me, with a wide branching ratio, and using linked >lists rather than two pointers! No big deal, as I said it's just terminology >as far as I'm concerned. The more I think about the cell idea, the more I like it. A forest of trees is more than just terminology to me because I'm worried about the actual implementation. The forest idea basically amounts to a linked list, with each element being a tree, and some of the tree nodes can be lists themselves. The whole process may become a mess. With recursion, it's not a problem, but I'd like to be able to avoid code recursion when processing potentially big trees simply because I don't like the idea of the compiler crashing and burning when it could report a memory error instead (when using an iterative method.) The cells seem much easier to manage. >1) max size alloc > - if you can shoehorn all your objects into the one structure > then you probably don't have many other data structures that the > compiler will need, so you might as well allocate as much space > as you have available and give it to this array at the outset. > (minus some slop for emergencies). That way you don't need to > worry about extending it (you couldn't anyway). I don't know how much space is available. There would be other data structures besides the AST which would have to be allocated (symbol table stuff, etc.) and that would be impossible to predict. >3) stacking of items during compilation - double-ended stack > Are you familiar with the pascal-style mark/release form of > heap management? No, but what you describe sounds like a memory allocation scheme I've seen before. It's extremely fast but it only works when the code is structured in such a way that Alloc()/Free() are paired up stack-wise. Since this is my first compiler, it's tough for me to predict what the overall structure will end up like (I have a pretty good idea now, but I want to be able to change things easily) and a method that supports random allocation will be easier to deal with. I'll stick with malloc()/free() wrappers for now. Performance of the compiler isn't critical to me. I won't be compiling anything huge or useful and my primary concerns are to keep the code clear and readable and (eventually) to generate decent code :) >Sorry for the confusion. pass1.i is the Imp77 source of the first pass >of the Imp77 compiler. (Imp77 is the language, derived from Atlas >Autocode and at about the level of Algol68) Ah, okay, that clears it up. >By the way, there was a lot of talk in the 70's about inventing >an "UNCOL" - universal computer oriented language - i.e. a universal >intermediate code. I've heard of this. The idea has been discussed in the context of dynamic binary translation on this list, too, I presume, but it's been deemed unfeasible. >They didn't succeed very well at the time. But >if you look at the *huge* range of X-to-C translators available >nowadays you realised that in fact C has become the universal >intermediate code! I don't know of any significant language that >doesn't have a code generator that produces C... How good is this approach when it comes to performance of the resultant executable code? Using C as an intermediate language and dragging C compilers into the mix adds a lot of complexity into the compilation process which is hidden by the relative simplicity (I assume) of generating the C intermediate code. Isn't a lot lost in the translation to C which a native X->machine compiler could make use of to optimize the code better? >PS OBdynarec: using C as an intermediate code was precisely how I >wrote my Cinematronic static recompiler. That's how some games are being ported to and emulated on the GBA. I'm not sure if commercial ports are done this way (I highly doubt it), but one of the MAME developers (Phil Stroffolino) has mentioned doing static translations of games to C code for use on the GBA. IIRC, there was still some manual hacking that had to be done, but the translation to C did most of the work. >handheld version of Tailgunner that I always wanted on the GP32 >which is a superb machine for emulation. What sort of processor does the GP32 use? I've heard that the system is nice for hobby development. How does it compare to a GBA in terms of performance and physical considerations (is the screen good? Is it more or less comfortable to hold than a GBA?) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Nov 16 05:50:41 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gAGDoOH82950 for dynarec-outgoing; Sat, 16 Nov 2002 05:50:24 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Sat, 16 Nov 2002 07:22:28 -0600 From: Graham Toal Message-Id: <200211161322.gAGDMSCp025781@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: ASTs vs. Dags Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > I don't know how much space is available. There would be other data > structures besides the AST which would have to be allocated (symbol table > stuff, etc.) and that would be impossible to predict. Try *very* hard to see if you can overload this simple cell structure with any other tables that are needed. It pays off. Making your cell stucts C variant records, and things like flags as packed bit fields, may help make it easier for you to accept the overloading. In my compiler I was able to use the same cells for: 1) symbol table - one item points to the text, another holds the size/type/form of the data; a third holds info needed for code generation (eg stack offset if an auto variable, relative to current procedure frame) 2) syntax parse tree - eg a node contains "&&" and its two children are the parse trees for the two operators - one of those might be a symbol table entry, if the operand is a simple variable. 3) code generation tree - eg a node contains the opcode for "" and its three children are descriptors for code generation of the two operands, and the branch dest label (sym table entry) It may not be obvious that there's a difference between (2) and (3) right now, but there is. However its such a small difference that the same data structure suffices for both, and indeed sometimes the translation from source code parse tree to binary code generation tree is close to being a no-op, involving only replacing the symbolic name of a variable with its run-time location (which is basically what a symbol-table entry is for, so all 3 items above are really part of the same process, which is why its so easy to overlay them on the same data structure.) > >3) stacking of items during compilation - double-ended stack > > Are you familiar with the pascal-style mark/release form of > > heap management? > > No, but what you describe sounds like a memory allocation scheme I've seen > before. It's extremely fast but it only works when the code is structured > in such a way that Alloc()/Free() are paired up stack-wise. OK but just to repeat in case there's a misunderstanding: you never call free() on a per-malloc basis: typedef int stackptr; typedef struct cellfm { int a, b, c, d; } cellfm; cellfm cell[1024]; stackptr curstack = 1024; void mark(stackptr *p) { *p = curstack; } int stackmalloc(int cellcount) { curstack -= cellcount; /* downward-growing stack */ return (curstack); } void release(stackptr p) { curstack = p; } void do_stuff(void) { stackptr curstack; mark(&curstack) v1 = stackmalloc(12) for (i = 0; i < 256; i++) v2[i] = stackmalloc(1); v3 = stackmalloc(1000); /* ... do stuff, including possibly recursive calls to this procedure and others like it... */ release(curstack); /* lose *all* these mallocs at once by resetting stack */ } > Since this is my first compiler, it's tough for me to predict what the > overall structure will end up like (I have a pretty good idea now, but I > want to be able to change things easily) and a method that supports random > allocation will be easier to deal with. Fair enough. But what I suggested was a regular random-allocation scheme operating out of one end of the ram pool and a stack-based scheme operating out of the other end, so you get the benefit of both. Sometimes, as in parsing, you know that as soon as the parse is finished all the auxilliary data structures you used while parsing will be thrown away, retaining only the actual parse tree. So in the scheme above you'd use stackmalloc for things that were not permanent, and a different malloc for the parse tree that had to be retained permanently. (at least if you plan on keeping a full parse/code tree of the whole program. Actually most compilers get by on statement at a time processing unless you're going for super high levels of optimisation) In the vein of the code above, here's the 'regular' malloc... void init() stackptr i; for (i = 0; i < 1024; i++) cell[i].a = i+1; /* start off with a linked list */ } stackptr heapstart = 0; int malloc() { /* one cell, for now - contiguous blocks are more complex */ stackptr result = heapstart; heapstart = cell[heapstart].a; return(result); } void free(stackptr p) { cell[p].a = heapstart; heapstart = p; } Note that the cells above at the far end of the linked list may get corrupted by use as stacked-malloc cells. You do need to check for overlap between the bottom-up allocation and the top-down allocation, but that only happens when you're out of memory anyway, and since frees go to the top of the available space list (aka ASL) you're not routinely running down that list to the end; in fact it works somewhat like a fuzzy stack and you will be reallocating freed cells from the low end of memory before you ever run down the ASL to hit some cell that's been used elsewhere. > >By the way, there was a lot of talk in the 70's about inventing > >an "UNCOL" - universal computer oriented language - i.e. a universal > >intermediate code. > > I've heard of this. The idea has been discussed in the context of dynamic > binary translation on this list, too, I presume, but it's been deemed > unfeasible. > > How good is this approach when it comes to performance of the resultant > executable code? Depends on the level of your translation and how good a match is between the language and C. If there is some construct that C cannot easily express, that say has to be performed by a subroutine when in assembly it could be performed by a single instruction (let's say for example counting the bits in a word, which is a primitive operation in the Pop2 language, and supported in hardware on the pdp10, but not supported in C), then it can be problematic, but for the vast majority of cases it's a 1:1 mapping - either to high-level C or low level C - and the generated code should be pretty close in quality to that of your input language. This is true for the language I'm using; for Pascal, Modula2, scheme, and C++ to name but a few. (C++ is just syntactic sugar over C anyway. :-) ) Sometimes the input language (eg scheme or ml) might have language features (eg compile-time knowlege that a procedure has no side-effects) which is lost in the translation to C, so the C version will not be able to make some optimisations at the code-generation level that the source language could have done in a native compiler. On the other hand, writing a new compiler for a language, it's going to take you a *long* time before your compiler is well optimised, bug free and generating efficient code. By using C as an intermediate code, you get the instant benefit of 10 years of GCC development and jump instantly to some optimisations you'd probably never get round to putting in your own code. > >handheld version of Tailgunner that I always wanted on the GP32 > >which is a superb machine for emulation. > > What sort of processor does the GP32 use? I've heard that the system is > nice for hobby development. How does it compare to a GBA in terms of > performance and physical considerations (is the screen good? Is it more or > less comfortable to hold than a GBA?) It's an ARM with variable clocking. Runs around 66MHz by default but you can issue a command to bump the clock speed to about 3 times that, at the cost of some battery time. My tailgunner did not run on the GBA fast enough but ran on the GP32 without even bumping the clock speed. The screen is *superb* - physically large and high resolution - and eminently viewable in regular light unlike the GBA, which pretty much requires something like an Afterburner if you have the patience to wait 4 months for delivery of one or are willing to install it yourself with a greater than .5 chance of trashing your machine... It uses almost the same tool chain as the GBA, and the manufacturer apparently gives out an SDK for free to registered (free) developers although I've written code for it so far using only GCC and taking directly to the raw metal without any manufacturer library involved. It's very simple hardware; just a memory-mapped screen and some buttons. None of the GBA's sprite stuff. It uses ultra-thin smart memory cards - mine has 128Mb (note BYTES, not BITS like your average 64Mbit flash for the GBA) of flash which I bought for about $40. It has a built-in USB port so you don't need to buy something like the 'flash advance linker' that you would on a GBA for development. And the look and feel is just great! It has an 8-way switched joystick which for tailgunner was just perfect. I *really* hope this machine takes off, but the company's marketing is truly abysmal. All I can say is get one for personal enjoyment but don't expect a lot of people to be able to use your code for a few years, if ever! Oh, and the company ads lie about it having a built-in RF link. It was supposed to but it never had it, but all the ads still say that it does including even the box art work. Which is all in Korean. Unfortunately it's only available from Lik Sang in Korea which is a bummer as they are a very hard company to do business with, especially from Britain. (Insist on regular mail shipping, not a parcel service, otherwise you get hit with about 30 quid of assorted import duties when it arrives) It may be on sale in British shops sooner than it will in USA shops. They were supposed to be setting up a UK distribution deal that should have been in place by now. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Sat Nov 16 18:19:48 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gAH2JII83511 for dynarec-outgoing; Sat, 16 Nov 2002 18:19:18 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021116174209.00816960@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Sat, 16 Nov 2002 17:42:09 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: ASTs vs. Dags In-Reply-To: <200211161322.gAGDMSCp025781@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Try *very* hard to see if you can overload this simple cell structure >with any other tables that are needed. It pays off. Making your >cell stucts C variant records, and things like flags as packed bit fields, >may help make it easier for you to accept the overloading. Well, the compiler is in a very early stage and so far, the code is structured very nicely with clear separation between the different functional parts of the compiler. I think for the first time around, I'll only use cells for the tree. I think I'll have an easier time managing the overall project by keeping the different parts very distinct. >OK but just to repeat in case there's a misunderstanding: you never >call free() on a per-malloc basis: Well, still the same thing pretty much. The idea is that you can't do this: ptr = Alloc(..); ptr2 = Alloc(..); ptr3 = Alloc(...) free(ptr2); ptr4 = Alloc(...) The memory would become lost and fragmented (ptr4 would be allocated fine, but the freed ptr2 memory would be unusable.) >It's an ARM with variable clocking. Runs around 66MHz by default but you >can issue a command to bump the clock speed to about 3 times that, at the >cost of some battery time. My tailgunner did not run on the GBA fast >enough but ran on the GP32 without even bumping the clock speed. > >The screen is *superb* - physically large and high resolution - and >eminently viewable in regular light unlike the GBA, which pretty much >requires something like an Afterburner if you have the patience to >wait 4 months for delivery of one or are willing to install it yourself >with a greater than .5 chance of trashing your machine... Sounds like a nice machine! I don't think it'll ever pick up much of a market, especially in the US. I haven't heard much about it recently. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 27 21:26:12 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gAS5PRV03625 for dynarec-outgoing; Wed, 27 Nov 2002 21:25:27 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021127204656.0081cdf0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 27 Nov 2002 20:46:56 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: ASTs vs. Dags In-Reply-To: <200211160410.gAG4AKnF020265@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> You mean, if I have the following tree (I hope the formatting turns out okay): >> >> a >> / \ >> b c >> / \ \ >> d e f >> >> The cell representation would look something like this: >> >> (0: a, n=2 @ 1) >> (1: b, n=2 @ 3) >> (2: c, n=1 @ 5) >> (3: d, n=0) >> (4: e, n=0) >> (5: f, n=0) >> >> ? Where n = the number of children and "@ x" is the index at which those >> children appear in the array. > >That's exactly it, yes. I've written a little expression parser in yacc to test this out before I start doing any real work on my C parser (which I have to get to real soon now), and have noticed that building this tree doesn't turn out as nice as my example. Consider 1+2*3. It would be nice if it turned out like this: (0: +, n=2 @ 1) (1: *, n=2 @ 3) (2: 1) (3: 2) (4: 3) But the best I can do is come up with this stack-like representation: (0: +, n=2 @ 1) (1: *, n=2 @ 2) (2: 3) (3: 2) (4: 1) Which means that in order to actually get the children for node 0, the +, I'd have to traverse it like this: int GetIndex(int base, int child) { int i; i = 0; while (i != child) { base += tree[base].num_children; i++; } return base; } ... child2 = GetIndex(tree[x].first_child, 2); // find child 2 I could solve this by having an array of indices created whenever a new node is made; but am I missing something obvious? The grammar looks like this (ast[] is the tree array, it works like a stack growing from index 0 to a higher index; when yyparse() is done, top - 1 is the root of the tree): typedef struct { int op; // '+', '-', '*', '/', or 0 to indicate a number int num; // number int num_children; // number of children int child_index; // index of first child } CELL; static CELL ast[256]; // abstract syntax tree represented by a stack of // cells static int top = 0; // current top of the cell stack (free for use) static int NewCell(); static int yylex(); static void yyerror(const char *); %} %union { int num; int cell; // index into ast[] } %token NUMBER %type expr %type factor %type element %% stmt: expr { ; } | /* empty */ ; expr: expr '+' factor { $$ = NewCell(); ast[$$].op = '+'; ast[$$].num_children = 2; ast[$$].child_index = $1; } | expr '-' factor { $$ = NewCell(); ast[$$].op = '-'; ast[$$].num_children = 2; ast[$$].child_index = $1; } | factor { $$ = $1; } ; factor: factor '*' element { $$ = NewCell(); ast[$$].op = '*'; ast[$$].num_children = 2; ast[$$].child_index = $1; } | factor '/' element { $$ = NewCell(); ast[$$].op = '/'; ast[$$].num_children = 2; ast[$$].child_index = $1; } | element { $$ = $1; } ; element: '(' expr ')' { $$ = $2; } | NUMBER { $$ = NewCell(); ast[$$].op = 0; ast[$$].num = $1; } ; ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 27 22:22:38 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gAS6MZd03686 for dynarec-outgoing; Wed, 27 Nov 2002 22:22:35 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 27 Nov 2002 23:51:49 -0600 From: Graham Toal Message-Id: <200211280551.gAS5pnBR022525@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: ASTs vs. Dags Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > child2 = GetIndex(tree[x].first_child, 2); // find child 2 > > I could solve this by having an array of indices created whenever a new > node is made; but am I missing something obvious? Maybe... > factor: factor '*' element { $$ = NewCell(); ast[$$].op = '*'; > ast[$$].num_children = 2; ast[$$].child_index = $1; } Change NewCell to take a parameter which is the number of contiguous cells to allocate - in this case, 3 (one for the op, two for the operands). Assign 'factor' ($1) to ast[$$+1] and element ($2 {or would that be $3 in yacc? I forget if literals are counted}) to ast[$$+2] ... That should also make them come out in the right order. GetIndex then becomes trivial. The 'th' child of ast[x] is ast[x+n] Note that since the children are contiguous and follow the opcode bode, you don't need the 'child_index' at all. And you can overload 'num' with 'num_children' as you'll never use both at the same time. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 27 22:34:39 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gAS6YTC03708 for dynarec-outgoing; Wed, 27 Nov 2002 22:34:29 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 28 Nov 2002 00:03:42 -0600 From: Graham Toal Message-Id: <200211280603.gAS63gkW022591@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: ASTs vs. Dags Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >> a > >> / \ > >> b c > >> / \ \ > >> d e f > >> > >> The cell representation would look something like this: > >> > >> (0: a, n=2 @ 1) > >> (1: b, n=2 @ 3) > >> (2: c, n=1 @ 5) > >> (3: d, n=0) > >> (4: e, n=0) > >> (5: f, n=0) > >> > >> ? Where n = the number of children and "@ x" is the index at which those > >> children appear in the array. > > > >That's exactly it, yes. I guess I didn't read the earlier mail closely enough - it wasn't *exactly* it. Here is the precise layout of that tree, as would be generated by the mods to your code suggested in my last mail. 0: a n=2 1: @3 2: @6 3: b n=2 4: d 5: e 6: c n=1 7: f G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Nov 27 23:13:37 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gAS7DZL03778 for dynarec-outgoing; Wed, 27 Nov 2002 23:13:35 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021127223503.0081cdb0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 27 Nov 2002 22:35:03 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: ASTs vs. Dags In-Reply-To: <200211280551.gAS5pnBR022525@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Change NewCell to take a parameter which is the number of contiguous >cells to allocate - in this case, 3 (one for the op, two for the >operands). Assign 'factor' ($1) to ast[$$+1] and element ($2 {or >would that be $3 in yacc? I forget if literals are counted}) to >ast[$$+2] ... That'll create duplicate entries, won't it? When NewCell(...) is called for a digit (element), the cell is filled with the number. Then, we move up the grammar to "factor", and 3 cells are created, 2 of which are filled with the 2 numbers that have already been allocated. The original 2 number cells end up using space. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 28 02:39:06 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gASAcr803974 for dynarec-outgoing; Thu, 28 Nov 2002 02:38:53 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 28 Nov 2002 04:08:07 -0600 From: Graham Toal Message-Id: <200211281008.gASA871P023989@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: ASTs vs. Dags Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I skipped a stage of explanation in the previous post about why you would point to terminals indirectly rather than placing them in the operands which immediately follow an operator. After this it should be clearer why this is a useful thing to do. back to our expression (incl typo correction): +{0} /1 \2 *{3} ~{8} /4 \5 \9 a{6} 42{7} j{10} i.e. "a*42 + ~j" short version... 0: + 1 2 3: * 4 5 8: ~ 9 Now we have to get more 'real world' and handle declarations: int i, j; => 0: term name=i type=int+auto frameoffset=0 1: term name=j type=int+auto frameoffset=4 We'll leave these declarations in the ast[] array permanently now (or at least until the end of the procedure in which they're declared). The root of the expression/statement to be code-generated is now cell 2 rather than 0. We'll have a variable 'root' which we now set to 2... So now when we reference a variable we always use a single defining version of it, eg i = i * j 2: = 0 3 {tag 0 is i} 3: * 0 1 {tag 1 is j} by permanently leaving tags at the start of the ast we manage our namespace on the fly. variables of the same name may be declared in nested procedures and the most recent occurance of a tag in the array will always be the correct version of that name which is in scope. We could in theory do a simple name lookup by scanning backwards from 'root' to 0, testing each cell to see if it is a tag and if the name matches the variable we are looking for. When we hit the end of a block, we pop the 'root' variable back to where it was on entry to that block. (If the block was a procedure we leave only a definition of the procedure and its params in the ast after we finish compiling it. the ast doubles as our nametable) So, now that we have declarations and a tag lookup mechanism, we can take an expression with a CSE like the silly one below: [this could easily be a real-life example because worse expressions are often generated by macros! for example: on a machine with no hardware multiply instruction, #define SCALE(coord) ((coord)<<4) + ((coord)<<2)) followed by an access like SCALE(i>>3 + j) ] ((i*42) / j) - ((i*42) / j) 340 5 1 670 5 1 2: - 3 6 3: / 4 1 4: * 0 5 5: const 42 type=int 6: / 7 1 7: * 0 5 Note the triples at 4 and 7 are the same, so when you generate 7: you can spot that (a linear scan will do for now, a hash later) and replace all references to 7 with references to 4: [the replacement is easy because all our nodes are essentially the same format, and we have the 'n=' operand count stored in the first node of any group. You'll need to scan *forward* from 'root' however, at least as we currently have things set up... more on that later...] 2: - 3 6 3: / 4 1 4: * 0 5 5: const 42 type=int 6: / 4 1 Now you look at any nodes you modified: if they match any existing nodes, apply the reduction recursively. Indeed we have two of "/ 4 1" at 3 and 6, so we replace any reference to 6 with a reference to 3: 2: - 3 3 3: / 4 1 4: * 0 5 5: const 42 type=int At this point, just for grins, our 'identity module' happens to notice that "- 3 3" is subtracting an operand from itself and that the result must be zero, independent of the value or complexity of the operands! So we add a cell with constant 0 and point to it... 2: @ 8 3: / 4 1 4: * 0 5 5: const 42 type=int 8: const 0 type=int When you code-generate from the root (2) it generates *only* the constant 0. The other nodes, though still present, are not live as they cannot be reached by the code-generating tree-walker. The beauty of this algorithm (actually what you are doing is converting from a tree to a DAG) as you can see is that it works for arbitrarily complex subexpressions. Since you merge bottom-up, more complex expressions match previous triples. The subtract identity hack above wasn't needed to show CSE but I just threw it in for completeness. The same module also should detect "* x 1", "+ x 0" and "/ x 1" etc. Note: when you generate a triple, optimisation is assisted if you order the operands in a canonical form, eg i*j + j*i 2: + 3 4 3: * 0 1 4: * 1 0 => 2: + 3 4 3: * 0 1 4: * 0 1 => 2: + 3 3 3: * 0 1 You can only reorder if the operands have no side effects, ie are simple terminals, not functions (or are functions you have been told have no side effects). Similarly, (a + b + c) * (c + b + a) can be canonicalised if you think about it, though it's not as trivial. It *may* help if you modify '+' to be n-ary, eg 3: * 4 ? 4: + count=3 5: a 6: b 7: c 8: + count=3 9: c 10: b 11: a and then canonicalise all 3 operands by sorting, the same way as we did for 2 operands above. I've never done it this way myself, I've done it the traditional way of peeking down the tree and moving operands up or down a level, but I suspect the above might be easier and I may try it next time I write an optimiser. ----------------- So... finally we have the answer to your initial post: AST or DAG? Answer: as far as the code generator is concerned, they're the same. A DAG is a state-minimized AST, and can be created as a post-processing pass after fully generating your AST, although for efficiency minimizing on the fly may be better. Now... an exercise for the reader... come up with a neat hack that gives you program-wide CSE with very little extra effort! beware: a = b * c; c = c + 1; a = b * c; in this example, b * c is *not* a CSE... There's a way to do this safely *without* a major dataflow analysis! G PS Final piece of the design: you need a tag to go the in 'op' field which is 'OPERAND'. Also store its number, plus the pointer to the actual operand (terminal or node, whichever). You need this in order to be able to scan the ast[] array backwards, which you often do. I glossed over that detail above. Those 3 pieces of info neatly fill the 3-int cell structure I suggested. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 28 02:40:26 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gASAeQh03990 for dynarec-outgoing; Thu, 28 Nov 2002 02:40:26 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 28 Nov 2002 01:57:55 -0600 From: Graham Toal Message-Id: <200211280757.gAS7vtam023365@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: ASTs vs. Dags Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I trust folks will tell us when to take this offlist. I'm going to keep mailing via the list unless told otherwise because some of the next stages are quite relevant to dynarecs, if you treat the problem as reversing engineering from code to an AST and then code generating from the AST. (in particular high-level optimisations and reduction of multiple instruction sequences to more appropriate instructions on different targets are very similar to common subexpression removal). > >Change NewCell to take a parameter which is the number of contiguous > >cells to allocate - in this case, 3 (one for the op, two for the > >operands). Assign 'factor' ($1) to ast[$$+1] and element ($2 {or > >would that be $3 in yacc? I forget if literals are counted}) to > >ast[$$+2] ... > > That'll create duplicate entries, won't it? > > When NewCell(...) is called for a digit (element), the cell is filled with > the number. Then, we move up the grammar to "factor", and 3 cells are > created, 2 of which are filled with the 2 numbers that have already been > allocated. The original 2 number cells end up using space. There are several ways to look at this: 0) "So what". Make your ast cell array huge. You've got a lot of ram available and no other significantly large data structures to put in it. Everything goes into the ast[] if possible. The space is going to waste anyway. 1) Remember I suggested having two allocators: a permanent one for the generated tree, and a temporary one to be used for passing data around within the parser, which is thrown away on return from the recursive parsing calls. Pass the intermediate values around using a stack-based allocator and then the overhead won't hurt because as soon as the root node is returned, the overhead is gone - all those cells can be popped. [an equivalent construct would be to have two stack-based allocators. Something which falls out naturally if you allocate from each end of a large space towards the middle] 2) the duplication is only for terminal items, not tree nodes. So it isn't very large - live with it. (It's not for tree nodes because you're passing back an *index* to the tree node, not the node itself) 3) as (2) above, but slightly different: where you have an operand in a node which is a terminal, rather than putting that terminal directly in the operand itself, insert a pointer to the terminal. This is actually cleaner because then $$ is *always* an index to an AST[] cell. It's never overloaded with data. (which actually you can't do reliably because it's a 32-bit value, not a struct, and therefore any arbitrary 32-bit constant could look like some tag value) You may find later that you need this anyway. Terminals are of two types: tags (variables, procedure names, typedefs etc) and constants (reals, ints, indexes into the const string pool). All of those require ancilliary information (data type, form (static? extern? auto?), size in bytes (structs, strings) etc). You're going to need a whole cell unit to store all this data anyway. (remember your opcodes? '+', '-', and <0> for a literal int? Well, rather than a literal int you'll make that a more general 'terminal') Anyway, doing this means that you are not passing structures back up in $$ - just indexes into the ast[] array. There is no duplication, either at the terminal level or the node level. I'll redo your example with slight mods to make it more realistic: int a; extern int j; +{0} /1 \2 *{3} ~{8} /4 \5 \ a{6} 42{7} j{9} i.e. "a*42 + ~j" (TERM is 0 below; no tag is needed for IDX as it's *always* an index.) 0: OP='+' children=2 type=int 1: {IDX} 3 2: {IDX} 8 3: OP='*' children=2 type=int 4: {IDX} 6 5: {IDX} 7 6: OP=TERM value="a" type=int+auto form=tag 7: OP=TERM value="42" type=int form=const 8: OP='~' children=1 type=int 9: {IDX} 10 10: OP=TERM value="j" type=int+extern form=tag (for "value=" you'ld probably use either a 32-bit ptr to a string, *or* an index into a string pool somewhere... you might find that int and real constants are work keeping as ascii strings until final last-minute code generation (or if you do const expression folding)) So... the structure above can be built by your parser fairly easily; the overhead of the extra indirection for terminals is really minor, and I happen to know that if you're squeezing the cell size down as small as possible (3 ints) you need that extra space in the terminal cells to store all the data they need (type/form flags plus size plus pointer to the data itself) Other flags to pass in are things like 'this is a function'. Onc you've got your parser working with the above structure I'ld like to talk about Common Subexpression Elimination because it turns out to be remarkably easy with the above structure. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 28 04:32:04 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gASCVmu04566 for dynarec-outgoing; Thu, 28 Nov 2002 04:31:48 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3DE6051A.9000500@alphalink.com.au> Date: Thu, 28 Nov 2002 22:59:22 +1100 From: Evan Clarke User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.2) Gecko/20021126 X-Accept-Language: en-au, en-us, en MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: ASTs vs. Dags References: <200211280757.gAS7vtam023365@gtoal.com> In-Reply-To: <200211280757.gAS7vtam023365@gtoal.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Graham Toal wrote: > I trust folks will tell us when to take this offlist. Please don't. I am planning on going through the motions of creating simple compiler these holidays once the exams are over, and information like this is a gold-mine. Plus - it seems that the list is quite quiet overall - the signal to noise ratio is nil considering that signal=+0. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Nov 28 12:04:09 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gASK3kH04919 for dynarec-outgoing; Thu, 28 Nov 2002 12:03:46 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021128112508.00817a70@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 28 Nov 2002 11:25:08 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: ASTs vs. Dags In-Reply-To: <200211280757.gAS7vtam023365@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I trust folks will tell us when to take this offlist. Yeah, I hope I'm not being too much of a nuisance by posting these questions here. But I figured this is a topic people on the list (like you) know about and it has _some_ relevance to DBT. >0: OP='+' children=2 type=int >1: {IDX} 3 >2: {IDX} 8 >3: OP='*' children=2 type=int >4: {IDX} 6 >5: {IDX} 7 >6: OP=TERM value="a" type=int+auto form=tag >7: OP=TERM value="42" type=int form=const >8: OP='~' children=1 type=int >9: {IDX} 10 >10: OP=TERM value="j" type=int+extern form=tag This indirection method seems simple enough. I implemented it in my parser and it works fine. Last night I tried doing n-ary trees with pointers, like this: typedef struct tree_struct TREE; struct tree_struct { int op; int num; int num_children; TREE **child; }; It worked out well (the trees were very easy to construct) but then I got to thinking about how I would implement compound statements in C and realized that I wouldn't be able to figure out how many statements there were in order to allocate the proper amount of child pointers. The "forest" method would still work okay: struct tree_struct { ... // info on the current node/leaf TREE *prev, *next; // previous and next statements TREE *child[3]; // up to 3 children }; But I looked at your CSE stuff, and I think it would be more complex with the above tree structures. >Onc you've got your parser working with the above structure I'ld like >to talk about Common Subexpression Elimination because it turns out to >be remarkably easy with the above structure. I'm going to modify my code to allow for multiple expressions in a list, read from a file, like so: 1+2 1*2/(3-4) ... Then I'll take a look at CSE for this simple parser. Writing a C parser is going to be much tougher. I'll have to do quite a bit of planning. I think I'll initially start by parsing data declarations (without functions.) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 17 01:18:37 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBH9Hk941602 for dynarec-outgoing; Tue, 17 Dec 2002 01:17:46 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021217003647.0081c460@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 17 Dec 2002 00:36:47 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: ASTs vs. Dags In-Reply-To: <200211281008.gASA871P023989@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Sorry about the irregularity of my responses, but I've finally got about 5 weeks or so of vacation and that means I can work on my compiler some more without much interruption. >2: - 3 6 >3: / 4 1 >4: * 0 5 >5: const 42 type=int >6: / 7 1 >7: * 0 5 >2: - 3 6 >3: / 4 1 >4: * 0 5 >5: const 42 type=int >6: / 4 1 >2: - 3 3 >3: / 4 1 >4: * 0 5 >5: const 42 type=int >2: @ 8 >3: / 4 1 >4: * 0 5 >5: const 42 type=int >8: const 0 type=int I see how this would easily replace X - X type conditions with 0, but suppose you're left with a situation where some common subexpression is eliminated, like this: i = (x * 640) + a; j = (x * 640) + b; This is what's desired: _x = x * 640; i = _x + a; j = _x + b; Since I haven't begun to look at code generation yet, I'm not sure what the code generator would have to do to make use of the information stored in the DAG: 1: = i @2 2: + @5 a 3: = i @4 4: + @5 b 5: * x 640 What's to prevent the code generator from generating code for @5 twice if we simply run through and emit code? As far as I can tell, you'd have to scan the cells and when multiple references to @5 are detected, a new cell would be inserted at the beginning of the statement list: 0: = _x @5 And all subsequent references to @5 could be replaced with the variable _x. >The beauty of this algorithm (actually what you are doing is converting >from a tree to a DAG) as you can see is that it works for arbitrarily >complex subexpressions. Since you merge bottom-up, more complex expressions >match previous triples. I tried this method with "true" n-ary trees. By this I mean a structure of this sort: typedef struct node_struct NODE; struct node_struct { ... INT num_children; NODE **child; }; So far, working with this has been pretty easy. I've been trying to get things as simple (in terms of maintainable, understandable code) as possible, and that makes recursion acceptable for now. I'll admit that building these things with the parser isn't always fun (particularly when the number of children cannot be predicted until the end of a reduced production -- I have to do some trickery to maintain a linear linked list of trees, then count them up at the end and attach them as children to the parent.) Anyway, the algorithm works by maintaining a global, linear linked list of nodes (a "gnext" member is present in each NODE), linked in no relevant order, and detecting when 2 nodes of the same type have been created. For nodes which have a predictable number of children, the MakeNode() function can take the children as arguments right away. For compound statements, the AddChildren() procedure is separate, and a check would have to be performed then. All of this is probably far too slow to be used in a real production compiler (though GCC uses trees, but with a fixed number of children, and I'm not sure at which point it creates dags [if ever] or performs CSE), but conceptually, it's fairly simple (as long as I comment the code well ;)) >Note: when you generate a triple, optimisation is assisted if you >order the operands in a canonical form, eg > > i*j + j*i > > 2: + 3 4 > 3: * 0 1 > 4: * 1 0 > > => > > 2: + 3 4 > 3: * 0 1 > 4: * 0 1 > > => > > 2: + 3 3 > 3: * 0 1 > > You can only reorder if the operands have no side effects, ie > are simple terminals, not functions (or are functions you have > been told have no side effects). > > Similarly, (a + b + c) * (c + b + a) can be canonicalised > if you think about it, though it's not as trivial. It *may* > help if you modify '+' to be n-ary, eg It doesn't look trivial. Couldn't this be performed as part of some analysis on the intermediate code? Do all sophisticated compilers perform CSE on trees, or do they actually scan and play with their internal IR (assuming the IR is a list of quads or triples)? I've read that IBM's compilers for the POWER architecture cannot recognize different permutations of expressions as being the same. a+b+c would be matched with other a+b+c's, but not with c+a+b (not sure if this holds true for simpler binary expressions like a+b and b+a.) >Now... an exercise for the reader... come up with a neat hack that >gives you program-wide CSE with very little extra effort! If you're doing CSE the way you described (with a linear scan each time a new cell is inserted), couldn't you simply mark all cells affected by a write to some variable and avoid scanning those cells when looking for matches? ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 17 03:39:12 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBHBcpC42203 for dynarec-outgoing; Tue, 17 Dec 2002 03:38:51 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 17 Dec 2002 05:08:35 -0600 From: Graham Toal Message-Id: <200212171108.gBHB8Z5u030676@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: ASTs vs. Dags Cc: gtoal@gtoal.com Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Sorry about the irregularity of my responses, but I've finally got about 5 > weeks or so of vacation and that means I can work on my compiler some more > without much interruption. I start a new job on 2nd jan and won't have much free time after that; and I have a lot of things to do before then. I'll try to answer your post some time this week but it may not be for a day or two; meanwhile... > >Now... an exercise for the reader... come up with a neat hack that > >gives you program-wide CSE with very little extra effort! > > If you're doing CSE the way you described (with a linear scan each time a > new cell is inserted), couldn't you simply mark all cells affected by a > write to some variable and avoid scanning those cells when looking for > matches? Pretty much, something like that. If you look back in your mailbox you'll find a followup article to the one quoted which continues the theme and shows my version of the global CSE hack mentioned above. I think I also suggested a couple of ways of how to save and reuse the common expressions rather than accidentally generate the code twice by walking the tree twice, which as you pointed out would be the default behaviour. Have a look at that before I respond, to save me repeating the same explanation. I'll get back to you in a day or two when I'm free. Graham --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 17 11:44:03 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBHJhi342593 for dynarec-outgoing; Tue, 17 Dec 2002 11:43:44 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021217110247.008215e0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 17 Dec 2002 11:02:47 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: ASTs vs. Dags In-Reply-To: <200212171108.gBHB8Z5u030676@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I start a new job on 2nd jan and won't have much free time after that; >and I have a lot of things to do before then. I'll try to answer your >post some time this week but it may not be for a day or two; meanwhile... Okay, no problem. >Pretty much, something like that. If you look back in your mailbox >you'll find a followup article to the one quoted which continues the >theme and shows my version of the global CSE hack mentioned above. I can't find any follow-up article... This was the last one I received. It was itself a follow-up to another article you wrote. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 17 12:45:31 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBHKjLo42665 for dynarec-outgoing; Tue, 17 Dec 2002 12:45:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 17 Dec 2002 14:15:25 -0600 From: Graham Toal Message-Id: <200212172015.gBHKFPYY002843@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: ASTs vs. Dags Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > i = (x * 640) + a; > j = (x * 640) + b; > > This is what's desired: > > _x = x * 640; > i = _x + a; > j = _x + b; > > Since I haven't begun to look at code generation yet, I'm not sure what the Here's a suggestion for prototyping algorithms (not for your live compiler however) generate simple C statements rather than assembler. it's easier to follow! The *majority* of compiler errors are always found in optimisations, not regular code generation. You have to be damn sure your algorithm is correct before you even think about the code to generate. > code generator would have to do to make use of the information stored in > the DAG: > > 1: = i @2 > 2: + @5 a > 3: = j @4 > 4: + @5 b > 5: * x 640 > > What's to prevent the code generator from generating code for @5 twice if > we simply run through and emit code? two ways of dealing with this: > As far as I can tell, you'd have to scan the cells and when multiple > references to @5 are detected, a new cell would be inserted at the > beginning of the statement list: > > 0: = _x @5 > > And all subsequent references to @5 could be replaced with the variable _x. And indeed that's one of them, and quite a reasonable one too. The other is to put a 'use count' on item 5 above. First time you use cell 5, you generate the code, and remember what register it is in. Next time, you just use that register. If the register is needed for something else before you get a chance to use it the second time, you have to 'spill' the register which just means saving it to a temp location. So you need a data structure to describe each of your registers and what is in them, and whether you need to save them before loading them with something else, and if you do save it you need to update the cache info for tuple #5 above to say it's now in a temporary rather than a register, rather than to generate the whole expression from scratch. Note the main difference between forcing an explicit temporary, and keeping a cache, is one of flexibility. The cache version can generate the same code in the worst case, and better code in the best case. With an explicit temporary you're forcing a save to store that you may not need. Best to delay that decision until it's forced on you. Note that the use count on the common tuple does give you a hint to let you select an appropriate register (eg perhaps not the main accumulator that's always needed as an operand for most instructions - very architecture dependent of course. In an orthogonal architecture this hint isn't needed) > > Similarly, (a + b + c) * (c + b + a) can be canonicalised > > if you think about it, though it's not as trivial. It *may* > > help if you modify '+' to be n-ary, eg > > It doesn't look trivial. Couldn't this be performed as part of some > analysis on the intermediate code? Do all sophisticated compilers perform > CSE on trees, or do they actually scan and play with their internal IR > (assuming the IR is a list of quads or triples)? Indeed there is never one best way to do these things. I just suggested the tuple method because if you're already doing it for the trivial case of two operands, it may be easier to generalise at the level of tuples than it is to abstract it to a higher level in the parser. I've only had hands-on experience of one compiler that did CSE and it used triples and a hash table, so I'm biased! Doing this at either the parse-tree or AST/DAG level is just as valid. I happen to think a full tree equivalence test is way more expensive, but you'll definitely catch more cases that way. Just remember to be careful when you have operands with side effects that cannot be reordered. > I've read that IBM's compilers for the POWER architecture cannot recognize > different permutations of expressions as being the same. a+b+c would be As I said it's not trivial! Worst case I think arbitrary tree matching might be NP-complete; I'm not sure. You take whatever you can get if you can find a cheap heuristic which gets you 90% of the benefit. Reordering nodes into a canonical order is one such heuristic. > >Now... an exercise for the reader... come up with a neat hack that > >gives you program-wide CSE with very little extra effort! > > If you're doing CSE the way you described (with a linear scan each time a (aside: a linear scan is only for a prototype; in real life you'd probably use a hash function and speed it up considerably. Depends how large your list of expressions to CSE can grow. Maybe a linear scan isn't too bad compared to the complexity of a good hash) > new cell is inserted), couldn't you simply mark all cells affected by a > write to some variable and avoid scanning those cells when looking for > matches? This only works within a basic block, but the algorithm is this: when you assign to a variable x, create a notional new variable (let's call it x') and assign to that instead. Any time you use x from here on, substitute x'. If you assign to it again, call it x'', etc. Then the CSE falls out in the wash. x = a + b y = p + q x = p + q y = a + b x = y => x = a + b y = p + q x' = p + q y' = a + b x'' = y' Only store back in x and y the final values, x'' and y' ... any previous assignment to x or y is shadowed by those. This process has to terminate at the first jump target unless you're doing a much more advanced flow analysis. (that wasn't a good example; the one i gave in an earlier post was better, but I don't have time right now to construct anything fancy and I don't have that post to hand) G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 17 13:23:15 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBHLNC142716 for dynarec-outgoing; Tue, 17 Dec 2002 13:23:12 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 17 Dec 2002 14:50:11 -0600 From: Graham Toal Message-Id: <200212172050.gBHKoBJE003119@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: ASTs vs. Dags Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Another suggestion: I think you're probably doing this at the moment already, but I know that your current code will eventually migrate into being the actual compiler, so... write a CSE program that's stand-alone, which takes as input sequences of arithmetic statements, and generates as output simple 3-address C code (eg x = a + b;). Get this working *and then freeze it*! It will be an excellent piece of tutorial code for other people to learn from. The danger is that the initially simple design will be completely obfuscated by the time it is built into a real compiler, and will no longer be something that can be used to learn the techniques without also learning about everything else that your compiler does. If you're interested in doing this, I'ld like to take this dialogue we're having here and edit it into a document that we can put on the web, along with bits of your code illustrating some of the alternative design choices. I found this web page today which covers exactly the area you're working on (doesn't say how to do the optimisations, just what the results should be) http://www.ics.uci.edu/~pmurphy/s/142/optimization_tutorial.html If you can duplicate the optimizations in this page you should be quite satisfied with yourself. You might even crib their code format directly; they use a 3-address C-like representation just like I was suggesting. I also found another page that has some practical advice but not as detailed as what we've already discussed here: http://www.flipcode.com/tutorials/tut_scr06.shtml That flipcode site has some good stuff (on other subjects) worth a browse when you're bored. I've been quite distracted by it when I should be writing my Christmas cards right now! G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 17 18:20:24 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBI2KAr42977 for dynarec-outgoing; Tue, 17 Dec 2002 18:20:10 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 17 Dec 2002 17:59:28 -0800 (PST) From: Neil Bradley To: Subject: DYNAREC: Adios? Message-ID: <20021217175836.B40703-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I'm wanting to take Dynarec.com down - server, domain name - everything. I just flatly don't have time to do anything related to dynamic recompilation any longer. So those of you with email addresses here on Dynarec.com, please start looking for a new email home. Thanks, -->Neil ------------------------------------------------------------------------------- Neil Bradley In the land of the blind, the one eyed man is not Synthcom Systems, Inc. king - he's a prisoner. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 17 18:28:41 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBI2Se142997 for dynarec-outgoing; Tue, 17 Dec 2002 18:28:40 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021217174740.00822a90@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 17 Dec 2002 17:47:40 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Adios? In-Reply-To: <20021217175836.B40703-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com At 05:59 PM 12/17/2002 -0800, you wrote: >I'm wanting to take Dynarec.com down - server, domain name - everything. I >just flatly don't have time to do anything related to dynamic >recompilation any longer. So those of you with email addresses here on >Dynarec.com, please start looking for a new email home. Thanks, Okay. How long do we have, until the end of the month? I just need to make sure I download everything off of my page before it disappears. If anyone is interested, a Yahoo! group could be set up for dynarecs. I know this list hasn't seen much use in the last year or so, but if anyone is interested in being on such a list, let me know. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 17 18:30:13 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBI2UC743014 for dynarec-outgoing; Tue, 17 Dec 2002 18:30:12 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 17 Dec 2002 18:09:31 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Adios? In-Reply-To: <3.0.5.32.20021217174740.00822a90@dynarec.com> Message-ID: <20021217180854.H40703-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > >recompilation any longer. So those of you with email addresses here on > >Dynarec.com, please start looking for a new email home. Thanks, > How long do we have, until the end of the month? I just need to make sure I > download everything off of my page before it disappears. January 1st. How 'bout that? BTW, It's a bad idea to put stuff up on Dynarec if you don't have backups of it. ;-) It's *NOT* backed up! -->Neil ------------------------------------------------------------------------------- Neil Bradley In the land of the blind, the one eyed man is not Synthcom Systems, Inc. king - he's a prisoner. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 17 18:36:59 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBI2aws43038 for dynarec-outgoing; Tue, 17 Dec 2002 18:36:58 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021217175559.00825640@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 17 Dec 2002 17:55:59 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Adios? In-Reply-To: <20021217180854.H40703-100000@beacon.synthcom.com> References: <3.0.5.32.20021217174740.00822a90@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >January 1st. How 'bout that? BTW, It's a bad idea to put stuff up on >Dynarec if you don't have backups of it. ;-) It's *NOT* backed up! There's nothing super critical there that would kill me if it disappeared right now, but some of the stuff that's up there is only on my old computer, so it's more convenient for me to just download it all. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 17 19:04:35 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBI34XH43078 for dynarec-outgoing; Tue, 17 Dec 2002 19:04:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Subject: Re: DYNAREC: Adios? From: Evan Clarke To: dynarec@dynarec.com In-Reply-To: <20021217175836.B40703-100000@beacon.synthcom.com> References: <20021217175836.B40703-100000@beacon.synthcom.com> Content-Type: text/plain Content-Transfer-Encoding: 7bit X-Mailer: Ximian Evolution 1.0.5 Date: 18 Dec 2002 13:29:18 +1100 Message-Id: <1040178560.618.3.camel@debian> Mime-Version: 1.0 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, 2002-12-18 at 12:59, Neil Bradley wrote: > I'm wanting to take Dynarec.com down - server, domain name - everything. I > just flatly don't have time to do anything related to dynamic > recompilation any longer. So those of you with email addresses here on > Dynarec.com, please start looking for a new email home. Thanks, > > -->Neil I would just like to take this moment to thank you for all of the time/money it would have taken to keep dynarec going. Perhaps it would be possible to put on the site an archive to download of all of the discussions that have gone on through the mailing list - it would be such a shame to see all of that knowledge disappear. Although I have not contributed to the mailing list, it has always been such an interesting thing to read - and I have always felt somewhat excited whenever I see that my `Dynarec' folder has some new mail in it. So Long, and Thanks For All The Fish. --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 17 19:11:34 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBI3BXn43099 for dynarec-outgoing; Tue, 17 Dec 2002 19:11:33 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021217183034.00829a20@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 17 Dec 2002 18:30:34 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Adios? In-Reply-To: <1040178560.618.3.camel@debian> References: <20021217175836.B40703-100000@beacon.synthcom.com> <20021217175836.B40703-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I would just like to take this moment to thank you for all of the >time/money it would have taken to keep dynarec going. Yes, where are my manners? I appreciate the time and money that went into dynarec.com, the mailing list, the web space, and the email address was very much appreciated! :) >Perhaps it would be possible to put on the site an archive to download >of all of the discussions that have gone on through the mailing list - >it would be such a shame to see all of that knowledge disappear. Yeah, I second that. I would love to have a copy of the mailing list archives. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 17 19:40:36 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBI3eNr43148 for dynarec-outgoing; Tue, 17 Dec 2002 19:40:23 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021217185921.0081e100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Tue, 17 Dec 2002 18:59:21 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: ASTs vs. Dags In-Reply-To: <200212172050.gBHKoBJE003119@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >write a CSE program that's stand-alone, which takes as input sequences >of arithmetic statements, and generates as output simple 3-address C code >(eg x = a + b;). Get this working *and then freeze it*! This is what I've been doing to test my ideas out before I implement them on a larger scale (eg., the C language.) Right now I've got a bunch of sample expression parsers that build forests, true n-ary trees, dags, etc. >It will be an >excellent piece of tutorial code for other people to learn from. The >danger is that the initially simple design will be completely obfuscated >by the time it is built into a real compiler, and will no longer be something >that can be used to learn the techniques without also learning about >everything else that your compiler does. Yeah, it's kind of like saying "the GCC sources are freely available" to someone who wants to learn the basics. It really doesn't help much ;) >If you're interested in doing this, I'ld like to take this dialogue we're >having here and edit it into a document that we can put on the web, along >with bits of your code illustrating some of the alternative design choices. Sure, that's a great idea! Although my code right now is using the n-ary trees I described. >http://www.ics.uci.edu/~pmurphy/s/142/optimization_tutorial.html > >If you can duplicate the optimizations in this page you should >be quite satisfied with yourself. You might even crib their code format >directly; they use a 3-address C-like representation just like I was >suggesting. That's what I'll try to shoot for. But I have to complete the C parser first. Progress is slow (although I have much more free time for the next 5 weeks) partially because it's tough to find a good place to get started. Right now I'm working on global data declarations (w/out initializations.) Once that's finished, I'll add support for initializations and then move on to functions, I guess. Right now, all I need the parser to do is build an AST or dag, so it shouldn't be too bad. I haven't thought about how to structs/unions/enums yet. Hopefully it won't be too tough to hack in later (I'm dealing with more basic types now.) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 17 21:33:41 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBI5Rtu43261 for dynarec-outgoing; Tue, 17 Dec 2002 21:27:55 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Tue, 17 Dec 2002 22:56:47 -0600 From: Graham Toal Message-Id: <200212180456.gBI4ul9V006267@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Adios? Cc: gtoal@gtoal.com Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com PS I'm currently running a mirror of the public visible parts of www.dynarec.com just in case... http://www.gtoal.com/mirror/http:/www.dynarec.com/www.dynarec.com/ G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Tue Dec 17 23:55:07 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBI7som43404 for dynarec-outgoing; Tue, 17 Dec 2002 23:54:50 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 18 Dec 2002 08:21:07 +0100 From: Victor Moya del Barrio To: dynarec@dynarec.com Subject: Re: DYNAREC: Adios? Message-ID: <20021218072106.GA8903@ac.upc.es> References: <20021217175836.B40703-100000@beacon.synthcom.com> <3.0.5.32.20021217174740.00822a90@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <3.0.5.32.20021217174740.00822a90@dynarec.com> User-Agent: Mutt/1.4i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > > If anyone is interested, a Yahoo! group could be set up for dynarecs. I > know this list hasn't seen much use in the last year or so, but if anyone > is interested in being on such a list, let me know. > I think it would be a good idea, I'm for it. We could add some of the documents (MiKe's FAQ for example) to the group storage (yahoo groups can store files). And maybe the Dynarec mail list archive (perhaps edited, there was a lot of off topic stuff). And it would be open again (I think Neil said he closed it some time ago) to new subscriptions (maybe there is still people interested on the topic :) and would be interesting to see new people around). So who creates the group? > ---- > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 18 00:04:47 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBI84k843434 for dynarec-outgoing; Wed, 18 Dec 2002 00:04:46 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 18 Dec 2002 08:31:06 +0100 From: Victor Moya del Barrio To: dynarec@dynarec.com Subject: Re: DYNAREC: Adios? Message-ID: <20021218073106.GB8903@ac.upc.es> References: <20021217175836.B40703-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20021217175836.B40703-100000@beacon.synthcom.com> User-Agent: Mutt/1.4i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Tue, Dec 17, 2002 at 05:59:28PM -0800, Neil Bradley wrote: > I'm wanting to take Dynarec.com down - server, domain name - everything. I > just flatly don't have time to do anything related to dynamic > recompilation any longer. So those of you with email addresses here on > Dynarec.com, please start looking for a new email home. Thanks, > I have to say it was a very interesting list (and I hope it will be still in the future) from the start. May be later as most of us have got involved in other stuff (I still blame getting access to a broadband connection and anime fansub groups for losing too much time away from emulation ;) it has declined but that is something to expect. May be the list would have need new people (as Bart in the time). As other have said I want to thank you for creating the group and manteining the server, and for teaching some of you wonderful ideas about dynarec and emulation. I don't think my final year project on emulation would have been that fun with your and the whole old emul8 and dynarec list support that time. BTW, I think the DRZ80 and DR68K idea is still interesting :). What do you plan to do with the DRZ80 source code? Could we use or post it if we move to a yahoo group for example? Although now I remember Bart did a SH2 one using the same idea ... same my lack of attention to the list lately :(. > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 18 01:27:14 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBI9PVY43516 for dynarec-outgoing; Wed, 18 Dec 2002 01:25:31 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 18 Dec 2002 09:51:41 +0100 From: Victor Moya del Barrio To: dynarec@dynarec.com Subject: DYNAREC: Yahoo! Group dynarec created (fwd) Message-ID: <20021218085141.GD8903@ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I was a bit bored and I just tried it so here it is. We can delete or create a new one (with another name) as you wish, it didn't take me more than a couple of minutes. Now it has moderated entry (so a moderator must accept the new member) but I think that can be changed. I think anyone from the list here should have moderator level in the new list if he is interested. Victor ----- Forwarded message from Yahoo!Groups Notification ----- Subject: Yahoo! Group dynarec created Date: 18 Dec 2002 08:38:15 -0000 From: Yahoo!Groups Notification To: vmoya@ac.upc.es Hello, Congratulations! Your Yahoo! Group dynarec has been created. You can access your group using the link below or from the Yahoo! Groups "My Groups" page. * Your group information: Group name: dynarec Group home page: http://groups.yahoo.com/group/dynarec Group email address: dynarec@yahoogroups.com * Get started now: Now that you've created your group, get started using it. View the group home page, post a message, invite members, share files and photos, create group calendar events, share links, create group polls, and more. It's all easy to use. Just go to the group home page now: http://groups.yahoo.com/group/dynarec * Related services: Build a professional-looking web site for your group in minutes. http://rd.yahoo.com/groups/startconf_email/webhosting/evt=1482/*http://webhosting.yahoo.com/ps/info Regards, Yahoo! Groups Customer Care Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/ ----- End forwarded message ----- --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 18 05:50:50 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBIDnNp44213 for dynarec-outgoing; Wed, 18 Dec 2002 05:49:23 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3E0074F4.4040809@gmx.de> Date: Wed, 18 Dec 2002 14:15:32 +0100 From: Kai Schuetz Organization: AXYS GmbH Herzogenrath / Germany User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2.1) Gecko/20021130 X-Accept-Language: en-us, de-de MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Adios? References: <20021217175836.B40703-100000@beacon.synthcom.com> In-Reply-To: <20021217175836.B40703-100000@beacon.synthcom.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi ! Neil Bradley wrote: >I'm wanting to take Dynarec.com down - server, domain name - everything. I >just flatly don't have time to do anything related to dynamic >recompilation any longer. So those of you with email addresses here on >Dynarec.com, please start looking for a new email home. Thanks, > >-->Neil > > Although in the last time themes often were quite OT it was always fun to read the discussions, even if not dynamic recompilation related. I hope I will find the time to do some work on binary translation (probably static translation though). Thanks Neil, and goodbye. -- |/ |\ai --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 18 05:52:28 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBIDpDF44226 for dynarec-outgoing; Wed, 18 Dec 2002 05:51:13 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <3E00756B.3030205@gmx.de> Date: Wed, 18 Dec 2002 14:17:31 +0100 From: Kai Schuetz Organization: AXYS GmbH Herzogenrath / Germany User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2.1) Gecko/20021130 X-Accept-Language: en-us, de-de MIME-Version: 1.0 To: dynarec@dynarec.com Subject: Re: DYNAREC: Yahoo! Group dynarec created (fwd) References: <20021218085141.GD8903@ac.upc.es> In-Reply-To: <20021218085141.GD8903@ac.upc.es> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hi ! Hope yohoo will not spam or sell addresses of people which are on this list. Any experiences ? Victor Moya del Barrio wrote: >I was a bit bored and I just tried it so here it is. >We can delete or create a new one (with another >name) as you wish, it didn't take me more than a couple >of minutes. > >Now it has moderated entry (so a moderator must >accept the new member) but I think that can be changed. > >I think anyone from the list here should have >moderator level in the new list if he is interested. > >Victor > >----- Forwarded message from Yahoo!Groups Notification ----- > >Subject: Yahoo! Group dynarec created >Date: 18 Dec 2002 08:38:15 -0000 >From: Yahoo!Groups Notification >To: vmoya@ac.upc.es > > >Hello, > >Congratulations! Your Yahoo! Group dynarec has been created. You >can access your group using the link below or from the Yahoo! Groups >"My Groups" page. > >* Your group information: >Group name: dynarec >Group home page: http://groups.yahoo.com/group/dynarec >Group email address: dynarec@yahoogroups.com > >* Get started now: >Now that you've created your group, get started using it. View the >group home page, post a message, invite members, share files and >photos, create group calendar events, share links, create group polls, >and more. It's all easy to use. Just go to the group home page now: >http://groups.yahoo.com/group/dynarec > >* Related services: >Build a professional-looking web site for your group in minutes. >http://rd.yahoo.com/groups/startconf_email/webhosting/evt=1482/*http://webhosting.yahoo.com/ps/info > >Regards, > >Yahoo! Groups Customer Care > >Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/ > > > > > > >----- End forwarded message ----- >--------------------------------------------------------------------------- >** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the >** message body to dynarec-request@dynarec.com. Please direct other >** questions, comments, or problems to neilb@dynarec.com. > > > > --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 18 07:07:54 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBIF6Ul44305 for dynarec-outgoing; Wed, 18 Dec 2002 07:06:30 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 18 Dec 2002 14:32:36 +0000 From: Julian Brown To: dynarec@dynarec.com Subject: Re: DYNAREC: Yahoo! Group dynarec created (fwd) Message-ID: <20021218143236.A19025@cs.bris.ac.uk> References: <20021218085141.GD8903@ac.upc.es> <3E00756B.3030205@gmx.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <3E00756B.3030205@gmx.de> User-Agent: Mutt/1.3.23i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, Dec 18, 2002 at 02:17:31PM +0100, Kai Schuetz wrote: > Hi ! > > Hope yohoo will not spam or sell addresses of people which are on this list. > > Any experiences ? I've been on a few Yahoo groups for a long time. Yahoo generally seem pretty good with spam (my webmail account with them hasn't received *any*, not that I've ever actually used it). I'm sorry about the dynarec server going down. You've been good to me, Neil... I've had many (well, a few ;-)) really nice emails due to the pages I've hosted there, probably partly because of the semi-official looking domain name ;-) Cheers, it's been fun! Jules --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 18 09:21:34 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBIHLLP44422 for dynarec-outgoing; Wed, 18 Dec 2002 09:21:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 18 Dec 2002 10:51:24 -0600 From: Graham Toal Message-Id: <200212181651.gBIGpOcL010622@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Yahoo! Group dynarec created (fwd) Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Hope yohoo will not spam or sell addresses of people which are on this list. > > Any experiences ? they're a little pushy with the ads on the web page, and the signature ads have grown a little since it first started, but what do you expect for free; I'm active in the anti-spam field and very sensitive to abuse of mailing lists, and I've never seen anything that might have come through abuse of a yahoo groups list. of course you can get people who spam straight to the list and so I do recommend having a couple of moderators. I generally read yahoo groups on the web rather than by mail, though I might make an exception for this one. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 18 09:41:57 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBIHfuE44455 for dynarec-outgoing; Wed, 18 Dec 2002 09:41:56 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 18 Dec 2002 11:12:02 -0600 From: Graham Toal Message-Id: <200212181712.gBIHC2UF010823@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Yahoo! Group dynarec created - now two more! Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com I've just created "compilers101" at yahoo so that Bart and I have somewhere to chat without immediately taking the new dynarec group off-topic. anyone else who has been following our blethers is welcome to join. I've also created "staticrecompilers" at yahoo as well, for those of us who can't quite get the dynamic part working ;-) I know there are at least two of us on this list (Kai and myself) who are interested in static binary translation. I'm betting there are more. Graham http://groups.yahoo.com/group/staticrecompilers http://groups.yahoo.com/group/compilers101 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 18 10:16:09 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBIIG6V44502 for dynarec-outgoing; Wed, 18 Dec 2002 10:16:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021218093503.00824c30@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 18 Dec 2002 09:35:03 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Yahoo! Group dynarec created (fwd) In-Reply-To: <20021218085141.GD8903@ac.upc.es> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Now it has moderated entry (so a moderator must >accept the new member) but I think that can be changed. Sounds good. Moderation is a good thing because I've heard concerns that people join these lists just to spam or get email addresses, so although it might be some extra work, requiring new members to be accepted might go a long way to help prevent abuse. >I think anyone from the list here should have >moderator level in the new list if he is interested. Although it's not absolutely necessary, I wouldn't protest against being at the moderator level ;) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 18 10:21:02 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBIIL2444525 for dynarec-outgoing; Wed, 18 Dec 2002 10:21:02 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021218093959.00826b30@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 18 Dec 2002 09:39:59 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Yahoo! Group dynarec created - now two more! In-Reply-To: <200212181712.gBIHC2UF010823@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >http://groups.yahoo.com/group/staticrecompilers >http://groups.yahoo.com/group/compilers101 I've signed up for both of these and dynarec; I hope to see you all on the lists ;) ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 18 19:00:14 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBJ306b44937 for dynarec-outgoing; Wed, 18 Dec 2002 19:00:06 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Wed, 18 Dec 2002 20:30:12 -0600 From: Graham Toal Message-Id: <200212190230.gBJ2UCTC014007@gtoal.com> To: dynarec@dynarec.com Subject: Re: DYNAREC: Yahoo! Group dynarec created (fwd) Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >> Hello, >> >> Would there be any objections to me mentioning this group on SegaDev? I >> feel at least some of the members of that group may be interested in >> dynamic recompilation. >> >> ---- >> Bart > > No, I would even say we could put a message in retrogames forum (emulator > programming) in case someone is interested. If anyone knowns another place > with people that could be interested he/she should be free to post about the > group too. > > Something we could discuss now, even if we are yet only three, if what > level of 'eliteness' are we going to use here? Anyone can join/post? > They must be emu programmers or experiencied programmers? They > must pass an exam? ;). > > In the case that actually people join (and post) I don't see any problem > enabling full freedom. Just in case that someone enters asking roms or > something lame like that ban him. Maybe also to put an entrance 'warning' > saying the group could be a bit more challenging that just 'I want to learn > to program an emulator'. I hope you don't mind me answering here in the dying embers of the old list rather than in the new group, but these postings will disappear soon whereas the ones on yahoo will be around for an age and there's nothing more offputting to someone looking to join a group than a bunch of navel-gazing :-) The approach I have taken in the past is to be explicit in the intro as to who you want, and who you don't want (without being rude about it). Here are two examples: compilers101 · Compilers 101 Description Category: Programming Languages This is a forum where people writing their first compiler can exchange notes on design and practical coding issues; it is intended to fill a gap between introductory textbooks which have too little coding detail, and advanced textbooks which assume the reader has a lot of prior compiler-writing experience. Members should be either people who have written at least one successful compiler before and who can help with advice, and beginners who are actually writing a compiler for the first time. If you are a beginner and are not planning to actually write code I recommend against joining this group. computer-history · Computer History Description Category: Other This is a MODERATED group with a very narrow remit: to encourage at least one person from all the many different groups interested in computing history to subscribe, so that requests for help, such as "do you know anyone who can read DECtapes?", or suggestions for collaboration such as writing grant requests, can be posted. This is NOT for individuals to ask for help with particular systems - they should go to a more appropriate group that deals with their own system. People joining this group are encouraged to post a short intro describing the project they belong to and the resources they have available. In order to encourage as many relevant people as possible to subscribe, this group will be LOW TRAFFIC and the moderator will mercilessly bounce off-topic posts. We do not want valuable members of the group to unsubscribe because of too much noise or too much volume. Anyone who wishes to join but is not happy with giving all their details to Yahoo can ask the moderator to subscribe their email address manually, and bypass the Yahoo signup procedure. --- So I vote for openness, but be frank about the target audience, and perhaps the warez rats will have the sense to go elsewhere. It's probably an academic question as the majority of Yahoo groups never take off properly; it's very hard to hit critical mass. I was pretty smug when the Edinburgh Computer History group hit it's 30th member recently and I've been actively pushing that one for over a year now! One of the larger groups I'm on (wordgame-programmers) has 243 members and we sometimes go months without a single post. I tell you it's tough out there, which is why I recommend against limiting the group too strictly. (did you know that if no-one posts for 3 months they delete the group?) But moderate subscriptions if not posts; that helps a lot to keep out the spammers. If a request to join looks fishy, write them and say hello; most spammers won't bother to reply; they sign up to yahoo groups using automated bots. If they reply, approve their sub. G --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Wed Dec 18 20:27:00 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBJ4QtJ45018 for dynarec-outgoing; Wed, 18 Dec 2002 20:26:55 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021218194547.00824310@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Wed, 18 Dec 2002 19:45:47 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Yahoo! Group dynarec created (fwd) In-Reply-To: <200212190230.gBJ2UCTC014007@gtoal.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >I hope you don't mind me answering here in the dying embers of the old >list rather than in the new group, but these postings will disappear soon >whereas the ones on yahoo will be around for an age and there's nothing >more offputting to someone looking to join a group than a bunch of >navel-gazing :-) BTW, I hope we can obtain the archives for this list and perhaps make them public (OT stuff and email addresses could be removed) -- would anyone object to this? It would be a shame to see all of that good discussion disappear forever. >So I vote for openness, but be frank about the target audience, and perhaps >the warez rats will have the sense to go elsewhere. It's probably an >academic question as the majority of Yahoo groups never take off properly; >it's very hard to hit critical mass. Not to mention that I highly doubt the kinds of folks who just want warez will bother to join the group. SegaDev hasn't had any problems of this kind. >But moderate subscriptions if not posts; that helps a lot to keep out the >spammers. If a request to join looks fishy, write them and say hello; >most spammers won't bother to reply; they sign up to yahoo groups using >automated bots. If they reply, approve their sub. Yeah, I think a simple question about why they want to join the list would be appropriate. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 19 00:28:10 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBJ8PHL45226 for dynarec-outgoing; Thu, 19 Dec 2002 00:25:17 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 19 Dec 2002 08:51:22 +0100 From: Victor Moya del Barrio To: dynarec@dynarec.com Subject: Re: DYNAREC: Yahoo! Group dynarec created (fwd) Message-ID: <20021219075122.GA10843@ac.upc.es> References: <200212190230.gBJ2UCTC014007@gtoal.com> <3.0.5.32.20021218194547.00824310@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <3.0.5.32.20021218194547.00824310@dynarec.com> User-Agent: Mutt/1.4i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Wed, Dec 18, 2002 at 07:45:47PM -0800, Bart wrote: > >I hope you don't mind me answering here in the dying embers of the old > >list rather than in the new group, but these postings will disappear soon > >whereas the ones on yahoo will be around for an age and there's nothing > >more offputting to someone looking to join a group than a bunch of > >navel-gazing :-) > > BTW, I hope we can obtain the archives for this list and perhaps make them > public (OT stuff and email addresses could be removed) -- would anyone > object to this? It would be a shame to see all of that good discussion > disappear forever. > I remember Neil put a zipped version of the archive some time ago so I must have it around here. It would be lacking the last months (year?) posts though. I don't remember if there would be something interesting enough in the new posts. Well, when we have some version of the archives one of us should do the 'cleaning' (I could do it in the weeked). About the other list, I made Bart owner and all the other moderators (but with all privilegies, the only difference is that you wouldn't receive annoying join request mails). If someone objects or wants to change his status just do it (or ask if you can't). The messages in the group can be deleted, so we could always clean the 'initialization' stuff. Could someone write a brief description for the group? I lack in imagination for that kind of thing (and my engrish is not the better around here either). > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 19 00:48:52 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBJ8kLp45260 for dynarec-outgoing; Thu, 19 Dec 2002 00:46:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 19 Dec 2002 00:13:37 -0800 (PST) From: Neil Bradley To: Subject: Re: DYNAREC: Yahoo! Group dynarec created (fwd) In-Reply-To: <20021219075122.GA10843@ac.upc.es> Message-ID: <20021219001308.H786-100000@beacon.synthcom.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com > Well, when we have some version of the archives one of us > should do the 'cleaning' (I could do it in the weeked). I have archives going all the way to day one of the list being created. Where do you want me to put it? -->Neil ------------------------------------------------------------------------------- Neil Bradley In the land of the blind, the one eyed man is not Synthcom Systems, Inc. king - he's a prisoner. ICQ #29402898 --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 19 01:00:29 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBJ8vwA45284 for dynarec-outgoing; Thu, 19 Dec 2002 00:57:58 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 19 Dec 2002 09:24:07 +0100 From: Victor Moya del Barrio To: dynarec@dynarec.com Subject: Re: DYNAREC: Yahoo! Group dynarec created (fwd) Message-ID: <20021219082407.GC10843@ac.upc.es> References: <20021219075122.GA10843@ac.upc.es> <20021219001308.H786-100000@beacon.synthcom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20021219001308.H786-100000@beacon.synthcom.com> User-Agent: Mutt/1.4i Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com On Thu, Dec 19, 2002 at 12:13:37AM -0800, Neil Bradley wrote: > > Well, when we have some version of the archives one of us > > should do the 'cleaning' (I could do it in the weeked). > > I have archives going all the way to day one of the list being created. > Where do you want me to put it? > Couldn't you put it in the dynarec site? In case more people from the list wants the unedited thing (for nostalgia?). You could also send me it here (vmoya@ac.upc.es) and I will do the cleaning. I could use the same text based UNIX mail client I'm using now to do the job :). > -->Neil > Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 19 10:46:12 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBJIhPG46222 for dynarec-outgoing; Thu, 19 Dec 2002 10:43:25 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021219100213.0081f3c0@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 19 Dec 2002 10:02:13 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Yahoo! Group dynarec created (fwd) In-Reply-To: <20021219075122.GA10843@ac.upc.es> References: <3.0.5.32.20021218194547.00824310@dynarec.com> <200212190230.gBJ2UCTC014007@gtoal.com> <3.0.5.32.20021218194547.00824310@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >Could someone write a brief description for the group? >I lack in imagination for that kind of thing (and >my engrish is not the better around here either). I wrote a new description. It's not much different, but what do you think of it? Also, I haven't been promoting any users, I'm leaving that up to you. Some of the addresses that have subscribed I recognize, but some of them are unfamiliar, and I don't know if they're coming from the old list or not. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 19 11:05:10 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBJJ2d546258 for dynarec-outgoing; Thu, 19 Dec 2002 11:02:39 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-ID: <001401c2a78c$d1edfc50$5c7b393e@hal9000> From: "Victor Moya del Barrio" To: References: <3.0.5.32.20021218194547.00824310@dynarec.com> <200212190230.gBJ2UCTC014007@gtoal.com> <3.0.5.32.20021218194547.00824310@dynarec.com> <3.0.5.32.20021219100213.0081f3c0@dynarec.com> Subject: Re: DYNAREC: Yahoo! Group dynarec created (fwd) Date: Thu, 19 Dec 2002 19:31:15 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com ----- Original Message ----- From: "Bart" To: Sent: Thursday, December 19, 2002 7:02 PM Subject: Re: DYNAREC: Yahoo! Group dynarec created (fwd) > >Could someone write a brief description for the group? > >I lack in imagination for that kind of thing (and > >my engrish is not the better around here either). > > I wrote a new description. It's not much different, but what do you think > of it? > It's ok. May be later we could write somekind of introductory document explaining a bit what dynarec is (or use the Dynarec FAQ) and put a pointer to it in the introduction. > Also, I haven't been promoting any users, I'm leaving that up to you. Some > of the addresses that have subscribed I recognize, but some of them are > unfamiliar, and I don't know if they're coming from the old list or not. > There are a couple that have joined today that I don't know who they could be. The others all seem from the list .... well, if that Neil one is Neil Griffith (strange that he hasn't posted here though, perhaps we had three Neils). In any case, we can also ask them who they are and kick them if they don't answer ;). Perhaps next week or so when the list is more stablished we could ask to some response (for exampling proposing a small project, presenting the group or something like that) to avoid a bit the cold start problem for any group (dynarec was started from a discussion in 'old good' emul8 and a discussion between MiKe and NeilB). In any case I have to finish a Power Point presentation for tomorrow morning so this night I'm totally off ... > Bart Victor --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 19 11:10:51 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBJJ8LU46276 for dynarec-outgoing; Thu, 19 Dec 2002 11:08:21 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Message-Id: <3.0.5.32.20021219102708.00828100@dynarec.com> X-Sender: bart@dynarec.com X-Mailer: QUALCOMM Windows Eudora Light Version 3.0.5 (32) Date: Thu, 19 Dec 2002 10:27:08 -0800 To: dynarec@dynarec.com From: Bart Subject: Re: DYNAREC: Yahoo! Group dynarec created (fwd) In-Reply-To: <001401c2a78c$d1edfc50$5c7b393e@hal9000> References: <3.0.5.32.20021218194547.00824310@dynarec.com> <200212190230.gBJ2UCTC014007@gtoal.com> <3.0.5.32.20021218194547.00824310@dynarec.com> <3.0.5.32.20021219100213.0081f3c0@dynarec.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com >It's ok. May be later we could write somekind of introductory document >explaining a bit what dynarec is (or use the Dynarec FAQ) and put a pointer >to it in the introduction. Yeah, I really think a link to some sort of FAQ would be very useful. ---- Bart --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com. From owner-dynarec@dynarec.com Thu Dec 19 14:17:41 2002 Return-Path: Received: (from majordom@localhost) by dynarec.com (8.11.6/8.11.6) id gBJMF0U46442 for dynarec-outgoing; Thu, 19 Dec 2002 14:15:00 -0800 (PST) (envelope-from owner-dynarec@dynarec.com) X-Authentication-Warning: dynarec.com: majordom set sender to owner-dynarec@dynarec.com using -f Date: Thu, 19 Dec 2002 21:41:04 +0000 From: Neil Griffiths X-Mailer: The Bat! (v1.60m) X-Priority: 3 (Normal) Message-ID: <112596732536.20021219214104@dynarec.com> To: dynarec@dynarec.com Subject: Re[2]: DYNAREC: Yahoo! Group dynarec created (fwd) In-Reply-To: <001401c2a78c$d1edfc50$5c7b393e@hal9000> References: <3.0.5.32.20021218194547.00824310@dynarec.com> <200212190230.gBJ2UCTC014007@gtoal.com> <3.0.5.32.20021218194547.00824310@dynarec.com> <3.0.5.32.20021219100213.0081f3c0@dynarec.com> <001401c2a78c$d1edfc50$5c7b393e@hal9000> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-dynarec@dynarec.com Precedence: bulk Reply-To: dynarec@dynarec.com Hiya, VMdB> There are a couple that have joined today that I don't know who they VMdB> could be. The others all seem from the list .... well, if that Neil one is VMdB> Neil VMdB> Griffith (strange that he hasn't posted here though, perhaps we had three VMdB> Neils). It's me, I just haven't had time to reply! I'm off to the US on Saturday and it's been all go for me - busy at work and busy when I get home. Managed to meet Mike a few weeks ago - and David Sharp, so that's 3 of the dynarec members who've managed to meet up! It's sad that dynarec is coming to an end, but I understand where you're coming from Neil. What are you going to do with the domain name though? Could I possibly take it off your hands so that it doesn't fall into the sweaty palms of Transmeta or anybody else? VMdB> In any case, we can also ask them who they are and kick them if they VMdB> don't answer ;). Perhaps next week or so when the list is more stablished VMdB> we could ask to some response (for exampling proposing a small project, VMdB> presenting the group or something like that) to avoid a bit the cold VMdB> start problem for any group (dynarec was started from a discussion in 'old VMdB> good' emul8 and a discussion between MiKe and NeilB). Yes, I remember emul8 - and I remember writing tutorials for it too. I also remember you taking over that Victor! :) Well, I'm not going to be around for the next couple of weeks - I don't get back until Jan 6th. I'm going to Boston, Mass - then into NH, then later on down to Philidelphia and then to NY (or, in fact, Long Island) for the new year. So I'd like to take this chance to wish everybody a really merry Christmas (or happy holidays or... whatever, I wish you the best!) and a great new year! It's been great here at Dynarec, we've had some great discussions - I certainly hope we all stay in touch! I've written up a couple of documents on static and dynamic translation anyway for work because I was asked to, so I can hunt those out and submit those to the list tomorrow (if I get chance - also Christmas party tomorrow so it may not happen!) - and if not then I'll do it when I get back. It's been fun! Neil PS I'd find them now... except I need to pack. I won't get chance tomorrow! ;) --------------------------------------------------------------------------- ** To UNSUBSCRIBE from dynarec, send a message with "UNSUBSCRIBE" in the ** message body to dynarec-request@dynarec.com. Please direct other ** questions, comments, or problems to neilb@dynarec.com.